@cesdk/engine 1.67.0-nightly.20251207 → 1.67.0-nightly.20251209
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/assets/core/{cesdk-v1.67.0-nightly.20251207-PNAPVRQK.wasm → cesdk-v1.67.0-nightly.20251209-MZ7RLIEM.wasm} +0 -0
- package/assets/core/{worker-host-v1.67.0-nightly.20251207.js → worker-host-v1.67.0-nightly.20251209.js} +1 -1
- package/index.d.ts +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- /package/assets/core/{cesdk-v1.67.0-nightly.20251207-44YCFRT6.data → cesdk-v1.67.0-nightly.20251209-44YCFRT6.data} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.create,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,a=(e,t)=>(t=Symbol[e])?t:Symbol.for("Symbol."+e),s=e=>{throw TypeError(e)},l=(e,r,n)=>r in e?t(e,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[r]=n,d=(e,r)=>t(e,"name",{value:r,configurable:!0}),c=(e,t)=>function(){return t||(0,e[n(e)[0]])((t={exports:{}}).exports,t),t.exports},u=t=>[,,,e(t?.[a("metadata")]??null)],p=["class","method","getter","setter","accessor","field","value","get","set"],h=e=>void 0!==e&&"function"!=typeof e?s("Function expected"):e,f=(e,t,r,n,o)=>({kind:p[e],name:t,metadata:n,addInitializer:e=>r._?s("Already initialized"):o.push(h(e||null))}),g=(e,t)=>l(t,a("metadata"),e[3]),m=(e,t,r,n)=>{for(var o=0,i=e[t>>1],a=i&&i.length;o<a;o++)1&t?i[o].call(r):n=i[o].call(r,n);return n},b=(e,n,o,i,a,l)=>{var c,u,m,b,y,v=7&n,_=!!(8&n),S=!!(16&n),P=v>3?e.length+1:v?_?1:2:0,x=p[v+5],T=v>3&&(e[P-1]=[]),A=e[P]||(e[P]=[]),F=v&&(!S&&!_&&(a=a.prototype),v<5&&(v>3||!S)&&r(v<4?a:{get[o](){return k(this,l)},set[o](e){return E(this,l,e)}},o));v?S&&v<4&&d(l,(v>2?"set ":v>1?"get ":"")+o):d(a,o);for(var M=i.length-1;M>=0;M--)b=f(v,o,m={},e[3],A),v&&(b.static=_,b.private=S,y=b.access={has:S?e=>w(a,e):e=>o in e},3^v&&(y.get=S?e=>(1^v?k:C)(e,a,4^v?l:F.get):e=>e[o]),v>2&&(y.set=S?(e,t)=>E(e,a,t,4^v?l:F.set):(e,t)=>e[o]=t)),u=(0,i[M])(v?v<4?S?l:F[x]:v>4?void 0:{get:F.get,set:F.set}:a,b),m._=1,4^v||void 0===u?h(u)&&(v>4?T.unshift(u):v?S?l=u:F[x]=u:a=u):"object"!=typeof u||null===u?s("Object expected"):(h(c=u.get)&&(F.get=c),h(c=u.set)&&(F.set=c),h(c=u.init)&&T.unshift(c));return v||g(e,a),F&&t(a,o,F),S?4^v?l:F:a},y=(e,t,r)=>l(e,"symbol"!=typeof t?t+"":t,r),v=(e,t,r)=>t.has(e)||s("Cannot "+r),w=(e,t)=>Object(t)!==t?s('Cannot use the "in" operator on this value'):e.has(t),k=(e,t,r)=>(v(e,t,"read from private field"),r?r.call(e):t.get(e)),_=(e,t,r)=>t.has(e)?s("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),E=(e,t,r,n)=>(v(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),C=(e,t,r)=>(v(e,t,"access private method"),r),S=c({"../../../esbuild/polyfill.noop.js"(){}}),P=c({"../../../_builds/cesdk/wasm32-unknown-emscripten/Release/cesdk.js"(e,t){var r,n=(r="undefined"!=typeof document?document.currentScript?.src:void 0,"undefined"!=typeof __filename&&(r=r||__filename),async function(e={}){var t,n,o,i,a,s,l=e,d=new Promise(((e,r)=>{t=e,n=r})),c="object"==typeof window,u="undefined"!=typeof WorkerGlobalScope,p="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node&&"renderer"!=process.type;l.expectedDataFileDownloads??=0,l.expectedDataFileDownloads++,(()=>{var e="undefined"!=typeof ENVIRONMENT_IS_PTHREAD&&ENVIRONMENT_IS_PTHREAD,t="undefined"!=typeof ENVIRONMENT_IS_WASM_WORKER&&ENVIRONMENT_IS_WASM_WORKER;if(!e&&!t){var r="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node;!function(e){"object"==typeof window?window.encodeURIComponent(window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/"):"undefined"==typeof process&&"undefined"!=typeof location&&encodeURIComponent(location.pathname.substring(0,location.pathname.lastIndexOf("/"))+"/");var t,n,o,i,a="cesdk.data",s=l.locateFile?l.locateFile(a,""):a,d=e.remote_package_size,c=null,u=l.getPreloadedPackage?l.getPreloadedPackage(s,d):null;function p(t){function r(e,t){if(!e)throw t+(new Error).stack}function n(e,t,r){this.start=e,this.end=t,this.audio=r}t.FS_createPath("/","ly.img.cesdk",!0,!0),t.FS_createPath("/ly.img.cesdk","fonts",!0,!0),t.FS_createPath("/ly.img.cesdk","icons",!0,!0),t.FS_createPath("/ly.img.cesdk","icu",!0,!0),t.FS_createPath("/ly.img.cesdk","presets",!0,!0),t.FS_createPath("/ly.img.cesdk","shaders",!0,!0),t.FS_createPath("/ly.img.cesdk/shaders","common",!0,!0),n.prototype={requests:{},open:function(e,r){this.name=r,this.requests[r]=this,t.addRunDependency(`fp ${this.name}`)},send:function(){},onload:function(){var e=this.byteArray.subarray(this.start,this.end);this.finish(e)},finish:function(e){t.FS_createDataFile(this.name,null,e,!0,!0,!0),t.removeRunDependency(`fp ${this.name}`),this.requests[this.name]=null}};for(var o=e.files,i=0;i<o.length;++i)new n(o[i].start,o[i].end,o[i].audio||0).open("GET",o[i].filename);function a(o){r(o,"Loading data file failed."),r(o.constructor.name===ArrayBuffer.name,"bad input to processPackageData");var i=new Uint8Array(o);n.prototype.byteArray=i;for(var a=e.files,s=0;s<a.length;++s)n.prototype.requests[a[s].filename].onload();t.removeRunDependency("datafile_cesdk.data")}t.addRunDependency("datafile_cesdk.data"),t.preloadResults??={},t.preloadResults["cesdk.data"]={fromCache:!1},u?(a(u),u=null):c=a}u||(t=s,n=d,o=e=>{c?(c(e),c=null):u=e},i=function(e){console.error("package error:",e)},r?S().readFile(t,((e,t)=>{e?i(e):o(t.buffer)})):(l.dataFileDownloads??={},fetch(t).catch((e=>Promise.reject(new Error(`Network Error: ${t}`,{cause:e})))).then((e=>{if(!e.ok)return Promise.reject(new Error(`${e.status}: ${e.url}`));if(!e.body&&e.arrayBuffer)return e.arrayBuffer().then(o);const r=e.body.getReader(),i=()=>r.read().then(u).catch((t=>Promise.reject(new Error(`Unexpected error while handling : ${e.url} ${t}`,{cause:t})))),a=[],s=e.headers,d=Number(s.get("Content-Length")??n);let c=0;const u=({done:e,value:r})=>{if(!e){a.push(r),c+=r.length,l.dataFileDownloads[t]={loaded:c,total:d};let e=0,n=0;for(const t of Object.values(l.dataFileDownloads))e+=t.loaded,n+=t.total;return l.setStatus?.(`Downloading data... (${e}/${n})`),i()}{const e=new Uint8Array(a.map((e=>e.length)).reduce(((e,t)=>e+t),0));let t=0;for(const r of a)e.set(r,t),t+=r.length;o(e.buffer)}};return l.setStatus?.("Downloading data..."),i()})))),l.calledRun?p(l):(l.preRun??=[]).push(p)}({files:[{filename:"/ly.img.cesdk/fonts/imgly_font_inter_semibold.otf",start:0,end:270760},{filename:"/ly.img.cesdk/icons/ErrorAudio.svg",start:270760,end:271410},{filename:"/ly.img.cesdk/icons/ErrorConnection.svg",start:271410,end:272334},{filename:"/ly.img.cesdk/icons/ErrorImage.svg",start:272334,end:273191},{filename:"/ly.img.cesdk/icons/ErrorUnknown.svg",start:273191,end:275199},{filename:"/ly.img.cesdk/icons/ErrorVideo.svg",start:275199,end:275919},{filename:"/ly.img.cesdk/icons/Move.svg",start:275919,end:276859},{filename:"/ly.img.cesdk/icons/RotateIndicator.svg",start:276859,end:277840},{filename:"/ly.img.cesdk/icu/icudt74l.dat",start:277840,end:812944},{filename:"/ly.img.cesdk/presets/.keep",start:812944,end:812944},{filename:"/ly.img.cesdk/shaders/adjustments.sksl",start:812944,end:816833},{filename:"/ly.img.cesdk/shaders/black_and_white_color_mixer.sksl",start:816833,end:823150},{filename:"/ly.img.cesdk/shaders/common/ubq_adjustments.sksl",start:823150,end:827741},{filename:"/ly.img.cesdk/shaders/common/ubq_color_conversions.sksl",start:827741,end:837726},{filename:"/ly.img.cesdk/shaders/common/ubq_constants.sksl",start:837726,end:838216},{filename:"/ly.img.cesdk/shaders/common/ubq_hue_constants.sksl",start:838216,end:841383},{filename:"/ly.img.cesdk/shaders/common/ubq_noise.sksl",start:841383,end:844021},{filename:"/ly.img.cesdk/shaders/cross_cut.sksl",start:844021,end:844968},{filename:"/ly.img.cesdk/shaders/dot_pattern.sksl",start:844968,end:846046},{filename:"/ly.img.cesdk/shaders/duotone_filter.sksl",start:846046,end:847010},{filename:"/ly.img.cesdk/shaders/extrude_blur.sksl",start:847010,end:849127},{filename:"/ly.img.cesdk/shaders/glow.sksl",start:849127,end:850094},{filename:"/ly.img.cesdk/shaders/half_tone.sksl",start:850094,end:850588},{filename:"/ly.img.cesdk/shaders/hsp_selective_adjustments.sksl",start:850588,end:864188},{filename:"/ly.img.cesdk/shaders/linocut.sksl",start:864188,end:864973},{filename:"/ly.img.cesdk/shaders/liquid.sksl",start:864973,end:865455},{filename:"/ly.img.cesdk/shaders/lut_filter.sksl",start:865455,end:868318},{filename:"/ly.img.cesdk/shaders/mask_color.sksl",start:868318,end:868823},{filename:"/ly.img.cesdk/shaders/mirror.sksl",start:868823,end:869277},{filename:"/ly.img.cesdk/shaders/outliner.sksl",start:869277,end:870914},{filename:"/ly.img.cesdk/shaders/pixelize.sksl",start:870914,end:871214},{filename:"/ly.img.cesdk/shaders/placeholder_overlay_lines.sksl",start:871214,end:871902},{filename:"/ly.img.cesdk/shaders/posterize.sksl",start:871902,end:872114},{filename:"/ly.img.cesdk/shaders/radial_pixel.sksl",start:872114,end:872677},{filename:"/ly.img.cesdk/shaders/recolor.sksl",start:872677,end:874878},{filename:"/ly.img.cesdk/shaders/sharpie.sksl",start:874878,end:877183},{filename:"/ly.img.cesdk/shaders/shifter.sksl",start:877183,end:877867},{filename:"/ly.img.cesdk/shaders/tiltshift.sksl",start:877867,end:878449},{filename:"/ly.img.cesdk/shaders/tv_glitch.sksl",start:878449,end:879167},{filename:"/ly.img.cesdk/shaders/vignette.sksl",start:879167,end:879539}],remote_package_size:879539})}})(),"object"==typeof window&&"object"==typeof window.performance?l.performance=performance:"object"==typeof global&&"object"==typeof global.perf_hooks&&"object"==typeof global.perf_hooks.performance?l.performance=global.perf_hooks.performance:l.performance={mark:function(){},measure:function(){}},(i=o||(o={}))[i.PENDING=0]="PENDING",i[i.FINISHED=1]="FINISHED",i[i.ALLOCATED=2]="ALLOCATED",i[i.ERROR=3]="ERROR",(s=a||(a={}))[s.GET=0]="GET",s[s.POST=1]="POST";class FetchProcess{constructor(e,t){this.state=o.PENDING,this.totalBytes=0,this.receivedLength=0,this.handle=e,this.uri=t,this.abortController=new AbortController,this.abortSignal=this.abortController.signal}async readChunks(e){let t=0;const r=[],n=e=>{r.push(e),t+=e.length,this.receivedLength=t};if(null==e);else if("getReader"in e){const t=e.getReader();for(;;){const{done:e,value:r}=await t.read();if(e)break;if(this.abortSignal.aborted)throw await t.cancel(),t.releaseLock(),new Error(this.abortSignal.reason);n(r)}t.releaseLock()}else{const t=()=>e.destroy(new Error(this.abortSignal.reason));this.abortSignal.addEventListener("abort",t,{once:!0});try{await new Promise(((t,r)=>{e.on("data",n),e.on("end",(()=>t())),e.on("error",(e=>r(e)))}))}finally{this.abortSignal.removeEventListener("abort",t)}}const o=new Uint8Array(t);let i=0;for(const e of r)o.set(e,i),i+=e.length;return this.finish(o)}abort(){this.isPending()&&this.abortController.abort("Fetch aborted")}isPending(){return this.state===o.PENDING}isError(){return this.state===o.ERROR}isFinished(){return this.state===o.FINISHED}isAllocated(){return this.state===o.ALLOCATED}allocate(){if(this.isAllocated())return this;if(this.isFinished()){const e=this.result.length,t=l._malloc(e);l.HEAPU8.set(this.result,t);const r=Object.assign(Object.assign({},this),{state:o.ALLOCATED,resultAddress:t,resultLength:e});return Object.assign(this,r),r}return null}finish(e){const t=Object.assign(Object.assign({},this),{state:o.FINISHED,result:e,totalBytes:e.length});return Object.assign(this,t)}fail(e){const t=Object.assign(Object.assign({},this),{state:o.ERROR,error:e});return Object.assign(this,t)}}l.emscripten_ubq_asyncFetchManager=new class AsyncFetchManager{constructor(){this._nextHandle=0,this._nextHeaderHandle=0,this._processes=new Map,this._headers=new Map,this._fetchImpl=null}_fetch(e,t){return this._fetchImpl?this._fetchImpl(e,t):fetch(e,t)}setFetch(e){this._fetchImpl=e}getProcess(e){return this._processes.get(e)}deleteProcess(e){const t=this._processes.get(e);return(null==t?void 0:t.isPending())&&t.abort(),this._processes.delete(e)}clear(){for(const e of this._processes.values())e.isPending()&&e.abort();this._processes.clear(),this._headers.clear()}fetch(e,t,r,n,o,i,a,s,d){const c=l.UTF8ToString(t,r),u=this._nextHandle++,p=new FetchProcess(u,c);return this._processes.set(u,p),c.match(/^file:/)?this._fetchFile(p).catch((e=>{p.fail(e)})):this._fetchRemote(p,e,n,o,i,a,s,d).catch((e=>{p.fail(e)})),p}async _fetchFile(e){if("undefined"!=typeof window)throw new Error("File URLs supported only in Node.JS");const t=S(),{fileURLToPath:r}=S(),n=t.createReadStream(r(e.uri));return e.readChunks(n)}async _fetchRemote(e,t,r,n,o,i,s,d){const c=l.UTF8ToString(s,d),u=this.getHeaders(r,n),p=t===a.POST?new Uint8Array(new Uint8Array(l.HEAPU8.buffer,o,i)):void 0,h=await this._fetch(e.uri,{method:a[t],headers:u,body:p,mode:"cors",credentials:c,signal:e.abortSignal});if(h.status>=200&&h.status<=209){let t=0;return h.headers.has("Content-Length")&&(t=+h.headers.get("Content-Length")),e.totalBytes=t,e.readChunks(h.body)}return e.fail(h.statusText)}getHeaders(e,t){const r={};for(let n=0;n<t;n++){const t=l.getValue(e+4*n,"i32"),o=this._headers.get(t);r[o.key]=o.value}return r}createHeader(e,t,r,n){const o=l.UTF8ToString(e,t),i=l.UTF8ToString(r,n),a=this._nextHeaderHandle++;return this._headers.set(a,{key:o,value:i}),a}deleteHeader(e){return this._headers.delete(e)}},l.emscripten_ubq_codec_videoDecoders=new Map,l.emscripten_ubq_codec_audioDecoders=new Map,l.emscripten_ubq_codec_videoEncoders=new Map,l.emscripten_ubq_codec_audioEncoders=new Map,l.emscripten_ubq_codec_alphaStates=new Map,l.emscripten_ubq_codec_videoDecoderNextHandle=1,l.emscripten_ubq_codec_audioDecoderNextHandle=1,l.emscripten_ubq_codec_videoEncoderNextHandle=1,l.emscripten_ubq_codec_audioEncoderNextHandle=1,l._isSafariHelper=function(){if("undefined"==typeof navigator||"string"!=typeof navigator.userAgent)return 0;const e=navigator.userAgent;return!e.includes("Safari")||e.includes("Chrome")||e.includes("Chromium")||e.includes("Android")?0:1},l.emscripten_ubq_codec_createNativeResult=function(e){const t=l._malloc(8),r=l.HEAPU32.subarray(t/4,t/4+2);if(r[0]=e.handle?e.handle:e.code?e.code:0,e.error){const t=(new TextEncoder).encode(e.error),n=l._malloc(t.length+1),o=l.HEAPU8.subarray(n,n+t.length+1);for(let e=0;e<t.length;e++)o[e]=t[e];o[t.length]=0,r[1]=n}else r[1]=0;return t},l.emscripten_ubq_codec_offscreenCanvas=null,l.emscripten_ubq_codec_offscreenCtx=null,l.emscripten_ubq_codec_presentVideoFrame=function(e,t,r,n,o,i,a){if(!i){const e=t.textures,o=t.textureWidth,i=t.textureHeight;if(e&&e.length>0){var s=l.ctx;const d=t.decodedFrames%e.length,c=s.getParameter(s.TEXTURE_BINDING_2D);s.bindTexture(s.TEXTURE_2D,e[d]);let u=a;u||(u=n?l.emscripten_ubq_codec_toneMapHdrToSdr(r):r);const p=r.displayWidth,h=r.displayHeight;if(p!==o||h!==i){if(!t.scalingCanvas){const e="undefined"!=typeof OffscreenCanvas?()=>new OffscreenCanvas(o,i):()=>{if("undefined"!=typeof document&&"function"==typeof document.createElement){const e=document.createElement("canvas");return e.width=o,e.height=i,e}throw new Error("Canvas API not available")};t.scalingCanvas=e(),t.scalingCtx=t.scalingCanvas.getContext("2d")}const e=t.scalingCanvas,r=t.scalingCtx;e.width===o&&e.height===i||(e.width=o,e.height=i),r.clearRect(0,0,o,i);const n=p/h;let a,s,l,d;n>o/i?(a=o,s=o/n,l=0,d=(i-s)/2):(s=i,a=i*n,l=(o-a)/2,d=0),r.drawImage(u,l,d,a,s),u=e}s.texImage2D(s.TEXTURE_2D,0,s.RGBA,s.RGBA,s.UNSIGNED_BYTE,u),s.bindTexture(s.TEXTURE_2D,c)}}r.close(),t.decodedFrames++,l.emscripten_ubq_codec_onOutputDecodedVideoFrame(e,t.decodedFrames,i,r.timestamp??0,o)},l.emscripten_ubq_codec_alphaMergeCanvas=function(e,t,r){const n=!e.mergerCanvas||e.mergerCanvas.width!==t||e.mergerCanvas.height!==r;if(!e.mergerCanvas||n){if("undefined"!=typeof OffscreenCanvas)e.mergerCanvas=new OffscreenCanvas(t,r);else{if("undefined"==typeof document||"function"!=typeof document.createElement)throw new Error("Canvas API not available for alpha compositing");e.mergerCanvas=document.createElement("canvas"),e.mergerCanvas.width=t,e.mergerCanvas.height=r}const n=e.mergerCanvas.getContext("webgl2")||e.mergerCanvas.getContext("webgl");if(!n)throw new Error("Failed to get WebGL context for alpha compositing");e.mergerCtx=n;const o="\n attribute vec2 aPos;\n attribute vec2 aTexCoord;\n varying vec2 vTexCoord;\n void main() {\n gl_Position = vec4(aPos, 0.0, 1.0);\n vTexCoord = aTexCoord;\n }\n ",i="\n precision mediump float;\n varying vec2 vTexCoord;\n uniform sampler2D uMain;\n uniform sampler2D uAlpha;\n void main() {\n vec4 color = texture2D(uMain, vTexCoord);\n vec4 alpha = texture2D(uAlpha, vTexCoord);\n gl_FragColor = vec4(color.rgb, alpha.r);\n }\n ",a=(e,t)=>{const r=n.createShader(e);if(n.shaderSource(r,t),n.compileShader(r),!n.getShaderParameter(r,n.COMPILE_STATUS)){const e=n.getShaderInfoLog(r);throw n.deleteShader(r),new Error("WebGL shader compile error: "+e)}return r},s=a(n.VERTEX_SHADER,o),l=a(n.FRAGMENT_SHADER,i),d=n.createProgram();if(n.attachShader(d,s),n.attachShader(d,l),n.linkProgram(d),!n.getProgramParameter(d,n.LINK_STATUS))throw new Error("WebGL program link error: "+n.getProgramInfoLog(d));e.mergerProgram=d,e.mergerLoc={aPos:n.getAttribLocation(d,"aPos"),aTexCoord:n.getAttribLocation(d,"aTexCoord"),uMain:n.getUniformLocation(d,"uMain"),uAlpha:n.getUniformLocation(d,"uAlpha")};const c=new Float32Array([-1,1,0,0,1,1,1,0,-1,-1,0,1,1,-1,1,1]);e.mergerBuffer=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,e.mergerBuffer),n.bufferData(n.ARRAY_BUFFER,c,n.STATIC_DRAW),e.mergerTexMain=n.createTexture(),n.bindTexture(n.TEXTURE_2D,e.mergerTexMain),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),e.mergerTexAlpha=n.createTexture(),n.bindTexture(n.TEXTURE_2D,e.mergerTexAlpha),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR)}return e.mergerCanvas},l.emscripten_ubq_codec_mergeAlphaFrames=function(e,t,r){const n=t.displayWidth,o=t.displayHeight,i=l.emscripten_ubq_codec_alphaMergeCanvas(e,n,o),a=e.mergerCtx;return a.viewport(0,0,n,o),a.useProgram(e.mergerProgram),a.bindBuffer(a.ARRAY_BUFFER,e.mergerBuffer),a.enableVertexAttribArray(e.mergerLoc.aPos),a.vertexAttribPointer(e.mergerLoc.aPos,2,a.FLOAT,!1,16,0),a.enableVertexAttribArray(e.mergerLoc.aTexCoord),a.vertexAttribPointer(e.mergerLoc.aTexCoord,2,a.FLOAT,!1,16,8),a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,e.mergerTexMain),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,t),a.uniform1i(e.mergerLoc.uMain,0),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,e.mergerTexAlpha),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,r),a.uniform1i(e.mergerLoc.uAlpha,1),a.drawArrays(a.TRIANGLE_STRIP,0,4),a.flush(),i},l.emscripten_ubq_codec_prepareAlphaState=function(e,t){if(l.emscripten_ubq_codec_alphaStates.has(e))return l.emscripten_ubq_codec_alphaStates.get(e);const r={decoder:null,pendingMain:new Map,pendingAlpha:new Map,expectedTimestamps:new Set,dropTimestamps:new Set,mergerCanvas:null,mergerCtx:null};try{const n={...t};t.description&&(n.description=t.description.slice());const o=new VideoDecoder({output:t=>{l.emscripten_ubq_codec_alphaOnAlphaFrame(e,t)},error:e=>{o.unexpectedError=e,console.error("Alpha decoder error:",e)}});return o.configure(n),r.decoder=o,l.emscripten_ubq_codec_alphaStates.set(e,r),r}catch(e){return console.error("Failed to create alpha decoder:",e),null}},l.emscripten_ubq_codec_destroyAlphaState=function(e){const t=l.emscripten_ubq_codec_alphaStates.get(e);if(t){t.decoder&&"closed"!==t.decoder.state&&t.decoder.close();for(const e of t.pendingMain.values())e.frame.close();for(const e of t.pendingAlpha.values())e.close();if(t.pendingMain.clear(),t.pendingAlpha.clear(),t.expectedTimestamps.clear(),t.dropTimestamps.clear(),t.mergerCtx){const e=t.mergerCtx;e.deleteTexture(t.mergerTexMain),e.deleteTexture(t.mergerTexAlpha),e.deleteBuffer(t.mergerBuffer),e.deleteProgram(t.mergerProgram);const r=e.getExtension("WEBGL_lose_context");r&&r.loseContext()}t.mergerCanvas=null,t.mergerCtx=null,l.emscripten_ubq_codec_alphaStates.delete(e)}},l.emscripten_ubq_codec_markAlphaExpected=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);r&&r.expectedTimestamps.add(t)},l.emscripten_ubq_codec_alphaOnMainFrame=function(e,t,r,n,o){const i=l.emscripten_ubq_codec_alphaStates.get(e);if(!i)return!1;const a=t.timestamp??0;if(!i.expectedTimestamps.has(a))return!1;const s=i.pendingAlpha.get(a);if(s){i.pendingAlpha.delete(a),i.expectedTimestamps.delete(a);const d=l.emscripten_ubq_codec_mergeAlphaFrames(i,t,s);return l.emscripten_ubq_codec_presentVideoFrame(e,r,t,n,o,!1,d),s.close(),!0}return i.pendingMain.set(a,{frame:t,videoDecoder:r,isHdr:n,codecServicePtr:o}),!0},l.emscripten_ubq_codec_alphaOnAlphaFrame=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);if(!r)return void t.close();const n=t.timestamp??0;if(!r.expectedTimestamps.has(n))return void t.close();if(r.dropTimestamps.has(n))return r.dropTimestamps.delete(n),r.expectedTimestamps.delete(n),void t.close();const o=r.pendingMain.get(n);if(o){r.pendingMain.delete(n),r.expectedTimestamps.delete(n);const i=l.emscripten_ubq_codec_mergeAlphaFrames(r,o.frame,t);return l.emscripten_ubq_codec_presentVideoFrame(e,o.videoDecoder,o.frame,o.isHdr,o.codecServicePtr,!1,i),void t.close()}r.pendingAlpha.set(n,t)},l.emscripten_ubq_codec_alphaHandleDroppedMain=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);if(!r||"number"!=typeof t)return;if(!r.expectedTimestamps.has(t))return;const n=r.pendingMain.get(t);n&&(r.pendingMain.delete(t),n.frame.close());const o=r.pendingAlpha.get(t);o?(r.pendingAlpha.delete(t),o.close()):r.dropTimestamps.add(t),r.expectedTimestamps.delete(t)},l.emscripten_ubq_codec_alphaCancelExpectation=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);if(!r||"number"!=typeof t)return;if(!r.expectedTimestamps.has(t))return;const n=r.pendingMain.get(t);n&&(r.pendingMain.delete(t),n.frame.close());const o=r.pendingAlpha.get(t);o&&(r.pendingAlpha.delete(t),o.close()),r.dropTimestamps.delete(t),r.expectedTimestamps.delete(t)},l.emscripten_ubq_codec_toneMapHdrToSdr=function(e){l.emscripten_ubq_codec_offscreenCanvas||(l.emscripten_ubq_codec_offscreenCanvas=new OffscreenCanvas(e.codedWidth,e.codedHeight),l.emscripten_ubq_codec_offscreenCtx=l.emscripten_ubq_codec_offscreenCanvas.getContext("2d"));const t=l.emscripten_ubq_codec_offscreenCanvas;return t.width===e.codedWidth&&t.height===e.codedHeight||(t.width=e.codedWidth,t.height=e.codedHeight),l.emscripten_ubq_codec_offscreenCtx.drawImage(e,0,0),t},l.emscripten_ubq_codec_createVideoDecoder=function(e,t,r){const n=new VideoDecoder({output:o=>{const i=n.textures;let a=!1;if(n.shouldDropFrames)a=!0;else{if(1===n.isSafari){const e=n.targetFrameForScheduling??n.requestedPresentationFrame??0,t=n.reorderWindow??0,r=Math.max(e-t,0);n.decodedFrames<r&&(a=!0)}!a&&i&&i.length>0&&n.decodeQueueSize>=i.length&&(a=!0)}const s=o.timestamp??0;if(a)return l.emscripten_ubq_codec_alphaHandleDroppedMain(e,s),void l.emscripten_ubq_codec_presentVideoFrame(e,n,o,t,r,!0,null);l.emscripten_ubq_codec_alphaOnMainFrame(e,o,n,t,r)||l.emscripten_ubq_codec_presentVideoFrame(e,n,o,t,r,!1,null)},error:e=>{n.unexpectedError=e,console.error(e)}});return n.decodedFrames=0,n.requestedPresentationFrame=0,n.requestedDecodeChunk=0,n.targetFrameForScheduling=0,n.isSafari=l._isSafariHelper(),n.reorderWindow=0,n.shouldDropFrames=!1,n.isHdr=t,n.textureWidth=0,n.textureHeight=0,n.scalingCanvas=null,n.scalingCtx=null,n},l.emscripten_ubq_codec_createAudioDecoder=function(e,t,r){const n=new AudioDecoder({output:o=>{if(n.flushing)return void o.close();const i=l.HEAPF32.subarray(e/4,e/4+r),a=l.HEAPF32.subarray(t/4,t/4+r),s=1===o.numberOfChannels?0:1;if("f32-planar"===o.format){let e=n.writtenFrames%r;if(e+o.numberOfFrames<=r)o.copyTo(i.subarray(e),{planeIndex:0,frameCount:o.numberOfFrames}),o.copyTo(a.subarray(e),{planeIndex:s,frameCount:o.numberOfFrames});else{const t=r-e;o.copyTo(i.subarray(e),{planeIndex:0,frameCount:t}),o.copyTo(a.subarray(e),{planeIndex:s,frameCount:t}),o.copyTo(i,{planeIndex:0,frameOffset:t}),o.copyTo(a,{planeIndex:s,frameOffset:t})}n.writtenFrames+=o.numberOfFrames}else if("s16-planar"===o.format)if(1===o.numberOfChannels){const e=new Int16Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0});for(let t=0;t<o.numberOfFrames;t++){const o=e[t]/32768;let s=n.writtenFrames%r;i[s]=o,a[s]=o,n.writtenFrames++}}else{const e=new Int16Array(o.numberOfFrames),t=new Int16Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0}),o.copyTo(t,{planeIndex:1});for(let s=0;s<o.numberOfFrames;s++){let o=n.writtenFrames%r;i[o]=e[s]/32768,a[o]=t[s]/32768,n.writtenFrames++}}else if("s16"===o.format){const e=new Int16Array(o.numberOfFrames*o.numberOfChannels);if(o.copyTo(e,{planeIndex:0}),1===o.numberOfChannels)for(let t=0;t<o.numberOfFrames;t++){const o=e[t]/32768;let s=n.writtenFrames%r;i[s]=o,a[s]=o,n.writtenFrames++}else for(let t=0;t<o.numberOfFrames;t++){let s=n.writtenFrames%r;i[s]=e[t*o.numberOfChannels+0]/32768,a[s]=e[t*o.numberOfChannels+1]/32768,n.writtenFrames++}}else if("f32-planar"===o.format)if(1===o.numberOfChannels){const e=new Float32Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0});for(let t=0;t<o.numberOfFrames;t++){let o=n.writtenFrames%r;i[o]=e[t],a[o]=e[t],n.writtenFrames++}}else{const e=new Float32Array(o.numberOfFrames),t=new Float32Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0}),o.copyTo(t,{planeIndex:1});for(let s=0;s<o.numberOfFrames;s++){let o=n.writtenFrames%r;i[o]=e[s],a[o]=t[s],n.writtenFrames++}}else if("f32"===o.format){const e=new Float32Array(o.numberOfFrames*o.numberOfChannels);if(o.copyTo(e,{planeIndex:0}),1===o.numberOfChannels)for(let t=0;t<o.numberOfFrames;t++){let o=n.writtenFrames%r;i[o]=e[t],a[o]=e[t],n.writtenFrames++}else for(let t=0;t<o.numberOfFrames;t++){let s=n.writtenFrames%r;i[s]=e[t*o.numberOfChannels+0],a[s]=e[t*o.numberOfChannels+1],n.writtenFrames++}}else console.error("Unsupported audio format:",o.format);o.close()},error:e=>{n.unexpectedError=e,console.error(e)}});return n.writtenFrames=0,n},l.emscripten_ubq_settings_forceWebGL1=!1,l.emscripten_ubq_opfs_CHUNK_SIZE=10485760,l.emscripten_ubq_opfs_MAX_CACHE_SIZE_BYTES=209715200,void 0===l.emscripten_ubq_opfs_readTagCounter&&(l.emscripten_ubq_opfs_readTagCounter=0),l.emscripten_ubq_opfs_caches=new Map,l.emscripten_ubq_opfs_createWorker=function(){const e=new Blob(["\n let handle = null; \n let currentUri = '';\n\n async function getFileHandleForUri(uri) {\n const path = uri.replace(/^opfs:\\/\\//, \"\");\n const parts = path.split(\"/\").filter(Boolean);\n let dir = await navigator.storage.getDirectory();\n for (let i = 0; i < parts.length - 1; i++) {\n dir = await dir.getDirectoryHandle(parts[i]);\n }\n return dir.getFileHandle(parts[parts.length - 1]);\n }\n\n self.onmessage = async (ev) => {\n if (ev.data.open) {\n if (handle) {\n try {\n handle.close();\n } catch (e) {\n console.warn('[OPFS Worker] Failed to close previous handle', e);\n }\n }\n currentUri = ev.data.uri || '';\n try {\n const fileHandle = await getFileHandleForUri(currentUri);\n handle = await fileHandle.createSyncAccessHandle({\n mode: 'read-only'\n });\n try {\n const size = handle.getSize ? handle.getSize() : -1;\n } catch (_) {}\n self.postMessage({ready:true});\n } catch (error) {\n handle = null;\n const message =\n (error && error.message) ? error.message : String(error);\n self.postMessage({ready:false, error: message});\n }\n return;\n }\n \n if (ev.data.read) {\n const {offset, size, tag} = ev.data.read;\n\n if (!handle) {\n self.postMessage({tag, error: 'OPFS handle is not initialized'});\n return;\n }\n try {\n const tmp = new Uint8Array(size);\n const bytes = handle.read(tmp, {at: offset});\n self.postMessage({tag, bytes, buf: tmp.buffer}, [tmp.buffer]);\n } catch (error) {\n const message =\n (error && error.message) ? error.message : String(error);\n self.postMessage({tag, error: message});\n }\n }\n };\n "],{type:"application/javascript"});return{worker:new Worker(URL.createObjectURL(e),{type:"module"}),readyPromise:null,post:function(e){this.worker.postMessage(e)},get:function(){return this.worker}}},l.emscripten_ubq_opfs_destroyWorker=function(e){if(e){console.log("[OPFS Reader] Destroy worker");try{e.worker.terminate()}catch(e){console.warn("[OPFS] Failed to terminate worker",e)}}},l.emscripten_ubq_opfs_getCache=function(e){let t=l.emscripten_ubq_opfs_caches.get(e);return t||(t={chunkCache:new Map,accessOrder:[],currentSize:0,loadingChunks:new Set,file:null,openPromise:null,fileSize:-1,worker:null,workerOpened:!1,workerOpening:null},l.emscripten_ubq_opfs_caches.set(e,t)),t},l.emscripten_ubq_opfs_ensureFile=async function(e,t){if(t.fileHandle)return t.fileHandle;if(t.openPromise)return t.openPromise;const r=e.replace(/^opfs:\/\//,"");return t.openPromise=(async()=>{const e=await navigator.storage.getDirectory(),n=r.split("/").filter(Boolean);let o=e;for(let e=0;e<n.length-1;e++)o=await o.getDirectoryHandle(n[e]);const i=await o.getFileHandle(n[n.length-1]);t.fileHandle=i;const a=await i.getFile();return t.fileSize=a.size,i})(),t.openPromise},l.emscripten_ubq_opfs_ensureWorker=function(e,t){return t.worker||(t.worker=l.emscripten_ubq_opfs_createWorker()),t.worker},l.emscripten_ubq_opfs_updateAccess=function(e,t){const r=e.accessOrder.indexOf(t);-1!==r&&e.accessOrder.splice(r,1),e.accessOrder.push(t)},l.emscripten_ubq_opfs_cleanCache=function(e){const t=l.emscripten_ubq_opfs_MAX_CACHE_SIZE_BYTES;for(;e.currentSize>t&&e.accessOrder.length>0;){const t=e.accessOrder.shift(),r=e.chunkCache.get(t);r&&(e.currentSize-=r.byteLength,e.chunkCache.delete(t))}},l.emscripten_ubq_opfs_loadChunk=function(e,t,r){if(t.chunkCache.has(r)||t.loadingChunks.has(r))return void l.emscripten_ubq_opfs_updateAccess(t,r);t.loadingChunks.add(r);const n=l.emscripten_ubq_opfs_CHUNK_SIZE,o=r*n,i=o+n;l.emscripten_ubq_opfs_ensureFile(e,t).then((async e=>{const n=(await e.getFile()).slice(o,i),a=await n.arrayBuffer(),s=new Uint8Array(a);t.chunkCache.set(r,s),t.currentSize+=s.byteLength,l.emscripten_ubq_opfs_updateAccess(t,r),l.emscripten_ubq_opfs_cleanCache(t)})).catch((t=>{console.error(`[OPFS] Failed to load chunk ${r} for "${e}":`,t)})).finally((()=>{t.loadingChunks.delete(r)}))},l.emscripten_ubq_opfs_getChunkDataAsync=async function(e,t,r,n,o){if(n<=0)return 0;const i=Z(e),a=4294967296*(r>>>0)+(t>>>0),s=l.emscripten_ubq_opfs_getCache(i),d=l.emscripten_ubq_opfs_ensureWorker(i,s);s.workerOpened||(s.workerOpening||(s.workerOpening=(async()=>{await l.emscripten_ubq_opfs_ensureFile(i,s),d.post({open:!0,uri:i}),await new Promise(((e,t)=>{const r=d.get(),n=o=>{o.data&&(!0===o.data.ready?(r.removeEventListener("message",n),e()):!1===o.data.ready&&(r.removeEventListener("message",n),t(new Error(o.data.error||"Failed to open OPFS worker handle"))))};r.addEventListener("message",n)})),s.workerOpened=!0})().finally((()=>{s.workerOpening=null}))),await s.workerOpening);try{return await new Promise(((e,t)=>{void 0===l.emscripten_ubq_opfs_readTagCounter&&(l.emscripten_ubq_opfs_readTagCounter=0);const r=++l.emscripten_ubq_opfs_readTagCounter,i=d.get(),s=a=>{if(a.data.tag===r){if(i.removeEventListener("message",s),a.data.error)return void t(new Error(a.data.error));a.data.buf&&l.HEAPU8.set(new Uint8Array(a.data.buf),o),a.data.bytes===n?e(n):t(new Error("short read"))}};i.addEventListener("message",s),d.post({read:{offset:a,size:n,ptr:o,tag:r}})}))}catch(e){return console.error("[OPFS] worker read failed:",e),-1}},l.emscripten_ubq_opfs_loadChunkAsync=async function(e,t,r){if(t.chunkCache.has(r))return void l.emscripten_ubq_opfs_updateAccess(t,r);if(t.loadingChunks.has(r))return;t.loadingChunks.add(r);const n=l.emscripten_ubq_opfs_CHUNK_SIZE,o=r*n,i=o+n;try{const n=await l.emscripten_ubq_opfs_ensureFile(e,t),a=(await n.getFile()).slice(o,i),s=await a.arrayBuffer(),d=new Uint8Array(s);t.chunkCache.set(r,d),t.currentSize+=d.byteLength,l.emscripten_ubq_opfs_updateAccess(t,r),l.emscripten_ubq_opfs_cleanCache(t)}catch(t){throw console.error(`[OPFS] Async Failed to load chunk ${r} for "${e}":`,t),t}finally{t.loadingChunks.delete(r)}},l.emscripten_ubq_opfs_writerCaches||(l.emscripten_ubq_opfs_writerCaches=new Map),l.emscripten_ubq_opfs_createWriterWorker=function(){const e=new Blob(["\n let handle = null;\n let currentUri = '';\n\n async function ensureWritableFileHandle(uri) {\n const path = uri.replace(/^opfs:\\/\\//, '');\n const parts = path.split('/').filter(Boolean);\n let dir = await navigator.storage.getDirectory();\n for (let i = 0; i < parts.length - 1; i++) {\n dir = await dir.getDirectoryHandle(parts[i], { create: true });\n }\n return dir.getFileHandle(parts[parts.length - 1], { create: true });\n }\n\n self.onmessage = async (ev) => {\n if (ev.data.open) {\n if (handle) {\n try {\n await handle.flush();\n handle.close();\n } catch (e) {\n console.warn('[OPFS Writer] Failed to close previous handle', e);\n }\n }\n try {\n currentUri = ev.data.uri || '';\n const fh = await ensureWritableFileHandle(currentUri);\n handle = await fh.createSyncAccessHandle({ mode: 'readwrite' });\n try {\n // Ensure we start from a clean slate; truncate to zero\n handle.truncate(0);\n } catch (e) {\n // Some browsers might not support truncate; ignore\n }\n // Debug logs removed\n self.postMessage({ ready: true });\n } catch (err) {\n console.error('[OPFS Writer] Failed to open SyncAccessHandle', err);\n handle = null;\n const message = (err && err.message) ? err.message : String(err);\n self.postMessage({ ready: false, error: message });\n }\n return;\n }\n\n if (ev.data.write) {\n const { offset, buf, tag } = ev.data.write;\n try {\n if (!handle) throw new Error('OPFS writer handle not initialized');\n const bytes = new Uint8Array(buf);\n // Debug logs removed\n handle.write(bytes, { at: offset });\n // Debug logs removed\n self.postMessage({ tag });\n } catch (e) {\n self.postMessage({ tag, error: e.toString() });\n }\n return;\n }\n\n if (ev.data.close) {\n try {\n // Debug logs removed\n await handle.flush();\n handle.close();\n } catch (e) {\n // ignore\n }\n self.postMessage({ closed: true });\n }\n };\n "],{type:"application/javascript"}),t=new Worker(URL.createObjectURL(e),{type:"module"});return{worker:t,post:e=>t.postMessage(e),get:()=>t}},l.emscripten_ubq_opfs_destroyWriterWorker=function(e){if(e)try{e.worker.terminate()}catch(e){}},l.emscripten_ubq_opfs_ensureWriteFile=async function(e,t){if(t.fileHandle)return t.fileHandle;if(t.openPromise)return t.openPromise;const r=e.replace(/^opfs:\/\//,"");return t.openPromise=(async()=>{const e=await navigator.storage.getDirectory(),n=r.split("/").filter(Boolean);let o=e;for(let e=0;e<n.length-1;e++){const t=n[e];o=await o.getDirectoryHandle(t,{create:!0})}const i=await o.getFileHandle(n[n.length-1],{create:!0});return t.fileHandle=i,i})(),t.openPromise},l.emscripten_ubq_opfs_ensureWriteWorker=function(e,t){return t.worker||(t.worker=l.emscripten_ubq_opfs_createWriterWorker()),t.worker};var h,f,g={...l},m=[],b="./this.program",y=(e,t)=>{throw t},v="";if(p){var w=S();S(),v=__dirname+"/",f=e=>(e=U(e)?new URL(e):e,w.readFileSync(e)),h=async(e,t=!0)=>(e=U(e)?new URL(e):e,w.readFileSync(e,t?void 0:"utf8")),!l.thisProgram&&process.argv.length>1&&(b=process.argv[1].replace(/\\/g,"/")),m=process.argv.slice(2),y=(e,t)=>{throw process.exitCode=e,t}}else(c||u)&&(u?v=self.location.href:"undefined"!=typeof document&&document.currentScript&&(v=document.currentScript.src),r&&(v=r),v=v.startsWith("blob:")?"":v.slice(0,v.replace(/[?#].*/,"").lastIndexOf("/")+1),u&&(f=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),h=async e=>{var t=await fetch(e,{credentials:"same-origin"});if(t.ok)return t.arrayBuffer();throw new Error(t.status+" : "+t.url)});var k=l.print||console.log.bind(console),_=l.printErr||console.error.bind(console);Object.assign(l,g),g=null,l.arguments&&(m=l.arguments),l.thisProgram&&(b=l.thisProgram);var E,C,P,x,T,A,F,M,I,D,B,R,L=l.wasmBinary,O=!1,U=e=>e.startsWith("file://");function $(){var e=E.buffer;l.HEAP8=P=new Int8Array(e),l.HEAP16=T=new Int16Array(e),l.HEAPU8=x=new Uint8Array(e),l.HEAPU16=A=new Uint16Array(e),l.HEAP32=F=new Int32Array(e),l.HEAPU32=M=new Uint32Array(e),l.HEAPF32=I=new Float32Array(e),l.HEAPF64=R=new Float64Array(e),l.HEAP64=D=new BigInt64Array(e),l.HEAPU64=B=new BigUint64Array(e)}if(l.wasmMemory)E=l.wasmMemory;else{var q=l.INITIAL_MEMORY||16777216;E=new WebAssembly.Memory({initial:q/65536,maximum:32768})}$();var W,H=0,N=null;function V(e){H++,l.monitorRunDependencies?.(H)}function z(e){if(H--,l.monitorRunDependencies?.(H),0==H&&N){var t=N;N=null,t()}}function G(e){l.onAbort?.(e),_(e="Aborted("+e+")"),O=!0,e+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(e);throw n(t),t}function j(){return e="cesdk.wasm",l.locateFile?l.locateFile(e,v):v+e;var e}async function X(e){if(!L)try{var t=await h(e);return new Uint8Array(t)}catch{}return function(e){if(e==W&&L)return new Uint8Array(L);if(f)return f(e);throw"both async and sync fetching of the wasm failed"}(e)}async function Y(e,t,r){if(!e&&"function"==typeof WebAssembly.instantiateStreaming&&!p)try{var n=fetch(t,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(n,r)}catch(e){_(`wasm streaming compile failed: ${e}`),_("falling back to ArrayBuffer instantiation")}return async function(e,t){try{var r=await X(e);return await WebAssembly.instantiate(r,t)}catch(e){_(`failed to asynchronously prepare wasm: ${e}`),G(e)}}(t,r)}class ExitStatus{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var K="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Q=(e,t=0,r=NaN)=>{for(var n=t+r,o=t;e[o]&&!(o>=n);)++o;if(o-t>16&&e.buffer&&K)return K.decode(e.subarray(t,o));for(var i="";t<o;){var a=e[t++];if(128&a){var s=63&e[t++];if(192!=(224&a)){var l=63&e[t++];if((a=224==(240&a)?(15&a)<<12|s<<6|l:(7&a)<<18|s<<12|l<<6|63&e[t++])<65536)i+=String.fromCharCode(a);else{var d=a-65536;i+=String.fromCharCode(55296|d>>10,56320|1023&d)}}else i+=String.fromCharCode((31&a)<<6|s)}else i+=String.fromCharCode(a)}return i},Z=(e,t)=>e?Q(x,e,t):"",J=e=>{for(;e.length>0;)e.shift()(l)},ee=[],te=e=>ee.unshift(e),re=[],ne=e=>re.unshift(e),oe=l.noExitRuntime||!0,ie=e=>Zl(e),ae=()=>ed(),se=e=>{for(var t=0,r=0;r<e.length;++r){var n=e.charCodeAt(r);n<=127?t++:n<=2047?t+=2:n>=55296&&n<=57343?(t+=4,++r):t+=3}return t},le=(e,t,r,n)=>{if(!(n>0))return 0;for(var o=r,i=r+n-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(r>=i)break;t[r++]=s}else if(s<=2047){if(r+1>=i)break;t[r++]=192|s>>6,t[r++]=128|63&s}else if(s<=65535){if(r+2>=i)break;t[r++]=224|s>>12,t[r++]=128|s>>6&63,t[r++]=128|63&s}else{if(r+3>=i)break;t[r++]=240|s>>18,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}}return t[r]=0,r-o},de=(e,t,r)=>le(e,x,t,r),ce=e=>{var t=se(e)+1,r=Nl(t);return r&&de(e,r,t),r},ue=[],pe=0;class ExceptionInfo{constructor(e){this.excPtr=e,this.ptr=e-24}set_type(e){M[this.ptr+4>>2]=e}get_type(){return M[this.ptr+4>>2]}set_destructor(e){M[this.ptr+8>>2]=e}get_destructor(){return M[this.ptr+8>>2]}set_caught(e){e=e?1:0,P[this.ptr+12]=e}get_caught(){return 0!=P[this.ptr+12]}set_rethrown(e){e=e?1:0,P[this.ptr+13]=e}get_rethrown(){return 0!=P[this.ptr+13]}init(e,t){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(t)}set_adjusted_ptr(e){M[this.ptr+16>>2]=e}get_adjusted_ptr(){return M[this.ptr+16>>2]}}var he=e=>Ql(e),fe=e=>{var t=pe;if(!t)return he(0),0;var r=new ExceptionInfo(t);r.set_adjusted_ptr(t);var n=r.get_type();if(!n)return he(0),t;for(var o of e){if(0===o||o===n)break;var i=r.ptr+16;if(nd(o,n,i))return he(o),t}return he(n),t},ge={isAbs:e=>"/"===e.charAt(0),splitPath:e=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1),normalizeArray:(e,t)=>{for(var r=0,n=e.length-1;n>=0;n--){var o=e[n];"."===o?e.splice(n,1):".."===o?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r;r--)e.unshift("..");return e},normalize:e=>{var t=ge.isAbs(e),r="/"===e.slice(-1);return(e=ge.normalizeArray(e.split("/").filter((e=>!!e)),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e},dirname:e=>{var t=ge.splitPath(e),r=t[0],n=t[1];return r||n?(n&&(n=n.slice(0,-1)),r+n):"."},basename:e=>e&&e.match(/([^\/]+|\/)\/*$/)[1],join:(...e)=>ge.normalize(e.join("/")),join2:(e,t)=>ge.normalize(e+"/"+t)},me=e=>{(me=e=>crypto.getRandomValues(e))(e)},be={resolve:(...e)=>{for(var t="",r=!1,n=e.length-1;n>=-1&&!r;n--){var o=n>=0?e[n]:Te.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");if(!o)return"";t=o+"/"+t,r=ge.isAbs(o)}return(r?"/":"")+(t=ge.normalizeArray(t.split("/").filter((e=>!!e)),!r).join("/"))||"."},relative:(e,t)=>{function r(e){for(var t=0;t<e.length&&""===e[t];t++);for(var r=e.length-1;r>=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=be.resolve(e).slice(1),t=be.resolve(t).slice(1);for(var n=r(e.split("/")),o=r(t.split("/")),i=Math.min(n.length,o.length),a=i,s=0;s<i;s++)if(n[s]!==o[s]){a=s;break}var l=[];for(s=a;s<n.length;s++)l.push("..");return(l=l.concat(o.slice(a))).join("/")}},ye=[],ve=(e,t,r)=>{var n=r>0?r:se(e)+1,o=new Array(n),i=le(e,o,0,o.length);return t&&(o.length=i),o},we={ttys:[],init(){},shutdown(){},register(e,t){we.ttys[e]={input:[],output:[],ops:t},Te.registerDevice(e,we.stream_ops)},stream_ops:{open(e){var t=we.ttys[e.node.rdev];if(!t)throw new Te.ErrnoError(43);e.tty=t,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,t,r,n,o){if(!e.tty||!e.tty.ops.get_char)throw new Te.ErrnoError(60);for(var i=0,a=0;a<n;a++){var s;try{s=e.tty.ops.get_char(e.tty)}catch(e){throw new Te.ErrnoError(29)}if(void 0===s&&0===i)throw new Te.ErrnoError(6);if(null==s)break;i++,t[r+a]=s}return i&&(e.node.atime=Date.now()),i},write(e,t,r,n,o){if(!e.tty||!e.tty.ops.put_char)throw new Te.ErrnoError(60);try{for(var i=0;i<n;i++)e.tty.ops.put_char(e.tty,t[r+i])}catch(e){throw new Te.ErrnoError(29)}return n&&(e.node.mtime=e.node.ctime=Date.now()),i}},default_tty_ops:{get_char:e=>(()=>{if(!ye.length){var e=null;if(p){var t=Buffer.alloc(256),r=0,n=process.stdin.fd;try{r=w.readSync(n,t,0,256)}catch(e){if(!e.toString().includes("EOF"))throw e;r=0}r>0&&(e=t.slice(0,r).toString("utf-8"))}else"undefined"!=typeof window&&"function"==typeof window.prompt&&null!==(e=window.prompt("Input: "))&&(e+="\n");if(!e)return null;ye=ve(e,!0)}return ye.shift()})(),put_char(e,t){null===t||10===t?(k(Q(e.output)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){e.output?.length>0&&(k(Q(e.output)),e.output=[])},ioctl_tcgets:e=>({c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}),ioctl_tcsets:(e,t,r)=>0,ioctl_tiocgwinsz:e=>[24,80]},default_tty1_ops:{put_char(e,t){null===t||10===t?(_(Q(e.output)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){e.output?.length>0&&(_(Q(e.output)),e.output=[])}}},ke=(e,t)=>Math.ceil(e/t)*t,_e=e=>{e=ke(e,65536);var t=Xl(65536,e);return t&&((e,t)=>{x.fill(0,e,e+t)})(t,e),t},Ee={ops_table:null,mount:e=>Ee.createNode(null,"/",16895,0),createNode(e,t,r,n){if(Te.isBlkdev(r)||Te.isFIFO(r))throw new Te.ErrnoError(63);Ee.ops_table||={dir:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr,lookup:Ee.node_ops.lookup,mknod:Ee.node_ops.mknod,rename:Ee.node_ops.rename,unlink:Ee.node_ops.unlink,rmdir:Ee.node_ops.rmdir,readdir:Ee.node_ops.readdir,symlink:Ee.node_ops.symlink},stream:{llseek:Ee.stream_ops.llseek}},file:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr},stream:{llseek:Ee.stream_ops.llseek,read:Ee.stream_ops.read,write:Ee.stream_ops.write,mmap:Ee.stream_ops.mmap,msync:Ee.stream_ops.msync}},link:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr,readlink:Ee.node_ops.readlink},stream:{}},chrdev:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr},stream:Te.chrdev_stream_ops}};var o=Te.createNode(e,t,r,n);return Te.isDir(o.mode)?(o.node_ops=Ee.ops_table.dir.node,o.stream_ops=Ee.ops_table.dir.stream,o.contents={}):Te.isFile(o.mode)?(o.node_ops=Ee.ops_table.file.node,o.stream_ops=Ee.ops_table.file.stream,o.usedBytes=0,o.contents=null):Te.isLink(o.mode)?(o.node_ops=Ee.ops_table.link.node,o.stream_ops=Ee.ops_table.link.stream):Te.isChrdev(o.mode)&&(o.node_ops=Ee.ops_table.chrdev.node,o.stream_ops=Ee.ops_table.chrdev.stream),o.atime=o.mtime=o.ctime=Date.now(),e&&(e.contents[t]=o,e.atime=e.mtime=e.ctime=o.atime),o},getFileDataAsTypedArray:e=>e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array(0),expandFileStorage(e,t){var r=e.contents?e.contents.length:0;if(!(r>=t)){t=Math.max(t,r*(r<1048576?2:1.125)>>>0),0!=r&&(t=Math.max(t,256));var n=e.contents;e.contents=new Uint8Array(t),e.usedBytes>0&&e.contents.set(n.subarray(0,e.usedBytes),0)}},resizeFileStorage(e,t){if(e.usedBytes!=t)if(0==t)e.contents=null,e.usedBytes=0;else{var r=e.contents;e.contents=new Uint8Array(t),r&&e.contents.set(r.subarray(0,Math.min(t,e.usedBytes))),e.usedBytes=t}},node_ops:{getattr(e){var t={};return t.dev=Te.isChrdev(e.mode)?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,Te.isDir(e.mode)?t.size=4096:Te.isFile(e.mode)?t.size=e.usedBytes:Te.isLink(e.mode)?t.size=e.link.length:t.size=0,t.atime=new Date(e.atime),t.mtime=new Date(e.mtime),t.ctime=new Date(e.ctime),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(e,t){for(const r of["mode","atime","mtime","ctime"])null!=t[r]&&(e[r]=t[r]);void 0!==t.size&&Ee.resizeFileStorage(e,t.size)},lookup(e,t){throw Ee.doesNotExistError},mknod:(e,t,r,n)=>Ee.createNode(e,t,r,n),rename(e,t,r){var n;try{n=Te.lookupNode(t,r)}catch(e){}if(n){if(Te.isDir(e.mode))for(var o in n.contents)throw new Te.ErrnoError(55);Te.hashRemoveNode(n)}delete e.parent.contents[e.name],t.contents[r]=e,e.name=r,t.ctime=t.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,t){delete e.contents[t],e.ctime=e.mtime=Date.now()},rmdir(e,t){var r=Te.lookupNode(e,t);for(var n in r.contents)throw new Te.ErrnoError(55);delete e.contents[t],e.ctime=e.mtime=Date.now()},readdir:e=>[".","..",...Object.keys(e.contents)],symlink(e,t,r){var n=Ee.createNode(e,t,41471,0);return n.link=r,n},readlink(e){if(!Te.isLink(e.mode))throw new Te.ErrnoError(28);return e.link}},stream_ops:{read(e,t,r,n,o){var i=e.node.contents;if(o>=e.node.usedBytes)return 0;var a=Math.min(e.node.usedBytes-o,n);if(a>8&&i.subarray)t.set(i.subarray(o,o+a),r);else for(var s=0;s<a;s++)t[r+s]=i[o+s];return a},write(e,t,r,n,o,i){if(t.buffer===P.buffer&&(i=!1),!n)return 0;var a=e.node;if(a.mtime=a.ctime=Date.now(),t.subarray&&(!a.contents||a.contents.subarray)){if(i)return a.contents=t.subarray(r,r+n),a.usedBytes=n,n;if(0===a.usedBytes&&0===o)return a.contents=t.slice(r,r+n),a.usedBytes=n,n;if(o+n<=a.usedBytes)return a.contents.set(t.subarray(r,r+n),o),n}if(Ee.expandFileStorage(a,o+n),a.contents.subarray&&t.subarray)a.contents.set(t.subarray(r,r+n),o);else for(var s=0;s<n;s++)a.contents[o+s]=t[r+s];return a.usedBytes=Math.max(a.usedBytes,o+n),n},llseek(e,t,r){var n=t;if(1===r?n+=e.position:2===r&&Te.isFile(e.node.mode)&&(n+=e.node.usedBytes),n<0)throw new Te.ErrnoError(28);return n},mmap(e,t,r,n,o){if(!Te.isFile(e.node.mode))throw new Te.ErrnoError(43);var i,a,s=e.node.contents;if(2&o||!s||s.buffer!==P.buffer){if(a=!0,!(i=_e(t)))throw new Te.ErrnoError(48);s&&((r>0||r+t<s.length)&&(s=s.subarray?s.subarray(r,r+t):Array.prototype.slice.call(s,r,r+t)),P.set(s,i))}else a=!1,i=s.byteOffset;return{ptr:i,allocated:a}},msync:(e,t,r,n,o)=>(Ee.stream_ops.write(e,t,0,n,r,!1),0)}},Ce=(e,t,r,n,o,i)=>{Te.createDataFile(e,t,r,n,o,i)},Se=l.preloadPlugins||[],Pe=(e,t,r,n,o,i,a,s,l,d)=>{var c=t?be.resolve(ge.join2(e,t)):e;function u(r){function u(r){d?.(),s||Ce(e,t,r,n,o,l),i?.(),z()}((e,t,r,n)=>{void 0!==br&&br.init();var o=!1;return Se.forEach((i=>{o||i.canHandle(t)&&(i.handle(e,t,r,n),o=!0)})),o})(r,c,u,(()=>{a?.(),z()}))||u(r)}V(),"string"==typeof r?(async e=>{var t=await h(e);return new Uint8Array(t)})(r).then(u,a):u(r)},xe=(e,t)=>{var r=0;return e&&(r|=365),t&&(r|=146),r},Te={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,filesystems:null,syncFSRequests:0,readFiles:{},ErrnoError:class{name="ErrnoError";constructor(e){this.errno=e}},FSStream:class{shared={};get object(){return this.node}set object(e){this.node=e}get isRead(){return 1!=(2097155&this.flags)}get isWrite(){return 0!=(2097155&this.flags)}get isAppend(){return 1024&this.flags}get flags(){return this.shared.flags}set flags(e){this.shared.flags=e}get position(){return this.shared.position}set position(e){this.shared.position=e}},FSNode:class{node_ops={};stream_ops={};readMode=365;writeMode=146;mounted=null;constructor(e,t,r,n){e||(e=this),this.parent=e,this.mount=e.mount,this.id=Te.nextInode++,this.name=t,this.mode=r,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(e){e?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(e){e?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return Te.isDir(this.mode)}get isDevice(){return Te.isChrdev(this.mode)}},lookupPath(e,t={}){if(!e)throw new Te.ErrnoError(44);t.follow_mount??=!0,ge.isAbs(e)||(e=Te.cwd()+"/"+e);e:for(var r=0;r<40;r++){for(var n=e.split("/").filter((e=>!!e)),o=Te.root,i="/",a=0;a<n.length;a++){var s=a===n.length-1;if(s&&t.parent)break;if("."!==n[a])if(".."!==n[a]){i=ge.join2(i,n[a]);try{o=Te.lookupNode(o,n[a])}catch(e){if(44===e?.errno&&s&&t.noent_okay)return{path:i};throw e}if(!Te.isMountpoint(o)||s&&!t.follow_mount||(o=o.mounted.root),Te.isLink(o.mode)&&(!s||t.follow)){if(!o.node_ops.readlink)throw new Te.ErrnoError(52);var l=o.node_ops.readlink(o);ge.isAbs(l)||(l=ge.dirname(i)+"/"+l),e=l+"/"+n.slice(a+1).join("/");continue e}}else i=ge.dirname(i),o=o.parent}return{path:i,node:o}}throw new Te.ErrnoError(32)},getPath(e){for(var t;;){if(Te.isRoot(e)){var r=e.mount.mountpoint;return t?"/"!==r[r.length-1]?`${r}/${t}`:r+t:r}t=t?`${e.name}/${t}`:e.name,e=e.parent}},hashName(e,t){for(var r=0,n=0;n<t.length;n++)r=(r<<5)-r+t.charCodeAt(n)|0;return(e+r>>>0)%Te.nameTable.length},hashAddNode(e){var t=Te.hashName(e.parent.id,e.name);e.name_next=Te.nameTable[t],Te.nameTable[t]=e},hashRemoveNode(e){var t=Te.hashName(e.parent.id,e.name);if(Te.nameTable[t]===e)Te.nameTable[t]=e.name_next;else for(var r=Te.nameTable[t];r;){if(r.name_next===e){r.name_next=e.name_next;break}r=r.name_next}},lookupNode(e,t){var r=Te.mayLookup(e);if(r)throw new Te.ErrnoError(r);for(var n=Te.hashName(e.id,t),o=Te.nameTable[n];o;o=o.name_next){var i=o.name;if(o.parent.id===e.id&&i===t)return o}return Te.lookup(e,t)},createNode(e,t,r,n){var o=new Te.FSNode(e,t,r,n);return Te.hashAddNode(o),o},destroyNode(e){Te.hashRemoveNode(e)},isRoot:e=>e===e.parent,isMountpoint:e=>!!e.mounted,isFile:e=>32768==(61440&e),isDir:e=>16384==(61440&e),isLink:e=>40960==(61440&e),isChrdev:e=>8192==(61440&e),isBlkdev:e=>24576==(61440&e),isFIFO:e=>4096==(61440&e),isSocket:e=>49152==(49152&e),flagsToPermissionString(e){var t=["r","w","rw"][3&e];return 512&e&&(t+="w"),t},nodePermissions:(e,t)=>Te.ignorePermissions||(!t.includes("r")||292&e.mode)&&(!t.includes("w")||146&e.mode)&&(!t.includes("x")||73&e.mode)?0:2,mayLookup(e){if(!Te.isDir(e.mode))return 54;var t=Te.nodePermissions(e,"x");return t||(e.node_ops.lookup?0:2)},mayCreate(e,t){if(!Te.isDir(e.mode))return 54;try{return Te.lookupNode(e,t),20}catch(e){}return Te.nodePermissions(e,"wx")},mayDelete(e,t,r){var n;try{n=Te.lookupNode(e,t)}catch(e){return e.errno}var o=Te.nodePermissions(e,"wx");if(o)return o;if(r){if(!Te.isDir(n.mode))return 54;if(Te.isRoot(n)||Te.getPath(n)===Te.cwd())return 10}else if(Te.isDir(n.mode))return 31;return 0},mayOpen:(e,t)=>e?Te.isLink(e.mode)?32:Te.isDir(e.mode)&&("r"!==Te.flagsToPermissionString(t)||576&t)?31:Te.nodePermissions(e,Te.flagsToPermissionString(t)):44,checkOpExists(e,t){if(!e)throw new Te.ErrnoError(t);return e},MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=Te.MAX_OPEN_FDS;e++)if(!Te.streams[e])return e;throw new Te.ErrnoError(33)},getStreamChecked(e){var t=Te.getStream(e);if(!t)throw new Te.ErrnoError(8);return t},getStream:e=>Te.streams[e],createStream:(e,t=-1)=>(e=Object.assign(new Te.FSStream,e),-1==t&&(t=Te.nextfd()),e.fd=t,Te.streams[t]=e,e),closeStream(e){Te.streams[e]=null},dupStream(e,t=-1){var r=Te.createStream(e,t);return r.stream_ops?.dup?.(r),r},doSetAttr(e,t,r){var n=e?.stream_ops.setattr,o=n?e:t;n??=t.node_ops.setattr,Te.checkOpExists(n,63),n(o,r)},chrdev_stream_ops:{open(e){var t=Te.getDevice(e.node.rdev);e.stream_ops=t.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new Te.ErrnoError(70)}},major:e=>e>>8,minor:e=>255&e,makedev:(e,t)=>e<<8|t,registerDevice(e,t){Te.devices[e]={stream_ops:t}},getDevice:e=>Te.devices[e],getMounts(e){for(var t=[],r=[e];r.length;){var n=r.pop();t.push(n),r.push(...n.mounts)}return t},syncfs(e,t){"function"==typeof e&&(t=e,e=!1),Te.syncFSRequests++,Te.syncFSRequests>1&&_(`warning: ${Te.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var r=Te.getMounts(Te.root.mount),n=0;function o(e){return Te.syncFSRequests--,t(e)}function i(e){if(e)return i.errored?void 0:(i.errored=!0,o(e));++n>=r.length&&o(null)}r.forEach((t=>{if(!t.type.syncfs)return i(null);t.type.syncfs(t,e,i)}))},mount(e,t,r){var n,o="/"===r,i=!r;if(o&&Te.root)throw new Te.ErrnoError(10);if(!o&&!i){var a=Te.lookupPath(r,{follow_mount:!1});if(r=a.path,n=a.node,Te.isMountpoint(n))throw new Te.ErrnoError(10);if(!Te.isDir(n.mode))throw new Te.ErrnoError(54)}var s={type:e,opts:t,mountpoint:r,mounts:[]},l=e.mount(s);return l.mount=s,s.root=l,o?Te.root=l:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),l},unmount(e){var t=Te.lookupPath(e,{follow_mount:!1});if(!Te.isMountpoint(t.node))throw new Te.ErrnoError(28);var r=t.node,n=r.mounted,o=Te.getMounts(n);Object.keys(Te.nameTable).forEach((e=>{for(var t=Te.nameTable[e];t;){var r=t.name_next;o.includes(t.mount)&&Te.destroyNode(t),t=r}})),r.mounted=null;var i=r.mount.mounts.indexOf(n);r.mount.mounts.splice(i,1)},lookup:(e,t)=>e.node_ops.lookup(e,t),mknod(e,t,r){var n=Te.lookupPath(e,{parent:!0}).node,o=ge.basename(e);if(!o)throw new Te.ErrnoError(28);if("."===o||".."===o)throw new Te.ErrnoError(20);var i=Te.mayCreate(n,o);if(i)throw new Te.ErrnoError(i);if(!n.node_ops.mknod)throw new Te.ErrnoError(63);return n.node_ops.mknod(n,o,t,r)},statfs:e=>Te.statfsNode(Te.lookupPath(e,{follow:!0}).node),statfsStream:e=>Te.statfsNode(e.node),statfsNode(e){var t={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:Te.nextInode,ffree:Te.nextInode-1,fsid:42,flags:2,namelen:255};return e.node_ops.statfs&&Object.assign(t,e.node_ops.statfs(e.mount.opts.root)),t},create:(e,t=438)=>(t&=4095,t|=32768,Te.mknod(e,t,0)),mkdir:(e,t=511)=>(t&=1023,t|=16384,Te.mknod(e,t,0)),mkdirTree(e,t){var r=e.split("/"),n="";for(var o of r)if(o){n+="/"+o;try{Te.mkdir(n,t)}catch(e){if(20!=e.errno)throw e}}},mkdev:(e,t,r)=>(void 0===r&&(r=t,t=438),t|=8192,Te.mknod(e,t,r)),symlink(e,t){if(!be.resolve(e))throw new Te.ErrnoError(44);var r=Te.lookupPath(t,{parent:!0}).node;if(!r)throw new Te.ErrnoError(44);var n=ge.basename(t),o=Te.mayCreate(r,n);if(o)throw new Te.ErrnoError(o);if(!r.node_ops.symlink)throw new Te.ErrnoError(63);return r.node_ops.symlink(r,n,e)},rename(e,t){var r,n,o=ge.dirname(e),i=ge.dirname(t),a=ge.basename(e),s=ge.basename(t);if(r=Te.lookupPath(e,{parent:!0}).node,n=Te.lookupPath(t,{parent:!0}).node,!r||!n)throw new Te.ErrnoError(44);if(r.mount!==n.mount)throw new Te.ErrnoError(75);var l,d=Te.lookupNode(r,a),c=be.relative(e,i);if("."!==c.charAt(0))throw new Te.ErrnoError(28);if("."!==(c=be.relative(t,o)).charAt(0))throw new Te.ErrnoError(55);try{l=Te.lookupNode(n,s)}catch(e){}if(d!==l){var u=Te.isDir(d.mode),p=Te.mayDelete(r,a,u);if(p)throw new Te.ErrnoError(p);if(p=l?Te.mayDelete(n,s,u):Te.mayCreate(n,s))throw new Te.ErrnoError(p);if(!r.node_ops.rename)throw new Te.ErrnoError(63);if(Te.isMountpoint(d)||l&&Te.isMountpoint(l))throw new Te.ErrnoError(10);if(n!==r&&(p=Te.nodePermissions(r,"w")))throw new Te.ErrnoError(p);Te.hashRemoveNode(d);try{r.node_ops.rename(d,n,s),d.parent=n}catch(e){throw e}finally{Te.hashAddNode(d)}}},rmdir(e){var t=Te.lookupPath(e,{parent:!0}).node,r=ge.basename(e),n=Te.lookupNode(t,r),o=Te.mayDelete(t,r,!0);if(o)throw new Te.ErrnoError(o);if(!t.node_ops.rmdir)throw new Te.ErrnoError(63);if(Te.isMountpoint(n))throw new Te.ErrnoError(10);t.node_ops.rmdir(t,r),Te.destroyNode(n)},readdir(e){var t=Te.lookupPath(e,{follow:!0}).node;return Te.checkOpExists(t.node_ops.readdir,54)(t)},unlink(e){var t=Te.lookupPath(e,{parent:!0}).node;if(!t)throw new Te.ErrnoError(44);var r=ge.basename(e),n=Te.lookupNode(t,r),o=Te.mayDelete(t,r,!1);if(o)throw new Te.ErrnoError(o);if(!t.node_ops.unlink)throw new Te.ErrnoError(63);if(Te.isMountpoint(n))throw new Te.ErrnoError(10);t.node_ops.unlink(t,r),Te.destroyNode(n)},readlink(e){var t=Te.lookupPath(e).node;if(!t)throw new Te.ErrnoError(44);if(!t.node_ops.readlink)throw new Te.ErrnoError(28);return t.node_ops.readlink(t)},stat(e,t){var r=Te.lookupPath(e,{follow:!t}).node;return Te.checkOpExists(r.node_ops.getattr,63)(r)},fstat(e){var t=Te.getStreamChecked(e),r=t.node,n=t.stream_ops.getattr,o=n?t:r;return n??=r.node_ops.getattr,Te.checkOpExists(n,63),n(o)},lstat:e=>Te.stat(e,!0),doChmod(e,t,r,n){Te.doSetAttr(e,t,{mode:4095&r|-4096&t.mode,ctime:Date.now(),dontFollow:n})},chmod(e,t,r){var n;n="string"==typeof e?Te.lookupPath(e,{follow:!r}).node:e,Te.doChmod(null,n,t,r)},lchmod(e,t){Te.chmod(e,t,!0)},fchmod(e,t){var r=Te.getStreamChecked(e);Te.doChmod(r,r.node,t,!1)},doChown(e,t,r){Te.doSetAttr(e,t,{timestamp:Date.now(),dontFollow:r})},chown(e,t,r,n){var o;o="string"==typeof e?Te.lookupPath(e,{follow:!n}).node:e,Te.doChown(null,o,n)},lchown(e,t,r){Te.chown(e,t,r,!0)},fchown(e,t,r){var n=Te.getStreamChecked(e);Te.doChown(n,n.node,!1)},doTruncate(e,t,r){if(Te.isDir(t.mode))throw new Te.ErrnoError(31);if(!Te.isFile(t.mode))throw new Te.ErrnoError(28);var n=Te.nodePermissions(t,"w");if(n)throw new Te.ErrnoError(n);Te.doSetAttr(e,t,{size:r,timestamp:Date.now()})},truncate(e,t){if(t<0)throw new Te.ErrnoError(28);var r;r="string"==typeof e?Te.lookupPath(e,{follow:!0}).node:e,Te.doTruncate(null,r,t)},ftruncate(e,t){var r=Te.getStreamChecked(e);if(t<0||0==(2097155&r.flags))throw new Te.ErrnoError(28);Te.doTruncate(r,r.node,t)},utime(e,t,r){var n=Te.lookupPath(e,{follow:!0}).node;Te.checkOpExists(n.node_ops.setattr,63)(n,{atime:t,mtime:r})},open(e,t,r=438){if(""===e)throw new Te.ErrnoError(44);var n,o;if(r=64&(t="string"==typeof t?(e=>{var t={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(void 0===t)throw new Error(`Unknown file open mode: ${e}`);return t})(t):t)?4095&r|32768:0,"object"==typeof e)n=e;else{o=e.endsWith("/");var i=Te.lookupPath(e,{follow:!(131072&t),noent_okay:!0});n=i.node,e=i.path}var a=!1;if(64&t)if(n){if(128&t)throw new Te.ErrnoError(20)}else{if(o)throw new Te.ErrnoError(31);n=Te.mknod(e,511|r,0),a=!0}if(!n)throw new Te.ErrnoError(44);if(Te.isChrdev(n.mode)&&(t&=-513),65536&t&&!Te.isDir(n.mode))throw new Te.ErrnoError(54);if(!a){var s=Te.mayOpen(n,t);if(s)throw new Te.ErrnoError(s)}512&t&&!a&&Te.truncate(n,0),t&=-131713;var d=Te.createStream({node:n,path:Te.getPath(n),flags:t,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return d.stream_ops.open&&d.stream_ops.open(d),a&&Te.chmod(n,511&r),!l.logReadFiles||1&t||e in Te.readFiles||(Te.readFiles[e]=1),d},close(e){if(Te.isClosed(e))throw new Te.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{Te.closeStream(e.fd)}e.fd=null},isClosed:e=>null===e.fd,llseek(e,t,r){if(Te.isClosed(e))throw new Te.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new Te.ErrnoError(70);if(0!=r&&1!=r&&2!=r)throw new Te.ErrnoError(28);return e.position=e.stream_ops.llseek(e,t,r),e.ungotten=[],e.position},read(e,t,r,n,o){if(n<0||o<0)throw new Te.ErrnoError(28);if(Te.isClosed(e))throw new Te.ErrnoError(8);if(1==(2097155&e.flags))throw new Te.ErrnoError(8);if(Te.isDir(e.node.mode))throw new Te.ErrnoError(31);if(!e.stream_ops.read)throw new Te.ErrnoError(28);var i=void 0!==o;if(i){if(!e.seekable)throw new Te.ErrnoError(70)}else o=e.position;var a=e.stream_ops.read(e,t,r,n,o);return i||(e.position+=a),a},write(e,t,r,n,o,i){if(n<0||o<0)throw new Te.ErrnoError(28);if(Te.isClosed(e))throw new Te.ErrnoError(8);if(0==(2097155&e.flags))throw new Te.ErrnoError(8);if(Te.isDir(e.node.mode))throw new Te.ErrnoError(31);if(!e.stream_ops.write)throw new Te.ErrnoError(28);e.seekable&&1024&e.flags&&Te.llseek(e,0,2);var a=void 0!==o;if(a){if(!e.seekable)throw new Te.ErrnoError(70)}else o=e.position;var s=e.stream_ops.write(e,t,r,n,o,i);return a||(e.position+=s),s},mmap(e,t,r,n,o){if(0!=(2&n)&&0==(2&o)&&2!=(2097155&e.flags))throw new Te.ErrnoError(2);if(1==(2097155&e.flags))throw new Te.ErrnoError(2);if(!e.stream_ops.mmap)throw new Te.ErrnoError(43);if(!t)throw new Te.ErrnoError(28);return e.stream_ops.mmap(e,t,r,n,o)},msync:(e,t,r,n,o)=>e.stream_ops.msync?e.stream_ops.msync(e,t,r,n,o):0,ioctl(e,t,r){if(!e.stream_ops.ioctl)throw new Te.ErrnoError(59);return e.stream_ops.ioctl(e,t,r)},readFile(e,t={}){if(t.flags=t.flags||0,t.encoding=t.encoding||"binary","utf8"!==t.encoding&&"binary"!==t.encoding)throw new Error(`Invalid encoding type "${t.encoding}"`);var r,n=Te.open(e,t.flags),o=Te.stat(e).size,i=new Uint8Array(o);return Te.read(n,i,0,o,0),"utf8"===t.encoding?r=Q(i):"binary"===t.encoding&&(r=i),Te.close(n),r},writeFile(e,t,r={}){r.flags=r.flags||577;var n=Te.open(e,r.flags,r.mode);if("string"==typeof t){var o=new Uint8Array(se(t)+1),i=le(t,o,0,o.length);Te.write(n,o,0,i,void 0,r.canOwn)}else{if(!ArrayBuffer.isView(t))throw new Error("Unsupported data type");Te.write(n,t,0,t.byteLength,void 0,r.canOwn)}Te.close(n)},cwd:()=>Te.currentPath,chdir(e){var t=Te.lookupPath(e,{follow:!0});if(null===t.node)throw new Te.ErrnoError(44);if(!Te.isDir(t.node.mode))throw new Te.ErrnoError(54);var r=Te.nodePermissions(t.node,"x");if(r)throw new Te.ErrnoError(r);Te.currentPath=t.path},createDefaultDirectories(){Te.mkdir("/tmp"),Te.mkdir("/home"),Te.mkdir("/home/web_user")},createDefaultDevices(){Te.mkdir("/dev"),Te.registerDevice(Te.makedev(1,3),{read:()=>0,write:(e,t,r,n,o)=>n,llseek:()=>0}),Te.mkdev("/dev/null",Te.makedev(1,3)),we.register(Te.makedev(5,0),we.default_tty_ops),we.register(Te.makedev(6,0),we.default_tty1_ops),Te.mkdev("/dev/tty",Te.makedev(5,0)),Te.mkdev("/dev/tty1",Te.makedev(6,0));var e=new Uint8Array(1024),t=0,r=()=>(0===t&&(me(e),t=e.byteLength),e[--t]);Te.createDevice("/dev","random",r),Te.createDevice("/dev","urandom",r),Te.mkdir("/dev/shm"),Te.mkdir("/dev/shm/tmp")},createSpecialDirectories(){Te.mkdir("/proc");var e=Te.mkdir("/proc/self");Te.mkdir("/proc/self/fd"),Te.mount({mount(){var t=Te.createNode(e,"fd",16895,73);return t.stream_ops={llseek:Ee.stream_ops.llseek},t.node_ops={lookup(e,t){var r=+t,n=Te.getStreamChecked(r),o={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path},id:r+1};return o.parent=o,o},readdir:()=>Array.from(Te.streams.entries()).filter((([e,t])=>t)).map((([e,t])=>e.toString()))},t}},{},"/proc/self/fd")},createStandardStreams(e,t,r){e?Te.createDevice("/dev","stdin",e):Te.symlink("/dev/tty","/dev/stdin"),t?Te.createDevice("/dev","stdout",null,t):Te.symlink("/dev/tty","/dev/stdout"),r?Te.createDevice("/dev","stderr",null,r):Te.symlink("/dev/tty1","/dev/stderr"),Te.open("/dev/stdin",0),Te.open("/dev/stdout",1),Te.open("/dev/stderr",1)},staticInit(){Te.nameTable=new Array(4096),Te.mount(Ee,{},"/"),Te.createDefaultDirectories(),Te.createDefaultDevices(),Te.createSpecialDirectories(),Te.filesystems={MEMFS:Ee}},init(e,t,r){Te.initialized=!0,e??=l.stdin,t??=l.stdout,r??=l.stderr,Te.createStandardStreams(e,t,r)},quit(){for(var e of(Te.initialized=!1,Te.streams))e&&Te.close(e)},findObject(e,t){var r=Te.analyzePath(e,t);return r.exists?r.object:null},analyzePath(e,t){try{e=(n=Te.lookupPath(e,{follow:!t})).path}catch(e){}var r={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=Te.lookupPath(e,{parent:!0});r.parentExists=!0,r.parentPath=n.path,r.parentObject=n.node,r.name=ge.basename(e),n=Te.lookupPath(e,{follow:!t}),r.exists=!0,r.path=n.path,r.object=n.node,r.name=n.node.name,r.isRoot="/"===n.path}catch(e){r.error=e.errno}return r},createPath(e,t,r,n){e="string"==typeof e?e:Te.getPath(e);for(var o=t.split("/").reverse();o.length;){var i=o.pop();if(i){var a=ge.join2(e,i);try{Te.mkdir(a)}catch(e){if(20!=e.errno)throw e}e=a}}return a},createFile(e,t,r,n,o){var i=ge.join2("string"==typeof e?e:Te.getPath(e),t),a=xe(n,o);return Te.create(i,a)},createDataFile(e,t,r,n,o,i){var a=t;e&&(e="string"==typeof e?e:Te.getPath(e),a=t?ge.join2(e,t):e);var s=xe(n,o),l=Te.create(a,s);if(r){if("string"==typeof r){for(var d=new Array(r.length),c=0,u=r.length;c<u;++c)d[c]=r.charCodeAt(c);r=d}Te.chmod(l,146|s);var p=Te.open(l,577);Te.write(p,r,0,r.length,0,i),Te.close(p),Te.chmod(l,s)}},createDevice(e,t,r,n){var o=ge.join2("string"==typeof e?e:Te.getPath(e),t),i=xe(!!r,!!n);Te.createDevice.major??=64;var a=Te.makedev(Te.createDevice.major++,0);return Te.registerDevice(a,{open(e){e.seekable=!1},close(e){n?.buffer?.length&&n(10)},read(e,t,n,o,i){for(var a=0,s=0;s<o;s++){var l;try{l=r()}catch(e){throw new Te.ErrnoError(29)}if(void 0===l&&0===a)throw new Te.ErrnoError(6);if(null==l)break;a++,t[n+s]=l}return a&&(e.node.atime=Date.now()),a},write(e,t,r,o,i){for(var a=0;a<o;a++)try{n(t[r+a])}catch(e){throw new Te.ErrnoError(29)}return o&&(e.node.mtime=e.node.ctime=Date.now()),a}}),Te.mkdev(o,i,a)},forceLoadFile(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;if("undefined"!=typeof XMLHttpRequest)throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");try{e.contents=f(e.url),e.usedBytes=e.contents.length}catch(e){throw new Te.ErrnoError(29)}},createLazyFile(e,t,r,n,o){class LazyUint8Array{lengthKnown=!1;chunks=[];get(e){if(!(e>this.length-1||e<0)){var t=e%this.chunkSize,r=e/this.chunkSize|0;return this.getter(r)[t]}}setDataGetter(e){this.getter=e}cacheLength(){var e=new XMLHttpRequest;if(e.open("HEAD",r,!1),e.send(null),!(e.status>=200&&e.status<300||304===e.status))throw new Error("Couldn't load "+r+". Status: "+e.status);var t,n=Number(e.getResponseHeader("Content-length")),o=(t=e.getResponseHeader("Accept-Ranges"))&&"bytes"===t,i=(t=e.getResponseHeader("Content-Encoding"))&&"gzip"===t,a=1048576;o||(a=n);var s=this;s.setDataGetter((e=>{var t=e*a,o=(e+1)*a-1;if(o=Math.min(o,n-1),void 0===s.chunks[e]&&(s.chunks[e]=((e,t)=>{if(e>t)throw new Error("invalid range ("+e+", "+t+") or no bytes requested!");if(t>n-1)throw new Error("only "+n+" bytes available! programmer error!");var o=new XMLHttpRequest;if(o.open("GET",r,!1),n!==a&&o.setRequestHeader("Range","bytes="+e+"-"+t),o.responseType="arraybuffer",o.overrideMimeType&&o.overrideMimeType("text/plain; charset=x-user-defined"),o.send(null),!(o.status>=200&&o.status<300||304===o.status))throw new Error("Couldn't load "+r+". Status: "+o.status);return void 0!==o.response?new Uint8Array(o.response||[]):ve(o.responseText||"",!0)})(t,o)),void 0===s.chunks[e])throw new Error("doXHR failed!");return s.chunks[e]})),!i&&n||(a=n=1,n=this.getter(0).length,a=n,k("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=a,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if("undefined"!=typeof XMLHttpRequest){if(!u)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var i={isDevice:!1,contents:new LazyUint8Array}}else i={isDevice:!1,url:r};var a=Te.createFile(e,t,i,n,o);i.contents?a.contents=i.contents:i.url&&(a.contents=null,a.url=i.url),Object.defineProperties(a,{usedBytes:{get:function(){return this.contents.length}}});var s={};function l(e,t,r,n,o){var i=e.node.contents;if(o>=i.length)return 0;var a=Math.min(i.length-o,n);if(i.slice)for(var s=0;s<a;s++)t[r+s]=i[o+s];else for(s=0;s<a;s++)t[r+s]=i.get(o+s);return a}return Object.keys(a.stream_ops).forEach((e=>{var t=a.stream_ops[e];s[e]=(...e)=>(Te.forceLoadFile(a),t(...e))})),s.read=(e,t,r,n,o)=>(Te.forceLoadFile(a),l(e,t,r,n,o)),s.mmap=(e,t,r,n,o)=>{Te.forceLoadFile(a);var i=_e(t);if(!i)throw new Te.ErrnoError(48);return l(e,P,i,t,r),{ptr:i,allocated:!0}},a.stream_ops=s,a}},Ae={DEFAULT_POLLMASK:5,calculateAt(e,t,r){if(ge.isAbs(t))return t;var n;if(n=-100===e?Te.cwd():Ae.getStreamFromFD(e).path,0==t.length){if(!r)throw new Te.ErrnoError(44);return n}return n+"/"+t},writeStat(e,t){F[e>>2]=t.dev,F[e+4>>2]=t.mode,M[e+8>>2]=t.nlink,F[e+12>>2]=t.uid,F[e+16>>2]=t.gid,F[e+20>>2]=t.rdev,D[e+24>>3]=BigInt(t.size),F[e+32>>2]=4096,F[e+36>>2]=t.blocks;var r=t.atime.getTime(),n=t.mtime.getTime(),o=t.ctime.getTime();return D[e+40>>3]=BigInt(Math.floor(r/1e3)),M[e+48>>2]=r%1e3*1e3*1e3,D[e+56>>3]=BigInt(Math.floor(n/1e3)),M[e+64>>2]=n%1e3*1e3*1e3,D[e+72>>3]=BigInt(Math.floor(o/1e3)),M[e+80>>2]=o%1e3*1e3*1e3,D[e+88>>3]=BigInt(t.ino),0},writeStatFs(e,t){F[e+4>>2]=t.bsize,F[e+40>>2]=t.bsize,F[e+8>>2]=t.blocks,F[e+12>>2]=t.bfree,F[e+16>>2]=t.bavail,F[e+20>>2]=t.files,F[e+24>>2]=t.ffree,F[e+28>>2]=t.fsid,F[e+44>>2]=t.flags,F[e+36>>2]=t.namelen},doMsync(e,t,r,n,o){if(!Te.isFile(t.node.mode))throw new Te.ErrnoError(43);if(2&n)return 0;var i=x.slice(e,e+r);Te.msync(t,i,o,r,n)},getStreamFromFD:e=>Te.getStreamChecked(e),varargs:void 0,getStr:e=>Z(e)},Fe=()=>{var e=F[+Ae.varargs>>2];return Ae.varargs+=4,e},Me=Fe,Ie={},De=e=>{for(;e.length;){var t=e.pop();e.pop()(t)}};function Be(e){return this.fromWireType(M[e>>2])}var Re,Le={},Oe={},Ue={},$e=l.InternalError=class InternalError extends Error{constructor(e){super(e),this.name="InternalError"}},qe=e=>{throw new $e(e)},We=(e,t,r)=>{function n(t){var n=r(t);n.length!==e.length&&qe("Mismatched type converter count");for(var o=0;o<e.length;++o)je(e[o],n[o])}e.forEach((e=>Ue[e]=t));var o=new Array(t.length),i=[],a=0;t.forEach(((e,t)=>{Oe.hasOwnProperty(e)?o[t]=Oe[e]:(i.push(e),Le.hasOwnProperty(e)||(Le[e]=[]),Le[e].push((()=>{o[t]=Oe[e],++a===i.length&&n(o)})))})),0===i.length&&n(o)},He={},Ne=e=>{if(null===e)return"null";var t=typeof e;return"object"===t||"array"===t||"function"===t?e.toString():""+e},Ve=e=>{for(var t="",r=e;x[r];)t+=Re[x[r++]];return t},ze=l.BindingError=class BindingError extends Error{constructor(e){super(e),this.name="BindingError"}},Ge=e=>{throw new ze(e)};function je(e,t,r={}){return function(e,t,r={}){var n=t.name;if(e||Ge(`type "${n}" must have a positive integer typeid pointer`),Oe.hasOwnProperty(e)){if(r.ignoreDuplicateRegistrations)return;Ge(`Cannot register type '${n}' twice`)}if(Oe[e]=t,delete Ue[e],Le.hasOwnProperty(e)){var o=Le[e];delete Le[e],o.forEach((e=>e()))}}(e,t,r)}var Xe=(e,t,r)=>{switch(t){case 1:return r?e=>P[e]:e=>x[e];case 2:return r?e=>T[e>>1]:e=>A[e>>1];case 4:return r?e=>F[e>>2]:e=>M[e>>2];case 8:return r?e=>D[e>>3]:e=>B[e>>3];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Ye=8,Ke=e=>{Ge(e.$$.ptrType.registeredClass.name+" instance already deleted")},Qe=!1,Ze=e=>{},Je=e=>{e.count.value-=1,0===e.count.value&&(e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)})(e)},et=(e,t,r)=>{if(t===r)return e;if(void 0===r.baseClass)return null;var n=et(e,t,r.baseClass);return null===n?null:r.downcast(n)},tt={},rt={},nt=(e,t)=>(t=((e,t)=>{for(void 0===t&&Ge("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t})(e,t),rt[t]),ot=(e,t)=>(t.ptrType&&t.ptr||qe("makeClassHandle requires ptr and ptrType"),!!t.smartPtrType!=!!t.smartPtr&&qe("Both smartPtrType and smartPtr must be specified"),t.count={value:1},at(Object.create(e,{$$:{value:t,writable:!0}})));function it(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var r=nt(this.registeredClass,t);if(void 0!==r){if(0===r.$$.count.value)return r.$$.ptr=t,r.$$.smartPtr=e,r.clone();var n=r.clone();return this.destructor(e),n}function o(){return this.isSmartPointer?ot(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):ot(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var i,a=this.registeredClass.getActualType(t),s=tt[a];if(!s)return o.call(this);i=this.isConst?s.constPointerType:s.pointerType;var l=et(t,this.registeredClass,i.registeredClass);return null===l?o.call(this):this.isSmartPointer?ot(i.registeredClass.instancePrototype,{ptrType:i,ptr:l,smartPtrType:this,smartPtr:e}):ot(i.registeredClass.instancePrototype,{ptrType:i,ptr:l})}var at=e=>"undefined"==typeof FinalizationRegistry?(at=e=>e,e):(Qe=new FinalizationRegistry((e=>{Je(e.$$)})),Ze=e=>Qe.unregister(e),(at=e=>{var t=e.$$;if(t.smartPtr){var r={$$:t};Qe.register(e,r,e)}return e})(e)),st=[];function lt(){}var dt=(e,t)=>Object.defineProperty(t,"name",{value:e}),ct=(e,t,r)=>{if(void 0===e[t].overloadTable){var n=e[t];e[t]=function(...n){return e[t].overloadTable.hasOwnProperty(n.length)||Ge(`Function '${r}' called with an invalid number of arguments (${n.length}) - expects one of (${e[t].overloadTable})!`),e[t].overloadTable[n.length].apply(this,n)},e[t].overloadTable=[],e[t].overloadTable[n.argCount]=n}},ut=(e,t,r)=>{l.hasOwnProperty(e)?((void 0===r||void 0!==l[e].overloadTable&&void 0!==l[e].overloadTable[r])&&Ge(`Cannot register public name '${e}' twice`),ct(l,e,e),l[e].overloadTable.hasOwnProperty(r)&&Ge(`Cannot register multiple overloads of a function with the same number of arguments (${r})!`),l[e].overloadTable[r]=t):(l[e]=t,l[e].argCount=r)};function pt(e,t,r,n,o,i,a,s){this.name=e,this.constructor=t,this.instancePrototype=r,this.rawDestructor=n,this.baseClass=o,this.getActualType=i,this.upcast=a,this.downcast=s,this.pureVirtualFunctions=[]}var ht=(e,t,r)=>{for(;t!==r;)t.upcast||Ge(`Expected null or instance of ${r.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function ft(e,t){if(null===t)return this.isReference&&Ge(`null is not a valid ${this.name}`),0;t.$$||Ge(`Cannot pass "${Ne(t)}" as a ${this.name}`),t.$$.ptr||Ge(`Cannot pass deleted object as a pointer of type ${this.name}`);var r=t.$$.ptrType.registeredClass;return ht(t.$$.ptr,r,this.registeredClass)}function gt(e,t){var r;if(null===t)return this.isReference&&Ge(`null is not a valid ${this.name}`),this.isSmartPointer?(r=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,r),r):0;t&&t.$$||Ge(`Cannot pass "${Ne(t)}" as a ${this.name}`),t.$$.ptr||Ge(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&Ge(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass;if(r=ht(t.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===t.$$.smartPtr&&Ge("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?r=t.$$.smartPtr:Ge(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:r=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)r=t.$$.smartPtr;else{var o=t.clone();r=this.rawShare(r,Ot.toHandle((()=>o.delete()))),null!==e&&e.push(this.rawDestructor,r)}break;default:Ge("Unsupporting sharing policy")}return r}function mt(e,t){if(null===t)return this.isReference&&Ge(`null is not a valid ${this.name}`),0;t.$$||Ge(`Cannot pass "${Ne(t)}" as a ${this.name}`),t.$$.ptr||Ge(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&Ge(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var r=t.$$.ptrType.registeredClass;return ht(t.$$.ptr,r,this.registeredClass)}function bt(e,t,r,n,o,i,a,s,l,d,c){this.name=e,this.registeredClass=t,this.isReference=r,this.isConst=n,this.isSmartPointer=o,this.pointeeType=i,this.sharingPolicy=a,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=d,this.rawDestructor=c,o||void 0!==t.baseClass?this.toWireType=gt:n?(this.toWireType=ft,this.destructorFunction=null):(this.toWireType=mt,this.destructorFunction=null)}var yt,vt,wt,kt,_t=(e,t,r)=>{l.hasOwnProperty(e)||qe("Replacing nonexistent public symbol"),void 0!==l[e].overloadTable&&void 0!==r?l[e].overloadTable[r]=t:(l[e]=t,l[e].argCount=r)},Et=[],Ct=e=>{var t=Et[e];return t||(Et[e]=t=yt.get(e)),t},St=(e,t)=>{e=Ve(e);var r=Ct(t);return"function"!=typeof r&&Ge(`unknown function pointer with signature ${e}: ${t}`),r},Pt=l.UnboundTypeError=(vt=Error,(kt=dt(wt="UnboundTypeError",(function(e){this.name=wt,this.message=e;var t=new Error(e).stack;void 0!==t&&(this.stack=this.toString()+"\n"+t.replace(/^Error(:[^\n]*)?\n/,""))}))).prototype=Object.create(vt.prototype),kt.prototype.constructor=kt,kt.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},kt),xt=e=>{var t=Hl(e),r=Ve(t);return Vl(t),r},Tt=(e,t)=>{var r=[],n={};throw t.forEach((function e(t){n[t]||Oe[t]||(Ue[t]?Ue[t].forEach(e):(r.push(t),n[t]=!0))})),new Pt(`${e}: `+r.map(xt).join([", "]))},At=(e,t)=>{for(var r=[],n=0;n<e;n++)r.push(M[t+4*n>>2]);return r};function Ft(e,t,r,n,o,i){var a=t.length;a<2&&Ge("argTypes array size mismatch! Must at least get return value and 'this' types!");var s=null!==t[1]&&null!==r,l=function(e){for(var t=1;t<e.length;++t)if(null!==e[t]&&void 0===e[t].destructorFunction)return!0;return!1}(t),d="void"!==t[0].name,c=a-2,u=new Array(c),p=[],h=[];return dt(e,(function(...e){var r;h.length=0,p.length=s?2:1,p[0]=o,s&&(r=t[1].toWireType(h,this),p[1]=r);for(var i=0;i<c;++i)u[i]=t[i+2].toWireType(h,e[i]),p.push(u[i]);return function(e){if(l)De(h);else for(var n=s?1:2;n<t.length;n++){var o=1===n?r:u[n-2];null!==t[n].destructorFunction&&t[n].destructorFunction(o)}if(d)return t[0].fromWireType(e)}(n(...p))}))}var Mt,It=e=>{const t=(e=e.trim()).indexOf("(");return-1===t?e:e.slice(0,t)},Dt=[],Bt=[],Rt=e=>{e>9&&0==--Bt[e+1]&&(Bt[e]=void 0,Dt.push(e))},Lt=()=>Bt.length/2-5-Dt.length,Ot={toValue:e=>(e||Ge("Cannot use deleted val. handle = "+e),Bt[e]),toHandle:e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{const t=Dt.pop()||Bt.length;return Bt[t]=e,Bt[t+1]=1,t}}}},Ut={name:"emscripten::val",fromWireType:e=>{var t=Ot.toValue(e);return Rt(e),t},toWireType:(e,t)=>Ot.toHandle(t),argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction:null},$t=(e,t,r)=>{switch(t){case 1:return r?function(e){return this.fromWireType(P[e])}:function(e){return this.fromWireType(x[e])};case 2:return r?function(e){return this.fromWireType(T[e>>1])}:function(e){return this.fromWireType(A[e>>1])};case 4:return r?function(e){return this.fromWireType(F[e>>2])}:function(e){return this.fromWireType(M[e>>2])};default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},qt=(e,t)=>{var r=Oe[e];return void 0===r&&Ge(`${t} has unknown type ${xt(e)}`),r},Wt=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(I[e>>2])};case 8:return function(e){return this.fromWireType(R[e>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},Ht=Object.assign({optional:!0},Ut),Nt="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,Vt=(e,t)=>{for(var r=e,n=r>>1,o=n+t/2;!(n>=o)&&A[n];)++n;if((r=n<<1)-e>32&&Nt)return Nt.decode(x.subarray(e,r));for(var i="",a=0;!(a>=t/2);++a){var s=T[e+2*a>>1];if(0==s)break;i+=String.fromCharCode(s)}return i},zt=(e,t,r)=>{if(r??=2147483647,r<2)return 0;for(var n=t,o=(r-=2)<2*e.length?r/2:e.length,i=0;i<o;++i){var a=e.charCodeAt(i);T[t>>1]=a,t+=2}return T[t>>1]=0,t-n},Gt=e=>2*e.length,jt=(e,t)=>{for(var r=0,n="";!(r>=t/4);){var o=F[e+4*r>>2];if(0==o)break;if(++r,o>=65536){var i=o-65536;n+=String.fromCharCode(55296|i>>10,56320|1023&i)}else n+=String.fromCharCode(o)}return n},Xt=(e,t,r)=>{if(r??=2147483647,r<4)return 0;for(var n=t,o=n+r-4,i=0;i<e.length;++i){var a=e.charCodeAt(i);if(a>=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),F[t>>2]=a,(t+=4)+4>o)break}return F[t>>2]=0,t-n},Yt=e=>{for(var t=0,r=0;r<e.length;++r){var n=e.charCodeAt(r);n>=55296&&n<=57343&&++r,t+=4}return t},Kt=0,Qt=(e,t,r)=>{var n=[],o=e.toWireType(n,r);return n.length&&(M[t>>2]=Ot.toHandle(n)),o},Zt=[],Jt={},er=e=>{var t=Jt[e];return void 0===t?Ve(e):t},tr=()=>{if("object"==typeof globalThis)return globalThis;function e(e){e.$$$embind_global$$$=e;var t="object"==typeof $$$embind_global$$$&&e.$$$embind_global$$$==e;return t||delete e.$$$embind_global$$$,t}if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;if("object"==typeof global&&e(global)?$$$embind_global$$$=global:"object"==typeof self&&e(self)&&($$$embind_global$$$=self),"object"==typeof $$$embind_global$$$)return $$$embind_global$$$;throw Error("unable to get global object.")},rr=Reflect.construct,nr=e=>e<-9007199254740992||e>9007199254740992?NaN:Number(e),or=[0,31,60,91,121,152,182,213,244,274,305,335],ir=[0,31,59,90,120,151,181,212,243,273,304,334],ar=e=>{var t;return((t=e.getFullYear())%4!=0||t%100==0&&t%400!=0?ir:or)[e.getMonth()]+e.getDate()-1},sr={},lr=e=>{if(e instanceof ExitStatus||"unwind"==e)return C;y(1,e)},dr=()=>oe||Kt>0,cr=e=>{C=e,dr()||(l.onExit?.(e),O=!0),y(e,new ExitStatus(e))},ur=(e,t)=>{C=e,cr(e)},pr=ur,hr=e=>{if(!O)try{e(),(()=>{if(!dr())try{pr(C)}catch(e){lr(e)}})()}catch(e){lr(e)}},fr=()=>performance.now(),gr=()=>Date.now(),mr=(e,t)=>setTimeout((()=>{hr(e)}),t),br={useWebGL:!1,isFullscreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],preloadedImages:{},preloadedAudios:{},getCanvas:()=>l.canvas,init(){if(!br.initted){br.initted=!0;var e={canHandle:function(e){return!l.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(e)},handle:function(e,t,r,n){var o=new Blob([e],{type:br.getMimetype(t)});o.size!==e.length&&(o=new Blob([new Uint8Array(e).buffer],{type:br.getMimetype(t)}));var i=URL.createObjectURL(o),a=new Image;a.onload=()=>{var n=document.createElement("canvas");n.width=a.width,n.height=a.height,n.getContext("2d").drawImage(a,0,0),br.preloadedImages[t]=n,URL.revokeObjectURL(i),r?.(e)},a.onerror=e=>{_(`Image ${i} could not be decoded`),n?.()},a.src=i}};Se.push(e);var t={canHandle:function(e){return!l.noAudioDecoding&&e.slice(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,t,r,n){var o=!1;function i(n){o||(o=!0,br.preloadedAudios[t]=n,r?.(e))}var a=new Blob([e],{type:br.getMimetype(t)}),s=URL.createObjectURL(a),l=new Audio;l.addEventListener("canplaythrough",(()=>i(l)),!1),l.onerror=function(r){o||(_(`warning: browser could not fully decode audio ${t}, trying slower base64 approach`),l.src="data:audio/x-"+t.slice(-3)+";base64,"+function(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n=0,o=0,i=0;i<e.length;i++)for(n=n<<8|e[i],o+=8;o>=6;){var a=n>>o-6&63;o-=6,r+=t[a]}return 2==o?(r+=t[(3&n)<<4],r+="=="):4==o&&(r+=t[(15&n)<<2],r+="="),r}(e),i(l))},l.src=s,mr((()=>{i(l)}),1e4)}};Se.push(t);var r=br.getCanvas();r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||(()=>{}),r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",n,!1),document.addEventListener("mozpointerlockchange",n,!1),document.addEventListener("webkitpointerlockchange",n,!1),document.addEventListener("mspointerlockchange",n,!1),l.elementPointerLock&&r.addEventListener("click",(e=>{!br.pointerLock&&br.getCanvas().requestPointerLock&&(br.getCanvas().requestPointerLock(),e.preventDefault())}),!1))}function n(){var e=br.getCanvas();br.pointerLock=document.pointerLockElement===e||document.mozPointerLockElement===e||document.webkitPointerLockElement===e||document.msPointerLockElement===e}},createContext(e,t,r,n){if(t&&l.ctx&&e==br.getCanvas())return l.ctx;var o,i;if(t){var a={antialias:!1,alpha:!1,majorVersion:"undefined"!=typeof WebGL2RenderingContext?2:1};if(n)for(var s in n)a[s]=n[s];void 0!==vr&&(i=vr.createContext(e,a))&&(o=vr.getContext(i).GLctx)}else o=e.getContext("2d");return o?(r&&(l.ctx=o,t&&vr.makeContextCurrent(i),br.useWebGL=t,br.moduleContextCreatedCallbacks.forEach((e=>e())),br.init()),o):null},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen(e,t){br.lockPointer=e,br.resizeCanvas=t,void 0===br.lockPointer&&(br.lockPointer=!0),void 0===br.resizeCanvas&&(br.resizeCanvas=!1);var r=br.getCanvas();function n(){br.isFullscreen=!1;var e=r.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(r.exitFullscreen=br.exitFullscreen,br.lockPointer&&r.requestPointerLock(),br.isFullscreen=!0,br.resizeCanvas?br.setFullscreenCanvasSize():br.updateCanvasDimensions(r)):(e.parentNode.insertBefore(r,e),e.parentNode.removeChild(e),br.resizeCanvas?br.setWindowedCanvasSize():br.updateCanvasDimensions(r)),l.onFullScreen?.(br.isFullscreen),l.onFullscreen?.(br.isFullscreen)}br.fullscreenHandlersInstalled||(br.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var o=document.createElement("div");r.parentNode.insertBefore(o,r),o.appendChild(r),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?()=>o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(o.webkitRequestFullScreen?()=>o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null),o.requestFullscreen()},exitFullscreen:()=>!!br.isFullscreen&&((document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]),!0),safeSetTimeout:(e,t)=>mr(e,t),getMimetype:e=>({jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.slice(e.lastIndexOf(".")+1)]),getUserMedia(e){window.getUserMedia||=navigator.getUserMedia||navigator.mozGetUserMedia,window.getUserMedia(e)},getMovementX:e=>e.movementX||e.mozMovementX||e.webkitMovementX||0,getMovementY:e=>e.movementY||e.mozMovementY||e.webkitMovementY||0,getMouseWheelDelta(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail/3;break;case"mousewheel":t=e.wheelDelta/120;break;case"wheel":switch(t=e.deltaY,e.deltaMode){case 0:t/=100;break;case 1:t/=3;break;case 2:t*=80;break;default:throw"unrecognized mouse wheel delta mode: "+e.deltaMode}break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(e,t){var r=br.getCanvas(),n=r.getBoundingClientRect(),o=void 0!==window.scrollX?window.scrollX:window.pageXOffset,i=void 0!==window.scrollY?window.scrollY:window.pageYOffset,a=e-(o+n.left),s=t-(i+n.top);return{x:a*=r.width/n.width,y:s*=r.height/n.height}},setMouseCoords(e,t){const{x:r,y:n}=br.calculateMouseCoords(e,t);br.mouseMovementX=r-br.mouseX,br.mouseMovementY=n-br.mouseY,br.mouseX=r,br.mouseY=n},calculateMouseEvent(e){if(br.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?br.mouseMovementX=br.mouseMovementY=0:(br.mouseMovementX=br.getMovementX(e),br.mouseMovementY=br.getMovementY(e)),br.mouseX+=br.mouseMovementX,br.mouseY+=br.mouseMovementY;else{if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var t=e.touch;if(void 0===t)return;var r=br.calculateMouseCoords(t.pageX,t.pageY);if("touchstart"===e.type)br.lastTouches[t.identifier]=r,br.touches[t.identifier]=r;else if("touchend"===e.type||"touchmove"===e.type){var n=br.touches[t.identifier];n||=r,br.lastTouches[t.identifier]=n,br.touches[t.identifier]=r}return}br.setMouseCoords(e.pageX,e.pageY)}},resizeListeners:[],updateResizeListeners(){var e=br.getCanvas();br.resizeListeners.forEach((t=>t(e.width,e.height)))},setCanvasSize(e,t,r){var n=br.getCanvas();br.updateCanvasDimensions(n,e,t),r||br.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if("undefined"!=typeof SDL){var e=M[SDL.screen>>2];e|=8388608,F[SDL.screen>>2]=e}br.updateCanvasDimensions(br.getCanvas()),br.updateResizeListeners()},setWindowedCanvasSize(){if("undefined"!=typeof SDL){var e=M[SDL.screen>>2];e&=-8388609,F[SDL.screen>>2]=e}br.updateCanvasDimensions(br.getCanvas()),br.updateResizeListeners()},updateCanvasDimensions(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,o=r;if(l.forcedAspectRatio>0&&(n/o<l.forcedAspectRatio?n=Math.round(o*l.forcedAspectRatio):o=Math.round(n/l.forcedAspectRatio)),(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var i=Math.min(screen.width/n,screen.height/o);n=Math.round(n*i),o=Math.round(o*i)}br.resizeCanvas?(e.width!=n&&(e.width=n),e.height!=o&&(e.height=o),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=t&&(e.width=t),e.height!=r&&(e.height=r),void 0!==e.style&&(n!=t||o!=r?(e.style.setProperty("width",n+"px","important"),e.style.setProperty("height",o+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))}},yr={errorCode:12288,defaultDisplayInitialized:!1,currentContext:0,currentReadSurface:0,currentDrawSurface:0,contextAttributes:{alpha:!1,depth:!1,stencil:!1,antialias:!1},stringCache:{},setErrorCode(e){yr.errorCode=e},chooseConfig(e,t,r,n,o){if(62e3!=e)return yr.setErrorCode(12296),0;if(t)for(;;){var i=F[t>>2];if(12321==i){var a=F[t+4>>2];yr.contextAttributes.alpha=a>0}else if(12325==i){var s=F[t+4>>2];yr.contextAttributes.depth=s>0}else if(12326==i){var l=F[t+4>>2];yr.contextAttributes.stencil=l>0}else if(12337==i){var d=F[t+4>>2];yr.contextAttributes.antialias=d>0}else if(12338==i)d=F[t+4>>2],yr.contextAttributes.antialias=1==d;else if(12544==i){var c=F[t+4>>2];yr.contextAttributes.lowLatency=12547!=c}else if(12344==i)break;t+=8}return r&&n||o?(o&&(F[o>>2]=1),r&&n>0&&(M[r>>2]=62002),yr.setErrorCode(12288),1):(yr.setErrorCode(12300),0)}},vr={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:e=>{vr.lastError||(vr.lastError=e)},getNewId:e=>{for(var t=vr.counter++,r=e.length;r<t;r++)e[r]=null;return t},genObject:(e,t,r,n)=>{for(var o=0;o<e;o++){var i=Mt[r](),a=i&&vr.getNewId(n);i?(i.name=a,n[a]=i):vr.recordError(1282),F[t+4*o>>2]=a}},getSource:(e,t,r,n)=>{for(var o="",i=0;i<t;++i){var a=n?M[n+4*i>>2]:void 0;o+=Z(M[r+4*i>>2],a)}return o},createContext:(e,t)=>{if(!e.getContextSafariWebGL2Fixed){let t=function(t,r){var n=e.getContextSafariWebGL2Fixed(t,r);return"webgl"==t==n instanceof WebGLRenderingContext?n:null};e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=t}var r=t.majorVersion>1?e.getContext("webgl2",t):e.getContext("webgl",t);return r?vr.registerContext(r,t):0},registerContext:(e,t)=>{var r=vr.getNewId(vr.contexts),n={handle:r,attributes:t,version:t.majorVersion,GLctx:e};return e.canvas&&(e.canvas.GLctxObject=n),vr.contexts[r]=n,r},makeContextCurrent:e=>(vr.currentContext=vr.contexts[e],l.ctx=Mt=vr.currentContext?.GLctx,!(e&&!Mt)),getContext:e=>vr.contexts[e],deleteContext:e=>{vr.currentContext===vr.contexts[e]&&(vr.currentContext=null),"object"==typeof JSEvents&&JSEvents.removeAllHandlersOnTarget(vr.contexts[e].GLctx.canvas),vr.contexts[e]?.GLctx.canvas&&(vr.contexts[e].GLctx.canvas.GLctxObject=void 0),vr.contexts[e]=null}},wr=[],kr=(e,t,r)=>{var n=((e,t)=>{var r;for(wr.length=0;r=x[e++];){var n=105!=r;t+=(n&=112!=r)&&t%8?4:0,wr.push(112==r?M[t>>2]:106==r?D[t>>3]:105==r?F[t>>2]:R[t>>3]),t+=n?8:4}return wr})(t,r);return $l[e](...n)},_r=e=>Mt.activeTexture(e),Er=(e,t)=>{Mt.attachShader(vr.programs[e],vr.shaders[t])},Cr=(e,t)=>{Mt.beginQuery(e,vr.queries[t])},Sr=(e,t)=>{Mt.disjointTimerQueryExt.beginQueryEXT(e,vr.queries[t])},Pr=e=>Mt.beginTransformFeedback(e),xr=(e,t,r)=>{Mt.bindAttribLocation(vr.programs[e],t,Z(r))},Tr=(e,t)=>{35051==e?Mt.currentPixelPackBufferBinding=t:35052==e&&(Mt.currentPixelUnpackBufferBinding=t),Mt.bindBuffer(e,vr.buffers[t])},Ar=(e,t,r)=>{Mt.bindBufferBase(e,t,vr.buffers[r])},Fr=(e,t,r,n,o)=>{Mt.bindBufferRange(e,t,vr.buffers[r],n,o)},Mr=(e,t)=>{Mt.bindFramebuffer(e,vr.framebuffers[t])},Ir=(e,t)=>{Mt.bindRenderbuffer(e,vr.renderbuffers[t])},Dr=(e,t)=>{Mt.bindSampler(e,vr.samplers[t])},Br=(e,t)=>{Mt.bindTexture(e,vr.textures[t])},Rr=(e,t)=>{Mt.bindTransformFeedback(e,vr.transformFeedbacks[t])},Lr=e=>{Mt.bindVertexArray(vr.vaos[e])},Or=Lr,Ur=Lr,$r=Ur,qr=(e,t,r,n)=>Mt.blendColor(e,t,r,n),Wr=e=>Mt.blendEquation(e),Hr=(e,t)=>Mt.blendEquationSeparate(e,t),Nr=(e,t)=>Mt.blendFunc(e,t),Vr=(e,t,r,n)=>Mt.blendFuncSeparate(e,t,r,n),zr=(e,t,r,n,o,i,a,s,l,d)=>Mt.blitFramebuffer(e,t,r,n,o,i,a,s,l,d),Gr=(e,t,r,n)=>{vr.currentContext.version>=2?r&&t?Mt.bufferData(e,x,n,r,t):Mt.bufferData(e,t,n):Mt.bufferData(e,r?x.subarray(r,r+t):t,n)},jr=(e,t,r,n)=>{vr.currentContext.version>=2?r&&Mt.bufferSubData(e,t,x,n,r):Mt.bufferSubData(e,t,x.subarray(n,n+r))},Xr=e=>Mt.checkFramebufferStatus(e),Yr=e=>Mt.clear(e),Kr=(e,t,r,n)=>Mt.clearBufferfi(e,t,r,n),Qr=(e,t,r)=>{Mt.clearBufferfv(e,t,I,r>>2)},Zr=(e,t,r)=>{Mt.clearBufferiv(e,t,F,r>>2)},Jr=(e,t,r)=>{Mt.clearBufferuiv(e,t,M,r>>2)},en=(e,t,r,n)=>Mt.clearColor(e,t,r,n),tn=e=>Mt.clearDepth(e),rn=e=>Mt.clearStencil(e),nn=(e,t,r)=>(r=Number(r),Mt.clientWaitSync(vr.syncs[e],t,r)),on=(e,t)=>{Mt.extClipControl.clipControlEXT(e,t)},an=(e,t,r,n)=>{Mt.colorMask(!!e,!!t,!!r,!!n)},sn=e=>{Mt.compileShader(vr.shaders[e])},ln=(e,t,r,n,o,i,a,s)=>{if(vr.currentContext.version>=2)return Mt.currentPixelUnpackBufferBinding||!a?void Mt.compressedTexImage2D(e,t,r,n,o,i,a,s):void Mt.compressedTexImage2D(e,t,r,n,o,i,x,s,a);Mt.compressedTexImage2D(e,t,r,n,o,i,x.subarray(s,s+a))},dn=(e,t,r,n,o,i,a,s,l)=>{Mt.currentPixelUnpackBufferBinding?Mt.compressedTexImage3D(e,t,r,n,o,i,a,s,l):Mt.compressedTexImage3D(e,t,r,n,o,i,a,x,l,s)},cn=(e,t,r,n,o,i,a,s,l)=>{if(vr.currentContext.version>=2)return Mt.currentPixelUnpackBufferBinding||!s?void Mt.compressedTexSubImage2D(e,t,r,n,o,i,a,s,l):void Mt.compressedTexSubImage2D(e,t,r,n,o,i,a,x,l,s);Mt.compressedTexSubImage2D(e,t,r,n,o,i,a,x.subarray(l,l+s))},un=(e,t,r,n,o,i,a,s,l,d,c)=>{Mt.currentPixelUnpackBufferBinding?Mt.compressedTexSubImage3D(e,t,r,n,o,i,a,s,l,d,c):Mt.compressedTexSubImage3D(e,t,r,n,o,i,a,s,l,x,c,d)},pn=(e,t,r,n,o)=>Mt.copyBufferSubData(e,t,r,n,o),hn=(e,t,r,n,o,i,a,s)=>Mt.copyTexImage2D(e,t,r,n,o,i,a,s),fn=(e,t,r,n,o,i,a,s)=>Mt.copyTexSubImage2D(e,t,r,n,o,i,a,s),gn=(e,t,r,n,o,i,a,s,l)=>Mt.copyTexSubImage3D(e,t,r,n,o,i,a,s,l),mn=()=>{var e=vr.getNewId(vr.programs),t=Mt.createProgram();return t.name=e,t.maxUniformLength=t.maxAttributeLength=t.maxUniformBlockNameLength=0,t.uniformIdCounter=1,vr.programs[e]=t,e},bn=e=>{var t=vr.getNewId(vr.shaders);return vr.shaders[t]=Mt.createShader(e),t},yn=e=>Mt.cullFace(e),vn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.buffers[n];o&&(Mt.deleteBuffer(o),o.name=0,vr.buffers[n]=null,n==Mt.currentPixelPackBufferBinding&&(Mt.currentPixelPackBufferBinding=0),n==Mt.currentPixelUnpackBufferBinding&&(Mt.currentPixelUnpackBufferBinding=0))}},wn=(e,t)=>{for(var r=0;r<e;++r){var n=F[t+4*r>>2],o=vr.framebuffers[n];o&&(Mt.deleteFramebuffer(o),o.name=0,vr.framebuffers[n]=null)}},kn=e=>{if(e){var t=vr.programs[e];t?(Mt.deleteProgram(t),t.name=0,vr.programs[e]=null):vr.recordError(1281)}},_n=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.queries[n];o&&(Mt.deleteQuery(o),vr.queries[n]=null)}},En=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.queries[n];o&&(Mt.disjointTimerQueryExt.deleteQueryEXT(o),vr.queries[n]=null)}},Cn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.renderbuffers[n];o&&(Mt.deleteRenderbuffer(o),o.name=0,vr.renderbuffers[n]=null)}},Sn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.samplers[n];o&&(Mt.deleteSampler(o),o.name=0,vr.samplers[n]=null)}},Pn=e=>{if(e){var t=vr.shaders[e];t?(Mt.deleteShader(t),vr.shaders[e]=null):vr.recordError(1281)}},xn=e=>{if(e){var t=vr.syncs[e];t?(Mt.deleteSync(t),t.name=0,vr.syncs[e]=null):vr.recordError(1281)}},Tn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.textures[n];o&&(Mt.deleteTexture(o),o.name=0,vr.textures[n]=null)}},An=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.transformFeedbacks[n];o&&(Mt.deleteTransformFeedback(o),o.name=0,vr.transformFeedbacks[n]=null)}},Fn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2];Mt.deleteVertexArray(vr.vaos[n]),vr.vaos[n]=null}},Mn=Fn,In=Fn,Dn=In,Bn=e=>Mt.depthFunc(e),Rn=e=>{Mt.depthMask(!!e)},Ln=(e,t)=>Mt.depthRange(e,t),On=(e,t)=>{Mt.detachShader(vr.programs[e],vr.shaders[t])},Un=e=>Mt.disable(e),$n=e=>{Mt.disableVertexAttribArray(e)},qn=(e,t,r)=>{Mt.drawArrays(e,t,r)},Wn=(e,t,r,n)=>{Mt.drawArraysInstanced(e,t,r,n)},Hn=Wn,Nn=Wn,Vn=Nn,zn=Wn,Gn=zn,jn=(e,t,r,n,o)=>{Mt.dibvbi.drawArraysInstancedBaseInstanceWEBGL(e,t,r,n,o)},Xn=Wn,Yn=Xn,Kn=Wn,Qn=Kn,Zn=[],Jn=(e,t)=>{for(var r=Zn[e],n=0;n<e;n++)r[n]=F[t+4*n>>2];Mt.drawBuffers(r)},eo=Jn,to=Jn,ro=to,no=Jn,oo=no,io=(e,t,r,n)=>{Mt.drawElements(e,t,r,n)},ao=io,so=(e,t,r,n,o)=>{Mt.drawElementsInstanced(e,t,r,n,o)},lo=so,co=so,uo=co,po=so,ho=po,fo=(e,t,r,n,o,i,a)=>{Mt.dibvbi.drawElementsInstancedBaseVertexBaseInstanceWEBGL(e,t,r,n,o,i,a)},go=so,mo=go,bo=so,yo=bo,vo=(e,t,r,n,o,i)=>{io(e,n,o,i)},wo=e=>Mt.enable(e),ko=e=>{Mt.enableVertexAttribArray(e)},_o=e=>Mt.endQuery(e),Eo=e=>{Mt.disjointTimerQueryExt.endQueryEXT(e)},Co=()=>Mt.endTransformFeedback(),So=(e,t)=>{var r=Mt.fenceSync(e,t);if(r){var n=vr.getNewId(vr.syncs);return r.name=n,vr.syncs[n]=r,n}return 0},Po=()=>Mt.finish(),xo=()=>Mt.flush(),To=(e,t,r,n)=>{Mt.framebufferRenderbuffer(e,t,r,vr.renderbuffers[n])},Ao=(e,t,r,n,o)=>{Mt.framebufferTexture2D(e,t,r,vr.textures[n],o)},Fo=(e,t,r,n,o)=>{Mt.framebufferTextureLayer(e,t,vr.textures[r],n,o)},Mo=e=>Mt.frontFace(e),Io=(e,t)=>{vr.genObject(e,t,"createBuffer",vr.buffers)},Do=(e,t)=>{vr.genObject(e,t,"createFramebuffer",vr.framebuffers)},Bo=(e,t)=>{vr.genObject(e,t,"createQuery",vr.queries)},Ro=(e,t)=>{for(var r=0;r<e;r++){var n=Mt.disjointTimerQueryExt.createQueryEXT();if(!n){for(vr.recordError(1282);r<e;)F[t+4*r++>>2]=0;return}var o=vr.getNewId(vr.queries);n.name=o,vr.queries[o]=n,F[t+4*r>>2]=o}},Lo=(e,t)=>{vr.genObject(e,t,"createRenderbuffer",vr.renderbuffers)},Oo=(e,t)=>{vr.genObject(e,t,"createSampler",vr.samplers)},Uo=(e,t)=>{vr.genObject(e,t,"createTexture",vr.textures)},$o=(e,t)=>{vr.genObject(e,t,"createTransformFeedback",vr.transformFeedbacks)},qo=(e,t)=>{vr.genObject(e,t,"createVertexArray",vr.vaos)},Wo=qo,Ho=qo,No=Ho,Vo=e=>Mt.generateMipmap(e),zo=(e,t,r,n,o,i,a,s)=>{t=vr.programs[t];var l=Mt[e](t,r);if(l){var d=s&&de(l.name,s,n);o&&(F[o>>2]=d),i&&(F[i>>2]=l.size),a&&(F[a>>2]=l.type)}},Go=(e,t,r,n,o,i,a)=>zo("getActiveAttrib",e,t,r,n,o,i,a),jo=(e,t,r,n,o,i,a)=>zo("getActiveUniform",e,t,r,n,o,i,a),Xo=(e,t,r,n,o)=>{e=vr.programs[e];var i=Mt.getActiveUniformBlockName(e,t);if(i)if(o&&r>0){var a=de(i,o,r);n&&(F[n>>2]=a)}else n&&(F[n>>2]=0)},Yo=(e,t,r,n)=>{if(n)if(e=vr.programs[e],35393!=r){var o=Mt.getActiveUniformBlockParameter(e,t,r);if(null!==o)if(35395==r)for(var i=0;i<o.length;i++)F[n+4*i>>2]=o[i];else F[n>>2]=o}else{var a=Mt.getActiveUniformBlockName(e,t);F[n>>2]=a.length+1}else vr.recordError(1281)},Ko=(e,t,r,n,o)=>{if(o)if(t>0&&0==r)vr.recordError(1281);else{e=vr.programs[e];for(var i=[],a=0;a<t;a++)i.push(F[r+4*a>>2]);var s=Mt.getActiveUniforms(e,i,n);if(s){var l=s.length;for(a=0;a<l;a++)F[o+4*a>>2]=s[a]}}else vr.recordError(1281)},Qo=(e,t,r,n)=>{var o=Mt.getAttachedShaders(vr.programs[e]),i=o.length;i>t&&(i=t),F[r>>2]=i;for(var a=0;a<i;++a){var s=vr.shaders.indexOf(o[a]);F[n+4*a>>2]=s}},Zo=(e,t)=>Mt.getAttribLocation(vr.programs[e],Z(t)),Jo=(e,t)=>{M[e>>2]=t;var r=M[e>>2];M[e+4>>2]=(t-r)/4294967296},ei=()=>{var e,t=(e=["ANGLE_instanced_arrays","EXT_blend_minmax","EXT_disjoint_timer_query","EXT_frag_depth","EXT_shader_texture_lod","EXT_sRGB","OES_element_index_uint","OES_fbo_render_mipmap","OES_standard_derivatives","OES_texture_float","OES_texture_half_float","OES_texture_half_float_linear","OES_vertex_array_object","WEBGL_color_buffer_float","WEBGL_depth_texture","WEBGL_draw_buffers","EXT_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","EXT_clip_control","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_polygon_offset_clamp","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw","WEBGL_polygon_mode"],(Mt.getSupportedExtensions()||[]).filter((t=>e.includes(t))));return t=t.concat(t.map((e=>"GL_"+e)))},ti=(e,t,r)=>{if(t){var n=void 0;switch(e){case 36346:n=1;break;case 36344:return void(0!=r&&1!=r&&vr.recordError(1280));case 34814:case 36345:n=0;break;case 34466:var o=Mt.getParameter(34467);n=o?o.length:0;break;case 33309:if(vr.currentContext.version<2)return void vr.recordError(1282);n=ei().length;break;case 33307:case 33308:if(vr.currentContext.version<2)return void vr.recordError(1280);n=33307==e?3:0}if(void 0===n){var i=Mt.getParameter(e);switch(typeof i){case"number":n=i;break;case"boolean":n=i?1:0;break;case"string":return void vr.recordError(1280);case"object":if(null===i)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:n=0;break;default:return void vr.recordError(1280)}else{if(i instanceof Float32Array||i instanceof Uint32Array||i instanceof Int32Array||i instanceof Array){for(var a=0;a<i.length;++a)switch(r){case 0:F[t+4*a>>2]=i[a];break;case 2:I[t+4*a>>2]=i[a];break;case 4:P[t+a]=i[a]?1:0}return}try{n=0|i.name}catch(t){return vr.recordError(1280),void _(`GL_INVALID_ENUM in glGet${r}v: Unknown object returned from WebGL getParameter(${e})! (error: ${t})`)}}break;default:return vr.recordError(1280),void _(`GL_INVALID_ENUM in glGet${r}v: Native code calling glGet${r}v(${e}) and it returns ${i} of type ${typeof i}!`)}}switch(r){case 1:Jo(t,n);break;case 0:F[t>>2]=n;break;case 2:I[t>>2]=n;break;case 4:P[t]=n?1:0}}else vr.recordError(1281)},ri=(e,t)=>ti(e,t,4),ni=(e,t,r)=>{r?Jo(r,Mt.getBufferParameter(e,t)):vr.recordError(1281)},oi=(e,t,r)=>{r?F[r>>2]=Mt.getBufferParameter(e,t):vr.recordError(1281)},ii=()=>{var e=Mt.getError()||vr.lastError;return vr.lastError=0,e},ai=(e,t)=>ti(e,t,2),si=(e,t)=>Mt.getFragDataLocation(vr.programs[e],Z(t)),li=(e,t,r,n)=>{var o=Mt.getFramebufferAttachmentParameter(e,t,r);(o instanceof WebGLRenderbuffer||o instanceof WebGLTexture)&&(o=0|o.name),F[n>>2]=o},di=(e,t,r,n)=>{if(r){var o,i=Mt.getIndexedParameter(e,t);switch(typeof i){case"boolean":o=i?1:0;break;case"number":o=i;break;case"object":if(null===i)switch(e){case 35983:case 35368:o=0;break;default:return void vr.recordError(1280)}else{if(!(i instanceof WebGLBuffer))return void vr.recordError(1280);o=0|i.name}break;default:return void vr.recordError(1280)}switch(n){case 1:Jo(r,o);break;case 0:F[r>>2]=o;break;case 2:I[r>>2]=o;break;case 4:P[r]=o?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+n}}else vr.recordError(1281)},ci=(e,t,r)=>di(e,t,r,1),ui=(e,t)=>{ti(e,t,1)},pi=(e,t,r)=>di(e,t,r,0),hi=(e,t)=>ti(e,t,0),fi=(e,t,r,n,o)=>{if(n<0)vr.recordError(1281);else if(o){var i=Mt.getInternalformatParameter(e,t,r);if(null!==i)for(var a=0;a<i.length&&a<n;++a)F[o+4*a>>2]=i[a]}else vr.recordError(1281)},gi=(e,t,r,n,o)=>{vr.recordError(1282)},mi=(e,t,r,n)=>{var o=Mt.getProgramInfoLog(vr.programs[e]);null===o&&(o="(unknown error)");var i=t>0&&n?de(o,n,t):0;r&&(F[r>>2]=i)},bi=(e,t,r)=>{if(r)if(e>=vr.counter)vr.recordError(1281);else if(e=vr.programs[e],35716==t){var n=Mt.getProgramInfoLog(e);null===n&&(n="(unknown error)"),F[r>>2]=n.length+1}else if(35719==t){if(!e.maxUniformLength)for(var o=Mt.getProgramParameter(e,35718),i=0;i<o;++i)e.maxUniformLength=Math.max(e.maxUniformLength,Mt.getActiveUniform(e,i).name.length+1);F[r>>2]=e.maxUniformLength}else if(35722==t){if(!e.maxAttributeLength){var a=Mt.getProgramParameter(e,35721);for(i=0;i<a;++i)e.maxAttributeLength=Math.max(e.maxAttributeLength,Mt.getActiveAttrib(e,i).name.length+1)}F[r>>2]=e.maxAttributeLength}else if(35381==t){if(!e.maxUniformBlockNameLength){var s=Mt.getProgramParameter(e,35382);for(i=0;i<s;++i)e.maxUniformBlockNameLength=Math.max(e.maxUniformBlockNameLength,Mt.getActiveUniformBlockName(e,i).length+1)}F[r>>2]=e.maxUniformBlockNameLength}else F[r>>2]=Mt.getProgramParameter(e,t);else vr.recordError(1281)},yi=(e,t,r)=>{if(r){var n,o=vr.queries[e];n=vr.currentContext.version<2?Mt.disjointTimerQueryExt.getQueryObjectEXT(o,t):Mt.getQueryParameter(o,t),Jo(r,"boolean"==typeof n?n?1:0:n)}else vr.recordError(1281)},vi=yi,wi=(e,t,r)=>{if(r){var n,o=vr.queries[e],i=Mt.disjointTimerQueryExt.getQueryObjectEXT(o,t);n="boolean"==typeof i?i?1:0:i,F[r>>2]=n}else vr.recordError(1281)},ki=wi,_i=yi,Ei=_i,Ci=(e,t,r)=>{if(r){var n,o=vr.queries[e],i=Mt.getQueryParameter(o,t);n="boolean"==typeof i?i?1:0:i,F[r>>2]=n}else vr.recordError(1281)},Si=wi,Pi=Si,xi=(e,t,r)=>{r?F[r>>2]=Mt.getQuery(e,t):vr.recordError(1281)},Ti=(e,t,r)=>{r?F[r>>2]=Mt.disjointTimerQueryExt.getQueryEXT(e,t):vr.recordError(1281)},Ai=(e,t,r)=>{r?F[r>>2]=Mt.getRenderbufferParameter(e,t):vr.recordError(1281)},Fi=(e,t,r)=>{r?I[r>>2]=Mt.getSamplerParameter(vr.samplers[e],t):vr.recordError(1281)},Mi=(e,t,r)=>{r?F[r>>2]=Mt.getSamplerParameter(vr.samplers[e],t):vr.recordError(1281)},Ii=(e,t,r,n)=>{var o=Mt.getShaderInfoLog(vr.shaders[e]);null===o&&(o="(unknown error)");var i=t>0&&n?de(o,n,t):0;r&&(F[r>>2]=i)},Di=(e,t,r,n)=>{var o=Mt.getShaderPrecisionFormat(e,t);F[r>>2]=o.rangeMin,F[r+4>>2]=o.rangeMax,F[n>>2]=o.precision},Bi=(e,t,r,n)=>{var o=Mt.getShaderSource(vr.shaders[e]);if(o){var i=t>0&&n?de(o,n,t):0;r&&(F[r>>2]=i)}},Ri=(e,t,r)=>{if(r)if(35716==t){var n=Mt.getShaderInfoLog(vr.shaders[e]);null===n&&(n="(unknown error)");var o=n?n.length+1:0;F[r>>2]=o}else if(35720==t){var i=Mt.getShaderSource(vr.shaders[e]),a=i?i.length+1:0;F[r>>2]=a}else F[r>>2]=Mt.getShaderParameter(vr.shaders[e],t);else vr.recordError(1281)},Li=e=>{var t=vr.stringCache[e];if(!t){switch(e){case 7939:t=ce(ei().join(" "));break;case 7936:case 7937:case 37445:case 37446:var r=Mt.getParameter(e);r||vr.recordError(1280),t=r?ce(r):0;break;case 7938:var n=Mt.getParameter(7938),o=`OpenGL ES 2.0 (${n})`;vr.currentContext.version>=2&&(o=`OpenGL ES 3.0 (${n})`),t=ce(o);break;case 35724:var i=Mt.getParameter(35724),a=i.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==a&&(3==a[1].length&&(a[1]=a[1]+"0"),i=`OpenGL ES GLSL ES ${a[1]} (${i})`),t=ce(i);break;default:vr.recordError(1280)}vr.stringCache[e]=t}return t},Oi=(e,t)=>{if(vr.currentContext.version<2)return vr.recordError(1282),0;var r=vr.stringiCache[e];if(r)return t<0||t>=r.length?(vr.recordError(1281),0):r[t];if(7939===e){var n=ei().map(ce);return r=vr.stringiCache[e]=n,t<0||t>=r.length?(vr.recordError(1281),0):r[t]}return vr.recordError(1280),0},Ui=(e,t,r,n,o)=>{if(r<0)vr.recordError(1281);else if(o){var i=Mt.getSyncParameter(vr.syncs[e],t);null!==i&&(F[o>>2]=i,n&&(F[n>>2]=1))}else vr.recordError(1281)},$i=(e,t,r)=>{r?I[r>>2]=Mt.getTexParameter(e,t):vr.recordError(1281)},qi=(e,t,r)=>{r?F[r>>2]=Mt.getTexParameter(e,t):vr.recordError(1281)},Wi=(e,t,r,n,o,i,a)=>{e=vr.programs[e];var s=Mt.getTransformFeedbackVarying(e,t);if(s){if(a&&r>0){var l=de(s.name,a,r);n&&(F[n>>2]=l)}else n&&(F[n>>2]=0);o&&(F[o>>2]=s.size),i&&(F[i>>2]=s.type)}},Hi=(e,t)=>Mt.getUniformBlockIndex(vr.programs[e],Z(t)),Ni=(e,t,r,n)=>{if(n)if(t>0&&(0==r||0==n))vr.recordError(1281);else{e=vr.programs[e];for(var o=[],i=0;i<t;i++)o.push(Z(F[r+4*i>>2]));var a=Mt.getUniformIndices(e,o);if(a){var s=a.length;for(i=0;i<s;i++)F[n+4*i>>2]=a[i]}}else vr.recordError(1281)},Vi=e=>"]"==e.slice(-1)&&e.lastIndexOf("["),zi=e=>{var t,r,n=e.uniformLocsById,o=e.uniformSizeAndIdsByName;if(!n){e.uniformLocsById=n={},e.uniformArrayNamesById={};var i=Mt.getProgramParameter(e,35718);for(t=0;t<i;++t){var a=Mt.getActiveUniform(e,t),s=a.name,l=a.size,d=Vi(s),c=d>0?s.slice(0,d):s,u=e.uniformIdCounter;for(e.uniformIdCounter+=l,o[c]=[l,u],r=0;r<l;++r)n[u]=r,e.uniformArrayNamesById[u++]=c}}},Gi=(e,t)=>{if(t=Z(t),e=vr.programs[e]){zi(e);var r=e.uniformLocsById,n=0,o=t,i=Vi(t);i>0&&(s=t.slice(i+1),n=parseInt(s)>>>0,o=t.slice(0,i));var a=e.uniformSizeAndIdsByName[o];if(a&&n<a[0]&&(r[n+=a[1]]=r[n]||Mt.getUniformLocation(e,t)))return n}else vr.recordError(1281);var s;return-1},ji=e=>{var t=Mt.currentProgram;if(t){var r=t.uniformLocsById[e];return"number"==typeof r&&(t.uniformLocsById[e]=r=Mt.getUniformLocation(t,t.uniformArrayNamesById[e]+(r>0?`[${r}]`:""))),r}vr.recordError(1282)},Xi=(e,t,r,n)=>{if(r){e=vr.programs[e],zi(e);var o=Mt.getUniform(e,ji(t));if("number"==typeof o||"boolean"==typeof o)switch(n){case 0:F[r>>2]=o;break;case 2:I[r>>2]=o}else for(var i=0;i<o.length;i++)switch(n){case 0:F[r+4*i>>2]=o[i];break;case 2:I[r+4*i>>2]=o[i]}}else vr.recordError(1281)},Yi=(e,t,r)=>{Xi(e,t,r,2)},Ki=(e,t,r)=>{Xi(e,t,r,0)},Qi=(e,t,r)=>Xi(e,t,r,0),Zi=(e,t,r,n)=>{if(r){var o=Mt.getVertexAttrib(e,t);if(34975==t)F[r>>2]=o&&o.name;else if("number"==typeof o||"boolean"==typeof o)switch(n){case 0:F[r>>2]=o;break;case 2:I[r>>2]=o;break;case 5:F[r>>2]=Math.fround(o)}else for(var i=0;i<o.length;i++)switch(n){case 0:F[r+4*i>>2]=o[i];break;case 2:I[r+4*i>>2]=o[i];break;case 5:F[r+4*i>>2]=Math.fround(o[i])}}else vr.recordError(1281)},Ji=(e,t,r)=>{Zi(e,t,r,0)},ea=Ji,ta=Ji,ra=ta,na=(e,t,r)=>{r?F[r>>2]=Mt.getVertexAttribOffset(e,t):vr.recordError(1281)},oa=(e,t,r)=>{Zi(e,t,r,2)},ia=(e,t,r)=>{Zi(e,t,r,5)},aa=(e,t)=>Mt.hint(e,t),sa=(e,t,r)=>{for(var n=Zn[t],o=0;o<t;o++)n[o]=F[r+4*o>>2];Mt.invalidateFramebuffer(e,n)},la=(e,t,r,n,o,i,a)=>{for(var s=Zn[t],l=0;l<t;l++)s[l]=F[r+4*l>>2];Mt.invalidateSubFramebuffer(e,s,n,o,i,a)},da=e=>{var t=vr.buffers[e];return t?Mt.isBuffer(t):0},ca=e=>Mt.isEnabled(e),ua=e=>{var t=vr.framebuffers[e];return t?Mt.isFramebuffer(t):0},pa=e=>(e=vr.programs[e])?Mt.isProgram(e):0,ha=e=>{var t=vr.queries[e];return t?Mt.isQuery(t):0},fa=e=>{var t=vr.queries[e];return t?Mt.disjointTimerQueryExt.isQueryEXT(t):0},ga=e=>{var t=vr.renderbuffers[e];return t?Mt.isRenderbuffer(t):0},ma=e=>{var t=vr.samplers[e];return t?Mt.isSampler(t):0},ba=e=>{var t=vr.shaders[e];return t?Mt.isShader(t):0},ya=e=>Mt.isSync(vr.syncs[e]),va=e=>{var t=vr.textures[e];return t?Mt.isTexture(t):0},wa=e=>Mt.isTransformFeedback(vr.transformFeedbacks[e]),ka=e=>{var t=vr.vaos[e];return t?Mt.isVertexArray(t):0},_a=ka,Ea=ka,Ca=Ea,Sa=e=>Mt.lineWidth(e),Pa=e=>{e=vr.programs[e],Mt.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}},xa=(e,t,r,n,o,i)=>{Mt.mdibvbi.multiDrawArraysInstancedBaseInstanceWEBGL(e,F,t>>2,F,r>>2,F,n>>2,M,o>>2,i)},Ta=(e,t,r,n,o,i,a,s)=>{Mt.mdibvbi.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(e,F,t>>2,r,F,n>>2,F,o>>2,F,i>>2,M,a>>2,s)},Aa=()=>Mt.pauseTransformFeedback(),Fa=(e,t)=>{3317==e?vr.unpackAlignment=t:3314==e&&(vr.unpackRowLength=t),Mt.pixelStorei(e,t)},Ma=(e,t)=>{Mt.webglPolygonMode.polygonModeWEBGL(e,t)},Ia=(e,t)=>Mt.polygonOffset(e,t),Da=(e,t,r)=>{Mt.extPolygonOffsetClamp.polygonOffsetClampEXT(e,t,r)},Ba=(e,t,r,n)=>{vr.recordError(1280)},Ra=(e,t,r)=>{vr.recordError(1280)},La=(e,t)=>{Mt.disjointTimerQueryExt.queryCounterEXT(vr.queries[e],t)},Oa=e=>Mt.readBuffer(e),Ua=e=>0==(e-=5120)?P:1==e?x:2==e?T:4==e?F:6==e?I:5==e||28922==e||28520==e||30779==e||30782==e?M:A,$a=(e,t)=>e>>>31-Math.clz32(t.BYTES_PER_ELEMENT),qa=(e,t,r,n,o,i)=>{var a=Ua(e),s=(e=>({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[e-6402]||1))(t)*a.BYTES_PER_ELEMENT,l=((e,t,r)=>{var n,o,i=(vr.unpackRowLength||e)*r;return t*(n=i,o=vr.unpackAlignment,n+o-1&-o)})(r,n,s);return a.subarray($a(o,a),$a(o+l,a))},Wa=(e,t,r,n,o,i,a)=>{if(vr.currentContext.version>=2){if(Mt.currentPixelPackBufferBinding)return void Mt.readPixels(e,t,r,n,o,i,a);var s=Ua(i),l=$a(a,s);Mt.readPixels(e,t,r,n,o,i,s,l)}else{var d=qa(i,o,r,n,a);d?Mt.readPixels(e,t,r,n,o,i,d):vr.recordError(1280)}},Ha=()=>{},Na=(e,t,r,n)=>Mt.renderbufferStorage(e,t,r,n),Va=(e,t,r,n,o)=>Mt.renderbufferStorageMultisample(e,t,r,n,o),za=()=>Mt.resumeTransformFeedback(),Ga=(e,t)=>{Mt.sampleCoverage(e,!!t)},ja=(e,t,r)=>{Mt.samplerParameterf(vr.samplers[e],t,r)},Xa=(e,t,r)=>{var n=I[r>>2];Mt.samplerParameterf(vr.samplers[e],t,n)},Ya=(e,t,r)=>{Mt.samplerParameteri(vr.samplers[e],t,r)},Ka=(e,t,r)=>{var n=F[r>>2];Mt.samplerParameteri(vr.samplers[e],t,n)},Qa=(e,t,r,n)=>Mt.scissor(e,t,r,n),Za=(e,t,r,n,o)=>{vr.recordError(1280)},Ja=(e,t,r,n)=>{var o=vr.getSource(e,t,r,n);if(vr.currentContext.version>=2&&o.includes("#version 100")){var i="";(o=(o=o.replace(/#extension GL_OES_standard_derivatives : enable/g,"")).replace(/#extension GL_EXT_shader_texture_lod : enable/g,"")).includes("gl_FragColor")&&(i+="out mediump vec4 GL_FragColor;\n",o=o.replace(/gl_FragColor/g,"GL_FragColor")),o=(o=(o=(o=(o=(o=(o=(o=(o=(o=(o=(o=o.includes("attribute")?(o=o.replace(/attribute/g,"in")).replace(/varying/g,"out"):o.replace(/varying/g,"in")).replace(/textureCubeLodEXT/g,"textureCubeLod")).replace(/texture2DLodEXT/g,"texture2DLod")).replace(/texture2DProjLodEXT/g,"texture2DProjLod")).replace(/texture2DGradEXT/g,"texture2DGrad")).replace(/texture2DProjGradEXT/g,"texture2DProjGrad")).replace(/textureCubeGradEXT/g,"textureCubeGrad")).replace(/textureCube/g,"texture")).replace(/texture1D/g,"texture")).replace(/texture2D/g,"texture")).replace(/texture3D/g,"texture")).replace(/#version 100/g,"#version 300 es\n"+i)}Mt.shaderSource(vr.shaders[e],o)},es=(e,t,r)=>Mt.stencilFunc(e,t,r),ts=(e,t,r,n)=>Mt.stencilFuncSeparate(e,t,r,n),rs=e=>Mt.stencilMask(e),ns=(e,t)=>Mt.stencilMaskSeparate(e,t),os=(e,t,r)=>Mt.stencilOp(e,t,r),is=(e,t,r,n)=>Mt.stencilOpSeparate(e,t,r,n),as=(e,t,r,n,o,i,a,s,l)=>{if(vr.currentContext.version>=2&&(6402==a&&6402==r&&5125==s&&(r=33190),36193==s&&(s=5131,6408==a&&6408==r&&(r=34842)),34041==r&&(r=35056),6408==r&&5126==s&&(r=34836)),vr.currentContext.version>=2){if(Mt.currentPixelUnpackBufferBinding)return void Mt.texImage2D(e,t,r,n,o,i,a,s,l);if(l){var d=Ua(s),c=$a(l,d);return void Mt.texImage2D(e,t,r,n,o,i,a,s,d,c)}}var u=l?qa(s,a,n,o,l):null;Mt.texImage2D(e,t,r,n,o,i,a,s,u)},ss=(e,t,r,n,o,i,a,s,l,d)=>{if(Mt.currentPixelUnpackBufferBinding)Mt.texImage3D(e,t,r,n,o,i,a,s,l,d);else if(d){var c=Ua(l);Mt.texImage3D(e,t,r,n,o,i,a,s,l,c,$a(d,c))}else Mt.texImage3D(e,t,r,n,o,i,a,s,l,null)},ls=(e,t,r)=>Mt.texParameterf(e,t,r),ds=(e,t,r)=>{var n=I[r>>2];Mt.texParameterf(e,t,n)},cs=(e,t,r)=>Mt.texParameteri(e,t,r),us=(e,t,r)=>{var n=F[r>>2];Mt.texParameteri(e,t,n)},ps=(e,t,r,n,o)=>Mt.texStorage2D(e,t,r,n,o),hs=(e,t,r,n,o,i)=>Mt.texStorage3D(e,t,r,n,o,i),fs=(e,t,r,n,o,i,a,s,l)=>{if(vr.currentContext.version>=2&&36193==s&&(s=5131),vr.currentContext.version>=2){if(Mt.currentPixelUnpackBufferBinding)return void Mt.texSubImage2D(e,t,r,n,o,i,a,s,l);if(l){var d=Ua(s);return void Mt.texSubImage2D(e,t,r,n,o,i,a,s,d,$a(l,d))}}var c=l?qa(s,a,o,i,l):null;Mt.texSubImage2D(e,t,r,n,o,i,a,s,c)},gs=(e,t,r,n,o,i,a,s,l,d,c)=>{if(Mt.currentPixelUnpackBufferBinding)Mt.texSubImage3D(e,t,r,n,o,i,a,s,l,d,c);else if(c){var u=Ua(d);Mt.texSubImage3D(e,t,r,n,o,i,a,s,l,d,u,$a(c,u))}else Mt.texSubImage3D(e,t,r,n,o,i,a,s,l,d,null)},ms=(e,t,r,n)=>{e=vr.programs[e];for(var o=[],i=0;i<t;i++)o.push(Z(F[r+4*i>>2]));Mt.transformFeedbackVaryings(e,o,n)},bs=(e,t)=>{Mt.uniform1f(ji(e),t)},ys=[],vs=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform1fv(ji(e),I,r>>2,t);else{if(t<=288)for(var n=ys[t],o=0;o<t;++o)n[o]=I[r+4*o>>2];else n=I.subarray(r>>2,r+4*t>>2);Mt.uniform1fv(ji(e),n)}},ws=(e,t)=>{Mt.uniform1i(ji(e),t)},ks=[],_s=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform1iv(ji(e),F,r>>2,t);else{if(t<=288)for(var n=ks[t],o=0;o<t;++o)n[o]=F[r+4*o>>2];else n=F.subarray(r>>2,r+4*t>>2);Mt.uniform1iv(ji(e),n)}},Es=(e,t)=>{Mt.uniform1ui(ji(e),t)},Cs=(e,t,r)=>{t&&Mt.uniform1uiv(ji(e),M,r>>2,t)},Ss=(e,t,r)=>{Mt.uniform2f(ji(e),t,r)},Ps=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform2fv(ji(e),I,r>>2,2*t);else{if(t<=144)for(var n=ys[t*=2],o=0;o<t;o+=2)n[o]=I[r+4*o>>2],n[o+1]=I[r+(4*o+4)>>2];else n=I.subarray(r>>2,r+8*t>>2);Mt.uniform2fv(ji(e),n)}},xs=(e,t,r)=>{Mt.uniform2i(ji(e),t,r)},Ts=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform2iv(ji(e),F,r>>2,2*t);else{if(t<=144)for(var n=ks[t*=2],o=0;o<t;o+=2)n[o]=F[r+4*o>>2],n[o+1]=F[r+(4*o+4)>>2];else n=F.subarray(r>>2,r+8*t>>2);Mt.uniform2iv(ji(e),n)}},As=(e,t,r)=>{Mt.uniform2ui(ji(e),t,r)},Fs=(e,t,r)=>{t&&Mt.uniform2uiv(ji(e),M,r>>2,2*t)},Ms=(e,t,r,n)=>{Mt.uniform3f(ji(e),t,r,n)},Is=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform3fv(ji(e),I,r>>2,3*t);else{if(t<=96)for(var n=ys[t*=3],o=0;o<t;o+=3)n[o]=I[r+4*o>>2],n[o+1]=I[r+(4*o+4)>>2],n[o+2]=I[r+(4*o+8)>>2];else n=I.subarray(r>>2,r+12*t>>2);Mt.uniform3fv(ji(e),n)}},Ds=(e,t,r,n)=>{Mt.uniform3i(ji(e),t,r,n)},Bs=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform3iv(ji(e),F,r>>2,3*t);else{if(t<=96)for(var n=ks[t*=3],o=0;o<t;o+=3)n[o]=F[r+4*o>>2],n[o+1]=F[r+(4*o+4)>>2],n[o+2]=F[r+(4*o+8)>>2];else n=F.subarray(r>>2,r+12*t>>2);Mt.uniform3iv(ji(e),n)}},Rs=(e,t,r,n)=>{Mt.uniform3ui(ji(e),t,r,n)},Ls=(e,t,r)=>{t&&Mt.uniform3uiv(ji(e),M,r>>2,3*t)},Os=(e,t,r,n,o)=>{Mt.uniform4f(ji(e),t,r,n,o)},Us=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform4fv(ji(e),I,r>>2,4*t);else{if(t<=72){var n=ys[4*t],o=I;r>>=2,t*=4;for(var i=0;i<t;i+=4){var a=r+i;n[i]=o[a],n[i+1]=o[a+1],n[i+2]=o[a+2],n[i+3]=o[a+3]}}else n=I.subarray(r>>2,r+16*t>>2);Mt.uniform4fv(ji(e),n)}},$s=(e,t,r,n,o)=>{Mt.uniform4i(ji(e),t,r,n,o)},qs=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform4iv(ji(e),F,r>>2,4*t);else{if(t<=72)for(var n=ks[t*=4],o=0;o<t;o+=4)n[o]=F[r+4*o>>2],n[o+1]=F[r+(4*o+4)>>2],n[o+2]=F[r+(4*o+8)>>2],n[o+3]=F[r+(4*o+12)>>2];else n=F.subarray(r>>2,r+16*t>>2);Mt.uniform4iv(ji(e),n)}},Ws=(e,t,r,n,o)=>{Mt.uniform4ui(ji(e),t,r,n,o)},Hs=(e,t,r)=>{t&&Mt.uniform4uiv(ji(e),M,r>>2,4*t)},Ns=(e,t,r)=>{e=vr.programs[e],Mt.uniformBlockBinding(e,t,r)},Vs=(e,t,r,n)=>{if(vr.currentContext.version>=2)t&&Mt.uniformMatrix2fv(ji(e),!!r,I,n>>2,4*t);else{if(t<=72)for(var o=ys[t*=4],i=0;i<t;i+=4)o[i]=I[n+4*i>>2],o[i+1]=I[n+(4*i+4)>>2],o[i+2]=I[n+(4*i+8)>>2],o[i+3]=I[n+(4*i+12)>>2];else o=I.subarray(n>>2,n+16*t>>2);Mt.uniformMatrix2fv(ji(e),!!r,o)}},zs=(e,t,r,n)=>{t&&Mt.uniformMatrix2x3fv(ji(e),!!r,I,n>>2,6*t)},Gs=(e,t,r,n)=>{t&&Mt.uniformMatrix2x4fv(ji(e),!!r,I,n>>2,8*t)},js=(e,t,r,n)=>{if(vr.currentContext.version>=2)t&&Mt.uniformMatrix3fv(ji(e),!!r,I,n>>2,9*t);else{if(t<=32)for(var o=ys[t*=9],i=0;i<t;i+=9)o[i]=I[n+4*i>>2],o[i+1]=I[n+(4*i+4)>>2],o[i+2]=I[n+(4*i+8)>>2],o[i+3]=I[n+(4*i+12)>>2],o[i+4]=I[n+(4*i+16)>>2],o[i+5]=I[n+(4*i+20)>>2],o[i+6]=I[n+(4*i+24)>>2],o[i+7]=I[n+(4*i+28)>>2],o[i+8]=I[n+(4*i+32)>>2];else o=I.subarray(n>>2,n+36*t>>2);Mt.uniformMatrix3fv(ji(e),!!r,o)}},Xs=(e,t,r,n)=>{t&&Mt.uniformMatrix3x2fv(ji(e),!!r,I,n>>2,6*t)},Ys=(e,t,r,n)=>{t&&Mt.uniformMatrix3x4fv(ji(e),!!r,I,n>>2,12*t)},Ks=(e,t,r,n)=>{if(vr.currentContext.version>=2)t&&Mt.uniformMatrix4fv(ji(e),!!r,I,n>>2,16*t);else{if(t<=18){var o=ys[16*t],i=I;n>>=2,t*=16;for(var a=0;a<t;a+=16){var s=n+a;o[a]=i[s],o[a+1]=i[s+1],o[a+2]=i[s+2],o[a+3]=i[s+3],o[a+4]=i[s+4],o[a+5]=i[s+5],o[a+6]=i[s+6],o[a+7]=i[s+7],o[a+8]=i[s+8],o[a+9]=i[s+9],o[a+10]=i[s+10],o[a+11]=i[s+11],o[a+12]=i[s+12],o[a+13]=i[s+13],o[a+14]=i[s+14],o[a+15]=i[s+15]}}else o=I.subarray(n>>2,n+64*t>>2);Mt.uniformMatrix4fv(ji(e),!!r,o)}},Qs=(e,t,r,n)=>{t&&Mt.uniformMatrix4x2fv(ji(e),!!r,I,n>>2,8*t)},Zs=(e,t,r,n)=>{t&&Mt.uniformMatrix4x3fv(ji(e),!!r,I,n>>2,12*t)},Js=e=>{e=vr.programs[e],Mt.useProgram(e),Mt.currentProgram=e},el=e=>{Mt.validateProgram(vr.programs[e])},tl=(e,t)=>Mt.vertexAttrib1f(e,t),rl=(e,t)=>{Mt.vertexAttrib1f(e,I[t>>2])},nl=(e,t,r)=>Mt.vertexAttrib2f(e,t,r),ol=(e,t)=>{Mt.vertexAttrib2f(e,I[t>>2],I[t+4>>2])},il=(e,t,r,n)=>Mt.vertexAttrib3f(e,t,r,n),al=(e,t)=>{Mt.vertexAttrib3f(e,I[t>>2],I[t+4>>2],I[t+8>>2])},sl=(e,t,r,n,o)=>Mt.vertexAttrib4f(e,t,r,n,o),ll=(e,t)=>{Mt.vertexAttrib4f(e,I[t>>2],I[t+4>>2],I[t+8>>2],I[t+12>>2])},dl=(e,t)=>{Mt.vertexAttribDivisor(e,t)},cl=dl,ul=dl,pl=dl,hl=dl,fl=dl,gl=(e,t,r,n,o)=>Mt.vertexAttribI4i(e,t,r,n,o),ml=(e,t)=>{Mt.vertexAttribI4i(e,F[t>>2],F[t+4>>2],F[t+8>>2],F[t+12>>2])},bl=(e,t,r,n,o)=>Mt.vertexAttribI4ui(e,t,r,n,o),yl=(e,t)=>{Mt.vertexAttribI4ui(e,M[t>>2],M[t+4>>2],M[t+8>>2],M[t+12>>2])},vl=(e,t,r,n,o)=>{Mt.vertexAttribIPointer(e,t,r,n,o)},wl=(e,t,r,n,o,i)=>{Mt.vertexAttribPointer(e,t,r,!!n,o,i)},kl=(e,t,r,n)=>Mt.viewport(e,t,r,n),_l=(e,t,r)=>{r=Number(r),Mt.waitSync(vr.syncs[e],t,r)},El=e=>{var t=(e-E.buffer.byteLength+65535)/65536|0;try{return E.grow(t),$(),1}catch(e){}},Cl=["default","low-power","high-performance"],Sl=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],Pl=e=>{var t;return e=(t=e)>2?Z(t):t,Sl[e]||("undefined"!=typeof document?document.querySelector(e):null)},xl=(e,t)=>{var r=t>>2,n=F[r+2],o={alpha:!!P[t+0],depth:!!P[t+1],stencil:!!P[t+2],antialias:!!P[t+3],premultipliedAlpha:!!P[t+4],preserveDrawingBuffer:!!P[t+5],powerPreference:Cl[n],failIfMajorPerformanceCaveat:!!P[t+12],majorVersion:F[r+4],minorVersion:F[r+5],enableExtensionsByDefault:P[t+24],explicitSwapControl:P[t+25],proxyContextToMainThread:F[r+7],renderViaOffscreenBackBuffer:P[t+32]},i=Pl(e);return i?o.explicitSwapControl?0:vr.createContext(i,o):0},Tl={},Al=()=>{if(!Al.strings){var e={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",_:b||"./this.program"};for(var t in Tl)void 0===Tl[t]?delete e[t]:e[t]=Tl[t];var r=[];for(var t in e)r.push(`${t}=${e[t]}`);Al.strings=r}return Al.strings},Fl=(e,t,r,n)=>{for(var o=0,i=0;i<r;i++){var a=M[t>>2],s=M[t+4>>2];t+=8;var l=Te.read(e,P,a,s,n);if(l<0)return-1;if(o+=l,l<s)break;void 0!==n&&(n+=l)}return o},Ml=e=>Jl(e),Il=e=>{var t=se(e)+1,r=Ml(t);return de(e,r,t),r},Dl=Te.createPath,Bl=Te.createLazyFile,Rl=Te.createDevice;Te.createPreloadedFile=Pe,Te.staticInit(),l.FS_createPath=Te.createPath,l.FS_createDataFile=Te.createDataFile,l.FS_createPreloadedFile=Te.createPreloadedFile,l.FS_unlink=Te.unlink,l.FS_createLazyFile=Te.createLazyFile,l.FS_createDevice=Te.createDevice,Ee.doesNotExistError=new Te.ErrnoError(44),Ee.doesNotExistError.stack="<generic error, no stack>",(()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);Re=e})(),(()=>{let e=lt.prototype;Object.assign(e,{isAliasOf(e){if(!(this instanceof lt))return!1;if(!(e instanceof lt))return!1;var t=this.$$.ptrType.registeredClass,r=this.$$.ptr;e.$$=e.$$;for(var n=e.$$.ptrType.registeredClass,o=e.$$.ptr;t.baseClass;)r=t.upcast(r),t=t.baseClass;for(;n.baseClass;)o=n.upcast(o),n=n.baseClass;return t===n&&r===o},clone(){if(this.$$.ptr||Ke(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e,t=at(Object.create(Object.getPrototypeOf(this),{$$:{value:(e=this.$$,{count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType})}}));return t.$$.count.value+=1,t.$$.deleteScheduled=!1,t},delete(){this.$$.ptr||Ke(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Ge("Object already scheduled for deletion"),Ze(this),Je(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||Ke(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Ge("Object already scheduled for deletion"),st.push(this),st.length,this.$$.deleteScheduled=!0,this}});const t=Symbol.dispose;t&&(e[t]=e.delete)})(),Object.assign(bt.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){this.rawDestructor?.(e)},argPackAdvance:Ye,readValueFromPointer:Be,fromWireType:it}),Bt.push(0,1,void 0,1,null,1,!0,1,!1,1),l.count_emval_handles=Lt,l.requestFullscreen=br.requestFullscreen,l.setCanvasSize=br.setCanvasSize,l.getUserMedia=br.getUserMedia,l.createContext=br.createContext;for(let e=0;e<32;++e)Zn.push(new Array(e));for(var Ll=new Float32Array(288),Ol=0;Ol<=288;++Ol)ys[Ol]=Ll.subarray(0,Ol);var Ul=new Int32Array(288);for(Ol=0;Ol<=288;++Ol)ks[Ol]=Ul.subarray(0,Ol);var $l={3050240:(e,t,r,n,o)=>"undefined"==typeof window||void 0===(window.AudioContext||window.webkitAudioContext)?0:(void 0===window.miniaudio&&(window.miniaudio={referenceCount:0},window.miniaudio.device_type={},window.miniaudio.device_type.playback=e,window.miniaudio.device_type.capture=t,window.miniaudio.device_type.duplex=r,window.miniaudio.device_state={},window.miniaudio.device_state.stopped=n,window.miniaudio.device_state.started=o,miniaudio.devices=[],miniaudio.track_device=function(e){for(var t=0;t<miniaudio.devices.length;++t)if(null==miniaudio.devices[t])return miniaudio.devices[t]=e,t;return miniaudio.devices.push(e),miniaudio.devices.length-1},miniaudio.untrack_device_by_index=function(e){for(miniaudio.devices[e]=null;miniaudio.devices.length>0&&null==miniaudio.devices[miniaudio.devices.length-1];)miniaudio.devices.pop()},miniaudio.untrack_device=function(e){for(var t=0;t<miniaudio.devices.length;++t)if(miniaudio.devices[t]==e)return miniaudio.untrack_device_by_index(t)},miniaudio.get_device_by_index=function(e){return miniaudio.devices[e]},miniaudio.unlock_event_types=function(){return["touchstart","touchend","click"]}(),miniaudio.unlock=function(){for(var e=0;e<miniaudio.devices.length;++e){var t=miniaudio.devices[e];null!=t&&null!=t.webaudio&&2===t.state&&t.webaudio.resume()}miniaudio.unlock_event_types.map((function(e){document.removeEventListener(e,miniaudio.unlock,!0)}))},miniaudio.unlock_event_types.map((function(e){document.addEventListener(e,miniaudio.unlock,!0)}))),window.miniaudio.referenceCount+=1,1),3052230:()=>{void 0!==window.miniaudio&&(window.miniaudio.referenceCount-=1,0===window.miniaudio.referenceCount&&delete window.miniaudio)},3052394:()=>void 0!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia,3052498:()=>{try{var e=new(window.AudioContext||window.webkitAudioContext),t=e.sampleRate;return e.close(),t}catch(e){return 0}},3052669:(e,t,r,n,o,i)=>{var a=e,s=t,d=r,c=n,u=o,p=i;if(void 0===window.miniaudio)return-1;var h={},f={};a==window.miniaudio.device_type.playback&&(f.sampleRate=d),h.webaudio=new(window.AudioContext||window.webkitAudioContext)(f),h.webaudio.suspend(),h.state=window.miniaudio.device_state.stopped;var g=0,m=s;return a!=window.miniaudio.device_type.playback&&(g=s),h.scriptNode=h.webaudio.createScriptProcessor(c,g,m),h.scriptNode.onaudioprocess=function(e){if(null!=h.intermediaryBufferView&&0!=h.intermediaryBufferView.length||(h.intermediaryBufferView=new Float32Array(l.HEAPF32.buffer,u,c*s)),a==miniaudio.device_type.capture||a==miniaudio.device_type.duplex){for(var t=0;t<s;t+=1)for(var r=e.inputBuffer.getChannelData(t),n=h.intermediaryBufferView,o=0;o<c;o+=1)n[o*s+t]=r[o];Gl(p,c,u)}if(a==miniaudio.device_type.playback||a==miniaudio.device_type.duplex)for(jl(p,c,u),t=0;t<e.outputBuffer.numberOfChannels;++t){var i=e.outputBuffer.getChannelData(t);for(n=h.intermediaryBufferView,o=0;o<c;o+=1)i[o]=n[o*s+t]}else for(t=0;t<e.outputBuffer.numberOfChannels;++t)e.outputBuffer.getChannelData(t).fill(0)},a!=miniaudio.device_type.capture&&a!=miniaudio.device_type.duplex||navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then((function(e){h.streamNode=h.webaudio.createMediaStreamSource(e),h.streamNode.connect(h.scriptNode),h.scriptNode.connect(h.webaudio.destination)})).catch((function(e){console.log("Failed to get user media: "+e)})),a==miniaudio.device_type.playback&&h.scriptNode.connect(h.webaudio.destination),miniaudio.track_device(h)},3055452:e=>miniaudio.get_device_by_index(e).webaudio.sampleRate,3055518:e=>{var t=miniaudio.get_device_by_index(e);void 0!==t.scriptNode&&(t.scriptNode.onaudioprocess=function(e){},t.scriptNode.disconnect(),t.scriptNode=void 0),void 0!==t.streamNode&&(t.streamNode.disconnect(),t.streamNode=void 0),t.webaudio.close(),t.webaudio=void 0},3055883:e=>{miniaudio.untrack_device_by_index(e)},3055926:e=>{var t=miniaudio.get_device_by_index(e);t.webaudio.resume(),t.state=miniaudio.device_state.started},3056051:e=>{var t=miniaudio.get_device_by_index(e);t.webaudio.suspend(),t.state=miniaudio.device_state.stopped},3056177:e=>{console.log(Z(e))},3056212:()=>!!globalThis.ubq_browserTabHidden,3056258:()=>"undefined"!=typeof process&&process.versions&&process.versions.node?1:0},ql={Xa:e=>{var t=new ExceptionInfo(e);return t.get_caught()||t.set_caught(!0),t.set_rethrown(!1),ue.push(t),rd(e),od(e)},Oh:()=>{Kl(0,0);var e=ue.pop();td(e.excPtr),pe=0},n:()=>fe([]),sa:e=>fe([e]),l:(e,t,r)=>{throw new ExceptionInfo(e).init(t,r),pe=e},O:e=>{throw pe||(pe=e),pe},Nh:function(e,t){try{return e=Ae.getStr(e),Te.chmod(e,t),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Mh:function(e,t){try{return Te.fchmod(e,t),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},ra:function(e,t,r){Ae.varargs=r;try{var n=Ae.getStreamFromFD(e);switch(t){case 0:if((o=Fe())<0)return-28;for(;Te.streams[o];)o++;return Te.dupStream(n,o).fd;case 1:case 2:case 13:case 14:return 0;case 3:return n.flags;case 4:var o=Fe();return n.flags|=o,0;case 12:return o=Me(),T[o+0>>1]=2,0}return-28}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Lh:function(e,t){try{return Ae.writeStat(t,Te.fstat(e))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Kh:function(e,t,r){Ae.varargs=r;try{var n=Ae.getStreamFromFD(e);switch(t){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:return n.tty?0:-59;case 21505:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcgets){var o=n.tty.ops.ioctl_tcgets(n),i=Me();F[i>>2]=o.c_iflag||0,F[i+4>>2]=o.c_oflag||0,F[i+8>>2]=o.c_cflag||0,F[i+12>>2]=o.c_lflag||0;for(var a=0;a<32;a++)P[i+a+17]=o.c_cc[a]||0;return 0}return 0;case 21506:case 21507:case 21508:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){i=Me();var s=F[i>>2],l=F[i+4>>2],d=F[i+8>>2],c=F[i+12>>2],u=[];for(a=0;a<32;a++)u.push(P[i+a+17]);return n.tty.ops.ioctl_tcsets(n.tty,t,{c_iflag:s,c_oflag:l,c_cflag:d,c_lflag:c,c_cc:u})}return 0;case 21519:return n.tty?(i=Me(),F[i>>2]=0,0):-59;case 21520:return n.tty?-28:-59;case 21531:return i=Me(),Te.ioctl(n,t,i);case 21523:if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var p=n.tty.ops.ioctl_tiocgwinsz(n.tty);i=Me(),T[i>>1]=p[0],T[i+2>>1]=p[1]}return 0;default:return-28}}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Jh:function(e,t){try{return e=Ae.getStr(e),Ae.writeStat(t,Te.lstat(e))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Ih:function(e,t,r,n){try{t=Ae.getStr(t);var o=256&n,i=4096&n;return n&=-6401,t=Ae.calculateAt(e,t,i),Ae.writeStat(r,o?Te.lstat(t):Te.stat(t))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Wa:function(e,t,r,n){Ae.varargs=n;try{t=Ae.getStr(t),t=Ae.calculateAt(e,t);var o=n?Fe():0;return Te.open(t,r,o).fd}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Hh:function(e,t,r,n){try{return t=Ae.getStr(t),n=Ae.getStr(n),t=Ae.calculateAt(e,t),n=Ae.calculateAt(r,n),Te.rename(t,n),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Gh:function(e){try{return e=Ae.getStr(e),Te.rmdir(e),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Fh:function(e,t){try{return e=Ae.getStr(e),Ae.writeStat(t,Te.stat(e))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Eh:function(e,t,r){try{return t=Ae.getStr(t),t=Ae.calculateAt(e,t),0===r?Te.unlink(t):512===r?Te.rmdir(t):G("Invalid flags passed to unlinkat"),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},uh:()=>G(""),Ua:e=>{var t=Ie[e];delete Ie[e];var r=t.elements,n=r.length,o=r.map((e=>e.getterReturnType)).concat(r.map((e=>e.setterArgumentType))),i=t.rawConstructor,a=t.rawDestructor;We([e],o,(e=>(r.forEach(((t,r)=>{var o=e[r],i=t.getter,a=t.getterContext,s=e[r+n],l=t.setter,d=t.setterContext;t.read=e=>o.fromWireType(i(a,e)),t.write=(e,t)=>{var r=[];l(d,e,s.toWireType(r,t)),De(r)}})),[{name:t.name,fromWireType:e=>{for(var t=new Array(n),o=0;o<n;++o)t[o]=r[o].read(e);return a(e),t},toWireType:(e,o)=>{if(n!==o.length)throw new TypeError(`Incorrect number of tuple elements for ${t.name}: expected=${n}, actual=${o.length}`);for(var s=i(),l=0;l<n;++l)r[l].write(s,o[l]);return null!==e&&e.push(a,s),s},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction:a}])))},z:e=>{var t=He[e];delete He[e];var r=t.rawConstructor,n=t.rawDestructor,o=t.fields,i=o.map((e=>e.getterReturnType)).concat(o.map((e=>e.setterArgumentType)));We([e],i,(e=>{var i={};return o.forEach(((t,r)=>{var n=t.fieldName,a=e[r],s=e[r].optional,l=t.getter,d=t.getterContext,c=e[r+o.length],u=t.setter,p=t.setterContext;i[n]={read:e=>a.fromWireType(l(d,e)),write:(e,t)=>{var r=[];u(p,e,c.toWireType(r,t)),De(r)},optional:s}})),[{name:t.name,fromWireType:e=>{var t={};for(var r in i)t[r]=i[r].read(e);return n(e),t},toWireType:(e,t)=>{for(var o in i)if(!(o in t)&&!i[o].optional)throw new TypeError(`Missing field: "${o}"`);var a=r();for(o in i)i[o].write(a,t[o]);return null!==e&&e.push(n,a),a},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction:n}]}))},Ta:(e,t,r,n,o)=>{var i=-1!=(t=Ve(t)).indexOf("u");je(e,{name:t,fromWireType:e=>e,toWireType:function(e,t){if("bigint"!=typeof t&&"number"!=typeof t)throw new TypeError(`Cannot convert "${Ne(t)}" to ${this.name}`);return"number"==typeof t&&(t=BigInt(t)),t},argPackAdvance:Ye,readValueFromPointer:Xe(t,r,!i),destructorFunction:null})},th:(e,t,r,n)=>{je(e,{name:t=Ve(t),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?r:n},argPackAdvance:Ye,readValueFromPointer:function(e){return this.fromWireType(x[e])},destructorFunction:null})},s:(e,t,r,n,o,i,a,s,l,d,c,u,p)=>{c=Ve(c),i=St(o,i),s&&=St(a,s),d&&=St(l,d),p=St(u,p);var h=(e=>{var t=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return t>=48&&t<=57?`_${e}`:e})(c);ut(h,(function(){Tt(`Cannot construct ${c} due to unbound types`,[n])})),We([e,t,r],n?[n]:[],(t=>{var r,o;t=t[0],o=n?(r=t.registeredClass).instancePrototype:lt.prototype;var a=dt(c,(function(...e){if(Object.getPrototypeOf(this)!==l)throw new ze("Use 'new' to construct "+c);if(void 0===u.constructor_body)throw new ze(c+" has no accessible constructor");var t=u.constructor_body[e.length];if(void 0===t)throw new ze(`Tried to invoke ctor of ${c} with invalid number of parameters (${e.length}) - expected (${Object.keys(u.constructor_body).toString()}) parameters instead!`);return t.apply(this,e)})),l=Object.create(o,{constructor:{value:a}});a.prototype=l;var u=new pt(c,a,l,p,r,i,s,d);u.baseClass&&(u.baseClass.__derivedClasses??=[],u.baseClass.__derivedClasses.push(u));var f=new bt(c,u,!0,!1,!1),g=new bt(c+"*",u,!1,!1,!1),m=new bt(c+" const*",u,!1,!0,!1);return tt[e]={pointerType:g,constPointerType:m},_t(h,a),[f,g,m]}))},v:(e,t,r,n,o,i)=>{var a=At(t,r);o=St(n,o),We([],[e],(e=>{var r=`constructor ${(e=e[0]).name}`;if(void 0===e.registeredClass.constructor_body&&(e.registeredClass.constructor_body=[]),void 0!==e.registeredClass.constructor_body[t-1])throw new ze(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${e.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return e.registeredClass.constructor_body[t-1]=()=>{Tt(`Cannot construct ${e.name} due to unbound types`,a)},We([],a,(n=>(n.splice(1,0,null),e.registeredClass.constructor_body[t-1]=Ft(r,n,null,o,i),[]))),[]}))},c:(e,t,r,n,o,i,a,s,l,d)=>{var c=At(r,n);t=Ve(t),t=It(t),i=St(o,i),We([],[e],(e=>{var n=`${(e=e[0]).name}.${t}`;function o(){Tt(`Cannot call ${n} due to unbound types`,c)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]),s&&e.registeredClass.pureVirtualFunctions.push(t);var l=e.registeredClass.instancePrototype,d=l[t];return void 0===d||void 0===d.overloadTable&&d.className!==e.name&&d.argCount===r-2?(o.argCount=r-2,o.className=e.name,l[t]=o):(ct(l,t,n),l[t].overloadTable[r-2]=o),We([],c,(o=>{var s=Ft(n,o,e,i,a);return void 0===l[t].overloadTable?(s.argCount=r-2,l[t]=s):l[t].overloadTable[r-2]=s,[]})),[]}))},sh:e=>je(e,Ut),ha:(e,t,r,n)=>{function o(){}t=Ve(t),o.values={},je(e,{name:t,constructor:o,fromWireType:function(e){return this.constructor.values[e]},toWireType:(e,t)=>t.value,argPackAdvance:Ye,readValueFromPointer:$t(t,r,n),destructorFunction:null}),ut(t,o)},K:(e,t,r)=>{var n=qt(e,"enum");t=Ve(t);var o=n.constructor,i=Object.create(n.constructor.prototype,{value:{value:r},constructor:{value:dt(`${n.name}_${t}`,(function(){}))}});o.values[r]=i,o[t]=i},Sa:(e,t,r)=>{je(e,{name:t=Ve(t),fromWireType:e=>e,toWireType:(e,t)=>t,argPackAdvance:Ye,readValueFromPointer:Wt(t,r),destructorFunction:null})},Q:(e,t,r,n,o,i,a,s)=>{var l=At(t,r);e=Ve(e),e=It(e),o=St(n,o),ut(e,(function(){Tt(`Cannot call ${e} due to unbound types`,l)}),t-1),We([],l,(r=>{var n=[r[0],null].concat(r.slice(1));return _t(e,Ft(e,n,null,o,i),t-1),[]}))},N:(e,t,r,n,o)=>{t=Ve(t),-1===o&&(o=4294967295);var i=e=>e;if(0===n){var a=32-8*r;i=e=>e<<a>>>a}var s=t.includes("unsigned");je(e,{name:t,fromWireType:i,toWireType:s?function(e,t){return this.name,t>>>0}:function(e,t){return this.name,t},argPackAdvance:Ye,readValueFromPointer:Xe(t,r,0!==n),destructorFunction:null})},E:(e,t,r)=>{var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][t];function o(e){var t=M[e>>2],r=M[e+4>>2];return new n(P.buffer,r,t)}je(e,{name:r=Ve(r),fromWireType:o,argPackAdvance:Ye,readValueFromPointer:o},{ignoreDuplicateRegistrations:!0})},P:(e,t)=>{je(e,Ht)},rh:(e,t,r,n,o,i,a,s,l,d,c,u)=>{r=Ve(r),i=St(o,i),s=St(a,s),d=St(l,d),u=St(c,u),We([e],[t],(e=>(e=e[0],[new bt(r,e.registeredClass,!1,!1,!0,e,n,i,s,d,u)])))},qh:(e,t)=>{t=Ve(t),je(e,{name:t,fromWireType(e){for(var t,r=M[e>>2],n=e+4,o=n,i=0;i<=r;++i){var a=n+i;if(i==r||0==x[a]){var s=Z(o,a-o);void 0===t?t=s:(t+=String.fromCharCode(0),t+=s),o=a+1}}return Vl(e),t},toWireType(e,t){var r;t instanceof ArrayBuffer&&(t=new Uint8Array(t));var n="string"==typeof t;n||ArrayBuffer.isView(t)&&1==t.BYTES_PER_ELEMENT||Ge("Cannot pass non-string to std::string"),r=n?se(t):t.length;var o=Nl(4+r+1),i=o+4;return M[o>>2]=r,n?de(t,i,r+1):x.set(t,i),null!==e&&e.push(Vl,o),o},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction(e){Vl(e)}})},pa:(e,t,r)=>{var n,o,i,a;r=Ve(r),2===t?(n=Vt,o=zt,a=Gt,i=e=>A[e>>1]):4===t&&(n=jt,o=Xt,a=Yt,i=e=>M[e>>2]),je(e,{name:r,fromWireType:e=>{for(var r,o=M[e>>2],a=e+4,s=0;s<=o;++s){var l=e+4+s*t;if(s==o||0==i(l)){var d=n(a,l-a);void 0===r?r=d:(r+=String.fromCharCode(0),r+=d),a=l+t}}return Vl(e),r},toWireType:(e,n)=>{"string"!=typeof n&&Ge(`Cannot pass non-string to C++ string type ${r}`);var i=a(n),s=Nl(4+i+t);return M[s>>2]=i/t,o(n,s+4,i+t),null!==e&&e.push(Vl,s),s},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction(e){Vl(e)}})},Ra:(e,t,r,n,o,i)=>{Ie[e]={name:Ve(t),rawConstructor:St(r,n),rawDestructor:St(o,i),elements:[]}},M:(e,t,r,n,o,i,a,s,l)=>{Ie[e].elements.push({getterReturnType:t,getter:St(r,n),getterContext:o,setterArgumentType:i,setter:St(a,s),setterContext:l})},y:(e,t,r,n,o,i)=>{He[e]={name:Ve(t),rawConstructor:St(r,n),rawDestructor:St(o,i),fields:[]}},k:(e,t,r,n,o,i,a,s,l,d)=>{He[e].fields.push({fieldName:Ve(t),getterReturnType:r,getter:St(n,o),getterContext:i,setterArgumentType:a,setter:St(s,l),setterContext:d})},ph:(e,t)=>{je(e,{isVoid:!0,name:t=Ve(t),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,t)=>{}})},oh:()=>{oe=!1,Kt=0},nh:()=>{throw 1/0},i:(e,t,r)=>(e=Ot.toValue(e),t=qt(t,"emval::as"),Qt(t,r,e)),u:(e,t,r,n)=>(e=Zt[e])(null,t=Ot.toValue(t),r,n),J:(e,t,r,n,o)=>(e=Zt[e])(t=Ot.toValue(t),t[r=er(r)],n,o),b:Rt,mh:(e,t)=>(e=Ot.toValue(e))==(t=Ot.toValue(t)),I:e=>0===e?Ot.toHandle(tr()):(e=er(e),Ot.toHandle(tr()[e])),o:(e,t,r)=>{var n=((e,t)=>{for(var r=new Array(e),n=0;n<e;++n)r[n]=qt(M[t+4*n>>2],"parameter "+n);return r})(e,t),o=n.shift();e--;var i,a,s=new Array(e),l=`methodCaller<(${n.map((e=>e.name)).join(", ")}) => ${o.name}>`;return i=dt(l,((t,i,a,l)=>{for(var d=0,c=0;c<e;++c)s[c]=n[c].readValueFromPointer(l+d),d+=n[c].argPackAdvance;var u=1===r?rr(i,s):i.apply(t,s);return Qt(o,a,u)})),a=Zt.length,Zt.push(i),a},g:(e,t)=>(e=Ot.toValue(e),t=Ot.toValue(t),Ot.toHandle(e[t])),d:e=>{e>9&&(Bt[e+1]+=1)},aa:(e,t)=>(e=Ot.toValue(e))instanceof(t=Ot.toValue(t)),oa:e=>"number"==typeof(e=Ot.toValue(e)),H:e=>"string"==typeof(e=Ot.toValue(e)),Qa:()=>Ot.toHandle([]),e:e=>Ot.toHandle(er(e)),x:()=>Ot.toHandle({}),h:e=>{var t=Ot.toValue(e);De(t),Rt(e)},j:(e,t,r)=>{e=Ot.toValue(e),t=Ot.toValue(t),r=Ot.toValue(r),e[t]=r},f:(e,t)=>{var r=(e=qt(e,"_emval_take_value")).readValueFromPointer(t);return Ot.toHandle(r)},lh:e=>{throw e=Ot.toValue(e)},kh:e=>(e=Ot.toValue(e),Ot.toHandle(typeof e)),jh:function(e,t){e=nr(e);var r=new Date(1e3*e);F[t>>2]=r.getUTCSeconds(),F[t+4>>2]=r.getUTCMinutes(),F[t+8>>2]=r.getUTCHours(),F[t+12>>2]=r.getUTCDate(),F[t+16>>2]=r.getUTCMonth(),F[t+20>>2]=r.getUTCFullYear()-1900,F[t+24>>2]=r.getUTCDay();var n=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),o=(r.getTime()-n)/864e5|0;F[t+28>>2]=o},ih:function(e,t){e=nr(e);var r=new Date(1e3*e);F[t>>2]=r.getSeconds(),F[t+4>>2]=r.getMinutes(),F[t+8>>2]=r.getHours(),F[t+12>>2]=r.getDate(),F[t+16>>2]=r.getMonth(),F[t+20>>2]=r.getFullYear()-1900,F[t+24>>2]=r.getDay();var n=0|ar(r);F[t+28>>2]=n,F[t+36>>2]=-60*r.getTimezoneOffset();var o=new Date(r.getFullYear(),0,1),i=new Date(r.getFullYear(),6,1).getTimezoneOffset(),a=o.getTimezoneOffset(),s=0|(i!=a&&r.getTimezoneOffset()==Math.min(a,i));F[t+32>>2]=s},hh:function(e){var t=(()=>{var t=new Date(F[e+20>>2]+1900,F[e+16>>2],F[e+12>>2],F[e+8>>2],F[e+4>>2],F[e>>2],0),r=F[e+32>>2],n=t.getTimezoneOffset(),o=new Date(t.getFullYear(),0,1),i=new Date(t.getFullYear(),6,1).getTimezoneOffset(),a=o.getTimezoneOffset(),s=Math.min(a,i);if(r<0)F[e+32>>2]=Number(i!=a&&s==n);else if(r>0!=(s==n)){var l=Math.max(a,i),d=r>0?s:l;t.setTime(t.getTime()+6e4*(d-n))}F[e+24>>2]=t.getDay();var c=0|ar(t);F[e+28>>2]=c,F[e>>2]=t.getSeconds(),F[e+4>>2]=t.getMinutes(),F[e+8>>2]=t.getHours(),F[e+12>>2]=t.getDate(),F[e+16>>2]=t.getMonth(),F[e+20>>2]=t.getYear();var u=t.getTime();return isNaN(u)?-1:u/1e3})();return BigInt(t)},gh:function(e,t,r,n,o,i,a){o=nr(o);try{if(isNaN(o))return 61;var s=Ae.getStreamFromFD(n),l=Te.mmap(s,e,o,t,r),d=l.ptr;return F[i>>2]=l.allocated,M[a>>2]=d,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},fh:function(e,t,r,n,o,i){i=nr(i);try{var a=Ae.getStreamFromFD(o);2&r&&Ae.doMsync(e,a,t,n,i)}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},eh:(e,t)=>{if(sr[e]&&(clearTimeout(sr[e].id),delete sr[e]),!t)return 0;var r=setTimeout((()=>{delete sr[e],hr((()=>Yl(e,fr())))}),t);return sr[e]={id:r,timeout_ms:t},0},dh:(e,t,r,n)=>{var o=(new Date).getFullYear(),i=new Date(o,0,1),a=new Date(o,6,1),s=i.getTimezoneOffset(),l=a.getTimezoneOffset(),d=Math.max(s,l);M[e>>2]=60*d,F[t>>2]=Number(s!=l);var c=e=>{var t=e>=0?"-":"+",r=Math.abs(e);return`UTC${t}${String(Math.floor(r/60)).padStart(2,"0")}${String(r%60).padStart(2,"0")}`},u=c(s),p=c(l);l<s?(de(u,r,17),de(p,n,17)):(de(u,n,17),de(p,r,17))},ch:function(e){var t=Z(e);localStorage.removeItem(t)},Dh:function(e,t,r){if(t=nr(t),!((n=e)>=0&&n<=3))return 28;var n,o;o=0===e?gr():fr();var i=Math.round(1e3*o*1e3);return D[r>>3]=BigInt(i),0},Pa:(e,t,r,n,o)=>yr.chooseConfig(e,t,r,n,o),Oa:(e,t,r,n)=>{if(62e3!=e)return yr.setErrorCode(12296),0;for(var o=1;;){var i=F[n>>2];if(12440!=i){if(12344==i)break;return yr.setErrorCode(12292),0}o=F[n+4>>2],n+=8}return o<2||o>3?(yr.setErrorCode(12293),0):(yr.contextAttributes.majorVersion=o-1,yr.contextAttributes.minorVersion=0,yr.context=vr.createContext(br.getCanvas(),yr.contextAttributes),0!=yr.context?(yr.setErrorCode(12288),vr.makeContextCurrent(yr.context),br.useWebGL=!0,br.moduleContextCreatedCallbacks.forEach((e=>e())),vr.makeContextCurrent(null),62004):(yr.setErrorCode(12297),0))},bh:(e,t,r,n)=>62e3!=e?(yr.setErrorCode(12296),0):62002!=t?(yr.setErrorCode(12293),0):(yr.setErrorCode(12288),62006),Na:(e,t)=>62e3!=e?(yr.setErrorCode(12296),0):62004!=t?(yr.setErrorCode(12294),0):(vr.deleteContext(yr.context),yr.setErrorCode(12288),yr.currentContext==t&&(yr.currentContext=0),1),na:(e,t)=>62e3!=e?(yr.setErrorCode(12296),0):62006!=t?(yr.setErrorCode(12301),1):(yr.currentReadSurface==t&&(yr.currentReadSurface=0),yr.currentDrawSurface==t&&(yr.currentDrawSurface=0),yr.setErrorCode(12288),1),Z:(e,t,r,n)=>{if(62e3!=e)return yr.setErrorCode(12296),0;if(62002!=t)return yr.setErrorCode(12293),0;if(!n)return yr.setErrorCode(12300),0;switch(yr.setErrorCode(12288),r){case 12320:return F[n>>2]=yr.contextAttributes.alpha?32:24,1;case 12321:return F[n>>2]=yr.contextAttributes.alpha?8:0,1;case 12322:case 12323:case 12324:return F[n>>2]=8,1;case 12325:return F[n>>2]=yr.contextAttributes.depth?24:0,1;case 12326:return F[n>>2]=yr.contextAttributes.stencil?8:0,1;case 12327:case 12335:case 12340:return F[n>>2]=12344,1;case 12328:return F[n>>2]=62002,1;case 12329:case 12333:case 12334:case 12345:case 12346:case 12347:case 12349:case 12350:case 12354:return F[n>>2]=0,1;case 12330:case 12332:return F[n>>2]=4096,1;case 12331:return F[n>>2]=16777216,1;case 12337:return F[n>>2]=yr.contextAttributes.antialias?4:0,1;case 12338:return F[n>>2]=yr.contextAttributes.antialias?1:0,1;case 12339:case 12352:return F[n>>2]=4,1;case 12341:case 12342:case 12343:return F[n>>2]=-1,1;case 12348:return F[n>>2]=1,1;case 12351:return F[n>>2]=12430,1;default:return yr.setErrorCode(12292),0}},ah:e=>(yr.setErrorCode(12288),0!=e&&1!=e?0:62e3),Ma:()=>yr.errorCode,$g:(e,t,r)=>62e3!=e?(yr.setErrorCode(12296),0):(t&&(F[t>>2]=1),r&&(F[r>>2]=4),yr.defaultDisplayInitialized=!0,yr.setErrorCode(12288),1),ga:(e,t,r,n)=>62e3!=e?(yr.setErrorCode(12296),0):0!=n&&62004!=n?(yr.setErrorCode(12294),0):0!=r&&62006!=r||0!=t&&62006!=t?(yr.setErrorCode(12301),0):(vr.makeContextCurrent(n?yr.context:null),yr.currentContext=n,yr.currentDrawSurface=t,yr.currentReadSurface=r,yr.setErrorCode(12288),1),ma:(e,t)=>{if(62e3!=e)return yr.setErrorCode(12296),0;if(yr.setErrorCode(12288),yr.stringCache[t])return yr.stringCache[t];var r;switch(t){case 12371:r=ce("Emscripten");break;case 12372:r=ce("1.4 Emscripten EGL");break;case 12373:r=ce("");break;case 12429:r=ce("OpenGL_ES");break;default:return yr.setErrorCode(12300),0}return yr.stringCache[t]=r,r},La:(e,t)=>{if(yr.defaultDisplayInitialized)if(Mt){if(!Mt.isContextLost())return yr.setErrorCode(12288),1;yr.setErrorCode(12302)}else yr.setErrorCode(12290);else yr.setErrorCode(12289);return 0},_g:e=>62e3!=e?(yr.setErrorCode(12296),0):(yr.currentContext=0,yr.currentReadSurface=0,yr.currentDrawSurface=0,yr.defaultDisplayInitialized=!1,yr.setErrorCode(12288),1),G:(e,t,r)=>kr(e,t,r),Zg:e=>{console.error(Z(e))},Yg:e=>{console.log(Z(e))},Xg:e=>{console.warn(Z(e))},Ka:gr,Wg:()=>{},Vg:()=>2147483648,Ug:_r,Tg:Er,Sg:Cr,Rg:Sr,Qg:Pr,Pg:xr,Og:Tr,Ng:Ar,Mg:Fr,Lg:Mr,Kg:Ir,Jg:Dr,Ig:Br,Hg:Rr,Gg:Or,Fg:$r,Eg:qr,Dg:Wr,Cg:Hr,Bg:Nr,Ag:Vr,zg:zr,yg:Gr,xg:jr,wg:Xr,vg:Yr,ug:Kr,tg:Qr,sg:Zr,rg:Jr,qg:en,pg:tn,og:rn,Ja:nn,ng:on,mg:an,lg:sn,kg:ln,jg:dn,ig:cn,hg:un,gg:pn,fg:hn,eg:fn,dg:gn,cg:mn,bg:bn,ag:yn,$f:vn,_f:wn,Zf:kn,Yf:_n,Xf:En,Wf:Cn,Vf:Sn,Uf:Pn,Tf:xn,Sf:Tn,Rf:An,Qf:Mn,Pf:Dn,Of:Bn,Nf:Rn,Mf:Ln,Lf:On,Kf:Un,Jf:$n,If:qn,Hf:Hn,Gf:Vn,Ff:Gn,Ef:jn,Df:Yn,Cf:Qn,Bf:eo,Af:ro,zf:oo,yf:ao,xf:lo,wf:uo,vf:ho,uf:fo,tf:mo,sf:yo,rf:vo,qf:wo,pf:ko,of:_o,nf:Eo,mf:Co,lf:So,kf:Po,jf:xo,hf:To,gf:Ao,ff:Fo,ef:Mo,df:Io,cf:Do,bf:Bo,af:Ro,$e:Lo,_e:Oo,Ze:Uo,Ye:$o,Xe:Wo,We:No,Ve:Vo,Ue:Go,Te:jo,Se:Xo,Re:Yo,Qe:Ko,Pe:Qo,Oe:Zo,Ne:ri,Me:ni,Le:oi,Ke:ii,Je:ai,Ie:si,He:li,Ge:ci,Fe:ui,Ee:pi,De:hi,Ce:fi,Be:gi,Ae:mi,ze:bi,ye:vi,xe:ki,we:Ei,ve:Ci,ue:Pi,te:xi,se:Ti,re:Ai,qe:Fi,pe:Mi,oe:Ii,ne:Di,me:Bi,le:Ri,Ia:Li,ke:Oi,je:Ui,ie:$i,he:qi,ge:Wi,fe:Hi,ee:Ni,de:Gi,ce:Yi,be:Ki,ae:Qi,$d:ea,_d:ra,Zd:na,Yd:oa,Xd:ia,Wd:aa,Vd:sa,Ud:la,Td:da,Sd:ca,Rd:ua,Qd:pa,Pd:ha,Od:fa,Nd:ga,Md:ma,Ld:ba,Kd:ya,Jd:va,Id:wa,Hd:_a,Gd:Ca,Fd:Sa,Ed:Pa,Dd:xa,Cd:Ta,Bd:Aa,Ad:Fa,zd:Ma,yd:Ia,xd:Da,wd:Ba,vd:Ra,ud:La,td:Oa,sd:Wa,rd:Ha,qd:Na,pd:Va,od:za,nd:Ga,md:ja,ld:Xa,kd:Ya,jd:Ka,id:Qa,hd:Za,gd:Ja,fd:es,ed:ts,dd:rs,cd:ns,bd:os,ad:is,$c:as,_c:ss,Zc:ls,Yc:ds,Xc:cs,Wc:us,Vc:ps,Uc:hs,Tc:fs,Sc:gs,Rc:ms,Qc:bs,Pc:vs,Oc:ws,Nc:_s,Mc:Es,Lc:Cs,Kc:Ss,Jc:Ps,Ic:xs,Hc:Ts,Gc:As,Fc:Fs,Ec:Ms,Dc:Is,Cc:Ds,Bc:Bs,Ac:Rs,zc:Ls,yc:Os,xc:Us,wc:$s,vc:qs,uc:Ws,tc:Hs,sc:Ns,rc:Vs,qc:zs,pc:Gs,oc:js,nc:Xs,mc:Ys,lc:Ks,kc:Qs,jc:Zs,ic:Js,hc:el,gc:tl,fc:rl,ec:nl,dc:ol,cc:il,bc:al,ac:sl,$b:ll,_b:cl,Zb:ul,Yb:pl,Xb:hl,Wb:fl,Vb:gl,Ub:ml,Tb:bl,Sb:yl,Rb:vl,Qb:wl,Pb:kl,Ha:_l,Ob:e=>{var t=x.length,r=2147483648;if((e>>>=0)>r)return!1;for(var n=1;n<=4;n*=2){var o=t*(1+.2/n);o=Math.min(o,e+100663296);var i=Math.min(r,ke(Math.max(e,o),65536));if(El(i))return!0}return!1},Nb:function(e,t,r,n,o,i,a,s,d){const c=l.UTF8ToString(e,e+t),u=l.HEAPU8.subarray(o,o+i),p=l.emscripten_ubq_codec_audioDecoderNextHandle++,h={codec:c,sampleRate:r,numberOfChannels:n};u.length>0&&(h.description=u);try{const e=l.emscripten_ubq_codec_createAudioDecoder(a,s,d);AudioDecoder.isConfigSupported(h).then((t=>{e.configUnsupported=!t}),(()=>{e.configUnsupported=!0})),e.configure(h),l.emscripten_ubq_codec_audioDecoders.set(p,{audioDecoder:e,decoderConfig:h,leftBufferPtr:a,rightBufferPtr:s,bufferLength:d,opfsUri:""})}catch(e){return l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:p})},Mb:function(e,t,r,n,o,i){const a=l.UTF8ToString(e,e+t),s=l.emscripten_ubq_codec_audioEncoderNextHandle++,d={codec:a,sampleRate:r,numberOfChannels:n,bitrate:o};try{const e=new AudioEncoder({output:e=>{const t=l._malloc(e.byteLength),r=l.HEAPU8.subarray(t,t+e.byteLength);e.copyTo(r),l.emscripten_ubq_codec_onOutputEncodedAudioChunk(s,t,e.byteLength,i),l._free(t)},error:e=>{l.emscripten_ubq_codec_audioEncoders.get(s).frameIndex>1&&console.error(e)}});e.configure(d),l.emscripten_ubq_codec_audioEncoders.set(s,{audioEncoder:e,audioEncoderConfig:d,frameIndex:0})}catch(e){return e+=' Requested codec: "'+a+'"',e+="; sample rate: "+r,e+="; channels: "+n,e+="; bit rate: "+o,l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:s})},Lb:function(e,t,r,n,o,i,a,s){const d=l.UTF8ToString(e,e+t),c=l.HEAPU8.subarray(i,i+a),u=l.emscripten_ubq_codec_videoDecoderNextHandle++,p={codec:d,codedWidth:r,codedHeight:n,description:c,optimizeForLatency:!0};try{const e=l.emscripten_ubq_codec_createVideoDecoder(u,o,s);VideoDecoder.isConfigSupported(p).then((t=>{e.configUnsupported=!t.supported}),(t=>{e.configUnsupported=!0})),e.configure(p),l.emscripten_ubq_codec_videoDecoders.set(u,{videoDecoder:e,decoderConfig:p,codecServicePtr:s,isHdr:o,opfsUri:""})}catch(e){return l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:u})},Kb:function(e,t,r,n,o,i,a){const s=l.UTF8ToString(e,e+t),d=l.emscripten_ubq_codec_videoEncoderNextHandle++,c=l.specialHTMLTargets["!canvas"];c.width=r,c.height=n;const u={codec:s,width:r,height:n,avc:{format:"annexb"},framerate:o};i>0&&(u.bitrate=i);try{const e=new VideoEncoder({output:e=>{const t=l._malloc(e.byteLength),r=l.HEAPU8.subarray(t,t+e.byteLength);e.copyTo(r),l.emscripten_ubq_codec_onOutputEncodedVideoChunk(d,t,e.byteLength,a),l._free(t)},error:e=>console.error(e)});VideoEncoder.isConfigSupported(u).then((t=>{e.configUnsupported=!t}),(()=>{e.configUnsupported=!0})),e.configure(u),l.emscripten_ubq_codec_videoEncoders.set(d,{videoEncoder:e,encoderConfig:u,groupOfPictures:150,frameIndex:0})}catch(e){return e+=' Requested codec: "'+s+'"',e+="; resolution: "+r+"x"+n,l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:d})},Jb:function(e,t,r,n,o,i){const a=l.emscripten_ubq_codec_audioDecoders.get(e);if(a.audioDecoder.unexpectedError)return l.emscripten_ubq_codec_createNativeResult({code:2,error:a.audioDecoder.unexpectedError});"closed"===a.audioDecoder.state&&(a.audioDecoder=l.emscripten_ubq_codec_createAudioDecoder(a.leftBufferPtr,a.rightBufferPtr,a.bufferLength),a.audioDecoder.configure(a.decoderConfig));const s=a.audioDecoder,d=l.HEAPU8.subarray(o,o+i),c=new EncodedAudioChunk({type:t?"key":"delta",timestamp:r,duration:n,data:d});try{s.decode(c)}catch(e){return s.configUnsupported?l.emscripten_ubq_codec_createNativeResult({code:2,error:e}):l.emscripten_ubq_codec_createNativeResult({code:1,error:e})}return l.emscripten_ubq_codec_createNativeResult({code:0})},Ib:function(e,t,r,n,o,i,a,s){const d=l.emscripten_ubq_codec_videoDecoders.get(e);if(d.videoDecoder.unexpectedError)return l.emscripten_ubq_codec_createNativeResult({code:2,error:d.videoDecoder.unexpectedError});if("closed"===d.videoDecoder.state){const t=d.videoDecoder.textures;return d.videoDecoder=l.emscripten_ubq_codec_createVideoDecoder(e,d.isHdr,d.codecServicePtr),d.videoDecoder.textures=t,d.videoDecoder.configure(d.decoderConfig),l.emscripten_ubq_codec_destroyAlphaState(e),l.emscripten_ubq_codec_createNativeResult({code:1,error:"VideoDecoder was closed"})}const c=l.HEAPU8.subarray(o,o+i),u=Number.isFinite(r)?r:0,p=new EncodedVideoChunk({type:t?"key":"delta",timestamp:u,duration:n,data:c});let h=!1,f=null;a&&s>0&&(f=l.emscripten_ubq_codec_prepareAlphaState(e,d.decoderConfig),f&&(h=!0,l.emscripten_ubq_codec_markAlphaExpected(e,u)));try{d.videoDecoder.decode(p)}catch(t){return h&&l.emscripten_ubq_codec_alphaCancelExpectation(e,u),d.videoDecoder.configUnsupported?l.emscripten_ubq_codec_createNativeResult({code:2,error:t}):l.emscripten_ubq_codec_createNativeResult({code:1,error:t})}if(h&&f&&f.decoder&&"closed"!==f.decoder.state&&!f.decoder.unexpectedError){const r=l.HEAPU8.subarray(a,a+s),o=new EncodedVideoChunk({type:t?"key":"delta",timestamp:u,duration:n,data:r});try{f.decoder.decode(o)}catch(t){console.error("Alpha decode error:",t),l.emscripten_ubq_codec_alphaCancelExpectation(e,u)}}else h&&l.emscripten_ubq_codec_alphaCancelExpectation(e,u);return l.emscripten_ubq_codec_createNativeResult({code:0})},Ga:function(e){if(l.emscripten_ubq_codec_audioDecoders.has(e)){const t=l.emscripten_ubq_codec_audioDecoders.get(e);if("closed"!==t.audioDecoder.state&&t.audioDecoder.close(),t.opfsUri&&""!==t.opfsUri){const e=l.emscripten_ubq_opfs_getCache(t.opfsUri);e&&e.worker&&(l.emscripten_ubq_opfs_destroyWorker(e.worker),e.worker=null,e.workerOpened=!1,e.workerOpening=null)}l.emscripten_ubq_codec_audioDecoders.delete(e)}},Fa:function(e){const t=l.emscripten_ubq_codec_audioEncoders.get(e);"closed"!==t.audioEncoder.state&&t.audioEncoder.close(),l.emscripten_ubq_codec_audioEncoders.delete(e)},Ea:function(e){if(l.emscripten_ubq_codec_videoDecoders.has(e)){const t=l.emscripten_ubq_codec_videoDecoders.get(e);if("closed"!==t.videoDecoder.state&&t.videoDecoder.close(),l.emscripten_ubq_codec_destroyAlphaState(e),t.opfsUri&&""!==t.opfsUri){const e=l.emscripten_ubq_opfs_getCache(t.opfsUri);e&&e.worker&&(l.emscripten_ubq_opfs_destroyWorker(e.worker),e.worker=null,e.workerOpened=!1,e.workerOpening=null)}l.emscripten_ubq_codec_videoDecoders.delete(e)}},Da:function(e){const t=l.emscripten_ubq_codec_videoEncoders.get(e);"closed"!==t.videoEncoder.state&&t.videoEncoder.close(),l.emscripten_ubq_codec_videoEncoders.delete(e)},Ca:function(e,t,r){const n=1e6,o=l.emscripten_ubq_codec_audioEncoders.get(e),i=o.audioEncoderConfig.sampleRate,a=o.audioEncoderConfig.numberOfChannels,s=r/a,d=Math.round(n*(o.frameIndex*s/i)),c=Math.round(n*(s/i)),u=l.HEAPF32.subarray(t/4,t/4+r),p=new AudioData({format:"f32",sampleRate:i,numberOfFrames:s,numberOfChannels:a,duration:c,timestamp:d,data:u});o.audioEncoder.encode(p),o.frameIndex++,p.close()},Hb:function(e,t,r){const n=1e6,o=l.emscripten_ubq_codec_videoEncoders.get(e),i=Math.round(n*(o.frameIndex/o.encoderConfig.framerate)),a=o.frameIndex%o.groupOfPictures==0,s=Math.round(n/o.encoderConfig.framerate),d=l.specialHTMLTargets["!canvas"],c=new VideoFrame(d,{timestamp:i,duration:s});o.videoEncoder.encode(c,{keyFrame:a}),c.close(),o.frameIndex++},Gb:async function(e,t){const r=l.emscripten_ubq_codec_audioEncoders.get(e);try{await r.audioEncoder.flush()}catch{if(r.frameIndex>1)throw new Error("AudioEncoder.flush() failed")}l.emscripten_ubq_codec_onFinalizedAudioEncoding(e,t)},Fb:async function(e,t){const r=l.emscripten_ubq_codec_videoEncoders.get(e);await r.videoEncoder.flush(),l.emscripten_ubq_codec_onFinalizedVideoEncoding(e,t)},Eb:async function(e,t){const r=l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder;r.flushing=!0;try{await r.flush()}catch{}r.flushing=!1,r.writtenFrames=t},S:async function(e,t,r){const n=l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder;n.shouldDropFrames=r,n.flushing=!0;try{await n.flush()}catch{}n.flushing=!1,n.shouldDropFrames=!1,n.decodedFrames=t},Ba:function(e){return l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder.decodeQueueSize},fa:function(e){return l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder.decodedFrames},$:function(e){return l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder.writtenFrames},Db:function(e){return l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder.flushing},Cb:function(e){return l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder.flushing},Bb:function(){if("undefined"==typeof navigator||"string"!=typeof navigator.userAgent)return 0;const e=navigator.userAgent;return!e.includes("Safari")||e.includes("Chrome")||e.includes("Chromium")||e.includes("Android")?0:1},ea:function(){return"undefined"!=typeof VideoFrame&&"undefined"!=typeof VideoDecoder&&"undefined"!=typeof VideoEncoder&&"undefined"!=typeof AudioDecoder&&"undefined"!=typeof AudioEncoder},Ab:function(e,t,r,n,o,i,a){const s=l.emscripten_ubq_codec_videoDecoders.get(e),d=l.UTF8ToString(t,t+r),c=l.HEAPU8.subarray(i,i+a);s.videoDecoder.configure({codec:d,codedWidth:n,codedHeight:o,description:c})},la:function(e,t,r){const n=l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder;n.requestedPresentationFrame=t,n.requestedDecodeChunk=r;const o=1===l._isSafariHelper()?r:t;n.targetFrameForScheduling=o>=0?o:0},zb:function(e,t){l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder.reorderWindow=t},yb:function(e,t,r,n,o){const i=l.emscripten_ubq_codec_videoDecoders.get(e),a=l.HEAPU32.subarray(t/4,t/4+r);i.videoDecoder.textures=[];for(let e=0;e<r;e++)i.videoDecoder.textures[e]=vr.textures[a[e]];i.videoDecoder.textureWidth=n,i.videoDecoder.textureHeight=o},xb:async function(e,t,r,n,o,i,a,s,d,c){const u=l.UTF8ToString(e),p=l.emscripten_ubq_codec_audioDecoders.get(t);p&&(p.opfsUri=u);const h=l._malloc(s);try{const r=await l.emscripten_ubq_opfs_getChunkDataAsync(e,i,a,s,h);return r===s?(l.emscripten_ubq_codec_onAudioChunkLoaded(t,d,h,s,c),1):-1===r?(console.error(`[Codec] Error retrieving chunk data for ${u} at offset ${i}. OPFS loading failed.`),0):(console.warn(`[Codec] Incomplete data read for ${u} at offset ${i}. Expected ${s}, got ${r}`),0)}catch(e){return console.error(`[Codec] Error in submitChunkedData for ${u}:`,e),0}finally{l._free(h)}},wb:async function(e,t,r,n,o,i,a,s,d,c){const u=l.UTF8ToString(e),p=l.emscripten_ubq_codec_videoDecoders.get(t);p&&(p.opfsUri=u);const h=l._malloc(s);try{const r=await l.emscripten_ubq_opfs_getChunkDataAsync(e,i,a,s,h);return r===s?(l.emscripten_ubq_codec_onVideoChunkLoaded(t,d,h,s,c),1):-1===r?(console.error(`[Codec] Error retrieving chunk data for ${u} at offset ${i}. OPFS loading failed.`),0):(console.warn(`[Codec] Incomplete data read for ${u} at offset ${i}. Expected ${s}, got ${r}`),0)}catch(e){return console.error(`[Codec] Error in submitChunkedData for ${u}:`,e),0}finally{l._free(h)}},vb:function(e){const t=l.emscripten_ubq_asyncFetchManager.getProcess(e);return!!(null==t?void 0:t.allocate())},ka:function(){l.emscripten_ubq_asyncFetchManager.clear()},ja:function(e,t,r,n){return l.emscripten_ubq_asyncFetchManager.createHeader(e,t,r,n)},ub:function(e){l.emscripten_ubq_asyncFetchManager.deleteHeader(e)},tb:function(e,t,r,n,o,i,a,s,d){return l.emscripten_ubq_asyncFetchManager.fetch(e,t,r,n,o,i,a,s,d).handle},Y:function(e){return l.emscripten_ubq_asyncFetchManager.deleteProcess(e)},sb:function(e){var t,r;return null!==(r=null===(t=l.emscripten_ubq_asyncFetchManager.getProcess(e))||void 0===t?void 0:t.receivedLength)&&void 0!==r?r:0},rb:function(e){const t=l.emscripten_ubq_asyncFetchManager.getProcess(e);return(null==t?void 0:t.isAllocated())?t.resultAddress:-1},qb:function(e){const t=l.emscripten_ubq_asyncFetchManager.getProcess(e);return(null==t?void 0:t.isAllocated())?t.resultLength:-1},X:function(e){var t,r;return null!==(r=null===(t=l.emscripten_ubq_asyncFetchManager.getProcess(e))||void 0===t?void 0:t.state)&&void 0!==r?r:-1},pb:function(e){var t,r;return null!==(r=null===(t=l.emscripten_ubq_asyncFetchManager.getProcess(e))||void 0===t?void 0:t.totalBytes)&&void 0!==r?r:0},ob:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_writerCaches.get(t);if(!r)return 0;const n=l.emscripten_ubq_opfs_ensureWriteWorker(t,r),o=n.get(),i=e=>{if(e.data&&e.data.closed){try{o.removeEventListener("message",i)}catch(e){}l.emscripten_ubq_opfs_destroyWriterWorker(n),r.worker=null,r.workerOpened=!1,r.workerOpening=null,r.fileHandle=null,l.emscripten_ubq_opfs_writerCaches.delete(t)}};try{o.addEventListener("message",i)}catch(e){}return n.post({close:!0}),0},R:function(e,t,r,n,o){const i=Z(e),a=4294967296*(r>>>0)+(t>>>0);if(n<=0)return 0;const s=l.emscripten_ubq_opfs_CHUNK_SIZE,d=l.emscripten_ubq_opfs_getCache(i),c=x.subarray(o,o+n);let u=0,p=a;const h=Math.min(a+n,d.fileSize);for(;p<h;){const e=Math.floor(p/s),t=d.chunkCache.get(e);if(!t)return-1;l.emscripten_ubq_opfs_updateAccess(d,e);const r=p-e*s,n=Math.min(t.byteLength-r,h-p);c.set(t.subarray(r,r+n),u),u+=n,p+=n}return u},ia:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_getCache(t);return l.emscripten_ubq_opfs_ensureFile(t,r),BigInt(r.fileSize)},W:function(e,t,r,n){const o=Z(e),i=4294967296*(r>>>0)+(t>>>0),a=l.emscripten_ubq_opfs_CHUNK_SIZE,s=l.emscripten_ubq_opfs_getCache(o),d=Math.floor(i/a),c=Math.floor((i+n)/a);for(let e=d;e<=c;++e){if(!s.chunkCache.has(e))return 0;l.emscripten_ubq_opfs_updateAccess(s,e)}return 1},nb:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_getCache(t);return r.fileSize>=0||(l.emscripten_ubq_opfs_ensureFile(t,r),!1)},mb:function(e){const t=Z(e);let r=l.emscripten_ubq_opfs_writerCaches.get(t);if(r||(r={pending:0,worker:null,openPromise:null,fileHandle:null,workerOpened:!1,workerOpening:null},l.emscripten_ubq_opfs_writerCaches.set(t,r)),!r.workerOpened&&!r.workerOpening){const e=l.emscripten_ubq_opfs_ensureWriteWorker(t,r);r.workerOpening=(async()=>{await l.emscripten_ubq_opfs_ensureWriteFile(t,r),e.post({open:!0,uri:t}),await new Promise(((t,r)=>{const n=e.get(),o=e=>{e.data&&(!0===e.data.ready?(n.removeEventListener("message",o),t()):!1===e.data.ready&&(n.removeEventListener("message",o),r(new Error(e.data.error||"Failed to open OPFS writer handle"))))};n.addEventListener("message",o)})),r.workerOpened=!0})().finally((()=>{r.workerOpening=null}))}return r.workerOpened?1:0},lb:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_writerCaches.get(t);return r&&r.pending||0},V:function(e,t,r,n){const o=Z(e),i=4294967296*(r>>>0)+(t>>>0),a=l.emscripten_ubq_opfs_CHUNK_SIZE,s=l.emscripten_ubq_opfs_getCache(o),d=Math.floor(i/a),c=Math.floor((i+n)/a);let u=!0;for(let e=d;e<=c;++e)s.chunkCache.has(e)?l.emscripten_ubq_opfs_updateAccess(s,e):(u=!1,l.emscripten_ubq_opfs_loadChunk(o,s,e));return u?1:0},kb:function(e,t,r,n,o){return async function(e,t,r,n,o){if(n<=0)return 0;const i=Z(e),a=4294967296*(r>>>0)+(t>>>0);let s=l.emscripten_ubq_opfs_writerCaches.get(i);s||(s={pending:0,worker:null,openPromise:null,fileHandle:null},l.emscripten_ubq_opfs_writerCaches.set(i,s));const d=new Uint8Array(n);d.set(l.HEAPU8.subarray(o,o+n));const c=l.emscripten_ubq_opfs_ensureWriteWorker(i,s);return s.workerOpened||(s.workerOpening||(s.workerOpening=(async()=>{await l.emscripten_ubq_opfs_ensureWriteFile(i,s),c.post({open:!0,uri:i}),await new Promise(((e,t)=>{const r=c.get(),n=o=>{o.data&&(!0===o.data.ready?(r.removeEventListener("message",n),e()):!1===o.data.ready&&(r.removeEventListener("message",n),t(new Error(o.data.error||"Failed to open OPFS writer handle"))))};r.addEventListener("message",n)})),s.workerOpened=!0})().finally((()=>{s.workerOpening=null}))),await s.workerOpening),new Promise(((e,t)=>{void 0===l.emscripten_ubq_opfs_writeTagCounter&&(l.emscripten_ubq_opfs_writeTagCounter=0);const r=++l.emscripten_ubq_opfs_writeTagCounter;s.pending=(s.pending||0)+1;const o=c.get(),i=a=>{a.data&&a.data.tag===r&&(o.removeEventListener("message",i),s.pending-=1,a.data.error?t(new Error(a.data.error)):e(n))};o.addEventListener("message",i),c.post({write:{offset:a,buf:d.buffer,tag:r}},[d.buffer])}))}(e,t,r,n,o).catch((e=>{console.error("[OPFS] writeChunk failed:",e)})),0},jb:function(){return!!l.emscripten_ubq_settings_forceWebGL1},Aa:xl,da:e=>{vr.currentContext==e&&(vr.currentContext=0),vr.deleteContext(e)},ib:e=>(e=>{var t=e.getExtension("OES_vertex_array_object");if(t)return e.createVertexArray=()=>t.createVertexArrayOES(),e.deleteVertexArray=e=>t.deleteVertexArrayOES(e),e.bindVertexArray=e=>t.bindVertexArrayOES(e),e.isVertexArray=e=>t.isVertexArrayOES(e),1})(vr.contexts[e].GLctx),hb:e=>(e=>{var t=e.getExtension("WEBGL_draw_buffers");if(t)return e.drawBuffers=(e,r)=>t.drawBuffersWEBGL(e,r),1})(vr.contexts[e].GLctx),gb:e=>(e=>!!(e.multiDrawWebgl=e.getExtension("WEBGL_multi_draw")))(vr.contexts[e].GLctx),ca:(e,t)=>{var r=vr.getContext(e),n=Z(t);return n.startsWith("GL_")&&(n=n.slice(3)),!!r.GLctx.getExtension(n)},fb:(e,t)=>{if(!t)return-5;if(!(e=vr.contexts[e]))return-3;var r=e.GLctx;if(!r)return-3;r=r.getContextAttributes(),P[t]=r.alpha,P[t+1]=r.depth,P[t+2]=r.stencil,P[t+3]=r.antialias,P[t+4]=r.premultipliedAlpha,P[t+5]=r.preserveDrawingBuffer;var n=r.powerPreference&&Cl.indexOf(r.powerPreference);return F[t+8>>2]=n,P[t+12]=r.failIfMajorPerformanceCaveat,F[t+16>>2]=e.version,F[t+20>>2]=0,0},eb:e=>vr.makeContextCurrent(e)?0:-5,Ch:(e,t)=>{var r=0;return Al().forEach(((n,o)=>{var i=t+r;M[e+4*o>>2]=i,((e,t)=>{for(var r=0;r<e.length;++r)P[t++]=e.charCodeAt(r);P[t]=0})(n,i),r+=n.length+1})),0},Bh:(e,t)=>{var r=Al();M[e>>2]=r.length;var n=0;return r.forEach((e=>n+=e.length+1)),M[t>>2]=n,0},za:pr,qa:function(e){try{var t=Ae.getStreamFromFD(e);return Te.close(t),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},Ah:function(e,t){try{var r=Ae.getStreamFromFD(e),n=r.tty?2:Te.isDir(r.mode)?3:Te.isLink(r.mode)?7:4;return P[t]=n,T[t+2>>1]=0,D[t+8>>3]=BigInt(0),D[t+16>>3]=BigInt(0),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},zh:function(e,t,r,n,o){n=nr(n);try{if(isNaN(n))return 61;var i=Ae.getStreamFromFD(e),a=Fl(i,t,r,n);return M[o>>2]=a,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},Va:function(e,t,r,n){try{var o=Ae.getStreamFromFD(e),i=Fl(o,t,r);return M[n>>2]=i,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},yh:function(e,t,r,n){t=nr(t);try{if(isNaN(t))return 61;var o=Ae.getStreamFromFD(e);return Te.llseek(o,t,r),D[n>>3]=BigInt(o.position),o.getdents&&0===t&&0===r&&(o.getdents=null),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},xh:function(e,t,r,n){try{var o=((e,t,r,n)=>{for(var o=0,i=0;i<r;i++){var a=M[t>>2],s=M[t+4>>2];t+=8;var l=Te.write(e,P,a,s,n);if(l<0)return-1;if(o+=l,l<s)break;void 0!==n&&(n+=l)}return o})(Ae.getStreamFromFD(e),t,r);return M[n>>2]=o,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},db:function(e){var t=Z(e),r=localStorage.getItem(t);return null==r?null:ce(r)},cb:function(){return"undefined"!=typeof window?ce(window.location.hostname):ce("")},A:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},L:function(e,t){var r=ae();try{return Ct(e)(t)}catch(e){if(ie(r),e!==e+0)throw e;Kl(1,0)}},F:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},m:function(e,t,r,n){var o=ae();try{return Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},bb:function(e){var t=ae();try{return Ct(e)()}catch(e){if(ie(t),e!==e+0)throw e;Kl(1,0)}},ya:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},r:function(e,t){var r=ae();try{return Ct(e)(t)}catch(e){if(ie(r),e!==e+0)throw e;Kl(1,0)}},_:function(e,t,r,n,o,i,a,s,l,d,c,u,p,h,f,g){var m=ae();try{return Ct(e)(t,r,n,o,i,a,s,l,d,c,u,p,h,f,g)}catch(e){if(ie(m),e!==e+0)throw e;Kl(1,0)}},q:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},t:function(e,t,r,n){var o=ae();try{return Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},U:function(e,t,r,n,o){var i=ae();try{return Ct(e)(t,r,n,o)}catch(e){if(ie(i),e!==e+0)throw e;Kl(1,0)}},ab:function(e,t,r,n,o,i){var a=ae();try{return Ct(e)(t,r,n,o,i)}catch(e){if(ie(a),e!==e+0)throw e;Kl(1,0)}},xa:function(e,t,r,n,o,i,a){var s=ae();try{return Ct(e)(t,r,n,o,i,a)}catch(e){if(ie(s),e!==e+0)throw e;Kl(1,0)}},wa:function(e,t,r,n,o,i,a,s,l,d){var c=ae();try{return Ct(e)(t,r,n,o,i,a,s,l,d)}catch(e){if(ie(c),e!==e+0)throw e;Kl(1,0)}},T:function(e){var t=ae();try{Ct(e)()}catch(e){if(ie(t),e!==e+0)throw e;Kl(1,0)}},w:function(e,t){var r=ae();try{Ct(e)(t)}catch(e){if(ie(r),e!==e+0)throw e;Kl(1,0)}},C:function(e,t,r,n){var o=ae();try{Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},B:function(e,t,r){var n=ae();try{Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},p:function(e,t,r,n){var o=ae();try{Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},D:function(e,t,r,n,o){var i=ae();try{Ct(e)(t,r,n,o)}catch(e){if(ie(i),e!==e+0)throw e;Kl(1,0)}},$a:function(e,t,r,n,o,i){var a=ae();try{Ct(e)(t,r,n,o,i)}catch(e){if(ie(a),e!==e+0)throw e;Kl(1,0)}},_a:function(e,t,r,n,o,i,a){var s=ae();try{Ct(e)(t,r,n,o,i,a)}catch(e){if(ie(s),e!==e+0)throw e;Kl(1,0)}},Za:function(e,t,r,n,o,i,a,s){var l=ae();try{Ct(e)(t,r,n,o,i,a,s)}catch(e){if(ie(l),e!==e+0)throw e;Kl(1,0)}},Ya:function(e,t,r,n,o,i,a,s,l,d){var c=ae();try{Ct(e)(t,r,n,o,i,a,s,l,d)}catch(e){if(ie(c),e!==e+0)throw e;Kl(1,0)}},ba:function(){return"undefined"!=typeof localStorage},va:function(){return"undefined"!=typeof process&&process.versions&&process.versions.node?1:0},ua:function(e,t){const r=Ot.toValue(t),n=l.ctx;n.bindTexture(n.TEXTURE_2D,vr.textures[e]),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,r)},a:E,wh:cr,vh:function(e,t){try{return me(x.subarray(e,e+t)),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},ta:function(e,t){var r=Z(e),n=Z(t);localStorage.setItem(r,n)}},Wl=await async function(){function e(e,t){return Wl=e.exports,yt=Wl.Uh,z(),Wl}V();var t={a:ql};if(l.instantiateWasm)return new Promise(((r,n)=>{l.instantiateWasm(t,((t,n)=>{e(t),r(t.exports)}))}));W??=j();try{var r=await Y(L,W,t);return e(r.instance)}catch(e){return n(e),Promise.reject(e)}}(),Hl=(Wl.Ph,Wl.Qh),Nl=l._malloc=Wl.Rh,Vl=l._free=Wl.Sh,zl=l._main=Wl.Th,Gl=(l._ma_malloc_emscripten=Wl.Vh,l._ma_free_emscripten=Wl.Wh,l._ma_device_process_pcm_frames_capture__webaudio=Wl.Xh),jl=l._ma_device_process_pcm_frames_playback__webaudio=Wl.Yh,Xl=Wl.Zh,Yl=Wl._h,Kl=Wl.$h,Ql=Wl.ai,Zl=Wl.bi,Jl=Wl.ci,ed=Wl.di,td=Wl.ei,rd=Wl.fi,nd=Wl.gi,od=Wl.hi;if(l.addRunDependency=V,l.removeRunDependency=z,l.ccall=(e,t,r,n,o)=>{var i={string:e=>{var t=0;return null!=e&&0!==e&&(t=Il(e)),t},array:e=>{var t,r,n=Ml(e.length);return t=e,r=n,P.set(t,r),n}},a=(e=>l["_"+e])(e),s=[],d=0;if(n)for(var c=0;c<n.length;c++){var u=i[r[c]];u?(0===d&&(d=ae()),s[c]=u(n[c])):s[c]=n[c]}var p,h=a(...s);return p=h,0!==d&&ie(d),h=function(e){return"string"===t?Z(e):"boolean"===t?Boolean(e):e}(p),h},l.getValue=function(e,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":return P[e];case"i16":return T[e>>1];case"i32":return F[e>>2];case"i64":return D[e>>3];case"float":return I[e>>2];case"double":return R[e>>3];case"*":return M[e>>2];default:G(`invalid type for getValue: ${t}`)}},l.UTF8ToString=Z,l.specialHTMLTargets=Sl,l.FS_createPreloadedFile=Pe,l.FS_unlink=e=>Te.unlink(e),l.FS_createPath=Dl,l.FS_createDevice=Rl,l.FS_createDataFile=Ce,l.FS_createLazyFile=Bl,l.preInit)for("function"==typeof l.preInit&&(l.preInit=[l.preInit]);l.preInit.length>0;)l.preInit.pop()();return function e(r=m){function n(){l.calledRun=!0,O||(l.noFSInit||Te.initialized||Te.init(),we.init(),Wl.Ph(),Te.ignorePermissions=!1,t(l),l.onRuntimeInitialized?.(),l.noInitialRun||function(e=[]){var t=zl;e.unshift(b);var r=e.length,n=Ml(4*(r+1)),o=n;e.forEach((e=>{M[o>>2]=Il(e),o+=4})),M[o>>2]=0;try{var i=t(r,n);return ur(i,!0),i}catch(e){return lr(e)}}(r),function(){if(l.postRun)for("function"==typeof l.postRun&&(l.postRun=[l.postRun]);l.postRun.length;)te(l.postRun.shift());J(ee)}())}H>0?N=e:(function(){if(l.preRun)for("function"==typeof l.preRun&&(l.preRun=[l.preRun]);l.preRun.length;)ne(l.preRun.shift());J(re)}(),H>0?N=e:l.setStatus?(l.setStatus("Running..."),setTimeout((()=>{setTimeout((()=>l.setStatus("")),1),n()}),1)):n())}(),d});"object"==typeof e&&"object"==typeof t?(t.exports=n,t.exports.default=n):"function"==typeof define&&define.amd&&define([],(()=>n))}});var x=class extends TypeError{constructor(e,t){let r;const{message:n,...o}=e,{path:i}=e;super(0===i.length?n:"At path: "+i.join(".")+" -- "+n),this.value=void 0,this.key=void 0,this.type=void 0,this.refinement=void 0,this.path=void 0,this.branch=void 0,this.failures=void 0,Object.assign(this,o),this.name=this.constructor.name,this.failures=()=>{var n;return null!=(n=r)?n:r=[e,...t()]}}};function T(e){return"object"==typeof e&&null!=e}function A(e){return"string"==typeof e?JSON.stringify(e):""+e}function F(e,t,r,n){if(!0===e)return;!1===e?e={}:"string"==typeof e&&(e={message:e});const{path:o,branch:i}=t,{type:a}=r,{refinement:s,message:l="Expected a value of type `"+a+"`"+(s?" with refinement `"+s+"`":"")+", but received: `"+A(n)+"`"}=e;return{value:n,type:a,refinement:s,key:o[o.length-1],path:o,branch:i,...e,message:l}}function*M(e,t,r,n){var o;T(o=e)&&"function"==typeof o[Symbol.iterator]||(e=[e]);for(const o of e){const e=F(o,t,r,n);e&&(yield e)}}function*I(e,t,r={}){const{path:n=[],branch:o=[e],coerce:i=!1,mask:a=!1}=r,s={path:n,branch:o};if(i&&(e=t.coercer(e,s),a&&"type"!==t.type&&T(t.schema)&&T(e)&&!Array.isArray(e)))for(const r in e)void 0===t.schema[r]&&delete e[r];let l=!0;for(const r of t.validator(e,s))l=!1,yield[r,void 0];for(let[r,d,c]of t.entries(e,s)){const t=I(d,c,{path:void 0===r?n:[...n,r],branch:void 0===r?o:[...o,d],coerce:i,mask:a});for(const n of t)n[0]?(l=!1,yield[n[0],void 0]):i&&(d=n[1],void 0===r?e=d:e instanceof Map?e.set(r,d):e instanceof Set?e.add(d):T(e)&&(e[r]=d))}if(l)for(const r of t.refiner(e,s))l=!1,yield[r,void 0];l&&(yield[void 0,e])}var D=class{constructor(e){this.TYPE=void 0,this.type=void 0,this.schema=void 0,this.coercer=void 0,this.validator=void 0,this.refiner=void 0,this.entries=void 0;const{type:t,schema:r,validator:n,refiner:o,coercer:i=(e=>e),entries:a=function*(){}}=e;this.type=t,this.schema=r,this.entries=a,this.coercer=i,this.validator=n?(e,t)=>M(n(e,t),t,this,e):()=>[],this.refiner=o?(e,t)=>M(o(e,t),t,this,e):()=>[]}assert(e){return function(e,t){const r=B(e,t);if(r[0])throw r[0]}(e,this)}create(e){return function(e,t){const r=B(e,t,{coerce:!0});if(r[0])throw r[0];return r[1]}(e,this)}is(e){return function(e,t){const r=B(e,t);return!r[0]}(e,this)}mask(e){return function(e,t){const r=B(e,t,{coerce:!0,mask:!0});if(r[0])throw r[0];return r[1]}(e,this)}validate(e,t={}){return B(e,this,t)}};function B(e,t,r={}){const n=I(e,t,r),o=function(e){const{done:t,value:r}=e.next();return t?void 0:r}(n);if(o[0]){return[new x(o[0],(function*(){for(const e of n)e[0]&&(yield e[0])})),void 0]}return[void 0,o[1]]}function R(e,t){return new D({type:e,schema:null,validator:t})}function L(e){return new D({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[r,n]of t.entries())yield[r,n,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||"Expected an array value, but received: "+A(e)})}function O(){return R("boolean",(e=>"boolean"==typeof e))}function U(){return R("integer",(e=>"number"==typeof e&&!isNaN(e)&&Number.isInteger(e)||"Expected an integer, but received: "+A(e)))}function $(){return R("number",(e=>"number"==typeof e&&!isNaN(e)||"Expected a number, but received: "+A(e)))}function q(e){const t=e?Object.keys(e):[],r=R("never",(()=>!1));return new D({type:"object",schema:e||null,*entries(n){if(e&&T(n)){const o=new Set(Object.keys(n));for(const r of t)o.delete(r),yield[r,n[r],e[r]];for(const e of o)yield[e,n[e],r]}},validator:e=>T(e)||"Expected an object, but received: "+A(e),coercer:e=>T(e)?{...e}:e})}function W(e){return new D({...e,validator:(t,r)=>void 0===t||e.validator(t,r),refiner:(t,r)=>void 0===t||e.refiner(t,r)})}function H(){return R("string",(e=>"string"==typeof e||"Expected a string, but received: "+A(e)))}function N(e){const t=Object.keys(e);return new D({type:"type",schema:e,*entries(r){if(T(r))for(const n of t)yield[n,r[n],e[n]]},validator:e=>T(e)||"Expected an object, but received: "+A(e)})}function V(e){const t=e.map((e=>e.type)).join(" | ");return new D({type:"union",schema:null,coercer:(t,r)=>(e.find((e=>{const[r]=e.validate(t,{coerce:!0});return!r}))||R("unknown",(()=>!0))).coercer(t,r),validator(r,n){const o=[];for(const t of e){const[...e]=I(r,t,n),[i]=e;if(!i[0])return[];for(const[t]of e)t&&o.push(t)}return["Expected the value to satisfy a union of `"+t+"`, but received: "+A(r),...o]}})}function z(e,t,r={}){const{exclusive:n}=r;return X(e,"max",(r=>n?r<t:r<=t||"Expected a "+e.type+" less than "+(n?"":"or equal to ")+t+" but received `"+r+"`"))}function G(e,t,r={}){const{exclusive:n}=r;return X(e,"min",(r=>n?r>t:r>=t||"Expected a "+e.type+" greater than "+(n?"":"or equal to ")+t+" but received `"+r+"`"))}function j(e){return X(e,"nonempty",(t=>{const r=function(e){return e instanceof Map||e instanceof Set?e.size:e.length}(t);return r>0||"Expected a nonempty "+e.type+" but received an empty one"}))}function X(e,t,r){return new D({...e,*refiner(n,o){yield*e.refiner(n,o);const i=M(r(n,o),o,e,n);for(const e of i)yield{...e,refinement:t}}})}function Y(e,t,r){const[n]=B(t,r);if(n)throw n.message=`Error in argument '${e}': ${n.message}`,n;return!0}function K(){const e=/image\/(png|jpeg|webp|x-tga)/;return R("ImageMimeType",(t=>!("string"!=typeof t||!e.test(t))||{message:`expected one of "image/png", "image/jpeg", "image/webp" or "image/x-tga", but got "${t}"`}))}function Q(){const e=/audio\/(wav|mp4)/;return R("AudioMimeType",(t=>!("string"!=typeof t||!e.test(t))||{message:`expected "audio/wav" or "audio/mp4", but got "${t}"`}))}function Z(){const e=/application\/(octet-stream|pdf)/;return R("ApplicationMimeType",(t=>!("string"!=typeof t||!e.test(t))||{message:`expected one of "application/octet-stream" or "application/pdf", but got "${t}"`}))}function J(){const e=["Free","VerticalStack","HorizontalStack","DepthStack"];return R("SceneLayout",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function ee(){const e=["Linear","EaseIn","EaseOut","EaseInOut","EaseInQuart","EaseOutQuart","EaseInOutQuart","EaseInQuint","EaseOutQuint","EaseInOutQuint","EaseInBack","EaseOutBack","EaseInOutBack","EaseInSpring","EaseOutSpring","EaseInOutSpring"];return R("AnimationEasing",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function te(){return R("AbortSignal",(e=>{if("undefined"!=typeof AbortSignal&&e instanceof AbortSignal)return!0;return!("object"!=typeof e||null===e||"boolean"!=typeof e.aborted||"function"!=typeof e.addEventListener)||{message:`expected an AbortSignal-like object, but got "${Object.prototype.toString.call(e)}"`}}))}function re(){const e=["Absolute","Percent","Auto"];return R("SizeMode",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function ne(){const e=["Absolute","Percent","Auto"];return R("PositionMode",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function oe(){const e=["slide","pan","fade","blur","grow","zoom","pop","wipe","baseline","crop_zoom","spin","spin_loop","fade_loop","blur_loop","pulsating_loop","breathing_loop","jump_loop","squeeze_loop","sway_loop","typewriter_text","block_swipe_text","spread_text","merge_text","ken_burns","//ly.img.ubq/animation/slide","//ly.img.ubq/animation/pan","//ly.img.ubq/animation/fade","//ly.img.ubq/animation/blur","//ly.img.ubq/animation/grow","//ly.img.ubq/animation/zoom","//ly.img.ubq/animation/pop","//ly.img.ubq/animation/wipe","//ly.img.ubq/animation/baseline","//ly.img.ubq/animation/crop_zoom","//ly.img.ubq/animation/spin","//ly.img.ubq/animation/spin_loop","//ly.img.ubq/animation/fade_loop","//ly.img.ubq/animation/blur_loop","//ly.img.ubq/animation/pulsating_loop","//ly.img.ubq/animation/breathing_loop","//ly.img.ubq/animation/jump_loop","//ly.img.ubq/animation/squeeze_loop","//ly.img.ubq/animation/sway_loop","//ly.img.ubq/animation/typewriter_text","//ly.img.ubq/animation/block_swipe_text","//ly.img.ubq/animation/spread_text","//ly.img.ubq/animation/merge_text","//ly.img.ubq/animation/ken_burns"];return R("AnimationType",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function ie(){return V([N({r:$(),g:$(),b:$(),a:$()}),N({c:$(),m:$(),y:$(),k:$(),tint:$()}),N({name:H(),tint:$(),externalReference:H()})])}function ae(){return N({type:oe(),duration:$(),easing:W(ee())})}var se=Symbol("PROXY");function le(e){return(t,r)=>{Object.defineProperty(t,se,{value:{type:"getter",...e},writable:!1})}}function de(e,t){Object.defineProperty(e,se,{value:{type:"setter"},writable:!1})}function ce(e){if(e.isValid()){const t=e.value();return e.delete(),t}{const t=e.error(),r=t.publicMessage();throw t.delete(),e.delete(),new Error(r)}}function ue(e){return new Promise(((t,r)=>{e((e=>{try{const r=ce(e);t(r)}catch(e){r(e)}}))}))}var pe,he,fe,ge,me,be,ye,ve,we,ke,_e,Ee,Ce,Se,Pe,xe,Te,Ae,Fe,Me,Ie,De,Be,Re,Le,Oe,Ue,$e,qe,We,He,Ne,Ve=(e,t=!0)=>{const r=[];for(let t=0;t<e.size();t+=1)r.push(e.get(t));return t&&e.delete(),r};Oe=[de],Le=[de],Re=[de],Be=[de],De=[de],Ie=[de],Me=[de],Fe=[le({disabledInModes:["Playback"]})],Ae=[de],Te=[de],xe=[le({disabledInModes:["Playback"]})],Pe=[de],Se=[le({disabledInModes:["Playback"]})],Ce=[le({disabledInModes:["Playback"]})],Ee=[de],_e=[le({disabledInModes:["Playback"]})],ke=[le({disabledInModes:["Playback"]})],we=[le({disabledInModes:["Playback"]})],ve=[le({disabledInModes:["Playback"]})],ye=[de],be=[le({disabledInModes:["Playback"]})],me=[de],ge=[de],fe=[de],he=[le({disabledInModes:["Playback"]})],pe=[de];var ze,Ge,je,Xe,Ye,Ke,Qe,Ze,Je,et,tt,rt,nt,ot,it,at,st,lt,dt,ct,ut,pt,ht,ft,gt,mt,bt,yt,vt,wt,kt,_t,Et,Ct,St,Pt,xt,Tt,At,Ft,Mt,It,Dt,Bt,Rt,Lt,Ot,Ut,$t,qt,Wt,Ht,Nt,Vt,zt,Gt,jt,Xt,Yt,Kt,Qt,Zt,Jt,er,tr,rr,nr,or,ir,ar,sr,lr,dr,cr,ur,pr,hr,fr,gr,mr,br,yr,vr,wr,kr,_r,Er,Cr,Sr,Pr,xr,Tr,Ar,Fr,Mr,Ir,Dr,Br,Rr,Lr,Or,Ur,$r,qr,Wr,Hr,Nr,Vr,zr,Gr,jr,Xr,Yr,Kr,Qr,Zr,Jr,en,tn,rn,nn,on,an,sn,ln,dn,cn,un,pn,hn,fn,gn,mn,bn,yn,vn,wn,kn,_n,En,Cn,Sn,Pn,xn,Tn,An,Fn,Mn,In,Dn,Bn,Rn,Ln,On,Un,$n,qn,Wn,Hn,Nn,Vn,zn,Gn,jn,Xn,Yn,Kn,Qn,Zn,Jn,eo,to,ro,no,oo,io,ao,so,lo,co,uo,po,ho,fo,go,mo,bo,yo,vo,wo,ko,_o,Eo,Co,So,Po,xo,To,Ao,Fo,Mo,Io,Do,Bo,Ro,Lo,Oo,Uo,$o,qo,Wo,Ho,No,Vo,zo,Go,jo,Xo,Yo,Ko,Qo,Zo,Jo,ei,ti,ri,ni,oi,ii,ai,si,li,di,ci,ui,pi,hi,fi,gi,mi,bi,yi,vi,wi,ki,_i,Ei,Ci,Si,Pi,xi,Ti,Ai,Fi,Mi,Ii,Di,Bi,Ri,Li,Oi,Ui,$i,qi,Wi,Hi,Ni,Vi,zi,Gi,ji,Xi,Yi,Ki,Qi,Zi,Ji,ea,ta,ra,na,oa,ia,aa,sa,la,da,ca,ua,pa,ha,fa,ga,ma,ba,ya,va,wa,ka,_a,Ea,Ca,Sa,Pa,xa,Ta,Aa,Fa,Ma,Ia,SceneAPI=class{constructor(e,t=!1){m(qe,5,this),_(this,We),_(this,Ue),_(this,$e),y(this,"onZoomLevelChanged",(e=>{const t=k(this,Ue).subscribeToZoomLevel(e);return()=>{k(this,Ue).isDeleted()||ce(k(this,Ue).unsubscribe(t))}})),y(this,"onActiveChanged",(e=>{const t=k(this,Ue).subscribeToActiveSceneChange(e);return()=>{k(this,Ue).isDeleted()||ce(k(this,Ue).unsubscribe(t))}})),E(this,Ue,e),t||E(this,$e,new BlockAPI(e))}async loadFromString(e,t=!1){return Y("sceneContent",e,H()),ue((r=>k(this,Ue).loadSceneFromString(e,r,t)))}async loadFromURL(e,t=!1){return Y("url",e,H()),ue((r=>k(this,Ue).loadSceneFromURL(e,r,t)))}async loadFromArchiveURL(e,t=!1){return Y("url",e,H()),ue((r=>k(this,Ue).loadSceneFromArchiveURL(e,r,t)))}async saveToString(e=["blob","bundle","file","http","https","opfs"],t){const r=this.get();if(null==r)throw new Error("No scene available.");return ue((n=>{k(this,Ue).saveSceneToString(r,n,e,t?async(e,r,n)=>{const o=await t(e,r);n&&n.invoke(e,o)}:void 0)}))}async saveToArchive(){return new Promise(((e,t)=>{const r=this.get();null==r?t(new Error("No scene available.")):k(this,Ue).saveSceneToArchive(r,(r=>{"error"in r?t(r.error):e(new Blob([r],{type:"application/zip"}))}))}))}create(e="Free",t){Y("sceneLayout",e,J());const r=ce(k(this,Ue).createScene(e));return t?(C(this,We,He).call(this,r,t),r):r}createVideo(e){const t=C(this,We,Ne).call(this);return e?(C(this,We,He).call(this,t,e),t):t}createFromImage(e,t=300,r=1,n="Free",o=0,i=!1){return Y("url",e,H()),Y("dpi",t,G($(),0)),Y("pixelScaleFactor",r,G($(),0)),Y("sceneLayout",n,J()),ue((a=>k(this,Ue).createSceneFromImage(e,t,r,n,o,i,a)))}createFromVideo(e){return Y("url",e,H()),ue((t=>k(this,Ue).createSceneFromVideo(e,t)))}get(){const e=ce(k(this,Ue).findByType("scene")),t=Ve(e);return t.length>0?t[0]:null}async applyTemplateFromString(e){return Y("content",e,H()),ue((t=>k(this,Ue).applyTemplateFromString(e,t)))}async applyTemplateFromURL(e){return Y("url",e,H()),ue((t=>k(this,Ue).applyTemplateFromURL(e,t)))}getMode(){const e=this.get();return ce(k(this,Ue).getSceneMode(e))}setDesignUnit(e){Y("designUnit",e,function(){const e=["Pixel","Millimeter","Inch"];return R("DesignUnit",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}());const t=this.get();ce(k(this,Ue).setDesignUnit(t,e))}getDesignUnit(){const e=this.get();return ce(k(this,Ue).getDesignUnit(e))}getLayout(){const e=this.get();if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).getSceneLayout(e))}setLayout(e){Y("layout",e,J());const t=this.get();if(null==t)throw new Error("No scene available.");ce(k(this,Ue).setSceneLayout(t,e))}getPages(){return Ve(ce(k(this,Ue).getPages()))}getCurrentPage(){const e=this.get();if(null==e)return null;const t=k(this,Ue).getCurrentPage(e);return t.isValid()?ce(t):null}findNearestToViewPortCenterByType(e){Y("type",e,H());const t=this.get();if(null==t)return[];const r=ce(k(this,Ue).findNearestToViewPortCenterByType(t,e));return Ve(r)}findNearestToViewPortCenterByKind(e){Y("kind",e,H());const t=this.get();if(null==t)return[];const r=ce(k(this,Ue).findNearestToViewPortCenterByKind(t,e));return Ve(r)}setZoomLevel(e=1){const t=this.get();Y("zoomLevel",e,G($(),0)),k(this,Ue).setZoomLevel(t,e)}getZoomLevel(){const e=this.get();return ce(k(this,Ue).getZoomLevel(e))}async zoomToBlock(e,t,r,n,o){Y("id",e,U());try{Y("options",t,W(q({padding:W(V([$(),q({x:W($()),y:W($())}),q({top:W($()),bottom:W($()),left:W($()),right:W($())})])),animate:W(V([O(),q({duration:W(G($(),0)),easing:W(ee()),interruptible:W(O())})]))})))}catch(e){try{Y("paddingLeft",t,W($())),Y("paddingTop",r,W($())),Y("paddingRight",n,W($())),Y("paddingBottom",o,W($()))}catch(t){throw new Error(`Invalid arguments.\nIf your're using the deprecated signature:\ncesdk.engine.scene.zoomToBlock(id, paddingLeft, paddingTop, paddingRight, paddingBottom)\n${t.message}\nIf you're using the new signature:\ncesdk.engine.scene.zoomToBlock(id, options)\n${e.message}`)}}const i="object"==typeof t?t:{padding:{left:t??0,top:r??0,right:n??0,bottom:o??0}},a={left:0,top:0,right:0,bottom:0};if(null!=i.padding&&("number"==typeof i.padding?(a.left=i.padding,a.top=i.padding,a.right=i.padding,a.bottom=i.padding):(("x"in i.padding||"y"in i.padding)&&(a.left=i.padding.x??a.left,a.right=i.padding.x??a.right,a.top=i.padding.y??a.top,a.bottom=i.padding.y??a.bottom),("left"in i.padding||"top"in i.padding||"right"in i.padding||"bottom"in i.padding)&&(a.left=i.padding.left??a.left,a.top=i.padding.top??a.top,a.right=i.padding.right??a.right,a.bottom=i.padding.bottom??a.bottom))),i.animate){const t={duration:.5,easing:"EaseInOut",interruptible:!1};return"object"==typeof i.animate&&(t.duration=i.animate.duration??t.duration,t.easing=i.animate.easing??t.easing,t.interruptible=i.animate.interruptible??t.interruptible),new Promise((r=>{k(this,Ue).zoomToBlockWithAnimation(e,a.left,a.top,a.right,a.bottom,t.duration,t.easing,t.interruptible,(()=>{r()}))}))}return ue((t=>k(this,Ue).zoomToBlock(e,a.left,a.top,a.right,a.bottom,t)))}enableZoomAutoFit(e,t,r=0,n=0,o=0,i=0){return Y("id",e,U()),Y("axis",t,function(){const e=["Horizontal","Vertical","Both"];return R("ZoomAutoFitAxis",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}()),"Horizontal"===t?(Y("paddingBefore",r,$()),Y("paddingAfter",n,$()),ce(k(this,Ue).enableZoomAutoFit(e,t,r,0,n,0))):"Vertical"===t?(Y("paddingBefore",r,$()),Y("paddingAfter",n,$()),ce(k(this,Ue).enableZoomAutoFit(e,t,0,r,0,n))):(Y("paddingLeft",r,$()),Y("paddingTop",n,$()),Y("paddingRight",o,$()),Y("paddingBottom",i,$()),ce(k(this,Ue).enableZoomAutoFit(e,t,r,n,o,i)))}disableZoomAutoFit(e){return Y("blockOrScene",e,U()),ce(k(this,Ue).disableZoomAutoFit(e))}isZoomAutoFitEnabled(e){return Y("blockOrScene",e,U()),ce(k(this,Ue).isZoomAutoFitEnabled(e))}unstable_enableCameraPositionClamping(e,t=0,r=0,n=0,o=0,i=0,a=0,s=0,l=0){return Y("ids",e,L($())),Y("paddingLeft",t,$()),Y("paddingTop",r,$()),Y("paddingRight",n,$()),Y("paddingBottom",o,$()),Y("scaledPaddingLeft",t,$()),Y("scaledPaddingTop",r,$()),Y("scaledPaddingRight",n,$()),Y("scaledPaddingBottom",o,$()),ce(k(this,Ue).unstable_enableCameraPositionClamping(e,t,r,n,o,i,a,s,l))}unstable_disableCameraPositionClamping(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_disableCameraPositionClamping(e))}unstable_isCameraPositionClampingEnabled(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_isCameraPositionClampingEnabled(e))}unstable_enableCameraZoomClamping(e,t=-1,r=-1,n=0,o=0,i=0,a=0){return Y("ids",e,L($())),Y("minZoomLimit",t,$()),Y("maxZoomLimit",r,$()),Y("paddingLeft",n,$()),Y("paddingTop",o,$()),Y("paddingRight",i,$()),Y("paddingBottom",a,$()),ce(k(this,Ue).unstable_enableCameraZoomClamping(e,t,r,n,o,i,a))}unstable_disableCameraZoomClamping(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_disableCameraZoomClamping(e))}unstable_isCameraZoomClampingEnabled(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_isCameraZoomClampingEnabled(e))}setPlaying(e){const t=this.getCurrentPage();if(null==t)throw new Error("No page to play");k(this,Ue).setPlaying(t,e)}};qe=u(null),Ue=new WeakMap,$e=new WeakMap,We=new WeakSet,He=function(e,t){if(!k(this,$e))throw new Error("Utility functions not allowed to be called inside utility functions.");let r=0,n=0;if("number"==typeof t.page.size)r=t.page.size,n=t.page.size;else{if("object"!=typeof t.page.size)return;r=t.page.size.width,n=t.page.size.height}const o=k(this,$e).create("page");if(k(this,$e).appendChild(e,o),k(this,$e).setSize(o,r,n),t.page.color){const e=k(this,$e).createFill("color");k(this,$e).setFill(o,e),k(this,$e).setColor(o,"fill/solid/color",t.page.color)}},Ne=function(){return ce(k(this,Ue).createVideoScene())},b(qe,1,"loadFromString",Oe,SceneAPI),b(qe,1,"loadFromURL",Le,SceneAPI),b(qe,1,"loadFromArchiveURL",Re,SceneAPI),b(qe,1,"create",Be,SceneAPI),b(qe,1,"createVideo",De,SceneAPI),b(qe,1,"createFromImage",Ie,SceneAPI),b(qe,1,"createFromVideo",Me,SceneAPI),b(qe,1,"get",Fe,SceneAPI),b(qe,1,"applyTemplateFromString",Ae,SceneAPI),b(qe,1,"applyTemplateFromURL",Te,SceneAPI),b(qe,1,"getMode",xe,SceneAPI),b(qe,1,"setDesignUnit",Pe,SceneAPI),b(qe,1,"getDesignUnit",Se,SceneAPI),b(qe,1,"getLayout",Ce,SceneAPI),b(qe,1,"setLayout",Ee,SceneAPI),b(qe,1,"getPages",_e,SceneAPI),b(qe,1,"getCurrentPage",ke,SceneAPI),b(qe,1,"findNearestToViewPortCenterByType",we,SceneAPI),b(qe,1,"findNearestToViewPortCenterByKind",ve,SceneAPI),b(qe,1,"setZoomLevel",ye,SceneAPI),b(qe,1,"getZoomLevel",be,SceneAPI),b(qe,1,"zoomToBlock",me,SceneAPI),b(qe,1,"enableZoomAutoFit",ge,SceneAPI),b(qe,1,"disableZoomAutoFit",fe,SceneAPI),b(qe,1,"isZoomAutoFitEnabled",he,SceneAPI),b(qe,1,"setPlaying",pe,SceneAPI),g(qe,SceneAPI),(e=>{let t;var r;(r=t=e.ColorSpace||(e.ColorSpace={}))[r.sRGB=0]="sRGB",r[r.CMYK=1]="CMYK",r[r.SpotColor=2]="SpotColor",e.toColor=function(e){switch(e.colorSpace){case 0:return{r:e.components.x,g:e.components.y,b:e.components.z,a:e.components.w};case 2:return{name:e.spotColorName,tint:e.tint,externalReference:e.externalReference};case 1:return{c:e.components.x,m:e.components.y,y:e.components.z,k:e.components.w,tint:e.tint};default:throw new Error("Unknown color space!")}},e.fromColor=function(e){if(function(e){return"r"in e&&"a"in e&&void 0!==e.r&&void 0!==e.a}(e))return{colorSpace:0,components:{x:e.r,y:e.g,z:e.b,w:e.a},spotColorName:"",tint:1,externalReference:""};if(function(e){return"c"in e&&"m"in e&&"y"in e&&"k"in e&&void 0!==e.c&&void 0!==e.m&&void 0!==e.y&&void 0!==e.k}(e))return{colorSpace:1,components:{x:e.c,y:e.m,z:e.y,w:e.k},spotColorName:"",tint:e.tint,externalReference:""};if(function(e){return"name"in e&&void 0!==e.name}(e))return{colorSpace:2,components:{x:0,y:0,z:0,w:0},spotColorName:e.name,tint:e.tint,externalReference:e.externalReference};throw new Error("Unknown color space!")}})(ze||(ze={})),xa=[de],Pa=[de],Sa=[de],Ca=[de],Ea=[de],_a=[de],ka=[de],wa=[le({disabledInModes:["Playback"]})],va=[le({disabledInModes:["Playback"]})],ya=[de],ba=[de],ma=[de],ga=[le({disabledInModes:["Playback"]})],fa=[le({disabledInModes:["Playback"]})],ha=[le({disabledInModes:["Playback"]})],pa=[de],ua=[de],ca=[de],da=[de],la=[le({disabledInModes:["Playback"]})],sa=[de],aa=[de],ia=[le({disabledInModes:["Playback"]})],oa=[le({disabledInModes:["Playback"]})],na=[le({disabledInModes:["Playback"]})],ra=[le({disabledInModes:["Playback"]})],ta=[le({disabledInModes:["Playback"]})],ea=[le({disabledInModes:["Playback"]})],Ji=[le({disabledInModes:["Playback"]})],Zi=[de],Qi=[le({disabledInModes:["Playback"]})],Ki=[de],Yi=[le({disabledInModes:["Playback"]})],Xi=[de],ji=[le({disabledInModes:["Playback"]})],Gi=[de],zi=[le({disabledInModes:["Playback"]})],Vi=[de],Ni=[le({disabledInModes:["Playback"]})],Hi=[le({disabledInModes:["Playback"]})],Wi=[le({disabledInModes:["Playback"]})],qi=[le({disabledInModes:["Playback"]})],$i=[de],Ui=[de],Oi=[de],Li=[de],Ri=[de],Bi=[de],Di=[le({disabledInModes:["Playback"]})],Ii=[le({disabledInModes:["Playback"]})],Mi=[de],Fi=[de],Ai=[de],Ti=[de],xi=[le({disabledInModes:["Playback"]})],Pi=[de],Si=[le({disabledInModes:["Playback"]})],Ci=[le({disabledInModes:["Playback"]})],Ei=[de],_i=[de],ki=[le({disabledInModes:["Playback"]})],wi=[le({disabledInModes:["Playback"]})],vi=[le({disabledInModes:["Playback"]})],yi=[le({disabledInModes:["Playback"]})],bi=[de],mi=[de],gi=[de],fi=[de],hi=[de],pi=[de],ui=[le({disabledInModes:["Playback"]})],ci=[le({disabledInModes:["Playback"]})],di=[le({disabledInModes:["Playback"]})],li=[le({disabledInModes:["Playback"]})],si=[de],ai=[le({disabledInModes:["Playback"]})],ii=[de],oi=[de],ni=[le({disabledInModes:["Playback"]})],ri=[le({disabledInModes:["Playback"]})],ti=[le({disabledInModes:["Playback"]})],ei=[de],Jo=[de],Zo=[le({disabledInModes:["Playback"]})],Qo=[le({disabledInModes:["Playback"]})],Ko=[le({disabledInModes:["Playback"]})],Yo=[le({disabledInModes:["Playback"]})],Xo=[le({disabledInModes:["Playback"]})],jo=[le({disabledInModes:["Playback"]})],Go=[de],zo=[de],Vo=[le({disabledInModes:["Playback"]})],No=[de],Ho=[de],Wo=[de],qo=[de],$o=[de],Uo=[de],Oo=[le({disabledInModes:["Playback"]})],Lo=[le({disabledInModes:["Playback"]})],Ro=[le({disabledInModes:["Playback"]})],Bo=[le({disabledInModes:["Playback"]})],Do=[le({disabledInModes:["Playback"]})],Io=[de],Mo=[le({disabledInModes:["Playback"]})],Fo=[de],Ao=[le({disabledInModes:["Playback"]})],To=[de],xo=[le({disabledInModes:["Playback"]})],Po=[de],So=[le({disabledInModes:["Playback"]})],Co=[de],Eo=[le({disabledInModes:["Playback"]})],_o=[de],ko=[le({disabledInModes:["Playback"]})],wo=[de],vo=[le({disabledInModes:["Playback"]})],yo=[de],bo=[le({disabledInModes:["Playback"]})],mo=[le({disabledInModes:["Playback"]})],go=[de],fo=[le({disabledInModes:["Playback"]})],ho=[le({disabledInModes:["Playback"]})],po=[de],uo=[de],co=[de],lo=[de],so=[le({disabledInModes:["Playback"]})],ao=[de],io=[de],oo=[de],no=[de],ro=[de],to=[de],eo=[de],Jn=[le({disabledInModes:["Playback"]})],Zn=[le({disabledInModes:["Playback"]})],Qn=[le({disabledInModes:["Playback"]})],Kn=[le({disabledInModes:["Playback"]})],Yn=[le({disabledInModes:["Playback"]})],Xn=[le({disabledInModes:["Playback"]})],jn=[de],Gn=[de],zn=[de],Vn=[le({disabledInModes:["Playback"]})],Nn=[de],Hn=[de],Wn=[le({disabledInModes:["Playback"]})],qn=[de],$n=[le({disabledInModes:["Playback"]})],Un=[le({disabledInModes:["Playback"]})],On=[de],Ln=[de],Rn=[le({disabledInModes:["Playback"]})],Bn=[de],Dn=[le({disabledInModes:["Playback"]})],In=[de],Mn=[le()],Fn=[de],An=[de],Tn=[de],xn=[de],Pn=[le({disabledInModes:["Playback"]})],Sn=[de],Cn=[de],En=[le({disabledInModes:["Playback"]})],_n=[de],kn=[le({disabledInModes:["Playback"]})],wn=[de],vn=[le({disabledInModes:["Playback"]})],yn=[de],bn=[le({disabledInModes:["Playback"]})],mn=[de],gn=[le({disabledInModes:["Playback"]})],fn=[de],hn=[de],pn=[le({disabledInModes:["Playback"]})],un=[le({disabledInModes:["Playback"]})],cn=[de],dn=[le({disabledInModes:["Playback"]})],ln=[de],sn=[le({disabledInModes:["Playback"]})],an=[de],on=[le({disabledInModes:["Playback"]})],nn=[de],rn=[le({disabledInModes:["Playback"]})],tn=[de],en=[le({disabledInModes:["Playback"]})],Jr=[de],Zr=[de],Qr=[le({disabledInModes:["Playback"]})],Kr=[le({disabledInModes:["Playback"]})],Yr=[de],Xr=[le({disabledInModes:["Playback"]})],jr=[de],Gr=[le({disabledInModes:["Playback"]})],zr=[de],Vr=[le({disabledInModes:["Playback"]})],Nr=[de],Hr=[le({disabledInModes:["Playback"]})],Wr=[de],qr=[le({disabledInModes:["Playback"]})],$r=[de],Ur=[de],Or=[de],Lr=[de],Rr=[de],Br=[de],Dr=[le({disabledInModes:["Playback"]})],Ir=[de],Mr=[le({disabledInModes:["Playback"]})],Fr=[de],Ar=[le({disabledInModes:["Playback"]})],Tr=[de],xr=[le({disabledInModes:["Playback"]})],Pr=[le({disabledInModes:["Playback"]})],Sr=[de],Cr=[le({disabledInModes:["Playback"]})],Er=[le({disabledInModes:["Playback"]})],_r=[de],kr=[de],wr=[de],vr=[de],yr=[le({disabledInModes:["Playback"]})],br=[le({disabledInModes:["Playback"]})],mr=[le({disabledInModes:["Playback"]})],gr=[de],fr=[le({disabledInModes:["Playback"]})],hr=[le({disabledInModes:["Playback"]})],pr=[le({disabledInModes:["Playback"]})],ur=[le({disabledInModes:["Playback"]})],cr=[de],dr=[le({disabledInModes:["Playback"]})],lr=[de],sr=[de],ar=[le({disabledInModes:["Playback"]})],ir=[de],or=[le({disabledInModes:["Playback"]})],nr=[de],rr=[le({disabledInModes:["Playback"]})],tr=[de],er=[le({disabledInModes:["Playback"]})],Jt=[de],Zt=[le({disabledInModes:["Playback"]})],Qt=[de],Kt=[le({disabledInModes:["Playback"]})],Yt=[le({disabledInModes:["Playback"]})],Xt=[de],jt=[de],Gt=[le({disabledInModes:["Playback"]})],zt=[le({disabledInModes:["Playback"]})],Vt=[de],Nt=[le({disabledInModes:["Playback"]})],Ht=[de],Wt=[le({disabledInModes:["Playback"]})],qt=[de],$t=[de],Ut=[le({disabledInModes:["Playback"]})],Ot=[de],Lt=[le({disabledInModes:["Playback"]})],Rt=[de],Bt=[le({disabledInModes:["Playback"]})],Dt=[de],It=[le({disabledInModes:["Playback"]})],Mt=[de],Ft=[le()],At=[de],Tt=[le()],xt=[le({disabledInModes:["Playback"]})],Pt=[de],St=[le({disabledInModes:["Playback"]})],Ct=[de],Et=[le()],_t=[de],kt=[le({disabledInModes:["Playback"]})],wt=[le({disabledInModes:["Playback"]})],vt=[de],yt=[le({disabledInModes:["Playback"]})],bt=[de],mt=[le({disabledInModes:["Playback"]})],gt=[de],ft=[le({disabledInModes:["Playback"]})],ht=[le({disabledInModes:["Playback"]})],pt=[le({disabledInModes:["Playback"]})],ut=[le({disabledInModes:["Playback"]})],ct=[le({disabledInModes:["Playback"]})],dt=[le({disabledInModes:["Playback"]})],lt=[le({disabledInModes:["Playback"]})],st=[de],at=[de],it=[de],ot=[de],nt=[le({disabledInModes:["Playback"]})],rt=[le({disabledInModes:["Playback"]})],tt=[le({disabledInModes:["Playback"]})],et=[de],Je=[le({disabledInModes:["Playback"]})],Ze=[de],Qe=[de],Ke=[de],Ye=[de],Xe=[le({disabledInModes:["Playback"]})],je=[le({disabledInModes:["Playback"]})],Ge=[de];var BlockAPI=class{constructor(e){m(Fa,5,this),_(this,Ma),_(this,Ta),_(this,Aa),y(this,"onSelectionChanged",(e=>{const t=k(this,Ta).subscribeToSelectionChange(e);return()=>{k(this,Ta).isDeleted()||ce(k(this,Ta).unsubscribe(t))}})),y(this,"onClicked",(e=>{const t=k(this,Ta).subscribeToBlockClicked(e);return()=>{k(this,Ta).isDeleted()||ce(k(this,Ta).unsubscribe(t))}})),y(this,"onStateChanged",((e,t)=>{Y("ids",e,L(U()));const r=k(this,Ta).subscribeToBlockState(e,(e=>{try{t(Ve(e,!0))}catch(e){console.error(e)}}));return()=>{k(this,Ta).isDeleted()||ce(k(this,Ta).unsubscribe(r))}})),E(this,Ta,e),E(this,Aa,new SceneAPI(e,!0))}async export(e,t,r){Y("handle",e,$());try{Y("options",t,W(q({mimeType:W(V([K(),Z()])),pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),allowTextOverhang:W(O()),abortSignal:W(te())})))}catch(e){try{Y("mimeType",t,W(V([K(),Z()]))),Y("options",r,W(q({pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),allowTextOverhang:W(O()),abortSignal:W(te())})))}catch(t){throw new Error(`Invalid arguments.\nIf your're using the deprecated signature:\ncesdk.engine.block.export(handle, mimeType, options)\n${t.message}\nIf you're using the new signature:\ncesdk.engine.block.export(handle, options)\n${e.message}`)}}const n="object"==typeof t?t:{mimeType:t,...r},o=n.mimeType??"image/png",i=null!=n.targetWidth&&null!=n.targetHeight,a=n.jpegQuality??.9,s=n.webpQuality??1,l=n.pngCompressionLevel??5;return new Promise(((t,r)=>{n.abortSignal?.addEventListener("abort",(()=>{r(new Error("AbortSignal received"))})),k(this,Ta).exportToBuffer(e,o,(e=>{"error"in e?r(e.error):t(new Blob([e],{type:o}))}),{pngCompressionLevel:l,jpegQuality:a,webpQuality:s,useTargetSize:i,targetWidth:n.targetWidth??0,targetHeight:n.targetHeight??0,exportPdfWithHighCompatibility:n.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:n.exportPdfWithUnderlayer??!1,underlayerSpotColorName:n.underlayerSpotColorName??"",underlayerOffset:n.underlayerOffset??0,allowTextOverhang:n.allowTextOverhang??!1})}))}async exportWithColorMask(e,t,r,n,o,i){Y("handle",e,$());try{Y("maskColorR",t,$()),Y("maskColorG",r,$()),Y("maskColorB",n,$()),Y("options",i,W(q({mimeType:W(V([K(),Z()])),pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),abortSignal:W(te())})))}catch(e){try{Y("mimeType",t,W(V([K(),Z()]))),Y("maskColorR",r,$()),Y("maskColorG",n,$()),Y("maskColorB",o,$()),Y("options",i,W(q({pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),abortSignal:W(te())})))}catch(t){throw new Error(`Invalid arguments.\nIf your're using the deprecated signature:\ncesdk.engine.block.exportWithColorMask(handle, mimeType, maskColorR, maskColorG, maskColorB, options)\n${t.message}\nIf you're using the new signature:\ncesdk.engine.block.exportWithColorMask(handle, maskColorR, maskColorG, maskColorB, options)\n${e.message}`)}}let a,s,l,d;"number"==typeof t?(a=t,s=r,l=n,d=o??{}):(a=r,s=n,l=o,d={mimeType:t,...i});const c=d.mimeType??"image/png",u=null!=d.targetWidth&&null!=d.targetHeight,p=d.jpegQuality??.9,h=d.webpQuality??1,f=d.pngCompressionLevel??5;return new Promise(((t,r)=>{d.abortSignal?.addEventListener("abort",(()=>{r(new Error("AbortSignal received"))})),k(this,Ta).exportWithColorMaskToBuffer(e,c,a,s,l,((e,n)=>{if("error"in e)r(e.error);else if("error"in n)r(n.error);else{const r=new Blob([e],{type:c}),o=new Blob([n],{type:c});t([r,o])}}),{pngCompressionLevel:f,jpegQuality:p,webpQuality:h,useTargetSize:u,targetWidth:d.targetWidth??0,targetHeight:d.targetHeight??0,exportPdfWithHighCompatibility:d.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:d.exportPdfWithUnderlayer??!1,underlayerSpotColorName:d.underlayerSpotColorName??"",underlayerOffset:d.underlayerOffset??0,allowTextOverhang:d.allowTextOverhang??!1})}))}async exportVideo(e,t,r,n){throw new Error("Method not implemented. An implementation is available on the BlockAPI at engine.block or cesdk.engine.block")}async exportAudio(e,t={}){return Y("handle",e,$()),Y("options",t,q({mimeType:W(Q()),onProgress:W(R("func",(e=>"function"==typeof e||"Expected a function, but received: "+A(e)))),timeOffset:W($()),duration:W($()),sampleRate:W($()),numberOfChannels:W($())})),new Promise(((r,n)=>{k(this,Ta).exportAudioToBuffer(e,t.timeOffset??0,t.duration??0,t.mimeType??"audio/wav",t.onProgress??(()=>{}),(e=>{"error"in e?n(e.error):r(new Blob([e],{type:t.mimeType??"audio/wav"}))}),{sampleRate:t.sampleRate??48e3,numberOfChannels:t.numberOfChannels??2,skipEncoding:t.skipEncoding??!1})}))}async loadFromString(e){return Y("content",e,H()),ue((t=>k(this,Ta).loadBlocksFromString(e,t))).then((e=>Ve(e)))}loadFromArchiveURL(e){return Y("url",e,H()),ue((t=>k(this,Ta).loadBlocksFromArchiveURL(e,t))).then((e=>Ve(e)))}async saveToString(e,t=["buffer","http","https"],r){return Y("blocks",e,L($())),ue((n=>k(this,Ta).saveBlocksToString(e,n,t,r?async(e,t,n)=>{const o=await r(e,t);n&&n.invoke(e,o)}:void 0)))}async saveToArchive(e){return Y("blocks",e,L($())),new Promise(((t,r)=>{k(this,Ta).saveBlocksToArchive(e,(e=>{"error"in e?r(e.error):t(new Blob([e],{type:"application/zip"}))}))}))}create(e){return Y("type",e,H()),ce(k(this,Ta).create(e))}createFill(e){return Y("type",e,H()),ce(k(this,Ta).createFill(e))}getAudioTrackCountFromVideo(e){return Y("videoFillBlock",e,U()),ce(k(this,Ta).getAudioTrackCountFromVideo(e))}createAudioFromVideo(e,t,r={}){return Y("videoFillBlock",e,U()),Y("trackIndex",t,$()),Y("options",r,q({keepTrimSettings:W(O()),muteOriginalVideo:W(O())})),ce(k(this,Ta).createAudioFromVideo(e,t,{keepTrimSettings:r.keepTrimSettings??!0,muteOriginalVideo:r.muteOriginalVideo??!0}))}createAudiosFromVideo(e,t={}){return Y("videoFillBlock",e,U()),Y("options",t,q({keepTrimSettings:W(O()),muteOriginalVideo:W(O())})),Ve(ce(k(this,Ta).createAudiosFromVideo(e,{keepTrimSettings:t.keepTrimSettings??!0,muteOriginalVideo:t.muteOriginalVideo??!0})))}getAudioInfoFromVideo(e){return Y("videoFillBlock",e,U()),Ve(ce(k(this,Ta).getAudioInfoFromVideo(e)))}async createCaptionsFromURI(e){return Y("uri",e,H()),ue((t=>k(this,Ta).createCaptionsFromURI(e,t))).then((e=>Ve(e)))}getType(e){return Y("id",e,U()),ce(k(this,Ta).getType(e))}getKind(e){return Y("id",e,U()),ce(k(this,Ta).getKind(e))}setKind(e,t){Y("id",e,U()),ce(k(this,Ta).setKind(e,t))}select(e){return Y("id",e,U()),ce(k(this,Ta).select(e))}setSelected(e,t){return Y("id",e,U()),Y("selected",t,O()),ce(k(this,Ta).setSelected(e,t))}isSelected(e){return Y("id",e,U()),ce(k(this,Ta).isSelected(e))}findAllSelected(){return Ve(k(this,Ta).findAllSelected())}isGroupable(e){return Y("ids",e,L($())),ce(k(this,Ta).isGroupable(e))}group(e){return Y("ids",e,j(L($()))),ce(k(this,Ta).group(e))}ungroup(e){return Y("id",e,$()),ce(k(this,Ta).ungroup(e))}enterGroup(e){return Y("id",e,$()),ce(k(this,Ta).enterGroup(e))}exitGroup(e){return Y("id",e,$()),ce(k(this,Ta).exitGroup(e))}isCombinable(e){return Y("ids",e,L($())),ce(k(this,Ta).isCombinable(e))}combine(e,t){return Y("ids",e,L($())),Y("op",t,H()),ce(k(this,Ta).combine(e,t))}setName(e,t){return Y("id",e,U()),Y("name",t,H()),ce(k(this,Ta).setName(e,t))}getName(e){return Y("id",e,U()),ce(k(this,Ta).getName(e))}getUUID(e){return Y("id",e,U()),ce(k(this,Ta).getUUID(e))}findByName(e){Y("name",e,H());const t=k(this,Ta).findByName(e);return Ve(t)}findByType(e){Y("type",e,H());const t=ce(k(this,Ta).findByType(e));return Ve(t)}findByKind(e){Y("kind",e,H());const t=ce(k(this,Ta).findByKind(e));return Ve(t)}findAll(){return Ve(k(this,Ta).findAll())}findAllPlaceholders(){return Ve(k(this,Ta).findAllPlaceholders())}createShape(e){return Y("type",e,H()),ce(k(this,Ta).createShape(e))}hasShape(e){return Y("id",e,U()),ce(k(this,Ta).hasShape(e))}supportsShape(e){return Y("id",e,U()),ce(k(this,Ta).supportsShape(e))}getShape(e){return Y("id",e,U()),ce(k(this,Ta).getShape(e))}setShape(e,t){return Y("id",e,U()),Y("shape",t,U()),ce(k(this,Ta).setShape(e,t))}isVisible(e){return Y("id",e,U()),ce(k(this,Ta).isVisible(e))}setVisible(e,t){return Y("id",e,U()),Y("visible",t,O()),ce(k(this,Ta).setVisible(e,t))}isClipped(e){return Y("id",e,U()),ce(k(this,Ta).isClipped(e))}setClipped(e,t){return Y("id",e,U()),Y("clipped",t,O()),ce(k(this,Ta).setClipped(e,t))}isTransformLocked(e){return Y("id",e,U()),ce(k(this,Ta).isTransformLocked(e))}setTransformLocked(e,t){return Y("id",e,U()),Y("locked",t,O()),ce(k(this,Ta).setTransformLocked(e,t))}getPositionX(e){return Y("id",e,U()),ce(k(this,Ta).getPositionX(e))}getPositionXMode(e){return Y("id",e,U()),ce(k(this,Ta).getPositionXMode(e))}getPositionY(e){return Y("id",e,U()),ce(k(this,Ta).getPositionY(e))}getPositionYMode(e){return Y("id",e,U()),ce(k(this,Ta).getPositionYMode(e))}setPositionX(e,t){return Y("id",e,U()),Y("value",t,$()),ce(k(this,Ta).setPositionX(e,t))}setPositionXMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setPositionXMode(e,t))}setPositionY(e,t){return Y("id",e,U()),Y("value",t,$()),ce(k(this,Ta).setPositionY(e,t))}setPositionYMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setPositionYMode(e,t))}setAlwaysOnTop(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setAlwaysOnTop(e,t))}setAlwaysOnBottom(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setAlwaysOnBottom(e,t))}isAlwaysOnTop(e){return Y("id",e,U()),ce(k(this,Ta).isAlwaysOnTop(e))}isAlwaysOnBottom(e){return Y("id",e,U()),ce(k(this,Ta).isAlwaysOnBottom(e))}bringToFront(e){return Y("id",e,$()),ce(k(this,Ta).bringToFront(e))}sendToBack(e){return Y("id",e,$()),ce(k(this,Ta).sendToBack(e))}bringForward(e){return Y("id",e,$()),ce(k(this,Ta).bringForward(e))}sendBackward(e){return Y("id",e,$()),ce(k(this,Ta).sendBackward(e))}getRotation(e){return Y("id",e,U()),ce(k(this,Ta).getRotation(e))}setRotation(e,t){return Y("id",e,U()),Y("radians",t,$()),ce(k(this,Ta).setRotation(e,t))}getFlipHorizontal(e){return Y("id",e,U()),ce(k(this,Ta).getFlip(e)).horizontal}getFlipVertical(e){return Y("id",e,U()),ce(k(this,Ta).getFlip(e)).vertical}setFlipHorizontal(e,t){return Y("id",e,U()),Y("flip",t,O()),ce(k(this,Ta).setFlipHorizontal(e,t))}setFlipVertical(e,t){return Y("id",e,U()),Y("flip",t,O()),ce(k(this,Ta).setFlipVertical(e,t))}hasContentFillMode(e){return Y("id",e,U()),ce(k(this,Ta).hasContentFillMode(e))}supportsContentFillMode(e){return Y("id",e,U()),ce(k(this,Ta).supportsContentFillMode(e))}getWidth(e){return Y("id",e,U()),ce(k(this,Ta).getWidth(e))}getWidthMode(e){return Y("id",e,U()),ce(k(this,Ta).getWidthMode(e))}getHeight(e){return Y("id",e,U()),ce(k(this,Ta).getHeight(e))}getHeightMode(e){return Y("id",e,U()),ce(k(this,Ta).getHeightMode(e))}setSize(e,t,r,n){return Y("id",e,U()),Y("width",t,$()),Y("height",r,$()),Y("options",n,W(q({maintainCrop:W(O()),sizeMode:W(re())}))),null!=n?.sizeMode&&(ce(k(this,Ta).setWidthMode(e,n.sizeMode)),ce(k(this,Ta).setHeightMode(e,n.sizeMode))),ce(k(this,Ta).setWidth(e,t,n?.maintainCrop??!1)),ce(k(this,Ta).setHeight(e,r,n?.maintainCrop??!1))}setPosition(e,t,r,n){return Y("id",e,U()),Y("x",t,$()),Y("y",r,$()),null!=n?.positionMode&&(ce(k(this,Ta).setPositionXMode(e,n.positionMode)),ce(k(this,Ta).setPositionYMode(e,n.positionMode))),ce(k(this,Ta).setPositionX(e,t)),ce(k(this,Ta).setPositionY(e,r))}setWidth(e,t,r){return Y("id",e,U()),Y("value",t,$()),Y("maintainCrop",r??!1,O()),ce(k(this,Ta).setWidth(e,t,r??!1))}setWidthMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setWidthMode(e,t))}setHeight(e,t,r){return Y("id",e,U()),Y("value",t,$()),Y("maintainCrop",r??!1,O()),ce(k(this,Ta).setHeight(e,t,r??!1))}setHeightMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setHeightMode(e,t))}getFrameX(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameX(e))}getFrameY(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameY(e))}getFrameWidth(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameWidth(e))}getFrameHeight(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameHeight(e))}setContentFillMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setContentFillMode(e,t))}getContentFillMode(e){return Y("id",e,U()),ce(k(this,Ta).getContentFillMode(e))}duplicate(e,t=!0){return Y("id",e,U()),ce(k(this,Ta).duplicate(e,t))}destroy(e){return Y("id",e,U()),ce(k(this,Ta).destroy(e))}isValid(e){return Y("id",e,U()),k(this,Ta).isValid(e)}getParent(e){return Y("id",e,U()),ce(k(this,Ta).hasParent(e))?ce(k(this,Ta).getParent(e)):null}getChildren(e){Y("id",e,U());const t=ce(k(this,Ta).getChildren(e));return Ve(t)}insertChild(e,t,r){return Y("parent",e,$()),Y("child",t,$()),Y("index",r,G($(),0)),ce(k(this,Ta).insertChild(e,t,r))}appendChild(e,t){return Y("parent",e,$()),Y("child",t,$()),ce(k(this,Ta).appendChild(e,t))}referencesAnyVariables(e){return Y("id",e,U()),ce(k(this,Ta).referencesAnyVariables(e))}getGlobalBoundingBoxX(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxX(e))}getGlobalBoundingBoxY(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxY(e))}getGlobalBoundingBoxWidth(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxWidth(e))}getGlobalBoundingBoxHeight(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxHeight(e))}getScreenSpaceBoundingBoxXYWH(e){return Y("ids",e,L($())),ce(k(this,Ta).getScreenSpaceBoundingBoxXYWH(e))}alignHorizontally(e,t){return Y("ids",e,j(L($()))),ce(k(this,Ta).alignHorizontally(e,t))}alignVertically(e,t){return Y("ids",e,j(L($()))),ce(k(this,Ta).alignVertically(e,t))}isAlignable(e){return Y("ids",e,L($())),ce(k(this,Ta).isAlignable(e))}distributeHorizontally(e){return Y("ids",e,j(L($()))),ce(k(this,Ta).distributeHorizontally(e))}distributeVertically(e){return Y("ids",e,j(L($()))),ce(k(this,Ta).distributeVertically(e))}isDistributable(e){return Y("ids",e,L($())),ce(k(this,Ta).isDistributable(e))}fillParent(e){return Y("id",e,U()),ce(k(this,Ta).fillParent(e))}resizeContentAware(e,t,r){return Y("ids",e,L($())),Y("width",t,$()),Y("height",r,$()),ce(k(this,Ta).resizeContentAware(e,t,r))}scale(e,t,r=0,n=0){return Y("id",e,U()),ce(k(this,Ta).scale(e,t,r,n))}findAllProperties(e){return Y("id",e,U()),Ve(ce(k(this,Ta).findAllProperties(e)))}isPropertyReadable(e){return Y("property",e,H()),k(this,Ta).isPropertyReadable(e)}isPropertyWritable(e){return Y("property",e,H()),k(this,Ta).isPropertyWritable(e)}getPropertyType(e){Y("property",e,H());return ce(k(this,Ta).getPropertyType(e))}getEnumValues(e){return Y("enumProperty",e,H()),Ve(ce(k(this,Ta).getEnumValues(e)))}setBool(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,O()),ce(k(this,Ta).setBool(e,t,r))}getBool(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getBool(e,t))}setInt(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,U()),ce(k(this,Ta).setInt(e,t,r))}getInt(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getInt(e,t))}setFloat(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,$()),ce(k(this,Ta).setFloat(e,t,r))}getFloat(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getFloat(e,t))}setDouble(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,$()),ce(k(this,Ta).setDouble(e,t,r))}getDouble(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getDouble(e,t))}setString(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,H()),ce(k(this,Ta).setString(e,t,r))}getString(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getString(e,t))}setColor(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,ie()),ce(k(this,Ta).setColor(e,t,ze.fromColor(r)))}getColor(e,t){return Y("id",e,U()),Y("property",t,H()),ze.toColor(ce(k(this,Ta).getColor(e,t)))}setColorRGBA(e,t,r,n,o,i=1){return Y("id",e,U()),Y("property",t,H()),Y("r",r,$()),Y("g",n,$()),Y("b",o,$()),Y("a",i,$()),ce(k(this,Ta).setColorRGBA(e,t,r,n,o,i))}getColorRGBA(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getColorRGBA(e,t))}setColorSpot(e,t,r,n=1){return Y("id",e,U()),Y("property",t,H()),Y("name",r,H()),Y("tint",n,$()),ce(k(this,Ta).setColorSpot(e,t,r,n))}getColorSpotName(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getColorSpotName(e,t))}getColorSpotTint(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getColorSpotTint(e,t))}setGradientColorStops(e,t,r){Y("id",e,U()),Y("property",t,H());const n=r.map((e=>({color:ze.fromColor(e.color),stop:e.stop})));return ce(k(this,Ta).setGradientColorStops(e,t,n))}getGradientColorStops(e,t){Y("id",e,U()),Y("property",t,H());const r=ce(k(this,Ta).getGradientColorStops(e,t));return Ve(r).map((e=>({color:ze.toColor(e.color),stop:e.stop})))}getSourceSet(e,t){return Y("id",e,U()),Y("property",t,H()),Ve(ce(k(this,Ta).getSourceSet(e,t)))}setSourceSet(e,t,r){Y("id",e,U()),Y("property",t,H()),Y("sourceSet",r,L(q({uri:H(),width:$(),height:$()}))),ce(k(this,Ta).setSourceSet(e,t,r))}addImageFileURIToSourceSet(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("uri",r,H()),ue((n=>k(this,Ta).addImageFileURIToSourceSet(e,t,r,n)))}addVideoFileURIToSourceSet(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("uri",r,H()),ue((n=>k(this,Ta).addVideoFileURIToSourceSet(e,t,r,n)))}setEnum(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,H()),ce(k(this,Ta).setEnum(e,t,r))}getEnum(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getEnum(e,t))}hasCrop(e){return Y("id",e,U()),ce(k(this,Ta).hasCrop(e))}supportsCrop(e){return Y("id",e,U()),ce(k(this,Ta).supportsCrop(e))}setCropScaleX(e,t){return Y("id",e,U()),Y("scaleX",t,$()),ce(k(this,Ta).setCropScaleX(e,t))}setCropScaleY(e,t){return Y("id",e,U()),Y("scaleY",t,$()),ce(k(this,Ta).setCropScaleY(e,t))}setCropRotation(e,t){return Y("id",e,U()),Y("rotation",t,$()),ce(k(this,Ta).setCropRotation(e,t))}setCropScaleRatio(e,t){return Y("id",e,U()),Y("scaleRatio",t,$()),ce(k(this,Ta).setCropScaleRatio(e,t))}setCropTranslationX(e,t){return Y("id",e,U()),Y("translationX",t,$()),ce(k(this,Ta).setCropTranslationX(e,t))}setCropTranslationY(e,t){return Y("id",e,U()),Y("translationY",t,$()),ce(k(this,Ta).setCropTranslationY(e,t))}resetCrop(e){return Y("id",e,U()),ce(k(this,Ta).resetCrop(e))}getCropScaleX(e){return Y("id",e,U()),ce(k(this,Ta).getCropScaleX(e))}getCropScaleY(e){return Y("id",e,U()),ce(k(this,Ta).getCropScaleY(e))}getCropRotation(e){return Y("id",e,U()),ce(k(this,Ta).getCropRotation(e))}getCropScaleRatio(e){return Y("id",e,U()),ce(k(this,Ta).getCropScaleRatio(e))}getCropTranslationX(e){return Y("id",e,U()),ce(k(this,Ta).getCropTranslationX(e))}getCropTranslationY(e){return Y("id",e,U()),ce(k(this,Ta).getCropTranslationY(e))}adjustCropToFillFrame(e,t){return Y("id",e,U()),Y("minScaleRatio",t,$()),ce(k(this,Ta).adjustCropToFillFrame(e,t))}flipCropHorizontal(e){return Y("id",e,U()),ce(k(this,Ta).flipCropHorizontal(e))}flipCropVertical(e){return Y("id",e,U()),ce(k(this,Ta).flipCropVertical(e))}isCropAspectRatioLocked(e){return Y("id",e,U()),ce(k(this,Ta).isCropAspectRatioLocked(e))}setCropAspectRatioLocked(e,t){Y("id",e,U()),Y("locked",t,O()),ce(k(this,Ta).setCropAspectRatioLocked(e,t))}hasOpacity(e){return Y("id",e,U()),ce(k(this,Ta).hasOpacity(e))}supportsOpacity(e){return Y("id",e,U()),ce(k(this,Ta).supportsOpacity(e))}setOpacity(e,t){return Y("id",e,U()),Y("opacity",t,$()),ce(k(this,Ta).setOpacity(e,t))}getOpacity(e){return Y("id",e,U()),ce(k(this,Ta).getOpacity(e))}hasBlendMode(e){return Y("id",e,U()),ce(k(this,Ta).hasBlendMode(e))}supportsBlendMode(e){return Y("id",e,U()),ce(k(this,Ta).supportsBlendMode(e))}setBlendMode(e,t){return Y("id",e,U()),Y("blendMode",t,H()),ce(k(this,Ta).setBlendMode(e,t))}getBlendMode(e){return Y("id",e,U()),ce(k(this,Ta).getBlendMode(e))}hasFillColor(e){return Y("id",e,U()),ce(k(this,Ta).hasFillColor(e))}isIncludedInExport(e){return Y("id",e,U()),ce(k(this,Ta).isIncludedInExport(e))}setIncludedInExport(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setIncludedInExport(e,t))}setFillColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setFillColorRGBA(e,t,r,n,o))}getFillColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getFillColorRGBA(e))}setFillColorEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setFillColorEnabled(e,t))}isFillColorEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isFillColorEnabled(e))}createEffect(e){return Y("type",e,H()),ce(k(this,Ta).createEffect(e))}hasEffects(e){return Y("id",e,U()),ce(k(this,Ta).hasEffects(e))}supportsEffects(e){return Y("id",e,U()),ce(k(this,Ta).supportsEffects(e))}getEffects(e){Y("id",e,U());const t=ce(k(this,Ta).getEffects(e));return Ve(t)}insertEffect(e,t,r){Y("id",e,U()),Y("effectId",t,U()),Y("index",r,G(U(),0)),ce(k(this,Ta).insertEffect(e,t,r))}appendEffect(e,t){Y("id",e,U()),Y("effectId",t,U()),ce(k(this,Ta).appendEffect(e,t))}removeEffect(e,t){Y("id",e,U()),Y("index",t,G(U(),0)),ce(k(this,Ta).removeEffect(e,t))}hasEffectEnabled(e){return Y("effectId",e,U()),ce(k(this,Ta).hasEffectEnabled(e))}setEffectEnabled(e,t){Y("effectId",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setEffectEnabled(e,t))}isEffectEnabled(e){return Y("effectId",e,U()),ce(k(this,Ta).isEffectEnabled(e))}createBlur(e){return Y("type",e,H()),ce(k(this,Ta).createBlur(e))}hasBlur(e){return Y("id",e,U()),ce(k(this,Ta).hasBlur(e))}supportsBlur(e){return Y("id",e,U()),ce(k(this,Ta).supportsBlur(e))}setBlur(e,t){Y("id",e,U()),Y("blurId",t,U()),ce(k(this,Ta).setBlur(e,t))}getBlur(e){return Y("id",e,U()),ce(k(this,Ta).getBlur(e))}setBlurEnabled(e,t){Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setBlurEnabled(e,t))}isBlurEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isBlurEnabled(e))}hasBackgroundColor(e){return Y("id",e,U()),ce(k(this,Ta).hasBackgroundColor(e))}supportsBackgroundColor(e){return Y("id",e,U()),ce(k(this,Ta).supportsBackgroundColor(e))}setBackgroundColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setBackgroundColorRGBA(e,t,r,n,o))}getBackgroundColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getBackgroundColorRGBA(e))}setBackgroundColorEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setBackgroundColorEnabled(e,t))}isBackgroundColorEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isBackgroundColorEnabled(e))}hasStroke(e){return Y("id",e,U()),ce(k(this,Ta).hasStroke(e))}supportsStroke(e){return Y("id",e,U()),ce(k(this,Ta).supportsStroke(e))}setStrokeEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setStrokeEnabled(e,t))}isStrokeEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isStrokeEnabled(e))}setStrokeColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setStrokeColorRGBA(e,t,r,n,o))}setStrokeColor(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokeColor(e,ze.fromColor(t)))}getStrokeColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getStrokeColorRGBA(e))}getStrokeColor(e){return Y("id",e,U()),ze.toColor(ce(k(this,Ta).getStrokeColor(e)))}setStrokeWidth(e,t){return Y("id",e,U()),Y("width",t,$()),ce(k(this,Ta).setStrokeWidth(e,t))}getStrokeWidth(e){return Y("id",e,U()),ce(k(this,Ta).getStrokeWidth(e))}setStrokeStyle(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokeStyle(e,t))}getStrokeStyle(e){Y("id",e,U());return ce(k(this,Ta).getStrokeStyle(e))}setStrokePosition(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokePosition(e,t))}getStrokePosition(e){Y("id",e,U());return ce(k(this,Ta).getStrokePosition(e))}setStrokeCornerGeometry(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokeCornerGeometry(e,t))}getStrokeCornerGeometry(e){Y("id",e,U());return ce(k(this,Ta).getStrokeCornerGeometry(e))}hasDropShadow(e){return Y("id",e,U()),ce(k(this,Ta).hasDropShadow(e))}supportsDropShadow(e){return Y("id",e,U()),ce(k(this,Ta).supportsDropShadow(e))}setDropShadowEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setDropShadowEnabled(e,t))}isDropShadowEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isDropShadowEnabled(e))}setDropShadowColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setDropShadowColorRGBA(e,t,r,n,o))}setDropShadowColor(e,t){return Y("id",e,U()),Y("color",t,ie()),ce(k(this,Ta).setDropShadowColor(e,ze.fromColor(t)))}getDropShadowColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowColorRGBA(e))}getDropShadowColor(e){return Y("id",e,U()),ze.toColor(ce(k(this,Ta).getDropShadowColor(e)))}setDropShadowOffsetX(e,t){return Y("id",e,U()),Y("offsetX",t,$()),ce(k(this,Ta).setDropShadowOffsetX(e,t))}getDropShadowOffsetX(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowOffsetX(e))}setDropShadowOffsetY(e,t){return Y("id",e,U()),Y("offsetY",t,$()),ce(k(this,Ta).setDropShadowOffsetY(e,t))}getDropShadowOffsetY(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowOffsetY(e))}setDropShadowBlurRadiusX(e,t){return Y("id",e,U()),Y("blurRadiusX",t,$()),ce(k(this,Ta).setDropShadowBlurRadiusX(e,t))}getDropShadowBlurRadiusX(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowBlurRadiusX(e))}setDropShadowBlurRadiusY(e,t){return Y("id",e,U()),Y("blurRadiusY",t,$()),ce(k(this,Ta).setDropShadowBlurRadiusY(e,t))}getDropShadowBlurRadiusY(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowBlurRadiusY(e))}setDropShadowClip(e,t){return Y("id",e,U()),ce(k(this,Ta).setDropShadowClip(e,t))}getDropShadowClip(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowClip(e))}createCutoutFromBlocks(e,t=2,r=4,n=!0){return Y("ids",e,L(U())),Y("vectorizeDistanceThreshold",t,$()),Y("maxSmoothingDistance",r,$()),Y("useExistingShapeInformation",n,O()),ce(k(this,Ta).createCutoutFromBlocks(e,t,r,n))}createCutoutFromPath(e){return Y("path",e,H()),ce(k(this,Ta).createCutoutFromPath(e))}createCutoutFromOperation(e,t){return Y("ids",e,L(U())),Y("op",t,function(){const e=["Difference","Intersection","Union","XOR"];return R("CutoutOperation",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}()),ce(k(this,Ta).createCutoutFromOperation(e,t))}replaceText(e,t,r=-1,n=-1){Y("id",e,U()),Y("text",t,H()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).replaceText(e,t,r,n))}removeText(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).removeText(e,t,r))}setTextColor(e,t,r=-1,n=-1){Y("id",e,U()),Y("color",t,ie()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextColor(e,ze.fromColor(t),r,n))}getTextColors(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U());const n=k(this,Ta).getTextColors(e,t,r);return Ve(ce(n)).map((e=>ze.toColor(e)))}setTextFontWeight(e,t,r=-1,n=-1){Y("id",e,U()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextFontWeight(e,t,r,n))}getTextFontWeights(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextFontWeights(e,t,r)))}setTextFontSize(e,t,r,n=-1){if(Y("id",e,U()),Y("fontSize",t,$()),"object"==typeof r&&null!==r){Y("options",r,W(q({unit:W(H()),from:W(U()),to:W(U())})));const{unit:n="Point",from:o=-1,to:i=-1}=r;let a=t;if("Point"!==n){const e=k(this,Aa).get();if(null==e)throw new Error("No scene found for unit conversion");a=function(e,t,r){switch(t){case"Point":default:return e;case"Pixel":return 72*e/r;case"Millimeter":return 72*e/25.4;case"Inch":return 72*e}}(t,n,this.getFloat(e,"scene/dpi"))}ce(k(this,Ta).setTextFontSize(e,a,o,i))}else{const o=r??-1;Y("from",o,U()),Y("to",n,U()),ce(k(this,Ta).setTextFontSize(e,t,o,n))}}getTextFontSizes(e,t=-1,r=-1){if(Y("id",e,U()),"object"==typeof t){Y("options",t,W(q({unit:W(H()),from:W(U()),to:W(U())})));const{unit:r="Point",from:n=-1,to:o=-1}=t,i=Ve(ce(k(this,Ta).getTextFontSizes(e,n,o)));if("Point"===r)return i;{const e=k(this,Aa).get();if(null==e)throw new Error("No scene found for unit conversion");const t=this.getFloat(e,"scene/dpi");return i.map((e=>function(e,t,r){switch(t){case"Point":default:return e;case"Pixel":return e*r/72;case"Millimeter":return 25.4*e/72;case"Inch":return e/72}}(e,r,t)))}}return Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextFontSizes(e,t,r)))}setTextFontStyle(e,t,r=-1,n=-1){Y("id",e,U()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextFontStyle(e,t,r,n))}getTextFontStyles(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextFontStyles(e,t,r)))}getTextCases(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextCases(e,t,r)))}setTextCase(e,t,r=-1,n=-1){Y("id",e,U()),Y("textCase",t,H()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextCase(e,t,r,n))}canToggleBoldFont(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).canToggleBoldFont(e,t,r))}canToggleItalicFont(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).canToggleItalicFont(e,t,r))}toggleBoldFont(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).toggleBoldFont(e,t,r))}toggleItalicFont(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).toggleItalicFont(e,t,r))}setFont(e,t,r){Y("block",e,U()),Y("fontFileUri",t,H()),ce(k(this,Ta).setFont(e,t,r))}setTypeface(e,t,r=-1,n=-1){Y("block",e,U()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTypeface(e,t,r,n))}getTypeface(e){return Y("block",e,U()),ce(k(this,Ta).getTypeface(e))}getTypefaces(e,t=-1,r=-1){return Y("block",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTypefaces(e,t,r)))}getTextCursorRange(){return ce(k(this,Ta).getTextCursorRange())}setTextCursorRange(e){Y("range",e,q({from:U(),to:U()})),ce(k(this,Ta).setTextCursorRange(e))}getTextVisibleLineCount(e){return Y("id",e,U()),ce(k(this,Ta).getTextVisibleLineCount(e))}getTextVisibleLineGlobalBoundingBoxXYWH(e,t){return Y("id",e,U()),Y("lineIndex",t,U()),ce(k(this,Ta).getTextVisibleLineGlobalBoundingBoxXYWH(e,t))}getTextVisibleLineContent(e,t){return Y("id",e,U()),Y("lineIndex",t,U()),ce(k(this,Ta).getTextVisibleLineContent(e,t))}hasFill(e){return Y("id",e,U()),ce(k(this,Ta).hasFill(e))}supportsFill(e){return Y("id",e,U()),ce(k(this,Ta).supportsFill(e))}isFillEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isFillEnabled(e))}setFillEnabled(e,t){return Y("id",e,U()),ce(k(this,Ta).setFillEnabled(e,t))}getFill(e){return Y("id",e,U()),ce(k(this,Ta).getFill(e))}setFill(e,t){return Y("id",e,U()),Y("fill",t,U()),ce(k(this,Ta).setFill(e,t))}setFillSolidColor(e,t,r,n,o=1){Y("id",e,U()),ce(k(this,Ta).setFillSolidColor(e,t,r,n,o))}getFillSolidColor(e){return Y("id",e,U()),ce(k(this,Ta).getFillSolidColor(e))}setPlaceholderEnabled(e,t){Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaceholderEnabled(e,t))}isPlaceholderEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderEnabled(e))}hasPlaceholderBehavior(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaceholderBehavior(e))}supportsPlaceholderBehavior(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaceholderBehavior(e))}setPlaceholderBehaviorEnabled(e,t){Y("id",e,U()),ce(k(this,Ta).setPlaceholderBehaviorEnabled(e,t))}isPlaceholderBehaviorEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderBehaviorEnabled(e))}hasPlaceholderControls(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaceholderControls(e))}supportsPlaceholderControls(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaceholderControls(e))}setPlaceholderControlsOverlayEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaceholderControlsOverlayEnabled(e,t))}isPlaceholderControlsOverlayEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderControlsOverlayEnabled(e))}setPlaceholderControlsButtonEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaceholderControlsButtonEnabled(e,t))}isPlaceholderControlsButtonEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderControlsButtonEnabled(e))}setMetadata(e,t,r){Y("id",e,U()),Y("key",t,H()),Y("value",r,H()),ce(k(this,Ta).setMetadata(e,t,r))}getMetadata(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).getMetadata(e,t))}hasMetadata(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).hasMetadata(e,t))}findAllMetadata(e){return Y("id",e,U()),Ve(ce(k(this,Ta).findAllMetadata(e)))}removeMetadata(e,t){Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).removeMetadata(e,t))}setScopeEnabled(e,t,r){Y("id",e,U()),Y("key",t,H()),Y("enabled",r,O()),ce(k(this,Ta).setScopeEnabled(e,t,r))}isScopeEnabled(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).isScopeEnabled(e,t))}isAllowedByScope(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).isAllowedByScope(e,t))}hasDuration(e){return Y("id",e,U()),ce(k(this,Ta).hasDuration(e))}supportsDuration(e){return Y("id",e,U()),ce(k(this,Ta).supportsDuration(e))}setDuration(e,t){return Y("id",e,U()),Y("duration",t,$()),ce(k(this,Ta).setDuration(e,t))}getDuration(e){return Y("id",e,U()),ce(k(this,Ta).getDuration(e))}setPageDurationSource(e,t){return Y("page",e,U()),Y("id",t,U()),ce(k(this,Ta).setPageDurationSource(e,t))}isPageDurationSource(e){return Y("id",e,U()),ce(k(this,Ta).isPageDurationSource(e))}supportsPageDurationSource(e,t){return Y("page",e,U()),Y("id",t,U()),ce(k(this,Ta).supportsPageDurationSource(e,t))}removePageDurationSource(e){Y("id",e,U()),ce(k(this,Ta).removePageDurationSource(e))}hasTimeOffset(e){return Y("id",e,U()),ce(k(this,Ta).hasTimeOffset(e))}supportsTimeOffset(e){return Y("id",e,U()),ce(k(this,Ta).supportsTimeOffset(e))}setTimeOffset(e,t){return Y("id",e,U()),Y("offset",t,$()),ce(k(this,Ta).setTimeOffset(e,t))}getTimeOffset(e){return Y("id",e,U()),ce(k(this,Ta).getTimeOffset(e))}hasTrim(e){return Y("id",e,U()),ce(k(this,Ta).hasTrim(e))}supportsTrim(e){return Y("id",e,U()),ce(k(this,Ta).supportsTrim(e))}setTrimOffset(e,t){return Y("id",e,U()),Y("offset",t,$()),ce(k(this,Ta).setTrimOffset(e,t))}getTrimOffset(e){return Y("id",e,U()),ce(k(this,Ta).getTrimOffset(e))}setTrimLength(e,t){return Y("id",e,U()),Y("length",t,$()),ce(k(this,Ta).setTrimLength(e,t))}getTrimLength(e){return Y("id",e,U()),ce(k(this,Ta).getTrimLength(e))}split(e,t,r={}){return Y("id",e,U()),Y("atTime",t,$()),Y("options",r,q({attachToParent:W(O()),createParentTrackIfNeeded:W(O()),selectNewBlock:W(O())})),ce(k(this,Ta).split(e,t,{attachToParent:r.attachToParent??!0,createParentTrackIfNeeded:r.createParentTrackIfNeeded??!1,selectNewBlock:r.selectNewBlock??!0}))}getTotalSceneDuration(e){return Y("scene",e,U()),ce(k(this,Ta).getTotalSceneDuration(e))}setPlaying(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaying(e,t))}isPlaying(e){return Y("id",e,U()),ce(k(this,Ta).isPlaying(e))}hasPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaybackTime(e))}supportsPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaybackTime(e))}setPlaybackTime(e,t){return Y("id",e,U()),Y("time",t,$()),ce(k(this,Ta).setPlaybackTime(e,t))}getPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).getPlaybackTime(e))}isVisibleAtCurrentPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).isVisibleAtCurrentPlaybackTime(e))}setSoloPlaybackEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setSoloPlaybackEnabled(e,t))}isSoloPlaybackEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isSoloPlaybackEnabled(e))}hasPlaybackControl(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaybackControl(e))}supportsPlaybackControl(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaybackControl(e))}setLooping(e,t){Y("id",e,U()),Y("looping",t,O()),ce(k(this,Ta).setLooping(e,t))}isLooping(e){return Y("id",e,U()),ce(k(this,Ta).isLooping(e))}setMuted(e,t){Y("id",e,U()),Y("muted",t,O()),ce(k(this,Ta).setMuted(e,t))}isForceMuted(e){return Y("id",e,U()),ce(k(this,Ta).isForceMuted(e))}isMuted(e){return Y("id",e,U()),ce(k(this,Ta).isMuted(e))}setVolume(e,t){Y("id",e,U()),Y("volume",t,$()),ce(k(this,Ta).setVolume(e,t))}getVolume(e){return Y("id",e,U()),ce(k(this,Ta).getVolume(e))}setPlaybackSpeed(e,t){Y("id",e,U()),Y("speed",t,$()),ce(k(this,Ta).setPlaybackSpeed(e,t))}getPlaybackSpeed(e){return Y("id",e,U()),ce(k(this,Ta).getPlaybackSpeed(e))}async forceLoadAVResource(e){return Y("id",e,U()),ue((t=>k(this,Ta).forceLoadAVResource(e,t)))}unstable_isAVResourceLoaded(e){return Y("id",e,U()),ce(k(this,Ta).unstable_isAVResourceLoaded(e))}getAVResourceTotalDuration(e){return Y("id",e,U()),ce(k(this,Ta).getAVResourceTotalDuration(e))}getVideoWidth(e){return Y("id",e,U()),ce(k(this,Ta).getVideoWidth(e))}getVideoHeight(e){return Y("id",e,U()),ce(k(this,Ta).getVideoHeight(e))}generateVideoThumbnailSequence(e,t,r,n,o,i){Y("id",e,U()),Y("thumbnailHeight",t,U()),Y("timeBegin",r,$()),Y("timeEnd",n,$()),Y("numberOfFrames",o,U());const a=k(this,Ta).generateVideoThumbnailSequence(e,t,r,n,o,(e=>{"error"in e?i(0,new Error(e.error)):i(e.frameIndex,new ImageData(new Uint8ClampedArray(e.imageData),e.width,e.height))}));return()=>{k(this,Ta).cancelVideoThumbnailSequenceGeneration(a)}}generateAudioThumbnailSequence(e,t,r,n,o,i,a){Y("id",e,U()),Y("samplesPerChunk",t,U()),Y("timeBegin",r,$()),Y("timeEnd",n,$()),Y("numberOfSamples",o,U()),Y("numberOfChannels",i,U());const s=k(this,Ta).generateAudioThumbnailSequence(e,t,r,n,o,i,(e=>{"error"in e?a(0,new Error(e.error)):a(e.chunkIndex,e.sampleData)}));return()=>{k(this,Ta).cancelAudioThumbnailSequenceGeneration(s)}}async getVideoFillThumbnail(e,t){return Y("id",e,U()),Y("thumbnailHeight",t,U()),new Promise(((r,n)=>{k(this,Ta).getVideoFillThumbnail(e,t,(e=>{"error"in e?n(e.error):r(new Blob([e],{type:"image/jpeg"}))}))}))}async getVideoFillThumbnailAtlas(e,t,r,n){return Y("id",e,U()),Y("numberOfColumns",t,U()),Y("numberOfRows",r,U()),Y("thumbnailHeight",n,U()),new Promise(((o,i)=>{k(this,Ta).getVideoFillThumbnailAtlas(e,t,r,n,(e=>{"error"in e?i(e.error):o(new Blob([e],{type:"image/jpeg"}))}))}))}async getPageThumbnailAtlas(e,t,r,n){return Y("id",e,U()),Y("numberOfColumns",t,U()),Y("numberOfRows",r,U()),new Promise(((o,i)=>{k(this,Ta).getPageThumbnailAtlas(e,t,r,n,(e=>{"error"in e?i(e.error):o(new Blob([e],{type:"image/jpeg"}))}))}))}createAnimation(e){return Y("type",e,H()),ce(k(this,Ta).createAnimation(e))}supportsAnimation(e){return Y("id",e,U()),ce(k(this,Ta).supportsAnimation(e))}setInAnimation(e,t){Y("id",e,U()),Y("animation",t,U()),ce(k(this,Ta).setInAnimation(e,t))}setLoopAnimation(e,t){Y("id",e,U()),Y("animation",t,U()),ce(k(this,Ta).setLoopAnimation(e,t))}setOutAnimation(e,t){Y("id",e,U()),Y("animation",t,U()),ce(k(this,Ta).setOutAnimation(e,t))}getInAnimation(e){return Y("id",e,U()),ce(k(this,Ta).getInAnimation(e))}getLoopAnimation(e){return Y("id",e,U()),ce(k(this,Ta).getLoopAnimation(e))}getOutAnimation(e){return Y("id",e,U()),ce(k(this,Ta).getOutAnimation(e))}setNativePixelBuffer(e,t){Y("id",e,U()),t instanceof HTMLVideoElement&&(t.width=t.videoWidth,t.height=t.videoHeight),ce(k(this,Ta).setNativePixelBuffer(e,t))}getState(e){return Y("id",e,U()),ce(k(this,Ta).getState(e))}setState(e,t){Y("id",e,U()),ce(k(this,Ta).setState(e,t))}async forceLoadResources(e){return Y("ids",e,L(U())),ue((t=>k(this,Ta).forceLoadResources(e,t)))}async addImage(e,t={}){Y("url",e,H()),Y("options",t,W(q({sizeMode:W(re()),positionMode:W(ne()),x:W($()),y:W($()),cornerRadius:W($()),size:W(V([$(),q({width:$(),height:$()})])),timeline:W(q({timeOffset:W($()),duration:W($())})),shadow:W(q({color:W(ie()),offset:W(q({x:W($()),y:W($())})),blur:W(q({x:W($()),y:W($())}))})),animation:W(q({in:W(ae()),loop:W(ae()),out:W(ae())}))})));const{x:r,y:n,size:o,timeline:i,animation:a,shadow:s,cornerRadius:l,sizeMode:d="Absolute",positionMode:c="Absolute"}=t;let u,p;if(null!=o)"number"==typeof o?(u=o,p=o):(u=o.width,p=o.height);else{const t=await new Promise(((t,r)=>{const n=new Image;n.src=e,n.onerror=r,n.onload=()=>{t({width:n.width,height:n.height})}}));u=t.width,p=t.height}const h=k(this,Aa).getCurrentPage();if(null==h)throw new Error("No current page");const f=this.create("graphic");this.appendChild(h,f),this.setPositionXMode(f,c),this.setPositionYMode(f,c),this.setWidthMode(f,d),this.setHeightMode(f,d),null!=u&&this.setWidth(f,u),null!=p&&this.setHeight(f,p),null!=r?this.setPositionX(f,r):this.alignHorizontally([f],"Center"),null!=n?this.setPositionY(f,n):this.alignVertically([f],"Center");const g=this.createShape("rect");this.setShape(f,g),null!=l&&(this.setFloat(g,"shape/rect/cornerRadiusBL",l),this.setFloat(g,"shape/rect/cornerRadiusBR",l),this.setFloat(g,"shape/rect/cornerRadiusTL",l),this.setFloat(g,"shape/rect/cornerRadiusTR",l));const m=this.createFill("image");return this.setFill(f,m),this.setString(m,"fill/image/imageFileURI",e),null!=s&&this.applyDropShadow(f,s),"Design"===k(this,Aa).getMode()||(null!=i?.timeOffset&&this.setTimeOffset(f,i.timeOffset),null!=i?.duration&&this.setDuration(f,i.duration),null!=a&&this.applyAnimation(f,a),await this.forceLoadResources([f]),this.adjustCropToFillFrame(f,.5)),f}async addVideo(e,t,r,n={}){if(Y("url",e,H()),Y("width",t,$()),Y("height",r,$()),Y("options",n,W(q({sizeMode:W(re()),positionMode:W(ne()),x:W($()),y:W($()),timeline:W(q({timeOffset:W($()),duration:W($())})),animation:W(q({in:W(ae()),loop:W(ae()),out:W(ae())})),shadow:W(q({color:W(ie()),offset:W(q({x:W($()),y:W($())})),blur:W(q({x:W($()),y:W($())}))})),cornerRadius:W($())}))),"Design"===k(this,Aa).getMode())throw new Error("Cannot add video in design mode.");const{x:o,y:i,timeline:a,animation:s,shadow:l,cornerRadius:d,sizeMode:c="Absolute",positionMode:u="Absolute"}=n,p=k(this,Aa).getCurrentPage();if(null==p)throw new Error("No current page");const h=this.create("graphic");this.appendChild(p,h),this.setPositionXMode(h,u),this.setPositionYMode(h,u),this.setWidthMode(h,c),this.setHeightMode(h,c),this.setWidth(h,t),this.setHeight(h,r),null!=o?this.setPositionX(h,o):this.alignHorizontally([h],"Center"),null!=i?this.setPositionY(h,i):this.alignVertically([h],"Center");const f=this.createShape("rect");this.setShape(h,f),null!=d&&(this.setFloat(f,"shape/rect/cornerRadiusBL",d),this.setFloat(f,"shape/rect/cornerRadiusBR",d),this.setFloat(f,"shape/rect/cornerRadiusTL",d),this.setFloat(f,"shape/rect/cornerRadiusTR",d));const g=this.createFill("video");return this.setFill(h,g),this.setString(g,"fill/video/fileURI",e),null!=l&&this.applyDropShadow(h,l),null!=a?.timeOffset&&this.setTimeOffset(h,a.timeOffset),null!=a?.duration&&this.setDuration(h,a.duration),null!=s&&this.applyAnimation(h,s),await this.forceLoadResources([h]),this.adjustCropToFillFrame(h,0),h}applyAnimation(e,t={}){if(Y("block",e,U()),Y("animation",t,W(q({in:W(ae()),loop:W(ae()),out:W(ae())}))),null!=t.in){const r=this.createAnimation(t.in.type);if(this.setInAnimation(e,r),this.setDuration(r,t.in.duration),null!=t.in.easing&&C(this,Ma,Ia).call(this,r,"animationEasing")){const e=this.getEnumValues("animationEasing"),n=t.in.easing??"Linear";e.includes(n)&&this.setEnum(r,"animationEasing",n)}}if(null!=t.out){const r=this.createAnimation(t.out.type);if(this.setOutAnimation(e,r),this.setDuration(r,t.out.duration),null!=t.out.easing&&C(this,Ma,Ia).call(this,r,"animationEasing")){const e=this.getEnumValues("animationEasing"),n=t.out.easing??"Linear";e.includes(n)&&this.setEnum(r,"animationEasing",n)}}if(null!=t.loop){const r=this.createAnimation(t.loop.type);if(this.setLoopAnimation(e,r),this.setDuration(r,t.loop.duration),null!=t.loop.easing&&C(this,Ma,Ia).call(this,r,"animationEasing")){const e=this.getEnumValues("animationEasing"),n=t.loop.easing??"Linear";e.includes(n)&&this.setEnum(r,"animationEasing",n)}}}applyDropShadow(e,t={}){Y("block",e,U()),Y("options",t,W(q({color:W(ie()),offset:W(q({x:W($()),y:W($())})),blur:W(q({x:W($()),y:W($())}))})));const{color:r,offset:n,blur:o}=t;this.setDropShadowEnabled(e,!0),null!=r&&this.setDropShadowColor(e,r),null!=n&&(null!=n.x&&this.setDropShadowOffsetX(e,n.x),null!=n.y&&this.setDropShadowOffsetY(e,n.y)),null!=o&&(null!=o.x&&this.setDropShadowBlurRadiusX(e,o.x),null!=o.y&&this.setDropShadowBlurRadiusY(e,o.y))}async generateThumbnailAtTimeOffset(e,t){Y("height",e,G(z(U(),512),1)),Y("time",t,$());const r=k(this,Aa).getCurrentPage();if(null==r)throw new Error("No page to get thumbnail for");if("Design"===k(this,Aa).getMode())throw new Error("Cannot get thumbnail in design mode. Use export instead.");return new Promise(((n,o)=>{k(this,Ta).generateVideoThumbnailSequence(r,e,t,t,1,(e=>{if("error"in e)o(e.error);else{const t=new ImageData(new Uint8ClampedArray(e.imageData),e.width,e.height),r=document.createElement("canvas");r.width=e.width,r.height=e.height;const i=r.getContext("2d");if(!i)return void o(new Error("Failed to get canvas context"));i.putImageData(t,0,0),r.toBlob((e=>{e?n(e):o(new Error("Failed to convert to PNG"))}),"image/png")}}))}))}getBackgroundTrack(){if("Design"===k(this,Aa).getMode())throw new Error("Cannot get background track in design mode");if(null==k(this,Aa).getCurrentPage())return null;return this.findByType("track").find((e=>this.isPageDurationSource(e)))??null}moveToBackgroundTrack(e){Y("block",e,U());let t=this.getBackgroundTrack();if(null==t){const e=k(this,Aa).getCurrentPage();if(null==e)throw new Error("No current page found");t=this.create("//ly.img.ubq/track"),this.appendChild(e,t),this.setAlwaysOnBottom(t,!0),this.supportsPageDurationSource(e,t)&&this.setPageDurationSource(e,t)}this.appendChild(t,e)}};Fa=u(null),Ta=new WeakMap,Aa=new WeakMap,Ma=new WeakSet,Ia=function(e,t){return this.findAllProperties(e).includes(t)},b(Fa,1,"loadFromString",xa,BlockAPI),b(Fa,1,"loadFromArchiveURL",Pa,BlockAPI),b(Fa,1,"create",Sa,BlockAPI),b(Fa,1,"createFill",Ca,BlockAPI),b(Fa,1,"createAudioFromVideo",Ea,BlockAPI),b(Fa,1,"createAudiosFromVideo",_a,BlockAPI),b(Fa,1,"createCaptionsFromURI",ka,BlockAPI),b(Fa,1,"getType",wa,BlockAPI),b(Fa,1,"getKind",va,BlockAPI),b(Fa,1,"setKind",ya,BlockAPI),b(Fa,1,"select",ba,BlockAPI),b(Fa,1,"setSelected",ma,BlockAPI),b(Fa,1,"isSelected",ga,BlockAPI),b(Fa,1,"findAllSelected",fa,BlockAPI),b(Fa,1,"isGroupable",ha,BlockAPI),b(Fa,1,"group",pa,BlockAPI),b(Fa,1,"ungroup",ua,BlockAPI),b(Fa,1,"enterGroup",ca,BlockAPI),b(Fa,1,"exitGroup",da,BlockAPI),b(Fa,1,"isCombinable",la,BlockAPI),b(Fa,1,"combine",sa,BlockAPI),b(Fa,1,"setName",aa,BlockAPI),b(Fa,1,"getName",ia,BlockAPI),b(Fa,1,"getUUID",oa,BlockAPI),b(Fa,1,"findByName",na,BlockAPI),b(Fa,1,"findByType",ra,BlockAPI),b(Fa,1,"findByKind",ta,BlockAPI),b(Fa,1,"findAll",ea,BlockAPI),b(Fa,1,"findAllPlaceholders",Ji,BlockAPI),b(Fa,1,"createShape",Zi,BlockAPI),b(Fa,1,"getShape",Qi,BlockAPI),b(Fa,1,"setShape",Ki,BlockAPI),b(Fa,1,"isVisible",Yi,BlockAPI),b(Fa,1,"setVisible",Xi,BlockAPI),b(Fa,1,"isClipped",ji,BlockAPI),b(Fa,1,"setClipped",Gi,BlockAPI),b(Fa,1,"isTransformLocked",zi,BlockAPI),b(Fa,1,"setTransformLocked",Vi,BlockAPI),b(Fa,1,"getPositionX",Ni,BlockAPI),b(Fa,1,"getPositionXMode",Hi,BlockAPI),b(Fa,1,"getPositionY",Wi,BlockAPI),b(Fa,1,"getPositionYMode",qi,BlockAPI),b(Fa,1,"setPositionX",$i,BlockAPI),b(Fa,1,"setPositionXMode",Ui,BlockAPI),b(Fa,1,"setPositionY",Oi,BlockAPI),b(Fa,1,"setPositionYMode",Li,BlockAPI),b(Fa,1,"setAlwaysOnTop",Ri,BlockAPI),b(Fa,1,"setAlwaysOnBottom",Bi,BlockAPI),b(Fa,1,"isAlwaysOnTop",Di,BlockAPI),b(Fa,1,"isAlwaysOnBottom",Ii,BlockAPI),b(Fa,1,"bringToFront",Mi,BlockAPI),b(Fa,1,"sendToBack",Fi,BlockAPI),b(Fa,1,"bringForward",Ai,BlockAPI),b(Fa,1,"sendBackward",Ti,BlockAPI),b(Fa,1,"getRotation",xi,BlockAPI),b(Fa,1,"setRotation",Pi,BlockAPI),b(Fa,1,"getFlipHorizontal",Si,BlockAPI),b(Fa,1,"getFlipVertical",Ci,BlockAPI),b(Fa,1,"setFlipHorizontal",Ei,BlockAPI),b(Fa,1,"setFlipVertical",_i,BlockAPI),b(Fa,1,"getWidth",ki,BlockAPI),b(Fa,1,"getWidthMode",wi,BlockAPI),b(Fa,1,"getHeight",vi,BlockAPI),b(Fa,1,"getHeightMode",yi,BlockAPI),b(Fa,1,"setSize",bi,BlockAPI),b(Fa,1,"setPosition",mi,BlockAPI),b(Fa,1,"setWidth",gi,BlockAPI),b(Fa,1,"setWidthMode",fi,BlockAPI),b(Fa,1,"setHeight",hi,BlockAPI),b(Fa,1,"setHeightMode",pi,BlockAPI),b(Fa,1,"getFrameX",ui,BlockAPI),b(Fa,1,"getFrameY",ci,BlockAPI),b(Fa,1,"getFrameWidth",di,BlockAPI),b(Fa,1,"getFrameHeight",li,BlockAPI),b(Fa,1,"setContentFillMode",si,BlockAPI),b(Fa,1,"getContentFillMode",ai,BlockAPI),b(Fa,1,"duplicate",ii,BlockAPI),b(Fa,1,"destroy",oi,BlockAPI),b(Fa,1,"isValid",ni,BlockAPI),b(Fa,1,"getParent",ri,BlockAPI),b(Fa,1,"getChildren",ti,BlockAPI),b(Fa,1,"insertChild",ei,BlockAPI),b(Fa,1,"appendChild",Jo,BlockAPI),b(Fa,1,"referencesAnyVariables",Zo,BlockAPI),b(Fa,1,"getGlobalBoundingBoxX",Qo,BlockAPI),b(Fa,1,"getGlobalBoundingBoxY",Ko,BlockAPI),b(Fa,1,"getGlobalBoundingBoxWidth",Yo,BlockAPI),b(Fa,1,"getGlobalBoundingBoxHeight",Xo,BlockAPI),b(Fa,1,"getScreenSpaceBoundingBoxXYWH",jo,BlockAPI),b(Fa,1,"alignHorizontally",Go,BlockAPI),b(Fa,1,"alignVertically",zo,BlockAPI),b(Fa,1,"isAlignable",Vo,BlockAPI),b(Fa,1,"distributeHorizontally",No,BlockAPI),b(Fa,1,"distributeVertically",Ho,BlockAPI),b(Fa,1,"isDistributable",Wo,BlockAPI),b(Fa,1,"fillParent",qo,BlockAPI),b(Fa,1,"resizeContentAware",$o,BlockAPI),b(Fa,1,"scale",Uo,BlockAPI),b(Fa,1,"findAllProperties",Oo,BlockAPI),b(Fa,1,"isPropertyReadable",Lo,BlockAPI),b(Fa,1,"isPropertyWritable",Ro,BlockAPI),b(Fa,1,"getPropertyType",Bo,BlockAPI),b(Fa,1,"getEnumValues",Do,BlockAPI),b(Fa,1,"setBool",Io,BlockAPI),b(Fa,1,"getBool",Mo,BlockAPI),b(Fa,1,"setInt",Fo,BlockAPI),b(Fa,1,"getInt",Ao,BlockAPI),b(Fa,1,"setFloat",To,BlockAPI),b(Fa,1,"getFloat",xo,BlockAPI),b(Fa,1,"setDouble",Po,BlockAPI),b(Fa,1,"getDouble",So,BlockAPI),b(Fa,1,"setString",Co,BlockAPI),b(Fa,1,"getString",Eo,BlockAPI),b(Fa,1,"setColor",_o,BlockAPI),b(Fa,1,"getColor",ko,BlockAPI),b(Fa,1,"setColorRGBA",wo,BlockAPI),b(Fa,1,"getColorRGBA",vo,BlockAPI),b(Fa,1,"setColorSpot",yo,BlockAPI),b(Fa,1,"getColorSpotName",bo,BlockAPI),b(Fa,1,"getColorSpotTint",mo,BlockAPI),b(Fa,1,"setGradientColorStops",go,BlockAPI),b(Fa,1,"getGradientColorStops",fo,BlockAPI),b(Fa,1,"getSourceSet",ho,BlockAPI),b(Fa,1,"setSourceSet",po,BlockAPI),b(Fa,1,"addImageFileURIToSourceSet",uo,BlockAPI),b(Fa,1,"addVideoFileURIToSourceSet",co,BlockAPI),b(Fa,1,"setEnum",lo,BlockAPI),b(Fa,1,"getEnum",so,BlockAPI),b(Fa,1,"setCropScaleX",ao,BlockAPI),b(Fa,1,"setCropScaleY",io,BlockAPI),b(Fa,1,"setCropRotation",oo,BlockAPI),b(Fa,1,"setCropScaleRatio",no,BlockAPI),b(Fa,1,"setCropTranslationX",ro,BlockAPI),b(Fa,1,"setCropTranslationY",to,BlockAPI),b(Fa,1,"resetCrop",eo,BlockAPI),b(Fa,1,"getCropScaleX",Jn,BlockAPI),b(Fa,1,"getCropScaleY",Zn,BlockAPI),b(Fa,1,"getCropRotation",Qn,BlockAPI),b(Fa,1,"getCropScaleRatio",Kn,BlockAPI),b(Fa,1,"getCropTranslationX",Yn,BlockAPI),b(Fa,1,"getCropTranslationY",Xn,BlockAPI),b(Fa,1,"adjustCropToFillFrame",jn,BlockAPI),b(Fa,1,"flipCropHorizontal",Gn,BlockAPI),b(Fa,1,"flipCropVertical",zn,BlockAPI),b(Fa,1,"isCropAspectRatioLocked",Vn,BlockAPI),b(Fa,1,"setCropAspectRatioLocked",Nn,BlockAPI),b(Fa,1,"setOpacity",Hn,BlockAPI),b(Fa,1,"getOpacity",Wn,BlockAPI),b(Fa,1,"setBlendMode",qn,BlockAPI),b(Fa,1,"getBlendMode",$n,BlockAPI),b(Fa,1,"isIncludedInExport",Un,BlockAPI),b(Fa,1,"setIncludedInExport",On,BlockAPI),b(Fa,1,"setFillColorRGBA",Ln,BlockAPI),b(Fa,1,"getFillColorRGBA",Rn,BlockAPI),b(Fa,1,"setFillColorEnabled",Bn,BlockAPI),b(Fa,1,"isFillColorEnabled",Dn,BlockAPI),b(Fa,1,"createEffect",In,BlockAPI),b(Fa,1,"getEffects",Mn,BlockAPI),b(Fa,1,"insertEffect",Fn,BlockAPI),b(Fa,1,"appendEffect",An,BlockAPI),b(Fa,1,"removeEffect",Tn,BlockAPI),b(Fa,1,"setEffectEnabled",xn,BlockAPI),b(Fa,1,"isEffectEnabled",Pn,BlockAPI),b(Fa,1,"createBlur",Sn,BlockAPI),b(Fa,1,"setBlur",Cn,BlockAPI),b(Fa,1,"getBlur",En,BlockAPI),b(Fa,1,"setBlurEnabled",_n,BlockAPI),b(Fa,1,"isBlurEnabled",kn,BlockAPI),b(Fa,1,"setBackgroundColorRGBA",wn,BlockAPI),b(Fa,1,"getBackgroundColorRGBA",vn,BlockAPI),b(Fa,1,"setBackgroundColorEnabled",yn,BlockAPI),b(Fa,1,"isBackgroundColorEnabled",bn,BlockAPI),b(Fa,1,"setStrokeEnabled",mn,BlockAPI),b(Fa,1,"isStrokeEnabled",gn,BlockAPI),b(Fa,1,"setStrokeColorRGBA",fn,BlockAPI),b(Fa,1,"setStrokeColor",hn,BlockAPI),b(Fa,1,"getStrokeColorRGBA",pn,BlockAPI),b(Fa,1,"getStrokeColor",un,BlockAPI),b(Fa,1,"setStrokeWidth",cn,BlockAPI),b(Fa,1,"getStrokeWidth",dn,BlockAPI),b(Fa,1,"setStrokeStyle",ln,BlockAPI),b(Fa,1,"getStrokeStyle",sn,BlockAPI),b(Fa,1,"setStrokePosition",an,BlockAPI),b(Fa,1,"getStrokePosition",on,BlockAPI),b(Fa,1,"setStrokeCornerGeometry",nn,BlockAPI),b(Fa,1,"getStrokeCornerGeometry",rn,BlockAPI),b(Fa,1,"setDropShadowEnabled",tn,BlockAPI),b(Fa,1,"isDropShadowEnabled",en,BlockAPI),b(Fa,1,"setDropShadowColorRGBA",Jr,BlockAPI),b(Fa,1,"setDropShadowColor",Zr,BlockAPI),b(Fa,1,"getDropShadowColorRGBA",Qr,BlockAPI),b(Fa,1,"getDropShadowColor",Kr,BlockAPI),b(Fa,1,"setDropShadowOffsetX",Yr,BlockAPI),b(Fa,1,"getDropShadowOffsetX",Xr,BlockAPI),b(Fa,1,"setDropShadowOffsetY",jr,BlockAPI),b(Fa,1,"getDropShadowOffsetY",Gr,BlockAPI),b(Fa,1,"setDropShadowBlurRadiusX",zr,BlockAPI),b(Fa,1,"getDropShadowBlurRadiusX",Vr,BlockAPI),b(Fa,1,"setDropShadowBlurRadiusY",Nr,BlockAPI),b(Fa,1,"getDropShadowBlurRadiusY",Hr,BlockAPI),b(Fa,1,"setDropShadowClip",Wr,BlockAPI),b(Fa,1,"getDropShadowClip",qr,BlockAPI),b(Fa,1,"createCutoutFromBlocks",$r,BlockAPI),b(Fa,1,"createCutoutFromPath",Ur,BlockAPI),b(Fa,1,"createCutoutFromOperation",Or,BlockAPI),b(Fa,1,"replaceText",Lr,BlockAPI),b(Fa,1,"removeText",Rr,BlockAPI),b(Fa,1,"setTextColor",Br,BlockAPI),b(Fa,1,"getTextColors",Dr,BlockAPI),b(Fa,1,"setTextFontWeight",Ir,BlockAPI),b(Fa,1,"getTextFontWeights",Mr,BlockAPI),b(Fa,1,"setTextFontSize",Fr,BlockAPI),b(Fa,1,"getTextFontSizes",Ar,BlockAPI),b(Fa,1,"setTextFontStyle",Tr,BlockAPI),b(Fa,1,"getTextFontStyles",xr,BlockAPI),b(Fa,1,"getTextCases",Pr,BlockAPI),b(Fa,1,"setTextCase",Sr,BlockAPI),b(Fa,1,"canToggleBoldFont",Cr,BlockAPI),b(Fa,1,"canToggleItalicFont",Er,BlockAPI),b(Fa,1,"toggleBoldFont",_r,BlockAPI),b(Fa,1,"toggleItalicFont",kr,BlockAPI),b(Fa,1,"setFont",wr,BlockAPI),b(Fa,1,"setTypeface",vr,BlockAPI),b(Fa,1,"getTypeface",yr,BlockAPI),b(Fa,1,"getTypefaces",br,BlockAPI),b(Fa,1,"getTextCursorRange",mr,BlockAPI),b(Fa,1,"setTextCursorRange",gr,BlockAPI),b(Fa,1,"getTextVisibleLineCount",fr,BlockAPI),b(Fa,1,"getTextVisibleLineGlobalBoundingBoxXYWH",hr,BlockAPI),b(Fa,1,"getTextVisibleLineContent",pr,BlockAPI),b(Fa,1,"isFillEnabled",ur,BlockAPI),b(Fa,1,"setFillEnabled",cr,BlockAPI),b(Fa,1,"getFill",dr,BlockAPI),b(Fa,1,"setFill",lr,BlockAPI),b(Fa,1,"setFillSolidColor",sr,BlockAPI),b(Fa,1,"getFillSolidColor",ar,BlockAPI),b(Fa,1,"setPlaceholderEnabled",ir,BlockAPI),b(Fa,1,"isPlaceholderEnabled",or,BlockAPI),b(Fa,1,"setPlaceholderBehaviorEnabled",nr,BlockAPI),b(Fa,1,"isPlaceholderBehaviorEnabled",rr,BlockAPI),b(Fa,1,"setPlaceholderControlsOverlayEnabled",tr,BlockAPI),b(Fa,1,"isPlaceholderControlsOverlayEnabled",er,BlockAPI),b(Fa,1,"setPlaceholderControlsButtonEnabled",Jt,BlockAPI),b(Fa,1,"isPlaceholderControlsButtonEnabled",Zt,BlockAPI),b(Fa,1,"setMetadata",Qt,BlockAPI),b(Fa,1,"getMetadata",Kt,BlockAPI),b(Fa,1,"findAllMetadata",Yt,BlockAPI),b(Fa,1,"removeMetadata",Xt,BlockAPI),b(Fa,1,"setScopeEnabled",jt,BlockAPI),b(Fa,1,"isScopeEnabled",Gt,BlockAPI),b(Fa,1,"isAllowedByScope",zt,BlockAPI),b(Fa,1,"setDuration",Vt,BlockAPI),b(Fa,1,"getDuration",Nt,BlockAPI),b(Fa,1,"setPageDurationSource",Ht,BlockAPI),b(Fa,1,"isPageDurationSource",Wt,BlockAPI),b(Fa,1,"removePageDurationSource",qt,BlockAPI),b(Fa,1,"setTimeOffset",$t,BlockAPI),b(Fa,1,"getTimeOffset",Ut,BlockAPI),b(Fa,1,"setTrimOffset",Ot,BlockAPI),b(Fa,1,"getTrimOffset",Lt,BlockAPI),b(Fa,1,"setTrimLength",Rt,BlockAPI),b(Fa,1,"getTrimLength",Bt,BlockAPI),b(Fa,1,"split",Dt,BlockAPI),b(Fa,1,"getTotalSceneDuration",It,BlockAPI),b(Fa,1,"setPlaying",Mt,BlockAPI),b(Fa,1,"isPlaying",Ft,BlockAPI),b(Fa,1,"setPlaybackTime",At,BlockAPI),b(Fa,1,"getPlaybackTime",Tt,BlockAPI),b(Fa,1,"isVisibleAtCurrentPlaybackTime",xt,BlockAPI),b(Fa,1,"setSoloPlaybackEnabled",Pt,BlockAPI),b(Fa,1,"isSoloPlaybackEnabled",St,BlockAPI),b(Fa,1,"setLooping",Ct,BlockAPI),b(Fa,1,"isLooping",Et,BlockAPI),b(Fa,1,"setMuted",_t,BlockAPI),b(Fa,1,"isForceMuted",kt,BlockAPI),b(Fa,1,"isMuted",wt,BlockAPI),b(Fa,1,"setVolume",vt,BlockAPI),b(Fa,1,"getVolume",yt,BlockAPI),b(Fa,1,"setPlaybackSpeed",bt,BlockAPI),b(Fa,1,"getPlaybackSpeed",mt,BlockAPI),b(Fa,1,"forceLoadAVResource",gt,BlockAPI),b(Fa,1,"unstable_isAVResourceLoaded",ft,BlockAPI),b(Fa,1,"getAVResourceTotalDuration",ht,BlockAPI),b(Fa,1,"getVideoWidth",pt,BlockAPI),b(Fa,1,"getVideoHeight",ut,BlockAPI),b(Fa,1,"getVideoFillThumbnail",ct,BlockAPI),b(Fa,1,"getVideoFillThumbnailAtlas",dt,BlockAPI),b(Fa,1,"getPageThumbnailAtlas",lt,BlockAPI),b(Fa,1,"createAnimation",st,BlockAPI),b(Fa,1,"setInAnimation",at,BlockAPI),b(Fa,1,"setLoopAnimation",it,BlockAPI),b(Fa,1,"setOutAnimation",ot,BlockAPI),b(Fa,1,"getInAnimation",nt,BlockAPI),b(Fa,1,"getLoopAnimation",rt,BlockAPI),b(Fa,1,"getOutAnimation",tt,BlockAPI),b(Fa,1,"setNativePixelBuffer",et,BlockAPI),b(Fa,1,"getState",Je,BlockAPI),b(Fa,1,"setState",Ze,BlockAPI),b(Fa,1,"forceLoadResources",Qe,BlockAPI),b(Fa,1,"applyAnimation",Ke,BlockAPI),b(Fa,1,"applyDropShadow",Ye,BlockAPI),b(Fa,1,"generateThumbnailAtTimeOffset",Xe,BlockAPI),b(Fa,1,"getBackgroundTrack",je,BlockAPI),b(Fa,1,"moveToBackgroundTrack",Ge,BlockAPI),g(Fa,BlockAPI);var Da,Ba,Ra,La,Oa,Ua,$a,qa,Wa,Ha,Na,Va,za,Ga,ja,Xa,Ya,Ka,Qa,Za,Ja,es,ts,rs,ns,os,is,as,ss,ls,ds,cs,us,ps,hs,fs,gs,ms,bs,ys,vs,ws,ks,_s,Es,Cs,Ss,Ps,xs,Ts,As,Fs,Ms,Is,Ds,Bs,Rs,Ls,Os,Us,$s,qs,Ws,Hs,Ns,Vs,zs,Gs=new WeakMap;Ns=[de],Hs=[de],Ws=[de],qs=[le({disabledInModes:["Playback"]})],$s=[le({disabledInModes:["Playback"]})],Us=[de],Os=[de],Ls=[le()],Rs=[le({disabledInModes:["Playback"]})],Bs=[le({disabledInModes:["Playback"]})],Ds=[le({disabledInModes:["Playback"]})],Is=[le({disabledInModes:["Playback"]})],Ms=[le({disabledInModes:["Playback"]})],Fs=[de],As=[de],Ts=[de],xs=[le({disabledInModes:["Playback"]})],Ps=[de],Ss=[de],Cs=[de],Es=[de],_s=[le({disabledInModes:["Playback"]})],ks=[le({disabledInModes:["Playback"]})],ws=[de],vs=[le({disabledInModes:["Playback"]})],ys=[de],bs=[le({disabledInModes:["Playback"]})],ms=[de],gs=[le({disabledInModes:["Playback"]})],fs=[de],hs=[le({disabledInModes:["Playback"]})],ps=[de],us=[le({disabledInModes:["Playback"]})],cs=[de],ds=[le({disabledInModes:["Playback"]})],ls=[de],ss=[le({disabledInModes:["Playback"]})],as=[de],is=[le({disabledInModes:["Playback"]})],os=[de],ns=[le({disabledInModes:["Playback"]})],rs=[le({disabledInModes:["Playback"]})],ts=[le({disabledInModes:["Playback"]})],es=[le({disabledInModes:["Playback"]})],Ja=[le({disabledInModes:["Playback"]})],Za=[de],Qa=[le({disabledInModes:["Playback"]})],Ka=[le({disabledInModes:["Playback"]})],Ya=[de],Xa=[le({disabledInModes:["Playback"]})],ja=[le({disabledInModes:["Playback"]})],Ga=[le({disabledInModes:["Playback"]})],za=[le({disabledInModes:["Playback"]})],Va=[de],Na=[de],Ha=[de],Wa=[de],qa=[de],$a=[le({disabledInModes:["Playback"]})],Ua=[le({disabledInModes:["Playback"]})],Oa=[de],La=[de],Ra=[le()],Ba=[le({disabledInModes:["Playback"]})],Da=[de];var EditorAPI=class{constructor(e){m(zs,5,this),_(this,Vs),y(this,"onStateChanged",(e=>{const t=k(this,Vs).subscribeToEditorState(e);return()=>{k(this,Vs).isDeleted()||ce(k(this,Vs).unsubscribe(t))}})),y(this,"onHistoryUpdated",(e=>{const t=k(this,Vs).subscribeToHistory(e);return()=>{k(this,Vs).isDeleted()||k(this,Vs).unsubscribe(t)}})),y(this,"onSettingsChanged",(e=>{const t=k(this,Vs).subscribeToSettings(e);return()=>{k(this,Vs).isDeleted()||ce(k(this,Vs).unsubscribe(t))}})),y(this,"onRoleChanged",(e=>{const t=k(this,Vs).subscribeToRoleChange(e);return()=>{k(this,Vs).isDeleted()||ce(k(this,Vs).unsubscribe(t))}})),E(this,Vs,e)}unlockWithLicense(e){ce(k(this,Vs).unlockWithLicense(e))}startTracking(e,t){k(this,Vs).startTracking(e,t,"")}setTrackingMetadata(e){k(this,Vs).setTrackingMetadata(e)}getTrackingMetadata(){return ce(k(this,Vs).getTrackingMetadata())}getActiveLicense(){return ce(k(this,Vs).getActiveLicense())}_update(){k(this,Vs).update()}setEditMode(e,t){Y("mode",e,H()),Y("baseMode",t,W(H())),k(this,Vs).setEditMode(e,t??"")}getEditMode(){return k(this,Vs).getEditMode()}unstable_isInteractionHappening(){return ce(k(this,Vs).unstable_isInteractionHappening())}getCursorType(){return k(this,Vs).getCursorType()}getCursorRotation(){return k(this,Vs).getCursorRotation()}getTextCursorPositionInScreenSpaceX(){return k(this,Vs).getTextCursorPositionInScreenSpaceX()}getTextCursorPositionInScreenSpaceY(){return k(this,Vs).getTextCursorPositionInScreenSpaceY()}createHistory(){return k(this,Vs).createHistory()}destroyHistory(e){ce(k(this,Vs).destroyHistory(e))}setActiveHistory(e){ce(k(this,Vs).setActiveHistory(e))}getActiveHistory(){return k(this,Vs).getActiveHistory()}addUndoStep(){ce(k(this,Vs).addUndoStep())}removeUndoStep(){ce(k(this,Vs).removeUndoStep())}undo(){ce(k(this,Vs).undo())}redo(){ce(k(this,Vs).redo())}canUndo(){return ce(k(this,Vs).canUndo())}canRedo(){return ce(k(this,Vs).canRedo())}setSetting(e,t){Y("keypath",e,H());const r=this.normalizeSettingKey(e);if(!this.isValidSettingKey(r))throw new Error(`Invalid setting key: '${e}'`);switch(this.getSettingTypeForKey(r)){case"Bool":return ce(k(this,Vs).setSettingBool(r,t));case"Int":if(!Number.isInteger(t))throw new Error(`Setting '${e}' requires an integer value`);return ce(k(this,Vs).setSettingInt(r,t));case"Float":return ce(k(this,Vs).setSettingFloat(r,t));case"String":return ce(k(this,Vs).setSettingString(r,t));case"Color":{const e=t;return ce(k(this,Vs).setSettingColor(r,ze.fromColor(e)))}case"Enum":return ce(k(this,Vs).setSettingEnum(r,t));default:throw new Error(`Unknown setting type for key '${e}'`)}}getSetting(e){Y("keypath",e,H());const t=this.normalizeSettingKey(e);if(!this.isValidSettingKey(t))throw new Error(`Invalid setting key: '${e}'`);switch(this.getSettingTypeForKey(t)){case"Bool":return ce(k(this,Vs).getSettingBool(t));case"Int":return ce(k(this,Vs).getSettingInt(t));case"Float":return ce(k(this,Vs).getSettingFloat(t));case"String":return ce(k(this,Vs).getSettingString(t));case"Color":return ze.toColor(ce(k(this,Vs).getSettingColor(t)));case"Enum":return ce(k(this,Vs).getSettingEnum(t));default:throw new Error(`Unknown setting type for key '${e}'`)}}normalizeSettingKey(e){return e.startsWith("ubq://")?e.slice(6):e}isValidSettingKey(e){return e in{"controlGizmo/showCropHandles":!0,"controlGizmo/showCropScaleHandles":!0,"controlGizmo/showMoveHandles":!0,"controlGizmo/showResizeHandles":!0,"controlGizmo/showRotateHandles":!0,"controlGizmo/showScaleHandles":!0,doubleClickToCropEnabled:!0,"features/singlePageModeEnabled":!0,"features/pageCarouselEnabled":!0,"features/transformEditsRetainCoverMode":!0,"mouse/enableScroll":!0,"mouse/enableZoom":!0,"page/allowCropInteraction":!0,"page/allowMoveInteraction":!0,"page/allowResizeInteraction":!0,"page/allowRotateInteraction":!0,"page/dimOutOfPageAreas":!0,"page/restrictResizeInteractionToFixedAspectRatio":!0,"page/moveChildrenWhenCroppingFill":!0,"page/selectWhenNoBlocksSelected":!0,"page/highlightWhenCropping":!0,"page/title/appendPageName":!0,"page/title/show":!0,"page/title/showOnSinglePage":!0,"page/title/showPageTitleTemplate":!0,"placeholderControls/showButton":!0,"placeholderControls/showOverlay":!0,"blockAnimations/enabled":!0,showBuildVersion:!0,"touch/dragStartCanSelect":!0,"touch/singlePointPanning":!0,useSystemFontFallback:!0,forceSystemEmojis:!0,basePath:!0,defaultEmojiFontFileUri:!0,defaultFontFileUri:!0,license:!0,"page/title/fontFileUri":!0,"page/title/separator":!0,fallbackFontUri:!0,"upload/supportedMimeTypes":!0,"web/fetchCredentials":!0,"controlGizmo/blockScaleDownLimit":!0,positionSnappingThreshold:!0,rotationSnappingThreshold:!0,maxImageSize:!0,borderOutlineColor:!0,clearColor:!0,"colorMaskingSettings/maskColor":!0,cropOverlayColor:!0,errorStateColor:!0,highlightColor:!0,"page/innerBorderColor":!0,"page/marginFillColor":!0,"page/marginFrameColor":!0,"page/outerBorderColor":!0,"page/title/color":!0,pageHighlightColor:!0,placeholderHighlightColor:!0,progressColor:!0,rotationSnappingGuideColor:!0,ruleOfThirdsLineColor:!0,snappingGuideColor:!0,textVariableHighlightColor:!0,handleFillColor:!0,doubleClickSelectionMode:!0,"touch/pinchAction":!0,"touch/rotateAction":!0,"camera/clamping/overshootMode":!0,renderMode:!0,alwaysHighlightPlaceholders:!0,"colorMaskingSettings/secondPass":!0,"debug/enforceScopesInAPIs":!0,"debug/showCameraDebugVisualization":!0,"debug/showHandlesInteractionArea":!0,"debug/useDebugMipmaps":!0,"debug/showDebugUI":!0,"debug/hookInputSystem":!0,"features/effectsEnabled":!0,"features/highQualityMipmaps":!0,"features/hspSelectiveAdjustmentsEnabled":!0,"features/implicitUpdatesEnabled":!0,"features/templatingEnabled":!0,"features/videosEnabled":!0,"features/videoCaptionsEnabled":!0,"features/forceLowQualityVideoPreview":!0,"features/matchThumbnailSourceToFill":!0,"features/p3WorkingColorSpace":!0,"features/removeForegroundTracksOnSceneLoad":!0,"features/videoTranscodingEnabled":!0,"features/textEditModeTransformHandlesEnabled":!0,renderTextCursorAndSelectionInEngine:!0,clampThumbnailTextureSizes:!0,"dock/hideLabels":!0,"dock/iconSize":!0}}getSettingTypeForKey(e){const t=Object.keys({borderOutlineColor:!0,clearColor:!0,"colorMaskingSettings/maskColor":!0,cropOverlayColor:!0,errorStateColor:!0,handleFillColor:!0,highlightColor:!0,"page/innerBorderColor":!0,"page/marginFillColor":!0,"page/marginFrameColor":!0,"page/outerBorderColor":!0,"page/title/color":!0,pageHighlightColor:!0,placeholderHighlightColor:!0,progressColor:!0,rotationSnappingGuideColor:!0,ruleOfThirdsLineColor:!0,snappingGuideColor:!0,textVariableHighlightColor:!0});if(new Set(t).has(e))return"Color";const r=Object.keys({doubleClickSelectionMode:!0,"touch/pinchAction":!0,"touch/rotateAction":!0,"camera/clamping/overshootMode":!0});if(new Set(r).has(e))return"Enum";if(e in{maxImageSize:!0})return"Int";const n=Object.keys({"controlGizmo/blockScaleDownLimit":!0,positionSnappingThreshold:!0,rotationSnappingThreshold:!0});if(new Set(n).has(e))return"Float";const o=Object.keys({basePath:!0,defaultEmojiFontFileUri:!0,defaultFontFileUri:!0,license:!0,"page/title/fontFileUri":!0,"page/title/separator":!0,fallbackFontUri:!0,"upload/supportedMimeTypes":!0,"web/fetchCredentials":!0});return new Set(o).has(e)?"String":"Bool"}setSettingBool(e,t){return Y("keypath",e,H()),Y("value",t,O()),ce(k(this,Vs).setSettingBool(e,t))}getSettingBool(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingBool(e))}setSettingInt(e,t){return Y("keypath",e,H()),Y("value",t,U()),ce(k(this,Vs).setSettingInt(e,t))}getSettingInt(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingInt(e))}setSettingFloat(e,t){return Y("keypath",e,H()),Y("value",t,$()),ce(k(this,Vs).setSettingFloat(e,t))}getSettingFloat(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingFloat(e))}setSettingString(e,t){return Y("keypath",e,H()),Y("value",t,H()),ce(k(this,Vs).setSettingString(e,t))}getSettingString(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingString(e))}setSettingColor(e,t){return Y("keypath",e,H()),ce(k(this,Vs).setSettingColor(e,ze.fromColor(t)))}getSettingColor(e){return Y("keypath",e,H()),ze.toColor(ce(k(this,Vs).getSettingColor(e)))}setSettingColorRGBA(e,t,r,n,o=1){return Y("keypath",e,H()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Vs).setSettingColorRGBA(e,t,r,n,o))}getSettingColorRGBA(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingColorRGBA(e))}setSettingEnum(e,t){return Y("keypath",e,H()),Y("value",t,H()),ce(k(this,Vs).setSettingEnum(e,t))}getSettingEnum(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingEnum(e))}getSettingEnumOptions(e){return Y("keypath",e,H()),Ve(ce(k(this,Vs).getSettingEnumOptions(e)))}setRole(e){return ce(k(this,Vs).setRole(e))}getRole(){return ce(k(this,Vs).getRole())}findAllSettings(){return Ve(k(this,Vs).findAllSettings())}getSettingType(e){Y("keypath",e,H());return ce(k(this,Vs).getSettingType(e))}getAvailableMemory(){return ce(k(this,Vs).getAvailableMemory())}getUsedMemory(){return ce(k(this,Vs).getUsedMemory())}getMaxExportSize(){return ce(k(this,Vs).getMaxExportSize())}setURIResolver(e){Gs.set(k(this,Vs),e);return ce(k(this,Vs).setURIResolver((t=>e(t,this.defaultURIResolver.bind(this)))))}unstable_getURIResolver(){return Gs.get(k(this,Vs))??null}defaultURIResolver(e){return k(this,Vs).defaultURIResolver(e)}getAbsoluteURI(e){return ce(k(this,Vs).getAbsoluteURI(e))}findAllScopes(){return Ve(k(this,Vs).findAllScopes())}setGlobalScope(e,t){Y("key",e,H()),Y("value",t,H()),ce(k(this,Vs).setGlobalScope(e,t))}getGlobalScope(e){return Y("key",e,H()),ce(k(this,Vs).getGlobalScope(e))}findAllSpotColors(){return Ve(k(this,Vs).findAllSpotColors())}getSpotColorRGBA(e){return Y("name",e,H()),k(this,Vs).getSpotColorRGB(e)}getSpotColorCMYK(e){return Y("name",e,H()),k(this,Vs).getSpotColorCMYK(e)}setSpotColorRGB(e,t,r,n){return Y("name",e,H()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),k(this,Vs).setSpotColorRGB(e,t,r,n)}setSpotColorCMYK(e,t,r,n,o){return Y("name",e,H()),Y("c",t,$()),Y("m",r,$()),Y("y",n,$()),Y("k",o,$()),k(this,Vs).setSpotColorCMYK(e,t,r,n,o)}removeSpotColor(e){return Y("name",e,H()),ce(k(this,Vs).removeSpotColor(e))}setSpotColorForCutoutType(e,t){return Y("type",e,H()),Y("color",t,H()),ce(k(this,Vs).setSpotColorForCutoutType(e,t))}getSpotColorForCutoutType(e){return Y("type",e,H()),ce(k(this,Vs).getSpotColorForCutoutType(e))}convertColorToColorSpace(e,t){return Y("colorSpace",t,H()),ze.toColor(ce(k(this,Vs).convertColorToColorSpace(ze.fromColor(e),t)))}createBuffer(){return k(this,Vs).createBuffer()}destroyBuffer(e){ce(k(this,Vs).destroyBuffer(e))}setBufferData(e,t,r){Y("offset",t,U()),ce(k(this,Vs).setBufferData(e,t,r))}getBufferData(e,t,r){Y("offset",t,U()),Y("length",r,U());const n=k(this,Vs).getBufferData(e,t,r);if("error"in n)throw new Error(n.error);return n}setBufferLength(e,t){Y("length",t,U()),ce(k(this,Vs).setBufferLength(e,t))}getBufferLength(e){return ce(k(this,Vs).getBufferLength(e))}cloneBuffers(){return Ve(ce(k(this,Vs).cloneBuffers()))}restoreBuffers(e){ce(k(this,Vs).restoreBuffers(e))}getMimeType(e){return Y("uri",e,H()),ue((t=>k(this,Vs).getMimeType(e,t)))}findAllTransientResources(){return Ve(ce(k(this,Vs).findAllTransientResources()))}findAllMediaURIs(){return Ve(ce(k(this,Vs).findAllMediaURIs()))}getResourceData(e,t,r){Y("uri",e,H()),Y("chunkSize",t,U()),ce(k(this,Vs).getResourceData(e,t,r))}relocateResource(e,t){Y("currentUrl",e,H()),Y("relocatedUrl",t,H()),ce(k(this,Vs).relocateResource(e,t))}isHighlightingEnabled(e){return Y("id",e,U()),ce(k(this,Vs).isHighlightingEnabled(e))}setHighlightingEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Vs).setHighlightingEnabled(e,t))}setSafeAreaInsets(e){const t=this.getSafeAreaInsets();return ce(k(this,Vs).setSafeAreaInsets(e.left??t.left,e.top??t.top,e.right??t.right,e.bottom??t.bottom))}getSafeAreaInsets(){const[e,t,r,n]=k(this,Vs).getSafeAreaInsets();return{left:e,top:t,right:r,bottom:n}}isSelectionEnabled(e){return Y("id",e,U()),ce(k(this,Vs).isSelectionEnabled(e))}setSelectionEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Vs).setSelectionEnabled(e,t))}};zs=u(null),Vs=new WeakMap,b(zs,1,"unlockWithLicense",Ns,EditorAPI),b(zs,1,"startTracking",Hs,EditorAPI),b(zs,1,"setTrackingMetadata",Ws,EditorAPI),b(zs,1,"getTrackingMetadata",qs,EditorAPI),b(zs,1,"getActiveLicense",$s,EditorAPI),b(zs,1,"_update",Us,EditorAPI),b(zs,1,"setEditMode",Os,EditorAPI),b(zs,1,"getEditMode",Ls,EditorAPI),b(zs,1,"unstable_isInteractionHappening",Rs,EditorAPI),b(zs,1,"getCursorType",Bs,EditorAPI),b(zs,1,"getCursorRotation",Ds,EditorAPI),b(zs,1,"getTextCursorPositionInScreenSpaceX",Is,EditorAPI),b(zs,1,"getTextCursorPositionInScreenSpaceY",Ms,EditorAPI),b(zs,1,"createHistory",Fs,EditorAPI),b(zs,1,"destroyHistory",As,EditorAPI),b(zs,1,"setActiveHistory",Ts,EditorAPI),b(zs,1,"getActiveHistory",xs,EditorAPI),b(zs,1,"addUndoStep",Ps,EditorAPI),b(zs,1,"removeUndoStep",Ss,EditorAPI),b(zs,1,"undo",Cs,EditorAPI),b(zs,1,"redo",Es,EditorAPI),b(zs,1,"canUndo",_s,EditorAPI),b(zs,1,"canRedo",ks,EditorAPI),b(zs,1,"setSetting",ws,EditorAPI),b(zs,1,"getSetting",vs,EditorAPI),b(zs,1,"setSettingBool",ys,EditorAPI),b(zs,1,"getSettingBool",bs,EditorAPI),b(zs,1,"setSettingInt",ms,EditorAPI),b(zs,1,"getSettingInt",gs,EditorAPI),b(zs,1,"setSettingFloat",fs,EditorAPI),b(zs,1,"getSettingFloat",hs,EditorAPI),b(zs,1,"setSettingString",ps,EditorAPI),b(zs,1,"getSettingString",us,EditorAPI),b(zs,1,"setSettingColor",cs,EditorAPI),b(zs,1,"getSettingColor",ds,EditorAPI),b(zs,1,"setSettingColorRGBA",ls,EditorAPI),b(zs,1,"getSettingColorRGBA",ss,EditorAPI),b(zs,1,"setSettingEnum",as,EditorAPI),b(zs,1,"getSettingEnum",is,EditorAPI),b(zs,1,"setRole",os,EditorAPI),b(zs,1,"getRole",ns,EditorAPI),b(zs,1,"findAllSettings",rs,EditorAPI),b(zs,1,"getAvailableMemory",ts,EditorAPI),b(zs,1,"getUsedMemory",es,EditorAPI),b(zs,1,"getMaxExportSize",Ja,EditorAPI),b(zs,1,"setURIResolver",Za,EditorAPI),b(zs,1,"unstable_getURIResolver",Qa,EditorAPI),b(zs,1,"findAllScopes",Ka,EditorAPI),b(zs,1,"setGlobalScope",Ya,EditorAPI),b(zs,1,"getGlobalScope",Xa,EditorAPI),b(zs,1,"findAllSpotColors",ja,EditorAPI),b(zs,1,"getSpotColorRGBA",Ga,EditorAPI),b(zs,1,"getSpotColorCMYK",za,EditorAPI),b(zs,1,"setSpotColorRGB",Va,EditorAPI),b(zs,1,"setSpotColorCMYK",Na,EditorAPI),b(zs,1,"removeSpotColor",Ha,EditorAPI),b(zs,1,"setSpotColorForCutoutType",Wa,EditorAPI),b(zs,1,"getSpotColorForCutoutType",qa,EditorAPI),b(zs,1,"convertColorToColorSpace",$a,EditorAPI),b(zs,1,"isHighlightingEnabled",Ua,EditorAPI),b(zs,1,"setHighlightingEnabled",Oa,EditorAPI),b(zs,1,"setSafeAreaInsets",La,EditorAPI),b(zs,1,"getSafeAreaInsets",Ra,EditorAPI),b(zs,1,"isSelectionEnabled",Ba,EditorAPI),b(zs,1,"setSelectionEnabled",Da,EditorAPI),g(zs,EditorAPI);var js,Xs,Ys,Ks,Qs,Zs,Js,el,tl,rl,nl,ol,il,al,sl=new WeakMap,ll={assets:[],total:0,currentPage:0,nextPage:void 0};Zs=[de],Qs=[de],Ks=[de],Ys=[de],Xs=[de],js=[le({disabledInModes:["Playback"]})];var AssetAPI=class{constructor(e){m(rl,5,this),_(this,nl),_(this,Js),_(this,el,new Set),_(this,tl,new Set),y(this,"onAssetSourceAdded",(e=>{const t=k(this,Js).subscribeToAssetSourceAdded(e);return()=>{k(this,Js).isDeleted()||ce(k(this,Js).unsubscribe(t))}})),y(this,"onAssetSourceRemoved",(e=>{const t=k(this,Js).subscribeToAssetSourceRemoved(e);return()=>{k(this,Js).isDeleted()||ce(k(this,Js).unsubscribe(t))}})),y(this,"onAssetSourceUpdated",(e=>{const t=k(this,Js).subscribeToAssetSourceUpdated(e);return()=>{k(this,Js).isDeleted()||ce(k(this,Js).unsubscribe(t))}})),E(this,Js,e)}registerApplyMiddleware(e){return k(this,el).add(e),()=>{k(this,el).delete(e)}}registerApplyToBlockMiddleware(e){return k(this,tl).add(e),()=>{k(this,tl).delete(e)}}addSource(e){const t=e.getSupportedMimeTypes?.bind(e),r=e.getGroups?.bind(e),n=e.fetchAsset?.bind(e),o=e.applyAsset?.bind(e),i=e.applyAssetToBlock?.bind(e),a=e.applyAssetProperty?.bind(e),s=e.addAsset?.bind(e),l=e.removeAsset?.bind(e),d=e.credits,c=e.license;ce(k(this,Js).addAssetSource(e.id,(async(t,r)=>{try{const n={...t,sortKey:t.sortKey,sortingOrder:t.sortingOrder,sortActiveFirst:t.sortActiveFirst,tags:Ve(t.tags),groups:Ve(t.groups),excludeGroups:Ve(t.excludeGroups)},o=await e.findAssets(n);if(o){const t={...o,assets:o.assets.map((t=>dl(t,e.id)))};r.invoke(t)}else r.invoke(ll)}catch(e){r.invoke(e.message??"Unknown error in user-defined `findAssets`")}}),n?async(t,r,o)=>{try{const i=await n(t,{locale:r});null===i?o.invoke(null):o.invoke(dl(i,e.id))}catch(e){o.invoke(e.message??"Unknown error in user-defined `fetchAsset`")}}:null,r?async e=>{try{const t=await r();e.invoke(t)}catch(t){e.invoke(t.message??"Unknown error in user-defined `getGroups`")}}:null,d?()=>({name:d.name,url:d.url??""}):null,c?()=>({name:c.name,url:c.url??""}):null,t?()=>t()??[]:null,o?async(e,t)=>{try{const r=await o(C(this,nl,ol).call(this,e));t.invoke(r)}catch(e){t.invoke(e.message??"Unknown error in user-defined `applyAsset`")}}:null,i?async(e,t,r)=>{try{await i(C(this,nl,ol).call(this,e),t),r.invoke({})}catch(e){r.invoke(e.message??"Unknown error in user-defined `applyAssetToBlock`")}}:null,a?async(e,t,r)=>{try{await a(C(this,nl,ol).call(this,e),t),r.invoke({})}catch(e){r.invoke(e.message??"Unknown error in user-defined `applyAssetProperty`")}}:null,s?async e=>{s(e)}:null,l?async e=>{l(e)}:null)),C(this,nl,il).call(this,e.id,e)}addLocalSource(e,t,r,n){ce(k(this,Js).addLocalAssetSource(e,t??[],r?async(e,t)=>{try{const n=await r(C(this,nl,ol).call(this,e));t.invoke(n)}catch(e){t.invoke(e.message??"Unknown error in user-defined `applyAsset`")}}:null,n?async(e,t,r)=>{try{await n(C(this,nl,ol).call(this,e),t),r.invoke({})}catch(e){r.invoke(e.message??"Unknown error in user-defined `applyAssetToBlock`")}}:null))}addLocalAssetSourceFromJSONString(e,t,r){Y("contentJSON",e,H()),Y("basePath",t,W(H())),Y("options",r,W(q())),void 0!==r?.matcher&&Y("options.matcher",r.matcher,L(H()));const n=t??null,o=r?.matcher;return new Promise(((t,r)=>{try{t(ce(k(this,Js).addLocalAssetSourceFromJSONString(e,n,o)))}catch(e){r(e)}}))}addLocalAssetSourceFromJSONURI(e,t){return Y("contentURI",e,H()),Y("options",t,W(q())),void 0!==t?.matcher&&Y("options.matcher",t.matcher,L(H())),new Promise(((r,n)=>{k(this,Js).addLocalAssetSourceFromJSONURI(e,t?.matcher,(e=>{try{const t=ce(e);r(t)}catch(e){n(e)}}))}))}removeSource(e){ce(k(this,Js).removeAssetSource(e)),C(this,nl,al).call(this,e)}findAllSources(){return Ve(k(this,Js).findAllAssetSources())}findAssets(e,t){return new Promise(((r,n)=>{let o=t?.tags??[];Array.isArray(o)||(o=[o]);const i={perPage:t?.perPage??0,page:t?.page??0,query:t?.query??"",tags:o,groups:t?.groups??[],excludeGroups:t?.excludeGroups??[],locale:t?.locale??"",sortingOrder:t?.sortingOrder??"None",sortKey:t?.sortKey??"",sortActiveFirst:t?.sortActiveFirst??!1};k(this,Js).findAssetSourceAssets(e,i,(e=>{try{const t=ce(e);r({...t,nextPage:-1===t.nextPage?void 0:t.nextPage})}catch(e){n(e)}}))}))}async fetchAsset(e,t,r={}){Y("sourceId",e,H()),Y("assetId",t,H()),Y("params",r,W(q()));const n={locale:r.locale??""};return new Promise(((r,o)=>{k(this,Js).fetchAssetSourceAsset(e,t,n,(e=>{try{const t=ce(e);r(t||null)}catch(e){o(e)}}))}))}async getGroups(e){return ue((t=>k(this,Js).getAssetSourceGroups(e,t))).then((e=>Ve(e)))}getSupportedMimeTypes(e){return Ve(ce(k(this,Js).getAssetSourceSupportedMimeTypes(e)))}getCredits(e){const t=ce(k(this,Js).getAssetSourceCredits(e));if(t.name||t.url)return t.url?t:{name:t.name,url:void 0}}getLicense(e){const t=ce(k(this,Js).getAssetSourceLicense(e));if(t.name||t.url)return t.url?t:{name:t.name,url:void 0}}canManageAssets(e){return!!sl.get(k(this,Js))?.get(e)?.canManageAssets}addAssetToSource(e,t){ce(k(this,Js).addAssetToSource(e,t))}removeAssetFromSource(e,t){ce(k(this,Js).removeAssetFromSource(e,t))}async apply(e,t,r){const n={clipType:r?.clipType},o=(e,t)=>new Promise(((r,n)=>{k(this,Js).applyAssetSourceAsset(e,dl(t,e),(e=>{try{const t=ce(e);k(this,Js).isValid(t)?r(t):r(void 0)}catch(e){n(e)}}))}));if(k(this,el).size>0){return Array.from(k(this,el)).reduce(((e,t)=>(r,o)=>t(r,o,e,n)),o)(e,t)}return o(e,t)}async applyToBlock(e,t,r){const n=(e,t,r)=>ue((n=>k(this,Js).applyAssetSourceAssetToBlock(e,dl(t,e),r,n)));if(k(this,tl).size>0){return Array.from(k(this,tl)).reduce(((e,t)=>(r,n,o)=>t(r,n,o,e)),n)(e,t,r)}return n(e,t,r)}async applyProperty(e,t,r){return ue((n=>k(this,Js).applyAssetSourceProperty(e,dl(t,e),r,n)))}async defaultApplyAsset(e){return new Promise(((t,r)=>{k(this,Js).defaultApplyAsset(dl(e,""),(e=>{try{const r=ce(e);k(this,Js).isValid(r)?t(r):t(void 0)}catch(e){r(e)}}))}))}async defaultApplyAssetToBlock(e,t){return ue((r=>k(this,Js).defaultApplyAssetToBlock(dl(e,""),t,r)))}assetSourceContentsChanged(e){ce(k(this,Js).assetSourceContentsChanged(e))}dispose(){sl.delete(k(this,Js))}};function dl(e,t){return"context"in e&&e.context.sourceId===t&&"active"in e?e:{...e,active:e.active??!1,context:{sourceId:t}}}rl=u(null),Js=new WeakMap,el=new WeakMap,tl=new WeakMap,nl=new WeakSet,ol=function(e){const t={...e};return 0===t.groups?.length&&delete t.groups,t.locale||delete t.locale,t.label||delete t.label,0===t.tags?.length&&delete t.tags,t.credits?.name||t.credits?.url?t.credits.url||delete t.credits.url:delete t.credits,t.license?.name||t.license?.url?t.license.url||delete t.license.url:delete t.license,t.utm?.source||t.utm?.medium?(t.utm.source||delete t.utm.source,t.utm.medium||delete t.utm.medium):delete t.utm,t},il=function(e,t){sl.has(k(this,Js))||sl.set(k(this,Js),new Map),t.canManageAssets&&console.warn(`\nDEPRECATION WARNING:\n\n'canManageAssets' flag was found for asset source with the id '${e}'.\n\nThis flag is deprecated and will be removed in the next version. If you have used it to control if an upload buttons is rendered in the asset library, use the 'canAdd' options on an asset library entry. See documentation here: https://img.ly/docs/cesdk/ui/guides/customize-asset-library/`),sl.get(k(this,Js)).set(e,{canManageAssets:t.canManageAssets})},al=function(e){sl.get(k(this,Js))?.delete(e)},b(rl,1,"addSource",Zs,AssetAPI),b(rl,1,"addLocalSource",Qs,AssetAPI),b(rl,1,"addLocalAssetSourceFromJSONString",Ks,AssetAPI),b(rl,1,"addLocalAssetSourceFromJSONURI",Ys,AssetAPI),b(rl,1,"removeSource",Xs,AssetAPI),b(rl,1,"findAllSources",js,AssetAPI),g(rl,AssetAPI);var cl,ul,pl,hl,fl=(e=>(e[e.Information=0]="Information",e[e.Warning=1]="Warning",e[e.Error=2]="Error",e))(fl||{}),gl=(e=>(e[e.Free=0]="Free",e[e.VerticalStack=1]="VerticalStack",e[e.HorizontalStack=2]="HorizontalStack",e[e.DepthStack=3]="DepthStack",e))(gl||{});pl=[le({disabledInModes:["Playback"]})],ul=[le({disabledInModes:["Playback"]})],cl=[le({disabledInModes:["Playback"]})];var ml,bl,yl,vl,wl,kl,_l=class{constructor(e){m(hl,5,this),y(this,"ubique"),y(this,"notificationStream",(e=>{const t=this.ubique.addEventCallback("NotificationEvent",(t=>e({type:fl[t.type],i18n:t.i18n})));return()=>{t.dispose(),t.delete()}})),y(this,"designElementLifecycleStream",(e=>t=>{const r=this.ubique.addEventCallback(e,t);return()=>{r.dispose(),r.delete()}})),y(this,"historyStream",(e=>{const t=this.ubique.addEventCallback("HistoryUpdatedEvent",e);return()=>{t.dispose(),t.delete()}})),this.ubique=e.getInternalAPI()}dispose(){this.ubique.delete(),this.ubique=null}setErrorCallback(e,t){this.ubique.setErrorCallback(e,t)}getSelectedText(){return ce(this.ubique.getSelectedText())}hasComponent(e,t){return ce(this.ubique.hasComponent(e,t))}getValue(e,t,r){return ce(this.ubique.getValue(e,t,r))}execute(e,t){let r;const n=new Promise(((n,o)=>{r=this.ubique.ubqExecute(e,t,(e=>{try{const t=ce(e);n(t)}catch(e){o(e)}}))}));return ce(r),n}sendKey(e){return this.execute("ubq/inputs/keyboardkey",function(e){const t={key:255,characters:e.key,shiftIsHeld:e.shiftKey,commandIsHeld:e.metaKey||e.ctrlKey,optionIsHeld:e.altKey,timestamp:Date.now()};switch(e.key.toUpperCase()){case"0":t.key=0;break;case"1":t.key=1;break;case"2":t.key=2;break;case"3":t.key=3;break;case"4":t.key=4;break;case"5":t.key=5;break;case"6":t.key=6;break;case"7":t.key=7;break;case"8":t.key=8;break;case"9":t.key=9;break;case"A":t.key=10;break;case"B":t.key=11;break;case"C":t.key=12;break;case"D":t.key=13;break;case"E":t.key=14;break;case"F":t.key=15;break;case"G":t.key=16;break;case"H":t.key=17;break;case"I":t.key=18;break;case"J":t.key=19;break;case"K":t.key=20;break;case"L":t.key=21;break;case"M":t.key=22;break;case"N":t.key=23;break;case"O":t.key=24;break;case"P":t.key=25;break;case"Q":t.key=26;break;case"R":t.key=27;break;case"S":t.key=28;break;case"T":t.key=29;break;case"U":t.key=30;break;case"V":t.key=31;break;case"W":t.key=32;break;case"X":t.key=33;break;case"Y":t.key=34;break;case"Z":t.key=35;break;case" ":t.key=42;break;case"ESCAPE":t.key=43,t.characters="";break;case"BACKSPACE":t.key=40,t.characters="";break;case"DELETE":t.key=44,t.characters="";break;case"ENTER":t.key=41,t.characters=t.shiftIsHeld?"\u2028":"\n";break;case"CONTROL":t.key=45,t.characters="";break;case"ALT":t.key=46,t.characters="";break;case"SHIFT":t.key=47,t.characters="";break;case"ARROWLEFT":t.key=36,t.characters="";break;case"ARROWRIGHT":t.key=37,t.characters="";break;case"ARROWUP":t.key=38,t.characters="";break;case"ARROWDOWN":t.key=39,t.characters="";break;case"DEAD":t.key=255,t.characters=""}return t}(e))}changeSceneLayout(e,t,r,n){return this.execute("ubq/scene/changeLayout",[e,gl[t],r,n])}};b(hl=u(null),1,"getSelectedText",pl,_l),b(hl,1,"hasComponent",ul,_l),b(hl,1,"getValue",cl,_l),g(hl,_l),vl=[le({disabledInModes:["Playback"]})],yl=[de],bl=[le({disabledInModes:["Playback"]})],ml=[de];var VariableAPI=class{constructor(e){m(kl,5,this),_(this,wl),E(this,wl,e)}findAll(){return Ve(k(this,wl).findAllVariables())}setString(e,t){return Y("key",e,H()),Y("value",t,H()),ce(k(this,wl).setVariableString(e,t))}getString(e){return Y("key",e,H()),ce(k(this,wl).getVariableString(e))}remove(e){return Y("key",e,H()),ce(k(this,wl).removeVariable(e))}};kl=u(null),wl=new WeakMap,b(kl,1,"findAll",vl,VariableAPI),b(kl,1,"setString",yl,VariableAPI),b(kl,1,"getString",bl,VariableAPI),b(kl,1,"remove",ml,VariableAPI),g(kl,VariableAPI);var El=!1;var Cl="https://api.img.ly/activate";var Sl,Pl,xl,Tl=(Sl=P(),xl=null!=Sl?e(o(Sl)):{},((e,o,a,s)=>{if(o&&"object"==typeof o||"function"==typeof o)for(let l of n(o))i.call(e,l)||l===a||t(e,l,{get:()=>o[l],enumerable:!(s=r(o,l))||s.enumerable});return e})(!Pl&&Sl&&Sl.__esModule?xl:t(xl,"default",{value:Sl,enumerable:!0}),Sl)),Al="../../cesdk-v1.67.0-nightly.20251207-44YCFRT6.data",Fl="../../cesdk-v1.67.0-nightly.20251207-PNAPVRQK.wasm",Ml=Tl.default,Il=!("undefined"==typeof window||!window.document||!window.document.createElement)&&navigator&&navigator.userAgent||"",Dl=(Il.indexOf("Edge"),Il.match(/msie|trident/i),/\b(iPad|iPhone|iPod)\b/.test(Il)&&/WebKit/.test(Il)&&!/Edge/.test(Il)&&("undefined"==typeof window||!("MSStream"in window))),Bl=/(WOW64|Win32|i[3-6]86)/.test(navigator.userAgent)||/Win32|i[3-6]86|armv[6-7]/.test(navigator.platform),Rl=(e,t)=>{if(null!=t){return[t,e.split("/").pop()].join("")}return new URL(e,window.location.origin)};function Ll(){try{return new WebAssembly.Memory({initial:Ol(Dl?512:32),maximum:Ol(Bl?1024:2048)})}catch(e){return new WebAssembly.Memory({initial:Ol(32),maximum:Ol(Bl?1024:2048)})}}function Ol(e){return 1024*e*1024/65536}async function Ul(e,t){const{core:r}=t,n=t.logger,o=Rl(Fl,r.baseURL).toString(),i=Rl(Al,r.baseURL).toString(),a=/electron/i.test(navigator.userAgent),s=function(e,t=fetch){return e.license&&0!==e.license.length&&"evaluation-license"!==e.license?e.license.length<128?t(Cl,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:e.license,userId:e.userId})}).then((e=>{if(e.ok)return e.json();throw new Error("Unfortunately we are experiencing a server down time and your License key cannot be validated. We're already working on a fix and will restore service soon. Should services not restore within the hour, kindly get in touch with our support team.")})).then((e=>{if("valid"===e.status)return e.license;throw"expired"===e.status?new Error("Thanks for using IMG.LY for creative editing. Please note that your license file or commercial use is expired. Please get in touch with our sales team to discuss extension of your commercial license."):new Error("The License Key (API Key) you are using to access the IMG.LY SDK is invalid. Please ensure that you are using the license key tied to your subscription and get in touch with our support team.")})):Promise.resolve(e.license):Promise.resolve("")}(t),l=a?await fetch(i,{credentials:"same-origin"}).then((e=>e.arrayBuffer())).then((e=>function(t,r){if(t!==i)return null;if(r===e.byteLength)return e;throw new Error(`Attempt to get preloaded package of unknown name or size: ${t} ${r}`)})):void 0;return new Promise(((r,a)=>{const d={getPreloadedPackage:l,locateFile:(e,t)=>e.endsWith(".wasm")?o:e.endsWith(".data")?i:t+e,print:e=>{e&&"undefined"!==e&&n(e,"Info")},printErr:e=>{e&&"undefined"!==e&&n(e,"Error")},logReadFiles:!1,printWithColors:!0,wasmMemory:Ll()};Ml(d).then((async n=>{n.specialHTMLTargets["!canvas"]=e;n.emscripten_ubq_settings_forceWebGL1=Dl||!!t?.forceWebGL1;const o=ce(n.createEngine("!canvas",t.audioOutput??"auto"));!function(e,t){ce(e.unlockWithLicense(t??""))}(o,await s),function(e,t){const r=new EditorAPI(e),n=new AssetAPI(e);if(r.setRole(t.role??"Creator"),El){const t=new _l(e);t.execute("cesdk/getVersionInfo").then((e=>console.debug(e))),t.execute("cesdk/getCapabilitiesInfo").then((e=>console.debug(e))),t.dispose()}r.setSetting("basePath",t.baseURL),r.setSetting("showBuildVersion",El||!1),t.featureFlags?.preventScrolling&&(r.setSetting("touch/singlePointPanning",!1),r.setSetting("touch/dragStartCanSelect",!1)),n.addLocalSource("ly.img.text"),function(){El&&(r.setSetting("features/hspSelectiveAdjustmentsEnabled",!1),r.setSetting("features/templatingEnabled",!0));const e=!!t.featureFlags?.singlePageMode;r.setSetting("features/singlePageModeEnabled",e),r.setSetting("features/effectsEnabled",!0)}(),function(){const t=new VariableAPI(e);(El||"undefined"!=typeof window&&window.Cypress)&&(t.setString("company_name","img.ly"),t.setString("first_name","Charly"),t.setString("last_name","Williams"),t.setString("address","742 Evergreen Terrace"),t.setString("city","Springfield"))}(),r.startTracking(t.license??"",t.userId??"")}(o,t),r(o)})).catch(a)}))}globalThis.ubq_browserTabHidden=!0;var $l={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};globalThis.ubq_browserTabHidden=!0;var ql={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};globalThis.ubq_browserTabHidden=!0;var Wl={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};globalThis.ubq_browserTabHidden=!0;var Hl,Nl,Vl,zl,Gl,jl,Xl,Yl,Kl={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};if((Nl=Hl||(Hl={})).start=function(e){return{...e,msg:"exportVideo"}},Nl.abort=function(){return{msg:"exportVideoAbort"}},Nl.finished=function(e){return{...e,msg:"exportVideoFinished"}},Nl.error=function(e){return{...e,msg:"exportVideoError"}},Nl.progress=function(e){return{...e,msg:"exportVideoProgress"}},Nl.log=function(e){return{...e,msg:"exportLog"}},(zl=Vl||(Vl={})).start=function(e){return{...e,msg:"exportAudio"}},zl.abort=function(){return{msg:"exportAudioAbort"}},zl.finished=function(e){return{...e,msg:"exportAudioFinished"}},zl.error=function(e){return{...e,msg:"exportAudioError"}},zl.progress=function(e){return{...e,msg:"exportAudioProgress"}},zl.log=function(e){return{...e,msg:"exportLog"}},(jl=Gl||(Gl={})).start=function(e){return{...e,msg:"exportStatic"}},jl.abort=function(){return{msg:"exportStaticAbort"}},jl.finished=function(e){return{...e,msg:"exportStaticFinished"}},jl.error=function(e){return{...e,msg:"exportStaticError"}},jl.log=function(e){return{...e,msg:"exportLog"}},(Yl=Xl||(Xl={})).start=function(e){return{...e,msg:"exportWithColorMask"}},Yl.abort=function(){return{msg:"exportWithColorMaskAbort"}},Yl.finished=function(e){return{...e,msg:"exportWithColorMaskFinished"}},Yl.error=function(e){return{...e,msg:"exportWithColorMaskError"}},Yl.log=function(e){return{...e,msg:"exportLog"}},"undefined"!=typeof WorkerGlobalScope){let e=!0;const t=function(){const e=new Set;return Object.assign((t=>(e.add(t),()=>e.delete(t))),{emit:t=>e.forEach((e=>e(t)))})}(),r={subscribe:t,value:()=>e,update:r=>{e=r,t.emit(r)}},n=new AbortController,o=new AbortController,i=new AbortController,a=new AbortController;self.onmessage=async({data:e})=>{switch(e.msg){case"setVisibility":r.update(e.visible);break;case"exportVideo":(async function(e,t,r,n,o){let i,a,s=0,l=null;const d=o.visibility??Wl,c=o.inactivityTimeout,u=d.subscribe((()=>{null!==l&&(l=Date.now()),globalThis.ubq_browserTabHidden=!d.value()}));let p=null;function h(){clearTimeout(a),u(),p?.()}try{let u=function(){!0===d.value()&&null!==l&&Date.now()-l>c?i(new Error("Video export timed out due to inactivity.")):(s<10&&g.update(),a=setTimeout(u,1))};const f=new OffscreenCanvas(64,64),g=await Ul(f,{...e,audioOutput:"none"}),m=new SceneAPI(g),b=new BlockAPI(g),y=new EditorAPI(g);if(p=()=>{g.delete()},n?.trackingMetadata&&y.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);y.setURIResolver(e)}n?.buffers&&y.restoreBuffers(n.buffers);const v=r.mimeType??"video/mp4";u(),await m.loadFromString(t,!0);const w=b.getDuration(r.block),k=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),g.exportVideoToBuffer(r.block,r.timeOffset??0,r.duration??w,v,((e,t,r)=>{s=e-t,l=Date.now(),o?.onProgress?.(e,t,r)}),(e=>{"error"in e?n(e.error):t(e)}),{h264Profile:r.h264Profile??77,h264Level:r.h264Level??52,framerate:r.framerate??30,videoBitrate:r.videoBitrate??0,audioBitrate:r.audioBitrate??0,useTargetSize:void 0!==r.targetWidth&&void 0!==r.targetHeight,targetWidth:r.targetWidth??0,targetHeight:r.targetHeight??0,allowTextOverhang:r.allowTextOverhang??!1})})),_=new Uint8Array(k.byteLength);return _.set(k),h(),{data:_,mimeType:v}}catch(e){throw h(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Hl.log({logLevel:t,message:e}))},abortSignal:n.signal},e.sceneString,e.exportOptions,e.workerOptions,{onProgress:(e,t,r)=>{self.postMessage(Hl.progress({renderedFrames:e,encodedFrames:t,totalFrames:r}))},visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Hl.finished(e))}),(e=>{self.postMessage(Hl.error({error:e}))}));break;case"exportVideoAbort":n.abort();break;case"exportAudio":(async function(e,t,r,n,o){let i,a,s=0,l=null;const d=o.visibility??$l,c=o.inactivityTimeout,u=d.subscribe((()=>{null!==l&&(l=Date.now()),globalThis.ubq_browserTabHidden=!d.value()}));let p=null;function h(){clearTimeout(a),u(),p?.()}try{let u=function(){!0===d.value()&&null!==l&&Date.now()-l>c?i(new Error("Audio export timed out due to inactivity.")):(s<10&&g.update(),a=setTimeout(u,1))};const f=new OffscreenCanvas(64,64),g=await Ul(f,{...e,audioOutput:"none"}),m=new SceneAPI(g),b=new BlockAPI(g),y=new EditorAPI(g);if(p=()=>{g.delete()},n?.trackingMetadata&&y.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);y.setURIResolver(e)}n?.buffers&&y.restoreBuffers(n.buffers),u(),await m.loadFromString(t,!0);if("//ly.img.ubq/page"===b.getType(r.block)){const e=b.getChildren(r.block);for(const t of e)try{let e=t;!b.supportsPlaybackControl(t)&&b.supportsFill(t)&&(e=b.getFill(t)),b.supportsPlaybackControl(e)&&(b.unstable_isAVResourceLoaded(e)||await b.forceLoadAVResource(e))}catch{}}else try{let e=r.block;!b.supportsPlaybackControl(r.block)&&b.supportsFill(r.block)&&(e=b.getFill(r.block)),b.supportsPlaybackControl(e)&&(b.unstable_isAVResourceLoaded(e)||await b.forceLoadAVResource(e))}catch{}const v=b.getDuration(r.block),w=r.mimeType??"audio/wav",k=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),g.exportAudioToBuffer(r.block,r.timeOffset??0,r.duration??v,w,((e,t,r)=>{s=e-t,l=Date.now(),o?.onProgress?.(e,t,r)}),(e=>{"error"in e?n(e.error):t(e)}),{sampleRate:r.sampleRate??48e3,numberOfChannels:r.numberOfChannels??2,skipEncoding:r.skipEncoding??!1})})),_=new Uint8Array(k.byteLength);return _.set(k),h(),{data:_,mimeType:w}}catch(e){throw h(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Vl.log({logLevel:t,message:e}))},abortSignal:o.signal},e.sceneString,e.exportOptions,e.workerOptions,{onProgress:(e,t,r)=>{self.postMessage(Vl.progress({renderedFrames:e,encodedFrames:t,totalFrames:r}))},visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Vl.finished(e))}),(e=>{self.postMessage(Vl.error({error:e}))}));break;case"exportAudioAbort":o.abort();break;case"exportStatic":(async function(e,t,r,n,o){let i,a,s=null;const l=o.visibility??ql,d=o.inactivityTimeout,c=l.subscribe((()=>{null!==s&&(s=Date.now()),globalThis.ubq_browserTabHidden=!l.value()}));let u=null;function p(){clearTimeout(a),c(),u?.()}try{let o=function(){!0===l.value()&&null!==s&&Date.now()-s>d?i(new Error("Video export timed out due to inactivity.")):(h.update(),a=setTimeout(o,1))};const c=new OffscreenCanvas(64,64),h=await Ul(c,{...e,audioOutput:"none"}),f=new SceneAPI(h),g=new EditorAPI(h);if(u=()=>{h.delete()},n?.trackingMetadata&&g.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);g.setURIResolver(e)}n?.buffers&&g.restoreBuffers(n.buffers);const m=r.mimeType??"image/png";o(),await f.loadFromString(t,!0);const b=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),h.exportToBuffer(r.block,m,(e=>{"error"in e?n(e.error):t(e)}),{pngCompressionLevel:r.pngCompressionLevel??5,jpegQuality:r.jpegQuality??.9,webpQuality:r.webpQuality??1,useTargetSize:null!=r.targetWidth&&null!=r.targetHeight,targetWidth:r.targetWidth??0,targetHeight:r.targetHeight??0,exportPdfWithHighCompatibility:r.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:r.exportPdfWithUnderlayer??!1,underlayerSpotColorName:r.underlayerSpotColorName??"",underlayerOffset:r.underlayerOffset??0,allowTextOverhang:r.allowTextOverhang??!1})})),y=new Uint8Array(b.byteLength);return y.set(b),p(),{data:y,mimeType:m}}catch(e){throw p(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Gl.log({logLevel:t,message:e}))},abortSignal:i.signal},e.sceneString,e.exportOptions,e.workerOptions,{visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Gl.finished(e))}),(e=>{self.postMessage(Gl.error({error:e}))}));break;case"exportStaticAbort":i.abort();break;case"exportWithColorMask":(async function(e,t,r,n,o){let i,a,s=null;const l=o.visibility??Kl,d=o.inactivityTimeout,c=l.subscribe((()=>{null!==s&&(s=Date.now()),globalThis.ubq_browserTabHidden=!l.value()}));let u=null;function p(){clearTimeout(a),c(),u?.()}try{let o=function(){!0===l.value()&&null!==s&&Date.now()-s>d?i(new Error("Video export timed out due to inactivity.")):(h.update(),a=setTimeout(o,1))};const c=new OffscreenCanvas(64,64),h=await Ul(c,{...e,audioOutput:"none"}),f=new SceneAPI(h),g=new EditorAPI(h);if(u=()=>{h.delete()},n?.trackingMetadata&&g.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);g.setURIResolver(e)}n?.buffers&&g.restoreBuffers(n.buffers);const m=r.mimeType??"image/png";o(),await f.loadFromString(t,!0);const[b,y]=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),h.exportWithColorMaskToBuffer(r.block,m,r.maskColorR,r.maskColorG,r.maskColorB,((e,r)=>{"error"in e?n(e.error):"error"in r?n(r.error):t([e,r])}),{pngCompressionLevel:r.pngCompressionLevel??5,jpegQuality:r.jpegQuality??.9,webpQuality:r.webpQuality??1,useTargetSize:null!=r.targetWidth&&null!=r.targetHeight,targetWidth:r.targetWidth??0,targetHeight:r.targetHeight??0,exportPdfWithHighCompatibility:r.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:r.exportPdfWithUnderlayer??!1,underlayerSpotColorName:r.underlayerSpotColorName??"",underlayerOffset:r.underlayerOffset??0,allowTextOverhang:r.allowTextOverhang??!1})})),v=new Uint8Array(b.byteLength);v.set(b);const w=new Uint8Array(y.byteLength);return w.set(y),p(),{data:[v,w],mimeType:m}}catch(e){throw p(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Xl.log({logLevel:t,message:e}))},abortSignal:a.signal},e.sceneString,e.exportOptions,e.workerOptions,{visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Xl.finished(e))}),(e=>{self.postMessage(Xl.error({error:e}))}));break;case"exportWithColorMaskAbort":a.abort();break;default:console.error("Unknown message received ",e)}}}
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,a=(e,t)=>(t=Symbol[e])?t:Symbol.for("Symbol."+e),s=e=>{throw TypeError(e)},l=(e,r,n)=>r in e?t(e,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[r]=n,d=(e,r)=>t(e,"name",{value:r,configurable:!0}),c=(e,t)=>function(){return t||(0,e[n(e)[0]])((t={exports:{}}).exports,t),t.exports},u=t=>[,,,e(t?.[a("metadata")]??null)],p=["class","method","getter","setter","accessor","field","value","get","set"],h=e=>void 0!==e&&"function"!=typeof e?s("Function expected"):e,f=(e,t,r,n,o)=>({kind:p[e],name:t,metadata:n,addInitializer:e=>r._?s("Already initialized"):o.push(h(e||null))}),g=(e,t)=>l(t,a("metadata"),e[3]),m=(e,t,r,n)=>{for(var o=0,i=e[t>>1],a=i&&i.length;o<a;o++)1&t?i[o].call(r):n=i[o].call(r,n);return n},b=(e,n,o,i,a,l)=>{var c,u,m,b,y,v=7&n,_=!!(8&n),S=!!(16&n),P=v>3?e.length+1:v?_?1:2:0,x=p[v+5],T=v>3&&(e[P-1]=[]),A=e[P]||(e[P]=[]),F=v&&(!S&&!_&&(a=a.prototype),v<5&&(v>3||!S)&&r(v<4?a:{get[o](){return k(this,l)},set[o](e){return E(this,l,e)}},o));v?S&&v<4&&d(l,(v>2?"set ":v>1?"get ":"")+o):d(a,o);for(var M=i.length-1;M>=0;M--)b=f(v,o,m={},e[3],A),v&&(b.static=_,b.private=S,y=b.access={has:S?e=>w(a,e):e=>o in e},3^v&&(y.get=S?e=>(1^v?k:C)(e,a,4^v?l:F.get):e=>e[o]),v>2&&(y.set=S?(e,t)=>E(e,a,t,4^v?l:F.set):(e,t)=>e[o]=t)),u=(0,i[M])(v?v<4?S?l:F[x]:v>4?void 0:{get:F.get,set:F.set}:a,b),m._=1,4^v||void 0===u?h(u)&&(v>4?T.unshift(u):v?S?l=u:F[x]=u:a=u):"object"!=typeof u||null===u?s("Object expected"):(h(c=u.get)&&(F.get=c),h(c=u.set)&&(F.set=c),h(c=u.init)&&T.unshift(c));return v||g(e,a),F&&t(a,o,F),S?4^v?l:F:a},y=(e,t,r)=>l(e,"symbol"!=typeof t?t+"":t,r),v=(e,t,r)=>t.has(e)||s("Cannot "+r),w=(e,t)=>Object(t)!==t?s('Cannot use the "in" operator on this value'):e.has(t),k=(e,t,r)=>(v(e,t,"read from private field"),r?r.call(e):t.get(e)),_=(e,t,r)=>t.has(e)?s("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),E=(e,t,r,n)=>(v(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),C=(e,t,r)=>(v(e,t,"access private method"),r),S=c({"../../../esbuild/polyfill.noop.js"(){}}),P=c({"../../../_builds/cesdk/wasm32-unknown-emscripten/Release/cesdk.js"(e,t){var r,n=(r="undefined"!=typeof document?document.currentScript?.src:void 0,"undefined"!=typeof __filename&&(r=r||__filename),async function(e={}){var t,n,o,i,a,s,l=e,d=new Promise(((e,r)=>{t=e,n=r})),c="object"==typeof window,u="undefined"!=typeof WorkerGlobalScope,p="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node&&"renderer"!=process.type;l.expectedDataFileDownloads??=0,l.expectedDataFileDownloads++,(()=>{var e="undefined"!=typeof ENVIRONMENT_IS_PTHREAD&&ENVIRONMENT_IS_PTHREAD,t="undefined"!=typeof ENVIRONMENT_IS_WASM_WORKER&&ENVIRONMENT_IS_WASM_WORKER;if(!e&&!t){var r="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node;!function(e){"object"==typeof window?window.encodeURIComponent(window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/"):"undefined"==typeof process&&"undefined"!=typeof location&&encodeURIComponent(location.pathname.substring(0,location.pathname.lastIndexOf("/"))+"/");var t,n,o,i,a="cesdk.data",s=l.locateFile?l.locateFile(a,""):a,d=e.remote_package_size,c=null,u=l.getPreloadedPackage?l.getPreloadedPackage(s,d):null;function p(t){function r(e,t){if(!e)throw t+(new Error).stack}function n(e,t,r){this.start=e,this.end=t,this.audio=r}t.FS_createPath("/","ly.img.cesdk",!0,!0),t.FS_createPath("/ly.img.cesdk","fonts",!0,!0),t.FS_createPath("/ly.img.cesdk","icons",!0,!0),t.FS_createPath("/ly.img.cesdk","icu",!0,!0),t.FS_createPath("/ly.img.cesdk","presets",!0,!0),t.FS_createPath("/ly.img.cesdk","shaders",!0,!0),t.FS_createPath("/ly.img.cesdk/shaders","common",!0,!0),n.prototype={requests:{},open:function(e,r){this.name=r,this.requests[r]=this,t.addRunDependency(`fp ${this.name}`)},send:function(){},onload:function(){var e=this.byteArray.subarray(this.start,this.end);this.finish(e)},finish:function(e){t.FS_createDataFile(this.name,null,e,!0,!0,!0),t.removeRunDependency(`fp ${this.name}`),this.requests[this.name]=null}};for(var o=e.files,i=0;i<o.length;++i)new n(o[i].start,o[i].end,o[i].audio||0).open("GET",o[i].filename);function a(o){r(o,"Loading data file failed."),r(o.constructor.name===ArrayBuffer.name,"bad input to processPackageData");var i=new Uint8Array(o);n.prototype.byteArray=i;for(var a=e.files,s=0;s<a.length;++s)n.prototype.requests[a[s].filename].onload();t.removeRunDependency("datafile_cesdk.data")}t.addRunDependency("datafile_cesdk.data"),t.preloadResults??={},t.preloadResults["cesdk.data"]={fromCache:!1},u?(a(u),u=null):c=a}u||(t=s,n=d,o=e=>{c?(c(e),c=null):u=e},i=function(e){console.error("package error:",e)},r?S().readFile(t,((e,t)=>{e?i(e):o(t.buffer)})):(l.dataFileDownloads??={},fetch(t).catch((e=>Promise.reject(new Error(`Network Error: ${t}`,{cause:e})))).then((e=>{if(!e.ok)return Promise.reject(new Error(`${e.status}: ${e.url}`));if(!e.body&&e.arrayBuffer)return e.arrayBuffer().then(o);const r=e.body.getReader(),i=()=>r.read().then(u).catch((t=>Promise.reject(new Error(`Unexpected error while handling : ${e.url} ${t}`,{cause:t})))),a=[],s=e.headers,d=Number(s.get("Content-Length")??n);let c=0;const u=({done:e,value:r})=>{if(!e){a.push(r),c+=r.length,l.dataFileDownloads[t]={loaded:c,total:d};let e=0,n=0;for(const t of Object.values(l.dataFileDownloads))e+=t.loaded,n+=t.total;return l.setStatus?.(`Downloading data... (${e}/${n})`),i()}{const e=new Uint8Array(a.map((e=>e.length)).reduce(((e,t)=>e+t),0));let t=0;for(const r of a)e.set(r,t),t+=r.length;o(e.buffer)}};return l.setStatus?.("Downloading data..."),i()})))),l.calledRun?p(l):(l.preRun??=[]).push(p)}({files:[{filename:"/ly.img.cesdk/fonts/imgly_font_inter_semibold.otf",start:0,end:270760},{filename:"/ly.img.cesdk/icons/ErrorAudio.svg",start:270760,end:271410},{filename:"/ly.img.cesdk/icons/ErrorConnection.svg",start:271410,end:272334},{filename:"/ly.img.cesdk/icons/ErrorImage.svg",start:272334,end:273191},{filename:"/ly.img.cesdk/icons/ErrorUnknown.svg",start:273191,end:275199},{filename:"/ly.img.cesdk/icons/ErrorVideo.svg",start:275199,end:275919},{filename:"/ly.img.cesdk/icons/Move.svg",start:275919,end:276859},{filename:"/ly.img.cesdk/icons/RotateIndicator.svg",start:276859,end:277840},{filename:"/ly.img.cesdk/icu/icudt74l.dat",start:277840,end:812944},{filename:"/ly.img.cesdk/presets/.keep",start:812944,end:812944},{filename:"/ly.img.cesdk/shaders/adjustments.sksl",start:812944,end:816833},{filename:"/ly.img.cesdk/shaders/black_and_white_color_mixer.sksl",start:816833,end:823150},{filename:"/ly.img.cesdk/shaders/common/ubq_adjustments.sksl",start:823150,end:827741},{filename:"/ly.img.cesdk/shaders/common/ubq_color_conversions.sksl",start:827741,end:837726},{filename:"/ly.img.cesdk/shaders/common/ubq_constants.sksl",start:837726,end:838216},{filename:"/ly.img.cesdk/shaders/common/ubq_hue_constants.sksl",start:838216,end:841383},{filename:"/ly.img.cesdk/shaders/common/ubq_noise.sksl",start:841383,end:844021},{filename:"/ly.img.cesdk/shaders/cross_cut.sksl",start:844021,end:844968},{filename:"/ly.img.cesdk/shaders/dot_pattern.sksl",start:844968,end:846046},{filename:"/ly.img.cesdk/shaders/duotone_filter.sksl",start:846046,end:847010},{filename:"/ly.img.cesdk/shaders/extrude_blur.sksl",start:847010,end:849127},{filename:"/ly.img.cesdk/shaders/glow.sksl",start:849127,end:850094},{filename:"/ly.img.cesdk/shaders/half_tone.sksl",start:850094,end:850588},{filename:"/ly.img.cesdk/shaders/hsp_selective_adjustments.sksl",start:850588,end:864188},{filename:"/ly.img.cesdk/shaders/linocut.sksl",start:864188,end:864973},{filename:"/ly.img.cesdk/shaders/liquid.sksl",start:864973,end:865455},{filename:"/ly.img.cesdk/shaders/lut_filter.sksl",start:865455,end:868318},{filename:"/ly.img.cesdk/shaders/mask_color.sksl",start:868318,end:868823},{filename:"/ly.img.cesdk/shaders/mirror.sksl",start:868823,end:869277},{filename:"/ly.img.cesdk/shaders/outliner.sksl",start:869277,end:870914},{filename:"/ly.img.cesdk/shaders/pixelize.sksl",start:870914,end:871214},{filename:"/ly.img.cesdk/shaders/placeholder_overlay_lines.sksl",start:871214,end:871902},{filename:"/ly.img.cesdk/shaders/posterize.sksl",start:871902,end:872114},{filename:"/ly.img.cesdk/shaders/radial_pixel.sksl",start:872114,end:872677},{filename:"/ly.img.cesdk/shaders/recolor.sksl",start:872677,end:874878},{filename:"/ly.img.cesdk/shaders/sharpie.sksl",start:874878,end:877183},{filename:"/ly.img.cesdk/shaders/shifter.sksl",start:877183,end:877867},{filename:"/ly.img.cesdk/shaders/tiltshift.sksl",start:877867,end:878449},{filename:"/ly.img.cesdk/shaders/tv_glitch.sksl",start:878449,end:879167},{filename:"/ly.img.cesdk/shaders/vignette.sksl",start:879167,end:879539}],remote_package_size:879539})}})(),"object"==typeof window&&"object"==typeof window.performance?l.performance=performance:"object"==typeof global&&"object"==typeof global.perf_hooks&&"object"==typeof global.perf_hooks.performance?l.performance=global.perf_hooks.performance:l.performance={mark:function(){},measure:function(){}},(i=o||(o={}))[i.PENDING=0]="PENDING",i[i.FINISHED=1]="FINISHED",i[i.ALLOCATED=2]="ALLOCATED",i[i.ERROR=3]="ERROR",(s=a||(a={}))[s.GET=0]="GET",s[s.POST=1]="POST";class FetchProcess{constructor(e,t){this.state=o.PENDING,this.totalBytes=0,this.receivedLength=0,this.handle=e,this.uri=t,this.abortController=new AbortController,this.abortSignal=this.abortController.signal}async readChunks(e){let t=0;const r=[],n=e=>{r.push(e),t+=e.length,this.receivedLength=t};if(null==e);else if("getReader"in e){const t=e.getReader();for(;;){const{done:e,value:r}=await t.read();if(e)break;if(this.abortSignal.aborted)throw await t.cancel(),t.releaseLock(),new Error(this.abortSignal.reason);n(r)}t.releaseLock()}else{const t=()=>e.destroy(new Error(this.abortSignal.reason));this.abortSignal.addEventListener("abort",t,{once:!0});try{await new Promise(((t,r)=>{e.on("data",n),e.on("end",(()=>t())),e.on("error",(e=>r(e)))}))}finally{this.abortSignal.removeEventListener("abort",t)}}const o=new Uint8Array(t);let i=0;for(const e of r)o.set(e,i),i+=e.length;return this.finish(o)}abort(){this.isPending()&&this.abortController.abort("Fetch aborted")}isPending(){return this.state===o.PENDING}isError(){return this.state===o.ERROR}isFinished(){return this.state===o.FINISHED}isAllocated(){return this.state===o.ALLOCATED}allocate(){if(this.isAllocated())return this;if(this.isFinished()){const e=this.result.length,t=l._malloc(e);l.HEAPU8.set(this.result,t);const r=Object.assign(Object.assign({},this),{state:o.ALLOCATED,resultAddress:t,resultLength:e});return Object.assign(this,r),r}return null}finish(e){const t=Object.assign(Object.assign({},this),{state:o.FINISHED,result:e,totalBytes:e.length});return Object.assign(this,t)}fail(e){const t=Object.assign(Object.assign({},this),{state:o.ERROR,error:e});return Object.assign(this,t)}}l.emscripten_ubq_asyncFetchManager=new class AsyncFetchManager{constructor(){this._nextHandle=0,this._nextHeaderHandle=0,this._processes=new Map,this._headers=new Map,this._fetchImpl=null}_fetch(e,t){return this._fetchImpl?this._fetchImpl(e,t):fetch(e,t)}setFetch(e){this._fetchImpl=e}getProcess(e){return this._processes.get(e)}deleteProcess(e){const t=this._processes.get(e);return(null==t?void 0:t.isPending())&&t.abort(),this._processes.delete(e)}clear(){for(const e of this._processes.values())e.isPending()&&e.abort();this._processes.clear(),this._headers.clear()}fetch(e,t,r,n,o,i,a,s,d){const c=l.UTF8ToString(t,r),u=this._nextHandle++,p=new FetchProcess(u,c);return this._processes.set(u,p),c.match(/^file:/)?this._fetchFile(p).catch((e=>{p.fail(e)})):this._fetchRemote(p,e,n,o,i,a,s,d).catch((e=>{p.fail(e)})),p}async _fetchFile(e){if("undefined"!=typeof window)throw new Error("File URLs supported only in Node.JS");const t=S(),{fileURLToPath:r}=S(),n=t.createReadStream(r(e.uri));return e.readChunks(n)}async _fetchRemote(e,t,r,n,o,i,s,d){const c=l.UTF8ToString(s,d),u=this.getHeaders(r,n),p=t===a.POST?new Uint8Array(new Uint8Array(l.HEAPU8.buffer,o,i)):void 0,h=await this._fetch(e.uri,{method:a[t],headers:u,body:p,mode:"cors",credentials:c,signal:e.abortSignal});if(h.status>=200&&h.status<=209){let t=0;return h.headers.has("Content-Length")&&(t=+h.headers.get("Content-Length")),e.totalBytes=t,e.readChunks(h.body)}return e.fail(h.statusText)}getHeaders(e,t){const r={};for(let n=0;n<t;n++){const t=l.getValue(e+4*n,"i32"),o=this._headers.get(t);r[o.key]=o.value}return r}createHeader(e,t,r,n){const o=l.UTF8ToString(e,t),i=l.UTF8ToString(r,n),a=this._nextHeaderHandle++;return this._headers.set(a,{key:o,value:i}),a}deleteHeader(e){return this._headers.delete(e)}},l.emscripten_ubq_codec_videoDecoders=new Map,l.emscripten_ubq_codec_audioDecoders=new Map,l.emscripten_ubq_codec_videoEncoders=new Map,l.emscripten_ubq_codec_audioEncoders=new Map,l.emscripten_ubq_codec_alphaStates=new Map,l.emscripten_ubq_codec_videoDecoderNextHandle=1,l.emscripten_ubq_codec_audioDecoderNextHandle=1,l.emscripten_ubq_codec_videoEncoderNextHandle=1,l.emscripten_ubq_codec_audioEncoderNextHandle=1,l._isSafariHelper=function(){if("undefined"==typeof navigator||"string"!=typeof navigator.userAgent)return 0;const e=navigator.userAgent;return!e.includes("Safari")||e.includes("Chrome")||e.includes("Chromium")||e.includes("Android")?0:1},l.emscripten_ubq_codec_createNativeResult=function(e){const t=l._malloc(8),r=l.HEAPU32.subarray(t/4,t/4+2);if(r[0]=e.handle?e.handle:e.code?e.code:0,e.error){const t=(new TextEncoder).encode(e.error),n=l._malloc(t.length+1),o=l.HEAPU8.subarray(n,n+t.length+1);for(let e=0;e<t.length;e++)o[e]=t[e];o[t.length]=0,r[1]=n}else r[1]=0;return t},l.emscripten_ubq_codec_offscreenCanvas=null,l.emscripten_ubq_codec_offscreenCtx=null,l.emscripten_ubq_codec_presentVideoFrame=function(e,t,r,n,o,i,a){if(!i){const e=t.textures,o=t.textureWidth,i=t.textureHeight;if(e&&e.length>0){var s=l.ctx;const d=t.decodedFrames%e.length,c=s.getParameter(s.TEXTURE_BINDING_2D);s.bindTexture(s.TEXTURE_2D,e[d]);let u=a;u||(u=n?l.emscripten_ubq_codec_toneMapHdrToSdr(r):r);const p=r.displayWidth,h=r.displayHeight;if(p!==o||h!==i){if(!t.scalingCanvas){const e="undefined"!=typeof OffscreenCanvas?()=>new OffscreenCanvas(o,i):()=>{if("undefined"!=typeof document&&"function"==typeof document.createElement){const e=document.createElement("canvas");return e.width=o,e.height=i,e}throw new Error("Canvas API not available")};t.scalingCanvas=e(),t.scalingCtx=t.scalingCanvas.getContext("2d")}const e=t.scalingCanvas,r=t.scalingCtx;e.width===o&&e.height===i||(e.width=o,e.height=i),r.clearRect(0,0,o,i);const n=p/h;let a,s,l,d;n>o/i?(a=o,s=o/n,l=0,d=(i-s)/2):(s=i,a=i*n,l=(o-a)/2,d=0),r.drawImage(u,l,d,a,s),u=e}s.texImage2D(s.TEXTURE_2D,0,s.RGBA,s.RGBA,s.UNSIGNED_BYTE,u),s.bindTexture(s.TEXTURE_2D,c)}}r.close(),t.decodedFrames++,l.emscripten_ubq_codec_onOutputDecodedVideoFrame(e,t.decodedFrames,i,r.timestamp??0,o)},l.emscripten_ubq_codec_alphaMergeCanvas=function(e,t,r){const n=!e.mergerCanvas||e.mergerCanvas.width!==t||e.mergerCanvas.height!==r;if(!e.mergerCanvas||n){if("undefined"!=typeof OffscreenCanvas)e.mergerCanvas=new OffscreenCanvas(t,r);else{if("undefined"==typeof document||"function"!=typeof document.createElement)throw new Error("Canvas API not available for alpha compositing");e.mergerCanvas=document.createElement("canvas"),e.mergerCanvas.width=t,e.mergerCanvas.height=r}const n=e.mergerCanvas.getContext("webgl2")||e.mergerCanvas.getContext("webgl");if(!n)throw new Error("Failed to get WebGL context for alpha compositing");e.mergerCtx=n;const o="\n attribute vec2 aPos;\n attribute vec2 aTexCoord;\n varying vec2 vTexCoord;\n void main() {\n gl_Position = vec4(aPos, 0.0, 1.0);\n vTexCoord = aTexCoord;\n }\n ",i="\n precision mediump float;\n varying vec2 vTexCoord;\n uniform sampler2D uMain;\n uniform sampler2D uAlpha;\n void main() {\n vec4 color = texture2D(uMain, vTexCoord);\n vec4 alpha = texture2D(uAlpha, vTexCoord);\n gl_FragColor = vec4(color.rgb, alpha.r);\n }\n ",a=(e,t)=>{const r=n.createShader(e);if(n.shaderSource(r,t),n.compileShader(r),!n.getShaderParameter(r,n.COMPILE_STATUS)){const e=n.getShaderInfoLog(r);throw n.deleteShader(r),new Error("WebGL shader compile error: "+e)}return r},s=a(n.VERTEX_SHADER,o),l=a(n.FRAGMENT_SHADER,i),d=n.createProgram();if(n.attachShader(d,s),n.attachShader(d,l),n.linkProgram(d),!n.getProgramParameter(d,n.LINK_STATUS))throw new Error("WebGL program link error: "+n.getProgramInfoLog(d));e.mergerProgram=d,e.mergerLoc={aPos:n.getAttribLocation(d,"aPos"),aTexCoord:n.getAttribLocation(d,"aTexCoord"),uMain:n.getUniformLocation(d,"uMain"),uAlpha:n.getUniformLocation(d,"uAlpha")};const c=new Float32Array([-1,1,0,0,1,1,1,0,-1,-1,0,1,1,-1,1,1]);e.mergerBuffer=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,e.mergerBuffer),n.bufferData(n.ARRAY_BUFFER,c,n.STATIC_DRAW),e.mergerTexMain=n.createTexture(),n.bindTexture(n.TEXTURE_2D,e.mergerTexMain),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),e.mergerTexAlpha=n.createTexture(),n.bindTexture(n.TEXTURE_2D,e.mergerTexAlpha),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR)}return e.mergerCanvas},l.emscripten_ubq_codec_mergeAlphaFrames=function(e,t,r){const n=t.displayWidth,o=t.displayHeight,i=l.emscripten_ubq_codec_alphaMergeCanvas(e,n,o),a=e.mergerCtx;return a.viewport(0,0,n,o),a.useProgram(e.mergerProgram),a.bindBuffer(a.ARRAY_BUFFER,e.mergerBuffer),a.enableVertexAttribArray(e.mergerLoc.aPos),a.vertexAttribPointer(e.mergerLoc.aPos,2,a.FLOAT,!1,16,0),a.enableVertexAttribArray(e.mergerLoc.aTexCoord),a.vertexAttribPointer(e.mergerLoc.aTexCoord,2,a.FLOAT,!1,16,8),a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,e.mergerTexMain),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,t),a.uniform1i(e.mergerLoc.uMain,0),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,e.mergerTexAlpha),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,r),a.uniform1i(e.mergerLoc.uAlpha,1),a.drawArrays(a.TRIANGLE_STRIP,0,4),a.flush(),i},l.emscripten_ubq_codec_prepareAlphaState=function(e,t){if(l.emscripten_ubq_codec_alphaStates.has(e))return l.emscripten_ubq_codec_alphaStates.get(e);const r={decoder:null,pendingMain:new Map,pendingAlpha:new Map,expectedTimestamps:new Set,dropTimestamps:new Set,mergerCanvas:null,mergerCtx:null};try{const n={...t};t.description&&(n.description=t.description.slice());const o=new VideoDecoder({output:t=>{l.emscripten_ubq_codec_alphaOnAlphaFrame(e,t)},error:e=>{o.unexpectedError=e,console.error("Alpha decoder error:",e)}});return o.configure(n),r.decoder=o,l.emscripten_ubq_codec_alphaStates.set(e,r),r}catch(e){return console.error("Failed to create alpha decoder:",e),null}},l.emscripten_ubq_codec_destroyAlphaState=function(e){const t=l.emscripten_ubq_codec_alphaStates.get(e);if(t){t.decoder&&"closed"!==t.decoder.state&&t.decoder.close();for(const e of t.pendingMain.values())e.frame.close();for(const e of t.pendingAlpha.values())e.close();if(t.pendingMain.clear(),t.pendingAlpha.clear(),t.expectedTimestamps.clear(),t.dropTimestamps.clear(),t.mergerCtx){const e=t.mergerCtx;e.deleteTexture(t.mergerTexMain),e.deleteTexture(t.mergerTexAlpha),e.deleteBuffer(t.mergerBuffer),e.deleteProgram(t.mergerProgram);const r=e.getExtension("WEBGL_lose_context");r&&r.loseContext()}t.mergerCanvas=null,t.mergerCtx=null,l.emscripten_ubq_codec_alphaStates.delete(e)}},l.emscripten_ubq_codec_markAlphaExpected=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);r&&r.expectedTimestamps.add(t)},l.emscripten_ubq_codec_alphaOnMainFrame=function(e,t,r,n,o){const i=l.emscripten_ubq_codec_alphaStates.get(e);if(!i)return!1;const a=t.timestamp??0;if(!i.expectedTimestamps.has(a))return!1;const s=i.pendingAlpha.get(a);if(s){i.pendingAlpha.delete(a),i.expectedTimestamps.delete(a);const d=l.emscripten_ubq_codec_mergeAlphaFrames(i,t,s);return l.emscripten_ubq_codec_presentVideoFrame(e,r,t,n,o,!1,d),s.close(),!0}return i.pendingMain.set(a,{frame:t,videoDecoder:r,isHdr:n,codecServicePtr:o}),!0},l.emscripten_ubq_codec_alphaOnAlphaFrame=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);if(!r)return void t.close();const n=t.timestamp??0;if(!r.expectedTimestamps.has(n))return void t.close();if(r.dropTimestamps.has(n))return r.dropTimestamps.delete(n),r.expectedTimestamps.delete(n),void t.close();const o=r.pendingMain.get(n);if(o){r.pendingMain.delete(n),r.expectedTimestamps.delete(n);const i=l.emscripten_ubq_codec_mergeAlphaFrames(r,o.frame,t);return l.emscripten_ubq_codec_presentVideoFrame(e,o.videoDecoder,o.frame,o.isHdr,o.codecServicePtr,!1,i),void t.close()}r.pendingAlpha.set(n,t)},l.emscripten_ubq_codec_alphaHandleDroppedMain=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);if(!r||"number"!=typeof t)return;if(!r.expectedTimestamps.has(t))return;const n=r.pendingMain.get(t);n&&(r.pendingMain.delete(t),n.frame.close());const o=r.pendingAlpha.get(t);o?(r.pendingAlpha.delete(t),o.close()):r.dropTimestamps.add(t),r.expectedTimestamps.delete(t)},l.emscripten_ubq_codec_alphaCancelExpectation=function(e,t){const r=l.emscripten_ubq_codec_alphaStates.get(e);if(!r||"number"!=typeof t)return;if(!r.expectedTimestamps.has(t))return;const n=r.pendingMain.get(t);n&&(r.pendingMain.delete(t),n.frame.close());const o=r.pendingAlpha.get(t);o&&(r.pendingAlpha.delete(t),o.close()),r.dropTimestamps.delete(t),r.expectedTimestamps.delete(t)},l.emscripten_ubq_codec_toneMapHdrToSdr=function(e){l.emscripten_ubq_codec_offscreenCanvas||(l.emscripten_ubq_codec_offscreenCanvas=new OffscreenCanvas(e.codedWidth,e.codedHeight),l.emscripten_ubq_codec_offscreenCtx=l.emscripten_ubq_codec_offscreenCanvas.getContext("2d"));const t=l.emscripten_ubq_codec_offscreenCanvas;return t.width===e.codedWidth&&t.height===e.codedHeight||(t.width=e.codedWidth,t.height=e.codedHeight),l.emscripten_ubq_codec_offscreenCtx.drawImage(e,0,0),t},l.emscripten_ubq_codec_createVideoDecoder=function(e,t,r){const n=new VideoDecoder({output:o=>{const i=n.textures;let a=!1;if(n.shouldDropFrames)a=!0;else{if(1===n.isSafari){const e=n.targetFrameForScheduling??n.requestedPresentationFrame??0,t=n.reorderWindow??0,r=Math.max(e-t,0);n.decodedFrames<r&&(a=!0)}!a&&i&&i.length>0&&n.decodeQueueSize>=i.length&&(a=!0)}const s=o.timestamp??0;if(a)return l.emscripten_ubq_codec_alphaHandleDroppedMain(e,s),void l.emscripten_ubq_codec_presentVideoFrame(e,n,o,t,r,!0,null);l.emscripten_ubq_codec_alphaOnMainFrame(e,o,n,t,r)||l.emscripten_ubq_codec_presentVideoFrame(e,n,o,t,r,!1,null)},error:e=>{n.unexpectedError=e,console.error(e)}});return n.decodedFrames=0,n.requestedPresentationFrame=0,n.requestedDecodeChunk=0,n.targetFrameForScheduling=0,n.isSafari=l._isSafariHelper(),n.reorderWindow=0,n.shouldDropFrames=!1,n.isHdr=t,n.textureWidth=0,n.textureHeight=0,n.scalingCanvas=null,n.scalingCtx=null,n},l.emscripten_ubq_codec_createAudioDecoder=function(e,t,r){const n=new AudioDecoder({output:o=>{if(n.flushing)return void o.close();const i=l.HEAPF32.subarray(e/4,e/4+r),a=l.HEAPF32.subarray(t/4,t/4+r),s=1===o.numberOfChannels?0:1;if("f32-planar"===o.format){let e=n.writtenFrames%r;if(e+o.numberOfFrames<=r)o.copyTo(i.subarray(e),{planeIndex:0,frameCount:o.numberOfFrames}),o.copyTo(a.subarray(e),{planeIndex:s,frameCount:o.numberOfFrames});else{const t=r-e;o.copyTo(i.subarray(e),{planeIndex:0,frameCount:t}),o.copyTo(a.subarray(e),{planeIndex:s,frameCount:t}),o.copyTo(i,{planeIndex:0,frameOffset:t}),o.copyTo(a,{planeIndex:s,frameOffset:t})}n.writtenFrames+=o.numberOfFrames}else if("s16-planar"===o.format)if(1===o.numberOfChannels){const e=new Int16Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0});for(let t=0;t<o.numberOfFrames;t++){const o=e[t]/32768;let s=n.writtenFrames%r;i[s]=o,a[s]=o,n.writtenFrames++}}else{const e=new Int16Array(o.numberOfFrames),t=new Int16Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0}),o.copyTo(t,{planeIndex:1});for(let s=0;s<o.numberOfFrames;s++){let o=n.writtenFrames%r;i[o]=e[s]/32768,a[o]=t[s]/32768,n.writtenFrames++}}else if("s16"===o.format){const e=new Int16Array(o.numberOfFrames*o.numberOfChannels);if(o.copyTo(e,{planeIndex:0}),1===o.numberOfChannels)for(let t=0;t<o.numberOfFrames;t++){const o=e[t]/32768;let s=n.writtenFrames%r;i[s]=o,a[s]=o,n.writtenFrames++}else for(let t=0;t<o.numberOfFrames;t++){let s=n.writtenFrames%r;i[s]=e[t*o.numberOfChannels+0]/32768,a[s]=e[t*o.numberOfChannels+1]/32768,n.writtenFrames++}}else if("f32-planar"===o.format)if(1===o.numberOfChannels){const e=new Float32Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0});for(let t=0;t<o.numberOfFrames;t++){let o=n.writtenFrames%r;i[o]=e[t],a[o]=e[t],n.writtenFrames++}}else{const e=new Float32Array(o.numberOfFrames),t=new Float32Array(o.numberOfFrames);o.copyTo(e,{planeIndex:0}),o.copyTo(t,{planeIndex:1});for(let s=0;s<o.numberOfFrames;s++){let o=n.writtenFrames%r;i[o]=e[s],a[o]=t[s],n.writtenFrames++}}else if("f32"===o.format){const e=new Float32Array(o.numberOfFrames*o.numberOfChannels);if(o.copyTo(e,{planeIndex:0}),1===o.numberOfChannels)for(let t=0;t<o.numberOfFrames;t++){let o=n.writtenFrames%r;i[o]=e[t],a[o]=e[t],n.writtenFrames++}else for(let t=0;t<o.numberOfFrames;t++){let s=n.writtenFrames%r;i[s]=e[t*o.numberOfChannels+0],a[s]=e[t*o.numberOfChannels+1],n.writtenFrames++}}else console.error("Unsupported audio format:",o.format);o.close()},error:e=>{n.unexpectedError=e,console.error(e)}});return n.writtenFrames=0,n},l.emscripten_ubq_settings_forceWebGL1=!1,l.emscripten_ubq_opfs_CHUNK_SIZE=10485760,l.emscripten_ubq_opfs_MAX_CACHE_SIZE_BYTES=209715200,void 0===l.emscripten_ubq_opfs_readTagCounter&&(l.emscripten_ubq_opfs_readTagCounter=0),l.emscripten_ubq_opfs_caches=new Map,l.emscripten_ubq_opfs_createWorker=function(){const e=new Blob(["\n let handle = null; \n let currentUri = '';\n\n async function getFileHandleForUri(uri) {\n const path = uri.replace(/^opfs:\\/\\//, \"\");\n const parts = path.split(\"/\").filter(Boolean);\n let dir = await navigator.storage.getDirectory();\n for (let i = 0; i < parts.length - 1; i++) {\n dir = await dir.getDirectoryHandle(parts[i]);\n }\n return dir.getFileHandle(parts[parts.length - 1]);\n }\n\n self.onmessage = async (ev) => {\n if (ev.data.open) {\n if (handle) {\n try {\n handle.close();\n } catch (e) {\n console.warn('[OPFS Worker] Failed to close previous handle', e);\n }\n }\n currentUri = ev.data.uri || '';\n try {\n const fileHandle = await getFileHandleForUri(currentUri);\n handle = await fileHandle.createSyncAccessHandle({\n mode: 'read-only'\n });\n try {\n const size = handle.getSize ? handle.getSize() : -1;\n } catch (_) {}\n self.postMessage({ready:true});\n } catch (error) {\n handle = null;\n const message =\n (error && error.message) ? error.message : String(error);\n self.postMessage({ready:false, error: message});\n }\n return;\n }\n \n if (ev.data.read) {\n const {offset, size, tag} = ev.data.read;\n\n if (!handle) {\n self.postMessage({tag, error: 'OPFS handle is not initialized'});\n return;\n }\n try {\n const tmp = new Uint8Array(size);\n const bytes = handle.read(tmp, {at: offset});\n self.postMessage({tag, bytes, buf: tmp.buffer}, [tmp.buffer]);\n } catch (error) {\n const message =\n (error && error.message) ? error.message : String(error);\n self.postMessage({tag, error: message});\n }\n }\n };\n "],{type:"application/javascript"});return{worker:new Worker(URL.createObjectURL(e),{type:"module"}),readyPromise:null,post:function(e){this.worker.postMessage(e)},get:function(){return this.worker}}},l.emscripten_ubq_opfs_destroyWorker=function(e){if(e){console.log("[OPFS Reader] Destroy worker");try{e.worker.terminate()}catch(e){console.warn("[OPFS] Failed to terminate worker",e)}}},l.emscripten_ubq_opfs_getCache=function(e){let t=l.emscripten_ubq_opfs_caches.get(e);return t||(t={chunkCache:new Map,accessOrder:[],currentSize:0,loadingChunks:new Set,file:null,openPromise:null,fileSize:-1,worker:null,workerOpened:!1,workerOpening:null},l.emscripten_ubq_opfs_caches.set(e,t)),t},l.emscripten_ubq_opfs_ensureFile=async function(e,t){if(t.fileHandle)return t.fileHandle;if(t.openPromise)return t.openPromise;const r=e.replace(/^opfs:\/\//,"");return t.openPromise=(async()=>{const e=await navigator.storage.getDirectory(),n=r.split("/").filter(Boolean);let o=e;for(let e=0;e<n.length-1;e++)o=await o.getDirectoryHandle(n[e]);const i=await o.getFileHandle(n[n.length-1]);t.fileHandle=i;const a=await i.getFile();return t.fileSize=a.size,i})(),t.openPromise},l.emscripten_ubq_opfs_ensureWorker=function(e,t){return t.worker||(t.worker=l.emscripten_ubq_opfs_createWorker()),t.worker},l.emscripten_ubq_opfs_updateAccess=function(e,t){const r=e.accessOrder.indexOf(t);-1!==r&&e.accessOrder.splice(r,1),e.accessOrder.push(t)},l.emscripten_ubq_opfs_cleanCache=function(e){const t=l.emscripten_ubq_opfs_MAX_CACHE_SIZE_BYTES;for(;e.currentSize>t&&e.accessOrder.length>0;){const t=e.accessOrder.shift(),r=e.chunkCache.get(t);r&&(e.currentSize-=r.byteLength,e.chunkCache.delete(t))}},l.emscripten_ubq_opfs_loadChunk=function(e,t,r){if(t.chunkCache.has(r)||t.loadingChunks.has(r))return void l.emscripten_ubq_opfs_updateAccess(t,r);t.loadingChunks.add(r);const n=l.emscripten_ubq_opfs_CHUNK_SIZE,o=r*n,i=o+n;l.emscripten_ubq_opfs_ensureFile(e,t).then((async e=>{const n=(await e.getFile()).slice(o,i),a=await n.arrayBuffer(),s=new Uint8Array(a);t.chunkCache.set(r,s),t.currentSize+=s.byteLength,l.emscripten_ubq_opfs_updateAccess(t,r),l.emscripten_ubq_opfs_cleanCache(t)})).catch((t=>{console.error(`[OPFS] Failed to load chunk ${r} for "${e}":`,t)})).finally((()=>{t.loadingChunks.delete(r)}))},l.emscripten_ubq_opfs_getChunkDataAsync=async function(e,t,r,n,o){if(n<=0)return 0;const i=Z(e),a=4294967296*(r>>>0)+(t>>>0),s=l.emscripten_ubq_opfs_getCache(i),d=l.emscripten_ubq_opfs_ensureWorker(i,s);s.workerOpened||(s.workerOpening||(s.workerOpening=(async()=>{await l.emscripten_ubq_opfs_ensureFile(i,s),d.post({open:!0,uri:i}),await new Promise(((e,t)=>{const r=d.get(),n=o=>{o.data&&(!0===o.data.ready?(r.removeEventListener("message",n),e()):!1===o.data.ready&&(r.removeEventListener("message",n),t(new Error(o.data.error||"Failed to open OPFS worker handle"))))};r.addEventListener("message",n)})),s.workerOpened=!0})().finally((()=>{s.workerOpening=null}))),await s.workerOpening);try{return await new Promise(((e,t)=>{void 0===l.emscripten_ubq_opfs_readTagCounter&&(l.emscripten_ubq_opfs_readTagCounter=0);const r=++l.emscripten_ubq_opfs_readTagCounter,i=d.get(),s=a=>{if(a.data.tag===r){if(i.removeEventListener("message",s),a.data.error)return void t(new Error(a.data.error));a.data.buf&&l.HEAPU8.set(new Uint8Array(a.data.buf),o),a.data.bytes===n?e(n):t(new Error("short read"))}};i.addEventListener("message",s),d.post({read:{offset:a,size:n,ptr:o,tag:r}})}))}catch(e){return console.error("[OPFS] worker read failed:",e),-1}},l.emscripten_ubq_opfs_loadChunkAsync=async function(e,t,r){if(t.chunkCache.has(r))return void l.emscripten_ubq_opfs_updateAccess(t,r);if(t.loadingChunks.has(r))return;t.loadingChunks.add(r);const n=l.emscripten_ubq_opfs_CHUNK_SIZE,o=r*n,i=o+n;try{const n=await l.emscripten_ubq_opfs_ensureFile(e,t),a=(await n.getFile()).slice(o,i),s=await a.arrayBuffer(),d=new Uint8Array(s);t.chunkCache.set(r,d),t.currentSize+=d.byteLength,l.emscripten_ubq_opfs_updateAccess(t,r),l.emscripten_ubq_opfs_cleanCache(t)}catch(t){throw console.error(`[OPFS] Async Failed to load chunk ${r} for "${e}":`,t),t}finally{t.loadingChunks.delete(r)}},l.emscripten_ubq_opfs_writerCaches||(l.emscripten_ubq_opfs_writerCaches=new Map),l.emscripten_ubq_opfs_createWriterWorker=function(){const e=new Blob(["\n let handle = null;\n let currentUri = '';\n\n async function ensureWritableFileHandle(uri) {\n const path = uri.replace(/^opfs:\\/\\//, '');\n const parts = path.split('/').filter(Boolean);\n let dir = await navigator.storage.getDirectory();\n for (let i = 0; i < parts.length - 1; i++) {\n dir = await dir.getDirectoryHandle(parts[i], { create: true });\n }\n return dir.getFileHandle(parts[parts.length - 1], { create: true });\n }\n\n self.onmessage = async (ev) => {\n if (ev.data.open) {\n if (handle) {\n try {\n await handle.flush();\n handle.close();\n } catch (e) {\n console.warn('[OPFS Writer] Failed to close previous handle', e);\n }\n }\n try {\n currentUri = ev.data.uri || '';\n const fh = await ensureWritableFileHandle(currentUri);\n handle = await fh.createSyncAccessHandle({ mode: 'readwrite' });\n try {\n // Ensure we start from a clean slate; truncate to zero\n handle.truncate(0);\n } catch (e) {\n // Some browsers might not support truncate; ignore\n }\n // Debug logs removed\n self.postMessage({ ready: true });\n } catch (err) {\n console.error('[OPFS Writer] Failed to open SyncAccessHandle', err);\n handle = null;\n const message = (err && err.message) ? err.message : String(err);\n self.postMessage({ ready: false, error: message });\n }\n return;\n }\n\n if (ev.data.write) {\n const { offset, buf, tag } = ev.data.write;\n try {\n if (!handle) throw new Error('OPFS writer handle not initialized');\n const bytes = new Uint8Array(buf);\n // Debug logs removed\n handle.write(bytes, { at: offset });\n // Debug logs removed\n self.postMessage({ tag });\n } catch (e) {\n self.postMessage({ tag, error: e.toString() });\n }\n return;\n }\n\n if (ev.data.close) {\n try {\n // Debug logs removed\n await handle.flush();\n handle.close();\n } catch (e) {\n // ignore\n }\n self.postMessage({ closed: true });\n }\n };\n "],{type:"application/javascript"}),t=new Worker(URL.createObjectURL(e),{type:"module"});return{worker:t,post:e=>t.postMessage(e),get:()=>t}},l.emscripten_ubq_opfs_destroyWriterWorker=function(e){if(e)try{e.worker.terminate()}catch(e){}},l.emscripten_ubq_opfs_ensureWriteFile=async function(e,t){if(t.fileHandle)return t.fileHandle;if(t.openPromise)return t.openPromise;const r=e.replace(/^opfs:\/\//,"");return t.openPromise=(async()=>{const e=await navigator.storage.getDirectory(),n=r.split("/").filter(Boolean);let o=e;for(let e=0;e<n.length-1;e++){const t=n[e];o=await o.getDirectoryHandle(t,{create:!0})}const i=await o.getFileHandle(n[n.length-1],{create:!0});return t.fileHandle=i,i})(),t.openPromise},l.emscripten_ubq_opfs_ensureWriteWorker=function(e,t){return t.worker||(t.worker=l.emscripten_ubq_opfs_createWriterWorker()),t.worker};var h,f,g={...l},m=[],b="./this.program",y=(e,t)=>{throw t},v="";if(p){var w=S();S(),v=__dirname+"/",f=e=>(e=U(e)?new URL(e):e,w.readFileSync(e)),h=async(e,t=!0)=>(e=U(e)?new URL(e):e,w.readFileSync(e,t?void 0:"utf8")),!l.thisProgram&&process.argv.length>1&&(b=process.argv[1].replace(/\\/g,"/")),m=process.argv.slice(2),y=(e,t)=>{throw process.exitCode=e,t}}else(c||u)&&(u?v=self.location.href:"undefined"!=typeof document&&document.currentScript&&(v=document.currentScript.src),r&&(v=r),v=v.startsWith("blob:")?"":v.slice(0,v.replace(/[?#].*/,"").lastIndexOf("/")+1),u&&(f=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),h=async e=>{var t=await fetch(e,{credentials:"same-origin"});if(t.ok)return t.arrayBuffer();throw new Error(t.status+" : "+t.url)});var k=l.print||console.log.bind(console),_=l.printErr||console.error.bind(console);Object.assign(l,g),g=null,l.arguments&&(m=l.arguments),l.thisProgram&&(b=l.thisProgram);var E,C,P,x,T,A,F,M,I,D,B,R,L=l.wasmBinary,O=!1,U=e=>e.startsWith("file://");function $(){var e=E.buffer;l.HEAP8=P=new Int8Array(e),l.HEAP16=T=new Int16Array(e),l.HEAPU8=x=new Uint8Array(e),l.HEAPU16=A=new Uint16Array(e),l.HEAP32=F=new Int32Array(e),l.HEAPU32=M=new Uint32Array(e),l.HEAPF32=I=new Float32Array(e),l.HEAPF64=R=new Float64Array(e),l.HEAP64=D=new BigInt64Array(e),l.HEAPU64=B=new BigUint64Array(e)}if(l.wasmMemory)E=l.wasmMemory;else{var q=l.INITIAL_MEMORY||16777216;E=new WebAssembly.Memory({initial:q/65536,maximum:32768})}$();var W,H=0,N=null;function V(e){H++,l.monitorRunDependencies?.(H)}function z(e){if(H--,l.monitorRunDependencies?.(H),0==H&&N){var t=N;N=null,t()}}function G(e){l.onAbort?.(e),_(e="Aborted("+e+")"),O=!0,e+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(e);throw n(t),t}function j(){return e="cesdk.wasm",l.locateFile?l.locateFile(e,v):v+e;var e}async function X(e){if(!L)try{var t=await h(e);return new Uint8Array(t)}catch{}return function(e){if(e==W&&L)return new Uint8Array(L);if(f)return f(e);throw"both async and sync fetching of the wasm failed"}(e)}async function Y(e,t,r){if(!e&&"function"==typeof WebAssembly.instantiateStreaming&&!p)try{var n=fetch(t,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(n,r)}catch(e){_(`wasm streaming compile failed: ${e}`),_("falling back to ArrayBuffer instantiation")}return async function(e,t){try{var r=await X(e);return await WebAssembly.instantiate(r,t)}catch(e){_(`failed to asynchronously prepare wasm: ${e}`),G(e)}}(t,r)}class ExitStatus{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var K="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Q=(e,t=0,r=NaN)=>{for(var n=t+r,o=t;e[o]&&!(o>=n);)++o;if(o-t>16&&e.buffer&&K)return K.decode(e.subarray(t,o));for(var i="";t<o;){var a=e[t++];if(128&a){var s=63&e[t++];if(192!=(224&a)){var l=63&e[t++];if((a=224==(240&a)?(15&a)<<12|s<<6|l:(7&a)<<18|s<<12|l<<6|63&e[t++])<65536)i+=String.fromCharCode(a);else{var d=a-65536;i+=String.fromCharCode(55296|d>>10,56320|1023&d)}}else i+=String.fromCharCode((31&a)<<6|s)}else i+=String.fromCharCode(a)}return i},Z=(e,t)=>e?Q(x,e,t):"",J=e=>{for(;e.length>0;)e.shift()(l)},ee=[],te=e=>ee.unshift(e),re=[],ne=e=>re.unshift(e),oe=l.noExitRuntime||!0,ie=e=>Zl(e),ae=()=>ed(),se=e=>{for(var t=0,r=0;r<e.length;++r){var n=e.charCodeAt(r);n<=127?t++:n<=2047?t+=2:n>=55296&&n<=57343?(t+=4,++r):t+=3}return t},le=(e,t,r,n)=>{if(!(n>0))return 0;for(var o=r,i=r+n-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(r>=i)break;t[r++]=s}else if(s<=2047){if(r+1>=i)break;t[r++]=192|s>>6,t[r++]=128|63&s}else if(s<=65535){if(r+2>=i)break;t[r++]=224|s>>12,t[r++]=128|s>>6&63,t[r++]=128|63&s}else{if(r+3>=i)break;t[r++]=240|s>>18,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}}return t[r]=0,r-o},de=(e,t,r)=>le(e,x,t,r),ce=e=>{var t=se(e)+1,r=Nl(t);return r&&de(e,r,t),r},ue=[],pe=0;class ExceptionInfo{constructor(e){this.excPtr=e,this.ptr=e-24}set_type(e){M[this.ptr+4>>2]=e}get_type(){return M[this.ptr+4>>2]}set_destructor(e){M[this.ptr+8>>2]=e}get_destructor(){return M[this.ptr+8>>2]}set_caught(e){e=e?1:0,P[this.ptr+12]=e}get_caught(){return 0!=P[this.ptr+12]}set_rethrown(e){e=e?1:0,P[this.ptr+13]=e}get_rethrown(){return 0!=P[this.ptr+13]}init(e,t){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(t)}set_adjusted_ptr(e){M[this.ptr+16>>2]=e}get_adjusted_ptr(){return M[this.ptr+16>>2]}}var he=e=>Ql(e),fe=e=>{var t=pe;if(!t)return he(0),0;var r=new ExceptionInfo(t);r.set_adjusted_ptr(t);var n=r.get_type();if(!n)return he(0),t;for(var o of e){if(0===o||o===n)break;var i=r.ptr+16;if(nd(o,n,i))return he(o),t}return he(n),t},ge={isAbs:e=>"/"===e.charAt(0),splitPath:e=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1),normalizeArray:(e,t)=>{for(var r=0,n=e.length-1;n>=0;n--){var o=e[n];"."===o?e.splice(n,1):".."===o?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r;r--)e.unshift("..");return e},normalize:e=>{var t=ge.isAbs(e),r="/"===e.slice(-1);return(e=ge.normalizeArray(e.split("/").filter((e=>!!e)),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e},dirname:e=>{var t=ge.splitPath(e),r=t[0],n=t[1];return r||n?(n&&(n=n.slice(0,-1)),r+n):"."},basename:e=>e&&e.match(/([^\/]+|\/)\/*$/)[1],join:(...e)=>ge.normalize(e.join("/")),join2:(e,t)=>ge.normalize(e+"/"+t)},me=e=>{(me=e=>crypto.getRandomValues(e))(e)},be={resolve:(...e)=>{for(var t="",r=!1,n=e.length-1;n>=-1&&!r;n--){var o=n>=0?e[n]:Te.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");if(!o)return"";t=o+"/"+t,r=ge.isAbs(o)}return(r?"/":"")+(t=ge.normalizeArray(t.split("/").filter((e=>!!e)),!r).join("/"))||"."},relative:(e,t)=>{function r(e){for(var t=0;t<e.length&&""===e[t];t++);for(var r=e.length-1;r>=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=be.resolve(e).slice(1),t=be.resolve(t).slice(1);for(var n=r(e.split("/")),o=r(t.split("/")),i=Math.min(n.length,o.length),a=i,s=0;s<i;s++)if(n[s]!==o[s]){a=s;break}var l=[];for(s=a;s<n.length;s++)l.push("..");return(l=l.concat(o.slice(a))).join("/")}},ye=[],ve=(e,t,r)=>{var n=r>0?r:se(e)+1,o=new Array(n),i=le(e,o,0,o.length);return t&&(o.length=i),o},we={ttys:[],init(){},shutdown(){},register(e,t){we.ttys[e]={input:[],output:[],ops:t},Te.registerDevice(e,we.stream_ops)},stream_ops:{open(e){var t=we.ttys[e.node.rdev];if(!t)throw new Te.ErrnoError(43);e.tty=t,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,t,r,n,o){if(!e.tty||!e.tty.ops.get_char)throw new Te.ErrnoError(60);for(var i=0,a=0;a<n;a++){var s;try{s=e.tty.ops.get_char(e.tty)}catch(e){throw new Te.ErrnoError(29)}if(void 0===s&&0===i)throw new Te.ErrnoError(6);if(null==s)break;i++,t[r+a]=s}return i&&(e.node.atime=Date.now()),i},write(e,t,r,n,o){if(!e.tty||!e.tty.ops.put_char)throw new Te.ErrnoError(60);try{for(var i=0;i<n;i++)e.tty.ops.put_char(e.tty,t[r+i])}catch(e){throw new Te.ErrnoError(29)}return n&&(e.node.mtime=e.node.ctime=Date.now()),i}},default_tty_ops:{get_char:e=>(()=>{if(!ye.length){var e=null;if(p){var t=Buffer.alloc(256),r=0,n=process.stdin.fd;try{r=w.readSync(n,t,0,256)}catch(e){if(!e.toString().includes("EOF"))throw e;r=0}r>0&&(e=t.slice(0,r).toString("utf-8"))}else"undefined"!=typeof window&&"function"==typeof window.prompt&&null!==(e=window.prompt("Input: "))&&(e+="\n");if(!e)return null;ye=ve(e,!0)}return ye.shift()})(),put_char(e,t){null===t||10===t?(k(Q(e.output)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){e.output?.length>0&&(k(Q(e.output)),e.output=[])},ioctl_tcgets:e=>({c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}),ioctl_tcsets:(e,t,r)=>0,ioctl_tiocgwinsz:e=>[24,80]},default_tty1_ops:{put_char(e,t){null===t||10===t?(_(Q(e.output)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){e.output?.length>0&&(_(Q(e.output)),e.output=[])}}},ke=(e,t)=>Math.ceil(e/t)*t,_e=e=>{e=ke(e,65536);var t=Xl(65536,e);return t&&((e,t)=>{x.fill(0,e,e+t)})(t,e),t},Ee={ops_table:null,mount:e=>Ee.createNode(null,"/",16895,0),createNode(e,t,r,n){if(Te.isBlkdev(r)||Te.isFIFO(r))throw new Te.ErrnoError(63);Ee.ops_table||={dir:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr,lookup:Ee.node_ops.lookup,mknod:Ee.node_ops.mknod,rename:Ee.node_ops.rename,unlink:Ee.node_ops.unlink,rmdir:Ee.node_ops.rmdir,readdir:Ee.node_ops.readdir,symlink:Ee.node_ops.symlink},stream:{llseek:Ee.stream_ops.llseek}},file:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr},stream:{llseek:Ee.stream_ops.llseek,read:Ee.stream_ops.read,write:Ee.stream_ops.write,mmap:Ee.stream_ops.mmap,msync:Ee.stream_ops.msync}},link:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr,readlink:Ee.node_ops.readlink},stream:{}},chrdev:{node:{getattr:Ee.node_ops.getattr,setattr:Ee.node_ops.setattr},stream:Te.chrdev_stream_ops}};var o=Te.createNode(e,t,r,n);return Te.isDir(o.mode)?(o.node_ops=Ee.ops_table.dir.node,o.stream_ops=Ee.ops_table.dir.stream,o.contents={}):Te.isFile(o.mode)?(o.node_ops=Ee.ops_table.file.node,o.stream_ops=Ee.ops_table.file.stream,o.usedBytes=0,o.contents=null):Te.isLink(o.mode)?(o.node_ops=Ee.ops_table.link.node,o.stream_ops=Ee.ops_table.link.stream):Te.isChrdev(o.mode)&&(o.node_ops=Ee.ops_table.chrdev.node,o.stream_ops=Ee.ops_table.chrdev.stream),o.atime=o.mtime=o.ctime=Date.now(),e&&(e.contents[t]=o,e.atime=e.mtime=e.ctime=o.atime),o},getFileDataAsTypedArray:e=>e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array(0),expandFileStorage(e,t){var r=e.contents?e.contents.length:0;if(!(r>=t)){t=Math.max(t,r*(r<1048576?2:1.125)>>>0),0!=r&&(t=Math.max(t,256));var n=e.contents;e.contents=new Uint8Array(t),e.usedBytes>0&&e.contents.set(n.subarray(0,e.usedBytes),0)}},resizeFileStorage(e,t){if(e.usedBytes!=t)if(0==t)e.contents=null,e.usedBytes=0;else{var r=e.contents;e.contents=new Uint8Array(t),r&&e.contents.set(r.subarray(0,Math.min(t,e.usedBytes))),e.usedBytes=t}},node_ops:{getattr(e){var t={};return t.dev=Te.isChrdev(e.mode)?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,Te.isDir(e.mode)?t.size=4096:Te.isFile(e.mode)?t.size=e.usedBytes:Te.isLink(e.mode)?t.size=e.link.length:t.size=0,t.atime=new Date(e.atime),t.mtime=new Date(e.mtime),t.ctime=new Date(e.ctime),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(e,t){for(const r of["mode","atime","mtime","ctime"])null!=t[r]&&(e[r]=t[r]);void 0!==t.size&&Ee.resizeFileStorage(e,t.size)},lookup(e,t){throw Ee.doesNotExistError},mknod:(e,t,r,n)=>Ee.createNode(e,t,r,n),rename(e,t,r){var n;try{n=Te.lookupNode(t,r)}catch(e){}if(n){if(Te.isDir(e.mode))for(var o in n.contents)throw new Te.ErrnoError(55);Te.hashRemoveNode(n)}delete e.parent.contents[e.name],t.contents[r]=e,e.name=r,t.ctime=t.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,t){delete e.contents[t],e.ctime=e.mtime=Date.now()},rmdir(e,t){var r=Te.lookupNode(e,t);for(var n in r.contents)throw new Te.ErrnoError(55);delete e.contents[t],e.ctime=e.mtime=Date.now()},readdir:e=>[".","..",...Object.keys(e.contents)],symlink(e,t,r){var n=Ee.createNode(e,t,41471,0);return n.link=r,n},readlink(e){if(!Te.isLink(e.mode))throw new Te.ErrnoError(28);return e.link}},stream_ops:{read(e,t,r,n,o){var i=e.node.contents;if(o>=e.node.usedBytes)return 0;var a=Math.min(e.node.usedBytes-o,n);if(a>8&&i.subarray)t.set(i.subarray(o,o+a),r);else for(var s=0;s<a;s++)t[r+s]=i[o+s];return a},write(e,t,r,n,o,i){if(t.buffer===P.buffer&&(i=!1),!n)return 0;var a=e.node;if(a.mtime=a.ctime=Date.now(),t.subarray&&(!a.contents||a.contents.subarray)){if(i)return a.contents=t.subarray(r,r+n),a.usedBytes=n,n;if(0===a.usedBytes&&0===o)return a.contents=t.slice(r,r+n),a.usedBytes=n,n;if(o+n<=a.usedBytes)return a.contents.set(t.subarray(r,r+n),o),n}if(Ee.expandFileStorage(a,o+n),a.contents.subarray&&t.subarray)a.contents.set(t.subarray(r,r+n),o);else for(var s=0;s<n;s++)a.contents[o+s]=t[r+s];return a.usedBytes=Math.max(a.usedBytes,o+n),n},llseek(e,t,r){var n=t;if(1===r?n+=e.position:2===r&&Te.isFile(e.node.mode)&&(n+=e.node.usedBytes),n<0)throw new Te.ErrnoError(28);return n},mmap(e,t,r,n,o){if(!Te.isFile(e.node.mode))throw new Te.ErrnoError(43);var i,a,s=e.node.contents;if(2&o||!s||s.buffer!==P.buffer){if(a=!0,!(i=_e(t)))throw new Te.ErrnoError(48);s&&((r>0||r+t<s.length)&&(s=s.subarray?s.subarray(r,r+t):Array.prototype.slice.call(s,r,r+t)),P.set(s,i))}else a=!1,i=s.byteOffset;return{ptr:i,allocated:a}},msync:(e,t,r,n,o)=>(Ee.stream_ops.write(e,t,0,n,r,!1),0)}},Ce=(e,t,r,n,o,i)=>{Te.createDataFile(e,t,r,n,o,i)},Se=l.preloadPlugins||[],Pe=(e,t,r,n,o,i,a,s,l,d)=>{var c=t?be.resolve(ge.join2(e,t)):e;function u(r){function u(r){d?.(),s||Ce(e,t,r,n,o,l),i?.(),z()}((e,t,r,n)=>{void 0!==br&&br.init();var o=!1;return Se.forEach((i=>{o||i.canHandle(t)&&(i.handle(e,t,r,n),o=!0)})),o})(r,c,u,(()=>{a?.(),z()}))||u(r)}V(),"string"==typeof r?(async e=>{var t=await h(e);return new Uint8Array(t)})(r).then(u,a):u(r)},xe=(e,t)=>{var r=0;return e&&(r|=365),t&&(r|=146),r},Te={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,filesystems:null,syncFSRequests:0,readFiles:{},ErrnoError:class{name="ErrnoError";constructor(e){this.errno=e}},FSStream:class{shared={};get object(){return this.node}set object(e){this.node=e}get isRead(){return 1!=(2097155&this.flags)}get isWrite(){return 0!=(2097155&this.flags)}get isAppend(){return 1024&this.flags}get flags(){return this.shared.flags}set flags(e){this.shared.flags=e}get position(){return this.shared.position}set position(e){this.shared.position=e}},FSNode:class{node_ops={};stream_ops={};readMode=365;writeMode=146;mounted=null;constructor(e,t,r,n){e||(e=this),this.parent=e,this.mount=e.mount,this.id=Te.nextInode++,this.name=t,this.mode=r,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(e){e?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(e){e?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return Te.isDir(this.mode)}get isDevice(){return Te.isChrdev(this.mode)}},lookupPath(e,t={}){if(!e)throw new Te.ErrnoError(44);t.follow_mount??=!0,ge.isAbs(e)||(e=Te.cwd()+"/"+e);e:for(var r=0;r<40;r++){for(var n=e.split("/").filter((e=>!!e)),o=Te.root,i="/",a=0;a<n.length;a++){var s=a===n.length-1;if(s&&t.parent)break;if("."!==n[a])if(".."!==n[a]){i=ge.join2(i,n[a]);try{o=Te.lookupNode(o,n[a])}catch(e){if(44===e?.errno&&s&&t.noent_okay)return{path:i};throw e}if(!Te.isMountpoint(o)||s&&!t.follow_mount||(o=o.mounted.root),Te.isLink(o.mode)&&(!s||t.follow)){if(!o.node_ops.readlink)throw new Te.ErrnoError(52);var l=o.node_ops.readlink(o);ge.isAbs(l)||(l=ge.dirname(i)+"/"+l),e=l+"/"+n.slice(a+1).join("/");continue e}}else i=ge.dirname(i),o=o.parent}return{path:i,node:o}}throw new Te.ErrnoError(32)},getPath(e){for(var t;;){if(Te.isRoot(e)){var r=e.mount.mountpoint;return t?"/"!==r[r.length-1]?`${r}/${t}`:r+t:r}t=t?`${e.name}/${t}`:e.name,e=e.parent}},hashName(e,t){for(var r=0,n=0;n<t.length;n++)r=(r<<5)-r+t.charCodeAt(n)|0;return(e+r>>>0)%Te.nameTable.length},hashAddNode(e){var t=Te.hashName(e.parent.id,e.name);e.name_next=Te.nameTable[t],Te.nameTable[t]=e},hashRemoveNode(e){var t=Te.hashName(e.parent.id,e.name);if(Te.nameTable[t]===e)Te.nameTable[t]=e.name_next;else for(var r=Te.nameTable[t];r;){if(r.name_next===e){r.name_next=e.name_next;break}r=r.name_next}},lookupNode(e,t){var r=Te.mayLookup(e);if(r)throw new Te.ErrnoError(r);for(var n=Te.hashName(e.id,t),o=Te.nameTable[n];o;o=o.name_next){var i=o.name;if(o.parent.id===e.id&&i===t)return o}return Te.lookup(e,t)},createNode(e,t,r,n){var o=new Te.FSNode(e,t,r,n);return Te.hashAddNode(o),o},destroyNode(e){Te.hashRemoveNode(e)},isRoot:e=>e===e.parent,isMountpoint:e=>!!e.mounted,isFile:e=>32768==(61440&e),isDir:e=>16384==(61440&e),isLink:e=>40960==(61440&e),isChrdev:e=>8192==(61440&e),isBlkdev:e=>24576==(61440&e),isFIFO:e=>4096==(61440&e),isSocket:e=>49152==(49152&e),flagsToPermissionString(e){var t=["r","w","rw"][3&e];return 512&e&&(t+="w"),t},nodePermissions:(e,t)=>Te.ignorePermissions||(!t.includes("r")||292&e.mode)&&(!t.includes("w")||146&e.mode)&&(!t.includes("x")||73&e.mode)?0:2,mayLookup(e){if(!Te.isDir(e.mode))return 54;var t=Te.nodePermissions(e,"x");return t||(e.node_ops.lookup?0:2)},mayCreate(e,t){if(!Te.isDir(e.mode))return 54;try{return Te.lookupNode(e,t),20}catch(e){}return Te.nodePermissions(e,"wx")},mayDelete(e,t,r){var n;try{n=Te.lookupNode(e,t)}catch(e){return e.errno}var o=Te.nodePermissions(e,"wx");if(o)return o;if(r){if(!Te.isDir(n.mode))return 54;if(Te.isRoot(n)||Te.getPath(n)===Te.cwd())return 10}else if(Te.isDir(n.mode))return 31;return 0},mayOpen:(e,t)=>e?Te.isLink(e.mode)?32:Te.isDir(e.mode)&&("r"!==Te.flagsToPermissionString(t)||576&t)?31:Te.nodePermissions(e,Te.flagsToPermissionString(t)):44,checkOpExists(e,t){if(!e)throw new Te.ErrnoError(t);return e},MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=Te.MAX_OPEN_FDS;e++)if(!Te.streams[e])return e;throw new Te.ErrnoError(33)},getStreamChecked(e){var t=Te.getStream(e);if(!t)throw new Te.ErrnoError(8);return t},getStream:e=>Te.streams[e],createStream:(e,t=-1)=>(e=Object.assign(new Te.FSStream,e),-1==t&&(t=Te.nextfd()),e.fd=t,Te.streams[t]=e,e),closeStream(e){Te.streams[e]=null},dupStream(e,t=-1){var r=Te.createStream(e,t);return r.stream_ops?.dup?.(r),r},doSetAttr(e,t,r){var n=e?.stream_ops.setattr,o=n?e:t;n??=t.node_ops.setattr,Te.checkOpExists(n,63),n(o,r)},chrdev_stream_ops:{open(e){var t=Te.getDevice(e.node.rdev);e.stream_ops=t.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new Te.ErrnoError(70)}},major:e=>e>>8,minor:e=>255&e,makedev:(e,t)=>e<<8|t,registerDevice(e,t){Te.devices[e]={stream_ops:t}},getDevice:e=>Te.devices[e],getMounts(e){for(var t=[],r=[e];r.length;){var n=r.pop();t.push(n),r.push(...n.mounts)}return t},syncfs(e,t){"function"==typeof e&&(t=e,e=!1),Te.syncFSRequests++,Te.syncFSRequests>1&&_(`warning: ${Te.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var r=Te.getMounts(Te.root.mount),n=0;function o(e){return Te.syncFSRequests--,t(e)}function i(e){if(e)return i.errored?void 0:(i.errored=!0,o(e));++n>=r.length&&o(null)}r.forEach((t=>{if(!t.type.syncfs)return i(null);t.type.syncfs(t,e,i)}))},mount(e,t,r){var n,o="/"===r,i=!r;if(o&&Te.root)throw new Te.ErrnoError(10);if(!o&&!i){var a=Te.lookupPath(r,{follow_mount:!1});if(r=a.path,n=a.node,Te.isMountpoint(n))throw new Te.ErrnoError(10);if(!Te.isDir(n.mode))throw new Te.ErrnoError(54)}var s={type:e,opts:t,mountpoint:r,mounts:[]},l=e.mount(s);return l.mount=s,s.root=l,o?Te.root=l:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),l},unmount(e){var t=Te.lookupPath(e,{follow_mount:!1});if(!Te.isMountpoint(t.node))throw new Te.ErrnoError(28);var r=t.node,n=r.mounted,o=Te.getMounts(n);Object.keys(Te.nameTable).forEach((e=>{for(var t=Te.nameTable[e];t;){var r=t.name_next;o.includes(t.mount)&&Te.destroyNode(t),t=r}})),r.mounted=null;var i=r.mount.mounts.indexOf(n);r.mount.mounts.splice(i,1)},lookup:(e,t)=>e.node_ops.lookup(e,t),mknod(e,t,r){var n=Te.lookupPath(e,{parent:!0}).node,o=ge.basename(e);if(!o)throw new Te.ErrnoError(28);if("."===o||".."===o)throw new Te.ErrnoError(20);var i=Te.mayCreate(n,o);if(i)throw new Te.ErrnoError(i);if(!n.node_ops.mknod)throw new Te.ErrnoError(63);return n.node_ops.mknod(n,o,t,r)},statfs:e=>Te.statfsNode(Te.lookupPath(e,{follow:!0}).node),statfsStream:e=>Te.statfsNode(e.node),statfsNode(e){var t={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:Te.nextInode,ffree:Te.nextInode-1,fsid:42,flags:2,namelen:255};return e.node_ops.statfs&&Object.assign(t,e.node_ops.statfs(e.mount.opts.root)),t},create:(e,t=438)=>(t&=4095,t|=32768,Te.mknod(e,t,0)),mkdir:(e,t=511)=>(t&=1023,t|=16384,Te.mknod(e,t,0)),mkdirTree(e,t){var r=e.split("/"),n="";for(var o of r)if(o){n+="/"+o;try{Te.mkdir(n,t)}catch(e){if(20!=e.errno)throw e}}},mkdev:(e,t,r)=>(void 0===r&&(r=t,t=438),t|=8192,Te.mknod(e,t,r)),symlink(e,t){if(!be.resolve(e))throw new Te.ErrnoError(44);var r=Te.lookupPath(t,{parent:!0}).node;if(!r)throw new Te.ErrnoError(44);var n=ge.basename(t),o=Te.mayCreate(r,n);if(o)throw new Te.ErrnoError(o);if(!r.node_ops.symlink)throw new Te.ErrnoError(63);return r.node_ops.symlink(r,n,e)},rename(e,t){var r,n,o=ge.dirname(e),i=ge.dirname(t),a=ge.basename(e),s=ge.basename(t);if(r=Te.lookupPath(e,{parent:!0}).node,n=Te.lookupPath(t,{parent:!0}).node,!r||!n)throw new Te.ErrnoError(44);if(r.mount!==n.mount)throw new Te.ErrnoError(75);var l,d=Te.lookupNode(r,a),c=be.relative(e,i);if("."!==c.charAt(0))throw new Te.ErrnoError(28);if("."!==(c=be.relative(t,o)).charAt(0))throw new Te.ErrnoError(55);try{l=Te.lookupNode(n,s)}catch(e){}if(d!==l){var u=Te.isDir(d.mode),p=Te.mayDelete(r,a,u);if(p)throw new Te.ErrnoError(p);if(p=l?Te.mayDelete(n,s,u):Te.mayCreate(n,s))throw new Te.ErrnoError(p);if(!r.node_ops.rename)throw new Te.ErrnoError(63);if(Te.isMountpoint(d)||l&&Te.isMountpoint(l))throw new Te.ErrnoError(10);if(n!==r&&(p=Te.nodePermissions(r,"w")))throw new Te.ErrnoError(p);Te.hashRemoveNode(d);try{r.node_ops.rename(d,n,s),d.parent=n}catch(e){throw e}finally{Te.hashAddNode(d)}}},rmdir(e){var t=Te.lookupPath(e,{parent:!0}).node,r=ge.basename(e),n=Te.lookupNode(t,r),o=Te.mayDelete(t,r,!0);if(o)throw new Te.ErrnoError(o);if(!t.node_ops.rmdir)throw new Te.ErrnoError(63);if(Te.isMountpoint(n))throw new Te.ErrnoError(10);t.node_ops.rmdir(t,r),Te.destroyNode(n)},readdir(e){var t=Te.lookupPath(e,{follow:!0}).node;return Te.checkOpExists(t.node_ops.readdir,54)(t)},unlink(e){var t=Te.lookupPath(e,{parent:!0}).node;if(!t)throw new Te.ErrnoError(44);var r=ge.basename(e),n=Te.lookupNode(t,r),o=Te.mayDelete(t,r,!1);if(o)throw new Te.ErrnoError(o);if(!t.node_ops.unlink)throw new Te.ErrnoError(63);if(Te.isMountpoint(n))throw new Te.ErrnoError(10);t.node_ops.unlink(t,r),Te.destroyNode(n)},readlink(e){var t=Te.lookupPath(e).node;if(!t)throw new Te.ErrnoError(44);if(!t.node_ops.readlink)throw new Te.ErrnoError(28);return t.node_ops.readlink(t)},stat(e,t){var r=Te.lookupPath(e,{follow:!t}).node;return Te.checkOpExists(r.node_ops.getattr,63)(r)},fstat(e){var t=Te.getStreamChecked(e),r=t.node,n=t.stream_ops.getattr,o=n?t:r;return n??=r.node_ops.getattr,Te.checkOpExists(n,63),n(o)},lstat:e=>Te.stat(e,!0),doChmod(e,t,r,n){Te.doSetAttr(e,t,{mode:4095&r|-4096&t.mode,ctime:Date.now(),dontFollow:n})},chmod(e,t,r){var n;n="string"==typeof e?Te.lookupPath(e,{follow:!r}).node:e,Te.doChmod(null,n,t,r)},lchmod(e,t){Te.chmod(e,t,!0)},fchmod(e,t){var r=Te.getStreamChecked(e);Te.doChmod(r,r.node,t,!1)},doChown(e,t,r){Te.doSetAttr(e,t,{timestamp:Date.now(),dontFollow:r})},chown(e,t,r,n){var o;o="string"==typeof e?Te.lookupPath(e,{follow:!n}).node:e,Te.doChown(null,o,n)},lchown(e,t,r){Te.chown(e,t,r,!0)},fchown(e,t,r){var n=Te.getStreamChecked(e);Te.doChown(n,n.node,!1)},doTruncate(e,t,r){if(Te.isDir(t.mode))throw new Te.ErrnoError(31);if(!Te.isFile(t.mode))throw new Te.ErrnoError(28);var n=Te.nodePermissions(t,"w");if(n)throw new Te.ErrnoError(n);Te.doSetAttr(e,t,{size:r,timestamp:Date.now()})},truncate(e,t){if(t<0)throw new Te.ErrnoError(28);var r;r="string"==typeof e?Te.lookupPath(e,{follow:!0}).node:e,Te.doTruncate(null,r,t)},ftruncate(e,t){var r=Te.getStreamChecked(e);if(t<0||0==(2097155&r.flags))throw new Te.ErrnoError(28);Te.doTruncate(r,r.node,t)},utime(e,t,r){var n=Te.lookupPath(e,{follow:!0}).node;Te.checkOpExists(n.node_ops.setattr,63)(n,{atime:t,mtime:r})},open(e,t,r=438){if(""===e)throw new Te.ErrnoError(44);var n,o;if(r=64&(t="string"==typeof t?(e=>{var t={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(void 0===t)throw new Error(`Unknown file open mode: ${e}`);return t})(t):t)?4095&r|32768:0,"object"==typeof e)n=e;else{o=e.endsWith("/");var i=Te.lookupPath(e,{follow:!(131072&t),noent_okay:!0});n=i.node,e=i.path}var a=!1;if(64&t)if(n){if(128&t)throw new Te.ErrnoError(20)}else{if(o)throw new Te.ErrnoError(31);n=Te.mknod(e,511|r,0),a=!0}if(!n)throw new Te.ErrnoError(44);if(Te.isChrdev(n.mode)&&(t&=-513),65536&t&&!Te.isDir(n.mode))throw new Te.ErrnoError(54);if(!a){var s=Te.mayOpen(n,t);if(s)throw new Te.ErrnoError(s)}512&t&&!a&&Te.truncate(n,0),t&=-131713;var d=Te.createStream({node:n,path:Te.getPath(n),flags:t,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return d.stream_ops.open&&d.stream_ops.open(d),a&&Te.chmod(n,511&r),!l.logReadFiles||1&t||e in Te.readFiles||(Te.readFiles[e]=1),d},close(e){if(Te.isClosed(e))throw new Te.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{Te.closeStream(e.fd)}e.fd=null},isClosed:e=>null===e.fd,llseek(e,t,r){if(Te.isClosed(e))throw new Te.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new Te.ErrnoError(70);if(0!=r&&1!=r&&2!=r)throw new Te.ErrnoError(28);return e.position=e.stream_ops.llseek(e,t,r),e.ungotten=[],e.position},read(e,t,r,n,o){if(n<0||o<0)throw new Te.ErrnoError(28);if(Te.isClosed(e))throw new Te.ErrnoError(8);if(1==(2097155&e.flags))throw new Te.ErrnoError(8);if(Te.isDir(e.node.mode))throw new Te.ErrnoError(31);if(!e.stream_ops.read)throw new Te.ErrnoError(28);var i=void 0!==o;if(i){if(!e.seekable)throw new Te.ErrnoError(70)}else o=e.position;var a=e.stream_ops.read(e,t,r,n,o);return i||(e.position+=a),a},write(e,t,r,n,o,i){if(n<0||o<0)throw new Te.ErrnoError(28);if(Te.isClosed(e))throw new Te.ErrnoError(8);if(0==(2097155&e.flags))throw new Te.ErrnoError(8);if(Te.isDir(e.node.mode))throw new Te.ErrnoError(31);if(!e.stream_ops.write)throw new Te.ErrnoError(28);e.seekable&&1024&e.flags&&Te.llseek(e,0,2);var a=void 0!==o;if(a){if(!e.seekable)throw new Te.ErrnoError(70)}else o=e.position;var s=e.stream_ops.write(e,t,r,n,o,i);return a||(e.position+=s),s},mmap(e,t,r,n,o){if(0!=(2&n)&&0==(2&o)&&2!=(2097155&e.flags))throw new Te.ErrnoError(2);if(1==(2097155&e.flags))throw new Te.ErrnoError(2);if(!e.stream_ops.mmap)throw new Te.ErrnoError(43);if(!t)throw new Te.ErrnoError(28);return e.stream_ops.mmap(e,t,r,n,o)},msync:(e,t,r,n,o)=>e.stream_ops.msync?e.stream_ops.msync(e,t,r,n,o):0,ioctl(e,t,r){if(!e.stream_ops.ioctl)throw new Te.ErrnoError(59);return e.stream_ops.ioctl(e,t,r)},readFile(e,t={}){if(t.flags=t.flags||0,t.encoding=t.encoding||"binary","utf8"!==t.encoding&&"binary"!==t.encoding)throw new Error(`Invalid encoding type "${t.encoding}"`);var r,n=Te.open(e,t.flags),o=Te.stat(e).size,i=new Uint8Array(o);return Te.read(n,i,0,o,0),"utf8"===t.encoding?r=Q(i):"binary"===t.encoding&&(r=i),Te.close(n),r},writeFile(e,t,r={}){r.flags=r.flags||577;var n=Te.open(e,r.flags,r.mode);if("string"==typeof t){var o=new Uint8Array(se(t)+1),i=le(t,o,0,o.length);Te.write(n,o,0,i,void 0,r.canOwn)}else{if(!ArrayBuffer.isView(t))throw new Error("Unsupported data type");Te.write(n,t,0,t.byteLength,void 0,r.canOwn)}Te.close(n)},cwd:()=>Te.currentPath,chdir(e){var t=Te.lookupPath(e,{follow:!0});if(null===t.node)throw new Te.ErrnoError(44);if(!Te.isDir(t.node.mode))throw new Te.ErrnoError(54);var r=Te.nodePermissions(t.node,"x");if(r)throw new Te.ErrnoError(r);Te.currentPath=t.path},createDefaultDirectories(){Te.mkdir("/tmp"),Te.mkdir("/home"),Te.mkdir("/home/web_user")},createDefaultDevices(){Te.mkdir("/dev"),Te.registerDevice(Te.makedev(1,3),{read:()=>0,write:(e,t,r,n,o)=>n,llseek:()=>0}),Te.mkdev("/dev/null",Te.makedev(1,3)),we.register(Te.makedev(5,0),we.default_tty_ops),we.register(Te.makedev(6,0),we.default_tty1_ops),Te.mkdev("/dev/tty",Te.makedev(5,0)),Te.mkdev("/dev/tty1",Te.makedev(6,0));var e=new Uint8Array(1024),t=0,r=()=>(0===t&&(me(e),t=e.byteLength),e[--t]);Te.createDevice("/dev","random",r),Te.createDevice("/dev","urandom",r),Te.mkdir("/dev/shm"),Te.mkdir("/dev/shm/tmp")},createSpecialDirectories(){Te.mkdir("/proc");var e=Te.mkdir("/proc/self");Te.mkdir("/proc/self/fd"),Te.mount({mount(){var t=Te.createNode(e,"fd",16895,73);return t.stream_ops={llseek:Ee.stream_ops.llseek},t.node_ops={lookup(e,t){var r=+t,n=Te.getStreamChecked(r),o={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path},id:r+1};return o.parent=o,o},readdir:()=>Array.from(Te.streams.entries()).filter((([e,t])=>t)).map((([e,t])=>e.toString()))},t}},{},"/proc/self/fd")},createStandardStreams(e,t,r){e?Te.createDevice("/dev","stdin",e):Te.symlink("/dev/tty","/dev/stdin"),t?Te.createDevice("/dev","stdout",null,t):Te.symlink("/dev/tty","/dev/stdout"),r?Te.createDevice("/dev","stderr",null,r):Te.symlink("/dev/tty1","/dev/stderr"),Te.open("/dev/stdin",0),Te.open("/dev/stdout",1),Te.open("/dev/stderr",1)},staticInit(){Te.nameTable=new Array(4096),Te.mount(Ee,{},"/"),Te.createDefaultDirectories(),Te.createDefaultDevices(),Te.createSpecialDirectories(),Te.filesystems={MEMFS:Ee}},init(e,t,r){Te.initialized=!0,e??=l.stdin,t??=l.stdout,r??=l.stderr,Te.createStandardStreams(e,t,r)},quit(){for(var e of(Te.initialized=!1,Te.streams))e&&Te.close(e)},findObject(e,t){var r=Te.analyzePath(e,t);return r.exists?r.object:null},analyzePath(e,t){try{e=(n=Te.lookupPath(e,{follow:!t})).path}catch(e){}var r={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=Te.lookupPath(e,{parent:!0});r.parentExists=!0,r.parentPath=n.path,r.parentObject=n.node,r.name=ge.basename(e),n=Te.lookupPath(e,{follow:!t}),r.exists=!0,r.path=n.path,r.object=n.node,r.name=n.node.name,r.isRoot="/"===n.path}catch(e){r.error=e.errno}return r},createPath(e,t,r,n){e="string"==typeof e?e:Te.getPath(e);for(var o=t.split("/").reverse();o.length;){var i=o.pop();if(i){var a=ge.join2(e,i);try{Te.mkdir(a)}catch(e){if(20!=e.errno)throw e}e=a}}return a},createFile(e,t,r,n,o){var i=ge.join2("string"==typeof e?e:Te.getPath(e),t),a=xe(n,o);return Te.create(i,a)},createDataFile(e,t,r,n,o,i){var a=t;e&&(e="string"==typeof e?e:Te.getPath(e),a=t?ge.join2(e,t):e);var s=xe(n,o),l=Te.create(a,s);if(r){if("string"==typeof r){for(var d=new Array(r.length),c=0,u=r.length;c<u;++c)d[c]=r.charCodeAt(c);r=d}Te.chmod(l,146|s);var p=Te.open(l,577);Te.write(p,r,0,r.length,0,i),Te.close(p),Te.chmod(l,s)}},createDevice(e,t,r,n){var o=ge.join2("string"==typeof e?e:Te.getPath(e),t),i=xe(!!r,!!n);Te.createDevice.major??=64;var a=Te.makedev(Te.createDevice.major++,0);return Te.registerDevice(a,{open(e){e.seekable=!1},close(e){n?.buffer?.length&&n(10)},read(e,t,n,o,i){for(var a=0,s=0;s<o;s++){var l;try{l=r()}catch(e){throw new Te.ErrnoError(29)}if(void 0===l&&0===a)throw new Te.ErrnoError(6);if(null==l)break;a++,t[n+s]=l}return a&&(e.node.atime=Date.now()),a},write(e,t,r,o,i){for(var a=0;a<o;a++)try{n(t[r+a])}catch(e){throw new Te.ErrnoError(29)}return o&&(e.node.mtime=e.node.ctime=Date.now()),a}}),Te.mkdev(o,i,a)},forceLoadFile(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;if("undefined"!=typeof XMLHttpRequest)throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");try{e.contents=f(e.url),e.usedBytes=e.contents.length}catch(e){throw new Te.ErrnoError(29)}},createLazyFile(e,t,r,n,o){class LazyUint8Array{lengthKnown=!1;chunks=[];get(e){if(!(e>this.length-1||e<0)){var t=e%this.chunkSize,r=e/this.chunkSize|0;return this.getter(r)[t]}}setDataGetter(e){this.getter=e}cacheLength(){var e=new XMLHttpRequest;if(e.open("HEAD",r,!1),e.send(null),!(e.status>=200&&e.status<300||304===e.status))throw new Error("Couldn't load "+r+". Status: "+e.status);var t,n=Number(e.getResponseHeader("Content-length")),o=(t=e.getResponseHeader("Accept-Ranges"))&&"bytes"===t,i=(t=e.getResponseHeader("Content-Encoding"))&&"gzip"===t,a=1048576;o||(a=n);var s=this;s.setDataGetter((e=>{var t=e*a,o=(e+1)*a-1;if(o=Math.min(o,n-1),void 0===s.chunks[e]&&(s.chunks[e]=((e,t)=>{if(e>t)throw new Error("invalid range ("+e+", "+t+") or no bytes requested!");if(t>n-1)throw new Error("only "+n+" bytes available! programmer error!");var o=new XMLHttpRequest;if(o.open("GET",r,!1),n!==a&&o.setRequestHeader("Range","bytes="+e+"-"+t),o.responseType="arraybuffer",o.overrideMimeType&&o.overrideMimeType("text/plain; charset=x-user-defined"),o.send(null),!(o.status>=200&&o.status<300||304===o.status))throw new Error("Couldn't load "+r+". Status: "+o.status);return void 0!==o.response?new Uint8Array(o.response||[]):ve(o.responseText||"",!0)})(t,o)),void 0===s.chunks[e])throw new Error("doXHR failed!");return s.chunks[e]})),!i&&n||(a=n=1,n=this.getter(0).length,a=n,k("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=a,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if("undefined"!=typeof XMLHttpRequest){if(!u)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var i={isDevice:!1,contents:new LazyUint8Array}}else i={isDevice:!1,url:r};var a=Te.createFile(e,t,i,n,o);i.contents?a.contents=i.contents:i.url&&(a.contents=null,a.url=i.url),Object.defineProperties(a,{usedBytes:{get:function(){return this.contents.length}}});var s={};function l(e,t,r,n,o){var i=e.node.contents;if(o>=i.length)return 0;var a=Math.min(i.length-o,n);if(i.slice)for(var s=0;s<a;s++)t[r+s]=i[o+s];else for(s=0;s<a;s++)t[r+s]=i.get(o+s);return a}return Object.keys(a.stream_ops).forEach((e=>{var t=a.stream_ops[e];s[e]=(...e)=>(Te.forceLoadFile(a),t(...e))})),s.read=(e,t,r,n,o)=>(Te.forceLoadFile(a),l(e,t,r,n,o)),s.mmap=(e,t,r,n,o)=>{Te.forceLoadFile(a);var i=_e(t);if(!i)throw new Te.ErrnoError(48);return l(e,P,i,t,r),{ptr:i,allocated:!0}},a.stream_ops=s,a}},Ae={DEFAULT_POLLMASK:5,calculateAt(e,t,r){if(ge.isAbs(t))return t;var n;if(n=-100===e?Te.cwd():Ae.getStreamFromFD(e).path,0==t.length){if(!r)throw new Te.ErrnoError(44);return n}return n+"/"+t},writeStat(e,t){F[e>>2]=t.dev,F[e+4>>2]=t.mode,M[e+8>>2]=t.nlink,F[e+12>>2]=t.uid,F[e+16>>2]=t.gid,F[e+20>>2]=t.rdev,D[e+24>>3]=BigInt(t.size),F[e+32>>2]=4096,F[e+36>>2]=t.blocks;var r=t.atime.getTime(),n=t.mtime.getTime(),o=t.ctime.getTime();return D[e+40>>3]=BigInt(Math.floor(r/1e3)),M[e+48>>2]=r%1e3*1e3*1e3,D[e+56>>3]=BigInt(Math.floor(n/1e3)),M[e+64>>2]=n%1e3*1e3*1e3,D[e+72>>3]=BigInt(Math.floor(o/1e3)),M[e+80>>2]=o%1e3*1e3*1e3,D[e+88>>3]=BigInt(t.ino),0},writeStatFs(e,t){F[e+4>>2]=t.bsize,F[e+40>>2]=t.bsize,F[e+8>>2]=t.blocks,F[e+12>>2]=t.bfree,F[e+16>>2]=t.bavail,F[e+20>>2]=t.files,F[e+24>>2]=t.ffree,F[e+28>>2]=t.fsid,F[e+44>>2]=t.flags,F[e+36>>2]=t.namelen},doMsync(e,t,r,n,o){if(!Te.isFile(t.node.mode))throw new Te.ErrnoError(43);if(2&n)return 0;var i=x.slice(e,e+r);Te.msync(t,i,o,r,n)},getStreamFromFD:e=>Te.getStreamChecked(e),varargs:void 0,getStr:e=>Z(e)},Fe=()=>{var e=F[+Ae.varargs>>2];return Ae.varargs+=4,e},Me=Fe,Ie={},De=e=>{for(;e.length;){var t=e.pop();e.pop()(t)}};function Be(e){return this.fromWireType(M[e>>2])}var Re,Le={},Oe={},Ue={},$e=l.InternalError=class InternalError extends Error{constructor(e){super(e),this.name="InternalError"}},qe=e=>{throw new $e(e)},We=(e,t,r)=>{function n(t){var n=r(t);n.length!==e.length&&qe("Mismatched type converter count");for(var o=0;o<e.length;++o)je(e[o],n[o])}e.forEach((e=>Ue[e]=t));var o=new Array(t.length),i=[],a=0;t.forEach(((e,t)=>{Oe.hasOwnProperty(e)?o[t]=Oe[e]:(i.push(e),Le.hasOwnProperty(e)||(Le[e]=[]),Le[e].push((()=>{o[t]=Oe[e],++a===i.length&&n(o)})))})),0===i.length&&n(o)},He={},Ne=e=>{if(null===e)return"null";var t=typeof e;return"object"===t||"array"===t||"function"===t?e.toString():""+e},Ve=e=>{for(var t="",r=e;x[r];)t+=Re[x[r++]];return t},ze=l.BindingError=class BindingError extends Error{constructor(e){super(e),this.name="BindingError"}},Ge=e=>{throw new ze(e)};function je(e,t,r={}){return function(e,t,r={}){var n=t.name;if(e||Ge(`type "${n}" must have a positive integer typeid pointer`),Oe.hasOwnProperty(e)){if(r.ignoreDuplicateRegistrations)return;Ge(`Cannot register type '${n}' twice`)}if(Oe[e]=t,delete Ue[e],Le.hasOwnProperty(e)){var o=Le[e];delete Le[e],o.forEach((e=>e()))}}(e,t,r)}var Xe=(e,t,r)=>{switch(t){case 1:return r?e=>P[e]:e=>x[e];case 2:return r?e=>T[e>>1]:e=>A[e>>1];case 4:return r?e=>F[e>>2]:e=>M[e>>2];case 8:return r?e=>D[e>>3]:e=>B[e>>3];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Ye=8,Ke=e=>{Ge(e.$$.ptrType.registeredClass.name+" instance already deleted")},Qe=!1,Ze=e=>{},Je=e=>{e.count.value-=1,0===e.count.value&&(e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)})(e)},et=(e,t,r)=>{if(t===r)return e;if(void 0===r.baseClass)return null;var n=et(e,t,r.baseClass);return null===n?null:r.downcast(n)},tt={},rt={},nt=(e,t)=>(t=((e,t)=>{for(void 0===t&&Ge("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t})(e,t),rt[t]),ot=(e,t)=>(t.ptrType&&t.ptr||qe("makeClassHandle requires ptr and ptrType"),!!t.smartPtrType!=!!t.smartPtr&&qe("Both smartPtrType and smartPtr must be specified"),t.count={value:1},at(Object.create(e,{$$:{value:t,writable:!0}})));function it(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var r=nt(this.registeredClass,t);if(void 0!==r){if(0===r.$$.count.value)return r.$$.ptr=t,r.$$.smartPtr=e,r.clone();var n=r.clone();return this.destructor(e),n}function o(){return this.isSmartPointer?ot(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):ot(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var i,a=this.registeredClass.getActualType(t),s=tt[a];if(!s)return o.call(this);i=this.isConst?s.constPointerType:s.pointerType;var l=et(t,this.registeredClass,i.registeredClass);return null===l?o.call(this):this.isSmartPointer?ot(i.registeredClass.instancePrototype,{ptrType:i,ptr:l,smartPtrType:this,smartPtr:e}):ot(i.registeredClass.instancePrototype,{ptrType:i,ptr:l})}var at=e=>"undefined"==typeof FinalizationRegistry?(at=e=>e,e):(Qe=new FinalizationRegistry((e=>{Je(e.$$)})),Ze=e=>Qe.unregister(e),(at=e=>{var t=e.$$;if(t.smartPtr){var r={$$:t};Qe.register(e,r,e)}return e})(e)),st=[];function lt(){}var dt=(e,t)=>Object.defineProperty(t,"name",{value:e}),ct=(e,t,r)=>{if(void 0===e[t].overloadTable){var n=e[t];e[t]=function(...n){return e[t].overloadTable.hasOwnProperty(n.length)||Ge(`Function '${r}' called with an invalid number of arguments (${n.length}) - expects one of (${e[t].overloadTable})!`),e[t].overloadTable[n.length].apply(this,n)},e[t].overloadTable=[],e[t].overloadTable[n.argCount]=n}},ut=(e,t,r)=>{l.hasOwnProperty(e)?((void 0===r||void 0!==l[e].overloadTable&&void 0!==l[e].overloadTable[r])&&Ge(`Cannot register public name '${e}' twice`),ct(l,e,e),l[e].overloadTable.hasOwnProperty(r)&&Ge(`Cannot register multiple overloads of a function with the same number of arguments (${r})!`),l[e].overloadTable[r]=t):(l[e]=t,l[e].argCount=r)};function pt(e,t,r,n,o,i,a,s){this.name=e,this.constructor=t,this.instancePrototype=r,this.rawDestructor=n,this.baseClass=o,this.getActualType=i,this.upcast=a,this.downcast=s,this.pureVirtualFunctions=[]}var ht=(e,t,r)=>{for(;t!==r;)t.upcast||Ge(`Expected null or instance of ${r.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function ft(e,t){if(null===t)return this.isReference&&Ge(`null is not a valid ${this.name}`),0;t.$$||Ge(`Cannot pass "${Ne(t)}" as a ${this.name}`),t.$$.ptr||Ge(`Cannot pass deleted object as a pointer of type ${this.name}`);var r=t.$$.ptrType.registeredClass;return ht(t.$$.ptr,r,this.registeredClass)}function gt(e,t){var r;if(null===t)return this.isReference&&Ge(`null is not a valid ${this.name}`),this.isSmartPointer?(r=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,r),r):0;t&&t.$$||Ge(`Cannot pass "${Ne(t)}" as a ${this.name}`),t.$$.ptr||Ge(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&Ge(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass;if(r=ht(t.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===t.$$.smartPtr&&Ge("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?r=t.$$.smartPtr:Ge(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:r=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)r=t.$$.smartPtr;else{var o=t.clone();r=this.rawShare(r,Ot.toHandle((()=>o.delete()))),null!==e&&e.push(this.rawDestructor,r)}break;default:Ge("Unsupporting sharing policy")}return r}function mt(e,t){if(null===t)return this.isReference&&Ge(`null is not a valid ${this.name}`),0;t.$$||Ge(`Cannot pass "${Ne(t)}" as a ${this.name}`),t.$$.ptr||Ge(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&Ge(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var r=t.$$.ptrType.registeredClass;return ht(t.$$.ptr,r,this.registeredClass)}function bt(e,t,r,n,o,i,a,s,l,d,c){this.name=e,this.registeredClass=t,this.isReference=r,this.isConst=n,this.isSmartPointer=o,this.pointeeType=i,this.sharingPolicy=a,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=d,this.rawDestructor=c,o||void 0!==t.baseClass?this.toWireType=gt:n?(this.toWireType=ft,this.destructorFunction=null):(this.toWireType=mt,this.destructorFunction=null)}var yt,vt,wt,kt,_t=(e,t,r)=>{l.hasOwnProperty(e)||qe("Replacing nonexistent public symbol"),void 0!==l[e].overloadTable&&void 0!==r?l[e].overloadTable[r]=t:(l[e]=t,l[e].argCount=r)},Et=[],Ct=e=>{var t=Et[e];return t||(Et[e]=t=yt.get(e)),t},St=(e,t)=>{e=Ve(e);var r=Ct(t);return"function"!=typeof r&&Ge(`unknown function pointer with signature ${e}: ${t}`),r},Pt=l.UnboundTypeError=(vt=Error,(kt=dt(wt="UnboundTypeError",(function(e){this.name=wt,this.message=e;var t=new Error(e).stack;void 0!==t&&(this.stack=this.toString()+"\n"+t.replace(/^Error(:[^\n]*)?\n/,""))}))).prototype=Object.create(vt.prototype),kt.prototype.constructor=kt,kt.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},kt),xt=e=>{var t=Hl(e),r=Ve(t);return Vl(t),r},Tt=(e,t)=>{var r=[],n={};throw t.forEach((function e(t){n[t]||Oe[t]||(Ue[t]?Ue[t].forEach(e):(r.push(t),n[t]=!0))})),new Pt(`${e}: `+r.map(xt).join([", "]))},At=(e,t)=>{for(var r=[],n=0;n<e;n++)r.push(M[t+4*n>>2]);return r};function Ft(e,t,r,n,o,i){var a=t.length;a<2&&Ge("argTypes array size mismatch! Must at least get return value and 'this' types!");var s=null!==t[1]&&null!==r,l=function(e){for(var t=1;t<e.length;++t)if(null!==e[t]&&void 0===e[t].destructorFunction)return!0;return!1}(t),d="void"!==t[0].name,c=a-2,u=new Array(c),p=[],h=[];return dt(e,(function(...e){var r;h.length=0,p.length=s?2:1,p[0]=o,s&&(r=t[1].toWireType(h,this),p[1]=r);for(var i=0;i<c;++i)u[i]=t[i+2].toWireType(h,e[i]),p.push(u[i]);return function(e){if(l)De(h);else for(var n=s?1:2;n<t.length;n++){var o=1===n?r:u[n-2];null!==t[n].destructorFunction&&t[n].destructorFunction(o)}if(d)return t[0].fromWireType(e)}(n(...p))}))}var Mt,It=e=>{const t=(e=e.trim()).indexOf("(");return-1===t?e:e.slice(0,t)},Dt=[],Bt=[],Rt=e=>{e>9&&0==--Bt[e+1]&&(Bt[e]=void 0,Dt.push(e))},Lt=()=>Bt.length/2-5-Dt.length,Ot={toValue:e=>(e||Ge("Cannot use deleted val. handle = "+e),Bt[e]),toHandle:e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{const t=Dt.pop()||Bt.length;return Bt[t]=e,Bt[t+1]=1,t}}}},Ut={name:"emscripten::val",fromWireType:e=>{var t=Ot.toValue(e);return Rt(e),t},toWireType:(e,t)=>Ot.toHandle(t),argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction:null},$t=(e,t,r)=>{switch(t){case 1:return r?function(e){return this.fromWireType(P[e])}:function(e){return this.fromWireType(x[e])};case 2:return r?function(e){return this.fromWireType(T[e>>1])}:function(e){return this.fromWireType(A[e>>1])};case 4:return r?function(e){return this.fromWireType(F[e>>2])}:function(e){return this.fromWireType(M[e>>2])};default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},qt=(e,t)=>{var r=Oe[e];return void 0===r&&Ge(`${t} has unknown type ${xt(e)}`),r},Wt=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(I[e>>2])};case 8:return function(e){return this.fromWireType(R[e>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},Ht=Object.assign({optional:!0},Ut),Nt="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,Vt=(e,t)=>{for(var r=e,n=r>>1,o=n+t/2;!(n>=o)&&A[n];)++n;if((r=n<<1)-e>32&&Nt)return Nt.decode(x.subarray(e,r));for(var i="",a=0;!(a>=t/2);++a){var s=T[e+2*a>>1];if(0==s)break;i+=String.fromCharCode(s)}return i},zt=(e,t,r)=>{if(r??=2147483647,r<2)return 0;for(var n=t,o=(r-=2)<2*e.length?r/2:e.length,i=0;i<o;++i){var a=e.charCodeAt(i);T[t>>1]=a,t+=2}return T[t>>1]=0,t-n},Gt=e=>2*e.length,jt=(e,t)=>{for(var r=0,n="";!(r>=t/4);){var o=F[e+4*r>>2];if(0==o)break;if(++r,o>=65536){var i=o-65536;n+=String.fromCharCode(55296|i>>10,56320|1023&i)}else n+=String.fromCharCode(o)}return n},Xt=(e,t,r)=>{if(r??=2147483647,r<4)return 0;for(var n=t,o=n+r-4,i=0;i<e.length;++i){var a=e.charCodeAt(i);if(a>=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),F[t>>2]=a,(t+=4)+4>o)break}return F[t>>2]=0,t-n},Yt=e=>{for(var t=0,r=0;r<e.length;++r){var n=e.charCodeAt(r);n>=55296&&n<=57343&&++r,t+=4}return t},Kt=0,Qt=(e,t,r)=>{var n=[],o=e.toWireType(n,r);return n.length&&(M[t>>2]=Ot.toHandle(n)),o},Zt=[],Jt={},er=e=>{var t=Jt[e];return void 0===t?Ve(e):t},tr=()=>{if("object"==typeof globalThis)return globalThis;function e(e){e.$$$embind_global$$$=e;var t="object"==typeof $$$embind_global$$$&&e.$$$embind_global$$$==e;return t||delete e.$$$embind_global$$$,t}if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;if("object"==typeof global&&e(global)?$$$embind_global$$$=global:"object"==typeof self&&e(self)&&($$$embind_global$$$=self),"object"==typeof $$$embind_global$$$)return $$$embind_global$$$;throw Error("unable to get global object.")},rr=Reflect.construct,nr=e=>e<-9007199254740992||e>9007199254740992?NaN:Number(e),or=[0,31,60,91,121,152,182,213,244,274,305,335],ir=[0,31,59,90,120,151,181,212,243,273,304,334],ar=e=>{var t;return((t=e.getFullYear())%4!=0||t%100==0&&t%400!=0?ir:or)[e.getMonth()]+e.getDate()-1},sr={},lr=e=>{if(e instanceof ExitStatus||"unwind"==e)return C;y(1,e)},dr=()=>oe||Kt>0,cr=e=>{C=e,dr()||(l.onExit?.(e),O=!0),y(e,new ExitStatus(e))},ur=(e,t)=>{C=e,cr(e)},pr=ur,hr=e=>{if(!O)try{e(),(()=>{if(!dr())try{pr(C)}catch(e){lr(e)}})()}catch(e){lr(e)}},fr=()=>performance.now(),gr=()=>Date.now(),mr=(e,t)=>setTimeout((()=>{hr(e)}),t),br={useWebGL:!1,isFullscreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],preloadedImages:{},preloadedAudios:{},getCanvas:()=>l.canvas,init(){if(!br.initted){br.initted=!0;var e={canHandle:function(e){return!l.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(e)},handle:function(e,t,r,n){var o=new Blob([e],{type:br.getMimetype(t)});o.size!==e.length&&(o=new Blob([new Uint8Array(e).buffer],{type:br.getMimetype(t)}));var i=URL.createObjectURL(o),a=new Image;a.onload=()=>{var n=document.createElement("canvas");n.width=a.width,n.height=a.height,n.getContext("2d").drawImage(a,0,0),br.preloadedImages[t]=n,URL.revokeObjectURL(i),r?.(e)},a.onerror=e=>{_(`Image ${i} could not be decoded`),n?.()},a.src=i}};Se.push(e);var t={canHandle:function(e){return!l.noAudioDecoding&&e.slice(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,t,r,n){var o=!1;function i(n){o||(o=!0,br.preloadedAudios[t]=n,r?.(e))}var a=new Blob([e],{type:br.getMimetype(t)}),s=URL.createObjectURL(a),l=new Audio;l.addEventListener("canplaythrough",(()=>i(l)),!1),l.onerror=function(r){o||(_(`warning: browser could not fully decode audio ${t}, trying slower base64 approach`),l.src="data:audio/x-"+t.slice(-3)+";base64,"+function(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n=0,o=0,i=0;i<e.length;i++)for(n=n<<8|e[i],o+=8;o>=6;){var a=n>>o-6&63;o-=6,r+=t[a]}return 2==o?(r+=t[(3&n)<<4],r+="=="):4==o&&(r+=t[(15&n)<<2],r+="="),r}(e),i(l))},l.src=s,mr((()=>{i(l)}),1e4)}};Se.push(t);var r=br.getCanvas();r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||(()=>{}),r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",n,!1),document.addEventListener("mozpointerlockchange",n,!1),document.addEventListener("webkitpointerlockchange",n,!1),document.addEventListener("mspointerlockchange",n,!1),l.elementPointerLock&&r.addEventListener("click",(e=>{!br.pointerLock&&br.getCanvas().requestPointerLock&&(br.getCanvas().requestPointerLock(),e.preventDefault())}),!1))}function n(){var e=br.getCanvas();br.pointerLock=document.pointerLockElement===e||document.mozPointerLockElement===e||document.webkitPointerLockElement===e||document.msPointerLockElement===e}},createContext(e,t,r,n){if(t&&l.ctx&&e==br.getCanvas())return l.ctx;var o,i;if(t){var a={antialias:!1,alpha:!1,majorVersion:"undefined"!=typeof WebGL2RenderingContext?2:1};if(n)for(var s in n)a[s]=n[s];void 0!==vr&&(i=vr.createContext(e,a))&&(o=vr.getContext(i).GLctx)}else o=e.getContext("2d");return o?(r&&(l.ctx=o,t&&vr.makeContextCurrent(i),br.useWebGL=t,br.moduleContextCreatedCallbacks.forEach((e=>e())),br.init()),o):null},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen(e,t){br.lockPointer=e,br.resizeCanvas=t,void 0===br.lockPointer&&(br.lockPointer=!0),void 0===br.resizeCanvas&&(br.resizeCanvas=!1);var r=br.getCanvas();function n(){br.isFullscreen=!1;var e=r.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(r.exitFullscreen=br.exitFullscreen,br.lockPointer&&r.requestPointerLock(),br.isFullscreen=!0,br.resizeCanvas?br.setFullscreenCanvasSize():br.updateCanvasDimensions(r)):(e.parentNode.insertBefore(r,e),e.parentNode.removeChild(e),br.resizeCanvas?br.setWindowedCanvasSize():br.updateCanvasDimensions(r)),l.onFullScreen?.(br.isFullscreen),l.onFullscreen?.(br.isFullscreen)}br.fullscreenHandlersInstalled||(br.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var o=document.createElement("div");r.parentNode.insertBefore(o,r),o.appendChild(r),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?()=>o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(o.webkitRequestFullScreen?()=>o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null),o.requestFullscreen()},exitFullscreen:()=>!!br.isFullscreen&&((document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]),!0),safeSetTimeout:(e,t)=>mr(e,t),getMimetype:e=>({jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.slice(e.lastIndexOf(".")+1)]),getUserMedia(e){window.getUserMedia||=navigator.getUserMedia||navigator.mozGetUserMedia,window.getUserMedia(e)},getMovementX:e=>e.movementX||e.mozMovementX||e.webkitMovementX||0,getMovementY:e=>e.movementY||e.mozMovementY||e.webkitMovementY||0,getMouseWheelDelta(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail/3;break;case"mousewheel":t=e.wheelDelta/120;break;case"wheel":switch(t=e.deltaY,e.deltaMode){case 0:t/=100;break;case 1:t/=3;break;case 2:t*=80;break;default:throw"unrecognized mouse wheel delta mode: "+e.deltaMode}break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(e,t){var r=br.getCanvas(),n=r.getBoundingClientRect(),o=void 0!==window.scrollX?window.scrollX:window.pageXOffset,i=void 0!==window.scrollY?window.scrollY:window.pageYOffset,a=e-(o+n.left),s=t-(i+n.top);return{x:a*=r.width/n.width,y:s*=r.height/n.height}},setMouseCoords(e,t){const{x:r,y:n}=br.calculateMouseCoords(e,t);br.mouseMovementX=r-br.mouseX,br.mouseMovementY=n-br.mouseY,br.mouseX=r,br.mouseY=n},calculateMouseEvent(e){if(br.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?br.mouseMovementX=br.mouseMovementY=0:(br.mouseMovementX=br.getMovementX(e),br.mouseMovementY=br.getMovementY(e)),br.mouseX+=br.mouseMovementX,br.mouseY+=br.mouseMovementY;else{if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var t=e.touch;if(void 0===t)return;var r=br.calculateMouseCoords(t.pageX,t.pageY);if("touchstart"===e.type)br.lastTouches[t.identifier]=r,br.touches[t.identifier]=r;else if("touchend"===e.type||"touchmove"===e.type){var n=br.touches[t.identifier];n||=r,br.lastTouches[t.identifier]=n,br.touches[t.identifier]=r}return}br.setMouseCoords(e.pageX,e.pageY)}},resizeListeners:[],updateResizeListeners(){var e=br.getCanvas();br.resizeListeners.forEach((t=>t(e.width,e.height)))},setCanvasSize(e,t,r){var n=br.getCanvas();br.updateCanvasDimensions(n,e,t),r||br.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if("undefined"!=typeof SDL){var e=M[SDL.screen>>2];e|=8388608,F[SDL.screen>>2]=e}br.updateCanvasDimensions(br.getCanvas()),br.updateResizeListeners()},setWindowedCanvasSize(){if("undefined"!=typeof SDL){var e=M[SDL.screen>>2];e&=-8388609,F[SDL.screen>>2]=e}br.updateCanvasDimensions(br.getCanvas()),br.updateResizeListeners()},updateCanvasDimensions(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,o=r;if(l.forcedAspectRatio>0&&(n/o<l.forcedAspectRatio?n=Math.round(o*l.forcedAspectRatio):o=Math.round(n/l.forcedAspectRatio)),(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var i=Math.min(screen.width/n,screen.height/o);n=Math.round(n*i),o=Math.round(o*i)}br.resizeCanvas?(e.width!=n&&(e.width=n),e.height!=o&&(e.height=o),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=t&&(e.width=t),e.height!=r&&(e.height=r),void 0!==e.style&&(n!=t||o!=r?(e.style.setProperty("width",n+"px","important"),e.style.setProperty("height",o+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))}},yr={errorCode:12288,defaultDisplayInitialized:!1,currentContext:0,currentReadSurface:0,currentDrawSurface:0,contextAttributes:{alpha:!1,depth:!1,stencil:!1,antialias:!1},stringCache:{},setErrorCode(e){yr.errorCode=e},chooseConfig(e,t,r,n,o){if(62e3!=e)return yr.setErrorCode(12296),0;if(t)for(;;){var i=F[t>>2];if(12321==i){var a=F[t+4>>2];yr.contextAttributes.alpha=a>0}else if(12325==i){var s=F[t+4>>2];yr.contextAttributes.depth=s>0}else if(12326==i){var l=F[t+4>>2];yr.contextAttributes.stencil=l>0}else if(12337==i){var d=F[t+4>>2];yr.contextAttributes.antialias=d>0}else if(12338==i)d=F[t+4>>2],yr.contextAttributes.antialias=1==d;else if(12544==i){var c=F[t+4>>2];yr.contextAttributes.lowLatency=12547!=c}else if(12344==i)break;t+=8}return r&&n||o?(o&&(F[o>>2]=1),r&&n>0&&(M[r>>2]=62002),yr.setErrorCode(12288),1):(yr.setErrorCode(12300),0)}},vr={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:e=>{vr.lastError||(vr.lastError=e)},getNewId:e=>{for(var t=vr.counter++,r=e.length;r<t;r++)e[r]=null;return t},genObject:(e,t,r,n)=>{for(var o=0;o<e;o++){var i=Mt[r](),a=i&&vr.getNewId(n);i?(i.name=a,n[a]=i):vr.recordError(1282),F[t+4*o>>2]=a}},getSource:(e,t,r,n)=>{for(var o="",i=0;i<t;++i){var a=n?M[n+4*i>>2]:void 0;o+=Z(M[r+4*i>>2],a)}return o},createContext:(e,t)=>{if(!e.getContextSafariWebGL2Fixed){let t=function(t,r){var n=e.getContextSafariWebGL2Fixed(t,r);return"webgl"==t==n instanceof WebGLRenderingContext?n:null};e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=t}var r=t.majorVersion>1?e.getContext("webgl2",t):e.getContext("webgl",t);return r?vr.registerContext(r,t):0},registerContext:(e,t)=>{var r=vr.getNewId(vr.contexts),n={handle:r,attributes:t,version:t.majorVersion,GLctx:e};return e.canvas&&(e.canvas.GLctxObject=n),vr.contexts[r]=n,r},makeContextCurrent:e=>(vr.currentContext=vr.contexts[e],l.ctx=Mt=vr.currentContext?.GLctx,!(e&&!Mt)),getContext:e=>vr.contexts[e],deleteContext:e=>{vr.currentContext===vr.contexts[e]&&(vr.currentContext=null),"object"==typeof JSEvents&&JSEvents.removeAllHandlersOnTarget(vr.contexts[e].GLctx.canvas),vr.contexts[e]?.GLctx.canvas&&(vr.contexts[e].GLctx.canvas.GLctxObject=void 0),vr.contexts[e]=null}},wr=[],kr=(e,t,r)=>{var n=((e,t)=>{var r;for(wr.length=0;r=x[e++];){var n=105!=r;t+=(n&=112!=r)&&t%8?4:0,wr.push(112==r?M[t>>2]:106==r?D[t>>3]:105==r?F[t>>2]:R[t>>3]),t+=n?8:4}return wr})(t,r);return $l[e](...n)},_r=e=>Mt.activeTexture(e),Er=(e,t)=>{Mt.attachShader(vr.programs[e],vr.shaders[t])},Cr=(e,t)=>{Mt.beginQuery(e,vr.queries[t])},Sr=(e,t)=>{Mt.disjointTimerQueryExt.beginQueryEXT(e,vr.queries[t])},Pr=e=>Mt.beginTransformFeedback(e),xr=(e,t,r)=>{Mt.bindAttribLocation(vr.programs[e],t,Z(r))},Tr=(e,t)=>{35051==e?Mt.currentPixelPackBufferBinding=t:35052==e&&(Mt.currentPixelUnpackBufferBinding=t),Mt.bindBuffer(e,vr.buffers[t])},Ar=(e,t,r)=>{Mt.bindBufferBase(e,t,vr.buffers[r])},Fr=(e,t,r,n,o)=>{Mt.bindBufferRange(e,t,vr.buffers[r],n,o)},Mr=(e,t)=>{Mt.bindFramebuffer(e,vr.framebuffers[t])},Ir=(e,t)=>{Mt.bindRenderbuffer(e,vr.renderbuffers[t])},Dr=(e,t)=>{Mt.bindSampler(e,vr.samplers[t])},Br=(e,t)=>{Mt.bindTexture(e,vr.textures[t])},Rr=(e,t)=>{Mt.bindTransformFeedback(e,vr.transformFeedbacks[t])},Lr=e=>{Mt.bindVertexArray(vr.vaos[e])},Or=Lr,Ur=Lr,$r=Ur,qr=(e,t,r,n)=>Mt.blendColor(e,t,r,n),Wr=e=>Mt.blendEquation(e),Hr=(e,t)=>Mt.blendEquationSeparate(e,t),Nr=(e,t)=>Mt.blendFunc(e,t),Vr=(e,t,r,n)=>Mt.blendFuncSeparate(e,t,r,n),zr=(e,t,r,n,o,i,a,s,l,d)=>Mt.blitFramebuffer(e,t,r,n,o,i,a,s,l,d),Gr=(e,t,r,n)=>{vr.currentContext.version>=2?r&&t?Mt.bufferData(e,x,n,r,t):Mt.bufferData(e,t,n):Mt.bufferData(e,r?x.subarray(r,r+t):t,n)},jr=(e,t,r,n)=>{vr.currentContext.version>=2?r&&Mt.bufferSubData(e,t,x,n,r):Mt.bufferSubData(e,t,x.subarray(n,n+r))},Xr=e=>Mt.checkFramebufferStatus(e),Yr=e=>Mt.clear(e),Kr=(e,t,r,n)=>Mt.clearBufferfi(e,t,r,n),Qr=(e,t,r)=>{Mt.clearBufferfv(e,t,I,r>>2)},Zr=(e,t,r)=>{Mt.clearBufferiv(e,t,F,r>>2)},Jr=(e,t,r)=>{Mt.clearBufferuiv(e,t,M,r>>2)},en=(e,t,r,n)=>Mt.clearColor(e,t,r,n),tn=e=>Mt.clearDepth(e),rn=e=>Mt.clearStencil(e),nn=(e,t,r)=>(r=Number(r),Mt.clientWaitSync(vr.syncs[e],t,r)),on=(e,t)=>{Mt.extClipControl.clipControlEXT(e,t)},an=(e,t,r,n)=>{Mt.colorMask(!!e,!!t,!!r,!!n)},sn=e=>{Mt.compileShader(vr.shaders[e])},ln=(e,t,r,n,o,i,a,s)=>{if(vr.currentContext.version>=2)return Mt.currentPixelUnpackBufferBinding||!a?void Mt.compressedTexImage2D(e,t,r,n,o,i,a,s):void Mt.compressedTexImage2D(e,t,r,n,o,i,x,s,a);Mt.compressedTexImage2D(e,t,r,n,o,i,x.subarray(s,s+a))},dn=(e,t,r,n,o,i,a,s,l)=>{Mt.currentPixelUnpackBufferBinding?Mt.compressedTexImage3D(e,t,r,n,o,i,a,s,l):Mt.compressedTexImage3D(e,t,r,n,o,i,a,x,l,s)},cn=(e,t,r,n,o,i,a,s,l)=>{if(vr.currentContext.version>=2)return Mt.currentPixelUnpackBufferBinding||!s?void Mt.compressedTexSubImage2D(e,t,r,n,o,i,a,s,l):void Mt.compressedTexSubImage2D(e,t,r,n,o,i,a,x,l,s);Mt.compressedTexSubImage2D(e,t,r,n,o,i,a,x.subarray(l,l+s))},un=(e,t,r,n,o,i,a,s,l,d,c)=>{Mt.currentPixelUnpackBufferBinding?Mt.compressedTexSubImage3D(e,t,r,n,o,i,a,s,l,d,c):Mt.compressedTexSubImage3D(e,t,r,n,o,i,a,s,l,x,c,d)},pn=(e,t,r,n,o)=>Mt.copyBufferSubData(e,t,r,n,o),hn=(e,t,r,n,o,i,a,s)=>Mt.copyTexImage2D(e,t,r,n,o,i,a,s),fn=(e,t,r,n,o,i,a,s)=>Mt.copyTexSubImage2D(e,t,r,n,o,i,a,s),gn=(e,t,r,n,o,i,a,s,l)=>Mt.copyTexSubImage3D(e,t,r,n,o,i,a,s,l),mn=()=>{var e=vr.getNewId(vr.programs),t=Mt.createProgram();return t.name=e,t.maxUniformLength=t.maxAttributeLength=t.maxUniformBlockNameLength=0,t.uniformIdCounter=1,vr.programs[e]=t,e},bn=e=>{var t=vr.getNewId(vr.shaders);return vr.shaders[t]=Mt.createShader(e),t},yn=e=>Mt.cullFace(e),vn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.buffers[n];o&&(Mt.deleteBuffer(o),o.name=0,vr.buffers[n]=null,n==Mt.currentPixelPackBufferBinding&&(Mt.currentPixelPackBufferBinding=0),n==Mt.currentPixelUnpackBufferBinding&&(Mt.currentPixelUnpackBufferBinding=0))}},wn=(e,t)=>{for(var r=0;r<e;++r){var n=F[t+4*r>>2],o=vr.framebuffers[n];o&&(Mt.deleteFramebuffer(o),o.name=0,vr.framebuffers[n]=null)}},kn=e=>{if(e){var t=vr.programs[e];t?(Mt.deleteProgram(t),t.name=0,vr.programs[e]=null):vr.recordError(1281)}},_n=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.queries[n];o&&(Mt.deleteQuery(o),vr.queries[n]=null)}},En=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.queries[n];o&&(Mt.disjointTimerQueryExt.deleteQueryEXT(o),vr.queries[n]=null)}},Cn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.renderbuffers[n];o&&(Mt.deleteRenderbuffer(o),o.name=0,vr.renderbuffers[n]=null)}},Sn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.samplers[n];o&&(Mt.deleteSampler(o),o.name=0,vr.samplers[n]=null)}},Pn=e=>{if(e){var t=vr.shaders[e];t?(Mt.deleteShader(t),vr.shaders[e]=null):vr.recordError(1281)}},xn=e=>{if(e){var t=vr.syncs[e];t?(Mt.deleteSync(t),t.name=0,vr.syncs[e]=null):vr.recordError(1281)}},Tn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.textures[n];o&&(Mt.deleteTexture(o),o.name=0,vr.textures[n]=null)}},An=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2],o=vr.transformFeedbacks[n];o&&(Mt.deleteTransformFeedback(o),o.name=0,vr.transformFeedbacks[n]=null)}},Fn=(e,t)=>{for(var r=0;r<e;r++){var n=F[t+4*r>>2];Mt.deleteVertexArray(vr.vaos[n]),vr.vaos[n]=null}},Mn=Fn,In=Fn,Dn=In,Bn=e=>Mt.depthFunc(e),Rn=e=>{Mt.depthMask(!!e)},Ln=(e,t)=>Mt.depthRange(e,t),On=(e,t)=>{Mt.detachShader(vr.programs[e],vr.shaders[t])},Un=e=>Mt.disable(e),$n=e=>{Mt.disableVertexAttribArray(e)},qn=(e,t,r)=>{Mt.drawArrays(e,t,r)},Wn=(e,t,r,n)=>{Mt.drawArraysInstanced(e,t,r,n)},Hn=Wn,Nn=Wn,Vn=Nn,zn=Wn,Gn=zn,jn=(e,t,r,n,o)=>{Mt.dibvbi.drawArraysInstancedBaseInstanceWEBGL(e,t,r,n,o)},Xn=Wn,Yn=Xn,Kn=Wn,Qn=Kn,Zn=[],Jn=(e,t)=>{for(var r=Zn[e],n=0;n<e;n++)r[n]=F[t+4*n>>2];Mt.drawBuffers(r)},eo=Jn,to=Jn,ro=to,no=Jn,oo=no,io=(e,t,r,n)=>{Mt.drawElements(e,t,r,n)},ao=io,so=(e,t,r,n,o)=>{Mt.drawElementsInstanced(e,t,r,n,o)},lo=so,co=so,uo=co,po=so,ho=po,fo=(e,t,r,n,o,i,a)=>{Mt.dibvbi.drawElementsInstancedBaseVertexBaseInstanceWEBGL(e,t,r,n,o,i,a)},go=so,mo=go,bo=so,yo=bo,vo=(e,t,r,n,o,i)=>{io(e,n,o,i)},wo=e=>Mt.enable(e),ko=e=>{Mt.enableVertexAttribArray(e)},_o=e=>Mt.endQuery(e),Eo=e=>{Mt.disjointTimerQueryExt.endQueryEXT(e)},Co=()=>Mt.endTransformFeedback(),So=(e,t)=>{var r=Mt.fenceSync(e,t);if(r){var n=vr.getNewId(vr.syncs);return r.name=n,vr.syncs[n]=r,n}return 0},Po=()=>Mt.finish(),xo=()=>Mt.flush(),To=(e,t,r,n)=>{Mt.framebufferRenderbuffer(e,t,r,vr.renderbuffers[n])},Ao=(e,t,r,n,o)=>{Mt.framebufferTexture2D(e,t,r,vr.textures[n],o)},Fo=(e,t,r,n,o)=>{Mt.framebufferTextureLayer(e,t,vr.textures[r],n,o)},Mo=e=>Mt.frontFace(e),Io=(e,t)=>{vr.genObject(e,t,"createBuffer",vr.buffers)},Do=(e,t)=>{vr.genObject(e,t,"createFramebuffer",vr.framebuffers)},Bo=(e,t)=>{vr.genObject(e,t,"createQuery",vr.queries)},Ro=(e,t)=>{for(var r=0;r<e;r++){var n=Mt.disjointTimerQueryExt.createQueryEXT();if(!n){for(vr.recordError(1282);r<e;)F[t+4*r++>>2]=0;return}var o=vr.getNewId(vr.queries);n.name=o,vr.queries[o]=n,F[t+4*r>>2]=o}},Lo=(e,t)=>{vr.genObject(e,t,"createRenderbuffer",vr.renderbuffers)},Oo=(e,t)=>{vr.genObject(e,t,"createSampler",vr.samplers)},Uo=(e,t)=>{vr.genObject(e,t,"createTexture",vr.textures)},$o=(e,t)=>{vr.genObject(e,t,"createTransformFeedback",vr.transformFeedbacks)},qo=(e,t)=>{vr.genObject(e,t,"createVertexArray",vr.vaos)},Wo=qo,Ho=qo,No=Ho,Vo=e=>Mt.generateMipmap(e),zo=(e,t,r,n,o,i,a,s)=>{t=vr.programs[t];var l=Mt[e](t,r);if(l){var d=s&&de(l.name,s,n);o&&(F[o>>2]=d),i&&(F[i>>2]=l.size),a&&(F[a>>2]=l.type)}},Go=(e,t,r,n,o,i,a)=>zo("getActiveAttrib",e,t,r,n,o,i,a),jo=(e,t,r,n,o,i,a)=>zo("getActiveUniform",e,t,r,n,o,i,a),Xo=(e,t,r,n,o)=>{e=vr.programs[e];var i=Mt.getActiveUniformBlockName(e,t);if(i)if(o&&r>0){var a=de(i,o,r);n&&(F[n>>2]=a)}else n&&(F[n>>2]=0)},Yo=(e,t,r,n)=>{if(n)if(e=vr.programs[e],35393!=r){var o=Mt.getActiveUniformBlockParameter(e,t,r);if(null!==o)if(35395==r)for(var i=0;i<o.length;i++)F[n+4*i>>2]=o[i];else F[n>>2]=o}else{var a=Mt.getActiveUniformBlockName(e,t);F[n>>2]=a.length+1}else vr.recordError(1281)},Ko=(e,t,r,n,o)=>{if(o)if(t>0&&0==r)vr.recordError(1281);else{e=vr.programs[e];for(var i=[],a=0;a<t;a++)i.push(F[r+4*a>>2]);var s=Mt.getActiveUniforms(e,i,n);if(s){var l=s.length;for(a=0;a<l;a++)F[o+4*a>>2]=s[a]}}else vr.recordError(1281)},Qo=(e,t,r,n)=>{var o=Mt.getAttachedShaders(vr.programs[e]),i=o.length;i>t&&(i=t),F[r>>2]=i;for(var a=0;a<i;++a){var s=vr.shaders.indexOf(o[a]);F[n+4*a>>2]=s}},Zo=(e,t)=>Mt.getAttribLocation(vr.programs[e],Z(t)),Jo=(e,t)=>{M[e>>2]=t;var r=M[e>>2];M[e+4>>2]=(t-r)/4294967296},ei=()=>{var e,t=(e=["ANGLE_instanced_arrays","EXT_blend_minmax","EXT_disjoint_timer_query","EXT_frag_depth","EXT_shader_texture_lod","EXT_sRGB","OES_element_index_uint","OES_fbo_render_mipmap","OES_standard_derivatives","OES_texture_float","OES_texture_half_float","OES_texture_half_float_linear","OES_vertex_array_object","WEBGL_color_buffer_float","WEBGL_depth_texture","WEBGL_draw_buffers","EXT_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","EXT_clip_control","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_polygon_offset_clamp","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw","WEBGL_polygon_mode"],(Mt.getSupportedExtensions()||[]).filter((t=>e.includes(t))));return t=t.concat(t.map((e=>"GL_"+e)))},ti=(e,t,r)=>{if(t){var n=void 0;switch(e){case 36346:n=1;break;case 36344:return void(0!=r&&1!=r&&vr.recordError(1280));case 34814:case 36345:n=0;break;case 34466:var o=Mt.getParameter(34467);n=o?o.length:0;break;case 33309:if(vr.currentContext.version<2)return void vr.recordError(1282);n=ei().length;break;case 33307:case 33308:if(vr.currentContext.version<2)return void vr.recordError(1280);n=33307==e?3:0}if(void 0===n){var i=Mt.getParameter(e);switch(typeof i){case"number":n=i;break;case"boolean":n=i?1:0;break;case"string":return void vr.recordError(1280);case"object":if(null===i)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:n=0;break;default:return void vr.recordError(1280)}else{if(i instanceof Float32Array||i instanceof Uint32Array||i instanceof Int32Array||i instanceof Array){for(var a=0;a<i.length;++a)switch(r){case 0:F[t+4*a>>2]=i[a];break;case 2:I[t+4*a>>2]=i[a];break;case 4:P[t+a]=i[a]?1:0}return}try{n=0|i.name}catch(t){return vr.recordError(1280),void _(`GL_INVALID_ENUM in glGet${r}v: Unknown object returned from WebGL getParameter(${e})! (error: ${t})`)}}break;default:return vr.recordError(1280),void _(`GL_INVALID_ENUM in glGet${r}v: Native code calling glGet${r}v(${e}) and it returns ${i} of type ${typeof i}!`)}}switch(r){case 1:Jo(t,n);break;case 0:F[t>>2]=n;break;case 2:I[t>>2]=n;break;case 4:P[t]=n?1:0}}else vr.recordError(1281)},ri=(e,t)=>ti(e,t,4),ni=(e,t,r)=>{r?Jo(r,Mt.getBufferParameter(e,t)):vr.recordError(1281)},oi=(e,t,r)=>{r?F[r>>2]=Mt.getBufferParameter(e,t):vr.recordError(1281)},ii=()=>{var e=Mt.getError()||vr.lastError;return vr.lastError=0,e},ai=(e,t)=>ti(e,t,2),si=(e,t)=>Mt.getFragDataLocation(vr.programs[e],Z(t)),li=(e,t,r,n)=>{var o=Mt.getFramebufferAttachmentParameter(e,t,r);(o instanceof WebGLRenderbuffer||o instanceof WebGLTexture)&&(o=0|o.name),F[n>>2]=o},di=(e,t,r,n)=>{if(r){var o,i=Mt.getIndexedParameter(e,t);switch(typeof i){case"boolean":o=i?1:0;break;case"number":o=i;break;case"object":if(null===i)switch(e){case 35983:case 35368:o=0;break;default:return void vr.recordError(1280)}else{if(!(i instanceof WebGLBuffer))return void vr.recordError(1280);o=0|i.name}break;default:return void vr.recordError(1280)}switch(n){case 1:Jo(r,o);break;case 0:F[r>>2]=o;break;case 2:I[r>>2]=o;break;case 4:P[r]=o?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+n}}else vr.recordError(1281)},ci=(e,t,r)=>di(e,t,r,1),ui=(e,t)=>{ti(e,t,1)},pi=(e,t,r)=>di(e,t,r,0),hi=(e,t)=>ti(e,t,0),fi=(e,t,r,n,o)=>{if(n<0)vr.recordError(1281);else if(o){var i=Mt.getInternalformatParameter(e,t,r);if(null!==i)for(var a=0;a<i.length&&a<n;++a)F[o+4*a>>2]=i[a]}else vr.recordError(1281)},gi=(e,t,r,n,o)=>{vr.recordError(1282)},mi=(e,t,r,n)=>{var o=Mt.getProgramInfoLog(vr.programs[e]);null===o&&(o="(unknown error)");var i=t>0&&n?de(o,n,t):0;r&&(F[r>>2]=i)},bi=(e,t,r)=>{if(r)if(e>=vr.counter)vr.recordError(1281);else if(e=vr.programs[e],35716==t){var n=Mt.getProgramInfoLog(e);null===n&&(n="(unknown error)"),F[r>>2]=n.length+1}else if(35719==t){if(!e.maxUniformLength)for(var o=Mt.getProgramParameter(e,35718),i=0;i<o;++i)e.maxUniformLength=Math.max(e.maxUniformLength,Mt.getActiveUniform(e,i).name.length+1);F[r>>2]=e.maxUniformLength}else if(35722==t){if(!e.maxAttributeLength){var a=Mt.getProgramParameter(e,35721);for(i=0;i<a;++i)e.maxAttributeLength=Math.max(e.maxAttributeLength,Mt.getActiveAttrib(e,i).name.length+1)}F[r>>2]=e.maxAttributeLength}else if(35381==t){if(!e.maxUniformBlockNameLength){var s=Mt.getProgramParameter(e,35382);for(i=0;i<s;++i)e.maxUniformBlockNameLength=Math.max(e.maxUniformBlockNameLength,Mt.getActiveUniformBlockName(e,i).length+1)}F[r>>2]=e.maxUniformBlockNameLength}else F[r>>2]=Mt.getProgramParameter(e,t);else vr.recordError(1281)},yi=(e,t,r)=>{if(r){var n,o=vr.queries[e];n=vr.currentContext.version<2?Mt.disjointTimerQueryExt.getQueryObjectEXT(o,t):Mt.getQueryParameter(o,t),Jo(r,"boolean"==typeof n?n?1:0:n)}else vr.recordError(1281)},vi=yi,wi=(e,t,r)=>{if(r){var n,o=vr.queries[e],i=Mt.disjointTimerQueryExt.getQueryObjectEXT(o,t);n="boolean"==typeof i?i?1:0:i,F[r>>2]=n}else vr.recordError(1281)},ki=wi,_i=yi,Ei=_i,Ci=(e,t,r)=>{if(r){var n,o=vr.queries[e],i=Mt.getQueryParameter(o,t);n="boolean"==typeof i?i?1:0:i,F[r>>2]=n}else vr.recordError(1281)},Si=wi,Pi=Si,xi=(e,t,r)=>{r?F[r>>2]=Mt.getQuery(e,t):vr.recordError(1281)},Ti=(e,t,r)=>{r?F[r>>2]=Mt.disjointTimerQueryExt.getQueryEXT(e,t):vr.recordError(1281)},Ai=(e,t,r)=>{r?F[r>>2]=Mt.getRenderbufferParameter(e,t):vr.recordError(1281)},Fi=(e,t,r)=>{r?I[r>>2]=Mt.getSamplerParameter(vr.samplers[e],t):vr.recordError(1281)},Mi=(e,t,r)=>{r?F[r>>2]=Mt.getSamplerParameter(vr.samplers[e],t):vr.recordError(1281)},Ii=(e,t,r,n)=>{var o=Mt.getShaderInfoLog(vr.shaders[e]);null===o&&(o="(unknown error)");var i=t>0&&n?de(o,n,t):0;r&&(F[r>>2]=i)},Di=(e,t,r,n)=>{var o=Mt.getShaderPrecisionFormat(e,t);F[r>>2]=o.rangeMin,F[r+4>>2]=o.rangeMax,F[n>>2]=o.precision},Bi=(e,t,r,n)=>{var o=Mt.getShaderSource(vr.shaders[e]);if(o){var i=t>0&&n?de(o,n,t):0;r&&(F[r>>2]=i)}},Ri=(e,t,r)=>{if(r)if(35716==t){var n=Mt.getShaderInfoLog(vr.shaders[e]);null===n&&(n="(unknown error)");var o=n?n.length+1:0;F[r>>2]=o}else if(35720==t){var i=Mt.getShaderSource(vr.shaders[e]),a=i?i.length+1:0;F[r>>2]=a}else F[r>>2]=Mt.getShaderParameter(vr.shaders[e],t);else vr.recordError(1281)},Li=e=>{var t=vr.stringCache[e];if(!t){switch(e){case 7939:t=ce(ei().join(" "));break;case 7936:case 7937:case 37445:case 37446:var r=Mt.getParameter(e);r||vr.recordError(1280),t=r?ce(r):0;break;case 7938:var n=Mt.getParameter(7938),o=`OpenGL ES 2.0 (${n})`;vr.currentContext.version>=2&&(o=`OpenGL ES 3.0 (${n})`),t=ce(o);break;case 35724:var i=Mt.getParameter(35724),a=i.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==a&&(3==a[1].length&&(a[1]=a[1]+"0"),i=`OpenGL ES GLSL ES ${a[1]} (${i})`),t=ce(i);break;default:vr.recordError(1280)}vr.stringCache[e]=t}return t},Oi=(e,t)=>{if(vr.currentContext.version<2)return vr.recordError(1282),0;var r=vr.stringiCache[e];if(r)return t<0||t>=r.length?(vr.recordError(1281),0):r[t];if(7939===e){var n=ei().map(ce);return r=vr.stringiCache[e]=n,t<0||t>=r.length?(vr.recordError(1281),0):r[t]}return vr.recordError(1280),0},Ui=(e,t,r,n,o)=>{if(r<0)vr.recordError(1281);else if(o){var i=Mt.getSyncParameter(vr.syncs[e],t);null!==i&&(F[o>>2]=i,n&&(F[n>>2]=1))}else vr.recordError(1281)},$i=(e,t,r)=>{r?I[r>>2]=Mt.getTexParameter(e,t):vr.recordError(1281)},qi=(e,t,r)=>{r?F[r>>2]=Mt.getTexParameter(e,t):vr.recordError(1281)},Wi=(e,t,r,n,o,i,a)=>{e=vr.programs[e];var s=Mt.getTransformFeedbackVarying(e,t);if(s){if(a&&r>0){var l=de(s.name,a,r);n&&(F[n>>2]=l)}else n&&(F[n>>2]=0);o&&(F[o>>2]=s.size),i&&(F[i>>2]=s.type)}},Hi=(e,t)=>Mt.getUniformBlockIndex(vr.programs[e],Z(t)),Ni=(e,t,r,n)=>{if(n)if(t>0&&(0==r||0==n))vr.recordError(1281);else{e=vr.programs[e];for(var o=[],i=0;i<t;i++)o.push(Z(F[r+4*i>>2]));var a=Mt.getUniformIndices(e,o);if(a){var s=a.length;for(i=0;i<s;i++)F[n+4*i>>2]=a[i]}}else vr.recordError(1281)},Vi=e=>"]"==e.slice(-1)&&e.lastIndexOf("["),zi=e=>{var t,r,n=e.uniformLocsById,o=e.uniformSizeAndIdsByName;if(!n){e.uniformLocsById=n={},e.uniformArrayNamesById={};var i=Mt.getProgramParameter(e,35718);for(t=0;t<i;++t){var a=Mt.getActiveUniform(e,t),s=a.name,l=a.size,d=Vi(s),c=d>0?s.slice(0,d):s,u=e.uniformIdCounter;for(e.uniformIdCounter+=l,o[c]=[l,u],r=0;r<l;++r)n[u]=r,e.uniformArrayNamesById[u++]=c}}},Gi=(e,t)=>{if(t=Z(t),e=vr.programs[e]){zi(e);var r=e.uniformLocsById,n=0,o=t,i=Vi(t);i>0&&(s=t.slice(i+1),n=parseInt(s)>>>0,o=t.slice(0,i));var a=e.uniformSizeAndIdsByName[o];if(a&&n<a[0]&&(r[n+=a[1]]=r[n]||Mt.getUniformLocation(e,t)))return n}else vr.recordError(1281);var s;return-1},ji=e=>{var t=Mt.currentProgram;if(t){var r=t.uniformLocsById[e];return"number"==typeof r&&(t.uniformLocsById[e]=r=Mt.getUniformLocation(t,t.uniformArrayNamesById[e]+(r>0?`[${r}]`:""))),r}vr.recordError(1282)},Xi=(e,t,r,n)=>{if(r){e=vr.programs[e],zi(e);var o=Mt.getUniform(e,ji(t));if("number"==typeof o||"boolean"==typeof o)switch(n){case 0:F[r>>2]=o;break;case 2:I[r>>2]=o}else for(var i=0;i<o.length;i++)switch(n){case 0:F[r+4*i>>2]=o[i];break;case 2:I[r+4*i>>2]=o[i]}}else vr.recordError(1281)},Yi=(e,t,r)=>{Xi(e,t,r,2)},Ki=(e,t,r)=>{Xi(e,t,r,0)},Qi=(e,t,r)=>Xi(e,t,r,0),Zi=(e,t,r,n)=>{if(r){var o=Mt.getVertexAttrib(e,t);if(34975==t)F[r>>2]=o&&o.name;else if("number"==typeof o||"boolean"==typeof o)switch(n){case 0:F[r>>2]=o;break;case 2:I[r>>2]=o;break;case 5:F[r>>2]=Math.fround(o)}else for(var i=0;i<o.length;i++)switch(n){case 0:F[r+4*i>>2]=o[i];break;case 2:I[r+4*i>>2]=o[i];break;case 5:F[r+4*i>>2]=Math.fround(o[i])}}else vr.recordError(1281)},Ji=(e,t,r)=>{Zi(e,t,r,0)},ea=Ji,ta=Ji,ra=ta,na=(e,t,r)=>{r?F[r>>2]=Mt.getVertexAttribOffset(e,t):vr.recordError(1281)},oa=(e,t,r)=>{Zi(e,t,r,2)},ia=(e,t,r)=>{Zi(e,t,r,5)},aa=(e,t)=>Mt.hint(e,t),sa=(e,t,r)=>{for(var n=Zn[t],o=0;o<t;o++)n[o]=F[r+4*o>>2];Mt.invalidateFramebuffer(e,n)},la=(e,t,r,n,o,i,a)=>{for(var s=Zn[t],l=0;l<t;l++)s[l]=F[r+4*l>>2];Mt.invalidateSubFramebuffer(e,s,n,o,i,a)},da=e=>{var t=vr.buffers[e];return t?Mt.isBuffer(t):0},ca=e=>Mt.isEnabled(e),ua=e=>{var t=vr.framebuffers[e];return t?Mt.isFramebuffer(t):0},pa=e=>(e=vr.programs[e])?Mt.isProgram(e):0,ha=e=>{var t=vr.queries[e];return t?Mt.isQuery(t):0},fa=e=>{var t=vr.queries[e];return t?Mt.disjointTimerQueryExt.isQueryEXT(t):0},ga=e=>{var t=vr.renderbuffers[e];return t?Mt.isRenderbuffer(t):0},ma=e=>{var t=vr.samplers[e];return t?Mt.isSampler(t):0},ba=e=>{var t=vr.shaders[e];return t?Mt.isShader(t):0},ya=e=>Mt.isSync(vr.syncs[e]),va=e=>{var t=vr.textures[e];return t?Mt.isTexture(t):0},wa=e=>Mt.isTransformFeedback(vr.transformFeedbacks[e]),ka=e=>{var t=vr.vaos[e];return t?Mt.isVertexArray(t):0},_a=ka,Ea=ka,Ca=Ea,Sa=e=>Mt.lineWidth(e),Pa=e=>{e=vr.programs[e],Mt.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}},xa=(e,t,r,n,o,i)=>{Mt.mdibvbi.multiDrawArraysInstancedBaseInstanceWEBGL(e,F,t>>2,F,r>>2,F,n>>2,M,o>>2,i)},Ta=(e,t,r,n,o,i,a,s)=>{Mt.mdibvbi.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(e,F,t>>2,r,F,n>>2,F,o>>2,F,i>>2,M,a>>2,s)},Aa=()=>Mt.pauseTransformFeedback(),Fa=(e,t)=>{3317==e?vr.unpackAlignment=t:3314==e&&(vr.unpackRowLength=t),Mt.pixelStorei(e,t)},Ma=(e,t)=>{Mt.webglPolygonMode.polygonModeWEBGL(e,t)},Ia=(e,t)=>Mt.polygonOffset(e,t),Da=(e,t,r)=>{Mt.extPolygonOffsetClamp.polygonOffsetClampEXT(e,t,r)},Ba=(e,t,r,n)=>{vr.recordError(1280)},Ra=(e,t,r)=>{vr.recordError(1280)},La=(e,t)=>{Mt.disjointTimerQueryExt.queryCounterEXT(vr.queries[e],t)},Oa=e=>Mt.readBuffer(e),Ua=e=>0==(e-=5120)?P:1==e?x:2==e?T:4==e?F:6==e?I:5==e||28922==e||28520==e||30779==e||30782==e?M:A,$a=(e,t)=>e>>>31-Math.clz32(t.BYTES_PER_ELEMENT),qa=(e,t,r,n,o,i)=>{var a=Ua(e),s=(e=>({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[e-6402]||1))(t)*a.BYTES_PER_ELEMENT,l=((e,t,r)=>{var n,o,i=(vr.unpackRowLength||e)*r;return t*(n=i,o=vr.unpackAlignment,n+o-1&-o)})(r,n,s);return a.subarray($a(o,a),$a(o+l,a))},Wa=(e,t,r,n,o,i,a)=>{if(vr.currentContext.version>=2){if(Mt.currentPixelPackBufferBinding)return void Mt.readPixels(e,t,r,n,o,i,a);var s=Ua(i),l=$a(a,s);Mt.readPixels(e,t,r,n,o,i,s,l)}else{var d=qa(i,o,r,n,a);d?Mt.readPixels(e,t,r,n,o,i,d):vr.recordError(1280)}},Ha=()=>{},Na=(e,t,r,n)=>Mt.renderbufferStorage(e,t,r,n),Va=(e,t,r,n,o)=>Mt.renderbufferStorageMultisample(e,t,r,n,o),za=()=>Mt.resumeTransformFeedback(),Ga=(e,t)=>{Mt.sampleCoverage(e,!!t)},ja=(e,t,r)=>{Mt.samplerParameterf(vr.samplers[e],t,r)},Xa=(e,t,r)=>{var n=I[r>>2];Mt.samplerParameterf(vr.samplers[e],t,n)},Ya=(e,t,r)=>{Mt.samplerParameteri(vr.samplers[e],t,r)},Ka=(e,t,r)=>{var n=F[r>>2];Mt.samplerParameteri(vr.samplers[e],t,n)},Qa=(e,t,r,n)=>Mt.scissor(e,t,r,n),Za=(e,t,r,n,o)=>{vr.recordError(1280)},Ja=(e,t,r,n)=>{var o=vr.getSource(e,t,r,n);if(vr.currentContext.version>=2&&o.includes("#version 100")){var i="";(o=(o=o.replace(/#extension GL_OES_standard_derivatives : enable/g,"")).replace(/#extension GL_EXT_shader_texture_lod : enable/g,"")).includes("gl_FragColor")&&(i+="out mediump vec4 GL_FragColor;\n",o=o.replace(/gl_FragColor/g,"GL_FragColor")),o=(o=(o=(o=(o=(o=(o=(o=(o=(o=(o=(o=o.includes("attribute")?(o=o.replace(/attribute/g,"in")).replace(/varying/g,"out"):o.replace(/varying/g,"in")).replace(/textureCubeLodEXT/g,"textureCubeLod")).replace(/texture2DLodEXT/g,"texture2DLod")).replace(/texture2DProjLodEXT/g,"texture2DProjLod")).replace(/texture2DGradEXT/g,"texture2DGrad")).replace(/texture2DProjGradEXT/g,"texture2DProjGrad")).replace(/textureCubeGradEXT/g,"textureCubeGrad")).replace(/textureCube/g,"texture")).replace(/texture1D/g,"texture")).replace(/texture2D/g,"texture")).replace(/texture3D/g,"texture")).replace(/#version 100/g,"#version 300 es\n"+i)}Mt.shaderSource(vr.shaders[e],o)},es=(e,t,r)=>Mt.stencilFunc(e,t,r),ts=(e,t,r,n)=>Mt.stencilFuncSeparate(e,t,r,n),rs=e=>Mt.stencilMask(e),ns=(e,t)=>Mt.stencilMaskSeparate(e,t),os=(e,t,r)=>Mt.stencilOp(e,t,r),is=(e,t,r,n)=>Mt.stencilOpSeparate(e,t,r,n),as=(e,t,r,n,o,i,a,s,l)=>{if(vr.currentContext.version>=2&&(6402==a&&6402==r&&5125==s&&(r=33190),36193==s&&(s=5131,6408==a&&6408==r&&(r=34842)),34041==r&&(r=35056),6408==r&&5126==s&&(r=34836)),vr.currentContext.version>=2){if(Mt.currentPixelUnpackBufferBinding)return void Mt.texImage2D(e,t,r,n,o,i,a,s,l);if(l){var d=Ua(s),c=$a(l,d);return void Mt.texImage2D(e,t,r,n,o,i,a,s,d,c)}}var u=l?qa(s,a,n,o,l):null;Mt.texImage2D(e,t,r,n,o,i,a,s,u)},ss=(e,t,r,n,o,i,a,s,l,d)=>{if(Mt.currentPixelUnpackBufferBinding)Mt.texImage3D(e,t,r,n,o,i,a,s,l,d);else if(d){var c=Ua(l);Mt.texImage3D(e,t,r,n,o,i,a,s,l,c,$a(d,c))}else Mt.texImage3D(e,t,r,n,o,i,a,s,l,null)},ls=(e,t,r)=>Mt.texParameterf(e,t,r),ds=(e,t,r)=>{var n=I[r>>2];Mt.texParameterf(e,t,n)},cs=(e,t,r)=>Mt.texParameteri(e,t,r),us=(e,t,r)=>{var n=F[r>>2];Mt.texParameteri(e,t,n)},ps=(e,t,r,n,o)=>Mt.texStorage2D(e,t,r,n,o),hs=(e,t,r,n,o,i)=>Mt.texStorage3D(e,t,r,n,o,i),fs=(e,t,r,n,o,i,a,s,l)=>{if(vr.currentContext.version>=2&&36193==s&&(s=5131),vr.currentContext.version>=2){if(Mt.currentPixelUnpackBufferBinding)return void Mt.texSubImage2D(e,t,r,n,o,i,a,s,l);if(l){var d=Ua(s);return void Mt.texSubImage2D(e,t,r,n,o,i,a,s,d,$a(l,d))}}var c=l?qa(s,a,o,i,l):null;Mt.texSubImage2D(e,t,r,n,o,i,a,s,c)},gs=(e,t,r,n,o,i,a,s,l,d,c)=>{if(Mt.currentPixelUnpackBufferBinding)Mt.texSubImage3D(e,t,r,n,o,i,a,s,l,d,c);else if(c){var u=Ua(d);Mt.texSubImage3D(e,t,r,n,o,i,a,s,l,d,u,$a(c,u))}else Mt.texSubImage3D(e,t,r,n,o,i,a,s,l,d,null)},ms=(e,t,r,n)=>{e=vr.programs[e];for(var o=[],i=0;i<t;i++)o.push(Z(F[r+4*i>>2]));Mt.transformFeedbackVaryings(e,o,n)},bs=(e,t)=>{Mt.uniform1f(ji(e),t)},ys=[],vs=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform1fv(ji(e),I,r>>2,t);else{if(t<=288)for(var n=ys[t],o=0;o<t;++o)n[o]=I[r+4*o>>2];else n=I.subarray(r>>2,r+4*t>>2);Mt.uniform1fv(ji(e),n)}},ws=(e,t)=>{Mt.uniform1i(ji(e),t)},ks=[],_s=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform1iv(ji(e),F,r>>2,t);else{if(t<=288)for(var n=ks[t],o=0;o<t;++o)n[o]=F[r+4*o>>2];else n=F.subarray(r>>2,r+4*t>>2);Mt.uniform1iv(ji(e),n)}},Es=(e,t)=>{Mt.uniform1ui(ji(e),t)},Cs=(e,t,r)=>{t&&Mt.uniform1uiv(ji(e),M,r>>2,t)},Ss=(e,t,r)=>{Mt.uniform2f(ji(e),t,r)},Ps=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform2fv(ji(e),I,r>>2,2*t);else{if(t<=144)for(var n=ys[t*=2],o=0;o<t;o+=2)n[o]=I[r+4*o>>2],n[o+1]=I[r+(4*o+4)>>2];else n=I.subarray(r>>2,r+8*t>>2);Mt.uniform2fv(ji(e),n)}},xs=(e,t,r)=>{Mt.uniform2i(ji(e),t,r)},Ts=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform2iv(ji(e),F,r>>2,2*t);else{if(t<=144)for(var n=ks[t*=2],o=0;o<t;o+=2)n[o]=F[r+4*o>>2],n[o+1]=F[r+(4*o+4)>>2];else n=F.subarray(r>>2,r+8*t>>2);Mt.uniform2iv(ji(e),n)}},As=(e,t,r)=>{Mt.uniform2ui(ji(e),t,r)},Fs=(e,t,r)=>{t&&Mt.uniform2uiv(ji(e),M,r>>2,2*t)},Ms=(e,t,r,n)=>{Mt.uniform3f(ji(e),t,r,n)},Is=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform3fv(ji(e),I,r>>2,3*t);else{if(t<=96)for(var n=ys[t*=3],o=0;o<t;o+=3)n[o]=I[r+4*o>>2],n[o+1]=I[r+(4*o+4)>>2],n[o+2]=I[r+(4*o+8)>>2];else n=I.subarray(r>>2,r+12*t>>2);Mt.uniform3fv(ji(e),n)}},Ds=(e,t,r,n)=>{Mt.uniform3i(ji(e),t,r,n)},Bs=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform3iv(ji(e),F,r>>2,3*t);else{if(t<=96)for(var n=ks[t*=3],o=0;o<t;o+=3)n[o]=F[r+4*o>>2],n[o+1]=F[r+(4*o+4)>>2],n[o+2]=F[r+(4*o+8)>>2];else n=F.subarray(r>>2,r+12*t>>2);Mt.uniform3iv(ji(e),n)}},Rs=(e,t,r,n)=>{Mt.uniform3ui(ji(e),t,r,n)},Ls=(e,t,r)=>{t&&Mt.uniform3uiv(ji(e),M,r>>2,3*t)},Os=(e,t,r,n,o)=>{Mt.uniform4f(ji(e),t,r,n,o)},Us=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform4fv(ji(e),I,r>>2,4*t);else{if(t<=72){var n=ys[4*t],o=I;r>>=2,t*=4;for(var i=0;i<t;i+=4){var a=r+i;n[i]=o[a],n[i+1]=o[a+1],n[i+2]=o[a+2],n[i+3]=o[a+3]}}else n=I.subarray(r>>2,r+16*t>>2);Mt.uniform4fv(ji(e),n)}},$s=(e,t,r,n,o)=>{Mt.uniform4i(ji(e),t,r,n,o)},qs=(e,t,r)=>{if(vr.currentContext.version>=2)t&&Mt.uniform4iv(ji(e),F,r>>2,4*t);else{if(t<=72)for(var n=ks[t*=4],o=0;o<t;o+=4)n[o]=F[r+4*o>>2],n[o+1]=F[r+(4*o+4)>>2],n[o+2]=F[r+(4*o+8)>>2],n[o+3]=F[r+(4*o+12)>>2];else n=F.subarray(r>>2,r+16*t>>2);Mt.uniform4iv(ji(e),n)}},Ws=(e,t,r,n,o)=>{Mt.uniform4ui(ji(e),t,r,n,o)},Hs=(e,t,r)=>{t&&Mt.uniform4uiv(ji(e),M,r>>2,4*t)},Ns=(e,t,r)=>{e=vr.programs[e],Mt.uniformBlockBinding(e,t,r)},Vs=(e,t,r,n)=>{if(vr.currentContext.version>=2)t&&Mt.uniformMatrix2fv(ji(e),!!r,I,n>>2,4*t);else{if(t<=72)for(var o=ys[t*=4],i=0;i<t;i+=4)o[i]=I[n+4*i>>2],o[i+1]=I[n+(4*i+4)>>2],o[i+2]=I[n+(4*i+8)>>2],o[i+3]=I[n+(4*i+12)>>2];else o=I.subarray(n>>2,n+16*t>>2);Mt.uniformMatrix2fv(ji(e),!!r,o)}},zs=(e,t,r,n)=>{t&&Mt.uniformMatrix2x3fv(ji(e),!!r,I,n>>2,6*t)},Gs=(e,t,r,n)=>{t&&Mt.uniformMatrix2x4fv(ji(e),!!r,I,n>>2,8*t)},js=(e,t,r,n)=>{if(vr.currentContext.version>=2)t&&Mt.uniformMatrix3fv(ji(e),!!r,I,n>>2,9*t);else{if(t<=32)for(var o=ys[t*=9],i=0;i<t;i+=9)o[i]=I[n+4*i>>2],o[i+1]=I[n+(4*i+4)>>2],o[i+2]=I[n+(4*i+8)>>2],o[i+3]=I[n+(4*i+12)>>2],o[i+4]=I[n+(4*i+16)>>2],o[i+5]=I[n+(4*i+20)>>2],o[i+6]=I[n+(4*i+24)>>2],o[i+7]=I[n+(4*i+28)>>2],o[i+8]=I[n+(4*i+32)>>2];else o=I.subarray(n>>2,n+36*t>>2);Mt.uniformMatrix3fv(ji(e),!!r,o)}},Xs=(e,t,r,n)=>{t&&Mt.uniformMatrix3x2fv(ji(e),!!r,I,n>>2,6*t)},Ys=(e,t,r,n)=>{t&&Mt.uniformMatrix3x4fv(ji(e),!!r,I,n>>2,12*t)},Ks=(e,t,r,n)=>{if(vr.currentContext.version>=2)t&&Mt.uniformMatrix4fv(ji(e),!!r,I,n>>2,16*t);else{if(t<=18){var o=ys[16*t],i=I;n>>=2,t*=16;for(var a=0;a<t;a+=16){var s=n+a;o[a]=i[s],o[a+1]=i[s+1],o[a+2]=i[s+2],o[a+3]=i[s+3],o[a+4]=i[s+4],o[a+5]=i[s+5],o[a+6]=i[s+6],o[a+7]=i[s+7],o[a+8]=i[s+8],o[a+9]=i[s+9],o[a+10]=i[s+10],o[a+11]=i[s+11],o[a+12]=i[s+12],o[a+13]=i[s+13],o[a+14]=i[s+14],o[a+15]=i[s+15]}}else o=I.subarray(n>>2,n+64*t>>2);Mt.uniformMatrix4fv(ji(e),!!r,o)}},Qs=(e,t,r,n)=>{t&&Mt.uniformMatrix4x2fv(ji(e),!!r,I,n>>2,8*t)},Zs=(e,t,r,n)=>{t&&Mt.uniformMatrix4x3fv(ji(e),!!r,I,n>>2,12*t)},Js=e=>{e=vr.programs[e],Mt.useProgram(e),Mt.currentProgram=e},el=e=>{Mt.validateProgram(vr.programs[e])},tl=(e,t)=>Mt.vertexAttrib1f(e,t),rl=(e,t)=>{Mt.vertexAttrib1f(e,I[t>>2])},nl=(e,t,r)=>Mt.vertexAttrib2f(e,t,r),ol=(e,t)=>{Mt.vertexAttrib2f(e,I[t>>2],I[t+4>>2])},il=(e,t,r,n)=>Mt.vertexAttrib3f(e,t,r,n),al=(e,t)=>{Mt.vertexAttrib3f(e,I[t>>2],I[t+4>>2],I[t+8>>2])},sl=(e,t,r,n,o)=>Mt.vertexAttrib4f(e,t,r,n,o),ll=(e,t)=>{Mt.vertexAttrib4f(e,I[t>>2],I[t+4>>2],I[t+8>>2],I[t+12>>2])},dl=(e,t)=>{Mt.vertexAttribDivisor(e,t)},cl=dl,ul=dl,pl=dl,hl=dl,fl=dl,gl=(e,t,r,n,o)=>Mt.vertexAttribI4i(e,t,r,n,o),ml=(e,t)=>{Mt.vertexAttribI4i(e,F[t>>2],F[t+4>>2],F[t+8>>2],F[t+12>>2])},bl=(e,t,r,n,o)=>Mt.vertexAttribI4ui(e,t,r,n,o),yl=(e,t)=>{Mt.vertexAttribI4ui(e,M[t>>2],M[t+4>>2],M[t+8>>2],M[t+12>>2])},vl=(e,t,r,n,o)=>{Mt.vertexAttribIPointer(e,t,r,n,o)},wl=(e,t,r,n,o,i)=>{Mt.vertexAttribPointer(e,t,r,!!n,o,i)},kl=(e,t,r,n)=>Mt.viewport(e,t,r,n),_l=(e,t,r)=>{r=Number(r),Mt.waitSync(vr.syncs[e],t,r)},El=e=>{var t=(e-E.buffer.byteLength+65535)/65536|0;try{return E.grow(t),$(),1}catch(e){}},Cl=["default","low-power","high-performance"],Sl=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],Pl=e=>{var t;return e=(t=e)>2?Z(t):t,Sl[e]||("undefined"!=typeof document?document.querySelector(e):null)},xl=(e,t)=>{var r=t>>2,n=F[r+2],o={alpha:!!P[t+0],depth:!!P[t+1],stencil:!!P[t+2],antialias:!!P[t+3],premultipliedAlpha:!!P[t+4],preserveDrawingBuffer:!!P[t+5],powerPreference:Cl[n],failIfMajorPerformanceCaveat:!!P[t+12],majorVersion:F[r+4],minorVersion:F[r+5],enableExtensionsByDefault:P[t+24],explicitSwapControl:P[t+25],proxyContextToMainThread:F[r+7],renderViaOffscreenBackBuffer:P[t+32]},i=Pl(e);return i?o.explicitSwapControl?0:vr.createContext(i,o):0},Tl={},Al=()=>{if(!Al.strings){var e={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",_:b||"./this.program"};for(var t in Tl)void 0===Tl[t]?delete e[t]:e[t]=Tl[t];var r=[];for(var t in e)r.push(`${t}=${e[t]}`);Al.strings=r}return Al.strings},Fl=(e,t,r,n)=>{for(var o=0,i=0;i<r;i++){var a=M[t>>2],s=M[t+4>>2];t+=8;var l=Te.read(e,P,a,s,n);if(l<0)return-1;if(o+=l,l<s)break;void 0!==n&&(n+=l)}return o},Ml=e=>Jl(e),Il=e=>{var t=se(e)+1,r=Ml(t);return de(e,r,t),r},Dl=Te.createPath,Bl=Te.createLazyFile,Rl=Te.createDevice;Te.createPreloadedFile=Pe,Te.staticInit(),l.FS_createPath=Te.createPath,l.FS_createDataFile=Te.createDataFile,l.FS_createPreloadedFile=Te.createPreloadedFile,l.FS_unlink=Te.unlink,l.FS_createLazyFile=Te.createLazyFile,l.FS_createDevice=Te.createDevice,Ee.doesNotExistError=new Te.ErrnoError(44),Ee.doesNotExistError.stack="<generic error, no stack>",(()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);Re=e})(),(()=>{let e=lt.prototype;Object.assign(e,{isAliasOf(e){if(!(this instanceof lt))return!1;if(!(e instanceof lt))return!1;var t=this.$$.ptrType.registeredClass,r=this.$$.ptr;e.$$=e.$$;for(var n=e.$$.ptrType.registeredClass,o=e.$$.ptr;t.baseClass;)r=t.upcast(r),t=t.baseClass;for(;n.baseClass;)o=n.upcast(o),n=n.baseClass;return t===n&&r===o},clone(){if(this.$$.ptr||Ke(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e,t=at(Object.create(Object.getPrototypeOf(this),{$$:{value:(e=this.$$,{count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType})}}));return t.$$.count.value+=1,t.$$.deleteScheduled=!1,t},delete(){this.$$.ptr||Ke(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Ge("Object already scheduled for deletion"),Ze(this),Je(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||Ke(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Ge("Object already scheduled for deletion"),st.push(this),st.length,this.$$.deleteScheduled=!0,this}});const t=Symbol.dispose;t&&(e[t]=e.delete)})(),Object.assign(bt.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){this.rawDestructor?.(e)},argPackAdvance:Ye,readValueFromPointer:Be,fromWireType:it}),Bt.push(0,1,void 0,1,null,1,!0,1,!1,1),l.count_emval_handles=Lt,l.requestFullscreen=br.requestFullscreen,l.setCanvasSize=br.setCanvasSize,l.getUserMedia=br.getUserMedia,l.createContext=br.createContext;for(let e=0;e<32;++e)Zn.push(new Array(e));for(var Ll=new Float32Array(288),Ol=0;Ol<=288;++Ol)ys[Ol]=Ll.subarray(0,Ol);var Ul=new Int32Array(288);for(Ol=0;Ol<=288;++Ol)ks[Ol]=Ul.subarray(0,Ol);var $l={3050240:(e,t,r,n,o)=>"undefined"==typeof window||void 0===(window.AudioContext||window.webkitAudioContext)?0:(void 0===window.miniaudio&&(window.miniaudio={referenceCount:0},window.miniaudio.device_type={},window.miniaudio.device_type.playback=e,window.miniaudio.device_type.capture=t,window.miniaudio.device_type.duplex=r,window.miniaudio.device_state={},window.miniaudio.device_state.stopped=n,window.miniaudio.device_state.started=o,miniaudio.devices=[],miniaudio.track_device=function(e){for(var t=0;t<miniaudio.devices.length;++t)if(null==miniaudio.devices[t])return miniaudio.devices[t]=e,t;return miniaudio.devices.push(e),miniaudio.devices.length-1},miniaudio.untrack_device_by_index=function(e){for(miniaudio.devices[e]=null;miniaudio.devices.length>0&&null==miniaudio.devices[miniaudio.devices.length-1];)miniaudio.devices.pop()},miniaudio.untrack_device=function(e){for(var t=0;t<miniaudio.devices.length;++t)if(miniaudio.devices[t]==e)return miniaudio.untrack_device_by_index(t)},miniaudio.get_device_by_index=function(e){return miniaudio.devices[e]},miniaudio.unlock_event_types=function(){return["touchstart","touchend","click"]}(),miniaudio.unlock=function(){for(var e=0;e<miniaudio.devices.length;++e){var t=miniaudio.devices[e];null!=t&&null!=t.webaudio&&2===t.state&&t.webaudio.resume()}miniaudio.unlock_event_types.map((function(e){document.removeEventListener(e,miniaudio.unlock,!0)}))},miniaudio.unlock_event_types.map((function(e){document.addEventListener(e,miniaudio.unlock,!0)}))),window.miniaudio.referenceCount+=1,1),3052230:()=>{void 0!==window.miniaudio&&(window.miniaudio.referenceCount-=1,0===window.miniaudio.referenceCount&&delete window.miniaudio)},3052394:()=>void 0!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia,3052498:()=>{try{var e=new(window.AudioContext||window.webkitAudioContext),t=e.sampleRate;return e.close(),t}catch(e){return 0}},3052669:(e,t,r,n,o,i)=>{var a=e,s=t,d=r,c=n,u=o,p=i;if(void 0===window.miniaudio)return-1;var h={},f={};a==window.miniaudio.device_type.playback&&(f.sampleRate=d),h.webaudio=new(window.AudioContext||window.webkitAudioContext)(f),h.webaudio.suspend(),h.state=window.miniaudio.device_state.stopped;var g=0,m=s;return a!=window.miniaudio.device_type.playback&&(g=s),h.scriptNode=h.webaudio.createScriptProcessor(c,g,m),h.scriptNode.onaudioprocess=function(e){if(null!=h.intermediaryBufferView&&0!=h.intermediaryBufferView.length||(h.intermediaryBufferView=new Float32Array(l.HEAPF32.buffer,u,c*s)),a==miniaudio.device_type.capture||a==miniaudio.device_type.duplex){for(var t=0;t<s;t+=1)for(var r=e.inputBuffer.getChannelData(t),n=h.intermediaryBufferView,o=0;o<c;o+=1)n[o*s+t]=r[o];Gl(p,c,u)}if(a==miniaudio.device_type.playback||a==miniaudio.device_type.duplex)for(jl(p,c,u),t=0;t<e.outputBuffer.numberOfChannels;++t){var i=e.outputBuffer.getChannelData(t);for(n=h.intermediaryBufferView,o=0;o<c;o+=1)i[o]=n[o*s+t]}else for(t=0;t<e.outputBuffer.numberOfChannels;++t)e.outputBuffer.getChannelData(t).fill(0)},a!=miniaudio.device_type.capture&&a!=miniaudio.device_type.duplex||navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then((function(e){h.streamNode=h.webaudio.createMediaStreamSource(e),h.streamNode.connect(h.scriptNode),h.scriptNode.connect(h.webaudio.destination)})).catch((function(e){console.log("Failed to get user media: "+e)})),a==miniaudio.device_type.playback&&h.scriptNode.connect(h.webaudio.destination),miniaudio.track_device(h)},3055452:e=>miniaudio.get_device_by_index(e).webaudio.sampleRate,3055518:e=>{var t=miniaudio.get_device_by_index(e);void 0!==t.scriptNode&&(t.scriptNode.onaudioprocess=function(e){},t.scriptNode.disconnect(),t.scriptNode=void 0),void 0!==t.streamNode&&(t.streamNode.disconnect(),t.streamNode=void 0),t.webaudio.close(),t.webaudio=void 0},3055883:e=>{miniaudio.untrack_device_by_index(e)},3055926:e=>{var t=miniaudio.get_device_by_index(e);t.webaudio.resume(),t.state=miniaudio.device_state.started},3056051:e=>{var t=miniaudio.get_device_by_index(e);t.webaudio.suspend(),t.state=miniaudio.device_state.stopped},3056177:e=>{console.log(Z(e))},3056212:()=>!!globalThis.ubq_browserTabHidden,3056258:()=>"undefined"!=typeof process&&process.versions&&process.versions.node?1:0},ql={Xa:e=>{var t=new ExceptionInfo(e);return t.get_caught()||t.set_caught(!0),t.set_rethrown(!1),ue.push(t),rd(e),od(e)},Oh:()=>{Kl(0,0);var e=ue.pop();td(e.excPtr),pe=0},n:()=>fe([]),sa:e=>fe([e]),l:(e,t,r)=>{throw new ExceptionInfo(e).init(t,r),pe=e},O:e=>{throw pe||(pe=e),pe},Nh:function(e,t){try{return e=Ae.getStr(e),Te.chmod(e,t),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Mh:function(e,t){try{return Te.fchmod(e,t),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},ra:function(e,t,r){Ae.varargs=r;try{var n=Ae.getStreamFromFD(e);switch(t){case 0:if((o=Fe())<0)return-28;for(;Te.streams[o];)o++;return Te.dupStream(n,o).fd;case 1:case 2:case 13:case 14:return 0;case 3:return n.flags;case 4:var o=Fe();return n.flags|=o,0;case 12:return o=Me(),T[o+0>>1]=2,0}return-28}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Lh:function(e,t){try{return Ae.writeStat(t,Te.fstat(e))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Kh:function(e,t,r){Ae.varargs=r;try{var n=Ae.getStreamFromFD(e);switch(t){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:return n.tty?0:-59;case 21505:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcgets){var o=n.tty.ops.ioctl_tcgets(n),i=Me();F[i>>2]=o.c_iflag||0,F[i+4>>2]=o.c_oflag||0,F[i+8>>2]=o.c_cflag||0,F[i+12>>2]=o.c_lflag||0;for(var a=0;a<32;a++)P[i+a+17]=o.c_cc[a]||0;return 0}return 0;case 21506:case 21507:case 21508:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){i=Me();var s=F[i>>2],l=F[i+4>>2],d=F[i+8>>2],c=F[i+12>>2],u=[];for(a=0;a<32;a++)u.push(P[i+a+17]);return n.tty.ops.ioctl_tcsets(n.tty,t,{c_iflag:s,c_oflag:l,c_cflag:d,c_lflag:c,c_cc:u})}return 0;case 21519:return n.tty?(i=Me(),F[i>>2]=0,0):-59;case 21520:return n.tty?-28:-59;case 21531:return i=Me(),Te.ioctl(n,t,i);case 21523:if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var p=n.tty.ops.ioctl_tiocgwinsz(n.tty);i=Me(),T[i>>1]=p[0],T[i+2>>1]=p[1]}return 0;default:return-28}}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Jh:function(e,t){try{return e=Ae.getStr(e),Ae.writeStat(t,Te.lstat(e))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Ih:function(e,t,r,n){try{t=Ae.getStr(t);var o=256&n,i=4096&n;return n&=-6401,t=Ae.calculateAt(e,t,i),Ae.writeStat(r,o?Te.lstat(t):Te.stat(t))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Wa:function(e,t,r,n){Ae.varargs=n;try{t=Ae.getStr(t),t=Ae.calculateAt(e,t);var o=n?Fe():0;return Te.open(t,r,o).fd}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Hh:function(e,t,r,n){try{return t=Ae.getStr(t),n=Ae.getStr(n),t=Ae.calculateAt(e,t),n=Ae.calculateAt(r,n),Te.rename(t,n),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Gh:function(e){try{return e=Ae.getStr(e),Te.rmdir(e),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Fh:function(e,t){try{return e=Ae.getStr(e),Ae.writeStat(t,Te.stat(e))}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},Eh:function(e,t,r){try{return t=Ae.getStr(t),t=Ae.calculateAt(e,t),0===r?Te.unlink(t):512===r?Te.rmdir(t):G("Invalid flags passed to unlinkat"),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},uh:()=>G(""),Ua:e=>{var t=Ie[e];delete Ie[e];var r=t.elements,n=r.length,o=r.map((e=>e.getterReturnType)).concat(r.map((e=>e.setterArgumentType))),i=t.rawConstructor,a=t.rawDestructor;We([e],o,(e=>(r.forEach(((t,r)=>{var o=e[r],i=t.getter,a=t.getterContext,s=e[r+n],l=t.setter,d=t.setterContext;t.read=e=>o.fromWireType(i(a,e)),t.write=(e,t)=>{var r=[];l(d,e,s.toWireType(r,t)),De(r)}})),[{name:t.name,fromWireType:e=>{for(var t=new Array(n),o=0;o<n;++o)t[o]=r[o].read(e);return a(e),t},toWireType:(e,o)=>{if(n!==o.length)throw new TypeError(`Incorrect number of tuple elements for ${t.name}: expected=${n}, actual=${o.length}`);for(var s=i(),l=0;l<n;++l)r[l].write(s,o[l]);return null!==e&&e.push(a,s),s},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction:a}])))},z:e=>{var t=He[e];delete He[e];var r=t.rawConstructor,n=t.rawDestructor,o=t.fields,i=o.map((e=>e.getterReturnType)).concat(o.map((e=>e.setterArgumentType)));We([e],i,(e=>{var i={};return o.forEach(((t,r)=>{var n=t.fieldName,a=e[r],s=e[r].optional,l=t.getter,d=t.getterContext,c=e[r+o.length],u=t.setter,p=t.setterContext;i[n]={read:e=>a.fromWireType(l(d,e)),write:(e,t)=>{var r=[];u(p,e,c.toWireType(r,t)),De(r)},optional:s}})),[{name:t.name,fromWireType:e=>{var t={};for(var r in i)t[r]=i[r].read(e);return n(e),t},toWireType:(e,t)=>{for(var o in i)if(!(o in t)&&!i[o].optional)throw new TypeError(`Missing field: "${o}"`);var a=r();for(o in i)i[o].write(a,t[o]);return null!==e&&e.push(n,a),a},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction:n}]}))},Ta:(e,t,r,n,o)=>{var i=-1!=(t=Ve(t)).indexOf("u");je(e,{name:t,fromWireType:e=>e,toWireType:function(e,t){if("bigint"!=typeof t&&"number"!=typeof t)throw new TypeError(`Cannot convert "${Ne(t)}" to ${this.name}`);return"number"==typeof t&&(t=BigInt(t)),t},argPackAdvance:Ye,readValueFromPointer:Xe(t,r,!i),destructorFunction:null})},th:(e,t,r,n)=>{je(e,{name:t=Ve(t),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?r:n},argPackAdvance:Ye,readValueFromPointer:function(e){return this.fromWireType(x[e])},destructorFunction:null})},s:(e,t,r,n,o,i,a,s,l,d,c,u,p)=>{c=Ve(c),i=St(o,i),s&&=St(a,s),d&&=St(l,d),p=St(u,p);var h=(e=>{var t=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return t>=48&&t<=57?`_${e}`:e})(c);ut(h,(function(){Tt(`Cannot construct ${c} due to unbound types`,[n])})),We([e,t,r],n?[n]:[],(t=>{var r,o;t=t[0],o=n?(r=t.registeredClass).instancePrototype:lt.prototype;var a=dt(c,(function(...e){if(Object.getPrototypeOf(this)!==l)throw new ze("Use 'new' to construct "+c);if(void 0===u.constructor_body)throw new ze(c+" has no accessible constructor");var t=u.constructor_body[e.length];if(void 0===t)throw new ze(`Tried to invoke ctor of ${c} with invalid number of parameters (${e.length}) - expected (${Object.keys(u.constructor_body).toString()}) parameters instead!`);return t.apply(this,e)})),l=Object.create(o,{constructor:{value:a}});a.prototype=l;var u=new pt(c,a,l,p,r,i,s,d);u.baseClass&&(u.baseClass.__derivedClasses??=[],u.baseClass.__derivedClasses.push(u));var f=new bt(c,u,!0,!1,!1),g=new bt(c+"*",u,!1,!1,!1),m=new bt(c+" const*",u,!1,!0,!1);return tt[e]={pointerType:g,constPointerType:m},_t(h,a),[f,g,m]}))},v:(e,t,r,n,o,i)=>{var a=At(t,r);o=St(n,o),We([],[e],(e=>{var r=`constructor ${(e=e[0]).name}`;if(void 0===e.registeredClass.constructor_body&&(e.registeredClass.constructor_body=[]),void 0!==e.registeredClass.constructor_body[t-1])throw new ze(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${e.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return e.registeredClass.constructor_body[t-1]=()=>{Tt(`Cannot construct ${e.name} due to unbound types`,a)},We([],a,(n=>(n.splice(1,0,null),e.registeredClass.constructor_body[t-1]=Ft(r,n,null,o,i),[]))),[]}))},c:(e,t,r,n,o,i,a,s,l,d)=>{var c=At(r,n);t=Ve(t),t=It(t),i=St(o,i),We([],[e],(e=>{var n=`${(e=e[0]).name}.${t}`;function o(){Tt(`Cannot call ${n} due to unbound types`,c)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]),s&&e.registeredClass.pureVirtualFunctions.push(t);var l=e.registeredClass.instancePrototype,d=l[t];return void 0===d||void 0===d.overloadTable&&d.className!==e.name&&d.argCount===r-2?(o.argCount=r-2,o.className=e.name,l[t]=o):(ct(l,t,n),l[t].overloadTable[r-2]=o),We([],c,(o=>{var s=Ft(n,o,e,i,a);return void 0===l[t].overloadTable?(s.argCount=r-2,l[t]=s):l[t].overloadTable[r-2]=s,[]})),[]}))},sh:e=>je(e,Ut),ha:(e,t,r,n)=>{function o(){}t=Ve(t),o.values={},je(e,{name:t,constructor:o,fromWireType:function(e){return this.constructor.values[e]},toWireType:(e,t)=>t.value,argPackAdvance:Ye,readValueFromPointer:$t(t,r,n),destructorFunction:null}),ut(t,o)},K:(e,t,r)=>{var n=qt(e,"enum");t=Ve(t);var o=n.constructor,i=Object.create(n.constructor.prototype,{value:{value:r},constructor:{value:dt(`${n.name}_${t}`,(function(){}))}});o.values[r]=i,o[t]=i},Sa:(e,t,r)=>{je(e,{name:t=Ve(t),fromWireType:e=>e,toWireType:(e,t)=>t,argPackAdvance:Ye,readValueFromPointer:Wt(t,r),destructorFunction:null})},Q:(e,t,r,n,o,i,a,s)=>{var l=At(t,r);e=Ve(e),e=It(e),o=St(n,o),ut(e,(function(){Tt(`Cannot call ${e} due to unbound types`,l)}),t-1),We([],l,(r=>{var n=[r[0],null].concat(r.slice(1));return _t(e,Ft(e,n,null,o,i),t-1),[]}))},N:(e,t,r,n,o)=>{t=Ve(t),-1===o&&(o=4294967295);var i=e=>e;if(0===n){var a=32-8*r;i=e=>e<<a>>>a}var s=t.includes("unsigned");je(e,{name:t,fromWireType:i,toWireType:s?function(e,t){return this.name,t>>>0}:function(e,t){return this.name,t},argPackAdvance:Ye,readValueFromPointer:Xe(t,r,0!==n),destructorFunction:null})},E:(e,t,r)=>{var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][t];function o(e){var t=M[e>>2],r=M[e+4>>2];return new n(P.buffer,r,t)}je(e,{name:r=Ve(r),fromWireType:o,argPackAdvance:Ye,readValueFromPointer:o},{ignoreDuplicateRegistrations:!0})},P:(e,t)=>{je(e,Ht)},rh:(e,t,r,n,o,i,a,s,l,d,c,u)=>{r=Ve(r),i=St(o,i),s=St(a,s),d=St(l,d),u=St(c,u),We([e],[t],(e=>(e=e[0],[new bt(r,e.registeredClass,!1,!1,!0,e,n,i,s,d,u)])))},qh:(e,t)=>{t=Ve(t),je(e,{name:t,fromWireType(e){for(var t,r=M[e>>2],n=e+4,o=n,i=0;i<=r;++i){var a=n+i;if(i==r||0==x[a]){var s=Z(o,a-o);void 0===t?t=s:(t+=String.fromCharCode(0),t+=s),o=a+1}}return Vl(e),t},toWireType(e,t){var r;t instanceof ArrayBuffer&&(t=new Uint8Array(t));var n="string"==typeof t;n||ArrayBuffer.isView(t)&&1==t.BYTES_PER_ELEMENT||Ge("Cannot pass non-string to std::string"),r=n?se(t):t.length;var o=Nl(4+r+1),i=o+4;return M[o>>2]=r,n?de(t,i,r+1):x.set(t,i),null!==e&&e.push(Vl,o),o},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction(e){Vl(e)}})},pa:(e,t,r)=>{var n,o,i,a;r=Ve(r),2===t?(n=Vt,o=zt,a=Gt,i=e=>A[e>>1]):4===t&&(n=jt,o=Xt,a=Yt,i=e=>M[e>>2]),je(e,{name:r,fromWireType:e=>{for(var r,o=M[e>>2],a=e+4,s=0;s<=o;++s){var l=e+4+s*t;if(s==o||0==i(l)){var d=n(a,l-a);void 0===r?r=d:(r+=String.fromCharCode(0),r+=d),a=l+t}}return Vl(e),r},toWireType:(e,n)=>{"string"!=typeof n&&Ge(`Cannot pass non-string to C++ string type ${r}`);var i=a(n),s=Nl(4+i+t);return M[s>>2]=i/t,o(n,s+4,i+t),null!==e&&e.push(Vl,s),s},argPackAdvance:Ye,readValueFromPointer:Be,destructorFunction(e){Vl(e)}})},Ra:(e,t,r,n,o,i)=>{Ie[e]={name:Ve(t),rawConstructor:St(r,n),rawDestructor:St(o,i),elements:[]}},M:(e,t,r,n,o,i,a,s,l)=>{Ie[e].elements.push({getterReturnType:t,getter:St(r,n),getterContext:o,setterArgumentType:i,setter:St(a,s),setterContext:l})},y:(e,t,r,n,o,i)=>{He[e]={name:Ve(t),rawConstructor:St(r,n),rawDestructor:St(o,i),fields:[]}},k:(e,t,r,n,o,i,a,s,l,d)=>{He[e].fields.push({fieldName:Ve(t),getterReturnType:r,getter:St(n,o),getterContext:i,setterArgumentType:a,setter:St(s,l),setterContext:d})},ph:(e,t)=>{je(e,{isVoid:!0,name:t=Ve(t),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,t)=>{}})},oh:()=>{oe=!1,Kt=0},nh:()=>{throw 1/0},i:(e,t,r)=>(e=Ot.toValue(e),t=qt(t,"emval::as"),Qt(t,r,e)),u:(e,t,r,n)=>(e=Zt[e])(null,t=Ot.toValue(t),r,n),J:(e,t,r,n,o)=>(e=Zt[e])(t=Ot.toValue(t),t[r=er(r)],n,o),b:Rt,mh:(e,t)=>(e=Ot.toValue(e))==(t=Ot.toValue(t)),I:e=>0===e?Ot.toHandle(tr()):(e=er(e),Ot.toHandle(tr()[e])),o:(e,t,r)=>{var n=((e,t)=>{for(var r=new Array(e),n=0;n<e;++n)r[n]=qt(M[t+4*n>>2],"parameter "+n);return r})(e,t),o=n.shift();e--;var i,a,s=new Array(e),l=`methodCaller<(${n.map((e=>e.name)).join(", ")}) => ${o.name}>`;return i=dt(l,((t,i,a,l)=>{for(var d=0,c=0;c<e;++c)s[c]=n[c].readValueFromPointer(l+d),d+=n[c].argPackAdvance;var u=1===r?rr(i,s):i.apply(t,s);return Qt(o,a,u)})),a=Zt.length,Zt.push(i),a},g:(e,t)=>(e=Ot.toValue(e),t=Ot.toValue(t),Ot.toHandle(e[t])),d:e=>{e>9&&(Bt[e+1]+=1)},aa:(e,t)=>(e=Ot.toValue(e))instanceof(t=Ot.toValue(t)),oa:e=>"number"==typeof(e=Ot.toValue(e)),H:e=>"string"==typeof(e=Ot.toValue(e)),Qa:()=>Ot.toHandle([]),e:e=>Ot.toHandle(er(e)),x:()=>Ot.toHandle({}),h:e=>{var t=Ot.toValue(e);De(t),Rt(e)},j:(e,t,r)=>{e=Ot.toValue(e),t=Ot.toValue(t),r=Ot.toValue(r),e[t]=r},f:(e,t)=>{var r=(e=qt(e,"_emval_take_value")).readValueFromPointer(t);return Ot.toHandle(r)},lh:e=>{throw e=Ot.toValue(e)},kh:e=>(e=Ot.toValue(e),Ot.toHandle(typeof e)),jh:function(e,t){e=nr(e);var r=new Date(1e3*e);F[t>>2]=r.getUTCSeconds(),F[t+4>>2]=r.getUTCMinutes(),F[t+8>>2]=r.getUTCHours(),F[t+12>>2]=r.getUTCDate(),F[t+16>>2]=r.getUTCMonth(),F[t+20>>2]=r.getUTCFullYear()-1900,F[t+24>>2]=r.getUTCDay();var n=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),o=(r.getTime()-n)/864e5|0;F[t+28>>2]=o},ih:function(e,t){e=nr(e);var r=new Date(1e3*e);F[t>>2]=r.getSeconds(),F[t+4>>2]=r.getMinutes(),F[t+8>>2]=r.getHours(),F[t+12>>2]=r.getDate(),F[t+16>>2]=r.getMonth(),F[t+20>>2]=r.getFullYear()-1900,F[t+24>>2]=r.getDay();var n=0|ar(r);F[t+28>>2]=n,F[t+36>>2]=-60*r.getTimezoneOffset();var o=new Date(r.getFullYear(),0,1),i=new Date(r.getFullYear(),6,1).getTimezoneOffset(),a=o.getTimezoneOffset(),s=0|(i!=a&&r.getTimezoneOffset()==Math.min(a,i));F[t+32>>2]=s},hh:function(e){var t=(()=>{var t=new Date(F[e+20>>2]+1900,F[e+16>>2],F[e+12>>2],F[e+8>>2],F[e+4>>2],F[e>>2],0),r=F[e+32>>2],n=t.getTimezoneOffset(),o=new Date(t.getFullYear(),0,1),i=new Date(t.getFullYear(),6,1).getTimezoneOffset(),a=o.getTimezoneOffset(),s=Math.min(a,i);if(r<0)F[e+32>>2]=Number(i!=a&&s==n);else if(r>0!=(s==n)){var l=Math.max(a,i),d=r>0?s:l;t.setTime(t.getTime()+6e4*(d-n))}F[e+24>>2]=t.getDay();var c=0|ar(t);F[e+28>>2]=c,F[e>>2]=t.getSeconds(),F[e+4>>2]=t.getMinutes(),F[e+8>>2]=t.getHours(),F[e+12>>2]=t.getDate(),F[e+16>>2]=t.getMonth(),F[e+20>>2]=t.getYear();var u=t.getTime();return isNaN(u)?-1:u/1e3})();return BigInt(t)},gh:function(e,t,r,n,o,i,a){o=nr(o);try{if(isNaN(o))return 61;var s=Ae.getStreamFromFD(n),l=Te.mmap(s,e,o,t,r),d=l.ptr;return F[i>>2]=l.allocated,M[a>>2]=d,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},fh:function(e,t,r,n,o,i){i=nr(i);try{var a=Ae.getStreamFromFD(o);2&r&&Ae.doMsync(e,a,t,n,i)}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return-e.errno}},eh:(e,t)=>{if(sr[e]&&(clearTimeout(sr[e].id),delete sr[e]),!t)return 0;var r=setTimeout((()=>{delete sr[e],hr((()=>Yl(e,fr())))}),t);return sr[e]={id:r,timeout_ms:t},0},dh:(e,t,r,n)=>{var o=(new Date).getFullYear(),i=new Date(o,0,1),a=new Date(o,6,1),s=i.getTimezoneOffset(),l=a.getTimezoneOffset(),d=Math.max(s,l);M[e>>2]=60*d,F[t>>2]=Number(s!=l);var c=e=>{var t=e>=0?"-":"+",r=Math.abs(e);return`UTC${t}${String(Math.floor(r/60)).padStart(2,"0")}${String(r%60).padStart(2,"0")}`},u=c(s),p=c(l);l<s?(de(u,r,17),de(p,n,17)):(de(u,n,17),de(p,r,17))},ch:function(e){var t=Z(e);localStorage.removeItem(t)},Dh:function(e,t,r){if(t=nr(t),!((n=e)>=0&&n<=3))return 28;var n,o;o=0===e?gr():fr();var i=Math.round(1e3*o*1e3);return D[r>>3]=BigInt(i),0},Pa:(e,t,r,n,o)=>yr.chooseConfig(e,t,r,n,o),Oa:(e,t,r,n)=>{if(62e3!=e)return yr.setErrorCode(12296),0;for(var o=1;;){var i=F[n>>2];if(12440!=i){if(12344==i)break;return yr.setErrorCode(12292),0}o=F[n+4>>2],n+=8}return o<2||o>3?(yr.setErrorCode(12293),0):(yr.contextAttributes.majorVersion=o-1,yr.contextAttributes.minorVersion=0,yr.context=vr.createContext(br.getCanvas(),yr.contextAttributes),0!=yr.context?(yr.setErrorCode(12288),vr.makeContextCurrent(yr.context),br.useWebGL=!0,br.moduleContextCreatedCallbacks.forEach((e=>e())),vr.makeContextCurrent(null),62004):(yr.setErrorCode(12297),0))},bh:(e,t,r,n)=>62e3!=e?(yr.setErrorCode(12296),0):62002!=t?(yr.setErrorCode(12293),0):(yr.setErrorCode(12288),62006),Na:(e,t)=>62e3!=e?(yr.setErrorCode(12296),0):62004!=t?(yr.setErrorCode(12294),0):(vr.deleteContext(yr.context),yr.setErrorCode(12288),yr.currentContext==t&&(yr.currentContext=0),1),na:(e,t)=>62e3!=e?(yr.setErrorCode(12296),0):62006!=t?(yr.setErrorCode(12301),1):(yr.currentReadSurface==t&&(yr.currentReadSurface=0),yr.currentDrawSurface==t&&(yr.currentDrawSurface=0),yr.setErrorCode(12288),1),Z:(e,t,r,n)=>{if(62e3!=e)return yr.setErrorCode(12296),0;if(62002!=t)return yr.setErrorCode(12293),0;if(!n)return yr.setErrorCode(12300),0;switch(yr.setErrorCode(12288),r){case 12320:return F[n>>2]=yr.contextAttributes.alpha?32:24,1;case 12321:return F[n>>2]=yr.contextAttributes.alpha?8:0,1;case 12322:case 12323:case 12324:return F[n>>2]=8,1;case 12325:return F[n>>2]=yr.contextAttributes.depth?24:0,1;case 12326:return F[n>>2]=yr.contextAttributes.stencil?8:0,1;case 12327:case 12335:case 12340:return F[n>>2]=12344,1;case 12328:return F[n>>2]=62002,1;case 12329:case 12333:case 12334:case 12345:case 12346:case 12347:case 12349:case 12350:case 12354:return F[n>>2]=0,1;case 12330:case 12332:return F[n>>2]=4096,1;case 12331:return F[n>>2]=16777216,1;case 12337:return F[n>>2]=yr.contextAttributes.antialias?4:0,1;case 12338:return F[n>>2]=yr.contextAttributes.antialias?1:0,1;case 12339:case 12352:return F[n>>2]=4,1;case 12341:case 12342:case 12343:return F[n>>2]=-1,1;case 12348:return F[n>>2]=1,1;case 12351:return F[n>>2]=12430,1;default:return yr.setErrorCode(12292),0}},ah:e=>(yr.setErrorCode(12288),0!=e&&1!=e?0:62e3),Ma:()=>yr.errorCode,$g:(e,t,r)=>62e3!=e?(yr.setErrorCode(12296),0):(t&&(F[t>>2]=1),r&&(F[r>>2]=4),yr.defaultDisplayInitialized=!0,yr.setErrorCode(12288),1),ga:(e,t,r,n)=>62e3!=e?(yr.setErrorCode(12296),0):0!=n&&62004!=n?(yr.setErrorCode(12294),0):0!=r&&62006!=r||0!=t&&62006!=t?(yr.setErrorCode(12301),0):(vr.makeContextCurrent(n?yr.context:null),yr.currentContext=n,yr.currentDrawSurface=t,yr.currentReadSurface=r,yr.setErrorCode(12288),1),ma:(e,t)=>{if(62e3!=e)return yr.setErrorCode(12296),0;if(yr.setErrorCode(12288),yr.stringCache[t])return yr.stringCache[t];var r;switch(t){case 12371:r=ce("Emscripten");break;case 12372:r=ce("1.4 Emscripten EGL");break;case 12373:r=ce("");break;case 12429:r=ce("OpenGL_ES");break;default:return yr.setErrorCode(12300),0}return yr.stringCache[t]=r,r},La:(e,t)=>{if(yr.defaultDisplayInitialized)if(Mt){if(!Mt.isContextLost())return yr.setErrorCode(12288),1;yr.setErrorCode(12302)}else yr.setErrorCode(12290);else yr.setErrorCode(12289);return 0},_g:e=>62e3!=e?(yr.setErrorCode(12296),0):(yr.currentContext=0,yr.currentReadSurface=0,yr.currentDrawSurface=0,yr.defaultDisplayInitialized=!1,yr.setErrorCode(12288),1),G:(e,t,r)=>kr(e,t,r),Zg:e=>{console.error(Z(e))},Yg:e=>{console.log(Z(e))},Xg:e=>{console.warn(Z(e))},Ka:gr,Wg:()=>{},Vg:()=>2147483648,Ug:_r,Tg:Er,Sg:Cr,Rg:Sr,Qg:Pr,Pg:xr,Og:Tr,Ng:Ar,Mg:Fr,Lg:Mr,Kg:Ir,Jg:Dr,Ig:Br,Hg:Rr,Gg:Or,Fg:$r,Eg:qr,Dg:Wr,Cg:Hr,Bg:Nr,Ag:Vr,zg:zr,yg:Gr,xg:jr,wg:Xr,vg:Yr,ug:Kr,tg:Qr,sg:Zr,rg:Jr,qg:en,pg:tn,og:rn,Ja:nn,ng:on,mg:an,lg:sn,kg:ln,jg:dn,ig:cn,hg:un,gg:pn,fg:hn,eg:fn,dg:gn,cg:mn,bg:bn,ag:yn,$f:vn,_f:wn,Zf:kn,Yf:_n,Xf:En,Wf:Cn,Vf:Sn,Uf:Pn,Tf:xn,Sf:Tn,Rf:An,Qf:Mn,Pf:Dn,Of:Bn,Nf:Rn,Mf:Ln,Lf:On,Kf:Un,Jf:$n,If:qn,Hf:Hn,Gf:Vn,Ff:Gn,Ef:jn,Df:Yn,Cf:Qn,Bf:eo,Af:ro,zf:oo,yf:ao,xf:lo,wf:uo,vf:ho,uf:fo,tf:mo,sf:yo,rf:vo,qf:wo,pf:ko,of:_o,nf:Eo,mf:Co,lf:So,kf:Po,jf:xo,hf:To,gf:Ao,ff:Fo,ef:Mo,df:Io,cf:Do,bf:Bo,af:Ro,$e:Lo,_e:Oo,Ze:Uo,Ye:$o,Xe:Wo,We:No,Ve:Vo,Ue:Go,Te:jo,Se:Xo,Re:Yo,Qe:Ko,Pe:Qo,Oe:Zo,Ne:ri,Me:ni,Le:oi,Ke:ii,Je:ai,Ie:si,He:li,Ge:ci,Fe:ui,Ee:pi,De:hi,Ce:fi,Be:gi,Ae:mi,ze:bi,ye:vi,xe:ki,we:Ei,ve:Ci,ue:Pi,te:xi,se:Ti,re:Ai,qe:Fi,pe:Mi,oe:Ii,ne:Di,me:Bi,le:Ri,Ia:Li,ke:Oi,je:Ui,ie:$i,he:qi,ge:Wi,fe:Hi,ee:Ni,de:Gi,ce:Yi,be:Ki,ae:Qi,$d:ea,_d:ra,Zd:na,Yd:oa,Xd:ia,Wd:aa,Vd:sa,Ud:la,Td:da,Sd:ca,Rd:ua,Qd:pa,Pd:ha,Od:fa,Nd:ga,Md:ma,Ld:ba,Kd:ya,Jd:va,Id:wa,Hd:_a,Gd:Ca,Fd:Sa,Ed:Pa,Dd:xa,Cd:Ta,Bd:Aa,Ad:Fa,zd:Ma,yd:Ia,xd:Da,wd:Ba,vd:Ra,ud:La,td:Oa,sd:Wa,rd:Ha,qd:Na,pd:Va,od:za,nd:Ga,md:ja,ld:Xa,kd:Ya,jd:Ka,id:Qa,hd:Za,gd:Ja,fd:es,ed:ts,dd:rs,cd:ns,bd:os,ad:is,$c:as,_c:ss,Zc:ls,Yc:ds,Xc:cs,Wc:us,Vc:ps,Uc:hs,Tc:fs,Sc:gs,Rc:ms,Qc:bs,Pc:vs,Oc:ws,Nc:_s,Mc:Es,Lc:Cs,Kc:Ss,Jc:Ps,Ic:xs,Hc:Ts,Gc:As,Fc:Fs,Ec:Ms,Dc:Is,Cc:Ds,Bc:Bs,Ac:Rs,zc:Ls,yc:Os,xc:Us,wc:$s,vc:qs,uc:Ws,tc:Hs,sc:Ns,rc:Vs,qc:zs,pc:Gs,oc:js,nc:Xs,mc:Ys,lc:Ks,kc:Qs,jc:Zs,ic:Js,hc:el,gc:tl,fc:rl,ec:nl,dc:ol,cc:il,bc:al,ac:sl,$b:ll,_b:cl,Zb:ul,Yb:pl,Xb:hl,Wb:fl,Vb:gl,Ub:ml,Tb:bl,Sb:yl,Rb:vl,Qb:wl,Pb:kl,Ha:_l,Ob:e=>{var t=x.length,r=2147483648;if((e>>>=0)>r)return!1;for(var n=1;n<=4;n*=2){var o=t*(1+.2/n);o=Math.min(o,e+100663296);var i=Math.min(r,ke(Math.max(e,o),65536));if(El(i))return!0}return!1},Nb:function(e,t,r,n,o,i,a,s,d){const c=l.UTF8ToString(e,e+t),u=l.HEAPU8.subarray(o,o+i),p=l.emscripten_ubq_codec_audioDecoderNextHandle++,h={codec:c,sampleRate:r,numberOfChannels:n};u.length>0&&(h.description=u);try{const e=l.emscripten_ubq_codec_createAudioDecoder(a,s,d);AudioDecoder.isConfigSupported(h).then((t=>{e.configUnsupported=!t}),(()=>{e.configUnsupported=!0})),e.configure(h),l.emscripten_ubq_codec_audioDecoders.set(p,{audioDecoder:e,decoderConfig:h,leftBufferPtr:a,rightBufferPtr:s,bufferLength:d,opfsUri:""})}catch(e){return l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:p})},Mb:function(e,t,r,n,o,i){const a=l.UTF8ToString(e,e+t),s=l.emscripten_ubq_codec_audioEncoderNextHandle++,d={codec:a,sampleRate:r,numberOfChannels:n,bitrate:o};try{const e=new AudioEncoder({output:e=>{const t=l._malloc(e.byteLength),r=l.HEAPU8.subarray(t,t+e.byteLength);e.copyTo(r),l.emscripten_ubq_codec_onOutputEncodedAudioChunk(s,t,e.byteLength,i),l._free(t)},error:e=>{l.emscripten_ubq_codec_audioEncoders.get(s).frameIndex>1&&console.error(e)}});e.configure(d),l.emscripten_ubq_codec_audioEncoders.set(s,{audioEncoder:e,audioEncoderConfig:d,frameIndex:0})}catch(e){return e+=' Requested codec: "'+a+'"',e+="; sample rate: "+r,e+="; channels: "+n,e+="; bit rate: "+o,l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:s})},Lb:function(e,t,r,n,o,i,a,s){const d=l.UTF8ToString(e,e+t),c=l.HEAPU8.subarray(i,i+a),u=l.emscripten_ubq_codec_videoDecoderNextHandle++,p={codec:d,codedWidth:r,codedHeight:n,description:c,optimizeForLatency:!0};try{const e=l.emscripten_ubq_codec_createVideoDecoder(u,o,s);VideoDecoder.isConfigSupported(p).then((t=>{e.configUnsupported=!t.supported}),(t=>{e.configUnsupported=!0})),e.configure(p),l.emscripten_ubq_codec_videoDecoders.set(u,{videoDecoder:e,decoderConfig:p,codecServicePtr:s,isHdr:o,opfsUri:""})}catch(e){return l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:u})},Kb:function(e,t,r,n,o,i,a){const s=l.UTF8ToString(e,e+t),d=l.emscripten_ubq_codec_videoEncoderNextHandle++,c=l.specialHTMLTargets["!canvas"];c.width=r,c.height=n;const u={codec:s,width:r,height:n,avc:{format:"annexb"},framerate:o};i>0&&(u.bitrate=i);try{const e=new VideoEncoder({output:e=>{const t=l._malloc(e.byteLength),r=l.HEAPU8.subarray(t,t+e.byteLength);e.copyTo(r),l.emscripten_ubq_codec_onOutputEncodedVideoChunk(d,t,e.byteLength,a),l._free(t)},error:e=>console.error(e)});VideoEncoder.isConfigSupported(u).then((t=>{e.configUnsupported=!t}),(()=>{e.configUnsupported=!0})),e.configure(u),l.emscripten_ubq_codec_videoEncoders.set(d,{videoEncoder:e,encoderConfig:u,groupOfPictures:150,frameIndex:0})}catch(e){return e+=' Requested codec: "'+s+'"',e+="; resolution: "+r+"x"+n,l.emscripten_ubq_codec_createNativeResult({error:e})}return l.emscripten_ubq_codec_createNativeResult({handle:d})},Jb:function(e,t,r,n,o,i){const a=l.emscripten_ubq_codec_audioDecoders.get(e);if(a.audioDecoder.unexpectedError)return l.emscripten_ubq_codec_createNativeResult({code:2,error:a.audioDecoder.unexpectedError});"closed"===a.audioDecoder.state&&(a.audioDecoder=l.emscripten_ubq_codec_createAudioDecoder(a.leftBufferPtr,a.rightBufferPtr,a.bufferLength),a.audioDecoder.configure(a.decoderConfig));const s=a.audioDecoder,d=l.HEAPU8.subarray(o,o+i),c=new EncodedAudioChunk({type:t?"key":"delta",timestamp:r,duration:n,data:d});try{s.decode(c)}catch(e){return s.configUnsupported?l.emscripten_ubq_codec_createNativeResult({code:2,error:e}):l.emscripten_ubq_codec_createNativeResult({code:1,error:e})}return l.emscripten_ubq_codec_createNativeResult({code:0})},Ib:function(e,t,r,n,o,i,a,s){const d=l.emscripten_ubq_codec_videoDecoders.get(e);if(d.videoDecoder.unexpectedError)return l.emscripten_ubq_codec_createNativeResult({code:2,error:d.videoDecoder.unexpectedError});if("closed"===d.videoDecoder.state){const t=d.videoDecoder.textures;return d.videoDecoder=l.emscripten_ubq_codec_createVideoDecoder(e,d.isHdr,d.codecServicePtr),d.videoDecoder.textures=t,d.videoDecoder.configure(d.decoderConfig),l.emscripten_ubq_codec_destroyAlphaState(e),l.emscripten_ubq_codec_createNativeResult({code:1,error:"VideoDecoder was closed"})}const c=l.HEAPU8.subarray(o,o+i),u=Number.isFinite(r)?r:0,p=new EncodedVideoChunk({type:t?"key":"delta",timestamp:u,duration:n,data:c});let h=!1,f=null;a&&s>0&&(f=l.emscripten_ubq_codec_prepareAlphaState(e,d.decoderConfig),f&&(h=!0,l.emscripten_ubq_codec_markAlphaExpected(e,u)));try{d.videoDecoder.decode(p)}catch(t){return h&&l.emscripten_ubq_codec_alphaCancelExpectation(e,u),d.videoDecoder.configUnsupported?l.emscripten_ubq_codec_createNativeResult({code:2,error:t}):l.emscripten_ubq_codec_createNativeResult({code:1,error:t})}if(h&&f&&f.decoder&&"closed"!==f.decoder.state&&!f.decoder.unexpectedError){const r=l.HEAPU8.subarray(a,a+s),o=new EncodedVideoChunk({type:t?"key":"delta",timestamp:u,duration:n,data:r});try{f.decoder.decode(o)}catch(t){console.error("Alpha decode error:",t),l.emscripten_ubq_codec_alphaCancelExpectation(e,u)}}else h&&l.emscripten_ubq_codec_alphaCancelExpectation(e,u);return l.emscripten_ubq_codec_createNativeResult({code:0})},Ga:function(e){if(l.emscripten_ubq_codec_audioDecoders.has(e)){const t=l.emscripten_ubq_codec_audioDecoders.get(e);if("closed"!==t.audioDecoder.state&&t.audioDecoder.close(),t.opfsUri&&""!==t.opfsUri){const e=l.emscripten_ubq_opfs_getCache(t.opfsUri);e&&e.worker&&(l.emscripten_ubq_opfs_destroyWorker(e.worker),e.worker=null,e.workerOpened=!1,e.workerOpening=null)}l.emscripten_ubq_codec_audioDecoders.delete(e)}},Fa:function(e){const t=l.emscripten_ubq_codec_audioEncoders.get(e);"closed"!==t.audioEncoder.state&&t.audioEncoder.close(),l.emscripten_ubq_codec_audioEncoders.delete(e)},Ea:function(e){if(l.emscripten_ubq_codec_videoDecoders.has(e)){const t=l.emscripten_ubq_codec_videoDecoders.get(e);if("closed"!==t.videoDecoder.state&&t.videoDecoder.close(),l.emscripten_ubq_codec_destroyAlphaState(e),t.opfsUri&&""!==t.opfsUri){const e=l.emscripten_ubq_opfs_getCache(t.opfsUri);e&&e.worker&&(l.emscripten_ubq_opfs_destroyWorker(e.worker),e.worker=null,e.workerOpened=!1,e.workerOpening=null)}l.emscripten_ubq_codec_videoDecoders.delete(e)}},Da:function(e){const t=l.emscripten_ubq_codec_videoEncoders.get(e);"closed"!==t.videoEncoder.state&&t.videoEncoder.close(),l.emscripten_ubq_codec_videoEncoders.delete(e)},Ca:function(e,t,r){const n=1e6,o=l.emscripten_ubq_codec_audioEncoders.get(e),i=o.audioEncoderConfig.sampleRate,a=o.audioEncoderConfig.numberOfChannels,s=r/a,d=Math.round(n*(o.frameIndex*s/i)),c=Math.round(n*(s/i)),u=l.HEAPF32.subarray(t/4,t/4+r),p=new AudioData({format:"f32",sampleRate:i,numberOfFrames:s,numberOfChannels:a,duration:c,timestamp:d,data:u});o.audioEncoder.encode(p),o.frameIndex++,p.close()},Hb:function(e,t,r){const n=1e6,o=l.emscripten_ubq_codec_videoEncoders.get(e),i=Math.round(n*(o.frameIndex/o.encoderConfig.framerate)),a=o.frameIndex%o.groupOfPictures==0,s=Math.round(n/o.encoderConfig.framerate),d=l.specialHTMLTargets["!canvas"],c=new VideoFrame(d,{timestamp:i,duration:s});o.videoEncoder.encode(c,{keyFrame:a}),c.close(),o.frameIndex++},Gb:async function(e,t){const r=l.emscripten_ubq_codec_audioEncoders.get(e);try{await r.audioEncoder.flush()}catch{if(r.frameIndex>1)throw new Error("AudioEncoder.flush() failed")}l.emscripten_ubq_codec_onFinalizedAudioEncoding(e,t)},Fb:async function(e,t){const r=l.emscripten_ubq_codec_videoEncoders.get(e);await r.videoEncoder.flush(),l.emscripten_ubq_codec_onFinalizedVideoEncoding(e,t)},Eb:async function(e,t){const r=l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder;r.flushing=!0;try{await r.flush()}catch{}r.flushing=!1,r.writtenFrames=t},S:async function(e,t,r){const n=l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder;n.shouldDropFrames=r,n.flushing=!0;try{await n.flush()}catch{}n.flushing=!1,n.shouldDropFrames=!1,n.decodedFrames=t},Ba:function(e){return l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder.decodeQueueSize},fa:function(e){return l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder.decodedFrames},$:function(e){return l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder.writtenFrames},Db:function(e){return l.emscripten_ubq_codec_audioDecoders.get(e).audioDecoder.flushing},Cb:function(e){return l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder.flushing},Bb:function(){if("undefined"==typeof navigator||"string"!=typeof navigator.userAgent)return 0;const e=navigator.userAgent;return!e.includes("Safari")||e.includes("Chrome")||e.includes("Chromium")||e.includes("Android")?0:1},ea:function(){return"undefined"!=typeof VideoFrame&&"undefined"!=typeof VideoDecoder&&"undefined"!=typeof VideoEncoder&&"undefined"!=typeof AudioDecoder&&"undefined"!=typeof AudioEncoder},Ab:function(e,t,r,n,o,i,a){const s=l.emscripten_ubq_codec_videoDecoders.get(e),d=l.UTF8ToString(t,t+r),c=l.HEAPU8.subarray(i,i+a);s.videoDecoder.configure({codec:d,codedWidth:n,codedHeight:o,description:c})},la:function(e,t,r){const n=l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder;n.requestedPresentationFrame=t,n.requestedDecodeChunk=r;const o=1===l._isSafariHelper()?r:t;n.targetFrameForScheduling=o>=0?o:0},zb:function(e,t){l.emscripten_ubq_codec_videoDecoders.get(e).videoDecoder.reorderWindow=t},yb:function(e,t,r,n,o){const i=l.emscripten_ubq_codec_videoDecoders.get(e),a=l.HEAPU32.subarray(t/4,t/4+r);i.videoDecoder.textures=[];for(let e=0;e<r;e++)i.videoDecoder.textures[e]=vr.textures[a[e]];i.videoDecoder.textureWidth=n,i.videoDecoder.textureHeight=o},xb:async function(e,t,r,n,o,i,a,s,d,c){const u=l.UTF8ToString(e),p=l.emscripten_ubq_codec_audioDecoders.get(t);p&&(p.opfsUri=u);const h=l._malloc(s);try{const r=await l.emscripten_ubq_opfs_getChunkDataAsync(e,i,a,s,h);return r===s?(l.emscripten_ubq_codec_onAudioChunkLoaded(t,d,h,s,c),1):-1===r?(console.error(`[Codec] Error retrieving chunk data for ${u} at offset ${i}. OPFS loading failed.`),0):(console.warn(`[Codec] Incomplete data read for ${u} at offset ${i}. Expected ${s}, got ${r}`),0)}catch(e){return console.error(`[Codec] Error in submitChunkedData for ${u}:`,e),0}finally{l._free(h)}},wb:async function(e,t,r,n,o,i,a,s,d,c){const u=l.UTF8ToString(e),p=l.emscripten_ubq_codec_videoDecoders.get(t);p&&(p.opfsUri=u);const h=l._malloc(s);try{const r=await l.emscripten_ubq_opfs_getChunkDataAsync(e,i,a,s,h);return r===s?(l.emscripten_ubq_codec_onVideoChunkLoaded(t,d,h,s,c),1):-1===r?(console.error(`[Codec] Error retrieving chunk data for ${u} at offset ${i}. OPFS loading failed.`),0):(console.warn(`[Codec] Incomplete data read for ${u} at offset ${i}. Expected ${s}, got ${r}`),0)}catch(e){return console.error(`[Codec] Error in submitChunkedData for ${u}:`,e),0}finally{l._free(h)}},vb:function(e){const t=l.emscripten_ubq_asyncFetchManager.getProcess(e);return!!(null==t?void 0:t.allocate())},ka:function(){l.emscripten_ubq_asyncFetchManager.clear()},ja:function(e,t,r,n){return l.emscripten_ubq_asyncFetchManager.createHeader(e,t,r,n)},ub:function(e){l.emscripten_ubq_asyncFetchManager.deleteHeader(e)},tb:function(e,t,r,n,o,i,a,s,d){return l.emscripten_ubq_asyncFetchManager.fetch(e,t,r,n,o,i,a,s,d).handle},Y:function(e){return l.emscripten_ubq_asyncFetchManager.deleteProcess(e)},sb:function(e){var t,r;return null!==(r=null===(t=l.emscripten_ubq_asyncFetchManager.getProcess(e))||void 0===t?void 0:t.receivedLength)&&void 0!==r?r:0},rb:function(e){const t=l.emscripten_ubq_asyncFetchManager.getProcess(e);return(null==t?void 0:t.isAllocated())?t.resultAddress:-1},qb:function(e){const t=l.emscripten_ubq_asyncFetchManager.getProcess(e);return(null==t?void 0:t.isAllocated())?t.resultLength:-1},X:function(e){var t,r;return null!==(r=null===(t=l.emscripten_ubq_asyncFetchManager.getProcess(e))||void 0===t?void 0:t.state)&&void 0!==r?r:-1},pb:function(e){var t,r;return null!==(r=null===(t=l.emscripten_ubq_asyncFetchManager.getProcess(e))||void 0===t?void 0:t.totalBytes)&&void 0!==r?r:0},ob:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_writerCaches.get(t);if(!r)return 0;const n=l.emscripten_ubq_opfs_ensureWriteWorker(t,r),o=n.get(),i=e=>{if(e.data&&e.data.closed){try{o.removeEventListener("message",i)}catch(e){}l.emscripten_ubq_opfs_destroyWriterWorker(n),r.worker=null,r.workerOpened=!1,r.workerOpening=null,r.fileHandle=null,l.emscripten_ubq_opfs_writerCaches.delete(t)}};try{o.addEventListener("message",i)}catch(e){}return n.post({close:!0}),0},R:function(e,t,r,n,o){const i=Z(e),a=4294967296*(r>>>0)+(t>>>0);if(n<=0)return 0;const s=l.emscripten_ubq_opfs_CHUNK_SIZE,d=l.emscripten_ubq_opfs_getCache(i),c=x.subarray(o,o+n);let u=0,p=a;const h=Math.min(a+n,d.fileSize);for(;p<h;){const e=Math.floor(p/s),t=d.chunkCache.get(e);if(!t)return-1;l.emscripten_ubq_opfs_updateAccess(d,e);const r=p-e*s,n=Math.min(t.byteLength-r,h-p);c.set(t.subarray(r,r+n),u),u+=n,p+=n}return u},ia:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_getCache(t);return l.emscripten_ubq_opfs_ensureFile(t,r),BigInt(r.fileSize)},W:function(e,t,r,n){const o=Z(e),i=4294967296*(r>>>0)+(t>>>0),a=l.emscripten_ubq_opfs_CHUNK_SIZE,s=l.emscripten_ubq_opfs_getCache(o),d=Math.floor(i/a),c=Math.floor((i+n)/a);for(let e=d;e<=c;++e){if(!s.chunkCache.has(e))return 0;l.emscripten_ubq_opfs_updateAccess(s,e)}return 1},nb:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_getCache(t);return r.fileSize>=0||(l.emscripten_ubq_opfs_ensureFile(t,r),!1)},mb:function(e){const t=Z(e);let r=l.emscripten_ubq_opfs_writerCaches.get(t);if(r||(r={pending:0,worker:null,openPromise:null,fileHandle:null,workerOpened:!1,workerOpening:null},l.emscripten_ubq_opfs_writerCaches.set(t,r)),!r.workerOpened&&!r.workerOpening){const e=l.emscripten_ubq_opfs_ensureWriteWorker(t,r);r.workerOpening=(async()=>{await l.emscripten_ubq_opfs_ensureWriteFile(t,r),e.post({open:!0,uri:t}),await new Promise(((t,r)=>{const n=e.get(),o=e=>{e.data&&(!0===e.data.ready?(n.removeEventListener("message",o),t()):!1===e.data.ready&&(n.removeEventListener("message",o),r(new Error(e.data.error||"Failed to open OPFS writer handle"))))};n.addEventListener("message",o)})),r.workerOpened=!0})().finally((()=>{r.workerOpening=null}))}return r.workerOpened?1:0},lb:function(e){const t=Z(e),r=l.emscripten_ubq_opfs_writerCaches.get(t);return r&&r.pending||0},V:function(e,t,r,n){const o=Z(e),i=4294967296*(r>>>0)+(t>>>0),a=l.emscripten_ubq_opfs_CHUNK_SIZE,s=l.emscripten_ubq_opfs_getCache(o),d=Math.floor(i/a),c=Math.floor((i+n)/a);let u=!0;for(let e=d;e<=c;++e)s.chunkCache.has(e)?l.emscripten_ubq_opfs_updateAccess(s,e):(u=!1,l.emscripten_ubq_opfs_loadChunk(o,s,e));return u?1:0},kb:function(e,t,r,n,o){return async function(e,t,r,n,o){if(n<=0)return 0;const i=Z(e),a=4294967296*(r>>>0)+(t>>>0);let s=l.emscripten_ubq_opfs_writerCaches.get(i);s||(s={pending:0,worker:null,openPromise:null,fileHandle:null},l.emscripten_ubq_opfs_writerCaches.set(i,s));const d=new Uint8Array(n);d.set(l.HEAPU8.subarray(o,o+n));const c=l.emscripten_ubq_opfs_ensureWriteWorker(i,s);return s.workerOpened||(s.workerOpening||(s.workerOpening=(async()=>{await l.emscripten_ubq_opfs_ensureWriteFile(i,s),c.post({open:!0,uri:i}),await new Promise(((e,t)=>{const r=c.get(),n=o=>{o.data&&(!0===o.data.ready?(r.removeEventListener("message",n),e()):!1===o.data.ready&&(r.removeEventListener("message",n),t(new Error(o.data.error||"Failed to open OPFS writer handle"))))};r.addEventListener("message",n)})),s.workerOpened=!0})().finally((()=>{s.workerOpening=null}))),await s.workerOpening),new Promise(((e,t)=>{void 0===l.emscripten_ubq_opfs_writeTagCounter&&(l.emscripten_ubq_opfs_writeTagCounter=0);const r=++l.emscripten_ubq_opfs_writeTagCounter;s.pending=(s.pending||0)+1;const o=c.get(),i=a=>{a.data&&a.data.tag===r&&(o.removeEventListener("message",i),s.pending-=1,a.data.error?t(new Error(a.data.error)):e(n))};o.addEventListener("message",i),c.post({write:{offset:a,buf:d.buffer,tag:r}},[d.buffer])}))}(e,t,r,n,o).catch((e=>{console.error("[OPFS] writeChunk failed:",e)})),0},jb:function(){return!!l.emscripten_ubq_settings_forceWebGL1},Aa:xl,da:e=>{vr.currentContext==e&&(vr.currentContext=0),vr.deleteContext(e)},ib:e=>(e=>{var t=e.getExtension("OES_vertex_array_object");if(t)return e.createVertexArray=()=>t.createVertexArrayOES(),e.deleteVertexArray=e=>t.deleteVertexArrayOES(e),e.bindVertexArray=e=>t.bindVertexArrayOES(e),e.isVertexArray=e=>t.isVertexArrayOES(e),1})(vr.contexts[e].GLctx),hb:e=>(e=>{var t=e.getExtension("WEBGL_draw_buffers");if(t)return e.drawBuffers=(e,r)=>t.drawBuffersWEBGL(e,r),1})(vr.contexts[e].GLctx),gb:e=>(e=>!!(e.multiDrawWebgl=e.getExtension("WEBGL_multi_draw")))(vr.contexts[e].GLctx),ca:(e,t)=>{var r=vr.getContext(e),n=Z(t);return n.startsWith("GL_")&&(n=n.slice(3)),!!r.GLctx.getExtension(n)},fb:(e,t)=>{if(!t)return-5;if(!(e=vr.contexts[e]))return-3;var r=e.GLctx;if(!r)return-3;r=r.getContextAttributes(),P[t]=r.alpha,P[t+1]=r.depth,P[t+2]=r.stencil,P[t+3]=r.antialias,P[t+4]=r.premultipliedAlpha,P[t+5]=r.preserveDrawingBuffer;var n=r.powerPreference&&Cl.indexOf(r.powerPreference);return F[t+8>>2]=n,P[t+12]=r.failIfMajorPerformanceCaveat,F[t+16>>2]=e.version,F[t+20>>2]=0,0},eb:e=>vr.makeContextCurrent(e)?0:-5,Ch:(e,t)=>{var r=0;return Al().forEach(((n,o)=>{var i=t+r;M[e+4*o>>2]=i,((e,t)=>{for(var r=0;r<e.length;++r)P[t++]=e.charCodeAt(r);P[t]=0})(n,i),r+=n.length+1})),0},Bh:(e,t)=>{var r=Al();M[e>>2]=r.length;var n=0;return r.forEach((e=>n+=e.length+1)),M[t>>2]=n,0},za:pr,qa:function(e){try{var t=Ae.getStreamFromFD(e);return Te.close(t),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},Ah:function(e,t){try{var r=Ae.getStreamFromFD(e),n=r.tty?2:Te.isDir(r.mode)?3:Te.isLink(r.mode)?7:4;return P[t]=n,T[t+2>>1]=0,D[t+8>>3]=BigInt(0),D[t+16>>3]=BigInt(0),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},zh:function(e,t,r,n,o){n=nr(n);try{if(isNaN(n))return 61;var i=Ae.getStreamFromFD(e),a=Fl(i,t,r,n);return M[o>>2]=a,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},Va:function(e,t,r,n){try{var o=Ae.getStreamFromFD(e),i=Fl(o,t,r);return M[n>>2]=i,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},yh:function(e,t,r,n){t=nr(t);try{if(isNaN(t))return 61;var o=Ae.getStreamFromFD(e);return Te.llseek(o,t,r),D[n>>3]=BigInt(o.position),o.getdents&&0===t&&0===r&&(o.getdents=null),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},xh:function(e,t,r,n){try{var o=((e,t,r,n)=>{for(var o=0,i=0;i<r;i++){var a=M[t>>2],s=M[t+4>>2];t+=8;var l=Te.write(e,P,a,s,n);if(l<0)return-1;if(o+=l,l<s)break;void 0!==n&&(n+=l)}return o})(Ae.getStreamFromFD(e),t,r);return M[n>>2]=o,0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},db:function(e){var t=Z(e),r=localStorage.getItem(t);return null==r?null:ce(r)},cb:function(){return"undefined"!=typeof window?ce(window.location.hostname):ce("")},A:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},L:function(e,t){var r=ae();try{return Ct(e)(t)}catch(e){if(ie(r),e!==e+0)throw e;Kl(1,0)}},F:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},m:function(e,t,r,n){var o=ae();try{return Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},bb:function(e){var t=ae();try{return Ct(e)()}catch(e){if(ie(t),e!==e+0)throw e;Kl(1,0)}},ya:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},r:function(e,t){var r=ae();try{return Ct(e)(t)}catch(e){if(ie(r),e!==e+0)throw e;Kl(1,0)}},_:function(e,t,r,n,o,i,a,s,l,d,c,u,p,h,f,g){var m=ae();try{return Ct(e)(t,r,n,o,i,a,s,l,d,c,u,p,h,f,g)}catch(e){if(ie(m),e!==e+0)throw e;Kl(1,0)}},q:function(e,t,r){var n=ae();try{return Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},t:function(e,t,r,n){var o=ae();try{return Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},U:function(e,t,r,n,o){var i=ae();try{return Ct(e)(t,r,n,o)}catch(e){if(ie(i),e!==e+0)throw e;Kl(1,0)}},ab:function(e,t,r,n,o,i){var a=ae();try{return Ct(e)(t,r,n,o,i)}catch(e){if(ie(a),e!==e+0)throw e;Kl(1,0)}},xa:function(e,t,r,n,o,i,a){var s=ae();try{return Ct(e)(t,r,n,o,i,a)}catch(e){if(ie(s),e!==e+0)throw e;Kl(1,0)}},wa:function(e,t,r,n,o,i,a,s,l,d){var c=ae();try{return Ct(e)(t,r,n,o,i,a,s,l,d)}catch(e){if(ie(c),e!==e+0)throw e;Kl(1,0)}},T:function(e){var t=ae();try{Ct(e)()}catch(e){if(ie(t),e!==e+0)throw e;Kl(1,0)}},w:function(e,t){var r=ae();try{Ct(e)(t)}catch(e){if(ie(r),e!==e+0)throw e;Kl(1,0)}},C:function(e,t,r,n){var o=ae();try{Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},B:function(e,t,r){var n=ae();try{Ct(e)(t,r)}catch(e){if(ie(n),e!==e+0)throw e;Kl(1,0)}},p:function(e,t,r,n){var o=ae();try{Ct(e)(t,r,n)}catch(e){if(ie(o),e!==e+0)throw e;Kl(1,0)}},D:function(e,t,r,n,o){var i=ae();try{Ct(e)(t,r,n,o)}catch(e){if(ie(i),e!==e+0)throw e;Kl(1,0)}},$a:function(e,t,r,n,o,i){var a=ae();try{Ct(e)(t,r,n,o,i)}catch(e){if(ie(a),e!==e+0)throw e;Kl(1,0)}},_a:function(e,t,r,n,o,i,a){var s=ae();try{Ct(e)(t,r,n,o,i,a)}catch(e){if(ie(s),e!==e+0)throw e;Kl(1,0)}},Za:function(e,t,r,n,o,i,a,s){var l=ae();try{Ct(e)(t,r,n,o,i,a,s)}catch(e){if(ie(l),e!==e+0)throw e;Kl(1,0)}},Ya:function(e,t,r,n,o,i,a,s,l,d){var c=ae();try{Ct(e)(t,r,n,o,i,a,s,l,d)}catch(e){if(ie(c),e!==e+0)throw e;Kl(1,0)}},ba:function(){return"undefined"!=typeof localStorage},va:function(){return"undefined"!=typeof process&&process.versions&&process.versions.node?1:0},ua:function(e,t){const r=Ot.toValue(t),n=l.ctx;n.bindTexture(n.TEXTURE_2D,vr.textures[e]),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,r)},a:E,wh:cr,vh:function(e,t){try{return me(x.subarray(e,e+t)),0}catch(e){if(void 0===Te||"ErrnoError"!==e.name)throw e;return e.errno}},ta:function(e,t){var r=Z(e),n=Z(t);localStorage.setItem(r,n)}},Wl=await async function(){function e(e,t){return Wl=e.exports,yt=Wl.Uh,z(),Wl}V();var t={a:ql};if(l.instantiateWasm)return new Promise(((r,n)=>{l.instantiateWasm(t,((t,n)=>{e(t),r(t.exports)}))}));W??=j();try{var r=await Y(L,W,t);return e(r.instance)}catch(e){return n(e),Promise.reject(e)}}(),Hl=(Wl.Ph,Wl.Qh),Nl=l._malloc=Wl.Rh,Vl=l._free=Wl.Sh,zl=l._main=Wl.Th,Gl=(l._ma_malloc_emscripten=Wl.Vh,l._ma_free_emscripten=Wl.Wh,l._ma_device_process_pcm_frames_capture__webaudio=Wl.Xh),jl=l._ma_device_process_pcm_frames_playback__webaudio=Wl.Yh,Xl=Wl.Zh,Yl=Wl._h,Kl=Wl.$h,Ql=Wl.ai,Zl=Wl.bi,Jl=Wl.ci,ed=Wl.di,td=Wl.ei,rd=Wl.fi,nd=Wl.gi,od=Wl.hi;if(l.addRunDependency=V,l.removeRunDependency=z,l.ccall=(e,t,r,n,o)=>{var i={string:e=>{var t=0;return null!=e&&0!==e&&(t=Il(e)),t},array:e=>{var t,r,n=Ml(e.length);return t=e,r=n,P.set(t,r),n}},a=(e=>l["_"+e])(e),s=[],d=0;if(n)for(var c=0;c<n.length;c++){var u=i[r[c]];u?(0===d&&(d=ae()),s[c]=u(n[c])):s[c]=n[c]}var p,h=a(...s);return p=h,0!==d&&ie(d),h=function(e){return"string"===t?Z(e):"boolean"===t?Boolean(e):e}(p),h},l.getValue=function(e,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":return P[e];case"i16":return T[e>>1];case"i32":return F[e>>2];case"i64":return D[e>>3];case"float":return I[e>>2];case"double":return R[e>>3];case"*":return M[e>>2];default:G(`invalid type for getValue: ${t}`)}},l.UTF8ToString=Z,l.specialHTMLTargets=Sl,l.FS_createPreloadedFile=Pe,l.FS_unlink=e=>Te.unlink(e),l.FS_createPath=Dl,l.FS_createDevice=Rl,l.FS_createDataFile=Ce,l.FS_createLazyFile=Bl,l.preInit)for("function"==typeof l.preInit&&(l.preInit=[l.preInit]);l.preInit.length>0;)l.preInit.pop()();return function e(r=m){function n(){l.calledRun=!0,O||(l.noFSInit||Te.initialized||Te.init(),we.init(),Wl.Ph(),Te.ignorePermissions=!1,t(l),l.onRuntimeInitialized?.(),l.noInitialRun||function(e=[]){var t=zl;e.unshift(b);var r=e.length,n=Ml(4*(r+1)),o=n;e.forEach((e=>{M[o>>2]=Il(e),o+=4})),M[o>>2]=0;try{var i=t(r,n);return ur(i,!0),i}catch(e){return lr(e)}}(r),function(){if(l.postRun)for("function"==typeof l.postRun&&(l.postRun=[l.postRun]);l.postRun.length;)te(l.postRun.shift());J(ee)}())}H>0?N=e:(function(){if(l.preRun)for("function"==typeof l.preRun&&(l.preRun=[l.preRun]);l.preRun.length;)ne(l.preRun.shift());J(re)}(),H>0?N=e:l.setStatus?(l.setStatus("Running..."),setTimeout((()=>{setTimeout((()=>l.setStatus("")),1),n()}),1)):n())}(),d});"object"==typeof e&&"object"==typeof t?(t.exports=n,t.exports.default=n):"function"==typeof define&&define.amd&&define([],(()=>n))}});var x=class extends TypeError{constructor(e,t){let r;const{message:n,...o}=e,{path:i}=e;super(0===i.length?n:"At path: "+i.join(".")+" -- "+n),this.value=void 0,this.key=void 0,this.type=void 0,this.refinement=void 0,this.path=void 0,this.branch=void 0,this.failures=void 0,Object.assign(this,o),this.name=this.constructor.name,this.failures=()=>{var n;return null!=(n=r)?n:r=[e,...t()]}}};function T(e){return"object"==typeof e&&null!=e}function A(e){return"string"==typeof e?JSON.stringify(e):""+e}function F(e,t,r,n){if(!0===e)return;!1===e?e={}:"string"==typeof e&&(e={message:e});const{path:o,branch:i}=t,{type:a}=r,{refinement:s,message:l="Expected a value of type `"+a+"`"+(s?" with refinement `"+s+"`":"")+", but received: `"+A(n)+"`"}=e;return{value:n,type:a,refinement:s,key:o[o.length-1],path:o,branch:i,...e,message:l}}function*M(e,t,r,n){var o;T(o=e)&&"function"==typeof o[Symbol.iterator]||(e=[e]);for(const o of e){const e=F(o,t,r,n);e&&(yield e)}}function*I(e,t,r={}){const{path:n=[],branch:o=[e],coerce:i=!1,mask:a=!1}=r,s={path:n,branch:o};if(i&&(e=t.coercer(e,s),a&&"type"!==t.type&&T(t.schema)&&T(e)&&!Array.isArray(e)))for(const r in e)void 0===t.schema[r]&&delete e[r];let l=!0;for(const r of t.validator(e,s))l=!1,yield[r,void 0];for(let[r,d,c]of t.entries(e,s)){const t=I(d,c,{path:void 0===r?n:[...n,r],branch:void 0===r?o:[...o,d],coerce:i,mask:a});for(const n of t)n[0]?(l=!1,yield[n[0],void 0]):i&&(d=n[1],void 0===r?e=d:e instanceof Map?e.set(r,d):e instanceof Set?e.add(d):T(e)&&(e[r]=d))}if(l)for(const r of t.refiner(e,s))l=!1,yield[r,void 0];l&&(yield[void 0,e])}var D=class{constructor(e){this.TYPE=void 0,this.type=void 0,this.schema=void 0,this.coercer=void 0,this.validator=void 0,this.refiner=void 0,this.entries=void 0;const{type:t,schema:r,validator:n,refiner:o,coercer:i=(e=>e),entries:a=function*(){}}=e;this.type=t,this.schema=r,this.entries=a,this.coercer=i,this.validator=n?(e,t)=>M(n(e,t),t,this,e):()=>[],this.refiner=o?(e,t)=>M(o(e,t),t,this,e):()=>[]}assert(e){return function(e,t){const r=B(e,t);if(r[0])throw r[0]}(e,this)}create(e){return function(e,t){const r=B(e,t,{coerce:!0});if(r[0])throw r[0];return r[1]}(e,this)}is(e){return function(e,t){const r=B(e,t);return!r[0]}(e,this)}mask(e){return function(e,t){const r=B(e,t,{coerce:!0,mask:!0});if(r[0])throw r[0];return r[1]}(e,this)}validate(e,t={}){return B(e,this,t)}};function B(e,t,r={}){const n=I(e,t,r),o=function(e){const{done:t,value:r}=e.next();return t?void 0:r}(n);if(o[0]){return[new x(o[0],(function*(){for(const e of n)e[0]&&(yield e[0])})),void 0]}return[void 0,o[1]]}function R(e,t){return new D({type:e,schema:null,validator:t})}function L(e){return new D({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[r,n]of t.entries())yield[r,n,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||"Expected an array value, but received: "+A(e)})}function O(){return R("boolean",(e=>"boolean"==typeof e))}function U(){return R("integer",(e=>"number"==typeof e&&!isNaN(e)&&Number.isInteger(e)||"Expected an integer, but received: "+A(e)))}function $(){return R("number",(e=>"number"==typeof e&&!isNaN(e)||"Expected a number, but received: "+A(e)))}function q(e){const t=e?Object.keys(e):[],r=R("never",(()=>!1));return new D({type:"object",schema:e||null,*entries(n){if(e&&T(n)){const o=new Set(Object.keys(n));for(const r of t)o.delete(r),yield[r,n[r],e[r]];for(const e of o)yield[e,n[e],r]}},validator:e=>T(e)||"Expected an object, but received: "+A(e),coercer:e=>T(e)?{...e}:e})}function W(e){return new D({...e,validator:(t,r)=>void 0===t||e.validator(t,r),refiner:(t,r)=>void 0===t||e.refiner(t,r)})}function H(){return R("string",(e=>"string"==typeof e||"Expected a string, but received: "+A(e)))}function N(e){const t=Object.keys(e);return new D({type:"type",schema:e,*entries(r){if(T(r))for(const n of t)yield[n,r[n],e[n]]},validator:e=>T(e)||"Expected an object, but received: "+A(e)})}function V(e){const t=e.map((e=>e.type)).join(" | ");return new D({type:"union",schema:null,coercer:(t,r)=>(e.find((e=>{const[r]=e.validate(t,{coerce:!0});return!r}))||R("unknown",(()=>!0))).coercer(t,r),validator(r,n){const o=[];for(const t of e){const[...e]=I(r,t,n),[i]=e;if(!i[0])return[];for(const[t]of e)t&&o.push(t)}return["Expected the value to satisfy a union of `"+t+"`, but received: "+A(r),...o]}})}function z(e,t,r={}){const{exclusive:n}=r;return X(e,"max",(r=>n?r<t:r<=t||"Expected a "+e.type+" less than "+(n?"":"or equal to ")+t+" but received `"+r+"`"))}function G(e,t,r={}){const{exclusive:n}=r;return X(e,"min",(r=>n?r>t:r>=t||"Expected a "+e.type+" greater than "+(n?"":"or equal to ")+t+" but received `"+r+"`"))}function j(e){return X(e,"nonempty",(t=>{const r=function(e){return e instanceof Map||e instanceof Set?e.size:e.length}(t);return r>0||"Expected a nonempty "+e.type+" but received an empty one"}))}function X(e,t,r){return new D({...e,*refiner(n,o){yield*e.refiner(n,o);const i=M(r(n,o),o,e,n);for(const e of i)yield{...e,refinement:t}}})}function Y(e,t,r){const[n]=B(t,r);if(n)throw n.message=`Error in argument '${e}': ${n.message}`,n;return!0}function K(){const e=/image\/(png|jpeg|webp|x-tga)/;return R("ImageMimeType",(t=>!("string"!=typeof t||!e.test(t))||{message:`expected one of "image/png", "image/jpeg", "image/webp" or "image/x-tga", but got "${t}"`}))}function Q(){const e=/audio\/(wav|mp4)/;return R("AudioMimeType",(t=>!("string"!=typeof t||!e.test(t))||{message:`expected "audio/wav" or "audio/mp4", but got "${t}"`}))}function Z(){const e=/application\/(octet-stream|pdf)/;return R("ApplicationMimeType",(t=>!("string"!=typeof t||!e.test(t))||{message:`expected one of "application/octet-stream" or "application/pdf", but got "${t}"`}))}function J(){const e=["Free","VerticalStack","HorizontalStack","DepthStack"];return R("SceneLayout",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function ee(){const e=["Linear","EaseIn","EaseOut","EaseInOut","EaseInQuart","EaseOutQuart","EaseInOutQuart","EaseInQuint","EaseOutQuint","EaseInOutQuint","EaseInBack","EaseOutBack","EaseInOutBack","EaseInSpring","EaseOutSpring","EaseInOutSpring"];return R("AnimationEasing",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function te(){return R("AbortSignal",(e=>{if("undefined"!=typeof AbortSignal&&e instanceof AbortSignal)return!0;return!("object"!=typeof e||null===e||"boolean"!=typeof e.aborted||"function"!=typeof e.addEventListener)||{message:`expected an AbortSignal-like object, but got "${Object.prototype.toString.call(e)}"`}}))}function re(){const e=["Absolute","Percent","Auto"];return R("SizeMode",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function ne(){const e=["Absolute","Percent","Auto"];return R("PositionMode",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function oe(){const e=["slide","pan","fade","blur","grow","zoom","pop","wipe","baseline","crop_zoom","spin","spin_loop","fade_loop","blur_loop","pulsating_loop","breathing_loop","jump_loop","squeeze_loop","sway_loop","typewriter_text","block_swipe_text","spread_text","merge_text","ken_burns","//ly.img.ubq/animation/slide","//ly.img.ubq/animation/pan","//ly.img.ubq/animation/fade","//ly.img.ubq/animation/blur","//ly.img.ubq/animation/grow","//ly.img.ubq/animation/zoom","//ly.img.ubq/animation/pop","//ly.img.ubq/animation/wipe","//ly.img.ubq/animation/baseline","//ly.img.ubq/animation/crop_zoom","//ly.img.ubq/animation/spin","//ly.img.ubq/animation/spin_loop","//ly.img.ubq/animation/fade_loop","//ly.img.ubq/animation/blur_loop","//ly.img.ubq/animation/pulsating_loop","//ly.img.ubq/animation/breathing_loop","//ly.img.ubq/animation/jump_loop","//ly.img.ubq/animation/squeeze_loop","//ly.img.ubq/animation/sway_loop","//ly.img.ubq/animation/typewriter_text","//ly.img.ubq/animation/block_swipe_text","//ly.img.ubq/animation/spread_text","//ly.img.ubq/animation/merge_text","//ly.img.ubq/animation/ken_burns"];return R("AnimationType",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}function ie(){return V([N({r:$(),g:$(),b:$(),a:$()}),N({c:$(),m:$(),y:$(),k:$(),tint:$()}),N({name:H(),tint:$(),externalReference:H()})])}function ae(){return N({type:oe(),duration:$(),easing:W(ee())})}var se=Symbol("PROXY");function le(e){return(t,r)=>{Object.defineProperty(t,se,{value:{type:"getter",...e},writable:!1})}}function de(e,t){Object.defineProperty(e,se,{value:{type:"setter"},writable:!1})}function ce(e){if(e.isValid()){const t=e.value();return e.delete(),t}{const t=e.error(),r=t.publicMessage();throw t.delete(),e.delete(),new Error(r)}}function ue(e){return new Promise(((t,r)=>{e((e=>{try{const r=ce(e);t(r)}catch(e){r(e)}}))}))}var pe,he,fe,ge,me,be,ye,ve,we,ke,_e,Ee,Ce,Se,Pe,xe,Te,Ae,Fe,Me,Ie,De,Be,Re,Le,Oe,Ue,$e,qe,We,He,Ne,Ve=(e,t=!0)=>{const r=[];for(let t=0;t<e.size();t+=1)r.push(e.get(t));return t&&e.delete(),r};Oe=[de],Le=[de],Re=[de],Be=[de],De=[de],Ie=[de],Me=[de],Fe=[le({disabledInModes:["Playback"]})],Ae=[de],Te=[de],xe=[le({disabledInModes:["Playback"]})],Pe=[de],Se=[le({disabledInModes:["Playback"]})],Ce=[le({disabledInModes:["Playback"]})],Ee=[de],_e=[le({disabledInModes:["Playback"]})],ke=[le({disabledInModes:["Playback"]})],we=[le({disabledInModes:["Playback"]})],ve=[le({disabledInModes:["Playback"]})],ye=[de],be=[le({disabledInModes:["Playback"]})],me=[de],ge=[de],fe=[de],he=[le({disabledInModes:["Playback"]})],pe=[de];var ze,Ge,je,Xe,Ye,Ke,Qe,Ze,Je,et,tt,rt,nt,ot,it,at,st,lt,dt,ct,ut,pt,ht,ft,gt,mt,bt,yt,vt,wt,kt,_t,Et,Ct,St,Pt,xt,Tt,At,Ft,Mt,It,Dt,Bt,Rt,Lt,Ot,Ut,$t,qt,Wt,Ht,Nt,Vt,zt,Gt,jt,Xt,Yt,Kt,Qt,Zt,Jt,er,tr,rr,nr,or,ir,ar,sr,lr,dr,cr,ur,pr,hr,fr,gr,mr,br,yr,vr,wr,kr,_r,Er,Cr,Sr,Pr,xr,Tr,Ar,Fr,Mr,Ir,Dr,Br,Rr,Lr,Or,Ur,$r,qr,Wr,Hr,Nr,Vr,zr,Gr,jr,Xr,Yr,Kr,Qr,Zr,Jr,en,tn,rn,nn,on,an,sn,ln,dn,cn,un,pn,hn,fn,gn,mn,bn,yn,vn,wn,kn,_n,En,Cn,Sn,Pn,xn,Tn,An,Fn,Mn,In,Dn,Bn,Rn,Ln,On,Un,$n,qn,Wn,Hn,Nn,Vn,zn,Gn,jn,Xn,Yn,Kn,Qn,Zn,Jn,eo,to,ro,no,oo,io,ao,so,lo,co,uo,po,ho,fo,go,mo,bo,yo,vo,wo,ko,_o,Eo,Co,So,Po,xo,To,Ao,Fo,Mo,Io,Do,Bo,Ro,Lo,Oo,Uo,$o,qo,Wo,Ho,No,Vo,zo,Go,jo,Xo,Yo,Ko,Qo,Zo,Jo,ei,ti,ri,ni,oi,ii,ai,si,li,di,ci,ui,pi,hi,fi,gi,mi,bi,yi,vi,wi,ki,_i,Ei,Ci,Si,Pi,xi,Ti,Ai,Fi,Mi,Ii,Di,Bi,Ri,Li,Oi,Ui,$i,qi,Wi,Hi,Ni,Vi,zi,Gi,ji,Xi,Yi,Ki,Qi,Zi,Ji,ea,ta,ra,na,oa,ia,aa,sa,la,da,ca,ua,pa,ha,fa,ga,ma,ba,ya,va,wa,ka,_a,Ea,Ca,Sa,Pa,xa,Ta,Aa,Fa,Ma,Ia,SceneAPI=class{constructor(e,t=!1){m(qe,5,this),_(this,We),_(this,Ue),_(this,$e),y(this,"onZoomLevelChanged",(e=>{const t=k(this,Ue).subscribeToZoomLevel(e);return()=>{k(this,Ue).isDeleted()||ce(k(this,Ue).unsubscribe(t))}})),y(this,"onActiveChanged",(e=>{const t=k(this,Ue).subscribeToActiveSceneChange(e);return()=>{k(this,Ue).isDeleted()||ce(k(this,Ue).unsubscribe(t))}})),E(this,Ue,e),t||E(this,$e,new BlockAPI(e))}async loadFromString(e,t=!1){return Y("sceneContent",e,H()),ue((r=>k(this,Ue).loadSceneFromString(e,r,t)))}async loadFromURL(e,t=!1){return Y("url",e,H()),ue((r=>k(this,Ue).loadSceneFromURL(e,r,t)))}async loadFromArchiveURL(e,t=!1){return Y("url",e,H()),ue((r=>k(this,Ue).loadSceneFromArchiveURL(e,r,t)))}async saveToString(e=["blob","bundle","file","http","https","opfs"],t){const r=this.get();if(null==r)throw new Error("No scene available.");return ue((n=>{k(this,Ue).saveSceneToString(r,n,e,t?async(e,r,n)=>{const o=await t(e,r);n&&n.invoke(e,o)}:void 0)}))}async saveToArchive(){return new Promise(((e,t)=>{const r=this.get();null==r?t(new Error("No scene available.")):k(this,Ue).saveSceneToArchive(r,(r=>{"error"in r?t(r.error):e(new Blob([r],{type:"application/zip"}))}))}))}create(e="Free",t){Y("sceneLayout",e,J());const r=ce(k(this,Ue).createScene(e));return t?(C(this,We,He).call(this,r,t),r):r}createVideo(e){const t=C(this,We,Ne).call(this);return e?(C(this,We,He).call(this,t,e),t):t}createFromImage(e,t=300,r=1,n="Free",o=0,i=!1){return Y("url",e,H()),Y("dpi",t,G($(),0)),Y("pixelScaleFactor",r,G($(),0)),Y("sceneLayout",n,J()),ue((a=>k(this,Ue).createSceneFromImage(e,t,r,n,o,i,a)))}createFromVideo(e){return Y("url",e,H()),ue((t=>k(this,Ue).createSceneFromVideo(e,t)))}get(){const e=ce(k(this,Ue).findByType("scene")),t=Ve(e);return t.length>0?t[0]:null}async applyTemplateFromString(e){return Y("content",e,H()),ue((t=>k(this,Ue).applyTemplateFromString(e,t)))}async applyTemplateFromURL(e){return Y("url",e,H()),ue((t=>k(this,Ue).applyTemplateFromURL(e,t)))}getMode(){const e=this.get();return ce(k(this,Ue).getSceneMode(e))}setDesignUnit(e){Y("designUnit",e,function(){const e=["Pixel","Millimeter","Inch"];return R("DesignUnit",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}());const t=this.get();ce(k(this,Ue).setDesignUnit(t,e))}getDesignUnit(){const e=this.get();return ce(k(this,Ue).getDesignUnit(e))}getLayout(){const e=this.get();if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).getSceneLayout(e))}setLayout(e){Y("layout",e,J());const t=this.get();if(null==t)throw new Error("No scene available.");ce(k(this,Ue).setSceneLayout(t,e))}getPages(){return Ve(ce(k(this,Ue).getPages()))}getCurrentPage(){const e=this.get();if(null==e)return null;const t=k(this,Ue).getCurrentPage(e);return t.isValid()?ce(t):null}findNearestToViewPortCenterByType(e){Y("type",e,H());const t=this.get();if(null==t)return[];const r=ce(k(this,Ue).findNearestToViewPortCenterByType(t,e));return Ve(r)}findNearestToViewPortCenterByKind(e){Y("kind",e,H());const t=this.get();if(null==t)return[];const r=ce(k(this,Ue).findNearestToViewPortCenterByKind(t,e));return Ve(r)}setZoomLevel(e=1){const t=this.get();Y("zoomLevel",e,G($(),0)),k(this,Ue).setZoomLevel(t,e)}getZoomLevel(){const e=this.get();return ce(k(this,Ue).getZoomLevel(e))}async zoomToBlock(e,t,r,n,o){Y("id",e,U());try{Y("options",t,W(q({padding:W(V([$(),q({x:W($()),y:W($())}),q({top:W($()),bottom:W($()),left:W($()),right:W($())})])),animate:W(V([O(),q({duration:W(G($(),0)),easing:W(ee()),interruptible:W(O())})]))})))}catch(e){try{Y("paddingLeft",t,W($())),Y("paddingTop",r,W($())),Y("paddingRight",n,W($())),Y("paddingBottom",o,W($()))}catch(t){throw new Error(`Invalid arguments.\nIf your're using the deprecated signature:\ncesdk.engine.scene.zoomToBlock(id, paddingLeft, paddingTop, paddingRight, paddingBottom)\n${t.message}\nIf you're using the new signature:\ncesdk.engine.scene.zoomToBlock(id, options)\n${e.message}`)}}const i="object"==typeof t?t:{padding:{left:t??0,top:r??0,right:n??0,bottom:o??0}},a={left:0,top:0,right:0,bottom:0};if(null!=i.padding&&("number"==typeof i.padding?(a.left=i.padding,a.top=i.padding,a.right=i.padding,a.bottom=i.padding):(("x"in i.padding||"y"in i.padding)&&(a.left=i.padding.x??a.left,a.right=i.padding.x??a.right,a.top=i.padding.y??a.top,a.bottom=i.padding.y??a.bottom),("left"in i.padding||"top"in i.padding||"right"in i.padding||"bottom"in i.padding)&&(a.left=i.padding.left??a.left,a.top=i.padding.top??a.top,a.right=i.padding.right??a.right,a.bottom=i.padding.bottom??a.bottom))),i.animate){const t={duration:.5,easing:"EaseInOut",interruptible:!1};return"object"==typeof i.animate&&(t.duration=i.animate.duration??t.duration,t.easing=i.animate.easing??t.easing,t.interruptible=i.animate.interruptible??t.interruptible),new Promise((r=>{k(this,Ue).zoomToBlockWithAnimation(e,a.left,a.top,a.right,a.bottom,t.duration,t.easing,t.interruptible,(()=>{r()}))}))}return ue((t=>k(this,Ue).zoomToBlock(e,a.left,a.top,a.right,a.bottom,t)))}enableZoomAutoFit(e,t,r=0,n=0,o=0,i=0){return Y("id",e,U()),Y("axis",t,function(){const e=["Horizontal","Vertical","Both"];return R("ZoomAutoFitAxis",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}()),"Horizontal"===t?(Y("paddingBefore",r,$()),Y("paddingAfter",n,$()),ce(k(this,Ue).enableZoomAutoFit(e,t,r,0,n,0))):"Vertical"===t?(Y("paddingBefore",r,$()),Y("paddingAfter",n,$()),ce(k(this,Ue).enableZoomAutoFit(e,t,0,r,0,n))):(Y("paddingLeft",r,$()),Y("paddingTop",n,$()),Y("paddingRight",o,$()),Y("paddingBottom",i,$()),ce(k(this,Ue).enableZoomAutoFit(e,t,r,n,o,i)))}disableZoomAutoFit(e){return Y("blockOrScene",e,U()),ce(k(this,Ue).disableZoomAutoFit(e))}isZoomAutoFitEnabled(e){return Y("blockOrScene",e,U()),ce(k(this,Ue).isZoomAutoFitEnabled(e))}unstable_enableCameraPositionClamping(e,t=0,r=0,n=0,o=0,i=0,a=0,s=0,l=0){return Y("ids",e,L($())),Y("paddingLeft",t,$()),Y("paddingTop",r,$()),Y("paddingRight",n,$()),Y("paddingBottom",o,$()),Y("scaledPaddingLeft",t,$()),Y("scaledPaddingTop",r,$()),Y("scaledPaddingRight",n,$()),Y("scaledPaddingBottom",o,$()),ce(k(this,Ue).unstable_enableCameraPositionClamping(e,t,r,n,o,i,a,s,l))}unstable_disableCameraPositionClamping(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_disableCameraPositionClamping(e))}unstable_isCameraPositionClampingEnabled(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_isCameraPositionClampingEnabled(e))}unstable_enableCameraZoomClamping(e,t=-1,r=-1,n=0,o=0,i=0,a=0){return Y("ids",e,L($())),Y("minZoomLimit",t,$()),Y("maxZoomLimit",r,$()),Y("paddingLeft",n,$()),Y("paddingTop",o,$()),Y("paddingRight",i,$()),Y("paddingBottom",a,$()),ce(k(this,Ue).unstable_enableCameraZoomClamping(e,t,r,n,o,i,a))}unstable_disableCameraZoomClamping(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_disableCameraZoomClamping(e))}unstable_isCameraZoomClampingEnabled(e=this.get()){if(null==e)throw new Error("No scene available.");return ce(k(this,Ue).unstable_isCameraZoomClampingEnabled(e))}setPlaying(e){const t=this.getCurrentPage();if(null==t)throw new Error("No page to play");k(this,Ue).setPlaying(t,e)}};qe=u(null),Ue=new WeakMap,$e=new WeakMap,We=new WeakSet,He=function(e,t){if(!k(this,$e))throw new Error("Utility functions not allowed to be called inside utility functions.");let r=0,n=0;if("number"==typeof t.page.size)r=t.page.size,n=t.page.size;else{if("object"!=typeof t.page.size)return;r=t.page.size.width,n=t.page.size.height}const o=k(this,$e).create("page");if(k(this,$e).appendChild(e,o),k(this,$e).setSize(o,r,n),t.page.color){const e=k(this,$e).createFill("color");k(this,$e).setFill(o,e),k(this,$e).setColor(o,"fill/solid/color",t.page.color)}},Ne=function(){return ce(k(this,Ue).createVideoScene())},b(qe,1,"loadFromString",Oe,SceneAPI),b(qe,1,"loadFromURL",Le,SceneAPI),b(qe,1,"loadFromArchiveURL",Re,SceneAPI),b(qe,1,"create",Be,SceneAPI),b(qe,1,"createVideo",De,SceneAPI),b(qe,1,"createFromImage",Ie,SceneAPI),b(qe,1,"createFromVideo",Me,SceneAPI),b(qe,1,"get",Fe,SceneAPI),b(qe,1,"applyTemplateFromString",Ae,SceneAPI),b(qe,1,"applyTemplateFromURL",Te,SceneAPI),b(qe,1,"getMode",xe,SceneAPI),b(qe,1,"setDesignUnit",Pe,SceneAPI),b(qe,1,"getDesignUnit",Se,SceneAPI),b(qe,1,"getLayout",Ce,SceneAPI),b(qe,1,"setLayout",Ee,SceneAPI),b(qe,1,"getPages",_e,SceneAPI),b(qe,1,"getCurrentPage",ke,SceneAPI),b(qe,1,"findNearestToViewPortCenterByType",we,SceneAPI),b(qe,1,"findNearestToViewPortCenterByKind",ve,SceneAPI),b(qe,1,"setZoomLevel",ye,SceneAPI),b(qe,1,"getZoomLevel",be,SceneAPI),b(qe,1,"zoomToBlock",me,SceneAPI),b(qe,1,"enableZoomAutoFit",ge,SceneAPI),b(qe,1,"disableZoomAutoFit",fe,SceneAPI),b(qe,1,"isZoomAutoFitEnabled",he,SceneAPI),b(qe,1,"setPlaying",pe,SceneAPI),g(qe,SceneAPI),(e=>{let t;var r;(r=t=e.ColorSpace||(e.ColorSpace={}))[r.sRGB=0]="sRGB",r[r.CMYK=1]="CMYK",r[r.SpotColor=2]="SpotColor",e.toColor=function(e){switch(e.colorSpace){case 0:return{r:e.components.x,g:e.components.y,b:e.components.z,a:e.components.w};case 2:return{name:e.spotColorName,tint:e.tint,externalReference:e.externalReference};case 1:return{c:e.components.x,m:e.components.y,y:e.components.z,k:e.components.w,tint:e.tint};default:throw new Error("Unknown color space!")}},e.fromColor=function(e){if(function(e){return"r"in e&&"a"in e&&void 0!==e.r&&void 0!==e.a}(e))return{colorSpace:0,components:{x:e.r,y:e.g,z:e.b,w:e.a},spotColorName:"",tint:1,externalReference:""};if(function(e){return"c"in e&&"m"in e&&"y"in e&&"k"in e&&void 0!==e.c&&void 0!==e.m&&void 0!==e.y&&void 0!==e.k}(e))return{colorSpace:1,components:{x:e.c,y:e.m,z:e.y,w:e.k},spotColorName:"",tint:e.tint,externalReference:""};if(function(e){return"name"in e&&void 0!==e.name}(e))return{colorSpace:2,components:{x:0,y:0,z:0,w:0},spotColorName:e.name,tint:e.tint,externalReference:e.externalReference};throw new Error("Unknown color space!")}})(ze||(ze={})),xa=[de],Pa=[de],Sa=[de],Ca=[de],Ea=[de],_a=[de],ka=[de],wa=[le({disabledInModes:["Playback"]})],va=[le({disabledInModes:["Playback"]})],ya=[de],ba=[de],ma=[de],ga=[le({disabledInModes:["Playback"]})],fa=[le({disabledInModes:["Playback"]})],ha=[le({disabledInModes:["Playback"]})],pa=[de],ua=[de],ca=[de],da=[de],la=[le({disabledInModes:["Playback"]})],sa=[de],aa=[de],ia=[le({disabledInModes:["Playback"]})],oa=[le({disabledInModes:["Playback"]})],na=[le({disabledInModes:["Playback"]})],ra=[le({disabledInModes:["Playback"]})],ta=[le({disabledInModes:["Playback"]})],ea=[le({disabledInModes:["Playback"]})],Ji=[le({disabledInModes:["Playback"]})],Zi=[de],Qi=[le({disabledInModes:["Playback"]})],Ki=[de],Yi=[le({disabledInModes:["Playback"]})],Xi=[de],ji=[le({disabledInModes:["Playback"]})],Gi=[de],zi=[le({disabledInModes:["Playback"]})],Vi=[de],Ni=[le({disabledInModes:["Playback"]})],Hi=[le({disabledInModes:["Playback"]})],Wi=[le({disabledInModes:["Playback"]})],qi=[le({disabledInModes:["Playback"]})],$i=[de],Ui=[de],Oi=[de],Li=[de],Ri=[de],Bi=[de],Di=[le({disabledInModes:["Playback"]})],Ii=[le({disabledInModes:["Playback"]})],Mi=[de],Fi=[de],Ai=[de],Ti=[de],xi=[le({disabledInModes:["Playback"]})],Pi=[de],Si=[le({disabledInModes:["Playback"]})],Ci=[le({disabledInModes:["Playback"]})],Ei=[de],_i=[de],ki=[le({disabledInModes:["Playback"]})],wi=[le({disabledInModes:["Playback"]})],vi=[le({disabledInModes:["Playback"]})],yi=[le({disabledInModes:["Playback"]})],bi=[de],mi=[de],gi=[de],fi=[de],hi=[de],pi=[de],ui=[le({disabledInModes:["Playback"]})],ci=[le({disabledInModes:["Playback"]})],di=[le({disabledInModes:["Playback"]})],li=[le({disabledInModes:["Playback"]})],si=[de],ai=[le({disabledInModes:["Playback"]})],ii=[de],oi=[de],ni=[le({disabledInModes:["Playback"]})],ri=[le({disabledInModes:["Playback"]})],ti=[le({disabledInModes:["Playback"]})],ei=[de],Jo=[de],Zo=[le({disabledInModes:["Playback"]})],Qo=[le({disabledInModes:["Playback"]})],Ko=[le({disabledInModes:["Playback"]})],Yo=[le({disabledInModes:["Playback"]})],Xo=[le({disabledInModes:["Playback"]})],jo=[le({disabledInModes:["Playback"]})],Go=[de],zo=[de],Vo=[le({disabledInModes:["Playback"]})],No=[de],Ho=[de],Wo=[de],qo=[de],$o=[de],Uo=[de],Oo=[le({disabledInModes:["Playback"]})],Lo=[le({disabledInModes:["Playback"]})],Ro=[le({disabledInModes:["Playback"]})],Bo=[le({disabledInModes:["Playback"]})],Do=[le({disabledInModes:["Playback"]})],Io=[de],Mo=[le({disabledInModes:["Playback"]})],Fo=[de],Ao=[le({disabledInModes:["Playback"]})],To=[de],xo=[le({disabledInModes:["Playback"]})],Po=[de],So=[le({disabledInModes:["Playback"]})],Co=[de],Eo=[le({disabledInModes:["Playback"]})],_o=[de],ko=[le({disabledInModes:["Playback"]})],wo=[de],vo=[le({disabledInModes:["Playback"]})],yo=[de],bo=[le({disabledInModes:["Playback"]})],mo=[le({disabledInModes:["Playback"]})],go=[de],fo=[le({disabledInModes:["Playback"]})],ho=[le({disabledInModes:["Playback"]})],po=[de],uo=[de],co=[de],lo=[de],so=[le({disabledInModes:["Playback"]})],ao=[de],io=[de],oo=[de],no=[de],ro=[de],to=[de],eo=[de],Jn=[le({disabledInModes:["Playback"]})],Zn=[le({disabledInModes:["Playback"]})],Qn=[le({disabledInModes:["Playback"]})],Kn=[le({disabledInModes:["Playback"]})],Yn=[le({disabledInModes:["Playback"]})],Xn=[le({disabledInModes:["Playback"]})],jn=[de],Gn=[de],zn=[de],Vn=[le({disabledInModes:["Playback"]})],Nn=[de],Hn=[de],Wn=[le({disabledInModes:["Playback"]})],qn=[de],$n=[le({disabledInModes:["Playback"]})],Un=[le({disabledInModes:["Playback"]})],On=[de],Ln=[de],Rn=[le({disabledInModes:["Playback"]})],Bn=[de],Dn=[le({disabledInModes:["Playback"]})],In=[de],Mn=[le()],Fn=[de],An=[de],Tn=[de],xn=[de],Pn=[le({disabledInModes:["Playback"]})],Sn=[de],Cn=[de],En=[le({disabledInModes:["Playback"]})],_n=[de],kn=[le({disabledInModes:["Playback"]})],wn=[de],vn=[le({disabledInModes:["Playback"]})],yn=[de],bn=[le({disabledInModes:["Playback"]})],mn=[de],gn=[le({disabledInModes:["Playback"]})],fn=[de],hn=[de],pn=[le({disabledInModes:["Playback"]})],un=[le({disabledInModes:["Playback"]})],cn=[de],dn=[le({disabledInModes:["Playback"]})],ln=[de],sn=[le({disabledInModes:["Playback"]})],an=[de],on=[le({disabledInModes:["Playback"]})],nn=[de],rn=[le({disabledInModes:["Playback"]})],tn=[de],en=[le({disabledInModes:["Playback"]})],Jr=[de],Zr=[de],Qr=[le({disabledInModes:["Playback"]})],Kr=[le({disabledInModes:["Playback"]})],Yr=[de],Xr=[le({disabledInModes:["Playback"]})],jr=[de],Gr=[le({disabledInModes:["Playback"]})],zr=[de],Vr=[le({disabledInModes:["Playback"]})],Nr=[de],Hr=[le({disabledInModes:["Playback"]})],Wr=[de],qr=[le({disabledInModes:["Playback"]})],$r=[de],Ur=[de],Or=[de],Lr=[de],Rr=[de],Br=[de],Dr=[le({disabledInModes:["Playback"]})],Ir=[de],Mr=[le({disabledInModes:["Playback"]})],Fr=[de],Ar=[le({disabledInModes:["Playback"]})],Tr=[de],xr=[le({disabledInModes:["Playback"]})],Pr=[le({disabledInModes:["Playback"]})],Sr=[de],Cr=[le({disabledInModes:["Playback"]})],Er=[le({disabledInModes:["Playback"]})],_r=[de],kr=[de],wr=[de],vr=[de],yr=[le({disabledInModes:["Playback"]})],br=[le({disabledInModes:["Playback"]})],mr=[le({disabledInModes:["Playback"]})],gr=[de],fr=[le({disabledInModes:["Playback"]})],hr=[le({disabledInModes:["Playback"]})],pr=[le({disabledInModes:["Playback"]})],ur=[le({disabledInModes:["Playback"]})],cr=[de],dr=[le({disabledInModes:["Playback"]})],lr=[de],sr=[de],ar=[le({disabledInModes:["Playback"]})],ir=[de],or=[le({disabledInModes:["Playback"]})],nr=[de],rr=[le({disabledInModes:["Playback"]})],tr=[de],er=[le({disabledInModes:["Playback"]})],Jt=[de],Zt=[le({disabledInModes:["Playback"]})],Qt=[de],Kt=[le({disabledInModes:["Playback"]})],Yt=[le({disabledInModes:["Playback"]})],Xt=[de],jt=[de],Gt=[le({disabledInModes:["Playback"]})],zt=[le({disabledInModes:["Playback"]})],Vt=[de],Nt=[le({disabledInModes:["Playback"]})],Ht=[de],Wt=[le({disabledInModes:["Playback"]})],qt=[de],$t=[de],Ut=[le({disabledInModes:["Playback"]})],Ot=[de],Lt=[le({disabledInModes:["Playback"]})],Rt=[de],Bt=[le({disabledInModes:["Playback"]})],Dt=[de],It=[le({disabledInModes:["Playback"]})],Mt=[de],Ft=[le()],At=[de],Tt=[le()],xt=[le({disabledInModes:["Playback"]})],Pt=[de],St=[le({disabledInModes:["Playback"]})],Ct=[de],Et=[le()],_t=[de],kt=[le({disabledInModes:["Playback"]})],wt=[le({disabledInModes:["Playback"]})],vt=[de],yt=[le({disabledInModes:["Playback"]})],bt=[de],mt=[le({disabledInModes:["Playback"]})],gt=[de],ft=[le({disabledInModes:["Playback"]})],ht=[le({disabledInModes:["Playback"]})],pt=[le({disabledInModes:["Playback"]})],ut=[le({disabledInModes:["Playback"]})],ct=[le({disabledInModes:["Playback"]})],dt=[le({disabledInModes:["Playback"]})],lt=[le({disabledInModes:["Playback"]})],st=[de],at=[de],it=[de],ot=[de],nt=[le({disabledInModes:["Playback"]})],rt=[le({disabledInModes:["Playback"]})],tt=[le({disabledInModes:["Playback"]})],et=[de],Je=[le({disabledInModes:["Playback"]})],Ze=[de],Qe=[de],Ke=[de],Ye=[de],Xe=[le({disabledInModes:["Playback"]})],je=[le({disabledInModes:["Playback"]})],Ge=[de];var BlockAPI=class{constructor(e){m(Fa,5,this),_(this,Ma),_(this,Ta),_(this,Aa),y(this,"onSelectionChanged",(e=>{const t=k(this,Ta).subscribeToSelectionChange(e);return()=>{k(this,Ta).isDeleted()||ce(k(this,Ta).unsubscribe(t))}})),y(this,"onClicked",(e=>{const t=k(this,Ta).subscribeToBlockClicked(e);return()=>{k(this,Ta).isDeleted()||ce(k(this,Ta).unsubscribe(t))}})),y(this,"onStateChanged",((e,t)=>{Y("ids",e,L(U()));const r=k(this,Ta).subscribeToBlockState(e,(e=>{try{t(Ve(e,!0))}catch(e){console.error(e)}}));return()=>{k(this,Ta).isDeleted()||ce(k(this,Ta).unsubscribe(r))}})),E(this,Ta,e),E(this,Aa,new SceneAPI(e,!0))}async export(e,t,r){Y("handle",e,$());try{Y("options",t,W(q({mimeType:W(V([K(),Z()])),pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),allowTextOverhang:W(O()),abortSignal:W(te())})))}catch(e){try{Y("mimeType",t,W(V([K(),Z()]))),Y("options",r,W(q({pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),allowTextOverhang:W(O()),abortSignal:W(te())})))}catch(t){throw new Error(`Invalid arguments.\nIf your're using the deprecated signature:\ncesdk.engine.block.export(handle, mimeType, options)\n${t.message}\nIf you're using the new signature:\ncesdk.engine.block.export(handle, options)\n${e.message}`)}}const n="object"==typeof t?t:{mimeType:t,...r},o=n.mimeType??"image/png",i=null!=n.targetWidth&&null!=n.targetHeight,a=n.jpegQuality??.9,s=n.webpQuality??1,l=n.pngCompressionLevel??5;return new Promise(((t,r)=>{n.abortSignal?.addEventListener("abort",(()=>{r(new Error("AbortSignal received"))})),k(this,Ta).exportToBuffer(e,o,(e=>{"error"in e?r(e.error):t(new Blob([e],{type:o}))}),{pngCompressionLevel:l,jpegQuality:a,webpQuality:s,useTargetSize:i,targetWidth:n.targetWidth??0,targetHeight:n.targetHeight??0,exportPdfWithHighCompatibility:n.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:n.exportPdfWithUnderlayer??!1,underlayerSpotColorName:n.underlayerSpotColorName??"",underlayerOffset:n.underlayerOffset??0,allowTextOverhang:n.allowTextOverhang??!1})}))}async exportWithColorMask(e,t,r,n,o,i){Y("handle",e,$());try{Y("maskColorR",t,$()),Y("maskColorG",r,$()),Y("maskColorB",n,$()),Y("options",i,W(q({mimeType:W(V([K(),Z()])),pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),abortSignal:W(te())})))}catch(e){try{Y("mimeType",t,W(V([K(),Z()]))),Y("maskColorR",r,$()),Y("maskColorG",n,$()),Y("maskColorB",o,$()),Y("options",i,W(q({pngCompressionLevel:W(G(z(U(),9),0)),jpegQuality:W(G(z($(),1),0,{exclusive:!0})),webpQuality:W(G(z($(),1),0,{exclusive:!0})),targetWidth:W($()),targetHeight:W($()),exportPdfWithHighCompatibility:W(O()),exportPdfWithUnderlayer:W(O()),underlayerSpotColorName:W(H()),underlayerOffset:W($()),abortSignal:W(te())})))}catch(t){throw new Error(`Invalid arguments.\nIf your're using the deprecated signature:\ncesdk.engine.block.exportWithColorMask(handle, mimeType, maskColorR, maskColorG, maskColorB, options)\n${t.message}\nIf you're using the new signature:\ncesdk.engine.block.exportWithColorMask(handle, maskColorR, maskColorG, maskColorB, options)\n${e.message}`)}}let a,s,l,d;"number"==typeof t?(a=t,s=r,l=n,d=o??{}):(a=r,s=n,l=o,d={mimeType:t,...i});const c=d.mimeType??"image/png",u=null!=d.targetWidth&&null!=d.targetHeight,p=d.jpegQuality??.9,h=d.webpQuality??1,f=d.pngCompressionLevel??5;return new Promise(((t,r)=>{d.abortSignal?.addEventListener("abort",(()=>{r(new Error("AbortSignal received"))})),k(this,Ta).exportWithColorMaskToBuffer(e,c,a,s,l,((e,n)=>{if("error"in e)r(e.error);else if("error"in n)r(n.error);else{const r=new Blob([e],{type:c}),o=new Blob([n],{type:c});t([r,o])}}),{pngCompressionLevel:f,jpegQuality:p,webpQuality:h,useTargetSize:u,targetWidth:d.targetWidth??0,targetHeight:d.targetHeight??0,exportPdfWithHighCompatibility:d.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:d.exportPdfWithUnderlayer??!1,underlayerSpotColorName:d.underlayerSpotColorName??"",underlayerOffset:d.underlayerOffset??0,allowTextOverhang:d.allowTextOverhang??!1})}))}async exportVideo(e,t,r,n){throw new Error("Method not implemented. An implementation is available on the BlockAPI at engine.block or cesdk.engine.block")}async exportAudio(e,t={}){return Y("handle",e,$()),Y("options",t,q({mimeType:W(Q()),onProgress:W(R("func",(e=>"function"==typeof e||"Expected a function, but received: "+A(e)))),timeOffset:W($()),duration:W($()),sampleRate:W($()),numberOfChannels:W($())})),new Promise(((r,n)=>{k(this,Ta).exportAudioToBuffer(e,t.timeOffset??0,t.duration??0,t.mimeType??"audio/wav",t.onProgress??(()=>{}),(e=>{"error"in e?n(e.error):r(new Blob([e],{type:t.mimeType??"audio/wav"}))}),{sampleRate:t.sampleRate??48e3,numberOfChannels:t.numberOfChannels??2,skipEncoding:t.skipEncoding??!1})}))}async loadFromString(e){return Y("content",e,H()),ue((t=>k(this,Ta).loadBlocksFromString(e,t))).then((e=>Ve(e)))}loadFromArchiveURL(e){return Y("url",e,H()),ue((t=>k(this,Ta).loadBlocksFromArchiveURL(e,t))).then((e=>Ve(e)))}async saveToString(e,t=["buffer","http","https"],r){return Y("blocks",e,L($())),ue((n=>k(this,Ta).saveBlocksToString(e,n,t,r?async(e,t,n)=>{const o=await r(e,t);n&&n.invoke(e,o)}:void 0)))}async saveToArchive(e){return Y("blocks",e,L($())),new Promise(((t,r)=>{k(this,Ta).saveBlocksToArchive(e,(e=>{"error"in e?r(e.error):t(new Blob([e],{type:"application/zip"}))}))}))}create(e){return Y("type",e,H()),ce(k(this,Ta).create(e))}createFill(e){return Y("type",e,H()),ce(k(this,Ta).createFill(e))}getAudioTrackCountFromVideo(e){return Y("videoFillBlock",e,U()),ce(k(this,Ta).getAudioTrackCountFromVideo(e))}createAudioFromVideo(e,t,r={}){return Y("videoFillBlock",e,U()),Y("trackIndex",t,$()),Y("options",r,q({keepTrimSettings:W(O()),muteOriginalVideo:W(O())})),ce(k(this,Ta).createAudioFromVideo(e,t,{keepTrimSettings:r.keepTrimSettings??!0,muteOriginalVideo:r.muteOriginalVideo??!0}))}createAudiosFromVideo(e,t={}){return Y("videoFillBlock",e,U()),Y("options",t,q({keepTrimSettings:W(O()),muteOriginalVideo:W(O())})),Ve(ce(k(this,Ta).createAudiosFromVideo(e,{keepTrimSettings:t.keepTrimSettings??!0,muteOriginalVideo:t.muteOriginalVideo??!0})))}getAudioInfoFromVideo(e){return Y("videoFillBlock",e,U()),Ve(ce(k(this,Ta).getAudioInfoFromVideo(e)))}async createCaptionsFromURI(e){return Y("uri",e,H()),ue((t=>k(this,Ta).createCaptionsFromURI(e,t))).then((e=>Ve(e)))}getType(e){return Y("id",e,U()),ce(k(this,Ta).getType(e))}getKind(e){return Y("id",e,U()),ce(k(this,Ta).getKind(e))}setKind(e,t){Y("id",e,U()),ce(k(this,Ta).setKind(e,t))}select(e){return Y("id",e,U()),ce(k(this,Ta).select(e))}setSelected(e,t){return Y("id",e,U()),Y("selected",t,O()),ce(k(this,Ta).setSelected(e,t))}isSelected(e){return Y("id",e,U()),ce(k(this,Ta).isSelected(e))}findAllSelected(){return Ve(k(this,Ta).findAllSelected())}isGroupable(e){return Y("ids",e,L($())),ce(k(this,Ta).isGroupable(e))}group(e){return Y("ids",e,j(L($()))),ce(k(this,Ta).group(e))}ungroup(e){return Y("id",e,$()),ce(k(this,Ta).ungroup(e))}enterGroup(e){return Y("id",e,$()),ce(k(this,Ta).enterGroup(e))}exitGroup(e){return Y("id",e,$()),ce(k(this,Ta).exitGroup(e))}isCombinable(e){return Y("ids",e,L($())),ce(k(this,Ta).isCombinable(e))}combine(e,t){return Y("ids",e,L($())),Y("op",t,H()),ce(k(this,Ta).combine(e,t))}setName(e,t){return Y("id",e,U()),Y("name",t,H()),ce(k(this,Ta).setName(e,t))}getName(e){return Y("id",e,U()),ce(k(this,Ta).getName(e))}getUUID(e){return Y("id",e,U()),ce(k(this,Ta).getUUID(e))}findByName(e){Y("name",e,H());const t=k(this,Ta).findByName(e);return Ve(t)}findByType(e){Y("type",e,H());const t=ce(k(this,Ta).findByType(e));return Ve(t)}findByKind(e){Y("kind",e,H());const t=ce(k(this,Ta).findByKind(e));return Ve(t)}findAll(){return Ve(k(this,Ta).findAll())}findAllPlaceholders(){return Ve(k(this,Ta).findAllPlaceholders())}createShape(e){return Y("type",e,H()),ce(k(this,Ta).createShape(e))}hasShape(e){return Y("id",e,U()),ce(k(this,Ta).hasShape(e))}supportsShape(e){return Y("id",e,U()),ce(k(this,Ta).supportsShape(e))}getShape(e){return Y("id",e,U()),ce(k(this,Ta).getShape(e))}setShape(e,t){return Y("id",e,U()),Y("shape",t,U()),ce(k(this,Ta).setShape(e,t))}isVisible(e){return Y("id",e,U()),ce(k(this,Ta).isVisible(e))}setVisible(e,t){return Y("id",e,U()),Y("visible",t,O()),ce(k(this,Ta).setVisible(e,t))}isClipped(e){return Y("id",e,U()),ce(k(this,Ta).isClipped(e))}setClipped(e,t){return Y("id",e,U()),Y("clipped",t,O()),ce(k(this,Ta).setClipped(e,t))}isTransformLocked(e){return Y("id",e,U()),ce(k(this,Ta).isTransformLocked(e))}setTransformLocked(e,t){return Y("id",e,U()),Y("locked",t,O()),ce(k(this,Ta).setTransformLocked(e,t))}getPositionX(e){return Y("id",e,U()),ce(k(this,Ta).getPositionX(e))}getPositionXMode(e){return Y("id",e,U()),ce(k(this,Ta).getPositionXMode(e))}getPositionY(e){return Y("id",e,U()),ce(k(this,Ta).getPositionY(e))}getPositionYMode(e){return Y("id",e,U()),ce(k(this,Ta).getPositionYMode(e))}setPositionX(e,t){return Y("id",e,U()),Y("value",t,$()),ce(k(this,Ta).setPositionX(e,t))}setPositionXMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setPositionXMode(e,t))}setPositionY(e,t){return Y("id",e,U()),Y("value",t,$()),ce(k(this,Ta).setPositionY(e,t))}setPositionYMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setPositionYMode(e,t))}setAlwaysOnTop(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setAlwaysOnTop(e,t))}setAlwaysOnBottom(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setAlwaysOnBottom(e,t))}isAlwaysOnTop(e){return Y("id",e,U()),ce(k(this,Ta).isAlwaysOnTop(e))}isAlwaysOnBottom(e){return Y("id",e,U()),ce(k(this,Ta).isAlwaysOnBottom(e))}bringToFront(e){return Y("id",e,$()),ce(k(this,Ta).bringToFront(e))}sendToBack(e){return Y("id",e,$()),ce(k(this,Ta).sendToBack(e))}bringForward(e){return Y("id",e,$()),ce(k(this,Ta).bringForward(e))}sendBackward(e){return Y("id",e,$()),ce(k(this,Ta).sendBackward(e))}getRotation(e){return Y("id",e,U()),ce(k(this,Ta).getRotation(e))}setRotation(e,t){return Y("id",e,U()),Y("radians",t,$()),ce(k(this,Ta).setRotation(e,t))}getFlipHorizontal(e){return Y("id",e,U()),ce(k(this,Ta).getFlip(e)).horizontal}getFlipVertical(e){return Y("id",e,U()),ce(k(this,Ta).getFlip(e)).vertical}setFlipHorizontal(e,t){return Y("id",e,U()),Y("flip",t,O()),ce(k(this,Ta).setFlipHorizontal(e,t))}setFlipVertical(e,t){return Y("id",e,U()),Y("flip",t,O()),ce(k(this,Ta).setFlipVertical(e,t))}hasContentFillMode(e){return Y("id",e,U()),ce(k(this,Ta).hasContentFillMode(e))}supportsContentFillMode(e){return Y("id",e,U()),ce(k(this,Ta).supportsContentFillMode(e))}getWidth(e){return Y("id",e,U()),ce(k(this,Ta).getWidth(e))}getWidthMode(e){return Y("id",e,U()),ce(k(this,Ta).getWidthMode(e))}getHeight(e){return Y("id",e,U()),ce(k(this,Ta).getHeight(e))}getHeightMode(e){return Y("id",e,U()),ce(k(this,Ta).getHeightMode(e))}setSize(e,t,r,n){return Y("id",e,U()),Y("width",t,$()),Y("height",r,$()),Y("options",n,W(q({maintainCrop:W(O()),sizeMode:W(re())}))),null!=n?.sizeMode&&(ce(k(this,Ta).setWidthMode(e,n.sizeMode)),ce(k(this,Ta).setHeightMode(e,n.sizeMode))),ce(k(this,Ta).setWidth(e,t,n?.maintainCrop??!1)),ce(k(this,Ta).setHeight(e,r,n?.maintainCrop??!1))}setPosition(e,t,r,n){return Y("id",e,U()),Y("x",t,$()),Y("y",r,$()),null!=n?.positionMode&&(ce(k(this,Ta).setPositionXMode(e,n.positionMode)),ce(k(this,Ta).setPositionYMode(e,n.positionMode))),ce(k(this,Ta).setPositionX(e,t)),ce(k(this,Ta).setPositionY(e,r))}setWidth(e,t,r){return Y("id",e,U()),Y("value",t,$()),Y("maintainCrop",r??!1,O()),ce(k(this,Ta).setWidth(e,t,r??!1))}setWidthMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setWidthMode(e,t))}setHeight(e,t,r){return Y("id",e,U()),Y("value",t,$()),Y("maintainCrop",r??!1,O()),ce(k(this,Ta).setHeight(e,t,r??!1))}setHeightMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setHeightMode(e,t))}getFrameX(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameX(e))}getFrameY(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameY(e))}getFrameWidth(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameWidth(e))}getFrameHeight(e){return Y("id",e,U()),ce(k(this,Ta).getLastFrameHeight(e))}setContentFillMode(e,t){return Y("id",e,U()),ce(k(this,Ta).setContentFillMode(e,t))}getContentFillMode(e){return Y("id",e,U()),ce(k(this,Ta).getContentFillMode(e))}duplicate(e,t=!0){return Y("id",e,U()),ce(k(this,Ta).duplicate(e,t))}destroy(e){return Y("id",e,U()),ce(k(this,Ta).destroy(e))}isValid(e){return Y("id",e,U()),k(this,Ta).isValid(e)}getParent(e){return Y("id",e,U()),ce(k(this,Ta).hasParent(e))?ce(k(this,Ta).getParent(e)):null}getChildren(e){Y("id",e,U());const t=ce(k(this,Ta).getChildren(e));return Ve(t)}insertChild(e,t,r){return Y("parent",e,$()),Y("child",t,$()),Y("index",r,G($(),0)),ce(k(this,Ta).insertChild(e,t,r))}appendChild(e,t){return Y("parent",e,$()),Y("child",t,$()),ce(k(this,Ta).appendChild(e,t))}referencesAnyVariables(e){return Y("id",e,U()),ce(k(this,Ta).referencesAnyVariables(e))}getGlobalBoundingBoxX(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxX(e))}getGlobalBoundingBoxY(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxY(e))}getGlobalBoundingBoxWidth(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxWidth(e))}getGlobalBoundingBoxHeight(e){return Y("id",e,U()),ce(k(this,Ta).getGlobalBoundingBoxHeight(e))}getScreenSpaceBoundingBoxXYWH(e){return Y("ids",e,L($())),ce(k(this,Ta).getScreenSpaceBoundingBoxXYWH(e))}alignHorizontally(e,t){return Y("ids",e,j(L($()))),ce(k(this,Ta).alignHorizontally(e,t))}alignVertically(e,t){return Y("ids",e,j(L($()))),ce(k(this,Ta).alignVertically(e,t))}isAlignable(e){return Y("ids",e,L($())),ce(k(this,Ta).isAlignable(e))}distributeHorizontally(e){return Y("ids",e,j(L($()))),ce(k(this,Ta).distributeHorizontally(e))}distributeVertically(e){return Y("ids",e,j(L($()))),ce(k(this,Ta).distributeVertically(e))}isDistributable(e){return Y("ids",e,L($())),ce(k(this,Ta).isDistributable(e))}fillParent(e){return Y("id",e,U()),ce(k(this,Ta).fillParent(e))}resizeContentAware(e,t,r){return Y("ids",e,L($())),Y("width",t,$()),Y("height",r,$()),ce(k(this,Ta).resizeContentAware(e,t,r))}scale(e,t,r=0,n=0){return Y("id",e,U()),ce(k(this,Ta).scale(e,t,r,n))}findAllProperties(e){return Y("id",e,U()),Ve(ce(k(this,Ta).findAllProperties(e)))}isPropertyReadable(e){return Y("property",e,H()),k(this,Ta).isPropertyReadable(e)}isPropertyWritable(e){return Y("property",e,H()),k(this,Ta).isPropertyWritable(e)}getPropertyType(e){Y("property",e,H());return ce(k(this,Ta).getPropertyType(e))}getEnumValues(e){return Y("enumProperty",e,H()),Ve(ce(k(this,Ta).getEnumValues(e)))}setBool(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,O()),ce(k(this,Ta).setBool(e,t,r))}getBool(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getBool(e,t))}setInt(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,U()),ce(k(this,Ta).setInt(e,t,r))}getInt(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getInt(e,t))}setFloat(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,$()),ce(k(this,Ta).setFloat(e,t,r))}getFloat(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getFloat(e,t))}setDouble(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,$()),ce(k(this,Ta).setDouble(e,t,r))}getDouble(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getDouble(e,t))}setString(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,H()),ce(k(this,Ta).setString(e,t,r))}getString(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getString(e,t))}setColor(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,ie()),ce(k(this,Ta).setColor(e,t,ze.fromColor(r)))}getColor(e,t){return Y("id",e,U()),Y("property",t,H()),ze.toColor(ce(k(this,Ta).getColor(e,t)))}setColorRGBA(e,t,r,n,o,i=1){return Y("id",e,U()),Y("property",t,H()),Y("r",r,$()),Y("g",n,$()),Y("b",o,$()),Y("a",i,$()),ce(k(this,Ta).setColorRGBA(e,t,r,n,o,i))}getColorRGBA(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getColorRGBA(e,t))}setColorSpot(e,t,r,n=1){return Y("id",e,U()),Y("property",t,H()),Y("name",r,H()),Y("tint",n,$()),ce(k(this,Ta).setColorSpot(e,t,r,n))}getColorSpotName(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getColorSpotName(e,t))}getColorSpotTint(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getColorSpotTint(e,t))}setGradientColorStops(e,t,r){Y("id",e,U()),Y("property",t,H());const n=r.map((e=>({color:ze.fromColor(e.color),stop:e.stop})));return ce(k(this,Ta).setGradientColorStops(e,t,n))}getGradientColorStops(e,t){Y("id",e,U()),Y("property",t,H());const r=ce(k(this,Ta).getGradientColorStops(e,t));return Ve(r).map((e=>({color:ze.toColor(e.color),stop:e.stop})))}getSourceSet(e,t){return Y("id",e,U()),Y("property",t,H()),Ve(ce(k(this,Ta).getSourceSet(e,t)))}setSourceSet(e,t,r){Y("id",e,U()),Y("property",t,H()),Y("sourceSet",r,L(q({uri:H(),width:$(),height:$()}))),ce(k(this,Ta).setSourceSet(e,t,r))}addImageFileURIToSourceSet(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("uri",r,H()),ue((n=>k(this,Ta).addImageFileURIToSourceSet(e,t,r,n)))}addVideoFileURIToSourceSet(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("uri",r,H()),ue((n=>k(this,Ta).addVideoFileURIToSourceSet(e,t,r,n)))}setEnum(e,t,r){return Y("id",e,U()),Y("property",t,H()),Y("value",r,H()),ce(k(this,Ta).setEnum(e,t,r))}getEnum(e,t){return Y("id",e,U()),Y("property",t,H()),ce(k(this,Ta).getEnum(e,t))}hasCrop(e){return Y("id",e,U()),ce(k(this,Ta).hasCrop(e))}supportsCrop(e){return Y("id",e,U()),ce(k(this,Ta).supportsCrop(e))}setCropScaleX(e,t){return Y("id",e,U()),Y("scaleX",t,$()),ce(k(this,Ta).setCropScaleX(e,t))}setCropScaleY(e,t){return Y("id",e,U()),Y("scaleY",t,$()),ce(k(this,Ta).setCropScaleY(e,t))}setCropRotation(e,t){return Y("id",e,U()),Y("rotation",t,$()),ce(k(this,Ta).setCropRotation(e,t))}setCropScaleRatio(e,t){return Y("id",e,U()),Y("scaleRatio",t,$()),ce(k(this,Ta).setCropScaleRatio(e,t))}setCropTranslationX(e,t){return Y("id",e,U()),Y("translationX",t,$()),ce(k(this,Ta).setCropTranslationX(e,t))}setCropTranslationY(e,t){return Y("id",e,U()),Y("translationY",t,$()),ce(k(this,Ta).setCropTranslationY(e,t))}resetCrop(e){return Y("id",e,U()),ce(k(this,Ta).resetCrop(e))}getCropScaleX(e){return Y("id",e,U()),ce(k(this,Ta).getCropScaleX(e))}getCropScaleY(e){return Y("id",e,U()),ce(k(this,Ta).getCropScaleY(e))}getCropRotation(e){return Y("id",e,U()),ce(k(this,Ta).getCropRotation(e))}getCropScaleRatio(e){return Y("id",e,U()),ce(k(this,Ta).getCropScaleRatio(e))}getCropTranslationX(e){return Y("id",e,U()),ce(k(this,Ta).getCropTranslationX(e))}getCropTranslationY(e){return Y("id",e,U()),ce(k(this,Ta).getCropTranslationY(e))}adjustCropToFillFrame(e,t){return Y("id",e,U()),Y("minScaleRatio",t,$()),ce(k(this,Ta).adjustCropToFillFrame(e,t))}flipCropHorizontal(e){return Y("id",e,U()),ce(k(this,Ta).flipCropHorizontal(e))}flipCropVertical(e){return Y("id",e,U()),ce(k(this,Ta).flipCropVertical(e))}isCropAspectRatioLocked(e){return Y("id",e,U()),ce(k(this,Ta).isCropAspectRatioLocked(e))}setCropAspectRatioLocked(e,t){Y("id",e,U()),Y("locked",t,O()),ce(k(this,Ta).setCropAspectRatioLocked(e,t))}hasOpacity(e){return Y("id",e,U()),ce(k(this,Ta).hasOpacity(e))}supportsOpacity(e){return Y("id",e,U()),ce(k(this,Ta).supportsOpacity(e))}setOpacity(e,t){return Y("id",e,U()),Y("opacity",t,$()),ce(k(this,Ta).setOpacity(e,t))}getOpacity(e){return Y("id",e,U()),ce(k(this,Ta).getOpacity(e))}hasBlendMode(e){return Y("id",e,U()),ce(k(this,Ta).hasBlendMode(e))}supportsBlendMode(e){return Y("id",e,U()),ce(k(this,Ta).supportsBlendMode(e))}setBlendMode(e,t){return Y("id",e,U()),Y("blendMode",t,H()),ce(k(this,Ta).setBlendMode(e,t))}getBlendMode(e){return Y("id",e,U()),ce(k(this,Ta).getBlendMode(e))}hasFillColor(e){return Y("id",e,U()),ce(k(this,Ta).hasFillColor(e))}isIncludedInExport(e){return Y("id",e,U()),ce(k(this,Ta).isIncludedInExport(e))}setIncludedInExport(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setIncludedInExport(e,t))}setFillColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setFillColorRGBA(e,t,r,n,o))}getFillColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getFillColorRGBA(e))}setFillColorEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setFillColorEnabled(e,t))}isFillColorEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isFillColorEnabled(e))}createEffect(e){return Y("type",e,H()),ce(k(this,Ta).createEffect(e))}hasEffects(e){return Y("id",e,U()),ce(k(this,Ta).hasEffects(e))}supportsEffects(e){return Y("id",e,U()),ce(k(this,Ta).supportsEffects(e))}getEffects(e){Y("id",e,U());const t=ce(k(this,Ta).getEffects(e));return Ve(t)}insertEffect(e,t,r){Y("id",e,U()),Y("effectId",t,U()),Y("index",r,G(U(),0)),ce(k(this,Ta).insertEffect(e,t,r))}appendEffect(e,t){Y("id",e,U()),Y("effectId",t,U()),ce(k(this,Ta).appendEffect(e,t))}removeEffect(e,t){Y("id",e,U()),Y("index",t,G(U(),0)),ce(k(this,Ta).removeEffect(e,t))}hasEffectEnabled(e){return Y("effectId",e,U()),ce(k(this,Ta).hasEffectEnabled(e))}setEffectEnabled(e,t){Y("effectId",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setEffectEnabled(e,t))}isEffectEnabled(e){return Y("effectId",e,U()),ce(k(this,Ta).isEffectEnabled(e))}createBlur(e){return Y("type",e,H()),ce(k(this,Ta).createBlur(e))}hasBlur(e){return Y("id",e,U()),ce(k(this,Ta).hasBlur(e))}supportsBlur(e){return Y("id",e,U()),ce(k(this,Ta).supportsBlur(e))}setBlur(e,t){Y("id",e,U()),Y("blurId",t,U()),ce(k(this,Ta).setBlur(e,t))}getBlur(e){return Y("id",e,U()),ce(k(this,Ta).getBlur(e))}setBlurEnabled(e,t){Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setBlurEnabled(e,t))}isBlurEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isBlurEnabled(e))}hasBackgroundColor(e){return Y("id",e,U()),ce(k(this,Ta).hasBackgroundColor(e))}supportsBackgroundColor(e){return Y("id",e,U()),ce(k(this,Ta).supportsBackgroundColor(e))}setBackgroundColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setBackgroundColorRGBA(e,t,r,n,o))}getBackgroundColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getBackgroundColorRGBA(e))}setBackgroundColorEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setBackgroundColorEnabled(e,t))}isBackgroundColorEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isBackgroundColorEnabled(e))}hasStroke(e){return Y("id",e,U()),ce(k(this,Ta).hasStroke(e))}supportsStroke(e){return Y("id",e,U()),ce(k(this,Ta).supportsStroke(e))}setStrokeEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setStrokeEnabled(e,t))}isStrokeEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isStrokeEnabled(e))}setStrokeColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setStrokeColorRGBA(e,t,r,n,o))}setStrokeColor(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokeColor(e,ze.fromColor(t)))}getStrokeColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getStrokeColorRGBA(e))}getStrokeColor(e){return Y("id",e,U()),ze.toColor(ce(k(this,Ta).getStrokeColor(e)))}setStrokeWidth(e,t){return Y("id",e,U()),Y("width",t,$()),ce(k(this,Ta).setStrokeWidth(e,t))}getStrokeWidth(e){return Y("id",e,U()),ce(k(this,Ta).getStrokeWidth(e))}setStrokeStyle(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokeStyle(e,t))}getStrokeStyle(e){Y("id",e,U());return ce(k(this,Ta).getStrokeStyle(e))}setStrokePosition(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokePosition(e,t))}getStrokePosition(e){Y("id",e,U());return ce(k(this,Ta).getStrokePosition(e))}setStrokeCornerGeometry(e,t){return Y("id",e,U()),ce(k(this,Ta).setStrokeCornerGeometry(e,t))}getStrokeCornerGeometry(e){Y("id",e,U());return ce(k(this,Ta).getStrokeCornerGeometry(e))}hasDropShadow(e){return Y("id",e,U()),ce(k(this,Ta).hasDropShadow(e))}supportsDropShadow(e){return Y("id",e,U()),ce(k(this,Ta).supportsDropShadow(e))}setDropShadowEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setDropShadowEnabled(e,t))}isDropShadowEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isDropShadowEnabled(e))}setDropShadowColorRGBA(e,t,r,n,o=1){return Y("id",e,U()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Ta).setDropShadowColorRGBA(e,t,r,n,o))}setDropShadowColor(e,t){return Y("id",e,U()),Y("color",t,ie()),ce(k(this,Ta).setDropShadowColor(e,ze.fromColor(t)))}getDropShadowColorRGBA(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowColorRGBA(e))}getDropShadowColor(e){return Y("id",e,U()),ze.toColor(ce(k(this,Ta).getDropShadowColor(e)))}setDropShadowOffsetX(e,t){return Y("id",e,U()),Y("offsetX",t,$()),ce(k(this,Ta).setDropShadowOffsetX(e,t))}getDropShadowOffsetX(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowOffsetX(e))}setDropShadowOffsetY(e,t){return Y("id",e,U()),Y("offsetY",t,$()),ce(k(this,Ta).setDropShadowOffsetY(e,t))}getDropShadowOffsetY(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowOffsetY(e))}setDropShadowBlurRadiusX(e,t){return Y("id",e,U()),Y("blurRadiusX",t,$()),ce(k(this,Ta).setDropShadowBlurRadiusX(e,t))}getDropShadowBlurRadiusX(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowBlurRadiusX(e))}setDropShadowBlurRadiusY(e,t){return Y("id",e,U()),Y("blurRadiusY",t,$()),ce(k(this,Ta).setDropShadowBlurRadiusY(e,t))}getDropShadowBlurRadiusY(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowBlurRadiusY(e))}setDropShadowClip(e,t){return Y("id",e,U()),ce(k(this,Ta).setDropShadowClip(e,t))}getDropShadowClip(e){return Y("id",e,U()),ce(k(this,Ta).getDropShadowClip(e))}createCutoutFromBlocks(e,t=2,r=4,n=!0){return Y("ids",e,L(U())),Y("vectorizeDistanceThreshold",t,$()),Y("maxSmoothingDistance",r,$()),Y("useExistingShapeInformation",n,O()),ce(k(this,Ta).createCutoutFromBlocks(e,t,r,n))}createCutoutFromPath(e){return Y("path",e,H()),ce(k(this,Ta).createCutoutFromPath(e))}createCutoutFromOperation(e,t){return Y("ids",e,L(U())),Y("op",t,function(){const e=["Difference","Intersection","Union","XOR"];return R("CutoutOperation",(t=>!("string"!=typeof t||!e.includes(t))||{message:`expected one of ${e.map((e=>`"${e}"`)).join(", ")}, but got "${t}"`}))}()),ce(k(this,Ta).createCutoutFromOperation(e,t))}replaceText(e,t,r=-1,n=-1){Y("id",e,U()),Y("text",t,H()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).replaceText(e,t,r,n))}removeText(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).removeText(e,t,r))}setTextColor(e,t,r=-1,n=-1){Y("id",e,U()),Y("color",t,ie()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextColor(e,ze.fromColor(t),r,n))}getTextColors(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U());const n=k(this,Ta).getTextColors(e,t,r);return Ve(ce(n)).map((e=>ze.toColor(e)))}setTextFontWeight(e,t,r=-1,n=-1){Y("id",e,U()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextFontWeight(e,t,r,n))}getTextFontWeights(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextFontWeights(e,t,r)))}setTextFontSize(e,t,r,n=-1){if(Y("id",e,U()),Y("fontSize",t,$()),"object"==typeof r&&null!==r){Y("options",r,W(q({unit:W(H()),from:W(U()),to:W(U())})));const{unit:n="Point",from:o=-1,to:i=-1}=r;let a=t;if("Point"!==n){const e=k(this,Aa).get();if(null==e)throw new Error("No scene found for unit conversion");a=function(e,t,r){switch(t){case"Point":default:return e;case"Pixel":return 72*e/r;case"Millimeter":return 72*e/25.4;case"Inch":return 72*e}}(t,n,this.getFloat(e,"scene/dpi"))}ce(k(this,Ta).setTextFontSize(e,a,o,i))}else{const o=r??-1;Y("from",o,U()),Y("to",n,U()),ce(k(this,Ta).setTextFontSize(e,t,o,n))}}getTextFontSizes(e,t=-1,r=-1){if(Y("id",e,U()),"object"==typeof t){Y("options",t,W(q({unit:W(H()),from:W(U()),to:W(U())})));const{unit:r="Point",from:n=-1,to:o=-1}=t,i=Ve(ce(k(this,Ta).getTextFontSizes(e,n,o)));if("Point"===r)return i;{const e=k(this,Aa).get();if(null==e)throw new Error("No scene found for unit conversion");const t=this.getFloat(e,"scene/dpi");return i.map((e=>function(e,t,r){switch(t){case"Point":default:return e;case"Pixel":return e*r/72;case"Millimeter":return 25.4*e/72;case"Inch":return e/72}}(e,r,t)))}}return Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextFontSizes(e,t,r)))}setTextFontStyle(e,t,r=-1,n=-1){Y("id",e,U()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextFontStyle(e,t,r,n))}getTextFontStyles(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextFontStyles(e,t,r)))}getTextCases(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTextCases(e,t,r)))}setTextCase(e,t,r=-1,n=-1){Y("id",e,U()),Y("textCase",t,H()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTextCase(e,t,r,n))}canToggleBoldFont(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).canToggleBoldFont(e,t,r))}canToggleItalicFont(e,t=-1,r=-1){return Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).canToggleItalicFont(e,t,r))}toggleBoldFont(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).toggleBoldFont(e,t,r))}toggleItalicFont(e,t=-1,r=-1){Y("id",e,U()),Y("from",t,U()),Y("to",r,U()),ce(k(this,Ta).toggleItalicFont(e,t,r))}setFont(e,t,r){Y("block",e,U()),Y("fontFileUri",t,H()),ce(k(this,Ta).setFont(e,t,r))}setTypeface(e,t,r=-1,n=-1){Y("block",e,U()),Y("from",r,U()),Y("to",n,U()),ce(k(this,Ta).setTypeface(e,t,r,n))}getTypeface(e){return Y("block",e,U()),ce(k(this,Ta).getTypeface(e))}getTypefaces(e,t=-1,r=-1){return Y("block",e,U()),Y("from",t,U()),Y("to",r,U()),Ve(ce(k(this,Ta).getTypefaces(e,t,r)))}getTextCursorRange(){return ce(k(this,Ta).getTextCursorRange())}setTextCursorRange(e){Y("range",e,q({from:U(),to:U()})),ce(k(this,Ta).setTextCursorRange(e))}getTextVisibleLineCount(e){return Y("id",e,U()),ce(k(this,Ta).getTextVisibleLineCount(e))}getTextVisibleLineGlobalBoundingBoxXYWH(e,t){return Y("id",e,U()),Y("lineIndex",t,U()),ce(k(this,Ta).getTextVisibleLineGlobalBoundingBoxXYWH(e,t))}getTextVisibleLineContent(e,t){return Y("id",e,U()),Y("lineIndex",t,U()),ce(k(this,Ta).getTextVisibleLineContent(e,t))}hasFill(e){return Y("id",e,U()),ce(k(this,Ta).hasFill(e))}supportsFill(e){return Y("id",e,U()),ce(k(this,Ta).supportsFill(e))}isFillEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isFillEnabled(e))}setFillEnabled(e,t){return Y("id",e,U()),ce(k(this,Ta).setFillEnabled(e,t))}getFill(e){return Y("id",e,U()),ce(k(this,Ta).getFill(e))}setFill(e,t){return Y("id",e,U()),Y("fill",t,U()),ce(k(this,Ta).setFill(e,t))}setFillSolidColor(e,t,r,n,o=1){Y("id",e,U()),ce(k(this,Ta).setFillSolidColor(e,t,r,n,o))}getFillSolidColor(e){return Y("id",e,U()),ce(k(this,Ta).getFillSolidColor(e))}setPlaceholderEnabled(e,t){Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaceholderEnabled(e,t))}isPlaceholderEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderEnabled(e))}hasPlaceholderBehavior(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaceholderBehavior(e))}supportsPlaceholderBehavior(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaceholderBehavior(e))}setPlaceholderBehaviorEnabled(e,t){Y("id",e,U()),ce(k(this,Ta).setPlaceholderBehaviorEnabled(e,t))}isPlaceholderBehaviorEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderBehaviorEnabled(e))}hasPlaceholderControls(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaceholderControls(e))}supportsPlaceholderControls(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaceholderControls(e))}setPlaceholderControlsOverlayEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaceholderControlsOverlayEnabled(e,t))}isPlaceholderControlsOverlayEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderControlsOverlayEnabled(e))}setPlaceholderControlsButtonEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaceholderControlsButtonEnabled(e,t))}isPlaceholderControlsButtonEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isPlaceholderControlsButtonEnabled(e))}setMetadata(e,t,r){Y("id",e,U()),Y("key",t,H()),Y("value",r,H()),ce(k(this,Ta).setMetadata(e,t,r))}getMetadata(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).getMetadata(e,t))}hasMetadata(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).hasMetadata(e,t))}findAllMetadata(e){return Y("id",e,U()),Ve(ce(k(this,Ta).findAllMetadata(e)))}removeMetadata(e,t){Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).removeMetadata(e,t))}setScopeEnabled(e,t,r){Y("id",e,U()),Y("key",t,H()),Y("enabled",r,O()),ce(k(this,Ta).setScopeEnabled(e,t,r))}isScopeEnabled(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).isScopeEnabled(e,t))}isAllowedByScope(e,t){return Y("id",e,U()),Y("key",t,H()),ce(k(this,Ta).isAllowedByScope(e,t))}hasDuration(e){return Y("id",e,U()),ce(k(this,Ta).hasDuration(e))}supportsDuration(e){return Y("id",e,U()),ce(k(this,Ta).supportsDuration(e))}setDuration(e,t){return Y("id",e,U()),Y("duration",t,$()),ce(k(this,Ta).setDuration(e,t))}getDuration(e){return Y("id",e,U()),ce(k(this,Ta).getDuration(e))}setPageDurationSource(e,t){return Y("page",e,U()),Y("id",t,U()),ce(k(this,Ta).setPageDurationSource(e,t))}isPageDurationSource(e){return Y("id",e,U()),ce(k(this,Ta).isPageDurationSource(e))}supportsPageDurationSource(e,t){return Y("page",e,U()),Y("id",t,U()),ce(k(this,Ta).supportsPageDurationSource(e,t))}removePageDurationSource(e){Y("id",e,U()),ce(k(this,Ta).removePageDurationSource(e))}hasTimeOffset(e){return Y("id",e,U()),ce(k(this,Ta).hasTimeOffset(e))}supportsTimeOffset(e){return Y("id",e,U()),ce(k(this,Ta).supportsTimeOffset(e))}setTimeOffset(e,t){return Y("id",e,U()),Y("offset",t,$()),ce(k(this,Ta).setTimeOffset(e,t))}getTimeOffset(e){return Y("id",e,U()),ce(k(this,Ta).getTimeOffset(e))}hasTrim(e){return Y("id",e,U()),ce(k(this,Ta).hasTrim(e))}supportsTrim(e){return Y("id",e,U()),ce(k(this,Ta).supportsTrim(e))}setTrimOffset(e,t){return Y("id",e,U()),Y("offset",t,$()),ce(k(this,Ta).setTrimOffset(e,t))}getTrimOffset(e){return Y("id",e,U()),ce(k(this,Ta).getTrimOffset(e))}setTrimLength(e,t){return Y("id",e,U()),Y("length",t,$()),ce(k(this,Ta).setTrimLength(e,t))}getTrimLength(e){return Y("id",e,U()),ce(k(this,Ta).getTrimLength(e))}split(e,t,r={}){return Y("id",e,U()),Y("atTime",t,$()),Y("options",r,q({attachToParent:W(O()),createParentTrackIfNeeded:W(O()),selectNewBlock:W(O())})),ce(k(this,Ta).split(e,t,{attachToParent:r.attachToParent??!0,createParentTrackIfNeeded:r.createParentTrackIfNeeded??!1,selectNewBlock:r.selectNewBlock??!0}))}getTotalSceneDuration(e){return Y("scene",e,U()),ce(k(this,Ta).getTotalSceneDuration(e))}setPlaying(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setPlaying(e,t))}isPlaying(e){return Y("id",e,U()),ce(k(this,Ta).isPlaying(e))}hasPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaybackTime(e))}supportsPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaybackTime(e))}setPlaybackTime(e,t){return Y("id",e,U()),Y("time",t,$()),ce(k(this,Ta).setPlaybackTime(e,t))}getPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).getPlaybackTime(e))}isVisibleAtCurrentPlaybackTime(e){return Y("id",e,U()),ce(k(this,Ta).isVisibleAtCurrentPlaybackTime(e))}setSoloPlaybackEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Ta).setSoloPlaybackEnabled(e,t))}isSoloPlaybackEnabled(e){return Y("id",e,U()),ce(k(this,Ta).isSoloPlaybackEnabled(e))}hasPlaybackControl(e){return Y("id",e,U()),ce(k(this,Ta).hasPlaybackControl(e))}supportsPlaybackControl(e){return Y("id",e,U()),ce(k(this,Ta).supportsPlaybackControl(e))}setLooping(e,t){Y("id",e,U()),Y("looping",t,O()),ce(k(this,Ta).setLooping(e,t))}isLooping(e){return Y("id",e,U()),ce(k(this,Ta).isLooping(e))}setMuted(e,t){Y("id",e,U()),Y("muted",t,O()),ce(k(this,Ta).setMuted(e,t))}isForceMuted(e){return Y("id",e,U()),ce(k(this,Ta).isForceMuted(e))}isMuted(e){return Y("id",e,U()),ce(k(this,Ta).isMuted(e))}setVolume(e,t){Y("id",e,U()),Y("volume",t,$()),ce(k(this,Ta).setVolume(e,t))}getVolume(e){return Y("id",e,U()),ce(k(this,Ta).getVolume(e))}setPlaybackSpeed(e,t){Y("id",e,U()),Y("speed",t,$()),ce(k(this,Ta).setPlaybackSpeed(e,t))}getPlaybackSpeed(e){return Y("id",e,U()),ce(k(this,Ta).getPlaybackSpeed(e))}async forceLoadAVResource(e){return Y("id",e,U()),ue((t=>k(this,Ta).forceLoadAVResource(e,t)))}unstable_isAVResourceLoaded(e){return Y("id",e,U()),ce(k(this,Ta).unstable_isAVResourceLoaded(e))}getAVResourceTotalDuration(e){return Y("id",e,U()),ce(k(this,Ta).getAVResourceTotalDuration(e))}getVideoWidth(e){return Y("id",e,U()),ce(k(this,Ta).getVideoWidth(e))}getVideoHeight(e){return Y("id",e,U()),ce(k(this,Ta).getVideoHeight(e))}generateVideoThumbnailSequence(e,t,r,n,o,i){Y("id",e,U()),Y("thumbnailHeight",t,U()),Y("timeBegin",r,$()),Y("timeEnd",n,$()),Y("numberOfFrames",o,U());const a=k(this,Ta).generateVideoThumbnailSequence(e,t,r,n,o,(e=>{"error"in e?i(0,new Error(e.error)):i(e.frameIndex,new ImageData(new Uint8ClampedArray(e.imageData),e.width,e.height))}));return()=>{k(this,Ta).cancelVideoThumbnailSequenceGeneration(a)}}generateAudioThumbnailSequence(e,t,r,n,o,i,a){Y("id",e,U()),Y("samplesPerChunk",t,U()),Y("timeBegin",r,$()),Y("timeEnd",n,$()),Y("numberOfSamples",o,U()),Y("numberOfChannels",i,U());const s=k(this,Ta).generateAudioThumbnailSequence(e,t,r,n,o,i,(e=>{"error"in e?a(0,new Error(e.error)):a(e.chunkIndex,e.sampleData)}));return()=>{k(this,Ta).cancelAudioThumbnailSequenceGeneration(s)}}async getVideoFillThumbnail(e,t){return Y("id",e,U()),Y("thumbnailHeight",t,U()),new Promise(((r,n)=>{k(this,Ta).getVideoFillThumbnail(e,t,(e=>{"error"in e?n(e.error):r(new Blob([e],{type:"image/jpeg"}))}))}))}async getVideoFillThumbnailAtlas(e,t,r,n){return Y("id",e,U()),Y("numberOfColumns",t,U()),Y("numberOfRows",r,U()),Y("thumbnailHeight",n,U()),new Promise(((o,i)=>{k(this,Ta).getVideoFillThumbnailAtlas(e,t,r,n,(e=>{"error"in e?i(e.error):o(new Blob([e],{type:"image/jpeg"}))}))}))}async getPageThumbnailAtlas(e,t,r,n){return Y("id",e,U()),Y("numberOfColumns",t,U()),Y("numberOfRows",r,U()),new Promise(((o,i)=>{k(this,Ta).getPageThumbnailAtlas(e,t,r,n,(e=>{"error"in e?i(e.error):o(new Blob([e],{type:"image/jpeg"}))}))}))}createAnimation(e){return Y("type",e,H()),ce(k(this,Ta).createAnimation(e))}supportsAnimation(e){return Y("id",e,U()),ce(k(this,Ta).supportsAnimation(e))}setInAnimation(e,t){Y("id",e,U()),Y("animation",t,U()),ce(k(this,Ta).setInAnimation(e,t))}setLoopAnimation(e,t){Y("id",e,U()),Y("animation",t,U()),ce(k(this,Ta).setLoopAnimation(e,t))}setOutAnimation(e,t){Y("id",e,U()),Y("animation",t,U()),ce(k(this,Ta).setOutAnimation(e,t))}getInAnimation(e){return Y("id",e,U()),ce(k(this,Ta).getInAnimation(e))}getLoopAnimation(e){return Y("id",e,U()),ce(k(this,Ta).getLoopAnimation(e))}getOutAnimation(e){return Y("id",e,U()),ce(k(this,Ta).getOutAnimation(e))}setNativePixelBuffer(e,t){Y("id",e,U()),t instanceof HTMLVideoElement&&(t.width=t.videoWidth,t.height=t.videoHeight),ce(k(this,Ta).setNativePixelBuffer(e,t))}getState(e){return Y("id",e,U()),ce(k(this,Ta).getState(e))}setState(e,t){Y("id",e,U()),ce(k(this,Ta).setState(e,t))}async forceLoadResources(e){return Y("ids",e,L(U())),ue((t=>k(this,Ta).forceLoadResources(e,t)))}async addImage(e,t={}){Y("url",e,H()),Y("options",t,W(q({sizeMode:W(re()),positionMode:W(ne()),x:W($()),y:W($()),cornerRadius:W($()),size:W(V([$(),q({width:$(),height:$()})])),timeline:W(q({timeOffset:W($()),duration:W($())})),shadow:W(q({color:W(ie()),offset:W(q({x:W($()),y:W($())})),blur:W(q({x:W($()),y:W($())}))})),animation:W(q({in:W(ae()),loop:W(ae()),out:W(ae())}))})));const{x:r,y:n,size:o,timeline:i,animation:a,shadow:s,cornerRadius:l,sizeMode:d="Absolute",positionMode:c="Absolute"}=t;let u,p;if(null!=o)"number"==typeof o?(u=o,p=o):(u=o.width,p=o.height);else{const t=await new Promise(((t,r)=>{const n=new Image;n.src=e,n.onerror=r,n.onload=()=>{t({width:n.width,height:n.height})}}));u=t.width,p=t.height}const h=k(this,Aa).getCurrentPage();if(null==h)throw new Error("No current page");const f=this.create("graphic");this.appendChild(h,f),this.setPositionXMode(f,c),this.setPositionYMode(f,c),this.setWidthMode(f,d),this.setHeightMode(f,d),null!=u&&this.setWidth(f,u),null!=p&&this.setHeight(f,p),null!=r?this.setPositionX(f,r):this.alignHorizontally([f],"Center"),null!=n?this.setPositionY(f,n):this.alignVertically([f],"Center");const g=this.createShape("rect");this.setShape(f,g),null!=l&&(this.setFloat(g,"shape/rect/cornerRadiusBL",l),this.setFloat(g,"shape/rect/cornerRadiusBR",l),this.setFloat(g,"shape/rect/cornerRadiusTL",l),this.setFloat(g,"shape/rect/cornerRadiusTR",l));const m=this.createFill("image");return this.setFill(f,m),this.setString(m,"fill/image/imageFileURI",e),null!=s&&this.applyDropShadow(f,s),"Design"===k(this,Aa).getMode()||(null!=i?.timeOffset&&this.setTimeOffset(f,i.timeOffset),null!=i?.duration&&this.setDuration(f,i.duration),null!=a&&this.applyAnimation(f,a),await this.forceLoadResources([f]),this.adjustCropToFillFrame(f,.5)),f}async addVideo(e,t,r,n={}){if(Y("url",e,H()),Y("width",t,$()),Y("height",r,$()),Y("options",n,W(q({sizeMode:W(re()),positionMode:W(ne()),x:W($()),y:W($()),timeline:W(q({timeOffset:W($()),duration:W($())})),animation:W(q({in:W(ae()),loop:W(ae()),out:W(ae())})),shadow:W(q({color:W(ie()),offset:W(q({x:W($()),y:W($())})),blur:W(q({x:W($()),y:W($())}))})),cornerRadius:W($())}))),"Design"===k(this,Aa).getMode())throw new Error("Cannot add video in design mode.");const{x:o,y:i,timeline:a,animation:s,shadow:l,cornerRadius:d,sizeMode:c="Absolute",positionMode:u="Absolute"}=n,p=k(this,Aa).getCurrentPage();if(null==p)throw new Error("No current page");const h=this.create("graphic");this.appendChild(p,h),this.setPositionXMode(h,u),this.setPositionYMode(h,u),this.setWidthMode(h,c),this.setHeightMode(h,c),this.setWidth(h,t),this.setHeight(h,r),null!=o?this.setPositionX(h,o):this.alignHorizontally([h],"Center"),null!=i?this.setPositionY(h,i):this.alignVertically([h],"Center");const f=this.createShape("rect");this.setShape(h,f),null!=d&&(this.setFloat(f,"shape/rect/cornerRadiusBL",d),this.setFloat(f,"shape/rect/cornerRadiusBR",d),this.setFloat(f,"shape/rect/cornerRadiusTL",d),this.setFloat(f,"shape/rect/cornerRadiusTR",d));const g=this.createFill("video");return this.setFill(h,g),this.setString(g,"fill/video/fileURI",e),null!=l&&this.applyDropShadow(h,l),null!=a?.timeOffset&&this.setTimeOffset(h,a.timeOffset),null!=a?.duration&&this.setDuration(h,a.duration),null!=s&&this.applyAnimation(h,s),await this.forceLoadResources([h]),this.adjustCropToFillFrame(h,0),h}applyAnimation(e,t={}){if(Y("block",e,U()),Y("animation",t,W(q({in:W(ae()),loop:W(ae()),out:W(ae())}))),null!=t.in){const r=this.createAnimation(t.in.type);if(this.setInAnimation(e,r),this.setDuration(r,t.in.duration),null!=t.in.easing&&C(this,Ma,Ia).call(this,r,"animationEasing")){const e=this.getEnumValues("animationEasing"),n=t.in.easing??"Linear";e.includes(n)&&this.setEnum(r,"animationEasing",n)}}if(null!=t.out){const r=this.createAnimation(t.out.type);if(this.setOutAnimation(e,r),this.setDuration(r,t.out.duration),null!=t.out.easing&&C(this,Ma,Ia).call(this,r,"animationEasing")){const e=this.getEnumValues("animationEasing"),n=t.out.easing??"Linear";e.includes(n)&&this.setEnum(r,"animationEasing",n)}}if(null!=t.loop){const r=this.createAnimation(t.loop.type);if(this.setLoopAnimation(e,r),this.setDuration(r,t.loop.duration),null!=t.loop.easing&&C(this,Ma,Ia).call(this,r,"animationEasing")){const e=this.getEnumValues("animationEasing"),n=t.loop.easing??"Linear";e.includes(n)&&this.setEnum(r,"animationEasing",n)}}}applyDropShadow(e,t={}){Y("block",e,U()),Y("options",t,W(q({color:W(ie()),offset:W(q({x:W($()),y:W($())})),blur:W(q({x:W($()),y:W($())}))})));const{color:r,offset:n,blur:o}=t;this.setDropShadowEnabled(e,!0),null!=r&&this.setDropShadowColor(e,r),null!=n&&(null!=n.x&&this.setDropShadowOffsetX(e,n.x),null!=n.y&&this.setDropShadowOffsetY(e,n.y)),null!=o&&(null!=o.x&&this.setDropShadowBlurRadiusX(e,o.x),null!=o.y&&this.setDropShadowBlurRadiusY(e,o.y))}async generateThumbnailAtTimeOffset(e,t){Y("height",e,G(z(U(),512),1)),Y("time",t,$());const r=k(this,Aa).getCurrentPage();if(null==r)throw new Error("No page to get thumbnail for");if("Design"===k(this,Aa).getMode())throw new Error("Cannot get thumbnail in design mode. Use export instead.");return new Promise(((n,o)=>{k(this,Ta).generateVideoThumbnailSequence(r,e,t,t,1,(e=>{if("error"in e)o(e.error);else{const t=new ImageData(new Uint8ClampedArray(e.imageData),e.width,e.height),r=document.createElement("canvas");r.width=e.width,r.height=e.height;const i=r.getContext("2d");if(!i)return void o(new Error("Failed to get canvas context"));i.putImageData(t,0,0),r.toBlob((e=>{e?n(e):o(new Error("Failed to convert to PNG"))}),"image/png")}}))}))}getBackgroundTrack(){if("Design"===k(this,Aa).getMode())throw new Error("Cannot get background track in design mode");if(null==k(this,Aa).getCurrentPage())return null;return this.findByType("track").find((e=>this.isPageDurationSource(e)))??null}moveToBackgroundTrack(e){Y("block",e,U());let t=this.getBackgroundTrack();if(null==t){const e=k(this,Aa).getCurrentPage();if(null==e)throw new Error("No current page found");t=this.create("//ly.img.ubq/track"),this.appendChild(e,t),this.setAlwaysOnBottom(t,!0),this.supportsPageDurationSource(e,t)&&this.setPageDurationSource(e,t)}this.appendChild(t,e)}};Fa=u(null),Ta=new WeakMap,Aa=new WeakMap,Ma=new WeakSet,Ia=function(e,t){return this.findAllProperties(e).includes(t)},b(Fa,1,"loadFromString",xa,BlockAPI),b(Fa,1,"loadFromArchiveURL",Pa,BlockAPI),b(Fa,1,"create",Sa,BlockAPI),b(Fa,1,"createFill",Ca,BlockAPI),b(Fa,1,"createAudioFromVideo",Ea,BlockAPI),b(Fa,1,"createAudiosFromVideo",_a,BlockAPI),b(Fa,1,"createCaptionsFromURI",ka,BlockAPI),b(Fa,1,"getType",wa,BlockAPI),b(Fa,1,"getKind",va,BlockAPI),b(Fa,1,"setKind",ya,BlockAPI),b(Fa,1,"select",ba,BlockAPI),b(Fa,1,"setSelected",ma,BlockAPI),b(Fa,1,"isSelected",ga,BlockAPI),b(Fa,1,"findAllSelected",fa,BlockAPI),b(Fa,1,"isGroupable",ha,BlockAPI),b(Fa,1,"group",pa,BlockAPI),b(Fa,1,"ungroup",ua,BlockAPI),b(Fa,1,"enterGroup",ca,BlockAPI),b(Fa,1,"exitGroup",da,BlockAPI),b(Fa,1,"isCombinable",la,BlockAPI),b(Fa,1,"combine",sa,BlockAPI),b(Fa,1,"setName",aa,BlockAPI),b(Fa,1,"getName",ia,BlockAPI),b(Fa,1,"getUUID",oa,BlockAPI),b(Fa,1,"findByName",na,BlockAPI),b(Fa,1,"findByType",ra,BlockAPI),b(Fa,1,"findByKind",ta,BlockAPI),b(Fa,1,"findAll",ea,BlockAPI),b(Fa,1,"findAllPlaceholders",Ji,BlockAPI),b(Fa,1,"createShape",Zi,BlockAPI),b(Fa,1,"getShape",Qi,BlockAPI),b(Fa,1,"setShape",Ki,BlockAPI),b(Fa,1,"isVisible",Yi,BlockAPI),b(Fa,1,"setVisible",Xi,BlockAPI),b(Fa,1,"isClipped",ji,BlockAPI),b(Fa,1,"setClipped",Gi,BlockAPI),b(Fa,1,"isTransformLocked",zi,BlockAPI),b(Fa,1,"setTransformLocked",Vi,BlockAPI),b(Fa,1,"getPositionX",Ni,BlockAPI),b(Fa,1,"getPositionXMode",Hi,BlockAPI),b(Fa,1,"getPositionY",Wi,BlockAPI),b(Fa,1,"getPositionYMode",qi,BlockAPI),b(Fa,1,"setPositionX",$i,BlockAPI),b(Fa,1,"setPositionXMode",Ui,BlockAPI),b(Fa,1,"setPositionY",Oi,BlockAPI),b(Fa,1,"setPositionYMode",Li,BlockAPI),b(Fa,1,"setAlwaysOnTop",Ri,BlockAPI),b(Fa,1,"setAlwaysOnBottom",Bi,BlockAPI),b(Fa,1,"isAlwaysOnTop",Di,BlockAPI),b(Fa,1,"isAlwaysOnBottom",Ii,BlockAPI),b(Fa,1,"bringToFront",Mi,BlockAPI),b(Fa,1,"sendToBack",Fi,BlockAPI),b(Fa,1,"bringForward",Ai,BlockAPI),b(Fa,1,"sendBackward",Ti,BlockAPI),b(Fa,1,"getRotation",xi,BlockAPI),b(Fa,1,"setRotation",Pi,BlockAPI),b(Fa,1,"getFlipHorizontal",Si,BlockAPI),b(Fa,1,"getFlipVertical",Ci,BlockAPI),b(Fa,1,"setFlipHorizontal",Ei,BlockAPI),b(Fa,1,"setFlipVertical",_i,BlockAPI),b(Fa,1,"getWidth",ki,BlockAPI),b(Fa,1,"getWidthMode",wi,BlockAPI),b(Fa,1,"getHeight",vi,BlockAPI),b(Fa,1,"getHeightMode",yi,BlockAPI),b(Fa,1,"setSize",bi,BlockAPI),b(Fa,1,"setPosition",mi,BlockAPI),b(Fa,1,"setWidth",gi,BlockAPI),b(Fa,1,"setWidthMode",fi,BlockAPI),b(Fa,1,"setHeight",hi,BlockAPI),b(Fa,1,"setHeightMode",pi,BlockAPI),b(Fa,1,"getFrameX",ui,BlockAPI),b(Fa,1,"getFrameY",ci,BlockAPI),b(Fa,1,"getFrameWidth",di,BlockAPI),b(Fa,1,"getFrameHeight",li,BlockAPI),b(Fa,1,"setContentFillMode",si,BlockAPI),b(Fa,1,"getContentFillMode",ai,BlockAPI),b(Fa,1,"duplicate",ii,BlockAPI),b(Fa,1,"destroy",oi,BlockAPI),b(Fa,1,"isValid",ni,BlockAPI),b(Fa,1,"getParent",ri,BlockAPI),b(Fa,1,"getChildren",ti,BlockAPI),b(Fa,1,"insertChild",ei,BlockAPI),b(Fa,1,"appendChild",Jo,BlockAPI),b(Fa,1,"referencesAnyVariables",Zo,BlockAPI),b(Fa,1,"getGlobalBoundingBoxX",Qo,BlockAPI),b(Fa,1,"getGlobalBoundingBoxY",Ko,BlockAPI),b(Fa,1,"getGlobalBoundingBoxWidth",Yo,BlockAPI),b(Fa,1,"getGlobalBoundingBoxHeight",Xo,BlockAPI),b(Fa,1,"getScreenSpaceBoundingBoxXYWH",jo,BlockAPI),b(Fa,1,"alignHorizontally",Go,BlockAPI),b(Fa,1,"alignVertically",zo,BlockAPI),b(Fa,1,"isAlignable",Vo,BlockAPI),b(Fa,1,"distributeHorizontally",No,BlockAPI),b(Fa,1,"distributeVertically",Ho,BlockAPI),b(Fa,1,"isDistributable",Wo,BlockAPI),b(Fa,1,"fillParent",qo,BlockAPI),b(Fa,1,"resizeContentAware",$o,BlockAPI),b(Fa,1,"scale",Uo,BlockAPI),b(Fa,1,"findAllProperties",Oo,BlockAPI),b(Fa,1,"isPropertyReadable",Lo,BlockAPI),b(Fa,1,"isPropertyWritable",Ro,BlockAPI),b(Fa,1,"getPropertyType",Bo,BlockAPI),b(Fa,1,"getEnumValues",Do,BlockAPI),b(Fa,1,"setBool",Io,BlockAPI),b(Fa,1,"getBool",Mo,BlockAPI),b(Fa,1,"setInt",Fo,BlockAPI),b(Fa,1,"getInt",Ao,BlockAPI),b(Fa,1,"setFloat",To,BlockAPI),b(Fa,1,"getFloat",xo,BlockAPI),b(Fa,1,"setDouble",Po,BlockAPI),b(Fa,1,"getDouble",So,BlockAPI),b(Fa,1,"setString",Co,BlockAPI),b(Fa,1,"getString",Eo,BlockAPI),b(Fa,1,"setColor",_o,BlockAPI),b(Fa,1,"getColor",ko,BlockAPI),b(Fa,1,"setColorRGBA",wo,BlockAPI),b(Fa,1,"getColorRGBA",vo,BlockAPI),b(Fa,1,"setColorSpot",yo,BlockAPI),b(Fa,1,"getColorSpotName",bo,BlockAPI),b(Fa,1,"getColorSpotTint",mo,BlockAPI),b(Fa,1,"setGradientColorStops",go,BlockAPI),b(Fa,1,"getGradientColorStops",fo,BlockAPI),b(Fa,1,"getSourceSet",ho,BlockAPI),b(Fa,1,"setSourceSet",po,BlockAPI),b(Fa,1,"addImageFileURIToSourceSet",uo,BlockAPI),b(Fa,1,"addVideoFileURIToSourceSet",co,BlockAPI),b(Fa,1,"setEnum",lo,BlockAPI),b(Fa,1,"getEnum",so,BlockAPI),b(Fa,1,"setCropScaleX",ao,BlockAPI),b(Fa,1,"setCropScaleY",io,BlockAPI),b(Fa,1,"setCropRotation",oo,BlockAPI),b(Fa,1,"setCropScaleRatio",no,BlockAPI),b(Fa,1,"setCropTranslationX",ro,BlockAPI),b(Fa,1,"setCropTranslationY",to,BlockAPI),b(Fa,1,"resetCrop",eo,BlockAPI),b(Fa,1,"getCropScaleX",Jn,BlockAPI),b(Fa,1,"getCropScaleY",Zn,BlockAPI),b(Fa,1,"getCropRotation",Qn,BlockAPI),b(Fa,1,"getCropScaleRatio",Kn,BlockAPI),b(Fa,1,"getCropTranslationX",Yn,BlockAPI),b(Fa,1,"getCropTranslationY",Xn,BlockAPI),b(Fa,1,"adjustCropToFillFrame",jn,BlockAPI),b(Fa,1,"flipCropHorizontal",Gn,BlockAPI),b(Fa,1,"flipCropVertical",zn,BlockAPI),b(Fa,1,"isCropAspectRatioLocked",Vn,BlockAPI),b(Fa,1,"setCropAspectRatioLocked",Nn,BlockAPI),b(Fa,1,"setOpacity",Hn,BlockAPI),b(Fa,1,"getOpacity",Wn,BlockAPI),b(Fa,1,"setBlendMode",qn,BlockAPI),b(Fa,1,"getBlendMode",$n,BlockAPI),b(Fa,1,"isIncludedInExport",Un,BlockAPI),b(Fa,1,"setIncludedInExport",On,BlockAPI),b(Fa,1,"setFillColorRGBA",Ln,BlockAPI),b(Fa,1,"getFillColorRGBA",Rn,BlockAPI),b(Fa,1,"setFillColorEnabled",Bn,BlockAPI),b(Fa,1,"isFillColorEnabled",Dn,BlockAPI),b(Fa,1,"createEffect",In,BlockAPI),b(Fa,1,"getEffects",Mn,BlockAPI),b(Fa,1,"insertEffect",Fn,BlockAPI),b(Fa,1,"appendEffect",An,BlockAPI),b(Fa,1,"removeEffect",Tn,BlockAPI),b(Fa,1,"setEffectEnabled",xn,BlockAPI),b(Fa,1,"isEffectEnabled",Pn,BlockAPI),b(Fa,1,"createBlur",Sn,BlockAPI),b(Fa,1,"setBlur",Cn,BlockAPI),b(Fa,1,"getBlur",En,BlockAPI),b(Fa,1,"setBlurEnabled",_n,BlockAPI),b(Fa,1,"isBlurEnabled",kn,BlockAPI),b(Fa,1,"setBackgroundColorRGBA",wn,BlockAPI),b(Fa,1,"getBackgroundColorRGBA",vn,BlockAPI),b(Fa,1,"setBackgroundColorEnabled",yn,BlockAPI),b(Fa,1,"isBackgroundColorEnabled",bn,BlockAPI),b(Fa,1,"setStrokeEnabled",mn,BlockAPI),b(Fa,1,"isStrokeEnabled",gn,BlockAPI),b(Fa,1,"setStrokeColorRGBA",fn,BlockAPI),b(Fa,1,"setStrokeColor",hn,BlockAPI),b(Fa,1,"getStrokeColorRGBA",pn,BlockAPI),b(Fa,1,"getStrokeColor",un,BlockAPI),b(Fa,1,"setStrokeWidth",cn,BlockAPI),b(Fa,1,"getStrokeWidth",dn,BlockAPI),b(Fa,1,"setStrokeStyle",ln,BlockAPI),b(Fa,1,"getStrokeStyle",sn,BlockAPI),b(Fa,1,"setStrokePosition",an,BlockAPI),b(Fa,1,"getStrokePosition",on,BlockAPI),b(Fa,1,"setStrokeCornerGeometry",nn,BlockAPI),b(Fa,1,"getStrokeCornerGeometry",rn,BlockAPI),b(Fa,1,"setDropShadowEnabled",tn,BlockAPI),b(Fa,1,"isDropShadowEnabled",en,BlockAPI),b(Fa,1,"setDropShadowColorRGBA",Jr,BlockAPI),b(Fa,1,"setDropShadowColor",Zr,BlockAPI),b(Fa,1,"getDropShadowColorRGBA",Qr,BlockAPI),b(Fa,1,"getDropShadowColor",Kr,BlockAPI),b(Fa,1,"setDropShadowOffsetX",Yr,BlockAPI),b(Fa,1,"getDropShadowOffsetX",Xr,BlockAPI),b(Fa,1,"setDropShadowOffsetY",jr,BlockAPI),b(Fa,1,"getDropShadowOffsetY",Gr,BlockAPI),b(Fa,1,"setDropShadowBlurRadiusX",zr,BlockAPI),b(Fa,1,"getDropShadowBlurRadiusX",Vr,BlockAPI),b(Fa,1,"setDropShadowBlurRadiusY",Nr,BlockAPI),b(Fa,1,"getDropShadowBlurRadiusY",Hr,BlockAPI),b(Fa,1,"setDropShadowClip",Wr,BlockAPI),b(Fa,1,"getDropShadowClip",qr,BlockAPI),b(Fa,1,"createCutoutFromBlocks",$r,BlockAPI),b(Fa,1,"createCutoutFromPath",Ur,BlockAPI),b(Fa,1,"createCutoutFromOperation",Or,BlockAPI),b(Fa,1,"replaceText",Lr,BlockAPI),b(Fa,1,"removeText",Rr,BlockAPI),b(Fa,1,"setTextColor",Br,BlockAPI),b(Fa,1,"getTextColors",Dr,BlockAPI),b(Fa,1,"setTextFontWeight",Ir,BlockAPI),b(Fa,1,"getTextFontWeights",Mr,BlockAPI),b(Fa,1,"setTextFontSize",Fr,BlockAPI),b(Fa,1,"getTextFontSizes",Ar,BlockAPI),b(Fa,1,"setTextFontStyle",Tr,BlockAPI),b(Fa,1,"getTextFontStyles",xr,BlockAPI),b(Fa,1,"getTextCases",Pr,BlockAPI),b(Fa,1,"setTextCase",Sr,BlockAPI),b(Fa,1,"canToggleBoldFont",Cr,BlockAPI),b(Fa,1,"canToggleItalicFont",Er,BlockAPI),b(Fa,1,"toggleBoldFont",_r,BlockAPI),b(Fa,1,"toggleItalicFont",kr,BlockAPI),b(Fa,1,"setFont",wr,BlockAPI),b(Fa,1,"setTypeface",vr,BlockAPI),b(Fa,1,"getTypeface",yr,BlockAPI),b(Fa,1,"getTypefaces",br,BlockAPI),b(Fa,1,"getTextCursorRange",mr,BlockAPI),b(Fa,1,"setTextCursorRange",gr,BlockAPI),b(Fa,1,"getTextVisibleLineCount",fr,BlockAPI),b(Fa,1,"getTextVisibleLineGlobalBoundingBoxXYWH",hr,BlockAPI),b(Fa,1,"getTextVisibleLineContent",pr,BlockAPI),b(Fa,1,"isFillEnabled",ur,BlockAPI),b(Fa,1,"setFillEnabled",cr,BlockAPI),b(Fa,1,"getFill",dr,BlockAPI),b(Fa,1,"setFill",lr,BlockAPI),b(Fa,1,"setFillSolidColor",sr,BlockAPI),b(Fa,1,"getFillSolidColor",ar,BlockAPI),b(Fa,1,"setPlaceholderEnabled",ir,BlockAPI),b(Fa,1,"isPlaceholderEnabled",or,BlockAPI),b(Fa,1,"setPlaceholderBehaviorEnabled",nr,BlockAPI),b(Fa,1,"isPlaceholderBehaviorEnabled",rr,BlockAPI),b(Fa,1,"setPlaceholderControlsOverlayEnabled",tr,BlockAPI),b(Fa,1,"isPlaceholderControlsOverlayEnabled",er,BlockAPI),b(Fa,1,"setPlaceholderControlsButtonEnabled",Jt,BlockAPI),b(Fa,1,"isPlaceholderControlsButtonEnabled",Zt,BlockAPI),b(Fa,1,"setMetadata",Qt,BlockAPI),b(Fa,1,"getMetadata",Kt,BlockAPI),b(Fa,1,"findAllMetadata",Yt,BlockAPI),b(Fa,1,"removeMetadata",Xt,BlockAPI),b(Fa,1,"setScopeEnabled",jt,BlockAPI),b(Fa,1,"isScopeEnabled",Gt,BlockAPI),b(Fa,1,"isAllowedByScope",zt,BlockAPI),b(Fa,1,"setDuration",Vt,BlockAPI),b(Fa,1,"getDuration",Nt,BlockAPI),b(Fa,1,"setPageDurationSource",Ht,BlockAPI),b(Fa,1,"isPageDurationSource",Wt,BlockAPI),b(Fa,1,"removePageDurationSource",qt,BlockAPI),b(Fa,1,"setTimeOffset",$t,BlockAPI),b(Fa,1,"getTimeOffset",Ut,BlockAPI),b(Fa,1,"setTrimOffset",Ot,BlockAPI),b(Fa,1,"getTrimOffset",Lt,BlockAPI),b(Fa,1,"setTrimLength",Rt,BlockAPI),b(Fa,1,"getTrimLength",Bt,BlockAPI),b(Fa,1,"split",Dt,BlockAPI),b(Fa,1,"getTotalSceneDuration",It,BlockAPI),b(Fa,1,"setPlaying",Mt,BlockAPI),b(Fa,1,"isPlaying",Ft,BlockAPI),b(Fa,1,"setPlaybackTime",At,BlockAPI),b(Fa,1,"getPlaybackTime",Tt,BlockAPI),b(Fa,1,"isVisibleAtCurrentPlaybackTime",xt,BlockAPI),b(Fa,1,"setSoloPlaybackEnabled",Pt,BlockAPI),b(Fa,1,"isSoloPlaybackEnabled",St,BlockAPI),b(Fa,1,"setLooping",Ct,BlockAPI),b(Fa,1,"isLooping",Et,BlockAPI),b(Fa,1,"setMuted",_t,BlockAPI),b(Fa,1,"isForceMuted",kt,BlockAPI),b(Fa,1,"isMuted",wt,BlockAPI),b(Fa,1,"setVolume",vt,BlockAPI),b(Fa,1,"getVolume",yt,BlockAPI),b(Fa,1,"setPlaybackSpeed",bt,BlockAPI),b(Fa,1,"getPlaybackSpeed",mt,BlockAPI),b(Fa,1,"forceLoadAVResource",gt,BlockAPI),b(Fa,1,"unstable_isAVResourceLoaded",ft,BlockAPI),b(Fa,1,"getAVResourceTotalDuration",ht,BlockAPI),b(Fa,1,"getVideoWidth",pt,BlockAPI),b(Fa,1,"getVideoHeight",ut,BlockAPI),b(Fa,1,"getVideoFillThumbnail",ct,BlockAPI),b(Fa,1,"getVideoFillThumbnailAtlas",dt,BlockAPI),b(Fa,1,"getPageThumbnailAtlas",lt,BlockAPI),b(Fa,1,"createAnimation",st,BlockAPI),b(Fa,1,"setInAnimation",at,BlockAPI),b(Fa,1,"setLoopAnimation",it,BlockAPI),b(Fa,1,"setOutAnimation",ot,BlockAPI),b(Fa,1,"getInAnimation",nt,BlockAPI),b(Fa,1,"getLoopAnimation",rt,BlockAPI),b(Fa,1,"getOutAnimation",tt,BlockAPI),b(Fa,1,"setNativePixelBuffer",et,BlockAPI),b(Fa,1,"getState",Je,BlockAPI),b(Fa,1,"setState",Ze,BlockAPI),b(Fa,1,"forceLoadResources",Qe,BlockAPI),b(Fa,1,"applyAnimation",Ke,BlockAPI),b(Fa,1,"applyDropShadow",Ye,BlockAPI),b(Fa,1,"generateThumbnailAtTimeOffset",Xe,BlockAPI),b(Fa,1,"getBackgroundTrack",je,BlockAPI),b(Fa,1,"moveToBackgroundTrack",Ge,BlockAPI),g(Fa,BlockAPI);var Da,Ba,Ra,La,Oa,Ua,$a,qa,Wa,Ha,Na,Va,za,Ga,ja,Xa,Ya,Ka,Qa,Za,Ja,es,ts,rs,ns,os,is,as,ss,ls,ds,cs,us,ps,hs,fs,gs,ms,bs,ys,vs,ws,ks,_s,Es,Cs,Ss,Ps,xs,Ts,As,Fs,Ms,Is,Ds,Bs,Rs,Ls,Os,Us,$s,qs,Ws,Hs,Ns,Vs,zs,Gs=new WeakMap;Ns=[de],Hs=[de],Ws=[de],qs=[le({disabledInModes:["Playback"]})],$s=[le({disabledInModes:["Playback"]})],Us=[de],Os=[de],Ls=[le()],Rs=[le({disabledInModes:["Playback"]})],Bs=[le({disabledInModes:["Playback"]})],Ds=[le({disabledInModes:["Playback"]})],Is=[le({disabledInModes:["Playback"]})],Ms=[le({disabledInModes:["Playback"]})],Fs=[de],As=[de],Ts=[de],xs=[le({disabledInModes:["Playback"]})],Ps=[de],Ss=[de],Cs=[de],Es=[de],_s=[le({disabledInModes:["Playback"]})],ks=[le({disabledInModes:["Playback"]})],ws=[de],vs=[le({disabledInModes:["Playback"]})],ys=[de],bs=[le({disabledInModes:["Playback"]})],ms=[de],gs=[le({disabledInModes:["Playback"]})],fs=[de],hs=[le({disabledInModes:["Playback"]})],ps=[de],us=[le({disabledInModes:["Playback"]})],cs=[de],ds=[le({disabledInModes:["Playback"]})],ls=[de],ss=[le({disabledInModes:["Playback"]})],as=[de],is=[le({disabledInModes:["Playback"]})],os=[de],ns=[le({disabledInModes:["Playback"]})],rs=[le({disabledInModes:["Playback"]})],ts=[le({disabledInModes:["Playback"]})],es=[le({disabledInModes:["Playback"]})],Ja=[le({disabledInModes:["Playback"]})],Za=[de],Qa=[le({disabledInModes:["Playback"]})],Ka=[le({disabledInModes:["Playback"]})],Ya=[de],Xa=[le({disabledInModes:["Playback"]})],ja=[le({disabledInModes:["Playback"]})],Ga=[le({disabledInModes:["Playback"]})],za=[le({disabledInModes:["Playback"]})],Va=[de],Na=[de],Ha=[de],Wa=[de],qa=[de],$a=[le({disabledInModes:["Playback"]})],Ua=[le({disabledInModes:["Playback"]})],Oa=[de],La=[de],Ra=[le()],Ba=[le({disabledInModes:["Playback"]})],Da=[de];var EditorAPI=class{constructor(e){m(zs,5,this),_(this,Vs),y(this,"onStateChanged",(e=>{const t=k(this,Vs).subscribeToEditorState(e);return()=>{k(this,Vs).isDeleted()||ce(k(this,Vs).unsubscribe(t))}})),y(this,"onHistoryUpdated",(e=>{const t=k(this,Vs).subscribeToHistory(e);return()=>{k(this,Vs).isDeleted()||k(this,Vs).unsubscribe(t)}})),y(this,"onSettingsChanged",(e=>{const t=k(this,Vs).subscribeToSettings(e);return()=>{k(this,Vs).isDeleted()||ce(k(this,Vs).unsubscribe(t))}})),y(this,"onRoleChanged",(e=>{const t=k(this,Vs).subscribeToRoleChange(e);return()=>{k(this,Vs).isDeleted()||ce(k(this,Vs).unsubscribe(t))}})),E(this,Vs,e)}unlockWithLicense(e){ce(k(this,Vs).unlockWithLicense(e))}startTracking(e,t){k(this,Vs).startTracking(e,t,"")}setTrackingMetadata(e){k(this,Vs).setTrackingMetadata(e)}getTrackingMetadata(){return ce(k(this,Vs).getTrackingMetadata())}getActiveLicense(){return ce(k(this,Vs).getActiveLicense())}_update(){k(this,Vs).update()}setEditMode(e,t){Y("mode",e,H()),Y("baseMode",t,W(H())),k(this,Vs).setEditMode(e,t??"")}getEditMode(){return k(this,Vs).getEditMode()}unstable_isInteractionHappening(){return ce(k(this,Vs).unstable_isInteractionHappening())}getCursorType(){return k(this,Vs).getCursorType()}getCursorRotation(){return k(this,Vs).getCursorRotation()}getTextCursorPositionInScreenSpaceX(){return k(this,Vs).getTextCursorPositionInScreenSpaceX()}getTextCursorPositionInScreenSpaceY(){return k(this,Vs).getTextCursorPositionInScreenSpaceY()}createHistory(){return k(this,Vs).createHistory()}destroyHistory(e){ce(k(this,Vs).destroyHistory(e))}setActiveHistory(e){ce(k(this,Vs).setActiveHistory(e))}getActiveHistory(){return k(this,Vs).getActiveHistory()}addUndoStep(){ce(k(this,Vs).addUndoStep())}removeUndoStep(){ce(k(this,Vs).removeUndoStep())}undo(){ce(k(this,Vs).undo())}redo(){ce(k(this,Vs).redo())}canUndo(){return ce(k(this,Vs).canUndo())}canRedo(){return ce(k(this,Vs).canRedo())}setSetting(e,t){Y("keypath",e,H());const r=this.normalizeSettingKey(e);if(!this.isValidSettingKey(r))throw new Error(`Invalid setting key: '${e}'`);switch(this.getSettingTypeForKey(r)){case"Bool":return ce(k(this,Vs).setSettingBool(r,t));case"Int":if(!Number.isInteger(t))throw new Error(`Setting '${e}' requires an integer value`);return ce(k(this,Vs).setSettingInt(r,t));case"Float":return ce(k(this,Vs).setSettingFloat(r,t));case"String":return ce(k(this,Vs).setSettingString(r,t));case"Color":{const e=t;return ce(k(this,Vs).setSettingColor(r,ze.fromColor(e)))}case"Enum":return ce(k(this,Vs).setSettingEnum(r,t));default:throw new Error(`Unknown setting type for key '${e}'`)}}getSetting(e){Y("keypath",e,H());const t=this.normalizeSettingKey(e);if(!this.isValidSettingKey(t))throw new Error(`Invalid setting key: '${e}'`);switch(this.getSettingTypeForKey(t)){case"Bool":return ce(k(this,Vs).getSettingBool(t));case"Int":return ce(k(this,Vs).getSettingInt(t));case"Float":return ce(k(this,Vs).getSettingFloat(t));case"String":return ce(k(this,Vs).getSettingString(t));case"Color":return ze.toColor(ce(k(this,Vs).getSettingColor(t)));case"Enum":return ce(k(this,Vs).getSettingEnum(t));default:throw new Error(`Unknown setting type for key '${e}'`)}}normalizeSettingKey(e){return e.startsWith("ubq://")?e.slice(6):e}isValidSettingKey(e){return e in{"controlGizmo/showCropHandles":!0,"controlGizmo/showCropScaleHandles":!0,"controlGizmo/showMoveHandles":!0,"controlGizmo/showResizeHandles":!0,"controlGizmo/showRotateHandles":!0,"controlGizmo/showScaleHandles":!0,doubleClickToCropEnabled:!0,"features/singlePageModeEnabled":!0,"features/pageCarouselEnabled":!0,"features/transformEditsRetainCoverMode":!0,"mouse/enableScroll":!0,"mouse/enableZoom":!0,"page/allowCropInteraction":!0,"page/allowMoveInteraction":!0,"page/allowResizeInteraction":!0,"page/allowRotateInteraction":!0,"page/dimOutOfPageAreas":!0,"page/restrictResizeInteractionToFixedAspectRatio":!0,"page/moveChildrenWhenCroppingFill":!0,"page/selectWhenNoBlocksSelected":!0,"page/highlightWhenCropping":!0,"page/title/appendPageName":!0,"page/title/show":!0,"page/title/showOnSinglePage":!0,"page/title/showPageTitleTemplate":!0,"placeholderControls/showButton":!0,"placeholderControls/showOverlay":!0,"blockAnimations/enabled":!0,showBuildVersion:!0,"touch/dragStartCanSelect":!0,"touch/singlePointPanning":!0,useSystemFontFallback:!0,forceSystemEmojis:!0,basePath:!0,defaultEmojiFontFileUri:!0,defaultFontFileUri:!0,license:!0,"page/title/fontFileUri":!0,"page/title/separator":!0,fallbackFontUri:!0,"upload/supportedMimeTypes":!0,"web/fetchCredentials":!0,"controlGizmo/blockScaleDownLimit":!0,positionSnappingThreshold:!0,rotationSnappingThreshold:!0,maxImageSize:!0,borderOutlineColor:!0,clearColor:!0,"colorMaskingSettings/maskColor":!0,cropOverlayColor:!0,errorStateColor:!0,highlightColor:!0,"page/innerBorderColor":!0,"page/marginFillColor":!0,"page/marginFrameColor":!0,"page/outerBorderColor":!0,"page/title/color":!0,pageHighlightColor:!0,placeholderHighlightColor:!0,progressColor:!0,rotationSnappingGuideColor:!0,ruleOfThirdsLineColor:!0,snappingGuideColor:!0,textVariableHighlightColor:!0,handleFillColor:!0,doubleClickSelectionMode:!0,"touch/pinchAction":!0,"touch/rotateAction":!0,"camera/clamping/overshootMode":!0,renderMode:!0,alwaysHighlightPlaceholders:!0,"colorMaskingSettings/secondPass":!0,"debug/enforceScopesInAPIs":!0,"debug/showCameraDebugVisualization":!0,"debug/showHandlesInteractionArea":!0,"debug/useDebugMipmaps":!0,"debug/showDebugUI":!0,"debug/hookInputSystem":!0,"features/effectsEnabled":!0,"features/highQualityMipmaps":!0,"features/hspSelectiveAdjustmentsEnabled":!0,"features/implicitUpdatesEnabled":!0,"features/templatingEnabled":!0,"features/videosEnabled":!0,"features/videoCaptionsEnabled":!0,"features/forceLowQualityVideoPreview":!0,"features/matchThumbnailSourceToFill":!0,"features/p3WorkingColorSpace":!0,"features/removeForegroundTracksOnSceneLoad":!0,"features/videoTranscodingEnabled":!0,"features/textEditModeTransformHandlesEnabled":!0,renderTextCursorAndSelectionInEngine:!0,clampThumbnailTextureSizes:!0,"dock/hideLabels":!0,"dock/iconSize":!0}}getSettingTypeForKey(e){const t=Object.keys({borderOutlineColor:!0,clearColor:!0,"colorMaskingSettings/maskColor":!0,cropOverlayColor:!0,errorStateColor:!0,handleFillColor:!0,highlightColor:!0,"page/innerBorderColor":!0,"page/marginFillColor":!0,"page/marginFrameColor":!0,"page/outerBorderColor":!0,"page/title/color":!0,pageHighlightColor:!0,placeholderHighlightColor:!0,progressColor:!0,rotationSnappingGuideColor:!0,ruleOfThirdsLineColor:!0,snappingGuideColor:!0,textVariableHighlightColor:!0});if(new Set(t).has(e))return"Color";const r=Object.keys({doubleClickSelectionMode:!0,"touch/pinchAction":!0,"touch/rotateAction":!0,"camera/clamping/overshootMode":!0});if(new Set(r).has(e))return"Enum";if(e in{maxImageSize:!0})return"Int";const n=Object.keys({"controlGizmo/blockScaleDownLimit":!0,positionSnappingThreshold:!0,rotationSnappingThreshold:!0});if(new Set(n).has(e))return"Float";const o=Object.keys({basePath:!0,defaultEmojiFontFileUri:!0,defaultFontFileUri:!0,license:!0,"page/title/fontFileUri":!0,"page/title/separator":!0,fallbackFontUri:!0,"upload/supportedMimeTypes":!0,"web/fetchCredentials":!0});return new Set(o).has(e)?"String":"Bool"}setSettingBool(e,t){return Y("keypath",e,H()),Y("value",t,O()),ce(k(this,Vs).setSettingBool(e,t))}getSettingBool(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingBool(e))}setSettingInt(e,t){return Y("keypath",e,H()),Y("value",t,U()),ce(k(this,Vs).setSettingInt(e,t))}getSettingInt(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingInt(e))}setSettingFloat(e,t){return Y("keypath",e,H()),Y("value",t,$()),ce(k(this,Vs).setSettingFloat(e,t))}getSettingFloat(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingFloat(e))}setSettingString(e,t){return Y("keypath",e,H()),Y("value",t,H()),ce(k(this,Vs).setSettingString(e,t))}getSettingString(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingString(e))}setSettingColor(e,t){return Y("keypath",e,H()),ce(k(this,Vs).setSettingColor(e,ze.fromColor(t)))}getSettingColor(e){return Y("keypath",e,H()),ze.toColor(ce(k(this,Vs).getSettingColor(e)))}setSettingColorRGBA(e,t,r,n,o=1){return Y("keypath",e,H()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),Y("a",o,$()),ce(k(this,Vs).setSettingColorRGBA(e,t,r,n,o))}getSettingColorRGBA(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingColorRGBA(e))}setSettingEnum(e,t){return Y("keypath",e,H()),Y("value",t,H()),ce(k(this,Vs).setSettingEnum(e,t))}getSettingEnum(e){return Y("keypath",e,H()),ce(k(this,Vs).getSettingEnum(e))}getSettingEnumOptions(e){return Y("keypath",e,H()),Ve(ce(k(this,Vs).getSettingEnumOptions(e)))}setRole(e){return ce(k(this,Vs).setRole(e))}getRole(){return ce(k(this,Vs).getRole())}findAllSettings(){return Ve(k(this,Vs).findAllSettings())}getSettingType(e){Y("keypath",e,H());return ce(k(this,Vs).getSettingType(e))}getAvailableMemory(){return ce(k(this,Vs).getAvailableMemory())}getUsedMemory(){return ce(k(this,Vs).getUsedMemory())}getMaxExportSize(){return ce(k(this,Vs).getMaxExportSize())}setURIResolver(e){Gs.set(k(this,Vs),e);return ce(k(this,Vs).setURIResolver((t=>e(t,this.defaultURIResolver.bind(this)))))}unstable_getURIResolver(){return Gs.get(k(this,Vs))??null}defaultURIResolver(e){return k(this,Vs).defaultURIResolver(e)}getAbsoluteURI(e){return ce(k(this,Vs).getAbsoluteURI(e))}findAllScopes(){return Ve(k(this,Vs).findAllScopes())}setGlobalScope(e,t){Y("key",e,H()),Y("value",t,H()),ce(k(this,Vs).setGlobalScope(e,t))}getGlobalScope(e){return Y("key",e,H()),ce(k(this,Vs).getGlobalScope(e))}findAllSpotColors(){return Ve(k(this,Vs).findAllSpotColors())}getSpotColorRGBA(e){return Y("name",e,H()),k(this,Vs).getSpotColorRGB(e)}getSpotColorCMYK(e){return Y("name",e,H()),k(this,Vs).getSpotColorCMYK(e)}setSpotColorRGB(e,t,r,n){return Y("name",e,H()),Y("r",t,$()),Y("g",r,$()),Y("b",n,$()),k(this,Vs).setSpotColorRGB(e,t,r,n)}setSpotColorCMYK(e,t,r,n,o){return Y("name",e,H()),Y("c",t,$()),Y("m",r,$()),Y("y",n,$()),Y("k",o,$()),k(this,Vs).setSpotColorCMYK(e,t,r,n,o)}removeSpotColor(e){return Y("name",e,H()),ce(k(this,Vs).removeSpotColor(e))}setSpotColorForCutoutType(e,t){return Y("type",e,H()),Y("color",t,H()),ce(k(this,Vs).setSpotColorForCutoutType(e,t))}getSpotColorForCutoutType(e){return Y("type",e,H()),ce(k(this,Vs).getSpotColorForCutoutType(e))}convertColorToColorSpace(e,t){return Y("colorSpace",t,H()),ze.toColor(ce(k(this,Vs).convertColorToColorSpace(ze.fromColor(e),t)))}createBuffer(){return k(this,Vs).createBuffer()}destroyBuffer(e){ce(k(this,Vs).destroyBuffer(e))}setBufferData(e,t,r){Y("offset",t,U()),ce(k(this,Vs).setBufferData(e,t,r))}getBufferData(e,t,r){Y("offset",t,U()),Y("length",r,U());const n=k(this,Vs).getBufferData(e,t,r);if("error"in n)throw new Error(n.error);return n}setBufferLength(e,t){Y("length",t,U()),ce(k(this,Vs).setBufferLength(e,t))}getBufferLength(e){return ce(k(this,Vs).getBufferLength(e))}cloneBuffers(){return Ve(ce(k(this,Vs).cloneBuffers()))}restoreBuffers(e){ce(k(this,Vs).restoreBuffers(e))}getMimeType(e){return Y("uri",e,H()),ue((t=>k(this,Vs).getMimeType(e,t)))}findAllTransientResources(){return Ve(ce(k(this,Vs).findAllTransientResources()))}findAllMediaURIs(){return Ve(ce(k(this,Vs).findAllMediaURIs()))}getResourceData(e,t,r){Y("uri",e,H()),Y("chunkSize",t,U()),ce(k(this,Vs).getResourceData(e,t,r))}relocateResource(e,t){Y("currentUrl",e,H()),Y("relocatedUrl",t,H()),ce(k(this,Vs).relocateResource(e,t))}isHighlightingEnabled(e){return Y("id",e,U()),ce(k(this,Vs).isHighlightingEnabled(e))}setHighlightingEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Vs).setHighlightingEnabled(e,t))}setSafeAreaInsets(e){const t=this.getSafeAreaInsets();return ce(k(this,Vs).setSafeAreaInsets(e.left??t.left,e.top??t.top,e.right??t.right,e.bottom??t.bottom))}getSafeAreaInsets(){const[e,t,r,n]=k(this,Vs).getSafeAreaInsets();return{left:e,top:t,right:r,bottom:n}}isSelectionEnabled(e){return Y("id",e,U()),ce(k(this,Vs).isSelectionEnabled(e))}setSelectionEnabled(e,t){return Y("id",e,U()),Y("enabled",t,O()),ce(k(this,Vs).setSelectionEnabled(e,t))}};zs=u(null),Vs=new WeakMap,b(zs,1,"unlockWithLicense",Ns,EditorAPI),b(zs,1,"startTracking",Hs,EditorAPI),b(zs,1,"setTrackingMetadata",Ws,EditorAPI),b(zs,1,"getTrackingMetadata",qs,EditorAPI),b(zs,1,"getActiveLicense",$s,EditorAPI),b(zs,1,"_update",Us,EditorAPI),b(zs,1,"setEditMode",Os,EditorAPI),b(zs,1,"getEditMode",Ls,EditorAPI),b(zs,1,"unstable_isInteractionHappening",Rs,EditorAPI),b(zs,1,"getCursorType",Bs,EditorAPI),b(zs,1,"getCursorRotation",Ds,EditorAPI),b(zs,1,"getTextCursorPositionInScreenSpaceX",Is,EditorAPI),b(zs,1,"getTextCursorPositionInScreenSpaceY",Ms,EditorAPI),b(zs,1,"createHistory",Fs,EditorAPI),b(zs,1,"destroyHistory",As,EditorAPI),b(zs,1,"setActiveHistory",Ts,EditorAPI),b(zs,1,"getActiveHistory",xs,EditorAPI),b(zs,1,"addUndoStep",Ps,EditorAPI),b(zs,1,"removeUndoStep",Ss,EditorAPI),b(zs,1,"undo",Cs,EditorAPI),b(zs,1,"redo",Es,EditorAPI),b(zs,1,"canUndo",_s,EditorAPI),b(zs,1,"canRedo",ks,EditorAPI),b(zs,1,"setSetting",ws,EditorAPI),b(zs,1,"getSetting",vs,EditorAPI),b(zs,1,"setSettingBool",ys,EditorAPI),b(zs,1,"getSettingBool",bs,EditorAPI),b(zs,1,"setSettingInt",ms,EditorAPI),b(zs,1,"getSettingInt",gs,EditorAPI),b(zs,1,"setSettingFloat",fs,EditorAPI),b(zs,1,"getSettingFloat",hs,EditorAPI),b(zs,1,"setSettingString",ps,EditorAPI),b(zs,1,"getSettingString",us,EditorAPI),b(zs,1,"setSettingColor",cs,EditorAPI),b(zs,1,"getSettingColor",ds,EditorAPI),b(zs,1,"setSettingColorRGBA",ls,EditorAPI),b(zs,1,"getSettingColorRGBA",ss,EditorAPI),b(zs,1,"setSettingEnum",as,EditorAPI),b(zs,1,"getSettingEnum",is,EditorAPI),b(zs,1,"setRole",os,EditorAPI),b(zs,1,"getRole",ns,EditorAPI),b(zs,1,"findAllSettings",rs,EditorAPI),b(zs,1,"getAvailableMemory",ts,EditorAPI),b(zs,1,"getUsedMemory",es,EditorAPI),b(zs,1,"getMaxExportSize",Ja,EditorAPI),b(zs,1,"setURIResolver",Za,EditorAPI),b(zs,1,"unstable_getURIResolver",Qa,EditorAPI),b(zs,1,"findAllScopes",Ka,EditorAPI),b(zs,1,"setGlobalScope",Ya,EditorAPI),b(zs,1,"getGlobalScope",Xa,EditorAPI),b(zs,1,"findAllSpotColors",ja,EditorAPI),b(zs,1,"getSpotColorRGBA",Ga,EditorAPI),b(zs,1,"getSpotColorCMYK",za,EditorAPI),b(zs,1,"setSpotColorRGB",Va,EditorAPI),b(zs,1,"setSpotColorCMYK",Na,EditorAPI),b(zs,1,"removeSpotColor",Ha,EditorAPI),b(zs,1,"setSpotColorForCutoutType",Wa,EditorAPI),b(zs,1,"getSpotColorForCutoutType",qa,EditorAPI),b(zs,1,"convertColorToColorSpace",$a,EditorAPI),b(zs,1,"isHighlightingEnabled",Ua,EditorAPI),b(zs,1,"setHighlightingEnabled",Oa,EditorAPI),b(zs,1,"setSafeAreaInsets",La,EditorAPI),b(zs,1,"getSafeAreaInsets",Ra,EditorAPI),b(zs,1,"isSelectionEnabled",Ba,EditorAPI),b(zs,1,"setSelectionEnabled",Da,EditorAPI),g(zs,EditorAPI);var js,Xs,Ys,Ks,Qs,Zs,Js,el,tl,rl,nl,ol,il,al,sl=new WeakMap,ll={assets:[],total:0,currentPage:0,nextPage:void 0};Zs=[de],Qs=[de],Ks=[de],Ys=[de],Xs=[de],js=[le({disabledInModes:["Playback"]})];var AssetAPI=class{constructor(e){m(rl,5,this),_(this,nl),_(this,Js),_(this,el,new Set),_(this,tl,new Set),y(this,"onAssetSourceAdded",(e=>{const t=k(this,Js).subscribeToAssetSourceAdded(e);return()=>{k(this,Js).isDeleted()||ce(k(this,Js).unsubscribe(t))}})),y(this,"onAssetSourceRemoved",(e=>{const t=k(this,Js).subscribeToAssetSourceRemoved(e);return()=>{k(this,Js).isDeleted()||ce(k(this,Js).unsubscribe(t))}})),y(this,"onAssetSourceUpdated",(e=>{const t=k(this,Js).subscribeToAssetSourceUpdated(e);return()=>{k(this,Js).isDeleted()||ce(k(this,Js).unsubscribe(t))}})),E(this,Js,e)}registerApplyMiddleware(e){return k(this,el).add(e),()=>{k(this,el).delete(e)}}registerApplyToBlockMiddleware(e){return k(this,tl).add(e),()=>{k(this,tl).delete(e)}}addSource(e){const t=e.getSupportedMimeTypes?.bind(e),r=e.getGroups?.bind(e),n=e.fetchAsset?.bind(e),o=e.applyAsset?.bind(e),i=e.applyAssetToBlock?.bind(e),a=e.applyAssetProperty?.bind(e),s=e.addAsset?.bind(e),l=e.removeAsset?.bind(e),d=e.credits,c=e.license;ce(k(this,Js).addAssetSource(e.id,(async(t,r)=>{try{const n={...t,sortKey:t.sortKey,sortingOrder:t.sortingOrder,sortActiveFirst:t.sortActiveFirst,tags:Ve(t.tags),groups:Ve(t.groups),excludeGroups:Ve(t.excludeGroups)},o=await e.findAssets(n);if(o){const t={...o,assets:o.assets.map((t=>dl(t,e.id)))};r.invoke(t)}else r.invoke(ll)}catch(e){r.invoke(e.message??"Unknown error in user-defined `findAssets`")}}),n?async(t,r,o)=>{try{const i=await n(t,{locale:r});null===i?o.invoke(null):o.invoke(dl(i,e.id))}catch(e){o.invoke(e.message??"Unknown error in user-defined `fetchAsset`")}}:null,r?async e=>{try{const t=await r();e.invoke(t)}catch(t){e.invoke(t.message??"Unknown error in user-defined `getGroups`")}}:null,d?()=>({name:d.name,url:d.url??""}):null,c?()=>({name:c.name,url:c.url??""}):null,t?()=>t()??[]:null,o?async(e,t)=>{try{const r=await o(C(this,nl,ol).call(this,e));t.invoke(r)}catch(e){t.invoke(e.message??"Unknown error in user-defined `applyAsset`")}}:null,i?async(e,t,r)=>{try{await i(C(this,nl,ol).call(this,e),t),r.invoke({})}catch(e){r.invoke(e.message??"Unknown error in user-defined `applyAssetToBlock`")}}:null,a?async(e,t,r)=>{try{await a(C(this,nl,ol).call(this,e),t),r.invoke({})}catch(e){r.invoke(e.message??"Unknown error in user-defined `applyAssetProperty`")}}:null,s?async e=>{s(e)}:null,l?async e=>{l(e)}:null)),C(this,nl,il).call(this,e.id,e)}addLocalSource(e,t,r,n){ce(k(this,Js).addLocalAssetSource(e,t??[],r?async(e,t)=>{try{const n=await r(C(this,nl,ol).call(this,e));t.invoke(n)}catch(e){t.invoke(e.message??"Unknown error in user-defined `applyAsset`")}}:null,n?async(e,t,r)=>{try{await n(C(this,nl,ol).call(this,e),t),r.invoke({})}catch(e){r.invoke(e.message??"Unknown error in user-defined `applyAssetToBlock`")}}:null))}addLocalAssetSourceFromJSONString(e,t,r){Y("contentJSON",e,H()),Y("basePath",t,W(H())),Y("options",r,W(q())),void 0!==r?.matcher&&Y("options.matcher",r.matcher,L(H()));const n=t??null,o=r?.matcher;return new Promise(((t,r)=>{try{t(ce(k(this,Js).addLocalAssetSourceFromJSONString(e,n,o)))}catch(e){r(e)}}))}addLocalAssetSourceFromJSONURI(e,t){return Y("contentURI",e,H()),Y("options",t,W(q())),void 0!==t?.matcher&&Y("options.matcher",t.matcher,L(H())),new Promise(((r,n)=>{k(this,Js).addLocalAssetSourceFromJSONURI(e,t?.matcher,(e=>{try{const t=ce(e);r(t)}catch(e){n(e)}}))}))}removeSource(e){ce(k(this,Js).removeAssetSource(e)),C(this,nl,al).call(this,e)}findAllSources(){return Ve(k(this,Js).findAllAssetSources())}findAssets(e,t){return new Promise(((r,n)=>{let o=t?.tags??[];Array.isArray(o)||(o=[o]);const i={perPage:t?.perPage??0,page:t?.page??0,query:t?.query??"",tags:o,groups:t?.groups??[],excludeGroups:t?.excludeGroups??[],locale:t?.locale??"",sortingOrder:t?.sortingOrder??"None",sortKey:t?.sortKey??"",sortActiveFirst:t?.sortActiveFirst??!1};k(this,Js).findAssetSourceAssets(e,i,(e=>{try{const t=ce(e);r({...t,nextPage:-1===t.nextPage?void 0:t.nextPage})}catch(e){n(e)}}))}))}async fetchAsset(e,t,r={}){Y("sourceId",e,H()),Y("assetId",t,H()),Y("params",r,W(q()));const n={locale:r.locale??""};return new Promise(((r,o)=>{k(this,Js).fetchAssetSourceAsset(e,t,n,(e=>{try{const t=ce(e);r(t||null)}catch(e){o(e)}}))}))}async getGroups(e){return ue((t=>k(this,Js).getAssetSourceGroups(e,t))).then((e=>Ve(e)))}getSupportedMimeTypes(e){return Ve(ce(k(this,Js).getAssetSourceSupportedMimeTypes(e)))}getCredits(e){const t=ce(k(this,Js).getAssetSourceCredits(e));if(t.name||t.url)return t.url?t:{name:t.name,url:void 0}}getLicense(e){const t=ce(k(this,Js).getAssetSourceLicense(e));if(t.name||t.url)return t.url?t:{name:t.name,url:void 0}}canManageAssets(e){return!!sl.get(k(this,Js))?.get(e)?.canManageAssets}addAssetToSource(e,t){ce(k(this,Js).addAssetToSource(e,t))}removeAssetFromSource(e,t){ce(k(this,Js).removeAssetFromSource(e,t))}async apply(e,t,r){const n={clipType:r?.clipType},o=(e,t)=>new Promise(((r,n)=>{k(this,Js).applyAssetSourceAsset(e,dl(t,e),(e=>{try{const t=ce(e);k(this,Js).isValid(t)?r(t):r(void 0)}catch(e){n(e)}}))}));if(k(this,el).size>0){return Array.from(k(this,el)).reduce(((e,t)=>(r,o)=>t(r,o,e,n)),o)(e,t)}return o(e,t)}async applyToBlock(e,t,r){const n=(e,t,r)=>ue((n=>k(this,Js).applyAssetSourceAssetToBlock(e,dl(t,e),r,n)));if(k(this,tl).size>0){return Array.from(k(this,tl)).reduce(((e,t)=>(r,n,o)=>t(r,n,o,e)),n)(e,t,r)}return n(e,t,r)}async applyProperty(e,t,r){return ue((n=>k(this,Js).applyAssetSourceProperty(e,dl(t,e),r,n)))}async defaultApplyAsset(e){return new Promise(((t,r)=>{k(this,Js).defaultApplyAsset(dl(e,""),(e=>{try{const r=ce(e);k(this,Js).isValid(r)?t(r):t(void 0)}catch(e){r(e)}}))}))}async defaultApplyAssetToBlock(e,t){return ue((r=>k(this,Js).defaultApplyAssetToBlock(dl(e,""),t,r)))}assetSourceContentsChanged(e){ce(k(this,Js).assetSourceContentsChanged(e))}dispose(){sl.delete(k(this,Js))}};function dl(e,t){return"context"in e&&e.context.sourceId===t&&"active"in e?e:{...e,active:e.active??!1,context:{sourceId:t}}}rl=u(null),Js=new WeakMap,el=new WeakMap,tl=new WeakMap,nl=new WeakSet,ol=function(e){const t={...e};return 0===t.groups?.length&&delete t.groups,t.locale||delete t.locale,t.label||delete t.label,0===t.tags?.length&&delete t.tags,t.credits?.name||t.credits?.url?t.credits.url||delete t.credits.url:delete t.credits,t.license?.name||t.license?.url?t.license.url||delete t.license.url:delete t.license,t.utm?.source||t.utm?.medium?(t.utm.source||delete t.utm.source,t.utm.medium||delete t.utm.medium):delete t.utm,t},il=function(e,t){sl.has(k(this,Js))||sl.set(k(this,Js),new Map),t.canManageAssets&&console.warn(`\nDEPRECATION WARNING:\n\n'canManageAssets' flag was found for asset source with the id '${e}'.\n\nThis flag is deprecated and will be removed in the next version. If you have used it to control if an upload buttons is rendered in the asset library, use the 'canAdd' options on an asset library entry. See documentation here: https://img.ly/docs/cesdk/ui/guides/customize-asset-library/`),sl.get(k(this,Js)).set(e,{canManageAssets:t.canManageAssets})},al=function(e){sl.get(k(this,Js))?.delete(e)},b(rl,1,"addSource",Zs,AssetAPI),b(rl,1,"addLocalSource",Qs,AssetAPI),b(rl,1,"addLocalAssetSourceFromJSONString",Ks,AssetAPI),b(rl,1,"addLocalAssetSourceFromJSONURI",Ys,AssetAPI),b(rl,1,"removeSource",Xs,AssetAPI),b(rl,1,"findAllSources",js,AssetAPI),g(rl,AssetAPI);var cl,ul,pl,hl,fl=(e=>(e[e.Information=0]="Information",e[e.Warning=1]="Warning",e[e.Error=2]="Error",e))(fl||{}),gl=(e=>(e[e.Free=0]="Free",e[e.VerticalStack=1]="VerticalStack",e[e.HorizontalStack=2]="HorizontalStack",e[e.DepthStack=3]="DepthStack",e))(gl||{});pl=[le({disabledInModes:["Playback"]})],ul=[le({disabledInModes:["Playback"]})],cl=[le({disabledInModes:["Playback"]})];var ml,bl,yl,vl,wl,kl,_l=class{constructor(e){m(hl,5,this),y(this,"ubique"),y(this,"notificationStream",(e=>{const t=this.ubique.addEventCallback("NotificationEvent",(t=>e({type:fl[t.type],i18n:t.i18n})));return()=>{t.dispose(),t.delete()}})),y(this,"designElementLifecycleStream",(e=>t=>{const r=this.ubique.addEventCallback(e,t);return()=>{r.dispose(),r.delete()}})),y(this,"historyStream",(e=>{const t=this.ubique.addEventCallback("HistoryUpdatedEvent",e);return()=>{t.dispose(),t.delete()}})),this.ubique=e.getInternalAPI()}dispose(){this.ubique.delete(),this.ubique=null}setErrorCallback(e,t){this.ubique.setErrorCallback(e,t)}getSelectedText(){return ce(this.ubique.getSelectedText())}hasComponent(e,t){return ce(this.ubique.hasComponent(e,t))}getValue(e,t,r){return ce(this.ubique.getValue(e,t,r))}execute(e,t){let r;const n=new Promise(((n,o)=>{r=this.ubique.ubqExecute(e,t,(e=>{try{const t=ce(e);n(t)}catch(e){o(e)}}))}));return ce(r),n}sendKey(e){return this.execute("ubq/inputs/keyboardkey",function(e){const t={key:255,characters:e.key,shiftIsHeld:e.shiftKey,commandIsHeld:e.metaKey||e.ctrlKey,optionIsHeld:e.altKey,timestamp:Date.now()};switch(e.key.toUpperCase()){case"0":t.key=0;break;case"1":t.key=1;break;case"2":t.key=2;break;case"3":t.key=3;break;case"4":t.key=4;break;case"5":t.key=5;break;case"6":t.key=6;break;case"7":t.key=7;break;case"8":t.key=8;break;case"9":t.key=9;break;case"A":t.key=10;break;case"B":t.key=11;break;case"C":t.key=12;break;case"D":t.key=13;break;case"E":t.key=14;break;case"F":t.key=15;break;case"G":t.key=16;break;case"H":t.key=17;break;case"I":t.key=18;break;case"J":t.key=19;break;case"K":t.key=20;break;case"L":t.key=21;break;case"M":t.key=22;break;case"N":t.key=23;break;case"O":t.key=24;break;case"P":t.key=25;break;case"Q":t.key=26;break;case"R":t.key=27;break;case"S":t.key=28;break;case"T":t.key=29;break;case"U":t.key=30;break;case"V":t.key=31;break;case"W":t.key=32;break;case"X":t.key=33;break;case"Y":t.key=34;break;case"Z":t.key=35;break;case" ":t.key=42;break;case"ESCAPE":t.key=43,t.characters="";break;case"BACKSPACE":t.key=40,t.characters="";break;case"DELETE":t.key=44,t.characters="";break;case"ENTER":t.key=41,t.characters=t.shiftIsHeld?"\u2028":"\n";break;case"CONTROL":t.key=45,t.characters="";break;case"ALT":t.key=46,t.characters="";break;case"SHIFT":t.key=47,t.characters="";break;case"ARROWLEFT":t.key=36,t.characters="";break;case"ARROWRIGHT":t.key=37,t.characters="";break;case"ARROWUP":t.key=38,t.characters="";break;case"ARROWDOWN":t.key=39,t.characters="";break;case"DEAD":t.key=255,t.characters=""}return t}(e))}changeSceneLayout(e,t,r,n){return this.execute("ubq/scene/changeLayout",[e,gl[t],r,n])}};b(hl=u(null),1,"getSelectedText",pl,_l),b(hl,1,"hasComponent",ul,_l),b(hl,1,"getValue",cl,_l),g(hl,_l),vl=[le({disabledInModes:["Playback"]})],yl=[de],bl=[le({disabledInModes:["Playback"]})],ml=[de];var VariableAPI=class{constructor(e){m(kl,5,this),_(this,wl),E(this,wl,e)}findAll(){return Ve(k(this,wl).findAllVariables())}setString(e,t){return Y("key",e,H()),Y("value",t,H()),ce(k(this,wl).setVariableString(e,t))}getString(e){return Y("key",e,H()),ce(k(this,wl).getVariableString(e))}remove(e){return Y("key",e,H()),ce(k(this,wl).removeVariable(e))}};kl=u(null),wl=new WeakMap,b(kl,1,"findAll",vl,VariableAPI),b(kl,1,"setString",yl,VariableAPI),b(kl,1,"getString",bl,VariableAPI),b(kl,1,"remove",ml,VariableAPI),g(kl,VariableAPI);var El=!1;var Cl="https://api.img.ly/activate";var Sl,Pl,xl,Tl=(Sl=P(),xl=null!=Sl?e(o(Sl)):{},((e,o,a,s)=>{if(o&&"object"==typeof o||"function"==typeof o)for(let l of n(o))i.call(e,l)||l===a||t(e,l,{get:()=>o[l],enumerable:!(s=r(o,l))||s.enumerable});return e})(!Pl&&Sl&&Sl.__esModule?xl:t(xl,"default",{value:Sl,enumerable:!0}),Sl)),Al="../../cesdk-v1.67.0-nightly.20251209-44YCFRT6.data",Fl="../../cesdk-v1.67.0-nightly.20251209-MZ7RLIEM.wasm",Ml=Tl.default,Il=!("undefined"==typeof window||!window.document||!window.document.createElement)&&navigator&&navigator.userAgent||"",Dl=(Il.indexOf("Edge"),Il.match(/msie|trident/i),/\b(iPad|iPhone|iPod)\b/.test(Il)&&/WebKit/.test(Il)&&!/Edge/.test(Il)&&("undefined"==typeof window||!("MSStream"in window))),Bl=/(WOW64|Win32|i[3-6]86)/.test(navigator.userAgent)||/Win32|i[3-6]86|armv[6-7]/.test(navigator.platform),Rl=(e,t)=>{if(null!=t){return[t,e.split("/").pop()].join("")}return new URL(e,window.location.origin)};function Ll(){try{return new WebAssembly.Memory({initial:Ol(Dl?512:32),maximum:Ol(Bl?1024:2048)})}catch(e){return new WebAssembly.Memory({initial:Ol(32),maximum:Ol(Bl?1024:2048)})}}function Ol(e){return 1024*e*1024/65536}async function Ul(e,t){const{core:r}=t,n=t.logger,o=Rl(Fl,r.baseURL).toString(),i=Rl(Al,r.baseURL).toString(),a=/electron/i.test(navigator.userAgent),s=function(e,t=fetch){return e.license&&0!==e.license.length&&"evaluation-license"!==e.license?e.license.length<128?t(Cl,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:e.license,userId:e.userId})}).then((e=>{if(e.ok)return e.json();throw new Error("Unfortunately we are experiencing a server down time and your License key cannot be validated. We're already working on a fix and will restore service soon. Should services not restore within the hour, kindly get in touch with our support team.")})).then((e=>{if("valid"===e.status)return e.license;throw"expired"===e.status?new Error("Thanks for using IMG.LY for creative editing. Please note that your license file or commercial use is expired. Please get in touch with our sales team to discuss extension of your commercial license."):new Error("The License Key (API Key) you are using to access the IMG.LY SDK is invalid. Please ensure that you are using the license key tied to your subscription and get in touch with our support team.")})):Promise.resolve(e.license):Promise.resolve("")}(t),l=a?await fetch(i,{credentials:"same-origin"}).then((e=>e.arrayBuffer())).then((e=>function(t,r){if(t!==i)return null;if(r===e.byteLength)return e;throw new Error(`Attempt to get preloaded package of unknown name or size: ${t} ${r}`)})):void 0;return new Promise(((r,a)=>{const d={getPreloadedPackage:l,locateFile:(e,t)=>e.endsWith(".wasm")?o:e.endsWith(".data")?i:t+e,print:e=>{e&&"undefined"!==e&&n(e,"Info")},printErr:e=>{e&&"undefined"!==e&&n(e,"Error")},logReadFiles:!1,printWithColors:!0,wasmMemory:Ll()};Ml(d).then((async n=>{n.specialHTMLTargets["!canvas"]=e;n.emscripten_ubq_settings_forceWebGL1=Dl||!!t?.forceWebGL1;const o=ce(n.createEngine("!canvas",t.audioOutput??"auto"));!function(e,t){ce(e.unlockWithLicense(t??""))}(o,await s),function(e,t){const r=new EditorAPI(e),n=new AssetAPI(e);if(r.setRole(t.role??"Creator"),El){const t=new _l(e);t.execute("cesdk/getVersionInfo").then((e=>console.debug(e))),t.execute("cesdk/getCapabilitiesInfo").then((e=>console.debug(e))),t.dispose()}r.setSetting("basePath",t.baseURL),r.setSetting("showBuildVersion",El||!1),t.featureFlags?.preventScrolling&&(r.setSetting("touch/singlePointPanning",!1),r.setSetting("touch/dragStartCanSelect",!1)),n.addLocalSource("ly.img.text"),function(){El&&(r.setSetting("features/hspSelectiveAdjustmentsEnabled",!1),r.setSetting("features/templatingEnabled",!0));const e=!!t.featureFlags?.singlePageMode;r.setSetting("features/singlePageModeEnabled",e),r.setSetting("features/effectsEnabled",!0)}(),function(){const t=new VariableAPI(e);(El||"undefined"!=typeof window&&window.Cypress)&&(t.setString("company_name","img.ly"),t.setString("first_name","Charly"),t.setString("last_name","Williams"),t.setString("address","742 Evergreen Terrace"),t.setString("city","Springfield"))}(),r.startTracking(t.license??"",t.userId??"")}(o,t),r(o)})).catch(a)}))}globalThis.ubq_browserTabHidden=!0;var $l={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};globalThis.ubq_browserTabHidden=!0;var ql={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};globalThis.ubq_browserTabHidden=!0;var Wl={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};globalThis.ubq_browserTabHidden=!0;var Hl,Nl,Vl,zl,Gl,jl,Xl,Yl,Kl={value:()=>"undefined"==typeof document||"visible"===document.visibilityState,subscribe(e){if("undefined"==typeof document)return()=>{};{const t=()=>{e("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",t),()=>{document.removeEventListener("visibilitychange",t)}}}};if((Nl=Hl||(Hl={})).start=function(e){return{...e,msg:"exportVideo"}},Nl.abort=function(){return{msg:"exportVideoAbort"}},Nl.finished=function(e){return{...e,msg:"exportVideoFinished"}},Nl.error=function(e){return{...e,msg:"exportVideoError"}},Nl.progress=function(e){return{...e,msg:"exportVideoProgress"}},Nl.log=function(e){return{...e,msg:"exportLog"}},(zl=Vl||(Vl={})).start=function(e){return{...e,msg:"exportAudio"}},zl.abort=function(){return{msg:"exportAudioAbort"}},zl.finished=function(e){return{...e,msg:"exportAudioFinished"}},zl.error=function(e){return{...e,msg:"exportAudioError"}},zl.progress=function(e){return{...e,msg:"exportAudioProgress"}},zl.log=function(e){return{...e,msg:"exportLog"}},(jl=Gl||(Gl={})).start=function(e){return{...e,msg:"exportStatic"}},jl.abort=function(){return{msg:"exportStaticAbort"}},jl.finished=function(e){return{...e,msg:"exportStaticFinished"}},jl.error=function(e){return{...e,msg:"exportStaticError"}},jl.log=function(e){return{...e,msg:"exportLog"}},(Yl=Xl||(Xl={})).start=function(e){return{...e,msg:"exportWithColorMask"}},Yl.abort=function(){return{msg:"exportWithColorMaskAbort"}},Yl.finished=function(e){return{...e,msg:"exportWithColorMaskFinished"}},Yl.error=function(e){return{...e,msg:"exportWithColorMaskError"}},Yl.log=function(e){return{...e,msg:"exportLog"}},"undefined"!=typeof WorkerGlobalScope){let e=!0;const t=function(){const e=new Set;return Object.assign((t=>(e.add(t),()=>e.delete(t))),{emit:t=>e.forEach((e=>e(t)))})}(),r={subscribe:t,value:()=>e,update:r=>{e=r,t.emit(r)}},n=new AbortController,o=new AbortController,i=new AbortController,a=new AbortController;self.onmessage=async({data:e})=>{switch(e.msg){case"setVisibility":r.update(e.visible);break;case"exportVideo":(async function(e,t,r,n,o){let i,a,s=0,l=null;const d=o.visibility??Wl,c=o.inactivityTimeout,u=d.subscribe((()=>{null!==l&&(l=Date.now()),globalThis.ubq_browserTabHidden=!d.value()}));let p=null;function h(){clearTimeout(a),u(),p?.()}try{let u=function(){!0===d.value()&&null!==l&&Date.now()-l>c?i(new Error("Video export timed out due to inactivity.")):(s<10&&g.update(),a=setTimeout(u,1))};const f=new OffscreenCanvas(64,64),g=await Ul(f,{...e,audioOutput:"none"}),m=new SceneAPI(g),b=new BlockAPI(g),y=new EditorAPI(g);if(p=()=>{g.delete()},n?.trackingMetadata&&y.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);y.setURIResolver(e)}n?.buffers&&y.restoreBuffers(n.buffers);const v=r.mimeType??"video/mp4";u(),await m.loadFromString(t,!0);const w=b.getDuration(r.block),k=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),g.exportVideoToBuffer(r.block,r.timeOffset??0,r.duration??w,v,((e,t,r)=>{s=e-t,l=Date.now(),o?.onProgress?.(e,t,r)}),(e=>{"error"in e?n(e.error):t(e)}),{h264Profile:r.h264Profile??77,h264Level:r.h264Level??52,framerate:r.framerate??30,videoBitrate:r.videoBitrate??0,audioBitrate:r.audioBitrate??0,useTargetSize:void 0!==r.targetWidth&&void 0!==r.targetHeight,targetWidth:r.targetWidth??0,targetHeight:r.targetHeight??0,allowTextOverhang:r.allowTextOverhang??!1})})),_=new Uint8Array(k.byteLength);return _.set(k),h(),{data:_,mimeType:v}}catch(e){throw h(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Hl.log({logLevel:t,message:e}))},abortSignal:n.signal},e.sceneString,e.exportOptions,e.workerOptions,{onProgress:(e,t,r)=>{self.postMessage(Hl.progress({renderedFrames:e,encodedFrames:t,totalFrames:r}))},visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Hl.finished(e))}),(e=>{self.postMessage(Hl.error({error:e}))}));break;case"exportVideoAbort":n.abort();break;case"exportAudio":(async function(e,t,r,n,o){let i,a,s=0,l=null;const d=o.visibility??$l,c=o.inactivityTimeout,u=d.subscribe((()=>{null!==l&&(l=Date.now()),globalThis.ubq_browserTabHidden=!d.value()}));let p=null;function h(){clearTimeout(a),u(),p?.()}try{let u=function(){!0===d.value()&&null!==l&&Date.now()-l>c?i(new Error("Audio export timed out due to inactivity.")):(s<10&&g.update(),a=setTimeout(u,1))};const f=new OffscreenCanvas(64,64),g=await Ul(f,{...e,audioOutput:"none"}),m=new SceneAPI(g),b=new BlockAPI(g),y=new EditorAPI(g);if(p=()=>{g.delete()},n?.trackingMetadata&&y.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);y.setURIResolver(e)}n?.buffers&&y.restoreBuffers(n.buffers),u(),await m.loadFromString(t,!0);if("//ly.img.ubq/page"===b.getType(r.block)){const e=b.getChildren(r.block);for(const t of e)try{let e=t;!b.supportsPlaybackControl(t)&&b.supportsFill(t)&&(e=b.getFill(t)),b.supportsPlaybackControl(e)&&(b.unstable_isAVResourceLoaded(e)||await b.forceLoadAVResource(e))}catch{}}else try{let e=r.block;!b.supportsPlaybackControl(r.block)&&b.supportsFill(r.block)&&(e=b.getFill(r.block)),b.supportsPlaybackControl(e)&&(b.unstable_isAVResourceLoaded(e)||await b.forceLoadAVResource(e))}catch{}const v=b.getDuration(r.block),w=r.mimeType??"audio/wav",k=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),g.exportAudioToBuffer(r.block,r.timeOffset??0,r.duration??v,w,((e,t,r)=>{s=e-t,l=Date.now(),o?.onProgress?.(e,t,r)}),(e=>{"error"in e?n(e.error):t(e)}),{sampleRate:r.sampleRate??48e3,numberOfChannels:r.numberOfChannels??2,skipEncoding:r.skipEncoding??!1})})),_=new Uint8Array(k.byteLength);return _.set(k),h(),{data:_,mimeType:w}}catch(e){throw h(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Vl.log({logLevel:t,message:e}))},abortSignal:o.signal},e.sceneString,e.exportOptions,e.workerOptions,{onProgress:(e,t,r)=>{self.postMessage(Vl.progress({renderedFrames:e,encodedFrames:t,totalFrames:r}))},visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Vl.finished(e))}),(e=>{self.postMessage(Vl.error({error:e}))}));break;case"exportAudioAbort":o.abort();break;case"exportStatic":(async function(e,t,r,n,o){let i,a,s=null;const l=o.visibility??ql,d=o.inactivityTimeout,c=l.subscribe((()=>{null!==s&&(s=Date.now()),globalThis.ubq_browserTabHidden=!l.value()}));let u=null;function p(){clearTimeout(a),c(),u?.()}try{let o=function(){!0===l.value()&&null!==s&&Date.now()-s>d?i(new Error("Video export timed out due to inactivity.")):(h.update(),a=setTimeout(o,1))};const c=new OffscreenCanvas(64,64),h=await Ul(c,{...e,audioOutput:"none"}),f=new SceneAPI(h),g=new EditorAPI(h);if(u=()=>{h.delete()},n?.trackingMetadata&&g.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);g.setURIResolver(e)}n?.buffers&&g.restoreBuffers(n.buffers);const m=r.mimeType??"image/png";o(),await f.loadFromString(t,!0);const b=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),h.exportToBuffer(r.block,m,(e=>{"error"in e?n(e.error):t(e)}),{pngCompressionLevel:r.pngCompressionLevel??5,jpegQuality:r.jpegQuality??.9,webpQuality:r.webpQuality??1,useTargetSize:null!=r.targetWidth&&null!=r.targetHeight,targetWidth:r.targetWidth??0,targetHeight:r.targetHeight??0,exportPdfWithHighCompatibility:r.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:r.exportPdfWithUnderlayer??!1,underlayerSpotColorName:r.underlayerSpotColorName??"",underlayerOffset:r.underlayerOffset??0,allowTextOverhang:r.allowTextOverhang??!1})})),y=new Uint8Array(b.byteLength);return y.set(b),p(),{data:y,mimeType:m}}catch(e){throw p(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Gl.log({logLevel:t,message:e}))},abortSignal:i.signal},e.sceneString,e.exportOptions,e.workerOptions,{visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Gl.finished(e))}),(e=>{self.postMessage(Gl.error({error:e}))}));break;case"exportStaticAbort":i.abort();break;case"exportWithColorMask":(async function(e,t,r,n,o){let i,a,s=null;const l=o.visibility??Kl,d=o.inactivityTimeout,c=l.subscribe((()=>{null!==s&&(s=Date.now()),globalThis.ubq_browserTabHidden=!l.value()}));let u=null;function p(){clearTimeout(a),c(),u?.()}try{let o=function(){!0===l.value()&&null!==s&&Date.now()-s>d?i(new Error("Video export timed out due to inactivity.")):(h.update(),a=setTimeout(o,1))};const c=new OffscreenCanvas(64,64),h=await Ul(c,{...e,audioOutput:"none"}),f=new SceneAPI(h),g=new EditorAPI(h);if(u=()=>{h.delete()},n?.trackingMetadata&&g.setTrackingMetadata(n.trackingMetadata),n?.uriResolver){let e=function(e,r){try{return t(e,r)}catch(t){return console.warn(`Error during execution of URI resolver: ${t}.\nMake sure the url resolver function does not reference any external variables. Falling back to default URI resolver.`),r(e)}};const t=(0,eval)(`'use strict';(${n.uriResolver})`);g.setURIResolver(e)}n?.buffers&&g.restoreBuffers(n.buffers);const m=r.mimeType??"image/png";o(),await f.loadFromString(t,!0);const[b,y]=await new Promise(((t,n)=>{i=n,e.abortSignal?.addEventListener("abort",(()=>{n(new Error("AbortSignal received"))})),h.exportWithColorMaskToBuffer(r.block,m,r.maskColorR,r.maskColorG,r.maskColorB,((e,r)=>{"error"in e?n(e.error):"error"in r?n(r.error):t([e,r])}),{pngCompressionLevel:r.pngCompressionLevel??5,jpegQuality:r.jpegQuality??.9,webpQuality:r.webpQuality??1,useTargetSize:null!=r.targetWidth&&null!=r.targetHeight,targetWidth:r.targetWidth??0,targetHeight:r.targetHeight??0,exportPdfWithHighCompatibility:r.exportPdfWithHighCompatibility??!0,exportPdfWithUnderlayer:r.exportPdfWithUnderlayer??!1,underlayerSpotColorName:r.underlayerSpotColorName??"",underlayerOffset:r.underlayerOffset??0,allowTextOverhang:r.allowTextOverhang??!1})})),v=new Uint8Array(b.byteLength);v.set(b);const w=new Uint8Array(y.byteLength);return w.set(y),p(),{data:[v,w],mimeType:m}}catch(e){throw p(),e}})({...e.config,logger:(e,t)=>{self.postMessage(Xl.log({logLevel:t,message:e}))},abortSignal:a.signal},e.sceneString,e.exportOptions,e.workerOptions,{visibility:r,inactivityTimeout:e.inactivityTimeout}).then((e=>{self.postMessage(Xl.finished(e))}),(e=>{self.postMessage(Xl.error({error:e}))}));break;case"exportWithColorMaskAbort":a.abort();break;default:console.error("Unknown message received ",e)}}}
|