@thorvg/lottie-player
Version:
A web lottie player using ThorVG as a renderer
1 lines • 81.2 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["lottie-player"]={})}(this,function(e){"use strict";var t="undefined"!=typeof document?document.currentScript:null;const r=globalThis,n=r.ShadowRoot&&(void 0===r.ShadyCSS||r.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,i=Symbol(),o=new WeakMap;let s=class{constructor(e,t,r){if(this._$cssResult$=!0,r!==i)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(n&&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 a=n?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const r of e.cssRules)t+=r.cssText;return(e=>new s("string"==typeof e?e:e+"",void 0,i))(t)})(e):e,{is:c,defineProperty:l,getOwnPropertyDescriptor:h,getOwnPropertyNames:u,getOwnPropertySymbols:d,getPrototypeOf:b}=Object,f=globalThis,p=f.trustedTypes,m=p?p.emptyScript:"",v=f.reactiveElementPolyfillSupport,w=(e,t)=>e,g={toAttribute(e,t){switch(t){case Boolean:e=e?m: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}},y=(e,t)=>!c(e,t),_={attribute:!0,type:String,converter:g,reflect:!1,useDefault:!1,hasChanged:y};Symbol.metadata??=Symbol("metadata"),f.litPropertyMetadata??=new WeakMap;let $=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=_){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),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:i}=h(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get:n,set(t){const o=n?.call(this);i?.call(this,t),this.requestUpdate(e,o,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??_}static _$Ei(){if(this.hasOwnProperty(w("elementProperties")))return;const e=b(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(w("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(w("properties"))){const e=this.properties,t=[...u(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(a(e))}else void 0!==e&&t.push(a(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,t)=>{if(n)e.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const n of t){const t=document.createElement("style"),i=r.litNonce;void 0!==i&&t.setAttribute("nonce",i),t.textContent=n.cssText,e.appendChild(t)}})(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)}_$ET(e,t){const r=this.constructor.elementProperties.get(e),n=this.constructor._$Eu(e,r);if(void 0!==n&&!0===r.reflect){const i=(void 0!==r.converter?.toAttribute?r.converter:g).toAttribute(t,r.type);this._$Em=e,null==i?this.removeAttribute(n):this.setAttribute(n,i),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),i="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:g;this._$Em=n;const o=i.fromAttribute(t,e.type);this[n]=o??this._$Ej?.get(n)??o,this._$Em=null}}requestUpdate(e,t,r,n=!1,i){if(void 0!==e){const o=this.constructor;if(!1===n&&(i=this[e]),r??=o.getPropertyOptions(e),!((r.hasChanged??y)(i,t)||r.useDefault&&r.reflect&&i===this._$Ej?.get(e)&&!this.hasAttribute(o._$Eu(e,r))))return;this.C(e,t,r)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(e,t,{useDefault:r,reflect:n,wrapped:i},o){r&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,o??t??this[e]),!0!==i||void 0!==o)||(this._$AL.has(e)||(this.hasUpdated||r||(t=void 0),this._$AL.set(e,t)),!0===n&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){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){const{wrapped:e}=r,n=this[t];!0!==e||this._$AL.has(t)||void 0===n||this.C(t,void 0,r,n)}}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._$EM()}catch(t){throw e=!1,this._$EM(),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)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(e){}firstUpdated(e){}};$.elementStyles=[],$.shadowRootOptions={mode:"open"},$[w("elementProperties")]=new Map,$[w("finalized")]=new Map,v?.({ReactiveElement:$}),(f.reactiveElementVersions??=[]).push("2.1.2");const A={attribute:!0,type:String,converter:g,reflect:!1,hasChanged:y},E=(e=A,t,r)=>{const{kind:n,metadata:i}=r;let o=globalThis.litPropertyMetadata.get(i);if(void 0===o&&globalThis.litPropertyMetadata.set(i,o=new Map),"setter"===n&&((e=Object.create(e)).wrapped=!0),o.set(r.name,e),"accessor"===n){const{name:n}=r;return{set(r){const i=t.get.call(this);t.set.call(this,r),this.requestUpdate(n,i,e,!0,r)},init(t){return void 0!==t&&this.C(n,void 0,e,t),t}}}if("setter"===n){const{name:n}=r;return function(r){const i=this[n];t.call(this,r),this.requestUpdate(n,i,e,!0,r)}}throw Error("Unsupported decorator location: "+n)};function S(e){return(t,r)=>"object"==typeof r?E(e,t,r):((e,t,r)=>{const n=t.hasOwnProperty(r);return t.constructor.createProperty(r,e),n?Object.getOwnPropertyDescriptor(t,r):void 0})(e,t,r)}const k=globalThis,x=e=>e,T=k.trustedTypes,P=T?T.createPolicy("lit-html",{createHTML:e=>e}):void 0,R="$lit$",C=`lit$${Math.random().toFixed(9).slice(2)}$`,O="?"+C,U=`<${O}>`,j=document,L=()=>j.createComment(""),B=e=>null===e||"object"!=typeof e&&"function"!=typeof e,F=Array.isArray,M="[ \t\n\f\r]",D=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,N=/-->/g,G=/>/g,I=RegExp(`>|${M}(?:([^\\s"'>=/]+)(${M}*=${M}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),z=/'/g,V=/"/g,W=/^(?:script|style|textarea|title)$/i,H=(e,...t)=>({_$litType$:1,strings:e,values:t}),q=Symbol.for("lit-noChange"),X=Symbol.for("lit-nothing"),J=new WeakMap,K=j.createTreeWalker(j,129);function Y(e,t){if(!F(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==P?P.createHTML(t):t}const Q=(e,t)=>{const r=e.length-1,n=[];let i,o=2===t?"<svg>":3===t?"<math>":"",s=D;for(let t=0;t<r;t++){const r=e[t];let a,c,l=-1,h=0;for(;h<r.length&&(s.lastIndex=h,c=s.exec(r),null!==c);)h=s.lastIndex,s===D?"!--"===c[1]?s=N:void 0!==c[1]?s=G:void 0!==c[2]?(W.test(c[2])&&(i=RegExp("</"+c[2],"g")),s=I):void 0!==c[3]&&(s=I):s===I?">"===c[0]?(s=i??D,l=-1):void 0===c[1]?l=-2:(l=s.lastIndex-c[2].length,a=c[1],s=void 0===c[3]?I:'"'===c[3]?V:z):s===V||s===z?s=I:s===N||s===G?s=D:(s=I,i=void 0);const u=s===I&&e[t+1].startsWith("/>")?" ":"";o+=s===D?r+U:l>=0?(n.push(a),r.slice(0,l)+R+r.slice(l)+C+u):r+C+(-2===l?t:u)}return[Y(e,o+(e[r]||"<?>")+(2===t?"</svg>":3===t?"</math>":"")),n]};class Z{constructor({strings:e,_$litType$:t},r){let n;this.parts=[];let i=0,o=0;const s=e.length-1,a=this.parts,[c,l]=Q(e,t);if(this.el=Z.createElement(c,r),K.currentNode=this.el.content,2===t||3===t){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(n=K.nextNode())&&a.length<s;){if(1===n.nodeType){if(n.hasAttributes())for(const e of n.getAttributeNames())if(e.endsWith(R)){const t=l[o++],r=n.getAttribute(e).split(C),s=/([.?@])?(.*)/.exec(t);a.push({type:1,index:i,name:s[2],strings:r,ctor:"."===s[1]?ie:"?"===s[1]?oe:"@"===s[1]?se:ne}),n.removeAttribute(e)}else e.startsWith(C)&&(a.push({type:6,index:i}),n.removeAttribute(e));if(W.test(n.tagName)){const e=n.textContent.split(C),t=e.length-1;if(t>0){n.textContent=T?T.emptyScript:"";for(let r=0;r<t;r++)n.append(e[r],L()),K.nextNode(),a.push({type:2,index:++i});n.append(e[t],L())}}}else if(8===n.nodeType)if(n.data===O)a.push({type:2,index:i});else{let e=-1;for(;-1!==(e=n.data.indexOf(C,e+1));)a.push({type:7,index:i}),e+=C.length-1}i++}}static createElement(e,t){const r=j.createElement("template");return r.innerHTML=e,r}}function ee(e,t,r=e,n){if(t===q)return t;let i=void 0!==n?r._$Co?.[n]:r._$Cl;const o=B(t)?void 0:t._$litDirective$;return i?.constructor!==o&&(i?._$AO?.(!1),void 0===o?i=void 0:(i=new o(e),i._$AT(e,r,n)),void 0!==n?(r._$Co??=[])[n]=i:r._$Cl=i),void 0!==i&&(t=ee(e,i._$AS(e,t.values),i,n)),t}class te{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??j).importNode(t,!0);K.currentNode=n;let i=K.nextNode(),o=0,s=0,a=r[0];for(;void 0!==a;){if(o===a.index){let t;2===a.type?t=new re(i,i.nextSibling,this,e):1===a.type?t=new a.ctor(i,a.name,a.strings,this,e):6===a.type&&(t=new ae(i,this,e)),this._$AV.push(t),a=r[++s]}o!==a?.index&&(i=K.nextNode(),o++)}return K.currentNode=j,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 re{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,r,n){this.type=2,this._$AH=X,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=r,this.options=n,this._$Cv=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=ee(this,e,t),B(e)?e===X||null==e||""===e?(this._$AH!==X&&this._$AR(),this._$AH=X):e!==this._$AH&&e!==q&&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!==X&&B(this._$AH)?this._$AA.nextSibling.data=e:this.T(j.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=Z.createElement(Y(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===n)this._$AH.p(t);else{const e=new te(n,this),r=e.u(this.options);e.p(t),this.T(r),this._$AH=e}}_$AC(e){let t=J.get(e.strings);return void 0===t&&J.set(e.strings,t=new Z(e)),t}k(e){F(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let r,n=0;for(const i of e)n===t.length?t.push(r=new re(this.O(L()),this.O(L()),this,this.options)):r=t[n],r._$AI(i),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!==this._$AB;){const t=x(e).nextSibling;x(e).remove(),e=t}}setConnected(e){void 0===this._$AM&&(this._$Cv=e,this._$AP?.(e))}}class ne{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,r,n,i){this.type=1,this._$AH=X,this._$AN=void 0,this.element=e,this.name=t,this._$AM=n,this.options=i,r.length>2||""!==r[0]||""!==r[1]?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=X}_$AI(e,t=this,r,n){const i=this.strings;let o=!1;if(void 0===i)e=ee(this,e,t,0),o=!B(e)||e!==this._$AH&&e!==q,o&&(this._$AH=e);else{const n=e;let s,a;for(e=i[0],s=0;s<i.length-1;s++)a=ee(this,n[r+s],t,s),a===q&&(a=this._$AH[s]),o||=!B(a)||a!==this._$AH[s],a===X?e=X:e!==X&&(e+=(a??"")+i[s+1]),this._$AH[s]=a}o&&!n&&this.j(e)}j(e){e===X?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class ie extends ne{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===X?void 0:e}}class oe extends ne{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==X)}}class se extends ne{constructor(e,t,r,n,i){super(e,t,r,n,i),this.type=5}_$AI(e,t=this){if((e=ee(this,e,t,0)??X)===q)return;const r=this._$AH,n=e===X&&r!==X||e.capture!==r.capture||e.once!==r.once||e.passive!==r.passive,i=e!==X&&(r===X||n);n&&this.element.removeEventListener(this.name,this,r),i&&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 ae{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){ee(this,e)}}const ce=k.litHtmlPolyfillSupport;ce?.(Z,re),(k.litHtmlVersions??=[]).push("3.3.2");const le=globalThis;class he extends ${constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=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._$Do=((e,t,r)=>{const n=r?.renderBefore??t;let i=n._$litPart$;if(void 0===i){const e=r?.renderBefore??null;n._$litPart$=i=new re(t.insertBefore(L(),e),e,void 0,r??{})}return i._$AI(e),i})(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return q}}he._$litElement$=!0,he.finalized=!0,le.litElementHydrateSupport?.({LitElement:he});const ue=le.litElementPolyfillSupport;function de(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s}ue?.({LitElement:he}),(le.litElementVersions??=[]).push("4.2.2");let be=null,fe=!1;var pe=function(e){return e.JSON="json",e.LOT="lot",e.JPG="jpg",e.PNG="png",e.SVG="svg",e}({});const me=e=>new Promise(t=>setTimeout(t,e));let ve="idle";class we extends he{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(fe)for(;!be;)await me(100);if(be||(fe=!0,be=await async function(e={}){var r,n=e,i=!!globalThis.window,o=!!globalThis.WorkerGlobalScope,s=globalThis.process?.versions?.node&&"renderer"!=globalThis.process?.type;if(s){const{createRequire:e}=await Promise.resolve().then(function(){return _e});var a=e("undefined"==typeof document&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:"undefined"==typeof document?location.href:t&&"SCRIPT"===t.tagName.toUpperCase()&&t.src||new URL("lottie-player.js",document.baseURI).href)}var c,l,h=(e,t)=>{throw t},u="undefined"==typeof document&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:"undefined"==typeof document?location.href:t&&"SCRIPT"===t.tagName.toUpperCase()&&t.src||new URL("lottie-player.js",document.baseURI).href,d="";if(s){var b=a("fs");u.startsWith("file:")&&(d=a("path").dirname(a("url").fileURLToPath(u))+"/"),l=e=>(e=O(e)?new URL(e):e,b.readFileSync(e)),c=async e=>(e=O(e)?new URL(e):e,b.readFileSync(e,void 0)),process.argv.slice(2),h=(e,t)=>{throw process.exitCode=e,t}}else if(i||o){try{d=new URL(".",u).href}catch{}o&&(l=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),c=async e=>{if(O(e))return 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)});var t=await fetch(e,{credentials:"same-origin"});if(t.ok)return t.arrayBuffer();throw Error(t.status+" : "+t.url)}}var f,p,m,v,w,g,y,_,$,A,E,S,k,x,T,P=function(){}.bind(),R=function(){}.bind(),C=!1,O=e=>e.startsWith("file://"),U=!1;function j(){var e=xr.buffer;w=new Int8Array(e),y=new Int16Array(e),g=new Uint8Array(e),_=new Uint16Array(e),$=new Int32Array(e),A=new Uint32Array(e),E=new Float32Array(e),S=new Float64Array(e),k=new BigInt64Array(e),x=new BigUint64Array(e)}function L(e){throw n.onAbort?.(e),R(e="Aborted("+e+")"),C=!0,e=new WebAssembly.RuntimeError(e+". Build with -sASSERTIONS for more info."),v?.(e),e}class B{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var F=e=>{for(;0<e.length;)e.shift()(n)},M=[],D=[],N=()=>{var e=n.preRun.shift();D.push(e)},G=!0,I=new TextDecoder,z=(e,t,r,n)=>{if(r=t+r,n)return r;for(;e[t]&&!(t>=r);)++t;return t},V=(e,t,r)=>e?I.decode(g.subarray(e,z(g,e,t,r))):"",W=e=>{for(var t="";;){var r=g[e++];if(!r)return t;t+=String.fromCharCode(r)}},H={},q={},X={},J=class extends Error{constructor(e){super(e),this.name="BindingError"}},K=e=>{throw new J(e)};function Y(e,t,r={}){return function(e,t,r={}){var n=t.name;if(!e)throw new J(`type "${n}" must have a positive integer typeid pointer`);if(q.hasOwnProperty(e)){if(r.od)return;throw new J(`Cannot register type '${n}' twice`)}q[e]=t,delete X[e],H.hasOwnProperty(e)&&(t=H[e],delete H[e],t.forEach(e=>e()))}(e,t,r)}var Q=(e,t,r)=>{switch(t){case 1:return r?e=>w[e]:e=>g[e];case 2:return r?e=>y[e>>1]:e=>_[e>>1];case 4:return r?e=>$[e>>2]:e=>A[e>>2];case 8:return r?e=>k[e>>3]:e=>x[e>>3];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Z=e=>{throw new J(e.eb.lb.jb.name+" instance already deleted")},ee=!1,te=()=>{},re=e=>globalThis.FinalizationRegistry?(ee=new FinalizationRegistry(e=>{--(e=e.eb).count.value,0===e.count.value&&(e.ob?e.tb.Fb(e.ob):e.lb.jb.Fb(e.ib))}),re=e=>{var t=e.eb;return t.ob&&ee.register(e,{eb:t},e),e},te=e=>{ee.unregister(e)},re(e)):(re=e=>e,e);function ne(){}var ie=(e,t)=>Object.defineProperty(t,"name",{value:e}),oe={},se=(e,t,r)=>{if(void 0===e[t].nb){var n=e[t];e[t]=function(...n){if(!e[t].nb.hasOwnProperty(n.length))throw new J(`Function '${r}' called with an invalid number of arguments (${n.length}) - expects one of (${e[t].nb})!`);return e[t].nb[n.length].apply(this,n)},e[t].nb=[],e[t].nb[n.Sb]=n}},ae=(e,t,r)=>{if(n.hasOwnProperty(e)){if(void 0===r||void 0!==n[e].nb&&void 0!==n[e].nb[r])throw new J(`Cannot register public name '${e}' twice`);if(se(n,e,e),n[e].nb.hasOwnProperty(r))throw new J(`Cannot register multiple overloads of a function with the same number of arguments (${r})!`);n[e].nb[r]=t}else n[e]=t,n[e].Sb=r};function ce(e,t,r,n,i,o,s,a){this.name=e,this.constructor=t,this.Nb=r,this.Fb=n,this.qb=i,this.kd=o,this.$b=s,this.ed=a,this.wd=[]}var le=(e,t,r)=>{for(;t!==r;){if(!t.$b)throw new J(`Expected null or instance of ${r.name}, got an instance of ${t.name}`);e=t.$b(e),t=t.qb}return e},he=e=>{if(null===e)return"null";var t=typeof e;return"object"===t||"array"===t||"function"===t?e.toString():""+e};function ue(e,t){if(null===t){if(this.rc)throw new J(`null is not a valid ${this.name}`);return 0}if(!t.eb)throw new J(`Cannot pass "${he(t)}" as a ${this.name}`);if(!t.eb.ib)throw new J(`Cannot pass deleted object as a pointer of type ${this.name}`);return le(t.eb.ib,t.eb.lb.jb,this.jb)}function de(e,t){if(null===t){if(this.rc)throw new J(`null is not a valid ${this.name}`);if(this.ec){var r=this.xd();return null!==e&&e.push(this.Fb,r),r}return 0}if(!t||!t.eb)throw new J(`Cannot pass "${he(t)}" as a ${this.name}`);if(!t.eb.ib)throw new J(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.dc&&t.eb.lb.dc)throw new J(`Cannot convert argument of type ${t.eb.tb?t.eb.tb.name:t.eb.lb.name} to parameter type ${this.name}`);if(r=le(t.eb.ib,t.eb.lb.jb,this.jb),this.ec){if(void 0===t.eb.ob)throw new J("Passing raw pointer to smart pointer is illegal");switch(this.zd){case 0:if(t.eb.tb!==this)throw new J(`Cannot convert argument of type ${t.eb.tb?t.eb.tb.name:t.eb.lb.name} to parameter type ${this.name}`);r=t.eb.ob;break;case 1:r=t.eb.ob;break;case 2:if(t.eb.tb===this)r=t.eb.ob;else{var n=t.clone();r=this.yd(r,Ne(()=>n.delete())),null!==e&&e.push(this.Fb,r)}break;default:throw new J("Unsupporting sharing policy")}}return r}function be(e,t){if(null===t){if(this.rc)throw new J(`null is not a valid ${this.name}`);return 0}if(!t.eb)throw new J(`Cannot pass "${he(t)}" as a ${this.name}`);if(!t.eb.ib)throw new J(`Cannot pass deleted object as a pointer of type ${this.name}`);if(t.eb.lb.dc)throw new J(`Cannot convert argument of type ${t.eb.lb.name} to parameter type ${this.name}`);return le(t.eb.ib,t.eb.lb.jb,this.jb)}function fe(e){return this.pb(A[e>>2])}var pe=(e,t,r)=>t===r?e:void 0===r.qb||null===(e=pe(e,t,r.qb))?null:r.ed(e),me={},ve=class extends Error{constructor(e){super(e),this.name="InternalError"}},we=(e,t)=>{if(!t.lb||!t.ib)throw new ve("makeClassHandle requires ptr and ptrType");if(!!t.tb!=!!t.ob)throw new ve("Both smartPtrType and smartPtr must be specified");return t.count={value:1},re(Object.create(e,{eb:{value:t,writable:!0}}))};function ge(e,t,r,n,i,o,s,a,c,l,h){this.name=e,this.jb=t,this.rc=r,this.dc=n,this.ec=i,this.vd=o,this.zd=s,this.Rc=a,this.xd=c,this.yd=l,this.Fb=h,i||void 0!==t.qb?this.ub=de:(this.ub=n?ue:be,this.vb=null)}var ye=(e,t,r)=>{if(!n.hasOwnProperty(e))throw new ve("Replacing nonexistent public symbol");void 0!==n[e].nb&&void 0!==r?n[e].nb[r]=t:(n[e]=t,n[e].Sb=r)},$e=(e,t)=>{e=W(e);var r=Tr.get(t);if("function"!=typeof r)throw new J(`unknown function pointer with signature ${e}: ${t}`);return r};class Ae extends Error{}var Ee=e=>{e=Er(e);var t=W(e);return Sr(e),t},Se=(e,t)=>{var r=[],n={};throw t.forEach(function e(t){n[t]||q[t]||(X[t]?X[t].forEach(e):(r.push(t),n[t]=!0))}),new Ae(`${e}: `+r.map(Ee).join([", "]))},ke=(e,t,r)=>{function n(t){if((t=r(t)).length!==e.length)throw new ve("Mismatched type converter count");for(var n=0;n<e.length;++n)Y(e[n],t[n])}e.forEach(e=>X[e]=t);var i=Array(t.length),o=[],s=0;for(let[e,r]of t.entries())q.hasOwnProperty(r)?i[e]=q[r]:(o.push(r),H.hasOwnProperty(r)||(H[r]=[]),H[r].push(()=>{i[e]=q[r],++s===o.length&&n(i)}));0===o.length&&n(i)},xe=(e,t)=>{for(var r=[],n=0;n<e;n++)r.push(A[t+4*n>>2]);return r},Te=e=>{for(;e.length;){var t=e.pop();e.pop()(t)}};function Pe(e){for(var t=1;t<e.length;++t)if(null!==e[t]&&void 0===e[t].vb)return!0;return!1}function Re(e,t,r,n,i,o){var s=t.length;if(2>s)throw new J("argTypes array size mismatch! Must at least get return value and 'this' types!");var a=null!==t[1]&&null!==r,c=Pe(t);r=!t[0].Nc;var l=t[0],h=t[1];for(n=[e,K,n,i,Te,l.pb.bind(l),h?.ub.bind(h)],i=2;i<s;++i)n.push((l=t[i]).ub.bind(l));if(!c)for(i=a?1:2;i<t.length;++i)null!==t[i].vb&&n.push(t[i].vb);for(c=Pe(t),i=t.length-2,h=[],l=["fn"],a&&l.push("thisWired"),s=0;s<i;++s)h.push(`arg${s}`),l.push(`arg${s}Wired`);h=h.join(","),l=l.join(","),h=`return function (${h}) {\n`,c&&(h+="var destructors = [];\n");var u=c?"destructors":"null",d="humanName throwBindingError invoker fn runDestructors fromRetWire toClassParamWire".split(" ");for(a&&(h+=`var thisWired = toClassParamWire(${u}, this);\n`),s=0;s<i;++s){var b=`toArg${s}Wire`;h+=`var arg${s}Wired = ${b}(${u}, arg${s});\n`,d.push(b)}if(h+=(r||o?"var rv = ":"")+`invoker(${l});\n`,c)h+="runDestructors(destructors);\n";else for(s=a?1:2;s<t.length;++s)o=1===s?"thisWired":"arg"+(s-2)+"Wired",null!==t[s].vb&&(h+=`${o}_dtor(${o});\n`,d.push(`${o}_dtor`));return r&&(h+="var ret = fromRetWire(rv);\nreturn ret;\n"),t=new Function(d,h+"}\n")(...n),ie(e,t)}var Ce,Oe,Ue,je,Le=e=>{const t=(e=e.trim()).indexOf("(");return-1===t?e:e.slice(0,t)},Be=[],Fe=[0,1,,1,null,1,!0,1,!1,1],Me=e=>{9<e&&0===--Fe[e+1]&&(Fe[e]=void 0,Be.push(e))},De=e=>{if(!e)throw new J(`Cannot use deleted val. handle = ${e}`);return Fe[e]},Ne=e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:const t=Be.pop()||Fe.length;return Fe[t]=e,Fe[t+1]=1,t}},Ge={name:"emscripten::val",pb:e=>{var t=De(e);return Me(e),t},ub:(e,t)=>Ne(t),Db:fe,vb:null},Ie=(e,t)=>{switch(t){case 4:return function(e){return this.pb(E[e>>2])};case 8:return function(e){return this.pb(S[e>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},ze=(e,t,r,n)=>{if(!(0<n))return 0;var i=r;n=r+n-1;for(var o=0;o<e.length;++o){var s=e.codePointAt(o);if(127>=s){if(r>=n)break;t[r++]=s}else if(2047>=s){if(r+1>=n)break;t[r++]=192|s>>6,t[r++]=128|63&s}else if(65535>=s){if(r+2>=n)break;t[r++]=224|s>>12,t[r++]=128|s>>6&63,t[r++]=128|63&s}else{if(r+3>=n)break;t[r++]=240|s>>18,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s,o++}}return t[r]=0,r-i},Ve=e=>{for(var t=0,r=0;r<e.length;++r){var n=e.charCodeAt(r);127>=n?t++:2047>=n?t+=2:55296<=n&&57343>=n?(t+=4,++r):t+=3}return t},We=new TextDecoder("utf-16le"),He=(e,t,r)=>We.decode(_.subarray(e>>=1,z(_,e,t/2,r))),qe=(e,t,r)=>{if(r??=2147483647,2>r)return 0;var n=t;r=(r-=2)<2*e.length?r/2:e.length;for(var i=0;i<r;++i)y[t>>1]=e.charCodeAt(i),t+=2;return y[t>>1]=0,t-n},Xe=e=>2*e.length,Je=(e,t,r)=>{var n="";e>>=2;for(var i=0;!(i>=t/4);i++){var o=A[e+i];if(!o&&!r)break;n+=String.fromCodePoint(o)}return n},Ke=(e,t,r)=>{if(r??=2147483647,4>r)return 0;var n=t;r=n+r-4;for(var i=0;i<e.length;++i){var o=e.codePointAt(i);if(65535<o&&i++,$[t>>2]=o,(t+=4)+4>r)break}return $[t>>2]=0,t-n},Ye=e=>{for(var t=0,r=0;r<e.length;++r)65535<e.codePointAt(r)&&r++,t+=4;return t},Qe=0,Ze=[],et=(e,t,r)=>{var n=[];return e=e(n,r),n.length&&(A[t>>2]=Ne(n)),e},tt={},rt=e=>{var t=tt[e];return void 0===t?W(e):t},nt={},it=e=>{p=e,G||0<Qe||(n.onExit?.(e),C=!0),h(e,new B(e))},ot=e=>{var t="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".split(" ");return(e.getSupportedExtensions()||[]).filter(e=>t.includes(e))},st=1,at=[],ct=[],lt=[],ht=[],ut=[],dt=[],bt=[],ft=[],pt=[1,1,2,2,4,4,4,2,3,4,8],mt=e=>{for(var t=st++,r=e.length;r<t;r++)e[r]=null;for(;e[t];)t=st++;return t},vt=(e,t,r,n)=>{for(var i=0;i<e;i++){var o=Ce[r](),s=o&&mt(n);o?(o.name=s,n[s]=o):Oe||=1282,$[t+4*i>>2]=s}},wt=["default","low-power","high-performance"],gt=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],yt=(e,t)=>{for(var r=0,n=e.length-1;0<=n;n--){var i=e[n];"."===i?e.splice(n,1):".."===i?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r;r--)e.unshift("..");return e},_t=e=>{var t="/"===e.charAt(0),r="/"===e.slice(-1);return(e=yt(e.split("/").filter(e=>!!e),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e},$t=e=>{var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1);return e=t[0],t=t[1],e||t?(t&&=t.slice(0,-1),e+t):"."},At=e=>e&&e.match(/([^\/]+|\/)\/*$/)[1],Et=e=>{(Et=(()=>{if(s){var e=a("crypto");return t=>e.randomFillSync(t)}return e=>crypto.getRandomValues(e)})())(e)},St=(...e)=>{for(var t="",r=!1,n=e.length-1;-1<=n&&!r;n--){if("string"!=typeof(r=0<=n?e[n]:br.cwd()))throw new TypeError("Arguments to path.resolve must be strings");if(!r)return"";t=r+"/"+t,r="/"===r.charAt(0)}return t=yt(t.split("/").filter(e=>!!e),!r).join("/"),(r?"/":"")+t||"."},kt=(e,t)=>{function r(e){for(var t=0;t<e.length&&""===e[t];t++);for(var r=e.length-1;0<=r&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=St(e).slice(1),t=St(t).slice(1),e=r(e.split("/")),t=r(t.split("/"));for(var n=Math.min(e.length,t.length),i=n,o=0;o<n;o++)if(e[o]!==t[o]){i=o;break}for(n=[],o=i;o<e.length;o++)n.push("..");return(n=n.concat(t.slice(i))).join("/")},xt=e=>{var t=z(e,0);return I.decode(e.buffer?e.subarray(0,t):new Uint8Array(e.slice(0,t)))},Tt=[],Pt=e=>{var t=Array(Ve(e)+1);return e=ze(e,t,0,t.length),t.length=e,t},Rt=[];function Ct(e,t){Rt[e]={input:[],output:[],Pb:t},Vt(e,Ot)}var Ot={open(e){var t=Rt[e.node.rdev];if(!t)throw new br.cb(43);e.tty=t,e.seekable=!1},close(e){e.tty.Pb.fsync(e.tty)},fsync(e){e.tty.Pb.fsync(e.tty)},read(e,t,r,n){if(!e.tty||!e.tty.Pb.Ic)throw new br.cb(60);for(var i=0,o=0;o<n;o++){try{var s=e.tty.Pb.Ic(e.tty)}catch(e){throw new br.cb(29)}if(void 0===s&&0===i)throw new br.cb(6);if(null==s)break;i++,t[r+o]=s}return i&&(e.node.atime=Date.now()),i},write(e,t,r,n){if(!e.tty||!e.tty.Pb.wc)throw new br.cb(60);try{for(var i=0;i<n;i++)e.tty.Pb.wc(e.tty,t[r+i])}catch(e){throw new br.cb(29)}return n&&(e.node.mtime=e.node.ctime=Date.now()),i}},Ut={Ic(){e:{if(!Tt.length){var e=null;if(s){var t=Buffer.alloc(256),r=0,n=process.stdin.fd;try{r=b.readSync(n,t,0,256)}catch(e){if(!e.toString().includes("EOF"))throw e;r=0}0<r&&(e=t.slice(0,r).toString("utf-8"))}else globalThis.window?.prompt&&null!==(e=window.prompt("Input: "))&&(e+="\n");if(!e){e=null;break e}Tt=Pt(e)}e=Tt.shift()}return e},wc(e,t){null===t||10===t?(P(xt(e.output)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){0<e.output?.length&&(P(xt(e.output)),e.output=[])},Xd:()=>({Hd:25856,Jd:5,Gd:191,Id:35387,Fd:[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]}),Yd:()=>0,Zd:()=>[24,80]},jt={wc(e,t){null===t||10===t?(R(xt(e.output)),e.output=[]):0!=t&&e.output.push(t)},fsync(e){0<e.output?.length&&(R(xt(e.output)),e.output=[])}},Lt={Ab:null,kb:()=>Lt.createNode(null,"/",16895,0),createNode(e,t,r,n){if(24576==(61440&r)||br.isFIFO(r))throw new br.cb(63);return Lt.Ab||(Lt.Ab={dir:{node:{xb:Lt.fb.xb,zb:Lt.fb.zb,lookup:Lt.fb.lookup,Bb:Lt.fb.Bb,rename:Lt.fb.rename,unlink:Lt.fb.unlink,rmdir:Lt.fb.rmdir,readdir:Lt.fb.readdir,symlink:Lt.fb.symlink},stream:{rb:Lt.gb.rb}},file:{node:{xb:Lt.fb.xb,zb:Lt.fb.zb},stream:{rb:Lt.gb.rb,read:Lt.gb.read,write:Lt.gb.write,Ob:Lt.gb.Ob,Wb:Lt.gb.Wb}},link:{node:{xb:Lt.fb.xb,zb:Lt.fb.zb,readlink:Lt.fb.readlink},stream:{}},zc:{node:{xb:Lt.fb.xb,zb:Lt.fb.zb},stream:br.bd}}),Wt((r=br.createNode(e,t,r,n)).mode)?(r.fb=Lt.Ab.dir.node,r.gb=Lt.Ab.dir.stream,r.hb={}):br.isFile(r.mode)?(r.fb=Lt.Ab.file.node,r.gb=Lt.Ab.file.stream,r.mb=0,r.hb=null):40960==(61440&r.mode)?(r.fb=Lt.Ab.link.node,r.gb=Lt.Ab.link.stream):8192==(61440&r.mode)&&(r.fb=Lt.Ab.zc.node,r.gb=Lt.Ab.zc.stream),r.atime=r.mtime=r.ctime=Date.now(),e&&(e.hb[t]=r,e.atime=e.mtime=e.ctime=r.atime),r},Wd:e=>e.hb?e.hb.subarray?e.hb.subarray(0,e.mb):new Uint8Array(e.hb):new Uint8Array(0),fb:{xb(e){var t={};return t.dev=8192==(61440&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,t.size=Wt(e.mode)?4096:br.isFile(e.mode)?e.mb:40960==(61440&e.mode)?e.link.length:0,t.atime=new Date(e.atime),t.mtime=new Date(e.mtime),t.ctime=new Date(e.ctime),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},zb(e,t){for(var r of["mode","atime","mtime","ctime"])null!=t[r]&&(e[r]=t[r]);void 0!==t.size&&e.mb!=(t=t.size)&&(0==t?(e.hb=null,e.mb=0):(r=e.hb,e.hb=new Uint8Array(t),r&&e.hb.set(r.subarray(0,Math.min(t,e.mb))),e.mb=t))},lookup(){throw Lt.mc||(Lt.mc=new br.cb(44),Lt.mc.stack="<generic error, no stack>"),Lt.mc},Bb:(e,t,r,n)=>Lt.createNode(e,t,r,n),rename(e,t,r){try{var n=Ht(t,r)}catch(e){}if(n){if(Wt(e.mode))for(var i in n.hb)throw new br.cb(55);qt(n)}delete e.parent.hb[e.name],t.hb[r]=e,e.name=r,t.ctime=t.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,t){delete e.hb[t],e.ctime=e.mtime=Date.now()},rmdir(e,t){var r,n=Ht(e,t);for(r in n.hb)throw new br.cb(55);delete e.hb[t],e.ctime=e.mtime=Date.now()},readdir:e=>[".","..",...Object.keys(e.hb)],symlink:(e,t,r)=>((e=Lt.createNode(e,t,41471,0)).link=r,e),readlink(e){if(40960!=(61440&e.mode))throw new br.cb(28);return e.link}},gb:{read(e,t,r,n,i){var o=e.node.hb;if(i>=e.node.mb)return 0;if(8<(e=Math.min(e.node.mb-i,n))&&o.subarray)t.set(o.subarray(i,i+e),r);else for(n=0;n<e;n++)t[r+n]=o[i+n];return e},write(e,t,r,n,i,o){if(t.buffer===w.buffer&&(o=!1),!n)return 0;if((e=e.node).mtime=e.ctime=Date.now(),t.subarray&&(!e.hb||e.hb.subarray)){if(o)return e.hb=t.subarray(r,r+n),e.mb=n;if(0===e.mb&&0===i)return e.hb=t.slice(r,r+n),e.mb=n;if(i+n<=e.mb)return e.hb.set(t.subarray(r,r+n),i),n}var s=e.hb?e.hb.length:0;if(s>=(o=i+n)||(o=Math.max(o,s*(1048576>s?2:1.125)>>>0),0!=s&&(o=Math.max(o,256)),s=e.hb,e.hb=new Uint8Array(o),0<e.mb&&e.hb.set(s.subarray(0,e.mb),0)),e.hb.subarray&&t.subarray)e.hb.set(t.subarray(r,r+n),i);else for(o=0;o<n;o++)e.hb[i+o]=t[r+o];return e.mb=Math.max(e.mb,i+n),n},rb(e,t,r){if(1===r?t+=e.position:2===r&&br.isFile(e.node.mode)&&(t+=e.node.mb),0>t)throw new br.cb(28);return t},Ob(e,t,r,n,i){if(!br.isFile(e.node.mode))throw new br.cb(43);if(e=e.node.hb,2&i||!e||e.buffer!==w.buffer){if(n=!0,L(),!(i=void 0))throw new br.cb(48);e&&((0<r||r+t<e.length)&&(e=e.subarray?e.subarray(r,r+t):Array.prototype.slice.call(e,r,r+t)),w.set(e,i))}else n=!1,i=e.byteOffset;return{ib:i,Bd:n}},Wb:(e,t,r,n)=>(Lt.gb.write(e,t,0,n,r,!1),0)}},Bt=(e,t)=>{var r=0;return e&&(r|=365),t&&(r|=146),r},Ft=0,Mt=null,Dt=()=>{if(Ft--,n.monitorRunDependencies?.(Ft),0==Ft&&Mt){var e=Mt;Mt=null,e()}},Nt=()=>{Ft++,n.monitorRunDependencies?.(Ft)},Gt=[],It=async(e,t,r,n,i,o,s,a)=>{var l=t?St(_t(e+"/"+t)):e;Nt();try{var h=r;"string"==typeof r&&(h=await(async e=>(e=await c(e),new Uint8Array(e)))(r)),h=await(async(e,t)=>{for(var r of("undefined"!=typeof Browser&&zt(),Gt))if(r.canHandle(t))return r.handle(e,t);return e})(h,l),a?.(),o||Xt(e,t,h,n,i,s)}finally{Dt()}};function zt(){var e,t,r;br.qc=!0,e??=n.stdin,t??=n.stdout,r??=n.stderr,e?br.Eb("/dev","stdin",e):br.symlink("/dev/tty","/dev/stdin"),t?br.Eb("/dev","stdout",null,t):br.symlink("/dev/tty","/dev/stdout"),r?br.Eb("/dev","stderr",null,r):br.symlink("/dev/tty1","/dev/stderr"),br.open("/dev/stdin",0),br.open("/dev/stdout",1),br.open("/dev/stderr",1)}function Vt(e,t){br.Dc[e]={gb:t}}function Wt(e){return 16384==(61440&e)}function Ht(e,t){var r=Wt(e.mode)?(r=er(e,"x"))?r:e.fb.lookup?0:2:54;if(r)throw new br.cb(r);for(r=br.Cb[Yt(e.id,t)];r;r=r.Kb)if(r.parent.id===e.id&&r.name===t)return r;return br.lookup(e,t)}function qt(e){var t=Yt(e.parent.id,e.name);if(br.Cb[t]===e)br.Cb[t]=e.Kb;else for(t=br.Cb[t];t;){if(t.Kb===e){t.Kb=e.Kb;break}t=t.Kb}}function Xt(e,t,r,n,i,o){var s=t;if(e&&(e="string"==typeof e?e:Kt(e),s=t?_t(e+"/"+t):e),e=Bt(n,i),s=br.create(s,e),r){if("string"==typeof r){for(t=Array(r.length),n=0,i=r.length;n<i;++n)t[n]=r.charCodeAt(n);r=t}br.chmod(s,146|e),t=br.open(s,577),br.write(t,r,0,r.length,0,o),br.close(t),br.chmod(s,e)}}function Jt(e,t={}){if(!e)throw new br.cb(44);t.cc??(t.cc=!0),"/"===e.charAt(0)||(e=br.cwd()+"/"+e);var r=0;e:for(;40>r;r++){e=e.split("/").filter(e=>!!e);for(var n=br.root,i="/",o=0;o<e.length;o++){var s=o===e.length-1;if(s&&t.parent)break;if("."!==e[o])if(".."===e[o]){if(i=$t(i),br.sc(n)){e=i+"/"+e.slice(o+1).join("/"),r--;continue e}n=n.parent}else{i=_t(i+"/"+e[o]);try{n=Ht(n,e[o])}catch(e){if(44===e?.Ib&&s&&t.td)return{path:i};throw e}if(!n.yb||s&&!t.cc||(n=n.yb.root),40960==(61440&n.mode)&&(!s||t.wb)){if(!n.fb.readlink)throw new br.cb(52);"/"===(n=n.fb.readlink(n)).charAt(0)||(n=$t(i)+"/"+n),e=n+"/"+e.slice(o+1).join("/");continue e}}}return{path:i,node:n}}throw new br.cb(32)}function Kt(e){for(var t;;){if(br.sc(e))return e=e.kb.Pc,t?"/"!==e[e.length-1]?`${e}/${t}`:e+t:e;t=t?`${e.name}/${t}`:e.name,e=e.parent}}function Yt(e,t){for(var r=0,n=0;n<t.length;n++)r=(r<<5)-r+t.charCodeAt(n)|0;return(e+r>>>0)%br.Cb.length}function Qt(e){var t=Yt(e.parent.id,e.name);e.Kb=br.Cb[t],br.Cb[t]=e}function Zt(e){var t=["r","w","rw"][3&e];return 512&e&&(t+="w"),t}function er(e,t){return br.Lc?0:!t.includes("r")||292&e.mode?t.includes("w")&&!(146&e.mode)||t.includes("x")&&!(73&e.mode)?2:0:2}function tr(e,t){if(!Wt(e.mode))return 54;try{return Ht(e,t),20}catch(e){}return er(e,"wx")}function rr(e,t,r){try{var n=Ht(e,t)}catch(e){return e.Ib}if(e=er(e,"wx"))return e;if(r){if(!Wt(n.mode))return 54;if(br.sc(n)||Kt(n)===br.cwd())return 10}else if(Wt(n.mode))return 31;return 0}function nr(e,t){if(!e)throw new br.cb(t);return e}function ir(e){if(!(e=br.nd(e)))throw new br.cb(8);return e}function or(e,t=-1){if(e=Object.assign(new br.Zc,e),-1==t)e:{for(t=0;t<=br.ad;t++)if(!br.streams[t])break e;throw new br.cb(33)}return e.fd=t,br.streams[t]=e}function sr(e,t,r){var n=e?.gb.zb;e=n?e:t,n??=t.fb.zb,nr(n,63),n(e,r)}function ar(e){var t=[];for(e=[e];e.length;){var r=e.pop();t.push(r),e.push(...r.Vb)}return t}function cr(e){var t={Ed:4096,Td:4096,blocks:1e6,Dd:5e5,Cd:5e5,files:br.vc,Rd:br.vc-1,Ud:42,flags:2,ee:255};return e.fb.Tc&&Object.assign(t,e.fb.Tc(e.kb.ud.root)),t}function lr(e,t,r){return void 0===r&&(r=t,t=438),br.Bb(e,8192|t,r)}function hr(e,t,r,n){sr(e,t,{mode:4095&r|-4096&t.mode,ctime:Date.now(),Fc:n})}function ur(e,t,r){if(Wt(t.mode))throw new br.cb(31);if(!br.isFile(t.mode))throw new br.cb(28);var n=er(t,"w");if(n)throw new br.cb(n);sr(e,t,{size:r,timestamp:Date.now()})}function dr(e){if(!(e.qd||e.rd||e.link||e.hb))if(globalThis.XMLHttpRequest)L("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{e.hb=l(e.url)}catch(e){throw new br.cb(29)}}var br={root:null,Vb:[],Dc:{},streams:[],vc:1,Cb:null,Ac:"/",qc:!1,Lc:!0,jd:null,jc:0,Sc:{},cb:class{name="ErrnoError";constructor(e){this.Ib=e}},Zc:class{sb={};node=null;get object(){return this.node}set object(e){this.node=e}get flags(){return this.sb.flags}set flags(e){this.sb.flags=e}get position(){return this.sb.position}set position(e){this.sb.position=e}},Yc:class{fb={};gb={};yb=null;constructor(e,t,r,n){e||=this,this.parent=e,this.kb=e.kb,this.id=br.vc++,this.name=t,this.mode=r,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return!(365&~this.mode)}set read(e){e?this.mode|=365:this.mode&=-366}get write(){return!(146&~this.mode)}set write(e){e?this.mode|=146:this.mode&=-147}get rd(){return Wt(this.mode)}get qd(){return 8192==(61440&this.mode)}},createNode:(e,t,r,n)=>(Qt(e=new br.Yc(e,t,r,n)),e),sc:e=>e===e.parent,isFile:e=>32768==(61440&e),isFIFO:e=>4096==(61440&e),isSocket:e=>!(49152&~e),ad:4096,nd:e=>br.streams[e],Od:(e,t=-1)=>(e=or(e,t),e.gb?.Nd?.(e),e),bd:{open(e){e.gb=br.ld(e.node.rdev).gb,e.gb.open?.(e)},rb(){throw new br.cb(70)}},tc:e=>e>>8,ae:e=>255&e,Jb:(e,t)=>e<<8|t,ld:e=>br.Dc[e],Uc(e,t){function r(e){return br.jc--,t(e)}function n(e){if(e){if(!n.gd)return n.gd=!0,r(e)}else++s>=o.length&&r(null)}"function"==typeof e&&(t=e,e=!1),br.jc++,1<br.jc&&R(`warning: ${br.jc} FS.syncfs operations in flight at once, probably just doing extra work`);var i,o=ar(br.root.kb),s=0;for(i of o)i.type.Uc?i.type.Uc(i,e,n):n(null)},kb(e,t,r){var n="/"===r;if(n&&br.root)throw new br.cb(10);if(!n&&r){var i=Jt(r,{cc:!1});if(r=i.path,(i=i.node).yb)throw new br.cb(10);if(!Wt(i.mode))throw new br.cb(54)}return(e=e.kb(t={type:e,ud:t,Pc:r,Vb:[]})).kb=t,t.root=e,n?br.root=e:i&&(i.yb=t,i.kb&&i.kb.Vb.push(t)),e},ne(e){if(!(e=Jt(e,{cc:!1})).node.yb)throw new br.cb(28);var t=(e=e.node).yb,r=ar(t);for([,i]of Object.entries(br.Cb))for(;i;){var n=i.Kb;r.includes(i.kb)&&qt(i);var i=n}e.yb=null,e.kb.Vb.splice(e.kb.Vb.indexOf(t),1)},lookup:(e,t)=>e.fb.lookup(e,t),Bb(e,t,r){var n=Jt(e,{parent:!0}).node;if(!(e=At(e)))throw new br.cb(28);if("."===e||".."===e)throw new br.cb(20);var i=tr(n,e);if(i)throw new br.cb(i);if(!n.fb.Bb)throw new br.cb(63);return n.fb.Bb(n,e,t,r)},Tc:e=>cr(Jt(e,{wb:!0}).node),le:e=>cr(e.node),create:(e,t=438)=>br.Bb(e,4095&t|32768,0),mkdir:(e,t=511)=>br.Bb(e,1023&t|16384,0),ce(e,t){var r,n=e.split("/"),i="";for(r of n)if(r){(i||"/"===e.charAt(0))&&(i+="/"),i+=r;try{br.mkdir(i,t)}catch(e){if(20!=e.Ib)throw e}}},symlink(e,t){if(!St(e))throw new br.cb(44);var r=Jt(t,{parent:!0}).node;if(!r)throw new br.cb(44);var n=tr(r,t=At(t));if(n)throw new br.cb(n);if(!r.fb.symlink)throw new br.cb(63);return r.fb.symlink(r,t,e)},rename(e,t){var r=$t(e),n=$t(t),i=At(e),o=At(t),s=Jt(e,{parent:!0}),a=s.node;if(s=(s=Jt(t,{parent:!0})).node,!a||!s)throw new br.cb(44);if(a.kb!==s.kb)throw new br.cb(75);var c=Ht(a,i);if("."!==(e=kt(e,n)).charAt(0))throw new br.cb(28);if("."!==(e=kt(t,r)).charAt(0))throw new br.cb(55);try{var l=Ht(s,o)}catch(e){}if(c!==l){if(i=rr(a,i,t=Wt(c.mode)))throw new br.cb(i);if(i=l?rr(s,o,t):tr(s,o))throw new br.cb(i);if(!a.fb.rename)throw new br.cb(63);if(c.yb||l&&l.yb)throw new br.cb(10);if(s!==a&&(i=er(a,"w")))throw new br.cb(i);qt(c);try{a.fb.rename(c,s,o),c.parent=s}catch(e){throw e}finally{Qt(c)}}},rmdir(e){var t=Jt(e,{parent:!0}).node,r=Ht(t,e=At(e)),n=rr(t,e,!0);if(n)throw new br.cb(n);if(!t.fb.rmdir)throw new br.cb(63);if(r.yb)throw new br.cb(10);t.fb.rmdir(t,e),qt(r)},readdir:e=>nr((e=Jt(e,{wb:!0}).node).fb.readdir,54)(e),unlink(e){var t=Jt(e,{parent:!0}).node;if(!t)throw new br.cb(44);var r=Ht(t,e=At(e)),n=rr(t,e,!1);if(n)throw new br.cb(n);if(!t.fb.unlink)throw new br.cb(63);if(r.yb)throw new br.cb(10);t.fb.unlink(t,e),qt(r)},readlink(e){if(!(e=Jt(e).node))throw new br.cb(44);if(!e.fb.readlink)throw new br.cb(28);return e.fb.readlink(e)},stat:(e,t)=>nr((e=Jt(e,{wb:!t}).node).fb.xb,63)(e),fstat(e){var t=ir(e);e=t.node;var r=t.gb.xb;return t=r?t:e,r??=e.fb.xb,nr(r,63),r(t)},lstat:e=>br.stat(e,!0),chmod(e,t,r){hr(null,e="string"==typeof e?Jt(e,{wb:!r}).node:e,t,r)},lchmod(e,t){br.chmod(e,t,!0)},fchmod(e,t){hr(e=ir(e),e.node,t,!1)},chown(e,t,r,n){sr(null,e="string"==typeof e?Jt(e,{wb:!n}).node:e,{timestamp:Date.now(),Fc:n})},lchown(e,t,r){br.chown(e,t,r,!0)},fchown(e){sr(e=ir(e),e.node,{timestamp:Date.now(),Fc:!1})},truncate(e,t){if(0>t)throw new br.cb(28);ur(null,e="string"==typeof e?Jt(e,{wb:!0}).node:e,t)},Vd(e,t){if(e=ir(e),0>t||!(2097155&e.flags))throw new br.cb(28);ur(e,e.node,t)},oe(e,t,r){nr((e=Jt(e,{wb:!0}).node).fb.zb,63)(e,{atime:t,mtime:r})},open(e,t,r=438){if(""===e)throw new br.cb(44);if("string"==typeof t){var i={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[t];if(void 0===i)throw Error(`Unknown file open mode: ${t}`);t=i}if(r=64&t?4095&r|32768:0,"object"==typeof e)i=e;else{var o=e.endsWith("/");i=(e=Jt(e,{wb:!(131072&t),td:!0})).node,e=e.path}var s=!1;if(64&t)if(i){if(128&t)throw new br.cb(20)}else{if(o)throw new br.cb(31);i=br.Bb(e,511|r,0),s=!0}if(!i)throw new br.cb(44);if(8192==(61440&i.mode)&&(t&=-513),65536&t&&!Wt(i.mode))throw new br.cb(54);if(!s&&(o=i?40960==(61440&i.mode)?32:Wt(i.mode)&&("r"!==Zt(t)||576&t)?31:er(i,Zt(t)):44))throw new br.cb(o);return 512&t&&!s&&br.truncate(i,0),t&=-131713,(o=or({node:i,path:Kt(i),flags:t,seekable:!0,position:0,gb:i.gb,Ad:[],error:!1})).gb.open&&o.gb.open(o),s&&br.chmod(i,511&r),!n.logReadFiles||1&t||e in br.Sc||(br.Sc[e]=1),o},close(e){if(null===e.fd)throw new br.cb(8);e.pc&&(e.pc=null);try{e.gb.close&&e.gb.close(e)}catch(e){throw e}finally{br.streams[e.fd]=null}e.fd=null},rb(e,t,r){if(null===e.fd)throw new br.cb(8);if(!e.seekable||!e.gb.rb)throw new br.cb(70);if(0!=r&&1!=r&&2!=r)throw new br.cb(28);return e.position=e.gb.rb(e,t,r),e.Ad=[],e.position},read(e,t,r,n,i){if(0>n||0>i)throw new br.cb(28);if(null===e.fd)throw new br.cb(8);if(1==(2097155&e.flags))throw new br.cb(8);if(Wt(e.node.mode))throw new br.cb(31);if(!e.gb.read)throw new br.cb(28);var o=void 0!==i;if(o){if(!e.seekable)throw new br.cb(70)}else i=e.position;return t=e.gb.read(e,t,r,n,i),o||(e.position+=t),t},write(e,t,r,n,i,o){if(0>n||0>i)throw new br.cb(28);if(null===e.fd)throw new br.cb(8);if(!(2097155&e.flags))throw new br.cb(8);if(Wt(e.node.mode))throw new br.cb(31);if(!e.gb.write)throw new br.cb(28);e.seekable&&1024&e.flags&&br.rb(e,0,2);var s=void 0!==i;if(s){if(!e.seekable)throw new br.cb(70)}else i=e.position;return t=e.gb.write(e,t,r,n,i,o),s||(e.position+=t),t},Ob(e,t,r,n,i){if(2&n&&!(2&i)&&2!=(2097155&e.flags))throw new br.cb(2);if(1==(2097155&e.flags))throw new br.cb(2);if(!e.gb.Ob)throw new br.cb(43);if(!t)throw new br.cb(28);return e.gb.Ob(e,t,r,n,i)},Wb:(e,t,r,n,i)=>e.gb.Wb?e.gb.Wb(e,t,r,n,i):0,Mc(e,t,r){if(!e.gb.Mc)throw new br.cb(59);return e.gb.Mc(e,t,r)},readFile(e,t={}){t.flags=t.flags||0,t.encoding=t.encoding||"binary","utf8"!==t.encoding&&"binary"!==t.encoding&&L(`Invalid encoding type "${t.encoding}"`);var r=br.open(e,t.flags);e=br.stat(e).size;var n=new Uint8Array(e);return br.read(r,n,0,e,0),"utf8"===t.encoding&&(n=xt(n)),br.close(r),n},writeFile(e,t,r={}){r.flags=r.flags||577,e=br.open(e,r.flags,r.mode),"string"==typeof t&&(t=new Uint8Array(Pt(t))),ArrayBuffer.isView(t)?br.write(e,t,0,t.byteLength,void 0,r.Kd):L("Unsupported data type"),br.close(e)},cwd:()=>br.Ac,chdir(e){if(null===(e=Jt(e,{wb:!0})).node)throw new br.cb(44);if(!Wt(e.node.mode))throw new br.cb(54);var t=er(e.node,"x");if(t)throw new br.cb(t);br.Ac=e.path},ie(){for(var e of(br.qc=!1,br.streams))e&&br.close(e)},Sd(e,t){try{var r=Jt(e,{wb:!t});e=r.path}catch(e){}var n=!1,i=null;try{r=Jt(e,{parent:!0}),At(e),r=Jt(e,{wb:!t}),n=!0,i=r.node}catch(e){}return n?i:null},Eb(e,t,r,n){var i;return e=((e,t)=>_t(e+"/"+t))("string"==typeof e?e:Kt(e),t),t=Bt(!!r,!!n),(i=br.Eb).tc??(i.tc=64),Vt(i=br.Jb(br.Eb.tc++,0),{open(e){e.seekable=!1},close(){n?.buffer?.length&&n(10)},read(e,t,n,i){for(var o=0,s=0;s<i;s++){try{var a=r()}catch(e){throw new br.cb(29)}if(void 0===a&&0===o)throw new br.cb(6);if(null==a)break;o++,t[n+s]=a}return o&&(e.node.atime=Date.now()),o},write(e,t,r,i){for(var o=0;o<i;o++)try{n(t[r+o])}catch(e){throw new br.cb(29)}return i&&(e.node.mtime=e.node.ctime=Date.now()),o}}),lr(e,t,i)}},fr=e=>"]"==e.slice(-1)&&e.lastIndexOf("["),pr=[],mr=e=>0==(e-=5120)?w:1==e?g:2==e?y:4==e?$:6==e?E:5==e||28922==e||28520==e||30779==e||30782==e?A:_,vr=e=>{var t=Ce.dd;if(t){var r=t.Zb[e];return"number"==typeof r&&(t.Zb[e]=r=Ce.getUniformLocation(t,t.Vc[e]+(0<r?`[${r}]`:""))),r}Oe||=1282},wr=[],gr=[];(()=>{let e=ne.prototype;Object.assign(e,{isAliasOf:function(e){if(!(this instanceof ne&&e instanceof ne))return!1;var t=this.eb.lb.jb,r=this.eb.ib;e.eb=e.eb;var n=e.eb.lb.jb;for(e=e.eb.ib;t.qb;)r=t.$b(r),t=t.qb;for(;n.qb;)e=n.$b(e),n=n.qb;return t===n&&r===e},clone:function(){if(this.eb.ib||Z(this),this.eb.Xb)return this.eb.count.value+=1,this;var e=re,t=Object,r=t.create,n=Object.getPrototypeOf(this),i=this.eb;return(e=e(r.call(t,n,{eb:{value:{count:i.count,Ub:i.Ub,Xb:i.Xb,ib:i.ib,lb:i.lb,ob:i.ob,tb:i.tb}}}))).eb.count.value+=1,e.eb.Ub=!1,e},delete(){if(this.eb.ib||Z(this),this.eb.Ub&&!this.eb.Xb)throw new J("Object already scheduled for deletion");te(this);var e=this.eb;--e.count.value,0===e.count.value&&(e.ob?e.tb.Fb(e.ob):e.lb.jb.Fb(e.ib)),this.eb.Xb||(this.eb.ob=void 0,this.eb.ib=void 0)},isDeleted:function(){return!this.eb.ib},deleteLater:function(){if(this.eb.ib||Z(this),this.eb.Ub&&!this.eb.Xb)throw new J("Object already scheduled for deletion");return this.eb.Ub=!0,this}});const t=Symbol.dispose;t&&(e[t]=e.delete)})(),Object.assign(ge.prototype,{md(e){return this.Rc&&(e=this.Rc(e)),e},Cc(e){this.Fb?.(e)},Db:fe,pb:function(e){function t(){return we(this.jb.Nb,this.ec?{lb:this.vd,ib:r,tb:this,ob:e}:{lb:this,ib:e})}var r=this.md(e);if(!r)return this.Cc(e),null;var n=((e,t)=>{if(void 0===t)throw new J("pt