UNPKG

@thorvg/lottie-player

Version:

A web lottie player using ThorVG as a renderer

1 lines 82.4 kB
const t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,r=Symbol(),n=new WeakMap;let a=class{constructor(t,e,n){if(this._$cssResult$=!0,n!==r)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const r=this.t;if(e&&void 0===t){const e=void 0!==r&&1===r.length;e&&(t=n.get(r)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&n.set(r,t))}return t}toString(){return this.cssText}};const i=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const r of t.cssRules)e+=r.cssText;return(t=>new a("string"==typeof t?t:t+"",void 0,r))(e)})(t):t,{is:o,defineProperty:s,getOwnPropertyDescriptor:l,getOwnPropertyNames:u,getOwnPropertySymbols:c,getPrototypeOf:h}=Object,d=globalThis,f=d.trustedTypes,p=f?f.emptyScript:"",m=d.reactiveElementPolyfillSupport,b=(t,e)=>t,v={toAttribute(t,e){switch(e){case Boolean:t=t?p:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let r=t;switch(e){case Boolean:r=null!==t;break;case Number:r=null===t?null:Number(t);break;case Object:case Array:try{r=JSON.parse(t)}catch(t){r=null}}return r}},y=(t,e)=>!o(t,e),w={attribute:!0,type:String,converter:v,reflect:!1,useDefault:!1,hasChanged:y};Symbol.metadata??=Symbol("metadata"),d.litPropertyMetadata??=new WeakMap;let g=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=w){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){const r=Symbol(),n=this.getPropertyDescriptor(t,r,e);void 0!==n&&s(this.prototype,t,n)}}static getPropertyDescriptor(t,e,r){const{get:n,set:a}=l(this.prototype,t)??{get(){return this[e]},set(t){this[e]=t}};return{get:n,set(e){const i=n?.call(this);a?.call(this,e),this.requestUpdate(t,i,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??w}static _$Ei(){if(this.hasOwnProperty(b("elementProperties")))return;const t=h(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(b("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(b("properties"))){const t=this.properties,e=[...u(t),...c(t)];for(const r of e)this.createProperty(r,t[r])}const t=this[Symbol.metadata];if(null!==t){const e=litPropertyMetadata.get(t);if(void 0!==e)for(const[t,r]of e)this.elementProperties.set(t,r)}this._$Eh=new Map;for(const[t,e]of this.elementProperties){const r=this._$Eu(t,e);void 0!==r&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const r=new Set(t.flat(1/0).reverse());for(const t of r)e.unshift(i(t))}else void 0!==t&&e.push(i(t));return e}static _$Eu(t,e){const r=e.attribute;return!1===r?void 0:"string"==typeof r?r:"string"==typeof t?t.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(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const r=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((r,n)=>{if(e)r.adoptedStyleSheets=n.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(const e of n){const n=document.createElement("style"),a=t.litNonce;void 0!==a&&n.setAttribute("nonce",a),n.textContent=e.cssText,r.appendChild(n)}})(r,this.constructor.elementStyles),r}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$ET(t,e){const r=this.constructor.elementProperties.get(t),n=this.constructor._$Eu(t,r);if(void 0!==n&&!0===r.reflect){const a=(void 0!==r.converter?.toAttribute?r.converter:v).toAttribute(e,r.type);this._$Em=t,null==a?this.removeAttribute(n):this.setAttribute(n,a),this._$Em=null}}_$AK(t,e){const r=this.constructor,n=r._$Eh.get(t);if(void 0!==n&&this._$Em!==n){const t=r.getPropertyOptions(n),a="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:v;this._$Em=n;const i=a.fromAttribute(e,t.type);this[n]=i??this._$Ej?.get(n)??i,this._$Em=null}}requestUpdate(t,e,r,n=!1,a){if(void 0!==t){const i=this.constructor;if(!1===n&&(a=this[t]),r??=i.getPropertyOptions(t),!((r.hasChanged??y)(a,e)||r.useDefault&&r.reflect&&a===this._$Ej?.get(t)&&!this.hasAttribute(i._$Eu(t,r))))return;this.C(t,e,r)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,e,{useDefault:r,reflect:n,wrapped:a},i){r&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,i??e??this[t]),!0!==a||void 0!==i)||(this._$AL.has(t)||(this.hasUpdated||r||(e=void 0),this._$AL.set(t,e)),!0===n&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,e]of this._$Ep)this[t]=e;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[e,r]of t){const{wrapped:t}=r,n=this[e];!0!==t||this._$AL.has(e)||void 0===n||this.C(e,void 0,r,n)}}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(t=>t.hostUpdate?.()),this.update(e)):this._$EM()}catch(e){throw t=!1,this._$EM(),e}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(t){}firstUpdated(t){}};g.elementStyles=[],g.shadowRootOptions={mode:"open"},g[b("elementProperties")]=new Map,g[b("finalized")]=new Map,m?.({ReactiveElement:g}),(d.reactiveElementVersions??=[]).push("2.1.2");const $={attribute:!0,type:String,converter:v,reflect:!1,hasChanged:y},_=(t=$,e,r)=>{const{kind:n,metadata:a}=r;let i=globalThis.litPropertyMetadata.get(a);if(void 0===i&&globalThis.litPropertyMetadata.set(a,i=new Map),"setter"===n&&((t=Object.create(t)).wrapped=!0),i.set(r.name,t),"accessor"===n){const{name:n}=r;return{set(r){const a=e.get.call(this);e.set.call(this,r),this.requestUpdate(n,a,t,!0,r)},init(e){return void 0!==e&&this.C(n,void 0,t,e),e}}}if("setter"===n){const{name:n}=r;return function(r){const a=this[n];e.call(this,r),this.requestUpdate(n,a,t,!0,r)}}throw Error("Unsupported decorator location: "+n)};function A(t){return(e,r)=>"object"==typeof r?_(t,e,r):((t,e,r)=>{const n=e.hasOwnProperty(r);return e.constructor.createProperty(r,t),n?Object.getOwnPropertyDescriptor(e,r):void 0})(t,e,r)}const x=globalThis,S=t=>t,C=x.trustedTypes,E=C?C.createPolicy("lit-html",{createHTML:t=>t}):void 0,k="$lit$",T=`lit$${Math.random().toFixed(9).slice(2)}$`,O="?"+T,z=`<${O}>`,P=document,B=()=>P.createComment(""),R=t=>null===t||"object"!=typeof t&&"function"!=typeof t,D=Array.isArray,M="[ \t\n\f\r]",U=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,F=/-->/g,L=/>/g,N=RegExp(`>|${M}(?:([^\\s"'>=/]+)(${M}*=${M}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),j=/'/g,V=/"/g,I=/^(?:script|style|textarea|title)$/i,G=(t,...e)=>({_$litType$:1,strings:t,values:e}),H=Symbol.for("lit-noChange"),W=Symbol.for("lit-nothing"),q=new WeakMap,K=P.createTreeWalker(P,129);function Z(t,e){if(!D(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==E?E.createHTML(e):e}const Y=(t,e)=>{const r=t.length-1,n=[];let a,i=2===e?"<svg>":3===e?"<math>":"",o=U;for(let e=0;e<r;e++){const r=t[e];let s,l,u=-1,c=0;for(;c<r.length&&(o.lastIndex=c,l=o.exec(r),null!==l);)c=o.lastIndex,o===U?"!--"===l[1]?o=F:void 0!==l[1]?o=L:void 0!==l[2]?(I.test(l[2])&&(a=RegExp("</"+l[2],"g")),o=N):void 0!==l[3]&&(o=N):o===N?">"===l[0]?(o=a??U,u=-1):void 0===l[1]?u=-2:(u=o.lastIndex-l[2].length,s=l[1],o=void 0===l[3]?N:'"'===l[3]?V:j):o===V||o===j?o=N:o===F||o===L?o=U:(o=N,a=void 0);const h=o===N&&t[e+1].startsWith("/>")?" ":"";i+=o===U?r+z:u>=0?(n.push(s),r.slice(0,u)+k+r.slice(u)+T+h):r+T+(-2===u?e:h)}return[Z(t,i+(t[r]||"<?>")+(2===e?"</svg>":3===e?"</math>":"")),n]};class X{constructor({strings:t,_$litType$:e},r){let n;this.parts=[];let a=0,i=0;const o=t.length-1,s=this.parts,[l,u]=Y(t,e);if(this.el=X.createElement(l,r),K.currentNode=this.el.content,2===e||3===e){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(n=K.nextNode())&&s.length<o;){if(1===n.nodeType){if(n.hasAttributes())for(const t of n.getAttributeNames())if(t.endsWith(k)){const e=u[i++],r=n.getAttribute(t).split(T),o=/([.?@])?(.*)/.exec(e);s.push({type:1,index:a,name:o[2],strings:r,ctor:"."===o[1]?rt:"?"===o[1]?nt:"@"===o[1]?at:et}),n.removeAttribute(t)}else t.startsWith(T)&&(s.push({type:6,index:a}),n.removeAttribute(t));if(I.test(n.tagName)){const t=n.textContent.split(T),e=t.length-1;if(e>0){n.textContent=C?C.emptyScript:"";for(let r=0;r<e;r++)n.append(t[r],B()),K.nextNode(),s.push({type:2,index:++a});n.append(t[e],B())}}}else if(8===n.nodeType)if(n.data===O)s.push({type:2,index:a});else{let t=-1;for(;-1!==(t=n.data.indexOf(T,t+1));)s.push({type:7,index:a}),t+=T.length-1}a++}}static createElement(t,e){const r=P.createElement("template");return r.innerHTML=t,r}}function J(t,e,r=t,n){if(e===H)return e;let a=void 0!==n?r._$Co?.[n]:r._$Cl;const i=R(e)?void 0:e._$litDirective$;return a?.constructor!==i&&(a?._$AO?.(!1),void 0===i?a=void 0:(a=new i(t),a._$AT(t,r,n)),void 0!==n?(r._$Co??=[])[n]=a:r._$Cl=a),void 0!==a&&(e=J(t,a._$AS(t,e.values),a,n)),e}class Q{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:e},parts:r}=this._$AD,n=(t?.creationScope??P).importNode(e,!0);K.currentNode=n;let a=K.nextNode(),i=0,o=0,s=r[0];for(;void 0!==s;){if(i===s.index){let e;2===s.type?e=new tt(a,a.nextSibling,this,t):1===s.type?e=new s.ctor(a,s.name,s.strings,this,t):6===s.type&&(e=new it(a,this,t)),this._$AV.push(e),s=r[++o]}i!==s?.index&&(a=K.nextNode(),i++)}return K.currentNode=P,n}p(t){let e=0;for(const r of this._$AV)void 0!==r&&(void 0!==r.strings?(r._$AI(t,r,e),e+=r.strings.length-2):r._$AI(t[e])),e++}}class tt{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,r,n){this.type=2,this._$AH=W,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=r,this.options=n,this._$Cv=n?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t?.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=J(this,t,e),R(t)?t===W||null==t||""===t?(this._$AH!==W&&this._$AR(),this._$AH=W):t!==this._$AH&&t!==H&&this._(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):(t=>D(t)||"function"==typeof t?.[Symbol.iterator])(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==W&&R(this._$AH)?this._$AA.nextSibling.data=t:this.T(P.createTextNode(t)),this._$AH=t}$(t){const{values:e,_$litType$:r}=t,n="number"==typeof r?this._$AC(t):(void 0===r.el&&(r.el=X.createElement(Z(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===n)this._$AH.p(e);else{const t=new Q(n,this),r=t.u(this.options);t.p(e),this.T(r),this._$AH=t}}_$AC(t){let e=q.get(t.strings);return void 0===e&&q.set(t.strings,e=new X(t)),e}k(t){D(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let r,n=0;for(const a of t)n===e.length?e.push(r=new tt(this.O(B()),this.O(B()),this,this.options)):r=e[n],r._$AI(a),n++;n<e.length&&(this._$AR(r&&r._$AB.nextSibling,n),e.length=n)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){const e=S(t).nextSibling;S(t).remove(),t=e}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class et{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,r,n,a){this.type=1,this._$AH=W,this._$AN=void 0,this.element=t,this.name=e,this._$AM=n,this.options=a,r.length>2||""!==r[0]||""!==r[1]?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=W}_$AI(t,e=this,r,n){const a=this.strings;let i=!1;if(void 0===a)t=J(this,t,e,0),i=!R(t)||t!==this._$AH&&t!==H,i&&(this._$AH=t);else{const n=t;let o,s;for(t=a[0],o=0;o<a.length-1;o++)s=J(this,n[r+o],e,o),s===H&&(s=this._$AH[o]),i||=!R(s)||s!==this._$AH[o],s===W?t=W:t!==W&&(t+=(s??"")+a[o+1]),this._$AH[o]=s}i&&!n&&this.j(t)}j(t){t===W?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}}class rt extends et{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===W?void 0:t}}class nt extends et{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==W)}}class at extends et{constructor(t,e,r,n,a){super(t,e,r,n,a),this.type=5}_$AI(t,e=this){if((t=J(this,t,e,0)??W)===H)return;const r=this._$AH,n=t===W&&r!==W||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,a=t!==W&&(r===W||n);n&&this.element.removeEventListener(this.name,this,r),a&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class it{constructor(t,e,r){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(t){J(this,t)}}const ot=x.litHtmlPolyfillSupport;ot?.(X,tt),(x.litHtmlVersions??=[]).push("3.3.2");const st=globalThis;class lt extends g{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=((t,e,r)=>{const n=r?.renderBefore??e;let a=n._$litPart$;if(void 0===a){const t=r?.renderBefore??null;n._$litPart$=a=new tt(e.insertBefore(B(),t),t,void 0,r??{})}return a._$AI(t),a})(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return H}}lt._$litElement$=!0,lt.finalized=!0,st.litElementHydrateSupport?.({LitElement:lt});const ut=st.litElementPolyfillSupport;function ct(t,e,r,n){var a,i=arguments.length,o=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,n);else for(var s=t.length-1;s>=0;s--)(a=t[s])&&(o=(i<3?a(o):i>3?a(e,r,o):a(e,r))||o);return i>3&&o&&Object.defineProperty(e,r,o),o}ut?.({LitElement:lt}),(st.litElementVersions??=[]).push("4.2.2");let ht=null,dt=!1;var ft=function(t){return t.JSON="json",t.LOT="lot",t.JPG="jpg",t.PNG="png",t.SVG="svg",t}({});const pt=t=>new Promise(e=>setTimeout(e,t));let mt="idle";class bt extends lt{src;wasmUrl;fileType="json";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])}get dpr(){return!1===this.config?.enableDevicePixelRatio?1:1+.75*(window.devicePixelRatio-1)}TVG=null;canvas;config;_imageData;_beginTime=Date.now();_counter=1;_timer;_observer;_observable=!1;_assetResolverCallback;_assetResolverData;async _init(){if(dt)for(;!ht;)await pt(100);if(ht||(dt=!0,ht=await async function(t={}){var e,r=t,n=!!globalThis.window,a=!!globalThis.WorkerGlobalScope,i=globalThis.process?.versions?.node&&"renderer"!=globalThis.process?.type;if(i){const{createRequire:t}=await Promise.resolve().then(function(){return wt});var o=t(import.meta.url)}var s,l,u=(t,e)=>{throw e},c=import.meta.url,h="";if(i){var d=o("fs");c.startsWith("file:")&&(h=o("path").dirname(o("url").fileURLToPath(c))+"/"),l=t=>(t=z(t)?new URL(t):t,d.readFileSync(t)),s=async t=>(t=z(t)?new URL(t):t,d.readFileSync(t,void 0)),process.argv.slice(2),u=(t,e)=>{throw process.exitCode=t,e}}else if(n||a){try{h=new URL(".",c).href}catch{}a&&(l=t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}),s=async t=>{if(z(t))return new Promise((e,r)=>{var n=new XMLHttpRequest;n.open("GET",t,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?e(n.response):r(n.status)},n.onerror=r,n.send(null)});var e=await fetch(t,{credentials:"same-origin"});if(e.ok)return e.arrayBuffer();throw Error(e.status+" : "+e.url)}}var f,p,m,b,v,y,w,g,$,_,A,x,S,C,E,k=function(){}.bind(),T=function(){}.bind(),O=!1,z=t=>t.startsWith("file://"),P=!1;function B(){var t=on.buffer;v=new Int8Array(t),w=new Int16Array(t),y=new Uint8Array(t),g=new Uint16Array(t),$=new Int32Array(t),_=new Uint32Array(t),A=new Float32Array(t),x=new Float64Array(t),S=new BigInt64Array(t),C=new BigUint64Array(t)}function R(t){throw r.onAbort?.(t),T(t="Aborted("+t+")"),O=!0,t=new WebAssembly.RuntimeError(t+". Build with -sASSERTIONS for more info."),b?.(t),t}class D{name="ExitStatus";constructor(t){this.message=`Program terminated with exit(${t})`,this.status=t}}var M=t=>{for(;0<t.length;)t.shift()(r)},U=[],F=[],L=()=>{var t=r.preRun.shift();F.push(t)},N=!0,j=new TextDecoder,V=(t,e,r,n)=>{if(r=e+r,n)return r;for(;t[e]&&!(e>=r);)++e;return e},I=(t,e,r)=>t?j.decode(y.subarray(t,V(y,t,e,r))):"",G=t=>{for(var e="";;){var r=y[t++];if(!r)return e;e+=String.fromCharCode(r)}},H={},W={},q={},K=class extends Error{constructor(t){super(t),this.name="BindingError"}},Z=t=>{throw new K(t)};function Y(t,e,r={}){return function(t,e,r={}){var n=e.name;if(!t)throw new K(`type "${n}" must have a positive integer typeid pointer`);if(W.hasOwnProperty(t)){if(r.xc)return;throw new K(`Cannot register type '${n}' twice`)}W[t]=e,delete q[t],H.hasOwnProperty(t)&&(e=H[t],delete H[t],e.forEach(t=>t()))}(t,e,r)}var X=(t,e,r)=>{switch(e){case 1:return r?t=>v[t]:t=>y[t];case 2:return r?t=>w[t>>1]:t=>g[t>>1];case 4:return r?t=>$[t>>2]:t=>_[t>>2];case 8:return r?t=>S[t>>3]:t=>C[t>>3];default:throw new TypeError(`invalid integer width (${e}): ${t}`)}},J=t=>{throw new K(t.za.Na.Ka.name+" instance already deleted")},Q=!1,tt=()=>{},et=t=>globalThis.FinalizationRegistry?(Q=new FinalizationRegistry(t=>{--(t=t.za).count.value,0===t.count.value&&(t.Za?t.cb.qb(t.Za):t.Na.Ka.qb(t.La))}),et=t=>{var e=t.za;return e.Za&&Q.register(t,{za:e},t),t},tt=t=>{Q.unregister(t)},et(t)):(et=t=>t,t);function rt(){}var nt=(t,e)=>Object.defineProperty(e,"name",{value:t}),at={},it=(t,e,r)=>{if(void 0===t[e].Ya){var n=t[e];t[e]=function(...n){if(!t[e].Ya.hasOwnProperty(n.length))throw new K(`Function '${r}' called with an invalid number of arguments (${n.length}) - expects one of (${t[e].Ya})!`);return t[e].Ya[n.length].apply(this,n)},t[e].Ya=[],t[e].Ya[n.yb]=n}},ot=(t,e,n)=>{if(r.hasOwnProperty(t)){if(void 0===n||void 0!==r[t].Ya&&void 0!==r[t].Ya[n])throw new K(`Cannot register public name '${t}' twice`);if(it(r,t,t),r[t].Ya.hasOwnProperty(n))throw new K(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`);r[t].Ya[n]=e}else r[t]=e,r[t].yb=n};function st(t,e,r,n,a,i,o,s){this.name=t,this.constructor=e,this.vb=r,this.qb=n,this.ab=a,this.tc=i,this.Db=o,this.qc=s,this.Dc=[]}var lt=(t,e,r)=>{for(;e!==r;){if(!e.Db)throw new K(`Expected null or instance of ${r.name}, got an instance of ${e.name}`);t=e.Db(t),e=e.ab}return t},ut=t=>{if(null===t)return"null";var e=typeof t;return"object"===e||"array"===e||"function"===e?t.toString():""+t};function ct(t,e){if(null===e){if(this.Mb)throw new K(`null is not a valid ${this.name}`);return 0}if(!e.za)throw new K(`Cannot pass "${ut(e)}" as a ${this.name}`);if(!e.za.La)throw new K(`Cannot pass deleted object as a pointer of type ${this.name}`);return lt(e.za.La,e.za.Na.Ka,this.Ka)}function ht(t,e){if(null===e){if(this.Mb)throw new K(`null is not a valid ${this.name}`);if(this.Gb){var r=this.Ec();return null!==t&&t.push(this.qb,r),r}return 0}if(!e||!e.za)throw new K(`Cannot pass "${ut(e)}" as a ${this.name}`);if(!e.za.La)throw new K(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.Fb&&e.za.Na.Fb)throw new K(`Cannot convert argument of type ${e.za.cb?e.za.cb.name:e.za.Na.name} to parameter type ${this.name}`);if(r=lt(e.za.La,e.za.Na.Ka,this.Ka),this.Gb){if(void 0===e.za.Za)throw new K("Passing raw pointer to smart pointer is illegal");switch(this.Gc){case 0:if(e.za.cb!==this)throw new K(`Cannot convert argument of type ${e.za.cb?e.za.cb.name:e.za.Na.name} to parameter type ${this.name}`);r=e.za.Za;break;case 1:r=e.za.Za;break;case 2:if(e.za.cb===this)r=e.za.Za;else{var n=e.clone();r=this.Fc(r,Dt(()=>n.delete())),null!==t&&t.push(this.qb,r)}break;default:throw new K("Unsupporting sharing policy")}}return r}function dt(t,e){if(null===e){if(this.Mb)throw new K(`null is not a valid ${this.name}`);return 0}if(!e.za)throw new K(`Cannot pass "${ut(e)}" as a ${this.name}`);if(!e.za.La)throw new K(`Cannot pass deleted object as a pointer of type ${this.name}`);if(e.za.Na.Fb)throw new K(`Cannot convert argument of type ${e.za.Na.name} to parameter type ${this.name}`);return lt(e.za.La,e.za.Na.Ka,this.Ka)}function ft(t){return this.$a(_[t>>2])}var pt=(t,e,r)=>e===r?t:void 0===r.ab||null===(t=pt(t,e,r.ab))?null:r.qc(t),mt={},bt=class extends Error{constructor(t){super(t),this.name="InternalError"}},vt=(t,e)=>{if(!e.Na||!e.La)throw new bt("makeClassHandle requires ptr and ptrType");if(!!e.cb!=!!e.Za)throw new bt("Both smartPtrType and smartPtr must be specified");return e.count={value:1},et(Object.create(t,{za:{value:e,writable:!0}}))};function yt(t,e,r,n,a,i,o,s,l,u,c){this.name=t,this.Ka=e,this.Mb=r,this.Fb=n,this.Gb=a,this.Cc=i,this.Gc=o,this.fc=s,this.Ec=l,this.Fc=u,this.qb=c,a||void 0!==e.ab?this.eb=ht:(this.eb=n?ct:dt,this.fb=null)}var gt=(t,e,n)=>{if(!r.hasOwnProperty(t))throw new bt("Replacing nonexistent public symbol");void 0!==r[t].Ya&&void 0!==n?r[t].Ya[n]=e:(r[t]=e,r[t].yb=n)},$t=(t,e)=>{t=G(t);var r=sn.get(e);if("function"!=typeof r)throw new K(`unknown function pointer with signature ${t}: ${e}`);return r};class _t extends Error{}var At=t=>{t=Fr(t);var e=G(t);return Lr(t),e},xt=(t,e)=>{var r=[],n={};throw e.forEach(function t(e){n[e]||W[e]||(q[e]?q[e].forEach(t):(r.push(e),n[e]=!0))}),new _t(`${t}: `+r.map(At).join([", "]))},St=(t,e,r)=>{function n(e){if((e=r(e)).length!==t.length)throw new bt("Mismatched type converter count");for(var n=0;n<t.length;++n)Y(t[n],e[n])}t.forEach(t=>q[t]=e);var a=Array(e.length),i=[],o=0;for(let[t,r]of e.entries())W.hasOwnProperty(r)?a[t]=W[r]:(i.push(r),H.hasOwnProperty(r)||(H[r]=[]),H[r].push(()=>{a[t]=W[r],++o===i.length&&n(a)}));0===i.length&&n(a)},Ct=(t,e)=>{for(var r=[],n=0;n<t;n++)r.push(_[e+4*n>>2]);return r},Et=t=>{for(;t.length;){var e=t.pop();t.pop()(e)}};function kt(t){for(var e=1;e<t.length;++e)if(null!==t[e]&&void 0===t[e].fb)return!0;return!1}function Tt(t,e,r,n,a,i){var o=e.length;if(2>o)throw new K("argTypes array size mismatch! Must at least get return value and 'this' types!");var s=null!==e[1]&&null!==r,l=kt(e);r=!e[0].dc;var u=e[0],c=e[1];for(n=[t,Z,n,a,Et,u.$a.bind(u),c?.eb.bind(c)],a=2;a<o;++a)n.push((u=e[a]).eb.bind(u));if(!l)for(a=s?1:2;a<e.length;++a)null!==e[a].fb&&n.push(e[a].fb);for(l=kt(e),a=e.length-2,c=[],u=["fn"],s&&u.push("thisWired"),o=0;o<a;++o)c.push(`arg${o}`),u.push(`arg${o}Wired`);c=c.join(","),u=u.join(","),c=`return function (${c}) {\n`,l&&(c+="var destructors = [];\n");var h=l?"destructors":"null",d="humanName throwBindingError invoker fn runDestructors fromRetWire toClassParamWire".split(" ");for(s&&(c+=`var thisWired = toClassParamWire(${h}, this);\n`),o=0;o<a;++o){var f=`toArg${o}Wire`;c+=`var arg${o}Wired = ${f}(${h}, arg${o});\n`,d.push(f)}if(c+=(r||i?"var rv = ":"")+`invoker(${u});\n`,l)c+="runDestructors(destructors);\n";else for(o=s?1:2;o<e.length;++o)i=1===o?"thisWired":"arg"+(o-2)+"Wired",null!==e[o].fb&&(c+=`${i}_dtor(${i});\n`,d.push(`${i}_dtor`));return r&&(c+="var ret = fromRetWire(rv);\nreturn ret;\n"),e=new Function(d,c+"}\n")(...n),nt(t,e)}var Ot=t=>{const e=(t=t.trim()).indexOf("(");return-1===e?t:t.slice(0,e)},zt=[],Pt=[0,1,,1,null,1,!0,1,!1,1],Bt=t=>{9<t&&0===--Pt[t+1]&&(Pt[t]=void 0,zt.push(t))},Rt=t=>{if(!t)throw new K(`Cannot use deleted val. handle = ${t}`);return Pt[t]},Dt=t=>{switch(t){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:const e=zt.pop()||Pt.length;return Pt[e]=t,Pt[e+1]=1,e}},Mt={name:"emscripten::val",$a:t=>{var e=Rt(t);return Bt(t),e},eb:(t,e)=>Dt(e),nb:ft,fb:null},Ut=(t,e)=>{switch(e){case 4:return function(t){return this.$a(A[t>>2])};case 8:return function(t){return this.$a(x[t>>3])};default:throw new TypeError(`invalid float width (${e}): ${t}`)}},Ft=(t,e,r,n)=>{if(!(0<n))return 0;var a=r;n=r+n-1;for(var i=0;i<t.length;++i){var o=t.codePointAt(i);if(127>=o){if(r>=n)break;e[r++]=o}else if(2047>=o){if(r+1>=n)break;e[r++]=192|o>>6,e[r++]=128|63&o}else if(65535>=o){if(r+2>=n)break;e[r++]=224|o>>12,e[r++]=128|o>>6&63,e[r++]=128|63&o}else{if(r+3>=n)break;e[r++]=240|o>>18,e[r++]=128|o>>12&63,e[r++]=128|o>>6&63,e[r++]=128|63&o,i++}}return e[r]=0,r-a},Lt=t=>{for(var e=0,r=0;r<t.length;++r){var n=t.charCodeAt(r);127>=n?e++:2047>=n?e+=2:55296<=n&&57343>=n?(e+=4,++r):e+=3}return e},Nt=new TextDecoder("utf-16le"),jt=(t,e,r)=>Nt.decode(g.subarray(t>>=1,V(g,t,e/2,r))),Vt=(t,e,r)=>{if(r??=2147483647,2>r)return 0;var n=e;r=(r-=2)<2*t.length?r/2:t.length;for(var a=0;a<r;++a)w[e>>1]=t.charCodeAt(a),e+=2;return w[e>>1]=0,e-n},It=t=>2*t.length,Gt=(t,e,r)=>{var n="";t>>=2;for(var a=0;!(a>=e/4);a++){var i=_[t+a];if(!i&&!r)break;n+=String.fromCodePoint(i)}return n},Ht=(t,e,r)=>{if(r??=2147483647,4>r)return 0;var n=e;r=n+r-4;for(var a=0;a<t.length;++a){var i=t.codePointAt(a);if(65535<i&&a++,$[e>>2]=i,(e+=4)+4>r)break}return $[e>>2]=0,e-n},Wt=t=>{for(var e=0,r=0;r<t.length;++r)65535<t.codePointAt(r)&&r++,e+=4;return e},qt=0,Kt=[],Zt=(t,e,r)=>{var n=[];return t=t(n,r),n.length&&(_[e>>2]=Dt(n)),t},Yt={},Xt=t=>{var e=Yt[t];return void 0===e?G(t):e},Jt={},Qt=t=>{p=t,N||0<qt||(r.onExit?.(t),O=!0),u(t,new D(t))},te=t=>{if(!O)try{if(t(),!(N||0<qt))try{p=t=p,Qt(t)}catch(t){t instanceof D||"unwind"==t||u(1,t)}}catch(t){t instanceof D||"unwind"==t||u(1,t)}},ee=t=>{var e=Lt(t)+1,r=nn(e);return Ft(t,y,r,e),r},re=[],ne=[],ae=t=>{if(t)return re[t>>>0]},ie=t=>I(_[t>>2],_[t+4>>2]),oe=t=>{var e=_[t>>2];return t=_[t+4>>2],e?I(e,t):0===t?"":void 0},se=t=>({width:_[t>>2],height:_[t+4>>2],depthOrArrayLayers:_[t+8>>2]}),le=t=>{var e=t+8;return{texture:ae(_[t>>2]),mipLevel:_[t+4>>2],origin:{x:_[e>>2],y:_[e+4>>2],z:_[e+8>>2]},aspect:Pe[_[t+20>>2]]}},ue=(t,e)=>{if(t){for(var r={},n=0;n<t;++n){var a=e+24*n;r[ie(a+4)]=x[a+16>>3]}return r}},ce=t=>t?ae(t):"auto",he=[,"clamp-to-edge","repeat","mirror-repeat"],de=[,"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","src1","one-minus-src1","src1alpha","one-minus-src1alpha"],fe=[,"add","subtract","reverse-subtract","min","max"],pe=["binding-not-used",,"uniform","storage","read-only-storage"],me=[,"never","less","equal","less-equal","greater","not-equal","greater-equal","always"],be=[,"opaque","premultiplied","unpremultiplied","inherit"],ve=[,"none","front","back"],ye=[,"compatibility","core"],we={1:"core-features-and-limits",2:"depth-clip-control",3:"depth32float-stencil8",4:"texture-compression-bc",5:"texture-compression-bc-sliced-3d",6:"texture-compression-etc2",7:"texture-compression-astc",8:"texture-compression-astc-sliced-3d",9:"timestamp-query",10:"indirect-first-instance",11:"shader-f16",12:"rg11b10ufloat-renderable",13:"bgra8unorm-storage",14:"float32-filterable",15:"float32-blendable",16:"clip-distances",17:"dual-source-blending",18:"subgroups",19:"texture-formats-tier1",20:"texture-formats-tier2",21:"primitive-index",327692:"chromium-experimental-unorm16-texture-formats",327693:"chromium-experimental-snorm16-texture-formats",327732:"chromium-experimental-multi-draw-indirect"},ge=[,"nearest","linear"],$e=[,"ccw","cw"],_e=[,"uint16","uint32"],Ae=[,"load","clear"],xe=[,"nearest","linear"],Se=[,"low-power","high-performance"],Ce=[,"srgb","display-p3"],Ee=[,"point-list","line-list","line-strip","triangle-list","triangle-strip"],ke=["binding-not-used",,"filtering","non-filtering","comparison"],Te=[,"keep","zero","replace","invert","increment-clamp","decrement-clamp","increment-wrap","decrement-wrap"],Oe=["binding-not-used",,"write-only","read-only","read-write"],ze=[,"store","discard"],Pe=[,"all","stencil-only","depth-only"],Be=[,"1d","2d","3d"],Re=[,"r8unorm","r8snorm","r8uint","r8sint","r16unorm","r16snorm","r16uint","r16sint","r16float","rg8unorm","rg8snorm","rg8uint","rg8sint","r32float","r32uint","r32sint","rg16unorm","rg16snorm","rg16uint","rg16sint","rg16float","rgba8unorm","rgba8unorm-srgb","rgba8snorm","rgba8uint","rgba8sint","bgra8unorm","bgra8unorm-srgb","rgb10a2uint","rgb10a2unorm","rg11b10ufloat","rgb9e5ufloat","rg32float","rg32uint","rg32sint","rgba16unorm","rgba16snorm","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"],De=["binding-not-used",,"float","unfilterable-float","depth","sint","uint"],Me=[,"1d","2d","2d-array","cube","cube-array","3d"],Ue=[,"standard","extended"],Fe=[,"uint8","uint8x2","uint8x4","sint8","sint8x2","sint8x4","unorm8","unorm8x2","unorm8x4","snorm8","snorm8x2","snorm8x4","uint16","uint16x2","uint16x4","sint16","sint16x2","sint16x4","unorm16","unorm16x2","unorm16x4","snorm16","snorm16x2","snorm16x4","float16","float16x2","float16x4","float32","float32x2","float32x3","float32x4","uint32","uint32x2","uint32x3","uint32x4","sint32","sint32x2","sint32x3","sint32x4","unorm10-10-10-2","unorm8x4-bgra"],Le=[,"vertex","instance"],Ne={undefined:1,unknown:1,destroyed:2},je=t=>-9007199254740992>t||9007199254740992<t?NaN:Number(t),Ve=(t,e)=>{for(var r=0,n=t.length-1;0<=n;n--){var a=t[n];"."===a?t.splice(n,1):".."===a?(t.splice(n,1),r++):r&&(t.splice(n,1),r--)}if(e)for(;r;r--)t.unshift("..");return t},Ie=t=>{var e="/"===t.charAt(0),r="/"===t.slice(-1);return(t=Ve(t.split("/").filter(t=>!!t),!e).join("/"))||e||(t="."),t&&r&&(t+="/"),(e?"/":"")+t},Ge=t=>{var e=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(t).slice(1);return t=e[0],e=e[1],t||e?(e&&=e.slice(0,-1),t+e):"."},He=t=>t&&t.match(/([^\/]+|\/)\/*$/)[1],We=t=>{(We=(()=>{if(i){var t=o("crypto");return e=>t.randomFillSync(e)}return t=>crypto.getRandomValues(t)})())(t)},qe=(...t)=>{for(var e="",r=!1,n=t.length-1;-1<=n&&!r;n--){if("string"!=typeof(r=0<=n?t[n]:Dr.cwd()))throw new TypeError("Arguments to path.resolve must be strings");if(!r)return"";e=r+"/"+e,r="/"===r.charAt(0)}return e=Ve(e.split("/").filter(t=>!!t),!r).join("/"),(r?"/":"")+e||"."},Ke=(t,e)=>{function r(t){for(var e=0;e<t.length&&""===t[e];e++);for(var r=t.length-1;0<=r&&""===t[r];r--);return e>r?[]:t.slice(e,r-e+1)}t=qe(t).slice(1),e=qe(e).slice(1),t=r(t.split("/")),e=r(e.split("/"));for(var n=Math.min(t.length,e.length),a=n,i=0;i<n;i++)if(t[i]!==e[i]){a=i;break}for(n=[],i=a;i<t.length;i++)n.push("..");return(n=n.concat(e.slice(a))).join("/")},Ze=t=>{var e=V(t,0);return j.decode(t.buffer?t.subarray(0,e):new Uint8Array(t.slice(0,e)))},Ye=[],Xe=t=>{var e=Array(Lt(t)+1);return t=Ft(t,e,0,e.length),e.length=t,e},Je=[];function Qe(t,e){Je[t]={input:[],output:[],xb:e},dr(t,tr)}var tr={open(t){var e=Je[t.node.rdev];if(!e)throw new Dr.ya(43);t.tty=e,t.seekable=!1},close(t){t.tty.xb.fsync(t.tty)},fsync(t){t.tty.xb.fsync(t.tty)},read(t,e,r,n){if(!t.tty||!t.tty.xb.ac)throw new Dr.ya(60);for(var a=0,i=0;i<n;i++){try{var o=t.tty.xb.ac(t.tty)}catch(t){throw new Dr.ya(29)}if(void 0===o&&0===a)throw new Dr.ya(6);if(null==o)break;a++,e[r+i]=o}return a&&(t.node.atime=Date.now()),a},write(t,e,r,n){if(!t.tty||!t.tty.xb.Qb)throw new Dr.ya(60);try{for(var a=0;a<n;a++)t.tty.xb.Qb(t.tty,e[r+a])}catch(t){throw new Dr.ya(29)}return n&&(t.node.mtime=t.node.ctime=Date.now()),a}},er={ac(){t:{if(!Ye.length){var t=null;if(i){var e=Buffer.alloc(256),r=0,n=process.stdin.fd;try{r=d.readSync(n,e,0,256)}catch(t){if(!t.toString().includes("EOF"))throw t;r=0}0<r&&(t=e.slice(0,r).toString("utf-8"))}else globalThis.window?.prompt&&null!==(t=window.prompt("Input: "))&&(t+="\n");if(!t){t=null;break t}Ye=Xe(t)}t=Ye.shift()}return t},Qb(t,e){null===e||10===e?(k(Ze(t.output)),t.output=[]):0!=e&&t.output.push(e)},fsync(t){0<t.output?.length&&(k(Ze(t.output)),t.output=[])},ad:()=>({Oc:25856,Qc:5,Nc:191,Pc:35387,Mc:[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]}),bd:()=>0,cd:()=>[24,80]},rr={Qb(t,e){null===e||10===e?(T(Ze(t.output)),t.output=[]):0!=e&&t.output.push(e)},fsync(t){0<t.output?.length&&(T(Ze(t.output)),t.output=[])}},nr={kb:null,Ma:()=>nr.createNode(null,"/",16895,0),createNode(t,e,r,n){if(24576==(61440&r)||Dr.isFIFO(r))throw new Dr.ya(63);return nr.kb||(nr.kb={dir:{node:{hb:nr.Ba.hb,jb:nr.Ba.jb,lookup:nr.Ba.lookup,lb:nr.Ba.lb,rename:nr.Ba.rename,unlink:nr.Ba.unlink,rmdir:nr.Ba.rmdir,readdir:nr.Ba.readdir,symlink:nr.Ba.symlink},stream:{bb:nr.Ca.bb}},file:{node:{hb:nr.Ba.hb,jb:nr.Ba.jb},stream:{bb:nr.Ca.bb,read:nr.Ca.read,write:nr.Ca.write,wb:nr.Ca.wb,Bb:nr.Ca.Bb}},link:{node:{hb:nr.Ba.hb,jb:nr.Ba.jb,readlink:nr.Ba.readlink},stream:{}},Wb:{node:{hb:nr.Ba.hb,jb:nr.Ba.jb},stream:Dr.oc}}),fr((r=Dr.createNode(t,e,r,n)).mode)?(r.Ba=nr.kb.dir.node,r.Ca=nr.kb.dir.stream,r.Da={}):Dr.isFile(r.mode)?(r.Ba=nr.kb.file.node,r.Ca=nr.kb.file.stream,r.Oa=0,r.Da=null):40960==(61440&r.mode)?(r.Ba=nr.kb.link.node,r.Ca=nr.kb.link.stream):8192==(61440&r.mode)&&(r.Ba=nr.kb.Wb.node,r.Ca=nr.kb.Wb.stream),r.atime=r.mtime=r.ctime=Date.now(),t&&(t.Da[e]=r,t.atime=t.mtime=t.ctime=r.atime),r},$c:t=>t.Da?t.Da.subarray?t.Da.subarray(0,t.Oa):new Uint8Array(t.Da):new Uint8Array(0),Ba:{hb(t){var e={};return e.dev=8192==(61440&t.mode)?t.id:1,e.ino=t.id,e.mode=t.mode,e.nlink=1,e.uid=0,e.gid=0,e.rdev=t.rdev,e.size=fr(t.mode)?4096:Dr.isFile(t.mode)?t.Oa:40960==(61440&t.mode)?t.link.length:0,e.atime=new Date(t.atime),e.mtime=new Date(t.mtime),e.ctime=new Date(t.ctime),e.blksize=4096,e.blocks=Math.ceil(e.size/e.blksize),e},jb(t,e){for(var r of["mode","atime","mtime","ctime"])null!=e[r]&&(t[r]=e[r]);void 0!==e.size&&t.Oa!=(e=e.size)&&(0==e?(t.Da=null,t.Oa=0):(r=t.Da,t.Da=new Uint8Array(e),r&&t.Da.set(r.subarray(0,Math.min(e,t.Oa))),t.Oa=e))},lookup(){throw nr.Jb||(nr.Jb=new Dr.ya(44),nr.Jb.stack="<generic error, no stack>"),nr.Jb},lb:(t,e,r,n)=>nr.createNode(t,e,r,n),rename(t,e,r){try{var n=pr(e,r)}catch(t){}if(n){if(fr(t.mode))for(var a in n.Da)throw new Dr.ya(55);mr(n)}delete t.parent.Da[t.name],e.Da[r]=t,t.name=r,e.ctime=e.mtime=t.parent.ctime=t.parent.mtime=Date.now()},unlink(t,e){delete t.Da[e],t.ctime=t.mtime=Date.now()},rmdir(t,e){var r,n=pr(t,e);for(r in n.Da)throw new Dr.ya(55);delete t.Da[e],t.ctime=t.mtime=Date.now()},readdir:t=>[".","..",...Object.keys(t.Da)],symlink:(t,e,r)=>((t=nr.createNode(t,e,41471,0)).link=r,t),readlink(t){if(40960!=(61440&t.mode))throw new Dr.ya(28);return t.link}},Ca:{read(t,e,r,n,a){var i=t.node.Da;if(a>=t.node.Oa)return 0;if(8<(t=Math.min(t.node.Oa-a,n))&&i.subarray)e.set(i.subarray(a,a+t),r);else for(n=0;n<t;n++)e[r+n]=i[a+n];return t},write(t,e,r,n,a,i){if(e.buffer===v.buffer&&(i=!1),!n)return 0;if((t=t.node).mtime=t.ctime=Date.now(),e.subarray&&(!t.Da||t.Da.subarray)){if(i)return t.Da=e.subarray(r,r+n),t.Oa=n;if(0===t.Oa&&0===a)return t.Da=e.slice(r,r+n),t.Oa=n;if(a+n<=t.Oa)return t.Da.set(e.subarray(r,r+n),a),n}var o=t.Da?t.Da.length:0;if(o>=(i=a+n)||(i=Math.max(i,o*(1048576>o?2:1.125)>>>0),0!=o&&(i=Math.max(i,256)),o=t.Da,t.Da=new Uint8Array(i),0<t.Oa&&t.Da.set(o.subarray(0,t.Oa),0)),t.Da.subarray&&e.subarray)t.Da.set(e.subarray(r,r+n),a);else for(i=0;i<n;i++)t.Da[a+i]=e[r+i];return t.Oa=Math.max(t.Oa,a+n),n},bb(t,e,r){if(1===r?e+=t.position:2===r&&Dr.isFile(t.node.mode)&&(e+=t.node.Oa),0>e)throw new Dr.ya(28);return e},wb(t,e,r,n,a){if(!Dr.isFile(t.node.mode))throw new Dr.ya(43);if(t=t.node.Da,2&a||!t||t.buffer!==v.buffer){if(n=!0,R(),!(a=void 0))throw new Dr.ya(48);t&&((0<r||r+e<t.length)&&(t=t.subarray?t.subarray(r,r+e):Array.prototype.slice.call(t,r,r+e)),v.set(t,a))}else n=!1,a=t.byteOffset;return{La:a,Ic:n}},Bb:(t,e,r,n)=>(nr.Ca.write(t,e,0,n,r,!1),0)}},ar=(t,e)=>{var r=0;return t&&(r|=365),e&&(r|=146),r},ir=0,or=null,sr=()=>{if(ir--,r.monitorRunDependencies?.(ir),0==ir&&or){var t=or;or=null,t()}},lr=()=>{ir++,r.monitorRunDependencies?.(ir)},ur=[],cr=async(t,e,r,n,a,i,o,l)=>{var u=e?qe(Ie(t+"/"+e)):t;lr();try{var c=r;"string"==typeof r&&(c=await(async t=>(t=await s(t),new Uint8Array(t)))(r)),c=await(async(t,e)=>{for(var r of("undefined"!=typeof Browser&&hr(),ur))if(r.canHandle(e))return r.handle(t,e);return t})(c,u),l?.(),i||br(t,e,c,n,a,o)}finally{sr()}};function hr(){var t,e,n;Dr.Lb=!0,t??=r.stdin,e??=r.stdout,n??=r.stderr,t?Dr.pb("/dev","stdin",t):Dr.symlink("/dev/tty","/dev/stdin"),e?Dr.pb("/dev","stdout",null,e):Dr.symlink("/dev/tty","/dev/stdout"),n?Dr.pb("/dev","stderr",null,n):Dr.symlink("/dev/tty1","/dev/stderr"),Dr.open("/dev/stdin",0),Dr.open("/dev/stdout",1),Dr.open("/dev/stderr",1)}function dr(t,e){Dr.Zb[t]={Ca:e}}function fr(t){return 16384==(61440&t)}function pr(t,e){var r=fr(t.mode)?(r=_r(t,"x"))?r:t.Ba.lookup?0:2:54;if(r)throw new Dr.ya(r);for(r=Dr.mb[wr(t.id,e)];r;r=r.ub)if(r.parent.id===t.id&&r.name===e)return r;return Dr.lookup(t,e)}function mr(t){var e=wr(t.parent.id,t.name);if(Dr.mb[e]===t)Dr.mb[e]=t.ub;else for(e=Dr.mb[e];e;){if(e.ub===t){e.ub=t.ub;break}e=e.ub}}function br(t,e,r,n,a,i){var o=e;if(t&&(t="string"==typeof t?t:yr(t),o=e?Ie(t+"/"+e):t),t=ar(n,a),o=Dr.create(o,t),r){if("string"==typeof r){for(e=Array(r.length),n=0,a=r.length;n<a;++n)e[n]=r.charCodeAt(n);r=e}Dr.chmod(o,146|t),e=Dr.open(o,577),Dr.write(e,r,0,r.length,0,i),Dr.close(e),Dr.chmod(o,t)}}function vr(t,e={}){if(!t)throw new Dr.ya(44);e.Eb??(e.Eb=!0),"/"===t.charAt(0)||(t=Dr.cwd()+"/"+t);var r=0;t:for(;40>r;r++){t=t.split("/").filter(t=>!!t);for(var n=Dr.root,a="/",i=0;i<t.length;i++){var o=i===t.length-1;if(o&&e.parent)break;if("."!==t[i])if(".."===t[i]){if(a=Ge(a),Dr.Nb(n)){t=a+"/"+t.slice(i+1).join("/"),r--;continue t}n=n.parent}else{a=Ie(a+"/"+t[i]);try{n=pr(n,t[i])}catch(t){if(44===t?.sb&&o&&e.Ac)return{path:a};throw t}if(!n.ib||o&&!e.Eb||(n=n.ib.root),40960==(61440&n.mode)&&(!o||e.gb)){if(!n.Ba.readlink)throw new Dr.ya(52);"/"===(n=n.Ba.readlink(n)).charAt(0)||(n=Ge(a)+"/"+n),t=n+"/"+t.slice(i+1).join("/");continue t}}}return{path:a,node:n}}throw new Dr.ya(32)}function yr(t){for(var e;;){if(Dr.Nb(t))return t=t.Ma.ec,e?"/"!==t[t.length-1]?`${t}/${e}`:t+e:t;e=e?`${t.name}/${e}`:t.name,t=t.parent}}function wr(t,e){for(var r=0,n=0;n<e.length;n++)r=(r<<5)-r+e.charCodeAt(n)|0;return(t+r>>>0)%Dr.mb.length}function gr(t){var e=wr(t.parent.id,t.name);t.ub=Dr.mb[e],Dr.mb[e]=t}function $r(t){var e=["r","w","rw"][3&t];return 512&t&&(e+="w"),e}function _r(t,e){return Dr.bc?0:!e.includes("r")||292&t.mode?e.includes("w")&&!(146&t.mode)||e.includes("x")&&!(73&t.mode)?2:0:2}function Ar(t,e){if(!fr(t.mode))return 54;try{return pr(t,e),20}catch(t){}return _r(t,"wx")}function xr(t,e,r){try{var n=pr(t,e)}catch(t){return t.sb}if(t=_r(t,"wx"))return t;if(r){if(!fr(n.mode))return 54;if(Dr.Nb(n)||yr(n)===Dr.cwd())return 10}else if(fr(n.mode))return 31;return 0}function Sr(t,e){if(!t)throw new Dr.ya(e);return t}function Cr(t){if(!(t=Dr.wc(t)))throw new Dr.ya(8);return t}function Er(t,e=-1){if(t=Object.assign(new Dr.lc,t),-1==e)t:{for(e=0;e<=Dr.nc;e++)if(!Dr.streams[e])break t;throw new Dr.ya(33)}return t.fd=e,Dr.streams[e]=t}function kr(t,e,r){var n=t?.Ca.jb;t=n?t:e,n??=e.Ba.jb,Sr(n,63),n(t,r)}function Tr(t){var e=[];for(t=[t];t.length;){var r=t.pop();e.push(r),t.push(...r.Ab)}return e}function Or(t){var e={Lc:4096,Xc:4096,blocks:1e6,Kc:5e5,Jc:5e5,files:Dr.Pb,Vc:Dr.Pb-1,Yc:42,flags:2,gd:255};return t.Ba.ic&&Object.assign(e,t.Ba.ic(t.Ma.Bc.root)),e}function zr(t,e,r){return void 0===r&&(r=e,e=438),Dr.lb(t,8192|e,r)}function Pr(t,e,r,n){kr(t,e,{mode:4095&r|-4096&e.mode,ctime:Date.now(),$b:n})}function Br(t,e,r){if(fr(e.mode))throw new Dr.ya(31);if(!Dr.isFile(e.mode))throw new Dr.ya(28);var n=_r(e,"w");if(n)throw new Dr.ya(n);kr(t,e,{size:r,timestamp:Date.now()})}function Rr(t){if(!(t.yc||t.zc||t.link||t.Da))if(globalThis.XMLHttpRequest)R("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.");else try{t.Da=l(t.url)}catch(t){throw new Dr.ya(29)}}var Dr={root:null,Ab:[],Zb:{},streams:[],Pb:1,mb:null,Xb:"/",Lb:!1,bc:!0,sc:null,Hb:0,hc:{},ya:class{name="ErrnoError";constructor(t){this.sb=t}},lc:class{ob={};node=null;get object(){return this.node}set object(t){this.node=t}get flags(){return this.ob.flags}set flags(t){this.ob.flags=t}get position(){return this.ob.position}set position(t){this.ob.position=t}},kc:class{Ba={};Ca={};ib=null;constructor(t,e,r,n){t||=this,this.parent=t,this.Ma=t.Ma,this.id=Dr.Pb++,this.name=e,this.mode=r,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return!(365&~this.mode)}set read(t){t?this.mode|=365:this.mode&=-366}get write(){return!(146&~this.mode)}set write(t){t?this.mode|=146:this.mode&=-147}get zc(){return fr(this.mode)}get yc(){return 8192==(61440&this.mode)}},createNode:(t,e,r,n)=>(gr(t=new Dr.kc(t,e,r,n)),t),Nb:t=>t===t.parent,isFile:t=>32768==(61440&t),isFIFO:t=>4096==(61440&t),isSocket:t=>!(49152&~t),nc:4096,wc:t=>Dr.streams[t],Uc:(t,e=-1)=>(t=Er(t,e),t.Ca?.Tc?.(t),t),oc:{open(t){t.Ca=Dr.uc(t.node.rdev).Ca,t.Ca.open?.(t)},bb(){throw new Dr.ya(70)}},Ob:t=>t>>8,dd:t=>255&t,tb:(t,e)=>t<<8|e,uc:t=>Dr.Zb[t],jc(t,e){function r(t){return Dr.Hb--,e(t)}function n(t){if(t){if(!n.rc)return n.rc=!0,r(t)}else++o>=i.length&&r(null)}"function"==typeof t&&(e=t,t=!1),Dr.Hb++,1<Dr.Hb&&T(`warning: ${Dr.Hb} FS.syncfs operations in flight at once, probably just doing extra work`);var a,i=Tr(Dr.root.Ma),o=0;for(a of i)a.type.jc?a.type.jc(a,t,n):n(null)},Ma(t,e,r){var n="/"===r;if(n&&Dr.root)throw new Dr.ya(10);if(!n&&r){var a=vr(r,{Eb:!1});if(r=a.path,(a=a.node).ib)throw new Dr.ya(10);if(!fr(a.mode))throw new Dr.ya(54)}return(t=t.Ma(e={type:t,Bc:e,ec:r,Ab:[]})).Ma=e,e.root=t,n?Dr.root=t:a&&(a.ib=e,a.Ma&&a.Ma.Ab.push(e)),t},od(t){if(!(t=vr(t,{Eb:!1})).node.ib)throw new Dr.ya(28);var e=(t=t.node).ib,r=Tr(e);for([,a]of Object.entries(Dr.mb))for(;a;){var n=a.ub;r.includes(a.Ma)&&mr(a);var a=n}t.ib=null,t.Ma.Ab.splice(t.Ma.Ab.indexOf(e),1)},lookup:(t,e)=>t.Ba.lookup(t,e),lb(t,e,r){var n=vr(t,{parent:!0}).node;if(!(t=He(t)))throw new Dr.ya(28);if("."===t||".."===t)throw new Dr.ya(20);var a=Ar(n,t);if(a)throw new Dr.ya(a);if(!n.Ba.lb)throw new Dr.ya(63);return n.Ba.lb(n,t,e,r)},ic:t=>Or(vr(t,{gb:!0}).node),kd:t=>Or(t.node),create:(t,e=438)=>Dr.lb(t,4095&e|32768,0),mkdir:(t,e=511)=>Dr.lb(t,1023&e|16384,0),ed(t,e){var r,n=t.split("/"),a="";for(r of n)if(r){(a||"/"===t.charAt(0))&&(a+="/"),a+=r;try{Dr.mkdir(a,e)}catch(t){if(20!=t.sb)throw t}}},symlink(t,e){if(!qe(t))throw new Dr.ya(44);var r=vr(e,{parent:!0}).node;if(!r)throw new Dr.ya(44);var n=Ar(r,e=He(e));if(n)throw new Dr.ya(n);if(!r.Ba.symlink)throw new Dr.ya(63);return r.Ba.symlink(r,e,t)},rename(t,e){var r=Ge(t),n=Ge(e),a=He(t),i=He(e),o=vr(t,{parent:!0}),s=o.node;if(o=(o=vr(e,{parent:!0})).node,!s||!o)throw new Dr.ya(44);if(s.Ma!==o.Ma)throw new Dr.ya(75);var l=pr(s,a);if("."!==(t=Ke(t,n)).charAt(0))throw new Dr.ya(28);if("."!==(t=Ke(e,r)).charAt(0))throw new Dr.ya(55);try{var u=pr(o,i)}catch(t){}if(l!==u){if(a=xr(s,a,e=fr(l.mode)))throw new Dr.ya(a);if(a=u?xr(o,i,e):Ar(o,i))throw new Dr.ya(a);if(!s.Ba.rename)throw new Dr.ya(63);if(l.ib||u&&u.ib)throw new Dr.ya(10);if(o!==s&&(a=_r(s,"w")))throw new Dr.ya(a);mr(l);try{s.Ba.rename(l,o,i),l.parent=o}catch(t){throw t}finally{gr(l)}}},rmdir(t){var e=vr(t,{parent:!0}).node,r=pr(e,t=He(t)),n=xr(e,t,!0);if(n)throw new Dr.ya(n);if(!e.Ba.rmdir)throw new Dr.ya(63);if(r.ib)throw new Dr.ya(10);e.Ba.rmdir(e,t),mr(r)},readdir:t=>Sr((t=vr(t,{gb:!0}).node).Ba.readdir,54)(t),unlink(t){var e=vr(t,{parent:!0}).node;if(!e)throw new Dr.ya(44);var r=pr(e,t=He(t)),n=xr(e,t,!1);if(n)throw new Dr.ya(n);if(!e.Ba.unlink)throw new Dr.ya(63);if(r.ib)throw new Dr.ya(10);e.Ba.unlink(e,t),mr(r)},readlink(t){if(!(t=vr(t).node))throw new Dr.ya(44);if(!t.Ba.readlink)throw new Dr.ya(28);return t.Ba.readlink(t)},stat:(t,e)=>Sr((t=vr(t,{gb:!e}).node).Ba.hb,63)(t),fstat(t){var e=Cr(t);t=e.node;var r=e.Ca.hb;return e=r?e:t,r??=t.Ba.hb,Sr(r,63),r(e)},lstat:t=>Dr.stat(t,!0),chmod(t,e,r){Pr(null,t="string"==typeof t?vr(t,{gb:!r}).node:t,e,r)},lchmod(t,e){Dr.chmod(t,e,!0)},fchmod(t,e){Pr(t=Cr(t),t.node,e,!1)},chown(t,e,r,n){kr(null,t="string"==typeof t?vr(t,{gb:!n}).node:t,{timestamp:Date.now(),$b:n})},lchown(t,e,r){Dr.chown(t,e,r,!0)},fchown(t){kr(t=Cr(t),t.node,{timestamp:Date.now(),$b:!1})},truncate(t,e){if(0>e)throw new Dr.ya(28);Br(null,t="string"==typeof t?vr(t,{gb:!0}).node:t,e)},Zc(t,e){if(t=Cr(t),0>e||!(2097155&t.flags))throw new Dr.ya(28);Br(t,t.node,e)},pd(t,e,r){Sr((t=vr(t,{gb:!0}).node).Ba.jb,63)(t,{atime:e,mtime:r})},open(t,e,n=438){if(""===t)throw new Dr.ya(44);if("string"==typeof e){var a={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(void 0===a)throw Error(`Unknown file open mode: ${e}`);e=a}if(n=64&e?4095&n|32768:0,"object"==typeof t)a=t;else{var i=t.endsWith("/");a=(t=vr(t,{gb:!(131072&e),Ac:!0})).node,t=t.path}var o=!1;if(64&e)if(a){if(128&e)throw new Dr.ya(20)}else{if(i)throw new Dr.ya(31);a=Dr.lb(t,511|n,0),o=!0}if(!a)throw new Dr.ya(44);if(8192==(61440&a.mode)&&(e&=-513),65536&e&&!fr(a.mode))throw new Dr.ya(54);if(!o&&(i=a?40960==(61440&a.mode)?32:fr(a.mode)&&("r"!==$r(e)||576&e)?31:_r(a,$r(e)):44))throw new Dr.ya(i);return 512&e&&!o&&Dr.truncate(a,0),e&=-131713,(i=Er({node:a,path:yr(a),flags:e,seekable:!0,position:0,Ca:a.Ca,Hc:[],error:!1})).Ca.open&&i.Ca.open(i),o&&Dr.chmod(a,511&n),!r.logReadFiles||1&e||t in Dr.hc||(Dr.hc[t]=1),i},close(t){if(null===t.fd)throw new Dr.ya(8);t.Kb&&(t.Kb=null);try{t.Ca.close&&t.Ca.close(t)}catch(t){throw t}finally{Dr.streams[t.fd]=null}t.fd=null},bb(t,e,r){if(null===t.fd)throw new Dr.ya(8);if(!t.seekable||!t.Ca.bb)throw new Dr.ya(70);if(0!=r&&1!=r&&2!=r)throw new Dr.ya(28);return t.position=t.Ca.bb(t,e,r),t.Hc=[],t.position},read(t,e,r,n,a){if(0>n||0>a)throw new Dr.ya(28);if(null===t.fd)throw new Dr.ya(8);if(1==(2097155&t.flags))throw new Dr.ya(8);if(fr(t.node.mode))throw new Dr.ya(31);if(!t.Ca.read)throw new Dr.ya(28);var i=void 0!==a;if(i){if(!t.seekable)throw new Dr.ya(70)}else a=t.position;return e=t.Ca.read(t,e,r,n,a),i||(t.position+=e),e},write(t,e,r,n,a,i){if(0>n||0>a)throw new Dr.ya(28);if(null===t.fd)throw new Dr.ya(8);if(!(2097155&t.flags))throw new Dr.ya(8);if(fr(t.node.mode))throw new Dr.ya(31);if(!t.Ca.write)throw new Dr.ya(28);t.seekable&&1024&t.flags&&Dr.bb(t,0,2);var o=void 0!==a;if(o){if(!t.seekable)throw new Dr.ya(70)}else a=t.position;return e=t.Ca.write(t,e,r,n,a,i),o||(t.position+=e),e},wb(t,e,r,n,a){if(2&n&&!(2&a)&&2!=(2097155&t.flags))throw new Dr.ya(2);if(1==(2097155&t.flags))throw new Dr.ya(2);if(!t.Ca.wb)throw new Dr.ya(43);if(!e)throw new Dr.ya(28);return t.Ca.wb(t,e,r,n,a)},Bb:(t,e,r,n,a)=>t.Ca.Bb?t.Ca.Bb(t,e,r,n,a):0,cc(t,e,r){if(!t.Ca.cc)throw new Dr.ya(59);return t.Ca.cc(t,e,r)},readFile(t,e={}){e.flags=e.flags||0,e.encoding=e.encoding||"binary","utf8"!==e.encoding&&"binary"!==e.encoding&&R(`Invalid encoding type "${e.encoding}"`);var r=Dr.open(t,e.flags);t=Dr.stat(t).size;var n=new Uint8Array(t);return Dr.read(r,n,0,t,0),"utf8"===e.encoding&&(n=Ze(n)),Dr.close(r),n},writeFile(t,e,r={}){r.flags=r.flags||577,t=Dr.open(t,r.flags,r.mode),"string"==typeof e&&(e=new Uint8Array(Xe(e))),ArrayBuffer.isView(e)?Dr.write(t,e,0,e.byteLength,void 0,r