sliccy 6.178.0 → 6.178.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ui/.vite/manifest.json +182 -182
- package/dist/ui/assets/{SKILL-BflWplWz.js → SKILL-B8Oawe6a.js} +1 -1
- package/dist/ui/assets/SKILL-CJrjPuRt.js +1 -0
- package/dist/ui/assets/{account-store-Cq1iLLd1.js → account-store-LwLxI7v1.js} +1 -1
- package/dist/ui/assets/{account-store-S74-2PYK.js → account-store-SI8RQbm0.js} +1 -1
- package/dist/ui/assets/{adobe-00iHjKNp.js → adobe-BHZ-TF7E.js} +1 -1
- package/dist/ui/assets/{adobe-Df_ijIBF.js → adobe-Cqd5wrqM.js} +1 -1
- package/dist/ui/assets/{agent-panels-DoC14erl.js → agent-panels-DXCdmUkc.js} +1 -1
- package/dist/ui/assets/{almost-bash-shell-headless-BNKnE7iz.js → almost-bash-shell-headless-B29ulBpN.js} +33 -33
- package/dist/ui/assets/{apply-layout-qbXcgYo4.js → apply-layout-BiYaZGTe.js} +1 -1
- package/dist/ui/assets/{apps-DGVYlpFo.js → apps-BYK0eeEc.js} +1 -1
- package/dist/ui/assets/{azure-openai-C0BQBEQP.js → azure-openai-BgA0OxNa.js} +1 -1
- package/dist/ui/assets/{azure-openai-B7GWIGtX.js → azure-openai-DwxTKwka.js} +1 -1
- package/dist/ui/assets/{backend-hostfs-B-dnlb2V.js → backend-hostfs-CeXHlroV.js} +1 -1
- package/dist/ui/assets/{cdp-DEzvh01y.js → cdp-wm8vfA8s.js} +1 -1
- package/dist/ui/assets/{cerebras-0-LP8uU7.js → cerebras-BPlfZv3L.js} +1 -1
- package/dist/ui/assets/{cerebras-Du1-GKAd.js → cerebras-wuHzITPY.js} +1 -1
- package/dist/ui/assets/{composer-speech-Bjx5KF3K.js → composer-speech-DI9SI2lY.js} +1 -1
- package/dist/ui/assets/{connect-surface-B_6zei2K.js → connect-surface-zTa8OfFh.js} +1 -1
- package/dist/ui/assets/{directed-approval-JnY9fFHA.js → directed-approval-DmDgVpiX.js} +1 -1
- package/dist/ui/assets/{dist-CTNUClOy.js → dist-TdFroLO3.js} +3 -3
- package/dist/ui/assets/{dist-BZsj6rXC.js → dist-b828m-Si.js} +3 -3
- package/dist/ui/assets/{ensure-speech-assets-DpMK2BVK.js → ensure-speech-assets-42E6KJDv.js} +1 -1
- package/dist/ui/assets/frame-bytes-BSmP8I94.js +1 -0
- package/dist/ui/assets/frames-C1gdZfee.js +1 -0
- package/dist/ui/assets/{frozen-archive-writer-C6rkeqTj.js → frozen-archive-writer-C97kBlYw.js} +1 -1
- package/dist/ui/assets/{fs-DNazCCQe.js → fs-BKmepe3Q.js} +2 -2
- package/dist/ui/assets/{fs-B04LUR23.js → fs-DmgjBIs9.js} +1 -1
- package/dist/ui/assets/{gelatiere-store-CYT3L7Vb.js → gelatiere-store-D1l9WE1j.js} +1 -1
- package/dist/ui/assets/{gelatiere-unit-DwXO8ltI.js → gelatiere-unit-jlm5b-JJ.js} +1 -1
- package/dist/ui/assets/{github-CcKV5VKp.js → github-BB3M-XW1.js} +1 -1
- package/dist/ui/assets/{github-iChs8y5l.js → github-C8jjATg2.js} +2 -2
- package/dist/ui/assets/{github-auth-BGT4O5xo.js → github-auth-CkC7qTEg.js} +1 -1
- package/dist/ui/assets/{github-copilot-CvHvBxAK.js → github-copilot-D7QRCTDD.js} +1 -1
- package/dist/ui/assets/{github-copilot-BwhWpIu1.js → github-copilot-DuwasHAz.js} +1 -1
- package/dist/ui/assets/{github-install-XqRYcMtt.js → github-install-DT3Wys59.js} +1 -1
- package/dist/ui/assets/{github-zip-4EqOXIUE.js → github-zip-CX3GXBmW.js} +1 -1
- package/dist/ui/assets/{hear-Cpn_F-65.js → hear-pJ--prvx.js} +1 -1
- package/dist/ui/assets/{help-QX0cC2We.js → help-gOzjZhgS.js} +1 -1
- package/dist/ui/assets/host-DDFasAvt.js +1 -0
- package/dist/ui/assets/{host-command-5ESITqj8.js → host-command-B0EUpLfV.js} +1 -1
- package/dist/ui/assets/{installer-U9S8N8N1.js → installer-DeqzzcvC.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-DKMnVG_N.js → js-realm-worker-QT2JnICz.js} +1 -1
- package/dist/ui/assets/{jsh-executor-BiCBEs7e.js → jsh-executor-BBZWMBxV.js} +3 -3
- package/dist/ui/assets/{kernel-worker-C96uVLqD.js → kernel-worker-B23YxkDH.js} +10 -10
- package/dist/ui/assets/{lick-ws-bridge-DOF7QXQ9.js → lick-ws-bridge-CpcUjLS6.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-DGI7H1_T.js → lick-ws-bridge-DsoQWD5s.js} +1 -1
- package/dist/ui/assets/{live-session-curation-DVhFE-Ox.js → live-session-curation-BWfx-Nu1.js} +1 -1
- package/dist/ui/assets/{live-session-snapshot-C3DrUEnT.js → live-session-snapshot-BSNfthJ2.js} +1 -1
- package/dist/ui/assets/{local-llm-OCXxf3jz.js → local-llm-DGFPI_4T.js} +1 -1
- package/dist/ui/assets/{local-llm-DWDhMi6m.js → local-llm-vzP-uq7M.js} +1 -1
- package/dist/ui/assets/{main-cI-uMcJb.js → main-DFTTAllP.js} +3 -3
- package/dist/ui/assets/{main-cherry-BDzXVcQE.js → main-cherry-Bbjw_90k.js} +1 -1
- package/dist/ui/assets/{memory-curation-seam-DtuGVyA0.js → memory-curation-seam-BufuSUCj.js} +1 -1
- package/dist/ui/assets/{memory-health-C1-Ws6TZ.js → memory-health-DdSqq7yP.js} +1 -1
- package/dist/ui/assets/memory-v2-flag-uChv9nwr.js +1 -0
- package/dist/ui/assets/{memory-write-execute-DXKJTpgr.js → memory-write-execute-BygymnF0.js} +1 -1
- package/dist/ui/assets/{mount-Beg7rJyd.js → mount-DlogHA7u.js} +3 -3
- package/dist/ui/assets/{mount-DNQXdZUP.js → mount-_sTSuvKx.js} +1 -1
- package/dist/ui/assets/{new-session-CcLRyHPG.js → new-session-C914zfKa.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-ZVkzpjIg.js → oauth-bootstrap-B7cPXMSk.js} +2 -2
- package/dist/ui/assets/{onboarding-orchestrator-DT4m4G7X.js → onboarding-orchestrator-CbnB67nZ.js} +1 -1
- package/dist/ui/assets/{openai-codex-BC4IvaOv.js → openai-codex-BtwVt-12.js} +1 -1
- package/dist/ui/assets/{openai-codex-BQ9tRIIq.js → openai-codex-SI0nWQNS.js} +1 -1
- package/dist/ui/assets/{openrouter-TyodWHrW.js → openrouter-BFlMjaCH.js} +1 -1
- package/dist/ui/assets/{openrouter-CJBLDVpZ.js → openrouter-BruOnSfT.js} +1 -1
- package/dist/ui/assets/{openrouter-free-WPcdZKoe.js → openrouter-free-B2pceWVg.js} +1 -1
- package/dist/ui/assets/{openrouter-free-BX50G01y.js → openrouter-free-DPQDCfqQ.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-CSHbAliA.js → openrouter-oauth-BLskezr8.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-C3IjVanq.js → openrouter-oauth-C4kwBIwS.js} +1 -1
- package/dist/ui/assets/opfs-mount-8s9WP18b.js +2 -0
- package/dist/ui/assets/opfs-mount-DF49ioKQ.js +2 -0
- package/dist/ui/assets/{panel-rpc-handlers-DLOTqcPU.js → panel-rpc-handlers-BuMdGle_.js} +2 -2
- package/dist/ui/assets/{panelize-shell-CwsQzaeI.js → panelize-shell-Dg_58ImI.js} +1 -1
- package/dist/ui/assets/{pi-edit-execution-Chc5AuQc.js → pi-edit-execution-C9GYKunH.js} +1 -1
- package/dist/ui/assets/{provider-DxWLekYl.js → provider-B_fhkXn7.js} +2 -2
- package/dist/ui/assets/{provider-DhpqYKvN.js → provider-DEcfbBkM.js} +1 -1
- package/dist/ui/assets/{provider-settings-B0jrEjPK.js → provider-settings-BLtjMrT0.js} +1 -1
- package/dist/ui/assets/provider-store-access-C0w1Xcs2.js +1 -0
- package/dist/ui/assets/provider-store-access-YjQKD2es.js +1 -0
- package/dist/ui/assets/{providers-DXeKO0vp.js → providers-B0rCH1pp.js} +1 -1
- package/dist/ui/assets/{providers-BXX3OkWO.js → providers-B9p2VR5L.js} +2 -2
- package/dist/ui/assets/{quick-llm-D491FPqp.js → quick-llm-B8uh7EVu.js} +1 -1
- package/dist/ui/assets/{realm-inprocess-CzoLj3Xw.js → realm-inprocess-qhbZWW6z.js} +1 -1
- package/dist/ui/assets/{recovery-screen-BsX5dSxb.js → recovery-screen-M8szzZB2.js} +1 -1
- package/dist/ui/assets/registry-DfuJBCKY.js +1 -0
- package/dist/ui/assets/{remote-terminal-view-Cvej7E9x.js → remote-terminal-view-6ygd42Fb.js} +1 -1
- package/dist/ui/assets/{restore-DNbXSMdv.js → restore-Qq5h6a38.js} +1 -1
- package/dist/ui/assets/{run-hrgOVM1K.js → run--H9dud5r.js} +2 -2
- package/dist/ui/assets/{run-DTdaPeZk.js → run-Bk0pGJJa.js} +1 -1
- package/dist/ui/assets/{run-BW1OgEfH.js → run-C0wVagJ5.js} +2 -2
- package/dist/ui/assets/{run-BEvYI68Y.js → run-C3rYy-Lu.js} +1 -1
- package/dist/ui/assets/{run-DT94aw3i.js → run-CPDsfLJJ.js} +2 -2
- package/dist/ui/assets/run-DUzzkV29.js +82 -0
- package/dist/ui/assets/{run-0lgIGPtR.js → run-_QNErIec.js} +2 -2
- package/dist/ui/assets/{session-command-memory-qhFqpZin.js → session-command-memory-CAl1-crq.js} +2 -2
- package/dist/ui/assets/{session-jsonl-D6H0oEEs.js → session-jsonl-B-4fihPX.js} +1 -1
- package/dist/ui/assets/{session-jsonl-7CMJAz_O.js → session-jsonl-lB9-7rZS.js} +1 -1
- package/dist/ui/assets/{session-search-index-DB-cA304.js → session-search-index-Bn4FhmPW.js} +1 -1
- package/dist/ui/assets/{setup-feature-flags-remote-CbHmB3yy.js → setup-feature-flags-remote-opNg3JWs.js} +1 -1
- package/dist/ui/assets/{signed-fetch-K5mg-UNn.js → signed-fetch-YC2zrriw.js} +1 -1
- package/dist/ui/assets/{silent-renew-backoff-DPs8MKs1.js → silent-renew-backoff-Bak0vwwf.js} +1 -1
- package/dist/ui/assets/slicc-version-D1Js64gw.js +1 -0
- package/dist/ui/assets/{snapshot-DRjB280n.js → snapshot-6br_5p-f.js} +1 -1
- package/dist/ui/assets/{snapshot-features-1VuozUQ1.js → snapshot-features-BqGUjBWl.js} +1 -1
- package/dist/ui/assets/{soundscape-Yi1I_to2.js → soundscape-DRViCPly.js} +1 -1
- package/dist/ui/assets/{speak-u3eKnBhD.js → speak-DRv_vLqY.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-B6umvMDL.js → sprinkle-manager-DeJrE3Hq.js} +1 -1
- package/dist/ui/assets/{sprinkle-renderer-DFLUy8Rt.js → sprinkle-renderer-DYUy10CO.js} +1 -1
- package/dist/ui/assets/ssh-D1zj1EXl.js +6 -0
- package/dist/ui/assets/{state-C3NHMuT8.js → state-BpyjzTIG.js} +1 -1
- package/dist/ui/assets/{store-C89y4bgq.js → store-DQkIRnav.js} +1 -1
- package/dist/ui/assets/{store-BCiln3U9.js → store-DwUewAuZ.js} +1 -1
- package/dist/ui/assets/{sudo-LmUbpBOj.js → sudo-DIegVBwT.js} +1 -1
- package/dist/ui/assets/{supervisor-me6fQoK1.js → supervisor-gHbk5m7z.js} +1 -1
- package/dist/ui/assets/{sync-dialog-DYhNAkny.js → sync-dialog-CH4PBcVu.js} +1 -1
- package/dist/ui/assets/tab-0xwFvGm5.js +1 -0
- package/dist/ui/assets/{transformers-env-DfP7DUPB.js → transformers-env-9M9En1_O.js} +1 -1
- package/dist/ui/assets/{tray-leader-C3rsjUjA.js → tray-leader-Bd293BI8.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-BcynwR81.js → tray-leave-runtime-wLd1uBMu.js} +1 -1
- package/dist/ui/assets/{tray-sidecar-Cv9tMmdt.js → tray-sidecar-C35X7Jht.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-BlJcBVzi.js → upgrade-detection-Tp8fDJAG.js} +1 -1
- package/dist/ui/assets/{upskill-lick-skip-DjF0bJdQ.js → upskill-lick-skip-Cr0VVPGj.js} +1 -1
- package/dist/ui/assets/url-B1WJZBSE.js +1 -0
- package/dist/ui/assets/v86-BOapztuq.js +1 -0
- package/dist/ui/assets/{voice-reply-DIIIZYai.js → voice-reply-wJfABSIn.js} +1 -1
- package/dist/ui/assets/{wc-attach-DJ0Fkabv.js → wc-attach-CtVWDKPk.js} +2 -2
- package/dist/ui/assets/{wc-browser-JGWqtFMD.js → wc-browser-BJemxWhg.js} +1 -1
- package/dist/ui/assets/{wc-computers-9ZIUJZ_0.js → wc-computers-Cr14YnOg.js} +1 -1
- package/dist/ui/assets/{wc-detached-B_EqDI_e.js → wc-detached-DQ_ZTSZ-.js} +1 -1
- package/dist/ui/assets/{wc-extension-DvB8B2eR.js → wc-extension-C8pgLDqO.js} +2 -2
- package/dist/ui/assets/{wc-follower-DirKNNKd.js → wc-follower-nosCeVKN.js} +3 -3
- package/dist/ui/assets/{wc-follower-oauth-CmPQI9r7.js → wc-follower-oauth-BU-XAftl.js} +1 -1
- package/dist/ui/assets/{wc-gelatiere-CNMtGFnh.js → wc-gelatiere-BiyouLW3.js} +1 -1
- package/dist/ui/assets/{wc-live-Cnwth3gF.js → wc-live-CaopRwn0.js} +5 -5
- package/dist/ui/assets/{wc-nav-BtpwKT3F.js → wc-nav-Wn2qDNiX.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-CMqXuHAF.js → wc-onboarding-FjrDOv_u.js} +2 -2
- package/dist/ui/assets/{wc-permissions-D0noVnzr.js → wc-permissions-C63-jLbY.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-BYDPnffr.js → wc-placeholder-Bdbmjijc.js} +3 -3
- package/dist/ui/assets/{wc-secret-request-BPq25scU.js → wc-secret-request-C9iCWgBV.js} +1 -1
- package/dist/ui/assets/{wc-settings-C4ArQscj.js → wc-settings-1ZJgN4Wk.js} +3 -3
- package/dist/ui/assets/{wc-shell-BIvWfO_D.js → wc-shell-CrMn8BW0.js} +3 -3
- package/dist/ui/assets/{wc-shortcut-config-5XM5GhZn.js → wc-shortcut-config-JXEU24sg.js} +1 -1
- package/dist/ui/assets/{wc-sprinkles-DcxL7Mr5.js → wc-sprinkles-CBaPR_V8.js} +2 -2
- package/dist/ui/assets/{wc-transcript-export-D1mWHlgn.js → wc-transcript-export-eyG-SwVe.js} +2 -2
- package/dist/ui/assets/{wc-tray-J5wALVKi.js → wc-tray-dSLNIDh9.js} +4 -4
- package/dist/ui/assets/welcome-detection-DuFRP38Z.js +1 -0
- package/dist/ui/assets/{whisper-session-8ebia7af.js → whisper-session-DrDhzSqp.js} +2 -2
- package/dist/ui/assets/{xai-grok-A-4PUiGr.js → xai-grok-C2oyJ5tt.js} +1 -1
- package/dist/ui/assets/{xai-grok-Bd7-uPOA.js → xai-grok-G4GFCgrM.js} +1 -1
- package/dist/ui/index.html +3 -3
- package/dist/ui/packages/webapp/index.html +3 -3
- package/package.json +2 -2
- package/dist/ui/assets/SKILL-B_vSLfiC.js +0 -1
- package/dist/ui/assets/encode-frame-30wbFN-H.js +0 -1
- package/dist/ui/assets/frames-7E6RloFP.js +0 -1
- package/dist/ui/assets/host-CLGoytqB.js +0 -1
- package/dist/ui/assets/memory-v2-flag-CYHl_0MX.js +0 -1
- package/dist/ui/assets/opfs-mount-Bfohoi0h.js +0 -2
- package/dist/ui/assets/opfs-mount-Dizi9FS1.js +0 -2
- package/dist/ui/assets/provider-store-access-B_XDCrzI.js +0 -1
- package/dist/ui/assets/provider-store-access-EsgcgdjM.js +0 -1
- package/dist/ui/assets/registry-qHtWYFOX.js +0 -1
- package/dist/ui/assets/run-B4NB-XFg.js +0 -80
- package/dist/ui/assets/slicc-version-cii7tBRO.js +0 -1
- package/dist/ui/assets/ssh-2T7ub5Yk.js +0 -6
- package/dist/ui/assets/tab-DI1zy4Vd.js +0 -1
- package/dist/ui/assets/url-SK-_tyJs.js +0 -1
- package/dist/ui/assets/v86-BF0NlNun.js +0 -1
- package/dist/ui/assets/welcome-detection-DJpDcarv.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{i as e,n as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{t as r}from"./buffer-DvhmllZ2.js";function i(e,t){if(e.byteLength>=t)return e;if(ArrayBuffer.isView(e)){let n=i(e.buffer,t);return new e.constructor(n,e.byteOffset,t)}let n=typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer;if(e.maxByteLength>t)return n?e.grow(t):e.resize(t),e;if(n){let n=new SharedArrayBuffer(t);return new Uint8Array(n).set(new Uint8Array(e)),n}try{return e.transfer(t)}catch{let n=new ArrayBuffer(t);return new Uint8Array(n).set(new Uint8Array(e)),n}}var a=class extends DataView{constructor(e,t,n){let{buffer:r,byteOffset:i,byteLength:a}=new Uint8Array(e,t,n);super(r,i,a)}};for(let e of Object.getOwnPropertyNames(DataView.prototype))!e.startsWith(`get`)&&!e.startsWith(`set`)||Object.defineProperty(a.prototype,e,{value:()=>{throw ReferenceError(`Do not use DataView methods on a BufferView.`)},writable:!1,enumerable:!1,configurable:!1});function o(e,t,n){let r=e.length;for(;r>0&&e[r-1].start>t;)r--;let i=e[r-1];if(i&&i.end>=t){if(i.end>=n)return;i.end=n}else e.splice(r,0,{start:t,end:n}),r++;let a=e[r-1],o=r;for(;o<e.length&&e[o].start<=a.end;)a.end=Math.max(a.end,e[o].end),o++;o>r&&e.splice(r,o-r)}var s=class{id;_size;options;regions=[];get size(){return this._size}set size(e){if(e>=this._size){this._size=e;return}this._size=e;for(let t=this.regions.length-1;t>=0;t--){let n=this.regions[t];if(n.offset>=e){this.regions.splice(t,1);continue}let r=e-n.offset;n.data.byteLength>r&&(n.data=n.data.subarray(0,r)),n.ranges=n.ranges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t)}}constructor(e,t,n,r){this.id=e,this._size=t,this.options=n,n.sparse??=!0,(!n.growFactor||!Number.isFinite(n.growFactor)||n.growFactor<1||n.growFactor>100)&&(n.growFactor=2),n.sparse||this.regions.push({offset:0,data:new Uint8Array(t),ranges:[]}),r?.set(e,this)}resizeRegion(e,t){let{buffer:n,byteOffset:r}=e.data;if(n.byteLength-r>=t){e.data=new Uint8Array(n,r,t);return}let i=new Uint8Array(Math.max(t,(n.byteLength-r)*this.options.growFactor));i.set(e.data),e.data=i.subarray(0,t)}mergeAt(e){let t=this.regions[e],n=this.regions[e+1];if(!t||!n)return!1;let{regionGapThreshold:r=4095}=this.options;if(n.offset-(t.offset+t.data.byteLength)>r)return!1;for(let e of n.ranges)o(t.ranges,e.start,e.end);let i=n.offset+n.data.byteLength-t.offset;return i>t.data.byteLength&&this.resizeRegion(t,i),t.data.set(n.data,n.offset-t.offset),this.regions.splice(e+1,1),!0}collect(){if(this.options.sparse)for(let e=0;e<this.regions.length-1;)this.mergeAt(e)||e++}collectAt(e){if(this.options.sparse)for(e>0&&this.mergeAt(e-1)&&e--;this.mergeAt(e););}missing(e,t){let n=[];for(let r of this.regionsIn(e,t)){for(let i of r.ranges)if(!(i.end<=e)&&(i.start>=t||(i.start>e&&n.push({start:e,end:Math.min(i.start,t)}),i.end>e&&(e=Math.max(e,i.end)),e>=t)))break;if(e>=t)break}return e<t&&n.push({start:e,end:t}),n}cached(e,t){let n=[];for(let r of this.regionsIn(e,t))for(let i of r.ranges)if(!(i.end<=e)){if(i.start>=t)break;n.push({start:Math.max(e,i.start),end:Math.min(t,i.end)})}n.sort((e,t)=>e.start-t.start);let r=[];for(let e of n){let t=r.at(-1);t&&e.start<=t.end?t.end=Math.max(t.end,e.end):r.push(e)}return r}indexAfter(e){let t=0,n=this.regions.length;for(;t<n;){let r=t+n>>1;this.regions[r].offset>e?n=r:t=r+1}return t}regionAt(e){let t=this.regions[this.indexAfter(e)-1];if(t&&e<t.offset+t.data.byteLength)return t}*regionsIn(e,t){for(let n=Math.max(0,this.indexAfter(e)-1);n<this.regions.length;n++){let r=this.regions[n];if(r.offset>=t)return;r.offset+r.data.byteLength>e&&(yield r)}}add(e,t){let n=t+e.byteLength,r=this.indexAfter(t)-1,i=this.regions[r];return i&&t<i.offset+i.data.byteLength?(n-i.offset>i.data.byteLength&&this.resizeRegion(i,n-i.offset),i.data.set(e,t-i.offset),o(i.ranges,t,n),this.collectAt(r),this):(this.regions.splice(r+1,0,{data:e,offset:t,ranges:[{start:t,end:n}]}),this.collectAt(r+1),this)}},c=new Uint32Array(256);for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=t&1?2197175160^t>>>1:t>>>1;c[e]=t}function l(e){let t=4294967295;for(let n=0;n<e.length;n++)t=t>>>8^c[(t^e[n])&255];return(t^4294967295)>>>0}var u=e(n(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1),d=class extends u.default{[Symbol.toStringTag]=`List`;constructor(e){super(),e&&this.push(...e)}data=new Set;toSet(){return new Set(this.data)}toArray(){return Array.from(this.data)}toJSON(){return Array.from(this.data)}toString(){return this.join(`,`)}_set(e,t,n=!1){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not set an element outside the bounds of the list`);let r=Array.from(this.data);r.splice(e,+n,t),this.data=new Set(r),this.emit(`update`)}set(e,t){this._set(e,t,!0)}deleteAt(e){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not delete an element outside the bounds of the list`);this.delete(Array.from(this.data).at(e))}insert(e,t=this.data.size){this._set(t,e,!1)}at(e){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not access an element outside the bounds of the list`);return Array.from(this.data).at(e)}pop(){let e=Array.from(this.data).pop();return e!==void 0&&this.delete(e),e}push(...e){for(let t of e)this.add(t);return this.data.size}join(e){return Array.from(this.data).join(e)}splice(e,t,...n){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not splice elements outside the bounds of the list`);let r=Array.from(this.data),i=r.splice(e,t,...n);return this.data=new Set(r),this.emit(`update`),i}add(e){return this.data.add(e),this.emit(`update`),this.emit(`add`,e),this}clear(){this.data.clear(),this.emit(`update`)}delete(e){let t=this.data.delete(e);return this.emit(`update`),t}has(e){return this.data.has(e)}get size(){return this.data.size}entries(){return this.toArray().entries()}keys(){return this.toArray().keys()}values(){return this.data.values()}[Symbol.iterator](){return this.data[Symbol.iterator]()}};function f(e,t){let n=Object.entries(e);return Object.fromEntries(n.filter(([e,n])=>t(e,n)))}function p(e,...t){let n={};for(let r of t.flat())n[r]=e[r];return n}function m(e,...t){return f(e,e=>!t.flat().includes(e))}function h(e){try{return JSON.parse(e),!0}catch{return!1}}function g(e){let t=[];for(let n=e;n&&![`Function`,`Object`].includes(n.constructor.name);n=Object.getPrototypeOf(n))t.push(n.constructor.name);return t}function ee(e,t){return Object.fromEntries(Object.entries(e).map(([e,n])=>[e,typeof n==`function`?n.bind(t):n]))}function te(e=Error()){let t=setTimeout(()=>{throw e},5e3);return()=>clearTimeout(t)}function _(e){throw e&&typeof e==`object`&&g(e).includes(`Error`)&&Error?.captureStackTrace(e,_),e}function ne(e,t){if(![`getter`,`accessor`].includes(t.kind))throw Error(`@memoize can only be used on getters and auto-accessors`);let n=new WeakMap;function r(){if(n.has(this))return n.get(this);let t=typeof e==`function`?e.call(this):e.get.call(this);return n.set(this,t),t}switch(t.kind){case`getter`:return r;case`accessor`:return{...e,get:r}}}var re=Intl.NumberFormat(`en`,{notation:`compact`});re.format.bind(re);function ie(e=0,t=1){return Math.round(Math.random()*(t-e)+e)}function ae(e){return e.at(0).toUpperCase()+e.slice(1)}var oe=new TextEncoder;function v(e){return oe.encode(e)}var se=new TextDecoder;function ce(e){if(!e)return``;if(e.buffer instanceof ArrayBuffer&&!e.buffer.resizable)return se.decode(e);let t=new Uint8Array(e.byteLength);return t.set(e),se.decode(t)}function le(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function ue(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}function de(e){let t=Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function fe(e){let t=e.replace(/-/g,``),n=new Uint8Array(16);for(let e=0;e<16;e++)n[e]=parseInt(t.slice(e*2,e*2+2),16);return n}var y;(function(e){e[e.EPERM=1]=`EPERM`,e[e.ENOENT=2]=`ENOENT`,e[e.ESRCH=3]=`ESRCH`,e[e.EINTR=4]=`EINTR`,e[e.EIO=5]=`EIO`,e[e.ENXIO=6]=`ENXIO`,e[e.E2BIG=7]=`E2BIG`,e[e.ENOEXEC=8]=`ENOEXEC`,e[e.EBADF=9]=`EBADF`,e[e.ECHILD=10]=`ECHILD`,e[e.EAGAIN=11]=`EAGAIN`,e[e.ENOMEM=12]=`ENOMEM`,e[e.EACCES=13]=`EACCES`,e[e.EFAULT=14]=`EFAULT`,e[e.ENOTBLK=15]=`ENOTBLK`,e[e.EBUSY=16]=`EBUSY`,e[e.EEXIST=17]=`EEXIST`,e[e.EXDEV=18]=`EXDEV`,e[e.ENODEV=19]=`ENODEV`,e[e.ENOTDIR=20]=`ENOTDIR`,e[e.EISDIR=21]=`EISDIR`,e[e.EINVAL=22]=`EINVAL`,e[e.ENFILE=23]=`ENFILE`,e[e.EMFILE=24]=`EMFILE`,e[e.ENOTTY=25]=`ENOTTY`,e[e.ETXTBSY=26]=`ETXTBSY`,e[e.EFBIG=27]=`EFBIG`,e[e.ENOSPC=28]=`ENOSPC`,e[e.ESPIPE=29]=`ESPIPE`,e[e.EROFS=30]=`EROFS`,e[e.EMLINK=31]=`EMLINK`,e[e.EPIPE=32]=`EPIPE`,e[e.EDOM=33]=`EDOM`,e[e.ERANGE=34]=`ERANGE`,e[e.EDEADLK=35]=`EDEADLK`,e[e.ENAMETOOLONG=36]=`ENAMETOOLONG`,e[e.ENOLCK=37]=`ENOLCK`,e[e.ENOSYS=38]=`ENOSYS`,e[e.ENOTEMPTY=39]=`ENOTEMPTY`,e[e.ELOOP=40]=`ELOOP`,e[e.ENOMSG=42]=`ENOMSG`,e[e.EIDRM=43]=`EIDRM`,e[e.ECHRNG=44]=`ECHRNG`,e[e.EL2NSYNC=45]=`EL2NSYNC`,e[e.EL3HLT=46]=`EL3HLT`,e[e.EL3RST=47]=`EL3RST`,e[e.ENRNG=48]=`ENRNG`,e[e.EUNATCH=49]=`EUNATCH`,e[e.ECSI=50]=`ECSI`,e[e.EL2HLT=51]=`EL2HLT`,e[e.EBADE=52]=`EBADE`,e[e.EBADR=53]=`EBADR`,e[e.EXFULL=54]=`EXFULL`,e[e.ENOANO=55]=`ENOANO`,e[e.EBADRQC=56]=`EBADRQC`,e[e.EBADSLT=57]=`EBADSLT`,e[e.EBFONT=59]=`EBFONT`,e[e.ENOSTR=60]=`ENOSTR`,e[e.ENODATA=61]=`ENODATA`,e[e.ETIME=62]=`ETIME`,e[e.ENOSR=63]=`ENOSR`,e[e.ENONET=64]=`ENONET`,e[e.ENOPKG=65]=`ENOPKG`,e[e.EREMOTE=66]=`EREMOTE`,e[e.ENOLINK=67]=`ENOLINK`,e[e.EADV=68]=`EADV`,e[e.ESRMNT=69]=`ESRMNT`,e[e.ECOMM=70]=`ECOMM`,e[e.EPROTO=71]=`EPROTO`,e[e.EMULTIHOP=72]=`EMULTIHOP`,e[e.EDOTDOT=73]=`EDOTDOT`,e[e.EBADMSG=74]=`EBADMSG`,e[e.EOVERFLOW=75]=`EOVERFLOW`,e[e.ENOTUNIQ=76]=`ENOTUNIQ`,e[e.EBADFD=77]=`EBADFD`,e[e.EREMCHG=78]=`EREMCHG`,e[e.ELIBACC=79]=`ELIBACC`,e[e.ELIBBAD=80]=`ELIBBAD`,e[e.ELIBSCN=81]=`ELIBSCN`,e[e.ELIBMAX=82]=`ELIBMAX`,e[e.ELIBEXEC=83]=`ELIBEXEC`,e[e.EILSEQ=84]=`EILSEQ`,e[e.ERESTART=85]=`ERESTART`,e[e.ESTRPIPE=86]=`ESTRPIPE`,e[e.EUSERS=87]=`EUSERS`,e[e.ENOTSOCK=88]=`ENOTSOCK`,e[e.EDESTADDRREQ=89]=`EDESTADDRREQ`,e[e.EMSGSIZE=90]=`EMSGSIZE`,e[e.EPROTOTYPE=91]=`EPROTOTYPE`,e[e.ENOPROTOOPT=92]=`ENOPROTOOPT`,e[e.EPROTONOSUPPORT=93]=`EPROTONOSUPPORT`,e[e.ESOCKTNOSUPPORT=94]=`ESOCKTNOSUPPORT`,e[e.ENOTSUP=95]=`ENOTSUP`,e[e.EPFNOSUPPORT=96]=`EPFNOSUPPORT`,e[e.EAFNOSUPPORT=97]=`EAFNOSUPPORT`,e[e.EADDRINUSE=98]=`EADDRINUSE`,e[e.EADDRNOTAVAIL=99]=`EADDRNOTAVAIL`,e[e.ENETDOWN=100]=`ENETDOWN`,e[e.ENETUNREACH=101]=`ENETUNREACH`,e[e.ENETRESET=102]=`ENETRESET`,e[e.ECONNABORTED=103]=`ECONNABORTED`,e[e.ECONNRESET=104]=`ECONNRESET`,e[e.ENOBUFS=105]=`ENOBUFS`,e[e.EISCONN=106]=`EISCONN`,e[e.ENOTCONN=107]=`ENOTCONN`,e[e.ESHUTDOWN=108]=`ESHUTDOWN`,e[e.ETOOMANYREFS=109]=`ETOOMANYREFS`,e[e.ETIMEDOUT=110]=`ETIMEDOUT`,e[e.ECONNREFUSED=111]=`ECONNREFUSED`,e[e.EHOSTDOWN=112]=`EHOSTDOWN`,e[e.EHOSTUNREACH=113]=`EHOSTUNREACH`,e[e.EALREADY=114]=`EALREADY`,e[e.EINPROGRESS=115]=`EINPROGRESS`,e[e.ESTALE=116]=`ESTALE`,e[e.EEUCLEAN=117]=`EEUCLEAN`,e[e.ENOTNAM=118]=`ENOTNAM`,e[e.ENAVAIL=119]=`ENAVAIL`,e[e.EISNAM=120]=`EISNAM`,e[e.EREMOTEIO=121]=`EREMOTEIO`,e[e.EDQUOT=122]=`EDQUOT`,e[e.ENOMEDIUM=123]=`ENOMEDIUM`,e[e.EMEDIUMTYPE=124]=`EMEDIUMTYPE`,e[e.ECANCELED=125]=`ECANCELED`,e[e.ENOKEY=126]=`ENOKEY`,e[e.EKEYEXPIRED=127]=`EKEYEXPIRED`,e[e.EKEYREVOKED=128]=`EKEYREVOKED`,e[e.EKEYREJECTED=129]=`EKEYREJECTED`,e[e.EOWNERDEAD=130]=`EOWNERDEAD`,e[e.ENOTRECOVERABLE=131]=`ENOTRECOVERABLE`,e[e.ERFKILL=132]=`ERFKILL`,e[e.EHWPOISON=133]=`EHWPOISON`})(y||={});var pe={[y.EPERM]:`operation not permitted`,[y.ENOENT]:`no such file or directory`,[y.ESRCH]:`no such process`,[y.EINTR]:`interrupted system call`,[y.EIO]:`i/o error`,[y.ENXIO]:`no such device or address`,[y.E2BIG]:`argument list too long`,[y.ENOEXEC]:`exec format error`,[y.EBADF]:`bad file descriptor`,[y.ECHILD]:`no child processes`,[y.EAGAIN]:`resource temporarily unavailable`,[y.ENOMEM]:`not enough memory`,[y.EACCES]:`permission denied`,[y.EFAULT]:`bad address in system call argument`,[y.ENOTBLK]:`block device required`,[y.EBUSY]:`resource busy or locked`,[y.EEXIST]:`file already exists`,[y.EXDEV]:`cross-device link not permitted`,[y.ENODEV]:`no such device`,[y.ENOTDIR]:`not a directory`,[y.EISDIR]:`illegal operation on a directory`,[y.EINVAL]:`invalid argument`,[y.ENFILE]:`file table overflow`,[y.EMFILE]:`too many open files`,[y.ENOTTY]:`inappropriate ioctl for device`,[y.ETXTBSY]:`text file is busy`,[y.EFBIG]:`file too large`,[y.ENOSPC]:`no space left on device`,[y.ESPIPE]:`invalid seek`,[y.EROFS]:`read-only file system`,[y.EMLINK]:`too many links`,[y.EPIPE]:`broken pipe`,[y.EDOM]:`numerical argument out of domain`,[y.ERANGE]:`result too large`,[y.EDEADLK]:`resource deadlock would occur`,[y.ENAMETOOLONG]:`name too long`,[y.ENOLCK]:`no locks available`,[y.ENOSYS]:`function not implemented`,[y.ENOTEMPTY]:`directory not empty`,[y.ELOOP]:`too many symbolic links encountered`,[y.ENOMSG]:`no message of desired type`,[y.EIDRM]:`identifier removed`,[y.ECHRNG]:`channel number out of range`,[y.EL2NSYNC]:`level 2 not synchronized`,[y.EL3HLT]:`level 3 halted`,[y.EL3RST]:`level 3 reset`,[y.ENRNG]:`link number out of range`,[y.EUNATCH]:`protocol driver not attached`,[y.ECSI]:`no CSI structure available`,[y.EL2HLT]:`level 2 halted`,[y.EBADE]:`invalid exchange`,[y.EBADR]:`invalid request descriptor`,[y.EXFULL]:`exchange full`,[y.ENOANO]:`no anode`,[y.EBADRQC]:`invalid request code`,[y.EBADSLT]:`invalid slot`,[y.EBFONT]:`bad font file format`,[y.ENOSTR]:`device not a stream`,[y.ENODATA]:`no data available`,[y.ETIME]:`timer expired`,[y.ENOSR]:`out of streams resources`,[y.ENONET]:`machine is not on the network`,[y.ENOPKG]:`package not installed`,[y.EREMOTE]:`object is remote`,[y.ENOLINK]:`link has been severed`,[y.EADV]:`advertise error`,[y.ESRMNT]:`srmount error`,[y.ECOMM]:`communication error on send`,[y.EPROTO]:`protocol error`,[y.EMULTIHOP]:`multihop attempted`,[y.EDOTDOT]:`rFS specific error`,[y.EBADMSG]:`bad message`,[y.EOVERFLOW]:`value too large for defined data type`,[y.ENOTUNIQ]:`name not unique on network`,[y.EBADFD]:`file descriptor in bad state`,[y.EREMCHG]:`remote address changed`,[y.ELIBACC]:`can not access a needed shared library`,[y.ELIBBAD]:`accessing a corrupted shared library`,[y.ELIBSCN]:`.lib section in a.out corrupted`,[y.ELIBMAX]:`attempting to link in too many shared libraries`,[y.ELIBEXEC]:`cannot exec a shared library directly`,[y.EILSEQ]:`illegal byte sequence`,[y.ERESTART]:`interrupted system call should be restarted`,[y.ESTRPIPE]:`streams pipe error`,[y.EUSERS]:`too many users`,[y.ENOTSOCK]:`socket operation on non-socket`,[y.EDESTADDRREQ]:`destination address required`,[y.EMSGSIZE]:`message too long`,[y.EPROTOTYPE]:`protocol wrong type for socket`,[y.ENOPROTOOPT]:`protocol not available`,[y.EPROTONOSUPPORT]:`protocol not supported`,[y.ESOCKTNOSUPPORT]:`socket type not supported`,[y.ENOTSUP]:`operation not supported on socket`,[y.EPFNOSUPPORT]:`protocol family not supported`,[y.EAFNOSUPPORT]:`address family not supported`,[y.EADDRINUSE]:`address already in use`,[y.EADDRNOTAVAIL]:`address not available`,[y.ENETDOWN]:`network is down`,[y.ENETUNREACH]:`network is unreachable`,[y.ENETRESET]:`network dropped connection on reset`,[y.ECONNABORTED]:`software caused connection abort`,[y.ECONNRESET]:`connection reset by peer`,[y.ENOBUFS]:`no buffer space available`,[y.EISCONN]:`socket is already connected`,[y.ENOTCONN]:`socket is not connected`,[y.ESHUTDOWN]:`cannot send after transport endpoint shutdown`,[y.ETOOMANYREFS]:`too many references: cannot splice`,[y.ETIMEDOUT]:`connection timed out`,[y.ECONNREFUSED]:`connection refused`,[y.EHOSTDOWN]:`host is down`,[y.EHOSTUNREACH]:`host is unreachable`,[y.EALREADY]:`connection already in progress`,[y.EINPROGRESS]:`operation now in progress`,[y.ESTALE]:`stale file handle`,[y.EEUCLEAN]:`structure needs cleaning`,[y.ENOTNAM]:`not a XENIX named type file`,[y.ENAVAIL]:`no XENIX semaphores available`,[y.EISNAM]:`is a named type file`,[y.EREMOTEIO]:`remote I/O error`,[y.EDQUOT]:`disk quota exceeded`,[y.ENOMEDIUM]:`no medium found`,[y.EMEDIUMTYPE]:`wrong medium type`,[y.ECANCELED]:`operation canceled`,[y.ENOKEY]:`required key not available`,[y.EKEYEXPIRED]:`key has expired`,[y.EKEYREVOKED]:`key has been revoked`,[y.EKEYREJECTED]:`key was rejected by service`,[y.EOWNERDEAD]:`owner died`,[y.ENOTRECOVERABLE]:`state not recoverable`,[y.ERFKILL]:`operation not possible due to RF-kill`,[y.EHWPOISON]:`memory page has hardware error`};function b(e){let t=`${e.code}: ${pe[e.errno]}, ${e.syscall}`;e.path&&(t+=` '${e.path}'`),e.dest&&(t+=` -> '${e.dest}'`);let n=e.message.startsWith(pe[e.errno])||/^E[A-Z0-9]+: /.test(e.message);return e.message&&!n&&(t+=` (${e.message})`),e.message=t,e}var x=class e extends Error{errno;code;path;dest;syscall;constructor(e,t,n={}){let r=y[e];super(t||``),this.errno=e,this.code=r,Object.assign(this,m(n,`message`)),t||b(this),Error.captureStackTrace?.(this,this.constructor)}toString(){return this.message}toJSON(){let e={errno:this.errno,code:this.code,stack:this.stack,message:this.message};return this.path&&(e.path=this.path),this.dest&&(e.dest=this.dest),this.syscall&&(e.syscall=this.syscall),e}static fromJSON(t){let n=t.syscall?new e(t.errno,!1,t):new e(t.errno,t.message);return n.stack=t.stack,n}};function S(e,t,n,r){typeof t==`string`&&(t={syscall:t,path:n,dest:r});let i=new x(y[e],!1,t??{});return Error.captureStackTrace?.(i,S),i}function C(e,t){let n=new x(y[e],t??pe[y[e]]);return Error.captureStackTrace?.(n,C),n}function me(e,t,n){let r=typeof e==`string`?{syscall:e}:e;return t&&(r.path=t),n&&(r.dest=n),function(e){throw Object.assign(e,r),b(e),e}}var he=t({Level:()=>w,alert:()=>Se,configure:()=>Be,crit:()=>Ce,debug:()=>Ee,deprecated:()=>De,emerg:()=>xe,entries:()=>ve,err:()=>T,fancy:()=>Me,format:()=>Pe,info:()=>Te,isEnabled:()=>ze,levelOf:()=>_e,levels:()=>ge,log:()=>ye,notice:()=>we,warn:()=>E}),w;(function(e){e[e.EMERG=0]=`EMERG`,e[e.ALERT=1]=`ALERT`,e[e.CRIT=2]=`CRIT`,e[e.ERR=3]=`ERR`,e[e.WARN=4]=`WARN`,e[e.NOTICE=5]=`NOTICE`,e[e.INFO=6]=`INFO`,e[e.DEBUG=7]=`DEBUG`})(w||={});var ge=[`emergency`,`alert`,`critical`,`error`,`warning`,`notice`,`info`,`debug`];function _e(e){return ge.indexOf(e)}var ve=new d;function ye(e,t){if(!ze)return;let n={level:e,message:t,timestamp:new Date,elapsedMs:performance.now()};if(ve.size>=1e4){let e=ve.values().next().value;e!==void 0&&ve.delete(e)}ve.add(n),Ie(n)}function be(e){return function(t){return ye(e,t.toString()),t}}var xe=be(w.EMERG),Se=be(w.ALERT),Ce=be(w.CRIT),T=be(w.ERR),E=be(w.WARN),we=be(w.NOTICE),Te=be(w.INFO),Ee=be(w.DEBUG);function De(e){ye(w.WARN,e+` is deprecated and should not be used.`)}function Oe(e,t){return`\x1b[${t}m${e}\x1b[0m`}function ke(e){return`[`+(e.elapsedMs/1e3).toFixed(3).padStart(10)+`] `}var Ae={ansi:{[w.EMERG]:`1;4;37;41`,[w.ALERT]:`1;37;41`,[w.CRIT]:`1;35`,[w.ERR]:`1;31`,[w.WARN]:`1;33`,[w.NOTICE]:`1;36`,[w.INFO]:`1;37`,[w.DEBUG]:`0;2;37`},css:{[w.EMERG]:`font-weight: bold; text-decoration: underline; color: white; background-color: red;`,[w.ALERT]:`font-weight: bold; color: white; background-color: red;`,[w.CRIT]:`font-weight: bold; color: magenta;`,[w.ERR]:`font-weight: bold; color: red;`,[w.WARN]:`font-weight: bold; color: yellow;`,[w.NOTICE]:`font-weight: bold; color: cyan;`,[w.INFO]:`font-weight: bold; color: white;`,[w.DEBUG]:`opacity: 0.8; color: white;`}},je={ansi:{[w.EMERG]:`1;31`,[w.ALERT]:`1;31`,[w.CRIT]:`1;31`,[w.ERR]:`31`,[w.WARN]:`33`,[w.NOTICE]:`1;37`,[w.INFO]:`37`,[w.DEBUG]:`2;37`},css:{[w.EMERG]:`font-weight: bold; color: red;`,[w.ALERT]:`font-weight: bold; color: red;`,[w.CRIT]:`font-weight: bold; color: red;`,[w.ERR]:`color: red;`,[w.WARN]:`color: yellow;`,[w.NOTICE]:`font-weight: bold; color: white;`,[w.INFO]:`color: white;`,[w.DEBUG]:`opacity: 0.8; color: white;`}};function Me({style:e,colorize:t}){return function*(n){e==`css`&&(yield t==`level`?`%c%s %c%s`:`%c%s %c%s%s %c%s`),yield*e==`ansi`?[Oe(ke(n),`2;37`)]:[`opacity: 0.8; color: white;`,ke(n)];let r=e==`ansi`?[Oe(ge[n.level].toUpperCase(),Ae.ansi[n.level])]:[Ae.css[n.level],ge[n.level].toUpperCase()];if(t==`level`){yield*r,yield n.message;return}n.level<w.CRIT&&(yield*r),e==`ansi`?yield Oe(n.message,je.ansi[n.level]):yield*[je.css[n.level],n.message]}}var Ne=e=>[ke(e),e.message];function Pe(e){let t=Ne(e);return typeof t==`string`?[t]:Array.from(t)}var Fe=`process`in globalThis?console.error:console.log;function Ie(e){e.level>Le||Fe(...Pe(e))}var Le=w.ALERT,Re=!1,ze=!0;function Be(e){if(Ne=e.format??Ne,Fe=e.output??Fe,Le=typeof e.level==`string`?_e(e.level):e.level??Le,ze=e.enabled??ze,Re=e.stack??Re,e.dumpBacklog)for(let e of ve)Ie(e)}function Ve(e){return typeof e==`object`&&!!e&&`create`in e&&typeof e.create==`function`}function He(e,t){return Object.defineProperty(t,"prototype",{value:void 0}),e&&Object.defineProperty(t,"name",{value:e}),t}function Ue(e){return!(e&&e.constructor===Function)||e.prototype===void 0?!1:Function.prototype!==Object.getPrototypeOf(e)||Object.getOwnPropertyNames(e.prototype).length>1}function We(e,t){if(typeof t!=`object`||!t)throw T(C(`EINVAL`,`Invalid options`));for(let[n,r]of Object.entries(e.options)){let e=t?.[n];if(e==null){if(!r.required){Ee(`Using default for option: `+n);continue}throw T(C(`EINVAL`,`Missing required option: `+n))}let i=(t,n=e)=>typeof t==`function`?Ue(t)?e instanceof t:t(e):typeof e===t||e?.constructor?.name===t;if(Array.isArray(r.type)?r.type.some(e=>i(e)):i(r.type))continue;let a=typeof e==`object`&&`constructor`in e?e.constructor.name:typeof e,o=e=>typeof e==`function`?e.name==`type`?e.toString():e.name:e;throw T(C(`EINVAL`,`Incorrect type for "${n}": ${a} (expected ${Array.isArray(r.type)?`one of ${r.type.map(o).join(`, `)}`:o(r.type)})`))}}function Ge(e){return typeof e==`object`&&!!e&&`backend`in e&&Ve(e.backend)}function Ke(e){return{suid:e.uid,sgid:e.gid,euid:e.uid,egid:e.gid,groups:[],...e}}function qe(e){return e?!e.uid||!e.gid||!e.euid||!e.egid||e.groups.some(e=>!e):!1}var Je=Symbol(`ZenFSContext`);function Ye(e){return typeof e==`object`&&!!e&&Je in e}function Xe(e){if(!Ye(e))throw E(C(`EINVAL`,`Invalid context provided`))}var Ze={[Je]:!0,id:1,root:`/`,pwd:`/`,credentials:Ke({uid:0,gid:0}),descriptors:new Map,parent:null,children:[],mounts:new Map};function D(e){return Ye(e)?e:Ze}var Qe=2;function $e(e,t={}){Xe(e);let{root:n=e.root,pwd:r=e.pwd,credentials:i=structuredClone(e.credentials),mounts:a}=t,o={[Je]:!0,id:Qe++,root:n,pwd:r,credentials:Ke(i),descriptors:new Map,parent:e,children:[],mounts:a?new Map(Object.entries(a)):e.mounts};return Object.defineProperties(o,{id:{configurable:!1,writable:!1},credentials:{configurable:!1,writable:!1},descriptors:{configurable:!1,writable:!1},parent:{configurable:!1,writable:!1},children:{configurable:!1,writable:!1}}),o}var et=t({COPYFILE_EXCL:()=>1,COPYFILE_FICLONE:()=>2,COPYFILE_FICLONE_FORCE:()=>4,F_OK:()=>0,O_APPEND:()=>tt,O_CREAT:()=>64,O_DIRECT:()=>ct,O_DIRECTORY:()=>nt,O_DSYNC:()=>ot,O_EXCL:()=>128,O_NOATIME:()=>rt,O_NOCTTY:()=>256,O_NOFOLLOW:()=>it,O_NONBLOCK:()=>lt,O_RDONLY:()=>0,O_RDWR:()=>2,O_SYMLINK:()=>st,O_SYNC:()=>at,O_TRUNC:()=>512,O_WRONLY:()=>1,R_OK:()=>4,S_IFBLK:()=>pt,S_IFCHR:()=>ht,S_IFDIR:()=>mt,S_IFIFO:()=>gt,S_IFLNK:()=>dt,S_IFMT:()=>O,S_IFREG:()=>ft,S_IFSOCK:()=>ut,S_IRGRP:()=>32,S_IROTH:()=>4,S_IRUSR:()=>256,S_IRWXG:()=>56,S_IRWXO:()=>7,S_IRWXU:()=>448,S_ISGID:()=>vt,S_ISUID:()=>_t,S_ISVTX:()=>512,S_IWGRP:()=>16,S_IWOTH:()=>2,S_IWUSR:()=>128,S_IXGRP:()=>8,S_IXOTH:()=>1,S_IXUSR:()=>64,UV_FS_O_FILEMAP:()=>0,W_OK:()=>2,X_OK:()=>1,size_max:()=>yt}),tt=1024,nt=65536,rt=262144,it=131072,at=1052672,ot=4096,st=32768,ct=16384,lt=2048,O=61440,ut=49152,dt=40960,ft=32768,pt=24576,mt=16384,ht=8192,gt=4096,_t=2048,vt=1024,yt=4294967295;function bt(e){return`__isArrayType`in e&&e.__isArrayType===!0}function xt(e){return typeof e!=`object`&&typeof e!=`function`||e==null?!1:bt(e)?xt(e.type):`name`in e&&`size`in e&&`get`in e&&`set`in e&&typeof e.name==`string`&&typeof e.size==`number`&&typeof e.get==`function`&&typeof e.set==`function`&&St.has(e.name)&&St.get(e.name)?.name===e.name}var St=new Map;function Ct(e){if(St.has(e.name))throw ReferenceError(`Type is already registered: ${e.name}`);St.set(e.name,e)}var wt=Symbol(`DataView`);function Tt(e){return e[wt]??=new DataView(e),e[wt]}var Et={name:`int8`,size:1,array:Int8Array,get:(e,t)=>Tt(e).getInt8(t),set:(e,t,n)=>Tt(e).setInt8(t,n)},Dt={name:`uint8`,size:1,array:Uint8Array,get:(e,t)=>Tt(e).getUint8(t),set:(e,t,n)=>Tt(e).setUint8(t,n)},Ot={int8:Et,uint8:Dt,int16:{name:`int16`,size:2,array:Int16Array,get:(e,t)=>Tt(e).getInt16(t,!0),set:(e,t,n)=>Tt(e).setInt16(t,n,!0)},uint16:{name:`uint16`,size:2,array:Uint16Array,get:(e,t)=>Tt(e).getUint16(t,!0),set:(e,t,n)=>Tt(e).setUint16(t,n,!0)},int32:{name:`int32`,size:4,array:Int32Array,get:(e,t)=>Tt(e).getInt32(t,!0),set:(e,t,n)=>Tt(e).setInt32(t,n,!0)},uint32:{name:`uint32`,size:4,array:Uint32Array,get:(e,t)=>Tt(e).getUint32(t,!0),set:(e,t,n)=>Tt(e).setUint32(t,n,!0)},int64:{name:`int64`,size:8,array:BigInt64Array,get:(e,t)=>Tt(e).getBigInt64(t,!0),set:(e,t,n)=>Tt(e).setBigInt64(t,n,!0)},uint64:{name:`uint64`,size:8,array:BigUint64Array,get:(e,t)=>Tt(e).getBigUint64(t,!0),set:(e,t,n)=>Tt(e).setBigUint64(t,n,!0)},float32:{name:`float32`,size:4,array:Float32Array,get:(e,t)=>Tt(e).getFloat32(t,!0),set:(e,t,n)=>Tt(e).setFloat32(t,n,!0)},float64:{name:`float64`,size:8,array:Float64Array,get:(e,t)=>Tt(e).getFloat64(t,!0),set:(e,t,n)=>Tt(e).setFloat64(t,n,!0)}},kt=Object.keys(Ot);for(let e of Object.values(Ot))Ct(e);var At={...Ot,...Object.fromEntries(kt.map(e=>[ae(e),Ot[e]])),char:Dt},jt=Object.keys(At);function Mt(e){return jt.includes(e.toString())}function Nt(e){if(!Mt(e))throw C(`EINVAL`,`Not a valid primitive type: `+e)}function Pt(e){return e==`char`?`uint8`:e.toLowerCase()}function Ft(e){return(typeof e==`object`||typeof e==`function`)&&e!==null&&`toInit`in e&&typeof e.toInit==`function`}function It(e){return Ft(e)?e.toInit():xt(e)?{type:e}:e}function Lt(e,t,n={}){if(!e)throw C(`EINVAL`,`Invalid name for struct field`);typeof e==`symbol`&&console.warn(`Symbol used for struct field name will be coerced to string: `+e.toString());let r=e.toString(),i=Object.assign(It(t),n);if(!xt(i.type))throw C(`EINVAL`,`Invalid type for struct field "${r}"`);let a=i.countedBy?` counted_by(${typeof i.countedBy==`string`?i.countedBy:`<function>`})`:``;return{name:r,offset:0,type:i.type,countedBy:i.countedBy,alignment:i.align??i.type.size,decl:i.type instanceof on?`${i.typeName??i.type.type.name} ${r}[${i.type.length}]${a}`:`${i.typeName??i.type.name} ${r}`,littleEndian:!i.bigEndian}}function Rt(e,t){if(!(e instanceof Error)||e.message.toLowerCase()!==`offset is outside the bounds of the dataview`)throw e;let n=C(`EFAULT`,`Segmentation fault (at 0x${t.toString(16)})`);throw Error.captureStackTrace(n,Rt),n}function zt(e,t){return t.type instanceof on&&t.type.length==0&&!!t.countedBy?.length&&!!e.constructor.isDynamic}function Bt(e,t){let n=typeof t.countedBy==`function`?t.countedBy(e):e[t.countedBy];if(typeof n==`bigint`){if(n>BigInt(2**53-1))throw C(`EOVERFLOW`,`countedBy field value exceeds max safe integer`);n=Number(n)}if(typeof n!=`number`)throw C(`EINVAL`,`countedBy field value is not a number`);return n}function Vt(e,t){let n=t.type.type.size*Bt(e,t);if($t(t.type.type)&&t.type.type.isDynamic)for(let r of e[t.name])n+=en(r);return n}var Ht=Symbol(`kOffsets`),Ut=Symbol(`kStaticLayout`);function Wt(e){if(e[Ut]!==void 0)return e[Ut];let t=!e.isDynamic;if(t)for(let n of e.fields){let e=n.type;for(;e instanceof on;)e=e.type;if($t(e)&&e.isDynamic){t=!1;break}}return Object.defineProperty(e,Ut,{value:t,configurable:!0}),t}function Gt(e,t,n){if(Wt(e.constructor))return t.offset;let{offset:r,name:i}=t;e[Ht]||=Object.create(null);let a=e[Ht];if(a[i]!==void 0){if(n)return a[i];delete a[i]}let{fields:o}=e.constructor,s=o.indexOf(t);for(let t of o.slice(0,s)){zt(e,t)&&(r+=Vt(e,t));let n=e[t.name];Qt(n)&&n.constructor.isDynamic&&(r+=en(n))}if(n)a[i]=r;else for(let e of o.slice(s))a[e.name]!==void 0&&delete a[e.name];return r}function Kt(e,t,n,r){typeof n==`string`&&(n=n.charCodeAt(0));let i=e.byteOffset+Gt(e,t,!1)+(r??0)*t.type.size;try{t.type.set(e.buffer,i,n);return}catch(e){Rt(e,i)}}var qt=Symbol(`kDescriptors`);function Jt(e){if(Object.hasOwn(e,qt))return e[qt];let t={};for(let n of e.fields)t[n.name]={enumerable:!0,configurable:!0,get(){return Zt(this,n)},set(e){Kt(this,n,e)}};return Object.defineProperty(e,qt,{value:t,configurable:!0}),t}function Yt(e){Object.defineProperties(e.prototype,Jt(e))}var Xt=Symbol(`kViews`);function Zt(e,t){let n=t.type,r=zt(e,t);if(r){let r=t.type.type;n=new on(r,Bt(e,t))}let i=!r&&(n instanceof on||$t(n))&&Wt(e.constructor);if(i){let n=e[Xt]??=Object.create(null);if(n[t.name]!==void 0)return n[t.name]}let a=e.byteOffset+Gt(e,t,!0);try{let r=n.get(e.buffer,a);return i&&(e[Xt][t.name]=r),r}catch(e){Rt(e,a)}}function Qt(e){return typeof e==`object`&&!!e&&`constructor`in e&&$t(e.constructor)}function $t(e){return typeof e==`function`&&`prototype`in e&&`fields`in e&&typeof e.fields==`object`&&xt(e)}function en(e){let t=0;for(let n of e.constructor.fields){let r=e[n.name];zt(e,n)&&(t+=Vt(e,n)),Qt(r)&&r.constructor.isDynamic&&(t+=en(r))}return t}function tn(e){if(xt(e))return e.size;if(e==null)return 0;if(typeof e==`object`&&xt(e.constructor))return e.constructor.size;if(Array.isArray(e)){let t=0;for(let n=0;n<e.length;n++)t+=tn(e[n]);return t}if(typeof e==`string`)return Nt(e),Ot[Pt(e)].size;throw TypeError(`Unable to resolve size of \`${e.toString()}\``)}function k(e){let t=tn(e);return Qt(e)&&e.constructor.isDynamic?t+en(e):t}function nn(e,t){let n;if($t(e)){if(e.isDynamic)throw C(`EINVAL`,`Cannot get offset of field in dynamic struct from the constructor`);n=e}else if(Qt(e))n=e.constructor;else throw C(`EINVAL`,`Type is not a struct or struct constructor`);let{fields:r}=n,i=r.find(e=>e.name===t);if(!i)throw C(`EINVAL`,`Struct does not have field: `+t);return $t(e)?i.offset:Gt(e,i,!0)}function rn(e,t){class n extends DataView{length;type=e;*[Symbol.iterator](){for(let e=0;e<this.length;e++)yield this[e]}_offsets=[0];offsetOf(t){if(!e.isDynamic)return t*e.size;if(t<this._offsets.length)return this._offsets[t];for(let n=this._offsets.length;n<=t;n++)this._offsets[n]=this._offsets[n-1]+k(e.get(this.buffer,this.byteOffset+this._offsets[n-1]));return this._offsets[t]}constructor(n,r,i){let a=typeof n==`object`?n:new ArrayBuffer((n??0)*e.size);super(a,r,i),this.length=typeof n==`number`?n:e.isDynamic?t??_(`Unknown length of StructArray<${e.name}>`):Math.floor(this.byteLength/e.size);let o=e=>this.byteOffset+this.offsetOf(e),s=an(e)&&!e.isDynamic?[]:void 0;return new Proxy(this,{get(t,n){if(n in t)return t[n];let r=parseInt(n.toString());if(Number.isSafeInteger(r))return s?s[r]??=e.get(t.buffer,o(r)):e.get(t.buffer,o(r))},set(t,n,r){let i=parseInt(n.toString());return Number.isSafeInteger(i)?(e.set(t.buffer,o(i),r),!0):!1}})}}for(let e of Object.getOwnPropertyNames(DataView.prototype))!e.startsWith(`get`)&&!e.startsWith(`set`)||Object.defineProperty(n.prototype,e,{enumerable:!1,configurable:!1,writable:!1,value:void 0});return n}function an(e){return typeof e==`function`&&`prototype`in e&&`fields`in e&&typeof e.fields==`object`&&xt(e)}var on=class{type;length;name;size;__structArray;__arrayType;__isArrayType=!0;constructor(e,t){this.type=e,this.length=t,this.name=`${e.name}[${t}]`,this.size=e.size*t,this.array=rn(this),this.__structArray=rn(e,t),this.__arrayType=e.array?e.array:this.__structArray}get=(e,t)=>Mt(this.type.name)&&t%this.type.size!==0?new this.__structArray(e,t,this.size):new this.__arrayType(e,t,this.size);set=(e,t,n)=>{if(this.length)for(let r=0;r<this.length;r++)this.type.set(e,t+r*this.type.size,n[r]);else{let r=t;for(let t=0;t<n.length;t++)this.type.set(e,r,n[t]),r+=an(this.type)&&this.type.isDynamic?k(n[t]):this.type.size}};array};Symbol.metadata??=Symbol.for(`Symbol.metadata`);function sn(e){e.metadata??={};let t=e.metadata.structInit??{};return e.metadata.structInit={fields:[...t.fields??[]]},e.metadata.structInit}function cn(...e){let t=e.reduce((e,t)=>({...e,...t}),{});return typeof this==`object`&&Object.assign(t,this),function(e,n){let r=sn(n),i=1,a=[],o=0,s=e=>{o=Math.ceil(o/e)*e};for(let e of r.fields)t.isPacked||s(e.alignment),t.isUnion?o=Math.max(o,e.type.size):(e.offset=o,o+=e.type.size),a.push(e),i=Math.max(i,e.alignment);t.alignment??=i,t.isPacked||s(t.alignment);class c extends e{static name=e.name;static size=o;static alignment=t.alignment;static isUnion=!!t.isUnion;static isDynamic=!!t.isDynamic;static fields=a;static get(e,t){return new this(e,t)}static set(e,t,n){let r=new Uint8Array(n.buffer,n.byteOffset,this.size),i=new Uint8Array(e,t,this.size);if(n.buffer!==e||n.byteOffset!==t)for(let e=0;e<this.size;e++)i[e]=r[e]}static[Symbol.toStringTag]=`[struct ${e.name}]`;constructor(...e){e.length||(e=[new ArrayBuffer(o),0,o]),super(...e),t.fastFields||Object.defineProperties(this,Jt(this.constructor))}}return Yt(c),n.addInitializer(function(){Object.defineProperty(c,"name",{value:e.name}),Ct(c)}),c}}cn.packed=cn.bind({isPacked:!0}),cn.align=function(e){return cn.bind({alignment:e})};function ln(e,t={}){return function(n,r){if(r.kind!=`accessor`)throw C(`EINVAL`,`Field must be an accessor`);let i=sn(r),a=Lt(r.name,e,t);return i.fields.push(a),{get(){return Zt(this,a)},set(e){Kt(this,a,e)}}}}function un(e){let t=Ot[Pt(e)];function n(n,r){return typeof n==`number`?ln(new on(t,n),{typeName:e,...r}):ln(t,{typeName:e})(n,r&&`name`in r?r:_(C(`EINVAL`,`Invalid decorator context object`)))}return n}var A=Object.fromEntries(jt.map(e=>[e,un(e)]));function dn(e){return e}dn.typed=function(e){return e};var fn=class e{type;init;constructor(t,n){this.type=t,this.init=n;let r=(r=>new e(new on(t,r),n));return Object.setPrototypeOf(r,new.target.prototype),Object.assign(r,{type:t,init:n}),r}align(t){return new e(this.type,{...this.init,align:t})}countedBy(t){return new e(this.type,{...this.init,countedBy:t})}bigEndian(){return new e(this.type,{...this.init,bigEndian:!0})}toInit(){return{type:this.type,...this.init}}$type(){return new e(this.type,this.init)}};function pn(e,t=0){return new fn(new on(e,t),{})}function mn(e,t,...n){let r=n.reduce((e,t)=>({...e,...t}),{});typeof this==`object`&&Object.assign(r,this);let i=1,a=0,o=e=>{a=Math.ceil(a/e)*e},s=[];for(let[e,n]of Object.entries(t)){if(typeof e==`number`)throw TypeError(`Field names can not be numbers`);let t=Lt(e,n);r.isPacked||o(t.alignment),r.isUnion?a=Math.max(a,t.type.size):(t.offset=a,a+=t.type.size),s.push(t),i=Math.max(i,t.alignment)}r.alignment??=i,r.isPacked||o(r.alignment);class c extends DataView{static name=e;static size=a;static alignment=r.alignment;static isUnion=!!r.isUnion;static isDynamic=!!r.isDynamic;static fields=s;static get(e,t){return new this(e,t)}static set(e,t,n){let r=new Uint8Array(n.buffer,n.byteOffset,this.size),i=new Uint8Array(e,t,this.size);if(n.buffer!==e||n.byteOffset!==t)for(let e=0;e<this.size;e++)i[e]=r[e]}static[Symbol.toStringTag]=`[struct ${e}]`;constructor(e=new ArrayBuffer(a),t,n){super(e,t,n??e.byteLength-(t??0)),r.fastFields||Object.defineProperties(this,Jt(this.constructor))}}for(let e of Object.getOwnPropertyNames(DataView.prototype))!e.startsWith(`get`)&&!e.startsWith(`set`)||Object.defineProperty(c.prototype,e,{enumerable:!1,configurable:!1,writable:!1,value:void 0});return Yt(c),Ct(c),c}mn.extend=function(e,t,n,...r){let i=r.reduce((e,t)=>({...e,...t}),{});typeof this==`object`&&Object.assign(i,this);let a=1,o=e.size,s=e=>{o=Math.ceil(o/e)*e},c=[...e.fields];for(let[e,t]of Object.entries(n)){if(typeof e==`number`)throw TypeError(`Field names can not be numbers`);let n=Lt(e,t);i.isPacked||s(n.alignment),i.isUnion?o=Math.max(o,n.type.size):(n.offset=o,o+=n.type.size),c.push(n),a=Math.max(a,n.alignment)}i.alignment??=a,i.isPacked||s(i.alignment);class l extends e{static name=t;static size=o;static alignment=i.alignment;static isUnion=!!i.isUnion;static isDynamic=!!i.isDynamic;static fields=c;static[Symbol.toStringTag]=`[struct ${t}]`}return Yt(l),Ct(l),l},mn.packed=mn.bind({isPacked:!0}),mn.align=function(e){return mn.bind({alignment:e})},mn.dynamic=mn.bind({isDynamic:!0}),Object.fromEntries(Object.entries(At).map(([e,t])=>[e,new fn(t,{typeName:e})]));function hn(e){return JSON.parse(ce(e),(e,t)=>e==``?t:typeof t==`string`?BigInt(t).toString(16).slice(0,Math.min(t.length,8)):t)}function gn(e){return v(JSON.stringify(e))}function _n(e,t){if(typeof e==`number`)return e;if(typeof e==`string`){let t=parseInt(e,8);if(!isNaN(t))return t}if(typeof t==`number`)return t;throw C(`EINVAL`,`Invalid mode: `+e?.toString())}var vn=2147483647;function yn(e){if(!(Number.isInteger(e)&&e>=0&&e<=vn))throw Object.assign(RangeError(`The value of "fd" is out of range. It must be >= 0 && <= ${vn}. Received ${e}`),{code:`ERR_OUT_OF_RANGE`})}function bn(e){let{code:t}=e??{};return t==`ENOENT`||t==`ENOTDIR`}function xn(e){if(e instanceof Date)return e.getTime();let t=Number(e);if(!Number.isFinite(t))throw C(`EINVAL`,`Invalid time.`);return t<0?Date.now():t*1e3}function j(e,t=!1){if(e instanceof URL){if(e.protocol!=`file:`)throw C(`EINVAL`,`URLs must use the file: protocol`);e=e.pathname}if(e=e.toString(),e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`\0`))throw C(`EINVAL`,`Path can not contain null character`);if(e.length==0)throw C(`EINVAL`,`Path can not be empty`);return e=e.replaceAll(/[/\\]+/g,`/`),t?e:jn.call(this,e)}function Sn(e,t=`utf8`,n,r=0){return typeof e!=`object`||!e?{encoding:typeof e==`string`?e:t??null,flag:n,mode:r}:{encoding:typeof e?.encoding==`string`?e.encoding:t??null,flag:typeof e?.flag==`string`?e.flag:n,mode:_n(`mode`in e?e?.mode:null,r)}}function Cn(e){let t=`\0GS\0`;return e=e.replace(/\*\*/g,t).replace(/\*/g,`\0S\0`).replace(/[.+^$(){}|[\]\\]/g,`\\$&`).replace(/\?/g,`.`).replaceAll(`/\0GS\0/`,`(?:/.*)?/`).replaceAll(t,`.*`).replaceAll(`\0S\0`,`[^/]*`),RegExp(`^${e}$`)}async function wn(e){let t=Promise.withResolvers();setTimeout(()=>t.reject(C(`ETIMEDOUT`)),500),e.on(`online`,t.resolve),await t.promise}function Tn(e){return`${j(e,!0)}${Date.now()}-${Math.random().toString(36).slice(2)}`}function En(){if(`Temporal`in globalThis&&globalThis.Temporal!==void 0)return globalThis.Temporal;throw C(`ENOTSUP`,`Temporal is not supported by this runtime`)}var Dn=t({basename:()=>Fn,dirname:()=>N,extname:()=>In,format:()=>Ln,formatExt:()=>An,isAbsolute:()=>Nn,join:()=>M,matchesGlob:()=>zn,normalize:()=>Mn,normalizeString:()=>kn,parse:()=>Rn,relative:()=>Pn,resolve:()=>jn,sep:()=>`/`});function On(e,t){if(typeof e!=`object`)throw TypeError(`"${t}" is not an object`)}function kn(e,t){let n=``,r=0,i=-1,a=0,o=`\0`;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else if(o==`/`)break;else o=`/`;if(o==`/`){if(i!==s-1&&a!==1){if(a===2){if(n.length<2||r!==2||n.at(-1)!==`.`||n.at(-2)!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}if(n.length!==0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/`+e.slice(i+1,s):n=e.slice(i+1,s),r=s-i-1}i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}function An(e){return e?`${e[0]===`.`?``:`.`}${e}`:``}function jn(...e){let t=``;for(let n of[...e.reverse(),D(this).pwd])if(n?.length&&(t=`${n}/${t}`,n.startsWith(`/`)))break;let n=t.startsWith(`/`);return t=kn(t,!n),n?`/${t}`:t.length?t:`/`}function Mn(e){if(!e.length)return`.`;let t=e[0]===`/`,n=e.at(-1)===`/`;return e=kn(e,!t),e.length?(n&&(e+=`/`),t?`/${e}`:e):t?`/`:n?`./`:`.`}function Nn(e){return e.startsWith(`/`)}function M(...e){if(!e.length)return`.`;let t=e.filter(e=>e).join(`/`);return t?.length?Mn(t):`.`}function Pn(e,t){if(e===t||(e=jn.call(this,e),t=jn.call(this,t),e===t))return``;let n=e.length,r=n-1,i=t.length-1,a=r<i?r:i,o=-1,s=0;for(;s<a;s++){let n=e[1+s];if(n!==t[1+s])break;n===`/`&&(o=s)}if(s===a){if(i>a){if(t[1+s]===`/`)return t.slice(1+s+1);if(s===0)return t.slice(1+s)}else r>a&&(e[1+s]===`/`?o=s:s===0&&(o=0))}let c=``;for(s=1+o+1;s<=n;++s)(s===n||e[s]===`/`)&&(c+=c.length===0?`..`:`/..`);return`${c}${t.slice(1+o)}`}function N(e){if(e.length===0)return`.`;let t=e[0]===`/`,n=-1,r=!0;for(let t=e.length-1;t>=1;--t)if(e[t]===`/`){if(!r){n=t;break}}else r=!1;return n===-1?t?`/`:`.`:t&&n===1?`//`:e.slice(0,n)}function Fn(e,t){let n=0,r=-1,i=!0;if(t!==void 0&&t.length>0&&t.length<=e.length){if(t===e)return``;let a=t.length-1,o=-1;for(let s=e.length-1;s>=0;--s)if(e[s]===`/`){if(!i){n=s+1;break}}else o===-1&&(i=!1,o=s+1),a>=0&&(e[s]===t[a]?--a===-1&&(r=s):(a=-1,r=o));return n===r?r=o:r===-1&&(r=e.length),e.slice(n,r)}for(let t=e.length-1;t>=0;--t)if(e[t]===`/`){if(!i){n=t+1;break}}else r===-1&&(i=!1,r=t+1);return r===-1?``:e.slice(n,r)}function In(e){let t=-1,n=0,r=-1,i=!0,a=0;for(let o=e.length-1;o>=0;--o){if(e[o]===`/`){if(!i){n=o+1;break}continue}r===-1&&(i=!1,r=o+1),e[o]===`.`?t===-1?t=o:a!==1&&(a=1):t!==-1&&(a=-1)}return t===-1||r===-1||a===0||a===1&&t===r-1&&t===n+1?``:e.slice(t,r)}function Ln(e){On(e,`pathObject`);let t=e.dir||e.root,n=e.base||`${e.name||``}${An(e.ext)}`;return t?t===e.root?`${t}${n}`:`${t}/${n}`:n}function Rn(e){let t=e[0]===`/`,n={root:t?`/`:``,dir:``,base:``,ext:``,name:``};if(e.length===0)return n;let r=+!!t,i=-1,a=0,o=-1,s=!0,c=e.length-1,l=0;for(;c>=r;--c){if(e[c]===`/`){if(!s){a=c+1;break}continue}o===-1&&(s=!1,o=c+1),e[c]===`.`?i===-1?i=c:l!==1&&(l=1):i!==-1&&(l=-1)}if(o!==-1){let r=a===0&&t?1:a;i===-1||l===0||l===1&&i===o-1&&i===a+1?n.base=n.name=e.slice(r,o):(n.name=e.slice(r,i),n.base=e.slice(r,o),n.ext=e.slice(i,o))}return a>0?n.dir=e.slice(0,a-1):t&&(n.dir=`/`),n}function zn(e,t){return Cn(e).test(t)}var Bn=BigInt(1e6),Vn=class{_convert(e){return this._isBigint?BigInt(e):Number(e)}get blocks(){return this._convert(Math.ceil(Number(this.size)/512))}set blocks(e){}mode;dev=this._convert(0);ino=this._convert(0);rdev=this._convert(0);nlink=this._convert(1);blksize=this._convert(4096);uid=this._convert(0);gid=this._convert(0);atimeMs;get atime(){return new Date(Number(this.atimeMs))}set atime(e){this.atimeMs=this._convert(e.getTime())}get atimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.atimeMs))}set atimeInstant(e){this.atimeMs=this._convert(e.epochMilliseconds)}mtimeMs;get mtime(){return new Date(Number(this.mtimeMs))}set mtime(e){this.mtimeMs=this._convert(e.getTime())}get mtimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.mtimeMs))}set mtimeInstant(e){this.mtimeMs=this._convert(e.epochMilliseconds)}ctimeMs;get ctime(){return new Date(Number(this.ctimeMs))}set ctime(e){this.ctimeMs=this._convert(e.getTime())}get ctimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.ctimeMs))}set ctimeInstant(e){this.ctimeMs=this._convert(e.epochMilliseconds)}birthtimeMs;get birthtime(){return new Date(Number(this.birthtimeMs))}set birthtime(e){this.birthtimeMs=this._convert(e.getTime())}get birthtimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.birthtimeMs))}set birthtimeInstant(e){this.birthtimeMs=this._convert(e.epochMilliseconds)}size;data;flags;version;constructor({atimeMs:e,mtimeMs:t,ctimeMs:n,birthtimeMs:r,uid:i,gid:a,size:o,mode:s,ino:c,...l}={}){let u=Date.now();this.atimeMs=this._convert(e??u),this.mtimeMs=this._convert(t??u),this.ctimeMs=this._convert(n??u),this.birthtimeMs=this._convert(r??u),this.uid=this._convert(i??0),this.gid=this._convert(a??0),this.size=this._convert(o??0),this.ino=this._convert(c??0),this.mode=this._convert(s??0),this.mode&61440||(this.mode|=this._convert(ft)),Object.assign(this,l)}isFile(){return(this.mode&O)===ft}isDirectory(){return(this.mode&O)===mt}isSymbolicLink(){return(this.mode&O)===dt}isSocket(){return(this.mode&O)===ut}isBlockDevice(){return(this.mode&O)===pt}isCharacterDevice(){return(this.mode&O)===ht}isFIFO(){return(this.mode&O)===gt}toJSON(){return p(this,...Zn,`dev`,`blksize`)}hasAccess(e,t){return z(t,this._isBigint?new Hn(this):this,e)}get atimeNs(){return BigInt(this.atimeMs)*Bn}get mtimeNs(){return BigInt(this.mtimeMs)*Bn}get ctimeNs(){return BigInt(this.ctimeMs)*Bn}get birthtimeNs(){return BigInt(this.birthtimeMs)*Bn}},Hn=class extends Vn{_isBigint=!1},Un=class extends Vn{_isBigint=!0};function Wn(e,t){return e.size==t.size&&+e.atime==+t.atime&&+e.mtime==+t.mtime&&+e.ctime==+t.ctime&&e.mode==t.mode}var Gn=class{type=525687744115;bsize=4096;blocks=0;bfree=0;bavail=0;files=yt;frsize=4096;ffree=yt},Kn=class{type=BigInt(`0x7a656e6673`);bsize=BigInt(4096);blocks=BigInt(0);bfree=BigInt(0);bavail=BigInt(0);files=BigInt(yt);frsize=BigInt(4096);ffree=BigInt(yt)},P=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},F=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},qn=0,Jn=3968,Yn=(()=>{var e,t;let n=[cn.packed()],r,i=[],a,o=dn.typed(Uint8Array),s,c=[],l=[],u,d=[],f=[];var p=class extends o{static{a=this}static{let m=typeof Symbol==`function`&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;s=[(e=A).uint32.bind(e)],u=[(t=A).uint32.bind(t)],P(this,null,s,{kind:`accessor`,name:`keySize`,static:!1,private:!1,access:{has:e=>`keySize`in e,get:e=>e.keySize,set:(e,t)=>{e.keySize=t}},metadata:m},c,l),P(this,null,u,{kind:`accessor`,name:`valueSize`,static:!1,private:!1,access:{has:e=>`valueSize`in e,get:e=>e.valueSize,set:(e,t)=>{e.valueSize=t}},metadata:m},d,f),P(null,r={value:a},n,{kind:`class`,name:a.name,metadata:m},null,i),p=a=r.value,m&&Object.defineProperty(a,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:m})}static name=`Attribute`;#e=F(this,c,void 0);get keySize(){return this.#e}set keySize(e){this.#e=e}#t=(F(this,l),F(this,d,void 0));get valueSize(){return this.#t}set valueSize(e){this.#t=e}get name(){return ce(this.subarray(8,8+this.keySize))}set name(e){let t=v(e);if(8+t.length+this.valueSize>Jn)throw C(`EOVERFLOW`);this.set(t,8),this.keySize=t.length}get value(){return this.subarray(8+this.keySize,this.size)}set value(e){if(8+this.keySize+e.length>Jn)throw C(`EOVERFLOW`);this.valueSize=e.length,this.set(e,8+this.keySize)}get size(){return 8+this.keySize+this.valueSize}constructor(){super(...arguments),F(this,f)}static{F(a,i)}};return a})(),Xn=(()=>{var e;let t=[cn.packed()],n,r=[],i,o=dn(a),s,c=[],l=[];var u=class extends o{static{i=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;s=[(e=A).uint32.bind(e)],P(this,null,s,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},c,l),P(null,n={value:i},t,{kind:`class`,name:i.name,metadata:a},null,r),u=i=n.value,a&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`Attributes`;#e=F(this,c,void 0);get size(){return this.#e}set size(e){this.#e=e}get byteSize(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);e+=t.size}return e}has(e){let t=this.byteOffset+k(this);for(let n=0;n<this.size;n++){let n=new Yn(this.buffer,t);if(n.name==e)return!0;t+=n.size}return!1}get(e){let t=this.byteOffset+k(this);for(let n=0;n<this.size;n++){let n=new Yn(this.buffer,t);if(n.name==e)return n.value;t+=n.size}}set(e,t){let n=this.byteOffset+k(this),r;for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,n);t.name==e&&(r=[n,t.size]),n+=t.size}let i=new Uint8Array(this.buffer);if(r){let[e,t]=r;n-=t,i.copyWithin(e,e+t,n+t),i.fill(0,n,n+t),this.size--}let a=new Yn(this.buffer,n);a.name=e,a.value=t,this.size++}remove(e){let t=this.byteOffset+k(this),n;for(let r=0;r<this.size;r++){let r=new Yn(this.buffer,t);r.name==e&&(n=[t,r.size]),t+=r.size}if(!n)return!1;let[r,i]=n,a=new Uint8Array(this.buffer);return a.copyWithin(r,r+i,t),a.fill(0,t-i,t),this.size--,!0}copyFrom(e){let{byteSize:t}=e;new Uint8Array(this.buffer,this.byteOffset,t).set(new Uint8Array(e.buffer,e.byteOffset,t))}*keys(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);yield t.name,e+=t.size}}*values(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);yield t.value,e+=t.size}}*entries(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);yield[t.name,t.value],e+=t.size}}constructor(){super(...arguments),F(this,l)}static{F(i,r)}};return i})(),Zn=[`ino`,`data`,`size`,`mode`,`flags`,`nlink`,`uid`,`gid`,`atimeMs`,`birthtimeMs`,`mtimeMs`,`ctimeMs`,`version`,`rdev`],Qn=5,I;(function(e){e[e.Sync=1]=`Sync`,e[e.NoAtime=2]=`NoAtime`,e[e.Append=4]=`Append`,e[e.Immutable=8]=`Immutable`,e[e.Dead=16]=`Dead`,e[e.NoQuota=32]=`NoQuota`,e[e.Dirsync=64]=`Dirsync`,e[e.NoCMtime=128]=`NoCMtime`,e[e.SwapFile=256]=`SwapFile`,e[e.Private=512]=`Private`,e[e.IMA=1024]=`IMA`,e[e.AutoMount=2048]=`AutoMount`,e[e.NoSec=4096]=`NoSec`,e[e.DAX=8192]=`DAX`,e[e.Encrypted=16384]=`Encrypted`,e[e.CaseFold=32768]=`CaseFold`,e[e.Verity=65536]=`Verity`,e[e.KernelFile=131072]=`KernelFile`})(I||={});var $n=253951,er=229631,L=(()=>{var e,t,n,r,i,o,s,c,l,u,d,f,m,h,g,ee,te;let _=[cn.packed()],ne,re=[],ie,ae=dn(a),oe,v=[],se=[],ce,le=[],ue=[],de,fe=[],y=[],pe,b=[],x=[],S,me=[],he=[],w,ge=[],_e=[],ve,ye=[],be=[],xe,Se=[],T=[],we,Te=[],Ee=[],De,Oe=[],ke=[],Ae,je=[],Me=[],Ne,Pe=[],Fe=[],Ie,Le=[],Re=[],ze,Be=[],Ve=[],He,Ue=[],We=[],Ge,Ke=[],qe=[],Je,Ye=[],Xe=[],Ze,D=[],Qe=[],$e,et=[],tt=[],nt,rt=[],it=[];var at=class extends ae{static{ie=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(ae[Symbol.metadata]??null):void 0;oe=[(e=A).uint32.bind(e)],ce=[(t=A).uint32.bind(t)],de=[(n=A).uint32.bind(n)],pe=[(r=A).uint16.bind(r)],S=[(i=A).uint32.bind(i)],w=[(o=A).uint32.bind(o)],ve=[(s=A).uint32.bind(s)],xe=[(c=A).float64.bind(c)],we=[(l=A).float64.bind(l)],De=[(u=A).float64.bind(u)],Ae=[(d=A).float64.bind(d)],Ne=[(f=A).uint32.bind(f)],Ie=[(m=A).uint32.bind(m)],ze=[(h=A).uint32.bind(h)],He=[(g=A).uint16.bind(g)],Ge=[(ee=A).uint32.bind(ee)],Je=[(te=A).uint32.bind(te)],Ze=[A.uint8(44)],$e=[ln(Xn)],nt=[A.uint8(Jn)],P(this,null,oe,{kind:`accessor`,name:`data`,static:!1,private:!1,access:{has:e=>`data`in e,get:e=>e.data,set:(e,t)=>{e.data=t}},metadata:a},v,se),P(this,null,ce,{kind:`accessor`,name:`__data_old`,static:!1,private:!1,access:{has:e=>`__data_old`in e,get:e=>e.__data_old,set:(e,t)=>{e.__data_old=t}},metadata:a},le,ue),P(this,null,de,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},fe,y),P(this,null,pe,{kind:`accessor`,name:`mode`,static:!1,private:!1,access:{has:e=>`mode`in e,get:e=>e.mode,set:(e,t)=>{e.mode=t}},metadata:a},b,x),P(this,null,S,{kind:`accessor`,name:`nlink`,static:!1,private:!1,access:{has:e=>`nlink`in e,get:e=>e.nlink,set:(e,t)=>{e.nlink=t}},metadata:a},me,he),P(this,null,w,{kind:`accessor`,name:`uid`,static:!1,private:!1,access:{has:e=>`uid`in e,get:e=>e.uid,set:(e,t)=>{e.uid=t}},metadata:a},ge,_e),P(this,null,ve,{kind:`accessor`,name:`gid`,static:!1,private:!1,access:{has:e=>`gid`in e,get:e=>e.gid,set:(e,t)=>{e.gid=t}},metadata:a},ye,be),P(this,null,xe,{kind:`accessor`,name:`atimeMs`,static:!1,private:!1,access:{has:e=>`atimeMs`in e,get:e=>e.atimeMs,set:(e,t)=>{e.atimeMs=t}},metadata:a},Se,T),P(this,null,we,{kind:`accessor`,name:`birthtimeMs`,static:!1,private:!1,access:{has:e=>`birthtimeMs`in e,get:e=>e.birthtimeMs,set:(e,t)=>{e.birthtimeMs=t}},metadata:a},Te,Ee),P(this,null,De,{kind:`accessor`,name:`mtimeMs`,static:!1,private:!1,access:{has:e=>`mtimeMs`in e,get:e=>e.mtimeMs,set:(e,t)=>{e.mtimeMs=t}},metadata:a},Oe,ke),P(this,null,Ae,{kind:`accessor`,name:`ctimeMs`,static:!1,private:!1,access:{has:e=>`ctimeMs`in e,get:e=>e.ctimeMs,set:(e,t)=>{e.ctimeMs=t}},metadata:a},je,Me),P(this,null,Ne,{kind:`accessor`,name:`ino`,static:!1,private:!1,access:{has:e=>`ino`in e,get:e=>e.ino,set:(e,t)=>{e.ino=t}},metadata:a},Pe,Fe),P(this,null,Ie,{kind:`accessor`,name:`__ino_old`,static:!1,private:!1,access:{has:e=>`__ino_old`in e,get:e=>e.__ino_old,set:(e,t)=>{e.__ino_old=t}},metadata:a},Le,Re),P(this,null,ze,{kind:`accessor`,name:`flags`,static:!1,private:!1,access:{has:e=>`flags`in e,get:e=>e.flags,set:(e,t)=>{e.flags=t}},metadata:a},Be,Ve),P(this,null,He,{kind:`accessor`,name:`__after_flags`,static:!1,private:!1,access:{has:e=>`__after_flags`in e,get:e=>e.__after_flags,set:(e,t)=>{e.__after_flags=t}},metadata:a},Ue,We),P(this,null,Ge,{kind:`accessor`,name:`version`,static:!1,private:!1,access:{has:e=>`version`in e,get:e=>e.version,set:(e,t)=>{e.version=t}},metadata:a},Ke,qe),P(this,null,Je,{kind:`accessor`,name:`rdev`,static:!1,private:!1,access:{has:e=>`rdev`in e,get:e=>e.rdev,set:(e,t)=>{e.rdev=t}},metadata:a},Ye,Xe),P(this,null,Ze,{kind:`accessor`,name:`__padding`,static:!1,private:!1,access:{has:e=>`__padding`in e,get:e=>e.__padding,set:(e,t)=>{e.__padding=t}},metadata:a},D,Qe),P(this,null,$e,{kind:`accessor`,name:`attributes`,static:!1,private:!1,access:{has:e=>`attributes`in e,get:e=>e.attributes,set:(e,t)=>{e.attributes=t}},metadata:a},et,tt),P(this,null,nt,{kind:`accessor`,name:`__data`,static:!1,private:!1,access:{has:e=>`__data`in e,get:e=>e.__data,set:(e,t)=>{e.__data=t}},metadata:a},rt,it),P(null,ne={value:ie},_,{kind:`class`,name:ie.name,metadata:a},null,re),at=ie=ne.value,a&&Object.defineProperty(ie,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`Inode`;constructor(...e){let t={};if(typeof e[0]==`object`&&e[0]!==null&&!ArrayBuffer.isView(e[0])&&(t=e[0],e=[k(at)]),e[0]instanceof at&&(e=[new Uint8Array(e[0].buffer,e[0].byteOffset,e[0].byteLength)]),super(...e),F(this,it),this.byteLength<k(at))throw Ce(C(`EIO`,`Buffer is too small to create an inode (${this.byteLength} bytes)`));Object.assign(this,t),this.atimeMs||=Date.now(),this.mtimeMs||=Date.now(),this.ctimeMs||=Date.now(),this.birthtimeMs||=Date.now(),this.ino&&!this.nlink&&E(`Inode ${this.ino} has an nlink of 0`)}#e=F(this,v,void 0);get data(){return this.#e}set data(e){this.#e=e}#t=(F(this,se),F(this,le,void 0));get __data_old(){return this.#t}set __data_old(e){this.#t=e}#n=(F(this,ue),F(this,fe,void 0));get size(){return this.#n}set size(e){this.#n=e}#r=(F(this,y),F(this,b,void 0));get mode(){return this.#r}set mode(e){this.#r=e}#i=(F(this,x),F(this,me,void 0));get nlink(){return this.#i}set nlink(e){this.#i=e}#a=(F(this,he),F(this,ge,void 0));get uid(){return this.#a}set uid(e){this.#a=e}#o=(F(this,_e),F(this,ye,void 0));get gid(){return this.#o}set gid(e){this.#o=e}#s=(F(this,be),F(this,Se,void 0));get atimeMs(){return this.#s}set atimeMs(e){this.#s=e}#c=(F(this,T),F(this,Te,void 0));get birthtimeMs(){return this.#c}set birthtimeMs(e){this.#c=e}#l=(F(this,Ee),F(this,Oe,void 0));get mtimeMs(){return this.#l}set mtimeMs(e){this.#l=e}#u=(F(this,ke),F(this,je,void 0));get ctimeMs(){return this.#u}set ctimeMs(e){this.#u=e}#d=(F(this,Me),F(this,Pe,void 0));get ino(){return this.#d}set ino(e){this.#d=e}#f=(F(this,Fe),F(this,Le,void 0));get __ino_old(){return this.#f}set __ino_old(e){this.#f=e}#p=(F(this,Re),F(this,Be,void 0));get flags(){return this.#p}set flags(e){this.#p=e}#m=(F(this,Ve),F(this,Ue,void 0));get __after_flags(){return this.#m}set __after_flags(e){this.#m=e}#h=(F(this,We),F(this,Ke,void 0));get version(){return this.#h}set version(e){this.#h=e}#g=(F(this,qe),F(this,Ye,void 0));get rdev(){return this.#g}set rdev(e){this.#g=e}#_=(F(this,Xe),F(this,D,void 0));get __padding(){return this.#_}set __padding(e){this.#_=e}#v=(F(this,Qe),F(this,et,void 0));get attributes(){return this.#v}set attributes(e){this.#v=e}#y=(F(this,tt),F(this,rt,void 0));get __data(){return this.#y}set __data(e){this.#y=e}toString(){return`<Inode ${this.ino}>`}toJSON(){return{...p(this,Zn),attributes:this.attributes}}toStats(){return new Hn(this)}update(e){if(!e)return!1;let t=!1;for(let n of Zn)e[n]!==void 0&&n!=`ino`&&n!=`data`&&this[n]!==e[n]&&(n==`atimeMs`&&this.flags&I.NoAtime||(this[n]=e[n],t=!0));return e.attributes&&(this.attributes.copyFrom(e.attributes),t=!0),t&&(this.ctimeMs=Date.now()),t}static{F(ie,re)}};return at=ie})();function tr(e){return(e.mode&O)===ft}function R(e){return(e.mode&O)===mt}function nr(e){return(e.mode&O)===dt}function rr(e){return(e.mode&O)===ut}function ir(e){return(e.mode&O)===pt}function ar(e){return(e.mode&O)===ht}function or(e){return(e.mode&O)===gt}function z(e,t,n){let{credentials:r}=D(e);if(nr(t))return!0;if(r.euid===0||r.egid===0)return!(n&1)||R(t)||!!(t.mode&73);let i=0;return r.uid===t.uid&&(t.mode&256&&(i|=4),t.mode&128&&(i|=2),t.mode&64&&(i|=1)),(r.gid===t.gid||r.groups.includes(Number(t.gid)))&&(t.mode&32&&(i|=4),t.mode&16&&(i|=2),t.mode&8&&(i|=1)),t.mode&4&&(i|=4),t.mode&2&&(i|=2),t.mode&1&&(i|=1),(i&n)===n}function sr(e,t,n){let r=!0;return!isNaN(t)&&t>=0&&t<4294967295?e.uid=t:r=!1,!isNaN(n)&&n>=0&&n<4294967295?e.gid=n:r=!1,r}var cr=1,lr=class e extends Map{maxSize=yt;toJSON(){return{version:1,maxSize:this.maxSize,entries:Object.fromEntries(Array.from(this).map(([e,t])=>[e,t.toJSON()]))}}toString(){return JSON.stringify(this.toJSON())}clear(){super.clear(),this.#e=0}get byteSize(){let e=this.size*k(L);for(let t of this.values())e+=t.size;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.byteSize}}pathOf(e){for(let[t,n]of this)if(n.ino==e||n.data==e)return t}getByID(e){return this.entryByID(e)?.inode}entryByID(e){for(let[t,n]of this)if(n.ino==e||n.data==e)return{path:t,inode:n}}directoryEntries(e){let t=this.get(e);if(!t)throw C(`ENOENT`);if((t.mode&61440)!=16384)throw C(`ENOTDIR`);let n={};for(let t of this.keys())N(t)==e&&t!=e&&(n[Fn(t)]=this.get(t).ino);return n}#e=0;_alloc(){return this.#e||=Array.from(this.values()).reduce((e,t)=>Math.max(e,t.ino,t.data),0),this.#e++,this.#e++}directories(){let e=new Map;for(let[t,n]of this){if((n.mode&61440)!=16384)continue;let r={};for(let e of this.keys())N(e)==t&&e!=t&&(r[Fn(e)]=this.get(e).ino);e.set(t,r)}return e}fromJSON(e){if(e.version!=1)throw C(`EINVAL`,`Index version mismatch`);this.clear();for(let[t,n]of Object.entries(e.entries))n.data??=ie(1,yt),t==`/`&&(n.ino=0),this.set(t,new L(n));return this}static parse(t){if(!h(t))throw C(`EINVAL`,`Invalid JSON`);let n=JSON.parse(t),r=new e;return r.fromJSON(n),r}},ur;(function(e){e[e.SecureRm=1]=`SecureRm`,e[e.Undelete=2]=`Undelete`,e[e.Compress=4]=`Compress`,e[e.Sync=8]=`Sync`,e[e.Immutable=16]=`Immutable`,e[e.Append=32]=`Append`,e[e.NoDump=64]=`NoDump`,e[e.NoAtime=128]=`NoAtime`,e[e.Dirty=256]=`Dirty`,e[e.CompressBlk=512]=`CompressBlk`,e[e.NoCompress=1024]=`NoCompress`,e[e.Encrypt=2048]=`Encrypt`,e[e.Btree=4096]=`Btree`,e[e.Index=4096]=`Index`,e[e.IMagic=8192]=`IMagic`,e[e.JournalData=16384]=`JournalData`,e[e.NoTail=32768]=`NoTail`,e[e.DirSync=65536]=`DirSync`,e[e.TopDir=131072]=`TopDir`,e[e.HugeFile=262144]=`HugeFile`,e[e.Extent=524288]=`Extent`,e[e.Verity=1048576]=`Verity`,e[e.EaInode=2097152]=`EaInode`,e[e.EofBlocks=4194304]=`EofBlocks`,e[e.NoCow=8388608]=`NoCow`,e[e.Dax=33554432]=`Dax`,e[e.InlineData=268435456]=`InlineData`,e[e.ProjInherit=536870912]=`ProjInherit`,e[e.CaseFold=1073741824]=`CaseFold`,e[e.Reserved=2147483648]=`Reserved`})(ur||={});var dr=[[ur.Sync,I.Sync],[ur.Immutable,I.Immutable],[ur.Append,I.Append],[ur.NoAtime,I.NoAtime],[ur.Encrypt,I.Encrypted],[ur.DirSync,I.Dirsync],[ur.Verity,I.Verity],[ur.Dax,I.DAX],[ur.CaseFold,I.CaseFold]],fr=dr.reduce((e,[t])=>e|t,0),pr=dr.reduce((e,[,t])=>e|t,0);function mr(e){let t=0;for(let[n,r]of dr)e&r&&(t|=n);return t}function hr(e,t){if(t&~fr)throw C(`ENOTSUP`,`Unsupported file flags`);let n=0;for(let[e,r]of dr)t&e&&(n|=r);e.inode.flags=(e.inode.flags||0)&~pr|n}var gr;(function(e){e[e.GetFlags=2148034049]=`GetFlags`,e[e.SetFlags=1074292226]=`SetFlags`,e[e.GetVersion=2148038145]=`GetVersion`,e[e.SetVersion=1074296322]=`SetVersion`,e[e.Fiemap=3223348747]=`Fiemap`,e[e.GetXattr=2149341215]=`GetXattr`,e[e.SetXattr=1075599392]=`SetXattr`,e[e.GetLabel=2164298801]=`GetLabel`,e[e.SetLabel=1090556978]=`SetLabel`,e[e.GetUUID=2148603136]=`GetUUID`,e[e.GetSysfsPath=2155943169]=`GetSysfsPath`})(gr||={});var _r;(function(e){e[e.GetFlags=2147771905]=`GetFlags`,e[e.SetFlags=1074030082]=`SetFlags`,e[e.GetVersion=2147776001]=`GetVersion`,e[e.SetVersion=1074034178]=`SetVersion`})(_r||={});var vr={[gr.GetFlags](e){if(typeof e.inode.flags!=`number`)throw C(`ENOTTY`);return mr(e.inode.flags)},[_r.GetFlags](e){if(typeof e.inode.flags!=`number`)throw C(`ENOTTY`);return mr(e.inode.flags)},[gr.GetVersion](e){if(typeof e.inode.version!=`number`)throw C(`ENOTTY`);return e.inode.version},[_r.GetVersion](e){if(typeof e.inode.version!=`number`)throw C(`ENOTTY`);return e.inode.version},[gr.Fiemap](){throw C(`ENOTSUP`)},[gr.GetXattr](){throw C(`ENOTSUP`)},[gr.SetXattr](){throw C(`ENOTSUP`)},[gr.GetLabel](e){return e.fs.label},[gr.SetLabel](e,t){e.fs.label=t},[gr.GetUUID](e){return e.fs.uuid},[gr.GetSysfsPath](){throw C(`ENOTSUP`)}},yr={...vr,async[gr.SetFlags](e,t){hr(e,t),await e.fs.touch(e.path,e.inode)},async[_r.SetFlags](e,t){hr(e,t),await e.fs.touch(e.path,e.inode)},async[gr.SetVersion](e,t){e.inode.version=t,await e.fs.touch(e.path,e.inode)},async[_r.SetVersion](e,t){e.inode.version=t,await e.fs.touch(e.path,e.inode)}},br={...vr,[gr.SetFlags](e,t){hr(e,t),e.fs.touchSync(e.path,e.inode)},[_r.SetFlags](e,t){hr(e,t),e.fs.touchSync(e.path,e.inode)},[gr.SetVersion](e,t){e.inode.version=t,e.fs.touchSync(e.path,e.inode)},[_r.SetVersion](e,t){e.inode.version=t,e.fs.touchSync(e.path,e.inode)}},xr=65536,Sr=class e{type;name;label;_mountPoint;_uuid=crypto.randomUUID();get uuid(){return this._uuid}attributes=new Map;constructor(t,n){this.type=t,this.name=n,this.streamRead===e.prototype.streamRead&&this.attributes.set(`default_stream_read`),this.streamWrite===e.prototype.streamWrite&&this.attributes.set(`default_stream_write`)}toString(){return`${this.name} ${this.label?JSON.stringify(this.label):``} (${this._mountPoint?`mounted on `+this._mountPoint:`unmounted`})`}usage(){return{totalSpace:0,freeSpace:0}}async ready(){}readySync(){if(this.ready!==e.prototype.ready)throw C(`EAGAIN`)}async exists(e){try{return await this.stat(e),!0}catch(e){return e.code!=`ENOENT`}}existsSync(e){try{return this.statSync(e),!0}catch(e){return e.code!=`ENOENT`}}streamRead(e,t){let{chunkSize:n=xr}=t,r=t.start??0,i=t.end;return new ReadableStream({pull:async t=>{if(i??=(await this.stat(e)).size,r>=i){t.close();return}let a=new Uint8Array(Math.min(n,i-r));await this.read(e,a,r,r+a.byteLength),r+=a.byteLength,t.enqueue(a),r>=i&&t.close()},type:`bytes`})}streamWrite(e,t){let n=t.start??0;return new WritableStream({write:async(t,r)=>{let i=!1,a=e=>{i=!0,r.error(e)},{size:o}=await this.stat(e);await this.write(e,t,n).catch(a),!i&&(n+=t.byteLength,await this.touch(e,{mtimeMs:Date.now(),size:Math.max(o,n)}).catch(a))}})}async ioctl(e,t,...n){let r=yr[t];if(!r)throw C(`ENOTTY`);return await r(e,...n)}ioctlSync(e,t,...n){let r=br[t];if(!r)throw C(`ENOTTY`);return r(e,...n)}};Promise.withResolvers??=(E(`Using a polyfill of Promise.withResolvers`),function(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}),Symbol.dispose??=(E(`Using a polyfill of Symbol.dispose`),Symbol(`Symbol.dispose`)),Symbol.asyncDispose??=(E(`Using a polyfill of Symbol.asyncDispose`),Symbol(`Symbol.asyncDispose`)),globalThis.crypto.randomUUID??=(E(`Using a polyfill of crypto.randomUUID`),function(){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}),Uint8Array.prototype.toBase64??=(E(`Using a polyfill of Uint8Array.prototype.toBase64`),function(){return btoa(String.fromCharCode(...this))}),Uint8Array.fromBase64??=(E(`Using a polyfill of Uint8Array.fromBase64`),function(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}),Uint8Array.prototype.toHex??=(E(`Using a polyfill of Uint8Array.prototype.toHex`),function(){return Array.from(this).map(e=>e.toString(16).padStart(2,`0`)).join(``)}),Uint8Array.fromHex??=(E(`Using a polyfill of Uint8Array.fromHex`),function(e){let t=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)t[n/2]=parseInt(e.slice(n,n+2),16);return t}),Array.fromAsync??=(E(`Using a polyfill of Array.fromAsync`),async function(e){let t=[];for await(let n of e)t.push(n);return t});var Cr=class{store;constructor(e){this.store=e}},wr=class extends Cr{async get(e,t,n){return this.getSync(e,t,n)}async set(e,t,n){return this.setSync(e,t,n)}async remove(e){return this.removeSync(e)}},Tr=class extends Cr{asyncDone=Promise.resolve();async(e){this.asyncDone=this.asyncDone.then(()=>e)}_cached(e,t){this.store.cache??=new Map;let n=this.store.cache.get(e);return n?(t&&(n.size=t.size),n):t?new s(e,t.size,{},this.store.cache):void 0}getSync(e,t,n){let r=this._cached(e);if(!r)return;n??=r.size;let i=r.missing(t,n);for(let{start:t,end:n}of i)this.async(this.get(e,t,n));if(i.length)throw C(`EAGAIN`);let a=r.regionAt(t);if(!a){E(`Missing cache region for `+e);return}return a.data.subarray(t-a.offset,n-a.offset)}setSync(e,t,n){this.async(this.set(e,t,n))}removeSync(e){this.async(this.remove(e)),this.store.cache?.delete(e)}},Er=class{raw;fs;done=!1;flag(e){return this.raw.store.flags?.includes(e)??!1}constructor(e,t){this.raw=e,this.fs=t}originalData=new Map;modifiedKeys=new Set;keys(){return this.raw.keys()}async get(e,t=0,n){let r=await this.raw.get(e,t,n);return this.stash(e),r}getSync(e,t=0,n){let r=this.raw.getSync(e,t,n);return this.stash(e),r}async set(e,t,n=0){await this.markModified(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);await this.raw.set(e,r,n)}setSync(e,t,n=0){this.markModifiedSync(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);this.raw.setSync(e,r,n)}async remove(e){await this.markModified(e,0,void 0),await this.raw.remove(e)}removeSync(e){this.markModifiedSync(e,0,void 0),this.raw.removeSync(e)}commit(){return this.done=!0,Promise.resolve()}commitSync(){this.done=!0}async abort(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){await this.raw.remove(e),this.fs._remove(e);continue}for(let n of t.reverse())await this.raw.set(e,n.data,n.offset)}this.done=!0}}abortSync(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){this.raw.removeSync(e),this.fs._remove(e);continue}for(let n of t.reverse())this.raw.setSync(e,n.data,n.offset)}this.done=!0}}async[Symbol.asyncDispose](){this.done||await this.abort()}[Symbol.dispose](){this.done||this.abortSync()}stash(e,t,n=0){this.originalData.has(e)||this.originalData.set(e,[]),this.originalData.get(e).push({data:t,offset:n})}async markModified(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,await this.raw.get(e,t,r),t)}catch(n){if(!(this.raw instanceof Tr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,await this.raw.get(e,n.start,n.end),n.start)}}markModifiedSync(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,this.raw.getSync(e,t,r),t)}catch(n){if(!(this.raw instanceof Tr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,this.raw.getSync(e,n.start,n.end),n.start)}}},B=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},V=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),Dr=class extends Sr{store;_ids=new Map([[`/`,0]]);_paths=new Map([[0,new Set(`/`)]]);_path(e){let[t]=this._paths.get(e)??[];return t}_add(e,t){this._paths.has(e)||this._paths.set(e,new Set),this._paths.get(e).add(t),this._ids.set(t,e)}_remove(e){for(let t of this._paths.get(e)??[])this._ids.delete(t);this._paths.delete(e)}_move(e,t){let n=[];for(let[r,i]of this._ids){let a=Pn(e,r);if(a.startsWith(`..`))continue;let o=M(t,a);o.endsWith(`/`)&&(o=o.slice(0,-1)),n.push({oldKey:r,newKey:o,ino:i})}for(let{oldKey:e,newKey:t,ino:r}of n){this._ids.delete(e),this._ids.set(t,r);let n=this._paths.get(r);if(!n){E(`Missing paths in table for ino `+r);continue}n.delete(e),n.add(t)}}_initialized=!1;async ready(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),await this.checkRoot(),await this._populate(),!0)}readySync(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),this.checkRootSync(),this._populateSync(),!0)}constructor(e){super(e.type??1802921587,e.name),this.store=e,e.fs=this,this._uuid=e.uuid??this.uuid,this.label=e.label,Ee(this.name+`: supports features: `+this.store.flags?.join(`, `))}usage(){return this.store.usage?.()||{totalSpace:0,freeSpace:0}}async loadIndex(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!0),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),await n.set(i.ino,i),r.has(t)&&await n.set(i.data,gn(r.get(t)));await n.commit()}catch(e){t.error=e,t.hasError=!0}finally{let e=V(t);e&&await e}}loadIndexSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!1),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),n.setSync(i.ino,i),r.has(t)&&n.setSync(i.data,gn(r.get(t)));n.commitSync()}catch(e){t.error=e,t.hasError=!0}finally{V(t)}}async createIndex(){let e={stack:[],error:void 0,hasError:!1};try{let t=new lr,n=B(e,this.transaction(),!0),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new L(await n.get(i));if(t.set(e,a),R(a)){let t=hn(await n.get(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{let t=V(e);t&&await t}}createIndexSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=new lr,n=B(e,this.transaction(),!1),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new L(n.getSync(i));if(t.set(e,a),R(a)){let t=hn(n.getSync(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{V(e)}}async rename(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),i=Rn(e),a=Rn(t),o=await this.findInode(r,i.dir),s=hn(await r.get(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir==i.dir,u=l?o:await this.findInode(r,a.dir),d=l?s:hn(await r.get(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new L(await r.get(d[a.base])??_(C(`ENOENT`)));if(!tr(e))throw C(`EISDIR`);await r.remove(e.data),await r.remove(d[a.base])}d[a.base]=c,await r.set(o.data,gn(s)),await r.set(u.data,gn(d)),await r.commit(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}renameSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),i=Rn(e),a=Rn(t),o=this.findInodeSync(r,i.dir),s=hn(r.getSync(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir===i.dir,u=l?o:this.findInodeSync(r,a.dir),d=l?s:hn(r.getSync(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new L(r.getSync(d[a.base])??_(C(`ENOENT`)));if(!tr(e))throw C(`EISDIR`);r.removeSync(e.data),r.removeSync(d[a.base])}d[a.base]=c,r.setSync(o.data,gn(s)),r.setSync(u.data,gn(d)),r.commitSync(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}async stat(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!0);return await this.findInode(n,e)}catch(e){t.error=e,t.hasError=!0}finally{let e=V(t);e&&await e}}statSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!1);return this.findInodeSync(n,e)}catch(e){t.error=e,t.hasError=!0}finally{V(t)}}async touch(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),a=await this.findInode(r,e);if(!R(a)&&t.size!==void 0&&t.size!==a.size){let e=await r.get(a.data)??new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),await r.set(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}touchSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),a=this.findInodeSync(r,e);if(!R(a)&&t.size!==void 0&&t.size!==a.size){let e=r.getSync(a.data)??new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),r.setSync(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}async createFile(e,t){return await this.commitNew(e,{...t,mode:t.mode|ft},new Uint8Array)}createFileSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|ft},new Uint8Array)}async unlink(e){return this.remove(e,!1)}unlinkSync(e){this.removeSync(e,!1)}async rmdir(e){if((await this.readdir(e)).length)throw C(`ENOTEMPTY`);await this.remove(e,!0)}rmdirSync(e){if(this.readdirSync(e).length)throw C(`ENOTEMPTY`);this.removeSync(e,!0)}async mkdir(e,t){return await this.commitNew(e,{...t,mode:t.mode|mt},v(`{}`))}mkdirSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|mt},v(`{}`))}async readdir(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!0),r=await this.findInode(n,e);return Object.keys(hn(await n.get(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{let e=V(t);e&&await e}}readdirSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!1),r=this.findInodeSync(n,e);return Object.keys(hn(n.getSync(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{V(t)}}async sync(){}syncSync(){}async link(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),i=N(t),a=await this.findInode(r,i),o=hn(await r.get(a.data)??_(C(`ENOENT`))),s=await this.findInode(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),await r.set(s.ino,s),await r.set(a.data,gn(o)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}linkSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),i=N(t),a=this.findInodeSync(r,i),o=hn(r.getSync(a.data)??_(C(`ENOENT`))),s=this.findInodeSync(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),r.setSync(s.ino,s),r.setSync(a.data,gn(o)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}async read(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=B(i,this.transaction(),!0),o=await this.findInode(a,e);if(o.size==0)return;let s=await a.get(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{let e=V(i);e&&await e}}readSync(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=B(i,this.transaction(),!1),o=this.findInodeSync(a,e);if(o.size==0)return;let s=a.getSync(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{V(i)}}async write(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=B(r,this.transaction(),!0),o=await this.findInode(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(await a.get(o.data)??new Uint8Array,s),c.set(t,n),n=0),await a.set(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),await a.set(o.ino,o),this._add(o.ino,e),await a.commit()}catch(e){r.error=e,r.hasError=!0}finally{let e=V(r);e&&await e}}writeSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=B(r,this.transaction(),!1),o=this.findInodeSync(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(a.getSync(o.data)??new Uint8Array,s),c.set(t,n),n=0),a.setSync(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),a.setSync(o.ino,o),this._add(o.ino,e),a.commitSync()}catch(e){r.error=e,r.hasError=!0}finally{V(r)}}transaction(){return new Er(this.store.transaction(),this)}async checkRoot(){let e={stack:[],error:void 0,hasError:!1};try{let t=B(e,this.transaction(),!0);if(await t.get(0))return;let n=new L({ino:0,data:1,mode:511|mt});await t.set(n.data,v(`{}`)),this._add(0,`/`),await t.set(0,n),await t.commit()}catch(t){e.error=t,e.hasError=!0}finally{let t=V(e);t&&await t}}checkRootSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=B(e,this.transaction(),!1);if(t.getSync(0))return;let n=new L({ino:0,data:1,mode:511|mt});t.setSync(n.data,v(`{}`)),this._add(0,`/`),t.setSync(0,n),t.commitSync()}catch(t){e.error=t,e.hasError=!0}finally{V(e)}}async _populate(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=B(e,this.transaction(),!0),n=await t.get(0);if(!n){we(`Store does not have a root inode`);let e=new L({ino:0,data:1,mode:511|mt});await t.set(e.data,v(`{}`)),this._add(0,`/`),await t.set(0,e),await t.commit();return}if(n.length<k(L)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=await t.get(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(L)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new L(o);if(!R(s)||r.has(n))continue;r.add(n);let c=await t.get(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{let t=V(e);t&&await t}}_populateSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=B(e,this.transaction(),!1),n=t.getSync(0);if(!n){we(`Store does not have a root inode`);let e=new L({ino:0,data:1,mode:511|mt});t.setSync(e.data,v(`{}`)),this._add(0,`/`),t.setSync(0,e),t.commitSync();return}if(n.length<k(L)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=t.getSync(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(L)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new L(o);if(!R(s)||r.has(n))continue;r.add(n);let c=t.getSync(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{V(e)}}async _findInode(e,t,n=new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new L(await e.get(0)??_(C(`ENODATA`)));let{dir:r,base:i}=Rn(t),a=await this._findInode(e,r,n),o=hn(await e.get(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new L(await e.get(o[i])??_(C(`ENODATA`)))}_findInodeSync(e,t,n=new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new L(e.getSync(0)??_(C(`ENOENT`)));let{dir:r,base:i}=Rn(t),a=this._findInodeSync(e,r,n),o=hn(e.getSync(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new L(e.getSync(o[i])??_(C(`ENODATA`)))}async findInode(e,t){if(this.attributes.has(`no_id_tables`))return await this._findInode(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new L(await e.get(n)??_(C(`ENOENT`)))}findInodeSync(e,t){if(this.attributes.has(`no_id_tables`))return this._findInodeSync(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new L(e.getSync(n)??_(C(`ENOENT`)))}_lastID;allocNew(e){this._lastID||=Array.from(this._paths.keys()).reduce((e,t)=>Math.max(e,t),0),this._lastID+=2;let t=this._lastID;if(t>4294967295)throw T(C(`ENOSPC`,`No IDs available`));return this._add(t,e),t}async commitNew(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=B(r,this.transaction(),!0),{dir:a,base:o}=Rn(e),s=await this.findInode(i,a),c=hn(await i.get(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new L({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return await i.set(u.ino,u),await i.set(u.data,n),c[o]=u.ino,await i.set(s.data,gn(c)),await i.commit(),u}catch(e){r.error=e,r.hasError=!0}finally{let e=V(r);e&&await e}}commitNewSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=B(r,this.transaction(),!1),{dir:a,base:o}=Rn(e),s=this.findInodeSync(i,a),c=hn(i.getSync(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new L({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return i.setSync(u.ino,u),i.setSync(u.data,n),c[o]=u.ino,i.setSync(s.data,gn(c)),i.commitSync(),u}catch(e){r.error=e,r.hasError=!0}finally{V(r)}}async remove(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),{dir:i,base:a}=Rn(e),o=await this.findInode(r,i),s=hn(await r.get(o.data)??_(C(`ENOENT`)));if(!s[a])throw C(`ENOENT`);let c=s[a],l=new L(await r.get(c)??_(C(`ENOENT`)));if(delete s[a],!t&&R(l))throw C(`EISDIR`);await r.set(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),await r.set(l.ino,l)):(await r.remove(l.data),await r.remove(c),this._remove(c)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}removeSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),{dir:i,base:a}=Rn(e),o=this.findInodeSync(r,i),s=hn(r.getSync(o.data)??_(C(`ENOENT`))),c=s[a];if(!c)throw C(`ENOENT`);let l=new L(r.getSync(c)??_(C(`ENOENT`)));if(delete s[a],!t&&R(l))throw C(`EISDIR`);r.setSync(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),r.setSync(l.ino,l)):(r.removeSync(l.data),r.removeSync(c),this._remove(c)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}},Or=class extends wr{async keys(){return this.store.keys()}async get(e){return await(this.store.getAsync?.(e)??this.store.get(e))}getSync(e){return this.store.get(e)}setSync(e,t){this.store.set(e,t)}removeSync(e){this.store.delete(e)}},kr=class extends Tr{async keys(){return await this.asyncDone,this.store.keys()}async get(e,t,n){return await this.asyncDone,await this.store.get(e,t,n)}getSync(e,t,n){return this.store.cached(e,t,n)}async set(e,t,n=0){await this.asyncDone,await this.store.set(e,t,n)}async remove(e){await this.asyncDone,await this.store.delete(e)}},Ar=class extends Map{maxSize;label;flags=[];name=`tmpfs`;constructor(e=yt,t){super(),this.maxSize=e,this.label=t}async sync(){}transaction(){return new Or(this)}get bytes(){let e=this.size*4;for(let t of this.values())e+=t.byteLength;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.bytes}}},jr={name:`InMemory`,options:{maxSize:{type:`number`,required:!1},label:{type:`string`,required:!1}},create({maxSize:e,label:t}){let n=new Dr(new Ar(e,t));return n.checkRootSync(),n}},Mr=class extends Dr{devices=new Map;devicesWithDriver(e,t){if(t&&typeof e==`string`)throw T(C(`EINVAL`,`Can not fetch devices using only a driver name`));let n=[];for(let r of this.devices.values())t&&r.driver!=e||(typeof e==`string`?e:e.name)==r.driver.name&&n.push(r);return n}_createDevice(e,t={}){let n=1,r=Array.from(this.devices.values()).at(-1);for(;this.store.has(n)||r?.inode.ino==n;)n++;let i=e.init?.(n,t),a={data:{},minor:0,major:0,...m(i??{},`metadata`),driver:e,inode:new L({mode:ht|438,...i?.metadata})},o=`/`+(a.name||e.name)+(e.singleton?``:this.devicesWithDriver(e).length);if(this.existsSync(o))throw C(`EEXIST`);return this.devices.set(o,a),Te(`Initialized device: `+this._mountPoint+o),a}addDefaults(){this._createDevice(Pr),this._createDevice(Fr),this._createDevice(Ir),this._createDevice(Lr),this._createDevice(Rr),Ee(`Added default devices`)}constructor(){super(new Ar(16777216,`devfs`))}async rename(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.rename(e,t)}renameSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.renameSync(e,t)}async stat(e){let t=this.devices.get(e);return t?t.inode:super.stat(e)}statSync(e){let t=this.devices.get(e);return t?t.inode:super.statSync(e)}async touch(e,t){let n=this.devices.get(e);n?n.inode.update(t):await super.touch(e,t)}touchSync(e,t){let n=this.devices.get(e);n?n.inode.update(t):super.touchSync(e,t)}async createFile(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFile(e,t)}createFileSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFileSync(e,t)}async unlink(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlink(e)}unlinkSync(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlinkSync(e)}async rmdir(e){return super.rmdir(e)}rmdirSync(e){return super.rmdirSync(e)}async mkdir(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdir(e,t)}mkdirSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdirSync(e,t)}async readdir(e){let t=await super.readdir(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}readdirSync(e){let t=super.readdirSync(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}async link(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.link(e,t)}linkSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.linkSync(e,t)}async sync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.sync()}syncSync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.syncSync()}async read(e,t,n,r){let i=this.devices.get(e);if(!i){await super.read(e,t,n,r);return}i.driver.read(i,t,n,r)}readSync(e,t,n,r){let i=this.devices.get(e);if(!i){super.readSync(e,t,n,r);return}i.driver.read(i,t,n,r)}async write(e,t,n){let r=this.devices.get(e);if(!r)return await super.write(e,t,n);r.driver.write(r,t,n)}writeSync(e,t,n){let r=this.devices.get(e);if(!r)return super.writeSync(e,t,n);r.driver.write(r,t,n)}},Nr=new Uint8Array,Pr={name:`null`,singleton:!0,init(){return{major:1,minor:3}},read(){return Nr},write(){}},Fr={name:`zero`,singleton:!0,init(){return{major:1,minor:5}},read(e,t,n,r){t.fill(0,n,r)},write(){}},Ir={name:`full`,singleton:!0,init(){return{major:1,minor:7}},read(e,t,n,r){t.fill(0,n,r)},write(){throw C(`ENOSPC`)}},Lr={name:`random`,singleton:!0,init(){return{major:1,minor:8}},read(e,t){for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256)},write(){}},Rr={name:`console`,singleton:!0,init(e,{output:t=e=>console.log(e)}={}){return{major:5,minor:1,data:{output:t}}},read(){return Nr},write(e,t,n){let r=ce(t);e.data.output(r,n)}},zr={null:Pr,zero:Fr,full:Ir,random:Lr,console:Rr},H=r(),U=!0;function Br(e){U=e}var Vr;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.FIFO=1]=`FIFO`,e[e.CHR=2]=`CHR`,e[e.DIR=4]=`DIR`,e[e.BLK=6]=`BLK`,e[e.REG=8]=`REG`,e[e.LNK=10]=`LNK`,e[e.SOCK=12]=`SOCK`,e[e.WHT=14]=`WHT`})(Vr||={});function Hr(e){return(e&61440)>>12}function Ur(e){return e<<12}var Wr=class{ino;type;path;name},Gr=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Kr=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},qr=class{pending=new Set;lastWriter;writeState=0;readers=0;syncReaders=0;take(e,t,n){e==`rw`?this.writeState=t?2:1:(this.readers++,t&&this.syncReaders++);let r=!1,i=()=>{r||(r=!0,e==`rw`?this.writeState=0:(this.readers--,t&&this.syncReaders--),n())};return i[Symbol.dispose]=i,i}queue(e){let{promise:t,resolve:n}=Promise.withResolvers();return this.pending.add(t),e==`rw`&&(this.lastWriter=t),t.then(()=>{this.pending.delete(t),this.lastWriter==t&&delete this.lastWriter}),n}async acquire(e){let t=e==`ro`?this.lastWriter:Promise.all(this.pending),n=this.queue(e);return await t,this.take(e,!1,n)}acquireSync(e){if(this.writeState==2||e==`rw`&&this.syncReaders)throw C(`EDEADLK`);if(this.writeState||e==`rw`&&this.readers)throw C(`EAGAIN`);return this.take(e,!0,this.queue(e))}isAvailable(e){return(e!=`rw`||!this.readers)&&!this.writeState}get isFree(){return!this.writeState&&!this.readers}get mode(){return this.writeState?`rw`:this.readers?`ro`:null}},Jr=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[ne],n=[ne],Kr(this,null,t,{kind:`getter`,name:`lock`,static:!1,private:!1,access:{has:e=>`lock`in e,get:e=>e.lock},metadata:r},null,e),Kr(this,null,n,{kind:`getter`,name:`lockSync`,static:!1,private:!1,access:{has:e=>`lockSync`in e,get:e=>e.lockSync},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}_rwLock=(Gr(this,e),new qr);get lock(){return this._rwLock.acquire.bind(this._rwLock)}get lockSync(){return this._rwLock.acquireSync.bind(this._rwLock)}get isLocked(){return!this._rwLock.isFree}get lockMode(){return this._rwLock.mode}}})(),Yr=class{max;#e=new Set;#t=[];constructor(e){if(this.max=e,!Number.isInteger(e)||e<1)throw C(`EINVAL`,`Semaphore max must be a positive integer`)}get active(){return this.#e.size}get waiting(){return this.#t.length}get isAvailable(){return this.#e.size<this.max}#n(e,t){let n=!1,r=()=>{n||(n=!0,this.#e.delete(e),t(),this.#t.shift()?.())};return r[Symbol.dispose]=r,r}async get(){let{promise:e,resolve:t}=Promise.withResolvers();if(this.#e.size>=this.max){let t=Promise.withResolvers();this.#t.push(()=>{this.#e.add(e),t.resolve()}),await t.promise}else this.#e.add(e);return this.#n(e,t)}getSync(){if(this.#e.size>=this.max)throw C(`EAGAIN`);let{promise:e,resolve:t}=Promise.withResolvers();return this.#e.add(e),this.#n(e,t)}async drain(){for(;this.#e.size;)await Promise.all(this.#e)}},Xr=class extends Jr{fs;inode;data;dirtyRanges=[];truncatedTo;metadataDirty=!1;refs=0;paths=new Set;_lastPath;constructor(e,t,n){super(),this.fs=e,this.inode=n,this.paths.add(t),this._lastPath=t,this.data=new s(n.ino,n.size,{sparse:!0})}get ino(){return this.inode.ino}get path(){let[e]=this.paths;return e!==void 0&&(this._lastPath=e),e??this._lastPath}get dirty(){return this.metadataDirty||this.dirtyRanges.length>0}get bypassCache(){return ar(this.inode)||ir(this.inode)||!!(this.inode.flags&I.DAX)}markDirty(e,t){o(this.dirtyRanges,e,t)}copyFromCache(e,t,n){let r=t;for(let i of this.data.regionsIn(t,n)){let a=i.offset+i.data.byteLength;if(a<=r)continue;i.offset>r&&(e.fill(0,r-t,i.offset-t),r=i.offset);let o=Math.min(n,a);e.set(i.data.subarray(r-i.offset,o-i.offset),r-t),r=o}r<n&&e.fill(0,r-t,n-t)}async read(e,t,n){if(this.bypassCache)return await this.fs.read(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);await this.fs.read(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}readSync(e,t,n){if(this.bypassCache)return this.fs.readSync(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);this.fs.readSync(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}async write(e,t){this.bypassCache?await this.fs.write(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}writeSync(e,t){this.bypassCache?this.fs.writeSync(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}_writeCached(e,t){let n=t+e.byteLength;this.data.add(e.slice(),t),n>this.data.size&&(this.data.size=n),this.markDirty(t,n)}_writeMetadata(e){!this.bypassCache&&e>this.inode.size&&(this.inode.size=e),this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}truncate(e){this.truncatedTo=Math.min(this.truncatedTo??e,e),this.data.size=e,this.dirtyRanges=this.dirtyRanges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t),this.inode.size=e,this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}get needsPreTruncate(){return!this.bypassCache&&this.truncatedTo!==void 0&&this.truncatedTo<this.inode.size&&!this.fs.attributes.has(`no_write`)}async sync(){this.needsPreTruncate&&await this.fs.touch(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);await this.fs.write(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||await this.fs.touch(this.path,this.inode),!1)}syncSync(){this.needsPreTruncate&&this.fs.touchSync(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);this.fs.writeSync(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||this.fs.touchSync(this.path,this.inode),!1)}},Zr=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Qr=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),$r=class{fs;byIno=new Map;byPath=new Map;constructor(e){this.fs=e}get(e){return this.byPath.get(e)}ref(e,t){let n=this.byIno.get(t.ino);return n&&n.inode.nlink===n.paths.size&&!n.paths.has(e)&&T(`vcache.ref: vnode for ${this.fs.label||this.fs.uuid}:${t.ino} has an nlink of ${n.inode.nlink} but referenced by more paths [#314]`),n&&!n.paths.has(e)&&(t.ino===0||t.nlink<=1||n.inode.nlink<=1||(n.inode.mode^t.mode)&61440)&&(n=this.byPath.get(e),n&&(n.inode.mode^t.mode)&61440&&(n=void 0)),n?(n.paths.add(e),!n.dirty&&t!==n.inode&&Object.assign(n.inode,t)):(n=new Xr(this.fs,e,t),this.byIno.set(t.ino,n)),this.byPath.set(e,n),n.refs++,n}unref(e){e.refs--,!(e.refs>0||e.dirty)&&this.evict(e)}evict(e){this.byIno.delete(e.ino);for(let t of e.paths)this.byPath.delete(t)}rename(e,t){for(let[n,r]of this.byPath){if(n!=e&&!n.startsWith(e+`/`))continue;let i=t+n.slice(e.length);this.byPath.delete(n),this.byPath.set(i,r),r.paths.delete(n),r.paths.add(i)}}link(e,t){let n=this.byPath.get(e);n&&(n.paths.add(t),this.byPath.set(t,n))}remove(e){let t=this.byPath.get(e);t&&(this.byPath.delete(e),t.paths.delete(e),!t.paths.size&&!t.refs&&this.evict(t))}async sync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;Zr(t,await e.lock(`rw`),!1),await e.sync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Qr(t)}}}syncSync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;Zr(t,e.lockSync(`rw`),!1),e.syncSync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Qr(t)}}}},ei=new Map;function W(e){let t=ei.get(e.uuid);return t||(t=new $r(e),ei.set(e.uuid,t)),t}async function ti(e,t,n,r){let i=W(e);r??=i.get(t)?.inode??await e.stat(t);let a=i.ref(t,r),o=await a.lock(n),s=!1,c=()=>{s||(s=!0,o(),i.unref(a))};return c[Symbol.dispose]=c,c}function ni(e,t,n,r){let i=W(e);r??=i.get(t)?.inode??e.statSync(t);let a=i.ref(t,r),o;try{o=a.lockSync(n)}catch(e){throw i.unref(a),e}let s=!1,c=()=>{s||(s=!0,o(),i.unref(a))};return c[Symbol.dispose]=c,c}var ri=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},ii=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},ai=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},oi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),si=65536,ci=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;ii(this,null,t,{kind:`getter`,name:`inode`,static:!1,private:!1,access:{has:e=>`inode`in e,get:e=>e.inode},metadata:r},null,e),ii(this,null,n,{kind:`getter`,name:`fs`,static:!1,private:!1,access:{has:e=>`fs`in e,get:e=>e.fs},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}context=ri(this,e);path;internalPath;flag;vnode;_position=0;get position(){return this.flag&1024?this.inode.size:this._position}set position(e){this._position=e}get inode(){return this.vnode.inode}get fs(){return this.vnode.fs}get dirty(){return this.vnode.dirty}closed=!1;refs=1;ref(){if(this.closed)throw S(`EBADF`,`dup`,this.path);return this.refs++,this}get isClosed(){return this.closed}constructor(e,t,n,r,i){this.context=e,this.path=t,this.internalPath=n,this.flag=r,this.vnode=i}get _isSync(){return!!(this.flag&1052672||this.inode.flags&I.Sync||this.fs.attributes.has(`sync`))}[(t=[ne],n=[ne],Symbol.dispose)](){this.closeSync()}syncSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;ai(e,this.vnode.lockSync(`rw`),!1),this.vnode.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{oi(e)}}datasyncSync(){return this.syncSync()}closeSync(){if(this.closed)throw S(`EBADF`,`close`,this.path);this.syncSync(),!(--this.refs>0)&&this.disposeSync(!0)}disposeSync(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,W(this.fs).unref(this.vnode)}truncateSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`truncate`,this.path);ai(t,this.vnode.lockSync(`rw`),!1),this.vnode.truncate(e),this._isSync&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}writeSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`write`,this.path);ai(i,this.vnode.lockSync(`rw`),!1);let a=e.subarray(t,t+n);return this.vnode.writeSync(a,r),this._position=r+a.byteLength,this._isSync&&this.vnode.syncSync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}readSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);ai(i,this.vnode.lockSync(`ro`),!1),!(this.inode.flags&I.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!ar(this.inode)&&!ir(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return this.vnode.readSync(o.subarray(t,t+n),r,a),this._isSync&&this.vnode.syncSync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}chmodSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ai(t,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?~O:O)|e,(this._isSync||e>61440)&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}chownSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ai(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,sr(this.inode,e,t),this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}utimesSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ai(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}async[Symbol.asyncDispose](){await this.close()}async sync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;ai(e,await this.vnode.lock(`rw`),!1),await this.vnode.sync()}catch(t){e.error=t,e.hasError=!0}finally{oi(e)}}datasync(){return this.sync()}async close(){if(this.closed)throw S(`EBADF`,`close`,this.path);await this.sync(),!(--this.refs>0)&&this.dispose(!0)}dispose(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,W(this.fs).unref(this.vnode)}stat(){if(this.closed)throw S(`EBADF`,`stat`,this.path);return this.inode}async truncate(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`truncate`,this.path);ai(t,await this.vnode.lock(`rw`),!1),this.vnode.truncate(e),this._isSync&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}async write(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`write`,this.path);ai(i,await this.vnode.lock(`rw`),!1);let a=e.subarray(t,t+n);return await this.vnode.write(a,r),this._position=r+a.byteLength,this._isSync&&await this.vnode.sync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}async read(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);ai(i,await this.vnode.lock(`ro`),!1),!(this.inode.flags&I.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!ar(this.inode)&&!ir(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return await this.vnode.read(o.subarray(t,t+n),r,a),this._isSync&&await this.vnode.sync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}async chmod(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ai(t,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?~O:O)|e,(this._isSync||e>61440)&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}async chown(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);ai(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,sr(this.inode,e,t),this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}async utimes(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ai(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}streamRead(e){if(this.closed)throw S(`EBADF`,`streamRead`,this.path);let{vnode:t}=this,{chunkSize:n=si}=e,r=e.start??0,i=e.end;return new ReadableStream({async pull(e){let a={stack:[],error:void 0,hasError:!1};try{if(ai(a,await t.lock(`ro`),!1),i??=t.inode.size,r>=i){e.close();return}let o=new Uint8Array(Math.min(n,i-r));await t.read(o,r,r+o.byteLength),r+=o.byteLength,e.enqueue(o),r>=i&&e.close()}catch(e){a.error=e,a.hasError=!0}finally{oi(a)}},type:`bytes`})}streamWrite(e){if(this.closed)throw S(`EBADF`,`write`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);let{vnode:t}=this,n=e.start??0;return new WritableStream({async write(e,r){let i={stack:[],error:void 0,hasError:!1};try{ai(i,await t.lock(`rw`),!1),await t.write(e,n).catch(r.error.bind(r)),n+=e.byteLength}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}},async close(){let e={stack:[],error:void 0,hasError:!1};try{ai(e,await t.lock(`rw`),!1),await t.sync()}catch(t){e.error=t,e.hasError=!0}finally{oi(e)}}})}}})();function li(e,t=e.context){let n=D(t).descriptors,r=0;for(;n.has(r);)r++;return n.set(r,e),r}function ui(e,t){yn(t);let n=D(e).descriptors.get(t);if(!n)throw C(`EBADF`);return n}function di(e,t){return D(e).descriptors.delete(t)}function fi(e,t){return li(ui(e,t).ref(),e)}var pi=/[rwasx]{1,2}\+?/;function mi(e){if(typeof e==`number`)return e;if(!pi.test(e))throw C(`EINVAL`,`Invalid flag string: `+e);return hi(e)}function hi(e){if(!e.includes(`r`)&&!e.includes(`w`)&&!e.includes(`a`))throw C(`EINVAL`,`Invalid flag string: `+e);let t=e.includes(`r`)?0:64;return e.includes(`w`)&&(t|=512),e.includes(`a`)&&(t|=tt),e.includes(`+`)?t|=2:e.includes(`r`)||(t|=1),e.includes(`s`)&&(t|=at),e.includes(`x`)&&(t|=128),t}function gi(e){let t=0;return e&1||(t|=4),(e&1||e&2)&&(t|=2),t}var _i=x;function vi(e,t){return e.path=t,e}function yi(e,t,n,r){let i=typeof n==`string`?{path:n,dest:r,syscall:t.endsWith(`Sync`)?t.slice(0,-4):t}:n,a=e[t];if(typeof a!=`function`)throw TypeError(`${t} is not a function`);return function(...t){try{return a.call(e,...t)}catch(e){throw b(Object.assign(e,i))}}}function bi(e,t){return new Proxy(e,{get(e,n){let r=Reflect.get(e,n);return typeof r==`function`?function n(...i){try{let a=r.apply(e,i);return a instanceof Promise?a.catch(e=>{if(`code`in e)throw b(Object.assign(e,t));if(e in y){let r=S(e,t);Error.captureStackTrace(r,n)}throw e}):a}catch(e){throw b(Object.assign(e,t))}}:r}})}var xi=Ze.mounts;Si(`/`,jr.create({label:`root`}));function Si(e,t){let n=D(this);if(e[0]!=`/`&&(e=`/`+e),e=jn.call(n,e),n.mounts.has(e))throw T(C(`EINVAL`,`Mount point is already in use: `+e));t._mountPoint=e,n.mounts.set(e,t),ei.has(t.uuid)||ei.set(t.uuid,new $r(t)),Te(`Mounted ${t.name} on ${e}`),Ee(`${t.name} attributes: ${[...t.attributes].map(([e,t])=>t==null?e:e+`=`+t).join(`, `)}`)}function Ci(e){let t=D(this);e[0]!=`/`&&(e=`/`+e),e=jn.call(this,e);let n=t.mounts.get(e);if(!n){E(e+` is already unmounted`);return}let r=()=>{ei.delete(n.uuid),Te(`Synced all changes to `+e)};try{ei.get(n.uuid)?.syncSync(),r()}catch{E(`Could not flush to ${e} synchronously.`),ei.get(n.uuid)?.sync().then(r)}t.mounts.delete(e),we(`Unmounted `+e)}function G(e,t,n){let{root:r,mounts:i}=D(t),a={path:e,...n};e=j(M(r,e),!0),e=jn.call(t,e);let o=[...i].sort((e,t)=>e[0].length>t[0].length?-1:1);for(let[t,n]of o){if(!Ei(t,e))continue;e=e.slice(t.length>1?t.length:0),e===``&&(e=`/`);let i=n.attributes.get(`case_fold`);return i===`lower`&&(e=e.toLowerCase()),i===`upper`&&(e=e.toUpperCase()),{fs:bi(n,a),path:e,mountPoint:t,root:r}}throw Se(new x(y.EIO,`No file system for `+e))}function wi(e,t){let n=e.usage(),r=n.blockSize||4096,i=t?BigInt:Number;return{type:i(e.type),bsize:i(r),frsize:i(r),ffree:i(n.freeNodes||4294967295),files:i(n.totalNodes||4294967295),bavail:i(n.freeSpace/r),bfree:i(n.freeSpace/r),blocks:i(n.totalSpace/r)}}function Ti(e){let t=D(this);if(!qe(t.credentials))throw C(`EPERM`,`Can not chroot() as non-root user`);t.root??=`/`;let n=M(t.root,e);for(let e of t.descriptors?.values()??[]){if(!e.path.startsWith(t.root))throw S(`EBUSY`,`chroot`,e.path);e.path=e.path.slice(t.root.length)}if(n.length<t.root.length)throw C(`EPERM`,`Can not chroot() outside of current root`);t.root=n}function Ei(e,t){return e===`/`||e===t||(e.endsWith(`/`)||(e+=`/`),t.startsWith(e))}var Di=t({link:()=>Ii,mkdir:()=>Ni,open:()=>ji,readdir:()=>Pi,readlink:()=>Mi,rename:()=>Fi,resolve:()=>Ai,stat:()=>Li}),Oi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},ki=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function Ai(e,t,n,r){t=jn.call(e,t);try{let i=G(t,e),a=W(i.fs).get(i.path)?.inode??i.fs.statSync(i.path);return!nr(a)||n?{...i,fullPath:t,stats:a}:Ai(e,jn.call(e,N(t),Mi.call(e,t)),n,r)}catch(e){if(b(Object.assign(e,{syscall:`stat`,path:t,...r})),n)throw e}let{base:i,dir:a}=Rn(t),o=a==`/`?`/`:Ai(e,a,!1,r).fullPath,s=M(o,i),c=G(s,e),l;try{l=W(c.fs).get(c.path)?.inode??c.fs.statSync(c.path)}catch(e){if(e.code===`ENOENT`)return{...c,fullPath:s};throw b(Object.assign(e,{syscall:`stat`,path:s,...r}))}return nr(l)?Ai(e,jn.call(e,o,Mi.call(e,s)),!1,r):{...c,fullPath:s,stats:l}}function ji(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=mi(n.flag);t=n.preserveSymlinks?t:Ai(e,t).fullPath;let{fs:a,path:o}=G(t,e),s;try{s=a.statSync(o)}catch{}if(!s){let s={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,`open`,t);let c=N(o),l=a.statSync(c);if(U&&!z(e,l,2))throw S(`EACCES`,`open`,t);if(!R(l))throw S(`ENOTDIR`,`open`,t);if(!n.allowDirectory&&R({mode:r}))throw S(`EISDIR`,`open`,t);Oi(s,ni(a,c,`rw`,l),!1);let{euid:u,egid:d}=D(e).credentials,f=a.createFileSync(o,{mode:r,uid:l.mode&2048?l.uid:u,gid:l.mode&1024?l.gid:d});return Ha(e,`rename`,t),new ci(e,t,o,i,W(a).ref(o,f))}catch(e){s.error=e,s.hasError=!0}finally{ki(s)}}if(U&&(!z(e,s,r)||!z(e,s,gi(i))))throw S(`EACCES`,`open`,t);if(i&128)throw S(`EEXIST`,`open`,t);if(!n.allowDirectory&&R(s))throw S(`EISDIR`,`open`,t);let c=new ci(e,t,o,i,W(a).ref(o,s));return i&512&&c.truncateSync(0),c}function Mi(e){e=j.call(this,e);let{fs:t,stats:n,path:r}=Ai(this,e,!0,{syscall:`readlink`});if(!n)throw S(`ENOENT`,`readlink`,e);if(U&&!z(this,n,4))throw S(`EACCES`,`readlink`,e);if(!nr(n))throw S(`EINVAL`,`readlink`,e);let i=n.size,a=new Uint8Array(i);return t.readSync(r,a,0,i),ce(a)}function Ni(e,t={}){let n=j.call(this,e),r={syscall:`mkdir`,path:n},{fullPath:i}=Ai(this,N(n),!1,r),{fs:a,path:o}=G(M(i,Fn(n)),this,r),s=i!=N(n),{euid:c,egid:l}=D(this).credentials,{mode:u=511,recursive:d}=t,f,p=(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let i=N(t),m=d&&i!=`/`?p(N(e),i):a.statSync(i);if(d){let n;try{n=W(a).get(t)?.inode??a.statSync(t)}catch{}if(n){let i=nr(n)?Ai(this,e,!1,r).stats:n;if(!i)throw S(`ENOENT`,r);if(!R(i))throw S(t==o?`EEXIST`:`ENOTDIR`,r);return n}if(s&&a.existsSync(M(i,Fn(e))))throw S(`ENOENT`,r)}if(U&&!z(this,m,2))throw S(`EACCES`,`mkdir`,e);Oi(n,ni(a,i,`rw`,m),!1);let h=yi(a,`mkdirSync`,{path:e,syscall:`mkdir`})(t,{mode:u,uid:m.mode&2048?m.uid:c,gid:m.mode&1024?m.gid:l});return d&&(f??=e),Ha(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{ki(n)}};return p(n,o),f}function Pi(e,t={}){e=j.call(this,e);let{fs:n,path:r}=Ai(this,e),i=W(n).get(r)?.inode??yi(n,`statSync`,{path:e,syscall:`scandir`})(r);if(U&&!z(this,i,4))throw S(`EACCES`,`scandir`,e);if(!R(i))throw S(`ENOTDIR`,`scandir`,e);let a;{let e={stack:[],error:void 0,hasError:!1};try{Oi(e,ni(n,r,`ro`,i),!1),a=n.readdirSync(r)}catch(t){e.error=t,e.hasError=!0}finally{ki(e)}}let o=[],s=e=>{let i;try{i=n.statSync(M(r,e))}catch(e){if(e.code==`ENOENT`)return;throw e}let a=new Wr;if(a.ino=i.ino,a.type=Hr(i.mode),a.path=e,a.name=Fn(e),o.push(a),!R(i)||!t?.recursive)return;let c=n.readdirSync(M(r,e));for(let t of c)s(M(e,t))};for(let e of a)s(e);return o}function Fi(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=Ai(this,e,!0,r),a=G(t,this,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=i.fs,s=o.statSync(N(i.path)),c=o.statSync(N(a.path)),l;try{l=o.statSync(a.path)}catch(e){if(e.code!=`ENOENT`)throw e}if(U&&(!z(this,s,4)||!z(this,c,2)))throw S(`EACCES`,r);if(l&&!R(i.stats)&&R(l))throw S(`EISDIR`,r);if(l&&R(i.stats)&&!R(l))throw S(`ENOTDIR`,r);let u=N(i.path),d=N(a.path),f=[[u,s],[d,c]];s.ino>c.ino&&f.reverse(),Oi(n,ni(o,f[0][0],`rw`,f[0][1]),!1),Oi(n,s.ino==c.ino?null:ni(o,f[1][0],`rw`,f[1][1]),!1),i.fs.renameSync(i.path,a.path),W(o).rename(i.path,a.path),Ha(this,`rename`,e),Ha(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{ki(n)}}function Ii(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,path:a}=G(e,this,r),o=G(t,this,r);if(i.uuid!==o.fs.uuid)throw S(`EXDEV`,r);let s=i.statSync(a);if(U){if(!z(this,s,4))throw S(`EACCES`,r);let e=i.statSync(N(a));if(!z(this,e,4))throw S(`EACCES`,r);let t=i.statSync(N(o.path));if(!z(this,t,2))throw S(`EACCES`,r)}Oi(n,ni(i,N(o.path),`rw`),!1),i.linkSync(a,o.path),W(i).link(a,o.path)}catch(e){n.error=e,n.hasError=!0}finally{ki(n)}}function Li(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=Ai(this,e,!1,n).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=Ai(this,i,!1,n);try{let e=t?M(o,t):o;r=W(a).get(e)?.inode??a.statSync(e)}catch(e){throw b(Object.assign(e,n)),e}}if(!r)throw S(`ENOENT`,n);if(U&&!z(this,r,4))throw S(`EACCES`,n);return r}var Ri=class e{ino;type;_name;get name(){let e=H.Buffer.from(this._name);return this._encoding==`buffer`?e:e.toString(this._encoding)}_encoding;_parentPath;get parentPath(){return this._parentPath}get path(){return E(`Dirent.path was removed in Node v24, use parentPath instead`),this._parentPath}static from(t,n,r=`.`){let i=new e,{base:a,dir:o}=Rn(t.path);return i._parentPath=M(r,o),i._name=a,i.ino=t.ino,i.type=t.type,i._encoding=n,i}isFile(){return this.type===Vr.REG}isDirectory(){return this.type===Vr.DIR}isBlockDevice(){return this.type===Vr.BLK}isCharacterDevice(){return this.type===Vr.CHR}isSymbolicLink(){return this.type===Vr.LNK}isFIFO(){return this.type===Vr.FIFO}isSocket(){return this.type===Vr.SOCK}};function zi(){return Object.assign(Error(`Directory handle was closed`),{code:`ERR_DIR_CLOSED`})}var Bi=class{path;context;closed=!1;checkClosed(){if(this.closed)throw zi()}_entries;constructor(e,t){this.path=e,this.context=t}close(e){if(this.closed){let t=zi();if(!e)return Promise.reject(t);e(t);return}if(this.closed=!0,!e)return Promise.resolve();e(null)}closeSync(){if(this.closed)throw zi();this.closed=!0}async _read(){return this.checkClosed(),this._entries??=await Nu.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}read(e){if(!e)return this._read();this._read().then(t=>e(null,t))}readSync(){return this.checkClosed(),this._entries??=pa.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}async next(){let e=await this._read();return e?{done:!1,value:e}:(await this.close(),{done:!0,value:void 0})}[Symbol.asyncIterator](){return this}[Symbol.dispose](){this.closed||this.closeSync()}async[Symbol.asyncDispose](){this.closed||await this.close()}},Vi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Hi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function Ui(e,t){return Fi.call(this,e,t)}function Wi(e){e=j.call(this,e);try{let{fs:t,path:n}=Ai(this,e);return t.existsSync(n)}catch(e){if(e.errno==y.ENOENT)return!1;throw e}}function Gi(e,t){let n;try{n=Li.call(this,e,!1)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function Ki(e,t){let n;try{n=Li.call(this,e,!0)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function qi(e,t=0){let n={stack:[],error:void 0,hasError:!1};try{let r=Vi(n,ji(this,e,{flag:`r+`}),!1);if(t||=0,t<0)throw S(`EINVAL`,`truncate`,e.toString());r.truncateSync(t)}catch(e){n.error=e,n.hasError=!0}finally{Hi(n)}}function Ji(e){e=j.call(this,e);let{fs:t,path:n}=G(e,this);try{let e={stack:[],error:void 0,hasError:!1};try{if(U&&!z(this,t.statSync(n),2))throw S(`EACCES`,`unlink`);Vi(e,ni(t,N(n),`rw`),!1),t.unlinkSync(n),W(t).remove(n)}catch(t){e.error=t,e.hasError=!0}finally{Hi(e)}}catch(t){throw b(Object.assign(t,{syscall:`unlink`,path:e}))}Ha(this,`rename`,e.toString())}function Yi(e,t,n=0){return li(ji(this,e,{flag:t,mode:n}))}function Xi(e,t,n){return li(ji(this,e,{flag:t,mode:n,preserveSymlinks:!0}))}function Zi(e,t){let n=typeof e==`function`,r=n?e(t):e,i=n?`options.buffer()`:`options.buffer`;if(!ArrayBuffer.isView(r))throw Object.assign(TypeError(`The "options.buffer" property must be of type function or an instance of Buffer, TypedArray, or DataView. Received ${typeof r}`),{code:`ERR_INVALID_ARG_TYPE`});if(r.byteLength<t)throw Object.assign(TypeError(`The property '${i}.byteLength' is smaller than the file size of ${t} bytes. Received ${r.byteLength}`),{code:`ERR_INVALID_ARG_VALUE`});return H.Buffer.from(r.buffer,r.byteOffset,t)}function Qi(e,t={}){let n={stack:[],error:void 0,hasError:!1};try{let r=Sn(t,null,`r`,420);if(mi(r.flag)&1)throw S(`EBADF`,`read`,e.toString());let i=Vi(n,typeof e==`number`?ui(this,e):ji(this,e.toString(),{flag:r.flag,mode:420,preserveSymlinks:!1}),!1),{size:a}=i.stat(),o=typeof t==`object`&&t?t.buffer:void 0,s=o===void 0?H.Buffer.alloc(a):Zi(o,a);return i.readSync(s,0,a,0),r.encoding?s.toString(r.encoding):s}catch(e){n.error=e,n.hasError=!0}finally{Hi(n)}}function $i(e,t,n={}){let r={stack:[],error:void 0,hasError:!1};try{let i=Sn(n,`utf8`,`w+`,420),a=mi(i.flag);if(!(a&1||a&2))throw new x(y.EINVAL,`Flag passed to writeFile must allow for writing`);if(typeof t!=`string`&&!i.encoding)throw new x(y.EINVAL,`Encoding not specified`);let o=typeof t==`string`?H.Buffer.from(t,i.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength);if(!o)throw new x(y.EINVAL,`Data not specified`);Vi(r,typeof e==`number`?ui(this,e):ji(this,e.toString(),{flag:a,mode:i.mode}),!1).writeSync(o,0,o.byteLength,0),Ha(this,`change`,e.toString())}catch(e){r.error=e,r.hasError=!0}finally{Hi(r)}}function ea(e,t,n={}){let r=Sn(n,`utf8`,`a+`,420),i=mi(r.flag);if(!(i&1024))throw new x(y.EINVAL,`Flag passed to appendFile must allow for appending`);if(typeof t!=`string`&&!r.encoding)throw new x(y.EINVAL,`Encoding not specified`);let a=typeof t==`string`?H.Buffer.from(t,r.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=typeof e==`number`?ui(this,e):ji(this,j.call(this,e),{flag:i,mode:r.mode});o.writeSync(a,0,a.byteLength),typeof o!=`number`&&o.closeSync()}function ta(e,t){let n=ui(this,e).stat();return t?.bigint?new Un(n):new Hn(n)}function na(e){ui(this,e).closeSync(),di(this,e)}function ra(e,t=0){if(t||=0,t<0)throw new x(y.EINVAL);ui(this,e).truncateSync(t)}function ia(e){ui(this,e).syncSync()}function aa(e){ui(this,e).datasyncSync()}function oa(e,t,n,r,i){let a,o,s,c;if(typeof t==`string`){c=typeof n==`number`?n:null;let e=typeof r==`string`?r:`utf8`;o=0,a=H.Buffer.from(t,e),s=a.byteLength}else a=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=n,s=r,c=typeof i==`number`?i:null;let l=ui(this,e);c??=l.position;let u=l.writeSync(a,o,s,c);return Ha(this,`change`,l.path),u}function sa(e,t,n,r,i){let a=ui(this,e),o=typeof n==`object`?n.offset:n;if(typeof n==`object`&&(r=n.length,i=n.position),i&&i>2**53-1)throw S(`EINVAL`);return typeof i==`bigint`&&(i=Number(i)),i=Number.isSafeInteger(i)?i:a.position,a.readSync(t,o,r,i)}function ca(e,t,n){ui(this,e).chownSync(t,n)}function la(e,t){let n=_n(t,-1);if(n<0)throw new x(y.EINVAL,`Invalid mode.`);ui(this,e).chmodSync(n)}function ua(e,t,n){ui(this,e).utimesSync(xn(t),xn(n))}function da(e){let t={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e);let{fs:n,path:r}=Ai(this,e),i=yi(n,`statSync`,{path:e,syscall:`rmdir`})(r);if(!R(i))throw S(`ENOTDIR`,`rmdir`,e);if(U&&!z(this,i,2))throw S(`EACCES`,`rmdir`,e);Vi(t,ni(n,N(r),`rw`),!1),yi(n,`rmdirSync`,e)(r),W(n).remove(r),Ha(this,`rename`,e.toString())}catch(e){t.error=e,t.hasError=!0}finally{Hi(t)}}function fa(e,t){t=typeof t==`object`?t:{mode:t};let n=_n(t?.mode,511);return Ni.call(this,e,{...t,mode:n})}function pa(e,t){t=typeof t==`object`?t:{encoding:t},e=j.call(this,e);let n=[],r=Pi.call(this,e,t??void 0);for(let i of r)t?.withFileTypes?n.push(Ri.from(i,t.encoding,e)):t?.encoding==`buffer`?n.push(H.Buffer.from(i.path)):n.push(i.path);return n}function ma(e,t){return Ii.call(this,e,t)}function ha(e,t,n=`file`){let r={stack:[],error:void 0,hasError:!1};try{if(![`file`,`dir`,`junction`].includes(n))throw TypeError(`Invalid symlink type: `+n);t=j.call(this,t);let i=Vi(r,ji(this,t,{flag:`wx`,mode:420}),!1);i.writeSync(v(j.call(this,e,!0))),i.chmodSync(dt)}catch(e){r.error=e,r.hasError=!0}finally{Hi(r)}}function ga(e,t){let n=H.Buffer.from(Mi.call(this,e)),r=typeof t==`object`?t?.encoding:t;return r==`buffer`?n:n.toString(r??`utf-8`)}function _a(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{Vi(r,ji(this,e,{flag:`r+`,mode:0}),!1).chownSync(t,n)}catch(e){r.error=e,r.hasError=!0}finally{Hi(r)}}function va(e,t,n){let r=Xi.call(this,e,`r+`);ca.call(this,r,t,n),na.call(this,r)}function ya(e,t){let n;try{n=Yi.call(this,e,`r+`)}catch(t){throw b(Object.assign(t,{syscall:`chmod`,path:j.call(this,e)}))}la.call(this,n,t),na.call(this,n)}function ba(e,t){let n=Xi.call(this,e,`r+`);la.call(this,n,t),na.call(this,n)}function xa(e,t,n){let r=Yi.call(this,e,`r+`);ua.call(this,r,t,n),na.call(this,r)}function Sa(e,t,n){let r=Xi.call(this,e,`r+`);ua.call(this,r,t,n),na.call(this,r)}function Ca(e,t){let n=typeof t==`string`?t:t?.encoding??`utf8`;e=j.call(this,e,!0);let{fullPath:r}=Ai(this,e);if(n==`utf8`||n==`utf-8`)return r;let i=H.Buffer.from(r,`utf-8`);return n==`buffer`?i:i.toString(n)}function wa(e,t=384){if(U&&!z(this,Gi.call(this,e),t))throw new x(y.EACCES)}function Ta(e,t){e=j.call(this,e);let n;try{n=Ki.call(this,e)}catch(e){if(e.code!=`ENOENT`||!t?.force)throw e}if(n)switch(n.mode&O){case mt:if(t?.recursive)for(let n of pa.call(this,e))Ta.call(this,M(e,n),t);da.call(this,e);break;case ft:case dt:case pt:case ht:Ji.call(this,e);break;case gt:case ut:default:throw S(`ENOSYS`,`rm`,e)}}function Ea(e,t){let n=typeof t==`object`?t?.encoding:t||`utf8`,r=Tn(e);return fa.call(this,r),n==`buffer`?H.Buffer.from(r):r}function Da(e,t){let n=Tn(e);fa.call(this,n);let r=()=>Ta(n,{recursive:!0,force:!0});return{path:n,remove:r,[Symbol.dispose]:r}}function Oa(e,t,n){if(e=j.call(this,e),t=j.call(this,t),n&&n&1&&Wi.call(this,t))throw S(`EEXIST`,`copyFile`,t);$i.call(this,t,Qi.call(this,e,{})),Ha(this,`rename`,t.toString())}function ka(e,t,n){let r=ui(this,e),i=0;for(let e of t)i+=r.readSync(e,0,e.byteLength,n+i);return i}function Aa(e,t,n){let r=ui(this,e),i=0;for(let e of t)i+=r.writeSync(new Uint8Array(e.buffer),0,e.byteLength,n+i);return i}function ja(e,t){return e=j.call(this,e),new Bi(e,this)}function Ma(e,t,n){e=j.call(this,e),t=j.call(this,t);let r=Ki.call(this,e);if(n?.errorOnExist&&Wi.call(this,t))throw S(`EEXIST`,`cp`,t);switch(r.mode&O){case mt:if(!n?.recursive)throw S(`EISDIR`,`cp`,e);fa.call(this,t,{recursive:!0});for(let r of pa.call(this,e,{withFileTypes:!0}))n.filter&&!n.filter(M(e,r.name),M(t,r.name))||Ma.call(this,M(e,r.name),M(t,r.name),n);break;case dt:if(n?.dereference)Oa.call(this,e,t);else{let r=ga.call(this,e,`utf8`);ha.call(this,n?.verbatimSymlinks?r:jn.call(this,N(e),r),t)}break;case ft:Oa.call(this,e,t);break;case pt:case ht:case gt:case ut:default:throw S(`ENOSYS`,`cp`,e)}n?.preserveTimestamps&&xa.call(this,t,r.atime,r.mtime)}function Na(e,t){e=j.call(this,e);let{fs:n}=G(e,this);return wi(n,t?.bigint)}function Pa(e,t={}){e=Array.isArray(e)?e:[e];let n=D(this),{cwd:r=n.pwd,withFileTypes:i=!1,exclude:a=()=>!1,followSymlinks:o=!1}=t,s=jn.call(n,r instanceof URL?r.pathname:r),c=e.map(e=>e.startsWith(`/`)?Pn.call(n,s,e):e),l=c.some(e=>e.includes(`**`)),u=c.map(e=>{let t=e.search(/[*?[\]{]/);if(t===-1)return e;let n=e.lastIndexOf(`/`,t);return n===-1?``:e.slice(0,n)}),d=c.map(Cn);function f(e,t){let r=u.some(e=>t===e||e.startsWith(t+`/`)),i=l||r,a=Ki.call(n,e);return a.isSymbolicLink()?i&&(o||r)&&!!Gi.call(n,e,{throwIfNoEntry:!1})?.isDirectory():i&&a.isDirectory()}let p=[];function m(e){let t=pa.call(n,e,{withFileTypes:i,encoding:`utf8`});for(let r of t){let t=M(e,i?r.name:r),o=Pn.call(n,s,t);(typeof a==`function`?a(i?r:o):a.some(e=>zn(e,o)))||(f(t,o)&&m(t),d.some(e=>e.test(o))&&p.push(i?r:o))}}return m(s),p}var Fa=Gi,Ia=class extends u.default{_context;path;off(e,t,n,r){return super.off(e,t,n,r)}removeListener(e,t,n,r){return super.removeListener(e,t,n,r)}constructor(e,t){super(),this._context=e,this.path=t}setMaxListeners(){throw S(`ENOSYS`,`Watcher.setMaxListeners`)}getMaxListeners(){throw S(`ENOSYS`,`Watcher.getMaxListeners`)}prependListener(){throw S(`ENOSYS`,`Watcher.prependListener`)}prependOnceListener(){throw S(`ENOSYS`,`Watcher.prependOnceListener`)}rawListeners(){throw S(`ENOSYS`,`Watcher.rawListeners`)}ref(){return this}unref(){return this}},La=class extends Ia{options;realpath;constructor(e,t,n){let r=D(e);super(r,t),this.options=n,this.realpath=M(r.root,t),Ba(this.realpath,this)}close(){super.emit(`close`),Va(this.realpath,this)}[Symbol.dispose](){this.close()}},Ra=class extends Ia{options;intervalId;previous;constructor(e,t,n){super(e,t),this.options=n,this.start()}onInterval(){try{let e=Fa.call(this._context,this.path);Wn(this.previous,e)||(this.emit(`change`,e,this.previous),this.previous=e)}catch(e){this.emit(`error`,e)}}start(){let e=this.options.interval||5e3;try{this.previous=Fa.call(this._context,this.path)}catch(e){this.emit(`error`,e);return}this.intervalId=setInterval(this.onInterval.bind(this),e),!this.options.persistent&&typeof this.intervalId==`object`&&this.intervalId.unref()}stop(){this.intervalId&&=(clearInterval(this.intervalId),void 0),this.removeAllListeners()}},za=new Map;function Ba(e,t){let n=j(e);za.has(n)||za.set(n,new Set),za.get(n).add(t)}function Va(e,t){let n=j(e);za.has(n)&&(za.get(n).delete(t),za.get(n).size===0&&za.delete(n))}function Ha(e,t,n){let r=D(e);r&&(n=M(r.root??`/`,n)),n=j.call(e,n);for(let e=n;;e=N(e)){let r=za.get(e);if(r)for(let i of r)i.emit(`change`,t,Pn.call(i._context,e,n)||Fn(n));if(e===`/`)break}}var Ua=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Wa=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});async function Ga(e,t,n,r){if(t=jn.call(e,t),n){let n=G(t,e,r),i=W(n.fs).get(n.path)?.inode??await n.fs.stat(n.path).catch(()=>void 0);return{...n,fullPath:t,stats:i}}try{let i=G(t,e),a=W(i.fs).get(i.path)?.inode??await i.fs.stat(i.path);return nr(a)?await Ga(e,jn.call(e,N(t),await qa.call(e,t)),n,r):{...i,fullPath:t,stats:a}}catch{}let{base:i,dir:a}=Rn(t),o=a==`/`?`/`:(await Ga(e,a,!1,r)).fullPath,s=M(o,i),c=G(s,e),l=W(c.fs).get(c.path)?.inode??await c.fs.stat(c.path).catch(e=>{if(e.code!=`ENOENT`)throw b(Object.assign(e,{syscall:`stat`,path:s,...r}))});return l?nr(l)?await Ga(e,jn.call(e,o,await qa.call(e,s)),!1,r):{...c,fullPath:s,stats:l}:{...c,fullPath:s}}async function Ka(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=mi(n.flag),a={syscall:`open`,path:t},{fs:o,path:s,stats:c}=await Ga(e,t,n.preserveSymlinks,a);if(!c){let l={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,a);let u=N(s),d=await o.stat(u);if(U&&!z(e,d,2))throw S(`EACCES`,`open`,N(t));if(!R(d))throw S(`ENOTDIR`,`open`,N(t));if(!n.allowDirectory&&R({mode:r}))throw S(`EISDIR`,`open`,t);if(Ua(l,await ti(o,u,`rw`,d),!1),c=W(o).get(s)?.inode??await o.stat(s).catch(()=>void 0),!c){let{euid:n,egid:a}=D(e).credentials,c=await o.createFile(s,{mode:r,uid:d.mode&2048?d.uid:n,gid:d.mode&1024?d.gid:a});return Ha(e,`rename`,t),new ci(e,t,s,i,W(o).ref(s,c))}}catch(e){l.error=e,l.hasError=!0}finally{Wa(l)}}if(U&&!z(e,c,gi(i)))throw S(`EACCES`,a);if(i&128)throw S(`EEXIST`,a);if(!n.allowDirectory&&R({mode:r}))throw S(`EISDIR`,`open`,t);let l=new ci(e,t,s,i,W(o).ref(s,c));return i&512&&await l.truncate(0),l}async function qa(e){e=j.call(this,e);let t={syscall:`readlink`,path:e},{fs:n,stats:r,path:i}=await Ga(this,e,!0,t);if(!r)throw S(`ENOENT`,t);if(U&&!z(this,r,4))throw S(`EACCES`,t);if(!nr(r))throw S(`EINVAL`,t);let a=r.size,o=new Uint8Array(a);return await n.read(i,o,0,a),ce(o)}async function Ja(e,t={}){let n=j.call(this,e),{euid:r,egid:i}=D(this).credentials,{mode:a=511,recursive:o}=t,s={syscall:`mkdir`,path:n},{fullPath:c}=await Ga(this,N(n),!1,s),{fs:l,path:u}=G(M(c,Fn(n)),this,s),d=c!=N(n),f,p=async(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let c=N(t),m=o&&c!=`/`?await p(N(e),c):await l.stat(c);if(Ua(n,await ti(l,c,`rw`,m),!1),o){let n=W(l).get(t)?.inode??await l.stat(t).catch(()=>null);if(n){let r=nr(n)?(await Ga(this,e,!1,s)).stats:n;if(!r)throw S(`ENOENT`,s);if(!R(r))throw S(t==u?`EEXIST`:`ENOTDIR`,s);return n}if(d&&await l.exists(M(c,Fn(e))))throw S(`ENOTDIR`,`mkdir`,e)}if(U&&!z(this,m,2))throw S(`EACCES`,`mkdir`,e);let h=await l.mkdir(t,{mode:a,uid:m.mode&2048?m.uid:r,gid:m.mode&1024?m.gid:i}).catch(me({syscall:`mkdir`,path:e}));return o&&(f??=e),Ha(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{Wa(n)}};return await p(n,u),f}async function Ya(e,t={}){e=j.call(this,e);let n={syscall:`scandir`,path:e},{fs:r,path:i,stats:a}=await Ga(this,e,!1,n);if(!a)throw S(`ENOENT`,n);if(U&&!z(this,a,4))throw S(`EACCES`,n);if(!R(a))throw S(`ENOTDIR`,n);let o;{let e={stack:[],error:void 0,hasError:!1};try{Ua(e,await ti(r,i,`ro`,a),!1),o=await r.readdir(i)}catch(t){e.error=t,e.hasError=!0}finally{Wa(e)}}let s=[],c=async e=>{let n=await r.stat(M(i,e)).catch(e=>{if(e.code!=`ENOENT`)throw e});if(!n)return;let a=new Wr;if(a.ino=n.ino,a.type=Hr(n.mode),a.path=e,a.name=Fn(e),s.push(a),!t.recursive||!R(n))return;let o=await r.readdir(M(i,e));for(let t of o)await c(M(e,t))};return await Promise.all(o.map(c)),s}async function Xa(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=await Ga(this,e,!0,r),a=G(t,this,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=i.fs,s=await o.stat(N(i.path)),c=await o.stat(N(a.path)),l=await o.stat(a.path).catch(e=>{if(e.code==`ENOENT`)return null;throw e});if(U&&(!z(this,s,4)||!z(this,c,2)))throw S(`EACCES`,r);if(l&&!R(i.stats)&&R(l))throw S(`EISDIR`,r);if(l&&R(i.stats)&&!R(l))throw S(`ENOTDIR`,r);let u=N(i.path),d=N(a.path),f=[[u,s],[d,c]];s.ino>c.ino&&f.reverse(),Ua(n,await ti(o,f[0][0],`rw`,f[0][1]),!1),Ua(n,s.ino==c.ino?null:await ti(o,f[1][0],`rw`,f[1][1]),!1),await i.fs.rename(i.path,a.path),W(o).rename(i.path,a.path),Ha(this,`rename`,e),Ha(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Wa(n)}}async function Za(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,path:a}=G(e,this,r),o=G(t,this,r);if(i.uuid!=o.fs.uuid)throw S(`EXDEV`,r);let s=await i.stat(a);if(U){if(!z(this,s,4))throw S(`EACCES`,r);let e=await i.stat(N(a));if(!z(this,e,4))throw S(`EACCES`,r);let t=await i.stat(N(o.path));if(!z(this,t,2))throw S(`EACCES`,r)}Ua(n,await ti(i,N(o.path),`rw`),!1),await i.link(a,o.path),W(i).link(a,o.path)}catch(e){n.error=e,n.hasError=!0}finally{Wa(n)}}async function Qa(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=(await Ga(this,e,!1,n)).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=await Ga(this,i,!1,n),s=t?M(o,t):o;r=W(a).get(s)?.inode??await a.stat(s).catch(me(n))}if(!r)throw S(`ENOENT`,n);if(U&&!z(this,r,4))throw S(`EACCES`,n);return r}var $a=class extends u.default{input;output;terminal;line=``;_cursor=0;get cursor(){return this._cursor}_buffer=``;_closed=!1;_paused=!1;_prompt=``;_history=[];_historyIndex=-1;_currentLine=``;constructor(e,t,n,r=!1){super(),this.input=e,this.output=t,this.terminal=r,this.input.on(`data`,this._onData),this.input.on(`end`,this.close.bind(this)),this.input.on(`close`,this.close.bind(this))}_onData=e=>{if(!(this._paused||this._closed)){this._buffer+=typeof e==`string`?e:e.toString(`utf8`);for(let e=this._buffer.indexOf(`
|
|
1
|
+
import{i as e,n as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{t as r}from"./buffer-DvhmllZ2.js";function i(e,t){if(e.byteLength>=t)return e;if(ArrayBuffer.isView(e)){let n=i(e.buffer,t);return new e.constructor(n,e.byteOffset,t)}let n=typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer;if(e.maxByteLength>t)return n?e.grow(t):e.resize(t),e;if(n){let n=new SharedArrayBuffer(t);return new Uint8Array(n).set(new Uint8Array(e)),n}try{return e.transfer(t)}catch{let n=new ArrayBuffer(t);return new Uint8Array(n).set(new Uint8Array(e)),n}}var a=class extends DataView{constructor(e,t,n){let{buffer:r,byteOffset:i,byteLength:a}=new Uint8Array(e,t,n);super(r,i,a)}};for(let e of Object.getOwnPropertyNames(DataView.prototype))!e.startsWith(`get`)&&!e.startsWith(`set`)||Object.defineProperty(a.prototype,e,{value:()=>{throw ReferenceError(`Do not use DataView methods on a BufferView.`)},writable:!1,enumerable:!1,configurable:!1});function o(e,t,n){let r=e.length;for(;r>0&&e[r-1].start>t;)r--;let i=e[r-1];if(i&&i.end>=t){if(i.end>=n)return;i.end=n}else e.splice(r,0,{start:t,end:n}),r++;let a=e[r-1],o=r;for(;o<e.length&&e[o].start<=a.end;)a.end=Math.max(a.end,e[o].end),o++;o>r&&e.splice(r,o-r)}var s=class{id;_size;options;regions=[];get size(){return this._size}set size(e){if(e>=this._size){this._size=e;return}this._size=e;for(let t=this.regions.length-1;t>=0;t--){let n=this.regions[t];if(n.offset>=e){this.regions.splice(t,1);continue}let r=e-n.offset;n.data.byteLength>r&&(n.data=n.data.subarray(0,r)),n.ranges=n.ranges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t)}}constructor(e,t,n,r){this.id=e,this._size=t,this.options=n,n.sparse??=!0,(!n.growFactor||!Number.isFinite(n.growFactor)||n.growFactor<1||n.growFactor>100)&&(n.growFactor=2),n.sparse||this.regions.push({offset:0,data:new Uint8Array(t),ranges:[]}),r?.set(e,this)}resizeRegion(e,t){let{buffer:n,byteOffset:r}=e.data;if(n.byteLength-r>=t){e.data=new Uint8Array(n,r,t);return}let i=new Uint8Array(Math.max(t,(n.byteLength-r)*this.options.growFactor));i.set(e.data),e.data=i.subarray(0,t)}mergeAt(e){let t=this.regions[e],n=this.regions[e+1];if(!t||!n)return!1;let{regionGapThreshold:r=4095}=this.options;if(n.offset-(t.offset+t.data.byteLength)>r)return!1;for(let e of n.ranges)o(t.ranges,e.start,e.end);let i=n.offset+n.data.byteLength-t.offset;return i>t.data.byteLength&&this.resizeRegion(t,i),t.data.set(n.data,n.offset-t.offset),this.regions.splice(e+1,1),!0}collect(){if(this.options.sparse)for(let e=0;e<this.regions.length-1;)this.mergeAt(e)||e++}collectAt(e){if(this.options.sparse)for(e>0&&this.mergeAt(e-1)&&e--;this.mergeAt(e););}missing(e,t){let n=[];for(let r of this.regionsIn(e,t)){for(let i of r.ranges)if(!(i.end<=e)&&(i.start>=t||(i.start>e&&n.push({start:e,end:Math.min(i.start,t)}),i.end>e&&(e=Math.max(e,i.end)),e>=t)))break;if(e>=t)break}return e<t&&n.push({start:e,end:t}),n}cached(e,t){let n=[];for(let r of this.regionsIn(e,t))for(let i of r.ranges)if(!(i.end<=e)){if(i.start>=t)break;n.push({start:Math.max(e,i.start),end:Math.min(t,i.end)})}n.sort((e,t)=>e.start-t.start);let r=[];for(let e of n){let t=r.at(-1);t&&e.start<=t.end?t.end=Math.max(t.end,e.end):r.push(e)}return r}indexAfter(e){let t=0,n=this.regions.length;for(;t<n;){let r=t+n>>1;this.regions[r].offset>e?n=r:t=r+1}return t}regionAt(e){let t=this.regions[this.indexAfter(e)-1];if(t&&e<t.offset+t.data.byteLength)return t}*regionsIn(e,t){for(let n=Math.max(0,this.indexAfter(e)-1);n<this.regions.length;n++){let r=this.regions[n];if(r.offset>=t)return;r.offset+r.data.byteLength>e&&(yield r)}}add(e,t){let n=t+e.byteLength,r=this.indexAfter(t)-1,i=this.regions[r];return i&&t<i.offset+i.data.byteLength?(n-i.offset>i.data.byteLength&&this.resizeRegion(i,n-i.offset),i.data.set(e,t-i.offset),o(i.ranges,t,n),this.collectAt(r),this):(this.regions.splice(r+1,0,{data:e,offset:t,ranges:[{start:t,end:n}]}),this.collectAt(r+1),this)}},c=new Uint32Array(256);for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=t&1?2197175160^t>>>1:t>>>1;c[e]=t}function l(e){let t=4294967295;for(let n=0;n<e.length;n++)t=t>>>8^c[(t^e[n])&255];return(t^4294967295)>>>0}var u=e(n(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1),d=class extends u.default{[Symbol.toStringTag]=`List`;constructor(e){super(),e&&this.push(...e)}data=new Set;toSet(){return new Set(this.data)}toArray(){return Array.from(this.data)}toJSON(){return Array.from(this.data)}toString(){return this.join(`,`)}_set(e,t,n=!1){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not set an element outside the bounds of the list`);let r=Array.from(this.data);r.splice(e,+n,t),this.data=new Set(r),this.emit(`update`)}set(e,t){this._set(e,t,!0)}deleteAt(e){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not delete an element outside the bounds of the list`);this.delete(Array.from(this.data).at(e))}insert(e,t=this.data.size){this._set(t,e,!1)}at(e){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not access an element outside the bounds of the list`);return Array.from(this.data).at(e)}pop(){let e=Array.from(this.data).pop();return e!==void 0&&this.delete(e),e}push(...e){for(let t of e)this.add(t);return this.data.size}join(e){return Array.from(this.data).join(e)}splice(e,t,...n){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not splice elements outside the bounds of the list`);let r=Array.from(this.data),i=r.splice(e,t,...n);return this.data=new Set(r),this.emit(`update`),i}add(e){return this.data.add(e),this.emit(`update`),this.emit(`add`,e),this}clear(){this.data.clear(),this.emit(`update`)}delete(e){let t=this.data.delete(e);return this.emit(`update`),t}has(e){return this.data.has(e)}get size(){return this.data.size}entries(){return this.toArray().entries()}keys(){return this.toArray().keys()}values(){return this.data.values()}[Symbol.iterator](){return this.data[Symbol.iterator]()}};function f(e,t){let n=Object.entries(e);return Object.fromEntries(n.filter(([e,n])=>t(e,n)))}function p(e,...t){let n={};for(let r of t.flat())n[r]=e[r];return n}function m(e,...t){return f(e,e=>!t.flat().includes(e))}function h(e){try{return JSON.parse(e),!0}catch{return!1}}function g(e){let t=[];for(let n=e;n&&![`Function`,`Object`].includes(n.constructor.name);n=Object.getPrototypeOf(n))t.push(n.constructor.name);return t}function ee(e,t){return Object.fromEntries(Object.entries(e).map(([e,n])=>[e,typeof n==`function`?n.bind(t):n]))}function te(e=Error()){let t=setTimeout(()=>{throw e},5e3);return()=>clearTimeout(t)}function _(e){throw e&&typeof e==`object`&&g(e).includes(`Error`)&&Error?.captureStackTrace(e,_),e}function ne(e,t){if(![`getter`,`accessor`].includes(t.kind))throw Error(`@memoize can only be used on getters and auto-accessors`);let n=new WeakMap;function r(){if(n.has(this))return n.get(this);let t=typeof e==`function`?e.call(this):e.get.call(this);return n.set(this,t),t}switch(t.kind){case`getter`:return r;case`accessor`:return{...e,get:r}}}var re=Intl.NumberFormat(`en`,{notation:`compact`});re.format.bind(re);function ie(e=0,t=1){return Math.round(Math.random()*(t-e)+e)}function ae(e){return e.at(0).toUpperCase()+e.slice(1)}var oe=new TextEncoder;function v(e){return oe.encode(e)}var se=new TextDecoder;function ce(e){if(!e)return``;if(e.buffer instanceof ArrayBuffer&&!e.buffer.resizable)return se.decode(e);let t=new Uint8Array(e.byteLength);return t.set(e),se.decode(t)}function le(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function ue(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}function de(e){let t=Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function fe(e){let t=e.replace(/-/g,``),n=new Uint8Array(16);for(let e=0;e<16;e++)n[e]=parseInt(t.slice(e*2,e*2+2),16);return n}var y;(function(e){e[e.EPERM=1]=`EPERM`,e[e.ENOENT=2]=`ENOENT`,e[e.ESRCH=3]=`ESRCH`,e[e.EINTR=4]=`EINTR`,e[e.EIO=5]=`EIO`,e[e.ENXIO=6]=`ENXIO`,e[e.E2BIG=7]=`E2BIG`,e[e.ENOEXEC=8]=`ENOEXEC`,e[e.EBADF=9]=`EBADF`,e[e.ECHILD=10]=`ECHILD`,e[e.EAGAIN=11]=`EAGAIN`,e[e.ENOMEM=12]=`ENOMEM`,e[e.EACCES=13]=`EACCES`,e[e.EFAULT=14]=`EFAULT`,e[e.ENOTBLK=15]=`ENOTBLK`,e[e.EBUSY=16]=`EBUSY`,e[e.EEXIST=17]=`EEXIST`,e[e.EXDEV=18]=`EXDEV`,e[e.ENODEV=19]=`ENODEV`,e[e.ENOTDIR=20]=`ENOTDIR`,e[e.EISDIR=21]=`EISDIR`,e[e.EINVAL=22]=`EINVAL`,e[e.ENFILE=23]=`ENFILE`,e[e.EMFILE=24]=`EMFILE`,e[e.ENOTTY=25]=`ENOTTY`,e[e.ETXTBSY=26]=`ETXTBSY`,e[e.EFBIG=27]=`EFBIG`,e[e.ENOSPC=28]=`ENOSPC`,e[e.ESPIPE=29]=`ESPIPE`,e[e.EROFS=30]=`EROFS`,e[e.EMLINK=31]=`EMLINK`,e[e.EPIPE=32]=`EPIPE`,e[e.EDOM=33]=`EDOM`,e[e.ERANGE=34]=`ERANGE`,e[e.EDEADLK=35]=`EDEADLK`,e[e.ENAMETOOLONG=36]=`ENAMETOOLONG`,e[e.ENOLCK=37]=`ENOLCK`,e[e.ENOSYS=38]=`ENOSYS`,e[e.ENOTEMPTY=39]=`ENOTEMPTY`,e[e.ELOOP=40]=`ELOOP`,e[e.ENOMSG=42]=`ENOMSG`,e[e.EIDRM=43]=`EIDRM`,e[e.ECHRNG=44]=`ECHRNG`,e[e.EL2NSYNC=45]=`EL2NSYNC`,e[e.EL3HLT=46]=`EL3HLT`,e[e.EL3RST=47]=`EL3RST`,e[e.ENRNG=48]=`ENRNG`,e[e.EUNATCH=49]=`EUNATCH`,e[e.ECSI=50]=`ECSI`,e[e.EL2HLT=51]=`EL2HLT`,e[e.EBADE=52]=`EBADE`,e[e.EBADR=53]=`EBADR`,e[e.EXFULL=54]=`EXFULL`,e[e.ENOANO=55]=`ENOANO`,e[e.EBADRQC=56]=`EBADRQC`,e[e.EBADSLT=57]=`EBADSLT`,e[e.EBFONT=59]=`EBFONT`,e[e.ENOSTR=60]=`ENOSTR`,e[e.ENODATA=61]=`ENODATA`,e[e.ETIME=62]=`ETIME`,e[e.ENOSR=63]=`ENOSR`,e[e.ENONET=64]=`ENONET`,e[e.ENOPKG=65]=`ENOPKG`,e[e.EREMOTE=66]=`EREMOTE`,e[e.ENOLINK=67]=`ENOLINK`,e[e.EADV=68]=`EADV`,e[e.ESRMNT=69]=`ESRMNT`,e[e.ECOMM=70]=`ECOMM`,e[e.EPROTO=71]=`EPROTO`,e[e.EMULTIHOP=72]=`EMULTIHOP`,e[e.EDOTDOT=73]=`EDOTDOT`,e[e.EBADMSG=74]=`EBADMSG`,e[e.EOVERFLOW=75]=`EOVERFLOW`,e[e.ENOTUNIQ=76]=`ENOTUNIQ`,e[e.EBADFD=77]=`EBADFD`,e[e.EREMCHG=78]=`EREMCHG`,e[e.ELIBACC=79]=`ELIBACC`,e[e.ELIBBAD=80]=`ELIBBAD`,e[e.ELIBSCN=81]=`ELIBSCN`,e[e.ELIBMAX=82]=`ELIBMAX`,e[e.ELIBEXEC=83]=`ELIBEXEC`,e[e.EILSEQ=84]=`EILSEQ`,e[e.ERESTART=85]=`ERESTART`,e[e.ESTRPIPE=86]=`ESTRPIPE`,e[e.EUSERS=87]=`EUSERS`,e[e.ENOTSOCK=88]=`ENOTSOCK`,e[e.EDESTADDRREQ=89]=`EDESTADDRREQ`,e[e.EMSGSIZE=90]=`EMSGSIZE`,e[e.EPROTOTYPE=91]=`EPROTOTYPE`,e[e.ENOPROTOOPT=92]=`ENOPROTOOPT`,e[e.EPROTONOSUPPORT=93]=`EPROTONOSUPPORT`,e[e.ESOCKTNOSUPPORT=94]=`ESOCKTNOSUPPORT`,e[e.ENOTSUP=95]=`ENOTSUP`,e[e.EPFNOSUPPORT=96]=`EPFNOSUPPORT`,e[e.EAFNOSUPPORT=97]=`EAFNOSUPPORT`,e[e.EADDRINUSE=98]=`EADDRINUSE`,e[e.EADDRNOTAVAIL=99]=`EADDRNOTAVAIL`,e[e.ENETDOWN=100]=`ENETDOWN`,e[e.ENETUNREACH=101]=`ENETUNREACH`,e[e.ENETRESET=102]=`ENETRESET`,e[e.ECONNABORTED=103]=`ECONNABORTED`,e[e.ECONNRESET=104]=`ECONNRESET`,e[e.ENOBUFS=105]=`ENOBUFS`,e[e.EISCONN=106]=`EISCONN`,e[e.ENOTCONN=107]=`ENOTCONN`,e[e.ESHUTDOWN=108]=`ESHUTDOWN`,e[e.ETOOMANYREFS=109]=`ETOOMANYREFS`,e[e.ETIMEDOUT=110]=`ETIMEDOUT`,e[e.ECONNREFUSED=111]=`ECONNREFUSED`,e[e.EHOSTDOWN=112]=`EHOSTDOWN`,e[e.EHOSTUNREACH=113]=`EHOSTUNREACH`,e[e.EALREADY=114]=`EALREADY`,e[e.EINPROGRESS=115]=`EINPROGRESS`,e[e.ESTALE=116]=`ESTALE`,e[e.EEUCLEAN=117]=`EEUCLEAN`,e[e.ENOTNAM=118]=`ENOTNAM`,e[e.ENAVAIL=119]=`ENAVAIL`,e[e.EISNAM=120]=`EISNAM`,e[e.EREMOTEIO=121]=`EREMOTEIO`,e[e.EDQUOT=122]=`EDQUOT`,e[e.ENOMEDIUM=123]=`ENOMEDIUM`,e[e.EMEDIUMTYPE=124]=`EMEDIUMTYPE`,e[e.ECANCELED=125]=`ECANCELED`,e[e.ENOKEY=126]=`ENOKEY`,e[e.EKEYEXPIRED=127]=`EKEYEXPIRED`,e[e.EKEYREVOKED=128]=`EKEYREVOKED`,e[e.EKEYREJECTED=129]=`EKEYREJECTED`,e[e.EOWNERDEAD=130]=`EOWNERDEAD`,e[e.ENOTRECOVERABLE=131]=`ENOTRECOVERABLE`,e[e.ERFKILL=132]=`ERFKILL`,e[e.EHWPOISON=133]=`EHWPOISON`})(y||={});var pe={[y.EPERM]:`operation not permitted`,[y.ENOENT]:`no such file or directory`,[y.ESRCH]:`no such process`,[y.EINTR]:`interrupted system call`,[y.EIO]:`i/o error`,[y.ENXIO]:`no such device or address`,[y.E2BIG]:`argument list too long`,[y.ENOEXEC]:`exec format error`,[y.EBADF]:`bad file descriptor`,[y.ECHILD]:`no child processes`,[y.EAGAIN]:`resource temporarily unavailable`,[y.ENOMEM]:`not enough memory`,[y.EACCES]:`permission denied`,[y.EFAULT]:`bad address in system call argument`,[y.ENOTBLK]:`block device required`,[y.EBUSY]:`resource busy or locked`,[y.EEXIST]:`file already exists`,[y.EXDEV]:`cross-device link not permitted`,[y.ENODEV]:`no such device`,[y.ENOTDIR]:`not a directory`,[y.EISDIR]:`illegal operation on a directory`,[y.EINVAL]:`invalid argument`,[y.ENFILE]:`file table overflow`,[y.EMFILE]:`too many open files`,[y.ENOTTY]:`inappropriate ioctl for device`,[y.ETXTBSY]:`text file is busy`,[y.EFBIG]:`file too large`,[y.ENOSPC]:`no space left on device`,[y.ESPIPE]:`invalid seek`,[y.EROFS]:`read-only file system`,[y.EMLINK]:`too many links`,[y.EPIPE]:`broken pipe`,[y.EDOM]:`numerical argument out of domain`,[y.ERANGE]:`result too large`,[y.EDEADLK]:`resource deadlock would occur`,[y.ENAMETOOLONG]:`name too long`,[y.ENOLCK]:`no locks available`,[y.ENOSYS]:`function not implemented`,[y.ENOTEMPTY]:`directory not empty`,[y.ELOOP]:`too many symbolic links encountered`,[y.ENOMSG]:`no message of desired type`,[y.EIDRM]:`identifier removed`,[y.ECHRNG]:`channel number out of range`,[y.EL2NSYNC]:`level 2 not synchronized`,[y.EL3HLT]:`level 3 halted`,[y.EL3RST]:`level 3 reset`,[y.ENRNG]:`link number out of range`,[y.EUNATCH]:`protocol driver not attached`,[y.ECSI]:`no CSI structure available`,[y.EL2HLT]:`level 2 halted`,[y.EBADE]:`invalid exchange`,[y.EBADR]:`invalid request descriptor`,[y.EXFULL]:`exchange full`,[y.ENOANO]:`no anode`,[y.EBADRQC]:`invalid request code`,[y.EBADSLT]:`invalid slot`,[y.EBFONT]:`bad font file format`,[y.ENOSTR]:`device not a stream`,[y.ENODATA]:`no data available`,[y.ETIME]:`timer expired`,[y.ENOSR]:`out of streams resources`,[y.ENONET]:`machine is not on the network`,[y.ENOPKG]:`package not installed`,[y.EREMOTE]:`object is remote`,[y.ENOLINK]:`link has been severed`,[y.EADV]:`advertise error`,[y.ESRMNT]:`srmount error`,[y.ECOMM]:`communication error on send`,[y.EPROTO]:`protocol error`,[y.EMULTIHOP]:`multihop attempted`,[y.EDOTDOT]:`rFS specific error`,[y.EBADMSG]:`bad message`,[y.EOVERFLOW]:`value too large for defined data type`,[y.ENOTUNIQ]:`name not unique on network`,[y.EBADFD]:`file descriptor in bad state`,[y.EREMCHG]:`remote address changed`,[y.ELIBACC]:`can not access a needed shared library`,[y.ELIBBAD]:`accessing a corrupted shared library`,[y.ELIBSCN]:`.lib section in a.out corrupted`,[y.ELIBMAX]:`attempting to link in too many shared libraries`,[y.ELIBEXEC]:`cannot exec a shared library directly`,[y.EILSEQ]:`illegal byte sequence`,[y.ERESTART]:`interrupted system call should be restarted`,[y.ESTRPIPE]:`streams pipe error`,[y.EUSERS]:`too many users`,[y.ENOTSOCK]:`socket operation on non-socket`,[y.EDESTADDRREQ]:`destination address required`,[y.EMSGSIZE]:`message too long`,[y.EPROTOTYPE]:`protocol wrong type for socket`,[y.ENOPROTOOPT]:`protocol not available`,[y.EPROTONOSUPPORT]:`protocol not supported`,[y.ESOCKTNOSUPPORT]:`socket type not supported`,[y.ENOTSUP]:`operation not supported on socket`,[y.EPFNOSUPPORT]:`protocol family not supported`,[y.EAFNOSUPPORT]:`address family not supported`,[y.EADDRINUSE]:`address already in use`,[y.EADDRNOTAVAIL]:`address not available`,[y.ENETDOWN]:`network is down`,[y.ENETUNREACH]:`network is unreachable`,[y.ENETRESET]:`network dropped connection on reset`,[y.ECONNABORTED]:`software caused connection abort`,[y.ECONNRESET]:`connection reset by peer`,[y.ENOBUFS]:`no buffer space available`,[y.EISCONN]:`socket is already connected`,[y.ENOTCONN]:`socket is not connected`,[y.ESHUTDOWN]:`cannot send after transport endpoint shutdown`,[y.ETOOMANYREFS]:`too many references: cannot splice`,[y.ETIMEDOUT]:`connection timed out`,[y.ECONNREFUSED]:`connection refused`,[y.EHOSTDOWN]:`host is down`,[y.EHOSTUNREACH]:`host is unreachable`,[y.EALREADY]:`connection already in progress`,[y.EINPROGRESS]:`operation now in progress`,[y.ESTALE]:`stale file handle`,[y.EEUCLEAN]:`structure needs cleaning`,[y.ENOTNAM]:`not a XENIX named type file`,[y.ENAVAIL]:`no XENIX semaphores available`,[y.EISNAM]:`is a named type file`,[y.EREMOTEIO]:`remote I/O error`,[y.EDQUOT]:`disk quota exceeded`,[y.ENOMEDIUM]:`no medium found`,[y.EMEDIUMTYPE]:`wrong medium type`,[y.ECANCELED]:`operation canceled`,[y.ENOKEY]:`required key not available`,[y.EKEYEXPIRED]:`key has expired`,[y.EKEYREVOKED]:`key has been revoked`,[y.EKEYREJECTED]:`key was rejected by service`,[y.EOWNERDEAD]:`owner died`,[y.ENOTRECOVERABLE]:`state not recoverable`,[y.ERFKILL]:`operation not possible due to RF-kill`,[y.EHWPOISON]:`memory page has hardware error`};function b(e){let t=`${e.code}: ${pe[e.errno]}, ${e.syscall}`;e.path&&(t+=` '${e.path}'`),e.dest&&(t+=` -> '${e.dest}'`);let n=e.message.startsWith(pe[e.errno])||/^E[A-Z0-9]+: /.test(e.message);return e.message&&!n&&(t+=` (${e.message})`),e.message=t,e}var x=class e extends Error{errno;code;path;dest;syscall;constructor(e,t,n={}){let r=y[e];super(t||``),this.errno=e,this.code=r,Object.assign(this,m(n,`message`)),t||b(this),Error.captureStackTrace?.(this,this.constructor)}toString(){return this.message}toJSON(){let e={errno:this.errno,code:this.code,stack:this.stack,message:this.message};return this.path&&(e.path=this.path),this.dest&&(e.dest=this.dest),this.syscall&&(e.syscall=this.syscall),e}static fromJSON(t){let n=t.syscall?new e(t.errno,!1,t):new e(t.errno,t.message);return n.stack=t.stack,n}};function S(e,t,n,r){typeof t==`string`&&(t={syscall:t,path:n,dest:r});let i=new x(y[e],!1,t??{});return Error.captureStackTrace?.(i,S),i}function C(e,t){let n=new x(y[e],t??pe[y[e]]);return Error.captureStackTrace?.(n,C),n}function me(e,t,n){let r=typeof e==`string`?{syscall:e}:e;return t&&(r.path=t),n&&(r.dest=n),function(e){throw Object.assign(e,r),b(e),e}}var he=t({Level:()=>w,alert:()=>Se,configure:()=>Be,crit:()=>Ce,debug:()=>Ee,deprecated:()=>De,emerg:()=>xe,entries:()=>ve,err:()=>T,fancy:()=>Me,format:()=>Pe,info:()=>Te,isEnabled:()=>ze,levelOf:()=>_e,levels:()=>ge,log:()=>ye,notice:()=>we,warn:()=>E}),w;(function(e){e[e.EMERG=0]=`EMERG`,e[e.ALERT=1]=`ALERT`,e[e.CRIT=2]=`CRIT`,e[e.ERR=3]=`ERR`,e[e.WARN=4]=`WARN`,e[e.NOTICE=5]=`NOTICE`,e[e.INFO=6]=`INFO`,e[e.DEBUG=7]=`DEBUG`})(w||={});var ge=[`emergency`,`alert`,`critical`,`error`,`warning`,`notice`,`info`,`debug`];function _e(e){return ge.indexOf(e)}var ve=new d;function ye(e,t){if(!ze)return;let n={level:e,message:t,timestamp:new Date,elapsedMs:performance.now()};if(ve.size>=1e4){let e=ve.values().next().value;e!==void 0&&ve.delete(e)}ve.add(n),Ie(n)}function be(e){return function(t){return ye(e,t.toString()),t}}var xe=be(w.EMERG),Se=be(w.ALERT),Ce=be(w.CRIT),T=be(w.ERR),E=be(w.WARN),we=be(w.NOTICE),Te=be(w.INFO),Ee=be(w.DEBUG);function De(e){ye(w.WARN,e+` is deprecated and should not be used.`)}function Oe(e,t){return`\x1b[${t}m${e}\x1b[0m`}function ke(e){return`[`+(e.elapsedMs/1e3).toFixed(3).padStart(10)+`] `}var Ae={ansi:{[w.EMERG]:`1;4;37;41`,[w.ALERT]:`1;37;41`,[w.CRIT]:`1;35`,[w.ERR]:`1;31`,[w.WARN]:`1;33`,[w.NOTICE]:`1;36`,[w.INFO]:`1;37`,[w.DEBUG]:`0;2;37`},css:{[w.EMERG]:`font-weight: bold; text-decoration: underline; color: white; background-color: red;`,[w.ALERT]:`font-weight: bold; color: white; background-color: red;`,[w.CRIT]:`font-weight: bold; color: magenta;`,[w.ERR]:`font-weight: bold; color: red;`,[w.WARN]:`font-weight: bold; color: yellow;`,[w.NOTICE]:`font-weight: bold; color: cyan;`,[w.INFO]:`font-weight: bold; color: white;`,[w.DEBUG]:`opacity: 0.8; color: white;`}},je={ansi:{[w.EMERG]:`1;31`,[w.ALERT]:`1;31`,[w.CRIT]:`1;31`,[w.ERR]:`31`,[w.WARN]:`33`,[w.NOTICE]:`1;37`,[w.INFO]:`37`,[w.DEBUG]:`2;37`},css:{[w.EMERG]:`font-weight: bold; color: red;`,[w.ALERT]:`font-weight: bold; color: red;`,[w.CRIT]:`font-weight: bold; color: red;`,[w.ERR]:`color: red;`,[w.WARN]:`color: yellow;`,[w.NOTICE]:`font-weight: bold; color: white;`,[w.INFO]:`color: white;`,[w.DEBUG]:`opacity: 0.8; color: white;`}};function Me({style:e,colorize:t}){return function*(n){e==`css`&&(yield t==`level`?`%c%s %c%s`:`%c%s %c%s%s %c%s`),yield*e==`ansi`?[Oe(ke(n),`2;37`)]:[`opacity: 0.8; color: white;`,ke(n)];let r=e==`ansi`?[Oe(ge[n.level].toUpperCase(),Ae.ansi[n.level])]:[Ae.css[n.level],ge[n.level].toUpperCase()];if(t==`level`){yield*r,yield n.message;return}n.level<w.CRIT&&(yield*r),e==`ansi`?yield Oe(n.message,je.ansi[n.level]):yield*[je.css[n.level],n.message]}}var Ne=e=>[ke(e),e.message];function Pe(e){let t=Ne(e);return typeof t==`string`?[t]:Array.from(t)}var Fe=`process`in globalThis?console.error:console.log;function Ie(e){e.level>Le||Fe(...Pe(e))}var Le=w.ALERT,Re=!1,ze=!0;function Be(e){if(Ne=e.format??Ne,Fe=e.output??Fe,Le=typeof e.level==`string`?_e(e.level):e.level??Le,ze=e.enabled??ze,Re=e.stack??Re,e.dumpBacklog)for(let e of ve)Ie(e)}function Ve(e){return typeof e==`object`&&!!e&&`create`in e&&typeof e.create==`function`}function He(e,t){return Object.defineProperty(t,"prototype",{value:void 0}),e&&Object.defineProperty(t,"name",{value:e}),t}function Ue(e){return!(e&&e.constructor===Function)||e.prototype===void 0?!1:Function.prototype!==Object.getPrototypeOf(e)||Object.getOwnPropertyNames(e.prototype).length>1}function We(e,t){if(typeof t!=`object`||!t)throw T(C(`EINVAL`,`Invalid options`));for(let[n,r]of Object.entries(e.options)){let e=t?.[n];if(e==null){if(!r.required){Ee(`Using default for option: `+n);continue}throw T(C(`EINVAL`,`Missing required option: `+n))}let i=(t,n=e)=>typeof t==`function`?Ue(t)?e instanceof t:t(e):typeof e===t||e?.constructor?.name===t;if(Array.isArray(r.type)?r.type.some(e=>i(e)):i(r.type))continue;let a=typeof e==`object`&&`constructor`in e?e.constructor.name:typeof e,o=e=>typeof e==`function`?e.name==`type`?e.toString():e.name:e;throw T(C(`EINVAL`,`Incorrect type for "${n}": ${a} (expected ${Array.isArray(r.type)?`one of ${r.type.map(o).join(`, `)}`:o(r.type)})`))}}function Ge(e){return typeof e==`object`&&!!e&&`backend`in e&&Ve(e.backend)}function Ke(e){return{suid:e.uid,sgid:e.gid,euid:e.uid,egid:e.gid,groups:[],...e}}function qe(e){return e?!e.uid||!e.gid||!e.euid||!e.egid||e.groups.some(e=>!e):!1}var Je=Symbol(`ZenFSContext`);function Ye(e){return typeof e==`object`&&!!e&&Je in e}function Xe(e){if(!Ye(e))throw E(C(`EINVAL`,`Invalid context provided`))}var Ze={[Je]:!0,id:1,root:`/`,pwd:`/`,credentials:Ke({uid:0,gid:0}),descriptors:new Map,parent:null,children:[],mounts:new Map};function D(e){return Ye(e)?e:Ze}var Qe=2;function $e(e,t={}){Xe(e);let{root:n=e.root,pwd:r=e.pwd,credentials:i=structuredClone(e.credentials),mounts:a}=t,o={[Je]:!0,id:Qe++,root:n,pwd:r,credentials:Ke(i),descriptors:new Map,parent:e,children:[],mounts:a?new Map(Object.entries(a)):e.mounts};return Object.defineProperties(o,{id:{configurable:!1,writable:!1},credentials:{configurable:!1,writable:!1},descriptors:{configurable:!1,writable:!1},parent:{configurable:!1,writable:!1},children:{configurable:!1,writable:!1}}),o}var et=t({COPYFILE_EXCL:()=>1,COPYFILE_FICLONE:()=>2,COPYFILE_FICLONE_FORCE:()=>4,F_OK:()=>0,O_APPEND:()=>tt,O_CREAT:()=>64,O_DIRECT:()=>ct,O_DIRECTORY:()=>nt,O_DSYNC:()=>ot,O_EXCL:()=>128,O_NOATIME:()=>rt,O_NOCTTY:()=>256,O_NOFOLLOW:()=>it,O_NONBLOCK:()=>lt,O_RDONLY:()=>0,O_RDWR:()=>2,O_SYMLINK:()=>st,O_SYNC:()=>at,O_TRUNC:()=>512,O_WRONLY:()=>1,R_OK:()=>4,S_IFBLK:()=>pt,S_IFCHR:()=>ht,S_IFDIR:()=>mt,S_IFIFO:()=>gt,S_IFLNK:()=>dt,S_IFMT:()=>O,S_IFREG:()=>ft,S_IFSOCK:()=>ut,S_IRGRP:()=>32,S_IROTH:()=>4,S_IRUSR:()=>256,S_IRWXG:()=>56,S_IRWXO:()=>7,S_IRWXU:()=>448,S_ISGID:()=>vt,S_ISUID:()=>_t,S_ISVTX:()=>512,S_IWGRP:()=>16,S_IWOTH:()=>2,S_IWUSR:()=>128,S_IXGRP:()=>8,S_IXOTH:()=>1,S_IXUSR:()=>64,UV_FS_O_FILEMAP:()=>0,W_OK:()=>2,X_OK:()=>1,size_max:()=>yt}),tt=1024,nt=65536,rt=262144,it=131072,at=1052672,ot=4096,st=32768,ct=16384,lt=2048,O=61440,ut=49152,dt=40960,ft=32768,pt=24576,mt=16384,ht=8192,gt=4096,_t=2048,vt=1024,yt=4294967295;function bt(e){return`__isArrayType`in e&&e.__isArrayType===!0}function xt(e){return typeof e!=`object`&&typeof e!=`function`||e==null?!1:bt(e)?xt(e.type):`name`in e&&`size`in e&&`get`in e&&`set`in e&&typeof e.name==`string`&&typeof e.size==`number`&&typeof e.get==`function`&&typeof e.set==`function`&&St.has(e.name)&&St.get(e.name)?.name===e.name}var St=new Map;function Ct(e){if(St.has(e.name))throw ReferenceError(`Type is already registered: ${e.name}`);St.set(e.name,e)}var wt=Symbol(`DataView`);function Tt(e){return e[wt]??=new DataView(e),e[wt]}var Et={name:`int8`,size:1,array:Int8Array,get:(e,t)=>Tt(e).getInt8(t),set:(e,t,n)=>Tt(e).setInt8(t,n)},Dt={name:`uint8`,size:1,array:Uint8Array,get:(e,t)=>Tt(e).getUint8(t),set:(e,t,n)=>Tt(e).setUint8(t,n)},Ot={int8:Et,uint8:Dt,int16:{name:`int16`,size:2,array:Int16Array,get:(e,t)=>Tt(e).getInt16(t,!0),set:(e,t,n)=>Tt(e).setInt16(t,n,!0)},uint16:{name:`uint16`,size:2,array:Uint16Array,get:(e,t)=>Tt(e).getUint16(t,!0),set:(e,t,n)=>Tt(e).setUint16(t,n,!0)},int32:{name:`int32`,size:4,array:Int32Array,get:(e,t)=>Tt(e).getInt32(t,!0),set:(e,t,n)=>Tt(e).setInt32(t,n,!0)},uint32:{name:`uint32`,size:4,array:Uint32Array,get:(e,t)=>Tt(e).getUint32(t,!0),set:(e,t,n)=>Tt(e).setUint32(t,n,!0)},int64:{name:`int64`,size:8,array:BigInt64Array,get:(e,t)=>Tt(e).getBigInt64(t,!0),set:(e,t,n)=>Tt(e).setBigInt64(t,n,!0)},uint64:{name:`uint64`,size:8,array:BigUint64Array,get:(e,t)=>Tt(e).getBigUint64(t,!0),set:(e,t,n)=>Tt(e).setBigUint64(t,n,!0)},float32:{name:`float32`,size:4,array:Float32Array,get:(e,t)=>Tt(e).getFloat32(t,!0),set:(e,t,n)=>Tt(e).setFloat32(t,n,!0)},float64:{name:`float64`,size:8,array:Float64Array,get:(e,t)=>Tt(e).getFloat64(t,!0),set:(e,t,n)=>Tt(e).setFloat64(t,n,!0)}},kt=Object.keys(Ot);for(let e of Object.values(Ot))Ct(e);var At={...Ot,...Object.fromEntries(kt.map(e=>[ae(e),Ot[e]])),char:Dt},jt=Object.keys(At);function Mt(e){return jt.includes(e.toString())}function Nt(e){if(!Mt(e))throw C(`EINVAL`,`Not a valid primitive type: `+e)}function Pt(e){return e==`char`?`uint8`:e.toLowerCase()}function Ft(e){return(typeof e==`object`||typeof e==`function`)&&e!==null&&`toInit`in e&&typeof e.toInit==`function`}function It(e){return Ft(e)?e.toInit():xt(e)?{type:e}:e}function Lt(e,t,n={}){if(!e)throw C(`EINVAL`,`Invalid name for struct field`);typeof e==`symbol`&&console.warn(`Symbol used for struct field name will be coerced to string: `+e.toString());let r=e.toString(),i=Object.assign(It(t),n);if(!xt(i.type))throw C(`EINVAL`,`Invalid type for struct field "${r}"`);let a=i.countedBy?` counted_by(${typeof i.countedBy==`string`?i.countedBy:`<function>`})`:``;return{name:r,offset:0,type:i.type,countedBy:i.countedBy,alignment:i.align??i.type.size,decl:i.type instanceof on?`${i.typeName??i.type.type.name} ${r}[${i.type.length}]${a}`:`${i.typeName??i.type.name} ${r}`,littleEndian:!i.bigEndian}}function Rt(e,t){if(!(e instanceof Error)||e.message.toLowerCase()!==`offset is outside the bounds of the dataview`)throw e;let n=C(`EFAULT`,`Segmentation fault (at 0x${t.toString(16)})`);throw Error.captureStackTrace(n,Rt),n}function zt(e,t){return t.type instanceof on&&t.type.length==0&&!!t.countedBy?.length&&!!e.constructor.isDynamic}function Bt(e,t){let n=typeof t.countedBy==`function`?t.countedBy(e):e[t.countedBy];if(typeof n==`bigint`){if(n>BigInt(2**53-1))throw C(`EOVERFLOW`,`countedBy field value exceeds max safe integer`);n=Number(n)}if(typeof n!=`number`)throw C(`EINVAL`,`countedBy field value is not a number`);return n}function Vt(e,t){let n=t.type.type.size*Bt(e,t);if($t(t.type.type)&&t.type.type.isDynamic)for(let r of e[t.name])n+=en(r);return n}var Ht=Symbol(`kOffsets`),Ut=Symbol(`kStaticLayout`);function Wt(e){if(e[Ut]!==void 0)return e[Ut];let t=!e.isDynamic;if(t)for(let n of e.fields){let e=n.type;for(;e instanceof on;)e=e.type;if($t(e)&&e.isDynamic){t=!1;break}}return Object.defineProperty(e,Ut,{value:t,configurable:!0}),t}function Gt(e,t,n){if(Wt(e.constructor))return t.offset;let{offset:r,name:i}=t;e[Ht]||=Object.create(null);let a=e[Ht];if(a[i]!==void 0){if(n)return a[i];delete a[i]}let{fields:o}=e.constructor,s=o.indexOf(t);for(let t of o.slice(0,s)){zt(e,t)&&(r+=Vt(e,t));let n=e[t.name];Qt(n)&&n.constructor.isDynamic&&(r+=en(n))}if(n)a[i]=r;else for(let e of o.slice(s))a[e.name]!==void 0&&delete a[e.name];return r}function Kt(e,t,n,r){typeof n==`string`&&(n=n.charCodeAt(0));let i=e.byteOffset+Gt(e,t,!1)+(r??0)*t.type.size;try{t.type.set(e.buffer,i,n);return}catch(e){Rt(e,i)}}var qt=Symbol(`kDescriptors`);function Jt(e){if(Object.hasOwn(e,qt))return e[qt];let t={};for(let n of e.fields)t[n.name]={enumerable:!0,configurable:!0,get(){return Zt(this,n)},set(e){Kt(this,n,e)}};return Object.defineProperty(e,qt,{value:t,configurable:!0}),t}function Yt(e){Object.defineProperties(e.prototype,Jt(e))}var Xt=Symbol(`kViews`);function Zt(e,t){let n=t.type,r=zt(e,t);if(r){let r=t.type.type;n=new on(r,Bt(e,t))}let i=!r&&(n instanceof on||$t(n))&&Wt(e.constructor);if(i){let n=e[Xt]??=Object.create(null);if(n[t.name]!==void 0)return n[t.name]}let a=e.byteOffset+Gt(e,t,!0);try{let r=n.get(e.buffer,a);return i&&(e[Xt][t.name]=r),r}catch(e){Rt(e,a)}}function Qt(e){return typeof e==`object`&&!!e&&`constructor`in e&&$t(e.constructor)}function $t(e){return typeof e==`function`&&`prototype`in e&&`fields`in e&&typeof e.fields==`object`&&xt(e)}function en(e){let t=0;for(let n of e.constructor.fields){let r=e[n.name];zt(e,n)&&(t+=Vt(e,n)),Qt(r)&&r.constructor.isDynamic&&(t+=en(r))}return t}function tn(e){if(xt(e))return e.size;if(e==null)return 0;if(typeof e==`object`&&xt(e.constructor))return e.constructor.size;if(Array.isArray(e)){let t=0;for(let n=0;n<e.length;n++)t+=tn(e[n]);return t}if(typeof e==`string`)return Nt(e),Ot[Pt(e)].size;throw TypeError(`Unable to resolve size of \`${e.toString()}\``)}function k(e){let t=tn(e);return Qt(e)&&e.constructor.isDynamic?t+en(e):t}function nn(e,t){let n;if($t(e)){if(e.isDynamic)throw C(`EINVAL`,`Cannot get offset of field in dynamic struct from the constructor`);n=e}else if(Qt(e))n=e.constructor;else throw C(`EINVAL`,`Type is not a struct or struct constructor`);let{fields:r}=n,i=r.find(e=>e.name===t);if(!i)throw C(`EINVAL`,`Struct does not have field: `+t);return $t(e)?i.offset:Gt(e,i,!0)}function rn(e,t){class n extends DataView{length;type=e;*[Symbol.iterator](){for(let e=0;e<this.length;e++)yield this[e]}_offsets=[0];offsetOf(t){if(!e.isDynamic)return t*e.size;if(t<this._offsets.length)return this._offsets[t];for(let n=this._offsets.length;n<=t;n++)this._offsets[n]=this._offsets[n-1]+k(e.get(this.buffer,this.byteOffset+this._offsets[n-1]));return this._offsets[t]}constructor(n,r,i){let a=typeof n==`object`?n:new ArrayBuffer((n??0)*e.size);super(a,r,i),this.length=typeof n==`number`?n:e.isDynamic?t??_(`Unknown length of StructArray<${e.name}>`):Math.floor(this.byteLength/e.size);let o=e=>this.byteOffset+this.offsetOf(e),s=an(e)&&!e.isDynamic?[]:void 0;return new Proxy(this,{get(t,n){if(n in t)return t[n];let r=parseInt(n.toString());if(Number.isSafeInteger(r))return s?s[r]??=e.get(t.buffer,o(r)):e.get(t.buffer,o(r))},set(t,n,r){let i=parseInt(n.toString());return Number.isSafeInteger(i)?(e.set(t.buffer,o(i),r),!0):!1}})}}for(let e of Object.getOwnPropertyNames(DataView.prototype))!e.startsWith(`get`)&&!e.startsWith(`set`)||Object.defineProperty(n.prototype,e,{enumerable:!1,configurable:!1,writable:!1,value:void 0});return n}function an(e){return typeof e==`function`&&`prototype`in e&&`fields`in e&&typeof e.fields==`object`&&xt(e)}var on=class{type;length;name;size;__structArray;__arrayType;__isArrayType=!0;constructor(e,t){this.type=e,this.length=t,this.name=`${e.name}[${t}]`,this.size=e.size*t,this.array=rn(this),this.__structArray=rn(e,t),this.__arrayType=e.array?e.array:this.__structArray}get=(e,t)=>Mt(this.type.name)&&t%this.type.size!==0?new this.__structArray(e,t,this.size):new this.__arrayType(e,t,this.size);set=(e,t,n)=>{if(this.length)for(let r=0;r<this.length;r++)this.type.set(e,t+r*this.type.size,n[r]);else{let r=t;for(let t=0;t<n.length;t++)this.type.set(e,r,n[t]),r+=an(this.type)&&this.type.isDynamic?k(n[t]):this.type.size}};array};Symbol.metadata??=Symbol.for(`Symbol.metadata`);function sn(e){e.metadata??={};let t=e.metadata.structInit??{};return e.metadata.structInit={fields:[...t.fields??[]]},e.metadata.structInit}function cn(...e){let t=e.reduce((e,t)=>({...e,...t}),{});return typeof this==`object`&&Object.assign(t,this),function(e,n){let r=sn(n),i=1,a=[],o=0,s=e=>{o=Math.ceil(o/e)*e};for(let e of r.fields)t.isPacked||s(e.alignment),t.isUnion?o=Math.max(o,e.type.size):(e.offset=o,o+=e.type.size),a.push(e),i=Math.max(i,e.alignment);t.alignment??=i,t.isPacked||s(t.alignment);class c extends e{static name=e.name;static size=o;static alignment=t.alignment;static isUnion=!!t.isUnion;static isDynamic=!!t.isDynamic;static fields=a;static get(e,t){return new this(e,t)}static set(e,t,n){let r=new Uint8Array(n.buffer,n.byteOffset,this.size),i=new Uint8Array(e,t,this.size);if(n.buffer!==e||n.byteOffset!==t)for(let e=0;e<this.size;e++)i[e]=r[e]}static[Symbol.toStringTag]=`[struct ${e.name}]`;constructor(...e){e.length||(e=[new ArrayBuffer(o),0,o]),super(...e),t.fastFields||Object.defineProperties(this,Jt(this.constructor))}}return Yt(c),n.addInitializer(function(){Object.defineProperty(c,"name",{value:e.name}),Ct(c)}),c}}cn.packed=cn.bind({isPacked:!0}),cn.align=function(e){return cn.bind({alignment:e})};function ln(e,t={}){return function(n,r){if(r.kind!=`accessor`)throw C(`EINVAL`,`Field must be an accessor`);let i=sn(r),a=Lt(r.name,e,t);return i.fields.push(a),{get(){return Zt(this,a)},set(e){Kt(this,a,e)}}}}function un(e){let t=Ot[Pt(e)];function n(n,r){return typeof n==`number`?ln(new on(t,n),{typeName:e,...r}):ln(t,{typeName:e})(n,r&&`name`in r?r:_(C(`EINVAL`,`Invalid decorator context object`)))}return n}var A=Object.fromEntries(jt.map(e=>[e,un(e)]));function dn(e){return e}dn.typed=function(e){return e};var fn=class e{type;init;constructor(t,n){this.type=t,this.init=n;let r=(r=>new e(new on(t,r),n));return Object.setPrototypeOf(r,new.target.prototype),Object.assign(r,{type:t,init:n}),r}align(t){return new e(this.type,{...this.init,align:t})}countedBy(t){return new e(this.type,{...this.init,countedBy:t})}bigEndian(){return new e(this.type,{...this.init,bigEndian:!0})}toInit(){return{type:this.type,...this.init}}$type(){return new e(this.type,this.init)}};function pn(e,t=0){return new fn(new on(e,t),{})}function mn(e,t,...n){let r=n.reduce((e,t)=>({...e,...t}),{});typeof this==`object`&&Object.assign(r,this);let i=1,a=0,o=e=>{a=Math.ceil(a/e)*e},s=[];for(let[e,n]of Object.entries(t)){if(typeof e==`number`)throw TypeError(`Field names can not be numbers`);let t=Lt(e,n);r.isPacked||o(t.alignment),r.isUnion?a=Math.max(a,t.type.size):(t.offset=a,a+=t.type.size),s.push(t),i=Math.max(i,t.alignment)}r.alignment??=i,r.isPacked||o(r.alignment);class c extends DataView{static name=e;static size=a;static alignment=r.alignment;static isUnion=!!r.isUnion;static isDynamic=!!r.isDynamic;static fields=s;static get(e,t){return new this(e,t)}static set(e,t,n){let r=new Uint8Array(n.buffer,n.byteOffset,this.size),i=new Uint8Array(e,t,this.size);if(n.buffer!==e||n.byteOffset!==t)for(let e=0;e<this.size;e++)i[e]=r[e]}static[Symbol.toStringTag]=`[struct ${e}]`;constructor(e=new ArrayBuffer(a),t,n){super(e,t,n??e.byteLength-(t??0)),r.fastFields||Object.defineProperties(this,Jt(this.constructor))}}for(let e of Object.getOwnPropertyNames(DataView.prototype))!e.startsWith(`get`)&&!e.startsWith(`set`)||Object.defineProperty(c.prototype,e,{enumerable:!1,configurable:!1,writable:!1,value:void 0});return Yt(c),Ct(c),c}mn.extend=function(e,t,n,...r){let i=r.reduce((e,t)=>({...e,...t}),{});typeof this==`object`&&Object.assign(i,this);let a=1,o=e.size,s=e=>{o=Math.ceil(o/e)*e},c=[...e.fields];for(let[e,t]of Object.entries(n)){if(typeof e==`number`)throw TypeError(`Field names can not be numbers`);let n=Lt(e,t);i.isPacked||s(n.alignment),i.isUnion?o=Math.max(o,n.type.size):(n.offset=o,o+=n.type.size),c.push(n),a=Math.max(a,n.alignment)}i.alignment??=a,i.isPacked||s(i.alignment);class l extends e{static name=t;static size=o;static alignment=i.alignment;static isUnion=!!i.isUnion;static isDynamic=!!i.isDynamic;static fields=c;static[Symbol.toStringTag]=`[struct ${t}]`}return Yt(l),Ct(l),l},mn.packed=mn.bind({isPacked:!0}),mn.align=function(e){return mn.bind({alignment:e})},mn.dynamic=mn.bind({isDynamic:!0}),Object.fromEntries(Object.entries(At).map(([e,t])=>[e,new fn(t,{typeName:e})]));function hn(e){return JSON.parse(ce(e),(e,t)=>e==``?t:typeof t==`string`?BigInt(t).toString(16).slice(0,Math.min(t.length,8)):t)}function gn(e){return v(JSON.stringify(e))}function _n(e,t){if(typeof e==`number`)return e;if(typeof e==`string`){let t=parseInt(e,8);if(!isNaN(t))return t}if(typeof t==`number`)return t;throw C(`EINVAL`,`Invalid mode: `+e?.toString())}var vn=2147483647;function yn(e){if(!(Number.isInteger(e)&&e>=0&&e<=vn))throw Object.assign(RangeError(`The value of "fd" is out of range. It must be >= 0 && <= ${vn}. Received ${e}`),{code:`ERR_OUT_OF_RANGE`})}function bn(e){let{code:t}=e??{};return t==`ENOENT`||t==`ENOTDIR`}function xn(e){if(e instanceof Date)return e.getTime();let t=Number(e);if(!Number.isFinite(t))throw C(`EINVAL`,`Invalid time.`);return t<0?Date.now():t*1e3}function j(e,t=!1){if(e instanceof URL){if(e.protocol!=`file:`)throw C(`EINVAL`,`URLs must use the file: protocol`);e=e.pathname}if(e=e.toString(),e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`\0`))throw C(`EINVAL`,`Path can not contain null character`);if(e.length==0)throw C(`EINVAL`,`Path can not be empty`);return e=e.replaceAll(/[/\\]+/g,`/`),t?e:jn.call(this,e)}function Sn(e,t=`utf8`,n,r=0){return typeof e!=`object`||!e?{encoding:typeof e==`string`?e:t??null,flag:n,mode:r}:{encoding:typeof e?.encoding==`string`?e.encoding:t??null,flag:typeof e?.flag==`string`?e.flag:n,mode:_n(`mode`in e?e?.mode:null,r)}}function Cn(e){let t=`\0GS\0`;return e=e.replace(/\*\*/g,t).replace(/\*/g,`\0S\0`).replace(/[.+^$(){}|[\]\\]/g,`\\$&`).replace(/\?/g,`.`).replaceAll(`/\0GS\0/`,`(?:/.*)?/`).replaceAll(t,`.*`).replaceAll(`\0S\0`,`[^/]*`),RegExp(`^${e}$`)}async function wn(e){let t=Promise.withResolvers();setTimeout(()=>t.reject(C(`ETIMEDOUT`)),500),e.on(`online`,t.resolve),await t.promise}function Tn(e){return`${j(e,!0)}${Date.now()}-${Math.random().toString(36).slice(2)}`}function En(){if(`Temporal`in globalThis&&globalThis.Temporal!==void 0)return globalThis.Temporal;throw C(`ENOTSUP`,`Temporal is not supported by this runtime`)}var Dn=t({basename:()=>Fn,dirname:()=>N,extname:()=>In,format:()=>Ln,formatExt:()=>An,isAbsolute:()=>Nn,join:()=>M,matchesGlob:()=>zn,normalize:()=>Mn,normalizeString:()=>kn,parse:()=>Rn,relative:()=>Pn,resolve:()=>jn,sep:()=>`/`});function On(e,t){if(typeof e!=`object`)throw TypeError(`"${t}" is not an object`)}function kn(e,t){let n=``,r=0,i=-1,a=0,o=`\0`;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else if(o==`/`)break;else o=`/`;if(o==`/`){if(i!==s-1&&a!==1){if(a===2){if(n.length<2||r!==2||n.at(-1)!==`.`||n.at(-2)!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}if(n.length!==0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/`+e.slice(i+1,s):n=e.slice(i+1,s),r=s-i-1}i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}function An(e){return e?`${e[0]===`.`?``:`.`}${e}`:``}function jn(...e){let t=``;for(let n of[...e.reverse(),D(this).pwd])if(n?.length&&(t=`${n}/${t}`,n.startsWith(`/`)))break;let n=t.startsWith(`/`);return t=kn(t,!n),n?`/${t}`:t.length?t:`/`}function Mn(e){if(!e.length)return`.`;let t=e[0]===`/`,n=e.at(-1)===`/`;return e=kn(e,!t),e.length?(n&&(e+=`/`),t?`/${e}`:e):t?`/`:n?`./`:`.`}function Nn(e){return e.startsWith(`/`)}function M(...e){if(!e.length)return`.`;let t=e.filter(e=>e).join(`/`);return t?.length?Mn(t):`.`}function Pn(e,t){if(e===t||(e=jn.call(this,e),t=jn.call(this,t),e===t))return``;let n=e.length,r=n-1,i=t.length-1,a=r<i?r:i,o=-1,s=0;for(;s<a;s++){let n=e[1+s];if(n!==t[1+s])break;n===`/`&&(o=s)}if(s===a){if(i>a){if(t[1+s]===`/`)return t.slice(1+s+1);if(s===0)return t.slice(1+s)}else r>a&&(e[1+s]===`/`?o=s:s===0&&(o=0))}let c=``;for(s=1+o+1;s<=n;++s)(s===n||e[s]===`/`)&&(c+=c.length===0?`..`:`/..`);return`${c}${t.slice(1+o)}`}function N(e){if(e.length===0)return`.`;let t=e[0]===`/`,n=-1,r=!0;for(let t=e.length-1;t>=1;--t)if(e[t]===`/`){if(!r){n=t;break}}else r=!1;return n===-1?t?`/`:`.`:t&&n===1?`//`:e.slice(0,n)}function Fn(e,t){let n=0,r=-1,i=!0;if(t!==void 0&&t.length>0&&t.length<=e.length){if(t===e)return``;let a=t.length-1,o=-1;for(let s=e.length-1;s>=0;--s)if(e[s]===`/`){if(!i){n=s+1;break}}else o===-1&&(i=!1,o=s+1),a>=0&&(e[s]===t[a]?--a===-1&&(r=s):(a=-1,r=o));return n===r?r=o:r===-1&&(r=e.length),e.slice(n,r)}for(let t=e.length-1;t>=0;--t)if(e[t]===`/`){if(!i){n=t+1;break}}else r===-1&&(i=!1,r=t+1);return r===-1?``:e.slice(n,r)}function In(e){let t=-1,n=0,r=-1,i=!0,a=0;for(let o=e.length-1;o>=0;--o){if(e[o]===`/`){if(!i){n=o+1;break}continue}r===-1&&(i=!1,r=o+1),e[o]===`.`?t===-1?t=o:a!==1&&(a=1):t!==-1&&(a=-1)}return t===-1||r===-1||a===0||a===1&&t===r-1&&t===n+1?``:e.slice(t,r)}function Ln(e){On(e,`pathObject`);let t=e.dir||e.root,n=e.base||`${e.name||``}${An(e.ext)}`;return t?t===e.root?`${t}${n}`:`${t}/${n}`:n}function Rn(e){let t=e[0]===`/`,n={root:t?`/`:``,dir:``,base:``,ext:``,name:``};if(e.length===0)return n;let r=+!!t,i=-1,a=0,o=-1,s=!0,c=e.length-1,l=0;for(;c>=r;--c){if(e[c]===`/`){if(!s){a=c+1;break}continue}o===-1&&(s=!1,o=c+1),e[c]===`.`?i===-1?i=c:l!==1&&(l=1):i!==-1&&(l=-1)}if(o!==-1){let r=a===0&&t?1:a;i===-1||l===0||l===1&&i===o-1&&i===a+1?n.base=n.name=e.slice(r,o):(n.name=e.slice(r,i),n.base=e.slice(r,o),n.ext=e.slice(i,o))}return a>0?n.dir=e.slice(0,a-1):t&&(n.dir=`/`),n}function zn(e,t){return Cn(e).test(t)}var Bn=BigInt(1e6),Vn=class{_convert(e){return this._isBigint?BigInt(e):Number(e)}get blocks(){return this._convert(Math.ceil(Number(this.size)/512))}set blocks(e){}mode;dev=this._convert(0);ino=this._convert(0);rdev=this._convert(0);nlink=this._convert(1);blksize=this._convert(4096);uid=this._convert(0);gid=this._convert(0);atimeMs;get atime(){return new Date(Number(this.atimeMs))}set atime(e){this.atimeMs=this._convert(e.getTime())}get atimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.atimeMs))}set atimeInstant(e){this.atimeMs=this._convert(e.epochMilliseconds)}mtimeMs;get mtime(){return new Date(Number(this.mtimeMs))}set mtime(e){this.mtimeMs=this._convert(e.getTime())}get mtimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.mtimeMs))}set mtimeInstant(e){this.mtimeMs=this._convert(e.epochMilliseconds)}ctimeMs;get ctime(){return new Date(Number(this.ctimeMs))}set ctime(e){this.ctimeMs=this._convert(e.getTime())}get ctimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.ctimeMs))}set ctimeInstant(e){this.ctimeMs=this._convert(e.epochMilliseconds)}birthtimeMs;get birthtime(){return new Date(Number(this.birthtimeMs))}set birthtime(e){this.birthtimeMs=this._convert(e.getTime())}get birthtimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.birthtimeMs))}set birthtimeInstant(e){this.birthtimeMs=this._convert(e.epochMilliseconds)}size;data;flags;version;constructor({atimeMs:e,mtimeMs:t,ctimeMs:n,birthtimeMs:r,uid:i,gid:a,size:o,mode:s,ino:c,...l}={}){let u=Date.now();this.atimeMs=this._convert(e??u),this.mtimeMs=this._convert(t??u),this.ctimeMs=this._convert(n??u),this.birthtimeMs=this._convert(r??u),this.uid=this._convert(i??0),this.gid=this._convert(a??0),this.size=this._convert(o??0),this.ino=this._convert(c??0),this.mode=this._convert(s??0),this.mode&61440||(this.mode|=this._convert(ft)),Object.assign(this,l)}isFile(){return(this.mode&O)===ft}isDirectory(){return(this.mode&O)===mt}isSymbolicLink(){return(this.mode&O)===dt}isSocket(){return(this.mode&O)===ut}isBlockDevice(){return(this.mode&O)===pt}isCharacterDevice(){return(this.mode&O)===ht}isFIFO(){return(this.mode&O)===gt}toJSON(){return p(this,...Zn,`dev`,`blksize`)}hasAccess(e,t){return z(t,this._isBigint?new Hn(this):this,e)}get atimeNs(){return BigInt(this.atimeMs)*Bn}get mtimeNs(){return BigInt(this.mtimeMs)*Bn}get ctimeNs(){return BigInt(this.ctimeMs)*Bn}get birthtimeNs(){return BigInt(this.birthtimeMs)*Bn}},Hn=class extends Vn{_isBigint=!1},Un=class extends Vn{_isBigint=!0};function Wn(e,t){return e.size==t.size&&+e.atime==+t.atime&&+e.mtime==+t.mtime&&+e.ctime==+t.ctime&&e.mode==t.mode}var Gn=class{type=525687744115;bsize=4096;blocks=0;bfree=0;bavail=0;files=yt;frsize=4096;ffree=yt},Kn=class{type=BigInt(`0x7a656e6673`);bsize=BigInt(4096);blocks=BigInt(0);bfree=BigInt(0);bavail=BigInt(0);files=BigInt(yt);frsize=BigInt(4096);ffree=BigInt(yt)},P=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},F=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},qn=0,Jn=3968,Yn=(()=>{var e,t;let n=[cn.packed()],r,i=[],a,o=dn.typed(Uint8Array),s,c=[],l=[],u,d=[],f=[];var p=class extends o{static{a=this}static{let m=typeof Symbol==`function`&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;s=[(e=A).uint32.bind(e)],u=[(t=A).uint32.bind(t)],P(this,null,s,{kind:`accessor`,name:`keySize`,static:!1,private:!1,access:{has:e=>`keySize`in e,get:e=>e.keySize,set:(e,t)=>{e.keySize=t}},metadata:m},c,l),P(this,null,u,{kind:`accessor`,name:`valueSize`,static:!1,private:!1,access:{has:e=>`valueSize`in e,get:e=>e.valueSize,set:(e,t)=>{e.valueSize=t}},metadata:m},d,f),P(null,r={value:a},n,{kind:`class`,name:a.name,metadata:m},null,i),p=a=r.value,m&&Object.defineProperty(a,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:m})}static name=`Attribute`;#e=F(this,c,void 0);get keySize(){return this.#e}set keySize(e){this.#e=e}#t=(F(this,l),F(this,d,void 0));get valueSize(){return this.#t}set valueSize(e){this.#t=e}get name(){return ce(this.subarray(8,8+this.keySize))}set name(e){let t=v(e);if(8+t.length+this.valueSize>Jn)throw C(`EOVERFLOW`);this.set(t,8),this.keySize=t.length}get value(){return this.subarray(8+this.keySize,this.size)}set value(e){if(8+this.keySize+e.length>Jn)throw C(`EOVERFLOW`);this.valueSize=e.length,this.set(e,8+this.keySize)}get size(){return 8+this.keySize+this.valueSize}constructor(){super(...arguments),F(this,f)}static{F(a,i)}};return a})(),Xn=(()=>{var e;let t=[cn.packed()],n,r=[],i,o=dn(a),s,c=[],l=[];var u=class extends o{static{i=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;s=[(e=A).uint32.bind(e)],P(this,null,s,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},c,l),P(null,n={value:i},t,{kind:`class`,name:i.name,metadata:a},null,r),u=i=n.value,a&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`Attributes`;#e=F(this,c,void 0);get size(){return this.#e}set size(e){this.#e=e}get byteSize(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);e+=t.size}return e}has(e){let t=this.byteOffset+k(this);for(let n=0;n<this.size;n++){let n=new Yn(this.buffer,t);if(n.name==e)return!0;t+=n.size}return!1}get(e){let t=this.byteOffset+k(this);for(let n=0;n<this.size;n++){let n=new Yn(this.buffer,t);if(n.name==e)return n.value;t+=n.size}}set(e,t){let n=this.byteOffset+k(this),r;for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,n);t.name==e&&(r=[n,t.size]),n+=t.size}let i=new Uint8Array(this.buffer);if(r){let[e,t]=r;n-=t,i.copyWithin(e,e+t,n+t),i.fill(0,n,n+t),this.size--}let a=new Yn(this.buffer,n);a.name=e,a.value=t,this.size++}remove(e){let t=this.byteOffset+k(this),n;for(let r=0;r<this.size;r++){let r=new Yn(this.buffer,t);r.name==e&&(n=[t,r.size]),t+=r.size}if(!n)return!1;let[r,i]=n,a=new Uint8Array(this.buffer);return a.copyWithin(r,r+i,t),a.fill(0,t-i,t),this.size--,!0}copyFrom(e){let{byteSize:t}=e;new Uint8Array(this.buffer,this.byteOffset,t).set(new Uint8Array(e.buffer,e.byteOffset,t))}*keys(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);yield t.name,e+=t.size}}*values(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);yield t.value,e+=t.size}}*entries(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Yn(this.buffer,e);yield[t.name,t.value],e+=t.size}}constructor(){super(...arguments),F(this,l)}static{F(i,r)}};return i})(),Zn=[`ino`,`data`,`size`,`mode`,`flags`,`nlink`,`uid`,`gid`,`atimeMs`,`birthtimeMs`,`mtimeMs`,`ctimeMs`,`version`,`rdev`],Qn=5,I;(function(e){e[e.Sync=1]=`Sync`,e[e.NoAtime=2]=`NoAtime`,e[e.Append=4]=`Append`,e[e.Immutable=8]=`Immutable`,e[e.Dead=16]=`Dead`,e[e.NoQuota=32]=`NoQuota`,e[e.Dirsync=64]=`Dirsync`,e[e.NoCMtime=128]=`NoCMtime`,e[e.SwapFile=256]=`SwapFile`,e[e.Private=512]=`Private`,e[e.IMA=1024]=`IMA`,e[e.AutoMount=2048]=`AutoMount`,e[e.NoSec=4096]=`NoSec`,e[e.DAX=8192]=`DAX`,e[e.Encrypted=16384]=`Encrypted`,e[e.CaseFold=32768]=`CaseFold`,e[e.Verity=65536]=`Verity`,e[e.KernelFile=131072]=`KernelFile`})(I||={});var $n=253951,er=229631,L=(()=>{var e,t,n,r,i,o,s,c,l,u,d,f,m,h,g,ee,te;let _=[cn.packed()],ne,re=[],ie,ae=dn(a),oe,v=[],se=[],ce,le=[],ue=[],de,fe=[],y=[],pe,b=[],x=[],S,me=[],he=[],w,ge=[],_e=[],ve,ye=[],be=[],xe,Se=[],T=[],we,Te=[],Ee=[],De,Oe=[],ke=[],Ae,je=[],Me=[],Ne,Pe=[],Fe=[],Ie,Le=[],Re=[],ze,Be=[],Ve=[],He,Ue=[],We=[],Ge,Ke=[],qe=[],Je,Ye=[],Xe=[],Ze,D=[],Qe=[],$e,et=[],tt=[],nt,rt=[],it=[];var at=class extends ae{static{ie=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(ae[Symbol.metadata]??null):void 0;oe=[(e=A).uint32.bind(e)],ce=[(t=A).uint32.bind(t)],de=[(n=A).uint32.bind(n)],pe=[(r=A).uint16.bind(r)],S=[(i=A).uint32.bind(i)],w=[(o=A).uint32.bind(o)],ve=[(s=A).uint32.bind(s)],xe=[(c=A).float64.bind(c)],we=[(l=A).float64.bind(l)],De=[(u=A).float64.bind(u)],Ae=[(d=A).float64.bind(d)],Ne=[(f=A).uint32.bind(f)],Ie=[(m=A).uint32.bind(m)],ze=[(h=A).uint32.bind(h)],He=[(g=A).uint16.bind(g)],Ge=[(ee=A).uint32.bind(ee)],Je=[(te=A).uint32.bind(te)],Ze=[A.uint8(44)],$e=[ln(Xn)],nt=[A.uint8(Jn)],P(this,null,oe,{kind:`accessor`,name:`data`,static:!1,private:!1,access:{has:e=>`data`in e,get:e=>e.data,set:(e,t)=>{e.data=t}},metadata:a},v,se),P(this,null,ce,{kind:`accessor`,name:`__data_old`,static:!1,private:!1,access:{has:e=>`__data_old`in e,get:e=>e.__data_old,set:(e,t)=>{e.__data_old=t}},metadata:a},le,ue),P(this,null,de,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},fe,y),P(this,null,pe,{kind:`accessor`,name:`mode`,static:!1,private:!1,access:{has:e=>`mode`in e,get:e=>e.mode,set:(e,t)=>{e.mode=t}},metadata:a},b,x),P(this,null,S,{kind:`accessor`,name:`nlink`,static:!1,private:!1,access:{has:e=>`nlink`in e,get:e=>e.nlink,set:(e,t)=>{e.nlink=t}},metadata:a},me,he),P(this,null,w,{kind:`accessor`,name:`uid`,static:!1,private:!1,access:{has:e=>`uid`in e,get:e=>e.uid,set:(e,t)=>{e.uid=t}},metadata:a},ge,_e),P(this,null,ve,{kind:`accessor`,name:`gid`,static:!1,private:!1,access:{has:e=>`gid`in e,get:e=>e.gid,set:(e,t)=>{e.gid=t}},metadata:a},ye,be),P(this,null,xe,{kind:`accessor`,name:`atimeMs`,static:!1,private:!1,access:{has:e=>`atimeMs`in e,get:e=>e.atimeMs,set:(e,t)=>{e.atimeMs=t}},metadata:a},Se,T),P(this,null,we,{kind:`accessor`,name:`birthtimeMs`,static:!1,private:!1,access:{has:e=>`birthtimeMs`in e,get:e=>e.birthtimeMs,set:(e,t)=>{e.birthtimeMs=t}},metadata:a},Te,Ee),P(this,null,De,{kind:`accessor`,name:`mtimeMs`,static:!1,private:!1,access:{has:e=>`mtimeMs`in e,get:e=>e.mtimeMs,set:(e,t)=>{e.mtimeMs=t}},metadata:a},Oe,ke),P(this,null,Ae,{kind:`accessor`,name:`ctimeMs`,static:!1,private:!1,access:{has:e=>`ctimeMs`in e,get:e=>e.ctimeMs,set:(e,t)=>{e.ctimeMs=t}},metadata:a},je,Me),P(this,null,Ne,{kind:`accessor`,name:`ino`,static:!1,private:!1,access:{has:e=>`ino`in e,get:e=>e.ino,set:(e,t)=>{e.ino=t}},metadata:a},Pe,Fe),P(this,null,Ie,{kind:`accessor`,name:`__ino_old`,static:!1,private:!1,access:{has:e=>`__ino_old`in e,get:e=>e.__ino_old,set:(e,t)=>{e.__ino_old=t}},metadata:a},Le,Re),P(this,null,ze,{kind:`accessor`,name:`flags`,static:!1,private:!1,access:{has:e=>`flags`in e,get:e=>e.flags,set:(e,t)=>{e.flags=t}},metadata:a},Be,Ve),P(this,null,He,{kind:`accessor`,name:`__after_flags`,static:!1,private:!1,access:{has:e=>`__after_flags`in e,get:e=>e.__after_flags,set:(e,t)=>{e.__after_flags=t}},metadata:a},Ue,We),P(this,null,Ge,{kind:`accessor`,name:`version`,static:!1,private:!1,access:{has:e=>`version`in e,get:e=>e.version,set:(e,t)=>{e.version=t}},metadata:a},Ke,qe),P(this,null,Je,{kind:`accessor`,name:`rdev`,static:!1,private:!1,access:{has:e=>`rdev`in e,get:e=>e.rdev,set:(e,t)=>{e.rdev=t}},metadata:a},Ye,Xe),P(this,null,Ze,{kind:`accessor`,name:`__padding`,static:!1,private:!1,access:{has:e=>`__padding`in e,get:e=>e.__padding,set:(e,t)=>{e.__padding=t}},metadata:a},D,Qe),P(this,null,$e,{kind:`accessor`,name:`attributes`,static:!1,private:!1,access:{has:e=>`attributes`in e,get:e=>e.attributes,set:(e,t)=>{e.attributes=t}},metadata:a},et,tt),P(this,null,nt,{kind:`accessor`,name:`__data`,static:!1,private:!1,access:{has:e=>`__data`in e,get:e=>e.__data,set:(e,t)=>{e.__data=t}},metadata:a},rt,it),P(null,ne={value:ie},_,{kind:`class`,name:ie.name,metadata:a},null,re),at=ie=ne.value,a&&Object.defineProperty(ie,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`Inode`;constructor(...e){let t={};if(typeof e[0]==`object`&&e[0]!==null&&!ArrayBuffer.isView(e[0])&&(t=e[0],e=[k(at)]),e[0]instanceof at&&(e=[new Uint8Array(e[0].buffer,e[0].byteOffset,e[0].byteLength)]),super(...e),F(this,it),this.byteLength<k(at))throw Ce(C(`EIO`,`Buffer is too small to create an inode (${this.byteLength} bytes)`));Object.assign(this,t),this.atimeMs||=Date.now(),this.mtimeMs||=Date.now(),this.ctimeMs||=Date.now(),this.birthtimeMs||=Date.now(),this.ino&&!this.nlink&&E(`Inode ${this.ino} has an nlink of 0`)}#e=F(this,v,void 0);get data(){return this.#e}set data(e){this.#e=e}#t=(F(this,se),F(this,le,void 0));get __data_old(){return this.#t}set __data_old(e){this.#t=e}#n=(F(this,ue),F(this,fe,void 0));get size(){return this.#n}set size(e){this.#n=e}#r=(F(this,y),F(this,b,void 0));get mode(){return this.#r}set mode(e){this.#r=e}#i=(F(this,x),F(this,me,void 0));get nlink(){return this.#i}set nlink(e){this.#i=e}#a=(F(this,he),F(this,ge,void 0));get uid(){return this.#a}set uid(e){this.#a=e}#o=(F(this,_e),F(this,ye,void 0));get gid(){return this.#o}set gid(e){this.#o=e}#s=(F(this,be),F(this,Se,void 0));get atimeMs(){return this.#s}set atimeMs(e){this.#s=e}#c=(F(this,T),F(this,Te,void 0));get birthtimeMs(){return this.#c}set birthtimeMs(e){this.#c=e}#l=(F(this,Ee),F(this,Oe,void 0));get mtimeMs(){return this.#l}set mtimeMs(e){this.#l=e}#u=(F(this,ke),F(this,je,void 0));get ctimeMs(){return this.#u}set ctimeMs(e){this.#u=e}#d=(F(this,Me),F(this,Pe,void 0));get ino(){return this.#d}set ino(e){this.#d=e}#f=(F(this,Fe),F(this,Le,void 0));get __ino_old(){return this.#f}set __ino_old(e){this.#f=e}#p=(F(this,Re),F(this,Be,void 0));get flags(){return this.#p}set flags(e){this.#p=e}#m=(F(this,Ve),F(this,Ue,void 0));get __after_flags(){return this.#m}set __after_flags(e){this.#m=e}#h=(F(this,We),F(this,Ke,void 0));get version(){return this.#h}set version(e){this.#h=e}#g=(F(this,qe),F(this,Ye,void 0));get rdev(){return this.#g}set rdev(e){this.#g=e}#_=(F(this,Xe),F(this,D,void 0));get __padding(){return this.#_}set __padding(e){this.#_=e}#v=(F(this,Qe),F(this,et,void 0));get attributes(){return this.#v}set attributes(e){this.#v=e}#y=(F(this,tt),F(this,rt,void 0));get __data(){return this.#y}set __data(e){this.#y=e}toString(){return`<Inode ${this.ino}>`}toJSON(){return{...p(this,Zn),attributes:this.attributes}}toStats(){return new Hn(this)}update(e){if(!e)return!1;let t=!1;for(let n of Zn)e[n]!==void 0&&n!=`ino`&&n!=`data`&&this[n]!==e[n]&&(n==`atimeMs`&&this.flags&I.NoAtime||(this[n]=e[n],t=!0));return e.attributes&&(this.attributes.copyFrom(e.attributes),t=!0),t&&(this.ctimeMs=Date.now()),t}static{F(ie,re)}};return at=ie})();function tr(e){return(e.mode&O)===ft}function R(e){return(e.mode&O)===mt}function nr(e){return(e.mode&O)===dt}function rr(e){return(e.mode&O)===ut}function ir(e){return(e.mode&O)===pt}function ar(e){return(e.mode&O)===ht}function or(e){return(e.mode&O)===gt}function z(e,t,n){let{credentials:r}=D(e);if(nr(t))return!0;if(r.euid===0||r.egid===0)return!(n&1)||R(t)||!!(t.mode&73);let i=0;return r.uid===t.uid&&(t.mode&256&&(i|=4),t.mode&128&&(i|=2),t.mode&64&&(i|=1)),(r.gid===t.gid||r.groups.includes(Number(t.gid)))&&(t.mode&32&&(i|=4),t.mode&16&&(i|=2),t.mode&8&&(i|=1)),t.mode&4&&(i|=4),t.mode&2&&(i|=2),t.mode&1&&(i|=1),(i&n)===n}function sr(e,t,n){let r=!0;return!isNaN(t)&&t>=0&&t<4294967295?e.uid=t:r=!1,!isNaN(n)&&n>=0&&n<4294967295?e.gid=n:r=!1,r}var cr=1,lr=class e extends Map{maxSize=yt;toJSON(){return{version:1,maxSize:this.maxSize,entries:Object.fromEntries(Array.from(this).map(([e,t])=>[e,t.toJSON()]))}}toString(){return JSON.stringify(this.toJSON())}clear(){super.clear(),this.#e=0}get byteSize(){let e=this.size*k(L);for(let t of this.values())e+=t.size;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.byteSize}}pathOf(e){for(let[t,n]of this)if(n.ino==e||n.data==e)return t}getByID(e){return this.entryByID(e)?.inode}entryByID(e){for(let[t,n]of this)if(n.ino==e||n.data==e)return{path:t,inode:n}}directoryEntries(e){let t=this.get(e);if(!t)throw C(`ENOENT`);if((t.mode&61440)!=16384)throw C(`ENOTDIR`);let n={};for(let t of this.keys())N(t)==e&&t!=e&&(n[Fn(t)]=this.get(t).ino);return n}#e=0;_alloc(){return this.#e||=Array.from(this.values()).reduce((e,t)=>Math.max(e,t.ino,t.data),0),this.#e++,this.#e++}directories(){let e=new Map;for(let[t,n]of this){if((n.mode&61440)!=16384)continue;let r={};for(let e of this.keys())N(e)==t&&e!=t&&(r[Fn(e)]=this.get(e).ino);e.set(t,r)}return e}fromJSON(e){if(e.version!=1)throw C(`EINVAL`,`Index version mismatch`);this.clear();for(let[t,n]of Object.entries(e.entries))n.data??=ie(1,yt),t==`/`&&(n.ino=0),this.set(t,new L(n));return this}static parse(t){if(!h(t))throw C(`EINVAL`,`Invalid JSON`);let n=JSON.parse(t),r=new e;return r.fromJSON(n),r}},ur;(function(e){e[e.SecureRm=1]=`SecureRm`,e[e.Undelete=2]=`Undelete`,e[e.Compress=4]=`Compress`,e[e.Sync=8]=`Sync`,e[e.Immutable=16]=`Immutable`,e[e.Append=32]=`Append`,e[e.NoDump=64]=`NoDump`,e[e.NoAtime=128]=`NoAtime`,e[e.Dirty=256]=`Dirty`,e[e.CompressBlk=512]=`CompressBlk`,e[e.NoCompress=1024]=`NoCompress`,e[e.Encrypt=2048]=`Encrypt`,e[e.Btree=4096]=`Btree`,e[e.Index=4096]=`Index`,e[e.IMagic=8192]=`IMagic`,e[e.JournalData=16384]=`JournalData`,e[e.NoTail=32768]=`NoTail`,e[e.DirSync=65536]=`DirSync`,e[e.TopDir=131072]=`TopDir`,e[e.HugeFile=262144]=`HugeFile`,e[e.Extent=524288]=`Extent`,e[e.Verity=1048576]=`Verity`,e[e.EaInode=2097152]=`EaInode`,e[e.EofBlocks=4194304]=`EofBlocks`,e[e.NoCow=8388608]=`NoCow`,e[e.Dax=33554432]=`Dax`,e[e.InlineData=268435456]=`InlineData`,e[e.ProjInherit=536870912]=`ProjInherit`,e[e.CaseFold=1073741824]=`CaseFold`,e[e.Reserved=2147483648]=`Reserved`})(ur||={});var dr=[[ur.Sync,I.Sync],[ur.Immutable,I.Immutable],[ur.Append,I.Append],[ur.NoAtime,I.NoAtime],[ur.Encrypt,I.Encrypted],[ur.DirSync,I.Dirsync],[ur.Verity,I.Verity],[ur.Dax,I.DAX],[ur.CaseFold,I.CaseFold]],fr=dr.reduce((e,[t])=>e|t,0),pr=dr.reduce((e,[,t])=>e|t,0);function mr(e){let t=0;for(let[n,r]of dr)e&r&&(t|=n);return t}function hr(e,t){if(t&~fr)throw C(`ENOTSUP`,`Unsupported file flags`);let n=0;for(let[e,r]of dr)t&e&&(n|=r);e.inode.flags=(e.inode.flags||0)&~pr|n}var gr;(function(e){e[e.GetFlags=2148034049]=`GetFlags`,e[e.SetFlags=1074292226]=`SetFlags`,e[e.GetVersion=2148038145]=`GetVersion`,e[e.SetVersion=1074296322]=`SetVersion`,e[e.Fiemap=3223348747]=`Fiemap`,e[e.GetXattr=2149341215]=`GetXattr`,e[e.SetXattr=1075599392]=`SetXattr`,e[e.GetLabel=2164298801]=`GetLabel`,e[e.SetLabel=1090556978]=`SetLabel`,e[e.GetUUID=2148603136]=`GetUUID`,e[e.GetSysfsPath=2155943169]=`GetSysfsPath`})(gr||={});var _r;(function(e){e[e.GetFlags=2147771905]=`GetFlags`,e[e.SetFlags=1074030082]=`SetFlags`,e[e.GetVersion=2147776001]=`GetVersion`,e[e.SetVersion=1074034178]=`SetVersion`})(_r||={});var vr={[gr.GetFlags](e){if(typeof e.inode.flags!=`number`)throw C(`ENOTTY`);return mr(e.inode.flags)},[_r.GetFlags](e){if(typeof e.inode.flags!=`number`)throw C(`ENOTTY`);return mr(e.inode.flags)},[gr.GetVersion](e){if(typeof e.inode.version!=`number`)throw C(`ENOTTY`);return e.inode.version},[_r.GetVersion](e){if(typeof e.inode.version!=`number`)throw C(`ENOTTY`);return e.inode.version},[gr.Fiemap](){throw C(`ENOTSUP`)},[gr.GetXattr](){throw C(`ENOTSUP`)},[gr.SetXattr](){throw C(`ENOTSUP`)},[gr.GetLabel](e){return e.fs.label},[gr.SetLabel](e,t){e.fs.label=t},[gr.GetUUID](e){return e.fs.uuid},[gr.GetSysfsPath](){throw C(`ENOTSUP`)}},yr={...vr,async[gr.SetFlags](e,t){hr(e,t),await e.fs.touch(e.path,e.inode)},async[_r.SetFlags](e,t){hr(e,t),await e.fs.touch(e.path,e.inode)},async[gr.SetVersion](e,t){e.inode.version=t,await e.fs.touch(e.path,e.inode)},async[_r.SetVersion](e,t){e.inode.version=t,await e.fs.touch(e.path,e.inode)}},br={...vr,[gr.SetFlags](e,t){hr(e,t),e.fs.touchSync(e.path,e.inode)},[_r.SetFlags](e,t){hr(e,t),e.fs.touchSync(e.path,e.inode)},[gr.SetVersion](e,t){e.inode.version=t,e.fs.touchSync(e.path,e.inode)},[_r.SetVersion](e,t){e.inode.version=t,e.fs.touchSync(e.path,e.inode)}},xr=65536,Sr=class e{type;name;label;_mountPoint;_uuid=crypto.randomUUID();get uuid(){return this._uuid}attributes=new Map;constructor(t,n){this.type=t,this.name=n,this.streamRead===e.prototype.streamRead&&this.attributes.set(`default_stream_read`),this.streamWrite===e.prototype.streamWrite&&this.attributes.set(`default_stream_write`)}toString(){return`${this.name} ${this.label?JSON.stringify(this.label):``} (${this._mountPoint?`mounted on `+this._mountPoint:`unmounted`})`}usage(){return{totalSpace:0,freeSpace:0}}async ready(){}readySync(){if(this.ready!==e.prototype.ready)throw C(`EAGAIN`)}async exists(e){try{return await this.stat(e),!0}catch(e){return e.code!=`ENOENT`}}existsSync(e){try{return this.statSync(e),!0}catch(e){return e.code!=`ENOENT`}}streamRead(e,t){let{chunkSize:n=xr}=t,r=t.start??0,i=t.end;return new ReadableStream({pull:async t=>{if(i??=(await this.stat(e)).size,r>=i){t.close();return}let a=new Uint8Array(Math.min(n,i-r));await this.read(e,a,r,r+a.byteLength),r+=a.byteLength,t.enqueue(a),r>=i&&t.close()},type:`bytes`})}streamWrite(e,t){let n=t.start??0;return new WritableStream({write:async(t,r)=>{let i=!1,a=e=>{i=!0,r.error(e)},{size:o}=await this.stat(e);await this.write(e,t,n).catch(a),!i&&(n+=t.byteLength,await this.touch(e,{mtimeMs:Date.now(),size:Math.max(o,n)}).catch(a))}})}async ioctl(e,t,...n){let r=yr[t];if(!r)throw C(`ENOTTY`);return await r(e,...n)}ioctlSync(e,t,...n){let r=br[t];if(!r)throw C(`ENOTTY`);return r(e,...n)}};Promise.withResolvers??=(E(`Using a polyfill of Promise.withResolvers`),function(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}),Symbol.dispose??=(E(`Using a polyfill of Symbol.dispose`),Symbol(`Symbol.dispose`)),Symbol.asyncDispose??=(E(`Using a polyfill of Symbol.asyncDispose`),Symbol(`Symbol.asyncDispose`)),globalThis.crypto.randomUUID??=(E(`Using a polyfill of crypto.randomUUID`),function(){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}),Uint8Array.prototype.toBase64??=(E(`Using a polyfill of Uint8Array.prototype.toBase64`),function(){return btoa(String.fromCharCode(...this))}),Uint8Array.fromBase64??=(E(`Using a polyfill of Uint8Array.fromBase64`),function(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}),Uint8Array.prototype.toHex??=(E(`Using a polyfill of Uint8Array.prototype.toHex`),function(){return Array.from(this).map(e=>e.toString(16).padStart(2,`0`)).join(``)}),Uint8Array.fromHex??=(E(`Using a polyfill of Uint8Array.fromHex`),function(e){let t=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)t[n/2]=parseInt(e.slice(n,n+2),16);return t}),Array.fromAsync??=(E(`Using a polyfill of Array.fromAsync`),async function(e){let t=[];for await(let n of e)t.push(n);return t});var Cr=class{store;constructor(e){this.store=e}},wr=class extends Cr{async get(e,t,n){return this.getSync(e,t,n)}async set(e,t,n){return this.setSync(e,t,n)}async remove(e){return this.removeSync(e)}},Tr=class extends Cr{asyncDone=Promise.resolve();async(e){this.asyncDone=this.asyncDone.then(()=>e)}_cached(e,t){this.store.cache??=new Map;let n=this.store.cache.get(e);return n?(t&&(n.size=t.size),n):t?new s(e,t.size,{},this.store.cache):void 0}getSync(e,t,n){let r=this._cached(e);if(!r)return;n??=r.size;let i=r.missing(t,n);for(let{start:t,end:n}of i)this.async(this.get(e,t,n));if(i.length)throw C(`EAGAIN`);let a=r.regionAt(t);if(!a){E(`Missing cache region for `+e);return}return a.data.subarray(t-a.offset,n-a.offset)}setSync(e,t,n){this.async(this.set(e,t,n))}removeSync(e){this.async(this.remove(e)),this.store.cache?.delete(e)}},Er=class{raw;fs;done=!1;flag(e){return this.raw.store.flags?.includes(e)??!1}constructor(e,t){this.raw=e,this.fs=t}originalData=new Map;modifiedKeys=new Set;keys(){return this.raw.keys()}async get(e,t=0,n){let r=await this.raw.get(e,t,n);return this.stash(e),r}getSync(e,t=0,n){let r=this.raw.getSync(e,t,n);return this.stash(e),r}async set(e,t,n=0){await this.markModified(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);await this.raw.set(e,r,n)}setSync(e,t,n=0){this.markModifiedSync(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);this.raw.setSync(e,r,n)}async remove(e){await this.markModified(e,0,void 0),await this.raw.remove(e)}removeSync(e){this.markModifiedSync(e,0,void 0),this.raw.removeSync(e)}commit(){return this.done=!0,Promise.resolve()}commitSync(){this.done=!0}async abort(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){await this.raw.remove(e),this.fs._remove(e);continue}for(let n of t.reverse())await this.raw.set(e,n.data,n.offset)}this.done=!0}}abortSync(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){this.raw.removeSync(e),this.fs._remove(e);continue}for(let n of t.reverse())this.raw.setSync(e,n.data,n.offset)}this.done=!0}}async[Symbol.asyncDispose](){this.done||await this.abort()}[Symbol.dispose](){this.done||this.abortSync()}stash(e,t,n=0){this.originalData.has(e)||this.originalData.set(e,[]),this.originalData.get(e).push({data:t,offset:n})}async markModified(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,await this.raw.get(e,t,r),t)}catch(n){if(!(this.raw instanceof Tr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,await this.raw.get(e,n.start,n.end),n.start)}}markModifiedSync(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,this.raw.getSync(e,t,r),t)}catch(n){if(!(this.raw instanceof Tr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,this.raw.getSync(e,n.start,n.end),n.start)}}},B=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},V=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),Dr=class extends Sr{store;_ids=new Map([[`/`,0]]);_paths=new Map([[0,new Set(`/`)]]);_path(e){let[t]=this._paths.get(e)??[];return t}_add(e,t){this._paths.has(e)||this._paths.set(e,new Set),this._paths.get(e).add(t),this._ids.set(t,e)}_remove(e){for(let t of this._paths.get(e)??[])this._ids.delete(t);this._paths.delete(e)}_move(e,t){let n=[];for(let[r,i]of this._ids){let a=Pn(e,r);if(a.startsWith(`..`))continue;let o=M(t,a);o.endsWith(`/`)&&(o=o.slice(0,-1)),n.push({oldKey:r,newKey:o,ino:i})}for(let{oldKey:e,newKey:t,ino:r}of n){this._ids.delete(e),this._ids.set(t,r);let n=this._paths.get(r);if(!n){E(`Missing paths in table for ino `+r);continue}n.delete(e),n.add(t)}}_initialized=!1;async ready(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),await this.checkRoot(),await this._populate(),!0)}readySync(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),this.checkRootSync(),this._populateSync(),!0)}constructor(e){super(e.type??1802921587,e.name),this.store=e,e.fs=this,this._uuid=e.uuid??this.uuid,this.label=e.label,Ee(this.name+`: supports features: `+this.store.flags?.join(`, `))}usage(){return this.store.usage?.()||{totalSpace:0,freeSpace:0}}async loadIndex(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!0),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),await n.set(i.ino,i),r.has(t)&&await n.set(i.data,gn(r.get(t)));await n.commit()}catch(e){t.error=e,t.hasError=!0}finally{let e=V(t);e&&await e}}loadIndexSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!1),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),n.setSync(i.ino,i),r.has(t)&&n.setSync(i.data,gn(r.get(t)));n.commitSync()}catch(e){t.error=e,t.hasError=!0}finally{V(t)}}async createIndex(){let e={stack:[],error:void 0,hasError:!1};try{let t=new lr,n=B(e,this.transaction(),!0),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new L(await n.get(i));if(t.set(e,a),R(a)){let t=hn(await n.get(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{let t=V(e);t&&await t}}createIndexSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=new lr,n=B(e,this.transaction(),!1),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new L(n.getSync(i));if(t.set(e,a),R(a)){let t=hn(n.getSync(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{V(e)}}async rename(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),i=Rn(e),a=Rn(t),o=await this.findInode(r,i.dir),s=hn(await r.get(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir==i.dir,u=l?o:await this.findInode(r,a.dir),d=l?s:hn(await r.get(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new L(await r.get(d[a.base])??_(C(`ENOENT`)));if(!tr(e))throw C(`EISDIR`);await r.remove(e.data),await r.remove(d[a.base])}d[a.base]=c,await r.set(o.data,gn(s)),await r.set(u.data,gn(d)),await r.commit(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}renameSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),i=Rn(e),a=Rn(t),o=this.findInodeSync(r,i.dir),s=hn(r.getSync(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir===i.dir,u=l?o:this.findInodeSync(r,a.dir),d=l?s:hn(r.getSync(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new L(r.getSync(d[a.base])??_(C(`ENOENT`)));if(!tr(e))throw C(`EISDIR`);r.removeSync(e.data),r.removeSync(d[a.base])}d[a.base]=c,r.setSync(o.data,gn(s)),r.setSync(u.data,gn(d)),r.commitSync(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}async stat(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!0);return await this.findInode(n,e)}catch(e){t.error=e,t.hasError=!0}finally{let e=V(t);e&&await e}}statSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!1);return this.findInodeSync(n,e)}catch(e){t.error=e,t.hasError=!0}finally{V(t)}}async touch(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),a=await this.findInode(r,e);if(!R(a)&&t.size!==void 0&&t.size!==a.size){let e=await r.get(a.data)??new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),await r.set(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}touchSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),a=this.findInodeSync(r,e);if(!R(a)&&t.size!==void 0&&t.size!==a.size&&!t.metaOnly){let e=r.getSync(a.data)??new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),r.setSync(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}async createFile(e,t){return await this.commitNew(e,{...t,mode:t.mode|ft},new Uint8Array)}createFileSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|ft},new Uint8Array)}async unlink(e){return this.remove(e,!1)}unlinkSync(e){this.removeSync(e,!1)}async rmdir(e){if((await this.readdir(e)).length)throw C(`ENOTEMPTY`);await this.remove(e,!0)}rmdirSync(e){if(this.readdirSync(e).length)throw C(`ENOTEMPTY`);this.removeSync(e,!0)}async mkdir(e,t){return await this.commitNew(e,{...t,mode:t.mode|mt},v(`{}`))}mkdirSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|mt},v(`{}`))}async readdir(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!0),r=await this.findInode(n,e);return Object.keys(hn(await n.get(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{let e=V(t);e&&await e}}readdirSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=B(t,this.transaction(),!1),r=this.findInodeSync(n,e);return Object.keys(hn(n.getSync(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{V(t)}}async sync(){}syncSync(){}async link(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),i=N(t),a=await this.findInode(r,i),o=hn(await r.get(a.data)??_(C(`ENOENT`))),s=await this.findInode(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),await r.set(s.ino,s),await r.set(a.data,gn(o)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}linkSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),i=N(t),a=this.findInodeSync(r,i),o=hn(r.getSync(a.data)??_(C(`ENOENT`))),s=this.findInodeSync(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),r.setSync(s.ino,s),r.setSync(a.data,gn(o)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}async read(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=B(i,this.transaction(),!0),o=await this.findInode(a,e);if(o.size==0)return;let s=await a.get(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{let e=V(i);e&&await e}}readSync(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=B(i,this.transaction(),!1),o=this.findInodeSync(a,e);if(o.size==0)return;let s=a.getSync(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{V(i)}}async write(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=B(r,this.transaction(),!0),o=await this.findInode(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(await a.get(o.data)??new Uint8Array,s),c.set(t,n),n=0),await a.set(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),await a.set(o.ino,o),this._add(o.ino,e),await a.commit()}catch(e){r.error=e,r.hasError=!0}finally{let e=V(r);e&&await e}}writeSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=B(r,this.transaction(),!1),o=this.findInodeSync(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(a.getSync(o.data)??new Uint8Array,s),c.set(t,n),n=0),a.setSync(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),a.setSync(o.ino,o),this._add(o.ino,e),a.commitSync()}catch(e){r.error=e,r.hasError=!0}finally{V(r)}}transaction(){return new Er(this.store.transaction(),this)}async checkRoot(){let e={stack:[],error:void 0,hasError:!1};try{let t=B(e,this.transaction(),!0);if(await t.get(0))return;let n=new L({ino:0,data:1,mode:511|mt});await t.set(n.data,v(`{}`)),this._add(0,`/`),await t.set(0,n),await t.commit()}catch(t){e.error=t,e.hasError=!0}finally{let t=V(e);t&&await t}}checkRootSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=B(e,this.transaction(),!1);if(t.getSync(0))return;let n=new L({ino:0,data:1,mode:511|mt});t.setSync(n.data,v(`{}`)),this._add(0,`/`),t.setSync(0,n),t.commitSync()}catch(t){e.error=t,e.hasError=!0}finally{V(e)}}async _populate(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=B(e,this.transaction(),!0),n=await t.get(0);if(!n){we(`Store does not have a root inode`);let e=new L({ino:0,data:1,mode:511|mt});await t.set(e.data,v(`{}`)),this._add(0,`/`),await t.set(0,e),await t.commit();return}if(n.length<k(L)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=await t.get(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(L)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new L(o);if(!R(s)||r.has(n))continue;r.add(n);let c=await t.get(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{let t=V(e);t&&await t}}_populateSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=B(e,this.transaction(),!1),n=t.getSync(0);if(!n){we(`Store does not have a root inode`);let e=new L({ino:0,data:1,mode:511|mt});t.setSync(e.data,v(`{}`)),this._add(0,`/`),t.setSync(0,e),t.commitSync();return}if(n.length<k(L)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=t.getSync(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(L)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new L(o);if(!R(s)||r.has(n))continue;r.add(n);let c=t.getSync(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{V(e)}}async _findInode(e,t,n=new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new L(await e.get(0)??_(C(`ENODATA`)));let{dir:r,base:i}=Rn(t),a=await this._findInode(e,r,n),o=hn(await e.get(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new L(await e.get(o[i])??_(C(`ENODATA`)))}_findInodeSync(e,t,n=new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new L(e.getSync(0)??_(C(`ENOENT`)));let{dir:r,base:i}=Rn(t),a=this._findInodeSync(e,r,n),o=hn(e.getSync(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new L(e.getSync(o[i])??_(C(`ENODATA`)))}async findInode(e,t){if(this.attributes.has(`no_id_tables`))return await this._findInode(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new L(await e.get(n)??_(C(`ENOENT`)))}findInodeSync(e,t){if(this.attributes.has(`no_id_tables`))return this._findInodeSync(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new L(e.getSync(n)??_(C(`ENOENT`)))}_lastID;allocNew(e){this._lastID||=Array.from(this._paths.keys()).reduce((e,t)=>Math.max(e,t),0),this._lastID+=2;let t=this._lastID;if(t>4294967295)throw T(C(`ENOSPC`,`No IDs available`));return this._add(t,e),t}async commitNew(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=B(r,this.transaction(),!0),{dir:a,base:o}=Rn(e),s=await this.findInode(i,a),c=hn(await i.get(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new L({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return await i.set(u.ino,u),await i.set(u.data,n),c[o]=u.ino,await i.set(s.data,gn(c)),await i.commit(),u}catch(e){r.error=e,r.hasError=!0}finally{let e=V(r);e&&await e}}commitNewSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=B(r,this.transaction(),!1),{dir:a,base:o}=Rn(e),s=this.findInodeSync(i,a),c=hn(i.getSync(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new L({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return i.setSync(u.ino,u),i.setSync(u.data,n),c[o]=u.ino,i.setSync(s.data,gn(c)),i.commitSync(),u}catch(e){r.error=e,r.hasError=!0}finally{V(r)}}async remove(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!0),{dir:i,base:a}=Rn(e),o=await this.findInode(r,i),s=hn(await r.get(o.data)??_(C(`ENOENT`)));if(!s[a])throw C(`ENOENT`);let c=s[a],l=new L(await r.get(c)??_(C(`ENOENT`)));if(delete s[a],!t&&R(l))throw C(`EISDIR`);await r.set(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),await r.set(l.ino,l)):(await r.remove(l.data),await r.remove(c),this._remove(c)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=V(n);e&&await e}}removeSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=B(n,this.transaction(),!1),{dir:i,base:a}=Rn(e),o=this.findInodeSync(r,i),s=hn(r.getSync(o.data)??_(C(`ENOENT`))),c=s[a];if(!c)throw C(`ENOENT`);let l=new L(r.getSync(c)??_(C(`ENOENT`)));if(delete s[a],!t&&R(l))throw C(`EISDIR`);r.setSync(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),r.setSync(l.ino,l)):(r.removeSync(l.data),r.removeSync(c),this._remove(c)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{V(n)}}},Or=class extends wr{async keys(){return this.store.keys()}async get(e){return await(this.store.getAsync?.(e)??this.store.get(e))}getSync(e){return this.store.get(e)}setSync(e,t){this.store.set(e,t)}removeSync(e){this.store.delete(e)}},kr=class extends Tr{async keys(){return await this.asyncDone,this.store.keys()}async get(e,t,n){return await this.asyncDone,await this.store.get(e,t,n)}getSync(e,t,n){return this.store.cached(e,t,n)}async set(e,t,n=0){await this.asyncDone,await this.store.set(e,t,n)}async remove(e){await this.asyncDone,await this.store.delete(e)}},Ar=class extends Map{maxSize;label;flags=[];name=`tmpfs`;constructor(e=yt,t){super(),this.maxSize=e,this.label=t}async sync(){}transaction(){return new Or(this)}get bytes(){let e=this.size*4;for(let t of this.values())e+=t.byteLength;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.bytes}}},jr={name:`InMemory`,options:{maxSize:{type:`number`,required:!1},label:{type:`string`,required:!1}},create({maxSize:e,label:t}){let n=new Dr(new Ar(e,t));return n.checkRootSync(),n}},Mr=class extends Dr{devices=new Map;devicesWithDriver(e,t){if(t&&typeof e==`string`)throw T(C(`EINVAL`,`Can not fetch devices using only a driver name`));let n=[];for(let r of this.devices.values())t&&r.driver!=e||(typeof e==`string`?e:e.name)==r.driver.name&&n.push(r);return n}_createDevice(e,t={}){let n=1,r=Array.from(this.devices.values()).at(-1);for(;this.store.has(n)||r?.inode.ino==n;)n++;let i=e.init?.(n,t),a={data:{},minor:0,major:0,...m(i??{},`metadata`),driver:e,inode:new L({mode:ht|438,...i?.metadata})},o=`/`+(a.name||e.name)+(e.singleton?``:this.devicesWithDriver(e).length);if(this.existsSync(o))throw C(`EEXIST`);return this.devices.set(o,a),Te(`Initialized device: `+this._mountPoint+o),a}addDefaults(){this._createDevice(Pr),this._createDevice(Fr),this._createDevice(Ir),this._createDevice(Lr),this._createDevice(Rr),Ee(`Added default devices`)}constructor(){super(new Ar(16777216,`devfs`))}async rename(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.rename(e,t)}renameSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.renameSync(e,t)}async stat(e){let t=this.devices.get(e);return t?t.inode:super.stat(e)}statSync(e){let t=this.devices.get(e);return t?t.inode:super.statSync(e)}async touch(e,t){let n=this.devices.get(e);n?n.inode.update(t):await super.touch(e,t)}touchSync(e,t){let n=this.devices.get(e);n?n.inode.update(t):super.touchSync(e,t)}async createFile(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFile(e,t)}createFileSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFileSync(e,t)}async unlink(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlink(e)}unlinkSync(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlinkSync(e)}async rmdir(e){return super.rmdir(e)}rmdirSync(e){return super.rmdirSync(e)}async mkdir(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdir(e,t)}mkdirSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdirSync(e,t)}async readdir(e){let t=await super.readdir(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}readdirSync(e){let t=super.readdirSync(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}async link(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.link(e,t)}linkSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.linkSync(e,t)}async sync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.sync()}syncSync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.syncSync()}async read(e,t,n,r){let i=this.devices.get(e);if(!i){await super.read(e,t,n,r);return}i.driver.read(i,t,n,r)}readSync(e,t,n,r){let i=this.devices.get(e);if(!i){super.readSync(e,t,n,r);return}i.driver.read(i,t,n,r)}async write(e,t,n){let r=this.devices.get(e);if(!r)return await super.write(e,t,n);r.driver.write(r,t,n)}writeSync(e,t,n){let r=this.devices.get(e);if(!r)return super.writeSync(e,t,n);r.driver.write(r,t,n)}},Nr=new Uint8Array,Pr={name:`null`,singleton:!0,init(){return{major:1,minor:3}},read(){return Nr},write(){}},Fr={name:`zero`,singleton:!0,init(){return{major:1,minor:5}},read(e,t,n,r){t.fill(0,n,r)},write(){}},Ir={name:`full`,singleton:!0,init(){return{major:1,minor:7}},read(e,t,n,r){t.fill(0,n,r)},write(){throw C(`ENOSPC`)}},Lr={name:`random`,singleton:!0,init(){return{major:1,minor:8}},read(e,t){for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256)},write(){}},Rr={name:`console`,singleton:!0,init(e,{output:t=e=>console.log(e)}={}){return{major:5,minor:1,data:{output:t}}},read(){return Nr},write(e,t,n){let r=ce(t);e.data.output(r,n)}},zr={null:Pr,zero:Fr,full:Ir,random:Lr,console:Rr},H=r(),U=!0;function Br(e){U=e}var Vr;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.FIFO=1]=`FIFO`,e[e.CHR=2]=`CHR`,e[e.DIR=4]=`DIR`,e[e.BLK=6]=`BLK`,e[e.REG=8]=`REG`,e[e.LNK=10]=`LNK`,e[e.SOCK=12]=`SOCK`,e[e.WHT=14]=`WHT`})(Vr||={});function Hr(e){return(e&61440)>>12}function Ur(e){return e<<12}var Wr=class{ino;type;path;name},Gr=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Kr=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},qr=class{pending=new Set;lastWriter;writeState=0;readers=0;syncReaders=0;take(e,t,n){e==`rw`?this.writeState=t?2:1:(this.readers++,t&&this.syncReaders++);let r=!1,i=()=>{r||(r=!0,e==`rw`?this.writeState=0:(this.readers--,t&&this.syncReaders--),n())};return i[Symbol.dispose]=i,i}queue(e){let{promise:t,resolve:n}=Promise.withResolvers();return this.pending.add(t),e==`rw`&&(this.lastWriter=t),t.then(()=>{this.pending.delete(t),this.lastWriter==t&&delete this.lastWriter}),n}async acquire(e){let t=e==`ro`?this.lastWriter:Promise.all(this.pending),n=this.queue(e);return await t,this.take(e,!1,n)}acquireSync(e){if(this.writeState==2||e==`rw`&&this.syncReaders)throw C(`EDEADLK`);if(this.writeState||e==`rw`&&this.readers)throw C(`EAGAIN`);return this.take(e,!0,this.queue(e))}isAvailable(e){return(e!=`rw`||!this.readers)&&!this.writeState}get isFree(){return!this.writeState&&!this.readers}get mode(){return this.writeState?`rw`:this.readers?`ro`:null}},Jr=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[ne],n=[ne],Kr(this,null,t,{kind:`getter`,name:`lock`,static:!1,private:!1,access:{has:e=>`lock`in e,get:e=>e.lock},metadata:r},null,e),Kr(this,null,n,{kind:`getter`,name:`lockSync`,static:!1,private:!1,access:{has:e=>`lockSync`in e,get:e=>e.lockSync},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}_rwLock=(Gr(this,e),new qr);get lock(){return this._rwLock.acquire.bind(this._rwLock)}get lockSync(){return this._rwLock.acquireSync.bind(this._rwLock)}get isLocked(){return!this._rwLock.isFree}get lockMode(){return this._rwLock.mode}}})(),Yr=class{max;#e=new Set;#t=[];constructor(e){if(this.max=e,!Number.isInteger(e)||e<1)throw C(`EINVAL`,`Semaphore max must be a positive integer`)}get active(){return this.#e.size}get waiting(){return this.#t.length}get isAvailable(){return this.#e.size<this.max}#n(e,t){let n=!1,r=()=>{n||(n=!0,this.#e.delete(e),t(),this.#t.shift()?.())};return r[Symbol.dispose]=r,r}async get(){let{promise:e,resolve:t}=Promise.withResolvers();if(this.#e.size>=this.max){let t=Promise.withResolvers();this.#t.push(()=>{this.#e.add(e),t.resolve()}),await t.promise}else this.#e.add(e);return this.#n(e,t)}getSync(){if(this.#e.size>=this.max)throw C(`EAGAIN`);let{promise:e,resolve:t}=Promise.withResolvers();return this.#e.add(e),this.#n(e,t)}async drain(){for(;this.#e.size;)await Promise.all(this.#e)}},Xr=class extends Jr{fs;inode;data;dirtyRanges=[];truncatedTo;metadataDirty=!1;refs=0;paths=new Set;_lastPath;constructor(e,t,n){super(),this.fs=e,this.inode=n,this.paths.add(t),this._lastPath=t,this.data=new s(n.ino,n.size,{sparse:!0})}get ino(){return this.inode.ino}get path(){let[e]=this.paths;return e!==void 0&&(this._lastPath=e),e??this._lastPath}get dirty(){return this.metadataDirty||this.dirtyRanges.length>0}get bypassCache(){return ar(this.inode)||ir(this.inode)||!!(this.inode.flags&I.DAX)}markDirty(e,t){o(this.dirtyRanges,e,t)}copyFromCache(e,t,n){let r=t;for(let i of this.data.regionsIn(t,n)){let a=i.offset+i.data.byteLength;if(a<=r)continue;i.offset>r&&(e.fill(0,r-t,i.offset-t),r=i.offset);let o=Math.min(n,a);e.set(i.data.subarray(r-i.offset,o-i.offset),r-t),r=o}r<n&&e.fill(0,r-t,n-t)}async read(e,t,n){if(this.bypassCache)return await this.fs.read(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);await this.fs.read(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}readSync(e,t,n){if(this.bypassCache)return this.fs.readSync(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);this.fs.readSync(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}async write(e,t){this.bypassCache?await this.fs.write(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}writeSync(e,t){this.bypassCache?this.fs.writeSync(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}_writeCached(e,t){let n=t+e.byteLength;this.data.add(e.slice(),t),n>this.data.size&&(this.data.size=n),this.markDirty(t,n)}_writeMetadata(e){!this.bypassCache&&e>this.inode.size&&(this.inode.size=e),this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}truncate(e){this.truncatedTo=Math.min(this.truncatedTo??e,e),this.data.size=e,this.dirtyRanges=this.dirtyRanges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t),this.inode.size=e,this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}get needsPreTruncate(){return!this.bypassCache&&this.truncatedTo!==void 0&&this.truncatedTo<this.inode.size&&!this.fs.attributes.has(`no_write`)}async sync(){this.needsPreTruncate&&await this.fs.touch(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);await this.fs.write(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||await this.fs.touch(this.path,this.inode),!1)}syncSync(){this.needsPreTruncate&&this.fs.touchSync(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);this.fs.writeSync(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||this.fs.touchSync(this.path,this.inode),!1)}},Zr=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Qr=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),$r=class{fs;byIno=new Map;byPath=new Map;constructor(e){this.fs=e}get(e){return this.byPath.get(e)}ref(e,t){let n=this.byIno.get(t.ino);return n&&n.inode.nlink===n.paths.size&&!n.paths.has(e)&&T(`vcache.ref: vnode for ${this.fs.label||this.fs.uuid}:${t.ino} has an nlink of ${n.inode.nlink} but referenced by more paths [#314]`),n&&!n.paths.has(e)&&(t.ino===0||t.nlink<=1||n.inode.nlink<=1||(n.inode.mode^t.mode)&61440)&&(n=this.byPath.get(e),n&&(n.inode.mode^t.mode)&61440&&(n=void 0)),n?(n.paths.add(e),!n.dirty&&t!==n.inode&&Object.assign(n.inode,t)):(n=new Xr(this.fs,e,t),this.byIno.set(t.ino,n)),this.byPath.set(e,n),n.refs++,n}unref(e){e.refs--,!(e.refs>0||e.dirty)&&this.evict(e)}evict(e){this.byIno.delete(e.ino);for(let t of e.paths)this.byPath.delete(t)}rename(e,t){for(let[n,r]of this.byPath){if(n!=e&&!n.startsWith(e+`/`))continue;let i=t+n.slice(e.length);this.byPath.delete(n),this.byPath.set(i,r),r.paths.delete(n),r.paths.add(i)}}link(e,t){let n=this.byPath.get(e);n&&(n.paths.add(t),this.byPath.set(t,n))}remove(e){let t=this.byPath.get(e);t&&(this.byPath.delete(e),t.paths.delete(e),!t.paths.size&&!t.refs&&this.evict(t))}async sync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;Zr(t,await e.lock(`rw`),!1),await e.sync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Qr(t)}}}syncSync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;Zr(t,e.lockSync(`rw`),!1),e.syncSync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Qr(t)}}}},ei=new Map;function W(e){let t=ei.get(e.uuid);return t||(t=new $r(e),ei.set(e.uuid,t)),t}async function ti(e,t,n,r){let i=W(e);r??=i.get(t)?.inode??await e.stat(t);let a=i.ref(t,r),o=await a.lock(n),s=!1,c=()=>{s||(s=!0,o(),i.unref(a))};return c[Symbol.dispose]=c,c}function ni(e,t,n,r){let i=W(e);r??=i.get(t)?.inode??e.statSync(t);let a=i.ref(t,r),o;try{o=a.lockSync(n)}catch(e){throw i.unref(a),e}let s=!1,c=()=>{s||(s=!0,o(),i.unref(a))};return c[Symbol.dispose]=c,c}var ri=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},ii=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},ai=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},oi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),si=65536,ci=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;ii(this,null,t,{kind:`getter`,name:`inode`,static:!1,private:!1,access:{has:e=>`inode`in e,get:e=>e.inode},metadata:r},null,e),ii(this,null,n,{kind:`getter`,name:`fs`,static:!1,private:!1,access:{has:e=>`fs`in e,get:e=>e.fs},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}context=ri(this,e);path;internalPath;flag;vnode;_position=0;get position(){return this.flag&1024?this.inode.size:this._position}set position(e){this._position=e}get inode(){return this.vnode.inode}get fs(){return this.vnode.fs}get dirty(){return this.vnode.dirty}closed=!1;refs=1;ref(){if(this.closed)throw S(`EBADF`,`dup`,this.path);return this.refs++,this}get isClosed(){return this.closed}constructor(e,t,n,r,i){this.context=e,this.path=t,this.internalPath=n,this.flag=r,this.vnode=i}get _isSync(){return!!(this.flag&1052672||this.inode.flags&I.Sync||this.fs.attributes.has(`sync`))}[(t=[ne],n=[ne],Symbol.dispose)](){this.closeSync()}syncSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;ai(e,this.vnode.lockSync(`rw`),!1),this.vnode.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{oi(e)}}datasyncSync(){return this.syncSync()}closeSync(){if(this.closed)throw S(`EBADF`,`close`,this.path);this.syncSync(),!(--this.refs>0)&&this.disposeSync(!0)}disposeSync(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,W(this.fs).unref(this.vnode)}truncateSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`truncate`,this.path);ai(t,this.vnode.lockSync(`rw`),!1),this.vnode.truncate(e),this._isSync&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}writeSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`write`,this.path);ai(i,this.vnode.lockSync(`rw`),!1);let a=e.subarray(t,t+n);return this.vnode.writeSync(a,r),this._position=r+a.byteLength,this._isSync&&this.vnode.syncSync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}readSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);ai(i,this.vnode.lockSync(`ro`),!1),!(this.inode.flags&I.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!ar(this.inode)&&!ir(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return this.vnode.readSync(o.subarray(t,t+n),r,a),this._isSync&&this.vnode.syncSync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}chmodSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ai(t,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?~O:O)|e,(this._isSync||e>61440)&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}chownSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ai(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,sr(this.inode,e,t),this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}utimesSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ai(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}async[Symbol.asyncDispose](){await this.close()}async sync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;ai(e,await this.vnode.lock(`rw`),!1),await this.vnode.sync()}catch(t){e.error=t,e.hasError=!0}finally{oi(e)}}datasync(){return this.sync()}async close(){if(this.closed)throw S(`EBADF`,`close`,this.path);await this.sync(),!(--this.refs>0)&&this.dispose(!0)}dispose(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,W(this.fs).unref(this.vnode)}stat(){if(this.closed)throw S(`EBADF`,`stat`,this.path);return this.inode}async truncate(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`truncate`,this.path);ai(t,await this.vnode.lock(`rw`),!1),this.vnode.truncate(e),this._isSync&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}async write(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`write`,this.path);ai(i,await this.vnode.lock(`rw`),!1);let a=e.subarray(t,t+n);return await this.vnode.write(a,r),this._position=r+a.byteLength,this._isSync&&await this.vnode.sync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}async read(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);ai(i,await this.vnode.lock(`ro`),!1),!(this.inode.flags&I.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!ar(this.inode)&&!ir(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return await this.vnode.read(o.subarray(t,t+n),r,a),this._isSync&&await this.vnode.sync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}}async chmod(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ai(t,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?~O:O)|e,(this._isSync||e>61440)&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{oi(t)}}async chown(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);ai(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,sr(this.inode,e,t),this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}async utimes(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ai(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{oi(n)}}streamRead(e){if(this.closed)throw S(`EBADF`,`streamRead`,this.path);let{vnode:t}=this,{chunkSize:n=si}=e,r=e.start??0,i=e.end;return new ReadableStream({async pull(e){let a={stack:[],error:void 0,hasError:!1};try{if(ai(a,await t.lock(`ro`),!1),i??=t.inode.size,r>=i){e.close();return}let o=new Uint8Array(Math.min(n,i-r));await t.read(o,r,r+o.byteLength),r+=o.byteLength,e.enqueue(o),r>=i&&e.close()}catch(e){a.error=e,a.hasError=!0}finally{oi(a)}},type:`bytes`})}streamWrite(e){if(this.closed)throw S(`EBADF`,`write`,this.path);if(this.inode.flags&I.Immutable)throw S(`EPERM`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);let{vnode:t}=this,n=e.start??0;return new WritableStream({async write(e,r){let i={stack:[],error:void 0,hasError:!1};try{ai(i,await t.lock(`rw`),!1),await t.write(e,n).catch(r.error.bind(r)),n+=e.byteLength}catch(e){i.error=e,i.hasError=!0}finally{oi(i)}},async close(){let e={stack:[],error:void 0,hasError:!1};try{ai(e,await t.lock(`rw`),!1),await t.sync()}catch(t){e.error=t,e.hasError=!0}finally{oi(e)}}})}}})();function li(e,t=e.context){let n=D(t).descriptors,r=0;for(;n.has(r);)r++;return n.set(r,e),r}function ui(e,t){yn(t);let n=D(e).descriptors.get(t);if(!n)throw C(`EBADF`);return n}function di(e,t){return D(e).descriptors.delete(t)}function fi(e,t){return li(ui(e,t).ref(),e)}var pi=/[rwasx]{1,2}\+?/;function mi(e){if(typeof e==`number`)return e;if(!pi.test(e))throw C(`EINVAL`,`Invalid flag string: `+e);return hi(e)}function hi(e){if(!e.includes(`r`)&&!e.includes(`w`)&&!e.includes(`a`))throw C(`EINVAL`,`Invalid flag string: `+e);let t=e.includes(`r`)?0:64;return e.includes(`w`)&&(t|=512),e.includes(`a`)&&(t|=tt),e.includes(`+`)?t|=2:e.includes(`r`)||(t|=1),e.includes(`s`)&&(t|=at),e.includes(`x`)&&(t|=128),t}function gi(e){let t=0;return e&1||(t|=4),(e&1||e&2)&&(t|=2),t}var _i=x;function vi(e,t){return e.path=t,e}function yi(e,t,n,r){let i=typeof n==`string`?{path:n,dest:r,syscall:t.endsWith(`Sync`)?t.slice(0,-4):t}:n,a=e[t];if(typeof a!=`function`)throw TypeError(`${t} is not a function`);return function(...t){try{return a.call(e,...t)}catch(e){throw b(Object.assign(e,i))}}}function bi(e,t){return new Proxy(e,{get(e,n){let r=Reflect.get(e,n);return typeof r==`function`?function n(...i){try{let a=r.apply(e,i);return a instanceof Promise?a.catch(e=>{if(`code`in e)throw b(Object.assign(e,t));if(e in y){let r=S(e,t);Error.captureStackTrace(r,n)}throw e}):a}catch(e){throw b(Object.assign(e,t))}}:r}})}var xi=Ze.mounts;Si(`/`,jr.create({label:`root`}));function Si(e,t){let n=D(this);if(e[0]!=`/`&&(e=`/`+e),e=jn.call(n,e),n.mounts.has(e))throw T(C(`EINVAL`,`Mount point is already in use: `+e));t._mountPoint=e,n.mounts.set(e,t),ei.has(t.uuid)||ei.set(t.uuid,new $r(t)),Te(`Mounted ${t.name} on ${e}`),Ee(`${t.name} attributes: ${[...t.attributes].map(([e,t])=>t==null?e:e+`=`+t).join(`, `)}`)}function Ci(e){let t=D(this);e[0]!=`/`&&(e=`/`+e),e=jn.call(this,e);let n=t.mounts.get(e);if(!n){E(e+` is already unmounted`);return}let r=()=>{ei.delete(n.uuid),Te(`Synced all changes to `+e)};try{ei.get(n.uuid)?.syncSync(),r()}catch{E(`Could not flush to ${e} synchronously.`),ei.get(n.uuid)?.sync().then(r)}t.mounts.delete(e),we(`Unmounted `+e)}function G(e,t,n){let{root:r,mounts:i}=D(t),a={path:e,...n};e=j(M(r,e),!0),e=jn.call(t,e);let o=[...i].sort((e,t)=>e[0].length>t[0].length?-1:1);for(let[t,n]of o){if(!Ei(t,e))continue;e=e.slice(t.length>1?t.length:0),e===``&&(e=`/`);let i=n.attributes.get(`case_fold`);return i===`lower`&&(e=e.toLowerCase()),i===`upper`&&(e=e.toUpperCase()),{fs:bi(n,a),path:e,mountPoint:t,root:r}}throw Se(new x(y.EIO,`No file system for `+e))}function wi(e,t){let n=e.usage(),r=n.blockSize||4096,i=t?BigInt:Number;return{type:i(e.type),bsize:i(r),frsize:i(r),ffree:i(n.freeNodes||4294967295),files:i(n.totalNodes||4294967295),bavail:i(n.freeSpace/r),bfree:i(n.freeSpace/r),blocks:i(n.totalSpace/r)}}function Ti(e){let t=D(this);if(!qe(t.credentials))throw C(`EPERM`,`Can not chroot() as non-root user`);t.root??=`/`;let n=M(t.root,e);for(let e of t.descriptors?.values()??[]){if(!e.path.startsWith(t.root))throw S(`EBUSY`,`chroot`,e.path);e.path=e.path.slice(t.root.length)}if(n.length<t.root.length)throw C(`EPERM`,`Can not chroot() outside of current root`);t.root=n}function Ei(e,t){return e===`/`||e===t||(e.endsWith(`/`)||(e+=`/`),t.startsWith(e))}var Di=t({link:()=>Ii,mkdir:()=>Ni,open:()=>ji,readdir:()=>Pi,readlink:()=>Mi,rename:()=>Fi,resolve:()=>Ai,stat:()=>Li}),Oi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},ki=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function Ai(e,t,n,r){t=jn.call(e,t);try{let i=G(t,e),a=W(i.fs).get(i.path)?.inode??i.fs.statSync(i.path);return!nr(a)||n?{...i,fullPath:t,stats:a}:Ai(e,jn.call(e,N(t),Mi.call(e,t)),n,r)}catch(e){if(b(Object.assign(e,{syscall:`stat`,path:t,...r})),n)throw e}let{base:i,dir:a}=Rn(t),o=a==`/`?`/`:Ai(e,a,!1,r).fullPath,s=M(o,i),c=G(s,e),l;try{l=W(c.fs).get(c.path)?.inode??c.fs.statSync(c.path)}catch(e){if(e.code===`ENOENT`)return{...c,fullPath:s};throw b(Object.assign(e,{syscall:`stat`,path:s,...r}))}return nr(l)?Ai(e,jn.call(e,o,Mi.call(e,s)),!1,r):{...c,fullPath:s,stats:l}}function ji(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=mi(n.flag);t=n.preserveSymlinks?t:Ai(e,t).fullPath;let{fs:a,path:o}=G(t,e),s;try{s=a.statSync(o)}catch{}if(!s){let s={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,`open`,t);let c=N(o),l=a.statSync(c);if(U&&!z(e,l,2))throw S(`EACCES`,`open`,t);if(!R(l))throw S(`ENOTDIR`,`open`,t);if(!n.allowDirectory&&R({mode:r}))throw S(`EISDIR`,`open`,t);Oi(s,ni(a,c,`rw`,l),!1);let{euid:u,egid:d}=D(e).credentials,f=a.createFileSync(o,{mode:r,uid:l.mode&2048?l.uid:u,gid:l.mode&1024?l.gid:d});return Ha(e,`rename`,t),new ci(e,t,o,i,W(a).ref(o,f))}catch(e){s.error=e,s.hasError=!0}finally{ki(s)}}if(U&&(!z(e,s,r)||!z(e,s,gi(i))))throw S(`EACCES`,`open`,t);if(i&128)throw S(`EEXIST`,`open`,t);if(!n.allowDirectory&&R(s))throw S(`EISDIR`,`open`,t);let c=new ci(e,t,o,i,W(a).ref(o,s));return i&512&&c.truncateSync(0),c}function Mi(e){e=j.call(this,e);let{fs:t,stats:n,path:r}=Ai(this,e,!0,{syscall:`readlink`});if(!n)throw S(`ENOENT`,`readlink`,e);if(U&&!z(this,n,4))throw S(`EACCES`,`readlink`,e);if(!nr(n))throw S(`EINVAL`,`readlink`,e);let i=n.size,a=new Uint8Array(i);return t.readSync(r,a,0,i),ce(a)}function Ni(e,t={}){let n=j.call(this,e),r={syscall:`mkdir`,path:n},{fullPath:i}=Ai(this,N(n),!1,r),{fs:a,path:o}=G(M(i,Fn(n)),this,r),s=i!=N(n),{euid:c,egid:l}=D(this).credentials,{mode:u=511,recursive:d}=t,f,p=(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let i=N(t),m=d&&i!=`/`?p(N(e),i):a.statSync(i);if(d){let n;try{n=W(a).get(t)?.inode??a.statSync(t)}catch{}if(n){let i=nr(n)?Ai(this,e,!1,r).stats:n;if(!i)throw S(`ENOENT`,r);if(!R(i))throw S(t==o?`EEXIST`:`ENOTDIR`,r);return n}if(s&&a.existsSync(M(i,Fn(e))))throw S(`ENOENT`,r)}if(U&&!z(this,m,2))throw S(`EACCES`,`mkdir`,e);Oi(n,ni(a,i,`rw`,m),!1);let h=yi(a,`mkdirSync`,{path:e,syscall:`mkdir`})(t,{mode:u,uid:m.mode&2048?m.uid:c,gid:m.mode&1024?m.gid:l});return d&&(f??=e),Ha(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{ki(n)}};return p(n,o),f}function Pi(e,t={}){e=j.call(this,e);let{fs:n,path:r}=Ai(this,e),i=W(n).get(r)?.inode??yi(n,`statSync`,{path:e,syscall:`scandir`})(r);if(U&&!z(this,i,4))throw S(`EACCES`,`scandir`,e);if(!R(i))throw S(`ENOTDIR`,`scandir`,e);let a;{let e={stack:[],error:void 0,hasError:!1};try{Oi(e,ni(n,r,`ro`,i),!1),a=n.readdirSync(r)}catch(t){e.error=t,e.hasError=!0}finally{ki(e)}}let o=[],s=e=>{let i;try{i=n.statSync(M(r,e))}catch(e){if(e.code==`ENOENT`)return;throw e}let a=new Wr;if(a.ino=i.ino,a.type=Hr(i.mode),a.path=e,a.name=Fn(e),o.push(a),!R(i)||!t?.recursive)return;let c=n.readdirSync(M(r,e));for(let t of c)s(M(e,t))};for(let e of a)s(e);return o}function Fi(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=Ai(this,e,!0,r),a=G(t,this,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=i.fs,s=o.statSync(N(i.path)),c=o.statSync(N(a.path)),l;try{l=o.statSync(a.path)}catch(e){if(e.code!=`ENOENT`)throw e}if(U&&(!z(this,s,4)||!z(this,c,2)))throw S(`EACCES`,r);if(l&&!R(i.stats)&&R(l))throw S(`EISDIR`,r);if(l&&R(i.stats)&&!R(l))throw S(`ENOTDIR`,r);let u=N(i.path),d=N(a.path),f=[[u,s],[d,c]];s.ino>c.ino&&f.reverse(),Oi(n,ni(o,f[0][0],`rw`,f[0][1]),!1),Oi(n,s.ino==c.ino?null:ni(o,f[1][0],`rw`,f[1][1]),!1),i.fs.renameSync(i.path,a.path),W(o).rename(i.path,a.path),Ha(this,`rename`,e),Ha(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{ki(n)}}function Ii(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,path:a}=G(e,this,r),o=G(t,this,r);if(i.uuid!==o.fs.uuid)throw S(`EXDEV`,r);let s=i.statSync(a);if(U){if(!z(this,s,4))throw S(`EACCES`,r);let e=i.statSync(N(a));if(!z(this,e,4))throw S(`EACCES`,r);let t=i.statSync(N(o.path));if(!z(this,t,2))throw S(`EACCES`,r)}Oi(n,ni(i,N(o.path),`rw`),!1),i.linkSync(a,o.path),W(i).link(a,o.path)}catch(e){n.error=e,n.hasError=!0}finally{ki(n)}}function Li(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=Ai(this,e,!1,n).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=Ai(this,i,!1,n);try{let e=t?M(o,t):o;r=W(a).get(e)?.inode??a.statSync(e)}catch(e){throw b(Object.assign(e,n)),e}}if(!r)throw S(`ENOENT`,n);if(U&&!z(this,r,4))throw S(`EACCES`,n);return r}var Ri=class e{ino;type;_name;get name(){let e=H.Buffer.from(this._name);return this._encoding==`buffer`?e:e.toString(this._encoding)}_encoding;_parentPath;get parentPath(){return this._parentPath}get path(){return E(`Dirent.path was removed in Node v24, use parentPath instead`),this._parentPath}static from(t,n,r=`.`){let i=new e,{base:a,dir:o}=Rn(t.path);return i._parentPath=M(r,o),i._name=a,i.ino=t.ino,i.type=t.type,i._encoding=n,i}isFile(){return this.type===Vr.REG}isDirectory(){return this.type===Vr.DIR}isBlockDevice(){return this.type===Vr.BLK}isCharacterDevice(){return this.type===Vr.CHR}isSymbolicLink(){return this.type===Vr.LNK}isFIFO(){return this.type===Vr.FIFO}isSocket(){return this.type===Vr.SOCK}};function zi(){return Object.assign(Error(`Directory handle was closed`),{code:`ERR_DIR_CLOSED`})}var Bi=class{path;context;closed=!1;checkClosed(){if(this.closed)throw zi()}_entries;constructor(e,t){this.path=e,this.context=t}close(e){if(this.closed){let t=zi();if(!e)return Promise.reject(t);e(t);return}if(this.closed=!0,!e)return Promise.resolve();e(null)}closeSync(){if(this.closed)throw zi();this.closed=!0}async _read(){return this.checkClosed(),this._entries??=await Nu.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}read(e){if(!e)return this._read();this._read().then(t=>e(null,t))}readSync(){return this.checkClosed(),this._entries??=pa.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}async next(){let e=await this._read();return e?{done:!1,value:e}:(await this.close(),{done:!0,value:void 0})}[Symbol.asyncIterator](){return this}[Symbol.dispose](){this.closed||this.closeSync()}async[Symbol.asyncDispose](){this.closed||await this.close()}},Vi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Hi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function Ui(e,t){return Fi.call(this,e,t)}function Wi(e){e=j.call(this,e);try{let{fs:t,path:n}=Ai(this,e);return t.existsSync(n)}catch(e){if(e.errno==y.ENOENT)return!1;throw e}}function Gi(e,t){let n;try{n=Li.call(this,e,!1)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function Ki(e,t){let n;try{n=Li.call(this,e,!0)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function qi(e,t=0){let n={stack:[],error:void 0,hasError:!1};try{let r=Vi(n,ji(this,e,{flag:`r+`}),!1);if(t||=0,t<0)throw S(`EINVAL`,`truncate`,e.toString());r.truncateSync(t)}catch(e){n.error=e,n.hasError=!0}finally{Hi(n)}}function Ji(e){e=j.call(this,e);let{fs:t,path:n}=G(e,this);try{let e={stack:[],error:void 0,hasError:!1};try{if(U&&!z(this,t.statSync(n),2))throw S(`EACCES`,`unlink`);Vi(e,ni(t,N(n),`rw`),!1),t.unlinkSync(n),W(t).remove(n)}catch(t){e.error=t,e.hasError=!0}finally{Hi(e)}}catch(t){throw b(Object.assign(t,{syscall:`unlink`,path:e}))}Ha(this,`rename`,e.toString())}function Yi(e,t,n=0){return li(ji(this,e,{flag:t,mode:n}))}function Xi(e,t,n){return li(ji(this,e,{flag:t,mode:n,preserveSymlinks:!0}))}function Zi(e,t){let n=typeof e==`function`,r=n?e(t):e,i=n?`options.buffer()`:`options.buffer`;if(!ArrayBuffer.isView(r))throw Object.assign(TypeError(`The "options.buffer" property must be of type function or an instance of Buffer, TypedArray, or DataView. Received ${typeof r}`),{code:`ERR_INVALID_ARG_TYPE`});if(r.byteLength<t)throw Object.assign(TypeError(`The property '${i}.byteLength' is smaller than the file size of ${t} bytes. Received ${r.byteLength}`),{code:`ERR_INVALID_ARG_VALUE`});return H.Buffer.from(r.buffer,r.byteOffset,t)}function Qi(e,t={}){let n={stack:[],error:void 0,hasError:!1};try{let r=Sn(t,null,`r`,420);if(mi(r.flag)&1)throw S(`EBADF`,`read`,e.toString());let i=Vi(n,typeof e==`number`?ui(this,e):ji(this,e.toString(),{flag:r.flag,mode:420,preserveSymlinks:!1}),!1),{size:a}=i.stat(),o=typeof t==`object`&&t?t.buffer:void 0,s=o===void 0?H.Buffer.alloc(a):Zi(o,a);return i.readSync(s,0,a,0),r.encoding?s.toString(r.encoding):s}catch(e){n.error=e,n.hasError=!0}finally{Hi(n)}}function $i(e,t,n={}){let r={stack:[],error:void 0,hasError:!1};try{let i=Sn(n,`utf8`,`w+`,420),a=mi(i.flag);if(!(a&1||a&2))throw new x(y.EINVAL,`Flag passed to writeFile must allow for writing`);if(typeof t!=`string`&&!i.encoding)throw new x(y.EINVAL,`Encoding not specified`);let o=typeof t==`string`?H.Buffer.from(t,i.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength);if(!o)throw new x(y.EINVAL,`Data not specified`);Vi(r,typeof e==`number`?ui(this,e):ji(this,e.toString(),{flag:a,mode:i.mode}),!1).writeSync(o,0,o.byteLength,0),Ha(this,`change`,e.toString())}catch(e){r.error=e,r.hasError=!0}finally{Hi(r)}}function ea(e,t,n={}){let r=Sn(n,`utf8`,`a+`,420),i=mi(r.flag);if(!(i&1024))throw new x(y.EINVAL,`Flag passed to appendFile must allow for appending`);if(typeof t!=`string`&&!r.encoding)throw new x(y.EINVAL,`Encoding not specified`);let a=typeof t==`string`?H.Buffer.from(t,r.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=typeof e==`number`?ui(this,e):ji(this,j.call(this,e),{flag:i,mode:r.mode});o.writeSync(a,0,a.byteLength),typeof o!=`number`&&o.closeSync()}function ta(e,t){let n=ui(this,e).stat();return t?.bigint?new Un(n):new Hn(n)}function na(e){ui(this,e).closeSync(),di(this,e)}function ra(e,t=0){if(t||=0,t<0)throw new x(y.EINVAL);ui(this,e).truncateSync(t)}function ia(e){ui(this,e).syncSync()}function aa(e){ui(this,e).datasyncSync()}function oa(e,t,n,r,i){let a,o,s,c;if(typeof t==`string`){c=typeof n==`number`?n:null;let e=typeof r==`string`?r:`utf8`;o=0,a=H.Buffer.from(t,e),s=a.byteLength}else a=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=n,s=r,c=typeof i==`number`?i:null;let l=ui(this,e);c??=l.position;let u=l.writeSync(a,o,s,c);return Ha(this,`change`,l.path),u}function sa(e,t,n,r,i){let a=ui(this,e),o=typeof n==`object`?n.offset:n;if(typeof n==`object`&&(r=n.length,i=n.position),i&&i>2**53-1)throw S(`EINVAL`);return typeof i==`bigint`&&(i=Number(i)),i=Number.isSafeInteger(i)?i:a.position,a.readSync(t,o,r,i)}function ca(e,t,n){ui(this,e).chownSync(t,n)}function la(e,t){let n=_n(t,-1);if(n<0)throw new x(y.EINVAL,`Invalid mode.`);ui(this,e).chmodSync(n)}function ua(e,t,n){ui(this,e).utimesSync(xn(t),xn(n))}function da(e){let t={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e);let{fs:n,path:r}=Ai(this,e),i=yi(n,`statSync`,{path:e,syscall:`rmdir`})(r);if(!R(i))throw S(`ENOTDIR`,`rmdir`,e);if(U&&!z(this,i,2))throw S(`EACCES`,`rmdir`,e);Vi(t,ni(n,N(r),`rw`),!1),yi(n,`rmdirSync`,e)(r),W(n).remove(r),Ha(this,`rename`,e.toString())}catch(e){t.error=e,t.hasError=!0}finally{Hi(t)}}function fa(e,t){t=typeof t==`object`?t:{mode:t};let n=_n(t?.mode,511);return Ni.call(this,e,{...t,mode:n})}function pa(e,t){t=typeof t==`object`?t:{encoding:t},e=j.call(this,e);let n=[],r=Pi.call(this,e,t??void 0);for(let i of r)t?.withFileTypes?n.push(Ri.from(i,t.encoding,e)):t?.encoding==`buffer`?n.push(H.Buffer.from(i.path)):n.push(i.path);return n}function ma(e,t){return Ii.call(this,e,t)}function ha(e,t,n=`file`){let r={stack:[],error:void 0,hasError:!1};try{if(![`file`,`dir`,`junction`].includes(n))throw TypeError(`Invalid symlink type: `+n);t=j.call(this,t);let i=Vi(r,ji(this,t,{flag:`wx`,mode:420}),!1);i.writeSync(v(j.call(this,e,!0))),i.chmodSync(dt)}catch(e){r.error=e,r.hasError=!0}finally{Hi(r)}}function ga(e,t){let n=H.Buffer.from(Mi.call(this,e)),r=typeof t==`object`?t?.encoding:t;return r==`buffer`?n:n.toString(r??`utf-8`)}function _a(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{Vi(r,ji(this,e,{flag:`r+`,mode:0}),!1).chownSync(t,n)}catch(e){r.error=e,r.hasError=!0}finally{Hi(r)}}function va(e,t,n){let r=Xi.call(this,e,`r+`);ca.call(this,r,t,n),na.call(this,r)}function ya(e,t){let n;try{n=Yi.call(this,e,`r+`)}catch(t){throw b(Object.assign(t,{syscall:`chmod`,path:j.call(this,e)}))}la.call(this,n,t),na.call(this,n)}function ba(e,t){let n=Xi.call(this,e,`r+`);la.call(this,n,t),na.call(this,n)}function xa(e,t,n){let r=Yi.call(this,e,`r+`);ua.call(this,r,t,n),na.call(this,r)}function Sa(e,t,n){let r=Xi.call(this,e,`r+`);ua.call(this,r,t,n),na.call(this,r)}function Ca(e,t){let n=typeof t==`string`?t:t?.encoding??`utf8`;e=j.call(this,e,!0);let{fullPath:r}=Ai(this,e);if(n==`utf8`||n==`utf-8`)return r;let i=H.Buffer.from(r,`utf-8`);return n==`buffer`?i:i.toString(n)}function wa(e,t=384){if(U&&!z(this,Gi.call(this,e),t))throw new x(y.EACCES)}function Ta(e,t){e=j.call(this,e);let n;try{n=Ki.call(this,e)}catch(e){if(e.code!=`ENOENT`||!t?.force)throw e}if(n)switch(n.mode&O){case mt:if(t?.recursive)for(let n of pa.call(this,e))Ta.call(this,M(e,n),t);da.call(this,e);break;case ft:case dt:case pt:case ht:Ji.call(this,e);break;case gt:case ut:default:throw S(`ENOSYS`,`rm`,e)}}function Ea(e,t){let n=typeof t==`object`?t?.encoding:t||`utf8`,r=Tn(e);return fa.call(this,r),n==`buffer`?H.Buffer.from(r):r}function Da(e,t){let n=Tn(e);fa.call(this,n);let r=()=>Ta(n,{recursive:!0,force:!0});return{path:n,remove:r,[Symbol.dispose]:r}}function Oa(e,t,n){if(e=j.call(this,e),t=j.call(this,t),n&&n&1&&Wi.call(this,t))throw S(`EEXIST`,`copyFile`,t);$i.call(this,t,Qi.call(this,e,{})),Ha(this,`rename`,t.toString())}function ka(e,t,n){let r=ui(this,e),i=0;for(let e of t)i+=r.readSync(e,0,e.byteLength,n+i);return i}function Aa(e,t,n){let r=ui(this,e),i=0;for(let e of t)i+=r.writeSync(new Uint8Array(e.buffer),0,e.byteLength,n+i);return i}function ja(e,t){return e=j.call(this,e),new Bi(e,this)}function Ma(e,t,n){e=j.call(this,e),t=j.call(this,t);let r=Ki.call(this,e);if(n?.errorOnExist&&Wi.call(this,t))throw S(`EEXIST`,`cp`,t);switch(r.mode&O){case mt:if(!n?.recursive)throw S(`EISDIR`,`cp`,e);fa.call(this,t,{recursive:!0});for(let r of pa.call(this,e,{withFileTypes:!0}))n.filter&&!n.filter(M(e,r.name),M(t,r.name))||Ma.call(this,M(e,r.name),M(t,r.name),n);break;case dt:if(n?.dereference)Oa.call(this,e,t);else{let r=ga.call(this,e,`utf8`);ha.call(this,n?.verbatimSymlinks?r:jn.call(this,N(e),r),t)}break;case ft:Oa.call(this,e,t);break;case pt:case ht:case gt:case ut:default:throw S(`ENOSYS`,`cp`,e)}n?.preserveTimestamps&&xa.call(this,t,r.atime,r.mtime)}function Na(e,t){e=j.call(this,e);let{fs:n}=G(e,this);return wi(n,t?.bigint)}function Pa(e,t={}){e=Array.isArray(e)?e:[e];let n=D(this),{cwd:r=n.pwd,withFileTypes:i=!1,exclude:a=()=>!1,followSymlinks:o=!1}=t,s=jn.call(n,r instanceof URL?r.pathname:r),c=e.map(e=>e.startsWith(`/`)?Pn.call(n,s,e):e),l=c.some(e=>e.includes(`**`)),u=c.map(e=>{let t=e.search(/[*?[\]{]/);if(t===-1)return e;let n=e.lastIndexOf(`/`,t);return n===-1?``:e.slice(0,n)}),d=c.map(Cn);function f(e,t){let r=u.some(e=>t===e||e.startsWith(t+`/`)),i=l||r,a=Ki.call(n,e);return a.isSymbolicLink()?i&&(o||r)&&!!Gi.call(n,e,{throwIfNoEntry:!1})?.isDirectory():i&&a.isDirectory()}let p=[];function m(e){let t=pa.call(n,e,{withFileTypes:i,encoding:`utf8`});for(let r of t){let t=M(e,i?r.name:r),o=Pn.call(n,s,t);(typeof a==`function`?a(i?r:o):a.some(e=>zn(e,o)))||(f(t,o)&&m(t),d.some(e=>e.test(o))&&p.push(i?r:o))}}return m(s),p}var Fa=Gi,Ia=class extends u.default{_context;path;off(e,t,n,r){return super.off(e,t,n,r)}removeListener(e,t,n,r){return super.removeListener(e,t,n,r)}constructor(e,t){super(),this._context=e,this.path=t}setMaxListeners(){throw S(`ENOSYS`,`Watcher.setMaxListeners`)}getMaxListeners(){throw S(`ENOSYS`,`Watcher.getMaxListeners`)}prependListener(){throw S(`ENOSYS`,`Watcher.prependListener`)}prependOnceListener(){throw S(`ENOSYS`,`Watcher.prependOnceListener`)}rawListeners(){throw S(`ENOSYS`,`Watcher.rawListeners`)}ref(){return this}unref(){return this}},La=class extends Ia{options;realpath;constructor(e,t,n){let r=D(e);super(r,t),this.options=n,this.realpath=M(r.root,t),Ba(this.realpath,this)}close(){super.emit(`close`),Va(this.realpath,this)}[Symbol.dispose](){this.close()}},Ra=class extends Ia{options;intervalId;previous;constructor(e,t,n){super(e,t),this.options=n,this.start()}onInterval(){try{let e=Fa.call(this._context,this.path);Wn(this.previous,e)||(this.emit(`change`,e,this.previous),this.previous=e)}catch(e){this.emit(`error`,e)}}start(){let e=this.options.interval||5e3;try{this.previous=Fa.call(this._context,this.path)}catch(e){this.emit(`error`,e);return}this.intervalId=setInterval(this.onInterval.bind(this),e),!this.options.persistent&&typeof this.intervalId==`object`&&this.intervalId.unref()}stop(){this.intervalId&&=(clearInterval(this.intervalId),void 0),this.removeAllListeners()}},za=new Map;function Ba(e,t){let n=j(e);za.has(n)||za.set(n,new Set),za.get(n).add(t)}function Va(e,t){let n=j(e);za.has(n)&&(za.get(n).delete(t),za.get(n).size===0&&za.delete(n))}function Ha(e,t,n){let r=D(e);r&&(n=M(r.root??`/`,n)),n=j.call(e,n);for(let e=n;;e=N(e)){let r=za.get(e);if(r)for(let i of r)i.emit(`change`,t,Pn.call(i._context,e,n)||Fn(n));if(e===`/`)break}}var Ua=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Wa=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});async function Ga(e,t,n,r){if(t=jn.call(e,t),n){let n=G(t,e,r),i=W(n.fs).get(n.path)?.inode??await n.fs.stat(n.path).catch(()=>void 0);return{...n,fullPath:t,stats:i}}try{let i=G(t,e),a=W(i.fs).get(i.path)?.inode??await i.fs.stat(i.path);return nr(a)?await Ga(e,jn.call(e,N(t),await qa.call(e,t)),n,r):{...i,fullPath:t,stats:a}}catch{}let{base:i,dir:a}=Rn(t),o=a==`/`?`/`:(await Ga(e,a,!1,r)).fullPath,s=M(o,i),c=G(s,e),l=W(c.fs).get(c.path)?.inode??await c.fs.stat(c.path).catch(e=>{if(e.code!=`ENOENT`)throw b(Object.assign(e,{syscall:`stat`,path:s,...r}))});return l?nr(l)?await Ga(e,jn.call(e,o,await qa.call(e,s)),!1,r):{...c,fullPath:s,stats:l}:{...c,fullPath:s}}async function Ka(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=mi(n.flag),a={syscall:`open`,path:t},{fs:o,path:s,stats:c}=await Ga(e,t,n.preserveSymlinks,a);if(!c){let l={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,a);let u=N(s),d=await o.stat(u);if(U&&!z(e,d,2))throw S(`EACCES`,`open`,N(t));if(!R(d))throw S(`ENOTDIR`,`open`,N(t));if(!n.allowDirectory&&R({mode:r}))throw S(`EISDIR`,`open`,t);if(Ua(l,await ti(o,u,`rw`,d),!1),c=W(o).get(s)?.inode??await o.stat(s).catch(()=>void 0),!c){let{euid:n,egid:a}=D(e).credentials,c=await o.createFile(s,{mode:r,uid:d.mode&2048?d.uid:n,gid:d.mode&1024?d.gid:a});return Ha(e,`rename`,t),new ci(e,t,s,i,W(o).ref(s,c))}}catch(e){l.error=e,l.hasError=!0}finally{Wa(l)}}if(U&&!z(e,c,gi(i)))throw S(`EACCES`,a);if(i&128)throw S(`EEXIST`,a);if(!n.allowDirectory&&R({mode:r}))throw S(`EISDIR`,`open`,t);let l=new ci(e,t,s,i,W(o).ref(s,c));return i&512&&await l.truncate(0),l}async function qa(e){e=j.call(this,e);let t={syscall:`readlink`,path:e},{fs:n,stats:r,path:i}=await Ga(this,e,!0,t);if(!r)throw S(`ENOENT`,t);if(U&&!z(this,r,4))throw S(`EACCES`,t);if(!nr(r))throw S(`EINVAL`,t);let a=r.size,o=new Uint8Array(a);return await n.read(i,o,0,a),ce(o)}async function Ja(e,t={}){let n=j.call(this,e),{euid:r,egid:i}=D(this).credentials,{mode:a=511,recursive:o}=t,s={syscall:`mkdir`,path:n},{fullPath:c}=await Ga(this,N(n),!1,s),{fs:l,path:u}=G(M(c,Fn(n)),this,s),d=c!=N(n),f,p=async(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let c=N(t),m=o&&c!=`/`?await p(N(e),c):await l.stat(c);if(Ua(n,await ti(l,c,`rw`,m),!1),o){let n=W(l).get(t)?.inode??await l.stat(t).catch(()=>null);if(n){let r=nr(n)?(await Ga(this,e,!1,s)).stats:n;if(!r)throw S(`ENOENT`,s);if(!R(r))throw S(t==u?`EEXIST`:`ENOTDIR`,s);return n}if(d&&await l.exists(M(c,Fn(e))))throw S(`ENOTDIR`,`mkdir`,e)}if(U&&!z(this,m,2))throw S(`EACCES`,`mkdir`,e);let h=await l.mkdir(t,{mode:a,uid:m.mode&2048?m.uid:r,gid:m.mode&1024?m.gid:i}).catch(me({syscall:`mkdir`,path:e}));return o&&(f??=e),Ha(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{Wa(n)}};return await p(n,u),f}async function Ya(e,t={}){e=j.call(this,e);let n={syscall:`scandir`,path:e},{fs:r,path:i,stats:a}=await Ga(this,e,!1,n);if(!a)throw S(`ENOENT`,n);if(U&&!z(this,a,4))throw S(`EACCES`,n);if(!R(a))throw S(`ENOTDIR`,n);let o;{let e={stack:[],error:void 0,hasError:!1};try{Ua(e,await ti(r,i,`ro`,a),!1),o=await r.readdir(i)}catch(t){e.error=t,e.hasError=!0}finally{Wa(e)}}let s=[],c=async e=>{let n=await r.stat(M(i,e)).catch(e=>{if(e.code!=`ENOENT`)throw e});if(!n)return;let a=new Wr;if(a.ino=n.ino,a.type=Hr(n.mode),a.path=e,a.name=Fn(e),s.push(a),!t.recursive||!R(n))return;let o=await r.readdir(M(i,e));for(let t of o)await c(M(e,t))};return await Promise.all(o.map(c)),s}async function Xa(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=await Ga(this,e,!0,r),a=G(t,this,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=i.fs,s=await o.stat(N(i.path)),c=await o.stat(N(a.path)),l=await o.stat(a.path).catch(e=>{if(e.code==`ENOENT`)return null;throw e});if(U&&(!z(this,s,4)||!z(this,c,2)))throw S(`EACCES`,r);if(l&&!R(i.stats)&&R(l))throw S(`EISDIR`,r);if(l&&R(i.stats)&&!R(l))throw S(`ENOTDIR`,r);let u=N(i.path),d=N(a.path),f=[[u,s],[d,c]];s.ino>c.ino&&f.reverse(),Ua(n,await ti(o,f[0][0],`rw`,f[0][1]),!1),Ua(n,s.ino==c.ino?null:await ti(o,f[1][0],`rw`,f[1][1]),!1),await i.fs.rename(i.path,a.path),W(o).rename(i.path,a.path),Ha(this,`rename`,e),Ha(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Wa(n)}}async function Za(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,path:a}=G(e,this,r),o=G(t,this,r);if(i.uuid!=o.fs.uuid)throw S(`EXDEV`,r);let s=await i.stat(a);if(U){if(!z(this,s,4))throw S(`EACCES`,r);let e=await i.stat(N(a));if(!z(this,e,4))throw S(`EACCES`,r);let t=await i.stat(N(o.path));if(!z(this,t,2))throw S(`EACCES`,r)}Ua(n,await ti(i,N(o.path),`rw`),!1),await i.link(a,o.path),W(i).link(a,o.path)}catch(e){n.error=e,n.hasError=!0}finally{Wa(n)}}async function Qa(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=(await Ga(this,e,!1,n)).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=await Ga(this,i,!1,n),s=t?M(o,t):o;r=W(a).get(s)?.inode??await a.stat(s).catch(me(n))}if(!r)throw S(`ENOENT`,n);if(U&&!z(this,r,4))throw S(`EACCES`,n);return r}var $a=class extends u.default{input;output;terminal;line=``;_cursor=0;get cursor(){return this._cursor}_buffer=``;_closed=!1;_paused=!1;_prompt=``;_history=[];_historyIndex=-1;_currentLine=``;constructor(e,t,n,r=!1){super(),this.input=e,this.output=t,this.terminal=r,this.input.on(`data`,this._onData),this.input.on(`end`,this.close.bind(this)),this.input.on(`close`,this.close.bind(this))}_onData=e=>{if(!(this._paused||this._closed)){this._buffer+=typeof e==`string`?e:e.toString(`utf8`);for(let e=this._buffer.indexOf(`
|
|
2
2
|
`);e>=0;e=this._buffer.indexOf(`
|
|
3
3
|
`)){let t=this._buffer.substring(0,e);t.endsWith(`\r`)&&(t=t.substring(0,t.length-1)),this._buffer=this._buffer.substring(e+1),this.line=t,t.trim()&&!t.trim().match(/^\s*$/)&&this._history.at(-1)!=t&&(this._history.push(t),this._historyIndex=this._history.length,this.emit(`history`,this._history)),this.emit(`line`,t)}}};close(){if(!this._closed){if(this._closed=!0,this.input?.removeAllListeners?.(),this._buffer.length){let e=this._buffer;this._buffer=``,this.line=e,this.emit(`line`,e)}this.emit(`history`,this._history),this.emit(`close`),this.removeAllListeners()}}pause(){return this._paused?this:(this._paused=!0,`pause`in this.input&&this.input.pause(),this.emit(`pause`),this)}resume(){return this._paused?(this._paused=!1,`resume`in this.input&&this.input.resume(),this.emit(`resume`),this):this}setPrompt(e){this._prompt=e}getPrompt(){return this._prompt}prompt(e){if(!this.output)return;if(!e){this.output.write(this._prompt);return}let{cols:t}=this.getCursorPos();this.output.write(this._prompt),this._cursor=t}write(e,t){if(!this._closed){if(e){let t=typeof e==`string`?e:e.toString(`utf8`);this._onData(t)}if(!(!t||!this.terminal))switch((t.ctrl?`^`:``)+t.name){case`^c`:this.emit(`SIGINT`);break;case`^z`:this.emit(`SIGTSTP`);break;case`^q`:this.emit(`SIGCONT`);break;case`home`:case`^a`:if(!this.output)return;no(this.output,-this._cursor,0),this._cursor=0,this._cursor=0;break;case`^e`:case`end`:{if(!this.output)return;let e=this.line.length-this._cursor;if(!e)return;no(this.output,e,0),this._cursor=this.line.length,this._cursor=this.line.length;break}case`^k`:{if(!this.output||this._cursor>=this.line.length)return;let e=this.line.slice(0,this._cursor);to(this.output,1),this.line=e;break}case`^u`:{if(!this.output||!this._cursor)return;let e=this.line.slice(this._cursor);to(this.output,0),no(this.output,0,0),this.output.write(this._prompt+e),this.line=e,this._cursor=0,this._cursor=0;break}case`^w`:{if(!this.output||!this._cursor)return;let e=this._cursor-1;for(;e>=0&&this.line[e]===` `;)e--;for(;e>=0&&this.line[e]!==` `;)e--;let t=this.line.slice(0,e+1)+this.line.slice(this._cursor),n=e+1;this._renderLine(t),this._cursor=n,this._cursor=n,no(this.output,-t.length,0),no(this.output,n,0);break}case`^return`:case`^enter`:this._onData(`
|
|
4
4
|
`);break;case`return`:case`enter`:this._onData((e?typeof e==`string`?e:e.toString(`utf8`):``)+`
|
|
@@ -6,7 +6,7 @@ import{i as e,n as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{t as r}f
|
|
|
6
6
|
`,vd=class extends u.default{entries=[];toString(){return _d+this.entries.map(e=>`${e.op.padEnd(gd)} ${e.path}`).join(`
|
|
7
7
|
`)}fromString(e){if(!e.startsWith(_d))throw T(C(`EINVAL`,`Invalid journal contents, refusing to parse`));for(let t of e.split(`
|
|
8
8
|
`)){if(t.startsWith(`#`))continue;let[e,n]=t.split(/\s+/);if(!hd(e)){E(`Unknown operation in journal (skipping): `+e);continue}this.entries.push({op:e,path:n})}return this}add(e,t){this.entries.push({op:e,path:t}),this.emit(`update`,e,t),this.emit(e,t)}has(e,t){let n=JSON.stringify({op:e,path:t});for(let e of this.entries)if(JSON.stringify(e)===n)return!0;return!1}delete(e,t){this.entries=this.entries.filter(n=>n.op!=e||n.path!=t)}isDeleted(e){let t=!1;for(let n of this.entries)n.path==e&&n.op===`delete`&&(t=!0);return t}},yd=class extends Sr{readable;writable;journal;async ready(){await this.readable.ready(),await this.writable.ready()}readySync(){this.readable.readySync(),this.writable.readySync()}constructor(e,t,n=new vd){if(super(1651862636,e.name),this.readable=e,this.writable=t,this.journal=n,t.attributes.has(`no_write`))throw T(C(`EINVAL`,`Writable file system can not be written to`));e.attributes.set(`no_write`)}isDeleted(e){return this.journal.isDeleted(e)}inos=new Map;_nextIno=1;renameInos(e,t){let n=[];for(let[r,i]of this.inos)r!=e&&!r.startsWith(e+`/`)||n.push({path:r,add:t+r.slice(e.length),ino:i});for(let e of n)this.inos.delete(e.path),this.inos.set(e.add,e.ino)}remapIno(e,t){let n=this.inos.get(e);return n===void 0&&(n=this._nextIno++,this.inos.set(e,n)),Object.assign(p(t,Zn),{attributes:t.attributes,ino:n})}usage(){return this.readable.usage()}async sync(){await this.writable.sync()}syncSync(){this.writable.syncSync()}async read(e,t,n,r){return await this.writable.exists(e)?await this.writable.read(e,t,n,r):await this.readable.read(e,t,n,r)}readSync(e,t,n,r){return this.writable.existsSync(e)?this.writable.readSync(e,t,n,r):this.readable.readSync(e,t,n,r)}async write(e,t,n){return await this.copyForWrite(e),await this.writable.write(e,t,n)}writeSync(e,t,n){return this.copyForWriteSync(e),this.writable.writeSync(e,t,n)}async rename(e,t){await this.copyForWrite(e);try{await this.writable.rename(e,t)}catch{if(this.isDeleted(e))throw C(`ENOENT`)}await this.readable.exists(e)&&this.journal.add(`delete`,e),this.journal.delete(`delete`,t),this.renameInos(e,t)}renameSync(e,t){this.copyForWriteSync(e);try{this.writable.renameSync(e,t)}catch{if(this.isDeleted(e))throw C(`ENOENT`)}this.readable.existsSync(e)&&this.journal.add(`delete`,e),this.journal.delete(`delete`,t),this.renameInos(e,t)}async stat(e){try{return this.remapIno(e,await this.writable.stat(e))}catch{if(this.isDeleted(e))throw C(`ENOENT`);return this.remapIno(e,await this.readable.stat(e))}}statSync(e){try{return this.remapIno(e,this.writable.statSync(e))}catch{if(this.isDeleted(e))throw C(`ENOENT`);return this.remapIno(e,this.readable.statSync(e))}}async touch(e,t){await this.copyForWrite(e,t.size),await this.writable.touch(e,t)}touchSync(e,t){this.copyForWriteSync(e,t.size),this.writable.touchSync(e,t)}async createFile(e,t){await this.createParentDirectories(e);let n=await this.writable.createFile(e,t);return this.journal.delete(`delete`,e),this.remapIno(e,n)}createFileSync(e,t){this.createParentDirectoriesSync(e);let n=this.writable.createFileSync(e,t);return this.journal.delete(`delete`,e),this.remapIno(e,n)}async link(e,t){await this.copyForWrite(e),await this.writable.link(e,t),this.journal.delete(`delete`,t)}linkSync(e,t){this.copyForWriteSync(e),this.writable.linkSync(e,t),this.journal.delete(`delete`,t)}async unlink(e){if(!await this.exists(e))throw C(`ENOENT`);await this.writable.exists(e)&&await this.writable.unlink(e),await this.exists(e)&&this.journal.add(`delete`,e),this.inos.delete(e)}unlinkSync(e){if(!this.existsSync(e))throw C(`ENOENT`);this.writable.existsSync(e)&&this.writable.unlinkSync(e),this.existsSync(e)&&this.journal.add(`delete`,e),this.inos.delete(e)}async rmdir(e){if(!await this.exists(e))throw C(`ENOENT`);if(await this.writable.exists(e)&&await this.writable.rmdir(e),!await this.exists(e)){this.inos.delete(e);return}if((await this.readdir(e)).length)throw C(`ENOTEMPTY`);this.journal.add(`delete`,e),this.inos.delete(e)}rmdirSync(e){if(!this.existsSync(e))throw C(`ENOENT`);if(this.writable.existsSync(e)&&this.writable.rmdirSync(e),!this.existsSync(e)){this.inos.delete(e);return}if(this.readdirSync(e).length)throw C(`ENOTEMPTY`);this.journal.add(`delete`,e),this.inos.delete(e)}async mkdir(e,t){if(await this.exists(e))throw C(`EEXIST`);await this.createParentDirectories(e);let n=await this.writable.mkdir(e,t);return this.journal.delete(`delete`,e),this.remapIno(e,n)}mkdirSync(e,t){if(this.existsSync(e))throw C(`EEXIST`);this.createParentDirectoriesSync(e);let n=this.writable.mkdirSync(e,t);return this.journal.delete(`delete`,e),this.remapIno(e,n)}async readdir(e){if(this.isDeleted(e))throw C(`ENOENT`);let t=await this.readable.stat(e).catch(()=>null),n=await this.writable.stat(e).catch(()=>null);if(!t&&!n)throw C(`ENOENT`);let r=t&&R(t)?await this.readable.readdir(e):[];if(n&&R(n))for(let t of await this.writable.readdir(e))r.includes(t)||r.push(t);return r.filter(t=>!this.isDeleted(M(e,t)))}readdirSync(e){if(this.isDeleted(e))throw C(`ENOENT`);let t=null,n=null;try{t=this.readable.statSync(e)}catch{}try{n=this.writable.statSync(e)}catch{}if(!t&&!n)throw C(`ENOENT`);let r=t&&R(t)?this.readable.readdirSync(e):[];if(n&&R(n))for(let t of this.writable.readdirSync(e))r.includes(t)||r.push(t);return r.filter(t=>!this.isDeleted(M(e,t)))}streamRead(e,t){return this.writable.existsSync(e)?this.writable.streamRead(e,t):this.readable.streamRead(e,t)}streamWrite(e,t){return this.copyForWriteSync(e),this.writable.streamWrite(e,t)}createParentDirectoriesSync(e){let t=[],n=te(C(`EDEADLK`));for(let n=N(e);!this.writable.existsSync(n);n=N(n))t.push(n);n(),t.length&&Ee(`COW: Creating parent directories: `+t.join(`, `));for(let e of t.reverse())this.writable.mkdirSync(e,this.statSync(e))}async createParentDirectories(e){let t=[],n=te(C(`EDEADLK`,e));for(let n=N(e);!await this.writable.exists(n);n=N(n))t.push(n);n(),t.length&&Ee(`COW: Creating parent directories: `+t.join(`, `));for(let e of t.reverse())await this.writable.mkdir(e,await this.stat(e))}copyForWriteSync(e,t){if(!this.existsSync(e))throw C(`ENOENT`);this.writable.existsSync(N(e))||this.createParentDirectoriesSync(e),this.writable.existsSync(e)||this.copyToWritableSync(e,t)}async copyForWrite(e,t){if(!await this.exists(e))throw C(`ENOENT`);if(await this.writable.exists(N(e))||await this.createParentDirectories(e),!await this.writable.exists(e))return this.copyToWritable(e,t)}copyToWritableSync(e,t){let n=this.readable.statSync(e);if(R(n)){this.writable.mkdirSync(e,n);for(let t of this.readable.readdirSync(e))this.copyToWritableSync(M(e,t));return}let r=Math.min(n.size,t??n.size),i=new Uint8Array(r);r&&this.readable.readSync(e,i,0,r),this.writable.createFileSync(e,n),this.writable.touchSync(e,{...p(n,Zn),attributes:n.attributes,size:r}),r&&this.writable.writeSync(e,i,0)}async copyToWritable(e,t){let n=await this.readable.stat(e);if(R(n)){await this.writable.mkdir(e,n);for(let t of await this.readable.readdir(e))await this.copyToWritable(M(e,t));return}let r=Math.min(n.size,t??n.size),i=new Uint8Array(r);r&&await this.readable.read(e,i,0,r),await this.writable.createFile(e,n),await this.writable.touch(e,{...p(n,Zn),attributes:n.attributes,size:r}),r&&await this.writable.write(e,i,0)}},bd={name:`CopyOnWrite`,options:{writable:{type:`object`,required:!0},readable:{type:`object`,required:!0},journal:{type:`object`,required:!1}},async create(e){return new yd(await rd(e.readable),await rd(e.writable),e.journal)}},xd=new Map;async function Sd(e,t={},n=!1){let r=await fetch(e,t).catch(e=>{throw{tag:`fetch`,message:e.message}});if(!r.ok)throw{tag:`status`,response:r};let i=await r.arrayBuffer().catch(e=>{if(!n)throw{tag:`buffer`,response:r,message:e.message}});return{response:r,data:i?new Uint8Array(i):void 0}}async function Cd(e,t,n={}){let r=new Request(e,n);if(typeof t.start!=`number`||typeof t.end!=`number`){let{data:r}=await Sd(e,n);return new s(e,r.byteLength,t,xd).add(r,0),r}if(typeof t.size!=`number`){t.warn?.(e+`: Size not provided, an additional HEAD request is being made`);let{headers:n}=await fetch(r,{method:`HEAD`}),i=parseInt(n.get(`Content-Length`)??``);if(typeof i!=`number`)throw{tag:`size`,message:`Response is missing content-length header and no size was provided`};t.size=i}let{size:i,start:a,end:o}=t,c=xd.get(e)??new s(e,i,t,xd);r.headers.set(`If-Range`,new Date().toUTCString());for(let{start:n,end:l}of c.missing(a,o)){let{data:u,response:d}=await Sd(r,{headers:{Range:`bytes=${n}-${l}`}});if(d.status==206){c.add(u,n);continue}return t.warn?.(e+`: Remote does not support range requests with bytes. Falling back to full data.`),new s(e,i,t,xd).add(u,0),u.subarray(a,o)}c.collect();let l=c.regionAt(a);return l.data.subarray(a-l.offset,o-l.offset)}function wd(e,t){let n=xd.get(e);if(!n)return t.size?{data:new Uint8Array,missing:[{start:0,end:t.size??0}]}:(t.warn?.(e+`: Size not provided and cache is empty, can not determine missing range`),{data:void 0,missing:[]});let{start:r=0,end:i=n.size}=t,a=new Uint8Array(i-r);for(let e of n.regions)if(!(e.offset+e.data.byteLength<=r)){if(e.offset>=i)break;for(let t of e.ranges){if(t.end<=r)continue;if(t.start>=i)break;let n=Math.max(t.start,r),o=Math.min(t.end,i);n>=o||a.set(e.data.subarray(n-e.offset,o-e.offset),n-r)}}return{data:a,missing:n.missing(r,i)}}async function Td(e,t,n,r={}){xd.has(e)||new s(e,n.size??t.byteLength,n,xd);let i=xd.get(e),{offset:a=0,method:o=`POST`}=n;if(!n.cacheOnly){let n=new Headers(r.headers||{});if(n.get(`Content-Type`)||n.set(`Content-Type`,`application/octet-stream`),!n.get(`Content-Range`)&&(a!==0||t.byteLength!==i.size)){let e=a,r=a+t.byteLength-1,o=Math.max(i.size,r+1);n.set(`Content-Range`,`bytes ${e}-${r}/${o}`)}await Sd(new Request(e,{...r,method:o,headers:n,body:t.buffer instanceof ArrayBuffer?t:Uint8Array.from(t)}),{},!0)}i.add(t,a)}async function Ed(e,t={},n={}){t.cacheOnly||await Sd(new Request(e,n),{method:`DELETE`},!0),xd.delete(e)}var Dd=class extends Sr{index;constructor(e,t,n=new lr){super(e,t),this.index=n}usage(){return this.index.usage()}pathsForRename(e,t){if(!this.index.has(e))throw C(`ENOENT`);if((N(t)+`/`).startsWith(e+`/`))throw C(`EBUSY`);let n=[];for(let[r,i]of this.index.entries()){let a=Pn(e,r);if(a.startsWith(`..`))continue;let o=M(t,a);o.endsWith(`/`)&&(o=o.slice(0,-1)),n.push({from:r,to:o,inode:i})}return n.sort((e,t)=>t.from.length-e.from.length),n}async rename(e,t){if(e==t)return;let n=this.pathsForRename(e,t),r=new Map;for(let{from:e,to:t,inode:i}of n){let n=new Uint8Array(i.size);await this.read(e,n,0,i.size),r.set(t,n),this.index.delete(e),await this.remove(e),this.index.has(t)&&await this.remove(t)}n.reverse();for(let{to:e,inode:t}of n){let n=r.get(e);this.index.set(e,t),(t.mode&61440)==16384?await this._mkdir?.(e,t):await this.write(e,n,0)}}renameSync(e,t){if(e==t)return;let n=this.pathsForRename(e,t),r=new Map;for(let{from:e,to:t,inode:i}of n){let n=new Uint8Array(i.size);this.readSync(e,n,0,i.size),r.set(t,n),this.index.delete(e),this.removeSync(e),this.index.has(t)&&this.removeSync(t)}n.reverse();for(let{to:e,inode:t}of n){let n=r.get(e);this.index.set(e,t),(t.mode&61440)==16384?this._mkdirSync?.(e,t):this.writeSync(e,n,0)}}async stat(e){let t=this.index.get(e);if(!t)throw C(`ENOENT`);return new L(t)}statSync(e){let t=this.index.get(e);if(!t)throw C(`ENOENT`);return new L(t)}async touch(e,t){(this.index.get(e)??_(C(`ENOENT`))).update(t)}touchSync(e,t){(this.index.get(e)??_(C(`ENOENT`))).update(t)}_remove(e,t){let n=this.index.get(e);if(!n)throw C(`ENOENT`);let r=(n.mode&O)==mt;if(!r&&!t)throw C(`ENOTDIR`);if(r&&t)throw C(`EISDIR`);r||this.index.delete(e)}async unlink(e){this._remove(e,!0),await this.remove(e)}unlinkSync(e){this._remove(e,!0),this.removeSync(e)}async rmdir(e){if(this._remove(e,!1),(await this.readdir(e)).length)throw C(`ENOTEMPTY`);this.index.delete(e),await this.remove(e)}rmdirSync(e){if(this._remove(e,!1),this.readdirSync(e).length)throw C(`ENOTEMPTY`);this.index.delete(e),this.removeSync(e)}create(e,t){if(this.index.has(e))throw C(`EEXIST`);let n=this.index.get(N(e));if(!n)throw C(`ENOENT`);let r=this.index._alloc(),i=new L({ino:r,data:r+1,mode:t.mode,size:0,uid:n.mode&2048?n.uid:t.uid,gid:n.mode&1024?n.gid:t.gid,nlink:1});return this.index.set(e,i),i}async createFile(e,t){let n=this.create(e,{...t,mode:t.mode|ft});try{return await this._create?.(e,n),n}catch(t){throw this.index.delete(e),t}}createFileSync(e,t){let n=this.create(e,{...t,mode:t.mode|ft});try{return this._createSync?.(e,n),n}catch(t){throw this.index.delete(e),t}}async mkdir(e,t){t={...t,mode:t.mode|mt};let n=this.create(e,t);return await this._mkdir?.(e,t),n}mkdirSync(e,t){t={...t,mode:t.mode|mt};let n=this.create(e,t);return this._mkdirSync?.(e,t),n}link(){throw C(`ENOSYS`)}linkSync(){throw C(`ENOSYS`)}async readdir(e){return Object.keys(this.index.directoryEntries(e))}readdirSync(e){return Object.keys(this.index.directoryEntries(e))}async sync(){}syncSync(){}};function Od(e){if(!(`tag`in e))throw T(C(`EIO`,e.stack));switch(e.tag){case`fetch`:throw T(C(`EREMOTEIO`,e.message));case`status`:throw T(C(e.response.status>500?`EREMOTEIO`:`EIO`,`Response status code is `+e.response.status));case`size`:throw T(C(`EBADE`,e.message));case`buffer`:throw T(C(`EIO`,`Failed to decode buffer`))}}var kd=class extends Dd{baseUrl;requestInit;remoteWrite;_asyncDone=Promise.resolve();_async(e){this._asyncDone=this._asyncDone.then(()=>e).catch(e=>Ee(`Async operation failed: `+(e.message??e)))}constructor(e,t,n={},r){super(544106099,`nfs`,e),this.baseUrl=t,this.requestInit=n,this.remoteWrite=r}resize(e,t,n){if(R(t)||t.size==n)return;let r=this.baseUrl+e,i=xd.get(r)??new s(r,n,{},xd);if(i.size=t.size,t.size<n)return;let a=new Uint8Array(t.size-n);if(i.add(a,n),this.remoteWrite)return Td(r,a,{offset:n,warn:E},this.requestInit).catch(Od)}async _create(e,t){await Td(this.baseUrl+e,new Uint8Array(t.size),{warn:E,cacheOnly:!this.remoteWrite,method:`PUT`},this.requestInit).catch(Od)}_createSync(e,t){this._async(this._create(e,t))}async touch(e,t){let n=this.index.get(e)??_(C(`ENOENT`)),r=n.size;n.update(t),await this.resize(e,n,r)}touchSync(e,t){let n=this.index.get(e)??_(C(`ENOENT`)),r=n.size;n.update(t);let i=this.resize(e,n,r);i&&this._async(i)}async remove(e){await Ed(this.baseUrl+e,{warn:E,cacheOnly:!this.remoteWrite},this.requestInit)}removeSync(e){this._async(this.remove(e))}async read(e,t,n=0,r){let i=this.index.get(e);if(!i)throw C(`ENOENT`);if(r-n==0)return;let a=await Cd(this.baseUrl+e,{start:n,end:r,size:i.size,warn:E},this.requestInit).catch(Od).catch(()=>void 0);if(!a)throw C(`ENODATA`);t.set(a)}readSync(e,t,n=0,r){let i=this.index.get(e);if(!i)throw C(`ENOENT`);if(r-n==0)return;let{data:a,missing:o}=wd(this.baseUrl+e,{start:n,end:r,size:i.size,warn:E});if(!a)throw C(`ENODATA`);if(o.length)throw this._async(Cd(this.baseUrl+e,{start:n,end:r,size:i.size,warn:E},this.requestInit)),C(`EAGAIN`);t.set(a)}async write(e,t,n){let r=this.index.get(e);if(!r)throw C(`ENOENT`);r.update({mtimeMs:Date.now(),size:Math.max(r.size,t.byteLength+n)}),await Td(this.baseUrl+e,t,{offset:n,warn:E,cacheOnly:!this.remoteWrite},this.requestInit).catch(Od)}writeSync(e,t,n){let r=this.index.get(e);if(!r)throw C(`ENOENT`);r.update({mtimeMs:Date.now(),size:Math.max(r.size,t.byteLength+n)}),this._async(Td(this.baseUrl+e,t,{offset:n,warn:E,cacheOnly:!this.remoteWrite},this.requestInit).catch(Od))}},Ad={name:`Fetch`,options:{index:{type:[`string`,`object`],required:!1},baseUrl:{type:`string`,required:!0},requestInit:{type:`object`,required:!1},remoteWrite:{type:`boolean`,required:!1}},isAvailable(){return typeof globalThis.fetch==`function`},async create(e){let t=new URL(e.baseUrl);t.pathname=j(t.pathname);let n=t.toString();n.at(-1)==`/`&&(n=n.slice(0,-1)),e.index??=`index.json`;let r=new lr;if(typeof e.index!=`string`)r.fromJSON(e.index);else{let t=await Cd(e.index,{warn:E},e.requestInit).catch(Od);r.fromJSON(JSON.parse(ce(t)))}let i=new kd(r,n,e.requestInit,e.remoteWrite);if(e.disableAsyncCache)return i;for(let[t,i]of r)i.mode&32768&&await Cd(n+t,{warn:E},e.requestInit).catch(Od);return i}},jd=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Md=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),Nd=class extends Sr{nodeFS;prefix;constructor(e,t){super(1852793957,`nodefs`),this.nodeFS=e,this.prefix=t}usage(){let e=this.nodeFS.statfsSync(this.prefix);return{totalSpace:e.bsize*e.blocks,freeSpace:e.bsize*e.bfree}}path(e){return this.prefix+e}async rename(e,t){await this.nodeFS.promises.rename(this.path(e),this.path(t))}renameSync(e,t){this.nodeFS.renameSync(this.path(e),this.path(t))}async stat(e){return await this.nodeFS.promises.stat(this.path(e))}statSync(e){return this.nodeFS.statSync(this.path(e))}async touch(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=jd(n,await this.nodeFS.promises.open(this.path(e),`r`),!0);await r.chmod(t.mode);try{await r.chown(t.uid,t.gid)}catch(e){T(`Failed to chown passthrough file: `+e.message)}}catch(e){n.error=e,n.hasError=!0}finally{let e=Md(n);e&&await e}}touchSync(e,t){this.nodeFS.chmodSync(this.path(e),t.mode);try{this.nodeFS.chownSync(this.path(e),t.uid,t.gid)}catch(e){T(`Failed to chown passthrough file: `+e.message)}}async unlink(e){await this.nodeFS.promises.unlink(this.path(e))}unlinkSync(e){this.nodeFS.unlinkSync(this.path(e))}async mkdir(e,t){return await this.nodeFS.promises.mkdir(this.path(e),t),await this.nodeFS.promises.stat(this.path(e))}mkdirSync(e,t){return this.nodeFS.mkdirSync(this.path(e),t),this.nodeFS.statSync(this.path(e))}async readdir(e){return await this.nodeFS.promises.readdir(this.path(e))}readdirSync(e){return this.nodeFS.readdirSync(this.path(e))}async createFile(e,t){if(R(t))await this.nodeFS.promises.mkdir(this.path(e),{mode:t.mode});else{let t={stack:[],error:void 0,hasError:!1};try{await jd(t,await this.nodeFS.promises.open(this.path(e),`wx`),!0).close()}catch(e){t.error=e,t.hasError=!0}finally{let e=Md(t);e&&await e}}return await this.nodeFS.promises.stat(this.path(e))}createFileSync(e,t){if(R(t))this.nodeFS.mkdirSync(this.path(e),{mode:t.mode});else{let t=this.nodeFS.openSync(this.path(e),`wx`);this.nodeFS.closeSync(t)}return this.nodeFS.statSync(this.path(e))}async rmdir(e){await this.nodeFS.promises.rmdir(this.path(e))}rmdirSync(e){this.nodeFS.rmdirSync(this.path(e))}async sync(){E(`Sync on passthrough is unnecessary`)}syncSync(){E(`Sync on passthrough is unnecessary`)}async link(e,t){await this.nodeFS.promises.link(this.path(e),this.path(t))}linkSync(e,t){this.nodeFS.linkSync(this.path(e),this.path(t))}async read(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{await jd(i,await this.nodeFS.promises.open(this.path(e),`r`),!0).read({buffer:t,offset:n,length:r-n})}catch(e){i.error=e,i.hasError=!0}finally{let e=Md(i);e&&await e}}readSync(e,t,n,r){let i=this.nodeFS.openSync(this.path(e),`r`);try{this.nodeFS.readSync(i,t,{offset:n,length:r-n})}finally{this.nodeFS.closeSync(i)}}async write(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{await jd(r,await this.nodeFS.promises.open(this.path(e),`w`),!0).write(t,n)}catch(e){r.error=e,r.hasError=!0}finally{let e=Md(r);e&&await e}}writeSync(e,t,n){let r=this.nodeFS.openSync(this.path(e),`w`);try{this.nodeFS.writeSync(r,t,n)}finally{this.nodeFS.closeSync(r)}}},Pd={name:`Passthrough`,options:{fs:{type:`object`,required:!0},prefix:{type:`string`,required:!0}},create({fs:e,prefix:t}){return new Nd(e,t)}},Fd=t({attach:()=>Yd,catchMessages:()=>Zd,decodeMessage:()=>Ud,detach:()=>Xd,encodeMessage:()=>Hd,from:()=>Bd,fromNode:()=>Rd,fromWeb:()=>Ld,fromWebSocket:()=>zd,handleRequest:()=>Qd,handleResponse:()=>Jd,isMessage:()=>Wd,isPort:()=>Id,request:()=>qd});function Id(e){return typeof e==`object`&&!!e&&`channel`in e&&`send`in e&&`addHandler`in e&&`removeHandler`in e}function Ld(e){let t=new Map;return{channel:e,send:e.postMessage.bind(e),addHandler(n){let r=e=>n(e.data);t.set(n,r),e.addEventListener(`message`,r)},removeHandler(n){e.removeEventListener(`message`,t.get(n))}}}function Rd(e){return{channel:e,send:e.postMessage.bind(e),addHandler:e.on.bind(e,`message`),removeHandler:e.off.bind(e,`message`)}}function zd(e){return{channel:e,send(t){e.send(Hd(t))},addHandler(t){e.addEventListener(`message`,e=>{t(Ud(e.data))})},removeHandler(t){e.removeEventListener(`message`,e=>{t(Ud(e.data))})}}}function Bd(e){if(Id(e))return e;if(e instanceof WebSocket)return zd(e);if(`on`in e)return Rd(e);if(`addEventListener`in e)return Ld(e);throw T(C(`EINVAL`,`Invalid port type`))}var Vd=1;function Hd(e){return`Z${Vd}${JSON.stringify(e,(e,t)=>{if(e!=`_zenfs`)return t instanceof Uint8Array?`$`+t.toBase64():t})}`}function Ud(e){if(!e.startsWith(`Z`))return{};e=e.slice(1);let t=parseInt(e);if(isNaN(t))return E(`Ignoring encoded message with missing version`),{};if(e=e.slice(t.toString().length),!h(e))return E(`Ignoring encoded message with invalid JSON`),{};if(t!=Vd)throw T(C(`EPROTONOSUPPORT`,`Version mismatch in RPC message encoding (got ${t}, expected ${Vd})`));return{...JSON.parse(e,(e,t)=>typeof t==`string`&&t.startsWith(`$`)?Uint8Array.fromBase64(t.slice(1)):t),_zenfs:!0}}function Wd(e){return typeof e==`object`&&!!e&&`_zenfs`in e&&!!e._zenfs}function Gd(e){let t=Kd.get(e);t&&(t.timeout&&(clearTimeout(t.timeout),typeof t.timeout==`object`&&t.timeout.unref()),Kd.delete(e))}var Kd=new Map;function qd(e,{port:t,timeout:n=1e3,fs:r}){let i=`
|
|
9
|
-
`+Error().stack.slice(6);if(!t)throw T(C(`EINVAL`,`Can not make an RPC request without a port`));let{resolve:a,reject:o,promise:s}=Promise.withResolvers(),c=Math.random().toString(16).slice(5),l={resolve:a,reject:o,promise:s,fs:r,timeout:setTimeout(()=>{let e=T(C(`ETIMEDOUT`,`RPC request timed out`));e.stack+=i,Gd(c),o(e)},n)};return Kd.set(c,l),t.send({...e,_zenfs:!0,id:c,stack:i}),s}function Jd(e){if(!Wd(e))return;if(!Kd.has(e.id)){let t=T(C(`EIO`,`Invalid RPC id: `+e.id));throw t.stack+=e.stack,t}let{resolve:t,reject:n}=Kd.get(e.id);if(e.error){let t=x.fromJSON({code:`EIO`,errno:y.EIO,...e.error});t.stack+=e.stack,Gd(e.id),n(t);return}Gd(e.id),t([`stat`,`createFile`,`mkdir`].includes(e.method)?new L(e.value):e.value)}function Yd(e,t){if(!e)throw T(C(`EINVAL`,`Cannot attach to non-existent port`));Te(`Attached handler to port: `+t.name),e.addHandler(t)}function Xd(e,t){if(!e)throw T(C(`EINVAL`,`Cannot detach from non-existent port`));Te(`Detached handler from port: `+t.name),e.removeHandler(t)}function Zd(e){let t=[],n=t.push.bind(t);return Yd(e,n),async function(r){Xd(e,n);for(let n of t)await Qd(e,r,`data`in n?n.data:n)}}async function Qd(e,t,n){if(!Wd(n))return;let r,i;try{switch(n.method){case`read`:{let[e,i,a,o]=n.args;await t.read(e,i,a,o),r=i;break}case`stat`:case`createFile`:case`mkdir`:{let e=await t[n.method](...n.args),i=e instanceof L?e:new L(e);r=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);break}case`touch`:{let[e,i]=n.args;await t.touch(e,new L(i)),r=void 0;break}default:r=await t[n.method](...n.args)}}catch(e){i=e instanceof x?e.toJSON():p(e,`message`,`stack`)}e.send({_zenfs:!0,...p(n,`id`,`method`,`stack`),error:i,value:r})}var $d=[`rename`,`stat`,`touch`,`createFile`,`unlink`,`rmdir`,`mkdir`,`readdir`,`exists`,`link`,`sync`,`read`,`write`,`ioctl`];function ef(e){class t extends e{async done(){return this.sync()}queueDone(){return this.sync()}_promise=Promise.resolve();_async(e){this._promise=this._promise.finally(()=>e())}_isInitialized=!1;_skippedCacheUpdates=0;constructor(...e){super(...e),this._patchAsync()}async ready(){if(await super.ready(),!(this._isInitialized||this.attributes.has(`no_async_preload`))){if(await this._promise,this.checkSync(),await this._sync.ready(),this._sync instanceof Dr&&this instanceof Dr){let e=this._sync.transaction(),t=this.transaction(),n=[];for(let r of await t.keys())n.push(t.get(r).then(t=>e.setSync(r,t)));await Promise.all(n),this._isInitialized=!0;return}try{await this.crossCopy(`/`),Ee(`Skipped ${this._skippedCacheUpdates} updates to the sync cache during initialization`),this._isInitialized=!0}catch(e){throw this._isInitialized=!1,Ce(e)}}}checkSync(){if(this.attributes.has(`no_async_preload`))throw C(`ENOTSUP`,`Sync preloading has been disabled for this async file system`);if(!this._sync)throw Ce(C(`ENOTSUP`,`No sync cache is attached to this async file system`))}renameSync(e,t){this.checkSync(),this._sync.renameSync(e,t),this._async(()=>this.rename(e,t))}statSync(e){return this.checkSync(),this._sync.statSync(e)}touchSync(e,t){this.checkSync(),this._sync.touchSync(e,t),this._async(()=>this.touch(e,t))}createFileSync(e,t){this.checkSync();let n=this._sync.createFileSync(e,t);return this._async(()=>this.createFile(e,t)),n}unlinkSync(e){this.checkSync(),this._sync.unlinkSync(e),this._async(()=>this.unlink(e))}rmdirSync(e){this.checkSync(),this._sync.rmdirSync(e),this._async(()=>this.rmdir(e))}mkdirSync(e,t){this.checkSync();let n=this._sync.mkdirSync(e,t);return this._async(()=>this.mkdir(e,t)),n}readdirSync(e){return this.checkSync(),this._sync.readdirSync(e)}linkSync(e,t){this.checkSync(),this._sync.linkSync(e,t),this._async(()=>this.link(e,t))}async sync(){!this.attributes.has(`no_async_preload`)&&this._sync&&this._sync.syncSync(),await this._promise.catch(()=>{})}syncSync(){this.checkSync(),this._sync.syncSync()}existsSync(e){return this.checkSync(),this._sync.existsSync(e)}readSync(e,t,n,r){this.checkSync(),this._sync.readSync(e,t,n,r)}writeSync(e,t,n){this.checkSync(),this._sync.writeSync(e,t,n),this._async(()=>this.write(e,t,n))}ioctlSync(e,t,...n){return this.checkSync(),this._sync.ioctlSync(e,t,...n)}streamWrite(e,t){this.checkSync();let n=this._sync.streamWrite(e,t).getWriter(),r=super.streamWrite(e,t).getWriter();return new WritableStream({async write(e,t){await Promise.all([n.write(e),r.write(e)]).catch(t.error.bind(t))},async close(){await Promise.all([n.close(),r.close()])},async abort(e){await Promise.all([n.abort(e),r.abort(e)])}})}_crossCopySemaphore;async crossCopy(e,t={failure:null}){try{if(t.failure)throw t.failure.error;this.checkSync();let n=await this.stat(e);if(t.failure)throw t.failure.error;if(!R(n)){let r=await this._crossCopySemaphore?.get()||{[Symbol.dispose](){}};try{if(t.failure)throw t.failure.error;this._sync.createFileSync(e,n);let r=new Uint8Array(n.size);await this.read(e,r,0,n.size),this._sync.writeSync(e,r,0),this._sync.touchSync(e,n)}catch(e){throw t.failure??={error:e},t.failure.error}finally{r[Symbol.dispose]()}return}e!==`/`&&(this._sync.mkdirSync(e,n),this._sync.touchSync(e,n));let r=[];for(let n of await this.readdir(e)){if(t.failure)break;r.push(this.crossCopy(M(e,n),t))}if(await Promise.allSettled(r),t.failure)throw t.failure.error}catch(e){throw t.failure??={error:e},t.failure.error}}_patchAsync(){let e=[`read`,`readdir`,`stat`,`exists`],t=$d.filter(t=>!e.includes(t));for(let e of t){let t=this[e].bind(this);function n(t,r){if(r||(r=Error(),Error.captureStackTrace(r,n)),!r.stack)return!1;let i=r.stack.split(`
|
|
9
|
+
`+Error().stack.slice(6);if(!t)throw T(C(`EINVAL`,`Can not make an RPC request without a port`));let{resolve:a,reject:o,promise:s}=Promise.withResolvers(),c=Math.random().toString(16).slice(5),l={resolve:a,reject:o,promise:s,fs:r,timeout:setTimeout(()=>{let e=T(C(`ETIMEDOUT`,`RPC request timed out`));e.stack+=i,Gd(c),o(e)},n)};return Kd.set(c,l),t.send({...e,_zenfs:!0,id:c,stack:i}),s}function Jd(e){if(!Wd(e))return;if(!Kd.has(e.id)){let t=T(C(`EIO`,`Invalid RPC id: `+e.id));throw t.stack+=e.stack,t}let{resolve:t,reject:n}=Kd.get(e.id);if(e.error){let t=x.fromJSON({code:`EIO`,errno:y.EIO,...e.error});t.stack+=e.stack,Gd(e.id),n(t);return}Gd(e.id),t([`stat`,`createFile`,`mkdir`].includes(e.method)?new L(e.value):e.value)}function Yd(e,t){if(!e)throw T(C(`EINVAL`,`Cannot attach to non-existent port`));Te(`Attached handler to port: `+t.name),e.addHandler(t)}function Xd(e,t){if(!e)throw T(C(`EINVAL`,`Cannot detach from non-existent port`));Te(`Detached handler from port: `+t.name),e.removeHandler(t)}function Zd(e){let t=[],n=t.push.bind(t);return Yd(e,n),async function(r){Xd(e,n);for(let n of t)await Qd(e,r,`data`in n?n.data:n)}}async function Qd(e,t,n){if(!Wd(n))return;let r,i;try{switch(n.method){case`read`:{let[e,i,a,o]=n.args;await t.read(e,i,a,o),r=i;break}case`stat`:case`createFile`:case`mkdir`:{let e=await t[n.method](...n.args),i=e instanceof L?e:new L(e);r=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);break}case`touch`:{let[e,i]=n.args;await t.touch(e,new L(i)),r=void 0;break}default:r=await t[n.method](...n.args)}}catch(e){i=e instanceof x?e.toJSON():p(e,`message`,`stack`)}e.send({_zenfs:!0,...p(n,`id`,`method`,`stack`),error:i,value:r})}var $d=[`rename`,`stat`,`touch`,`createFile`,`unlink`,`rmdir`,`mkdir`,`readdir`,`exists`,`link`,`sync`,`read`,`write`,`ioctl`];function ef(e){class t extends e{async done(){return this.sync()}queueDone(){return this.sync()}_promise=Promise.resolve();_async(e){this._promise=this._promise.finally(()=>e())}_isInitialized=!1;_skippedCacheUpdates=0;constructor(...e){super(...e),this._patchAsync()}async ready(){if(await super.ready(),!(this._isInitialized||this.attributes.has(`no_async_preload`))){if(await this._promise,this.checkSync(),await this._sync.ready(),this._sync instanceof Dr&&this instanceof Dr){let e=this._sync.transaction(),t=this.transaction(),n=[];for(let r of await t.keys())n.push(t.get(r).then(t=>e.setSync(r,t)));await Promise.all(n),this._isInitialized=!0;return}try{await this.crossCopy(`/`),Ee(`Skipped ${this._skippedCacheUpdates} updates to the sync cache during initialization`),this._isInitialized=!0}catch(e){throw this._isInitialized=!1,Ce(e)}}}checkSync(){if(this.attributes.has(`no_async_preload`))throw C(`ENOTSUP`,`Sync preloading has been disabled for this async file system`);if(!this._sync)throw Ce(C(`ENOTSUP`,`No sync cache is attached to this async file system`))}_forgetMetaOnly(e){let t=this._metaOnly;if(!t)return;t.delete(e);let n=e.endsWith(`/`)?e:e+`/`;for(let e of[...t])e.startsWith(n)&&t.delete(e)}_moveMetaOnly(e,t){let n=this._metaOnly;if(!n||e===t)return;let r=e.endsWith(`/`)?e:e+`/`,i=[];for(let a of n)a===e?i.push([a,t]):a.startsWith(r)&&i.push([a,t+a.slice(e.length)]);for(let[e,t]of i)n.delete(e),n.add(t)}_followMetaOnly(e,t){this._metaOnly?.size&&(e===`write`||e===`unlink`||e===`truncate`?this._metaOnly.delete(t[0]):e===`rename`?this._moveMetaOnly(t[0],t[1]):(e===`rmdir`||e===`remove`)&&this._forgetMetaOnly(t[0]))}_prepareMetaWrite(e,t){this._metaOnly?.has(e)&&(this._sync.touchSync(e,{size:t||0,metaOnly:!0}),this._metaOnly.delete(e))}renameSync(e,t){this.checkSync(),this._sync.renameSync(e,t),this._moveMetaOnly(e,t),this._async(()=>this.rename(e,t))}statSync(e){return this.checkSync(),this._sync.statSync(e)}touchSync(e,t){this.checkSync(),this._sync.touchSync(e,t),this._async(()=>this.touch(e,t))}createFileSync(e,t){this.checkSync();let n=this._sync.createFileSync(e,t);return this._async(()=>this.createFile(e,t)),n}unlinkSync(e){this.checkSync(),this._sync.unlinkSync(e),this._metaOnly?.delete(e),this._async(()=>this.unlink(e))}rmdirSync(e){this.checkSync(),this._sync.rmdirSync(e),this._forgetMetaOnly(e),this._async(()=>this.rmdir(e))}mkdirSync(e,t){this.checkSync();let n=this._sync.mkdirSync(e,t);return this._async(()=>this.mkdir(e,t)),n}readdirSync(e){return this.checkSync(),this._sync.readdirSync(e)}linkSync(e,t){this.checkSync(),this._sync.linkSync(e,t),this._async(()=>this.link(e,t))}async sync(){!this.attributes.has(`no_async_preload`)&&this._sync&&this._sync.syncSync(),await this._promise.catch(()=>{})}syncSync(){this.checkSync(),this._sync.syncSync()}existsSync(e){return this.checkSync(),this._sync.existsSync(e)}readSync(e,t,n,r){if(this.checkSync(),this._metaOnly?.has(e))throw C(`EIO`,`sync mirror has no payload for ${e}`);this._sync.readSync(e,t,n,r)}writeSync(e,t,n){this.checkSync(),this._prepareMetaWrite(e,n),this._sync.writeSync(e,t,n),this._async(()=>this.write(e,t,n))}ioctlSync(e,t,...n){return this.checkSync(),this._sync.ioctlSync(e,t,...n)}streamWrite(e,t){this.checkSync();let n=this._sync.streamWrite(e,t).getWriter(),r=super.streamWrite(e,t).getWriter();return new WritableStream({async write(e,t){await Promise.all([n.write(e),r.write(e)]).catch(t.error.bind(t))},async close(){await Promise.all([n.close(),r.close()])},async abort(e){await Promise.all([n.abort(e),r.abort(e)])}})}_crossCopySemaphore;async crossCopy(e,t={failure:null}){try{if(t.failure)throw t.failure.error;this.checkSync();let n=await this.stat(e);if(t.failure)throw t.failure.error;if(!R(n)){if(n.size>1048576){this._metaOnly??=new Set,this._metaOnly.add(e),this._sync.createFileSync(e,n),this._sync.touchSync(e,{...n,metaOnly:!0});return}let r=await this._crossCopySemaphore?.get()||{[Symbol.dispose](){}};try{if(t.failure)throw t.failure.error;this._sync.createFileSync(e,n);let r=new Uint8Array(n.size);await this.read(e,r,0,n.size),this._sync.writeSync(e,r,0),this._sync.touchSync(e,n)}catch(e){throw t.failure??={error:e},t.failure.error}finally{r[Symbol.dispose]()}return}e!==`/`&&(this._sync.mkdirSync(e,n),this._sync.touchSync(e,n));let r=[];for(let n of await this.readdir(e)){if(t.failure)break;r.push(this.crossCopy(M(e,n),t))}if(await Promise.allSettled(r),t.failure)throw t.failure.error}catch(e){throw t.failure??={error:e},t.failure.error}}_patchAsync(){let e=[`read`,`readdir`,`stat`,`exists`],t=$d.filter(t=>!e.includes(t));for(let e of t){let t=this[e].bind(this);function n(t,r){if(r||(r=Error(),Error.captureStackTrace(r,n)),!r.stack)return!1;let i=r.stack.split(`
|
|
10
10
|
`).slice(t).join(`
|
|
11
|
-
`);return i.includes(`at <computed> [as ${e}]`)||i.includes(`at async <computed> [as ${e}]`)||i.includes(`${e}Sync `)}this[e]=async(...r)=>{let i=await t(...r);if(n(2))return i;if(!this._isInitialized)return this._skippedCacheUpdates++,i;try{this._sync?.[`${e}Sync`]?.(...r)}catch(e){if(n(3,e))return i;throw e.message+=` (Out of sync!)`,T(e)}return i}}Ee(`Async: patched ${t.length} methods`)}}return t}var tf=class extends ef(Sr){channel;timeout;port;_sync=jr.create({label:`tmpfs:port`});constructor(e,t=250){super(1886351988,`portfs`),this.channel=e,this.timeout=t,this.port=Bd(e),Yd(this.port,Jd)}rpc(e,...t){return qd({method:e,args:t},{port:this.port,timeout:this.timeout,fs:this})}async ready(){await this.rpc(`ready`),await super.ready()}rename(e,t){return this.rpc(`rename`,e,t)}async stat(e){let t=await this.rpc(`stat`,e);return t instanceof L?t:new L(t)}async touch(e,t){let n=t instanceof L?t:new L(t);await this.rpc(`touch`,e,new Uint8Array(n.buffer,n.byteOffset,n.byteLength))}async sync(){await super.sync(),await this.rpc(`sync`)}async createFile(e,t){t instanceof L&&(t=t.toJSON());let n=await this.rpc(`createFile`,e,t);return n instanceof L?n:new L(n)}unlink(e){return this.rpc(`unlink`,e)}rmdir(e){return this.rpc(`rmdir`,e)}async mkdir(e,t){t instanceof L&&(t=t.toJSON());let n=await this.rpc(`mkdir`,e,t);return n instanceof L?n:new L(n)}readdir(e){return this.rpc(`readdir`,e)}exists(e){return this.rpc(`exists`,e)}link(e,t){return this.rpc(`link`,e,t)}async read(e,t,n,r){t.set(await this.rpc(`read`,e,t,n,r))}write(e,t,n){return this.rpc(`write`,e,t,n)}};function nf(e,t){let n=Bd(e);Yd(n,e=>Qd(n,t,e))}function rf(e,t){let n=Bd(e);Xd(n,e=>Qd(n,t,e))}var af={name:`Port`,options:{port:{type:[EventTarget,function(e){return typeof e==`object`&&`on`in e}],required:!0},timeout:{type:`number`,required:!1}},create(e){return new tf(e.port,e.timeout)}};async function of(e,t,n=0){let r=Bd(e),i=Zd(r),a=await rd(t,n);return nf(r,a),await i(a),Te(`Resolved remote mount: `+a.toString()),a}var Y=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},X=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},sf=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},cf=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),lf=e=>`0x`+e.toString(16).padStart(8,`0`),{format:uf}=new Intl.NumberFormat(`en-US`,{notation:`compact`,maximumFractionDigits:2,unit:`byte`,unitDisplay:`narrow`}),df=(()=>{var e,t,n,r;let i=[cn.packed()],o,s=[],c,l=dn(a),u,d=[],f=[],p,m=[],h=[],g,ee=[],te=[],_,ne=[],re=[];var ie=class extends l{static{c=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(l[Symbol.metadata]??null):void 0;u=[(e=A).uint32.bind(e)],p=[(t=A).uint32.bind(t)],g=[(n=A).uint32.bind(n)],_=[(r=A).uint32.bind(r)],Y(this,null,u,{kind:`accessor`,name:`id`,static:!1,private:!1,access:{has:e=>`id`in e,get:e=>e.id,set:(e,t)=>{e.id=t}},metadata:a},d,f),Y(this,null,p,{kind:`accessor`,name:`offset_`,static:!1,private:!1,access:{has:e=>`offset_`in e,get:e=>e.offset_,set:(e,t)=>{e.offset_=t}},metadata:a},m,h),Y(this,null,g,{kind:`accessor`,name:`offset`,static:!1,private:!1,access:{has:e=>`offset`in e,get:e=>e.offset,set:(e,t)=>{e.offset=t}},metadata:a},ee,te),Y(this,null,_,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},ne,re),Y(null,o={value:c},i,{kind:`class`,name:c.name,metadata:a},null,s),ie=c=o.value,a&&Object.defineProperty(c,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`MetadataEntry`;#e=X(this,d,void 0);get id(){return this.#e}set id(e){this.#e=e}#t=(X(this,f),X(this,m,void 0));get offset_(){return this.#t}set offset_(e){this.#t=e}#n=(X(this,h),X(this,ee,void 0));get offset(){return this.#n}set offset(e){this.#n=e}#r=(X(this,te),X(this,ne,void 0));get size(){return this.#r}set size(e){this.#r=e}toString(){return`<MetadataEntry @ ${lf(this.byteOffset)}>`}constructor(){super(...arguments),X(this,re)}static{X(c,s)}};return c})(),ff=255,pf=5,mf=(()=>{var e,t,n,r;let i=[cn.packed()],a,o=[],s,c=dn.typed(Int32Array),l,u=[],d=[],f,p=[],m=[],h,g=[],ee=[],te,_=[],ne=[],re,ie=[],ae=[];var oe=class extends c{static{s=this}static{let v=typeof Symbol==`function`&&Symbol.metadata?Object.create(c[Symbol.metadata]??null):void 0;l=[(e=A).uint32.bind(e)],f=[(t=A).uint64.bind(t)],h=[(n=A).uint32.bind(n)],te=[ln(pn(df,ff))],re=[(r=A).int32.bind(r)],Y(this,null,l,{kind:`accessor`,name:`checksum`,static:!1,private:!1,access:{has:e=>`checksum`in e,get:e=>e.checksum,set:(e,t)=>{e.checksum=t}},metadata:v},u,d),Y(this,null,f,{kind:`accessor`,name:`timestamp`,static:!1,private:!1,access:{has:e=>`timestamp`in e,get:e=>e.timestamp,set:(e,t)=>{e.timestamp=t}},metadata:v},p,m),Y(this,null,h,{kind:`accessor`,name:`previous_offset`,static:!1,private:!1,access:{has:e=>`previous_offset`in e,get:e=>e.previous_offset,set:(e,t)=>{e.previous_offset=t}},metadata:v},g,ee),Y(this,null,te,{kind:`accessor`,name:`items`,static:!1,private:!1,access:{has:e=>`items`in e,get:e=>e.items,set:(e,t)=>{e.items=t}},metadata:v},_,ne),Y(this,null,re,{kind:`accessor`,name:`locked`,static:!1,private:!1,access:{has:e=>`locked`in e,get:e=>e.locked,set:(e,t)=>{e.locked=t}},metadata:v},ie,ae),Y(null,a={value:s},i,{kind:`class`,name:s.name,metadata:v},null,o),oe=s=a.value,v&&Object.defineProperty(s,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:v})}static name=`MetadataBlock`;static lockIndex;#e=X(this,u,void 0);get checksum(){return this.#e}set checksum(e){this.#e=e}#t=(X(this,d),X(this,p,BigInt(Date.now())));get timestamp(){return this.#t}set timestamp(e){this.#t=e}#n=(X(this,m),X(this,g,void 0));get previous_offset(){return this.#n}set previous_offset(e){this.#n=e}_previous=X(this,ee);get previous(){if(this.previous_offset)return this._previous??=new oe(this.buffer,this.previous_offset),this._previous}#r=X(this,_,void 0);get items(){return this.#r}set items(e){this.#r=e}toString(e=!1){if(!e)return`<MetadataBlock @ ${lf(this.byteOffset)}>`;let t=[`---- Metadata block at ${lf(this.byteOffset)} ----`,`Checksum: ${lf(this.checksum)}`,`Last updated: ${new Date(Number(this.timestamp)).toLocaleString()}`,`Previous block: ${lf(this.previous_offset)}`,`Entries:`].join(`
|
|
11
|
+
`);return i.includes(`at <computed> [as ${e}]`)||i.includes(`at async <computed> [as ${e}]`)||i.includes(`${e}Sync `)}this[e]=async(...r)=>{let i=await t(...r);if(n(2))return i;if(!this._isInitialized)return this._skippedCacheUpdates++,i;try{e===`write`&&this._prepareMetaWrite(r[0],r[2]),this._sync?.[`${e}Sync`]?.(...r),this._followMetaOnly(e,r)}catch(e){if(n(3,e))return i;throw e.message+=` (Out of sync!)`,T(e)}return i}}Ee(`Async: patched ${t.length} methods`)}}return t}var tf=class extends ef(Sr){channel;timeout;port;_sync=jr.create({label:`tmpfs:port`});constructor(e,t=250){super(1886351988,`portfs`),this.channel=e,this.timeout=t,this.port=Bd(e),Yd(this.port,Jd)}rpc(e,...t){return qd({method:e,args:t},{port:this.port,timeout:this.timeout,fs:this})}async ready(){await this.rpc(`ready`),await super.ready()}rename(e,t){return this.rpc(`rename`,e,t)}async stat(e){let t=await this.rpc(`stat`,e);return t instanceof L?t:new L(t)}async touch(e,t){let n=t instanceof L?t:new L(t);await this.rpc(`touch`,e,new Uint8Array(n.buffer,n.byteOffset,n.byteLength))}async sync(){await super.sync(),await this.rpc(`sync`)}async createFile(e,t){t instanceof L&&(t=t.toJSON());let n=await this.rpc(`createFile`,e,t);return n instanceof L?n:new L(n)}unlink(e){return this.rpc(`unlink`,e)}rmdir(e){return this.rpc(`rmdir`,e)}async mkdir(e,t){t instanceof L&&(t=t.toJSON());let n=await this.rpc(`mkdir`,e,t);return n instanceof L?n:new L(n)}readdir(e){return this.rpc(`readdir`,e)}exists(e){return this.rpc(`exists`,e)}link(e,t){return this.rpc(`link`,e,t)}async read(e,t,n,r){t.set(await this.rpc(`read`,e,t,n,r))}write(e,t,n){return this.rpc(`write`,e,t,n)}};function nf(e,t){let n=Bd(e);Yd(n,e=>Qd(n,t,e))}function rf(e,t){let n=Bd(e);Xd(n,e=>Qd(n,t,e))}var af={name:`Port`,options:{port:{type:[EventTarget,function(e){return typeof e==`object`&&`on`in e}],required:!0},timeout:{type:`number`,required:!1}},create(e){return new tf(e.port,e.timeout)}};async function of(e,t,n=0){let r=Bd(e),i=Zd(r),a=await rd(t,n);return nf(r,a),await i(a),Te(`Resolved remote mount: `+a.toString()),a}var Y=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},X=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},sf=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},cf=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),lf=e=>`0x`+e.toString(16).padStart(8,`0`),{format:uf}=new Intl.NumberFormat(`en-US`,{notation:`compact`,maximumFractionDigits:2,unit:`byte`,unitDisplay:`narrow`}),df=(()=>{var e,t,n,r;let i=[cn.packed()],o,s=[],c,l=dn(a),u,d=[],f=[],p,m=[],h=[],g,ee=[],te=[],_,ne=[],re=[];var ie=class extends l{static{c=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(l[Symbol.metadata]??null):void 0;u=[(e=A).uint32.bind(e)],p=[(t=A).uint32.bind(t)],g=[(n=A).uint32.bind(n)],_=[(r=A).uint32.bind(r)],Y(this,null,u,{kind:`accessor`,name:`id`,static:!1,private:!1,access:{has:e=>`id`in e,get:e=>e.id,set:(e,t)=>{e.id=t}},metadata:a},d,f),Y(this,null,p,{kind:`accessor`,name:`offset_`,static:!1,private:!1,access:{has:e=>`offset_`in e,get:e=>e.offset_,set:(e,t)=>{e.offset_=t}},metadata:a},m,h),Y(this,null,g,{kind:`accessor`,name:`offset`,static:!1,private:!1,access:{has:e=>`offset`in e,get:e=>e.offset,set:(e,t)=>{e.offset=t}},metadata:a},ee,te),Y(this,null,_,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},ne,re),Y(null,o={value:c},i,{kind:`class`,name:c.name,metadata:a},null,s),ie=c=o.value,a&&Object.defineProperty(c,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`MetadataEntry`;#e=X(this,d,void 0);get id(){return this.#e}set id(e){this.#e=e}#t=(X(this,f),X(this,m,void 0));get offset_(){return this.#t}set offset_(e){this.#t=e}#n=(X(this,h),X(this,ee,void 0));get offset(){return this.#n}set offset(e){this.#n=e}#r=(X(this,te),X(this,ne,void 0));get size(){return this.#r}set size(e){this.#r=e}toString(){return`<MetadataEntry @ ${lf(this.byteOffset)}>`}constructor(){super(...arguments),X(this,re)}static{X(c,s)}};return c})(),ff=255,pf=5,mf=(()=>{var e,t,n,r;let i=[cn.packed()],a,o=[],s,c=dn.typed(Int32Array),l,u=[],d=[],f,p=[],m=[],h,g=[],ee=[],te,_=[],ne=[],re,ie=[],ae=[];var oe=class extends c{static{s=this}static{let v=typeof Symbol==`function`&&Symbol.metadata?Object.create(c[Symbol.metadata]??null):void 0;l=[(e=A).uint32.bind(e)],f=[(t=A).uint64.bind(t)],h=[(n=A).uint32.bind(n)],te=[ln(pn(df,ff))],re=[(r=A).int32.bind(r)],Y(this,null,l,{kind:`accessor`,name:`checksum`,static:!1,private:!1,access:{has:e=>`checksum`in e,get:e=>e.checksum,set:(e,t)=>{e.checksum=t}},metadata:v},u,d),Y(this,null,f,{kind:`accessor`,name:`timestamp`,static:!1,private:!1,access:{has:e=>`timestamp`in e,get:e=>e.timestamp,set:(e,t)=>{e.timestamp=t}},metadata:v},p,m),Y(this,null,h,{kind:`accessor`,name:`previous_offset`,static:!1,private:!1,access:{has:e=>`previous_offset`in e,get:e=>e.previous_offset,set:(e,t)=>{e.previous_offset=t}},metadata:v},g,ee),Y(this,null,te,{kind:`accessor`,name:`items`,static:!1,private:!1,access:{has:e=>`items`in e,get:e=>e.items,set:(e,t)=>{e.items=t}},metadata:v},_,ne),Y(this,null,re,{kind:`accessor`,name:`locked`,static:!1,private:!1,access:{has:e=>`locked`in e,get:e=>e.locked,set:(e,t)=>{e.locked=t}},metadata:v},ie,ae),Y(null,a={value:s},i,{kind:`class`,name:s.name,metadata:v},null,o),oe=s=a.value,v&&Object.defineProperty(s,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:v})}static name=`MetadataBlock`;static lockIndex;#e=X(this,u,void 0);get checksum(){return this.#e}set checksum(e){this.#e=e}#t=(X(this,d),X(this,p,BigInt(Date.now())));get timestamp(){return this.#t}set timestamp(e){this.#t=e}#n=(X(this,m),X(this,g,void 0));get previous_offset(){return this.#n}set previous_offset(e){this.#n=e}_previous=X(this,ee);get previous(){if(this.previous_offset)return this._previous??=new oe(this.buffer,this.previous_offset),this._previous}#r=X(this,_,void 0);get items(){return this.#r}set items(e){this.#r=e}toString(e=!1){if(!e)return`<MetadataBlock @ ${lf(this.byteOffset)}>`;let t=[`---- Metadata block at ${lf(this.byteOffset)} ----`,`Checksum: ${lf(this.checksum)}`,`Last updated: ${new Date(Number(this.timestamp)).toLocaleString()}`,`Previous block: ${lf(this.previous_offset)}`,`Entries:`].join(`
|
|
12
12
|
`);for(let e of this.items)e.offset&&(t+=`\n\t${lf(e.id)}: ${uf(e.size).padStart(5)} at ${lf(e.offset)}`);return t}#i=(X(this,ne),X(this,ie,void 0));get locked(){return this.#i}set locked(e){this.#i=e}waitUnlocked(e=0){if(e>pf)throw Ce(C(`EBUSY`,`sbfs: exceeded max attempts waiting for metadata block at ${lf(this.byteOffset)} to be unlocked`));if(Atomics.load(this,oe.lockIndex))switch(Atomics.wait(this,oe.lockIndex,1)){case`ok`:break;case`not-equal`:return e++,T(`sbfs: waiting for metadata block at ${lf(this.byteOffset)} to be unlocked (${e}/${pf})`),this.waitUnlocked(e);case`timed-out`:throw Ce(C(`EBUSY`,`sbfs: timed out waiting for metadata block at ${lf(this.byteOffset)} to be unlocked`))}}lock(){this.waitUnlocked(),Atomics.store(this,oe.lockIndex,1);let e=()=>{Atomics.store(this,oe.lockIndex,0),Atomics.notify(this,oe.lockIndex,1)};return e[Symbol.dispose]=e,e}constructor(){super(...arguments),X(this,ae)}static{X(s,o)}};return oe=s})();Object.assign(mf,{lockIndex:nn(mf,`locked`)/Int32Array.BYTES_PER_ELEMENT});var hf=1651715706,gf=2,_f=(()=>{var e,t,n,r,i,a,o,s,c,l;let u=[cn.packed()],d,f=[],p,m=dn.typed(BigUint64Array),h,g=[],ee=[],te,_=[],ne=[],re,ie=[],ae=[],oe,v=[],se=[],ce,le=[],ue=[],de,y=[],pe=[],b,x=[],S=[],me,he=[],w=[],ge,_e=[],ve=[],ye,be=[],xe=[],Se,we=[],Te=[],De,Oe=[],ke=[],Ae,je=[],Me=[];var Ne=class extends m{static{p=this}static{let fe=typeof Symbol==`function`&&Symbol.metadata?Object.create(m[Symbol.metadata]??null):void 0;h=[(e=A).uint32.bind(e)],te=[(t=A).uint32.bind(t)],re=[(n=A).uint16.bind(n)],oe=[(r=A).uint16.bind(r)],ce=[(i=A).uint32.bind(i)],de=[(a=A).uint64.bind(a)],b=[(o=A).uint64.bind(o)],me=[A.uint8(16)],ge=[(s=A).uint32.bind(s)],ye=[(c=A).uint32.bind(c)],Se=[(l=A).uint32.bind(l)],De=[A.char(64)],Ae=[A.char(132)],Y(this,null,h,{kind:`accessor`,name:`checksum`,static:!1,private:!1,access:{has:e=>`checksum`in e,get:e=>e.checksum,set:(e,t)=>{e.checksum=t}},metadata:fe},g,ee),Y(this,null,te,{kind:`accessor`,name:`magic`,static:!1,private:!1,access:{has:e=>`magic`in e,get:e=>e.magic,set:(e,t)=>{e.magic=t}},metadata:fe},_,ne),Y(this,null,re,{kind:`accessor`,name:`version`,static:!1,private:!1,access:{has:e=>`version`in e,get:e=>e.version,set:(e,t)=>{e.version=t}},metadata:fe},ie,ae),Y(this,null,oe,{kind:`accessor`,name:`inode_format`,static:!1,private:!1,access:{has:e=>`inode_format`in e,get:e=>e.inode_format,set:(e,t)=>{e.inode_format=t}},metadata:fe},v,se),Y(this,null,ce,{kind:`accessor`,name:`flags`,static:!1,private:!1,access:{has:e=>`flags`in e,get:e=>e.flags,set:(e,t)=>{e.flags=t}},metadata:fe},le,ue),Y(this,null,de,{kind:`accessor`,name:`used_bytes`,static:!1,private:!1,access:{has:e=>`used_bytes`in e,get:e=>e.used_bytes,set:(e,t)=>{e.used_bytes=t}},metadata:fe},y,pe),Y(this,null,b,{kind:`accessor`,name:`total_bytes`,static:!1,private:!1,access:{has:e=>`total_bytes`in e,get:e=>e.total_bytes,set:(e,t)=>{e.total_bytes=t}},metadata:fe},x,S),Y(this,null,me,{kind:`accessor`,name:`uuid`,static:!1,private:!1,access:{has:e=>`uuid`in e,get:e=>e.uuid,set:(e,t)=>{e.uuid=t}},metadata:fe},he,w),Y(this,null,ge,{kind:`accessor`,name:`metadata_block_size`,static:!1,private:!1,access:{has:e=>`metadata_block_size`in e,get:e=>e.metadata_block_size,set:(e,t)=>{e.metadata_block_size=t}},metadata:fe},_e,ve),Y(this,null,ye,{kind:`accessor`,name:`metadata_offset_`,static:!1,private:!1,access:{has:e=>`metadata_offset_`in e,get:e=>e.metadata_offset_,set:(e,t)=>{e.metadata_offset_=t}},metadata:fe},be,xe),Y(this,null,Se,{kind:`accessor`,name:`metadata_offset`,static:!1,private:!1,access:{has:e=>`metadata_offset`in e,get:e=>e.metadata_offset,set:(e,t)=>{e.metadata_offset=t}},metadata:fe},we,Te),Y(this,null,De,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:fe},Oe,ke),Y(this,null,Ae,{kind:`accessor`,name:`_padding`,static:!1,private:!1,access:{has:e=>`_padding`in e,get:e=>e._padding,set:(e,t)=>{e._padding=t}},metadata:fe},je,Me),Y(null,d={value:p},u,{kind:`class`,name:p.name,metadata:fe},null,f),Ne=p=d.value,fe&&Object.defineProperty(p,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:fe})}static name=`SuperBlock`;constructor(...e){if(super(...e),X(this,Me),this.magic!=hf){E(`sbfs: Invalid magic value, assuming this is a fresh super block`);let e=new mf(this.buffer,k(Ne));Object.assign(this,{metadata:e,metadata_offset:e.byteOffset,used_bytes:BigInt(k(Ne)+k(mf)),total_bytes:BigInt(this.buffer.byteLength),magic:hf,version:1,inode_format:5,metadata_block_size:k(mf),uuid:fe(crypto.randomUUID())}),bf(this),bf(e);return}if(this.checksum!==yf(this))throw Ce(C(`EIO`,`sbfs: checksum mismatch for super block`));if(this.metadata=new mf(this.buffer,this.metadata_offset),this.metadata.checksum!==yf(this.metadata))throw Ce(C(`EIO`,`sbfs: checksum mismatch for metadata block (saved ${lf(this.metadata.checksum)}, computed ${lf(yf(this.metadata))})`));if(this.inode_format!=5)throw Ce(C(`EIO`,`sbfs: inode format mismatch`));if(this.metadata_block_size!=k(mf))throw Ce(C(`EIO`,`sbfs: metadata block size mismatch`))}#e=X(this,g,void 0);get checksum(){return this.#e}set checksum(e){this.#e=e}#t=(X(this,ee),X(this,_,void 0));get magic(){return this.#t}set magic(e){this.#t=e}#n=(X(this,ne),X(this,ie,void 0));get version(){return this.#n}set version(e){this.#n=e}#r=(X(this,ae),X(this,v,void 0));get inode_format(){return this.#r}set inode_format(e){this.#r=e}#i=(X(this,se),X(this,le,void 0));get flags(){return this.#i}set flags(e){this.#i=e}#a=(X(this,ue),X(this,y,void 0));get used_bytes(){return this.#a}set used_bytes(e){this.#a=e}#o=(X(this,pe),X(this,x,void 0));get total_bytes(){return this.#o}set total_bytes(e){this.#o=e}#s=(X(this,S),X(this,he,void 0));get uuid(){return this.#s}set uuid(e){this.#s=e}#c=(X(this,w),X(this,_e,void 0));get metadata_block_size(){return this.#c}set metadata_block_size(e){this.#c=e}#l=(X(this,ve),X(this,be,void 0));get metadata_offset_(){return this.#l}set metadata_offset_(e){this.#l=e}#u=(X(this,xe),X(this,we,void 0));get metadata_offset(){return this.#u}set metadata_offset(e){this.#u=e}metadata=X(this,Te);#d=X(this,Oe,void 0);get label(){return this.#d}set label(e){this.#d=e}#f=(X(this,ke),X(this,je,void 0));get _padding(){return this.#f}set _padding(e){this.#f=e}rotateMetadata(){let e=BigInt(Int32Array.BYTES_PER_ELEMENT),t=BigInt(k(mf)),n=Atomics.load(this,gf),r;for(;;){let i=(e-n%e)%e;r=n+i;let a=r+t;if(a>this.total_bytes)throw T(C(`ENOSPC`,`sbfs: not enough space for a new metadata block`));let o=Atomics.compareExchange(this,gf,n,a);if(o===n)break;n=o}let i=new mf(this.buffer,Number(r)),a=new Uint32Array(this.buffer,this.byteOffset,k(Ne)/Uint32Array.BYTES_PER_ELEMENT),o=Atomics.load(a,vf);for(;;){i.previous_offset=o,bf(i);let e=Atomics.compareExchange(a,vf,o,i.byteOffset);if(e===o)break;o=e}return this.metadata=i,bf(this),Ee(`sbfs: rotated metadata block at ${lf(i.previous_offset)} with new block at ${lf(i.byteOffset)}`),i}isUnused(e,t){if(!t)return!0;if(e+t>this.total_bytes||e<k(Ne))return!1;for(let n=this.metadata;n;n=n.previous){if(e<n.byteOffset+k(mf)&&e+t>n.byteOffset)return!1;for(let r of n.items)if(r.offset&&(e>=r.offset&&e<r.offset+r.size||e+t>r.offset&&e+t<=r.offset+r.size||e<=r.offset&&e+t>=r.offset+r.size))return!1}return!0}static{X(p,f)}};return Ne=p})(),vf=nn(_f,`metadata_offset`)/Uint32Array.BYTES_PER_ELEMENT;function yf(e){let t=k(e)-4;return e instanceof mf&&(t-=Int32Array.BYTES_PER_ELEMENT),l(new Uint8Array(e.buffer,e.byteOffset+4,t))}function bf(e){e instanceof mf&&(e.timestamp=BigInt(Date.now())),e.checksum=yf(e)}var xf=class extends a{flags=[];name=`sbfs`;type=1935828595;get uuid(){return de(this.superblock.uuid)}superblock;_view;_u8;constructor(...e){if(super(...e),this.byteLength<k(_f)+k(mf))throw Ce(C(`EINVAL`,`sbfs: Buffer is too small for a file system`));this._view=new DataView(this.buffer,this.byteOffset,this.byteLength),this._u8=new Uint8Array(this.buffer,this.byteOffset,this.byteLength),this.superblock=new _f(this.buffer,this.byteOffset)}*keys(){let e=new Set;for(let t=this.superblock.metadata;t;t=t.previous){t.waitUnlocked();for(let n of t.items)!n.offset||e.has(n.id)||(e.add(n.id),yield n.id)}}get(e){for(let t=this.superblock.metadata;t;t=t.previous){t.waitUnlocked();for(let n of t.items){if(!n.offset||n.id!=e)continue;let t=this.byteOffset+n.offset;return new Uint8Array(this.buffer.slice(t,t+n.size))}}}set(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(e===0&&t.length<k(L))throw Se(C(`EIO`,`sbfs: tried to set ${t.length} bytes for id 0!`));for(let n=this.superblock.metadata;n;n=n.previous){n.waitUnlocked();for(let r of n.items){let i={stack:[],error:void 0,hasError:!1};try{if(!r.offset||r.id!=e)continue;if(sf(i,n.lock(),!1),t.length==r.size){this._u8.set(t,r.offset);return}if(t.length<r.size||this.superblock.isUnused(r.offset,t.length)){this._u8.set(t,r.offset),r.size=t.length,bf(n);return}r.offset=Number(Atomics.add(this.superblock,gf,BigInt(t.length))),r.size=t.length,this._u8.set(t,r.offset),bf(n),bf(this.superblock);return}catch(e){i.error=e,i.hasError=!0}finally{cf(i)}}}let r=Array.from(this.superblock.metadata.items).find(e=>!e.offset);r||=(this.superblock.rotateMetadata(),this.superblock.metadata.items[0]),sf(n,this.superblock.metadata.lock(),!1);let i=Number(Atomics.add(this.superblock,gf,BigInt(t.length)));r.id=e,r.offset=i,r.size=t.length,this._u8.set(t,i),bf(this.superblock.metadata),bf(this.superblock)}catch(e){n.error=e,n.hasError=!0}finally{cf(n)}}delete(e){for(let t=this.superblock.metadata;t;t=t.previous){t.waitUnlocked();for(let n of t.items)if(n.id==e){n.offset=0,n.size=0,n.id=0,bf(t);return}}}_fs;get fs(){return this._fs}set fs(e){this.buffer.constructor.name===`SharedArrayBuffer`&&e?.attributes.set(`no_id_tables`,!0),this._fs=e}sync(){return Promise.resolve()}usage(){return{totalSpace:Number(this.superblock.total_bytes),freeSpace:Number(this.superblock.total_bytes-this.superblock.used_bytes)}}transaction(){return new Or(this)}},Sf={name:`SingleBuffer`,options:{buffer:{type:`object`,required:!0}},create(e){let t=new Dr(ArrayBuffer.isView(e.buffer)?new xf(e.buffer.buffer,e.buffer.byteOffset,e.buffer.byteLength):new xf(e.buffer));return t.checkRootSync(),t}},Z=()=>{};function Cf(e,t,n=Z){xu.call(this,e,t).then(()=>n(null)).catch(n)}function wf(e,t=Z){Su.call(this,e).then(t).catch(()=>t(!1))}function Tf(e,t,n=Z){n=typeof t==`function`?t:n,Cu.call(this,e,typeof t==`function`?{}:t).then(e=>n(null,e)).catch(n)}function Ef(e,t,n=Z){n=typeof t==`function`?t:n,wu.call(this,e,typeof t==`function`?{}:t).then(e=>n(null,e)).catch(n)}function Df(e,t=0,n=Z){n=typeof t==`function`?t:n;let r=typeof t==`number`?t:0;Tu.call(this,e,r).then(()=>n(null)).catch(n)}function Of(e,t=Z){Eu.call(this,e).then(()=>t(null)).catch(t)}function kf(e,t,n,r=Z){let i=_n(n,420);r=typeof n==`function`?n:r,Du.call(this,e,t,i).then(e=>r(null,e.fd)).catch(r)}function Af(e,t,n=Z){n=typeof t==`function`?t:n,Ou.call(this,e,typeof t==`function`?null:t).then(e=>n(null,e)).catch(n)}function jf(e,t,n,r=Z){r=typeof n==`function`?n:r,ku.call(this,e,t,typeof n==`function`?null:n).then(()=>r(null)).catch(r)}function Mf(e,t,n,r=Z){let i=typeof n==`function`?void 0:n;r=typeof n==`function`?n:r,Au.call(this,e,t,i).then(()=>r(null)).catch(r)}function Nf(e,t,n=Z){n=typeof t==`function`?t:n,new bu(this,e).stat().then(e=>n(null,typeof t==`object`&&t?.bigint?new Un(e):e)).catch(n)}function Pf(e,t=Z){new bu(this,e).close().then(()=>t(null)).catch(t)}function Ff(e,t,n=Z){let r=typeof t==`number`?t:0;n=typeof t==`function`?t:n;let i=new bu(this,e);if(r<0)throw C(`EINVAL`);i.truncate(r).then(()=>n(null)).catch(n)}function If(e,t=Z){new bu(this,e).sync().then(()=>t(null)).catch(t)}function Lf(e,t=Z){new bu(this,e).datasync().then(()=>t(null)).catch(t)}function Rf(e,t,n,r,i,a=Z){let o,s,c,l,u,d=new bu(this,e),f=[n,r,i].find(e=>typeof e==`function`)??a;typeof t==`string`?(l=typeof n==`number`?n:null,u=typeof r==`string`?r:`utf8`,o=H.Buffer.from(t,u),s=0,c=o.byteLength):(o=H.Buffer.from(t.buffer,t.byteOffset,t.byteLength),s=typeof n==`number`?n:0,c=typeof r==`number`?r:o.byteLength-s,l=typeof i==`number`?i:null),d.write(o,s,c,l).then(({bytesWritten:e})=>f(null,e,typeof t==`string`?t:o)).catch(f)}function zf(e,t,n,r,i,a=Z){new bu(this,e).read(t,n,r,i).then(({bytesRead:e,buffer:t})=>a(null,e,t)).catch(a)}function Bf(e,t,n,r=Z){new bu(this,e).chown(t,n).then(()=>r(null)).catch(r)}function Vf(e,t,n){new bu(this,e).chmod(t).then(()=>n(null)).catch(n)}function Hf(e,t,n,r=Z){new bu(this,e).utimes(t,n).then(()=>r(null)).catch(r)}function Uf(e,t=Z){ju.call(this,e).then(()=>t(null)).catch(t)}function Wf(e,t,n=Z){Mu.call(this,e,t).then(()=>n(null)).catch(n)}function Gf(e,t,n=Z){n=typeof t==`function`?t:n;let r=typeof t==`function`?{}:t;Nu.call(this,e,r).then(e=>n(null,e)).catch(n)}function Kf(e,t,n=Z){Pu.call(this,e,t).then(()=>n(null)).catch(n)}function qf(e,t,n,r=Z){let i=typeof n==`string`?n:`file`;r=typeof n==`function`?n:r,Fu.call(this,e,t,i).then(()=>r(null)).catch(r)}function Jf(e,t,n=Z){n=typeof t==`function`?t:n,Iu.call(this,e).then(e=>n(null,e)).catch(n)}function Yf(e,t,n,r=Z){Lu.call(this,e,t,n).then(()=>r(null)).catch(r)}function Xf(e,t,n,r=Z){Ru.call(this,e,t,n).then(()=>r(null)).catch(r)}function Zf(e,t,n=Z){zu.call(this,e,t).then(()=>n(null)).catch(n)}function Qf(e,t,n=Z){Bu.call(this,e,t).then(()=>n(null)).catch(n)}function $f(e,t,n,r=Z){Vu.call(this,e,t,n).then(()=>r(null)).catch(r)}function ep(e,t,n,r=Z){Hu.call(this,e,t,n).then(()=>r(null)).catch(r)}function tp(e,t,n=Z){n=typeof t==`function`?t:n,Uu.call(this,e,typeof t==`function`?null:t).then(e=>n(null,e)).catch(n)}function np(e,t,n=Z){let r=typeof t==`number`?t:4;n=typeof t==`function`?t:n,Gu.call(this,e,r).then(()=>n(null)).catch(n)}var rp=new Map;function ip(e,t,n){let r=j.call(this,e),i=typeof t==`function`?{}:t;if(typeof t==`function`&&(n=t),!n)throw S(`EINVAL`,`watch`,e.toString());if(rp.has(r)){let e=rp.get(r);e&&e.listeners.add(n);return}let a=new Ra(this,r,i);a.on(`change`,(e,t)=>{let n=rp.get(r);if(n)for(let r of n.listeners)r(e,t)}),rp.set(r,{watcher:a,listeners:new Set([n])})}function ap(e,t=Z){let n=j.call(this,e),r=rp.get(n);r&&(t&&t!==Z?r.listeners.delete(t):r.listeners.clear(),r.listeners.size===0&&(r.watcher.stop(),rp.delete(n)))}function op(e,t,n){let r=new La(this,j.call(this,e),typeof t==`object`?t:{});return n=typeof t==`function`?t:n,r.on(`change`,n||Z),r}function sp(e,t){t=typeof t==`object`?t:{encoding:t};let n=Du.call(this,e,`r`,t?.mode);return new pu({...t,autoClose:!0,signal:t?.signal??void 0},n)}function cp(e,t){t=typeof t==`object`?t:{encoding:t};let n=Du.call(this,e,`w`,t?.mode);return new mu(t,n)}function lp(e,t,n=Z){n=typeof t==`function`?t:n,Ku.call(this,e,typeof t==`function`?void 0:t).then(()=>n(null)).catch(n)}function up(e,t,n=Z){n=typeof t==`function`?t:n,qu.call(this,e,typeof t==`function`?null:t).then(e=>n(null,e)).catch(n)}function dp(e,t,n,r=Z){r=typeof n==`function`?n:r,Yu.call(this,e,t,typeof n==`function`?void 0:n).then(()=>r(null)).catch(r)}function fp(e,t,n,r=Z){r=typeof n==`function`?n:r,new bu(this,e).readv(t,typeof n==`function`?void 0:n).then(({buffers:e,bytesRead:t})=>r(null,t,e)).catch(r)}function pp(e,t,n,r=Z){r=typeof n==`function`?n:r,new bu(this,e).writev(t,typeof n==`function`?void 0:n).then(({buffers:e,bytesWritten:t})=>r(null,t,e)).catch(r)}function mp(e,t,n=Z){n=typeof t==`function`?t:n,Xu.call(this,e,typeof t==`function`?void 0:t).then(e=>n(null,e)).catch(n)}function hp(e,t,n,r=Z){r=typeof n==`function`?n:r,Zu.call(this,e,t,typeof n==`function`?void 0:n).then(()=>r(null)).catch(r)}function gp(e,t,n=Z){n=typeof t==`function`?t:n,Qu.call(this,e,typeof t==`function`?void 0:t).then(e=>n(null,e)).catch(n)}async function _p(e,t){let n=await Du.call(this,e.toString(),`r`),r=await n.readFile();return await n.close(),new Blob([r],t)}function vp(e,t,n=Z){n=typeof t==`function`?t:n;let r=$u.call(this,e,typeof t==`function`?void 0:t);Array.fromAsync(r).then(e=>n(null,e??[])).catch(e=>n(e))}function yp(e,t){return Object.assign(Error(t),{code:e})}function bp(e,t,n){return yp(`ERR_INVALID_ARG_TYPE`,`The "${e}" argument must be of type ${t}. Received ${typeof n}`)}function xp(e){return yp(`ERR_INVALID_STATE`,`Invalid state: `+e)}function Sp(e,t){if(typeof e!=`number`)throw bp(t,`number`,e);if(!Number.isInteger(e)||e<0||e>4294967295)throw yp(`ERR_OUT_OF_RANGE`,`The value of "${t}" is out of range. It must be an integer >= 0 and <= 4294967295. Received ${e}`)}var Cp=16384,wp=100,Tp=H.Buffer.alloc(0),Ep={open:kf,openSync:Yi,close:Pf,write:Rf,writeSync:oa,fsync:If,fsyncSync:ia,mkdir:Wf,mkdirSync:fa};function Dp(e,t,n){if(typeof e==`string`){if(H.Buffer.byteLength(e)===n)n=e.length;else{let t=H.Buffer.from(e);for(;n>0&&(t[n]&192)==128;)n--;n=t.subarray(0,n).toString().length}}return{writingBuf:e.slice(n),len:Math.max(t-n,0)}}function Op(e,t){return e.length?e.length==1?e[0]:H.Buffer.concat(e,t):Tp}var kp=Symbol(`Utf8StreamFS`),Ap=class extends u.default{#e=0;#t=-1;#n=[];#r=[];#i=!1;#a=!1;#o=!1;#s=!1;#c=!1;#l=16387;#u=null;#d=!1;#f=0;#p=0;#m=Cp;#h=!1;#g=0;#_;#v=!1;#y=!1;#b=!0;#x;#S=()=>!0;#C=!1;#w;#T=``;#E;static[kp]=Ep;static _withContext(e){Xe(e);class t extends Ap{static[kp]=ee(Ep,e)}return t}constructor(e={}){if(typeof e!=`object`||!e)throw bp(`options`,`object`,e);let{dest:t,minLength:n,maxLength:r,maxWrite:i,periodicFlush:a,sync:o,append:s=!0,mkdir:c,retryEAGAIN:l,fsync:u,contentMode:d=`utf8`,mode:f,fs:p={}}=e;super();let m=e.fd??t;if(typeof p!=`object`||!p)throw bp(`options.fs`,`object`,p);this.#E={...this.constructor[kp],...p};let h=this.#E;for(let e of[`write`,`writeSync`,`fsync`,`fsyncSync`,`close`,`open`,`mkdir`,`mkdirSync`])if(typeof h[e]!=`function`)throw bp(`options.fs.${e}`,`function`,h[e]);this.#l=Math.max(n||0,this.#l),this.#f=n||0,this.#p=r||0,this.#m=i||Cp,this.#g=a||0,this.#v=o||!1,this.#y=u||!1,this.#b=s||!1,this.#x=f,this.#S=l||(()=>!0),this.#C=c||!1,Sp(this.#l,`options.hwm`),Sp(this.#f,`options.minLength`),Sp(this.#p,`options.maxLength`),Sp(this.#m,`options.maxWrite`),Sp(this.#g,`options.periodicFlush`);for(let[e,t]of[[`sync`,this.#v],[`fsync`,this.#y],[`append`,this.#b],[`mkdir`,this.#C]])if(typeof t!=`boolean`)throw bp(`options.${e}`,`boolean`,t);if(typeof this.#S!=`function`)throw bp(`options.retryEAGAIN`,`function`,this.#S);if(d!=`buffer`&&d!=`utf8`)throw yp(`ERR_INVALID_ARG_VALUE`,`The property 'options.contentMode' must be one of: 'buffer', 'utf8'. Received ${JSON.stringify(d)}`);if(this.#w=d,this.#T=d==`buffer`?Tp:``,typeof m==`number`)this.#t=m,queueMicrotask(()=>this.emit(`ready`));else if(typeof m==`string`)this.#N(m);else throw bp(`fd`,`number or string`,m);if(this.#f>=this.#m)throw yp(`ERR_INVALID_ARG_VALUE`,`The argument 'minLength' should be smaller than maxWrite (${this.#m}). Received ${this.#f}`);this.#g!==0&&(this.#_=setInterval(()=>this.flush(),this.#g),this.#_.unref?.())}write(e){if(this.#d)throw xp(`Utf8Stream is destroyed`);if(this.#w==`buffer`){if(!H.Buffer.isBuffer(e))throw bp(`data`,`Buffer`,e)}else if(typeof e!=`string`)throw bp(`data`,`string`,e);let t=this.#e+e.length;if(this.#p&&t>this.#p)return this.emit(`drop`,e),this.#e<this.#l;let n=this.#n.length-1;if(this.#w==`buffer`){let t=this.#n;!t.length||this.#r[n]+e.length>this.#m?(t.push([e]),this.#r.push(e.length)):(t[n].push(e),this.#r[n]+=e.length)}else{let t=this.#n;!t.length||t[n].length+e.length>this.#m?t.push(e):t[n]+=e}return this.#e=t,!this.#i&&this.#e>=this.#f&&this.#F(),this.#e<this.#l}flush(e){if(e!=null&&typeof e!=`function`)throw bp(`cb`,`function`,e);if(this.#d){let t=xp(`Utf8Stream is destroyed`);if(!e)throw t;e(t);return}if(this.#f<=0){e?.(null);return}e&&this.#I(e),!this.#i&&(this.#n.length||(this.#n.push(this.#w==`buffer`?[]:``),this.#w==`buffer`&&this.#r.push(0)),this.#F())}flushSync(){if(this.#d)throw xp(`Utf8Stream is destroyed`);if(this.#t<0)throw xp(`Invalid file descriptor`);this.#w==`buffer`?this.#D():this.#O()}#D(){let e=this.#n;!this.#i&&this.#T.length>0&&(e.unshift([this.#T]),this.#T=Tp);let t=Tp;for(;e.length||t.length;){t.length<=0&&(t=Op(e[0],this.#r[0]));let n=this.#E.writeSync(this.#t,t);t=t.subarray(n),this.#e=Math.max(this.#e-n,0),t.length<=0&&(e.shift(),this.#r.shift())}}#O(){let e=this.#n;!this.#i&&this.#T.length>0&&(e.unshift(this.#T),this.#T=``);let t=``;for(;e.length||t;){t.length<=0&&(t=e[0]);let n=this.#E.writeSync(this.#t,t,`utf8`),r=Dp(t,this.#e,n);t=r.writingBuf,this.#e=r.len,t.length<=0&&e.shift()}try{this.#E.fsyncSync(this.#t)}catch{}}reopen(e){if(this.#d)throw xp(`Utf8Stream is destroyed`);if(this.#h){this.once(`ready`,()=>this.reopen(e));return}if(this.#a)return;if(!this.#u)throw yp(`ERR_OPERATION_FAILED`,`Unable to reopen a file descriptor, you must pass a file to Utf8Stream`);if(e&&(this.#u=e.toString()),this.#o=!0,this.#i)return;let t=this.#t;this.once(`ready`,()=>{t!==this.#t&&this.#E.close(t,e=>{e&&this.emit(`error`,e)})}),this.#N(this.#u)}end(){if(this.#d)throw xp(`Utf8Stream is destroyed`);if(this.#h){this.once(`ready`,()=>this.end());return}this.#a||(this.#a=!0,!this.#i&&(this.#e>0&&this.#t>=0?this.#F():this.#P()))}destroy(){this.#d||this.#P()}get mode(){return this.#x}get file(){return this.#u}get fd(){return this.#t}get minLength(){return this.#f}get maxLength(){return this.#p}get writing(){return this.#i}get sync(){return this.#v}get fsync(){return this.#y}get append(){return this.#b}get periodicFlush(){return this.#g}get contentMode(){return this.#w}get mkdir(){return this.#C}[Symbol.dispose](){this.destroy()}#k(){this.listenerCount(`drain`)&&(this.#s=!1,this.emit(`drain`))}#A(e,t=0){if(e){!this.#v&&(e.code===`EAGAIN`||e.code===`EBUSY`)&&this.#S(e,this.#T.length,this.#e-this.#T.length)?setTimeout(()=>this.#j(),wp):(this.#i=!1,this.emit(`error`,e));return}this.emit(`write`,t);let n=Dp(this.#T,this.#e,t);if(this.#e=n.len,this.#T=n.writingBuf,this.#T.length){if(!this.#v){this.#j();return}try{do{let e=this.#M(),t=Dp(this.#T,this.#e,e);this.#e=t.len,this.#T=t.writingBuf}while(this.#T.length)}catch(e){this.#A(e);return}}this.#y&&this.#E.fsyncSync(this.#t);let r=this.#e;this.#o?(this.#i=!1,this.#o=!1,this.reopen()):r>this.#f?this.#F():this.#a?r>0?this.#F():(this.#i=!1,this.#P()):(this.#i=!1,this.#v?this.#s||(this.#s=!0,queueMicrotask(()=>this.#k())):this.emit(`drain`))}#j(){this.#w==`buffer`?this.#E.write(this.#t,this.#T,(e,t)=>this.#A(e,t)):this.#E.write(this.#t,this.#T,`utf8`,(e,t)=>this.#A(e,t))}#M(){return this.#w==`buffer`?this.#E.writeSync(this.#t,this.#T):this.#E.writeSync(this.#t,this.#T,`utf8`)}#N(e){this.#h=!0,this.#i=!0,this.#s=!1;let t=(t,n=-1)=>{if(t){this.#o=!1,this.#i=!1,this.#h=!1,this.#v?queueMicrotask(()=>void(this.listenerCount(`error`)&&this.emit(`error`,t))):this.emit(`error`,t);return}let r=this.#o;this.#t=n,this.#u=e,this.#o=!1,this.#h=!1,this.#i=!1,this.#v?queueMicrotask(()=>this.emit(`ready`)):this.emit(`ready`),!this.#d&&(!this.#i&&this.#e>this.#f||this.#c?this.#F():r&&queueMicrotask(()=>this.emit(`drain`)))},n=this.#b?`a`:`w`,r=this.#x??438;if(this.#v)try{this.#C&&this.#E.mkdirSync(N(e),{recursive:!0}),t(null,this.#E.openSync(e,n,r))}catch(e){throw t(e),e}else this.#C?this.#E.mkdir(N(e),{recursive:!0},i=>{if(i)return t(i);this.#E.open(e,n,r,t)}):this.#E.open(e,n,r,t)}#P(){if(this.#t===-1){this.once(`ready`,()=>this.#P());return}this.#_!==void 0&&clearInterval(this.#_),this.#d=!0,this.#n=[],this.#r=[];let e=e=>{if(e){this.emit(`error`,e);return}this.#a&&!this.#i&&this.emit(`finish`),this.emit(`close`)},t=()=>{this.#t!==1&&this.#t!==2?this.#E.close(this.#t,e):e(null)};try{this.#E.fsync(this.#t,t)}catch{}}#F(){if(this.#i=!0,this.#w==`buffer`?this.#T=this.#T.length?this.#T:Op(this.#n.shift()??[],this.#r.shift()??0):this.#T||=this.#n.shift()||``,!this.#v){this.#j();return}try{this.#A(null,this.#M())}catch(e){this.#A(e)}}#I(e){this.#c=!0;let t=()=>{if(this.#y||this.#d)this.#c=!1,e(null);else try{this.#E.fsync(this.#t,t=>{this.#c=!1,e(t?.code==`EBADF`?null:t)})}catch(t){this.#c=!1,e(t)}this.off(`error`,n)},n=n=>{this.#c=!1,e(n),this.off(`drain`,t)};this.once(`drain`,t),this.once(`error`,n)}on(e,t,n){return e===`drain`&&(this.#s=!1),super.on(e,t,n)}addListener(e,t,n){return this.on(e,t,n)}once(e,t,n){return e===`drain`&&(this.#s=!1),super.once(e,t,n)}off(e,t,n,r){return super.off(e,t,n,r)}removeListener(e,t,n,r){return super.removeListener(e,t,n,r)}setMaxListeners(){throw S(`ENOSYS`,`Utf8Stream.setMaxListeners`)}getMaxListeners(){throw S(`ENOSYS`,`Utf8Stream.getMaxListeners`)}prependListener(){throw S(`ENOSYS`,`Utf8Stream.prependListener`)}prependOnceListener(){throw S(`ENOSYS`,`Utf8Stream.prependOnceListener`)}rawListeners(){throw S(`ENOSYS`,`Utf8Stream.rawListeners`)}},jp=t({BigIntStatsFs:()=>Kn,Dir:()=>Bi,Dirent:()=>Ri,ReadStream:()=>pu,Stats:()=>Hn,StatsFs:()=>Gn,Utf8Stream:()=>Ap,WriteStream:()=>mu,access:()=>np,accessSync:()=>wa,appendFile:()=>Mf,appendFileSync:()=>ea,chmod:()=>Zf,chmodSync:()=>ya,chown:()=>Yf,chownSync:()=>_a,close:()=>Pf,closeSync:()=>na,constants:()=>et,copyFile:()=>dp,copyFileSync:()=>Oa,cp:()=>hp,cpSync:()=>Ma,createReadStream:()=>sp,createWriteStream:()=>cp,exists:()=>wf,existsSync:()=>Wi,fchmod:()=>Vf,fchmodSync:()=>la,fchown:()=>Bf,fchownSync:()=>ca,fdatasync:()=>Lf,fdatasyncSync:()=>aa,fstat:()=>Nf,fstatSync:()=>ta,fsync:()=>If,fsyncSync:()=>ia,ftruncate:()=>Ff,ftruncateSync:()=>ra,futimes:()=>Hf,futimesSync:()=>ua,glob:()=>vp,globSync:()=>Pa,lchmod:()=>Qf,lchmodSync:()=>ba,lchown:()=>Xf,lchownSync:()=>va,link:()=>Kf,linkSync:()=>ma,lopenSync:()=>Xi,lstat:()=>Ef,lstatSync:()=>Ki,lutimes:()=>ep,lutimesSync:()=>Sa,mkdir:()=>Wf,mkdirSync:()=>fa,mkdtemp:()=>up,mkdtempDisposableSync:()=>Da,mkdtempSync:()=>Ea,open:()=>kf,openAsBlob:()=>_p,openSync:()=>Yi,opendir:()=>mp,opendirSync:()=>ja,promises:()=>hu,read:()=>zf,readFile:()=>Af,readFileSync:()=>Qi,readSync:()=>sa,readdir:()=>Gf,readdirSync:()=>pa,readlink:()=>Jf,readlinkSync:()=>ga,readv:()=>fp,readvSync:()=>ka,realpath:()=>tp,realpathSync:()=>Ca,rename:()=>Cf,renameSync:()=>Ui,rm:()=>lp,rmSync:()=>Ta,rmdir:()=>Uf,rmdirSync:()=>da,stat:()=>Tf,statSync:()=>Gi,statfs:()=>gp,statfsSync:()=>Na,symlink:()=>qf,symlinkSync:()=>ha,truncate:()=>Df,truncateSync:()=>qi,unlink:()=>Of,unlinkSync:()=>Ji,unwatchFile:()=>ap,utimes:()=>$f,utimesSync:()=>xa,watch:()=>op,watchFile:()=>ip,write:()=>Rf,writeFile:()=>jf,writeFileSync:()=>$i,writeSync:()=>oa,writev:()=>pp,writevSync:()=>Aa}),Mp=t({allowedRestrictedNames:()=>Np,get:()=>Fp,getSync:()=>Ip,list:()=>Vp,listSync:()=>Hp,remove:()=>zp,removeSync:()=>Bp,set:()=>Lp,setSync:()=>Rp}),Np=new Set;function Pp(e,t,n,r){if(!t.startsWith(`user.`)&&!Np.has(t))throw S(`ENOTSUP`,r,n)}async function Fp(e,t,n={}){e=j.call(this,e);let{fs:r,path:i}=G(e,this);Pp(this,t,e,`xattr.get`);let a=await r.stat(i).catch(me(`xattr.get`,e));if(U&&!z(this,a,4))throw S(`EACCES`,`xattr.get`,e);a.attributes??=new Xn;let o=a.attributes.get(t);if(!o)throw S(`ENODATA`,`xattr.get`,e);let s=H.Buffer.from(o);return n.encoding==`buffer`||!n.encoding?s:s.toString(n.encoding)}function Ip(e,t,n={}){e=j.call(this,e),Pp(this,t,e,`xattr.get`);let{fs:r,path:i}=G(e,this),a;try{a=r.statSync(i)}catch(t){throw b(Object.assign(t,{path:e}))}if(U&&!z(this,a,4))throw S(`EACCES`,`xattr.get`,e);a.attributes??=new Xn;let o=a.attributes.get(t);if(!o)throw S(`ENODATA`,`xattr.get`,e);let s=H.Buffer.from(o);return n.encoding==`buffer`||!n.encoding?s:s.toString(n.encoding)}async function Lp(e,t,n,r={}){e=j.call(this,e);let{fs:i,path:a}=G(e,this);Pp(this,t,e,`xattr.set`);let o=await i.stat(a).catch(me(`xattr.set`,e));if(U&&!z(this,o,2))throw S(`EACCES`,`xattr.set`,e);o.attributes??=new Xn;let s=o.attributes.get(t);if(r.create&&s)throw S(`EEXIST`,`xattr.set`,e);if(r.replace&&!s)throw S(`ENODATA`,`xattr.set`,e);o.attributes.set(t,H.Buffer.from(n)),await i.touch(a,o).catch(me(`xattr.set`,e))}function Rp(e,t,n,r={}){e=j.call(this,e);let{fs:i,path:a}=G(e,this);Pp(this,t,e,`xattr.set`);let o;try{o=i.statSync(a)}catch(t){throw b(Object.assign(t,{path:e}))}if(U&&!z(this,o,2))throw S(`EACCES`,`xattr.set`,e);o.attributes??=new Xn;let s=o.attributes.get(t);if(r.create&&s)throw S(`EEXIST`,`xattr.set`,e);if(r.replace&&!s)throw S(`ENODATA`,`xattr.set`,e);o.attributes.set(t,H.Buffer.from(n));try{i.touchSync(a,o)}catch(t){throw b(Object.assign(t,{path:e}))}}async function zp(e,t){e=j.call(this,e);let{fs:n,path:r}=G(e,this);Pp(this,t,e,`xattr.remove`);let i=await n.stat(r).catch(me(`xattr.remove`,e));if(U&&!z(this,i,2))throw S(`EACCES`,`xattr.remove`,e);if(i.attributes??=new Xn,!i.attributes.get(t))throw S(`ENODATA`,`xattr.remove`,e);i.attributes.remove(t),await n.touch(r,i)}function Bp(e,t){e=j.call(this,e);let{fs:n,path:r}=G(e,this);Pp(this,t,e,`xattr.remove`);let i;try{i=n.statSync(r)}catch(t){throw b(Object.assign(t,{path:e}))}if(U&&!z(this,i,2))throw S(`EACCES`,`xattr.remove`,e);if(i.attributes??=new Xn,!i.attributes.get(t))throw S(`ENODATA`,`xattr.remove`,e);i.attributes.remove(t);try{n.touchSync(r,i)}catch(t){throw b(Object.assign(t,{path:e}))}}async function Vp(e){e=j.call(this,e);let{fs:t,path:n}=G(e,this),r=await t.stat(n).catch(me(`xattr.list`,e));return r.attributes?[...r.attributes.keys()]:[]}function Hp(e){e=j.call(this,e);let{fs:t,path:n}=G(e,this),r;try{r=t.statSync(n)}catch(t){throw b(Object.assign(t,{path:e}))}return r.attributes?[...r.attributes.keys()]:[]}var Up=new Map;function Wp(e={}){let t=D(this),n=t.parent||Ze;if(!Gi.call(n,n.root).isDirectory())throw S(`ENOTDIR`,{syscall:`chroot`,path:n.root});let r=$e(t,e),i=Object.assign(r,{fs:{...ee(jp,r),Utf8Stream:Ap._withContext(r),promises:ee(hu,r),xattr:ee(Mp,r)},path:ee(Dn,r),bind:e=>{let t=Wp.call(r,e);return r.children.push(t),t}});return Up.set(r.id,i),i}var Q=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},$=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),Gp=class extends Jr{_fs;get type(){return this._fs.type}get name(){return this._fs.name}get label(){return this._fs.label}set label(e){this._fs.label=e}get attributes(){return this._fs.attributes}get _uuid(){return this._fs._uuid}set _uuid(e){this._fs._uuid=e}get uuid(){return this._fs.uuid}async ready(){return await this._fs.ready()}readySync(){return this._fs.readySync()}usage(){return this._fs.usage()}async rename(e,t){let n={stack:[],error:void 0,hasError:!1};try{Q(n,await this.lock(`rw`),!1),await this._fs.rename(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}renameSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,this.lockSync(`rw`),!1),this._fs.renameSync(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}async stat(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,await this.lock(`ro`),!1),await this._fs.stat(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}statSync(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,this.lockSync(`ro`),!1),this._fs.statSync(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}async touch(e,t){let n={stack:[],error:void 0,hasError:!1};try{Q(n,await this.lock(`rw`),!1),await this._fs.touch(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}touchSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{Q(n,this.lockSync(`rw`),!1),this._fs.touchSync(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}async createFile(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,await this.lock(`rw`),!1),await this._fs.createFile(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}createFileSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,this.lockSync(`rw`),!1),this._fs.createFileSync(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}async unlink(e){let t={stack:[],error:void 0,hasError:!1};try{Q(t,await this.lock(`rw`),!1),await this._fs.unlink(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}unlinkSync(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,this.lockSync(`rw`),!1),this._fs.unlinkSync(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}async rmdir(e){let t={stack:[],error:void 0,hasError:!1};try{Q(t,await this.lock(`rw`),!1),await this._fs.rmdir(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}rmdirSync(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,this.lockSync(`rw`),!1),this._fs.rmdirSync(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}async mkdir(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,await this.lock(`rw`),!1),await this._fs.mkdir(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}mkdirSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,this.lockSync(`rw`),!1),this._fs.mkdirSync(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}async readdir(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,await this.lock(`ro`),!1),await this._fs.readdir(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}readdirSync(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,this.lockSync(`ro`),!1),this._fs.readdirSync(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}async exists(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,await this.lock(`ro`),!1),await this._fs.exists(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}existsSync(e){let t={stack:[],error:void 0,hasError:!1};try{return Q(t,this.lockSync(`ro`),!1),this._fs.existsSync(e)}catch(e){t.error=e,t.hasError=!0}finally{$(t)}}async link(e,t){let n={stack:[],error:void 0,hasError:!1};try{Q(n,await this.lock(`rw`),!1),await this._fs.link(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}linkSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,this.lockSync(`rw`),!1),this._fs.linkSync(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}async sync(){let e={stack:[],error:void 0,hasError:!1};try{Q(e,await this.lock(`rw`),!1),await this._fs.sync()}catch(t){e.error=t,e.hasError=!0}finally{$(e)}}syncSync(){let e={stack:[],error:void 0,hasError:!1};try{return Q(e,this.lockSync(`rw`),!1),this._fs.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{$(e)}}async read(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{return Q(i,await this.lock(`ro`),!1),await this._fs.read(e,t,n,r)}catch(e){i.error=e,i.hasError=!0}finally{$(i)}}readSync(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{return Q(i,this.lockSync(`ro`),!1),this._fs.readSync(e,t,n,r)}catch(e){i.error=e,i.hasError=!0}finally{$(i)}}async write(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{return Q(r,await this.lock(`rw`),!1),await this._fs.write(e,t,n)}catch(e){r.error=e,r.hasError=!0}finally{$(r)}}writeSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{return Q(r,this.lockSync(`rw`),!1),this._fs.writeSync(e,t,n)}catch(e){r.error=e,r.hasError=!0}finally{$(r)}}streamRead(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,this.lockSync(`ro`),!1),this._fs.streamRead(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}streamWrite(e,t){let n={stack:[],error:void 0,hasError:!1};try{return Q(n,this.lockSync(`rw`),!1),this._fs.streamWrite(e,t)}catch(e){n.error=e,n.hasError=!0}finally{$(n)}}async ioctl(e,t,...n){let r={stack:[],error:void 0,hasError:!1};try{return Q(r,await this.lock(`rw`),!1),await this._fs.ioctl({...e,fs:this._fs},t,...n)}catch(e){r.error=e,r.hasError=!0}finally{$(r)}}ioctlSync(e,t,...n){let r={stack:[],error:void 0,hasError:!1};try{return Q(r,this.lockSync(`rw`),!1),this._fs.ioctlSync({...e,fs:this._fs},t,...n)}catch(e){r.error=e,r.hasError=!0}finally{$(r)}}};function Kp(e){class t extends Gp{constructor(...t){super(),this._fs=new e(...t)}}return t}function qp(e){class t extends e{constructor(...e){super(...e),this.attributes.set(`no_write`)}async rename(){throw C(`EROFS`)}renameSync(){throw C(`EROFS`)}async createFile(){throw C(`EROFS`)}createFileSync(){throw C(`EROFS`)}async unlink(){throw C(`EROFS`)}unlinkSync(){throw C(`EROFS`)}async rmdir(){throw C(`EROFS`)}rmdirSync(){throw C(`EROFS`)}async mkdir(){throw C(`EROFS`)}mkdirSync(){throw C(`EROFS`)}async link(){throw C(`EROFS`)}linkSync(){throw C(`EROFS`)}async touch(){throw C(`EROFS`)}touchSync(){throw C(`EROFS`)}async sync(){throw C(`EROFS`)}syncSync(){throw C(`EROFS`)}async write(){throw C(`EROFS`)}writeSync(){throw C(`EROFS`)}streamWrite(){throw C(`EROFS`)}}return t}function Jp(e){class t extends e{async exists(e){return this.existsSync(e)}async rename(e,t){return this.renameSync(e,t)}async stat(e){return this.statSync(e)}async touch(e,t){return this.touchSync(e,t)}async createFile(e,t){return this.createFileSync(e,t)}async unlink(e){return this.unlinkSync(e)}async rmdir(e){return this.rmdirSync(e)}async mkdir(e,t){return this.mkdirSync(e,t)}async readdir(e){return this.readdirSync(e)}async link(e,t){return this.linkSync(e,t)}async sync(){return this.syncSync()}async read(e,t,n,r){return this.readSync(e,t,n,r)}async write(e,t,n){return this.writeSync(e,t,n)}async ioctl(e,t,...n){return this.ioctlSync(e,t,...n)}}return t}async function Yp(e,t,...n){let r,i,a;if(typeof e==`number`)a=ui(this,e),r=W(a.fs),i=a.vnode,i.refs++;else{e=j.call(this,e);let t=await Ga(this,e,!1,{syscall:`ioctl`,path:e});if(!t.stats)throw S(`ENOENT`,{syscall:`ioctl`,path:e});r=W(t.fs),i=r.ref(t.path,r.get(t.path)?.inode??t.stats)}let o={fs:i.fs,inode:i.inode,path:i.path,file:a};try{return await i.fs.ioctl(o,t,...n)}catch(t){throw b(Object.assign(t,{syscall:`ioctl`,path:e}))}finally{r.unref(i)}}function Xp(e,t,...n){let r,i,a;if(typeof e==`number`)a=ui(this,e),r=W(a.fs),i=a.vnode,i.refs++;else{e=j.call(this,e);let t=Ai(this,e,!1,{syscall:`ioctl`,path:e});if(!t.stats)throw S(`ENOENT`,{syscall:`ioctl`,path:e});r=W(t.fs),i=r.ref(t.path,r.get(t.path)?.inode??t.stats)}let o={fs:i.fs,inode:i.inode,path:i.path,file:a};try{return i.fs.ioctlSync(o,t,...n)}catch(t){throw b(Object.assign(t,{syscall:`ioctl`,path:e}))}finally{r.unref(i)}}var Zp={name:`@zenfs/core`,version:`2.7.6`,description:`A filesystem, anywhere`,funding:{type:`individual`,url:`https://github.com/sponsors/james-pre`},main:`dist/index.js`,types:`dist/index.d.ts`,keywords:[`filesystem`,`node`,`storage`,`fs`,`browser`],bin:{"make-index":`scripts/make-index.js`,"zenfs-test":`scripts/test.js`,zci:`scripts/ci-cli.js`},files:[`dist`,`tests`,`license.md`,`eslint.shared.js`],type:`module`,homepage:`https://zenfs.dev/core`,author:`James Prevett <jp@jamespre.dev> (https://jamespre.dev)`,contributors:[`John Vilk <jvilk@cs.umass.edu>`],license:`LGPL-3.0-or-later`,repository:{type:`git`,url:`git+https://github.com/zen-fs/core.git`},bugs:{url:`https://github.com/zen-fs/core/issues`},engines:{node:`>= 18`},exports:{".":`./dist/index.js`,"./*.js":`./dist/*.js`,"./*":`./dist/*.js`,"./emulation/*":`./dist/node/*`,"./promises":`./dist/node/promises.js`,"./readline":`./dist/node/readline.js`,"./eslint":`./eslint.shared.js`,"./tests/*.ts":`./tests/*.ts`,"./tests/*.js":`./tests/*.js`,"./tests/*":`./tests/*.js`,"./types/*":`./types/*`},publishConfig:{access:`public`,provenance:!0},scripts:{format:`prettier --write .`,"format:check":`prettier --check .`,"spdx:check":`npx lice -a src tests/*.ts tests/**/*.test.ts`,"spdx:fix":`npx lice -aw src tests/*.ts tests/**/*.test.ts`,lint:`eslint src tests`,test:`npx -s zenfs-test --clean; npx -s zenfs-test -abcpn; tests/fetch/run.sh; npx -s zenfs-test --report-only`,"test:native":`npx -s zenfs-test tests/native-setup.ts --verbose`,"test:perf":`zbench`,build:`tsc --build`,dev:`tsc --build --watch`,prepublishOnly:`npm run build`},dependencies:{"@types/node":`^26.0.0`,"@zenfs/streams":`^1.0.0`,buffer:`^6.0.3`,eventemitter3:`^5.0.1`,kerium:`^1.5.0`,memium:`^1.0.0`,utilium:`^3.7.0`},devDependencies:{"@eslint/js":`^10.0.1`,"@octokit/action":`^8.0.4`,c8:`^12.0.0`,eslint:`^10.1.0`,globals:`^17.3.0`,prettier:`^3.2.5`,typedoc:`^0.28.18`,typescript:`^6.0.0`,"typescript-eslint":`^8.58.0`,"zbench-js":`^0.2.0`},prettier:{singleQuote:!0,useTabs:!0,trailingComma:`es5`,tabWidth:4,printWidth:150,arrowParens:`avoid`,experimentalOperatorPosition:`start`}},Qp=t({BigIntStatsFs:()=>Kn,Dir:()=>Bi,Dirent:()=>Ri,ReadStream:()=>pu,Stats:()=>Hn,StatsFs:()=>Gn,Utf8Stream:()=>Ap,WriteStream:()=>mu,_version:()=>$p,access:()=>np,accessSync:()=>wa,appendFile:()=>Mf,appendFileSync:()=>ea,chmod:()=>Zf,chmodSync:()=>ya,chown:()=>Yf,chownSync:()=>_a,chroot:()=>Ti,close:()=>Pf,closeSync:()=>na,constants:()=>et,copyFile:()=>dp,copyFileSync:()=>Oa,cp:()=>hp,cpSync:()=>Ma,createReadStream:()=>sp,createWriteStream:()=>cp,exists:()=>wf,existsSync:()=>Wi,fchmod:()=>Vf,fchmodSync:()=>la,fchown:()=>Bf,fchownSync:()=>ca,fdatasync:()=>Lf,fdatasyncSync:()=>aa,fstat:()=>Nf,fstatSync:()=>ta,fsync:()=>If,fsyncSync:()=>ia,ftruncate:()=>Ff,ftruncateSync:()=>ra,futimes:()=>Hf,futimesSync:()=>ua,glob:()=>vp,globSync:()=>Pa,ioctl:()=>Yp,ioctlSync:()=>Xp,lchmod:()=>Qf,lchmodSync:()=>ba,lchown:()=>Xf,lchownSync:()=>va,link:()=>Kf,linkSync:()=>ma,lopenSync:()=>Xi,lstat:()=>Ef,lstatSync:()=>Ki,lutimes:()=>ep,lutimesSync:()=>Sa,mkdir:()=>Wf,mkdirSync:()=>fa,mkdtemp:()=>up,mkdtempDisposableSync:()=>Da,mkdtempSync:()=>Ea,mount:()=>Si,open:()=>kf,openAsBlob:()=>_p,openSync:()=>Yi,opendir:()=>mp,opendirSync:()=>ja,promises:()=>hu,read:()=>zf,readFile:()=>Af,readFileSync:()=>Qi,readSync:()=>sa,readdir:()=>Gf,readdirSync:()=>pa,readlink:()=>Jf,readlinkSync:()=>ga,readv:()=>fp,readvSync:()=>ka,realpath:()=>tp,realpathSync:()=>Ca,rename:()=>Cf,renameSync:()=>Ui,rm:()=>lp,rmSync:()=>Ta,rmdir:()=>Uf,rmdirSync:()=>da,stat:()=>Tf,statSync:()=>Gi,statfs:()=>gp,statfsSync:()=>Na,symlink:()=>qf,symlinkSync:()=>ha,truncate:()=>Df,truncateSync:()=>qi,umount:()=>Ci,unlink:()=>Of,unlinkSync:()=>Ji,unwatchFile:()=>ap,utimes:()=>$f,utimesSync:()=>xa,watch:()=>op,watchFile:()=>ip,write:()=>Rf,writeFile:()=>jf,writeFileSync:()=>$i,writeSync:()=>oa,writev:()=>pp,writevSync:()=>Aa,xattr:()=>Mp}),$p=Zp.version,em=t({DirType:()=>Vr,Dirent:()=>Wr,Handle:()=>ci,chroot:()=>Ti,deleteFD:()=>di,dtToIf:()=>Ur,dupFD:()=>fi,fromFD:()=>ui,ifToDt:()=>Hr,ioctl:()=>Yp,ioctlSync:()=>Xp,link:()=>Za,mkdir:()=>Ja,mount:()=>Si,open:()=>Ka,readdir:()=>Ya,readlink:()=>qa,rename:()=>Xa,resolve:()=>Ga,stat:()=>Qa,sync:()=>Di,toFD:()=>li,umount:()=>Ci,xattr:()=>Mp}),tm=Qp;globalThis.__zenfs__=Object.create(Qp);export{ef as Async,kr as AsyncMapTransaction,Tr as AsyncTransaction,Xn as Attributes,Kn as BigIntStatsFs,bd as CopyOnWrite,yd as CopyOnWriteFS,Mr as DeviceFS,Bi as Dir,Ri as Dirent,_i as ErrnoError,Ad as Fetch,kd as FetchFS,Sr as FileSystem,jr as InMemory,Ar as InMemoryStore,lr as Index,Dd as IndexFS,L as Inode,I as InodeFlags,vd as Journal,mf as MetadataBlock,Kp as Mutexed,Pd as Passthrough,Nd as PassthroughFS,af as Port,tf as PortFS,Fd as RPC,pu as ReadStream,qp as Readonly,Sf as SingleBuffer,xf as SingleBufferStore,Hn as Stats,Gn as StatsFs,Dr as StoreFS,_f as SuperBlock,Jp as Sync,Or as SyncMapTransaction,wr as SyncTransaction,Cr as Transaction,Ap as Utf8Stream,Er as WrappedTransaction,mu as WriteStream,le as _,Gp as _MutexedFS,$d as _asyncFSKeys,sr as _chown,He as _fnOpt,Zn as _inode_fields,Qn as _inode_version,bn as _isNoEntry,Tn as _tempDirName,En as _temporal,$p as _version,mt as a,np as access,wa as accessSync,ld as addDevice,Mf as appendFile,ea as appendFileSync,Xe as assertContext,nf as attachFS,Wp as bindContext,Up as boundContexts,vt as c,We as checkOptions,Zf as chmod,ya as chmodSync,Yf as chown,_a as chownSync,Ti as chroot,Pf as close,na as closeSync,dd as configure,ed as configureFileSystem,ad as configureSingle,od as configureSingleSync,fd as configureSync,et as constants,D as contextOf,dp as copyFile,Oa as copyFileSync,hp as cp,Ma as cpSync,$e as createChildContext,Ke as createCredentials,sp as createReadStream,cp as createWriteStream,qe as credentialsAllowRoot,Ce as d,hn as decodeDirListing,tm as default,Ze as defaultContext,rf as detachFS,zr as devices,gn as encodeDirListing,wf as exists,Wi as existsSync,we as f,Vf as fchmod,la as fchmodSync,Bf as fchown,ca as fchownSync,Lf as fdatasync,aa as fdatasyncSync,Qp as fs,Nf as fstat,ta as fstatSync,If as fsync,ia as fsyncSync,Ff as ftruncate,ra as ftruncateSync,Ir as fullDevice,Hf as futimes,ua as futimesSync,ue as g,vp as glob,Pa as globSync,Cn as globToRegex,C as h,z as hasAccess,M as i,Yp as ioctl,Xp as ioctlSync,Ve as isBackend,Ge as isBackendConfig,ir as isBlockDevice,ar as isCharacterDevice,Ye as isContext,R as isDirectory,or as isFIFO,tr as isFile,rr as isSocket,nr as isSymbolicLink,_t as l,Qf as lchmod,ba as lchmodSync,Xf as lchown,va as lchownSync,Kf as link,ma as linkSync,he as log,Xi as lopenSync,Ef as lstat,Ki as lstatSync,ep as lutimes,Sa as lutimesSync,x as m,Wf as mkdir,fa as mkdirSync,up as mkdtemp,Da as mkdtempDisposableSync,Ea as mkdtempSync,Si as mount,xi as mounts,Fn as n,_n as normalizeMode,Sn as normalizeOptions,j as normalizePath,xn as normalizeTime,Pr as nullDevice,O as o,kf as open,_p as openAsBlob,Yi as openSync,mp as opendir,ja as opendirSync,y as p,hu as promises,N as r,Lr as randomDevice,zf as read,Af as readFile,Qi as readFileSync,sa as readSync,Gf as readdir,pa as readdirSync,Jf as readlink,ga as readlinkSync,fp as readv,ka as readvSync,tp as realpath,Ca as realpathSync,Cf as rename,Ui as renameSync,rd as resolveMountConfig,id as resolveMountConfigSync,of as resolveRemoteMount,lp as rm,Ta as rmSync,Uf as rmdir,da as rmdirSync,qn as rootIno,ft as s,Tf as stat,Gi as statSync,gp as statfs,Na as statfsSync,qf as symlink,ha as symlinkSync,pd as sync,Yr as t,Df as truncate,qi as truncateSync,Se as u,Ci as umount,Of as unlink,Ji as unlinkSync,ap as unwatchFile,er as userModifiableFlags,$n as userVisibleFlags,$f as utimes,xa as utimesSync,_ as v,yn as validateFD,cr as version,em as vfs,wn as waitOnline,op as watch,ip as watchFile,bi as withExceptionContext,vi as withPath,yi as wrap,Rf as write,jf as writeFile,$i as writeFileSync,oa as writeSync,pp as writev,Aa as writevSync,Mp as xattr,Fr as zeroDevice};
|