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.
Files changed (170) hide show
  1. package/dist/ui/.vite/manifest.json +182 -182
  2. package/dist/ui/assets/{SKILL-BflWplWz.js → SKILL-B8Oawe6a.js} +1 -1
  3. package/dist/ui/assets/SKILL-CJrjPuRt.js +1 -0
  4. package/dist/ui/assets/{account-store-Cq1iLLd1.js → account-store-LwLxI7v1.js} +1 -1
  5. package/dist/ui/assets/{account-store-S74-2PYK.js → account-store-SI8RQbm0.js} +1 -1
  6. package/dist/ui/assets/{adobe-00iHjKNp.js → adobe-BHZ-TF7E.js} +1 -1
  7. package/dist/ui/assets/{adobe-Df_ijIBF.js → adobe-Cqd5wrqM.js} +1 -1
  8. package/dist/ui/assets/{agent-panels-DoC14erl.js → agent-panels-DXCdmUkc.js} +1 -1
  9. package/dist/ui/assets/{almost-bash-shell-headless-BNKnE7iz.js → almost-bash-shell-headless-B29ulBpN.js} +33 -33
  10. package/dist/ui/assets/{apply-layout-qbXcgYo4.js → apply-layout-BiYaZGTe.js} +1 -1
  11. package/dist/ui/assets/{apps-DGVYlpFo.js → apps-BYK0eeEc.js} +1 -1
  12. package/dist/ui/assets/{azure-openai-C0BQBEQP.js → azure-openai-BgA0OxNa.js} +1 -1
  13. package/dist/ui/assets/{azure-openai-B7GWIGtX.js → azure-openai-DwxTKwka.js} +1 -1
  14. package/dist/ui/assets/{backend-hostfs-B-dnlb2V.js → backend-hostfs-CeXHlroV.js} +1 -1
  15. package/dist/ui/assets/{cdp-DEzvh01y.js → cdp-wm8vfA8s.js} +1 -1
  16. package/dist/ui/assets/{cerebras-0-LP8uU7.js → cerebras-BPlfZv3L.js} +1 -1
  17. package/dist/ui/assets/{cerebras-Du1-GKAd.js → cerebras-wuHzITPY.js} +1 -1
  18. package/dist/ui/assets/{composer-speech-Bjx5KF3K.js → composer-speech-DI9SI2lY.js} +1 -1
  19. package/dist/ui/assets/{connect-surface-B_6zei2K.js → connect-surface-zTa8OfFh.js} +1 -1
  20. package/dist/ui/assets/{directed-approval-JnY9fFHA.js → directed-approval-DmDgVpiX.js} +1 -1
  21. package/dist/ui/assets/{dist-CTNUClOy.js → dist-TdFroLO3.js} +3 -3
  22. package/dist/ui/assets/{dist-BZsj6rXC.js → dist-b828m-Si.js} +3 -3
  23. package/dist/ui/assets/{ensure-speech-assets-DpMK2BVK.js → ensure-speech-assets-42E6KJDv.js} +1 -1
  24. package/dist/ui/assets/frame-bytes-BSmP8I94.js +1 -0
  25. package/dist/ui/assets/frames-C1gdZfee.js +1 -0
  26. package/dist/ui/assets/{frozen-archive-writer-C6rkeqTj.js → frozen-archive-writer-C97kBlYw.js} +1 -1
  27. package/dist/ui/assets/{fs-DNazCCQe.js → fs-BKmepe3Q.js} +2 -2
  28. package/dist/ui/assets/{fs-B04LUR23.js → fs-DmgjBIs9.js} +1 -1
  29. package/dist/ui/assets/{gelatiere-store-CYT3L7Vb.js → gelatiere-store-D1l9WE1j.js} +1 -1
  30. package/dist/ui/assets/{gelatiere-unit-DwXO8ltI.js → gelatiere-unit-jlm5b-JJ.js} +1 -1
  31. package/dist/ui/assets/{github-CcKV5VKp.js → github-BB3M-XW1.js} +1 -1
  32. package/dist/ui/assets/{github-iChs8y5l.js → github-C8jjATg2.js} +2 -2
  33. package/dist/ui/assets/{github-auth-BGT4O5xo.js → github-auth-CkC7qTEg.js} +1 -1
  34. package/dist/ui/assets/{github-copilot-CvHvBxAK.js → github-copilot-D7QRCTDD.js} +1 -1
  35. package/dist/ui/assets/{github-copilot-BwhWpIu1.js → github-copilot-DuwasHAz.js} +1 -1
  36. package/dist/ui/assets/{github-install-XqRYcMtt.js → github-install-DT3Wys59.js} +1 -1
  37. package/dist/ui/assets/{github-zip-4EqOXIUE.js → github-zip-CX3GXBmW.js} +1 -1
  38. package/dist/ui/assets/{hear-Cpn_F-65.js → hear-pJ--prvx.js} +1 -1
  39. package/dist/ui/assets/{help-QX0cC2We.js → help-gOzjZhgS.js} +1 -1
  40. package/dist/ui/assets/host-DDFasAvt.js +1 -0
  41. package/dist/ui/assets/{host-command-5ESITqj8.js → host-command-B0EUpLfV.js} +1 -1
  42. package/dist/ui/assets/{installer-U9S8N8N1.js → installer-DeqzzcvC.js} +1 -1
  43. package/dist/ui/assets/{js-realm-worker-DKMnVG_N.js → js-realm-worker-QT2JnICz.js} +1 -1
  44. package/dist/ui/assets/{jsh-executor-BiCBEs7e.js → jsh-executor-BBZWMBxV.js} +3 -3
  45. package/dist/ui/assets/{kernel-worker-C96uVLqD.js → kernel-worker-B23YxkDH.js} +10 -10
  46. package/dist/ui/assets/{lick-ws-bridge-DOF7QXQ9.js → lick-ws-bridge-CpcUjLS6.js} +1 -1
  47. package/dist/ui/assets/{lick-ws-bridge-DGI7H1_T.js → lick-ws-bridge-DsoQWD5s.js} +1 -1
  48. package/dist/ui/assets/{live-session-curation-DVhFE-Ox.js → live-session-curation-BWfx-Nu1.js} +1 -1
  49. package/dist/ui/assets/{live-session-snapshot-C3DrUEnT.js → live-session-snapshot-BSNfthJ2.js} +1 -1
  50. package/dist/ui/assets/{local-llm-OCXxf3jz.js → local-llm-DGFPI_4T.js} +1 -1
  51. package/dist/ui/assets/{local-llm-DWDhMi6m.js → local-llm-vzP-uq7M.js} +1 -1
  52. package/dist/ui/assets/{main-cI-uMcJb.js → main-DFTTAllP.js} +3 -3
  53. package/dist/ui/assets/{main-cherry-BDzXVcQE.js → main-cherry-Bbjw_90k.js} +1 -1
  54. package/dist/ui/assets/{memory-curation-seam-DtuGVyA0.js → memory-curation-seam-BufuSUCj.js} +1 -1
  55. package/dist/ui/assets/{memory-health-C1-Ws6TZ.js → memory-health-DdSqq7yP.js} +1 -1
  56. package/dist/ui/assets/memory-v2-flag-uChv9nwr.js +1 -0
  57. package/dist/ui/assets/{memory-write-execute-DXKJTpgr.js → memory-write-execute-BygymnF0.js} +1 -1
  58. package/dist/ui/assets/{mount-Beg7rJyd.js → mount-DlogHA7u.js} +3 -3
  59. package/dist/ui/assets/{mount-DNQXdZUP.js → mount-_sTSuvKx.js} +1 -1
  60. package/dist/ui/assets/{new-session-CcLRyHPG.js → new-session-C914zfKa.js} +2 -2
  61. package/dist/ui/assets/{oauth-bootstrap-ZVkzpjIg.js → oauth-bootstrap-B7cPXMSk.js} +2 -2
  62. package/dist/ui/assets/{onboarding-orchestrator-DT4m4G7X.js → onboarding-orchestrator-CbnB67nZ.js} +1 -1
  63. package/dist/ui/assets/{openai-codex-BC4IvaOv.js → openai-codex-BtwVt-12.js} +1 -1
  64. package/dist/ui/assets/{openai-codex-BQ9tRIIq.js → openai-codex-SI0nWQNS.js} +1 -1
  65. package/dist/ui/assets/{openrouter-TyodWHrW.js → openrouter-BFlMjaCH.js} +1 -1
  66. package/dist/ui/assets/{openrouter-CJBLDVpZ.js → openrouter-BruOnSfT.js} +1 -1
  67. package/dist/ui/assets/{openrouter-free-WPcdZKoe.js → openrouter-free-B2pceWVg.js} +1 -1
  68. package/dist/ui/assets/{openrouter-free-BX50G01y.js → openrouter-free-DPQDCfqQ.js} +1 -1
  69. package/dist/ui/assets/{openrouter-oauth-CSHbAliA.js → openrouter-oauth-BLskezr8.js} +1 -1
  70. package/dist/ui/assets/{openrouter-oauth-C3IjVanq.js → openrouter-oauth-C4kwBIwS.js} +1 -1
  71. package/dist/ui/assets/opfs-mount-8s9WP18b.js +2 -0
  72. package/dist/ui/assets/opfs-mount-DF49ioKQ.js +2 -0
  73. package/dist/ui/assets/{panel-rpc-handlers-DLOTqcPU.js → panel-rpc-handlers-BuMdGle_.js} +2 -2
  74. package/dist/ui/assets/{panelize-shell-CwsQzaeI.js → panelize-shell-Dg_58ImI.js} +1 -1
  75. package/dist/ui/assets/{pi-edit-execution-Chc5AuQc.js → pi-edit-execution-C9GYKunH.js} +1 -1
  76. package/dist/ui/assets/{provider-DxWLekYl.js → provider-B_fhkXn7.js} +2 -2
  77. package/dist/ui/assets/{provider-DhpqYKvN.js → provider-DEcfbBkM.js} +1 -1
  78. package/dist/ui/assets/{provider-settings-B0jrEjPK.js → provider-settings-BLtjMrT0.js} +1 -1
  79. package/dist/ui/assets/provider-store-access-C0w1Xcs2.js +1 -0
  80. package/dist/ui/assets/provider-store-access-YjQKD2es.js +1 -0
  81. package/dist/ui/assets/{providers-DXeKO0vp.js → providers-B0rCH1pp.js} +1 -1
  82. package/dist/ui/assets/{providers-BXX3OkWO.js → providers-B9p2VR5L.js} +2 -2
  83. package/dist/ui/assets/{quick-llm-D491FPqp.js → quick-llm-B8uh7EVu.js} +1 -1
  84. package/dist/ui/assets/{realm-inprocess-CzoLj3Xw.js → realm-inprocess-qhbZWW6z.js} +1 -1
  85. package/dist/ui/assets/{recovery-screen-BsX5dSxb.js → recovery-screen-M8szzZB2.js} +1 -1
  86. package/dist/ui/assets/registry-DfuJBCKY.js +1 -0
  87. package/dist/ui/assets/{remote-terminal-view-Cvej7E9x.js → remote-terminal-view-6ygd42Fb.js} +1 -1
  88. package/dist/ui/assets/{restore-DNbXSMdv.js → restore-Qq5h6a38.js} +1 -1
  89. package/dist/ui/assets/{run-hrgOVM1K.js → run--H9dud5r.js} +2 -2
  90. package/dist/ui/assets/{run-DTdaPeZk.js → run-Bk0pGJJa.js} +1 -1
  91. package/dist/ui/assets/{run-BW1OgEfH.js → run-C0wVagJ5.js} +2 -2
  92. package/dist/ui/assets/{run-BEvYI68Y.js → run-C3rYy-Lu.js} +1 -1
  93. package/dist/ui/assets/{run-DT94aw3i.js → run-CPDsfLJJ.js} +2 -2
  94. package/dist/ui/assets/run-DUzzkV29.js +82 -0
  95. package/dist/ui/assets/{run-0lgIGPtR.js → run-_QNErIec.js} +2 -2
  96. package/dist/ui/assets/{session-command-memory-qhFqpZin.js → session-command-memory-CAl1-crq.js} +2 -2
  97. package/dist/ui/assets/{session-jsonl-D6H0oEEs.js → session-jsonl-B-4fihPX.js} +1 -1
  98. package/dist/ui/assets/{session-jsonl-7CMJAz_O.js → session-jsonl-lB9-7rZS.js} +1 -1
  99. package/dist/ui/assets/{session-search-index-DB-cA304.js → session-search-index-Bn4FhmPW.js} +1 -1
  100. package/dist/ui/assets/{setup-feature-flags-remote-CbHmB3yy.js → setup-feature-flags-remote-opNg3JWs.js} +1 -1
  101. package/dist/ui/assets/{signed-fetch-K5mg-UNn.js → signed-fetch-YC2zrriw.js} +1 -1
  102. package/dist/ui/assets/{silent-renew-backoff-DPs8MKs1.js → silent-renew-backoff-Bak0vwwf.js} +1 -1
  103. package/dist/ui/assets/slicc-version-D1Js64gw.js +1 -0
  104. package/dist/ui/assets/{snapshot-DRjB280n.js → snapshot-6br_5p-f.js} +1 -1
  105. package/dist/ui/assets/{snapshot-features-1VuozUQ1.js → snapshot-features-BqGUjBWl.js} +1 -1
  106. package/dist/ui/assets/{soundscape-Yi1I_to2.js → soundscape-DRViCPly.js} +1 -1
  107. package/dist/ui/assets/{speak-u3eKnBhD.js → speak-DRv_vLqY.js} +1 -1
  108. package/dist/ui/assets/{sprinkle-manager-B6umvMDL.js → sprinkle-manager-DeJrE3Hq.js} +1 -1
  109. package/dist/ui/assets/{sprinkle-renderer-DFLUy8Rt.js → sprinkle-renderer-DYUy10CO.js} +1 -1
  110. package/dist/ui/assets/ssh-D1zj1EXl.js +6 -0
  111. package/dist/ui/assets/{state-C3NHMuT8.js → state-BpyjzTIG.js} +1 -1
  112. package/dist/ui/assets/{store-C89y4bgq.js → store-DQkIRnav.js} +1 -1
  113. package/dist/ui/assets/{store-BCiln3U9.js → store-DwUewAuZ.js} +1 -1
  114. package/dist/ui/assets/{sudo-LmUbpBOj.js → sudo-DIegVBwT.js} +1 -1
  115. package/dist/ui/assets/{supervisor-me6fQoK1.js → supervisor-gHbk5m7z.js} +1 -1
  116. package/dist/ui/assets/{sync-dialog-DYhNAkny.js → sync-dialog-CH4PBcVu.js} +1 -1
  117. package/dist/ui/assets/tab-0xwFvGm5.js +1 -0
  118. package/dist/ui/assets/{transformers-env-DfP7DUPB.js → transformers-env-9M9En1_O.js} +1 -1
  119. package/dist/ui/assets/{tray-leader-C3rsjUjA.js → tray-leader-Bd293BI8.js} +1 -1
  120. package/dist/ui/assets/{tray-leave-runtime-BcynwR81.js → tray-leave-runtime-wLd1uBMu.js} +1 -1
  121. package/dist/ui/assets/{tray-sidecar-Cv9tMmdt.js → tray-sidecar-C35X7Jht.js} +1 -1
  122. package/dist/ui/assets/{upgrade-detection-BlJcBVzi.js → upgrade-detection-Tp8fDJAG.js} +1 -1
  123. package/dist/ui/assets/{upskill-lick-skip-DjF0bJdQ.js → upskill-lick-skip-Cr0VVPGj.js} +1 -1
  124. package/dist/ui/assets/url-B1WJZBSE.js +1 -0
  125. package/dist/ui/assets/v86-BOapztuq.js +1 -0
  126. package/dist/ui/assets/{voice-reply-DIIIZYai.js → voice-reply-wJfABSIn.js} +1 -1
  127. package/dist/ui/assets/{wc-attach-DJ0Fkabv.js → wc-attach-CtVWDKPk.js} +2 -2
  128. package/dist/ui/assets/{wc-browser-JGWqtFMD.js → wc-browser-BJemxWhg.js} +1 -1
  129. package/dist/ui/assets/{wc-computers-9ZIUJZ_0.js → wc-computers-Cr14YnOg.js} +1 -1
  130. package/dist/ui/assets/{wc-detached-B_EqDI_e.js → wc-detached-DQ_ZTSZ-.js} +1 -1
  131. package/dist/ui/assets/{wc-extension-DvB8B2eR.js → wc-extension-C8pgLDqO.js} +2 -2
  132. package/dist/ui/assets/{wc-follower-DirKNNKd.js → wc-follower-nosCeVKN.js} +3 -3
  133. package/dist/ui/assets/{wc-follower-oauth-CmPQI9r7.js → wc-follower-oauth-BU-XAftl.js} +1 -1
  134. package/dist/ui/assets/{wc-gelatiere-CNMtGFnh.js → wc-gelatiere-BiyouLW3.js} +1 -1
  135. package/dist/ui/assets/{wc-live-Cnwth3gF.js → wc-live-CaopRwn0.js} +5 -5
  136. package/dist/ui/assets/{wc-nav-BtpwKT3F.js → wc-nav-Wn2qDNiX.js} +2 -2
  137. package/dist/ui/assets/{wc-onboarding-CMqXuHAF.js → wc-onboarding-FjrDOv_u.js} +2 -2
  138. package/dist/ui/assets/{wc-permissions-D0noVnzr.js → wc-permissions-C63-jLbY.js} +2 -2
  139. package/dist/ui/assets/{wc-placeholder-BYDPnffr.js → wc-placeholder-Bdbmjijc.js} +3 -3
  140. package/dist/ui/assets/{wc-secret-request-BPq25scU.js → wc-secret-request-C9iCWgBV.js} +1 -1
  141. package/dist/ui/assets/{wc-settings-C4ArQscj.js → wc-settings-1ZJgN4Wk.js} +3 -3
  142. package/dist/ui/assets/{wc-shell-BIvWfO_D.js → wc-shell-CrMn8BW0.js} +3 -3
  143. package/dist/ui/assets/{wc-shortcut-config-5XM5GhZn.js → wc-shortcut-config-JXEU24sg.js} +1 -1
  144. package/dist/ui/assets/{wc-sprinkles-DcxL7Mr5.js → wc-sprinkles-CBaPR_V8.js} +2 -2
  145. package/dist/ui/assets/{wc-transcript-export-D1mWHlgn.js → wc-transcript-export-eyG-SwVe.js} +2 -2
  146. package/dist/ui/assets/{wc-tray-J5wALVKi.js → wc-tray-dSLNIDh9.js} +4 -4
  147. package/dist/ui/assets/welcome-detection-DuFRP38Z.js +1 -0
  148. package/dist/ui/assets/{whisper-session-8ebia7af.js → whisper-session-DrDhzSqp.js} +2 -2
  149. package/dist/ui/assets/{xai-grok-A-4PUiGr.js → xai-grok-C2oyJ5tt.js} +1 -1
  150. package/dist/ui/assets/{xai-grok-Bd7-uPOA.js → xai-grok-G4GFCgrM.js} +1 -1
  151. package/dist/ui/index.html +3 -3
  152. package/dist/ui/packages/webapp/index.html +3 -3
  153. package/package.json +2 -2
  154. package/dist/ui/assets/SKILL-B_vSLfiC.js +0 -1
  155. package/dist/ui/assets/encode-frame-30wbFN-H.js +0 -1
  156. package/dist/ui/assets/frames-7E6RloFP.js +0 -1
  157. package/dist/ui/assets/host-CLGoytqB.js +0 -1
  158. package/dist/ui/assets/memory-v2-flag-CYHl_0MX.js +0 -1
  159. package/dist/ui/assets/opfs-mount-Bfohoi0h.js +0 -2
  160. package/dist/ui/assets/opfs-mount-Dizi9FS1.js +0 -2
  161. package/dist/ui/assets/provider-store-access-B_XDCrzI.js +0 -1
  162. package/dist/ui/assets/provider-store-access-EsgcgdjM.js +0 -1
  163. package/dist/ui/assets/registry-qHtWYFOX.js +0 -1
  164. package/dist/ui/assets/run-B4NB-XFg.js +0 -80
  165. package/dist/ui/assets/slicc-version-cii7tBRO.js +0 -1
  166. package/dist/ui/assets/ssh-2T7ub5Yk.js +0 -6
  167. package/dist/ui/assets/tab-DI1zy4Vd.js +0 -1
  168. package/dist/ui/assets/url-SK-_tyJs.js +0 -1
  169. package/dist/ui/assets/v86-BF0NlNun.js +0 -1
  170. 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-B5d1xHaH.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)}};const 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}}}const 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)}const oe=new TextEncoder;function v(e){return oe.encode(e)}const 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||={});const 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||={});const ge=[`emergency`,`alert`,`critical`,`error`,`warning`,`notice`,`info`,`debug`];function _e(e){return ge.indexOf(e)}const 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}}const 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)+`] `}const 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]}}let Ne=e=>[ke(e),e.message];function Pe(e){let t=Ne(e);return typeof t==`string`?[t]:Array.from(t)}let Fe=`process`in globalThis?console.error:console.log;function Ie(e){e.level>Le||Fe(...Pe(e))}let 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,s=Array.isArray(r.type)?`one of ${r.type.map(o).join(`, `)}`:o(r.type);throw T(C(`EINVAL`,`Incorrect type for "${n}": ${a} (expected ${s})`))}}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}const 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`))}const 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}let 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});const 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}const St=new Map;function Ct(e){if(St.has(e.name))throw ReferenceError(`Type is already registered: ${e.name}`);St.set(e.name,e)}const wt=Symbol(`DataView`);function Tt(e){return e[wt]??=new DataView(e),e[wt]}const 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);const 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}const 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)}}const 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))}const 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}const 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())}const 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)}const Bn=BigInt(1e6);var 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};const qn=0,Jn=3968;let 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})();const Zn=[`ino`,`data`,`size`,`mode`,`flags`,`nlink`,`uid`,`gid`,`atimeMs`,`birthtimeMs`,`mtimeMs`,`ctimeMs`,`version`,`rdev`],Qn=5;var 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||={});const $n=253951,er=229631;let 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}const cr=1;var 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||={});const 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||={});const 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)}};var xr=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=65536}=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 Sr=class{store;constructor(e){this.store=e}},Cr=class extends Sr{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)}},wr=class extends Sr{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)}},Tr=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 wr))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 wr))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}),Er=class extends xr{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 Tr(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:16895});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:16895});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:16895});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:16895});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)}}},Dr=class extends Cr{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)}},Or=class extends wr{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)}},kr=class extends Map{maxSize;label;flags=[];name=`tmpfs`;constructor(e=yt,t){super(),this.maxSize=e,this.label=t}async sync(){}transaction(){return new Dr(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}}};const Ar={name:`InMemory`,options:{maxSize:{type:`number`,required:!1},label:{type:`string`,required:!1}},create({maxSize:e,label:t}){let n=new Er(new kr(e,t));return n.checkRootSync(),n}};var jr=class extends Er{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:8630,...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(Nr),this._createDevice(Pr),this._createDevice(Fr),this._createDevice(Ir),this._createDevice(Lr),Ee(`Added default devices`)}constructor(){super(new kr(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)}};const Mr=new Uint8Array,Nr={name:`null`,singleton:!0,init(){return{major:1,minor:3}},read(){return Mr},write(){}},Pr={name:`zero`,singleton:!0,init(){return{major:1,minor:5}},read(e,t,n,r){t.fill(0,n,r)},write(){}},Fr={name:`full`,singleton:!0,init(){return{major:1,minor:7}},read(e,t,n,r){t.fill(0,n,r)},write(){throw C(`ENOSPC`)}},Ir={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(){}},Lr={name:`console`,singleton:!0,init(e,{output:t=e=>console.log(e)}={}){return{major:5,minor:1,data:{output:t}}},read(){return Mr},write(e,t,n){let r=ce(t);e.data.output(r,n)}},Rr={null:Nr,zero:Pr,full:Fr,random:Ir,console:Lr};var H=r();let U=!0;function zr(e){U=e}var Br;(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`})(Br||={});function Vr(e){return(e&61440)>>12}function Hr(e){return e<<12}var Ur=class{ino;type;path;name},Wr=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},Gr=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},Kr=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}};let qr=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[ne],n=[ne],Gr(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),Gr(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=(Wr(this,e),new Kr);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}}})();var Jr=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)}},Yr=class extends qr{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)}},Xr=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},Zr=(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}),Qr=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 Yr(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;Xr(t,await e.lock(`rw`),!1),await e.sync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Zr(t)}}}syncSync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;Xr(t,e.lockSync(`rw`),!1),e.syncSync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Zr(t)}}}};const $r=new Map;function W(e){let t=$r.get(e.uuid);return t||(t=new Qr(e),$r.set(e.uuid,t)),t}async function ei(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 ti(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 ni=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},ri=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},ii=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},ai=(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});let oi=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;ri(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),ri(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=ni(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;ii(e,this.vnode.lockSync(`rw`),!1),this.vnode.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{ai(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);ii(t,this.vnode.lockSync(`rw`),!1),this.vnode.truncate(e),this._isSync&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{ai(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);ii(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{ai(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);ii(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{ai(i)}}chmodSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ii(t,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?-61441:O)|e,(this._isSync||e>61440)&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{ai(t)}}chownSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ii(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{ai(n)}}utimesSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ii(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{ai(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;ii(e,await this.vnode.lock(`rw`),!1),await this.vnode.sync()}catch(t){e.error=t,e.hasError=!0}finally{ai(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);ii(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{ai(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);ii(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{ai(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);ii(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{ai(i)}}async chmod(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ii(t,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?-61441:O)|e,(this._isSync||e>61440)&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{ai(t)}}async chown(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);ii(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{ai(n)}}async utimes(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ii(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{ai(n)}}streamRead(e){if(this.closed)throw S(`EBADF`,`streamRead`,this.path);let{vnode:t}=this,{chunkSize:n=65536}=e,r=e.start??0,i=e.end;return new ReadableStream({async pull(e){let a={stack:[],error:void 0,hasError:!1};try{if(ii(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{ai(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{ii(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{ai(i)}},async close(){let e={stack:[],error:void 0,hasError:!1};try{ii(e,await t.lock(`rw`),!1),await t.sync()}catch(t){e.error=t,e.hasError=!0}finally{ai(e)}}})}}})();function si(e,t=e.context){let n=D(t).descriptors,r=0;for(;n.has(r);)r++;return n.set(r,e),r}function ci(e,t){yn(t);let n=D(e).descriptors.get(t);if(!n)throw C(`EBADF`);return n}function li(e,t){return D(e).descriptors.delete(t)}function ui(e,t){return si(ci(e,t).ref(),e)}const di=/[rwasx]{1,2}\+?/;function fi(e){if(typeof e==`number`)return e;if(!di.test(e))throw C(`EINVAL`,`Invalid flag string: `+e);return pi(e)}function pi(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 mi(e){let t=0;return e&1||(t|=4),(e&1||e&2)&&(t|=2),t}const hi=x;function gi(e,t){return e.path=t,e}function _i(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 vi(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}})}const yi=Ze.mounts;bi(`/`,Ar.create({label:`root`}));function bi(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),$r.has(t.uuid)||$r.set(t.uuid,new Qr(t)),Te(`Mounted ${t.name} on ${e}`),Ee(`${t.name} attributes: ${[...t.attributes].map(([e,t])=>t==null?e:e+`=`+t).join(`, `)}`)}function xi(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=()=>{$r.delete(n.uuid),Te(`Synced all changes to `+e)};try{$r.get(n.uuid)?.syncSync(),r()}catch{E(`Could not flush to ${e} synchronously.`),$r.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(!wi(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:vi(n,a),path:e,mountPoint:t,root:r}}throw Se(new x(y.EIO,`No file system for `+e))}function Si(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 Ci(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 wi(e,t){return e===`/`||e===t||(e.endsWith(`/`)||(e+=`/`),t.startsWith(e))}var Ti=t({link:()=>Pi,mkdir:()=>ji,open:()=>ki,readdir:()=>Mi,readlink:()=>Ai,rename:()=>Ni,resolve:()=>Oi,stat:()=>Fi}),Ei=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},Di=(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 Oi(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}:Oi(e,jn.call(e,N(t),Ai.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==`/`?`/`:Oi(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)?Oi(e,jn.call(e,o,Ai.call(e,s)),!1,r):{...c,fullPath:s,stats:l}}function ki(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=fi(n.flag);t=n.preserveSymlinks?t:Oi(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);Ei(s,ti(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 Ba(e,`rename`,t),new oi(e,t,o,i,W(a).ref(o,f))}catch(e){s.error=e,s.hasError=!0}finally{Di(s)}}if(U&&(!z(e,s,r)||!z(e,s,mi(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 oi(e,t,o,i,W(a).ref(o,s));return i&512&&c.truncateSync(0),c}function Ai(e){e=j.call(this,e);let{fs:t,stats:n,path:r}=Oi(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 ji(e,t={}){let n=j.call(this,e),r={syscall:`mkdir`,path:n},{fullPath:i}=Oi(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)?Oi(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);Ei(n,ti(a,i,`rw`,m),!1);let h=_i(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),Ba(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{Di(n)}};return p(n,o),f}function Mi(e,t={}){e=j.call(this,e);let{fs:n,path:r}=Oi(this,e),i=W(n).get(r)?.inode??_i(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{Ei(e,ti(n,r,`ro`,i),!1),a=n.readdirSync(r)}catch(t){e.error=t,e.hasError=!0}finally{Di(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 Ur;if(a.ino=i.ino,a.type=Vr(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 Ni(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=Oi(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(),Ei(n,ti(o,f[0][0],`rw`,f[0][1]),!1),Ei(n,s.ino==c.ino?null:ti(o,f[1][0],`rw`,f[1][1]),!1),i.fs.renameSync(i.path,a.path),W(o).rename(i.path,a.path),Ba(this,`rename`,e),Ba(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Di(n)}}function Pi(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)}Ei(n,ti(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{Di(n)}}function Fi(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=Oi(this,e,!1,n).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=Oi(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 Ii=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===Br.REG}isDirectory(){return this.type===Br.DIR}isBlockDevice(){return this.type===Br.BLK}isCharacterDevice(){return this.type===Br.CHR}isSymbolicLink(){return this.type===Br.LNK}isFIFO(){return this.type===Br.FIFO}isSocket(){return this.type===Br.SOCK}};function Li(){return Object.assign(Error(`Directory handle was closed`),{code:`ERR_DIR_CLOSED`})}var Ri=class{path;context;closed=!1;checkClosed(){if(this.closed)throw Li()}_entries;constructor(e,t){this.path=e,this.context=t}close(e){if(this.closed){let t=Li();if(!e)return Promise.reject(t);e(t);return}if(this.closed=!0,!e)return Promise.resolve();e(null)}closeSync(){if(this.closed)throw Li();this.closed=!0}async _read(){return this.checkClosed(),this._entries??=await Cu.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??=da.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()}},zi=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},Bi=(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 Vi(e,t){return Ni.call(this,e,t)}function Hi(e){e=j.call(this,e);try{let{fs:t,path:n}=Oi(this,e);return t.existsSync(n)}catch(e){if(e.errno==y.ENOENT)return!1;throw e}}function Ui(e,t){let n;try{n=Fi.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 Wi(e,t){let n;try{n=Fi.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 Gi(e,t=0){let n={stack:[],error:void 0,hasError:!1};try{let r=zi(n,ki(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{Bi(n)}}function Ki(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`);zi(e,ti(t,N(n),`rw`),!1),t.unlinkSync(n),W(t).remove(n)}catch(t){e.error=t,e.hasError=!0}finally{Bi(e)}}catch(t){throw b(Object.assign(t,{syscall:`unlink`,path:e}))}Ba(this,`rename`,e.toString())}function qi(e,t,n=0){return si(ki(this,e,{flag:t,mode:n}))}function Ji(e,t,n){return si(ki(this,e,{flag:t,mode:n,preserveSymlinks:!0}))}function Yi(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 Xi(e,t={}){let n={stack:[],error:void 0,hasError:!1};try{let r=Sn(t,null,`r`,420);if(fi(r.flag)&1)throw S(`EBADF`,`read`,e.toString());let i=zi(n,typeof e==`number`?ci(this,e):ki(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):Yi(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{Bi(n)}}function Zi(e,t,n={}){let r={stack:[],error:void 0,hasError:!1};try{let i=Sn(n,`utf8`,`w+`,420),a=fi(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`);zi(r,typeof e==`number`?ci(this,e):ki(this,e.toString(),{flag:a,mode:i.mode}),!1).writeSync(o,0,o.byteLength,0),Ba(this,`change`,e.toString())}catch(e){r.error=e,r.hasError=!0}finally{Bi(r)}}function Qi(e,t,n={}){let r=Sn(n,`utf8`,`a+`,420),i=fi(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`?ci(this,e):ki(this,j.call(this,e),{flag:i,mode:r.mode});o.writeSync(a,0,a.byteLength),typeof o!=`number`&&o.closeSync()}function $i(e,t){let n=ci(this,e).stat();return t?.bigint?new Un(n):new Hn(n)}function ea(e){ci(this,e).closeSync(),li(this,e)}function ta(e,t=0){if(t||=0,t<0)throw new x(y.EINVAL);ci(this,e).truncateSync(t)}function na(e){ci(this,e).syncSync()}function ra(e){ci(this,e).datasyncSync()}function ia(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=ci(this,e);c??=l.position;let u=l.writeSync(a,o,s,c);return Ba(this,`change`,l.path),u}function aa(e,t,n,r,i){let a=ci(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 oa(e,t,n){ci(this,e).chownSync(t,n)}function sa(e,t){let n=_n(t,-1);if(n<0)throw new x(y.EINVAL,`Invalid mode.`);ci(this,e).chmodSync(n)}function ca(e,t,n){ci(this,e).utimesSync(xn(t),xn(n))}function la(e){let t={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e);let{fs:n,path:r}=Oi(this,e),i=_i(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);zi(t,ti(n,N(r),`rw`),!1),_i(n,`rmdirSync`,e)(r),W(n).remove(r),Ba(this,`rename`,e.toString())}catch(e){t.error=e,t.hasError=!0}finally{Bi(t)}}function ua(e,t){t=typeof t==`object`?t:{mode:t};let n=_n(t?.mode,511);return ji.call(this,e,{...t,mode:n})}function da(e,t){t=typeof t==`object`?t:{encoding:t},e=j.call(this,e);let n=[],r=Mi.call(this,e,t??void 0);for(let i of r)t?.withFileTypes?n.push(Ii.from(i,t.encoding,e)):t?.encoding==`buffer`?n.push(H.Buffer.from(i.path)):n.push(i.path);return n}function fa(e,t){return Pi.call(this,e,t)}function pa(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=zi(r,ki(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{Bi(r)}}function ma(e,t){let n=H.Buffer.from(Ai.call(this,e)),r=typeof t==`object`?t?.encoding:t;return r==`buffer`?n:n.toString(r??`utf-8`)}function ha(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{zi(r,ki(this,e,{flag:`r+`,mode:0}),!1).chownSync(t,n)}catch(e){r.error=e,r.hasError=!0}finally{Bi(r)}}function ga(e,t,n){let r=Ji.call(this,e,`r+`);oa.call(this,r,t,n),ea.call(this,r)}function _a(e,t){let n;try{n=qi.call(this,e,`r+`)}catch(t){throw b(Object.assign(t,{syscall:`chmod`,path:j.call(this,e)}))}sa.call(this,n,t),ea.call(this,n)}function va(e,t){let n=Ji.call(this,e,`r+`);sa.call(this,n,t),ea.call(this,n)}function ya(e,t,n){let r=qi.call(this,e,`r+`);ca.call(this,r,t,n),ea.call(this,r)}function ba(e,t,n){let r=Ji.call(this,e,`r+`);ca.call(this,r,t,n),ea.call(this,r)}function xa(e,t){let n=typeof t==`string`?t:t?.encoding??`utf8`;e=j.call(this,e,!0);let{fullPath:r}=Oi(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 Sa(e,t=384){if(U&&!z(this,Ui.call(this,e),t))throw new x(y.EACCES)}function Ca(e,t){e=j.call(this,e);let n;try{n=Wi.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 da.call(this,e))Ca.call(this,M(e,n),t);la.call(this,e);break;case ft:case dt:case pt:case ht:Ki.call(this,e);break;case gt:case ut:default:throw S(`ENOSYS`,`rm`,e)}}function wa(e,t){let n=typeof t==`object`?t?.encoding:t||`utf8`,r=Tn(e);return ua.call(this,r),n==`buffer`?H.Buffer.from(r):r}function Ta(e,t){let n=Tn(e);ua.call(this,n);let r=()=>Ca(n,{recursive:!0,force:!0});return{path:n,remove:r,[Symbol.dispose]:r}}function Ea(e,t,n){if(e=j.call(this,e),t=j.call(this,t),n&&n&1&&Hi.call(this,t))throw S(`EEXIST`,`copyFile`,t);Zi.call(this,t,Xi.call(this,e,{})),Ba(this,`rename`,t.toString())}function Da(e,t,n){let r=ci(this,e),i=0;for(let e of t)i+=r.readSync(e,0,e.byteLength,n+i);return i}function Oa(e,t,n){let r=ci(this,e),i=0;for(let e of t)i+=r.writeSync(new Uint8Array(e.buffer),0,e.byteLength,n+i);return i}function ka(e,t){return e=j.call(this,e),new Ri(e,this)}function Aa(e,t,n){e=j.call(this,e),t=j.call(this,t);let r=Wi.call(this,e);if(n?.errorOnExist&&Hi.call(this,t))throw S(`EEXIST`,`cp`,t);switch(r.mode&O){case mt:if(!n?.recursive)throw S(`EISDIR`,`cp`,e);ua.call(this,t,{recursive:!0});for(let r of da.call(this,e,{withFileTypes:!0}))n.filter&&!n.filter(M(e,r.name),M(t,r.name))||Aa.call(this,M(e,r.name),M(t,r.name),n);break;case dt:if(n?.dereference)Ea.call(this,e,t);else{let r=ma.call(this,e,`utf8`);pa.call(this,n?.verbatimSymlinks?r:jn.call(this,N(e),r),t)}break;case ft:Ea.call(this,e,t);break;case pt:case ht:case gt:case ut:default:throw S(`ENOSYS`,`cp`,e)}n?.preserveTimestamps&&ya.call(this,t,r.atime,r.mtime)}function ja(e,t){e=j.call(this,e);let{fs:n}=G(e,this);return Si(n,t?.bigint)}function Ma(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=Wi.call(n,e);return a.isSymbolicLink()?i&&(o||r)&&!!Ui.call(n,e,{throwIfNoEntry:!1})?.isDirectory():i&&a.isDirectory()}let p=[];function m(e){let t=da.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}const Na=Ui;var Pa=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}},Fa=class extends Pa{options;realpath;constructor(e,t,n){let r=D(e);super(r,t),this.options=n,this.realpath=M(r.root,t),Ra(this.realpath,this)}close(){super.emit(`close`),za(this.realpath,this)}[Symbol.dispose](){this.close()}},Ia=class extends Pa{options;intervalId;previous;constructor(e,t,n){super(e,t),this.options=n,this.start()}onInterval(){try{let e=Na.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=Na.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()}};const La=new Map;function Ra(e,t){let n=j(e);La.has(n)||La.set(n,new Set),La.get(n).add(t)}function za(e,t){let n=j(e);La.has(n)&&(La.get(n).delete(t),La.get(n).size===0&&La.delete(n))}function Ba(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=La.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 Va=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},Ha=(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 Ua(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 Ua(e,jn.call(e,N(t),await Ga.call(e,t)),n,r):{...i,fullPath:t,stats:a}}catch{}let{base:i,dir:a}=Rn(t),o=a==`/`?`/`:(await Ua(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 Ua(e,jn.call(e,o,await Ga.call(e,s)),!1,r):{...c,fullPath:s,stats:l}:{...c,fullPath:s}}async function Wa(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=fi(n.flag),a={syscall:`open`,path:t},{fs:o,path:s,stats:c}=await Ua(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(Va(l,await ei(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 Ba(e,`rename`,t),new oi(e,t,s,i,W(o).ref(s,c))}}catch(e){l.error=e,l.hasError=!0}finally{Ha(l)}}if(U&&!z(e,c,mi(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 oi(e,t,s,i,W(o).ref(s,c));return i&512&&await l.truncate(0),l}async function Ga(e){e=j.call(this,e);let t={syscall:`readlink`,path:e},{fs:n,stats:r,path:i}=await Ua(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 Ka(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 Ua(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(Va(n,await ei(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 Ua(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),Ba(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{Ha(n)}};return await p(n,u),f}async function qa(e,t={}){e=j.call(this,e);let n={syscall:`scandir`,path:e},{fs:r,path:i,stats:a}=await Ua(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{Va(e,await ei(r,i,`ro`,a),!1),o=await r.readdir(i)}catch(t){e.error=t,e.hasError=!0}finally{Ha(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 Ur;if(a.ino=n.ino,a.type=Vr(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 Ja(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 Ua(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(),Va(n,await ei(o,f[0][0],`rw`,f[0][1]),!1),Va(n,s.ino==c.ino?null:await ei(o,f[1][0],`rw`,f[1][1]),!1),await i.fs.rename(i.path,a.path),W(o).rename(i.path,a.path),Ba(this,`rename`,e),Ba(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Ha(n)}}async function Ya(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)}Va(n,await ei(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{Ha(n)}}async function Xa(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=(await Ua(this,e,!1,n)).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=await Ua(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 Za=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-B5d1xHaH.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)}};const 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}}}const 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)}const oe=new TextEncoder;function v(e){return oe.encode(e)}const 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||={});const 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||={});const ge=[`emergency`,`alert`,`critical`,`error`,`warning`,`notice`,`info`,`debug`];function _e(e){return ge.indexOf(e)}const 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}}const 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)+`] `}const 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]}}let Ne=e=>[ke(e),e.message];function Pe(e){let t=Ne(e);return typeof t==`string`?[t]:Array.from(t)}let Fe=`process`in globalThis?console.error:console.log;function Ie(e){e.level>Le||Fe(...Pe(e))}let 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,s=Array.isArray(r.type)?`one of ${r.type.map(o).join(`, `)}`:o(r.type);throw T(C(`EINVAL`,`Incorrect type for "${n}": ${a} (expected ${s})`))}}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}const 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`))}const 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}let 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});const 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}const St=new Map;function Ct(e){if(St.has(e.name))throw ReferenceError(`Type is already registered: ${e.name}`);St.set(e.name,e)}const wt=Symbol(`DataView`);function Tt(e){return e[wt]??=new DataView(e),e[wt]}const 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);const 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}const 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)}}const 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))}const 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}const 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())}const 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)}const Bn=BigInt(1e6);var 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};const qn=0,Jn=3968;let 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})();const Zn=[`ino`,`data`,`size`,`mode`,`flags`,`nlink`,`uid`,`gid`,`atimeMs`,`birthtimeMs`,`mtimeMs`,`ctimeMs`,`version`,`rdev`],Qn=5;var 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||={});const $n=253951,er=229631;let 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}const cr=1;var 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||={});const 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||={});const 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)}};var xr=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=65536}=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 Sr=class{store;constructor(e){this.store=e}},Cr=class extends Sr{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)}},wr=class extends Sr{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)}},Tr=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 wr))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 wr))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}),Er=class extends xr{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 Tr(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:16895});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:16895});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:16895});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:16895});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)}}},Dr=class extends Cr{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)}},Or=class extends wr{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)}},kr=class extends Map{maxSize;label;flags=[];name=`tmpfs`;constructor(e=yt,t){super(),this.maxSize=e,this.label=t}async sync(){}transaction(){return new Dr(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}}};const Ar={name:`InMemory`,options:{maxSize:{type:`number`,required:!1},label:{type:`string`,required:!1}},create({maxSize:e,label:t}){let n=new Er(new kr(e,t));return n.checkRootSync(),n}};var jr=class extends Er{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:8630,...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(Nr),this._createDevice(Pr),this._createDevice(Fr),this._createDevice(Ir),this._createDevice(Lr),Ee(`Added default devices`)}constructor(){super(new kr(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)}};const Mr=new Uint8Array,Nr={name:`null`,singleton:!0,init(){return{major:1,minor:3}},read(){return Mr},write(){}},Pr={name:`zero`,singleton:!0,init(){return{major:1,minor:5}},read(e,t,n,r){t.fill(0,n,r)},write(){}},Fr={name:`full`,singleton:!0,init(){return{major:1,minor:7}},read(e,t,n,r){t.fill(0,n,r)},write(){throw C(`ENOSPC`)}},Ir={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(){}},Lr={name:`console`,singleton:!0,init(e,{output:t=e=>console.log(e)}={}){return{major:5,minor:1,data:{output:t}}},read(){return Mr},write(e,t,n){let r=ce(t);e.data.output(r,n)}},Rr={null:Nr,zero:Pr,full:Fr,random:Ir,console:Lr};var H=r();let U=!0;function zr(e){U=e}var Br;(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`})(Br||={});function Vr(e){return(e&61440)>>12}function Hr(e){return e<<12}var Ur=class{ino;type;path;name},Wr=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},Gr=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},Kr=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}};let qr=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[ne],n=[ne],Gr(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),Gr(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=(Wr(this,e),new Kr);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}}})();var Jr=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)}},Yr=class extends qr{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)}},Xr=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},Zr=(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}),Qr=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 Yr(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;Xr(t,await e.lock(`rw`),!1),await e.sync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Zr(t)}}}syncSync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;Xr(t,e.lockSync(`rw`),!1),e.syncSync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{Zr(t)}}}};const $r=new Map;function W(e){let t=$r.get(e.uuid);return t||(t=new Qr(e),$r.set(e.uuid,t)),t}async function ei(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 ti(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 ni=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},ri=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},ii=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},ai=(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});let oi=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;ri(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),ri(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=ni(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;ii(e,this.vnode.lockSync(`rw`),!1),this.vnode.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{ai(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);ii(t,this.vnode.lockSync(`rw`),!1),this.vnode.truncate(e),this._isSync&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{ai(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);ii(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{ai(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);ii(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{ai(i)}}chmodSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ii(t,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?-61441:O)|e,(this._isSync||e>61440)&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{ai(t)}}chownSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ii(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{ai(n)}}utimesSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ii(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{ai(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;ii(e,await this.vnode.lock(`rw`),!1),await this.vnode.sync()}catch(t){e.error=t,e.hasError=!0}finally{ai(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);ii(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{ai(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);ii(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{ai(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);ii(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{ai(i)}}async chmod(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);ii(t,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.mode=this.inode.mode&(e>61440?-61441:O)|e,(this._isSync||e>61440)&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{ai(t)}}async chown(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);ii(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{ai(n)}}async utimes(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);ii(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{ai(n)}}streamRead(e){if(this.closed)throw S(`EBADF`,`streamRead`,this.path);let{vnode:t}=this,{chunkSize:n=65536}=e,r=e.start??0,i=e.end;return new ReadableStream({async pull(e){let a={stack:[],error:void 0,hasError:!1};try{if(ii(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{ai(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{ii(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{ai(i)}},async close(){let e={stack:[],error:void 0,hasError:!1};try{ii(e,await t.lock(`rw`),!1),await t.sync()}catch(t){e.error=t,e.hasError=!0}finally{ai(e)}}})}}})();function si(e,t=e.context){let n=D(t).descriptors,r=0;for(;n.has(r);)r++;return n.set(r,e),r}function ci(e,t){yn(t);let n=D(e).descriptors.get(t);if(!n)throw C(`EBADF`);return n}function li(e,t){return D(e).descriptors.delete(t)}function ui(e,t){return si(ci(e,t).ref(),e)}const di=/[rwasx]{1,2}\+?/;function fi(e){if(typeof e==`number`)return e;if(!di.test(e))throw C(`EINVAL`,`Invalid flag string: `+e);return pi(e)}function pi(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 mi(e){let t=0;return e&1||(t|=4),(e&1||e&2)&&(t|=2),t}const hi=x;function gi(e,t){return e.path=t,e}function _i(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 vi(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}})}const yi=Ze.mounts;bi(`/`,Ar.create({label:`root`}));function bi(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),$r.has(t.uuid)||$r.set(t.uuid,new Qr(t)),Te(`Mounted ${t.name} on ${e}`),Ee(`${t.name} attributes: ${[...t.attributes].map(([e,t])=>t==null?e:e+`=`+t).join(`, `)}`)}function xi(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=()=>{$r.delete(n.uuid),Te(`Synced all changes to `+e)};try{$r.get(n.uuid)?.syncSync(),r()}catch{E(`Could not flush to ${e} synchronously.`),$r.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(!wi(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:vi(n,a),path:e,mountPoint:t,root:r}}throw Se(new x(y.EIO,`No file system for `+e))}function Si(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 Ci(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 wi(e,t){return e===`/`||e===t||(e.endsWith(`/`)||(e+=`/`),t.startsWith(e))}var Ti=t({link:()=>Pi,mkdir:()=>ji,open:()=>ki,readdir:()=>Mi,readlink:()=>Ai,rename:()=>Ni,resolve:()=>Oi,stat:()=>Fi}),Ei=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},Di=(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 Oi(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}:Oi(e,jn.call(e,N(t),Ai.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==`/`?`/`:Oi(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)?Oi(e,jn.call(e,o,Ai.call(e,s)),!1,r):{...c,fullPath:s,stats:l}}function ki(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=fi(n.flag);t=n.preserveSymlinks?t:Oi(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);Ei(s,ti(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 Ba(e,`rename`,t),new oi(e,t,o,i,W(a).ref(o,f))}catch(e){s.error=e,s.hasError=!0}finally{Di(s)}}if(U&&(!z(e,s,r)||!z(e,s,mi(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 oi(e,t,o,i,W(a).ref(o,s));return i&512&&c.truncateSync(0),c}function Ai(e){e=j.call(this,e);let{fs:t,stats:n,path:r}=Oi(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 ji(e,t={}){let n=j.call(this,e),r={syscall:`mkdir`,path:n},{fullPath:i}=Oi(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)?Oi(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);Ei(n,ti(a,i,`rw`,m),!1);let h=_i(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),Ba(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{Di(n)}};return p(n,o),f}function Mi(e,t={}){e=j.call(this,e);let{fs:n,path:r}=Oi(this,e),i=W(n).get(r)?.inode??_i(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{Ei(e,ti(n,r,`ro`,i),!1),a=n.readdirSync(r)}catch(t){e.error=t,e.hasError=!0}finally{Di(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 Ur;if(a.ino=i.ino,a.type=Vr(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 Ni(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=Oi(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(),Ei(n,ti(o,f[0][0],`rw`,f[0][1]),!1),Ei(n,s.ino==c.ino?null:ti(o,f[1][0],`rw`,f[1][1]),!1),i.fs.renameSync(i.path,a.path),W(o).rename(i.path,a.path),Ba(this,`rename`,e),Ba(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Di(n)}}function Pi(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)}Ei(n,ti(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{Di(n)}}function Fi(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=Oi(this,e,!1,n).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=Oi(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 Ii=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===Br.REG}isDirectory(){return this.type===Br.DIR}isBlockDevice(){return this.type===Br.BLK}isCharacterDevice(){return this.type===Br.CHR}isSymbolicLink(){return this.type===Br.LNK}isFIFO(){return this.type===Br.FIFO}isSocket(){return this.type===Br.SOCK}};function Li(){return Object.assign(Error(`Directory handle was closed`),{code:`ERR_DIR_CLOSED`})}var Ri=class{path;context;closed=!1;checkClosed(){if(this.closed)throw Li()}_entries;constructor(e,t){this.path=e,this.context=t}close(e){if(this.closed){let t=Li();if(!e)return Promise.reject(t);e(t);return}if(this.closed=!0,!e)return Promise.resolve();e(null)}closeSync(){if(this.closed)throw Li();this.closed=!0}async _read(){return this.checkClosed(),this._entries??=await Cu.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??=da.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()}},zi=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},Bi=(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 Vi(e,t){return Ni.call(this,e,t)}function Hi(e){e=j.call(this,e);try{let{fs:t,path:n}=Oi(this,e);return t.existsSync(n)}catch(e){if(e.errno==y.ENOENT)return!1;throw e}}function Ui(e,t){let n;try{n=Fi.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 Wi(e,t){let n;try{n=Fi.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 Gi(e,t=0){let n={stack:[],error:void 0,hasError:!1};try{let r=zi(n,ki(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{Bi(n)}}function Ki(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`);zi(e,ti(t,N(n),`rw`),!1),t.unlinkSync(n),W(t).remove(n)}catch(t){e.error=t,e.hasError=!0}finally{Bi(e)}}catch(t){throw b(Object.assign(t,{syscall:`unlink`,path:e}))}Ba(this,`rename`,e.toString())}function qi(e,t,n=0){return si(ki(this,e,{flag:t,mode:n}))}function Ji(e,t,n){return si(ki(this,e,{flag:t,mode:n,preserveSymlinks:!0}))}function Yi(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 Xi(e,t={}){let n={stack:[],error:void 0,hasError:!1};try{let r=Sn(t,null,`r`,420);if(fi(r.flag)&1)throw S(`EBADF`,`read`,e.toString());let i=zi(n,typeof e==`number`?ci(this,e):ki(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):Yi(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{Bi(n)}}function Zi(e,t,n={}){let r={stack:[],error:void 0,hasError:!1};try{let i=Sn(n,`utf8`,`w+`,420),a=fi(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`);zi(r,typeof e==`number`?ci(this,e):ki(this,e.toString(),{flag:a,mode:i.mode}),!1).writeSync(o,0,o.byteLength,0),Ba(this,`change`,e.toString())}catch(e){r.error=e,r.hasError=!0}finally{Bi(r)}}function Qi(e,t,n={}){let r=Sn(n,`utf8`,`a+`,420),i=fi(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`?ci(this,e):ki(this,j.call(this,e),{flag:i,mode:r.mode});o.writeSync(a,0,a.byteLength),typeof o!=`number`&&o.closeSync()}function $i(e,t){let n=ci(this,e).stat();return t?.bigint?new Un(n):new Hn(n)}function ea(e){ci(this,e).closeSync(),li(this,e)}function ta(e,t=0){if(t||=0,t<0)throw new x(y.EINVAL);ci(this,e).truncateSync(t)}function na(e){ci(this,e).syncSync()}function ra(e){ci(this,e).datasyncSync()}function ia(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=ci(this,e);c??=l.position;let u=l.writeSync(a,o,s,c);return Ba(this,`change`,l.path),u}function aa(e,t,n,r,i){let a=ci(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 oa(e,t,n){ci(this,e).chownSync(t,n)}function sa(e,t){let n=_n(t,-1);if(n<0)throw new x(y.EINVAL,`Invalid mode.`);ci(this,e).chmodSync(n)}function ca(e,t,n){ci(this,e).utimesSync(xn(t),xn(n))}function la(e){let t={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e);let{fs:n,path:r}=Oi(this,e),i=_i(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);zi(t,ti(n,N(r),`rw`),!1),_i(n,`rmdirSync`,e)(r),W(n).remove(r),Ba(this,`rename`,e.toString())}catch(e){t.error=e,t.hasError=!0}finally{Bi(t)}}function ua(e,t){t=typeof t==`object`?t:{mode:t};let n=_n(t?.mode,511);return ji.call(this,e,{...t,mode:n})}function da(e,t){t=typeof t==`object`?t:{encoding:t},e=j.call(this,e);let n=[],r=Mi.call(this,e,t??void 0);for(let i of r)t?.withFileTypes?n.push(Ii.from(i,t.encoding,e)):t?.encoding==`buffer`?n.push(H.Buffer.from(i.path)):n.push(i.path);return n}function fa(e,t){return Pi.call(this,e,t)}function pa(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=zi(r,ki(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{Bi(r)}}function ma(e,t){let n=H.Buffer.from(Ai.call(this,e)),r=typeof t==`object`?t?.encoding:t;return r==`buffer`?n:n.toString(r??`utf-8`)}function ha(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{zi(r,ki(this,e,{flag:`r+`,mode:0}),!1).chownSync(t,n)}catch(e){r.error=e,r.hasError=!0}finally{Bi(r)}}function ga(e,t,n){let r=Ji.call(this,e,`r+`);oa.call(this,r,t,n),ea.call(this,r)}function _a(e,t){let n;try{n=qi.call(this,e,`r+`)}catch(t){throw b(Object.assign(t,{syscall:`chmod`,path:j.call(this,e)}))}sa.call(this,n,t),ea.call(this,n)}function va(e,t){let n=Ji.call(this,e,`r+`);sa.call(this,n,t),ea.call(this,n)}function ya(e,t,n){let r=qi.call(this,e,`r+`);ca.call(this,r,t,n),ea.call(this,r)}function ba(e,t,n){let r=Ji.call(this,e,`r+`);ca.call(this,r,t,n),ea.call(this,r)}function xa(e,t){let n=typeof t==`string`?t:t?.encoding??`utf8`;e=j.call(this,e,!0);let{fullPath:r}=Oi(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 Sa(e,t=384){if(U&&!z(this,Ui.call(this,e),t))throw new x(y.EACCES)}function Ca(e,t){e=j.call(this,e);let n;try{n=Wi.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 da.call(this,e))Ca.call(this,M(e,n),t);la.call(this,e);break;case ft:case dt:case pt:case ht:Ki.call(this,e);break;case gt:case ut:default:throw S(`ENOSYS`,`rm`,e)}}function wa(e,t){let n=typeof t==`object`?t?.encoding:t||`utf8`,r=Tn(e);return ua.call(this,r),n==`buffer`?H.Buffer.from(r):r}function Ta(e,t){let n=Tn(e);ua.call(this,n);let r=()=>Ca(n,{recursive:!0,force:!0});return{path:n,remove:r,[Symbol.dispose]:r}}function Ea(e,t,n){if(e=j.call(this,e),t=j.call(this,t),n&&n&1&&Hi.call(this,t))throw S(`EEXIST`,`copyFile`,t);Zi.call(this,t,Xi.call(this,e,{})),Ba(this,`rename`,t.toString())}function Da(e,t,n){let r=ci(this,e),i=0;for(let e of t)i+=r.readSync(e,0,e.byteLength,n+i);return i}function Oa(e,t,n){let r=ci(this,e),i=0;for(let e of t)i+=r.writeSync(new Uint8Array(e.buffer),0,e.byteLength,n+i);return i}function ka(e,t){return e=j.call(this,e),new Ri(e,this)}function Aa(e,t,n){e=j.call(this,e),t=j.call(this,t);let r=Wi.call(this,e);if(n?.errorOnExist&&Hi.call(this,t))throw S(`EEXIST`,`cp`,t);switch(r.mode&O){case mt:if(!n?.recursive)throw S(`EISDIR`,`cp`,e);ua.call(this,t,{recursive:!0});for(let r of da.call(this,e,{withFileTypes:!0}))n.filter&&!n.filter(M(e,r.name),M(t,r.name))||Aa.call(this,M(e,r.name),M(t,r.name),n);break;case dt:if(n?.dereference)Ea.call(this,e,t);else{let r=ma.call(this,e,`utf8`);pa.call(this,n?.verbatimSymlinks?r:jn.call(this,N(e),r),t)}break;case ft:Ea.call(this,e,t);break;case pt:case ht:case gt:case ut:default:throw S(`ENOSYS`,`cp`,e)}n?.preserveTimestamps&&ya.call(this,t,r.atime,r.mtime)}function ja(e,t){e=j.call(this,e);let{fs:n}=G(e,this);return Si(n,t?.bigint)}function Ma(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=Wi.call(n,e);return a.isSymbolicLink()?i&&(o||r)&&!!Ui.call(n,e,{throwIfNoEntry:!1})?.isDirectory():i&&a.isDirectory()}let p=[];function m(e){let t=da.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}const Na=Ui;var Pa=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}},Fa=class extends Pa{options;realpath;constructor(e,t,n){let r=D(e);super(r,t),this.options=n,this.realpath=M(r.root,t),Ra(this.realpath,this)}close(){super.emit(`close`),za(this.realpath,this)}[Symbol.dispose](){this.close()}},Ia=class extends Pa{options;intervalId;previous;constructor(e,t,n){super(e,t),this.options=n,this.start()}onInterval(){try{let e=Na.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=Na.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()}};const La=new Map;function Ra(e,t){let n=j(e);La.has(n)||La.set(n,new Set),La.get(n).add(t)}function za(e,t){let n=j(e);La.has(n)&&(La.get(n).delete(t),La.get(n).size===0&&La.delete(n))}function Ba(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=La.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 Va=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},Ha=(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 Ua(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 Ua(e,jn.call(e,N(t),await Ga.call(e,t)),n,r):{...i,fullPath:t,stats:a}}catch{}let{base:i,dir:a}=Rn(t),o=a==`/`?`/`:(await Ua(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 Ua(e,jn.call(e,o,await Ga.call(e,s)),!1,r):{...c,fullPath:s,stats:l}:{...c,fullPath:s}}async function Wa(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=fi(n.flag),a={syscall:`open`,path:t},{fs:o,path:s,stats:c}=await Ua(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(Va(l,await ei(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 Ba(e,`rename`,t),new oi(e,t,s,i,W(o).ref(s,c))}}catch(e){l.error=e,l.hasError=!0}finally{Ha(l)}}if(U&&!z(e,c,mi(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 oi(e,t,s,i,W(o).ref(s,c));return i&512&&await l.truncate(0),l}async function Ga(e){e=j.call(this,e);let t={syscall:`readlink`,path:e},{fs:n,stats:r,path:i}=await Ua(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 Ka(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 Ua(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(Va(n,await ei(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 Ua(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),Ba(this,`rename`,e),h}catch(e){n.error=e,n.hasError=!0}finally{Ha(n)}};return await p(n,u),f}async function qa(e,t={}){e=j.call(this,e);let n={syscall:`scandir`,path:e},{fs:r,path:i,stats:a}=await Ua(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{Va(e,await ei(r,i,`ro`,a),!1),o=await r.readdir(i)}catch(t){e.error=t,e.hasError=!0}finally{Ha(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 Ur;if(a.ino=n.ino,a.type=Vr(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 Ja(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 Ua(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(),Va(n,await ei(o,f[0][0],`rw`,f[0][1]),!1),Va(n,s.ino==c.ino?null:await ei(o,f[1][0],`rw`,f[1][1]),!1),await i.fs.rename(i.path,a.path),W(o).rename(i.path,a.path),Ba(this,`rename`,e),Ba(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Ha(n)}}async function Ya(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)}Va(n,await ei(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{Ha(n)}}async function Xa(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=(await Ua(this,e,!1,n)).stats;else{let{base:t,dir:i}=Rn(e),{fs:a,path:o}=await Ua(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 Za=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;eo(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;eo(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);$a(this.output,1),this.line=e;break}case`^u`:{if(!this.output||!this._cursor)return;let e=this.line.slice(this._cursor);$a(this.output,0),eo(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,eo(this.output,-t.length,0),eo(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,9 +6,9 @@ import{i as e,n as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{t as r}f
6
6
  `;var cd=class extends u.default{entries=[];toString(){return sd+this.entries.map(e=>`${e.op.padEnd(od)} ${e.path}`).join(`
7
7
  `)}fromString(e){if(!e.startsWith(sd))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(!ad(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}},ld=class extends xr{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 cd){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)}};const ud={name:`CopyOnWrite`,options:{writable:{type:`object`,required:!0},readable:{type:`object`,required:!0},journal:{type:`object`,required:!1}},async create(e){return new ld(await qu(e.readable),await qu(e.writable),e.journal)}},dd=new Map;async function fd(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 pd(e,t,n={}){let r=new Request(e,n);if(typeof t.start!=`number`||typeof t.end!=`number`){let{data:r}=await fd(e,n);return new s(e,r.byteLength,t,dd).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=dd.get(e)??new s(e,i,t,dd);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 fd(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,dd).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 md(e,t){let n=dd.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 hd(e,t,n,r={}){dd.has(e)||new s(e,n.size??t.byteLength,n,dd);let i=dd.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 fd(new Request(e,{...r,method:o,headers:n,body:t.buffer instanceof ArrayBuffer?t:Uint8Array.from(t)}),{},!0)}i.add(t,a)}async function gd(e,t={},n={}){t.cacheOnly||await fd(new Request(e,n),{method:`DELETE`},!0),dd.delete(e)}var _d=class extends xr{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 vd(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 yd=class extends _d{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=dd.get(r)??new s(r,n,{},dd);if(i.size=t.size,t.size<n)return;let a=new Uint8Array(t.size-n);if(i.add(a,n),this.remoteWrite)return hd(r,a,{offset:n,warn:E},this.requestInit).catch(vd)}async _create(e,t){await hd(this.baseUrl+e,new Uint8Array(t.size),{warn:E,cacheOnly:!this.remoteWrite,method:`PUT`},this.requestInit).catch(vd)}_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 gd(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 pd(this.baseUrl+e,{start:n,end:r,size:i.size,warn:E},this.requestInit).catch(vd).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}=md(this.baseUrl+e,{start:n,end:r,size:i.size,warn:E});if(!a)throw C(`ENODATA`);if(o.length)throw this._async(pd(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 hd(this.baseUrl+e,t,{offset:n,warn:E,cacheOnly:!this.remoteWrite},this.requestInit).catch(vd)}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(hd(this.baseUrl+e,t,{offset:n,warn:E,cacheOnly:!this.remoteWrite},this.requestInit).catch(vd))}};const bd={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 pd(e.index,{warn:E},e.requestInit).catch(vd);r.fromJSON(JSON.parse(ce(t)))}let i=new yd(r,n,e.requestInit,e.remoteWrite);if(e.disableAsyncCache)return i;for(let[t,i]of r)i.mode&32768&&await pd(n+t,{warn:E},e.requestInit).catch(vd);return i}};var xd=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},Sd=(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}),Cd=class extends xr{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=xd(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=Sd(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 xd(t,await this.nodeFS.promises.open(this.path(e),`wx`),!0).close()}catch(e){t.error=e,t.hasError=!0}finally{let e=Sd(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 xd(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=Sd(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 xd(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=Sd(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)}}};const wd={name:`Passthrough`,options:{fs:{type:`object`,required:!0},prefix:{type:`string`,required:!0}},create({fs:e,prefix:t}){return new Cd(e,t)}};var Td=t({attach:()=>Rd,catchMessages:()=>Bd,decodeMessage:()=>Md,detach:()=>zd,encodeMessage:()=>jd,from:()=>Ad,fromNode:()=>Od,fromWeb:()=>Dd,fromWebSocket:()=>kd,handleRequest:()=>Vd,handleResponse:()=>Ld,isMessage:()=>Nd,isPort:()=>Ed,request:()=>Id});function Ed(e){return typeof e==`object`&&!!e&&`channel`in e&&`send`in e&&`addHandler`in e&&`removeHandler`in e}function Dd(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 Od(e){return{channel:e,send:e.postMessage.bind(e),addHandler:e.on.bind(e,`message`),removeHandler:e.off.bind(e,`message`)}}function kd(e){return{channel:e,send(t){e.send(jd(t))},addHandler(t){e.addEventListener(`message`,e=>{t(Md(e.data))})},removeHandler(t){e.removeEventListener(`message`,e=>{t(Md(e.data))})}}}function Ad(e){if(Ed(e))return e;if(e instanceof WebSocket)return kd(e);if(`on`in e)return Od(e);if(`addEventListener`in e)return Dd(e);throw T(C(`EINVAL`,`Invalid port type`))}function jd(e){return`Z1${JSON.stringify(e,(e,t)=>{if(e!=`_zenfs`)return t instanceof Uint8Array?`$`+t.toBase64():t})}`}function Md(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!=1)throw T(C(`EPROTONOSUPPORT`,`Version mismatch in RPC message encoding (got ${t}, expected 1)`));return{...JSON.parse(e,(e,t)=>typeof t==`string`&&t.startsWith(`$`)?Uint8Array.fromBase64(t.slice(1)):t),_zenfs:!0}}function Nd(e){return typeof e==`object`&&!!e&&`_zenfs`in e&&!!e._zenfs}function Pd(e){let t=Fd.get(e);t&&(t.timeout&&(clearTimeout(t.timeout),typeof t.timeout==`object`&&t.timeout.unref()),Fd.delete(e))}const Fd=new Map;function Id(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,Pd(c),o(e)},n)};return Fd.set(c,l),t.send({...e,_zenfs:!0,id:c,stack:i}),s}function Ld(e){if(!Nd(e))return;if(!Fd.has(e.id)){let t=T(C(`EIO`,`Invalid RPC id: `+e.id));throw t.stack+=e.stack,t}let{resolve:t,reject:n}=Fd.get(e.id);if(e.error){let t=x.fromJSON({code:`EIO`,errno:y.EIO,...e.error});t.stack+=e.stack,Pd(e.id),n(t);return}Pd(e.id),t([`stat`,`createFile`,`mkdir`].includes(e.method)?new L(e.value):e.value)}function Rd(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 zd(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 Bd(e){let t=[],n=t.push.bind(t);return Rd(e,n),async function(r){zd(e,n);for(let n of t)await Vd(e,r,`data`in n?n.data:n)}}async function Vd(e,t,n){if(!Nd(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})}const Hd=[`rename`,`stat`,`touch`,`createFile`,`unlink`,`rmdir`,`mkdir`,`readdir`,`exists`,`link`,`sync`,`read`,`write`,`ioctl`];function Ud(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 Er&&this instanceof Er){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=Hd.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,Pd(c),o(e)},n)};return Fd.set(c,l),t.send({...e,_zenfs:!0,id:c,stack:i}),s}function Ld(e){if(!Nd(e))return;if(!Fd.has(e.id)){let t=T(C(`EIO`,`Invalid RPC id: `+e.id));throw t.stack+=e.stack,t}let{resolve:t,reject:n}=Fd.get(e.id);if(e.error){let t=x.fromJSON({code:`EIO`,errno:y.EIO,...e.error});t.stack+=e.stack,Pd(e.id),n(t);return}Pd(e.id),t([`stat`,`createFile`,`mkdir`].includes(e.method)?new L(e.value):e.value)}function Rd(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 zd(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 Bd(e){let t=[],n=t.push.bind(t);return Rd(e,n),async function(r){zd(e,n);for(let n of t)await Vd(e,r,`data`in n?n.data:n)}}async function Vd(e,t,n){if(!Nd(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})}const Hd=[`rename`,`stat`,`touch`,`createFile`,`unlink`,`rmdir`,`mkdir`,`readdir`,`exists`,`link`,`sync`,`read`,`write`,`ioctl`];function Ud(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 Er&&this instanceof Er){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=Hd.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 Wd=class extends Ud(xr){channel;timeout;port;_sync=Ar.create({label:`tmpfs:port`});constructor(e,t=250){super(1886351988,`portfs`),this.channel=e,this.timeout=t,this.port=Ad(e),Rd(this.port,Ld)}rpc(e,...t){return Id({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 Gd(e,t){let n=Ad(e);Rd(n,e=>Vd(n,t,e))}function Kd(e,t){let n=Ad(e);zd(n,e=>Vd(n,t,e))}const qd={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 Wd(e.port,e.timeout)}};async function Jd(e,t,n=0){let r=Ad(e),i=Bd(r),a=await qu(t,n);return Gd(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},Yd=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},Xd=(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});const Zd=e=>`0x`+e.toString(16).padStart(8,`0`),{format:Qd}=new Intl.NumberFormat(`en-US`,{notation:`compact`,maximumFractionDigits:2,unit:`byte`,unitDisplay:`narrow`});let $d=(()=>{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 @ ${Zd(this.byteOffset)}>`}constructor(){super(...arguments),X(this,re)}static{X(c,s)}};return c})(),ef=(()=>{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($d,255))],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 @ ${Zd(this.byteOffset)}>`;let t=[`---- Metadata block at ${Zd(this.byteOffset)} ----`,`Checksum: ${Zd(this.checksum)}`,`Last updated: ${new Date(Number(this.timestamp)).toLocaleString()}`,`Previous block: ${Zd(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 Wd=class extends Ud(xr){channel;timeout;port;_sync=Ar.create({label:`tmpfs:port`});constructor(e,t=250){super(1886351988,`portfs`),this.channel=e,this.timeout=t,this.port=Ad(e),Rd(this.port,Ld)}rpc(e,...t){return Id({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 Gd(e,t){let n=Ad(e);Rd(n,e=>Vd(n,t,e))}function Kd(e,t){let n=Ad(e);zd(n,e=>Vd(n,t,e))}const qd={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 Wd(e.port,e.timeout)}};async function Jd(e,t,n=0){let r=Ad(e),i=Bd(r),a=await qu(t,n);return Gd(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},Yd=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},Xd=(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});const Zd=e=>`0x`+e.toString(16).padStart(8,`0`),{format:Qd}=new Intl.NumberFormat(`en-US`,{notation:`compact`,maximumFractionDigits:2,unit:`byte`,unitDisplay:`narrow`});let $d=(()=>{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 @ ${Zd(this.byteOffset)}>`}constructor(){super(...arguments),X(this,re)}static{X(c,s)}};return c})(),ef=(()=>{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($d,255))],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 @ ${Zd(this.byteOffset)}>`;let t=[`---- Metadata block at ${Zd(this.byteOffset)} ----`,`Checksum: ${Zd(this.checksum)}`,`Last updated: ${new Date(Number(this.timestamp)).toLocaleString()}`,`Previous block: ${Zd(this.previous_offset)}`,`Entries:`].join(`
12
12
  `);for(let e of this.items)e.offset&&(t+=`\n\t${Zd(e.id)}: ${Qd(e.size).padStart(5)} at ${Zd(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>5)throw Ce(C(`EBUSY`,`sbfs: exceeded max attempts waiting for metadata block at ${Zd(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 ${Zd(this.byteOffset)} to be unlocked (${e}/5)`),this.waitUnlocked(e);case`timed-out`:throw Ce(C(`EBUSY`,`sbfs: timed out waiting for metadata block at ${Zd(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(ef,{lockIndex:nn(ef,`locked`)/Int32Array.BYTES_PER_ELEMENT});const tf=1651715706;let nf=(()=>{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!=tf){E(`sbfs: Invalid magic value, assuming this is a fresh super block`);let e=new ef(this.buffer,k(Ne));Object.assign(this,{metadata:e,metadata_offset:e.byteOffset,used_bytes:BigInt(k(Ne)+k(ef)),total_bytes:BigInt(this.buffer.byteLength),magic:tf,version:1,inode_format:5,metadata_block_size:k(ef),uuid:fe(crypto.randomUUID())}),of(this),of(e);return}if(this.checksum!==af(this))throw Ce(C(`EIO`,`sbfs: checksum mismatch for super block`));if(this.metadata=new ef(this.buffer,this.metadata_offset),this.metadata.checksum!==af(this.metadata))throw Ce(C(`EIO`,`sbfs: checksum mismatch for metadata block (saved ${Zd(this.metadata.checksum)}, computed ${Zd(af(this.metadata))})`));if(this.inode_format!=5)throw Ce(C(`EIO`,`sbfs: inode format mismatch`));if(this.metadata_block_size!=k(ef))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(ef)),n=Atomics.load(this,2),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,2,n,a);if(o===n)break;n=o}let i=new ef(this.buffer,Number(r)),a=new Uint32Array(this.buffer,this.byteOffset,k(Ne)/Uint32Array.BYTES_PER_ELEMENT),o=Atomics.load(a,rf);for(;;){i.previous_offset=o,of(i);let e=Atomics.compareExchange(a,rf,o,i.byteOffset);if(e===o)break;o=e}return this.metadata=i,of(this),Ee(`sbfs: rotated metadata block at ${Zd(i.previous_offset)} with new block at ${Zd(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(ef)&&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})();const rf=nn(nf,`metadata_offset`)/Uint32Array.BYTES_PER_ELEMENT;function af(e){let t=k(e)-4;return e instanceof ef&&(t-=Int32Array.BYTES_PER_ELEMENT),l(new Uint8Array(e.buffer,e.byteOffset+4,t))}function of(e){e instanceof ef&&(e.timestamp=BigInt(Date.now())),e.checksum=af(e)}var sf=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(nf)+k(ef))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 nf(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(Yd(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,of(n);return}r.offset=Number(Atomics.add(this.superblock,2,BigInt(t.length))),r.size=t.length,this._u8.set(t,r.offset),of(n),of(this.superblock);return}catch(e){i.error=e,i.hasError=!0}finally{Xd(i)}}}let r=Array.from(this.superblock.metadata.items).find(e=>!e.offset);r||=(this.superblock.rotateMetadata(),this.superblock.metadata.items[0]),Yd(n,this.superblock.metadata.lock(),!1);let i=Number(Atomics.add(this.superblock,2,BigInt(t.length)));r.id=e,r.offset=i,r.size=t.length,this._u8.set(t,i),of(this.superblock.metadata),of(this.superblock)}catch(e){n.error=e,n.hasError=!0}finally{Xd(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,of(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 Dr(this)}};const cf={name:`SingleBuffer`,options:{buffer:{type:`object`,required:!0}},create(e){let t=new Er(ArrayBuffer.isView(e.buffer)?new sf(e.buffer.buffer,e.buffer.byteOffset,e.buffer.byteLength):new sf(e.buffer));return t.checkRootSync(),t}},Z=()=>{};function lf(e,t,n=Z){du.call(this,e,t).then(()=>n(null)).catch(n)}function uf(e,t=Z){fu.call(this,e).then(t).catch(()=>t(!1))}function df(e,t,n=Z){n=typeof t==`function`?t:n,pu.call(this,e,typeof t==`function`?{}:t).then(e=>n(null,e)).catch(n)}function ff(e,t,n=Z){n=typeof t==`function`?t:n,mu.call(this,e,typeof t==`function`?{}:t).then(e=>n(null,e)).catch(n)}function pf(e,t=0,n=Z){n=typeof t==`function`?t:n;let r=typeof t==`number`?t:0;hu.call(this,e,r).then(()=>n(null)).catch(n)}function mf(e,t=Z){gu.call(this,e).then(()=>t(null)).catch(t)}function hf(e,t,n,r=Z){let i=_n(n,420);r=typeof n==`function`?n:r,_u.call(this,e,t,i).then(e=>r(null,e.fd)).catch(r)}function gf(e,t,n=Z){n=typeof t==`function`?t:n,vu.call(this,e,typeof t==`function`?null:t).then(e=>n(null,e)).catch(n)}function _f(e,t,n,r=Z){r=typeof n==`function`?n:r,yu.call(this,e,t,typeof n==`function`?null:n).then(()=>r(null)).catch(r)}function vf(e,t,n,r=Z){let i=typeof n==`function`?void 0:n;r=typeof n==`function`?n:r,bu.call(this,e,t,i).then(()=>r(null)).catch(r)}function yf(e,t,n=Z){n=typeof t==`function`?t:n,new uu(this,e).stat().then(e=>n(null,typeof t==`object`&&t?.bigint?new Un(e):e)).catch(n)}function bf(e,t=Z){new uu(this,e).close().then(()=>t(null)).catch(t)}function xf(e,t,n=Z){let r=typeof t==`number`?t:0;n=typeof t==`function`?t:n;let i=new uu(this,e);if(r<0)throw C(`EINVAL`);i.truncate(r).then(()=>n(null)).catch(n)}function Sf(e,t=Z){new uu(this,e).sync().then(()=>t(null)).catch(t)}function Cf(e,t=Z){new uu(this,e).datasync().then(()=>t(null)).catch(t)}function wf(e,t,n,r,i,a=Z){let o,s,c,l,u,d=new uu(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 Tf(e,t,n,r,i,a=Z){new uu(this,e).read(t,n,r,i).then(({bytesRead:e,buffer:t})=>a(null,e,t)).catch(a)}function Ef(e,t,n,r=Z){new uu(this,e).chown(t,n).then(()=>r(null)).catch(r)}function Df(e,t,n){new uu(this,e).chmod(t).then(()=>n(null)).catch(n)}function Of(e,t,n,r=Z){new uu(this,e).utimes(t,n).then(()=>r(null)).catch(r)}function kf(e,t=Z){xu.call(this,e).then(()=>t(null)).catch(t)}function Af(e,t,n=Z){Su.call(this,e,t).then(()=>n(null)).catch(n)}function jf(e,t,n=Z){n=typeof t==`function`?t:n;let r=typeof t==`function`?{}:t;Cu.call(this,e,r).then(e=>n(null,e)).catch(n)}function Mf(e,t,n=Z){wu.call(this,e,t).then(()=>n(null)).catch(n)}function Nf(e,t,n,r=Z){let i=typeof n==`string`?n:`file`;r=typeof n==`function`?n:r,Tu.call(this,e,t,i).then(()=>r(null)).catch(r)}function Pf(e,t,n=Z){n=typeof t==`function`?t:n,Eu.call(this,e).then(e=>n(null,e)).catch(n)}function Ff(e,t,n,r=Z){Du.call(this,e,t,n).then(()=>r(null)).catch(r)}function If(e,t,n,r=Z){Ou.call(this,e,t,n).then(()=>r(null)).catch(r)}function Lf(e,t,n=Z){ku.call(this,e,t).then(()=>n(null)).catch(n)}function Rf(e,t,n=Z){Au.call(this,e,t).then(()=>n(null)).catch(n)}function zf(e,t,n,r=Z){ju.call(this,e,t,n).then(()=>r(null)).catch(r)}function Bf(e,t,n,r=Z){Mu.call(this,e,t,n).then(()=>r(null)).catch(r)}function Vf(e,t,n=Z){n=typeof t==`function`?t:n,Nu.call(this,e,typeof t==`function`?null:t).then(e=>n(null,e)).catch(n)}function Hf(e,t,n=Z){let r=typeof t==`number`?t:4;n=typeof t==`function`?t:n,Fu.call(this,e,r).then(()=>n(null)).catch(n)}const Uf=new Map;function Wf(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(Uf.has(r)){let e=Uf.get(r);e&&e.listeners.add(n);return}let a=new Ia(this,r,i);a.on(`change`,(e,t)=>{let n=Uf.get(r);if(n)for(let r of n.listeners)r(e,t)}),Uf.set(r,{watcher:a,listeners:new Set([n])})}function Gf(e,t=Z){let n=j.call(this,e),r=Uf.get(n);r&&(t&&t!==Z?r.listeners.delete(t):r.listeners.clear(),r.listeners.size===0&&(r.watcher.stop(),Uf.delete(n)))}function Kf(e,t,n){let r=new Fa(this,j.call(this,e),typeof t==`object`?t:{});return n=typeof t==`function`?t:n,r.on(`change`,n||Z),r}function qf(e,t){t=typeof t==`object`?t:{encoding:t};let n=_u.call(this,e,`r`,t?.mode);return new ru({...t,autoClose:!0,signal:t?.signal??void 0},n)}function Jf(e,t){t=typeof t==`object`?t:{encoding:t};let n=_u.call(this,e,`w`,t?.mode);return new iu(t,n)}function Yf(e,t,n=Z){n=typeof t==`function`?t:n,Iu.call(this,e,typeof t==`function`?void 0:t).then(()=>n(null)).catch(n)}function Xf(e,t,n=Z){n=typeof t==`function`?t:n,Lu.call(this,e,typeof t==`function`?null:t).then(e=>n(null,e)).catch(n)}function Zf(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 Qf(e,t,n,r=Z){r=typeof n==`function`?n:r,new uu(this,e).readv(t,typeof n==`function`?void 0:n).then(({buffers:e,bytesRead:t})=>r(null,t,e)).catch(r)}function $f(e,t,n,r=Z){r=typeof n==`function`?n:r,new uu(this,e).writev(t,typeof n==`function`?void 0:n).then(({buffers:e,bytesWritten:t})=>r(null,t,e)).catch(r)}function ep(e,t,n=Z){n=typeof t==`function`?t:n,Bu.call(this,e,typeof t==`function`?void 0:t).then(e=>n(null,e)).catch(n)}function tp(e,t,n,r=Z){r=typeof n==`function`?n:r,Vu.call(this,e,t,typeof n==`function`?void 0:n).then(()=>r(null)).catch(r)}function np(e,t,n=Z){n=typeof t==`function`?t:n,Hu.call(this,e,typeof t==`function`?void 0:t).then(e=>n(null,e)).catch(n)}async function rp(e,t){let n=await _u.call(this,e.toString(),`r`),r=await n.readFile();return await n.close(),new Blob([r],t)}function ip(e,t,n=Z){n=typeof t==`function`?t:n;let r=Uu.call(this,e,typeof t==`function`?void 0:t);Array.fromAsync(r).then(e=>n(null,e??[])).catch(e=>n(e))}function ap(e,t){return Object.assign(Error(t),{code:e})}function op(e,t,n){return ap(`ERR_INVALID_ARG_TYPE`,`The "${e}" argument must be of type ${t}. Received ${typeof n}`)}function sp(e){return ap(`ERR_INVALID_STATE`,`Invalid state: `+e)}function cp(e,t){if(typeof e!=`number`)throw op(t,`number`,e);if(!Number.isInteger(e)||e<0||e>4294967295)throw ap(`ERR_OUT_OF_RANGE`,`The value of "${t}" is out of range. It must be an integer >= 0 and <= 4294967295. Received ${e}`)}const lp=16384,up=H.Buffer.alloc(0),dp={open:hf,openSync:qi,close:bf,write:wf,writeSync:ia,fsync:Sf,fsyncSync:na,mkdir:Af,mkdirSync:ua};function fp(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 pp(e,t){return e.length?e.length==1?e[0]:H.Buffer.concat(e,t):up}const mp=Symbol(`Utf8StreamFS`);var hp=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=lp;#h=!1;#g=0;#_;#v=!1;#y=!1;#b=!0;#x;#S=()=>!0;#C=!1;#w;#T=``;#E;static[mp]=dp;static _withContext(e){Xe(e);class t extends hp{static[mp]=ee(dp,e)}return t}constructor(e={}){if(typeof e!=`object`||!e)throw op(`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 op(`options.fs`,`object`,p);this.#E={...this.constructor[mp],...p};let h=this.#E;for(let e of[`write`,`writeSync`,`fsync`,`fsyncSync`,`close`,`open`,`mkdir`,`mkdirSync`])if(typeof h[e]!=`function`)throw op(`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||lp,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,cp(this.#l,`options.hwm`),cp(this.#f,`options.minLength`),cp(this.#p,`options.maxLength`),cp(this.#m,`options.maxWrite`),cp(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 op(`options.${e}`,`boolean`,t);if(typeof this.#S!=`function`)throw op(`options.retryEAGAIN`,`function`,this.#S);if(d!=`buffer`&&d!=`utf8`)throw ap(`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`?up:``,typeof m==`number`)this.#t=m,queueMicrotask(()=>this.emit(`ready`));else if(typeof m==`string`)this.#N(m);else throw op(`fd`,`number or string`,m);if(this.#f>=this.#m)throw ap(`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 sp(`Utf8Stream is destroyed`);if(this.#w==`buffer`){if(!H.Buffer.isBuffer(e))throw op(`data`,`Buffer`,e)}else if(typeof e!=`string`)throw op(`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 op(`cb`,`function`,e);if(this.#d){let t=sp(`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 sp(`Utf8Stream is destroyed`);if(this.#t<0)throw sp(`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=up);let t=up;for(;e.length||t.length;){t.length<=0&&(t=pp(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=fp(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 sp(`Utf8Stream is destroyed`);if(this.#h){this.once(`ready`,()=>this.reopen(e));return}if(this.#a)return;if(!this.#u)throw ap(`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 sp(`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(),100):(this.#i=!1,this.emit(`error`,e));return}this.emit(`write`,t);let n=fp(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=fp(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:pp(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`)}},gp=t({BigIntStatsFs:()=>Kn,Dir:()=>Ri,Dirent:()=>Ii,ReadStream:()=>ru,Stats:()=>Hn,StatsFs:()=>Gn,Utf8Stream:()=>hp,WriteStream:()=>iu,access:()=>Hf,accessSync:()=>Sa,appendFile:()=>vf,appendFileSync:()=>Qi,chmod:()=>Lf,chmodSync:()=>_a,chown:()=>Ff,chownSync:()=>ha,close:()=>bf,closeSync:()=>ea,constants:()=>et,copyFile:()=>Zf,copyFileSync:()=>Ea,cp:()=>tp,cpSync:()=>Aa,createReadStream:()=>qf,createWriteStream:()=>Jf,exists:()=>uf,existsSync:()=>Hi,fchmod:()=>Df,fchmodSync:()=>sa,fchown:()=>Ef,fchownSync:()=>oa,fdatasync:()=>Cf,fdatasyncSync:()=>ra,fstat:()=>yf,fstatSync:()=>$i,fsync:()=>Sf,fsyncSync:()=>na,ftruncate:()=>xf,ftruncateSync:()=>ta,futimes:()=>Of,futimesSync:()=>ca,glob:()=>ip,globSync:()=>Ma,lchmod:()=>Rf,lchmodSync:()=>va,lchown:()=>If,lchownSync:()=>ga,link:()=>Mf,linkSync:()=>fa,lopenSync:()=>Ji,lstat:()=>ff,lstatSync:()=>Wi,lutimes:()=>Bf,lutimesSync:()=>ba,mkdir:()=>Af,mkdirSync:()=>ua,mkdtemp:()=>Xf,mkdtempDisposableSync:()=>Ta,mkdtempSync:()=>wa,open:()=>hf,openAsBlob:()=>rp,openSync:()=>qi,opendir:()=>ep,opendirSync:()=>ka,promises:()=>au,read:()=>Tf,readFile:()=>gf,readFileSync:()=>Xi,readSync:()=>aa,readdir:()=>jf,readdirSync:()=>da,readlink:()=>Pf,readlinkSync:()=>ma,readv:()=>Qf,readvSync:()=>Da,realpath:()=>Vf,realpathSync:()=>xa,rename:()=>lf,renameSync:()=>Vi,rm:()=>Yf,rmSync:()=>Ca,rmdir:()=>kf,rmdirSync:()=>la,stat:()=>df,statSync:()=>Ui,statfs:()=>np,statfsSync:()=>ja,symlink:()=>Nf,symlinkSync:()=>pa,truncate:()=>pf,truncateSync:()=>Gi,unlink:()=>mf,unlinkSync:()=>Ki,unwatchFile:()=>Gf,utimes:()=>zf,utimesSync:()=>ya,watch:()=>Kf,watchFile:()=>Wf,write:()=>wf,writeFile:()=>_f,writeFileSync:()=>Zi,writeSync:()=>ia,writev:()=>$f,writevSync:()=>Oa}),_p=t({allowedRestrictedNames:()=>vp,get:()=>bp,getSync:()=>xp,list:()=>Ep,listSync:()=>Dp,remove:()=>wp,removeSync:()=>Tp,set:()=>Sp,setSync:()=>Cp});const vp=new Set;function yp(e,t,n,r){if(!t.startsWith(`user.`)&&!vp.has(t))throw S(`ENOTSUP`,r,n)}async function bp(e,t,n={}){e=j.call(this,e);let{fs:r,path:i}=G(e,this);yp(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 xp(e,t,n={}){e=j.call(this,e),yp(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 Sp(e,t,n,r={}){e=j.call(this,e);let{fs:i,path:a}=G(e,this);yp(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 Cp(e,t,n,r={}){e=j.call(this,e);let{fs:i,path:a}=G(e,this);yp(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 wp(e,t){e=j.call(this,e);let{fs:n,path:r}=G(e,this);yp(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 Tp(e,t){e=j.call(this,e);let{fs:n,path:r}=G(e,this);yp(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 Ep(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 Dp(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()]:[]}const Op=new Map;function kp(e={}){let t=D(this),n=t.parent||Ze;if(!Ui.call(n,n.root).isDirectory())throw S(`ENOTDIR`,{syscall:`chroot`,path:n.root});let r=$e(t,e),i=Object.assign(r,{fs:{...ee(gp,r),Utf8Stream:hp._withContext(r),promises:ee(au,r),xattr:ee(_p,r)},path:ee(Dn,r),bind:e=>{let t=kp.call(r,e);return r.children.push(t),t}});return Op.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}),Ap=class extends qr{_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 jp(e){class t extends Ap{constructor(...t){super(),this._fs=new e(...t)}}return t}function Mp(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 Np(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 Pp(e,t,...n){let r,i,a;if(typeof e==`number`)a=ci(this,e),r=W(a.fs),i=a.vnode,i.refs++;else{e=j.call(this,e);let t=await Ua(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 Fp(e,t,...n){let r,i,a;if(typeof e==`number`)a=ci(this,e),r=W(a.fs),i=a.vnode,i.refs++;else{e=j.call(this,e);let t=Oi(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 Ip={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`}},Lp=t({BigIntStatsFs:()=>Kn,Dir:()=>Ri,Dirent:()=>Ii,ReadStream:()=>ru,Stats:()=>Hn,StatsFs:()=>Gn,Utf8Stream:()=>hp,WriteStream:()=>iu,_version:()=>Rp,access:()=>Hf,accessSync:()=>Sa,appendFile:()=>vf,appendFileSync:()=>Qi,chmod:()=>Lf,chmodSync:()=>_a,chown:()=>Ff,chownSync:()=>ha,chroot:()=>Ci,close:()=>bf,closeSync:()=>ea,constants:()=>et,copyFile:()=>Zf,copyFileSync:()=>Ea,cp:()=>tp,cpSync:()=>Aa,createReadStream:()=>qf,createWriteStream:()=>Jf,exists:()=>uf,existsSync:()=>Hi,fchmod:()=>Df,fchmodSync:()=>sa,fchown:()=>Ef,fchownSync:()=>oa,fdatasync:()=>Cf,fdatasyncSync:()=>ra,fstat:()=>yf,fstatSync:()=>$i,fsync:()=>Sf,fsyncSync:()=>na,ftruncate:()=>xf,ftruncateSync:()=>ta,futimes:()=>Of,futimesSync:()=>ca,glob:()=>ip,globSync:()=>Ma,ioctl:()=>Pp,ioctlSync:()=>Fp,lchmod:()=>Rf,lchmodSync:()=>va,lchown:()=>If,lchownSync:()=>ga,link:()=>Mf,linkSync:()=>fa,lopenSync:()=>Ji,lstat:()=>ff,lstatSync:()=>Wi,lutimes:()=>Bf,lutimesSync:()=>ba,mkdir:()=>Af,mkdirSync:()=>ua,mkdtemp:()=>Xf,mkdtempDisposableSync:()=>Ta,mkdtempSync:()=>wa,mount:()=>bi,open:()=>hf,openAsBlob:()=>rp,openSync:()=>qi,opendir:()=>ep,opendirSync:()=>ka,promises:()=>au,read:()=>Tf,readFile:()=>gf,readFileSync:()=>Xi,readSync:()=>aa,readdir:()=>jf,readdirSync:()=>da,readlink:()=>Pf,readlinkSync:()=>ma,readv:()=>Qf,readvSync:()=>Da,realpath:()=>Vf,realpathSync:()=>xa,rename:()=>lf,renameSync:()=>Vi,rm:()=>Yf,rmSync:()=>Ca,rmdir:()=>kf,rmdirSync:()=>la,stat:()=>df,statSync:()=>Ui,statfs:()=>np,statfsSync:()=>ja,symlink:()=>Nf,symlinkSync:()=>pa,truncate:()=>pf,truncateSync:()=>Gi,umount:()=>xi,unlink:()=>mf,unlinkSync:()=>Ki,unwatchFile:()=>Gf,utimes:()=>zf,utimesSync:()=>ya,watch:()=>Kf,watchFile:()=>Wf,write:()=>wf,writeFile:()=>_f,writeFileSync:()=>Zi,writeSync:()=>ia,writev:()=>$f,writevSync:()=>Oa,xattr:()=>_p});const Rp=Ip.version;var zp=t({DirType:()=>Br,Dirent:()=>Ur,Handle:()=>oi,chroot:()=>Ci,deleteFD:()=>li,dtToIf:()=>Hr,dupFD:()=>ui,fromFD:()=>ci,ifToDt:()=>Vr,ioctl:()=>Pp,ioctlSync:()=>Fp,link:()=>Ya,mkdir:()=>Ka,mount:()=>bi,open:()=>Wa,readdir:()=>qa,readlink:()=>Ga,rename:()=>Ja,resolve:()=>Ua,stat:()=>Xa,sync:()=>Ti,toFD:()=>si,umount:()=>xi,xattr:()=>_p}),Bp=Lp
13
13
  /*!
14
14
  * @zenfs/core — https://npmjs.com/package/@zenfs/core