@hpcc-js/wasm
Version:
hpcc-js - WASM Libraries
1 lines • 798 kB
JavaScript
var Ho=ArrayBuffer,Q=Uint8Array,dr=Uint16Array,Go=Int16Array,cr=Int32Array,Xr=function(l,w,c){if(Q.prototype.slice)return Q.prototype.slice.call(l,w,c);(w==null||w<0)&&(w=0),(c==null||c>l.length)&&(c=l.length);var v=new Q(c-w);return v.set(l.subarray(w,c)),v},Vt=function(l,w,c,v){if(Q.prototype.fill)return Q.prototype.fill.call(l,w,c,v);for((c==null||c<0)&&(c=0),(v==null||v>l.length)&&(v=l.length);c<v;++c)l[c]=w;return l},So=function(l,w,c,v){if(Q.prototype.copyWithin)return Q.prototype.copyWithin.call(l,w,c,v);for((c==null||c<0)&&(c=0),(v==null||v>l.length)&&(v=l.length);c<v;)l[w++]=l[c++]},_o=["invalid zstd data","window size too large (>2046MB)","invalid block type","FSE accuracy too high","match distance too far back","unexpected EOF"],q=function(l,w,c){var v=new Error(w||_o[l]);if(v.code=l,Error.captureStackTrace&&Error.captureStackTrace(v,q),!c)throw v;return v},Ce=function(l,w,c){for(var v=0,f=0;v<c;++v)f|=l[w++]<<(v<<3);return f},zo=function(l,w){return(l[w]|l[w+1]<<8|l[w+2]<<16|l[w+3]<<24)>>>0},jo=function(l,w){var c=l[0]|l[1]<<8|l[2]<<16;if(c==3126568&&l[3]==253){var v=l[4],f=v>>5&1,Y=v>>2&1,M=v&3,B=v>>6;v&8&&q(0);var P=6-f,L=M==3?4:M,K=Ce(l,P,L);P+=L;var G=B?1<<B:f,H=Ce(l,P,G)+(B==1&&256),j=H;if(!f){var A=1<<10+(l[5]>>3);j=A+(A>>3)*(l[5]&7)}j>2145386496&&q(1);var E=new Q((w==1?H||j:w?0:j)+12);return E[0]=1,E[4]=4,E[8]=8,{b:P+G,y:0,l:0,d:K,w:w&&w!=1?w:E.subarray(12),e:j,o:new cr(E.buffer,0,3),u:H,c:Y,m:Math.min(131072,j)}}else if((c>>4|l[3]<<20)==25481893)return zo(l,4)+8;q(0)},Ft=function(l){for(var w=0;1<<w<=l;++w);return w-1},Kt=function(l,w,c){var v=(w<<3)+4,f=(l[w]&15)+5;f>c&&q(3);for(var Y=1<<f,M=Y,B=-1,P=-1,L=-1,K=Y,G=new Ho(512+(Y<<2)),H=new Go(G,0,256),j=new dr(G,0,256),A=new dr(G,512,Y),E=512+(Y<<1),W=new Q(G,E,Y),it=new Q(G,E+Y);B<255&&M>0;){var tt=Ft(M+1),N=v>>3,V=(1<<tt+1)-1,k=(l[N]|l[N+1]<<8|l[N+2]<<16)>>(v&7)&V,X=(1<<tt)-1,C=V-M-1,R=k&X;if(R<C?(v+=tt,k=R):(v+=tt+1,k>X&&(k-=C)),H[++B]=--k,k==-1?(M+=k,W[--K]=B):M-=k,!k)do{var ut=v>>3;P=(l[ut]|l[ut+1]<<8)>>(v&7)&3,v+=2,B+=P}while(P==3)}(B>255||M)&&q(0);for(var et=0,at=(Y>>1)+(Y>>3)+3,st=Y-1,dt=0;dt<=B;++dt){var S=H[dt];if(S<1){j[dt]=-S;continue}for(L=0;L<S;++L){W[et]=dt;do et=et+at&st;while(et>=K)}}for(et&&q(0),L=0;L<Y;++L){var $=j[W[L]]++,U=it[L]=f-Ft($);A[L]=($<<U)-Y}return[v+7>>3,{b:f,s:W,n:it,t:A}]},ko=function(l,w){var c=0,v=-1,f=new Q(292),Y=l[w],M=f.subarray(0,256),B=f.subarray(256,268),P=new dr(f.buffer,268);if(Y<128){var L=Kt(l,w+1,6),K=L[0],G=L[1];w+=Y;var H=K<<3,j=l[w];j||q(0);for(var A=0,E=0,W=G.b,it=W,tt=(++w<<3)-8+Ft(j);tt-=W,!(tt<H);){var N=tt>>3;if(A+=(l[N]|l[N+1]<<8)>>(tt&7)&(1<<W)-1,M[++v]=G.s[A],tt-=it,tt<H)break;N=tt>>3,E+=(l[N]|l[N+1]<<8)>>(tt&7)&(1<<it)-1,M[++v]=G.s[E],W=G.n[A],A=G.t[A],it=G.n[E],E=G.t[E]}++v>255&&q(0)}else{for(v=Y-127;c<v;c+=2){var V=l[++w];M[c]=V>>4,M[c+1]=V&15}++w}var k=0;for(c=0;c<v;++c){var X=M[c];X>11&&q(0),k+=X&&1<<X-1}var C=Ft(k)+1,R=1<<C,ut=R-k;for(ut&ut-1&&q(0),M[v++]=Ft(ut)+1,c=0;c<v;++c){var X=M[c];++B[M[c]=X&&C+1-X]}var et=new Q(R<<1),at=et.subarray(0,R),st=et.subarray(R);for(P[C]=0,c=C;c>0;--c){var dt=P[c];Vt(st,c,dt,P[c-1]=dt+B[c]*(1<<C-c))}for(P[0]!=R&&q(0),c=0;c<v;++c){var S=M[c];if(S){var $=P[S];Vt(at,c,$,P[S]=$+(1<<C-S))}}return[w,{n:st,b:C,s:at}]},Uo=Kt(new Q([81,16,99,140,49,198,24,99,12,33,196,24,99,102,102,134,70,146,4]),0,6)[1],To=Kt(new Q([33,20,196,24,99,140,33,132,16,66,8,33,132,16,66,8,33,68,68,68,68,68,68,68,68,36,9]),0,6)[1],Io=Kt(new Q([32,132,16,66,102,70,68,68,68,68,36,73,2]),0,5)[1],Me=function(l,w){for(var c=l.length,v=new cr(c),f=0;f<c;++f)v[f]=w,w+=1<<l[f];return v},Er=new Q(new cr([0,0,0,0,16843009,50528770,134678020,202050057,269422093]).buffer,0,36),Wo=Me(Er,0),br=new Q(new cr([0,0,0,0,0,0,0,0,16843009,50528770,117769220,185207048,252579084,16]).buffer,0,53),Vo=Me(br,3),Wt=function(l,w,c){var v=l.length,f=w.length,Y=l[v-1],M=(1<<c.b)-1,B=-c.b;Y||q(0);for(var P=0,L=c.b,K=(v<<3)-8+Ft(Y)-L,G=-1;K>B&&G<f;){var H=K>>3,j=(l[H]|l[H+1]<<8|l[H+2]<<16)>>(K&7);P=(P<<L|j)&M,w[++G]=c.s[P],K-=L=c.n[P]}(K!=B||G+1!=f)&&q(0)},Ko=function(l,w,c){var v=6,f=w.length,Y=f+3>>2,M=Y<<1,B=Y+M;Wt(l.subarray(v,v+=l[0]|l[1]<<8),w.subarray(0,Y),c),Wt(l.subarray(v,v+=l[2]|l[3]<<8),w.subarray(Y,M),c),Wt(l.subarray(v,v+=l[4]|l[5]<<8),w.subarray(M,B),c),Wt(l.subarray(v),w.subarray(B),c)},Qo=function(l,w,c){var v,f=w.b,Y=l[f],M=Y>>1&3;w.l=Y&1;var B=Y>>3|l[f+1]<<5|l[f+2]<<13,P=(f+=3)+B;if(M==1)return f>=l.length?void 0:(w.b=f+1,c?(Vt(c,l[f],w.y,w.y+=B),c):Vt(new Q(B),l[f]));if(!(P>l.length)){if(M==0)return w.b=P,c?(c.set(l.subarray(f,P),w.y),w.y+=B,c):Xr(l,f,P);if(M==2){var L=l[f],K=L&3,G=L>>2&3,H=L>>4,j=0,A=0;K<2?G&1?H|=l[++f]<<4|(G&2&&l[++f]<<12):H=L>>3:(A=G,G<2?(H|=(l[++f]&63)<<4,j=l[f]>>6|l[++f]<<2):G==2?(H|=l[++f]<<4|(l[++f]&3)<<12,j=l[f]>>2|l[++f]<<6):(H|=l[++f]<<4|(l[++f]&63)<<12,j=l[f]>>6|l[++f]<<2|l[++f]<<10)),++f;var E=c?c.subarray(w.y,w.y+w.m):new Q(w.m),W=E.length-H;if(K==0)E.set(l.subarray(f,f+=H),W);else if(K==1)Vt(E,l[f++],W);else{var it=w.h;if(K==2){var tt=ko(l,f);j+=f-(f=tt[0]),w.h=it=tt[1]}else it||q(0);(A?Ko:Wt)(l.subarray(f,f+=j),E.subarray(W),it)}var N=l[f++];if(N){N==255?N=(l[f++]|l[f++]<<8)+32512:N>127&&(N=N-128<<8|l[f++]);var V=l[f++];V&3&&q(0);for(var k=[To,Io,Uo],X=2;X>-1;--X){var C=V>>(X<<1)+2&3;if(C==1){var R=new Q([0,0,l[f++]]);k[X]={s:R.subarray(2,3),n:R.subarray(0,1),t:new dr(R.buffer,0,1),b:0}}else C==2?(v=Kt(l,f,9-(X&1)),f=v[0],k[X]=v[1]):C==3&&(w.t||q(0),k[X]=w.t[X])}var ut=w.t=k,et=ut[0],at=ut[1],st=ut[2],dt=l[P-1];dt||q(0);var S=(P<<3)-8+Ft(dt)-st.b,$=S>>3,U=0,mt=(l[$]|l[$+1]<<8)>>(S&7)&(1<<st.b)-1;$=(S-=at.b)>>3;var Pt=(l[$]|l[$+1]<<8)>>(S&7)&(1<<at.b)-1;$=(S-=et.b)>>3;var Xt=(l[$]|l[$+1]<<8)>>(S&7)&(1<<et.b)-1;for(++N;--N;){var Zt=st.s[mt],Qt=st.n[mt],Ht=et.s[Xt],Jt=et.n[Xt],qt=at.s[Pt],p=at.n[Pt];$=(S-=qt)>>3;var D=1<<qt,ft=D+((l[$]|l[$+1]<<8|l[$+2]<<16|l[$+3]<<24)>>>(S&7)&D-1);$=(S-=br[Ht])>>3;var Ct=Vo[Ht]+((l[$]|l[$+1]<<8|l[$+2]<<16)>>(S&7)&(1<<br[Ht])-1);$=(S-=Er[Zt])>>3;var Bt=Wo[Zt]+((l[$]|l[$+1]<<8|l[$+2]<<16)>>(S&7)&(1<<Er[Zt])-1);if($=(S-=Qt)>>3,mt=st.t[mt]+((l[$]|l[$+1]<<8)>>(S&7)&(1<<Qt)-1),$=(S-=Jt)>>3,Xt=et.t[Xt]+((l[$]|l[$+1]<<8)>>(S&7)&(1<<Jt)-1),$=(S-=p)>>3,Pt=at.t[Pt]+((l[$]|l[$+1]<<8)>>(S&7)&(1<<p)-1),ft>3)w.o[2]=w.o[1],w.o[1]=w.o[0],w.o[0]=ft-=3;else{var wt=ft-(Bt!=0);wt?(ft=wt==3?w.o[0]-1:w.o[wt],wt>1&&(w.o[2]=w.o[1]),w.o[1]=w.o[0],w.o[0]=ft):ft=w.o[0]}for(var X=0;X<Bt;++X)E[U+X]=E[W+X];U+=Bt,W+=Bt;var ot=U-ft;if(ot<0){var Rt=-ot,Z=w.e+ot;Rt>Ct&&(Rt=Ct);for(var X=0;X<Rt;++X)E[U+X]=w.w[Z+X];U+=Rt,Ct-=Rt,ot=0}for(var X=0;X<Ct;++X)E[U+X]=E[ot+X];U+=Ct}if(U!=W)for(;W<E.length;)E[U++]=E[W++];else U=E.length;c?w.y+=U:E=Xr(E,0,U)}else if(c){if(w.y+=H,W)for(var X=0;X<H;++X)E[X]=E[W+X]}else W&&(E=Xr(E,W));return w.b=P,E}q(2)}},Jo=function(l,w){if(l.length==1)return l[0];for(var c=new Q(w),v=0,f=0;v<l.length;++v){var Y=l[v];c.set(Y,f),f+=Y.length}return c};function qo(l,w){for(var c=[],v=+!w,f=0,Y=0;l.length;){var M=jo(l,v||w);if(typeof M=="object"){for(v?(w=null,M.w.length==M.u&&(c.push(w=M.w),Y+=M.u)):(c.push(w),M.e=0);!M.l;){var B=Qo(l,M,w);B||q(5),w?M.e=M.y:(c.push(B),Y+=B.length,So(M.w,0,B.length),M.w.set(B,M.w.length-B.length))}f=M.b+M.c*4}else f=M;l=l.subarray(f)}return Jo(c,Y)}async function Ao(l={}){var w,c=l,v=!1,f="./this.program",Y=(t,r)=>{throw r},M="",B="";function P(t){return B+t}var L,K,G=console.log.bind(console),H=console.error.bind(console),j,A=!1,E,W=t=>t.startsWith("file://"),it,tt,N,V,k,X,C,R,ut,et,at=!1;function st(){var t=sr.buffer;N=new Int8Array(t),k=new Int16Array(t),c.HEAPU8=V=new Uint8Array(t),X=new Uint16Array(t),C=new Int32Array(t),R=new Uint32Array(t),ut=new Float32Array(t),et=new Float64Array(t)}function dt(){}function S(){at=!0,!c.noFSInit&&!o.initialized&&o.init(),Mt.init(),It.S(),o.ignorePermissions=!1}function $(){}function U(t){t="Aborted("+t+")",H(t),A=!0,t+=". Build with -sASSERTIONS for more info.",at&&le();var r=new WebAssembly.RuntimeError(t);throw tt?.(r),r}var mt;let Pt=()=>"";function Xt(t){if(t==mt&&j)return new Uint8Array(j);if(K)return K(t);throw"both async and sync fetching of the wasm failed"}async function Zt(t){if(!j)try{var r=await L(t);return new Uint8Array(r)}catch{}return Xt(t)}async function Qt(t,r){try{var e=await Zt(t),n=await WebAssembly.instantiate(e,r);return n}catch(a){H(`failed to asynchronously prepare wasm: ${a}`),U(a)}}async function Ht(t,r,e){if(!t&&!W(r))try{var n=fetch(r,{credentials:"same-origin"}),a=await WebAssembly.instantiateStreaming(n,e);return a}catch(i){H(`wasm streaming compile failed: ${i}`),H("falling back to ArrayBuffer instantiation")}return Qt(r,e)}function Jt(){var t={a:Zo};return t}async function qt(){function t(i,u){return It=i.exports,No(It),st(),It}function r(i){return t(i.instance)}var e=Jt();mt??=Pt();var n=await Ht(j,mt,e),a=r(n);return a}var p,D;class ft{name="ExitStatus";constructor(r){this.message=`Program terminated with exit(${r})`,this.status=r}}var Ct=globalThis.TextDecoder&&new TextDecoder,Bt=(t,r,e,n)=>{var a=r+e;if(n)return a;for(;t[r]&&!(r>=a);)++r;return r},wt=(t,r=0,e,n)=>{var a=Bt(t,r,e,n);if(a-r>16&&t.buffer&&Ct)return Ct.decode(t.subarray(r,a));for(var i="";r<a;){var u=t[r++];if(!(u&128)){i+=String.fromCharCode(u);continue}var s=t[r++]&63;if((u&224)==192){i+=String.fromCharCode((u&31)<<6|s);continue}var d=t[r++]&63;if((u&240)==224?u=(u&15)<<12|s<<6|d:u=(u&7)<<18|s<<12|d<<6|t[r++]&63,u<65536)i+=String.fromCharCode(u);else{var h=u-65536;i+=String.fromCharCode(55296|h>>10,56320|h&1023)}}return i},ot=(t,r,e)=>t?wt(V,t,r,e):"",Rt=(t,r,e,n)=>U(`Assertion failed: ${ot(t)}, at: `+[r?ot(r):"unknown filename",e,n?ot(n):"unknown function"]),Z={isAbs:t=>t.charAt(0)==="/",splitPath:t=>{var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return r.exec(t).slice(1)},normalizeArray:(t,r)=>{for(var e=0,n=t.length-1;n>=0;n--){var a=t[n];a==="."?t.splice(n,1):a===".."?(t.splice(n,1),e++):e&&(t.splice(n,1),e--)}if(r)for(;e;e--)t.unshift("..");return t},normalize:t=>{var r=Z.isAbs(t),e=t.slice(-1)==="/";return t=Z.normalizeArray(t.split("/").filter(n=>!!n),!r).join("/"),!t&&!r&&(t="."),t&&e&&(t+="/"),(r?"/":"")+t},dirname:t=>{var r=Z.splitPath(t),e=r[0],n=r[1];return!e&&!n?".":(n&&(n=n.slice(0,-1)),e+n)},basename:t=>t&&t.match(/([^\/]+|\/)\/*$/)[1],join:(...t)=>Z.normalize(t.join("/")),join2:(t,r)=>Z.normalize(t+"/"+r)},Ye=()=>t=>crypto.getRandomValues(t),$r=t=>{($r=Ye())(t)},Et={resolve:(...t)=>{for(var r="",e=!1,n=t.length-1;n>=-1&&!e;n--){var a=n>=0?t[n]:o.cwd();if(typeof a!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!a)return"";r=a+"/"+r,e=Z.isAbs(a)}return r=Z.normalizeArray(r.split("/").filter(i=>!!i),!e).join("/"),(e?"/":"")+r||"."},relative:(t,r)=>{t=Et.resolve(t).slice(1),r=Et.resolve(r).slice(1);function e(h){for(var g=0;g<h.length&&h[g]==="";g++);for(var O=h.length-1;O>=0&&h[O]==="";O--);return g>O?[]:h.slice(g,O-g+1)}for(var n=e(t.split("/")),a=e(r.split("/")),i=Math.min(n.length,a.length),u=i,s=0;s<i;s++)if(n[s]!==a[s]){u=s;break}for(var d=[],s=u;s<n.length;s++)d.push("..");return d=d.concat(a.slice(u)),d.join("/")}},wr=[],Gt=t=>{for(var r=0,e=0;e<t.length;++e){var n=t.charCodeAt(e);n<=127?r++:n<=2047?r+=2:n>=55296&&n<=57343?(r+=4,++e):r+=3}return r},xr=(t,r,e,n)=>{if(!(n>0))return 0;for(var a=e,i=e+n-1,u=0;u<t.length;++u){var s=t.codePointAt(u);if(s<=127){if(e>=i)break;r[e++]=s}else if(s<=2047){if(e+1>=i)break;r[e++]=192|s>>6,r[e++]=128|s&63}else if(s<=65535){if(e+2>=i)break;r[e++]=224|s>>12,r[e++]=128|s>>6&63,r[e++]=128|s&63}else{if(e+3>=i)break;r[e++]=240|s>>18,r[e++]=128|s>>12&63,r[e++]=128|s>>6&63,r[e++]=128|s&63,u++}}return r[e]=0,e-a},vr=(t,r,e)=>{var n=e>0?e:Gt(t)+1,a=new Array(n),i=xr(t,a,0,a.length);return r&&(a.length=i),a},Oe=()=>{if(!wr.length){var t=null;if(!t)return null;wr=vr(t,!0)}return wr.shift()},Mt={ttys:[],init(){},shutdown(){},register(t,r){Mt.ttys[t]={input:[],output:[],ops:r},o.registerDevice(t,Mt.stream_ops)},stream_ops:{open(t){var r=Mt.ttys[t.node.rdev];if(!r)throw new o.ErrnoError(43);t.tty=r,t.seekable=!1},close(t){t.tty.ops.fsync(t.tty)},fsync(t){t.tty.ops.fsync(t.tty)},read(t,r,e,n,a){if(!t.tty||!t.tty.ops.get_char)throw new o.ErrnoError(60);for(var i=0,u=0;u<n;u++){var s;try{s=t.tty.ops.get_char(t.tty)}catch{throw new o.ErrnoError(29)}if(s===void 0&&i===0)throw new o.ErrnoError(6);if(s==null)break;i++,r[e+u]=s}return i&&(t.node.atime=Date.now()),i},write(t,r,e,n,a){if(!t.tty||!t.tty.ops.put_char)throw new o.ErrnoError(60);try{for(var i=0;i<n;i++)t.tty.ops.put_char(t.tty,r[e+i])}catch{throw new o.ErrnoError(29)}return n&&(t.node.mtime=t.node.ctime=Date.now()),i}},default_tty_ops:{get_char(t){return Oe()},put_char(t,r){r===null||r===10?(G(wt(t.output)),t.output=[]):r!=0&&t.output.push(r)},fsync(t){t.output?.length>0&&(G(wt(t.output)),t.output=[])},ioctl_tcgets(t){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(t,r,e){return 0},ioctl_tiocgwinsz(t){return[24,80]}},default_tty1_ops:{put_char(t,r){r===null||r===10?(H(wt(t.output)),t.output=[]):r!=0&&t.output.push(r)},fsync(t){t.output?.length>0&&(H(wt(t.output)),t.output=[])}}},Be=(t,r)=>V.fill(0,t,t+r),Lr=(t,r)=>Math.ceil(t/r)*r,Nr=t=>{t=Lr(t,65536);var r=ue(65536,t);return r&&Be(r,t),r},F={ops_table:null,mount(t){return F.createNode(null,"/",16895,0)},createNode(t,r,e,n){if(o.isBlkdev(e)||o.isFIFO(e))throw new o.ErrnoError(63);F.ops_table||={dir:{node:{getattr:F.node_ops.getattr,setattr:F.node_ops.setattr,lookup:F.node_ops.lookup,mknod:F.node_ops.mknod,rename:F.node_ops.rename,unlink:F.node_ops.unlink,rmdir:F.node_ops.rmdir,readdir:F.node_ops.readdir,symlink:F.node_ops.symlink},stream:{llseek:F.stream_ops.llseek}},file:{node:{getattr:F.node_ops.getattr,setattr:F.node_ops.setattr},stream:{llseek:F.stream_ops.llseek,read:F.stream_ops.read,write:F.stream_ops.write,mmap:F.stream_ops.mmap,msync:F.stream_ops.msync}},link:{node:{getattr:F.node_ops.getattr,setattr:F.node_ops.setattr,readlink:F.node_ops.readlink},stream:{}},chrdev:{node:{getattr:F.node_ops.getattr,setattr:F.node_ops.setattr},stream:o.chrdev_stream_ops}};var a=o.createNode(t,r,e,n);return o.isDir(a.mode)?(a.node_ops=F.ops_table.dir.node,a.stream_ops=F.ops_table.dir.stream,a.contents={}):o.isFile(a.mode)?(a.node_ops=F.ops_table.file.node,a.stream_ops=F.ops_table.file.stream,a.usedBytes=0,a.contents=F.emptyFileContents??=new Uint8Array(0)):o.isLink(a.mode)?(a.node_ops=F.ops_table.link.node,a.stream_ops=F.ops_table.link.stream):o.isChrdev(a.mode)&&(a.node_ops=F.ops_table.chrdev.node,a.stream_ops=F.ops_table.chrdev.stream),a.atime=a.mtime=a.ctime=Date.now(),t&&(t.contents[r]=a,t.atime=t.mtime=t.ctime=a.atime),a},getFileDataAsTypedArray(t){return t.contents.subarray(0,t.usedBytes)},expandFileStorage(t,r){var e=t.contents.length;if(!(e>=r)){var n=1048576;r=Math.max(r,e*(e<n?2:1.125)>>>0),e&&(r=Math.max(r,256));var a=F.getFileDataAsTypedArray(t);t.contents=new Uint8Array(r),t.contents.set(a)}},resizeFileStorage(t,r){if(t.usedBytes!=r){var e=t.contents;t.contents=new Uint8Array(r),t.contents.set(e.subarray(0,Math.min(r,t.usedBytes))),t.usedBytes=r}},node_ops:{getattr(t){var r={};return r.dev=o.isChrdev(t.mode)?t.id:1,r.ino=t.id,r.mode=t.mode,r.nlink=1,r.uid=0,r.gid=0,r.rdev=t.rdev,o.isDir(t.mode)?r.size=4096:o.isFile(t.mode)?r.size=t.usedBytes:o.isLink(t.mode)?r.size=t.link.length:r.size=0,r.atime=new Date(t.atime),r.mtime=new Date(t.mtime),r.ctime=new Date(t.ctime),r.blksize=4096,r.blocks=Math.ceil(r.size/r.blksize),r},setattr(t,r){for(let e of["mode","atime","mtime","ctime"])r[e]!=null&&(t[e]=r[e]);r.size!==void 0&&F.resizeFileStorage(t,r.size)},lookup(t,r){throw F.doesNotExistError||(F.doesNotExistError=new o.ErrnoError(44),F.doesNotExistError.stack="<generic error, no stack>"),F.doesNotExistError},mknod(t,r,e,n){return F.createNode(t,r,e,n)},rename(t,r,e){var n;try{n=o.lookupNode(r,e)}catch{}if(n){if(o.isDir(t.mode))for(var a in n.contents)throw new o.ErrnoError(55);o.hashRemoveNode(n)}delete t.parent.contents[t.name],r.contents[e]=t,t.name=e,r.ctime=r.mtime=t.parent.ctime=t.parent.mtime=Date.now()},unlink(t,r){delete t.contents[r],t.ctime=t.mtime=Date.now()},rmdir(t,r){var e=o.lookupNode(t,r);for(var n in e.contents)throw new o.ErrnoError(55);delete t.contents[r],t.ctime=t.mtime=Date.now()},readdir(t){return[".","..",...Object.keys(t.contents)]},symlink(t,r,e){var n=F.createNode(t,r,41471,0);return n.link=e,n},readlink(t){if(!o.isLink(t.mode))throw new o.ErrnoError(28);return t.link}},stream_ops:{read(t,r,e,n,a){var i=t.node.contents;if(a>=t.node.usedBytes)return 0;var u=Math.min(t.node.usedBytes-a,n);return r.set(i.subarray(a,a+u),e),u},write(t,r,e,n,a,i){if(r.buffer===N.buffer&&(i=!1),!n)return 0;var u=t.node;return u.mtime=u.ctime=Date.now(),i?(u.contents=r.subarray(e,e+n),u.usedBytes=n):u.usedBytes===0&&a===0?(u.contents=r.slice(e,e+n),u.usedBytes=n):(F.expandFileStorage(u,a+n),u.contents.set(r.subarray(e,e+n),a),u.usedBytes=Math.max(u.usedBytes,a+n)),n},llseek(t,r,e){var n=r;if(e===1?n+=t.position:e===2&&o.isFile(t.node.mode)&&(n+=t.node.usedBytes),n<0)throw new o.ErrnoError(28);return n},mmap(t,r,e,n,a){if(!o.isFile(t.node.mode))throw new o.ErrnoError(43);var i,u,s=t.node.contents;if(!(a&2)&&s.buffer===N.buffer)u=!1,i=s.byteOffset;else{if(u=!0,i=Nr(r),!i)throw new o.ErrnoError(48);s&&((e>0||e+r<s.length)&&(s.subarray?s=s.subarray(e,e+r):s=Array.prototype.slice.call(s,e,e+r)),N.set(s,i))}return{ptr:i,allocated:u}},msync(t,r,e,n,a){return F.stream_ops.write(t,r,0,n,e,!1),0}}},Re=t=>{if(typeof t!="string")return t;var r={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},e=r[t];if(typeof e>"u")throw new Error(`Unknown file open mode: ${t}`);return e},Zr=t=>(typeof t=="string"&&(t=vr(t,!0)),t.subarray||(t=new Uint8Array(t)),t),fr=(t,r)=>{var e=0;return t&&(e|=365),r&&(e|=146),e},Fe=async t=>{var r=await L(t);return new Uint8Array(r)},Pe=(...t)=>o.createDataFile(...t),Xe=t=>t,St=0,_t=null,Ee=t=>{if(St--,St==0&&_t){var r=_t;_t=null,r()}},be=t=>{St++},De=[],$e=async(t,r)=>{typeof Browser<"u"&&Browser.init();for(var e of De)if(e.canHandle(r))return e.handle(t,r);return t},Hr=async(t,r,e,n,a,i,u,s)=>{var d=r?Et.resolve(Z.join2(t,r)):t,h=Xe(`cp ${d}`);be(h);try{var g=e;typeof e=="string"&&(g=await Fe(e)),g=await $e(g,d),s?.(),i||Pe(t,r,g,n,a,u)}finally{Ee(h)}},xe=(t,r,e,n,a,i,u,s,d,h)=>{Hr(t,r,e,n,a,s,d,h).then(i).catch(u)},o={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,filesystems:null,syncFSRequests:0,ErrnoError:class{name="ErrnoError";constructor(t){this.errno=t}},FSStream:class{shared={};get object(){return this.node}set object(t){this.node=t}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(t){this.shared.flags=t}get position(){return this.shared.position}set position(t){this.shared.position=t}},FSNode:class{node_ops={};stream_ops={};readMode=365;writeMode=146;mounted=null;constructor(t,r,e,n){t||(t=this),this.parent=t,this.mount=t.mount,this.id=o.nextInode++,this.name=r,this.mode=e,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(t){t?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(t){t?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return o.isDir(this.mode)}get isDevice(){return o.isChrdev(this.mode)}},lookupPath(t,r={}){if(!t)throw new o.ErrnoError(44);r.follow_mount??=!0,Z.isAbs(t)||(t=o.cwd()+"/"+t);t:for(var e=0;e<40;e++){for(var n=t.split("/").filter(h=>!!h),a=o.root,i="/",u=0;u<n.length;u++){var s=u===n.length-1;if(s&&r.parent)break;if(n[u]!=="."){if(n[u]===".."){if(i=Z.dirname(i),o.isRoot(a)){t=i+"/"+n.slice(u+1).join("/"),e--;continue t}else a=a.parent;continue}i=Z.join2(i,n[u]);try{a=o.lookupNode(a,n[u])}catch(h){if(h?.errno===44&&s&&r.noent_okay)return{path:i};throw h}if(o.isMountpoint(a)&&(!s||r.follow_mount)&&(a=a.mounted.root),o.isLink(a.mode)&&(!s||r.follow)){if(!a.node_ops.readlink)throw new o.ErrnoError(52);var d=a.node_ops.readlink(a);Z.isAbs(d)||(d=Z.dirname(i)+"/"+d),t=d+"/"+n.slice(u+1).join("/");continue t}}}return{path:i,node:a}}throw new o.ErrnoError(32)},getPath(t){for(var r;;){if(o.isRoot(t)){var e=t.mount.mountpoint;return r?e[e.length-1]!=="/"?`${e}/${r}`:e+r:e}r=r?`${t.name}/${r}`:t.name,t=t.parent}},hashName(t,r){for(var e=0,n=0;n<r.length;n++)e=(e<<5)-e+r.charCodeAt(n)|0;return(t+e>>>0)%o.nameTable.length},hashAddNode(t){var r=o.hashName(t.parent.id,t.name);t.name_next=o.nameTable[r],o.nameTable[r]=t},hashRemoveNode(t){var r=o.hashName(t.parent.id,t.name);if(o.nameTable[r]===t)o.nameTable[r]=t.name_next;else for(var e=o.nameTable[r];e;){if(e.name_next===t){e.name_next=t.name_next;break}e=e.name_next}},lookupNode(t,r){var e=o.mayLookup(t);if(e)throw new o.ErrnoError(e);for(var n=o.hashName(t.id,r),a=o.nameTable[n];a;a=a.name_next){var i=a.name;if(a.parent.id===t.id&&i===r)return a}return o.lookup(t,r)},createNode(t,r,e,n){var a=new o.FSNode(t,r,e,n);return o.hashAddNode(a),a},destroyNode(t){o.hashRemoveNode(t)},isRoot(t){return t===t.parent},isMountpoint(t){return!!t.mounted},isFile(t){return(t&61440)===32768},isDir(t){return(t&61440)===16384},isLink(t){return(t&61440)===40960},isChrdev(t){return(t&61440)===8192},isBlkdev(t){return(t&61440)===24576},isFIFO(t){return(t&61440)===4096},isSocket(t){return(t&49152)===49152},flagsToPermissionString(t){var r=["r","w","rw"][t&3];return t&512&&(r+="w"),r},nodePermissions(t,r){return o.ignorePermissions?0:r.includes("r")&&!(t.mode&292)||r.includes("w")&&!(t.mode&146)||r.includes("x")&&!(t.mode&73)?2:0},mayLookup(t){if(!o.isDir(t.mode))return 54;var r=o.nodePermissions(t,"x");return r||(t.node_ops.lookup?0:2)},mayCreate(t,r){if(!o.isDir(t.mode))return 54;try{var e=o.lookupNode(t,r);return 20}catch{}return o.nodePermissions(t,"wx")},mayDelete(t,r,e){var n;try{n=o.lookupNode(t,r)}catch(i){return i.errno}var a=o.nodePermissions(t,"wx");if(a)return a;if(e){if(!o.isDir(n.mode))return 54;if(o.isRoot(n)||o.getPath(n)===o.cwd())return 10}else if(o.isDir(n.mode))return 31;return 0},mayOpen(t,r){if(!t)return 44;if(o.isLink(t.mode))return 32;var e=o.flagsToPermissionString(r);return o.isDir(t.mode)&&(e!=="r"||r&576)?31:o.nodePermissions(t,e)},checkOpExists(t,r){if(!t)throw new o.ErrnoError(r);return t},MAX_OPEN_FDS:4096,nextfd(){for(var t=0;t<=o.MAX_OPEN_FDS;t++)if(!o.streams[t])return t;throw new o.ErrnoError(33)},getStreamChecked(t){var r=o.getStream(t);if(!r)throw new o.ErrnoError(8);return r},getStream:t=>o.streams[t],createStream(t,r=-1){return t=Object.assign(new o.FSStream,t),r==-1&&(r=o.nextfd()),t.fd=r,o.streams[r]=t,t},closeStream(t){o.streams[t]=null},dupStream(t,r=-1){var e=o.createStream(t,r);return e.stream_ops?.dup?.(e),e},doSetAttr(t,r,e){var n=t?.stream_ops.setattr,a=n?t:r;n??=r.node_ops.setattr,o.checkOpExists(n,63),n(a,e)},chrdev_stream_ops:{open(t){var r=o.getDevice(t.node.rdev);t.stream_ops=r.stream_ops,t.stream_ops.open?.(t)},llseek(){throw new o.ErrnoError(70)}},major:t=>t>>8,minor:t=>t&255,makedev:(t,r)=>t<<8|r,registerDevice(t,r){o.devices[t]={stream_ops:r}},getDevice:t=>o.devices[t],getMounts(t){for(var r=[],e=[t];e.length;){var n=e.pop();r.push(n),e.push(...n.mounts)}return r},syncfs(t,r){typeof t=="function"&&(r=t,t=!1),o.syncFSRequests++,o.syncFSRequests>1&&H(`warning: ${o.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var e=o.getMounts(o.root.mount),n=0;function a(s){return o.syncFSRequests--,r(s)}function i(s){if(s)return i.errored?void 0:(i.errored=!0,a(s));++n>=e.length&&a(null)}for(var u of e)u.type.syncfs?u.type.syncfs(u,t,i):i(null)},mount(t,r,e){var n=e==="/",a=!e,i;if(n&&o.root)throw new o.ErrnoError(10);if(!n&&!a){var u=o.lookupPath(e,{follow_mount:!1});if(e=u.path,i=u.node,o.isMountpoint(i))throw new o.ErrnoError(10);if(!o.isDir(i.mode))throw new o.ErrnoError(54)}var s={type:t,opts:r,mountpoint:e,mounts:[]},d=t.mount(s);return d.mount=s,s.root=d,n?o.root=d:i&&(i.mounted=s,i.mount&&i.mount.mounts.push(s)),d},unmount(t){var r=o.lookupPath(t,{follow_mount:!1});if(!o.isMountpoint(r.node))throw new o.ErrnoError(28);var e=r.node,n=e.mounted,a=o.getMounts(n);for(var[i,u]of Object.entries(o.nameTable))for(;u;){var s=u.name_next;a.includes(u.mount)&&o.destroyNode(u),u=s}e.mounted=null;var d=e.mount.mounts.indexOf(n);e.mount.mounts.splice(d,1)},lookup(t,r){return t.node_ops.lookup(t,r)},mknod(t,r,e){var n=o.lookupPath(t,{parent:!0}),a=n.node,i=Z.basename(t);if(!i)throw new o.ErrnoError(28);if(i==="."||i==="..")throw new o.ErrnoError(20);var u=o.mayCreate(a,i);if(u)throw new o.ErrnoError(u);if(!a.node_ops.mknod)throw new o.ErrnoError(63);return a.node_ops.mknod(a,i,r,e)},statfs(t){return o.statfsNode(o.lookupPath(t,{follow:!0}).node)},statfsStream(t){return o.statfsNode(t.node)},statfsNode(t){var r={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:o.nextInode,ffree:o.nextInode-1,fsid:42,flags:2,namelen:255};return t.node_ops.statfs&&Object.assign(r,t.node_ops.statfs(t.mount.opts.root)),r},create(t,r=438){return r&=4095,r|=32768,o.mknod(t,r,0)},mkdir(t,r=511){return r&=1023,r|=16384,o.mknod(t,r,0)},mkdirTree(t,r){var e=t.split("/"),n="";for(var a of e)if(a){(n||Z.isAbs(t))&&(n+="/"),n+=a;try{o.mkdir(n,r)}catch(i){if(i.errno!=20)throw i}}},mkdev(t,r,e){return typeof e>"u"&&(e=r,r=438),r|=8192,o.mknod(t,r,e)},symlink(t,r){if(!Et.resolve(t))throw new o.ErrnoError(44);var e=o.lookupPath(r,{parent:!0}),n=e.node;if(!n)throw new o.ErrnoError(44);var a=Z.basename(r),i=o.mayCreate(n,a);if(i)throw new o.ErrnoError(i);if(!n.node_ops.symlink)throw new o.ErrnoError(63);return n.node_ops.symlink(n,a,t)},rename(t,r){var e=Z.dirname(t),n=Z.dirname(r),a=Z.basename(t),i=Z.basename(r),u,s,d;if(u=o.lookupPath(t,{parent:!0}),s=u.node,u=o.lookupPath(r,{parent:!0}),d=u.node,!s||!d)throw new o.ErrnoError(44);if(s.mount!==d.mount)throw new o.ErrnoError(75);var h=o.lookupNode(s,a),g=Et.relative(t,n);if(g.charAt(0)!==".")throw new o.ErrnoError(28);if(g=Et.relative(r,e),g.charAt(0)!==".")throw new o.ErrnoError(55);var O;try{O=o.lookupNode(d,i)}catch{}if(h!==O){var m=o.isDir(h.mode),y=o.mayDelete(s,a,m);if(y)throw new o.ErrnoError(y);if(y=O?o.mayDelete(d,i,m):o.mayCreate(d,i),y)throw new o.ErrnoError(y);if(!s.node_ops.rename)throw new o.ErrnoError(63);if(o.isMountpoint(h)||O&&o.isMountpoint(O))throw new o.ErrnoError(10);if(d!==s&&(y=o.nodePermissions(s,"w"),y))throw new o.ErrnoError(y);o.hashRemoveNode(h);try{s.node_ops.rename(h,d,i),h.parent=d}catch(b){throw b}finally{o.hashAddNode(h)}}},rmdir(t){var r=o.lookupPath(t,{parent:!0}),e=r.node,n=Z.basename(t),a=o.lookupNode(e,n),i=o.mayDelete(e,n,!0);if(i)throw new o.ErrnoError(i);if(!e.node_ops.rmdir)throw new o.ErrnoError(63);if(o.isMountpoint(a))throw new o.ErrnoError(10);e.node_ops.rmdir(e,n),o.destroyNode(a)},readdir(t){var r=o.lookupPath(t,{follow:!0}),e=r.node,n=o.checkOpExists(e.node_ops.readdir,54);return n(e)},unlink(t){var r=o.lookupPath(t,{parent:!0}),e=r.node;if(!e)throw new o.ErrnoError(44);var n=Z.basename(t),a=o.lookupNode(e,n),i=o.mayDelete(e,n,!1);if(i)throw new o.ErrnoError(i);if(!e.node_ops.unlink)throw new o.ErrnoError(63);if(o.isMountpoint(a))throw new o.ErrnoError(10);e.node_ops.unlink(e,n),o.destroyNode(a)},readlink(t){var r=o.lookupPath(t),e=r.node;if(!e)throw new o.ErrnoError(44);if(!e.node_ops.readlink)throw new o.ErrnoError(28);return e.node_ops.readlink(e)},stat(t,r){var e=o.lookupPath(t,{follow:!r}),n=e.node,a=o.checkOpExists(n.node_ops.getattr,63);return a(n)},fstat(t){var r=o.getStreamChecked(t),e=r.node,n=r.stream_ops.getattr,a=n?r:e;return n??=e.node_ops.getattr,o.checkOpExists(n,63),n(a)},lstat(t){return o.stat(t,!0)},doChmod(t,r,e,n){o.doSetAttr(t,r,{mode:e&4095|r.mode&-4096,ctime:Date.now(),dontFollow:n})},chmod(t,r,e){var n;if(typeof t=="string"){var a=o.lookupPath(t,{follow:!e});n=a.node}else n=t;o.doChmod(null,n,r,e)},lchmod(t,r){o.chmod(t,r,!0)},fchmod(t,r){var e=o.getStreamChecked(t);o.doChmod(e,e.node,r,!1)},doChown(t,r,e){o.doSetAttr(t,r,{timestamp:Date.now(),dontFollow:e})},chown(t,r,e,n){var a;if(typeof t=="string"){var i=o.lookupPath(t,{follow:!n});a=i.node}else a=t;o.doChown(null,a,n)},lchown(t,r,e){o.chown(t,r,e,!0)},fchown(t,r,e){var n=o.getStreamChecked(t);o.doChown(n,n.node,!1)},doTruncate(t,r,e){if(o.isDir(r.mode))throw new o.ErrnoError(31);if(!o.isFile(r.mode))throw new o.ErrnoError(28);var n=o.nodePermissions(r,"w");if(n)throw new o.ErrnoError(n);o.doSetAttr(t,r,{size:e,timestamp:Date.now()})},truncate(t,r){if(r<0)throw new o.ErrnoError(28);var e;if(typeof t=="string"){var n=o.lookupPath(t,{follow:!0});e=n.node}else e=t;o.doTruncate(null,e,r)},ftruncate(t,r){var e=o.getStreamChecked(t);if(r<0||(e.flags&2097155)===0)throw new o.ErrnoError(28);o.doTruncate(e,e.node,r)},utime(t,r,e){var n=o.lookupPath(t,{follow:!0}),a=n.node,i=o.checkOpExists(a.node_ops.setattr,63);i(a,{atime:r,mtime:e})},open(t,r,e=438){if(t==="")throw new o.ErrnoError(44);r=Re(r),r&64?e=e&4095|32768:e=0;var n,a;if(typeof t=="object")n=t;else{a=t.endsWith("/");var i=o.lookupPath(t,{follow:!(r&131072),noent_okay:!0});n=i.node,t=i.path}var u=!1;if(r&64)if(n){if(r&128)throw new o.ErrnoError(20)}else{if(a)throw new o.ErrnoError(31);n=o.mknod(t,e|511,0),u=!0}if(!n)throw new o.ErrnoError(44);if(o.isChrdev(n.mode)&&(r&=-513),r&65536&&!o.isDir(n.mode))throw new o.ErrnoError(54);if(!u){var s=o.mayOpen(n,r);if(s)throw new o.ErrnoError(s)}r&512&&!u&&o.truncate(n,0),r&=-131713;var d=o.createStream({node:n,path:o.getPath(n),flags:r,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return d.stream_ops.open&&d.stream_ops.open(d),u&&o.chmod(n,e&511),d},close(t){if(o.isClosed(t))throw new o.ErrnoError(8);t.getdents&&(t.getdents=null);try{t.stream_ops.close&&t.stream_ops.close(t)}catch(r){throw r}finally{o.closeStream(t.fd)}t.fd=null},isClosed(t){return t.fd===null},llseek(t,r,e){if(o.isClosed(t))throw new o.ErrnoError(8);if(!t.seekable||!t.stream_ops.llseek)throw new o.ErrnoError(70);if(e!=0&&e!=1&&e!=2)throw new o.ErrnoError(28);return t.position=t.stream_ops.llseek(t,r,e),t.ungotten=[],t.position},read(t,r,e,n,a){if(n<0||a<0)throw new o.ErrnoError(28);if(o.isClosed(t))throw new o.ErrnoError(8);if((t.flags&2097155)===1)throw new o.ErrnoError(8);if(o.isDir(t.node.mode))throw new o.ErrnoError(31);if(!t.stream_ops.read)throw new o.ErrnoError(28);var i=typeof a<"u";if(!i)a=t.position;else if(!t.seekable)throw new o.ErrnoError(70);var u=t.stream_ops.read(t,r,e,n,a);return i||(t.position+=u),u},write(t,r,e,n,a,i){if(n<0||a<0)throw new o.ErrnoError(28);if(o.isClosed(t))throw new o.ErrnoError(8);if((t.flags&2097155)===0)throw new o.ErrnoError(8);if(o.isDir(t.node.mode))throw new o.ErrnoError(31);if(!t.stream_ops.write)throw new o.ErrnoError(28);t.seekable&&t.flags&1024&&o.llseek(t,0,2);var u=typeof a<"u";if(!u)a=t.position;else if(!t.seekable)throw new o.ErrnoError(70);var s=t.stream_ops.write(t,r,e,n,a,i);return u||(t.position+=s),s},mmap(t,r,e,n,a){if((n&2)!==0&&(a&2)===0&&(t.flags&2097155)!==2)throw new o.ErrnoError(2);if((t.flags&2097155)===1)throw new o.ErrnoError(2);if(!t.stream_ops.mmap)throw new o.ErrnoError(43);if(!r)throw new o.ErrnoError(28);return t.stream_ops.mmap(t,r,e,n,a)},msync(t,r,e,n,a){return t.stream_ops.msync?t.stream_ops.msync(t,r,e,n,a):0},ioctl(t,r,e){if(!t.stream_ops.ioctl)throw new o.ErrnoError(59);return t.stream_ops.ioctl(t,r,e)},readFile(t,r={}){r.flags=r.flags||0,r.encoding=r.encoding||"binary",r.encoding!=="utf8"&&r.encoding!=="binary"&&U(`Invalid encoding type "${r.encoding}"`);var e=o.open(t,r.flags),n=o.stat(t),a=n.size,i=new Uint8Array(a);return o.read(e,i,0,a,0),r.encoding==="utf8"&&(i=wt(i)),o.close(e),i},writeFile(t,r,e={}){e.flags=e.flags||577;var n=o.open(t,e.flags,e.mode);r=Zr(r),o.write(n,r,0,r.byteLength,void 0,e.canOwn),o.close(n)},cwd:()=>o.currentPath,chdir(t){var r=o.lookupPath(t,{follow:!0});if(r.node===null)throw new o.ErrnoError(44);if(!o.isDir(r.node.mode))throw new o.ErrnoError(54);var e=o.nodePermissions(r.node,"x");if(e)throw new o.ErrnoError(e);o.currentPath=r.path},createDefaultDirectories(){o.mkdir("/tmp"),o.mkdir("/home"),o.mkdir("/home/web_user")},createDefaultDevices(){o.mkdir("/dev"),o.registerDevice(o.makedev(1,3),{read:()=>0,write:(n,a,i,u,s)=>u,llseek:()=>0}),o.mkdev("/dev/null",o.makedev(1,3)),Mt.register(o.makedev(5,0),Mt.default_tty_ops),Mt.register(o.makedev(6,0),Mt.default_tty1_ops),o.mkdev("/dev/tty",o.makedev(5,0)),o.mkdev("/dev/tty1",o.makedev(6,0));var t=new Uint8Array(1024),r=0,e=()=>(r===0&&($r(t),r=t.byteLength),t[--r]);o.createDevice("/dev","random",e),o.createDevice("/dev","urandom",e),o.mkdir("/dev/shm"),o.mkdir("/dev/shm/tmp")},createSpecialDirectories(){o.mkdir("/proc");var t=o.mkdir("/proc/self");o.mkdir("/proc/self/fd"),o.mount({mount(){var r=o.createNode(t,"fd",16895,73);return r.stream_ops={llseek:F.stream_ops.llseek},r.node_ops={lookup(e,n){var a=+n,i=o.getStreamChecked(a),u={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>i.path},id:a+1};return u.parent=u,u},readdir(){return Array.from(o.streams.entries()).filter(([e,n])=>n).map(([e,n])=>e.toString())}},r}},{},"/proc/self/fd")},createStandardStreams(t,r,e){t?o.createDevice("/dev","stdin",t):o.symlink("/dev/tty","/dev/stdin"),r?o.createDevice("/dev","stdout",null,r):o.symlink("/dev/tty","/dev/stdout"),e?o.createDevice("/dev","stderr",null,e):o.symlink("/dev/tty1","/dev/stderr");var n=o.open("/dev/stdin",0),a=o.open("/dev/stdout",1),i=o.open("/dev/stderr",1)},staticInit(){o.nameTable=new Array(4096),o.mount(F,{},"/"),o.createDefaultDirectories(),o.createDefaultDevices(),o.createSpecialDirectories(),o.filesystems={MEMFS:F}},init(t,r,e){o.initialized=!0,o.createStandardStreams(t,r,e)},quit(){o.initialized=!1;for(var t of o.streams)t&&o.close(t)},findObject(t,r){var e=o.analyzePath(t,r);return e.exists?e.object:null},analyzePath(t,r){try{var e=o.lookupPath(t,{follow:!r});t=e.path}catch{}var n={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var e=o.lookupPath(t,{parent:!0});n.parentExists=!0,n.parentPath=e.path,n.parentObject=e.node,n.name=Z.basename(t),e=o.lookupPath(t,{follow:!r}),n.exists=!0,n.path=e.path,n.object=e.node,n.name=e.node.name,n.isRoot=e.path==="/"}catch(a){n.error=a.errno}return n},createPath(t,r,e,n){t=typeof t=="string"?t:o.getPath(t);for(var a=r.split("/").reverse();a.length;){var i=a.pop();if(i){var u=Z.join2(t,i);try{o.mkdir(u)}catch(s){if(s.errno!=20)throw s}t=u}}return u},createFile(t,r,e,n,a){var i=Z.join2(typeof t=="string"?t:o.getPath(t),r),u=fr(n,a);return o.create(i,u)},createDataFile(t,r,e,n,a,i){var u=r;t&&(t=typeof t=="string"?t:o.getPath(t),u=r?Z.join2(t,r):t);var s=fr(n,a),d=o.create(u,s);if(e){e=Zr(e),o.chmod(d,s|146);var h=o.open(d,577);o.write(h,e,0,e.length,0,i),o.close(h),o.chmod(d,s)}},createDevice(t,r,e,n){var a=Z.join2(typeof t=="string"?t:o.getPath(t),r),i=fr(!!e,!!n);o.createDevice.major??=64;var u=o.makedev(o.createDevice.major++,0);return o.registerDevice(u,{open(s){s.seekable=!1},close(s){n?.buffer?.length&&n(10)},read(s,d,h,g,O){for(var m=0,y=0;y<g;y++){var b;try{b=e()}catch{throw new o.ErrnoError(29)}if(b===void 0&&m===0)throw new o.ErrnoError(6);if(b==null)break;m++,d[h+y]=b}return m&&(s.node.atime=Date.now()),m},write(s,d,h,g,O){for(var m=0;m<g;m++)try{n(d[h+m])}catch{throw new o.ErrnoError(29)}return g&&(s.node.mtime=s.node.ctime=Date.now()),m}}),o.mkdev(a,i,u)},forceLoadFile(t){if(t.isDevice||t.isFolder||t.link||t.contents)return!0;if(globalThis.XMLHttpRequest)U("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.contents=K(t.url)}catch{throw new o.ErrnoError(29)}},createLazyFile(t,r,e,n,a){class i{lengthKnown=!1;chunks=[];get(m){if(!(m>this.length-1||m<0)){var y=m%this.chunkSize,b=m/this.chunkSize|0;return this.getter(b)[y]}}setDataGetter(m){this.getter=m}cacheLength(){var m=new XMLHttpRequest;m.open("HEAD",e,!1),m.send(null),m.status>=200&&m.status<300||m.status===304||U("Couldn't load "+e+". Status: "+m.status);var y=Number(m.getResponseHeader("Content-length")),b,z=(b=m.getResponseHeader("Accept-Ranges"))&&b==="bytes",T=(b=m.getResponseHeader("Content-Encoding"))&&b==="gzip",_=1024*1024;z||(_=y);var nt=(ct,gt)=>{ct>gt&&U("invalid range ("+ct+", "+gt+") or no bytes requested!"),gt>y-1&&U("only "+y+" bytes available! programmer error!");var J=new XMLHttpRequest;return J.open("GET",e,!1),y!==_&&J.setRequestHeader("Range","bytes="+ct+"-"+gt),J.responseType="arraybuffer",J.overrideMimeType&&J.overrideMimeType("text/plain; charset=x-user-defined"),J.send(null),J.status>=200&&J.status<300||J.status===304||U("Couldn't load "+e+". Status: "+J.status),J.response!==void 0?new Uint8Array(J.response||[]):vr(J.responseText||"",!0)},rt=this;rt.setDataGetter(ct=>{var gt=ct*_,J=(ct+1)*_-1;return J=Math.min(J,y-1),typeof rt.chunks[ct]>"u"&&(rt.chunks[ct]=nt(gt,J)),typeof rt.chunks[ct]>"u"&&U("doXHR failed!"),rt.chunks[ct]}),(T||!y)&&(_=y=1,y=this.getter(0).length,_=y,G("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=y,this._chunkSize=_,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if(globalThis.XMLHttpRequest){v||U("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc");var u=new i,s={isDevice:!1,contents:u}}else var s={isDevice:!1,url:e};var d=o.createFile(t,r,s,n,a);s.contents?d.contents=s.contents:s.url&&(d.contents=null,d.url=s.url),Object.defineProperties(d,{usedBytes:{get:function(){return this.contents.length}}});var h={};for(let[O,m]of Object.entries(d.stream_ops))h[O]=(...y)=>(o.forceLoadFile(d),m(...y));function g(O,m,y,b,z){var T=O.node.contents;if(z>=T.length)return 0;var _=Math.min(T.length-z,b);if(T.slice)for(var nt=0;nt<_;nt++)m[y+nt]=T[z+nt];else for(var nt=0;nt<_;nt++)m[y+nt]=T.get(z+nt);return _}return h.read=(O,m,y,b,z)=>(o.forceLoadFile(d),g(O,m,y,b,z)),h.mmap=(O,m,y,b,z)=>{o.forceLoadFile(d);var T=Nr(m);if(!T)throw new o.ErrnoError(48);return g(O,N,T,m,y),{ptr:T,allocated:!0}},d.stream_ops=h,d}},I={calculateAt(t,r,e){if(Z.isAbs(r))return r;var n;if(t===-100)n=o.cwd();else{var a=I.getStreamFromFD(t);n=a.path}if(r.length==0){if(!e)throw new o.ErrnoError(44);return n}return n+"/"+r},writeStat(t,r){R[t>>2]=r.dev,R[t+4>>2]=r.mode,R[t+8>>2]=r.nlink,R[t+12>>2]=r.uid,R[t+16>>2]=r.gid,R[t+20>>2]=r.rdev,D=[r.size>>>0,(p=r.size,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+24>>2]=D[0],C[t+28>>2]=D[1],C[t+32>>2]=4096,C[t+36>>2]=r.blocks;var e=r.atime.getTime(),n=r.mtime.getTime(),a=r.ctime.getTime();return D=[Math.floor(e/1e3)>>>0,(p=Math.floor(e/1e3),+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+40>>2]=D[0],C[t+44>>2]=D[1],R[t+48>>2]=e%1e3*1e3*1e3,D=[Math.floor(n/1e3)>>>0,(p=Math.floor(n/1e3),+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+56>>2]=D[0],C[t+60>>2]=D[1],R[t+64>>2]=n%1e3*1e3*1e3,D=[Math.floor(a/1e3)>>>0,(p=Math.floor(a/1e3),+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+72>>2]=D[0],C[t+76>>2]=D[1],R[t+80>>2]=a%1e3*1e3*1e3,D=[r.ino>>>0,(p=r.ino,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+88>>2]=D[0],C[t+92>>2]=D[1],0},writeStatFs(t,r){R[t+4>>2]=r.bsize,R[t+60>>2]=r.bsize,D=[r.blocks>>>0,(p=r.blocks,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+8>>2]=D[0],C[t+12>>2]=D[1],D=[r.bfree>>>0,(p=r.bfree,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+16>>2]=D[0],C[t+20>>2]=D[1],D=[r.bavail>>>0,(p=r.bavail,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+24>>2]=D[0],C[t+28>>2]=D[1],D=[r.files>>>0,(p=r.files,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+32>>2]=D[0],C[t+36>>2]=D[1],D=[r.ffree>>>0,(p=r.ffree,+Math.abs(p)>=1?p>0?+Math.floor(p/4294967296)>>>0:~~+Math.ceil((p-+(~~p>>>0))/4294967296)>>>0:0)],C[t+40>>2]=D[0],C[t+44>>2]=D[1],R[t+48>>2]=r.fsid,R[t+64>>2]=r.flags,R[t+56>>2]=r.namelen},doMsync(t,r,e,n,a){if(!o.isFile(r.node.mode))throw new o.ErrnoError(43);if(n&2)return 0;var i=V.slice(t,t+e);o.msync(r,i,a,e,n)},getStreamFromFD(t){var r=o.getStreamChecked(t);return r},varargs:void 0,getStr(t){var r=ot(t);return r}};function Le(t,r,e,n){try{if(r=I.getStr(r),r=I.calculateAt(t,r),e&-8)return-28;var a=o.lookupPath(r,{follow:!0}),i=a.node;if(!i)return-44;var u="";return e&4&&(u+="r"),e&2&&(u+="w"),e&1&&(u+="x"),u&&o.nodePermissions(i,u)?-2:0}catch(s){if(typeof o>"u"||s.name!=="ErrnoError")throw s;return-s.errno}}var At=()=>{var t=C[+I.varargs>>2];return I.varargs+=4,t},bt=At;function Ne(t,r,e){I.varargs=e;try{var n=I.getStreamFromFD(t);switch(r){case 0:{var a=At();if(a<0)return-28;for(;o.streams[a];)a++;var i;return i=o.dupStream(n,a),i.fd}case 1:case 2:return 0;case 3:return n.flags;case 4:{var a=At();return n.flags|=a,0}case 12:{var a=bt(),u=0;return k[a+u>>1]=2,0}case 13:case 14:return 0}return-28}catch(s){if(typeof o>"u"||s.name!=="ErrnoError")throw s;return-s.errno}}function Ze(t,r){try{return I.writeStat(r,o.fstat(t))}catch(e){if(typeof o>"u"||e.name!=="ErrnoError")throw e;return-e.errno}}function He(t,r,e){I.varargs=e;try{var n=I.getStreamFromFD(t);switch(r){case 21509:return n.tty?0:-59;case 21505:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tcgets){var a=n.tty.ops.ioctl_tcgets(n),i=bt();C[i>>2]=a.c_iflag||0,C[i+4>>2]=a.c_oflag||0,C[i+8>>2]=a.c_cflag||0,C[i+12>>2]=a.c_lflag||0;for(var u=0;u<32;u++)N[i+u+17]=a.c_cc[u]||0;return 0}return 0}case 21510:case 21511:case 21512:return n.tty?0:-59;case 21506:case 21507:case 21508:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){for(var i=bt(),s=C[i>>2],d=C[i+4>>2],h=C[i+8>>2],g=C[i+12>>2],O=[],u=0;u<32;u++)O.push(N[i+u+17]);return n.tty.ops.ioctl_tcsets(n.tty,r,{c_iflag:s,c_oflag:d,c_cflag:h,c_lflag:g,c_cc:O})}return 0}case 21519:{if(!n.tty)return-59;var i=bt();return C[i>>2]=0,0}case 21520:return n.tty?-28:-59;case 21537:case 21531:{var i=bt();return o.ioctl(n,r,i)}case 21523:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var m=n.tty.ops.ioctl_tiocgwinsz(n.tty),i=bt();k[i>>1]=m[0],k[i+2>>1]=m[1]}return 0}case 21524:return n.tty?0:-59;case 21515:return n.tty?0:-59;default:return-28}}catch(y){if(typeof o>"u"||y.name!=="ErrnoError")throw y;return-y.errno}}function Ge(t,r,e,n){I.varargs=n;try{r=I.getStr(r),r=I.calculateAt(t,r);var a=n?At():0;return o.open(r,e,a).fd}catch(i){if(typeof o>"u"||i.name!=="ErrnoError")throw i;return-i.errno}}var Yt=(t,r,e)=>xr(t,V,r,e);function Se(t,r,e,n){try{if(r=I.getStr(r),r=I.calculateAt(t,r),n<=0)return-28;var a=o.readlink(r),i=Math.min(n,Gt(a)),u=N[e+i];return Yt(a,e,n+1),N[e+i]=u,i}catch(s){if(typeof o>"u"||s.name!=="ErrnoError")throw s;return-s.errno}}function _e(t){try{return t=I.getStr(t),o.rmdir(t),0}catch(r){if(typeof o>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}function ze(t,r,e){try{if(r=I.getStr(r),r=I.calculateAt(t,r),!e)o.unlink(r);else if(e===512)o.rmdir(r);else return-28;return 0}catch(n){if(typeof o>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}var Gr=()=>ye,hr=t=>{var r=t.getArg(Gr(),0);return he(r)},je=()=>we(),ke=t=>de(t),Sr=t=>ce(t),Ue=t=>{var r=je(),e=Sr(4),n=Sr(4);pe(t,e,n);var a=R[e>>2],i=R[n>>2],u=ot(a);vt(a);var s;return i&&(s=ot(i),vt(i)),ke(r),[u,s]},_r=t=>{var r=hr(t);return Ue(r)},Te=t=>{var r=new WebAssembly.Exception(Gr(),[t],{traceStack:!0});throw r.message=_r(r),r},Ie=()=>U(""),We=(t,r,e,n,a)=>{},lt=t=>{for(var r="";;){var e=V[t++];if(!e)return r;r+=String.fromCharCode(e)}},Dt={},$t={},tr={},zt=class extends Error{constructor(t){super(t),this.name="BindingError"}},x=t=>{throw new zt(t)};function Ve(t,r,e={}){var n=r.name;if(t||x(`type "${n}" must have a positive integer typeid pointer`),$t.hasOwnProperty(t)){if(e.ignoreDuplicateRegistrations)return;x(`Cannot register type '${n}' twice`)}if($t[t]=r,delete tr[t],Dt.hasOwnProperty(t)){var a=Dt[t];delete Dt[t],a.forEach(i=>i())}}function ht(t,r,e={}){return Ve(t,r,e)}var Ke=(t,r,e,n)=>{r=lt(r),ht(t,{name:r,fromWireType:function(a){return!!a},toWireType:function(a,i){return i?e:n},readValueFromPointer:function(a){return this.fromWireType(V[a])},destructorFunction:null})},Qe=t=>({count:t.count,deleteScheduled:t.deleteScheduled,preservePointerOnDelete:t.preservePointerOnDelete,ptr:t.ptr,ptrType:t.ptrType,smartPtr:t.smartPtr,smartPtrType:t.smartPtrType}),pr=t=>{function r(e){return e.$$.ptrType.registeredClass.name}x(r(t)+" instance already deleted")},yr=!1,zr=t=>{},Je=t=>{t.smartPtr?t.smartPtrType.rawDestructor(t.smartPtr):t.ptrType.registeredClass.rawDestructor(t.ptr)},jr=t=>{t.count.value-=1;var r=t.count.value===0;r&&Je(t)},jt=t=>globalThis.FinalizationRegistry?(yr=new FinalizationRegistry(r=>{jr(r.$$)}),jt=r=>{var e=r.$$,n=!!e.smartPtr;if(n){var a={$$:e};yr.register(r,a,r)}return r},zr=r=>yr.unregister(r),jt(t)):(jt=r=>r,t),rr=[],qe=()=>{for(;rr.length;){var t=rr.pop();t.$$.deleteScheduled=!1,t.delete()}},kr,Ae=()=>{let t=er.prototype;Object.assign(t,{isAliasOf(e){if(!(this instanceof er)||!(e instanceof er))return!1;var n=this.$$.ptrType.registeredClass,a=this.$$.ptr;e.$$=e.$$;for(var i=e.$$.ptrType.registeredClass,u=e.$$.ptr;n.baseClass;)a=n.upcast(a),n=n.baseClass;for(;i.baseClass;)u=i.upcast(u),i=i.baseClass;return n===i&&a===u},clone(){if(this.$$.ptr||pr(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=jt(Object.create(Object.getPrototypeOf(this),{$$:{value:Qe(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||pr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&x("Object already scheduled for deletion"),zr(this),jr(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||pr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&x("Object already scheduled for deletion"),rr.push(this),rr.length===1&&kr&&kr(qe),this.$$.deleteScheduled=!0,this}});let r=Symbol.dispose;r&&(t[r]=t.delete)};function er(){}var Ur=(t,r)=>Object.defineProperty(r,"name",{value:t}),Tr={},gr=(t,r,e)=>{if(t[r].overloadTable===void 0){var n=t[r];t[r]=function(...a){return t[r].overloadTable.hasOwnProperty(a.length)||x(`Function '${e}' called with an invalid number of arguments (${a.length}) - expects one of (${t[r].overloadTable})!`),t[r].overloadTable[a.length].apply(this,a)},t[r].overloadTable=[],t[r].overloadTable[n.argCount]=n}},tn=(t,r,e)=>{c.hasOwnProperty(t)?((e===void 0||c[t].overloadTable!==void 0&&c[t].overloadTable[e]!==void 0)&&x(`Cannot register public name '${t}' twice`),gr(c,t,t),c[t].overloadTable.hasOwnProperty(e)&&x(`Cannot register multiple overloads of a function with the same number of arguments (${e})!`),c[t].overloadTable[e]=r):(c[t]=r,c[t].argCount=e)},rn=48,en=57,nn=t=>{t=t.replace(/[^a-zA-Z0-9_]/g,"$");var r=t.charCodeAt(0);return r>=rn&&r<=en?`_${t}`:t};function on(t,r,e,n,a,i,u,s){this.name=t,this.constructor=r,this.instancePrototype=e,this.rawDestructor=n,this.baseClass=a,this.getActualType=i,this.upcast=u,this.downcast=s,this.pureVirtualFunctions=[]}var nr=(t,r,e)=>{for(;r!==e;)r.upcast||x(`Expected null or instance of ${e.name}, got an instance of ${r.name}`),t=r.upcast(t),r=r.baseClass;return t},mr=t=>{if(t===null)return"null";var r=typeof t;return r==="object"||r==="array"||r==="function"?t.toString():""+t};function an(t,r){if(r===null)return this.isReference&&x(`null is not a valid ${this.name}`),0;r.$$||x(`Cannot pass "${mr(r)}" as a ${this.name}`),r.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`);var e=r.$$.ptrType.registeredClass,n=nr(r.$$.ptr,e,this.registeredClass);return n}function un(t,r){var e;if(r===null)return this.isReference&&x(`null is not a valid ${this.name}`),this.isSmartPointer?(e=this.rawConstructor(),t!==null&&t.push(this.rawDestructor,e),e):0;(!r||!r.$$)&&x(`Cannot pass "${mr(r)}" as a ${this.name}`),r.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&r.$$.ptrType.isConst&&x(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);var n=r.$$.ptrType.registeredClass;if(e=nr(r.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(r.$$.smartPtr===void 0&&x("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?e=r.$$.smartPtr:x(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:e=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)e=r.$$.smartPtr;else{var a=r.clone();e=this.rawShare(e,Yr.toHandle(()=>a.delete())),t!==null&&t.push(this.rawDestructor,e)}break;default:x("Unsupported sharing policy")}return e}function sn(t,r){if(r===null)return this.isReference&&x(`null is not a valid ${this.name}`),0;r.$$||x(`Cannot pass "${mr(r)}" as a ${this.name}`),r.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`),r.$$.ptrType.isConst&&x(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);var e=r.$$.ptrType.registeredClass,n=nr(r.$$.ptr,e,this.registeredClass);return n}function or(t){return this.fromWireType(R[t>>2])}var Ir=(t,r,e)=>{if(r===e)return t;if(e.baseClass===void 0)return null;var n=Ir(t,r,e.baseClass);return n===null?null:e.downcast(n)},ln={},dn=(t,r)=>{for(r===void 0&&x("ptr should not be undefined");t.baseCl