@thorvg/lottie-player 1.0.0-pre.5 → 1.0.0-pre.7

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.
@@ -1,4 +1,4 @@
1
- "use strict";var e="undefined"!=typeof document?document.currentScript:null;const t=globalThis,r=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),o=new WeakMap;let a=class{constructor(e,t,r){if(this._$cssResult$=!0,r!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const t=this.t;if(r&&void 0===e){const r=void 0!==t&&1===t.length;r&&(e=o.get(t)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),r&&o.set(t,e))}return e}toString(){return this.cssText}};const i=r?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const r of e.cssRules)t+=r.cssText;return(e=>new a("string"==typeof e?e:e+"",void 0,n))(t)})(e):e,{is:s,defineProperty:l,getOwnPropertyDescriptor:u,getOwnPropertyNames:c,getOwnPropertySymbols:d,getPrototypeOf:h}=Object,p=globalThis,m=p.trustedTypes,f=m?m.emptyScript:"",g=p.reactiveElementPolyfillSupport,v=(e,t)=>e,y={toAttribute(e,t){switch(t){case Boolean:e=e?f:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let r=e;switch(t){case Boolean:r=null!==e;break;case Number:r=null===e?null:Number(e);break;case Object:case Array:try{r=JSON.parse(e)}catch(e){r=null}}return r}},w=(e,t)=>!s(e,t),b={attribute:!0,type:String,converter:y,reflect:!1,hasChanged:w};Symbol.metadata??=Symbol("metadata"),p.litPropertyMetadata??=new WeakMap;class _ extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=b){if(t.state&&(t.attribute=!1),this._$Ei(),this.elementProperties.set(e,t),!t.noAccessor){const r=Symbol(),n=this.getPropertyDescriptor(e,r,t);void 0!==n&&l(this.prototype,e,n)}}static getPropertyDescriptor(e,t,r){const{get:n,set:o}=u(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get(){return n?.call(this)},set(t){const a=n?.call(this);o.call(this,t),this.requestUpdate(e,a,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??b}static _$Ei(){if(this.hasOwnProperty(v("elementProperties")))return;const e=h(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(v("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(v("properties"))){const e=this.properties,t=[...c(e),...d(e)];for(const r of t)this.createProperty(r,e[r])}const e=this[Symbol.metadata];if(null!==e){const t=litPropertyMetadata.get(e);if(void 0!==t)for(const[e,r]of t)this.elementProperties.set(e,r)}this._$Eh=new Map;for(const[e,t]of this.elementProperties){const r=this._$Eu(e,t);void 0!==r&&this._$Eh.set(r,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const r=new Set(e.flat(1/0).reverse());for(const e of r)t.unshift(i(e))}else void 0!==e&&t.push(i(e));return t}static _$Eu(e,t){const r=t.attribute;return!1===r?void 0:"string"==typeof r?r:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const r of t.keys())this.hasOwnProperty(r)&&(e.set(r,this[r]),delete this[r]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((e,n)=>{if(r)e.adoptedStyleSheets=n.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(const r of n){const n=document.createElement("style"),o=t.litNonce;void 0!==o&&n.setAttribute("nonce",o),n.textContent=r.cssText,e.appendChild(n)}})(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,t,r){this._$AK(e,r)}_$EC(e,t){const r=this.constructor.elementProperties.get(e),n=this.constructor._$Eu(e,r);if(void 0!==n&&!0===r.reflect){const o=(void 0!==r.converter?.toAttribute?r.converter:y).toAttribute(t,r.type);this._$Em=e,null==o?this.removeAttribute(n):this.setAttribute(n,o),this._$Em=null}}_$AK(e,t){const r=this.constructor,n=r._$Eh.get(e);if(void 0!==n&&this._$Em!==n){const e=r.getPropertyOptions(n),o="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:y;this._$Em=n,this[n]=o.fromAttribute(t,e.type),this._$Em=null}}requestUpdate(e,t,r){if(void 0!==e){if(r??=this.constructor.getPropertyOptions(e),!(r.hasChanged??w)(this[e],t))return;this.P(e,t,r)}!1===this.isUpdatePending&&(this._$ES=this._$ET())}P(e,t,r){this._$AL.has(e)||this._$AL.set(e,t),!0===r.reflect&&this._$Em!==e&&(this._$Ej??=new Set).add(e)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const e=this.scheduleUpdate();return null!=e&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[e,t]of this._$Ep)this[e]=t;this._$Ep=void 0}const e=this.constructor.elementProperties;if(e.size>0)for(const[t,r]of e)!0!==r.wrapped||this._$AL.has(t)||void 0===this[t]||this.P(t,this[t],r)}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach((e=>e.hostUpdate?.())),this.update(t)):this._$EU()}catch(t){throw e=!1,this._$EU(),t}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach((e=>e.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Ej&&=this._$Ej.forEach((e=>this._$EC(e,this[e]))),this._$EU()}updated(e){}firstUpdated(e){}}_.elementStyles=[],_.shadowRootOptions={mode:"open"},_[v("elementProperties")]=new Map,_[v("finalized")]=new Map,g?.({ReactiveElement:_}),(p.reactiveElementVersions??=[]).push("2.0.4");const E=globalThis,S=E.trustedTypes,$=S?S.createPolicy("lit-html",{createHTML:e=>e}):void 0,x="$lit$",C=`lit$${Math.random().toFixed(9).slice(2)}$`,P="?"+C,T=`<${P}>`,k=document,A=()=>k.createComment(""),D=e=>null===e||"object"!=typeof e&&"function"!=typeof e,F=Array.isArray,R="[ \t\n\f\r]",M=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,B=/-->/g,O=/>/g,U=RegExp(`>|${R}(?:([^\\s"'>=/]+)(${R}*=${R}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),L=/'/g,j=/"/g,z=/^(?:script|style|textarea|title)$/i,I=(e=>(t,...r)=>({_$litType$:e,strings:t,values:r}))(1),N=Symbol.for("lit-noChange"),V=Symbol.for("lit-nothing"),W=new WeakMap,H=k.createTreeWalker(k,129);function G(e,t){if(!F(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==$?$.createHTML(t):t}class q{constructor({strings:e,_$litType$:t},r){let n;this.parts=[];let o=0,a=0;const i=e.length-1,s=this.parts,[l,u]=((e,t)=>{const r=e.length-1,n=[];let o,a=2===t?"<svg>":3===t?"<math>":"",i=M;for(let t=0;t<r;t++){const r=e[t];let s,l,u=-1,c=0;for(;c<r.length&&(i.lastIndex=c,l=i.exec(r),null!==l);)c=i.lastIndex,i===M?"!--"===l[1]?i=B:void 0!==l[1]?i=O:void 0!==l[2]?(z.test(l[2])&&(o=RegExp("</"+l[2],"g")),i=U):void 0!==l[3]&&(i=U):i===U?">"===l[0]?(i=o??M,u=-1):void 0===l[1]?u=-2:(u=i.lastIndex-l[2].length,s=l[1],i=void 0===l[3]?U:'"'===l[3]?j:L):i===j||i===L?i=U:i===B||i===O?i=M:(i=U,o=void 0);const d=i===U&&e[t+1].startsWith("/>")?" ":"";a+=i===M?r+T:u>=0?(n.push(s),r.slice(0,u)+x+r.slice(u)+C+d):r+C+(-2===u?t:d)}return[G(e,a+(e[r]||"<?>")+(2===t?"</svg>":3===t?"</math>":"")),n]})(e,t);if(this.el=q.createElement(l,r),H.currentNode=this.el.content,2===t||3===t){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(n=H.nextNode())&&s.length<i;){if(1===n.nodeType){if(n.hasAttributes())for(const e of n.getAttributeNames())if(e.endsWith(x)){const t=u[a++],r=n.getAttribute(e).split(C),i=/([.?@])?(.*)/.exec(t);s.push({type:1,index:o,name:i[2],strings:r,ctor:"."===i[1]?Z:"?"===i[1]?Y:"@"===i[1]?ee:K}),n.removeAttribute(e)}else e.startsWith(C)&&(s.push({type:6,index:o}),n.removeAttribute(e));if(z.test(n.tagName)){const e=n.textContent.split(C),t=e.length-1;if(t>0){n.textContent=S?S.emptyScript:"";for(let r=0;r<t;r++)n.append(e[r],A()),H.nextNode(),s.push({type:2,index:++o});n.append(e[t],A())}}}else if(8===n.nodeType)if(n.data===P)s.push({type:2,index:o});else{let e=-1;for(;-1!==(e=n.data.indexOf(C,e+1));)s.push({type:7,index:o}),e+=C.length-1}o++}}static createElement(e,t){const r=k.createElement("template");return r.innerHTML=e,r}}function Q(e,t,r=e,n){if(t===N)return t;let o=void 0!==n?r.o?.[n]:r.l;const a=D(t)?void 0:t._$litDirective$;return o?.constructor!==a&&(o?._$AO?.(!1),void 0===a?o=void 0:(o=new a(e),o._$AT(e,r,n)),void 0!==n?(r.o??=[])[n]=o:r.l=o),void 0!==o&&(t=Q(e,o._$AS(e,t.values),o,n)),t}class X{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:r}=this._$AD,n=(e?.creationScope??k).importNode(t,!0);H.currentNode=n;let o=H.nextNode(),a=0,i=0,s=r[0];for(;void 0!==s;){if(a===s.index){let t;2===s.type?t=new J(o,o.nextSibling,this,e):1===s.type?t=new s.ctor(o,s.name,s.strings,this,e):6===s.type&&(t=new te(o,this,e)),this._$AV.push(t),s=r[++i]}a!==s?.index&&(o=H.nextNode(),a++)}return H.currentNode=k,n}p(e){let t=0;for(const r of this._$AV)void 0!==r&&(void 0!==r.strings?(r._$AI(e,r,t),t+=r.strings.length-2):r._$AI(e[t])),t++}}class J{get _$AU(){return this._$AM?._$AU??this.v}constructor(e,t,r,n){this.type=2,this._$AH=V,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=r,this.options=n,this.v=n?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return void 0!==t&&11===e?.nodeType&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=Q(this,e,t),D(e)?e===V||null==e||""===e?(this._$AH!==V&&this._$AR(),this._$AH=V):e!==this._$AH&&e!==N&&this._(e):void 0!==e._$litType$?this.$(e):void 0!==e.nodeType?this.T(e):(e=>F(e)||"function"==typeof e?.[Symbol.iterator])(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==V&&D(this._$AH)?this._$AA.nextSibling.data=e:this.T(k.createTextNode(e)),this._$AH=e}$(e){const{values:t,_$litType$:r}=e,n="number"==typeof r?this._$AC(e):(void 0===r.el&&(r.el=q.createElement(G(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===n)this._$AH.p(t);else{const e=new X(n,this),r=e.u(this.options);e.p(t),this.T(r),this._$AH=e}}_$AC(e){let t=W.get(e.strings);return void 0===t&&W.set(e.strings,t=new q(e)),t}k(e){F(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let r,n=0;for(const o of e)n===t.length?t.push(r=new J(this.O(A()),this.O(A()),this,this.options)):r=t[n],r._$AI(o),n++;n<t.length&&(this._$AR(r&&r._$AB.nextSibling,n),t.length=n)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e&&e!==this._$AB;){const t=e.nextSibling;e.remove(),e=t}}setConnected(e){void 0===this._$AM&&(this.v=e,this._$AP?.(e))}}class K{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,r,n,o){this.type=1,this._$AH=V,this._$AN=void 0,this.element=e,this.name=t,this._$AM=n,this.options=o,r.length>2||""!==r[0]||""!==r[1]?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=V}_$AI(e,t=this,r,n){const o=this.strings;let a=!1;if(void 0===o)e=Q(this,e,t,0),a=!D(e)||e!==this._$AH&&e!==N,a&&(this._$AH=e);else{const n=e;let i,s;for(e=o[0],i=0;i<o.length-1;i++)s=Q(this,n[r+i],t,i),s===N&&(s=this._$AH[i]),a||=!D(s)||s!==this._$AH[i],s===V?e=V:e!==V&&(e+=(s??"")+o[i+1]),this._$AH[i]=s}a&&!n&&this.j(e)}j(e){e===V?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class Z extends K{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===V?void 0:e}}class Y extends K{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==V)}}class ee extends K{constructor(e,t,r,n,o){super(e,t,r,n,o),this.type=5}_$AI(e,t=this){if((e=Q(this,e,t,0)??V)===N)return;const r=this._$AH,n=e===V&&r!==V||e.capture!==r.capture||e.once!==r.once||e.passive!==r.passive,o=e!==V&&(r===V||n);n&&this.element.removeEventListener(this.name,this,r),o&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class te{constructor(e,t,r){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(e){Q(this,e)}}const re=E.litHtmlPolyfillSupport;re?.(q,J),(E.litHtmlVersions??=[]).push("3.2.0");class ne extends _{constructor(){super(...arguments),this.renderOptions={host:this},this.o=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this.o=((e,t,r)=>{const n=r?.renderBefore??t;let o=n._$litPart$;if(void 0===o){const e=r?.renderBefore??null;n._$litPart$=o=new J(t.insertBefore(A(),e),e,void 0,r??{})}return o._$AI(e),o})(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this.o?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this.o?.setConnected(!1)}render(){return N}}ne._$litElement$=!0,ne.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:ne});const oe=globalThis.litElementPolyfillSupport;oe?.({LitElement:ne}),(globalThis.litElementVersions??=[]).push("4.1.0");const ae={attribute:!0,type:String,converter:y,reflect:!1,hasChanged:w},ie=(e=ae,t,r)=>{const{kind:n,metadata:o}=r;let a=globalThis.litPropertyMetadata.get(o);if(void 0===a&&globalThis.litPropertyMetadata.set(o,a=new Map),a.set(r.name,e),"accessor"===n){const{name:n}=r;return{set(r){const o=t.get.call(this);t.set.call(this,r),this.requestUpdate(n,o,e)},init(t){return void 0!==t&&this.P(n,void 0,e),t}}}if("setter"===n){const{name:n}=r;return function(r){const o=this[n];t.call(this,r),this.requestUpdate(n,o,e)}}throw Error("Unsupported decorator location: "+n)};function se(e){return(t,r)=>"object"==typeof r?ie(e,t,r):((e,t,r)=>{const n=t.hasOwnProperty(r);return t.constructor.createProperty(r,n?{...e,wrapped:!0}:e),n?Object.getOwnPropertyDescriptor(t,r):void 0})(e,t,r)}for(var le,ue=[],ce=0;ce<256;++ce)ue.push((ce+256).toString(16).slice(1));var de=new Uint8Array(16);function he(){if(!le&&!(le="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return le(de)}var pe={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function me(e,t,r){if(pe.randomUUID&&!t&&!e)return pe.randomUUID();var n=(e=e||{}).random||(e.rng||he)();return n[6]=15&n[6]|64,n[8]=63&n[8]|128,function(e,t=0){return(ue[e[t+0]]+ue[e[t+1]]+ue[e[t+2]]+ue[e[t+3]]+"-"+ue[e[t+4]]+ue[e[t+5]]+"-"+ue[e[t+6]]+ue[e[t+7]]+"-"+ue[e[t+8]]+ue[e[t+9]]+"-"+ue[e[t+10]]+ue[e[t+11]]+ue[e[t+12]]+ue[e[t+13]]+ue[e[t+14]]+ue[e[t+15]]).toLowerCase()}(n)}var fe,ge=(fe="undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href,async function(t={}){var r,n,o=t,a=new Promise(((e,t)=>{r=e,n=t})),i="object"==typeof window,s="function"==typeof importScripts,l="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node;if(l){const{createRequire:t}=await Promise.resolve().then((function(){return Re}));var u=t("undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href)}var c,d,h=Object.assign({},o),p="./this.program",m=(e,t)=>{throw t},f="";if(l){var g=u("fs"),v=u("path");f=u("url").fileURLToPath(new URL("./","undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href)),d=e=>(e=H(e)?new URL(e):v.normalize(e),g.readFileSync(e)),c=(e,t=!0)=>(e=H(e)?new URL(e):v.normalize(e),new Promise(((r,n)=>{g.readFile(e,t?void 0:"utf8",((e,o)=>{e?n(e):r(t?o.buffer:o)}))}))),!o.thisProgram&&process.argv.length>1&&(p=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),m=(e,t)=>{throw process.exitCode=e,t}}else(i||s)&&(s?f=self.location.href:"undefined"!=typeof document&&document.currentScript&&(f=document.currentScript.src),fe&&(f=fe),f=f.startsWith("blob:")?"":f.substr(0,f.replace(/[?#].*/,"").lastIndexOf("/")+1),s&&(d=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),c=e=>H(e)?new Promise(((t,r)=>{var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?t(n.response):r(n.status)},n.onerror=r,n.send(null)})):fetch(e,{credentials:"same-origin"}).then((e=>e.ok?e.arrayBuffer():Promise.reject(new Error(e.status+" : "+e.url)))));var y=o.print||console.log.bind(console),w=o.printErr||console.error.bind(console);Object.assign(o,h),h=null,o.arguments&&o.arguments,o.thisProgram&&(p=o.thisProgram);var b,_,E,S,$,x,C,P,T,k,A=o.wasmBinary,D=!1;function F(){var e=b.buffer;o.HEAP8=E=new Int8Array(e),o.HEAP16=$=new Int16Array(e),o.HEAPU8=S=new Uint8Array(e),o.HEAPU16=x=new Uint16Array(e),o.HEAP32=C=new Int32Array(e),o.HEAPU32=P=new Uint32Array(e),o.HEAPF32=T=new Float32Array(e),o.HEAPF64=k=new Float64Array(e)}var R=[],M=[],B=[],O=0,U=null;function L(e){O++,o.monitorRunDependencies?.(O)}function j(e){if(O--,o.monitorRunDependencies?.(O),0==O&&U){var t=U;U=null,t()}}function z(e){o.onAbort?.(e),w(e="Aborted("+e+")"),D=!0,e+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(e);throw n(t),t}var I,N,V,W=e=>e.startsWith("data:application/octet-stream;base64,"),H=e=>e.startsWith("file://");function G(){if(o.locateFile){var t="thorvg-wasm.wasm";return W(t)?t:(r=t,o.locateFile?o.locateFile(r,f):f+r)}var r;return new URL("thorvg-wasm.wasm","undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href).href}function q(e){if(e==I&&A)return new Uint8Array(A);if(d)return d(e);throw"both async and sync fetching of the wasm failed"}function Q(e,t,r){return function(e){return A?Promise.resolve().then((()=>q(e))):c(e).then((e=>new Uint8Array(e)),(()=>q(e)))}(e).then((e=>WebAssembly.instantiate(e,t))).then(r,(e=>{w(`failed to asynchronously prepare wasm: ${e}`),z(e)}))}function X(e){this.name="ExitStatus",this.message=`Program terminated with exit(${e})`,this.status=e}var J=e=>{for(;e.length>0;)e.shift()(o)},K=o.noExitRuntime||!0,Z=e=>fr(e),Y=()=>vr(),ee="undefined"!=typeof TextDecoder?new TextDecoder:void 0,te=(e,t,r)=>{for(var n=t+r,o=t;e[o]&&!(o>=n);)++o;if(o-t>16&&e.buffer&&ee)return ee.decode(e.subarray(t,o));for(var a="";t<o;){var i=e[t++];if(128&i){var s=63&e[t++];if(192!=(224&i)){var l=63&e[t++];if((i=224==(240&i)?(15&i)<<12|s<<6|l:(7&i)<<18|s<<12|l<<6|63&e[t++])<65536)a+=String.fromCharCode(i);else{var u=i-65536;a+=String.fromCharCode(55296|u>>10,56320|1023&u)}}else a+=String.fromCharCode((31&i)<<6|s)}else a+=String.fromCharCode(i)}return a},re=(e,t)=>e?te(S,e,t):"";function ne(){var e=C[+$e.varargs>>2];return $e.varargs+=4,e}var oe=ne,ae={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=ae.isAbs(e),r="/"===e.substr(-1);return e=ae.normalizeArray(e.split("/").filter((e=>!!e)),!t).join("/"),e||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e},dirname:e=>{var t=ae.splitPath(e),r=t[0],n=t[1];return r||n?(n&&(n=n.substr(0,n.length-1)),r+n):"."},basename:e=>{if("/"===e)return"/";var t=(e=(e=ae.normalize(e)).replace(/\/$/,"")).lastIndexOf("/");return-1===t?e:e.substr(t+1)},join:(...e)=>ae.normalize(e.join("/")),join2:(e,t)=>ae.normalize(e+"/"+t)},ie=e=>(ie=(()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return e=>crypto.getRandomValues(e);if(l)try{var e=u("crypto");if(e.randomFillSync)return t=>e.randomFillSync(t);var t=e.randomBytes;return e=>(e.set(t(e.byteLength)),e)}catch(e){}z("initRandomDevice")})())(e),se={resolve:(...e)=>{for(var t="",r=!1,n=e.length-1;n>=-1&&!r;n--){var o=n>=0?e[n]:Se.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");if(!o)return"";t=o+"/"+t,r=ae.isAbs(o)}return t=ae.normalizeArray(t.split("/").filter((e=>!!e)),!r).join("/"),(r?"/":"")+t||"."},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=se.resolve(e).substr(1),t=se.resolve(t).substr(1);for(var n=r(e.split("/")),o=r(t.split("/")),a=Math.min(n.length,o.length),i=a,s=0;s<a;s++)if(n[s]!==o[s]){i=s;break}var l=[];for(s=i;s<n.length;s++)l.push("..");return(l=l.concat(o.slice(i))).join("/")}},le=[],ue=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},ce=(e,t,r,n)=>{if(!(n>0))return 0;for(var o=r,a=r+n-1,i=0;i<e.length;++i){var s=e.charCodeAt(i);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++i)),s<=127){if(r>=a)break;t[r++]=s}else if(s<=2047){if(r+1>=a)break;t[r++]=192|s>>6,t[r++]=128|63&s}else if(s<=65535){if(r+2>=a)break;t[r++]=224|s>>12,t[r++]=128|s>>6&63,t[r++]=128|63&s}else{if(r+3>=a)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};function de(e,t,r){var n=ue(e)+1,o=new Array(n),a=ce(e,o,0,o.length);return o.length=a,o}var he,pe,me,ge={ttys:[],init(){},shutdown(){},register(e,t){ge.ttys[e]={input:[],output:[],ops:t},Se.registerDevice(e,ge.stream_ops)},stream_ops:{open(e){var t=ge.ttys[e.node.rdev];if(!t)throw new Se.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 Se.ErrnoError(60);for(var a=0,i=0;i<n;i++){var s;try{s=e.tty.ops.get_char(e.tty)}catch(e){throw new Se.ErrnoError(29)}if(void 0===s&&0===a)throw new Se.ErrnoError(6);if(null==s)break;a++,t[r+i]=s}return a&&(e.node.timestamp=Date.now()),a},write(e,t,r,n,o){if(!e.tty||!e.tty.ops.put_char)throw new Se.ErrnoError(60);try{for(var a=0;a<n;a++)e.tty.ops.put_char(e.tty,t[r+a])}catch(e){throw new Se.ErrnoError(29)}return n&&(e.node.timestamp=Date.now()),a}},default_tty_ops:{get_char:e=>(()=>{if(!le.length){var e=null;if(l){var t=Buffer.alloc(256),r=0,n=process.stdin.fd;try{r=g.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;le=de(e)}return le.shift()})(),put_char(e,t){null===t||10===t?(y(te(e.output,0)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){e.output&&e.output.length>0&&(y(te(e.output,0)),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?(w(te(e.output,0)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){e.output&&e.output.length>0&&(w(te(e.output,0)),e.output=[])}}},ve=e=>{z()},ye={ops_table:null,mount:e=>ye.createNode(null,"/",16895,0),createNode(e,t,r,n){if(Se.isBlkdev(r)||Se.isFIFO(r))throw new Se.ErrnoError(63);ye.ops_table||={dir:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr,lookup:ye.node_ops.lookup,mknod:ye.node_ops.mknod,rename:ye.node_ops.rename,unlink:ye.node_ops.unlink,rmdir:ye.node_ops.rmdir,readdir:ye.node_ops.readdir,symlink:ye.node_ops.symlink},stream:{llseek:ye.stream_ops.llseek}},file:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr},stream:{llseek:ye.stream_ops.llseek,read:ye.stream_ops.read,write:ye.stream_ops.write,allocate:ye.stream_ops.allocate,mmap:ye.stream_ops.mmap,msync:ye.stream_ops.msync}},link:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr,readlink:ye.node_ops.readlink},stream:{}},chrdev:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr},stream:Se.chrdev_stream_ops}};var o=Se.createNode(e,t,r,n);return Se.isDir(o.mode)?(o.node_ops=ye.ops_table.dir.node,o.stream_ops=ye.ops_table.dir.stream,o.contents={}):Se.isFile(o.mode)?(o.node_ops=ye.ops_table.file.node,o.stream_ops=ye.ops_table.file.stream,o.usedBytes=0,o.contents=null):Se.isLink(o.mode)?(o.node_ops=ye.ops_table.link.node,o.stream_ops=ye.ops_table.link.stream):Se.isChrdev(o.mode)&&(o.node_ops=ye.ops_table.chrdev.node,o.stream_ops=ye.ops_table.chrdev.stream),o.timestamp=Date.now(),e&&(e.contents[t]=o,e.timestamp=o.timestamp),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=Se.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,Se.isDir(e.mode)?t.size=4096:Se.isFile(e.mode)?t.size=e.usedBytes:Se.isLink(e.mode)?t.size=e.link.length:t.size=0,t.atime=new Date(e.timestamp),t.mtime=new Date(e.timestamp),t.ctime=new Date(e.timestamp),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(e,t){void 0!==t.mode&&(e.mode=t.mode),void 0!==t.timestamp&&(e.timestamp=t.timestamp),void 0!==t.size&&ye.resizeFileStorage(e,t.size)},lookup(e,t){throw Se.genericErrors[44]},mknod:(e,t,r,n)=>ye.createNode(e,t,r,n),rename(e,t,r){if(Se.isDir(e.mode)){var n;try{n=Se.lookupNode(t,r)}catch(e){}if(n)for(var o in n.contents)throw new Se.ErrnoError(55)}delete e.parent.contents[e.name],e.parent.timestamp=Date.now(),e.name=r,t.contents[r]=e,t.timestamp=e.parent.timestamp},unlink(e,t){delete e.contents[t],e.timestamp=Date.now()},rmdir(e,t){var r=Se.lookupNode(e,t);for(var n in r.contents)throw new Se.ErrnoError(55);delete e.contents[t],e.timestamp=Date.now()},readdir(e){var t=[".",".."];for(var r of Object.keys(e.contents))t.push(r);return t},symlink(e,t,r){var n=ye.createNode(e,t,41471,0);return n.link=r,n},readlink(e){if(!Se.isLink(e.mode))throw new Se.ErrnoError(28);return e.link}},stream_ops:{read(e,t,r,n,o){var a=e.node.contents;if(o>=e.node.usedBytes)return 0;var i=Math.min(e.node.usedBytes-o,n);if(i>8&&a.subarray)t.set(a.subarray(o,o+i),r);else for(var s=0;s<i;s++)t[r+s]=a[o+s];return i},write(e,t,r,n,o,a){if(t.buffer===E.buffer&&(a=!1),!n)return 0;var i=e.node;if(i.timestamp=Date.now(),t.subarray&&(!i.contents||i.contents.subarray)){if(a)return i.contents=t.subarray(r,r+n),i.usedBytes=n,n;if(0===i.usedBytes&&0===o)return i.contents=t.slice(r,r+n),i.usedBytes=n,n;if(o+n<=i.usedBytes)return i.contents.set(t.subarray(r,r+n),o),n}if(ye.expandFileStorage(i,o+n),i.contents.subarray&&t.subarray)i.contents.set(t.subarray(r,r+n),o);else for(var s=0;s<n;s++)i.contents[o+s]=t[r+s];return i.usedBytes=Math.max(i.usedBytes,o+n),n},llseek(e,t,r){var n=t;if(1===r?n+=e.position:2===r&&Se.isFile(e.node.mode)&&(n+=e.node.usedBytes),n<0)throw new Se.ErrnoError(28);return n},allocate(e,t,r){ye.expandFileStorage(e.node,t+r),e.node.usedBytes=Math.max(e.node.usedBytes,t+r)},mmap(e,t,r,n,o){if(!Se.isFile(e.node.mode))throw new Se.ErrnoError(43);var a,i,s=e.node.contents;if(2&o||!s||s.buffer!==E.buffer){if(i=!0,!(a=ve()))throw new Se.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)),E.set(s,a))}else i=!1,a=s.byteOffset;return{ptr:a,allocated:i}},msync:(e,t,r,n,o)=>(ye.stream_ops.write(e,t,0,n,r,!1),0)}},we=(e,t,r,n,o,a)=>{Se.createDataFile(e,t,r,n,o,a)},be=o.preloadPlugins||[],_e=(e,t,r,n,o,a,i,s,l,u)=>{var d=t?se.resolve(ae.join2(e,t)):e;function h(r){function c(r){u?.(),s||we(e,t,r,n,o,l),a?.(),j()}((e,t,r,n)=>{"undefined"!=typeof Browser&&Browser.init();var o=!1;return be.forEach((a=>{o||a.canHandle(t)&&(a.handle(e,t,r,n),o=!0)})),o})(r,d,c,(()=>{i?.(),j()}))||c(r)}L(),"string"==typeof r?((e,t,r)=>{var n=`al ${e}`;c(e).then((e=>{t(new Uint8Array(e)),n&&j()}),(t=>{if(!r)throw`Loading data file "${e}" failed.`;r()})),n&&L()})(r,h,i):h(r)},Ee=(e,t)=>{var r=0;return e&&(r|=365),t&&(r|=146),r},Se={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{constructor(e){this.name="ErrnoError",this.errno=e}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(e){this.node=e}get isRead(){return 1!=(2097155&this.flags)}get isWrite(){return!!(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{constructor(e,t,r,n){e||(e=this),this.parent=e,this.mount=e.mount,this.mounted=null,this.id=Se.nextInode++,this.name=t,this.mode=r,this.node_ops={},this.stream_ops={},this.rdev=n,this.readMode=365,this.writeMode=146}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 Se.isDir(this.mode)}get isDevice(){return Se.isChrdev(this.mode)}},lookupPath(e,t={}){if(!(e=se.resolve(e)))return{path:"",node:null};if((t=Object.assign({follow_mount:!0,recurse_count:0},t)).recurse_count>8)throw new Se.ErrnoError(32);for(var r=e.split("/").filter((e=>!!e)),n=Se.root,o="/",a=0;a<r.length;a++){var i=a===r.length-1;if(i&&t.parent)break;if(n=Se.lookupNode(n,r[a]),o=ae.join2(o,r[a]),Se.isMountpoint(n)&&(!i||i&&t.follow_mount)&&(n=n.mounted.root),!i||t.follow)for(var s=0;Se.isLink(n.mode);){var l=Se.readlink(o);if(o=se.resolve(ae.dirname(o),l),n=Se.lookupPath(o,{recurse_count:t.recurse_count+1}).node,s++>40)throw new Se.ErrnoError(32)}}return{path:o,node:n}},getPath(e){for(var t;;){if(Se.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)%Se.nameTable.length},hashAddNode(e){var t=Se.hashName(e.parent.id,e.name);e.name_next=Se.nameTable[t],Se.nameTable[t]=e},hashRemoveNode(e){var t=Se.hashName(e.parent.id,e.name);if(Se.nameTable[t]===e)Se.nameTable[t]=e.name_next;else for(var r=Se.nameTable[t];r;){if(r.name_next===e){r.name_next=e.name_next;break}r=r.name_next}},lookupNode(e,t){var r=Se.mayLookup(e);if(r)throw new Se.ErrnoError(r);for(var n=Se.hashName(e.id,t),o=Se.nameTable[n];o;o=o.name_next){var a=o.name;if(o.parent.id===e.id&&a===t)return o}return Se.lookup(e,t)},createNode(e,t,r,n){var o=new Se.FSNode(e,t,r,n);return Se.hashAddNode(o),o},destroyNode(e){Se.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&~e),flagsToPermissionString(e){var t=["r","w","rw"][3&e];return 512&e&&(t+="w"),t},nodePermissions:(e,t)=>Se.ignorePermissions||(!t.includes("r")||292&e.mode)&&(!t.includes("w")||146&e.mode)&&(!t.includes("x")||73&e.mode)?0:2,mayLookup(e){if(!Se.isDir(e.mode))return 54;var t=Se.nodePermissions(e,"x");return t||(e.node_ops.lookup?0:2)},mayCreate(e,t){try{return Se.lookupNode(e,t),20}catch(e){}return Se.nodePermissions(e,"wx")},mayDelete(e,t,r){var n;try{n=Se.lookupNode(e,t)}catch(e){return e.errno}var o=Se.nodePermissions(e,"wx");if(o)return o;if(r){if(!Se.isDir(n.mode))return 54;if(Se.isRoot(n)||Se.getPath(n)===Se.cwd())return 10}else if(Se.isDir(n.mode))return 31;return 0},mayOpen:(e,t)=>e?Se.isLink(e.mode)?32:Se.isDir(e.mode)&&("r"!==Se.flagsToPermissionString(t)||512&t)?31:Se.nodePermissions(e,Se.flagsToPermissionString(t)):44,MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=Se.MAX_OPEN_FDS;e++)if(!Se.streams[e])return e;throw new Se.ErrnoError(33)},getStreamChecked(e){var t=Se.getStream(e);if(!t)throw new Se.ErrnoError(8);return t},getStream:e=>Se.streams[e],createStream:(e,t=-1)=>(e=Object.assign(new Se.FSStream,e),-1==t&&(t=Se.nextfd()),e.fd=t,Se.streams[t]=e,e),closeStream(e){Se.streams[e]=null},dupStream(e,t=-1){var r=Se.createStream(e,t);return r.stream_ops?.dup?.(r),r},chrdev_stream_ops:{open(e){var t=Se.getDevice(e.node.rdev);e.stream_ops=t.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new Se.ErrnoError(70)}},major:e=>e>>8,minor:e=>255&e,makedev:(e,t)=>e<<8|t,registerDevice(e,t){Se.devices[e]={stream_ops:t}},getDevice:e=>Se.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),Se.syncFSRequests++,Se.syncFSRequests>1&&w(`warning: ${Se.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var r=Se.getMounts(Se.root.mount),n=0;function o(e){return Se.syncFSRequests--,t(e)}function a(e){if(e)return a.errored?void 0:(a.errored=!0,o(e));++n>=r.length&&o(null)}r.forEach((t=>{if(!t.type.syncfs)return a(null);t.type.syncfs(t,e,a)}))},mount(e,t,r){var n,o="/"===r,a=!r;if(o&&Se.root)throw new Se.ErrnoError(10);if(!o&&!a){var i=Se.lookupPath(r,{follow_mount:!1});if(r=i.path,n=i.node,Se.isMountpoint(n))throw new Se.ErrnoError(10);if(!Se.isDir(n.mode))throw new Se.ErrnoError(54)}var s={type:e,opts:t,mountpoint:r,mounts:[]},l=e.mount(s);return l.mount=s,s.root=l,o?Se.root=l:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),l},unmount(e){var t=Se.lookupPath(e,{follow_mount:!1});if(!Se.isMountpoint(t.node))throw new Se.ErrnoError(28);var r=t.node,n=r.mounted,o=Se.getMounts(n);Object.keys(Se.nameTable).forEach((e=>{for(var t=Se.nameTable[e];t;){var r=t.name_next;o.includes(t.mount)&&Se.destroyNode(t),t=r}})),r.mounted=null;var a=r.mount.mounts.indexOf(n);r.mount.mounts.splice(a,1)},lookup:(e,t)=>e.node_ops.lookup(e,t),mknod(e,t,r){var n=Se.lookupPath(e,{parent:!0}).node,o=ae.basename(e);if(!o||"."===o||".."===o)throw new Se.ErrnoError(28);var a=Se.mayCreate(n,o);if(a)throw new Se.ErrnoError(a);if(!n.node_ops.mknod)throw new Se.ErrnoError(63);return n.node_ops.mknod(n,o,t,r)},create:(e,t)=>(t=void 0!==t?t:438,t&=4095,t|=32768,Se.mknod(e,t,0)),mkdir:(e,t)=>(t=void 0!==t?t:511,t&=1023,t|=16384,Se.mknod(e,t,0)),mkdirTree(e,t){for(var r=e.split("/"),n="",o=0;o<r.length;++o)if(r[o]){n+="/"+r[o];try{Se.mkdir(n,t)}catch(e){if(20!=e.errno)throw e}}},mkdev:(e,t,r)=>(void 0===r&&(r=t,t=438),t|=8192,Se.mknod(e,t,r)),symlink(e,t){if(!se.resolve(e))throw new Se.ErrnoError(44);var r=Se.lookupPath(t,{parent:!0}).node;if(!r)throw new Se.ErrnoError(44);var n=ae.basename(t),o=Se.mayCreate(r,n);if(o)throw new Se.ErrnoError(o);if(!r.node_ops.symlink)throw new Se.ErrnoError(63);return r.node_ops.symlink(r,n,e)},rename(e,t){var r,n,o=ae.dirname(e),a=ae.dirname(t),i=ae.basename(e),s=ae.basename(t);if(r=Se.lookupPath(e,{parent:!0}).node,n=Se.lookupPath(t,{parent:!0}).node,!r||!n)throw new Se.ErrnoError(44);if(r.mount!==n.mount)throw new Se.ErrnoError(75);var l,u=Se.lookupNode(r,i),c=se.relative(e,a);if("."!==c.charAt(0))throw new Se.ErrnoError(28);if("."!==(c=se.relative(t,o)).charAt(0))throw new Se.ErrnoError(55);try{l=Se.lookupNode(n,s)}catch(e){}if(u!==l){var d=Se.isDir(u.mode),h=Se.mayDelete(r,i,d);if(h)throw new Se.ErrnoError(h);if(h=l?Se.mayDelete(n,s,d):Se.mayCreate(n,s))throw new Se.ErrnoError(h);if(!r.node_ops.rename)throw new Se.ErrnoError(63);if(Se.isMountpoint(u)||l&&Se.isMountpoint(l))throw new Se.ErrnoError(10);if(n!==r&&(h=Se.nodePermissions(r,"w")))throw new Se.ErrnoError(h);Se.hashRemoveNode(u);try{r.node_ops.rename(u,n,s),u.parent=n}catch(e){throw e}finally{Se.hashAddNode(u)}}},rmdir(e){var t=Se.lookupPath(e,{parent:!0}).node,r=ae.basename(e),n=Se.lookupNode(t,r),o=Se.mayDelete(t,r,!0);if(o)throw new Se.ErrnoError(o);if(!t.node_ops.rmdir)throw new Se.ErrnoError(63);if(Se.isMountpoint(n))throw new Se.ErrnoError(10);t.node_ops.rmdir(t,r),Se.destroyNode(n)},readdir(e){var t=Se.lookupPath(e,{follow:!0}).node;if(!t.node_ops.readdir)throw new Se.ErrnoError(54);return t.node_ops.readdir(t)},unlink(e){var t=Se.lookupPath(e,{parent:!0}).node;if(!t)throw new Se.ErrnoError(44);var r=ae.basename(e),n=Se.lookupNode(t,r),o=Se.mayDelete(t,r,!1);if(o)throw new Se.ErrnoError(o);if(!t.node_ops.unlink)throw new Se.ErrnoError(63);if(Se.isMountpoint(n))throw new Se.ErrnoError(10);t.node_ops.unlink(t,r),Se.destroyNode(n)},readlink(e){var t=Se.lookupPath(e).node;if(!t)throw new Se.ErrnoError(44);if(!t.node_ops.readlink)throw new Se.ErrnoError(28);return se.resolve(Se.getPath(t.parent),t.node_ops.readlink(t))},stat(e,t){var r=Se.lookupPath(e,{follow:!t}).node;if(!r)throw new Se.ErrnoError(44);if(!r.node_ops.getattr)throw new Se.ErrnoError(63);return r.node_ops.getattr(r)},lstat:e=>Se.stat(e,!0),chmod(e,t,r){var n;if(!(n="string"==typeof e?Se.lookupPath(e,{follow:!r}).node:e).node_ops.setattr)throw new Se.ErrnoError(63);n.node_ops.setattr(n,{mode:4095&t|-4096&n.mode,timestamp:Date.now()})},lchmod(e,t){Se.chmod(e,t,!0)},fchmod(e,t){var r=Se.getStreamChecked(e);Se.chmod(r.node,t)},chown(e,t,r,n){var o;if(!(o="string"==typeof e?Se.lookupPath(e,{follow:!n}).node:e).node_ops.setattr)throw new Se.ErrnoError(63);o.node_ops.setattr(o,{timestamp:Date.now()})},lchown(e,t,r){Se.chown(e,t,r,!0)},fchown(e,t,r){var n=Se.getStreamChecked(e);Se.chown(n.node,t,r)},truncate(e,t){if(t<0)throw new Se.ErrnoError(28);var r;if(!(r="string"==typeof e?Se.lookupPath(e,{follow:!0}).node:e).node_ops.setattr)throw new Se.ErrnoError(63);if(Se.isDir(r.mode))throw new Se.ErrnoError(31);if(!Se.isFile(r.mode))throw new Se.ErrnoError(28);var n=Se.nodePermissions(r,"w");if(n)throw new Se.ErrnoError(n);r.node_ops.setattr(r,{size:t,timestamp:Date.now()})},ftruncate(e,t){var r=Se.getStreamChecked(e);if(!(2097155&r.flags))throw new Se.ErrnoError(28);Se.truncate(r.node,t)},utime(e,t,r){var n=Se.lookupPath(e,{follow:!0}).node;n.node_ops.setattr(n,{timestamp:Math.max(t,r)})},open(e,t,r){if(""===e)throw new Se.ErrnoError(44);var n;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=void 0===r?438:r)|32768:0,"object"==typeof e)n=e;else{e=ae.normalize(e);try{n=Se.lookupPath(e,{follow:!(131072&t)}).node}catch(e){}}var a=!1;if(64&t)if(n){if(128&t)throw new Se.ErrnoError(20)}else n=Se.mknod(e,r,0),a=!0;if(!n)throw new Se.ErrnoError(44);if(Se.isChrdev(n.mode)&&(t&=-513),65536&t&&!Se.isDir(n.mode))throw new Se.ErrnoError(54);if(!a){var i=Se.mayOpen(n,t);if(i)throw new Se.ErrnoError(i)}512&t&&!a&&Se.truncate(n,0),t&=-131713;var s=Se.createStream({node:n,path:Se.getPath(n),flags:t,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return s.stream_ops.open&&s.stream_ops.open(s),!o.logReadFiles||1&t||(Se.readFiles||(Se.readFiles={}),e in Se.readFiles||(Se.readFiles[e]=1)),s},close(e){if(Se.isClosed(e))throw new Se.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{Se.closeStream(e.fd)}e.fd=null},isClosed:e=>null===e.fd,llseek(e,t,r){if(Se.isClosed(e))throw new Se.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new Se.ErrnoError(70);if(0!=r&&1!=r&&2!=r)throw new Se.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 Se.ErrnoError(28);if(Se.isClosed(e))throw new Se.ErrnoError(8);if(1==(2097155&e.flags))throw new Se.ErrnoError(8);if(Se.isDir(e.node.mode))throw new Se.ErrnoError(31);if(!e.stream_ops.read)throw new Se.ErrnoError(28);var a=void 0!==o;if(a){if(!e.seekable)throw new Se.ErrnoError(70)}else o=e.position;var i=e.stream_ops.read(e,t,r,n,o);return a||(e.position+=i),i},write(e,t,r,n,o,a){if(n<0||o<0)throw new Se.ErrnoError(28);if(Se.isClosed(e))throw new Se.ErrnoError(8);if(!(2097155&e.flags))throw new Se.ErrnoError(8);if(Se.isDir(e.node.mode))throw new Se.ErrnoError(31);if(!e.stream_ops.write)throw new Se.ErrnoError(28);e.seekable&&1024&e.flags&&Se.llseek(e,0,2);var i=void 0!==o;if(i){if(!e.seekable)throw new Se.ErrnoError(70)}else o=e.position;var s=e.stream_ops.write(e,t,r,n,o,a);return i||(e.position+=s),s},allocate(e,t,r){if(Se.isClosed(e))throw new Se.ErrnoError(8);if(t<0||r<=0)throw new Se.ErrnoError(28);if(!(2097155&e.flags))throw new Se.ErrnoError(8);if(!Se.isFile(e.node.mode)&&!Se.isDir(e.node.mode))throw new Se.ErrnoError(43);if(!e.stream_ops.allocate)throw new Se.ErrnoError(138);e.stream_ops.allocate(e,t,r)},mmap(e,t,r,n,o){if(2&n&&!(2&o)&&2!=(2097155&e.flags))throw new Se.ErrnoError(2);if(1==(2097155&e.flags))throw new Se.ErrnoError(2);if(!e.stream_ops.mmap)throw new Se.ErrnoError(43);if(!t)throw new Se.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 Se.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=Se.open(e,t.flags),o=Se.stat(e).size,a=new Uint8Array(o);return Se.read(n,a,0,o,0),"utf8"===t.encoding?r=te(a,0):"binary"===t.encoding&&(r=a),Se.close(n),r},writeFile(e,t,r={}){r.flags=r.flags||577;var n=Se.open(e,r.flags,r.mode);if("string"==typeof t){var o=new Uint8Array(ue(t)+1),a=ce(t,o,0,o.length);Se.write(n,o,0,a,void 0,r.canOwn)}else{if(!ArrayBuffer.isView(t))throw new Error("Unsupported data type");Se.write(n,t,0,t.byteLength,void 0,r.canOwn)}Se.close(n)},cwd:()=>Se.currentPath,chdir(e){var t=Se.lookupPath(e,{follow:!0});if(null===t.node)throw new Se.ErrnoError(44);if(!Se.isDir(t.node.mode))throw new Se.ErrnoError(54);var r=Se.nodePermissions(t.node,"x");if(r)throw new Se.ErrnoError(r);Se.currentPath=t.path},createDefaultDirectories(){Se.mkdir("/tmp"),Se.mkdir("/home"),Se.mkdir("/home/web_user")},createDefaultDevices(){Se.mkdir("/dev"),Se.registerDevice(Se.makedev(1,3),{read:()=>0,write:(e,t,r,n,o)=>n}),Se.mkdev("/dev/null",Se.makedev(1,3)),ge.register(Se.makedev(5,0),ge.default_tty_ops),ge.register(Se.makedev(6,0),ge.default_tty1_ops),Se.mkdev("/dev/tty",Se.makedev(5,0)),Se.mkdev("/dev/tty1",Se.makedev(6,0));var e=new Uint8Array(1024),t=0,r=()=>(0===t&&(t=ie(e).byteLength),e[--t]);Se.createDevice("/dev","random",r),Se.createDevice("/dev","urandom",r),Se.mkdir("/dev/shm"),Se.mkdir("/dev/shm/tmp")},createSpecialDirectories(){Se.mkdir("/proc");var e=Se.mkdir("/proc/self");Se.mkdir("/proc/self/fd"),Se.mount({mount(){var t=Se.createNode(e,"fd",16895,73);return t.node_ops={lookup(e,t){var r=+t,n=Se.getStreamChecked(r),o={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path}};return o.parent=o,o}},t}},{},"/proc/self/fd")},createStandardStreams(e,t,r){e?Se.createDevice("/dev","stdin",e):Se.symlink("/dev/tty","/dev/stdin"),t?Se.createDevice("/dev","stdout",null,t):Se.symlink("/dev/tty","/dev/stdout"),r?Se.createDevice("/dev","stderr",null,r):Se.symlink("/dev/tty1","/dev/stderr"),Se.open("/dev/stdin",0),Se.open("/dev/stdout",1),Se.open("/dev/stderr",1)},staticInit(){[44].forEach((e=>{Se.genericErrors[e]=new Se.ErrnoError(e),Se.genericErrors[e].stack="<generic error, no stack>"})),Se.nameTable=new Array(4096),Se.mount(ye,{},"/"),Se.createDefaultDirectories(),Se.createDefaultDevices(),Se.createSpecialDirectories(),Se.filesystems={MEMFS:ye}},init(e,t,r){Se.initialized=!0,e??=o.stdin,t??=o.stdout,r??=o.stderr,Se.createStandardStreams(e,t,r)},quit(){Se.initialized=!1;for(var e=0;e<Se.streams.length;e++){var t=Se.streams[e];t&&Se.close(t)}},findObject(e,t){var r=Se.analyzePath(e,t);return r.exists?r.object:null},analyzePath(e,t){try{e=(n=Se.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=Se.lookupPath(e,{parent:!0});r.parentExists=!0,r.parentPath=n.path,r.parentObject=n.node,r.name=ae.basename(e),n=Se.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:Se.getPath(e);for(var o=t.split("/").reverse();o.length;){var a=o.pop();if(a){var i=ae.join2(e,a);try{Se.mkdir(i)}catch(e){}e=i}}return i},createFile(e,t,r,n,o){var a=ae.join2("string"==typeof e?e:Se.getPath(e),t),i=Ee(n,o);return Se.create(a,i)},createDataFile(e,t,r,n,o,a){var i=t;e&&(e="string"==typeof e?e:Se.getPath(e),i=t?ae.join2(e,t):e);var s=Ee(n,o),l=Se.create(i,s);if(r){if("string"==typeof r){for(var u=new Array(r.length),c=0,d=r.length;c<d;++c)u[c]=r.charCodeAt(c);r=u}Se.chmod(l,146|s);var h=Se.open(l,577);Se.write(h,r,0,r.length,0,a),Se.close(h),Se.chmod(l,s)}},createDevice(e,t,r,n){var o=ae.join2("string"==typeof e?e:Se.getPath(e),t),a=Ee(!!r,!!n);Se.createDevice.major||(Se.createDevice.major=64);var i=Se.makedev(Se.createDevice.major++,0);return Se.registerDevice(i,{open(e){e.seekable=!1},close(e){n?.buffer?.length&&n(10)},read(e,t,n,o,a){for(var i=0,s=0;s<o;s++){var l;try{l=r()}catch(e){throw new Se.ErrnoError(29)}if(void 0===l&&0===i)throw new Se.ErrnoError(6);if(null==l)break;i++,t[n+s]=l}return i&&(e.node.timestamp=Date.now()),i},write(e,t,r,o,a){for(var i=0;i<o;i++)try{n(t[r+i])}catch(e){throw new Se.ErrnoError(29)}return o&&(e.node.timestamp=Date.now()),i}}),Se.mkdev(o,a,i)},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=d(e.url),e.usedBytes=e.contents.length}catch(e){throw new Se.ErrnoError(29)}},createLazyFile(e,t,r,n,o){class a{constructor(){this.lengthKnown=!1,this.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,a=(t=e.getResponseHeader("Content-Encoding"))&&"gzip"===t,i=1048576;o||(i=n);var s=this;s.setDataGetter((e=>{var t=e*i,o=(e+1)*i-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!==i&&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||[]):de(o.responseText||"")})(t,o)),void 0===s.chunks[e])throw new Error("doXHR failed!");return s.chunks[e]})),!a&&n||(i=n=1,n=this.getter(0).length,i=n,y("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=i,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(!s)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 a}}else i={isDevice:!1,url:r};var l=Se.createFile(e,t,i,n,o);i.contents?l.contents=i.contents:i.url&&(l.contents=null,l.url=i.url),Object.defineProperties(l,{usedBytes:{get:function(){return this.contents.length}}});var u={};function c(e,t,r,n,o){var a=e.node.contents;if(o>=a.length)return 0;var i=Math.min(a.length-o,n);if(a.slice)for(var s=0;s<i;s++)t[r+s]=a[o+s];else for(s=0;s<i;s++)t[r+s]=a.get(o+s);return i}return Object.keys(l.stream_ops).forEach((e=>{var t=l.stream_ops[e];u[e]=(...e)=>(Se.forceLoadFile(l),t(...e))})),u.read=(e,t,r,n,o)=>(Se.forceLoadFile(l),c(e,t,r,n,o)),u.mmap=(e,t,r,n,o)=>{Se.forceLoadFile(l);var a=ve();if(!a)throw new Se.ErrnoError(48);return c(e,E,a,t,r),{ptr:a,allocated:!0}},l.stream_ops=u,l}},$e={DEFAULT_POLLMASK:5,calculateAt(e,t,r){if(ae.isAbs(t))return t;var n;if(n=-100===e?Se.cwd():$e.getStreamFromFD(e).path,0==t.length){if(!r)throw new Se.ErrnoError(44);return n}return ae.join2(n,t)},doStat(e,t,r){var n=e(t);C[r>>2]=n.dev,C[r+4>>2]=n.mode,P[r+8>>2]=n.nlink,C[r+12>>2]=n.uid,C[r+16>>2]=n.gid,C[r+20>>2]=n.rdev,V=[n.size>>>0,(N=n.size,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[r+24>>2]=V[0],C[r+28>>2]=V[1],C[r+32>>2]=4096,C[r+36>>2]=n.blocks;var o=n.atime.getTime(),a=n.mtime.getTime(),i=n.ctime.getTime();return V=[Math.floor(o/1e3)>>>0,(N=Math.floor(o/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[r+40>>2]=V[0],C[r+44>>2]=V[1],P[r+48>>2]=o%1e3*1e3*1e3,V=[Math.floor(a/1e3)>>>0,(N=Math.floor(a/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[r+56>>2]=V[0],C[r+60>>2]=V[1],P[r+64>>2]=a%1e3*1e3*1e3,V=[Math.floor(i/1e3)>>>0,(N=Math.floor(i/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[r+72>>2]=V[0],C[r+76>>2]=V[1],P[r+80>>2]=i%1e3*1e3*1e3,V=[n.ino>>>0,(N=n.ino,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[r+88>>2]=V[0],C[r+92>>2]=V[1],0},doMsync(e,t,r,n,o){if(!Se.isFile(t.node.mode))throw new Se.ErrnoError(43);if(2&n)return 0;var a=S.slice(e,e+r);Se.msync(t,a,o,r,n)},getStreamFromFD:e=>Se.getStreamChecked(e),varargs:void 0,getStr:e=>re(e)},xe=e=>{for(var t="",r=e;S[r];)t+=he[S[r++]];return t},Ce={},Pe={},Te={},ke=e=>{throw new pe(e)},Ae=e=>{throw new me(e)},De=(e,t,r)=>{function n(t){var n=r(t);n.length!==e.length&&Ae("Mismatched type converter count");for(var o=0;o<e.length;++o)Fe(e[o],n[o])}e.forEach((e=>Te[e]=t));var o=new Array(t.length),a=[],i=0;t.forEach(((e,t)=>{Pe.hasOwnProperty(e)?o[t]=Pe[e]:(a.push(e),Ce.hasOwnProperty(e)||(Ce[e]=[]),Ce[e].push((()=>{o[t]=Pe[e],++i===a.length&&n(o)})))})),0===a.length&&n(o)};function Fe(e,t,r={}){return function(e,t,r={}){var n=t.name;if(e||ke(`type "${n}" must have a positive integer typeid pointer`),Pe.hasOwnProperty(e)){if(r.ignoreDuplicateRegistrations)return;ke(`Cannot register type '${n}' twice`)}if(Pe[e]=t,delete Te[e],Ce.hasOwnProperty(e)){var o=Ce[e];delete Ce[e],o.forEach((e=>e()))}}(e,t,r)}var Me,Be=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),Oe=e=>{ke(e.$$.ptrType.registeredClass.name+" instance already deleted")},Ue=!1,Le=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)},ze=(e,t,r)=>{if(t===r)return e;if(void 0===r.baseClass)return null;var n=ze(e,t,r.baseClass);return null===n?null:r.downcast(n)},Ie={},Ne=()=>Object.keys(qe).length,Ve=()=>{var e=[];for(var t in qe)qe.hasOwnProperty(t)&&e.push(qe[t]);return e},We=[],He=()=>{for(;We.length;){var e=We.pop();e.$$.deleteScheduled=!1,e.delete()}},Ge=e=>{Me=e,We.length&&Me&&Me(He)},qe={},Qe=(e,t)=>(t=((e,t)=>{for(void 0===t&&ke("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t})(e,t),qe[t]),Xe=(e,t)=>(t.ptrType&&t.ptr||Ae("makeClassHandle requires ptr and ptrType"),!!t.smartPtrType!=!!t.smartPtr&&Ae("Both smartPtrType and smartPtr must be specified"),t.count={value:1},Ke(Object.create(e,{$$:{value:t,writable:!0}})));function Je(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var r=Qe(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?Xe(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):Xe(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var a,i=this.registeredClass.getActualType(t),s=Ie[i];if(!s)return o.call(this);a=this.isConst?s.constPointerType:s.pointerType;var l=ze(t,this.registeredClass,a.registeredClass);return null===l?o.call(this):this.isSmartPointer?Xe(a.registeredClass.instancePrototype,{ptrType:a,ptr:l,smartPtrType:this,smartPtr:e}):Xe(a.registeredClass.instancePrototype,{ptrType:a,ptr:l})}var Ke=e=>"undefined"==typeof FinalizationRegistry?(Ke=e=>e,e):(Ue=new FinalizationRegistry((e=>{je(e.$$)})),Ke=e=>{var t=e.$$;if(t.smartPtr){var r={$$:t};Ue.register(e,r,e)}return e},Le=e=>Ue.unregister(e),Ke(e));function Ze(){}var Ye=(e,t)=>Object.defineProperty(t,"name",{value:e}),et=(e,t,r)=>{if(void 0===e[t].overloadTable){var n=e[t];e[t]=function(...n){return e[t].overloadTable.hasOwnProperty(n.length)||ke(`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}},tt=(e,t,r)=>{o.hasOwnProperty(e)?((void 0===r||void 0!==o[e].overloadTable&&void 0!==o[e].overloadTable[r])&&ke(`Cannot register public name '${e}' twice`),et(o,e,e),o.hasOwnProperty(r)&&ke(`Cannot register multiple overloads of a function with the same number of arguments (${r})!`),o[e].overloadTable[r]=t):(o[e]=t,void 0!==r&&(o[e].numArguments=r))};function rt(e,t,r,n,o,a,i,s){this.name=e,this.constructor=t,this.instancePrototype=r,this.rawDestructor=n,this.baseClass=o,this.getActualType=a,this.upcast=i,this.downcast=s,this.pureVirtualFunctions=[]}var nt=(e,t,r)=>{for(;t!==r;)t.upcast||ke(`Expected null or instance of ${r.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function ot(e,t){if(null===t)return this.isReference&&ke(`null is not a valid ${this.name}`),0;t.$$||ke(`Cannot pass "${Mt(t)}" as a ${this.name}`),t.$$.ptr||ke(`Cannot pass deleted object as a pointer of type ${this.name}`);var r=t.$$.ptrType.registeredClass;return nt(t.$$.ptr,r,this.registeredClass)}function at(e,t){var r;if(null===t)return this.isReference&&ke(`null is not a valid ${this.name}`),this.isSmartPointer?(r=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,r),r):0;t&&t.$$||ke(`Cannot pass "${Mt(t)}" as a ${this.name}`),t.$$.ptr||ke(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&ke(`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=nt(t.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===t.$$.smartPtr&&ke("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?r=t.$$.smartPtr:ke(`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,Ft.toHandle((()=>o.delete()))),null!==e&&e.push(this.rawDestructor,r)}break;default:ke("Unsupporting sharing policy")}return r}function it(e,t){if(null===t)return this.isReference&&ke(`null is not a valid ${this.name}`),0;t.$$||ke(`Cannot pass "${Mt(t)}" as a ${this.name}`),t.$$.ptr||ke(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&ke(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var r=t.$$.ptrType.registeredClass;return nt(t.$$.ptr,r,this.registeredClass)}function st(e){return this.fromWireType(P[e>>2])}function lt(e,t,r,n,o,a,i,s,l,u,c){this.name=e,this.registeredClass=t,this.isReference=r,this.isConst=n,this.isSmartPointer=o,this.pointeeType=a,this.sharingPolicy=i,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=u,this.rawDestructor=c,o||void 0!==t.baseClass?this.toWireType=at:n?(this.toWireType=ot,this.destructorFunction=null):(this.toWireType=it,this.destructorFunction=null)}var ut,ct=(e,t,r)=>{o.hasOwnProperty(e)||Ae("Replacing nonexistent public symbol"),void 0!==o[e].overloadTable&&void 0!==r?o[e].overloadTable[r]=t:(o[e]=t,o[e].argCount=r)},dt=(e,t,r=[])=>{var n=((e,t,r)=>(e=e.replace(/p/g,"i"),(0,o["dynCall_"+e])(t,...r)))(e,t,r);return n},ht=(e,t)=>{e=xe(e);var r,n,o=(r=e,n=t,(...e)=>dt(r,n,e));return"function"!=typeof o&&ke(`unknown function pointer with signature ${e}: ${t}`),o},pt=e=>{var t=dr(e),r=xe(t);return ur(t),r},mt=(e,t)=>{var r=[],n={};throw t.forEach((function e(t){n[t]||Pe[t]||(Te[t]?Te[t].forEach(e):(r.push(t),n[t]=!0))})),new ut(`${e}: `+r.map(pt).join([", "]))},ft=(e,t)=>{for(var r=[],n=0;n<e;n++)r.push(P[t+4*n>>2]);return r},gt=e=>{for(;e.length;){var t=e.pop();e.pop()(t)}};function vt(e){for(var t=1;t<e.length;++t)if(null!==e[t]&&void 0===e[t].destructorFunction)return!0;return!1}var yt=e=>{try{return e()}catch(e){z(e)}},wt=e=>{if(e instanceof X||"unwind"==e)return _;m(1,e)},bt=0,_t=()=>K||bt>0,Et=e=>{_=e,_t()||(o.onExit?.(e),D=!0),m(e,new X(e))},St=(e,t)=>{_=e,Et(e)},$t=e=>{if(!D)try{e(),(()=>{if(!_t())try{St(_)}catch(e){wt(e)}})()}catch(e){wt(e)}},xt={instrumentWasmImports(e){var t=/^(invoke_.*|__asyncjs__.*)$/;for(let[r,n]of Object.entries(e))"function"==typeof n&&(n.isAsync||t.test(r))},instrumentWasmExports(e){var t={};for(let[r,n]of Object.entries(e))t[r]="function"==typeof n?(...e)=>{xt.exportCallStack.push(r);try{return n(...e)}finally{D||(xt.exportCallStack.pop(),xt.maybeStopUnwind())}}:n;return t},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:4096,currData:null,handleSleepReturnValue:0,exportCallStack:[],callStackNameToId:{},callStackIdToName:{},callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(e){var t=xt.callStackNameToId[e];return void 0===t&&(t=xt.callStackId++,xt.callStackNameToId[e]=t,xt.callStackIdToName[t]=e),t},maybeStopUnwind(){xt.currData&&xt.state===xt.State.Unwinding&&0===xt.exportCallStack.length&&(xt.state=xt.State.Normal,yt(kr),"undefined"!=typeof Fibers&&Fibers.trampoline())},whenDone:()=>new Promise(((e,t)=>{xt.asyncPromiseHandlers={resolve:e,reject:t}})),allocateData(){var e=cr(12+xt.StackSize);return xt.setDataHeader(e,e+12,xt.StackSize),xt.setDataRewindFunc(e),e},setDataHeader(e,t,r){P[e>>2]=t,P[e+4>>2]=t+r},setDataRewindFunc(e){var t=xt.exportCallStack[0],r=xt.getCallStackId(t);C[e+8>>2]=r},getDataRewindFuncName(e){var t=C[e+8>>2];return xt.callStackIdToName[t]},getDataRewindFunc:e=>lr[e],doRewind(e){var t=xt.getDataRewindFuncName(e);return xt.getDataRewindFunc(t)()},handleSleep(e){if(!D){if(xt.state===xt.State.Normal){var t=!1,r=!1;e(((e=0)=>{if(!D&&(xt.handleSleepReturnValue=e,t=!0,r)){xt.state=xt.State.Rewinding,yt((()=>Ar(xt.currData))),"undefined"!=typeof Browser&&Browser.mainLoop.func&&Browser.mainLoop.resume();var n,o=!1;try{n=xt.doRewind(xt.currData)}catch(e){n=e,o=!0}var a=!1;if(!xt.currData){var i=xt.asyncPromiseHandlers;i&&(xt.asyncPromiseHandlers=null,(o?i.reject:i.resolve)(n),a=!0)}if(o&&!a)throw n}})),r=!0,t||(xt.state=xt.State.Unwinding,xt.currData=xt.allocateData(),"undefined"!=typeof Browser&&Browser.mainLoop.func&&Browser.mainLoop.pause(),yt((()=>Tr(xt.currData))))}else xt.state===xt.State.Rewinding?(xt.state=xt.State.Normal,yt(Dr),ur(xt.currData),xt.currData=null,xt.sleepCallbacks.forEach($t)):z(`invalid state: ${xt.state}`);return xt.handleSleepReturnValue}},handleAsync:e=>xt.handleSleep((t=>{e().then(t)}))};function Ct(e,t,r,n,o,a){var i=t.length;i<2&&ke("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var s=null!==t[1]&&null!==r,l=vt(t),u="void"!==t[0].name,c=[e,ke,n,o,gt,t[0],t[1]],d=0;d<i-2;++d)c.push(t[d+2]);if(c.push(xt),!l)for(d=s?1:2;d<t.length;++d)null!==t[d].destructorFunction&&c.push(t[d].destructorFunction);let[h,p]=function(e,t,r,n){var o=vt(e),a=e.length-2,i=[],s=["fn"];t&&s.push("thisWired");for(var l=0;l<a;++l)i.push(`arg${l}`),s.push(`arg${l}Wired`);i=i.join(","),s=s.join(",");var u=`\n return function (${i}) {\n if (arguments.length !== ${a}) {\n throwBindingError('function ' + humanName + ' called with ' + arguments.length + ' arguments, expected ${a}');\n }`;o&&(u+="var destructors = [];\n");var c=o?"destructors":"null",d=["humanName","throwBindingError","invoker","fn","runDestructors","retType","classParam"];for(t&&(u+=`var thisWired = classParam['toWireType'](${c}, this);\n`),l=0;l<a;++l)u+=`var arg${l}Wired = argType${l}['toWireType'](${c}, arg${l});\n`,d.push(`argType${l}`);u+=(r||n?"var rv = ":"")+`invoker(${s});\n`;var h=r?"rv":"";if(d.push("Asyncify"),u+=`function onDone(${h}) {\n`,o)u+="runDestructors(destructors);\n";else for(l=t?1:2;l<e.length;++l){var p=1===l?"thisWired":"arg"+(l-2)+"Wired";null!==e[l].destructorFunction&&(u+=`${p}_dtor(${p});\n`,d.push(`${p}_dtor`))}return r&&(u+="var ret = retType['fromWireType'](rv);\nreturn ret;\n"),u+="}\n",u+=`return Asyncify.currData ? Asyncify.whenDone().then(onDone) : onDone(${h});\n`,[d,u+="}\n"]}(t,s,u,a);h.push(p);var m=function(e,t){if(!(e instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof e} which is not a function`);var r=Ye(e.name||"unknownFunctionName",(function(){}));r.prototype=e.prototype;var n=new r,o=e.apply(n,t);return o instanceof Object?o:n}(Function,h)(...c);return Ye(e,m)}var Pt,Tt=e=>{const t=(e=e.trim()).indexOf("(");return-1!==t?e.substr(0,t):e},kt=[],At=[],Dt=()=>At.length/2-5-kt.length,Ft={toValue:e=>(e||ke("Cannot use deleted val. handle = "+e),At[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=kt.pop()||At.length;return At[t]=e,At[t+1]=1,t}}}},Rt={name:"emscripten::val",fromWireType:e=>{var t=Ft.toValue(e);return(e=>{e>9&&0==--At[e+1]&&(At[e]=void 0,kt.push(e))})(e),t},toWireType:(e,t)=>Ft.toHandle(t),argPackAdvance:8,readValueFromPointer:st,destructorFunction:null},Mt=e=>{if(null===e)return"null";var t=typeof e;return"object"===t||"array"===t||"function"===t?e.toString():""+e},Bt=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(T[e>>2])};case 8:return function(e){return this.fromWireType(k[e>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},Ot=(e,t,r)=>{switch(t){case 1:return r?e=>E[e]:e=>S[e];case 2:return r?e=>$[e>>1]:e=>x[e>>1];case 4:return r?e=>C[e>>2]:e=>P[e>>2];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Ut=(e,t,r)=>ce(e,S,t,r),Lt="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,jt=(e,t)=>{for(var r=e,n=r>>1,o=n+t/2;!(n>=o)&&x[n];)++n;if((r=n<<1)-e>32&&Lt)return Lt.decode(S.subarray(e,r));for(var a="",i=0;!(i>=t/2);++i){var s=$[e+2*i>>1];if(0==s)break;a+=String.fromCharCode(s)}return a},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,a=0;a<o;++a){var i=e.charCodeAt(a);$[t>>1]=i,t+=2}return $[t>>1]=0,t-n},It=e=>2*e.length,Nt=(e,t)=>{for(var r=0,n="";!(r>=t/4);){var o=C[e+4*r>>2];if(0==o)break;if(++r,o>=65536){var a=o-65536;n+=String.fromCharCode(55296|a>>10,56320|1023&a)}else n+=String.fromCharCode(o)}return n},Vt=(e,t,r)=>{if(r??=2147483647,r<4)return 0;for(var n=t,o=n+r-4,a=0;a<e.length;++a){var i=e.charCodeAt(a);if(i>=55296&&i<=57343&&(i=65536+((1023&i)<<10)|1023&e.charCodeAt(++a)),C[t>>2]=i,(t+=4)+4>o)break}return C[t>>2]=0,t-n},Wt=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},Ht={};Pt=()=>performance.now();var Gt=e=>{var t=(e-b.buffer.byteLength+65535)/65536;try{return b.grow(t),F(),1}catch(e){}},qt=e=>xt.handleSleep((t=>{return r=t,setTimeout((()=>{$t(r)}),e);var r}));qt.isAsync=!0;var Qt,Xt,Jt,Kt={},Zt=()=>{if(!Zt.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",_:p||"./this.program"};for(var t in Kt)void 0===Kt[t]?delete e[t]:e[t]=Kt[t];var r=[];for(var t in e)r.push(`${t}=${e[t]}`);Zt.strings=r}return Zt.strings},Yt=(e,t)=>t+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*t:NaN,er=e=>{var t=ue(e)+1,r=gr(t);return Ut(e,r,t),r},tr={errorCallback:(e,t,r,n)=>{var o=Y(),a=er(r);xr(e,t,a,n),Z(o)},initManagers:()=>{function e(){this.objects={},this.nextId=1,this.create=function(e,t={}){var r=this.nextId++;return t.refcount=1,t.object=e,this.objects[r]=t,r},this.get=function(e){if(e)return this.objects[e].object},this.reference=function(e){this.objects[e].refcount++},this.release=function(e){var t=this.objects[e];t.refcount--,t.refcount<=0&&delete this.objects[e]}}tr.mgrDevice||(tr.mgrSurface=tr.mgrSurface||new e,tr.mgrSwapChain=tr.mgrSwapChain||new e,tr.mgrAdapter=tr.mgrAdapter||new e,tr.mgrDevice=tr.mgrDevice||new e,tr.mgrQueue=tr.mgrQueue||new e,tr.mgrCommandBuffer=tr.mgrCommandBuffer||new e,tr.mgrCommandEncoder=tr.mgrCommandEncoder||new e,tr.mgrRenderPassEncoder=tr.mgrRenderPassEncoder||new e,tr.mgrComputePassEncoder=tr.mgrComputePassEncoder||new e,tr.mgrBindGroup=tr.mgrBindGroup||new e,tr.mgrBuffer=tr.mgrBuffer||new e,tr.mgrSampler=tr.mgrSampler||new e,tr.mgrTexture=tr.mgrTexture||new e,tr.mgrTextureView=tr.mgrTextureView||new e,tr.mgrQuerySet=tr.mgrQuerySet||new e,tr.mgrBindGroupLayout=tr.mgrBindGroupLayout||new e,tr.mgrPipelineLayout=tr.mgrPipelineLayout||new e,tr.mgrRenderPipeline=tr.mgrRenderPipeline||new e,tr.mgrComputePipeline=tr.mgrComputePipeline||new e,tr.mgrShaderModule=tr.mgrShaderModule||new e,tr.mgrRenderBundleEncoder=tr.mgrRenderBundleEncoder||new e,tr.mgrRenderBundle=tr.mgrRenderBundle||new e)},makeColor:e=>({r:k[e>>3],g:k[e+8>>3],b:k[e+16>>3],a:k[e+24>>3]}),makeExtent3D:e=>({width:P[e>>2],height:P[e+4>>2],depthOrArrayLayers:P[e+8>>2]}),makeOrigin3D:e=>({x:P[e>>2],y:P[e+4>>2],z:P[e+8>>2]}),makeImageCopyTexture:e=>({texture:tr.mgrTexture.get(P[e+4>>2]),mipLevel:P[e+8>>2],origin:tr.makeOrigin3D(e+12),aspect:tr.TextureAspect[P[e+24>>2]]}),makeTextureDataLayout:e=>{var t=P[e+16>>2],r=P[e+20>>2];return{offset:4294967296*P[e+4+8>>2]+P[e+8>>2],bytesPerRow:4294967295===t?void 0:t,rowsPerImage:4294967295===r?void 0:r}},makeImageCopyBuffer:e=>{var t=e+8,r=tr.makeTextureDataLayout(t);return r.buffer=tr.mgrBuffer.get(P[e+32>>2]),r},makePipelineConstants:(e,t)=>{if(e){for(var r={},n=0;n<e;++n){var o=t+16*n;r[re(P[o+4>>2])]=k[o+8>>3]}return r}},makePipelineLayout:e=>e?tr.mgrPipelineLayout.get(e):"auto",makeProgrammableStageDescriptor:e=>{if(e){var t={module:tr.mgrShaderModule.get(P[e+4>>2]),constants:tr.makePipelineConstants(P[e+12>>2],P[e+16>>2])},r=P[e+8>>2];return r&&(t.entryPoint=re(r)),t}},fillLimitStruct:(e,t)=>{var r=t+8;function n(t,n){var o=e[t];C[r+n>>2]=o}function o(t,n){var o=e[t];V=[o>>>0,(N=o,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[r+n>>2]=V[0],C[r+(n+4)>>2]=V[1]}n("maxTextureDimension1D",0),n("maxTextureDimension2D",4),n("maxTextureDimension3D",8),n("maxTextureArrayLayers",12),n("maxBindGroups",16),n("maxBindGroupsPlusVertexBuffers",20),n("maxBindingsPerBindGroup",24),n("maxDynamicUniformBuffersPerPipelineLayout",28),n("maxDynamicStorageBuffersPerPipelineLayout",32),n("maxSampledTexturesPerShaderStage",36),n("maxSamplersPerShaderStage",40),n("maxStorageBuffersPerShaderStage",44),n("maxStorageTexturesPerShaderStage",48),n("maxUniformBuffersPerShaderStage",52),n("minUniformBufferOffsetAlignment",72),n("minStorageBufferOffsetAlignment",76),o("maxUniformBufferBindingSize",56),o("maxStorageBufferBindingSize",64),n("maxVertexBuffers",80),o("maxBufferSize",88),n("maxVertexAttributes",96),n("maxVertexBufferArrayStride",100),n("maxInterStageShaderComponents",104),n("maxInterStageShaderVariables",108),n("maxColorAttachments",112),n("maxColorAttachmentBytesPerSample",116),n("maxComputeWorkgroupStorageSize",120),n("maxComputeInvocationsPerWorkgroup",124),n("maxComputeWorkgroupSizeX",128),n("maxComputeWorkgroupSizeY",132),n("maxComputeWorkgroupSizeZ",136),n("maxComputeWorkgroupsPerDimension",140)},Int_BufferMapState:{unmapped:1,pending:2,mapped:3},Int_CompilationMessageType:{error:0,warning:1,info:2},Int_DeviceLostReason:{undefined:1,unknown:1,destroyed:2},Int_PreferredFormat:{rgba8unorm:18,bgra8unorm:23},WGSLFeatureName:[,"readonly_and_readwrite_storage_textures","packed_4x8_integer_dot_product","unrestricted_pointer_parameters","pointer_composite_access"],AddressMode:[,"clamp-to-edge","repeat","mirror-repeat"],AlphaMode:[,"opaque","premultiplied"],BlendFactor:[,"zero","one","src","one-minus-src","src-alpha","one-minus-src-alpha","dst","one-minus-dst","dst-alpha","one-minus-dst-alpha","src-alpha-saturated","constant","one-minus-constant"],BlendOperation:[,"add","subtract","reverse-subtract","min","max"],BufferBindingType:[,"uniform","storage","read-only-storage"],BufferMapState:{1:"unmapped",2:"pending",3:"mapped"},CompareFunction:[,"never","less","equal","less-equal","greater","not-equal","greater-equal","always"],CompilationInfoRequestStatus:["success","error","device-lost","unknown"],CullMode:[,"none","front","back"],ErrorFilter:{1:"validation",2:"out-of-memory",3:"internal"},FeatureName:[,"depth-clip-control","depth32float-stencil8","timestamp-query","texture-compression-bc","texture-compression-etc2","texture-compression-astc","indirect-first-instance","shader-f16","rg11b10ufloat-renderable","bgra8unorm-storage","float32-filterable"],FilterMode:[,"nearest","linear"],FrontFace:[,"ccw","cw"],IndexFormat:[,"uint16","uint32"],LoadOp:[,"clear","load"],MipmapFilterMode:[,"nearest","linear"],PowerPreference:[,"low-power","high-performance"],PrimitiveTopology:[,"point-list","line-list","line-strip","triangle-list","triangle-strip"],QueryType:{1:"occlusion",2:"timestamp"},SamplerBindingType:[,"filtering","non-filtering","comparison"],StencilOperation:[,"keep","zero","replace","invert","increment-clamp","decrement-clamp","increment-wrap","decrement-wrap"],StorageTextureAccess:[,"write-only","read-only","read-write"],StoreOp:[,"store","discard"],TextureAspect:[,"all","stencil-only","depth-only"],TextureDimension:[,"1d","2d","3d"],TextureFormat:[,"r8unorm","r8snorm","r8uint","r8sint","r16uint","r16sint","r16float","rg8unorm","rg8snorm","rg8uint","rg8sint","r32float","r32uint","r32sint","rg16uint","rg16sint","rg16float","rgba8unorm","rgba8unorm-srgb","rgba8snorm","rgba8uint","rgba8sint","bgra8unorm","bgra8unorm-srgb","rgb10a2uint","rgb10a2unorm","rg11b10ufloat","rgb9e5ufloat","rg32float","rg32uint","rg32sint","rgba16uint","rgba16sint","rgba16float","rgba32float","rgba32uint","rgba32sint","stencil8","depth16unorm","depth24plus","depth24plus-stencil8","depth32float","depth32float-stencil8","bc1-rgba-unorm","bc1-rgba-unorm-srgb","bc2-rgba-unorm","bc2-rgba-unorm-srgb","bc3-rgba-unorm","bc3-rgba-unorm-srgb","bc4-r-unorm","bc4-r-snorm","bc5-rg-unorm","bc5-rg-snorm","bc6h-rgb-ufloat","bc6h-rgb-float","bc7-rgba-unorm","bc7-rgba-unorm-srgb","etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm","astc-4x4-unorm","astc-4x4-unorm-srgb","astc-5x4-unorm","astc-5x4-unorm-srgb","astc-5x5-unorm","astc-5x5-unorm-srgb","astc-6x5-unorm","astc-6x5-unorm-srgb","astc-6x6-unorm","astc-6x6-unorm-srgb","astc-8x5-unorm","astc-8x5-unorm-srgb","astc-8x6-unorm","astc-8x6-unorm-srgb","astc-8x8-unorm","astc-8x8-unorm-srgb","astc-10x5-unorm","astc-10x5-unorm-srgb","astc-10x6-unorm","astc-10x6-unorm-srgb","astc-10x8-unorm","astc-10x8-unorm-srgb","astc-10x10-unorm","astc-10x10-unorm-srgb","astc-12x10-unorm","astc-12x10-unorm-srgb","astc-12x12-unorm","astc-12x12-unorm-srgb"],TextureSampleType:[,"float","unfilterable-float","depth","sint","uint"],TextureViewDimension:[,"1d","2d","2d-array","cube","cube-array","3d"],VertexFormat:[,"uint8x2","uint8x4","sint8x2","sint8x4","unorm8x2","unorm8x4","snorm8x2","snorm8x4","uint16x2","uint16x4","sint16x2","sint16x4","unorm16x2","unorm16x4","snorm16x2","snorm16x4","float16x2","float16x4","float32","float32x2","float32x3","float32x4","uint32","uint32x2","uint32x3","uint32x4","sint32","sint32x2","sint32x3","sint32x4","unorm10-10-10-2"],VertexStepMode:[,"vertex-buffer-not-used","vertex","instance"],FeatureNameString2Enum:{undefined:"0","depth-clip-control":"1","depth32float-stencil8":"2","timestamp-query":"3","texture-compression-bc":"4","texture-compression-etc2":"5","texture-compression-astc":"6","indirect-first-instance":"7","shader-f16":"8","rg11b10ufloat-renderable":"9","bgra8unorm-storage":"10","float32-filterable":"11"}},rr=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],nr=e=>{var t;return e=(t=e)>2?re(t):t,rr[e]||("undefined"!=typeof document?document.querySelector(e):void 0)},or=Se.createPath,ar=Se.createLazyFile,ir=Se.createDevice;Se.createPreloadedFile=_e,Se.staticInit(),o.FS_createPath=Se.createPath,o.FS_createDataFile=Se.createDataFile,o.FS_createPreloadedFile=Se.createPreloadedFile,o.FS_unlink=Se.unlink,o.FS_createLazyFile=Se.createLazyFile,o.FS_createDevice=Se.createDevice,(()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);he=e})(),pe=o.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},me=o.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},Object.assign(Ze.prototype,{isAliasOf(e){if(!(this instanceof Ze))return!1;if(!(e instanceof Ze))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||Oe(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=Ke(Object.create(Object.getPrototypeOf(this),{$$:{value:Be(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||Oe(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ke("Object already scheduled for deletion"),Le(this),je(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||Oe(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ke("Object already scheduled for deletion"),We.push(this),1===We.length&&Me&&Me(He),this.$$.deleteScheduled=!0,this}}),o.getInheritedInstanceCount=Ne,o.getLiveInheritedInstances=Ve,o.flushPendingDeletes=He,o.setDelayFunction=Ge,Object.assign(lt.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){this.rawDestructor?.(e)},argPackAdvance:8,readValueFromPointer:st,fromWireType:Je}),ut=o.UnboundTypeError=(Qt=Error,(Jt=Ye(Xt="UnboundTypeError",(function(e){this.name=Xt,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(Qt.prototype),Jt.prototype.constructor=Jt,Jt.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},Jt),At.push(0,1,void 0,1,null,1,!0,1,!1,1),o.count_emval_handles=Dt,tr.initManagers();var sr={b:(e,t,r,n)=>{z(`Assertion failed: ${re(e)}, at: `+[t?re(t):"unknown filename",r,n?re(n):"unknown function"])},N:function(e,t,r){$e.varargs=r;try{var n=$e.getStreamFromFD(e);switch(t){case 0:if((o=ne())<0)return-28;for(;Se.streams[o];)o++;return Se.dupStream(n,o).fd;case 1:case 2:case 13:case 14:return 0;case 3:return n.flags;case 4:var o=ne();return n.flags|=o,0;case 12:return o=oe(),$[o+0>>1]=2,0}return-28}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return-e.errno}},xa:function(e,t,r){$e.varargs=r;try{var n=$e.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),a=oe();C[a>>2]=o.c_iflag||0,C[a+4>>2]=o.c_oflag||0,C[a+8>>2]=o.c_cflag||0,C[a+12>>2]=o.c_lflag||0;for(var i=0;i<32;i++)E[a+i+17]=o.c_cc[i]||0;return 0}return 0;case 21506:case 21507:case 21508:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){a=oe();var s=C[a>>2],l=C[a+4>>2],u=C[a+8>>2],c=C[a+12>>2],d=[];for(i=0;i<32;i++)d.push(E[a+i+17]);return n.tty.ops.ioctl_tcsets(n.tty,t,{c_iflag:s,c_oflag:l,c_cflag:u,c_lflag:c,c_cc:d})}return 0;case 21519:return n.tty?(a=oe(),C[a>>2]=0,0):-59;case 21520:return n.tty?-28:-59;case 21531:return a=oe(),Se.ioctl(n,t,a);case 21523:if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var h=n.tty.ops.ioctl_tiocgwinsz(n.tty);a=oe(),$[a>>1]=h[0],$[a+2>>1]=h[1]}return 0;default:return-28}}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return-e.errno}},ya:function(e,t,r,n){$e.varargs=n;try{t=$e.getStr(t),t=$e.calculateAt(e,t);var o=n?ne():0;return Se.open(t,r,o).fd}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return-e.errno}},za:()=>{z("")},fa:(e,t,r,n,o)=>{},Ba:(e,t,r,n)=>{Fe(e,{name:t=xe(t),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?r:n},argPackAdvance:8,readValueFromPointer:function(e){return this.fromWireType(S[e])},destructorFunction:null})},Fa:(e,t,r,n,o,a,i,s,l,u,c,d,h)=>{c=xe(c),a=ht(o,a),s&&=ht(i,s),u&&=ht(l,u),h=ht(d,h);var p=(e=>{if(void 0===e)return"_unknown";var t=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return t>=48&&t<=57?`_${e}`:e})(c);tt(p,(function(){mt(`Cannot construct ${c} due to unbound types`,[n])})),De([e,t,r],n?[n]:[],(t=>{var r,o;t=t[0],o=n?(r=t.registeredClass).instancePrototype:Ze.prototype;var i=Ye(c,(function(...e){if(Object.getPrototypeOf(this)!==l)throw new pe("Use 'new' to construct "+c);if(void 0===d.constructor_body)throw new pe(c+" has no accessible constructor");var t=d.constructor_body[e.length];if(void 0===t)throw new pe(`Tried to invoke ctor of ${c} with invalid number of parameters (${e.length}) - expected (${Object.keys(d.constructor_body).toString()}) parameters instead!`);return t.apply(this,e)})),l=Object.create(o,{constructor:{value:i}});i.prototype=l;var d=new rt(c,i,l,h,r,a,s,u);d.baseClass&&(d.baseClass.__derivedClasses??=[],d.baseClass.__derivedClasses.push(d));var m=new lt(c,d,!0,!1,!1),f=new lt(c+"*",d,!1,!1,!1),g=new lt(c+" const*",d,!1,!0,!1);return Ie[e]={pointerType:f,constPointerType:g},ct(p,i),[m,f,g]}))},Ea:(e,t,r,n,o,a)=>{var i=ft(t,r);o=ht(n,o),De([],[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 pe(`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]=()=>{mt(`Cannot construct ${e.name} due to unbound types`,i)},De([],i,(n=>(n.splice(1,0,null),e.registeredClass.constructor_body[t-1]=Ct(r,n,null,o,a),[]))),[]}))},q:(e,t,r,n,o,a,i,s,l)=>{var u=ft(r,n);t=xe(t),t=Tt(t),a=ht(o,a),De([],[e],(e=>{var n=`${(e=e[0]).name}.${t}`;function o(){mt(`Cannot call ${n} due to unbound types`,u)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]),s&&e.registeredClass.pureVirtualFunctions.push(t);var c=e.registeredClass.instancePrototype,d=c[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,c[t]=o):(et(c,t,n),c[t].overloadTable[r-2]=o),De([],u,(o=>{var s=Ct(n,o,e,a,i,l);return void 0===c[t].overloadTable?(s.argCount=r-2,c[t]=s):c[t].overloadTable[r-2]=s,[]})),[]}))},Aa:e=>Fe(e,Rt),O:(e,t,r)=>{Fe(e,{name:t=xe(t),fromWireType:e=>e,toWireType:(e,t)=>t,argPackAdvance:8,readValueFromPointer:Bt(t,r),destructorFunction:null})},R:(e,t,r,n,o,a,i)=>{var s=ft(t,r);e=xe(e),e=Tt(e),o=ht(n,o),tt(e,(function(){mt(`Cannot call ${e} due to unbound types`,s)}),t-1),De([],s,(r=>{var n=[r[0],null].concat(r.slice(1));return ct(e,Ct(e,n,null,o,a,i),t-1),[]}))},v:(e,t,r,n,o)=>{t=xe(t);var a=e=>e;if(0===n){var i=32-8*r;a=e=>e<<i>>>i}var s=t.includes("unsigned");Fe(e,{name:t,fromWireType:a,toWireType:s?function(e,t){return this.name,t>>>0}:function(e,t){return this.name,t},argPackAdvance:8,readValueFromPointer:Ot(t,r,0!==n),destructorFunction:null})},l:(e,t,r)=>{var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][t];function o(e){var t=P[e>>2],r=P[e+4>>2];return new n(E.buffer,r,t)}Fe(e,{name:r=xe(r),fromWireType:o,argPackAdvance:8,readValueFromPointer:o},{ignoreDuplicateRegistrations:!0})},P:(e,t)=>{var r="std::string"===(t=xe(t));Fe(e,{name:t,fromWireType(e){var t,n=P[e>>2],o=e+4;if(r)for(var a=o,i=0;i<=n;++i){var s=o+i;if(i==n||0==S[s]){var l=re(a,s-a);void 0===t?t=l:(t+=String.fromCharCode(0),t+=l),a=s+1}}else{var u=new Array(n);for(i=0;i<n;++i)u[i]=String.fromCharCode(S[o+i]);t=u.join("")}return ur(e),t},toWireType(e,t){var n;t instanceof ArrayBuffer&&(t=new Uint8Array(t));var o="string"==typeof t;o||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array||ke("Cannot pass non-string to std::string"),n=r&&o?ue(t):t.length;var a=cr(4+n+1),i=a+4;if(P[a>>2]=n,r&&o)Ut(t,i,n+1);else if(o)for(var s=0;s<n;++s){var l=t.charCodeAt(s);l>255&&(ur(i),ke("String has UTF-16 code units that do not fit in 8 bits")),S[i+s]=l}else for(s=0;s<n;++s)S[i+s]=t[s];return null!==e&&e.push(ur,a),a},argPackAdvance:8,readValueFromPointer:st,destructorFunction(e){ur(e)}})},J:(e,t,r)=>{var n,o,a,i;r=xe(r),2===t?(n=jt,o=zt,i=It,a=e=>x[e>>1]):4===t&&(n=Nt,o=Vt,i=Wt,a=e=>P[e>>2]),Fe(e,{name:r,fromWireType:e=>{for(var r,o=P[e>>2],i=e+4,s=0;s<=o;++s){var l=e+4+s*t;if(s==o||0==a(l)){var u=n(i,l-i);void 0===r?r=u:(r+=String.fromCharCode(0),r+=u),i=l+t}}return ur(e),r},toWireType:(e,n)=>{"string"!=typeof n&&ke(`Cannot pass non-string to C++ string type ${r}`);var a=i(n),s=cr(4+a+t);return P[s>>2]=a/t,o(n,s+4,a+t),null!==e&&e.push(ur,s),s},argPackAdvance:8,readValueFromPointer:st,destructorFunction(e){ur(e)}})},Ca:(e,t)=>{Fe(e,{isVoid:!0,name:t=xe(t),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,t)=>{}})},ta:(e,t,r)=>S.copyWithin(e,t,t+r),na:()=>{K=!1,bt=0},la:()=>{throw 1/0},B:(e,t)=>{var r,n,o;n="_emval_take_value",void 0===(o=Pe[r=e])&&ke(`${n} has unknown type ${pt(r)}`);var a=(e=o).readValueFromPointer(t);return Ft.toHandle(a)},oa:(e,t)=>{if(Ht[e]&&(clearTimeout(Ht[e].id),delete Ht[e]),!t)return 0;var r=setTimeout((()=>{delete Ht[e],$t((()=>hr(e,Pt())))}),t);return Ht[e]={id:r,timeout_ms:t},0},pa:(e,t,r,n)=>{var o=(new Date).getFullYear(),a=new Date(o,0,1),i=new Date(o,6,1),s=a.getTimezoneOffset(),l=i.getTimezoneOffset(),u=Math.max(s,l);P[e>>2]=60*u,C[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")}`},d=c(s),h=c(l);l<s?(Ut(d,r,17),Ut(h,n,17)):(Ut(d,n,17),Ut(h,r,17))},sa:e=>{var t,r,n=S.length,o=2147483648;if((e>>>=0)>o)return!1;for(var a=1;a<=4;a*=2){var i=n*(1+.2/a);i=Math.min(i,e+100663296);var s=Math.min(o,(t=Math.max(e,i),r=65536,Math.ceil(t/r)*r));if(Gt(s))return!0}return!1},S:qt,qa:(e,t)=>{var r=0;return Zt().forEach(((n,o)=>{var a=t+r;P[e+4*o>>2]=a,((e,t)=>{for(var r=0;r<e.length;++r)E[t++]=e.charCodeAt(r);E[t]=0})(n,a),r+=n.length+1})),0},ra:(e,t)=>{var r=Zt();P[e>>2]=r.length;var n=0;return r.forEach((e=>n+=e.length+1)),P[t>>2]=n,0},M:function(e){try{var t=$e.getStreamFromFD(e);return Se.close(t),0}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return e.errno}},wa:function(e,t,r,n){try{var o=((e,t,r,n)=>{for(var o=0,a=0;a<r;a++){var i=P[t>>2],s=P[t+4>>2];t+=8;var l=Se.read(e,E,i,s,n);if(l<0)return-1;if(o+=l,l<s)break}return o})($e.getStreamFromFD(e),t,r);return P[n>>2]=o,0}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return e.errno}},ea:function(e,t,r,n,o){var a=Yt(t,r);try{if(isNaN(a))return 61;var i=$e.getStreamFromFD(e);return Se.llseek(i,a,n),V=[i.position>>>0,(N=i.position,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],C[o>>2]=V[0],C[o+4>>2]=V[1],i.getdents&&0===a&&0===n&&(i.getdents=null),0}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return e.errno}},va:function(e,t,r,n){try{var o=((e,t,r,n)=>{for(var o=0,a=0;a<r;a++){var i=P[t>>2],s=P[t+4>>2];t+=8;var l=Se.write(e,E,i,s,n);if(l<0)return-1;if(o+=l,l<s)break}return o})($e.getStreamFromFD(e),t,r);return P[n>>2]=o,0}catch(e){if(void 0===Se||"ErrnoError"!==e.name)throw e;return e.errno}},m:function(e,t){var r=Y();try{return wr(e,t)}catch(e){if(Z(r),e!==e+0)throw e;pr(1,0)}},g:function(e,t,r){var n=Y();try{return $r(e,t,r)}catch(e){if(Z(n),e!==e+0)throw e;pr(1,0)}},e:function(e,t,r,n){var o=Y();try{return yr(e,t,r,n)}catch(e){if(Z(o),e!==e+0)throw e;pr(1,0)}},D:function(e,t,r,n,o,a){var i=Y();try{return Sr(e,t,r,n,o,a)}catch(e){if(Z(i),e!==e+0)throw e;pr(1,0)}},a:function(e,t){var r=Y();try{br(e,t)}catch(e){if(Z(r),e!==e+0)throw e;pr(1,0)}},c:function(e,t,r){var n=Y();try{_r(e,t,r)}catch(e){if(Z(n),e!==e+0)throw e;pr(1,0)}},f:function(e,t,r,n){var o=Y();try{xr(e,t,r,n)}catch(e){if(Z(o),e!==e+0)throw e;pr(1,0)}},A:function(e,t,r,n,o){var a=Y();try{Cr(e,t,r,n,o)}catch(e){if(Z(a),e!==e+0)throw e;pr(1,0)}},da:function(e,t,r,n,o,a){var i=Y();try{Er(e,t,r,n,o,a)}catch(e){if(Z(i),e!==e+0)throw e;pr(1,0)}},ma:Et,U:(e,t)=>{var r=tr.mgrAdapter.get(e);if(0!==t){var n=0;r.features.forEach((e=>{var r=tr.FeatureNameString2Enum[e];C[t+n>>2]=r,n+=4}))}return r.features.size},_:e=>tr.mgrAdapter.release(e),T:(e,t,r,n)=>{var o=tr.mgrAdapter.get(e),a={};if(t){var i=P[t+8>>2];if(i){var s=P[t+12>>2];a.requiredFeatures=Array.from(C.subarray(s>>2,s+4*i>>2),(e=>tr.FeatureName[e]))}var l=P[t+16>>2];if(l){var u=l+8,c={};function g(e,t){var r=P[u+t>>2];4294967295!=r&&(c[e]=r)}function v(e,t){var r=u+t,n=P[r>>2],o=P[r+4>>2];4294967295==n&&4294967295==o||(c[e]=4294967296*P[r+4>>2]+P[r>>2])}g("maxTextureDimension1D",0),g("maxTextureDimension2D",4),g("maxTextureDimension3D",8),g("maxTextureArrayLayers",12),g("maxBindGroups",16),g("maxBindGroupsPlusVertexBuffers",20),g("maxDynamicUniformBuffersPerPipelineLayout",28),g("maxDynamicStorageBuffersPerPipelineLayout",32),g("maxSampledTexturesPerShaderStage",36),g("maxSamplersPerShaderStage",40),g("maxStorageBuffersPerShaderStage",44),g("maxStorageTexturesPerShaderStage",48),g("maxUniformBuffersPerShaderStage",52),g("minUniformBufferOffsetAlignment",72),g("minStorageBufferOffsetAlignment",76),v("maxUniformBufferBindingSize",56),v("maxStorageBufferBindingSize",64),g("maxVertexBuffers",80),v("maxBufferSize",88),g("maxVertexAttributes",96),g("maxVertexBufferArrayStride",100),g("maxInterStageShaderComponents",104),g("maxInterStageShaderVariables",108),g("maxColorAttachments",112),g("maxColorAttachmentBytesPerSample",116),g("maxComputeWorkgroupStorageSize",120),g("maxComputeInvocationsPerWorkgroup",124),g("maxComputeWorkgroupSizeX",128),g("maxComputeWorkgroupSizeY",132),g("maxComputeWorkgroupSizeZ",136),g("maxComputeWorkgroupsPerDimension",140),a.requiredLimits=c}var d=P[t+20>>2];if(d){var h={};(p=P[d+4>>2])&&(h.label=re(p)),a.defaultQueue=h}var p,m=P[t+28>>2],f=P[t+32>>2];(p=P[t+4>>2])&&(a.label=re(p))}o.requestDevice(a).then((e=>{$t((()=>{var t={queueId:tr.mgrQueue.create(e.queue)},o=tr.mgrDevice.create(e,t);m&&e.lost.then((e=>{$t((()=>tr.errorCallback(m,tr.Int_DeviceLostReason[e.reason],e.message,f)))})),Cr(r,0,o,0,n)}))}),(function(e){$t((()=>{var t=Y(),o=er(e.message);Cr(r,1,0,o,n),Z(t)}))}))},w:e=>tr.mgrBindGroupLayout.release(e),t:e=>tr.mgrBindGroup.release(e),La:e=>{var t=tr.mgrBuffer.objects[e];if(t.onUnmap){for(var r=0;r<t.onUnmap.length;++r)t.onUnmap[r]();t.onUnmap=void 0}tr.mgrBuffer.get(e).destroy()},ja:function(e){var t,r=tr.mgrBuffer.get(e).size;return N=r,t=+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0,mr(t),r>>>0},Ka:e=>tr.mgrBuffer.release(e),X:e=>tr.mgrCommandBuffer.release(e),ca:(e,t)=>{function r(e){var t=P[e+4>>2];if(0!==t){var r=C[e+8>>2];-1==r&&(r=void 0);var n=P[e+16>>2],o=P[e+20>>2],a=tr.makeColor(e+24);return{view:tr.mgrTextureView.get(t),depthSlice:r,resolveTarget:tr.mgrTextureView.get(P[e+12>>2]),clearValue:a,loadOp:tr.LoadOp[n],storeOp:tr.StoreOp[o]}}}function n(e,t){for(var n=[],o=0;o<e;++o)n.push(r(t+56*o));return n}function o(e){if(0!==e)return{view:tr.mgrTextureView.get(P[e>>2]),depthClearValue:T[e+12>>2],depthLoadOp:tr.LoadOp[P[e+4>>2]],depthStoreOp:tr.StoreOp[P[e+8>>2]],depthReadOnly:!!P[e+16>>2],stencilClearValue:P[e+28>>2],stencilLoadOp:tr.LoadOp[P[e+20>>2]],stencilStoreOp:tr.StoreOp[P[e+24>>2]],stencilReadOnly:!!P[e+32>>2]}}function a(e){if(0!==e)return{querySet:tr.mgrQuerySet.get(P[e>>2]),beginningOfPassWriteIndex:P[e+4>>2],endOfPassWriteIndex:P[e+8>>2]}}var i=function(e){var t=P[e>>2],r=void 0;if(0!==t){P[t+4>>2];var i=t;r=4294967296*P[i+4+8>>2]+P[i+8>>2]}var s={label:void 0,colorAttachments:n(P[e+8>>2],P[e+12>>2]),depthStencilAttachment:o(P[e+16>>2]),occlusionQuerySet:tr.mgrQuerySet.get(P[e+20>>2]),timestampWrites:a(P[e+24>>2]),maxDrawCount:r},l=P[e+4>>2];return l&&(s.label=re(l)),s}(t),s=tr.mgrCommandEncoder.get(e);return tr.mgrRenderPassEncoder.create(s.beginRenderPass(i))},F:(e,t,r,n)=>{var o=tr.mgrCommandEncoder.get(e),a=tr.makeExtent3D(n);o.copyTextureToTexture(tr.makeImageCopyTexture(t),tr.makeImageCopyTexture(r),a)},Y:(e,t)=>{var r=tr.mgrCommandEncoder.get(e);return tr.mgrCommandBuffer.create(r.finish())},W:e=>tr.mgrCommandEncoder.release(e),y:(e,t)=>{function r(e){var t,r=P[e+8>>2],n=P[e+32>>2],o=P[e+36>>2],a=P[e+4>>2];if(r){var i=P[(t=e+24)>>2]+4294967296*C[t+4>>2];return-1==i&&(i=void 0),{binding:a,resource:{buffer:tr.mgrBuffer.get(r),offset:4294967296*P[e+4+16>>2]+P[e+16>>2],size:i}}}return n?{binding:a,resource:tr.mgrSampler.get(n)}:{binding:a,resource:tr.mgrTextureView.get(o)}}var n={label:void 0,layout:tr.mgrBindGroupLayout.get(P[t+8>>2]),entries:function(e,t){for(var n=[],o=0;o<e;++o)n.push(r(t+40*o));return n}(P[t+12>>2],P[t+16>>2])},o=P[t+4>>2];o&&(n.label=re(o));var a=tr.mgrDevice.get(e);return tr.mgrBindGroup.create(a.createBindGroup(n))},u:(e,t)=>{function r(e){var t=P[e+4>>2];if(t)return{type:tr.BufferBindingType[t],hasDynamicOffset:!!P[e+8>>2],minBindingSize:4294967296*P[e+4+16>>2]+P[e+16>>2]}}function n(e){var t=P[e+4>>2];if(t)return{type:tr.SamplerBindingType[t]}}function o(e){var t=P[e+4>>2];if(t)return{sampleType:tr.TextureSampleType[t],viewDimension:tr.TextureViewDimension[P[e+8>>2]],multisampled:!!P[e+12>>2]}}function a(e){var t=P[e+4>>2];if(t)return{access:tr.StorageTextureAccess[t],format:tr.TextureFormat[P[e+8>>2]],viewDimension:tr.TextureViewDimension[P[e+12>>2]]}}var i={entries:function(e,t){for(var i,s=[],l=0;l<e;++l)s.push({binding:P[(i=t+80*l)+4>>2],visibility:P[i+8>>2],buffer:r(i+16),sampler:n(i+40),texture:o(i+48),storageTexture:a(i+64)});return s}(P[t+8>>2],P[t+12>>2])},s=P[t+4>>2];s&&(i.label=re(s));var l=tr.mgrDevice.get(e);return tr.mgrBindGroupLayout.create(l.createBindGroupLayout(i))},G:(e,t)=>{var r=!!P[t+24>>2],n={label:void 0,usage:P[t+8>>2],size:4294967296*P[t+4+16>>2]+P[t+16>>2],mappedAtCreation:r},o=P[t+4>>2];o&&(n.label=re(o));var a=tr.mgrDevice.get(e),i={},s=tr.mgrBuffer.create(a.createBuffer(n),i);return r&&(i.mapMode=2,i.onUnmap=[]),s},Z:(e,t)=>{var r;if(t){r={label:void 0};var n=P[t+4>>2];n&&(r.label=re(n))}var o=tr.mgrDevice.get(e);return tr.mgrCommandEncoder.create(o.createCommandEncoder(r))},s:(e,t)=>{for(var r=P[t+8>>2],n=P[t+12>>2],o=[],a=0;a<r;++a)o.push(tr.mgrBindGroupLayout.get(P[n+4*a>>2]));var i={label:void 0,bindGroupLayouts:o},s=P[t+4>>2];s&&(i.label=re(s));var l=tr.mgrDevice.get(e);return tr.mgrPipelineLayout.create(l.createPipelineLayout(i))},k:(e,t)=>{var r=(e=>{function t(e){if(e)return{operation:tr.BlendOperation[P[e>>2]],srcFactor:tr.BlendFactor[P[e+4>>2]],dstFactor:tr.BlendFactor[P[e+8>>2]]}}function r(e){if(e)return{alpha:t(e+12),color:t(e+0)}}function n(e,t){for(var n,o,a=[],i=0;i<e;++i)a.push((o=void 0,0===(o=P[(n=t+16*i)+4>>2])?void 0:{format:tr.TextureFormat[o],blend:r(P[n+8>>2]),writeMask:P[n+12>>2]}));return a}function o(e){return{compare:tr.CompareFunction[P[e>>2]],failOp:tr.StencilOperation[P[e+4>>2]],depthFailOp:tr.StencilOperation[P[e+8>>2]],passOp:tr.StencilOperation[P[e+12>>2]]}}function a(e,t){for(var r,n=[],o=0;o<e;++o)n.push((r=t+24*o,{format:tr.VertexFormat[P[r>>2]],offset:4294967296*P[r+4+8>>2]+P[r+8>>2],shaderLocation:P[r+16>>2]}));return n}function i(e){if(e){var t=P[e+8>>2];return 1===t?null:{arrayStride:4294967296*P[e+4>>2]+P[e>>2],stepMode:tr.VertexStepMode[t],attributes:a(P[e+12>>2],P[e+16>>2])}}}function s(e,t){if(e){for(var r=[],n=0;n<e;++n)r.push(i(t+24*n));return r}}var l={label:void 0,layout:tr.makePipelineLayout(P[e+8>>2]),vertex:function(e){if(e){var t={module:tr.mgrShaderModule.get(P[e+4>>2]),constants:tr.makePipelineConstants(P[e+12>>2],P[e+16>>2]),buffers:s(P[e+20>>2],P[e+24>>2])},r=P[e+8>>2];return r&&(t.entryPoint=re(r)),t}}(e+12),primitive:function(e){if(e){var t=P[e>>2],r=t?P[t+4>>2]:0;return{topology:tr.PrimitiveTopology[P[e+4>>2]],stripIndexFormat:tr.IndexFormat[P[e+8>>2]],frontFace:tr.FrontFace[P[e+12>>2]],cullMode:tr.CullMode[P[e+16>>2]],unclippedDepth:7===r&&!!P[t+8>>2]}}}(e+40),depthStencil:function(e){if(e)return{format:tr.TextureFormat[P[e+4>>2]],depthWriteEnabled:!!P[e+8>>2],depthCompare:tr.CompareFunction[P[e+12>>2]],stencilFront:o(e+16),stencilBack:o(e+32),stencilReadMask:P[e+48>>2],stencilWriteMask:P[e+52>>2],depthBias:C[e+56>>2],depthBiasSlopeScale:T[e+60>>2],depthBiasClamp:T[e+64>>2]}}(P[e+60>>2]),multisample:function(e){if(e)return{count:P[e+4>>2],mask:P[e+8>>2],alphaToCoverageEnabled:!!P[e+12>>2]}}(e+64),fragment:function(e){if(e){var t={module:tr.mgrShaderModule.get(P[e+4>>2]),constants:tr.makePipelineConstants(P[e+12>>2],P[e+16>>2]),targets:n(P[e+20>>2],P[e+24>>2])},r=P[e+8>>2];return r&&(t.entryPoint=re(r)),t}}(P[e+80>>2])},u=P[e+4>>2];return u&&(l.label=re(u)),l})(t),n=tr.mgrDevice.get(e);return tr.mgrRenderPipeline.create(n.createRenderPipeline(r))},E:(e,t)=>{var r;if(t){r={label:void 0,addressModeU:tr.AddressMode[P[t+8>>2]],addressModeV:tr.AddressMode[P[t+12>>2]],addressModeW:tr.AddressMode[P[t+16>>2]],magFilter:tr.FilterMode[P[t+20>>2]],minFilter:tr.FilterMode[P[t+24>>2]],mipmapFilter:tr.MipmapFilterMode[P[t+28>>2]],lodMinClamp:T[t+32>>2],lodMaxClamp:T[t+36>>2],compare:tr.CompareFunction[P[t+40>>2]]};var n=P[t+4>>2];n&&(r.label=re(n))}var o=tr.mgrDevice.get(e);return tr.mgrSampler.create(o.createSampler(r))},o:(e,t)=>{var r=P[t>>2],n=P[r+4>>2],o={label:void 0,code:""},a=P[t+4>>2];switch(a&&(o.label=re(a)),n){case 5:var i=P[r+8>>2],s=P[r+12>>2]>>2;o.code=P.subarray(s,s+i);break;case 6:var l=P[r+8>>2];l&&(o.code=re(l))}var u=tr.mgrDevice.get(e);return tr.mgrShaderModule.create(u.createShaderModule(o))},z:(e,t)=>{var r={label:void 0,size:tr.makeExtent3D(t+16),mipLevelCount:P[t+32>>2],sampleCount:P[t+36>>2],dimension:tr.TextureDimension[P[t+12>>2]],format:tr.TextureFormat[P[t+28>>2]],usage:P[t+8>>2]},n=P[t+4>>2];n&&(r.label=re(n));var o=P[t+40>>2];if(o){var a=P[t+44>>2];r.viewFormats=Array.from(C.subarray(a>>2,a+4*o>>2),(function(e){return tr.TextureFormat[e]}))}var i=tr.mgrDevice.get(e);return tr.mgrTexture.create(i.createTexture(r))},Ga:e=>{var t=tr.mgrDevice.objects[e].queueId;return tr.mgrQueue.reference(t),t},$:e=>tr.mgrDevice.release(e),Da:(e,t)=>{var r=P[t>>2],n=P[r+8>>2],o=nr(n).getContext("webgpu");if(!o)return 0;var a=P[t+4>>2];return a&&(o.surfaceLabelWebGPU=re(a)),tr.mgrSurface.create(o)},V:(e,t,r,n)=>{var o;if(t&&(o={powerPreference:tr.PowerPreference[P[t+8>>2]],forceFallbackAdapter:!!P[t+16>>2]}),!("gpu"in navigator)){var a=Y(),i=er("WebGPU not available on this browser (navigator.gpu is not available)");return Cr(r,1,0,i,n),void Z(a)}navigator.gpu.requestAdapter(o).then((e=>{$t((()=>{if(e)((e,t,n,o)=>{Cr(r,0,t,0,o)})(0,tr.mgrAdapter.create(e),0,n);else{var t=Y();((e,t,n,o)=>{Cr(r,1,0,n,o)})(0,0,er("WebGPU not available on this system (requestAdapter returned null)"),n),Z(t)}}))}),(e=>{$t((()=>{var t=Y();((e,t,n,o)=>{Cr(r,2,0,n,o)})(0,0,er(e.message),n),Z(t)}))}))},r:e=>tr.mgrPipelineLayout.release(e),Ja:e=>tr.mgrQueue.release(e),C:(e,t,r)=>{var n=tr.mgrQueue.get(e),o=Array.from(C.subarray(r>>2,r+4*t>>2),(e=>tr.mgrCommandBuffer.get(e)));n.submit(o)},ia:function(e,t,r,n,o,a){var i=Yt(r,n),s=tr.mgrQueue.get(e),l=tr.mgrBuffer.get(t),u=S.subarray(o,o+a);s.writeBuffer(l,i,u,0,a)},I:(e,t,r,n,o,a)=>{var i=tr.mgrQueue.get(e),s=tr.makeImageCopyTexture(t),l=tr.makeTextureDataLayout(o),u=tr.makeExtent3D(a),c=S.subarray(r,r+n);i.writeTexture(s,c,l,u)},K:(e,t,r,n,o,a)=>{tr.mgrRenderPassEncoder.get(e).drawIndexed(t,r,n,o,a)},ba:e=>{tr.mgrRenderPassEncoder.get(e).end()},aa:e=>tr.mgrRenderPassEncoder.release(e),d:(e,t,r,n,o)=>{var a=tr.mgrRenderPassEncoder.get(e),i=tr.mgrBindGroup.get(r);if(0==n)a.setBindGroup(t,i);else{for(var s=[],l=0;l<n;l++,o+=4)s.push(P[o>>2]);a.setBindGroup(t,i,s)}},ga:function(e,t,r,n,o,a,i){var s=Yt(n,o),l=Yt(a,i),u=tr.mgrRenderPassEncoder.get(e),c=tr.mgrBuffer.get(t);-1==l&&(l=void 0),u.setIndexBuffer(c,tr.IndexFormat[r],s,l)},h:(e,t)=>{var r=tr.mgrRenderPassEncoder.get(e),n=tr.mgrRenderPipeline.get(t);r.setPipeline(n)},p:(e,t,r,n,o)=>{tr.mgrRenderPassEncoder.get(e).setScissorRect(t,r,n,o)},i:(e,t)=>{tr.mgrRenderPassEncoder.get(e).setStencilReference(t)},ha:function(e,t,r,n,o,a,i){var s=Yt(n,o),l=Yt(a,i),u=tr.mgrRenderPassEncoder.get(e),c=tr.mgrBuffer.get(r);-1==l&&(l=void 0),u.setVertexBuffer(t,c,s,l)},j:e=>tr.mgrRenderPipeline.release(e),H:e=>tr.mgrSampler.release(e),n:e=>tr.mgrShaderModule.release(e),Ha:(e,t)=>{var r=P[t+4>>2],n=tr.mgrSurface.get(e),o=[P[t+28>>2],P[t+32>>2]];0!==o[0]&&(n.canvas.width=o[0]),0!==o[1]&&(n.canvas.height=o[1]);var a={device:tr.mgrDevice.get(r),format:tr.TextureFormat[P[t+8>>2]],usage:P[t+12>>2],alphaMode:tr.AlphaMode[P[t+24>>2]]};n.configure(a)},Ia:(e,t)=>{var r=tr.mgrSurface.get(e);try{var n=tr.mgrTexture.create(r.getCurrentTexture());P[t>>2]=n,C[t+4>>2]=0,C[t+8>>2]=0}catch(e){P[t>>2]=0,C[t+4>>2]=0,C[t+8>>2]=5}},Q:e=>tr.mgrSurface.release(e),Na:(e,t)=>{var r;if(t){var n=P[t+20>>2],o=P[t+28>>2];r={format:tr.TextureFormat[P[t+8>>2]],dimension:tr.TextureViewDimension[P[t+12>>2]],baseMipLevel:P[t+16>>2],mipLevelCount:4294967295===n?void 0:n,baseArrayLayer:P[t+24>>2],arrayLayerCount:4294967295===o?void 0:o,aspect:tr.TextureAspect[P[t+32>>2]]};var a=P[t+4>>2];a&&(r.label=re(a))}var i=tr.mgrTexture.get(e);return tr.mgrTextureView.create(i.createView(r))},Ma:e=>tr.mgrTexture.get(e).destroy(),Oa:e=>{var t=tr.mgrTexture.get(e);return tr.TextureFormat.indexOf(t.format)},ka:e=>tr.mgrTexture.get(e).height,ua:e=>tr.mgrTexture.get(e).width,L:e=>tr.mgrTexture.release(e),x:e=>tr.mgrTextureView.release(e)},lr=function(){var e,t,r,a,i={a:sr};function s(e,t){var r;return lr=e.exports,lr=xt.instrumentWasmExports(lr),b=lr.Pa,F(),lr.Ua,r=lr.Qa,M.unshift(r),j(),lr}if(L(),o.instantiateWasm)try{return o.instantiateWasm(i,s)}catch(e){w(`Module.instantiateWasm callback failed with error: ${e}`),n(e)}return I||(I=G()),(e=A,t=I,r=i,a=function(e){s(e.instance)},e||"function"!=typeof WebAssembly.instantiateStreaming||W(t)||H(t)||l||"function"!=typeof fetch?Q(t,r,a):fetch(t,{credentials:"same-origin"}).then((e=>WebAssembly.instantiateStreaming(e,r).then(a,(function(e){return w(`wasm streaming compile failed: ${e}`),w("falling back to ArrayBuffer instantiation"),Q(t,r,a)}))))).catch(n),{}}(),ur=e=>(ur=lr.Ra)(e),cr=e=>(cr=lr.Sa)(e),dr=e=>(dr=lr.Ta)(e),hr=(e,t)=>(hr=lr.Va)(e,t),pr=(e,t)=>(pr=lr.Wa)(e,t),mr=e=>(mr=lr.Xa)(e),fr=e=>(fr=lr.Ya)(e),gr=e=>(gr=lr.Za)(e),vr=()=>(vr=lr._a)(),yr=o.dynCall_iiii=(e,t,r,n)=>(yr=o.dynCall_iiii=lr.$a)(e,t,r,n),wr=o.dynCall_ii=(e,t)=>(wr=o.dynCall_ii=lr.ab)(e,t);o.dynCall_iiiii=(e,t,r,n,a)=>(o.dynCall_iiiii=lr.bb)(e,t,r,n,a),o.dynCall_iiiiiffiii=(e,t,r,n,a,i,s,l,u,c)=>(o.dynCall_iiiiiffiii=lr.cb)(e,t,r,n,a,i,s,l,u,c),o.dynCall_fii=(e,t,r)=>(o.dynCall_fii=lr.db)(e,t,r);var br=o.dynCall_vi=(e,t)=>(br=o.dynCall_vi=lr.eb)(e,t),_r=o.dynCall_vii=(e,t,r)=>(_r=o.dynCall_vii=lr.fb)(e,t,r),Er=o.dynCall_viiij=(e,t,r,n,a,i)=>(Er=o.dynCall_viiij=lr.gb)(e,t,r,n,a,i),Sr=o.dynCall_iiiiii=(e,t,r,n,a,i)=>(Sr=o.dynCall_iiiiii=lr.hb)(e,t,r,n,a,i),$r=o.dynCall_iii=(e,t,r)=>($r=o.dynCall_iii=lr.ib)(e,t,r),xr=o.dynCall_viii=(e,t,r,n)=>(xr=o.dynCall_viii=lr.jb)(e,t,r,n),Cr=o.dynCall_viiii=(e,t,r,n,a)=>(Cr=o.dynCall_viiii=lr.kb)(e,t,r,n,a);o.dynCall_viiiii=(e,t,r,n,a,i)=>(o.dynCall_viiiii=lr.lb)(e,t,r,n,a,i),o.dynCall_viiiiii=(e,t,r,n,a,i,s)=>(o.dynCall_viiiiii=lr.mb)(e,t,r,n,a,i,s),o.dynCall_v=e=>(o.dynCall_v=lr.nb)(e),o.dynCall_fi=(e,t)=>(o.dynCall_fi=lr.ob)(e,t),o.dynCall_iiiiiii=(e,t,r,n,a,i,s)=>(o.dynCall_iiiiiii=lr.pb)(e,t,r,n,a,i,s),o.dynCall_iiiiiiii=(e,t,r,n,a,i,s,l)=>(o.dynCall_iiiiiiii=lr.qb)(e,t,r,n,a,i,s,l),o.dynCall_iif=(e,t,r)=>(o.dynCall_iif=lr.rb)(e,t,r),o.dynCall_iiif=(e,t,r,n)=>(o.dynCall_iiif=lr.sb)(e,t,r,n),o.dynCall_iiffff=(e,t,r,n,a,i)=>(o.dynCall_iiffff=lr.tb)(e,t,r,n,a,i),o.dynCall_iiiffff=(e,t,r,n,a,i,s)=>(o.dynCall_iiiffff=lr.ub)(e,t,r,n,a,i,s),o.dynCall_jiji=(e,t,r,n,a)=>(o.dynCall_jiji=lr.vb)(e,t,r,n,a),o.dynCall_iiiiiiiii=(e,t,r,n,a,i,s,l,u)=>(o.dynCall_iiiiiiiii=lr.wb)(e,t,r,n,a,i,s,l,u),o.dynCall_iiiff=(e,t,r,n,a)=>(o.dynCall_iiiff=lr.xb)(e,t,r,n,a),o.dynCall_iiifi=(e,t,r,n,a)=>(o.dynCall_iiifi=lr.yb)(e,t,r,n,a),o.dynCall_viijii=(e,t,r,n,a,i,s)=>(o.dynCall_viijii=lr.zb)(e,t,r,n,a,i,s),o.dynCall_iiiiij=(e,t,r,n,a,i,s)=>(o.dynCall_iiiiij=lr.Ab)(e,t,r,n,a,i,s),o.dynCall_iiiiid=(e,t,r,n,a,i)=>(o.dynCall_iiiiid=lr.Bb)(e,t,r,n,a,i),o.dynCall_iiiiijj=(e,t,r,n,a,i,s,l,u)=>(o.dynCall_iiiiijj=lr.Cb)(e,t,r,n,a,i,s,l,u),o.dynCall_iiiiiijj=(e,t,r,n,a,i,s,l,u,c)=>(o.dynCall_iiiiiijj=lr.Db)(e,t,r,n,a,i,s,l,u,c);var Pr,Tr=e=>(Tr=lr.Eb)(e),kr=()=>(kr=lr.Fb)(),Ar=e=>(Ar=lr.Gb)(e),Dr=()=>(Dr=lr.Hb)();function Fr(){function e(){Pr||(Pr=!0,o.calledRun=!0,D||(o.noFSInit||Se.initialized||Se.init(),Se.ignorePermissions=!1,J(M),r(o),o.onRuntimeInitialized?.(),function(){if(o.postRun)for("function"==typeof o.postRun&&(o.postRun=[o.postRun]);o.postRun.length;)e=o.postRun.shift(),B.unshift(e);var e;J(B)}()))}O>0||(function(){if(o.preRun)for("function"==typeof o.preRun&&(o.preRun=[o.preRun]);o.preRun.length;)e=o.preRun.shift(),R.unshift(e);var e;J(R)}(),O>0||(o.setStatus?(o.setStatus("Running..."),setTimeout((()=>{setTimeout((()=>o.setStatus("")),1),e()}),1)):e()))}if(o.addRunDependency=L,o.removeRunDependency=j,o.FS_createPreloadedFile=_e,o.FS_unlink=e=>Se.unlink(e),o.FS_createPath=or,o.FS_createDevice=ir,o.FS=Se,o.FS_createDataFile=we,o.FS_createLazyFile=ar,U=function e(){Pr||Fr(),Pr||(U=e)},o.preInit)for("function"==typeof o.preInit&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();return Fr(),a});const ve="1.0.0";function ye(e,t,r,n){var o,a=arguments.length,i=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}let we;var be,_e,Ee,Se,$e,xe,Ce;(async()=>{we=await ge({locateFile:(e,t)=>e.endsWith(".wasm")?"https://unpkg.com/@thorvg/lottie-player@latest/dist/thorvg-wasm.wasm":t+e})})(),exports.Renderer=void 0,(be=exports.Renderer||(exports.Renderer={})).SW="sw",be.WG="wg",exports.InitStatus=void 0,(_e=exports.InitStatus||(exports.InitStatus={})).IDLE="idle",_e.REQUESTED="requested",_e.INITIALIZED="initialized",exports.ExportableType=void 0,(Ee=exports.ExportableType||(exports.ExportableType={})).GIF="gif",Ee.TVG="tvg",Ee.PNG="png",exports.MimeType=void 0,(Se=exports.MimeType||(exports.MimeType={})).JSON="json",Se.JPG="jpg",Se.PNG="png",Se.SVG="svg",Se.TVG="tvg",exports.PlayerState=void 0,($e=exports.PlayerState||(exports.PlayerState={})).Destroyed="destroyed",$e.Error="error",$e.Loading="loading",$e.Paused="paused",$e.Playing="playing",$e.Stopped="stopped",$e.Frozen="frozen",exports.PlayMode=void 0,(xe=exports.PlayMode||(exports.PlayMode={})).Bounce="bounce",xe.Normal="normal",exports.PlayerEvent=void 0,(Ce=exports.PlayerEvent||(exports.PlayerEvent={})).Complete="complete",Ce.Destroyed="destroyed",Ce.Error="error",Ce.Frame="frame",Ce.Freeze="freeze",Ce.Load="load",Ce.Loop="loop",Ce.Pause="pause",Ce.Play="play",Ce.Ready="ready",Ce.Stop="stop";const Pe=async e=>{try{e=JSON.parse(e)}catch(t){const r=await(async e=>{if("string"!=typeof e)throw new Error("The url value must be a string");try{const t=new URL(e),r=await fetch(t.toString());return await r.json()}catch(e){throw new Error("An error occurred while trying to load the Lottie file from URL")}})(e);e=JSON.stringify(r)}return e},Te=async(e,t)=>{const r=new TextEncoder;let n=e;switch(typeof n){case"object":return n instanceof ArrayBuffer?new Uint8Array(n):(n=JSON.stringify(n),r.encode(n));case"string":if("json"===t)return n=await Pe(n),r.encode(n);const e=await(async e=>(await fetch(e)).arrayBuffer())(n);return new Uint8Array(e);default:throw new Error("Invalid src type")}},ke=e=>new Promise((t=>setTimeout(t,e))),Ae=(e,t)=>{const r=document.createElement("a");r.setAttribute("href",URL.createObjectURL(t)),r.setAttribute("download",e),document.body.appendChild(r),r.click(),document.body.removeChild(r)};let De="idle";class Fe extends ne{src;mimeType="json";renderConfig;speed=1;autoPlay=!1;count;loop=!1;direction=1;mode="normal";intermission=1;totalFrame=0;currentFrame=0;currentState="loading";get size(){return Float32Array.from(this._TVG?.size()||[0,0])}_TVG;_canvas;_imageData;_beginTime=Date.now();_counter=1;_timer;_observer;_observable=!1;async _init(){if(!we)return;if(!this._timer)return;clearInterval(this._timer),this._timer=void 0;const e=this.renderConfig?.renderer||"sw";await(async e=>{if("sw"!==e){for(;"requested"===De;)await ke(100);"initialized"!==De&&(De="requested",await we.init(),De="initialized")}})(e),this._TVG=new we.TvgLottieAnimation(e,`#${this._canvas.id}`),this.src&&this.load(this.src,this.mimeType)}_viewport(){const{left:e,right:t,top:r,bottom:n}=this.getBoundingClientRect(),o=window.innerWidth,a=window.innerHeight;let i=0,s=0,l=this._canvas.width,u=this._canvas.height;e<0&&(i=Math.abs(e),l-=i),r<0&&(s=Math.abs(r),u-=s),t>o&&(l-=t-o),n>a&&(u-=n-a),this._TVG.viewport(i,s,l,u)}_observerCallback(e){const t=e[0],r=t.target;r._observable=t.isIntersecting,t.isIntersecting?"frozen"===r.currentState&&r.play():"playing"===r.currentState&&(r.freeze(),r.dispatchEvent(new CustomEvent("freeze")))}firstUpdated(e){this._canvas=this.querySelector(".thorvg"),this._canvas.id=`thorvg-${me().replaceAll("-","").substring(0,6)}`,this._canvas.width=this._canvas.offsetWidth,this._canvas.height=this._canvas.offsetHeight,this._observer=new IntersectionObserver(this._observerCallback),this._observer.observe(this),this._TVG?this.src&&this.load(this.src,this.mimeType):this._timer=setInterval(this._init.bind(this),100)}createRenderRoot(){return this.style.display="block",this}async _animLoop(){this._TVG&&await this._update()&&(this._render(),window.requestAnimationFrame(this._animLoop.bind(this)))}_loadBytes(e,t=""){if(!this._TVG.load(e,this.mimeType,this._canvas.width,this._canvas.height,t))throw new Error("Unable to load an image. Error: ",this._TVG.error());this._render(),this.dispatchEvent(new CustomEvent("load")),this.autoPlay&&this.play()}_flush(){this._canvas.getContext("2d").putImageData(this._imageData,0,0)}_render(){if(this.renderConfig?.enableDevicePixelRatio){const e=1+.75*(window.devicePixelRatio-1),{width:t,height:r}=this._canvas.getBoundingClientRect();this._canvas.width=t*e,this._canvas.height=r*e}this._TVG.resize(this._canvas.width,this._canvas.height),this._viewport();if(!this._TVG.update())return;if("wg"===this.renderConfig?.renderer)return void this._TVG.render();const e=this._TVG.render(),t=new Uint8ClampedArray(e.buffer,e.byteOffset,e.byteLength);t.length<1||(this._imageData=new ImageData(t,this._canvas.width,this._canvas.height),this._flush())}async _update(){if("playing"!==this.currentState)return!1;const e=this._TVG.duration(),t=Date.now()/1e3;if(this.currentFrame=(t-this._beginTime)/e*this.totalFrame*this.speed,-1===this.direction&&(this.currentFrame=this.totalFrame-this.currentFrame),1===this.direction&&this.currentFrame>=this.totalFrame||-1===this.direction&&this.currentFrame<=0){const e=this.count?"bounce"===this.mode?2*this.count:this.count:0;if(this.loop||e&&this._counter<e)return"bounce"===this.mode&&(this.direction=1===this.direction?-1:1,this.currentFrame=1===this.direction?0:this.totalFrame),this.count&&(this._counter+=1),await ke(this.intermission),this.play(),!0;this.dispatchEvent(new CustomEvent("complete")),this.currentState="stopped"}return this.dispatchEvent(new CustomEvent("frame",{detail:{frame:this.currentFrame}})),this._TVG.frame(this.currentFrame)}_frame(e){this.pause(),this.currentFrame=e,this._TVG.frame(e)}async load(e,t="json"){try{await this._init();const r=await Te(e,t);this.dispatchEvent(new CustomEvent("ready")),this.mimeType=t,await this._loadBytes(r)}catch(e){this.currentState="error",this.dispatchEvent(new CustomEvent("error"))}}play(){if("json"===this.mimeType&&(this.totalFrame=this._TVG.totalFrame(),!(this.totalFrame<1)&&(this._beginTime=Date.now()/1e3,"playing"!==this.currentState)))return this._observable?(this.currentState="playing",void window.requestAnimationFrame(this._animLoop.bind(this))):void(this.currentState="frozen")}pause(){this.currentState="paused",this.dispatchEvent(new CustomEvent("pause"))}stop(){this.currentState="stopped",this.currentFrame=0,this._counter=1,this.seek(0),this.dispatchEvent(new CustomEvent("stop"))}freeze(){this.currentState="frozen",this.dispatchEvent(new CustomEvent("freeze"))}async seek(e){this._frame(e),await this._update(),this._render()}resize(e,t){this._canvas.width=e,this._canvas.height=t,"playing"!==this.currentState&&this._render()}destroy(){this._TVG&&(this._TVG.delete(),this._TVG=null,this.currentState="destroyed",this._observer&&(this._observer.disconnect(),this._observer=void 0),this.dispatchEvent(new CustomEvent("destroyed")),this.remove())}term(){we.term(),we=null}setLooping(e){this._TVG&&(this.loop=e)}setDirection(e){this._TVG&&(this.direction=e)}setSpeed(e){this._TVG&&(this.speed=e)}setBgColor(e){this._TVG&&(this._canvas.style.backgroundColor=e)}save(e){if(!this._TVG)return;const t=`output.${e}`;if("png"===e)return void this._canvas.toBlob((e=>{e&&Ae("output.png",e)}),"image/png");if(!this._TVG.save(e))throw new Error("Unable to save. Error: ",this._TVG.error());const r=we.FS.readFile(t);if("gif"===e&&r.length<6)throw new Error("Unable to save the GIF data. The generated file size is invalid.");if("tvg"===e&&r.length<33)throw new Error("Unable to save the TVG data. The generated file size is invalid.");const n=new Blob([r],{type:"application/octet-stream"});Ae(t,n)}getVersion(){return{THORVG_VERSION:ve}}render(){return I`
1
+ "use strict";var e="undefined"!=typeof document?document.currentScript:null;const r=globalThis,t=r.ShadowRoot&&(void 0===r.ShadyCSS||r.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),a=new WeakMap;let o=class{constructor(e,r,t){if(this._$cssResult$=!0,t!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=r}get styleSheet(){let e=this.o;const r=this.t;if(t&&void 0===e){const t=void 0!==r&&1===r.length;t&&(e=a.get(r)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),t&&a.set(r,e))}return e}toString(){return this.cssText}};const i=t?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let r="";for(const t of e.cssRules)r+=t.cssText;return(e=>new o("string"==typeof e?e:e+"",void 0,n))(r)})(e):e,{is:s,defineProperty:l,getOwnPropertyDescriptor:u,getOwnPropertyNames:c,getOwnPropertySymbols:d,getPrototypeOf:f}=Object,m=globalThis,p=m.trustedTypes,h=p?p.emptyScript:"",g=m.reactiveElementPolyfillSupport,v=(e,r)=>e,y={toAttribute(e,r){switch(r){case Boolean:e=e?h:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,r){let t=e;switch(r){case Boolean:t=null!==e;break;case Number:t=null===e?null:Number(e);break;case Object:case Array:try{t=JSON.parse(e)}catch(e){t=null}}return t}},b=(e,r)=>!s(e,r),w={attribute:!0,type:String,converter:y,reflect:!1,hasChanged:b};Symbol.metadata??=Symbol("metadata"),m.litPropertyMetadata??=new WeakMap;class _ extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,r=w){if(r.state&&(r.attribute=!1),this._$Ei(),this.elementProperties.set(e,r),!r.noAccessor){const t=Symbol(),n=this.getPropertyDescriptor(e,t,r);void 0!==n&&l(this.prototype,e,n)}}static getPropertyDescriptor(e,r,t){const{get:n,set:a}=u(this.prototype,e)??{get(){return this[r]},set(e){this[r]=e}};return{get(){return n?.call(this)},set(r){const o=n?.call(this);a.call(this,r),this.requestUpdate(e,o,t)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??w}static _$Ei(){if(this.hasOwnProperty(v("elementProperties")))return;const e=f(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(v("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(v("properties"))){const e=this.properties,r=[...c(e),...d(e)];for(const t of r)this.createProperty(t,e[t])}const e=this[Symbol.metadata];if(null!==e){const r=litPropertyMetadata.get(e);if(void 0!==r)for(const[e,t]of r)this.elementProperties.set(e,t)}this._$Eh=new Map;for(const[e,r]of this.elementProperties){const t=this._$Eu(e,r);void 0!==t&&this._$Eh.set(t,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const r=[];if(Array.isArray(e)){const t=new Set(e.flat(1/0).reverse());for(const e of t)r.unshift(i(e))}else void 0!==e&&r.push(i(e));return r}static _$Eu(e,r){const t=r.attribute;return!1===t?void 0:"string"==typeof t?t:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,r=this.constructor.elementProperties;for(const t of r.keys())this.hasOwnProperty(t)&&(e.set(t,this[t]),delete this[t]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((e,n)=>{if(t)e.adoptedStyleSheets=n.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(const t of n){const n=document.createElement("style"),a=r.litNonce;void 0!==a&&n.setAttribute("nonce",a),n.textContent=t.cssText,e.appendChild(n)}})(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,r,t){this._$AK(e,t)}_$EC(e,r){const t=this.constructor.elementProperties.get(e),n=this.constructor._$Eu(e,t);if(void 0!==n&&!0===t.reflect){const a=(void 0!==t.converter?.toAttribute?t.converter:y).toAttribute(r,t.type);this._$Em=e,null==a?this.removeAttribute(n):this.setAttribute(n,a),this._$Em=null}}_$AK(e,r){const t=this.constructor,n=t._$Eh.get(e);if(void 0!==n&&this._$Em!==n){const e=t.getPropertyOptions(n),a="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:y;this._$Em=n,this[n]=a.fromAttribute(r,e.type),this._$Em=null}}requestUpdate(e,r,t){if(void 0!==e){if(t??=this.constructor.getPropertyOptions(e),!(t.hasChanged??b)(this[e],r))return;this.P(e,r,t)}!1===this.isUpdatePending&&(this._$ES=this._$ET())}P(e,r,t){this._$AL.has(e)||this._$AL.set(e,r),!0===t.reflect&&this._$Em!==e&&(this._$Ej??=new Set).add(e)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const e=this.scheduleUpdate();return null!=e&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[e,r]of this._$Ep)this[e]=r;this._$Ep=void 0}const e=this.constructor.elementProperties;if(e.size>0)for(const[r,t]of e)!0!==t.wrapped||this._$AL.has(r)||void 0===this[r]||this.P(r,this[r],t)}let e=!1;const r=this._$AL;try{e=this.shouldUpdate(r),e?(this.willUpdate(r),this._$EO?.forEach((e=>e.hostUpdate?.())),this.update(r)):this._$EU()}catch(r){throw e=!1,this._$EU(),r}e&&this._$AE(r)}willUpdate(e){}_$AE(e){this._$EO?.forEach((e=>e.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Ej&&=this._$Ej.forEach((e=>this._$EC(e,this[e]))),this._$EU()}updated(e){}firstUpdated(e){}}_.elementStyles=[],_.shadowRootOptions={mode:"open"},_[v("elementProperties")]=new Map,_[v("finalized")]=new Map,g?.({ReactiveElement:_}),(m.reactiveElementVersions??=[]).push("2.0.4");const x=globalThis,E=x.trustedTypes,S=E?E.createPolicy("lit-html",{createHTML:e=>e}):void 0,C="$lit$",$=`lit$${Math.random().toFixed(9).slice(2)}$`,A="?"+$,P=`<${A}>`,T=document,k=()=>T.createComment(""),B=e=>null===e||"object"!=typeof e&&"function"!=typeof e,F=Array.isArray,D="[ \t\n\f\r]",L=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,M=/-->/g,R=/>/g,O=RegExp(`>|${D}(?:([^\\s"'>=/]+)(${D}*=${D}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),U=/'/g,I=/"/g,j=/^(?:script|style|textarea|title)$/i,V=(e=>(r,...t)=>({_$litType$:e,strings:r,values:t}))(1),N=Symbol.for("lit-noChange"),z=Symbol.for("lit-nothing"),G=new WeakMap,W=T.createTreeWalker(T,129);function H(e,r){if(!F(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==S?S.createHTML(r):r}class q{constructor({strings:e,_$litType$:r},t){let n;this.parts=[];let a=0,o=0;const i=e.length-1,s=this.parts,[l,u]=((e,r)=>{const t=e.length-1,n=[];let a,o=2===r?"<svg>":3===r?"<math>":"",i=L;for(let r=0;r<t;r++){const t=e[r];let s,l,u=-1,c=0;for(;c<t.length&&(i.lastIndex=c,l=i.exec(t),null!==l);)c=i.lastIndex,i===L?"!--"===l[1]?i=M:void 0!==l[1]?i=R:void 0!==l[2]?(j.test(l[2])&&(a=RegExp("</"+l[2],"g")),i=O):void 0!==l[3]&&(i=O):i===O?">"===l[0]?(i=a??L,u=-1):void 0===l[1]?u=-2:(u=i.lastIndex-l[2].length,s=l[1],i=void 0===l[3]?O:'"'===l[3]?I:U):i===I||i===U?i=O:i===M||i===R?i=L:(i=O,a=void 0);const d=i===O&&e[r+1].startsWith("/>")?" ":"";o+=i===L?t+P:u>=0?(n.push(s),t.slice(0,u)+C+t.slice(u)+$+d):t+$+(-2===u?r:d)}return[H(e,o+(e[t]||"<?>")+(2===r?"</svg>":3===r?"</math>":"")),n]})(e,r);if(this.el=q.createElement(l,t),W.currentNode=this.el.content,2===r||3===r){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(n=W.nextNode())&&s.length<i;){if(1===n.nodeType){if(n.hasAttributes())for(const e of n.getAttributeNames())if(e.endsWith(C)){const r=u[o++],t=n.getAttribute(e).split($),i=/([.?@])?(.*)/.exec(r);s.push({type:1,index:a,name:i[2],strings:t,ctor:"."===i[1]?J:"?"===i[1]?Y:"@"===i[1]?ee:K}),n.removeAttribute(e)}else e.startsWith($)&&(s.push({type:6,index:a}),n.removeAttribute(e));if(j.test(n.tagName)){const e=n.textContent.split($),r=e.length-1;if(r>0){n.textContent=E?E.emptyScript:"";for(let t=0;t<r;t++)n.append(e[t],k()),W.nextNode(),s.push({type:2,index:++a});n.append(e[r],k())}}}else if(8===n.nodeType)if(n.data===A)s.push({type:2,index:a});else{let e=-1;for(;-1!==(e=n.data.indexOf($,e+1));)s.push({type:7,index:a}),e+=$.length-1}a++}}static createElement(e,r){const t=T.createElement("template");return t.innerHTML=e,t}}function X(e,r,t=e,n){if(r===N)return r;let a=void 0!==n?t.o?.[n]:t.l;const o=B(r)?void 0:r._$litDirective$;return a?.constructor!==o&&(a?._$AO?.(!1),void 0===o?a=void 0:(a=new o(e),a._$AT(e,t,n)),void 0!==n?(t.o??=[])[n]=a:t.l=a),void 0!==a&&(r=X(e,a._$AS(e,r.values),a,n)),r}class Q{constructor(e,r){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=r}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:r},parts:t}=this._$AD,n=(e?.creationScope??T).importNode(r,!0);W.currentNode=n;let a=W.nextNode(),o=0,i=0,s=t[0];for(;void 0!==s;){if(o===s.index){let r;2===s.type?r=new Z(a,a.nextSibling,this,e):1===s.type?r=new s.ctor(a,s.name,s.strings,this,e):6===s.type&&(r=new re(a,this,e)),this._$AV.push(r),s=t[++i]}o!==s?.index&&(a=W.nextNode(),o++)}return W.currentNode=T,n}p(e){let r=0;for(const t of this._$AV)void 0!==t&&(void 0!==t.strings?(t._$AI(e,t,r),r+=t.strings.length-2):t._$AI(e[r])),r++}}class Z{get _$AU(){return this._$AM?._$AU??this.v}constructor(e,r,t,n){this.type=2,this._$AH=z,this._$AN=void 0,this._$AA=e,this._$AB=r,this._$AM=t,this.options=n,this.v=n?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const r=this._$AM;return void 0!==r&&11===e?.nodeType&&(e=r.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,r=this){e=X(this,e,r),B(e)?e===z||null==e||""===e?(this._$AH!==z&&this._$AR(),this._$AH=z):e!==this._$AH&&e!==N&&this._(e):void 0!==e._$litType$?this.$(e):void 0!==e.nodeType?this.T(e):(e=>F(e)||"function"==typeof e?.[Symbol.iterator])(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==z&&B(this._$AH)?this._$AA.nextSibling.data=e:this.T(T.createTextNode(e)),this._$AH=e}$(e){const{values:r,_$litType$:t}=e,n="number"==typeof t?this._$AC(e):(void 0===t.el&&(t.el=q.createElement(H(t.h,t.h[0]),this.options)),t);if(this._$AH?._$AD===n)this._$AH.p(r);else{const e=new Q(n,this),t=e.u(this.options);e.p(r),this.T(t),this._$AH=e}}_$AC(e){let r=G.get(e.strings);return void 0===r&&G.set(e.strings,r=new q(e)),r}k(e){F(this._$AH)||(this._$AH=[],this._$AR());const r=this._$AH;let t,n=0;for(const a of e)n===r.length?r.push(t=new Z(this.O(k()),this.O(k()),this,this.options)):t=r[n],t._$AI(a),n++;n<r.length&&(this._$AR(t&&t._$AB.nextSibling,n),r.length=n)}_$AR(e=this._$AA.nextSibling,r){for(this._$AP?.(!1,!0,r);e&&e!==this._$AB;){const r=e.nextSibling;e.remove(),e=r}}setConnected(e){void 0===this._$AM&&(this.v=e,this._$AP?.(e))}}class K{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,r,t,n,a){this.type=1,this._$AH=z,this._$AN=void 0,this.element=e,this.name=r,this._$AM=n,this.options=a,t.length>2||""!==t[0]||""!==t[1]?(this._$AH=Array(t.length-1).fill(new String),this.strings=t):this._$AH=z}_$AI(e,r=this,t,n){const a=this.strings;let o=!1;if(void 0===a)e=X(this,e,r,0),o=!B(e)||e!==this._$AH&&e!==N,o&&(this._$AH=e);else{const n=e;let i,s;for(e=a[0],i=0;i<a.length-1;i++)s=X(this,n[t+i],r,i),s===N&&(s=this._$AH[i]),o||=!B(s)||s!==this._$AH[i],s===z?e=z:e!==z&&(e+=(s??"")+a[i+1]),this._$AH[i]=s}o&&!n&&this.j(e)}j(e){e===z?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class J extends K{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===z?void 0:e}}class Y extends K{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==z)}}class ee extends K{constructor(e,r,t,n,a){super(e,r,t,n,a),this.type=5}_$AI(e,r=this){if((e=X(this,e,r,0)??z)===N)return;const t=this._$AH,n=e===z&&t!==z||e.capture!==t.capture||e.once!==t.once||e.passive!==t.passive,a=e!==z&&(t===z||n);n&&this.element.removeEventListener(this.name,this,t),a&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class re{constructor(e,r,t){this.element=e,this.type=6,this._$AN=void 0,this._$AM=r,this.options=t}get _$AU(){return this._$AM._$AU}_$AI(e){X(this,e)}}const te=x.litHtmlPolyfillSupport;te?.(q,Z),(x.litHtmlVersions??=[]).push("3.2.0");class ne extends _{constructor(){super(...arguments),this.renderOptions={host:this},this.o=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this.o=((e,r,t)=>{const n=t?.renderBefore??r;let a=n._$litPart$;if(void 0===a){const e=t?.renderBefore??null;n._$litPart$=a=new Z(r.insertBefore(k(),e),e,void 0,t??{})}return a._$AI(e),a})(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this.o?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this.o?.setConnected(!1)}render(){return N}}ne._$litElement$=!0,ne.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:ne});const ae=globalThis.litElementPolyfillSupport;ae?.({LitElement:ne}),(globalThis.litElementVersions??=[]).push("4.1.0");const oe={attribute:!0,type:String,converter:y,reflect:!1,hasChanged:b},ie=(e=oe,r,t)=>{const{kind:n,metadata:a}=t;let o=globalThis.litPropertyMetadata.get(a);if(void 0===o&&globalThis.litPropertyMetadata.set(a,o=new Map),o.set(t.name,e),"accessor"===n){const{name:n}=t;return{set(t){const a=r.get.call(this);r.set.call(this,t),this.requestUpdate(n,a,e)},init(r){return void 0!==r&&this.P(n,void 0,e),r}}}if("setter"===n){const{name:n}=t;return function(t){const a=this[n];r.call(this,t),this.requestUpdate(n,a,e)}}throw Error("Unsupported decorator location: "+n)};function se(e){return(r,t)=>"object"==typeof t?ie(e,r,t):((e,r,t)=>{const n=r.hasOwnProperty(t);return r.constructor.createProperty(t,n?{...e,wrapped:!0}:e),n?Object.getOwnPropertyDescriptor(r,t):void 0})(e,r,t)}for(var le,ue=[],ce=0;ce<256;++ce)ue.push((ce+256).toString(16).slice(1));var de=new Uint8Array(16);function fe(){if(!le&&!(le="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return le(de)}var me={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function pe(e,r,t){if(me.randomUUID&&!r&&!e)return me.randomUUID();var n=(e=e||{}).random||(e.rng||fe)();return n[6]=15&n[6]|64,n[8]=63&n[8]|128,function(e,r=0){return(ue[e[r+0]]+ue[e[r+1]]+ue[e[r+2]]+ue[e[r+3]]+"-"+ue[e[r+4]]+ue[e[r+5]]+"-"+ue[e[r+6]]+ue[e[r+7]]+"-"+ue[e[r+8]]+ue[e[r+9]]+"-"+ue[e[r+10]]+ue[e[r+11]]+ue[e[r+12]]+ue[e[r+13]]+ue[e[r+14]]+ue[e[r+15]]).toLowerCase()}(n)}var he,ge=(he="undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href,async function(r={}){var t,n,a=r,o=new Promise(((e,r)=>{t=e,n=r})),i="object"==typeof window,s="undefined"!=typeof WorkerGlobalScope,l="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node&&"renderer"!=process.type;if(l){const{createRequire:r}=await Promise.resolve().then((function(){return Fe}));let t="undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href;t.startsWith("data:")&&(t="/");var u=r(t)}var c,d,f=Object.assign({},a),m="./this.program",p=(e,r)=>{throw r},h="";if(l){var g=u("fs"),v=u("path");("undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href).startsWith("data:")||(h=v.dirname(u("url").fileURLToPath("undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href))+"/"),d=e=>(e=W(e)?new URL(e):v.normalize(e),g.readFileSync(e)),c=(e,r=!0)=>(e=W(e)?new URL(e):v.normalize(e),new Promise(((t,n)=>{g.readFile(e,r?void 0:"utf8",((e,a)=>{e?n(e):t(r?a.buffer:a)}))}))),!a.thisProgram&&process.argv.length>1&&(m=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),p=(e,r)=>{throw process.exitCode=e,r}}else(i||s)&&(s?h=self.location.href:"undefined"!=typeof document&&document.currentScript&&(h=document.currentScript.src),he&&(h=he),h=h.startsWith("blob:")?"":h.substr(0,h.replace(/[?#].*/,"").lastIndexOf("/")+1),s&&(d=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),c=e=>W(e)?new Promise(((r,t)=>{var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?r(n.response):t(n.status)},n.onerror=t,n.send(null)})):fetch(e,{credentials:"same-origin"}).then((e=>e.ok?e.arrayBuffer():Promise.reject(new Error(e.status+" : "+e.url)))));var y=a.print||console.log.bind(console),b=a.printErr||console.error.bind(console);Object.assign(a,f),f=null,a.arguments&&a.arguments,a.thisProgram&&(m=a.thisProgram);var w,_,x,E,S,C,$,A,P,T,k=a.wasmBinary,B=!1;function F(){var e=w.buffer;a.HEAP8=x=new Int8Array(e),a.HEAP16=S=new Int16Array(e),a.HEAPU8=E=new Uint8Array(e),a.HEAPU16=C=new Uint16Array(e),a.HEAP32=$=new Int32Array(e),a.HEAPU32=A=new Uint32Array(e),a.HEAPF32=P=new Float32Array(e),a.HEAPF64=T=new Float64Array(e)}var D=[],L=[],M=[],R=0,O=null;function U(e){R++,a.monitorRunDependencies?.(R)}function I(e){if(R--,a.monitorRunDependencies?.(R),0==R&&O){var r=O;O=null,r()}}function j(e){a.onAbort?.(e),b(e="Aborted("+e+")"),B=!0,e+=". Build with -sASSERTIONS for more info.";var r=new WebAssembly.RuntimeError(e);throw n(r),r}var V,N,z,G=e=>e.startsWith("data:application/octet-stream;base64,"),W=e=>e.startsWith("file://");function H(){if(a.locateFile){var r="thorvg-wasm.wasm";return G(r)?r:(t=r,a.locateFile?a.locateFile(t,h):h+t)}var t;return new URL("thorvg-wasm.wasm","undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&e.src||new URL("lottie-player.cjs.js",document.baseURI).href).href}function q(e){if(e==V&&k)return new Uint8Array(k);if(d)return d(e);throw"both async and sync fetching of the wasm failed"}function X(e,r,t){return function(e){return k?Promise.resolve().then((()=>q(e))):c(e).then((e=>new Uint8Array(e)),(()=>q(e)))}(e).then((e=>WebAssembly.instantiate(e,r))).then(t,(e=>{b(`failed to asynchronously prepare wasm: ${e}`),j(e)}))}class Q{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var Z=e=>{for(;e.length>0;)e.shift()(a)},K=a.noExitRuntime||!0,J=e=>Ct(e),Y=()=>At(),ee="undefined"!=typeof TextDecoder?new TextDecoder:void 0,re=(e,r=0,t=NaN)=>{for(var n=r+t,a=r;e[a]&&!(a>=n);)++a;if(a-r>16&&e.buffer&&ee)return ee.decode(e.subarray(r,a));for(var o="";r<a;){var i=e[r++];if(128&i){var s=63&e[r++];if(192!=(224&i)){var l=63&e[r++];if((i=224==(240&i)?(15&i)<<12|s<<6|l:(7&i)<<18|s<<12|l<<6|63&e[r++])<65536)o+=String.fromCharCode(i);else{var u=i-65536;o+=String.fromCharCode(55296|u>>10,56320|1023&u)}}else o+=String.fromCharCode((31&i)<<6|s)}else o+=String.fromCharCode(i)}return o},te=(e,r)=>e?re(E,e,r):"",ne=()=>{var e=$[+Se.varargs>>2];return Se.varargs+=4,e},ae=ne,oe={isAbs:e=>"/"===e.charAt(0),splitPath:e=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1),normalizeArray:(e,r)=>{for(var t=0,n=e.length-1;n>=0;n--){var a=e[n];"."===a?e.splice(n,1):".."===a?(e.splice(n,1),t++):t&&(e.splice(n,1),t--)}if(r)for(;t;t--)e.unshift("..");return e},normalize:e=>{var r=oe.isAbs(e),t="/"===e.substr(-1);return e=oe.normalizeArray(e.split("/").filter((e=>!!e)),!r).join("/"),e||r||(e="."),e&&t&&(e+="/"),(r?"/":"")+e},dirname:e=>{var r=oe.splitPath(e),t=r[0],n=r[1];return t||n?(n&&(n=n.substr(0,n.length-1)),t+n):"."},basename:e=>{if("/"===e)return"/";var r=(e=(e=oe.normalize(e)).replace(/\/$/,"")).lastIndexOf("/");return-1===r?e:e.substr(r+1)},join:(...e)=>oe.normalize(e.join("/")),join2:(e,r)=>oe.normalize(e+"/"+r)},ie=e=>(ie=(()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return e=>crypto.getRandomValues(e);if(l)try{var e=u("crypto");if(e.randomFillSync)return r=>e.randomFillSync(r);var r=e.randomBytes;return e=>(e.set(r(e.byteLength)),e)}catch(e){}j("initRandomDevice")})())(e),se={resolve:(...e)=>{for(var r="",t=!1,n=e.length-1;n>=-1&&!t;n--){var a=n>=0?e[n]:Ee.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");if(!a)return"";r=a+"/"+r,t=oe.isAbs(a)}return r=oe.normalizeArray(r.split("/").filter((e=>!!e)),!t).join("/"),(t?"/":"")+r||"."},relative:(e,r)=>{function t(e){for(var r=0;r<e.length&&""===e[r];r++);for(var t=e.length-1;t>=0&&""===e[t];t--);return r>t?[]:e.slice(r,t-r+1)}e=se.resolve(e).substr(1),r=se.resolve(r).substr(1);for(var n=t(e.split("/")),a=t(r.split("/")),o=Math.min(n.length,a.length),i=o,s=0;s<o;s++)if(n[s]!==a[s]){i=s;break}var l=[];for(s=i;s<n.length;s++)l.push("..");return(l=l.concat(a.slice(i))).join("/")}},le=[],ue=e=>{for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n<=127?r++:n<=2047?r+=2:n>=55296&&n<=57343?(r+=4,++t):r+=3}return r},ce=(e,r,t,n)=>{if(!(n>0))return 0;for(var a=t,o=t+n-1,i=0;i<e.length;++i){var s=e.charCodeAt(i);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++i)),s<=127){if(t>=o)break;r[t++]=s}else if(s<=2047){if(t+1>=o)break;r[t++]=192|s>>6,r[t++]=128|63&s}else if(s<=65535){if(t+2>=o)break;r[t++]=224|s>>12,r[t++]=128|s>>6&63,r[t++]=128|63&s}else{if(t+3>=o)break;r[t++]=240|s>>18,r[t++]=128|s>>12&63,r[t++]=128|s>>6&63,r[t++]=128|63&s}}return r[t]=0,t-a};function de(e,r,t){var n=ue(e)+1,a=new Array(n),o=ce(e,a,0,a.length);return a.length=o,a}var fe,me,pe,ge={ttys:[],init(){},shutdown(){},register(e,r){ge.ttys[e]={input:[],output:[],ops:r},Ee.registerDevice(e,ge.stream_ops)},stream_ops:{open(e){var r=ge.ttys[e.node.rdev];if(!r)throw new Ee.ErrnoError(43);e.tty=r,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,r,t,n,a){if(!e.tty||!e.tty.ops.get_char)throw new Ee.ErrnoError(60);for(var o=0,i=0;i<n;i++){var s;try{s=e.tty.ops.get_char(e.tty)}catch(e){throw new Ee.ErrnoError(29)}if(void 0===s&&0===o)throw new Ee.ErrnoError(6);if(null==s)break;o++,r[t+i]=s}return o&&(e.node.timestamp=Date.now()),o},write(e,r,t,n,a){if(!e.tty||!e.tty.ops.put_char)throw new Ee.ErrnoError(60);try{for(var o=0;o<n;o++)e.tty.ops.put_char(e.tty,r[t+o])}catch(e){throw new Ee.ErrnoError(29)}return n&&(e.node.timestamp=Date.now()),o}},default_tty_ops:{get_char:e=>(()=>{if(!le.length){var e=null;if(l){var r=Buffer.alloc(256),t=0,n=process.stdin.fd;try{t=g.readSync(n,r,0,256)}catch(e){if(!e.toString().includes("EOF"))throw e;t=0}t>0&&(e=r.slice(0,t).toString("utf-8"))}else"undefined"!=typeof window&&"function"==typeof window.prompt&&null!==(e=window.prompt("Input: "))&&(e+="\n");if(!e)return null;le=de(e)}return le.shift()})(),put_char(e,r){null===r||10===r?(y(re(e.output)),e.output=[]):0!=r&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(y(re(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,r,t)=>0,ioctl_tiocgwinsz:e=>[24,80]},default_tty1_ops:{put_char(e,r){null===r||10===r?(b(re(e.output)),e.output=[]):0!=r&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(b(re(e.output)),e.output=[])}}},ve=e=>{j()},ye={ops_table:null,mount:e=>ye.createNode(null,"/",16895,0),createNode(e,r,t,n){if(Ee.isBlkdev(t)||Ee.isFIFO(t))throw new Ee.ErrnoError(63);ye.ops_table||={dir:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr,lookup:ye.node_ops.lookup,mknod:ye.node_ops.mknod,rename:ye.node_ops.rename,unlink:ye.node_ops.unlink,rmdir:ye.node_ops.rmdir,readdir:ye.node_ops.readdir,symlink:ye.node_ops.symlink},stream:{llseek:ye.stream_ops.llseek}},file:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr},stream:{llseek:ye.stream_ops.llseek,read:ye.stream_ops.read,write:ye.stream_ops.write,allocate:ye.stream_ops.allocate,mmap:ye.stream_ops.mmap,msync:ye.stream_ops.msync}},link:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr,readlink:ye.node_ops.readlink},stream:{}},chrdev:{node:{getattr:ye.node_ops.getattr,setattr:ye.node_ops.setattr},stream:Ee.chrdev_stream_ops}};var a=Ee.createNode(e,r,t,n);return Ee.isDir(a.mode)?(a.node_ops=ye.ops_table.dir.node,a.stream_ops=ye.ops_table.dir.stream,a.contents={}):Ee.isFile(a.mode)?(a.node_ops=ye.ops_table.file.node,a.stream_ops=ye.ops_table.file.stream,a.usedBytes=0,a.contents=null):Ee.isLink(a.mode)?(a.node_ops=ye.ops_table.link.node,a.stream_ops=ye.ops_table.link.stream):Ee.isChrdev(a.mode)&&(a.node_ops=ye.ops_table.chrdev.node,a.stream_ops=ye.ops_table.chrdev.stream),a.timestamp=Date.now(),e&&(e.contents[r]=a,e.timestamp=a.timestamp),a},getFileDataAsTypedArray:e=>e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array(0),expandFileStorage(e,r){var t=e.contents?e.contents.length:0;if(!(t>=r)){r=Math.max(r,t*(t<1048576?2:1.125)>>>0),0!=t&&(r=Math.max(r,256));var n=e.contents;e.contents=new Uint8Array(r),e.usedBytes>0&&e.contents.set(n.subarray(0,e.usedBytes),0)}},resizeFileStorage(e,r){if(e.usedBytes!=r)if(0==r)e.contents=null,e.usedBytes=0;else{var t=e.contents;e.contents=new Uint8Array(r),t&&e.contents.set(t.subarray(0,Math.min(r,e.usedBytes))),e.usedBytes=r}},node_ops:{getattr(e){var r={};return r.dev=Ee.isChrdev(e.mode)?e.id:1,r.ino=e.id,r.mode=e.mode,r.nlink=1,r.uid=0,r.gid=0,r.rdev=e.rdev,Ee.isDir(e.mode)?r.size=4096:Ee.isFile(e.mode)?r.size=e.usedBytes:Ee.isLink(e.mode)?r.size=e.link.length:r.size=0,r.atime=new Date(e.timestamp),r.mtime=new Date(e.timestamp),r.ctime=new Date(e.timestamp),r.blksize=4096,r.blocks=Math.ceil(r.size/r.blksize),r},setattr(e,r){void 0!==r.mode&&(e.mode=r.mode),void 0!==r.timestamp&&(e.timestamp=r.timestamp),void 0!==r.size&&ye.resizeFileStorage(e,r.size)},lookup(e,r){throw Ee.genericErrors[44]},mknod:(e,r,t,n)=>ye.createNode(e,r,t,n),rename(e,r,t){if(Ee.isDir(e.mode)){var n;try{n=Ee.lookupNode(r,t)}catch(e){}if(n)for(var a in n.contents)throw new Ee.ErrnoError(55)}delete e.parent.contents[e.name],e.parent.timestamp=Date.now(),e.name=t,r.contents[t]=e,r.timestamp=e.parent.timestamp},unlink(e,r){delete e.contents[r],e.timestamp=Date.now()},rmdir(e,r){var t=Ee.lookupNode(e,r);for(var n in t.contents)throw new Ee.ErrnoError(55);delete e.contents[r],e.timestamp=Date.now()},readdir(e){var r=[".",".."];for(var t of Object.keys(e.contents))r.push(t);return r},symlink(e,r,t){var n=ye.createNode(e,r,41471,0);return n.link=t,n},readlink(e){if(!Ee.isLink(e.mode))throw new Ee.ErrnoError(28);return e.link}},stream_ops:{read(e,r,t,n,a){var o=e.node.contents;if(a>=e.node.usedBytes)return 0;var i=Math.min(e.node.usedBytes-a,n);if(i>8&&o.subarray)r.set(o.subarray(a,a+i),t);else for(var s=0;s<i;s++)r[t+s]=o[a+s];return i},write(e,r,t,n,a,o){if(r.buffer===x.buffer&&(o=!1),!n)return 0;var i=e.node;if(i.timestamp=Date.now(),r.subarray&&(!i.contents||i.contents.subarray)){if(o)return i.contents=r.subarray(t,t+n),i.usedBytes=n,n;if(0===i.usedBytes&&0===a)return i.contents=r.slice(t,t+n),i.usedBytes=n,n;if(a+n<=i.usedBytes)return i.contents.set(r.subarray(t,t+n),a),n}if(ye.expandFileStorage(i,a+n),i.contents.subarray&&r.subarray)i.contents.set(r.subarray(t,t+n),a);else for(var s=0;s<n;s++)i.contents[a+s]=r[t+s];return i.usedBytes=Math.max(i.usedBytes,a+n),n},llseek(e,r,t){var n=r;if(1===t?n+=e.position:2===t&&Ee.isFile(e.node.mode)&&(n+=e.node.usedBytes),n<0)throw new Ee.ErrnoError(28);return n},allocate(e,r,t){ye.expandFileStorage(e.node,r+t),e.node.usedBytes=Math.max(e.node.usedBytes,r+t)},mmap(e,r,t,n,a){if(!Ee.isFile(e.node.mode))throw new Ee.ErrnoError(43);var o,i,s=e.node.contents;if(2&a||!s||s.buffer!==x.buffer){if(i=!0,!(o=ve()))throw new Ee.ErrnoError(48);s&&((t>0||t+r<s.length)&&(s=s.subarray?s.subarray(t,t+r):Array.prototype.slice.call(s,t,t+r)),x.set(s,o))}else i=!1,o=s.byteOffset;return{ptr:o,allocated:i}},msync:(e,r,t,n,a)=>(ye.stream_ops.write(e,r,0,n,t,!1),0)}},be=(e,r,t,n,a,o)=>{Ee.createDataFile(e,r,t,n,a,o)},we=a.preloadPlugins||[],_e=(e,r,t,n,a,o,i,s,l,u)=>{var d=r?se.resolve(oe.join2(e,r)):e;function f(t){function c(t){u?.(),s||be(e,r,t,n,a,l),o?.(),I()}((e,r,t,n)=>{"undefined"!=typeof Browser&&Browser.init();var a=!1;return we.forEach((o=>{a||o.canHandle(r)&&(o.handle(e,r,t,n),a=!0)})),a})(t,d,c,(()=>{i?.(),I()}))||c(t)}U(),"string"==typeof t?((e,r,t)=>{var n=`al ${e}`;c(e).then((e=>{r(new Uint8Array(e)),n&&I()}),(r=>{if(!t)throw`Loading data file "${e}" failed.`;t()})),n&&U()})(t,f,i):f(t)},xe=(e,r)=>{var t=0;return e&&(t|=365),r&&(t|=146),t},Ee={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{name="ErrnoError";constructor(e){this.errno=e}},genericErrors:{},filesystems:null,syncFSRequests:0,readFiles:{},FSStream:class{shared={};get object(){return this.node}set object(e){this.node=e}get isRead(){return 1!=(2097155&this.flags)}get isWrite(){return!!(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,r,t,n){e||(e=this),this.parent=e,this.mount=e.mount,this.id=Ee.nextInode++,this.name=r,this.mode=t,this.rdev=n}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 Ee.isDir(this.mode)}get isDevice(){return Ee.isChrdev(this.mode)}},lookupPath(e,r={}){if(!(e=se.resolve(e)))return{path:"",node:null};if((r=Object.assign({follow_mount:!0,recurse_count:0},r)).recurse_count>8)throw new Ee.ErrnoError(32);for(var t=e.split("/").filter((e=>!!e)),n=Ee.root,a="/",o=0;o<t.length;o++){var i=o===t.length-1;if(i&&r.parent)break;if(n=Ee.lookupNode(n,t[o]),a=oe.join2(a,t[o]),Ee.isMountpoint(n)&&(!i||i&&r.follow_mount)&&(n=n.mounted.root),!i||r.follow)for(var s=0;Ee.isLink(n.mode);){var l=Ee.readlink(a);if(a=se.resolve(oe.dirname(a),l),n=Ee.lookupPath(a,{recurse_count:r.recurse_count+1}).node,s++>40)throw new Ee.ErrnoError(32)}}return{path:a,node:n}},getPath(e){for(var r;;){if(Ee.isRoot(e)){var t=e.mount.mountpoint;return r?"/"!==t[t.length-1]?`${t}/${r}`:t+r:t}r=r?`${e.name}/${r}`:e.name,e=e.parent}},hashName(e,r){for(var t=0,n=0;n<r.length;n++)t=(t<<5)-t+r.charCodeAt(n)|0;return(e+t>>>0)%Ee.nameTable.length},hashAddNode(e){var r=Ee.hashName(e.parent.id,e.name);e.name_next=Ee.nameTable[r],Ee.nameTable[r]=e},hashRemoveNode(e){var r=Ee.hashName(e.parent.id,e.name);if(Ee.nameTable[r]===e)Ee.nameTable[r]=e.name_next;else for(var t=Ee.nameTable[r];t;){if(t.name_next===e){t.name_next=e.name_next;break}t=t.name_next}},lookupNode(e,r){var t=Ee.mayLookup(e);if(t)throw new Ee.ErrnoError(t);for(var n=Ee.hashName(e.id,r),a=Ee.nameTable[n];a;a=a.name_next){var o=a.name;if(a.parent.id===e.id&&o===r)return a}return Ee.lookup(e,r)},createNode(e,r,t,n){var a=new Ee.FSNode(e,r,t,n);return Ee.hashAddNode(a),a},destroyNode(e){Ee.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&~e),flagsToPermissionString(e){var r=["r","w","rw"][3&e];return 512&e&&(r+="w"),r},nodePermissions:(e,r)=>Ee.ignorePermissions||(!r.includes("r")||292&e.mode)&&(!r.includes("w")||146&e.mode)&&(!r.includes("x")||73&e.mode)?0:2,mayLookup(e){if(!Ee.isDir(e.mode))return 54;var r=Ee.nodePermissions(e,"x");return r||(e.node_ops.lookup?0:2)},mayCreate(e,r){try{return Ee.lookupNode(e,r),20}catch(e){}return Ee.nodePermissions(e,"wx")},mayDelete(e,r,t){var n;try{n=Ee.lookupNode(e,r)}catch(e){return e.errno}var a=Ee.nodePermissions(e,"wx");if(a)return a;if(t){if(!Ee.isDir(n.mode))return 54;if(Ee.isRoot(n)||Ee.getPath(n)===Ee.cwd())return 10}else if(Ee.isDir(n.mode))return 31;return 0},mayOpen:(e,r)=>e?Ee.isLink(e.mode)?32:Ee.isDir(e.mode)&&("r"!==Ee.flagsToPermissionString(r)||512&r)?31:Ee.nodePermissions(e,Ee.flagsToPermissionString(r)):44,MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=Ee.MAX_OPEN_FDS;e++)if(!Ee.streams[e])return e;throw new Ee.ErrnoError(33)},getStreamChecked(e){var r=Ee.getStream(e);if(!r)throw new Ee.ErrnoError(8);return r},getStream:e=>Ee.streams[e],createStream:(e,r=-1)=>(e=Object.assign(new Ee.FSStream,e),-1==r&&(r=Ee.nextfd()),e.fd=r,Ee.streams[r]=e,e),closeStream(e){Ee.streams[e]=null},dupStream(e,r=-1){var t=Ee.createStream(e,r);return t.stream_ops?.dup?.(t),t},chrdev_stream_ops:{open(e){var r=Ee.getDevice(e.node.rdev);e.stream_ops=r.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new Ee.ErrnoError(70)}},major:e=>e>>8,minor:e=>255&e,makedev:(e,r)=>e<<8|r,registerDevice(e,r){Ee.devices[e]={stream_ops:r}},getDevice:e=>Ee.devices[e],getMounts(e){for(var r=[],t=[e];t.length;){var n=t.pop();r.push(n),t.push(...n.mounts)}return r},syncfs(e,r){"function"==typeof e&&(r=e,e=!1),Ee.syncFSRequests++,Ee.syncFSRequests>1&&b(`warning: ${Ee.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var t=Ee.getMounts(Ee.root.mount),n=0;function a(e){return Ee.syncFSRequests--,r(e)}function o(e){if(e)return o.errored?void 0:(o.errored=!0,a(e));++n>=t.length&&a(null)}t.forEach((r=>{if(!r.type.syncfs)return o(null);r.type.syncfs(r,e,o)}))},mount(e,r,t){var n,a="/"===t,o=!t;if(a&&Ee.root)throw new Ee.ErrnoError(10);if(!a&&!o){var i=Ee.lookupPath(t,{follow_mount:!1});if(t=i.path,n=i.node,Ee.isMountpoint(n))throw new Ee.ErrnoError(10);if(!Ee.isDir(n.mode))throw new Ee.ErrnoError(54)}var s={type:e,opts:r,mountpoint:t,mounts:[]},l=e.mount(s);return l.mount=s,s.root=l,a?Ee.root=l:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),l},unmount(e){var r=Ee.lookupPath(e,{follow_mount:!1});if(!Ee.isMountpoint(r.node))throw new Ee.ErrnoError(28);var t=r.node,n=t.mounted,a=Ee.getMounts(n);Object.keys(Ee.nameTable).forEach((e=>{for(var r=Ee.nameTable[e];r;){var t=r.name_next;a.includes(r.mount)&&Ee.destroyNode(r),r=t}})),t.mounted=null;var o=t.mount.mounts.indexOf(n);t.mount.mounts.splice(o,1)},lookup:(e,r)=>e.node_ops.lookup(e,r),mknod(e,r,t){var n=Ee.lookupPath(e,{parent:!0}).node,a=oe.basename(e);if(!a||"."===a||".."===a)throw new Ee.ErrnoError(28);var o=Ee.mayCreate(n,a);if(o)throw new Ee.ErrnoError(o);if(!n.node_ops.mknod)throw new Ee.ErrnoError(63);return n.node_ops.mknod(n,a,r,t)},create:(e,r)=>(r=void 0!==r?r:438,r&=4095,r|=32768,Ee.mknod(e,r,0)),mkdir:(e,r)=>(r=void 0!==r?r:511,r&=1023,r|=16384,Ee.mknod(e,r,0)),mkdirTree(e,r){for(var t=e.split("/"),n="",a=0;a<t.length;++a)if(t[a]){n+="/"+t[a];try{Ee.mkdir(n,r)}catch(e){if(20!=e.errno)throw e}}},mkdev:(e,r,t)=>(void 0===t&&(t=r,r=438),r|=8192,Ee.mknod(e,r,t)),symlink(e,r){if(!se.resolve(e))throw new Ee.ErrnoError(44);var t=Ee.lookupPath(r,{parent:!0}).node;if(!t)throw new Ee.ErrnoError(44);var n=oe.basename(r),a=Ee.mayCreate(t,n);if(a)throw new Ee.ErrnoError(a);if(!t.node_ops.symlink)throw new Ee.ErrnoError(63);return t.node_ops.symlink(t,n,e)},rename(e,r){var t,n,a=oe.dirname(e),o=oe.dirname(r),i=oe.basename(e),s=oe.basename(r);if(t=Ee.lookupPath(e,{parent:!0}).node,n=Ee.lookupPath(r,{parent:!0}).node,!t||!n)throw new Ee.ErrnoError(44);if(t.mount!==n.mount)throw new Ee.ErrnoError(75);var l,u=Ee.lookupNode(t,i),c=se.relative(e,o);if("."!==c.charAt(0))throw new Ee.ErrnoError(28);if("."!==(c=se.relative(r,a)).charAt(0))throw new Ee.ErrnoError(55);try{l=Ee.lookupNode(n,s)}catch(e){}if(u!==l){var d=Ee.isDir(u.mode),f=Ee.mayDelete(t,i,d);if(f)throw new Ee.ErrnoError(f);if(f=l?Ee.mayDelete(n,s,d):Ee.mayCreate(n,s))throw new Ee.ErrnoError(f);if(!t.node_ops.rename)throw new Ee.ErrnoError(63);if(Ee.isMountpoint(u)||l&&Ee.isMountpoint(l))throw new Ee.ErrnoError(10);if(n!==t&&(f=Ee.nodePermissions(t,"w")))throw new Ee.ErrnoError(f);Ee.hashRemoveNode(u);try{t.node_ops.rename(u,n,s),u.parent=n}catch(e){throw e}finally{Ee.hashAddNode(u)}}},rmdir(e){var r=Ee.lookupPath(e,{parent:!0}).node,t=oe.basename(e),n=Ee.lookupNode(r,t),a=Ee.mayDelete(r,t,!0);if(a)throw new Ee.ErrnoError(a);if(!r.node_ops.rmdir)throw new Ee.ErrnoError(63);if(Ee.isMountpoint(n))throw new Ee.ErrnoError(10);r.node_ops.rmdir(r,t),Ee.destroyNode(n)},readdir(e){var r=Ee.lookupPath(e,{follow:!0}).node;if(!r.node_ops.readdir)throw new Ee.ErrnoError(54);return r.node_ops.readdir(r)},unlink(e){var r=Ee.lookupPath(e,{parent:!0}).node;if(!r)throw new Ee.ErrnoError(44);var t=oe.basename(e),n=Ee.lookupNode(r,t),a=Ee.mayDelete(r,t,!1);if(a)throw new Ee.ErrnoError(a);if(!r.node_ops.unlink)throw new Ee.ErrnoError(63);if(Ee.isMountpoint(n))throw new Ee.ErrnoError(10);r.node_ops.unlink(r,t),Ee.destroyNode(n)},readlink(e){var r=Ee.lookupPath(e).node;if(!r)throw new Ee.ErrnoError(44);if(!r.node_ops.readlink)throw new Ee.ErrnoError(28);return se.resolve(Ee.getPath(r.parent),r.node_ops.readlink(r))},stat(e,r){var t=Ee.lookupPath(e,{follow:!r}).node;if(!t)throw new Ee.ErrnoError(44);if(!t.node_ops.getattr)throw new Ee.ErrnoError(63);return t.node_ops.getattr(t)},lstat:e=>Ee.stat(e,!0),chmod(e,r,t){var n;if(!(n="string"==typeof e?Ee.lookupPath(e,{follow:!t}).node:e).node_ops.setattr)throw new Ee.ErrnoError(63);n.node_ops.setattr(n,{mode:4095&r|-4096&n.mode,timestamp:Date.now()})},lchmod(e,r){Ee.chmod(e,r,!0)},fchmod(e,r){var t=Ee.getStreamChecked(e);Ee.chmod(t.node,r)},chown(e,r,t,n){var a;if(!(a="string"==typeof e?Ee.lookupPath(e,{follow:!n}).node:e).node_ops.setattr)throw new Ee.ErrnoError(63);a.node_ops.setattr(a,{timestamp:Date.now()})},lchown(e,r,t){Ee.chown(e,r,t,!0)},fchown(e,r,t){var n=Ee.getStreamChecked(e);Ee.chown(n.node,r,t)},truncate(e,r){if(r<0)throw new Ee.ErrnoError(28);var t;if(!(t="string"==typeof e?Ee.lookupPath(e,{follow:!0}).node:e).node_ops.setattr)throw new Ee.ErrnoError(63);if(Ee.isDir(t.mode))throw new Ee.ErrnoError(31);if(!Ee.isFile(t.mode))throw new Ee.ErrnoError(28);var n=Ee.nodePermissions(t,"w");if(n)throw new Ee.ErrnoError(n);t.node_ops.setattr(t,{size:r,timestamp:Date.now()})},ftruncate(e,r){var t=Ee.getStreamChecked(e);if(!(2097155&t.flags))throw new Ee.ErrnoError(28);Ee.truncate(t.node,r)},utime(e,r,t){var n=Ee.lookupPath(e,{follow:!0}).node;n.node_ops.setattr(n,{timestamp:Math.max(r,t)})},open(e,r,t){if(""===e)throw new Ee.ErrnoError(44);var n;if(t=64&(r="string"==typeof r?(e=>{var r={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(void 0===r)throw new Error(`Unknown file open mode: ${e}`);return r})(r):r)?4095&(t=void 0===t?438:t)|32768:0,"object"==typeof e)n=e;else{e=oe.normalize(e);try{n=Ee.lookupPath(e,{follow:!(131072&r)}).node}catch(e){}}var o=!1;if(64&r)if(n){if(128&r)throw new Ee.ErrnoError(20)}else n=Ee.mknod(e,t,0),o=!0;if(!n)throw new Ee.ErrnoError(44);if(Ee.isChrdev(n.mode)&&(r&=-513),65536&r&&!Ee.isDir(n.mode))throw new Ee.ErrnoError(54);if(!o){var i=Ee.mayOpen(n,r);if(i)throw new Ee.ErrnoError(i)}512&r&&!o&&Ee.truncate(n,0),r&=-131713;var s=Ee.createStream({node:n,path:Ee.getPath(n),flags:r,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return s.stream_ops.open&&s.stream_ops.open(s),!a.logReadFiles||1&r||e in Ee.readFiles||(Ee.readFiles[e]=1),s},close(e){if(Ee.isClosed(e))throw new Ee.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{Ee.closeStream(e.fd)}e.fd=null},isClosed:e=>null===e.fd,llseek(e,r,t){if(Ee.isClosed(e))throw new Ee.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new Ee.ErrnoError(70);if(0!=t&&1!=t&&2!=t)throw new Ee.ErrnoError(28);return e.position=e.stream_ops.llseek(e,r,t),e.ungotten=[],e.position},read(e,r,t,n,a){if(n<0||a<0)throw new Ee.ErrnoError(28);if(Ee.isClosed(e))throw new Ee.ErrnoError(8);if(1==(2097155&e.flags))throw new Ee.ErrnoError(8);if(Ee.isDir(e.node.mode))throw new Ee.ErrnoError(31);if(!e.stream_ops.read)throw new Ee.ErrnoError(28);var o=void 0!==a;if(o){if(!e.seekable)throw new Ee.ErrnoError(70)}else a=e.position;var i=e.stream_ops.read(e,r,t,n,a);return o||(e.position+=i),i},write(e,r,t,n,a,o){if(n<0||a<0)throw new Ee.ErrnoError(28);if(Ee.isClosed(e))throw new Ee.ErrnoError(8);if(!(2097155&e.flags))throw new Ee.ErrnoError(8);if(Ee.isDir(e.node.mode))throw new Ee.ErrnoError(31);if(!e.stream_ops.write)throw new Ee.ErrnoError(28);e.seekable&&1024&e.flags&&Ee.llseek(e,0,2);var i=void 0!==a;if(i){if(!e.seekable)throw new Ee.ErrnoError(70)}else a=e.position;var s=e.stream_ops.write(e,r,t,n,a,o);return i||(e.position+=s),s},allocate(e,r,t){if(Ee.isClosed(e))throw new Ee.ErrnoError(8);if(r<0||t<=0)throw new Ee.ErrnoError(28);if(!(2097155&e.flags))throw new Ee.ErrnoError(8);if(!Ee.isFile(e.node.mode)&&!Ee.isDir(e.node.mode))throw new Ee.ErrnoError(43);if(!e.stream_ops.allocate)throw new Ee.ErrnoError(138);e.stream_ops.allocate(e,r,t)},mmap(e,r,t,n,a){if(2&n&&!(2&a)&&2!=(2097155&e.flags))throw new Ee.ErrnoError(2);if(1==(2097155&e.flags))throw new Ee.ErrnoError(2);if(!e.stream_ops.mmap)throw new Ee.ErrnoError(43);if(!r)throw new Ee.ErrnoError(28);return e.stream_ops.mmap(e,r,t,n,a)},msync:(e,r,t,n,a)=>e.stream_ops.msync?e.stream_ops.msync(e,r,t,n,a):0,ioctl(e,r,t){if(!e.stream_ops.ioctl)throw new Ee.ErrnoError(59);return e.stream_ops.ioctl(e,r,t)},readFile(e,r={}){if(r.flags=r.flags||0,r.encoding=r.encoding||"binary","utf8"!==r.encoding&&"binary"!==r.encoding)throw new Error(`Invalid encoding type "${r.encoding}"`);var t,n=Ee.open(e,r.flags),a=Ee.stat(e).size,o=new Uint8Array(a);return Ee.read(n,o,0,a,0),"utf8"===r.encoding?t=re(o):"binary"===r.encoding&&(t=o),Ee.close(n),t},writeFile(e,r,t={}){t.flags=t.flags||577;var n=Ee.open(e,t.flags,t.mode);if("string"==typeof r){var a=new Uint8Array(ue(r)+1),o=ce(r,a,0,a.length);Ee.write(n,a,0,o,void 0,t.canOwn)}else{if(!ArrayBuffer.isView(r))throw new Error("Unsupported data type");Ee.write(n,r,0,r.byteLength,void 0,t.canOwn)}Ee.close(n)},cwd:()=>Ee.currentPath,chdir(e){var r=Ee.lookupPath(e,{follow:!0});if(null===r.node)throw new Ee.ErrnoError(44);if(!Ee.isDir(r.node.mode))throw new Ee.ErrnoError(54);var t=Ee.nodePermissions(r.node,"x");if(t)throw new Ee.ErrnoError(t);Ee.currentPath=r.path},createDefaultDirectories(){Ee.mkdir("/tmp"),Ee.mkdir("/home"),Ee.mkdir("/home/web_user")},createDefaultDevices(){Ee.mkdir("/dev"),Ee.registerDevice(Ee.makedev(1,3),{read:()=>0,write:(e,r,t,n,a)=>n}),Ee.mkdev("/dev/null",Ee.makedev(1,3)),ge.register(Ee.makedev(5,0),ge.default_tty_ops),ge.register(Ee.makedev(6,0),ge.default_tty1_ops),Ee.mkdev("/dev/tty",Ee.makedev(5,0)),Ee.mkdev("/dev/tty1",Ee.makedev(6,0));var e=new Uint8Array(1024),r=0,t=()=>(0===r&&(r=ie(e).byteLength),e[--r]);Ee.createDevice("/dev","random",t),Ee.createDevice("/dev","urandom",t),Ee.mkdir("/dev/shm"),Ee.mkdir("/dev/shm/tmp")},createSpecialDirectories(){Ee.mkdir("/proc");var e=Ee.mkdir("/proc/self");Ee.mkdir("/proc/self/fd"),Ee.mount({mount(){var r=Ee.createNode(e,"fd",16895,73);return r.node_ops={lookup(e,r){var t=+r,n=Ee.getStreamChecked(t),a={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path}};return a.parent=a,a}},r}},{},"/proc/self/fd")},createStandardStreams(e,r,t){e?Ee.createDevice("/dev","stdin",e):Ee.symlink("/dev/tty","/dev/stdin"),r?Ee.createDevice("/dev","stdout",null,r):Ee.symlink("/dev/tty","/dev/stdout"),t?Ee.createDevice("/dev","stderr",null,t):Ee.symlink("/dev/tty1","/dev/stderr"),Ee.open("/dev/stdin",0),Ee.open("/dev/stdout",1),Ee.open("/dev/stderr",1)},staticInit(){[44].forEach((e=>{Ee.genericErrors[e]=new Ee.ErrnoError(e),Ee.genericErrors[e].stack="<generic error, no stack>"})),Ee.nameTable=new Array(4096),Ee.mount(ye,{},"/"),Ee.createDefaultDirectories(),Ee.createDefaultDevices(),Ee.createSpecialDirectories(),Ee.filesystems={MEMFS:ye}},init(e,r,t){Ee.initialized=!0,e??=a.stdin,r??=a.stdout,t??=a.stderr,Ee.createStandardStreams(e,r,t)},quit(){Ee.initialized=!1;for(var e=0;e<Ee.streams.length;e++){var r=Ee.streams[e];r&&Ee.close(r)}},findObject(e,r){var t=Ee.analyzePath(e,r);return t.exists?t.object:null},analyzePath(e,r){try{e=(n=Ee.lookupPath(e,{follow:!r})).path}catch(e){}var t={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=Ee.lookupPath(e,{parent:!0});t.parentExists=!0,t.parentPath=n.path,t.parentObject=n.node,t.name=oe.basename(e),n=Ee.lookupPath(e,{follow:!r}),t.exists=!0,t.path=n.path,t.object=n.node,t.name=n.node.name,t.isRoot="/"===n.path}catch(e){t.error=e.errno}return t},createPath(e,r,t,n){e="string"==typeof e?e:Ee.getPath(e);for(var a=r.split("/").reverse();a.length;){var o=a.pop();if(o){var i=oe.join2(e,o);try{Ee.mkdir(i)}catch(e){}e=i}}return i},createFile(e,r,t,n,a){var o=oe.join2("string"==typeof e?e:Ee.getPath(e),r),i=xe(n,a);return Ee.create(o,i)},createDataFile(e,r,t,n,a,o){var i=r;e&&(e="string"==typeof e?e:Ee.getPath(e),i=r?oe.join2(e,r):e);var s=xe(n,a),l=Ee.create(i,s);if(t){if("string"==typeof t){for(var u=new Array(t.length),c=0,d=t.length;c<d;++c)u[c]=t.charCodeAt(c);t=u}Ee.chmod(l,146|s);var f=Ee.open(l,577);Ee.write(f,t,0,t.length,0,o),Ee.close(f),Ee.chmod(l,s)}},createDevice(e,r,t,n){var a=oe.join2("string"==typeof e?e:Ee.getPath(e),r),o=xe(!!t,!!n);Ee.createDevice.major??=64;var i=Ee.makedev(Ee.createDevice.major++,0);return Ee.registerDevice(i,{open(e){e.seekable=!1},close(e){n?.buffer?.length&&n(10)},read(e,r,n,a,o){for(var i=0,s=0;s<a;s++){var l;try{l=t()}catch(e){throw new Ee.ErrnoError(29)}if(void 0===l&&0===i)throw new Ee.ErrnoError(6);if(null==l)break;i++,r[n+s]=l}return i&&(e.node.timestamp=Date.now()),i},write(e,r,t,a,o){for(var i=0;i<a;i++)try{n(r[t+i])}catch(e){throw new Ee.ErrnoError(29)}return a&&(e.node.timestamp=Date.now()),i}}),Ee.mkdev(a,o,i)},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=d(e.url),e.usedBytes=e.contents.length}catch(e){throw new Ee.ErrnoError(29)}},createLazyFile(e,r,t,n,a){class o{lengthKnown=!1;chunks=[];get(e){if(!(e>this.length-1||e<0)){var r=e%this.chunkSize,t=e/this.chunkSize|0;return this.getter(t)[r]}}setDataGetter(e){this.getter=e}cacheLength(){var e=new XMLHttpRequest;if(e.open("HEAD",t,!1),e.send(null),!(e.status>=200&&e.status<300||304===e.status))throw new Error("Couldn't load "+t+". Status: "+e.status);var r,n=Number(e.getResponseHeader("Content-length")),a=(r=e.getResponseHeader("Accept-Ranges"))&&"bytes"===r,o=(r=e.getResponseHeader("Content-Encoding"))&&"gzip"===r,i=1048576;a||(i=n);var s=this;s.setDataGetter((e=>{var r=e*i,a=(e+1)*i-1;if(a=Math.min(a,n-1),void 0===s.chunks[e]&&(s.chunks[e]=((e,r)=>{if(e>r)throw new Error("invalid range ("+e+", "+r+") or no bytes requested!");if(r>n-1)throw new Error("only "+n+" bytes available! programmer error!");var a=new XMLHttpRequest;if(a.open("GET",t,!1),n!==i&&a.setRequestHeader("Range","bytes="+e+"-"+r),a.responseType="arraybuffer",a.overrideMimeType&&a.overrideMimeType("text/plain; charset=x-user-defined"),a.send(null),!(a.status>=200&&a.status<300||304===a.status))throw new Error("Couldn't load "+t+". Status: "+a.status);return void 0!==a.response?new Uint8Array(a.response||[]):de(a.responseText||"")})(r,a)),void 0===s.chunks[e])throw new Error("doXHR failed!");return s.chunks[e]})),!o&&n||(i=n=1,n=this.getter(0).length,i=n,y("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=i,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(!s)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 o}}else i={isDevice:!1,url:t};var l=Ee.createFile(e,r,i,n,a);i.contents?l.contents=i.contents:i.url&&(l.contents=null,l.url=i.url),Object.defineProperties(l,{usedBytes:{get:function(){return this.contents.length}}});var u={};function c(e,r,t,n,a){var o=e.node.contents;if(a>=o.length)return 0;var i=Math.min(o.length-a,n);if(o.slice)for(var s=0;s<i;s++)r[t+s]=o[a+s];else for(s=0;s<i;s++)r[t+s]=o.get(a+s);return i}return Object.keys(l.stream_ops).forEach((e=>{var r=l.stream_ops[e];u[e]=(...e)=>(Ee.forceLoadFile(l),r(...e))})),u.read=(e,r,t,n,a)=>(Ee.forceLoadFile(l),c(e,r,t,n,a)),u.mmap=(e,r,t,n,a)=>{Ee.forceLoadFile(l);var o=ve();if(!o)throw new Ee.ErrnoError(48);return c(e,x,o,r,t),{ptr:o,allocated:!0}},l.stream_ops=u,l}},Se={DEFAULT_POLLMASK:5,calculateAt(e,r,t){if(oe.isAbs(r))return r;var n;if(n=-100===e?Ee.cwd():Se.getStreamFromFD(e).path,0==r.length){if(!t)throw new Ee.ErrnoError(44);return n}return oe.join2(n,r)},doStat(e,r,t){var n=e(r);$[t>>2]=n.dev,$[t+4>>2]=n.mode,A[t+8>>2]=n.nlink,$[t+12>>2]=n.uid,$[t+16>>2]=n.gid,$[t+20>>2]=n.rdev,z=[n.size>>>0,(N=n.size,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[t+24>>2]=z[0],$[t+28>>2]=z[1],$[t+32>>2]=4096,$[t+36>>2]=n.blocks;var a=n.atime.getTime(),o=n.mtime.getTime(),i=n.ctime.getTime();return z=[Math.floor(a/1e3)>>>0,(N=Math.floor(a/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[t+40>>2]=z[0],$[t+44>>2]=z[1],A[t+48>>2]=a%1e3*1e3*1e3,z=[Math.floor(o/1e3)>>>0,(N=Math.floor(o/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[t+56>>2]=z[0],$[t+60>>2]=z[1],A[t+64>>2]=o%1e3*1e3*1e3,z=[Math.floor(i/1e3)>>>0,(N=Math.floor(i/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[t+72>>2]=z[0],$[t+76>>2]=z[1],A[t+80>>2]=i%1e3*1e3*1e3,z=[n.ino>>>0,(N=n.ino,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[t+88>>2]=z[0],$[t+92>>2]=z[1],0},doMsync(e,r,t,n,a){if(!Ee.isFile(r.node.mode))throw new Ee.ErrnoError(43);if(2&n)return 0;var o=E.slice(e,e+t);Ee.msync(r,o,a,t,n)},getStreamFromFD:e=>Ee.getStreamChecked(e),varargs:void 0,getStr:e=>te(e)},Ce=e=>{for(var r="",t=e;E[t];)r+=fe[E[t++]];return r},$e={},Ae={},Pe={},Te=e=>{throw new me(e)},ke=e=>{throw new pe(e)},Be=(e,r,t)=>{function n(r){var n=t(r);n.length!==e.length&&ke("Mismatched type converter count");for(var a=0;a<e.length;++a)De(e[a],n[a])}e.forEach((e=>Pe[e]=r));var a=new Array(r.length),o=[],i=0;r.forEach(((e,r)=>{Ae.hasOwnProperty(e)?a[r]=Ae[e]:(o.push(e),$e.hasOwnProperty(e)||($e[e]=[]),$e[e].push((()=>{a[r]=Ae[e],++i===o.length&&n(a)})))})),0===o.length&&n(a)};function De(e,r,t={}){return function(e,r,t={}){var n=r.name;if(e||Te(`type "${n}" must have a positive integer typeid pointer`),Ae.hasOwnProperty(e)){if(t.ignoreDuplicateRegistrations)return;Te(`Cannot register type '${n}' twice`)}if(Ae[e]=r,delete Pe[e],$e.hasOwnProperty(e)){var a=$e[e];delete $e[e],a.forEach((e=>e()))}}(e,r,t)}var Le=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),Me=e=>{Te(e.$$.ptrType.registeredClass.name+" instance already deleted")},Re=!1,Oe=e=>{},Ue=e=>{e.count.value-=1,0===e.count.value&&(e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)})(e)},Ie=(e,r,t)=>{if(r===t)return e;if(void 0===t.baseClass)return null;var n=Ie(e,r,t.baseClass);return null===n?null:t.downcast(n)},je={},Ve={},Ne=(e,r)=>(r=((e,r)=>{for(void 0===r&&Te("ptr should not be undefined");e.baseClass;)r=e.upcast(r),e=e.baseClass;return r})(e,r),Ve[r]),ze=(e,r)=>(r.ptrType&&r.ptr||ke("makeClassHandle requires ptr and ptrType"),!!r.smartPtrType!=!!r.smartPtr&&ke("Both smartPtrType and smartPtr must be specified"),r.count={value:1},We(Object.create(e,{$$:{value:r,writable:!0}})));function Ge(e){var r=this.getPointee(e);if(!r)return this.destructor(e),null;var t=Ne(this.registeredClass,r);if(void 0!==t){if(0===t.$$.count.value)return t.$$.ptr=r,t.$$.smartPtr=e,t.clone();var n=t.clone();return this.destructor(e),n}function a(){return this.isSmartPointer?ze(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:e}):ze(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var o,i=this.registeredClass.getActualType(r),s=je[i];if(!s)return a.call(this);o=this.isConst?s.constPointerType:s.pointerType;var l=Ie(r,this.registeredClass,o.registeredClass);return null===l?a.call(this):this.isSmartPointer?ze(o.registeredClass.instancePrototype,{ptrType:o,ptr:l,smartPtrType:this,smartPtr:e}):ze(o.registeredClass.instancePrototype,{ptrType:o,ptr:l})}var We=e=>"undefined"==typeof FinalizationRegistry?(We=e=>e,e):(Re=new FinalizationRegistry((e=>{Ue(e.$$)})),We=e=>{var r=e.$$;if(r.smartPtr){var t={$$:r};Re.register(e,t,e)}return e},Oe=e=>Re.unregister(e),We(e)),He=[];function qe(){}var Xe=(e,r)=>Object.defineProperty(r,"name",{value:e}),Qe=(e,r,t)=>{if(void 0===e[r].overloadTable){var n=e[r];e[r]=function(...n){return e[r].overloadTable.hasOwnProperty(n.length)||Te(`Function '${t}' called with an invalid number of arguments (${n.length}) - expects one of (${e[r].overloadTable})!`),e[r].overloadTable[n.length].apply(this,n)},e[r].overloadTable=[],e[r].overloadTable[n.argCount]=n}},Ze=(e,r,t)=>{a.hasOwnProperty(e)?((void 0===t||void 0!==a[e].overloadTable&&void 0!==a[e].overloadTable[t])&&Te(`Cannot register public name '${e}' twice`),Qe(a,e,e),a[e].overloadTable.hasOwnProperty(t)&&Te(`Cannot register multiple overloads of a function with the same number of arguments (${t})!`),a[e].overloadTable[t]=r):(a[e]=r,a[e].argCount=t)};function Ke(e,r,t,n,a,o,i,s){this.name=e,this.constructor=r,this.instancePrototype=t,this.rawDestructor=n,this.baseClass=a,this.getActualType=o,this.upcast=i,this.downcast=s,this.pureVirtualFunctions=[]}var Je=(e,r,t)=>{for(;r!==t;)r.upcast||Te(`Expected null or instance of ${t.name}, got an instance of ${r.name}`),e=r.upcast(e),r=r.baseClass;return e};function Ye(e,r){if(null===r)return this.isReference&&Te(`null is not a valid ${this.name}`),0;r.$$||Te(`Cannot pass "${Tr(r)}" as a ${this.name}`),r.$$.ptr||Te(`Cannot pass deleted object as a pointer of type ${this.name}`);var t=r.$$.ptrType.registeredClass;return Je(r.$$.ptr,t,this.registeredClass)}function er(e,r){var t;if(null===r)return this.isReference&&Te(`null is not a valid ${this.name}`),this.isSmartPointer?(t=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,t),t):0;r&&r.$$||Te(`Cannot pass "${Tr(r)}" as a ${this.name}`),r.$$.ptr||Te(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&r.$$.ptrType.isConst&&Te(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);var n=r.$$.ptrType.registeredClass;if(t=Je(r.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===r.$$.smartPtr&&Te("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?t=r.$$.smartPtr:Te(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:t=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)t=r.$$.smartPtr;else{var a=r.clone();t=this.rawShare(t,Ar.toHandle((()=>a.delete()))),null!==e&&e.push(this.rawDestructor,t)}break;default:Te("Unsupporting sharing policy")}return t}function rr(e,r){if(null===r)return this.isReference&&Te(`null is not a valid ${this.name}`),0;r.$$||Te(`Cannot pass "${Tr(r)}" as a ${this.name}`),r.$$.ptr||Te(`Cannot pass deleted object as a pointer of type ${this.name}`),r.$$.ptrType.isConst&&Te(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);var t=r.$$.ptrType.registeredClass;return Je(r.$$.ptr,t,this.registeredClass)}function tr(e){return this.fromWireType(A[e>>2])}function nr(e,r,t,n,a,o,i,s,l,u,c){this.name=e,this.registeredClass=r,this.isReference=t,this.isConst=n,this.isSmartPointer=a,this.pointeeType=o,this.sharingPolicy=i,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=u,this.rawDestructor=c,a||void 0!==r.baseClass?this.toWireType=er:n?(this.toWireType=Ye,this.destructorFunction=null):(this.toWireType=rr,this.destructorFunction=null)}var ar,or=(e,r,t)=>{a.hasOwnProperty(e)||ke("Replacing nonexistent public symbol"),void 0!==a[e].overloadTable&&void 0!==t?a[e].overloadTable[t]=r:(a[e]=r,a[e].argCount=t)},ir=(e,r,t=[])=>{var n=((e,r,t)=>(e=e.replace(/p/g,"i"),(0,a["dynCall_"+e])(r,...t)))(e,r,t);return n},sr=(e,r)=>{e=Ce(e);var t,n,a=(t=e,n=r,(...e)=>ir(t,n,e));return"function"!=typeof a&&Te(`unknown function pointer with signature ${e}: ${r}`),a},lr=e=>{var r=_t(e),t=Ce(r);return bt(r),t},ur=(e,r)=>{var t=[],n={};throw r.forEach((function e(r){n[r]||Ae[r]||(Pe[r]?Pe[r].forEach(e):(t.push(r),n[r]=!0))})),new ar(`${e}: `+t.map(lr).join([", "]))},cr=(e,r)=>{for(var t=[],n=0;n<e;n++)t.push(A[r+4*n>>2]);return t},dr=e=>{for(;e.length;){var r=e.pop();e.pop()(r)}};function fr(e){for(var r=1;r<e.length;++r)if(null!==e[r]&&void 0===e[r].destructorFunction)return!0;return!1}var mr=e=>{try{return e()}catch(e){j(e)}},pr=e=>{if(e instanceof Q||"unwind"==e)return _;p(1,e)},hr=0,gr=()=>K||hr>0,vr=e=>{_=e,gr()||(a.onExit?.(e),B=!0),p(e,new Q(e))},yr=(e,r)=>{_=e,vr(e)},br=e=>{if(!B)try{e(),(()=>{if(!gr())try{yr(_)}catch(e){pr(e)}})()}catch(e){pr(e)}},wr={instrumentWasmImports(e){var r=/^(invoke_.*|__asyncjs__.*)$/;for(let[t,n]of Object.entries(e))"function"==typeof n&&(n.isAsync||r.test(t))},instrumentWasmExports(e){var r={};for(let[t,n]of Object.entries(e))r[t]="function"==typeof n?(...e)=>{wr.exportCallStack.push(t);try{return n(...e)}finally{B||(wr.exportCallStack.pop(),wr.maybeStopUnwind())}}:n;return r},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:4096,currData:null,handleSleepReturnValue:0,exportCallStack:[],callStackNameToId:{},callStackIdToName:{},callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(e){var r=wr.callStackNameToId[e];return void 0===r&&(r=wr.callStackId++,wr.callStackNameToId[e]=r,wr.callStackIdToName[r]=e),r},maybeStopUnwind(){wr.currData&&wr.state===wr.State.Unwinding&&0===wr.exportCallStack.length&&(wr.state=wr.State.Normal,mr(Ut),"undefined"!=typeof Fibers&&Fibers.trampoline())},whenDone:()=>new Promise(((e,r)=>{wr.asyncPromiseHandlers={resolve:e,reject:r}})),allocateData(){var e=wt(12+wr.StackSize);return wr.setDataHeader(e,e+12,wr.StackSize),wr.setDataRewindFunc(e),e},setDataHeader(e,r,t){A[e>>2]=r,A[e+4>>2]=r+t},setDataRewindFunc(e){var r=wr.exportCallStack[0],t=wr.getCallStackId(r);$[e+8>>2]=t},getDataRewindFuncName(e){var r=$[e+8>>2];return wr.callStackIdToName[r]},getDataRewindFunc:e=>yt[e],doRewind(e){var r=wr.getDataRewindFuncName(e);return wr.getDataRewindFunc(r)()},handleSleep(e){if(!B){if(wr.state===wr.State.Normal){var r=!1,t=!1;e(((e=0)=>{if(!B&&(wr.handleSleepReturnValue=e,r=!0,t)){wr.state=wr.State.Rewinding,mr((()=>It(wr.currData))),"undefined"!=typeof MainLoop&&MainLoop.func&&MainLoop.resume();var n,a=!1;try{n=wr.doRewind(wr.currData)}catch(e){n=e,a=!0}var o=!1;if(!wr.currData){var i=wr.asyncPromiseHandlers;i&&(wr.asyncPromiseHandlers=null,(a?i.reject:i.resolve)(n),o=!0)}if(a&&!o)throw n}})),t=!0,r||(wr.state=wr.State.Unwinding,wr.currData=wr.allocateData(),"undefined"!=typeof MainLoop&&MainLoop.func&&MainLoop.pause(),mr((()=>Ot(wr.currData))))}else wr.state===wr.State.Rewinding?(wr.state=wr.State.Normal,mr(jt),bt(wr.currData),wr.currData=null,wr.sleepCallbacks.forEach(br)):j(`invalid state: ${wr.state}`);return wr.handleSleepReturnValue}},handleAsync:e=>wr.handleSleep((r=>{e().then(r)}))};function _r(e,r,t,n,a,o){var i=r.length;i<2&&Te("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var s=null!==r[1]&&null!==t,l=fr(r),u="void"!==r[0].name,c=[e,Te,n,a,dr,r[0],r[1]],d=0;d<i-2;++d)c.push(r[d+2]);if(c.push(wr),!l)for(d=s?1:2;d<r.length;++d)null!==r[d].destructorFunction&&c.push(r[d].destructorFunction);let[f,m]=function(e,r,t,n){var a=fr(e),o=e.length-2,i=[],s=["fn"];r&&s.push("thisWired");for(var l=0;l<o;++l)i.push(`arg${l}`),s.push(`arg${l}Wired`);i=i.join(","),s=s.join(",");var u=`return function (${i}) {\n`;a&&(u+="var destructors = [];\n");var c=a?"destructors":"null",d=["humanName","throwBindingError","invoker","fn","runDestructors","retType","classParam"];for(r&&(u+=`var thisWired = classParam['toWireType'](${c}, this);\n`),l=0;l<o;++l)u+=`var arg${l}Wired = argType${l}['toWireType'](${c}, arg${l});\n`,d.push(`argType${l}`);u+=(t||n?"var rv = ":"")+`invoker(${s});\n`;var f=t?"rv":"";if(d.push("Asyncify"),u+=`function onDone(${f}) {\n`,a)u+="runDestructors(destructors);\n";else for(l=r?1:2;l<e.length;++l){var m=1===l?"thisWired":"arg"+(l-2)+"Wired";null!==e[l].destructorFunction&&(u+=`${m}_dtor(${m});\n`,d.push(`${m}_dtor`))}return t&&(u+="var ret = retType['fromWireType'](rv);\nreturn ret;\n"),u+="}\n",u+=`return Asyncify.currData ? Asyncify.whenDone().then(onDone) : onDone(${f});\n`,[d,u+="}\n"]}(r,s,u,o);f.push(m);var p=function(e,r){if(!(e instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof e} which is not a function`);var t=Xe(e.name||"unknownFunctionName",(function(){}));t.prototype=e.prototype;var n=new t,a=e.apply(n,r);return a instanceof Object?a:n}(Function,f)(...c);return Xe(e,p)}var xr,Er=e=>{const r=(e=e.trim()).indexOf("(");return-1!==r?e.substr(0,r):e},Sr=[],Cr=[],$r=()=>Cr.length/2-5-Sr.length,Ar={toValue:e=>(e||Te("Cannot use deleted val. handle = "+e),Cr[e]),toHandle:e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{const r=Sr.pop()||Cr.length;return Cr[r]=e,Cr[r+1]=1,r}}}},Pr={name:"emscripten::val",fromWireType:e=>{var r=Ar.toValue(e);return(e=>{e>9&&0==--Cr[e+1]&&(Cr[e]=void 0,Sr.push(e))})(e),r},toWireType:(e,r)=>Ar.toHandle(r),argPackAdvance:8,readValueFromPointer:tr,destructorFunction:null},Tr=e=>{if(null===e)return"null";var r=typeof e;return"object"===r||"array"===r||"function"===r?e.toString():""+e},kr=(e,r)=>{switch(r){case 4:return function(e){return this.fromWireType(P[e>>2])};case 8:return function(e){return this.fromWireType(T[e>>3])};default:throw new TypeError(`invalid float width (${r}): ${e}`)}},Br=(e,r,t)=>{switch(r){case 1:return t?e=>x[e]:e=>E[e];case 2:return t?e=>S[e>>1]:e=>C[e>>1];case 4:return t?e=>$[e>>2]:e=>A[e>>2];default:throw new TypeError(`invalid integer width (${r}): ${e}`)}},Fr=(e,r,t)=>ce(e,E,r,t),Dr="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,Lr=(e,r)=>{for(var t=e,n=t>>1,a=n+r/2;!(n>=a)&&C[n];)++n;if((t=n<<1)-e>32&&Dr)return Dr.decode(E.subarray(e,t));for(var o="",i=0;!(i>=r/2);++i){var s=S[e+2*i>>1];if(0==s)break;o+=String.fromCharCode(s)}return o},Mr=(e,r,t)=>{if(t??=2147483647,t<2)return 0;for(var n=r,a=(t-=2)<2*e.length?t/2:e.length,o=0;o<a;++o){var i=e.charCodeAt(o);S[r>>1]=i,r+=2}return S[r>>1]=0,r-n},Rr=e=>2*e.length,Or=(e,r)=>{for(var t=0,n="";!(t>=r/4);){var a=$[e+4*t>>2];if(0==a)break;if(++t,a>=65536){var o=a-65536;n+=String.fromCharCode(55296|o>>10,56320|1023&o)}else n+=String.fromCharCode(a)}return n},Ur=(e,r,t)=>{if(t??=2147483647,t<4)return 0;for(var n=r,a=n+t-4,o=0;o<e.length;++o){var i=e.charCodeAt(o);if(i>=55296&&i<=57343&&(i=65536+((1023&i)<<10)|1023&e.charCodeAt(++o)),$[r>>2]=i,(r+=4)+4>a)break}return $[r>>2]=0,r-n},Ir=e=>{for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n>=55296&&n<=57343&&++t,r+=4}return r},jr={},Vr=e=>{var r=(e-w.buffer.byteLength+65535)/65536|0;try{return w.grow(r),F(),1}catch(e){}},Nr=e=>wr.handleSleep((r=>{return t=r,setTimeout((()=>{br(t)}),e);var t}));Nr.isAsync=!0;var zr,Gr,Wr,Hr=e=>{var r=["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"];return(e.getSupportedExtensions()||[]).filter((e=>r.includes(e)))},qr={counter:1,buffers:[],mappedBuffers:{},programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],byteSizeByTypeRoot:5120,byteSizeByType:[1,1,2,2,4,4,4,2,3,4,8],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:e=>{qr.lastError||(qr.lastError=e)},getNewId:e=>{for(var r=qr.counter++,t=e.length;t<r;t++)e[t]=null;return r},genObject:(e,r,t,n)=>{for(var a=0;a<e;a++){var o=xr[t](),i=o&&qr.getNewId(n);o?(o.name=i,n[i]=o):qr.recordError(1282),$[r+4*a>>2]=i}},MAX_TEMP_BUFFER_SIZE:2097152,numTempVertexBuffersPerSize:64,log2ceilLookup:e=>32-Math.clz32(0===e?0:e-1),generateTempBuffers:(e,r)=>{var t=qr.log2ceilLookup(qr.MAX_TEMP_BUFFER_SIZE);r.tempVertexBufferCounters1=[],r.tempVertexBufferCounters2=[],r.tempVertexBufferCounters1.length=r.tempVertexBufferCounters2.length=t+1,r.tempVertexBuffers1=[],r.tempVertexBuffers2=[],r.tempVertexBuffers1.length=r.tempVertexBuffers2.length=t+1,r.tempIndexBuffers=[],r.tempIndexBuffers.length=t+1;for(var n=0;n<=t;++n){r.tempIndexBuffers[n]=null,r.tempVertexBufferCounters1[n]=r.tempVertexBufferCounters2[n]=0;var a=qr.numTempVertexBuffersPerSize;r.tempVertexBuffers1[n]=[],r.tempVertexBuffers2[n]=[];var o=r.tempVertexBuffers1[n],i=r.tempVertexBuffers2[n];o.length=i.length=a;for(var s=0;s<a;++s)o[s]=i[s]=null}if(e){r.tempQuadIndexBuffer=xr.createBuffer(),r.GLctx.bindBuffer(34963,r.tempQuadIndexBuffer);for(var l=qr.MAX_TEMP_BUFFER_SIZE>>1,u=new Uint16Array(l),c=(n=0,0);u[n++]=c,!(n>=l||(u[n++]=c+1,n>=l)||(u[n++]=c+2,n>=l)||(u[n++]=c,n>=l)||(u[n++]=c+2,n>=l)||(u[n++]=c+3,n>=l));)c+=4;r.GLctx.bufferData(34963,u,35044),r.GLctx.bindBuffer(34963,null)}},getTempVertexBuffer:e=>{var r=qr.log2ceilLookup(e),t=qr.currentContext.tempVertexBuffers1[r],n=qr.currentContext.tempVertexBufferCounters1[r];qr.currentContext.tempVertexBufferCounters1[r]=qr.currentContext.tempVertexBufferCounters1[r]+1&qr.numTempVertexBuffersPerSize-1;var a=t[n];if(a)return a;var o=xr.getParameter(34964);return t[n]=xr.createBuffer(),xr.bindBuffer(34962,t[n]),xr.bufferData(34962,1<<r,35048),xr.bindBuffer(34962,o),t[n]},getTempIndexBuffer:e=>{var r=qr.log2ceilLookup(e),t=qr.currentContext.tempIndexBuffers[r];if(t)return t;var n=xr.getParameter(34965);return qr.currentContext.tempIndexBuffers[r]=xr.createBuffer(),xr.bindBuffer(34963,qr.currentContext.tempIndexBuffers[r]),xr.bufferData(34963,1<<r,35048),xr.bindBuffer(34963,n),qr.currentContext.tempIndexBuffers[r]},newRenderingFrameStarted:()=>{if(qr.currentContext){var e=qr.currentContext.tempVertexBuffers1;qr.currentContext.tempVertexBuffers1=qr.currentContext.tempVertexBuffers2,qr.currentContext.tempVertexBuffers2=e,e=qr.currentContext.tempVertexBufferCounters1,qr.currentContext.tempVertexBufferCounters1=qr.currentContext.tempVertexBufferCounters2,qr.currentContext.tempVertexBufferCounters2=e;for(var r=qr.log2ceilLookup(qr.MAX_TEMP_BUFFER_SIZE),t=0;t<=r;++t)qr.currentContext.tempVertexBufferCounters1[t]=0}},getSource:(e,r,t,n)=>{for(var a="",o=0;o<r;++o){var i=n?A[n+4*o>>2]:void 0;a+=te(A[t+4*o>>2],i)}return a},calcBufLength:(e,r,t,n)=>t>0?n*t:e*qr.byteSizeByType[r-qr.byteSizeByTypeRoot]*n,usedTempBuffers:[],preDrawHandleClientVertexAttribBindings:e=>{qr.resetBufferBinding=!1;for(var r=0;r<qr.currentContext.maxVertexAttribs;++r){var t=qr.currentContext.clientBuffers[r];if(t.clientside&&t.enabled){qr.resetBufferBinding=!0;var n=qr.calcBufLength(t.size,t.type,t.stride,e),a=qr.getTempVertexBuffer(n);xr.bindBuffer(34962,a),xr.bufferSubData(34962,0,E.subarray(t.ptr,t.ptr+n)),t.vertexAttribPointerAdaptor.call(xr,r,t.size,t.type,t.normalized,t.stride,0)}}},postDrawHandleClientVertexAttribBindings:()=>{qr.resetBufferBinding&&xr.bindBuffer(34962,qr.buffers[xr.currentArrayBufferBinding])},createContext:(e,r)=>{if(!e.getContextSafariWebGL2Fixed){function n(r,t){var n=e.getContextSafariWebGL2Fixed(r,t);return"webgl"==r==n instanceof WebGLRenderingContext?n:null}e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=n}var t=r.majorVersion>1?e.getContext("webgl2",r):e.getContext("webgl",r);return t?qr.registerContext(t,r):0},registerContext:(e,r)=>{var t=qr.getNewId(qr.contexts),n={handle:t,attributes:r,version:r.majorVersion,GLctx:e};e.canvas&&(e.canvas.GLctxObject=n),qr.contexts[t]=n,(void 0===r.enableExtensionsByDefault||r.enableExtensionsByDefault)&&qr.initExtensions(n),n.maxVertexAttribs=n.GLctx.getParameter(34921),n.clientBuffers=[];for(var a=0;a<n.maxVertexAttribs;a++)n.clientBuffers[a]={enabled:!1,clientside:!1,size:0,type:0,normalized:0,stride:0,ptr:0,vertexAttribPointerAdaptor:null};return qr.generateTempBuffers(!1,n),t},makeContextCurrent:e=>(qr.currentContext=qr.contexts[e],a.ctx=xr=qr.currentContext?.GLctx,!(e&&!xr)),getContext:e=>qr.contexts[e],deleteContext:e=>{qr.currentContext===qr.contexts[e]&&(qr.currentContext=null),"object"==typeof Xr&&Xr.removeAllHandlersOnTarget(qr.contexts[e].GLctx.canvas),qr.contexts[e]&&qr.contexts[e].GLctx.canvas&&(qr.contexts[e].GLctx.canvas.GLctxObject=void 0),qr.contexts[e]=null},initExtensions:e=>{if(e||=qr.currentContext,!e.initExtensionsDone){e.initExtensionsDone=!0;var r,t=e.GLctx;(r=t).multiDrawWebgl=r.getExtension("WEBGL_multi_draw"),(e=>{e.extPolygonOffsetClamp=e.getExtension("EXT_polygon_offset_clamp")})(t),(e=>{e.extClipControl=e.getExtension("EXT_clip_control")})(t),(e=>{e.webglPolygonMode=e.getExtension("WEBGL_polygon_mode")})(t),(e=>{var r=e.getExtension("ANGLE_instanced_arrays");r&&(e.vertexAttribDivisor=(e,t)=>r.vertexAttribDivisorANGLE(e,t),e.drawArraysInstanced=(e,t,n,a)=>r.drawArraysInstancedANGLE(e,t,n,a),e.drawElementsInstanced=(e,t,n,a,o)=>r.drawElementsInstancedANGLE(e,t,n,a,o))})(t),(e=>{var r=e.getExtension("OES_vertex_array_object");r&&(e.createVertexArray=()=>r.createVertexArrayOES(),e.deleteVertexArray=e=>r.deleteVertexArrayOES(e),e.bindVertexArray=e=>r.bindVertexArrayOES(e),e.isVertexArray=e=>r.isVertexArrayOES(e))})(t),(e=>{var r=e.getExtension("WEBGL_draw_buffers");r&&(e.drawBuffers=(e,t)=>r.drawBuffersWEBGL(e,t))})(t),(e=>{e.dibvbi=e.getExtension("WEBGL_draw_instanced_base_vertex_base_instance")})(t),(e=>{e.mdibvbi=e.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance")})(t),e.version>=2&&(t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query_webgl2")),(e.version<2||!t.disjointTimerQueryExt)&&(t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query")),Hr(t).forEach((e=>{e.includes("lose_context")||e.includes("debug")||t.getExtension(e)}))}}},Xr={removeAllEventListeners(){for(;Xr.eventHandlers.length;)Xr._removeHandler(Xr.eventHandlers.length-1);Xr.deferredCalls=[]},inEventHandler:0,deferredCalls:[],deferCall(e,r,t){function n(e,r){if(e.length!=r.length)return!1;for(var t in e)if(e[t]!=r[t])return!1;return!0}for(var a of Xr.deferredCalls)if(a.targetFunction==e&&n(a.argsList,t))return;Xr.deferredCalls.push({targetFunction:e,precedence:r,argsList:t}),Xr.deferredCalls.sort(((e,r)=>e.precedence<r.precedence))},removeDeferredCalls(e){Xr.deferredCalls=Xr.deferredCalls.filter((r=>r.targetFunction!=e))},canPerformEventHandlerRequests:()=>navigator.userActivation?navigator.userActivation.isActive:Xr.inEventHandler&&Xr.currentEventHandler.allowsDeferredCalls,runDeferredCalls(){if(Xr.canPerformEventHandlerRequests()){var e=Xr.deferredCalls;for(var r of(Xr.deferredCalls=[],e))r.targetFunction(...r.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(e,r)=>{for(var t=0;t<Xr.eventHandlers.length;++t)Xr.eventHandlers[t].target!=e||r&&r!=Xr.eventHandlers[t].eventTypeString||Xr._removeHandler(t--)},_removeHandler(e){var r=Xr.eventHandlers[e];r.target.removeEventListener(r.eventTypeString,r.eventListenerFunc,r.useCapture),Xr.eventHandlers.splice(e,1)},registerOrRemoveHandler(e){if(!e.target)return-4;if(e.callbackfunc)e.eventListenerFunc=function(r){++Xr.inEventHandler,Xr.currentEventHandler=e,Xr.runDeferredCalls(),e.handlerFunc(r),Xr.runDeferredCalls(),--Xr.inEventHandler},e.target.addEventListener(e.eventTypeString,e.eventListenerFunc,e.useCapture),Xr.eventHandlers.push(e);else for(var r=0;r<Xr.eventHandlers.length;++r)Xr.eventHandlers[r].target==e.target&&Xr.eventHandlers[r].eventTypeString==e.eventTypeString&&Xr._removeHandler(r--);return 0},getNodeNameForTarget:e=>e?e==window?"#window":e==screen?"#screen":e?.nodeName||"":"",fullscreenEnabled:()=>document.fullscreenEnabled||document.webkitFullscreenEnabled},Qr=["default","low-power","high-performance"],Zr=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],Kr=e=>{var r;return e=(r=e)>2?te(r):r,Zr[e]||("undefined"!=typeof document?document.querySelector(e):void 0)},Jr=(e,r)=>{var t=r>>2,n=$[t+2],a={alpha:!!x[r+0],depth:!!x[r+1],stencil:!!x[r+2],antialias:!!x[r+3],premultipliedAlpha:!!x[r+4],preserveDrawingBuffer:!!x[r+5],powerPreference:Qr[n],failIfMajorPerformanceCaveat:!!x[r+12],majorVersion:$[t+4],minorVersion:$[t+5],enableExtensionsByDefault:x[r+24],explicitSwapControl:x[r+25],proxyContextToMainThread:$[t+7],renderViaOffscreenBackBuffer:x[r+32]},o=Kr(e);return o?a.explicitSwapControl?0:qr.createContext(o,a):0},Yr={},et=()=>{if(!et.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",_:m||"./this.program"};for(var r in Yr)void 0===Yr[r]?delete e[r]:e[r]=Yr[r];var t=[];for(var r in e)t.push(`${r}=${e[r]}`);et.strings=t}return et.strings},rt=(e,r)=>r+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*r:NaN,tt=(e,r,t)=>{if(r){var n,a=void 0;switch(e){case 36346:a=1;break;case 36344:return;case 34814:case 36345:a=0;break;case 34466:var o=xr.getParameter(34467);a=o?o.length:0;break;case 33309:if(qr.currentContext.version<2)return void qr.recordError(1282);a=(n=Hr(xr),n=n.concat(n.map((e=>"GL_"+e))),n).length;break;case 33307:case 33308:if(qr.currentContext.version<2)return void qr.recordError(1280);a=33307==e?3:0}if(void 0===a){var i=xr.getParameter(e);switch(typeof i){case"number":a=i;break;case"boolean":a=i?1:0;break;case"string":return void qr.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:a=0;break;default:return void qr.recordError(1280)}else{if(i instanceof Float32Array||i instanceof Uint32Array||i instanceof Int32Array||i instanceof Array){for(var s=0;s<i.length;++s)switch(t){case 0:$[r+4*s>>2]=i[s];break;case 2:P[r+4*s>>2]=i[s];break;case 4:x[r+s]=i[s]?1:0}return}try{a=0|i.name}catch(r){return qr.recordError(1280),void b(`GL_INVALID_ENUM in glGet${t}v: Unknown object returned from WebGL getParameter(${e})! (error: ${r})`)}}break;default:return qr.recordError(1280),void b(`GL_INVALID_ENUM in glGet${t}v: Native code calling glGet${t}v(${e}) and it returns ${i} of type ${typeof i}!`)}}switch(t){case 1:((e,r)=>{A[e>>2]=r;var t=A[e>>2];A[e+4>>2]=(r-t)/4294967296})(r,a);break;case 0:$[r>>2]=a;break;case 2:P[r>>2]=a;break;case 4:x[r]=a?1:0}}else qr.recordError(1281)},nt=e=>"]"==e.slice(-1)&&e.lastIndexOf("["),at=[],ot=e=>0==(e-=5120)?x:1==e?E:2==e?S:4==e?$:6==e?P:5==e||28922==e||28520==e||30779==e||30782==e?A:C,it=(e,r)=>e>>>31-Math.clz32(r.BYTES_PER_ELEMENT),st=(e,r,t,n,a,o)=>{var i=ot(e),s=(e=>({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[e-6402]||1))(r)*i.BYTES_PER_ELEMENT,l=((e,r,t)=>{var n=function(e,r){return e+r-1&-r}(e*t,qr.unpackAlignment);return r*n})(t,n,s);return i.subarray(it(a,i),it(a+l,i))},lt=e=>{var r=xr.currentProgram;if(r){var t=r.uniformLocsById[e];return"number"==typeof t&&(r.uniformLocsById[e]=t=xr.getUniformLocation(r,r.uniformArrayNamesById[e]+(t>0?`[${t}]`:""))),t}qr.recordError(1282)},ut=[],ct=e=>{var r=ue(e)+1,t=$t(r);return Fr(e,t,r),t},dt={errorCallback:(e,r,t,n)=>{var a=Y(),o=ct(t);Lt(e,r,o,n),J(a)},initManagers:()=>{function e(){this.objects={},this.nextId=1,this.create=function(e,r={}){var t=this.nextId++;return r.refcount=1,r.object=e,this.objects[t]=r,t},this.get=function(e){if(e)return this.objects[e].object},this.reference=function(e){this.objects[e].refcount++},this.release=function(e){var r=this.objects[e];r.refcount--,r.refcount<=0&&delete this.objects[e]}}dt.mgrSurface=new e,dt.mgrSwapChain=new e,dt.mgrAdapter=new e,dt.mgrDevice=new e,dt.mgrQueue=new e,dt.mgrCommandBuffer=new e,dt.mgrCommandEncoder=new e,dt.mgrRenderPassEncoder=new e,dt.mgrComputePassEncoder=new e,dt.mgrBindGroup=new e,dt.mgrBuffer=new e,dt.mgrSampler=new e,dt.mgrTexture=new e,dt.mgrTextureView=new e,dt.mgrQuerySet=new e,dt.mgrBindGroupLayout=new e,dt.mgrPipelineLayout=new e,dt.mgrRenderPipeline=new e,dt.mgrComputePipeline=new e,dt.mgrShaderModule=new e,dt.mgrRenderBundleEncoder=new e,dt.mgrRenderBundle=new e},makeColor:e=>({r:T[e>>3],g:T[e+8>>3],b:T[e+16>>3],a:T[e+24>>3]}),makeExtent3D:e=>({width:A[e>>2],height:A[e+4>>2],depthOrArrayLayers:A[e+8>>2]}),makeOrigin3D:e=>({x:A[e>>2],y:A[e+4>>2],z:A[e+8>>2]}),makeImageCopyTexture:e=>({texture:dt.mgrTexture.get(A[e+4>>2]),mipLevel:A[e+8>>2],origin:dt.makeOrigin3D(e+12),aspect:dt.TextureAspect[A[e+24>>2]]}),makeTextureDataLayout:e=>{var r=A[e+16>>2],t=A[e+20>>2];return{offset:4294967296*A[e+4+8>>2]+A[e+8>>2],bytesPerRow:4294967295===r?void 0:r,rowsPerImage:4294967295===t?void 0:t}},makeImageCopyBuffer:e=>{var r=e+8,t=dt.makeTextureDataLayout(r);return t.buffer=dt.mgrBuffer.get(A[e+32>>2]),t},makePipelineConstants:(e,r)=>{if(e){for(var t={},n=0;n<e;++n){var a=r+16*n;t[te(A[a+4>>2])]=T[a+8>>3]}return t}},makePipelineLayout:e=>e?dt.mgrPipelineLayout.get(e):"auto",makeProgrammableStageDescriptor:e=>{if(e){var r={module:dt.mgrShaderModule.get(A[e+4>>2]),constants:dt.makePipelineConstants(A[e+12>>2],A[e+16>>2])},t=A[e+8>>2];return t&&(r.entryPoint=te(t)),r}},fillLimitStruct:(e,r)=>{var t=r+8;function n(r,n){var a=e[r];$[t+n>>2]=a}function a(r,n){var a=e[r];z=[a>>>0,(N=a,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[t+n>>2]=z[0],$[t+(n+4)>>2]=z[1]}n("maxTextureDimension1D",0),n("maxTextureDimension2D",4),n("maxTextureDimension3D",8),n("maxTextureArrayLayers",12),n("maxBindGroups",16),n("maxBindGroupsPlusVertexBuffers",20),n("maxBindingsPerBindGroup",24),n("maxDynamicUniformBuffersPerPipelineLayout",28),n("maxDynamicStorageBuffersPerPipelineLayout",32),n("maxSampledTexturesPerShaderStage",36),n("maxSamplersPerShaderStage",40),n("maxStorageBuffersPerShaderStage",44),n("maxStorageTexturesPerShaderStage",48),n("maxUniformBuffersPerShaderStage",52),n("minUniformBufferOffsetAlignment",72),n("minStorageBufferOffsetAlignment",76),a("maxUniformBufferBindingSize",56),a("maxStorageBufferBindingSize",64),n("maxVertexBuffers",80),a("maxBufferSize",88),n("maxVertexAttributes",96),n("maxVertexBufferArrayStride",100),n("maxInterStageShaderComponents",104),n("maxInterStageShaderVariables",108),n("maxColorAttachments",112),n("maxColorAttachmentBytesPerSample",116),n("maxComputeWorkgroupStorageSize",120),n("maxComputeInvocationsPerWorkgroup",124),n("maxComputeWorkgroupSizeX",128),n("maxComputeWorkgroupSizeY",132),n("maxComputeWorkgroupSizeZ",136),n("maxComputeWorkgroupsPerDimension",140)},Int_BufferMapState:{unmapped:1,pending:2,mapped:3},Int_CompilationMessageType:{error:1,warning:2,info:3},Int_DeviceLostReason:{undefined:1,unknown:1,destroyed:2},Int_PreferredFormat:{rgba8unorm:18,bgra8unorm:23},WGSLFeatureName:[,"readonly_and_readwrite_storage_textures","packed_4x8_integer_dot_product","unrestricted_pointer_parameters","pointer_composite_access"],AddressMode:[,"clamp-to-edge","repeat","mirror-repeat"],AlphaMode:[,"opaque","premultiplied"],BlendFactor:[,"zero","one","src","one-minus-src","src-alpha","one-minus-src-alpha","dst","one-minus-dst","dst-alpha","one-minus-dst-alpha","src-alpha-saturated","constant","one-minus-constant"],BlendOperation:[,"add","subtract","reverse-subtract","min","max"],BufferBindingType:[,"uniform","storage","read-only-storage"],BufferMapState:{1:"unmapped",2:"pending",3:"mapped"},CompareFunction:[,"never","less","equal","less-equal","greater","not-equal","greater-equal","always"],CompilationInfoRequestStatus:["success","error","device-lost","unknown"],CullMode:[,"none","front","back"],ErrorFilter:{1:"validation",2:"out-of-memory",3:"internal"},FeatureName:[,"depth-clip-control","depth32float-stencil8","timestamp-query","texture-compression-bc","texture-compression-etc2","texture-compression-astc","indirect-first-instance","shader-f16","rg11b10ufloat-renderable","bgra8unorm-storage","float32-filterable"],FilterMode:[,"nearest","linear"],FrontFace:[,"ccw","cw"],IndexFormat:[,"uint16","uint32"],LoadOp:[,"clear","load"],MipmapFilterMode:[,"nearest","linear"],PowerPreference:[,"low-power","high-performance"],PrimitiveTopology:[,"point-list","line-list","line-strip","triangle-list","triangle-strip"],QueryType:{1:"occlusion",2:"timestamp"},SamplerBindingType:[,"filtering","non-filtering","comparison"],StencilOperation:[,"keep","zero","replace","invert","increment-clamp","decrement-clamp","increment-wrap","decrement-wrap"],StorageTextureAccess:[,"write-only","read-only","read-write"],StoreOp:[,"store","discard"],TextureAspect:[,"all","stencil-only","depth-only"],TextureDimension:[,"1d","2d","3d"],TextureFormat:[,"r8unorm","r8snorm","r8uint","r8sint","r16uint","r16sint","r16float","rg8unorm","rg8snorm","rg8uint","rg8sint","r32float","r32uint","r32sint","rg16uint","rg16sint","rg16float","rgba8unorm","rgba8unorm-srgb","rgba8snorm","rgba8uint","rgba8sint","bgra8unorm","bgra8unorm-srgb","rgb10a2uint","rgb10a2unorm","rg11b10ufloat","rgb9e5ufloat","rg32float","rg32uint","rg32sint","rgba16uint","rgba16sint","rgba16float","rgba32float","rgba32uint","rgba32sint","stencil8","depth16unorm","depth24plus","depth24plus-stencil8","depth32float","depth32float-stencil8","bc1-rgba-unorm","bc1-rgba-unorm-srgb","bc2-rgba-unorm","bc2-rgba-unorm-srgb","bc3-rgba-unorm","bc3-rgba-unorm-srgb","bc4-r-unorm","bc4-r-snorm","bc5-rg-unorm","bc5-rg-snorm","bc6h-rgb-ufloat","bc6h-rgb-float","bc7-rgba-unorm","bc7-rgba-unorm-srgb","etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm","astc-4x4-unorm","astc-4x4-unorm-srgb","astc-5x4-unorm","astc-5x4-unorm-srgb","astc-5x5-unorm","astc-5x5-unorm-srgb","astc-6x5-unorm","astc-6x5-unorm-srgb","astc-6x6-unorm","astc-6x6-unorm-srgb","astc-8x5-unorm","astc-8x5-unorm-srgb","astc-8x6-unorm","astc-8x6-unorm-srgb","astc-8x8-unorm","astc-8x8-unorm-srgb","astc-10x5-unorm","astc-10x5-unorm-srgb","astc-10x6-unorm","astc-10x6-unorm-srgb","astc-10x8-unorm","astc-10x8-unorm-srgb","astc-10x10-unorm","astc-10x10-unorm-srgb","astc-12x10-unorm","astc-12x10-unorm-srgb","astc-12x12-unorm","astc-12x12-unorm-srgb"],TextureSampleType:[,"float","unfilterable-float","depth","sint","uint"],TextureViewDimension:[,"1d","2d","2d-array","cube","cube-array","3d"],VertexFormat:[,"uint8x2","uint8x4","sint8x2","sint8x4","unorm8x2","unorm8x4","snorm8x2","snorm8x4","uint16x2","uint16x4","sint16x2","sint16x4","unorm16x2","unorm16x4","snorm16x2","snorm16x4","float16x2","float16x4","float32","float32x2","float32x3","float32x4","uint32","uint32x2","uint32x3","uint32x4","sint32","sint32x2","sint32x3","sint32x4","unorm10-10-10-2"],VertexStepMode:[,"vertex-buffer-not-used","vertex","instance"],FeatureNameString2Enum:{undefined:"0","depth-clip-control":"1","depth32float-stencil8":"2","timestamp-query":"3","texture-compression-bc":"4","texture-compression-etc2":"5","texture-compression-astc":"6","indirect-first-instance":"7","shader-f16":"8","rg11b10ufloat-renderable":"9","bgra8unorm-storage":"10","float32-filterable":"11"}},ft=Ee.createPath,mt=Ee.createLazyFile,pt=Ee.createDevice;Ee.createPreloadedFile=_e,Ee.staticInit(),a.FS_createPath=Ee.createPath,a.FS_createDataFile=Ee.createDataFile,a.FS_createPreloadedFile=Ee.createPreloadedFile,a.FS_unlink=Ee.unlink,a.FS_createLazyFile=Ee.createLazyFile,a.FS_createDevice=Ee.createDevice,(()=>{for(var e=new Array(256),r=0;r<256;++r)e[r]=String.fromCharCode(r);fe=e})(),me=a.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},pe=a.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},Object.assign(qe.prototype,{isAliasOf(e){if(!(this instanceof qe))return!1;if(!(e instanceof qe))return!1;var r=this.$$.ptrType.registeredClass,t=this.$$.ptr;e.$$=e.$$;for(var n=e.$$.ptrType.registeredClass,a=e.$$.ptr;r.baseClass;)t=r.upcast(t),r=r.baseClass;for(;n.baseClass;)a=n.upcast(a),n=n.baseClass;return r===n&&t===a},clone(){if(this.$$.ptr||Me(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=We(Object.create(Object.getPrototypeOf(this),{$$:{value:Le(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||Me(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Te("Object already scheduled for deletion"),Oe(this),Ue(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||Me(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Te("Object already scheduled for deletion"),He.push(this),He.length,this.$$.deleteScheduled=!0,this}}),Object.assign(nr.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){this.rawDestructor?.(e)},argPackAdvance:8,readValueFromPointer:tr,fromWireType:Ge}),ar=a.UnboundTypeError=(zr=Error,(Wr=Xe(Gr="UnboundTypeError",(function(e){this.name=Gr,this.message=e;var r=new Error(e).stack;void 0!==r&&(this.stack=this.toString()+"\n"+r.replace(/^Error(:[^\n]*)?\n/,""))}))).prototype=Object.create(zr.prototype),Wr.prototype.constructor=Wr,Wr.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},Wr),Cr.push(0,1,void 0,1,null,1,!0,1,!1,1),a.count_emval_handles=$r,(e=>{"undefined"!=typeof MainLoop&&MainLoop.preMainLoop.push(e)})((()=>qr.newRenderingFrameStarted()));for(var ht=0;ht<32;++ht)at.push(new Array(ht));var gt=new Int32Array(288);for(ht=0;ht<=288;++ht)ut[ht]=gt.subarray(0,ht);dt.initManagers();var vt={b:(e,r,t,n)=>{j(`Assertion failed: ${te(e)}, at: `+[r?te(r):"unknown filename",t,n?te(n):"unknown function"])},za:function(e,r,t){Se.varargs=t;try{var n=Se.getStreamFromFD(e);switch(r){case 0:if((a=ne())<0)return-28;for(;Ee.streams[a];)a++;return Ee.dupStream(n,a).fd;case 1:case 2:case 13:case 14:return 0;case 3:return n.flags;case 4:var a=ne();return n.flags|=a,0;case 12:return a=ae(),S[a+0>>1]=2,0}return-28}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return-e.errno}},Jb:function(e,r,t){Se.varargs=t;try{var n=Se.getStreamFromFD(e);switch(r){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 a=n.tty.ops.ioctl_tcgets(n),o=ae();$[o>>2]=a.c_iflag||0,$[o+4>>2]=a.c_oflag||0,$[o+8>>2]=a.c_cflag||0,$[o+12>>2]=a.c_lflag||0;for(var i=0;i<32;i++)x[o+i+17]=a.c_cc[i]||0;return 0}return 0;case 21506:case 21507:case 21508:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){o=ae();var s=$[o>>2],l=$[o+4>>2],u=$[o+8>>2],c=$[o+12>>2],d=[];for(i=0;i<32;i++)d.push(x[o+i+17]);return n.tty.ops.ioctl_tcsets(n.tty,r,{c_iflag:s,c_oflag:l,c_cflag:u,c_lflag:c,c_cc:d})}return 0;case 21519:return n.tty?(o=ae(),$[o>>2]=0,0):-59;case 21520:return n.tty?-28:-59;case 21531:return o=ae(),Ee.ioctl(n,r,o);case 21523:if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var f=n.tty.ops.ioctl_tiocgwinsz(n.tty);o=ae(),S[o>>1]=f[0],S[o+2>>1]=f[1]}return 0;default:return-28}}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return-e.errno}},Kb:function(e,r,t,n){Se.varargs=n;try{r=Se.getStr(r),r=Se.calculateAt(e,r);var a=n?ne():0;return Ee.open(r,t,a).fd}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return-e.errno}},Lb:()=>{j("")},rb:(e,r,t,n,a)=>{},Nb:(e,r,t,n)=>{De(e,{name:r=Ce(r),fromWireType:function(e){return!!e},toWireType:function(e,r){return r?t:n},argPackAdvance:8,readValueFromPointer:function(e){return this.fromWireType(E[e])},destructorFunction:null})},Tb:(e,r,t,n,a,o,i,s,l,u,c,d,f)=>{c=Ce(c),o=sr(a,o),s&&=sr(i,s),u&&=sr(l,u),f=sr(d,f);var m=(e=>{var r=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return r>=48&&r<=57?`_${e}`:e})(c);Ze(m,(function(){ur(`Cannot construct ${c} due to unbound types`,[n])})),Be([e,r,t],n?[n]:[],(r=>{var t,a;r=r[0],a=n?(t=r.registeredClass).instancePrototype:qe.prototype;var i=Xe(c,(function(...e){if(Object.getPrototypeOf(this)!==l)throw new me("Use 'new' to construct "+c);if(void 0===d.constructor_body)throw new me(c+" has no accessible constructor");var r=d.constructor_body[e.length];if(void 0===r)throw new me(`Tried to invoke ctor of ${c} with invalid number of parameters (${e.length}) - expected (${Object.keys(d.constructor_body).toString()}) parameters instead!`);return r.apply(this,e)})),l=Object.create(a,{constructor:{value:i}});i.prototype=l;var d=new Ke(c,i,l,f,t,o,s,u);d.baseClass&&(d.baseClass.__derivedClasses??=[],d.baseClass.__derivedClasses.push(d));var p=new nr(c,d,!0,!1,!1),h=new nr(c+"*",d,!1,!1,!1),g=new nr(c+" const*",d,!1,!0,!1);return je[e]={pointerType:h,constPointerType:g},or(m,i),[p,h,g]}))},Sb:(e,r,t,n,a,o)=>{var i=cr(r,t);a=sr(n,a),Be([],[e],(e=>{var t=`constructor ${(e=e[0]).name}`;if(void 0===e.registeredClass.constructor_body&&(e.registeredClass.constructor_body=[]),void 0!==e.registeredClass.constructor_body[r-1])throw new me(`Cannot register multiple constructors with identical number of parameters (${r-1}) for class '${e.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return e.registeredClass.constructor_body[r-1]=()=>{ur(`Cannot construct ${e.name} due to unbound types`,i)},Be([],i,(n=>(n.splice(1,0,null),e.registeredClass.constructor_body[r-1]=_r(t,n,null,a,o),[]))),[]}))},u:(e,r,t,n,a,o,i,s,l,u)=>{var c=cr(t,n);r=Ce(r),r=Er(r),o=sr(a,o),Be([],[e],(e=>{var n=`${(e=e[0]).name}.${r}`;function a(){ur(`Cannot call ${n} due to unbound types`,c)}r.startsWith("@@")&&(r=Symbol[r.substring(2)]),s&&e.registeredClass.pureVirtualFunctions.push(r);var u=e.registeredClass.instancePrototype,d=u[r];return void 0===d||void 0===d.overloadTable&&d.className!==e.name&&d.argCount===t-2?(a.argCount=t-2,a.className=e.name,u[r]=a):(Qe(u,r,n),u[r].overloadTable[t-2]=a),Be([],c,(a=>{var s=_r(n,a,e,o,i,l);return void 0===u[r].overloadTable?(s.argCount=t-2,u[r]=s):u[r].overloadTable[t-2]=s,[]})),[]}))},Mb:e=>De(e,Pr),Aa:(e,r,t)=>{De(e,{name:r=Ce(r),fromWireType:e=>e,toWireType:(e,r)=>r,argPackAdvance:8,readValueFromPointer:kr(r,t),destructorFunction:null})},Ea:(e,r,t,n,a,o,i,s)=>{var l=cr(r,t);e=Ce(e),e=Er(e),a=sr(n,a),Ze(e,(function(){ur(`Cannot call ${e} due to unbound types`,l)}),r-1),Be([],l,(t=>{var n=[t[0],null].concat(t.slice(1));return or(e,_r(e,n,null,a,o,i),r-1),[]}))},B:(e,r,t,n,a)=>{r=Ce(r);var o=e=>e;if(0===n){var i=32-8*t;o=e=>e<<i>>>i}var s=r.includes("unsigned");De(e,{name:r,fromWireType:o,toWireType:s?function(e,r){return this.name,r>>>0}:function(e,r){return this.name,r},argPackAdvance:8,readValueFromPointer:Br(r,t,0!==n),destructorFunction:null})},l:(e,r,t)=>{var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][r];function a(e){var r=A[e>>2],t=A[e+4>>2];return new n(x.buffer,t,r)}De(e,{name:t=Ce(t),fromWireType:a,argPackAdvance:8,readValueFromPointer:a},{ignoreDuplicateRegistrations:!0})},Ba:(e,r)=>{var t="std::string"===(r=Ce(r));De(e,{name:r,fromWireType(e){var r,n=A[e>>2],a=e+4;if(t)for(var o=a,i=0;i<=n;++i){var s=a+i;if(i==n||0==E[s]){var l=te(o,s-o);void 0===r?r=l:(r+=String.fromCharCode(0),r+=l),o=s+1}}else{var u=new Array(n);for(i=0;i<n;++i)u[i]=String.fromCharCode(E[a+i]);r=u.join("")}return bt(e),r},toWireType(e,r){var n;r instanceof ArrayBuffer&&(r=new Uint8Array(r));var a="string"==typeof r;a||r instanceof Uint8Array||r instanceof Uint8ClampedArray||r instanceof Int8Array||Te("Cannot pass non-string to std::string"),n=t&&a?ue(r):r.length;var o=wt(4+n+1),i=o+4;if(A[o>>2]=n,t&&a)Fr(r,i,n+1);else if(a)for(var s=0;s<n;++s){var l=r.charCodeAt(s);l>255&&(bt(i),Te("String has UTF-16 code units that do not fit in 8 bits")),E[i+s]=l}else for(s=0;s<n;++s)E[i+s]=r[s];return null!==e&&e.push(bt,o),o},argPackAdvance:8,readValueFromPointer:tr,destructorFunction(e){bt(e)}})},da:(e,r,t)=>{var n,a,o,i;t=Ce(t),2===r?(n=Lr,a=Mr,i=Rr,o=e=>C[e>>1]):4===r&&(n=Or,a=Ur,i=Ir,o=e=>A[e>>2]),De(e,{name:t,fromWireType:e=>{for(var t,a=A[e>>2],i=e+4,s=0;s<=a;++s){var l=e+4+s*r;if(s==a||0==o(l)){var u=n(i,l-i);void 0===t?t=u:(t+=String.fromCharCode(0),t+=u),i=l+r}}return bt(e),t},toWireType:(e,n)=>{"string"!=typeof n&&Te(`Cannot pass non-string to C++ string type ${t}`);var o=i(n),s=wt(4+o+r);return A[s>>2]=o/r,a(n,s+4,o+r),null!==e&&e.push(bt,s),s},argPackAdvance:8,readValueFromPointer:tr,destructorFunction(e){bt(e)}})},Ob:(e,r)=>{De(e,{isVoid:!0,name:r=Ce(r),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,r)=>{}})},Fb:(e,r,t)=>E.copyWithin(e,r,r+t),zb:()=>{K=!1,hr=0},wb:()=>{throw 1/0},O:(e,r)=>{var t,n,a;n="_emval_take_value",void 0===(a=Ae[t=e])&&Te(`${n} has unknown type ${lr(t)}`);var o=(e=a).readValueFromPointer(r);return Ar.toHandle(o)},Ab:(e,r)=>{if(jr[e]&&(clearTimeout(jr[e].id),delete jr[e]),!r)return 0;var t=setTimeout((()=>{delete jr[e],br((()=>xt(e,performance.now())))}),r);return jr[e]={id:t,timeout_ms:r},0},Bb:(e,r,t,n)=>{var a=(new Date).getFullYear(),o=new Date(a,0,1),i=new Date(a,6,1),s=o.getTimezoneOffset(),l=i.getTimezoneOffset(),u=Math.max(s,l);A[e>>2]=60*u,$[r>>2]=Number(s!=l);var c=e=>{var r=e>=0?"-":"+",t=Math.abs(e);return`UTC${r}${String(Math.floor(t/60)).padStart(2,"0")}${String(t%60).padStart(2,"0")}`},d=c(s),f=c(l);l<s?(Fr(d,t,17),Fr(f,n,17)):(Fr(d,n,17),Fr(f,t,17))},Eb:e=>{var r,t,n=E.length,a=2147483648;if((e>>>=0)>a)return!1;for(var o=1;o<=4;o*=2){var i=n*(1+.2/o);i=Math.min(i,e+100663296);var s=Math.min(a,(r=Math.max(e,i),t=65536,Math.ceil(r/t)*t));if(Vr(s))return!0}return!1},Fa:Nr,Qb:Jr,Rb:e=>{qr.currentContext==e&&(qr.currentContext=0),qr.deleteContext(e)},Da:e=>qr.makeContextCurrent(e)?0:-5,Cb:(e,r)=>{var t=0;return et().forEach(((n,a)=>{var o=r+t;A[e+4*a>>2]=o,((e,r)=>{for(var t=0;t<e.length;++t)x[r++]=e.charCodeAt(t);x[r]=0})(n,o),t+=n.length+1})),0},Db:(e,r)=>{var t=et();A[e>>2]=t.length;var n=0;return t.forEach((e=>n+=e.length+1)),A[r>>2]=n,0},ya:function(e){try{var r=Se.getStreamFromFD(e);return Ee.close(r),0}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return e.errno}},Ib:function(e,r,t,n){try{var a=((e,r,t,n)=>{for(var a=0,o=0;o<t;o++){var i=A[r>>2],s=A[r+4>>2];r+=8;var l=Ee.read(e,x,i,s,n);if(l<0)return-1;if(a+=l,l<s)break}return a})(Se.getStreamFromFD(e),r,t);return A[n>>2]=a,0}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return e.errno}},qb:function(e,r,t,n,a){var o=rt(r,t);try{if(isNaN(o))return 61;var i=Se.getStreamFromFD(e);return Ee.llseek(i,o,n),z=[i.position>>>0,(N=i.position,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],$[a>>2]=z[0],$[a+4>>2]=z[1],i.getdents&&0===o&&0===n&&(i.getdents=null),0}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return e.errno}},Gb:function(e,r,t,n){try{var a=((e,r,t,n)=>{for(var a=0,o=0;o<t;o++){var i=A[r>>2],s=A[r+4>>2];r+=8;var l=Ee.write(e,x,i,s,n);if(l<0)return-1;if(a+=l,l<s)break}return a})(Se.getStreamFromFD(e),r,t);return A[n>>2]=a,0}catch(e){if(void 0===Ee||"ErrnoError"!==e.name)throw e;return e.errno}},eb:e=>xr.activeTexture(e),xa:(e,r)=>{xr.attachShader(qr.programs[e],qr.shaders[r])},y:(e,r)=>{34962==e?xr.currentArrayBufferBinding=r:34963==e&&(xr.currentElementArrayBufferBinding=r),35051==e?xr.currentPixelPackBufferBinding=r:35052==e&&(xr.currentPixelUnpackBufferBinding=r),xr.bindBuffer(e,qr.buffers[r])},cb:(e,r,t,n,a)=>{xr.bindBufferRange(e,r,qr.buffers[t],n,a)},t:(e,r)=>{xr.bindFramebuffer(e,qr.framebuffers[r])},ba:(e,r)=>{xr.bindRenderbuffer(e,qr.renderbuffers[r])},L:(e,r)=>{xr.bindTexture(e,qr.textures[r])},ia:e=>{xr.bindVertexArray(qr.vaos[e]);var r=xr.getParameter(34965);xr.currentElementArrayBufferBinding=r?0|r.name:0},aa:e=>xr.blendEquation(e),A:(e,r)=>xr.blendFunc(e,r),la:(e,r,t,n,a,o,i,s,l,u)=>xr.blitFramebuffer(e,r,t,n,a,o,i,s,l,u),oa:(e,r,t,n)=>{qr.currentContext.version>=2?t&&r?xr.bufferData(e,E,n,t,r):xr.bufferData(e,r,n):xr.bufferData(e,t?E.subarray(t,t+r):r,n)},ma:e=>xr.clear(e),na:(e,r,t,n)=>xr.clearColor(e,r,t,n),$a:e=>xr.clearDepth(e),ab:e=>xr.clearStencil(e),G:(e,r,t,n)=>{xr.colorMask(!!e,!!r,!!t,!!n)},Wa:e=>{xr.compileShader(qr.shaders[e])},xb:()=>{var e=qr.getNewId(qr.programs),r=xr.createProgram();return r.name=e,r.maxUniformLength=r.maxAttributeLength=r.maxUniformBlockNameLength=0,r.uniformIdCounter=1,qr.programs[e]=r,e},Ya:e=>{var r=qr.getNewId(qr.shaders);return qr.shaders[r]=xr.createShader(e),r},nb:e=>xr.cullFace(e),ta:(e,r)=>{for(var t=0;t<e;t++){var n=$[r+4*t>>2],a=qr.buffers[n];a&&(xr.deleteBuffer(a),a.name=0,qr.buffers[n]=null,n==xr.currentArrayBufferBinding&&(xr.currentArrayBufferBinding=0),n==xr.currentElementArrayBufferBinding&&(xr.currentElementArrayBufferBinding=0),n==xr.currentPixelPackBufferBinding&&(xr.currentPixelPackBufferBinding=0),n==xr.currentPixelUnpackBufferBinding&&(xr.currentPixelUnpackBufferBinding=0))}},kb:(e,r)=>{for(var t=0;t<e;++t){var n=$[r+4*t>>2],a=qr.framebuffers[n];a&&(xr.deleteFramebuffer(a),a.name=0,qr.framebuffers[n]=null)}},Ka:e=>{if(e){var r=qr.programs[e];r?(xr.deleteProgram(r),r.name=0,qr.programs[e]=null):qr.recordError(1281)}},jb:(e,r)=>{for(var t=0;t<e;t++){var n=$[r+4*t>>2],a=qr.renderbuffers[n];a&&(xr.deleteRenderbuffer(a),a.name=0,qr.renderbuffers[n]=null)}},$:e=>{if(e){var r=qr.shaders[e];r?(xr.deleteShader(r),qr.shaders[e]=null):qr.recordError(1281)}},ca:(e,r)=>{for(var t=0;t<e;t++){var n=$[r+4*t>>2],a=qr.textures[n];a&&(xr.deleteTexture(a),a.name=0,qr.textures[n]=null)}},Ua:(e,r)=>{for(var t=0;t<e;t++){var n=$[r+4*t>>2];xr.deleteVertexArray(qr.vaos[n]),qr.vaos[n]=null}},lb:e=>xr.depthFunc(e),U:e=>{xr.depthMask(!!e)},M:e=>xr.disable(e),cc:e=>{qr.currentContext.clientBuffers[e].enabled=!1,xr.disableVertexAttribArray(e)},bb:(e,r,t,n)=>{var a,o=0;if(!xr.currentElementArrayBufferBinding){var i=qr.calcBufLength(1,t,0,r);if(a=qr.getTempIndexBuffer(i),xr.bindBuffer(34963,a),xr.bufferSubData(34963,0,E.subarray(n,n+i)),r>0)for(var s=0;s<qr.currentContext.maxVertexAttribs;++s){var l=qr.currentContext.clientBuffers[s];if(l.clientside&&l.enabled){let e;switch(t){case 5121:e=Uint8Array;break;case 5123:e=Uint16Array;break;case 5125:e=Uint32Array;break;default:return void qr.recordError(1282)}o=new e(E.buffer,n,r).reduce(((e,r)=>Math.max(e,r)))+1;break}}n=0}qr.preDrawHandleClientVertexAttribBindings(o),xr.drawElements(e,r,t,n),qr.postDrawHandleClientVertexAttribBindings(r),xr.currentElementArrayBufferBinding||xr.bindBuffer(34963,null)},F:e=>xr.enable(e),gb:e=>{qr.currentContext.clientBuffers[e].enabled=!0,xr.enableVertexAttribArray(e)},pa:(e,r,t,n)=>{xr.framebufferRenderbuffer(e,r,t,qr.renderbuffers[n])},ib:(e,r,t,n,a)=>{xr.framebufferTexture2D(e,r,t,qr.textures[n],a)},mb:e=>xr.frontFace(e),bc:(e,r)=>{qr.genObject(e,r,"createBuffer",qr.buffers)},sa:(e,r)=>{qr.genObject(e,r,"createFramebuffer",qr.framebuffers)},ra:(e,r)=>{qr.genObject(e,r,"createRenderbuffer",qr.renderbuffers)},va:(e,r)=>{qr.genObject(e,r,"createTexture",qr.textures)},Za:(e,r)=>{qr.genObject(e,r,"createVertexArray",qr.vaos)},Z:(e,r)=>tt(e,r,0),ob:(e,r,t,n)=>{var a=xr.getProgramInfoLog(qr.programs[e]);null===a&&(a="(unknown error)");var o=r>0&&n?Fr(a,n,r):0;t&&($[t>>2]=o)},wa:(e,r,t)=>{if(t)if(e>=qr.counter)qr.recordError(1281);else if(e=qr.programs[e],35716==r){var n=xr.getProgramInfoLog(e);null===n&&(n="(unknown error)"),$[t>>2]=n.length+1}else if(35719==r){if(!e.maxUniformLength)for(var a=xr.getProgramParameter(e,35718),o=0;o<a;++o)e.maxUniformLength=Math.max(e.maxUniformLength,xr.getActiveUniform(e,o).name.length+1);$[t>>2]=e.maxUniformLength}else if(35722==r){if(!e.maxAttributeLength){var i=xr.getProgramParameter(e,35721);for(o=0;o<i;++o)e.maxAttributeLength=Math.max(e.maxAttributeLength,xr.getActiveAttrib(e,o).name.length+1)}$[t>>2]=e.maxAttributeLength}else if(35381==r){if(!e.maxUniformBlockNameLength){var s=xr.getProgramParameter(e,35382);for(o=0;o<s;++o)e.maxUniformBlockNameLength=Math.max(e.maxUniformBlockNameLength,xr.getActiveUniformBlockName(e,o).length+1)}$[t>>2]=e.maxUniformBlockNameLength}else $[t>>2]=xr.getProgramParameter(e,r);else qr.recordError(1281)},Va:(e,r,t,n)=>{var a=xr.getShaderInfoLog(qr.shaders[e]);null===a&&(a="(unknown error)");var o=r>0&&n?Fr(a,n,r):0;t&&($[t>>2]=o)},ka:(e,r,t)=>{if(t)if(35716==r){var n=xr.getShaderInfoLog(qr.shaders[e]);null===n&&(n="(unknown error)");var a=n?n.length+1:0;$[t>>2]=a}else if(35720==r){var o=xr.getShaderSource(qr.shaders[e]),i=o?o.length+1:0;$[t>>2]=i}else $[t>>2]=xr.getShaderParameter(qr.shaders[e],r);else qr.recordError(1281)},r:(e,r)=>xr.getUniformBlockIndex(qr.programs[e],te(r)),D:(e,r)=>{if(r=te(r),e=qr.programs[e]){(e=>{var r,t,n=e.uniformLocsById,a=e.uniformSizeAndIdsByName;if(!n){e.uniformLocsById=n={},e.uniformArrayNamesById={};var o=xr.getProgramParameter(e,35718);for(r=0;r<o;++r){var i=xr.getActiveUniform(e,r),s=i.name,l=i.size,u=nt(s),c=u>0?s.slice(0,u):s,d=e.uniformIdCounter;for(e.uniformIdCounter+=l,a[c]=[l,d],t=0;t<l;++t)n[d]=t,e.uniformArrayNamesById[d++]=c}}})(e);var t=e.uniformLocsById,n=0,a=r,o=nt(r);o>0&&(s=r.slice(o+1),n=parseInt(s)>>>0,a=r.slice(0,o));var i=e.uniformSizeAndIdsByName[a];if(i&&n<i[0]&&(t[n+=i[1]]=t[n]||xr.getUniformLocation(e,r)))return n}else qr.recordError(1281);var s;return-1},_a:(e,r,t)=>{for(var n=at[r],a=0;a<r;a++)n[a]=$[t+4*a>>2];xr.invalidateFramebuffer(e,n)},pb:e=>{e=qr.programs[e],xr.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}},qa:(e,r,t,n,a)=>xr.renderbufferStorageMultisample(e,r,t,n,a),K:(e,r,t,n)=>xr.scissor(e,r,t,n),Xa:(e,r,t,n)=>{var a=qr.getSource(e,r,t,n);xr.shaderSource(qr.shaders[e],a)},X:(e,r,t)=>xr.stencilFunc(e,r,t),I:(e,r,t,n)=>xr.stencilFuncSeparate(e,r,t,n),W:(e,r,t)=>xr.stencilOp(e,r,t),H:(e,r,t,n)=>xr.stencilOpSeparate(e,r,t,n),ua:(e,r,t,n,a,o,i,s,l)=>{if(qr.currentContext.version>=2){if(xr.currentPixelUnpackBufferBinding)return void xr.texImage2D(e,r,t,n,a,o,i,s,l);if(l){var u=ot(s),c=it(l,u);return void xr.texImage2D(e,r,t,n,a,o,i,s,u,c)}}var d=l?st(s,i,n,a,l):null;xr.texImage2D(e,r,t,n,a,o,i,s,d)},C:(e,r,t)=>xr.texParameteri(e,r,t),hb:(e,r)=>{xr.uniform1f(lt(e),r)},Hb:(e,r,t)=>{if(qr.currentContext.version>=2)r&&xr.uniform1iv(lt(e),$,t>>2,r);else{if(r<=288)for(var n=ut[r],a=0;a<r;++a)n[a]=$[t+4*a>>2];else n=$.subarray(t>>2,t+4*r>>2);xr.uniform1iv(lt(e),n)}},db:(e,r,t)=>{e=qr.programs[e],xr.uniformBlockBinding(e,r,t)},_b:e=>{e=qr.programs[e],xr.useProgram(e),xr.currentProgram=e},fb:(e,r,t,n,a,o)=>{var i=qr.currentContext.clientBuffers[e];if(!xr.currentArrayBufferBinding)return i.size=r,i.type=t,i.normalized=n,i.stride=a,i.ptr=o,i.clientside=!0,void(i.vertexAttribPointerAdaptor=function(e,r,t,n,a,o){this.vertexAttribPointer(e,r,t,n,a,o)});i.clientside=!1,xr.vertexAttribPointer(e,r,t,!!n,a,o)},V:(e,r,t,n)=>xr.viewport(e,r,t,n),o:function(e,r){var t=Y();try{return Tt(e,r)}catch(e){if(J(t),e!==e+0)throw e;Et(1,0)}},h:function(e,r,t){var n=Y();try{return Ft(e,r,t)}catch(e){if(J(n),e!==e+0)throw e;Et(1,0)}},f:function(e,r,t,n){var a=Y();try{return Pt(e,r,t,n)}catch(e){if(J(a),e!==e+0)throw e;Et(1,0)}},Y:function(e,r,t,n,a,o){var i=Y();try{return kt(e,r,t,n,a,o)}catch(e){if(J(i),e!==e+0)throw e;Et(1,0)}},a:function(e,r){var t=Y();try{Bt(e,r)}catch(e){if(J(t),e!==e+0)throw e;Et(1,0)}},c:function(e,r,t){var n=Y();try{Dt(e,r,t)}catch(e){if(J(n),e!==e+0)throw e;Et(1,0)}},g:function(e,r,t,n){var a=Y();try{Lt(e,r,t,n)}catch(e){if(J(a),e!==e+0)throw e;Et(1,0)}},N:function(e,r,t,n,a){var o=Y();try{Mt(e,r,t,n,a)}catch(e){if(J(o),e!==e+0)throw e;Et(1,0)}},yb:vr,Xb:(e,r)=>{var t=0,n=0;return dt.mgrAdapter.get(e).features.forEach((e=>{var a=dt.FeatureNameString2Enum[e];void 0!==a&&(0!==r&&($[r+t>>2]=a,t+=4),n++)})),n},Ub:e=>dt.mgrAdapter.release(e),Wb:(e,r,t,n)=>{var a=dt.mgrAdapter.get(e),o={};if(r){var i=A[r+8>>2];if(i){var s=A[r+12>>2];o.requiredFeatures=Array.from($.subarray(s>>2,s+4*i>>2),(e=>dt.FeatureName[e]))}var l=A[r+16>>2];if(l){var u=l+8,c={};function g(e,r){var t=A[u+r>>2];4294967295!=t&&(c[e]=t)}function v(e,r){var t=u+r,n=A[t>>2],a=A[t+4>>2];4294967295==n&&4294967295==a||(c[e]=4294967296*A[t+4>>2]+A[t>>2])}g("maxTextureDimension1D",0),g("maxTextureDimension2D",4),g("maxTextureDimension3D",8),g("maxTextureArrayLayers",12),g("maxBindGroups",16),g("maxBindGroupsPlusVertexBuffers",20),g("maxDynamicUniformBuffersPerPipelineLayout",28),g("maxDynamicStorageBuffersPerPipelineLayout",32),g("maxSampledTexturesPerShaderStage",36),g("maxSamplersPerShaderStage",40),g("maxStorageBuffersPerShaderStage",44),g("maxStorageTexturesPerShaderStage",48),g("maxUniformBuffersPerShaderStage",52),g("minUniformBufferOffsetAlignment",72),g("minStorageBufferOffsetAlignment",76),v("maxUniformBufferBindingSize",56),v("maxStorageBufferBindingSize",64),g("maxVertexBuffers",80),v("maxBufferSize",88),g("maxVertexAttributes",96),g("maxVertexBufferArrayStride",100),g("maxInterStageShaderComponents",104),g("maxInterStageShaderVariables",108),g("maxColorAttachments",112),g("maxColorAttachmentBytesPerSample",116),g("maxComputeWorkgroupStorageSize",120),g("maxComputeInvocationsPerWorkgroup",124),g("maxComputeWorkgroupSizeX",128),g("maxComputeWorkgroupSizeY",132),g("maxComputeWorkgroupSizeZ",136),g("maxComputeWorkgroupsPerDimension",140),o.requiredLimits=c}var d=A[r+20>>2];if(d){var f={};(m=A[d+4>>2])&&(f.label=te(m)),o.defaultQueue=f}var m,p=A[r+28>>2],h=A[r+32>>2];(m=A[r+4>>2])&&(o.label=te(m))}a.requestDevice(o).then((e=>{br((()=>{var r={queueId:dt.mgrQueue.create(e.queue)},a=dt.mgrDevice.create(e,r);p&&e.lost.then((e=>{br((()=>dt.errorCallback(p,dt.Int_DeviceLostReason[e.reason],e.message,h)))})),Mt(t,0,a,0,n)}))}),(function(e){br((()=>{var r=Y(),a=ct(e.message);Mt(t,1,0,a,n),J(r)}))}))},x:e=>dt.mgrBindGroupLayout.release(e),q:e=>dt.mgrBindGroup.release(e),Na:e=>{var r=dt.mgrBuffer.objects[e];if(r.onUnmap){for(var t=0;t<r.onUnmap.length;++t)r.onUnmap[t]();r.onUnmap=void 0}dt.mgrBuffer.get(e).destroy()},vb:function(e){var r,t=dt.mgrBuffer.get(e).size;return N=t,r=+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0,St(r),t>>>0},Ma:e=>dt.mgrBuffer.release(e),Ha:e=>dt.mgrCommandBuffer.release(e),ha:(e,r)=>{function t(e){var r=A[e+4>>2];if(0!==r){var t=$[e+8>>2];-1==t&&(t=void 0);var n=A[e+16>>2],a=A[e+20>>2],o=dt.makeColor(e+24);return{view:dt.mgrTextureView.get(r),depthSlice:t,resolveTarget:dt.mgrTextureView.get(A[e+12>>2]),clearValue:o,loadOp:dt.LoadOp[n],storeOp:dt.StoreOp[a]}}}function n(e,r){for(var n=[],a=0;a<e;++a)n.push(t(r+56*a));return n}function a(e){if(0!==e)return{view:dt.mgrTextureView.get(A[e>>2]),depthClearValue:P[e+12>>2],depthLoadOp:dt.LoadOp[A[e+4>>2]],depthStoreOp:dt.StoreOp[A[e+8>>2]],depthReadOnly:!!A[e+16>>2],stencilClearValue:A[e+28>>2],stencilLoadOp:dt.LoadOp[A[e+20>>2]],stencilStoreOp:dt.StoreOp[A[e+24>>2]],stencilReadOnly:!!A[e+32>>2]}}function o(e){if(0!==e)return{querySet:dt.mgrQuerySet.get(A[e>>2]),beginningOfPassWriteIndex:A[e+4>>2],endOfPassWriteIndex:A[e+8>>2]}}var i=function(e){var r=A[e>>2],t=void 0;if(0!==r){A[r+4>>2];var i=r;t=4294967296*A[i+4+8>>2]+A[i+8>>2]}var s={label:void 0,colorAttachments:n(A[e+8>>2],A[e+12>>2]),depthStencilAttachment:a(A[e+16>>2]),occlusionQuerySet:dt.mgrQuerySet.get(A[e+20>>2]),timestampWrites:o(A[e+24>>2]),maxDrawCount:t},l=A[e+4>>2];return l&&(s.label=te(l)),s}(r),s=dt.mgrCommandEncoder.get(e);return dt.mgrRenderPassEncoder.create(s.beginRenderPass(i))},P:(e,r,t,n)=>{var a=dt.mgrCommandEncoder.get(e),o=dt.makeExtent3D(n);a.copyTextureToTexture(dt.makeImageCopyTexture(r),dt.makeImageCopyTexture(t),o)},Ia:(e,r)=>{var t=dt.mgrCommandEncoder.get(e);return dt.mgrCommandBuffer.create(t.finish())},Ga:e=>dt.mgrCommandEncoder.release(e),E:(e,r)=>{function t(e){var r,t=A[e+8>>2],n=A[e+32>>2],a=A[e+36>>2],o=A[e+4>>2];if(t){var i=A[(r=e+24)>>2]+4294967296*$[r+4>>2];return-1==i&&(i=void 0),{binding:o,resource:{buffer:dt.mgrBuffer.get(t),offset:4294967296*A[e+4+16>>2]+A[e+16>>2],size:i}}}return n?{binding:o,resource:dt.mgrSampler.get(n)}:{binding:o,resource:dt.mgrTextureView.get(a)}}var n={label:void 0,layout:dt.mgrBindGroupLayout.get(A[r+8>>2]),entries:function(e,r){for(var n=[],a=0;a<e;++a)n.push(t(r+40*a));return n}(A[r+12>>2],A[r+16>>2])},a=A[r+4>>2];a&&(n.label=te(a));var o=dt.mgrDevice.get(e);return dt.mgrBindGroup.create(o.createBindGroup(n))},w:(e,r)=>{function t(e){var r=A[e+4>>2];if(r)return{type:dt.BufferBindingType[r],hasDynamicOffset:!!A[e+8>>2],minBindingSize:4294967296*A[e+4+16>>2]+A[e+16>>2]}}function n(e){var r=A[e+4>>2];if(r)return{type:dt.SamplerBindingType[r]}}function a(e){var r=A[e+4>>2];if(r)return{sampleType:dt.TextureSampleType[r],viewDimension:dt.TextureViewDimension[A[e+8>>2]],multisampled:!!A[e+12>>2]}}function o(e){var r=A[e+4>>2];if(r)return{access:dt.StorageTextureAccess[r],format:dt.TextureFormat[A[e+8>>2]],viewDimension:dt.TextureViewDimension[A[e+12>>2]]}}var i={entries:function(e,r){for(var i,s=[],l=0;l<e;++l)s.push({binding:A[(i=r+80*l)+4>>2],visibility:A[i+8>>2],buffer:t(i+16),sampler:n(i+40),texture:a(i+48),storageTexture:o(i+64)});return s}(A[r+8>>2],A[r+12>>2])},s=A[r+4>>2];s&&(i.label=te(s));var l=dt.mgrDevice.get(e);return dt.mgrBindGroupLayout.create(l.createBindGroupLayout(i))},Q:(e,r)=>{var t=!!A[r+24>>2],n={label:void 0,usage:A[r+8>>2],size:4294967296*A[r+4+16>>2]+A[r+16>>2],mappedAtCreation:t},a=A[r+4>>2];a&&(n.label=te(a));var o=dt.mgrDevice.get(e),i={},s=dt.mgrBuffer.create(o.createBuffer(n),i);return t&&(i.mapMode=2,i.onUnmap=[]),s},Ja:(e,r)=>{var t;if(r){t={label:void 0};var n=A[r+4>>2];n&&(t.label=te(n))}var a=dt.mgrDevice.get(e);return dt.mgrCommandEncoder.create(a.createCommandEncoder(t))},s:(e,r)=>{for(var t=A[r+8>>2],n=A[r+12>>2],a=[],o=0;o<t;++o)a.push(dt.mgrBindGroupLayout.get(A[n+4*o>>2]));var i={label:void 0,bindGroupLayouts:a},s=A[r+4>>2];s&&(i.label=te(s));var l=dt.mgrDevice.get(e);return dt.mgrPipelineLayout.create(l.createPipelineLayout(i))},j:(e,r)=>{var t=(e=>{function r(e){if(e)return{operation:dt.BlendOperation[A[e>>2]],srcFactor:dt.BlendFactor[A[e+4>>2]],dstFactor:dt.BlendFactor[A[e+8>>2]]}}function t(e){if(e)return{alpha:r(e+12),color:r(e+0)}}function n(e,r){for(var n,a,o=[],i=0;i<e;++i)o.push((a=void 0,0===(a=A[(n=r+16*i)+4>>2])?void 0:{format:dt.TextureFormat[a],blend:t(A[n+8>>2]),writeMask:A[n+12>>2]}));return o}function a(e){return{compare:dt.CompareFunction[A[e>>2]],failOp:dt.StencilOperation[A[e+4>>2]],depthFailOp:dt.StencilOperation[A[e+8>>2]],passOp:dt.StencilOperation[A[e+12>>2]]}}function o(e,r){for(var t,n=[],a=0;a<e;++a)n.push((t=r+24*a,{format:dt.VertexFormat[A[t>>2]],offset:4294967296*A[t+4+8>>2]+A[t+8>>2],shaderLocation:A[t+16>>2]}));return n}function i(e){if(e){var r=A[e+8>>2];return 1===r?null:{arrayStride:4294967296*A[e+4>>2]+A[e>>2],stepMode:dt.VertexStepMode[r],attributes:o(A[e+12>>2],A[e+16>>2])}}}function s(e,r){if(e){for(var t=[],n=0;n<e;++n)t.push(i(r+24*n));return t}}var l={label:void 0,layout:dt.makePipelineLayout(A[e+8>>2]),vertex:function(e){if(e){var r={module:dt.mgrShaderModule.get(A[e+4>>2]),constants:dt.makePipelineConstants(A[e+12>>2],A[e+16>>2]),buffers:s(A[e+20>>2],A[e+24>>2])},t=A[e+8>>2];return t&&(r.entryPoint=te(t)),r}}(e+12),primitive:function(e){if(e){var r=A[e>>2],t=r?A[r+4>>2]:0;return{topology:dt.PrimitiveTopology[A[e+4>>2]],stripIndexFormat:dt.IndexFormat[A[e+8>>2]],frontFace:dt.FrontFace[A[e+12>>2]],cullMode:dt.CullMode[A[e+16>>2]],unclippedDepth:7===t&&!!A[r+8>>2]}}}(e+40),depthStencil:function(e){if(e)return{format:dt.TextureFormat[A[e+4>>2]],depthWriteEnabled:!!A[e+8>>2],depthCompare:dt.CompareFunction[A[e+12>>2]],stencilFront:a(e+16),stencilBack:a(e+32),stencilReadMask:A[e+48>>2],stencilWriteMask:A[e+52>>2],depthBias:$[e+56>>2],depthBiasSlopeScale:P[e+60>>2],depthBiasClamp:P[e+64>>2]}}(A[e+60>>2]),multisample:function(e){if(e)return{count:A[e+4>>2],mask:A[e+8>>2],alphaToCoverageEnabled:!!A[e+12>>2]}}(e+64),fragment:function(e){if(e){var r={module:dt.mgrShaderModule.get(A[e+4>>2]),constants:dt.makePipelineConstants(A[e+12>>2],A[e+16>>2]),targets:n(A[e+20>>2],A[e+24>>2])},t=A[e+8>>2];return t&&(r.entryPoint=te(t)),r}}(A[e+80>>2])},u=A[e+4>>2];return u&&(l.label=te(u)),l})(r),n=dt.mgrDevice.get(e);return dt.mgrRenderPipeline.create(n.createRenderPipeline(t))},T:(e,r)=>{var t;if(r){t={label:void 0,addressModeU:dt.AddressMode[A[r+8>>2]],addressModeV:dt.AddressMode[A[r+12>>2]],addressModeW:dt.AddressMode[A[r+16>>2]],magFilter:dt.FilterMode[A[r+20>>2]],minFilter:dt.FilterMode[A[r+24>>2]],mipmapFilter:dt.MipmapFilterMode[A[r+28>>2]],lodMinClamp:P[r+32>>2],lodMaxClamp:P[r+36>>2],compare:dt.CompareFunction[A[r+40>>2]]};var n=A[r+4>>2];n&&(t.label=te(n))}var a=dt.mgrDevice.get(e);return dt.mgrSampler.create(a.createSampler(t))},m:(e,r)=>{var t=A[r>>2],n=A[t+4>>2],a={label:void 0,code:""},o=A[r+4>>2];switch(o&&(a.label=te(o)),n){case 5:var i=A[t+8>>2],s=A[t+12>>2]>>2;a.code=A.subarray(s,s+i);break;case 6:var l=A[t+8>>2];l&&(a.code=te(l))}var u=dt.mgrDevice.get(e);return dt.mgrShaderModule.create(u.createShaderModule(a))},J:(e,r)=>{var t={label:void 0,size:dt.makeExtent3D(r+16),mipLevelCount:A[r+32>>2],sampleCount:A[r+36>>2],dimension:dt.TextureDimension[A[r+12>>2]],format:dt.TextureFormat[A[r+28>>2]],usage:A[r+8>>2]},n=A[r+4>>2];n&&(t.label=te(n));var a=A[r+40>>2];if(a){var o=A[r+44>>2];t.viewFormats=Array.from($.subarray(o>>2,o+4*a>>2),(function(e){return dt.TextureFormat[e]}))}var i=dt.mgrDevice.get(e);return dt.mgrTexture.create(i.createTexture(t))},Ta:e=>{var r=dt.mgrDevice.objects[e].queueId;return dt.mgrQueue.reference(r),r},Vb:e=>dt.mgrDevice.release(e),Pb:(e,r)=>{var t=A[r>>2],n=A[t+8>>2],a=Kr(n).getContext("webgpu");if(!a)return 0;var o=A[r+4>>2];return o&&(a.surfaceLabelWebGPU=te(o)),dt.mgrSurface.create(a)},Yb:(e,r,t,n)=>{var a;if(r&&(a={powerPreference:dt.PowerPreference[A[r+8>>2]],forceFallbackAdapter:!!A[r+16>>2]}),!("gpu"in navigator)){var o=Y(),i=ct("WebGPU not available on this browser (navigator.gpu is not available)");return Mt(t,1,0,i,n),void J(o)}navigator.gpu.requestAdapter(a).then((e=>{br((()=>{if(e)((e,r,n,a)=>{Mt(t,0,r,0,a)})(0,dt.mgrAdapter.create(e),0,n);else{var r=Y();((e,r,n,a)=>{Mt(t,1,0,n,a)})(0,0,ct("WebGPU not available on this system (requestAdapter returned null)"),n),J(r)}}))}),(e=>{br((()=>{var r=Y();((e,r,n,a)=>{Mt(t,2,0,n,a)})(0,0,ct(e.message),n),J(r)}))}))},v:e=>dt.mgrPipelineLayout.release(e),La:e=>dt.mgrQueue.release(e),S:(e,r,t)=>{var n=dt.mgrQueue.get(e),a=Array.from($.subarray(t>>2,t+4*r>>2),(e=>dt.mgrCommandBuffer.get(e)));n.submit(a)},ub:function(e,r,t,n,a,o){var i=rt(t,n),s=dt.mgrQueue.get(e),l=dt.mgrBuffer.get(r),u=E.subarray(a,a+o);s.writeBuffer(l,i,u,0,o)},ja:(e,r,t,n,a,o)=>{var i=dt.mgrQueue.get(e),s=dt.makeImageCopyTexture(r),l=dt.makeTextureDataLayout(a),u=dt.makeExtent3D(o),c=E.subarray(t,t+n);i.writeTexture(s,c,l,u)},ea:(e,r,t,n,a,o)=>{dt.mgrRenderPassEncoder.get(e).drawIndexed(r,t,n,a,o)},ga:e=>{dt.mgrRenderPassEncoder.get(e).end()},fa:e=>dt.mgrRenderPassEncoder.release(e),d:(e,r,t,n,a)=>{var o=dt.mgrRenderPassEncoder.get(e),i=dt.mgrBindGroup.get(t);if(0==n)o.setBindGroup(r,i);else{for(var s=[],l=0;l<n;l++,a+=4)s.push(A[a>>2]);o.setBindGroup(r,i,s)}},sb:function(e,r,t,n,a,o,i){var s=rt(n,a),l=rt(o,i),u=dt.mgrRenderPassEncoder.get(e),c=dt.mgrBuffer.get(r);-1==l&&(l=void 0),u.setIndexBuffer(c,dt.IndexFormat[t],s,l)},e:(e,r)=>{var t=dt.mgrRenderPassEncoder.get(e),n=dt.mgrRenderPipeline.get(r);t.setPipeline(n)},n:(e,r,t,n,a)=>{dt.mgrRenderPassEncoder.get(e).setScissorRect(r,t,n,a)},i:(e,r)=>{dt.mgrRenderPassEncoder.get(e).setStencilReference(r)},tb:function(e,r,t,n,a,o,i){var s=rt(n,a),l=rt(o,i),u=dt.mgrRenderPassEncoder.get(e),c=dt.mgrBuffer.get(t);-1==l&&(l=void 0),u.setVertexBuffer(r,c,s,l)},k:e=>dt.mgrRenderPipeline.release(e),R:e=>dt.mgrSampler.release(e),p:e=>dt.mgrShaderModule.release(e),Zb:(e,r)=>{var t=A[r+4>>2],n=dt.mgrSurface.get(e),a=[A[r+28>>2],A[r+32>>2]];0!==a[0]&&(n.canvas.width=a[0]),0!==a[1]&&(n.canvas.height=a[1]);var o={device:dt.mgrDevice.get(t),format:dt.TextureFormat[A[r+8>>2]],usage:A[r+12>>2],alphaMode:dt.AlphaMode[A[r+24>>2]]};n.configure(o)},ac:(e,r)=>{var t=dt.mgrSurface.get(e);try{var n=dt.mgrTexture.create(t.getCurrentTexture());A[r>>2]=n,$[r+4>>2]=0,$[r+8>>2]=0}catch(e){A[r>>2]=0,$[r+4>>2]=0,$[r+8>>2]=5}},Ca:e=>dt.mgrSurface.release(e),$b:e=>{dt.mgrSurface.get(e).unconfigure()},Pa:(e,r)=>{var t;if(r){var n=A[r+20>>2],a=A[r+28>>2];t={format:dt.TextureFormat[A[r+8>>2]],dimension:dt.TextureViewDimension[A[r+12>>2]],baseMipLevel:A[r+16>>2],mipLevelCount:4294967295===n?void 0:n,baseArrayLayer:A[r+24>>2],arrayLayerCount:4294967295===a?void 0:a,aspect:dt.TextureAspect[A[r+32>>2]]};var o=A[r+4>>2];o&&(t.label=te(o))}var i=dt.mgrTexture.get(e);return dt.mgrTextureView.create(i.createView(t))},Oa:e=>dt.mgrTexture.get(e).destroy(),Qa:e=>{var r=dt.mgrTexture.get(e);return dt.TextureFormat.indexOf(r.format)},Ra:e=>dt.mgrTexture.get(e).height,Sa:e=>dt.mgrTexture.get(e).width,_:e=>dt.mgrTexture.release(e),z:e=>dt.mgrTextureView.release(e)},yt=function(){var e,r,t,o,i={a:vt};function s(e,r){var t;return yt=e.exports,yt=wr.instrumentWasmExports(yt),w=yt.dc,F(),yt.ic,t=yt.ec,L.unshift(t),I(),yt}if(U(),a.instantiateWasm)try{return a.instantiateWasm(i,s)}catch(e){b(`Module.instantiateWasm callback failed with error: ${e}`),n(e)}return V??=H(),(e=k,r=V,t=i,o=function(e){s(e.instance)},e||"function"!=typeof WebAssembly.instantiateStreaming||G(r)||W(r)||l||"function"!=typeof fetch?X(r,t,o):fetch(r,{credentials:"same-origin"}).then((e=>WebAssembly.instantiateStreaming(e,t).then(o,(function(e){return b(`wasm streaming compile failed: ${e}`),b("falling back to ArrayBuffer instantiation"),X(r,t,o)}))))).catch(n),{}}(),bt=e=>(bt=yt.fc)(e),wt=e=>(wt=yt.gc)(e),_t=e=>(_t=yt.hc)(e),xt=(e,r)=>(xt=yt.jc)(e,r),Et=(e,r)=>(Et=yt.kc)(e,r),St=e=>(St=yt.lc)(e),Ct=e=>(Ct=yt.mc)(e),$t=e=>($t=yt.nc)(e),At=()=>(At=yt.oc)(),Pt=a.dynCall_iiii=(e,r,t,n)=>(Pt=a.dynCall_iiii=yt.pc)(e,r,t,n),Tt=a.dynCall_ii=(e,r)=>(Tt=a.dynCall_ii=yt.qc)(e,r);a.dynCall_iiiii=(e,r,t,n,o)=>(a.dynCall_iiiii=yt.rc)(e,r,t,n,o),a.dynCall_iiiiiffiii=(e,r,t,n,o,i,s,l,u,c)=>(a.dynCall_iiiiiffiii=yt.sc)(e,r,t,n,o,i,s,l,u,c),a.dynCall_fii=(e,r,t)=>(a.dynCall_fii=yt.tc)(e,r,t);var kt=a.dynCall_iiiiii=(e,r,t,n,o,i)=>(kt=a.dynCall_iiiiii=yt.uc)(e,r,t,n,o,i),Bt=a.dynCall_vi=(e,r)=>(Bt=a.dynCall_vi=yt.vc)(e,r),Ft=a.dynCall_iii=(e,r,t)=>(Ft=a.dynCall_iii=yt.wc)(e,r,t),Dt=a.dynCall_vii=(e,r,t)=>(Dt=a.dynCall_vii=yt.xc)(e,r,t),Lt=a.dynCall_viii=(e,r,t,n)=>(Lt=a.dynCall_viii=yt.yc)(e,r,t,n),Mt=a.dynCall_viiii=(e,r,t,n,o)=>(Mt=a.dynCall_viiii=yt.zc)(e,r,t,n,o);a.dynCall_viiiii=(e,r,t,n,o,i)=>(a.dynCall_viiiii=yt.Ac)(e,r,t,n,o,i),a.dynCall_viiiiii=(e,r,t,n,o,i,s)=>(a.dynCall_viiiiii=yt.Bc)(e,r,t,n,o,i,s),a.dynCall_v=e=>(a.dynCall_v=yt.Cc)(e),a.dynCall_fi=(e,r)=>(a.dynCall_fi=yt.Dc)(e,r),a.dynCall_iiiiiii=(e,r,t,n,o,i,s)=>(a.dynCall_iiiiiii=yt.Ec)(e,r,t,n,o,i,s),a.dynCall_iiiiiiii=(e,r,t,n,o,i,s,l)=>(a.dynCall_iiiiiiii=yt.Fc)(e,r,t,n,o,i,s,l),a.dynCall_iif=(e,r,t)=>(a.dynCall_iif=yt.Gc)(e,r,t),a.dynCall_iiif=(e,r,t,n)=>(a.dynCall_iiif=yt.Hc)(e,r,t,n),a.dynCall_iiffff=(e,r,t,n,o,i)=>(a.dynCall_iiffff=yt.Ic)(e,r,t,n,o,i),a.dynCall_iiiffff=(e,r,t,n,o,i,s)=>(a.dynCall_iiiffff=yt.Jc)(e,r,t,n,o,i,s),a.dynCall_jiji=(e,r,t,n,o)=>(a.dynCall_jiji=yt.Kc)(e,r,t,n,o),a.dynCall_iiiiiiiii=(e,r,t,n,o,i,s,l,u)=>(a.dynCall_iiiiiiiii=yt.Lc)(e,r,t,n,o,i,s,l,u),a.dynCall_iiiff=(e,r,t,n,o)=>(a.dynCall_iiiff=yt.Mc)(e,r,t,n,o),a.dynCall_iiifi=(e,r,t,n,o)=>(a.dynCall_iiifi=yt.Nc)(e,r,t,n,o),a.dynCall_viijii=(e,r,t,n,o,i,s)=>(a.dynCall_viijii=yt.Oc)(e,r,t,n,o,i,s),a.dynCall_iiiiij=(e,r,t,n,o,i,s)=>(a.dynCall_iiiiij=yt.Pc)(e,r,t,n,o,i,s),a.dynCall_iiiiid=(e,r,t,n,o,i)=>(a.dynCall_iiiiid=yt.Qc)(e,r,t,n,o,i),a.dynCall_iiiiijj=(e,r,t,n,o,i,s,l,u)=>(a.dynCall_iiiiijj=yt.Rc)(e,r,t,n,o,i,s,l,u),a.dynCall_iiiiiijj=(e,r,t,n,o,i,s,l,u,c)=>(a.dynCall_iiiiiijj=yt.Sc)(e,r,t,n,o,i,s,l,u,c);var Rt,Ot=e=>(Ot=yt.Tc)(e),Ut=()=>(Ut=yt.Uc)(),It=e=>(It=yt.Vc)(e),jt=()=>(jt=yt.Wc)();function Vt(){function e(){Rt||(Rt=!0,a.calledRun=!0,B||(a.noFSInit||Ee.initialized||Ee.init(),Ee.ignorePermissions=!1,Z(L),t(a),a.onRuntimeInitialized?.(),function(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)e=a.postRun.shift(),M.unshift(e);var e;Z(M)}()))}R>0||(function(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)e=a.preRun.shift(),D.unshift(e);var e;Z(D)}(),R>0||(a.setStatus?(a.setStatus("Running..."),setTimeout((()=>{setTimeout((()=>a.setStatus("")),1),e()}),1)):e()))}if(a.addRunDependency=U,a.removeRunDependency=I,a.FS_createPreloadedFile=_e,a.FS_unlink=e=>Ee.unlink(e),a.FS_createPath=ft,a.FS_createDevice=pt,a.FS=Ee,a.FS_createDataFile=be,a.FS_createLazyFile=mt,O=function e(){Rt||Vt(),Rt||(O=e)},a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();return Vt(),o});const ve="1.0.0";function ye(e,r,t,n){var a,o=arguments.length,i=o<3?r:null===n?n=Object.getOwnPropertyDescriptor(r,t):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,r,t,n);else for(var s=e.length-1;s>=0;s--)(a=e[s])&&(i=(o<3?a(i):o>3?a(r,t,i):a(r,t))||i);return o>3&&i&&Object.defineProperty(r,t,i),i}let be;var we,_e,xe,Ee,Se,Ce;(async()=>{be=await ge({locateFile:(e,r)=>e.endsWith(".wasm")?"https://unpkg.com/@thorvg/lottie-player@latest/dist/thorvg-wasm.wasm":r+e})})(),exports.Renderer=void 0,(we=exports.Renderer||(exports.Renderer={})).SW="sw",we.WG="wg",we.GL="gl",exports.InitStatus=void 0,(_e=exports.InitStatus||(exports.InitStatus={})).IDLE="idle",_e.REQUESTED="requested",_e.INITIALIZED="initialized",exports.MimeType=void 0,(xe=exports.MimeType||(exports.MimeType={})).JSON="json",xe.JPG="jpg",xe.PNG="png",xe.SVG="svg",exports.PlayerState=void 0,(Ee=exports.PlayerState||(exports.PlayerState={})).Destroyed="destroyed",Ee.Error="error",Ee.Loading="loading",Ee.Paused="paused",Ee.Playing="playing",Ee.Stopped="stopped",Ee.Frozen="frozen",exports.PlayMode=void 0,(Se=exports.PlayMode||(exports.PlayMode={})).Bounce="bounce",Se.Normal="normal",exports.PlayerEvent=void 0,(Ce=exports.PlayerEvent||(exports.PlayerEvent={})).Complete="complete",Ce.Destroyed="destroyed",Ce.Error="error",Ce.Frame="frame",Ce.Freeze="freeze",Ce.Load="load",Ce.Loop="loop",Ce.Pause="pause",Ce.Play="play",Ce.Ready="ready",Ce.Stop="stop";const $e=async e=>{try{e=JSON.parse(e)}catch(r){const t=await(async e=>{if("string"!=typeof e)throw new Error("The url value must be a string");try{const r=new URL(e),t=await fetch(r.toString());return await t.json()}catch(e){throw new Error("An error occurred while trying to load the Lottie file from URL")}})(e);e=JSON.stringify(t)}return e},Ae=async(e,r)=>{const t=new TextEncoder;let n=e;switch(typeof n){case"object":return n instanceof ArrayBuffer?new Uint8Array(n):(n=JSON.stringify(n),t.encode(n));case"string":if("json"===r)return n=await $e(n),t.encode(n);const e=await(async e=>(await fetch(e)).arrayBuffer())(n);return new Uint8Array(e);default:throw new Error("Invalid src type")}},Pe=e=>new Promise((r=>setTimeout(r,e))),Te=(e,r)=>{const t=document.createElement("a");t.setAttribute("href",URL.createObjectURL(r)),t.setAttribute("download",e),document.body.appendChild(t),t.click(),document.body.removeChild(t)};let ke="idle";class Be extends ne{src;mimeType="json";renderConfig;speed=1;autoPlay=!1;count;loop=!1;direction=1;mode="normal";intermission=1;totalFrame=0;currentFrame=0;currentState="loading";get size(){return Float32Array.from(this._TVG?.size()||[0,0])}_TVG;_canvas;_imageData;_beginTime=Date.now();_counter=1;_timer;_observer;_observable=!1;async _init(){if(!be)return;if(!this._timer)return;clearInterval(this._timer),this._timer=void 0;const e=this.renderConfig?.renderer||"sw";await(async e=>{if("sw"!==e){for(;"requested"===ke;)await Pe(100);"initialized"!==ke&&(ke="requested",await be.init(),ke="initialized")}})(e),this._TVG=new be.TvgLottieAnimation(e,`#${this._canvas.id}`),this.src&&this.load(this.src,this.mimeType)}_viewport(){const{left:e,right:r,top:t,bottom:n}=this.getBoundingClientRect(),a=window.innerWidth,o=window.innerHeight;let i=0,s=0,l=this._canvas.width,u=this._canvas.height;e<0&&(i=Math.abs(e),l-=i),t<0&&(s=Math.abs(t),u-=s),r>a&&(l-=r-a),n>o&&(u-=n-o),this._TVG.viewport(i,s,l,u)}_observerCallback(e){const r=e[0],t=r.target;t._observable=r.isIntersecting,r.isIntersecting?"frozen"===t.currentState&&t.play():"playing"===t.currentState&&(t.freeze(),t.dispatchEvent(new CustomEvent("freeze")))}firstUpdated(e){this._canvas=this.querySelector(".thorvg"),this._canvas.id=`thorvg-${pe().replaceAll("-","").substring(0,6)}`,this._canvas.width=this._canvas.offsetWidth,this._canvas.height=this._canvas.offsetHeight,this._observer=new IntersectionObserver(this._observerCallback),this._observer.observe(this),this._TVG?this.src&&this.load(this.src,this.mimeType):this._timer=setInterval(this._init.bind(this),100)}createRenderRoot(){return this.style.display="block",this}async _animLoop(){this._TVG&&await this._update()&&(this._render(),window.requestAnimationFrame(this._animLoop.bind(this)))}_loadBytes(e,r=""){if(!this._TVG.load(e,this.mimeType,this._canvas.width,this._canvas.height,r))throw new Error("Unable to load an image. Error: ",this._TVG.error());this._render(),this.dispatchEvent(new CustomEvent("load")),this.autoPlay&&this.play()}_flush(){this._canvas.getContext("2d").putImageData(this._imageData,0,0)}_render(){if(this.renderConfig?.enableDevicePixelRatio){const e=1+.75*(window.devicePixelRatio-1),{width:r,height:t}=this._canvas.getBoundingClientRect();this._canvas.width=r*e,this._canvas.height=t*e}this._TVG.resize(this._canvas.width,this._canvas.height),this._viewport();if(!this._TVG.update())return;if("wg"===this.renderConfig?.renderer||"gl"===this.renderConfig?.renderer)return void this._TVG.render();const e=this._TVG.render(),r=new Uint8ClampedArray(e.buffer,e.byteOffset,e.byteLength);r.length<1||(this._imageData=new ImageData(r,this._canvas.width,this._canvas.height),this._flush())}async _update(){if("playing"!==this.currentState)return!1;const e=this._TVG.duration(),r=Date.now()/1e3;if(this.currentFrame=(r-this._beginTime)/e*this.totalFrame*this.speed,-1===this.direction&&(this.currentFrame=this.totalFrame-this.currentFrame),1===this.direction&&this.currentFrame>=this.totalFrame||-1===this.direction&&this.currentFrame<=0){const e=this.count?"bounce"===this.mode?2*this.count:this.count:0;if(this.loop||e&&this._counter<e)return"bounce"===this.mode&&(this.direction=1===this.direction?-1:1,this.currentFrame=1===this.direction?0:this.totalFrame),this.count&&(this._counter+=1),await Pe(this.intermission),this.play(),!0;this.dispatchEvent(new CustomEvent("complete")),this.currentState="stopped"}return this.dispatchEvent(new CustomEvent("frame",{detail:{frame:this.currentFrame}})),this._TVG.frame(this.currentFrame)}_frame(e){this.pause(),this.currentFrame=e,this._TVG.frame(e)}async load(e,r="json"){try{await this._init();const t=await Ae(e,r);this.dispatchEvent(new CustomEvent("ready")),this.mimeType=r,await this._loadBytes(t)}catch(e){this.currentState="error",this.dispatchEvent(new CustomEvent("error"))}}play(){if("json"===this.mimeType&&(this.totalFrame=this._TVG.totalFrame(),!(this.totalFrame<1)&&(this._beginTime=Date.now()/1e3,"playing"!==this.currentState)))return this._observable?(this.currentState="playing",void window.requestAnimationFrame(this._animLoop.bind(this))):void(this.currentState="frozen")}pause(){this.currentState="paused",this.dispatchEvent(new CustomEvent("pause"))}stop(){this.currentState="stopped",this.currentFrame=0,this._counter=1,this.seek(0),this.dispatchEvent(new CustomEvent("stop"))}freeze(){this.currentState="frozen",this.dispatchEvent(new CustomEvent("freeze"))}async seek(e){this._frame(e),await this._update(),this._render()}resize(e,r){this._canvas.width=e,this._canvas.height=r,"playing"!==this.currentState&&this._render()}destroy(){this._TVG&&(this._TVG.delete(),this._TVG=null,this.currentState="destroyed",this._observer&&(this._observer.disconnect(),this._observer=void 0),this.dispatchEvent(new CustomEvent("destroyed")),this.remove())}term(){be.term(),be=null}setLooping(e){this._TVG&&(this.loop=e)}setDirection(e){this._TVG&&(this.direction=e)}setSpeed(e){this._TVG&&(this.speed=e)}setBgColor(e){this._TVG&&(this._canvas.style.backgroundColor=e)}save2png(){this._TVG&&this._canvas.toBlob((e=>{e&&Te("output.png",e)}),"image/png")}async save2gif(e){if(!this._TVG)return;const r=await Ae(e,"json");if(!this._TVG.save(r,"gif"))throw new Error("Unable to save. Error: ",this._TVG.error());const t=be.FS.readFile("output.gif");if(t.length<6)throw new Error("Unable to save the GIF data. The generated file size is invalid.");const n=new Blob([t],{type:"application/octet-stream"});Te("output.gif",n)}getVersion(){return{THORVG_VERSION:ve}}render(){return V`
2
2
  <canvas class="thorvg" style="width: 100%; height: 100%;" />
3
- `}}ye([se({type:String})],Fe.prototype,"src",void 0),ye([se({type:exports.MimeType})],Fe.prototype,"mimeType",void 0),ye([se({type:Object})],Fe.prototype,"renderConfig",void 0),ye([se({type:Number})],Fe.prototype,"speed",void 0),ye([se({type:Boolean})],Fe.prototype,"autoPlay",void 0),ye([se({type:Number})],Fe.prototype,"count",void 0),ye([se({type:Boolean})],Fe.prototype,"loop",void 0),ye([se({type:Number})],Fe.prototype,"direction",void 0),ye([se()],Fe.prototype,"mode",void 0),ye([se()],Fe.prototype,"intermission",void 0),ye([se({type:Number})],Fe.prototype,"totalFrame",void 0),ye([se({type:Number})],Fe.prototype,"currentFrame",void 0),ye([se({type:Number})],Fe.prototype,"currentState",void 0),ye([se({type:Float32Array})],Fe.prototype,"size",null),Fe=ye([(e=>(t,r)=>{void 0!==r?r.addInitializer((()=>{customElements.define(e,t)})):customElements.define(e,t)})("lottie-player")],Fe);var Re=Object.freeze({__proto__:null});exports.LottiePlayer=Fe;
3
+ `}}ye([se({type:String})],Be.prototype,"src",void 0),ye([se({type:exports.MimeType})],Be.prototype,"mimeType",void 0),ye([se({type:Object})],Be.prototype,"renderConfig",void 0),ye([se({type:Number})],Be.prototype,"speed",void 0),ye([se({type:Boolean})],Be.prototype,"autoPlay",void 0),ye([se({type:Number})],Be.prototype,"count",void 0),ye([se({type:Boolean})],Be.prototype,"loop",void 0),ye([se({type:Number})],Be.prototype,"direction",void 0),ye([se()],Be.prototype,"mode",void 0),ye([se()],Be.prototype,"intermission",void 0),ye([se({type:Number})],Be.prototype,"totalFrame",void 0),ye([se({type:Number})],Be.prototype,"currentFrame",void 0),ye([se({type:Number})],Be.prototype,"currentState",void 0),ye([se({type:Float32Array})],Be.prototype,"size",null),Be=ye([(e=>(r,t)=>{void 0!==t?t.addInitializer((()=>{customElements.define(e,r)})):customElements.define(e,r)})("lottie-player")],Be);var Fe=Object.freeze({__proto__:null});exports.LottiePlayer=Be;
4
4
  //# sourceMappingURL=lottie-player.cjs.js.map