sliccy 5.59.1 → 5.60.0

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 (310) hide show
  1. package/dist/ui/assets/__vite-browser-external-DZX1xHt-.js +1 -0
  2. package/dist/ui/assets/account-store-BddNCTSm.js +98 -0
  3. package/dist/ui/assets/account-store-dvAfa3y8.js +38 -0
  4. package/dist/ui/assets/adobe-C0iTCwW2.js +1 -0
  5. package/dist/ui/assets/adobe-DC5UT0ZJ.js +2 -0
  6. package/dist/ui/assets/adobe-oauth-state-Csa5ciQS.js +1 -0
  7. package/dist/ui/assets/{adobe-oauth-state-BeQ7T3Vk.js → adobe-oauth-state-Vbbfo7gR.js} +1 -1
  8. package/dist/ui/assets/agent-message-to-chat-QyCEPmi8.js +7 -0
  9. package/dist/ui/assets/{anthropic-messages-BP_xL8Mh.js → anthropic-messages-CIsUSIzG.js} +3 -3
  10. package/dist/ui/assets/{anthropic-messages-BwBPoNP0.js → anthropic-messages-_fPAePlR.js} +3 -3
  11. package/dist/ui/assets/{apps-Bs4OZdLX.js → apps-ztx90XZQ.js} +1 -1
  12. package/dist/ui/assets/attachments-CByeG2Ru.js +1 -0
  13. package/dist/ui/assets/{azure-openai-hnPmyx7n.js → azure-openai-BKnOwPkT.js} +1 -1
  14. package/dist/ui/assets/{azure-openai-EZeNxE7d.js → azure-openai-Y9U14npX.js} +1 -1
  15. package/dist/ui/assets/{azure-openai-responses-BXDkTtSH.js → azure-openai-responses-DhzbC_tL.js} +1 -1
  16. package/dist/ui/assets/{azure-openai-responses-De9pJjBR.js → azure-openai-responses-bHfWNMbx.js} +1 -1
  17. package/dist/ui/assets/base64-DpPqYZJF.js +1 -0
  18. package/dist/ui/assets/bedrock-camp-BEi8MYUS.js +1 -0
  19. package/dist/ui/assets/bedrock-camp-CvxD6hHk.js +1 -0
  20. package/dist/ui/assets/bridge-launch-params-jegYRGJ6.js +1 -0
  21. package/dist/ui/assets/{browser-2wdq8OwU.js → browser-COVn7LPD.js} +6 -6
  22. package/dist/ui/assets/{cdp-Bwq6NLAx.js → cdp-7evcrxxP.js} +1 -1
  23. package/dist/ui/assets/cerebras-D_u7JsxU.js +1 -0
  24. package/dist/ui/assets/cerebras-ZAPHCT6L.js +1 -0
  25. package/dist/ui/assets/client-CpLUc-P8.js +4 -0
  26. package/dist/ui/assets/clipboard-Bd1Wp2vH.js +1 -0
  27. package/dist/ui/assets/compat-DyT25qXb.js +2 -0
  28. package/dist/ui/assets/{completionchunk-B2eUYPOo.js → completionchunk-D8ek1SQ-.js} +1 -1
  29. package/dist/ui/assets/{composer-speech-CgPswGW1.js → composer-speech-BWsih2Nz.js} +1 -1
  30. package/dist/ui/assets/{connect-surface-Ccit9qN8.js → connect-surface-YVJhSwyb.js} +1 -1
  31. package/dist/ui/assets/{context-compaction-LYFtS2_f.js → context-compaction-dcYYajWb.js} +6 -6
  32. package/dist/ui/assets/cost-command-Cpg2Em0Q.js +1613 -0
  33. package/dist/ui/assets/db-DjAqlQ2I.js +1 -0
  34. package/dist/ui/assets/db-ysOO0kLr.js +1 -0
  35. package/dist/ui/assets/dictation-priming-DGpw1lUV.js +1 -0
  36. package/dist/ui/assets/dip-BumXS1a9.js +233 -0
  37. package/dist/ui/assets/discovery-preference-DCtfbqw1.js +1 -0
  38. package/dist/ui/assets/dist-0FRaZO2z.js +12 -0
  39. package/dist/ui/assets/{dist-DH3_TPic.js → dist-BhEJb2Dl.js} +1 -1
  40. package/dist/ui/assets/{dist-DD6YY4Ks2.js → dist-Bj10RLrf.js} +1 -1
  41. package/dist/ui/assets/{dist-BHXb30bf.js → dist-Bq5i9FMJ.js} +4 -4
  42. package/dist/ui/assets/dist-CJ6ilPeJ.js +18 -0
  43. package/dist/ui/assets/{dist-D58cmC11.js → dist-Cc2eS9kS.js} +1 -1
  44. package/dist/ui/assets/{dist-CC_gNVTb.js → dist-DB-MlM2G.js} +1 -1
  45. package/dist/ui/assets/{dist-Bw2SRiP7.js → dist-DuLHpm2f.js} +1 -1
  46. package/dist/ui/assets/dist-DvjiIrEx.js +23 -0
  47. package/dist/ui/assets/{dist-D1pcMg_U.js → dist-d2CXjMIs.js} +3 -3
  48. package/dist/ui/assets/electron-overlay-route-CjT6k9Df.js +1 -0
  49. package/dist/ui/assets/ensure-speech-assets-D2Pclall.js +1 -0
  50. package/dist/ui/assets/es-CP2z28j0.js +53 -0
  51. package/dist/ui/assets/esp8266-CkAPDkuz.js +1 -0
  52. package/dist/ui/assets/esptool-operations-C0DUkD34.js +13 -0
  53. package/dist/ui/assets/esptool-operations-iCYPdIRA.js +12 -0
  54. package/dist/ui/assets/extension-bridge-transport-DHBo-K6K.js +1 -0
  55. package/dist/ui/assets/{follower-navigate-watcher-CRVUcrQz.js → follower-navigate-watcher-Cn5RjYxg.js} +1 -1
  56. package/dist/ui/assets/{fs-C4sVSIbi.js → fs-BVM9dzPP.js} +1 -1
  57. package/dist/ui/assets/fs-CMpdIYZs.js +2 -0
  58. package/dist/ui/assets/git-config-Lj0BT7Oc.js +7 -0
  59. package/dist/ui/assets/github-CmX1lUH3.js +2 -0
  60. package/dist/ui/assets/github-copilot-C9loxoyp.js +1 -0
  61. package/dist/ui/assets/github-copilot-JdvDIR67.js +2 -0
  62. package/dist/ui/assets/github-ndbvNRbv.js +1 -0
  63. package/dist/ui/assets/global-db-DvmmimLY.js +1 -0
  64. package/dist/ui/assets/{google-generative-ai-C58ldv83.js → google-generative-ai-CyS9qbzb.js} +1 -1
  65. package/dist/ui/assets/{google-generative-ai-Eq6eGS5h.js → google-generative-ai-DkRyuoBH.js} +1 -1
  66. package/dist/ui/assets/{google-shared-DQbld86Z.js → google-shared-CCJkdw81.js} +2 -2
  67. package/dist/ui/assets/{google-shared-DwCjfFnw.js → google-shared-p5XdfI6c.js} +3 -3
  68. package/dist/ui/assets/{google-vertex-C18Xl3dV.js → google-vertex-Cp9ldPyE.js} +1 -1
  69. package/dist/ui/assets/{google-vertex-CkkAgSFr.js → google-vertex-D7VRnbrL.js} +1 -1
  70. package/dist/ui/assets/{handoff-link-CLvhqfpd.js → handoff-link-CfgH86mb.js} +1 -1
  71. package/dist/ui/assets/hear-D7srqY_7.js +1 -0
  72. package/dist/ui/assets/hear-acxY6mf0.js +1 -0
  73. package/dist/ui/assets/hid-device-registry-DboUgvzI.js +1 -0
  74. package/dist/ui/assets/hid-picker-Bhoh8hxy.js +1 -0
  75. package/dist/ui/assets/installer-D7LGGQGy.js +3 -0
  76. package/dist/ui/assets/{js-realm-worker-CeYHBMC5.js → js-realm-worker-B4uCLm52.js} +3 -3
  77. package/dist/ui/assets/{json-parse-B51EftGA.js → json-parse-CpLf0aqK.js} +1 -1
  78. package/dist/ui/assets/{json-parse-C7d6hyOc.js → json-parse-rb7sUwcH.js} +1 -1
  79. package/dist/ui/assets/kernel-worker-DMnEeTNU.js +8759 -0
  80. package/dist/ui/assets/{kokoro-C-DxSDte.js → kokoro-CGDCwNNA.js} +2 -2
  81. package/dist/ui/assets/{kokoro-BFFlHn4y.js → kokoro-D3TYeL2z.js} +2 -2
  82. package/dist/ui/assets/{kokoro-engine-DENIKgTV.js → kokoro-engine-DLKTuHMR.js} +2 -2
  83. package/dist/ui/assets/legacy-api-aliases-BQSsmFIS.js +1 -0
  84. package/dist/ui/assets/legacy-api-aliases-DWJHPSiz.js +1 -0
  85. package/dist/ui/assets/{legacy-styles-kYboUbpI.js → legacy-styles-DcRu2WCJ.js} +1 -1
  86. package/dist/ui/assets/lick-manager-Ct3WOtut.js +2 -0
  87. package/dist/ui/assets/lick-ws-bridge-C_bJMGw6.js +1 -0
  88. package/dist/ui/assets/{lick-ws-bridge-DpPrSP8R.js → lick-ws-bridge-SPFIXhG2.js} +1 -1
  89. package/dist/ui/assets/llm-session-id-ZObKEXzb.js +1 -0
  90. package/dist/ui/assets/local-llm-B5vPCdpH.js +2 -0
  91. package/dist/ui/assets/{local-llm-wgOnNpVi.js → local-llm-DS8tu43V.js} +1 -1
  92. package/dist/ui/assets/magick-wasm-B-rybRPb.js +43 -0
  93. package/dist/ui/assets/main-D8Y-cnmF.js +22 -0
  94. package/dist/ui/assets/{main-cherry-d-KDlb8k.js → main-cherry-CGm5knH6.js} +1 -1
  95. package/dist/ui/assets/{mime-types-BqLkKWa7.js → mime-types-D7IV6i7k.js} +1 -1
  96. package/dist/ui/assets/mistral-conversations-CLDzxp2F.js +8 -0
  97. package/dist/ui/assets/mistral-conversations-DbKikZnf.js +7 -0
  98. package/dist/ui/assets/{models-ByRUWfA-.js → models-CzSI8IsT.js} +1 -1
  99. package/dist/ui/assets/{mount-C0YbhdMr.js → mount-C4XESP9i.js} +1 -1
  100. package/dist/ui/assets/mount-Hr9QXuwp.js +2 -0
  101. package/dist/ui/assets/{mount-bridge-client-0Afn2H9Y.js → mount-bridge-client-BVLVI9yX.js} +1 -1
  102. package/dist/ui/assets/mount-recovery-BHHDw9yC.js +2 -0
  103. package/dist/ui/assets/mount-table-store-CTrzlrNn.js +1 -0
  104. package/dist/ui/assets/navigation-watcher-BoJS9hdc.js +1 -0
  105. package/dist/ui/assets/new-session-u-78FCPG.js +2 -0
  106. package/dist/ui/assets/oauth-bootstrap-DHKASsxn.js +2 -0
  107. package/dist/ui/assets/{oauth-service-w5HZt7Xx.js → oauth-service-CmM0tZSO.js} +1 -1
  108. package/dist/ui/assets/oauth-service-DSuwOpMz.js +1 -0
  109. package/dist/ui/assets/{openai-BeH6aC_-.js → openai-BxFF4GUL.js} +2 -2
  110. package/dist/ui/assets/{openai-BvKpRLAG.js → openai-CmTnPr9N.js} +2 -2
  111. package/dist/ui/assets/openai-codex-Djc_-qM9.js +1 -0
  112. package/dist/ui/assets/openai-codex-gi-RyKX_.js +1 -0
  113. package/dist/ui/assets/{openai-codex-responses-BDYh8ojD.js → openai-codex-responses-B_k2rCqO.js} +1 -1
  114. package/dist/ui/assets/{openai-codex-responses-C7QnNmC0.js → openai-codex-responses-RviMslSH.js} +1 -1
  115. package/dist/ui/assets/{openai-completions-t-glszMQ.js → openai-completions-CGLtJfv2.js} +1 -1
  116. package/dist/ui/assets/{openai-completions-BnAjXzgN.js → openai-completions-COYKlBqA.js} +1 -1
  117. package/dist/ui/assets/{openai-responses-o9_kr7GP.js → openai-responses-C4mUX6jK.js} +1 -1
  118. package/dist/ui/assets/{openai-responses-BofM6cmY.js → openai-responses-D02gU0ey.js} +1 -1
  119. package/dist/ui/assets/{openai-responses-shared-79gch22X.js → openai-responses-shared-CCTyKL6A.js} +2 -2
  120. package/dist/ui/assets/{openai-responses-shared-DKPwc9Eh.js → openai-responses-shared-bVKJbQt9.js} +2 -2
  121. package/dist/ui/assets/{openrouter-images-PT0FZmkM.js → openrouter-images-BrQDTa3_.js} +1 -1
  122. package/dist/ui/assets/{openrouter-images-D0dgD5eX.js → openrouter-images-DtvjLeGK.js} +1 -1
  123. package/dist/ui/assets/otel-C1NYdIbe.js +3 -0
  124. package/dist/ui/assets/otel-joHgpnL_.js +3 -0
  125. package/dist/ui/assets/page-follower-tray-DFeLlotx.js +5 -0
  126. package/dist/ui/assets/panel-rpc-handlers-CTZqBsvr.js +2 -0
  127. package/dist/ui/assets/{pdfjs-BdCnB7P8.js → pdfjs-B1saeD0h.js} +5 -5
  128. package/dist/ui/assets/{port-bridge-client-Btb0CfZS.js → port-bridge-client-CdvMlimf.js} +1 -1
  129. package/dist/ui/assets/{port-bridge-client-BtsJUDjt.js → port-bridge-client-CsrXhMWo.js} +1 -1
  130. package/dist/ui/assets/preload-helper-Czpn1I53.js +1 -0
  131. package/dist/ui/assets/process-manager-B5dz0PkO.js +1 -0
  132. package/dist/ui/assets/provider-DeZ3vGbS.js +2 -0
  133. package/dist/ui/assets/provider-POdkeNpc.js +1 -0
  134. package/dist/ui/assets/provider-settings-3FoUN196.js +1 -0
  135. package/dist/ui/assets/provider-settings-BraIAAA7.js +2 -0
  136. package/dist/ui/assets/provider-store-access-B_pR-9Xx.js +2 -0
  137. package/dist/ui/assets/provider-store-access-BkJ_SWbe.js +1 -0
  138. package/dist/ui/assets/providers-B26DtTJa.js +1 -0
  139. package/dist/ui/assets/providers-CvODsjGm.js +2 -0
  140. package/dist/ui/assets/proxied-fetch-DETjVL-j.js +2 -0
  141. package/dist/ui/assets/proxied-fetch-sbHa3Tte.js +1 -0
  142. package/dist/ui/assets/{py-realm-worker-C5_FcpVv.js → py-realm-worker-VuYxvTG9.js} +2 -2
  143. package/dist/ui/assets/{pyodide-CVuZVKDU.js → pyodide-BahZNzwn.js} +2 -2
  144. package/dist/ui/assets/{quick-llm-8fakxnYS.js → quick-llm-DzhE1JW0.js} +1 -1
  145. package/dist/ui/assets/{readline-D4m_9EmN.js → readline-0OE_8qoR.js} +1 -1
  146. package/dist/ui/assets/remote-cdp-transport-DOoXIxy3.js +1 -0
  147. package/dist/ui/assets/{remote-terminal-view-BOSJ_t1v.js → remote-terminal-view-C7x7cM1d.js} +2 -2
  148. package/dist/ui/assets/runtime-mode-M-qJL9jF.js +1 -0
  149. package/dist/ui/assets/safe-buffer-C0pSmFaz.js +12 -0
  150. package/dist/ui/assets/script-catalog-BYXhqRAc.js +2 -0
  151. package/dist/ui/assets/{secret-env-CGjJCzwN.js → secret-env-1E2r2H5F.js} +1 -1
  152. package/dist/ui/assets/{secret-topology-_rfIhUjY.js → secret-topology-D2k1IxFk.js} +1 -1
  153. package/dist/ui/assets/{secrets-bridge-client-a5aLwwny.js → secrets-bridge-client-CONYX8PU.js} +1 -1
  154. package/dist/ui/assets/serial-picker-CUd91lje.js +1 -0
  155. package/dist/ui/assets/session-freezer-CUzeQ9yz.js +21 -0
  156. package/dist/ui/assets/{setup-sprinkle-exec-P2hO-taT.js → setup-sprinkle-exec-DD6jqggr.js} +1 -1
  157. package/dist/ui/assets/setup-sudo-cXyK0NGW.js +2 -0
  158. package/dist/ui/assets/{shared-Cq5Q0noX.js → shared-Dwjvg8S5.js} +1 -1
  159. package/dist/ui/assets/shared-X5SFnyK-.js +4 -0
  160. package/dist/ui/assets/skills-otSlGBFl.js +6 -0
  161. package/dist/ui/assets/{slicc-editor-DKckizoI.js → slicc-editor-BoIEeofq.js} +2 -2
  162. package/dist/ui/assets/{speak-DG2fJcBd.js → speak-WMi1eHMn.js} +3 -3
  163. package/dist/ui/assets/{speak-CcZ3Uni4.js → speak-YEgNUk4w.js} +1 -1
  164. package/dist/ui/assets/{sprinkle-bridge-C0ycYX8f.js → sprinkle-bridge-CmJpELpy.js} +1 -1
  165. package/dist/ui/assets/sprinkle-manager-DXrwoVHS.js +1 -0
  166. package/dist/ui/assets/{sprinkle-renderer-Bk_e6Kbr.js → sprinkle-renderer-B0y9_9py.js} +2 -2
  167. package/dist/ui/assets/{wc-shell-ChAQky0u.js → src-6TqoULh8.js} +94 -211
  168. package/dist/ui/assets/src-CS5gSDhT.js +1 -0
  169. package/dist/ui/assets/src-Dk1QVJRd.js +1 -0
  170. package/dist/ui/assets/store-BfzctFJC.js +1 -0
  171. package/dist/ui/assets/{sudo-CBMei9fD.js → sudo-LN3PJp6v.js} +1 -1
  172. package/dist/ui/assets/telemetry-C8rZr13D.js +3 -0
  173. package/dist/ui/assets/timestamp-preference-DgrTvVNx.js +2 -0
  174. package/dist/ui/assets/transcript-limits-D0M7bLr9.js +1 -0
  175. package/dist/ui/assets/{transform-messages-ZX8cvJiJ.js → transform-messages-CVIV-EgO.js} +1 -1
  176. package/dist/ui/assets/transform-messages-fFaW-DLG.js +1 -0
  177. package/dist/ui/assets/transformers-env-8w05vuhN.js +1 -0
  178. package/dist/ui/assets/{transformers-env-w-btTDFl.js → transformers-env-sL29_hFb.js} +1 -1
  179. package/dist/ui/assets/{transformers.web-C6PlPLR-.js → transformers.web-CrioJkWG.js} +4 -4
  180. package/dist/ui/assets/{transformers.web-DkJGoARp.js → transformers.web-D6viRW2X.js} +5 -5
  181. package/dist/ui/assets/tray-follower-status-CyJIKXH4.js +1 -0
  182. package/dist/ui/assets/tray-join-url-BIvzbiFR.js +1 -0
  183. package/dist/ui/assets/tray-leader-DcLymd_E.js +1 -0
  184. package/dist/ui/assets/tray-leave-runtime-lJcLlwtm.js +1 -0
  185. package/dist/ui/assets/tray-runtime-config-DJIIJaBR.js +1 -0
  186. package/dist/ui/assets/tray-runtime-config-DlPGhxQs.js +1 -0
  187. package/dist/ui/assets/tray-sync-protocol-CVdiCvfU.js +1 -0
  188. package/dist/ui/assets/upgrade-detection-DIIyklC5.js +1 -0
  189. package/dist/ui/assets/usb-device-registry-BOGfZXgp.js +1 -0
  190. package/dist/ui/assets/{usb-operations-D-YdmmuG.js → usb-operations-BQbhk96u.js} +1 -1
  191. package/dist/ui/assets/usb-picker-Cl6Cwuv9.js +1 -0
  192. package/dist/ui/assets/voice-reply-DHV6R4En.js +1 -0
  193. package/dist/ui/assets/wc-attach-DU0svqb7.js +13 -0
  194. package/dist/ui/assets/wc-extension-oy0LEz26.js +2 -0
  195. package/dist/ui/assets/{wc-float-label-CNeJqRLg.js → wc-float-label-DeQPr3pd.js} +1 -1
  196. package/dist/ui/assets/wc-follower-DcQtc8YB.js +17 -0
  197. package/dist/ui/assets/wc-live-D7BaYtR7.js +8 -0
  198. package/dist/ui/assets/wc-nav-BqxVwvjV.js +2 -0
  199. package/dist/ui/assets/wc-onboarding-D9lPUOm-.js +2 -0
  200. package/dist/ui/assets/{wc-permissions-CAEOwurQ.js → wc-permissions-DW60QZxV.js} +3 -3
  201. package/dist/ui/assets/wc-permissions-providers-DMTDytlu.js +2 -0
  202. package/dist/ui/assets/wc-placeholder-C0wfdFBG.js +4 -0
  203. package/dist/ui/assets/wc-scoop-color-CByZNEJo.js +1 -0
  204. package/dist/ui/assets/wc-settings-qEE2zwaO.js +51 -0
  205. package/dist/ui/assets/wc-shell-BHZzK20y.js +117 -0
  206. package/dist/ui/assets/wc-sprinkles-DlE9uQTj.js +2 -0
  207. package/dist/ui/assets/wc-tray-BdFq9TlZ.js +2 -0
  208. package/dist/ui/assets/{whisper-engine-DBy-Rgc0.js → whisper-engine-C0mT2z02.js} +1 -1
  209. package/dist/ui/assets/whisper-session-DvjyTCj0.js +2 -0
  210. package/dist/ui/assets/xai-grok-Bx0idvJc.js +1 -0
  211. package/dist/ui/assets/xai-grok-CemZ8tZD.js +1 -0
  212. package/dist/ui/assets/xterm-DX7Hb5S-.js +47 -0
  213. package/dist/ui/assets/xterm-U4TA8lIC.js +35 -0
  214. package/dist/ui/index.html +24 -15
  215. package/dist/ui/packages/webapp/index.html +24 -15
  216. package/package.json +2 -2
  217. package/dist/ui/assets/__vite-browser-external-s4_sx6bN.js +0 -1
  218. package/dist/ui/assets/account-store-B2gG-qc_.js +0 -38
  219. package/dist/ui/assets/account-store-HRvOCmO4.js +0 -103
  220. package/dist/ui/assets/adobe-CHBAf7Hs.js +0 -1
  221. package/dist/ui/assets/adobe-CJZTrRE1.js +0 -2
  222. package/dist/ui/assets/adobe-oauth-state-C9eB9J5F.js +0 -1
  223. package/dist/ui/assets/agent-message-to-chat-ColCoNOH.js +0 -7
  224. package/dist/ui/assets/bedrock-camp-CZFsedRI.js +0 -1
  225. package/dist/ui/assets/bedrock-camp-Czep_VHL.js +0 -1
  226. package/dist/ui/assets/cdp-bridge-CUqQUcaF.js +0 -1
  227. package/dist/ui/assets/cerebras-C2wowhxn.js +0 -1
  228. package/dist/ui/assets/cerebras-CPDv_lSy.js +0 -1
  229. package/dist/ui/assets/clipboard-B_tsQU_u.js +0 -1
  230. package/dist/ui/assets/compat-FrhC6T45.js +0 -2
  231. package/dist/ui/assets/dip-DjQjKj4G.js +0 -1
  232. package/dist/ui/assets/discovery-preference-ChE43Rww.js +0 -1
  233. package/dist/ui/assets/dist-0c-Ms6jt.js +0 -23
  234. package/dist/ui/assets/dist-C30gQBcj2.js +0 -12
  235. package/dist/ui/assets/dist-CF1SACsY.js +0 -18
  236. package/dist/ui/assets/ensure-speech-assets-DOfhoSLd.js +0 -1
  237. package/dist/ui/assets/es-kEo2Tmh4.js +0 -53
  238. package/dist/ui/assets/esp8266-DhxGJGHR.js +0 -1
  239. package/dist/ui/assets/esp8266-dt3vHImh.js +0 -1
  240. package/dist/ui/assets/esptool-operations-BBtDOaij.js +0 -12
  241. package/dist/ui/assets/esptool-operations-wGO-l9-a.js +0 -13
  242. package/dist/ui/assets/extension-bridge-transport-Bi9JIuzJ.js +0 -1
  243. package/dist/ui/assets/fs-BuwyzyMW.js +0 -2
  244. package/dist/ui/assets/github-Bypbpxj_.js +0 -1
  245. package/dist/ui/assets/github-C85Bo5sl.js +0 -2
  246. package/dist/ui/assets/github-copilot-Bl3DpxDS.js +0 -2
  247. package/dist/ui/assets/github-copilot-BzF1rbqF.js +0 -1
  248. package/dist/ui/assets/hear-C7y434Fx.js +0 -1
  249. package/dist/ui/assets/hear-tL55Pr9X.js +0 -1
  250. package/dist/ui/assets/hid-device-registry-6w-g8ZpF.js +0 -1
  251. package/dist/ui/assets/hid-picker-Cp7Sp5N-.js +0 -1
  252. package/dist/ui/assets/kernel-worker-BwALz4mK.js +0 -10443
  253. package/dist/ui/assets/lick-ws-bridge-Cu9jmlYC.js +0 -1
  254. package/dist/ui/assets/main-CGnZl3f-.js +0 -24
  255. package/dist/ui/assets/mistral-conversations-DKqvekSA.js +0 -7
  256. package/dist/ui/assets/mistral-conversations-szVW8BsU.js +0 -8
  257. package/dist/ui/assets/mount-D5pPoQkC.js +0 -2
  258. package/dist/ui/assets/mount-id-nJcx05eu.js +0 -1
  259. package/dist/ui/assets/mount-table-store-s20mtVA3.js +0 -1
  260. package/dist/ui/assets/navigation-watcher-DTSw-td6.js +0 -1
  261. package/dist/ui/assets/new-session-Bs6AOhFK.js +0 -2
  262. package/dist/ui/assets/oauth-bootstrap-CE5ZvKUd.js +0 -2
  263. package/dist/ui/assets/oauth-service-Cf0jA8F5.js +0 -1
  264. package/dist/ui/assets/openai-codex-8wcYifFj.js +0 -1
  265. package/dist/ui/assets/openai-codex-xmVYehg_.js +0 -1
  266. package/dist/ui/assets/otel-BvlmHUjk.js +0 -3
  267. package/dist/ui/assets/otel-CCT7TRJr.js +0 -3
  268. package/dist/ui/assets/page-follower-tray-CowMs-O6.js +0 -5
  269. package/dist/ui/assets/panel-rpc-handlers-D7f3wT75.js +0 -2
  270. package/dist/ui/assets/preload-helper-CZgWQFsJ.js +0 -1
  271. package/dist/ui/assets/provider-DgMyEny4.js +0 -2
  272. package/dist/ui/assets/provider-m3ooafCg.js +0 -1
  273. package/dist/ui/assets/provider-settings-DJevRg9o.js +0 -1
  274. package/dist/ui/assets/provider-store-access-QXzphIMd.js +0 -1
  275. package/dist/ui/assets/provider-store-access-ZxL11bFB.js +0 -1
  276. package/dist/ui/assets/providers-B3oFOoQS.js +0 -1
  277. package/dist/ui/assets/providers-BW6jnLVy.js +0 -2
  278. package/dist/ui/assets/proxied-fetch-CQqrhHlW.js +0 -1
  279. package/dist/ui/assets/proxied-fetch-D3wsof0i.js +0 -2
  280. package/dist/ui/assets/remote-cdp-transport-DspFAFy_.js +0 -1
  281. package/dist/ui/assets/serial-picker-bJGym01W.js +0 -1
  282. package/dist/ui/assets/session-freezer-jxkdAA5Q.js +0 -1
  283. package/dist/ui/assets/sprinkle-manager-Bvx4CxCm.js +0 -1
  284. package/dist/ui/assets/src-BQoW5KdD.js +0 -1
  285. package/dist/ui/assets/src-BvERX0WZ.js +0 -1
  286. package/dist/ui/assets/store-B7DeyKtl.js +0 -1
  287. package/dist/ui/assets/transform-messages-DwI5R8if.js +0 -1
  288. package/dist/ui/assets/transformers-env-BwX2ts-q.js +0 -1
  289. package/dist/ui/assets/tray-leader-DKj3IyXq.js +0 -1
  290. package/dist/ui/assets/tray-leave-runtime-CPrd1hfA.js +0 -1
  291. package/dist/ui/assets/upgrade-detection-B_nKAXxR.js +0 -1
  292. package/dist/ui/assets/usb-device-registry-k6vTKonT.js +0 -1
  293. package/dist/ui/assets/usb-picker-DJjZemi7.js +0 -1
  294. package/dist/ui/assets/voice-reply-D08ppelD.js +0 -1
  295. package/dist/ui/assets/wc-attach-BD0vIfkn.js +0 -13
  296. package/dist/ui/assets/wc-extension-B6ny75yf.js +0 -2
  297. package/dist/ui/assets/wc-follower-DBHiqt6g.js +0 -17
  298. package/dist/ui/assets/wc-live-CuefElQr.js +0 -258
  299. package/dist/ui/assets/wc-nav-CQU9lWdP.js +0 -2
  300. package/dist/ui/assets/wc-onboarding-DaQiGWxH.js +0 -2
  301. package/dist/ui/assets/wc-permissions-providers-CbkqRh4J.js +0 -2
  302. package/dist/ui/assets/wc-placeholder-DCIY4YK0.js +0 -4
  303. package/dist/ui/assets/wc-settings-BDh89SFJ.js +0 -51
  304. package/dist/ui/assets/wc-sprinkles-CxI-YvJH.js +0 -2
  305. package/dist/ui/assets/wc-tray-DL8LCTDP.js +0 -2
  306. package/dist/ui/assets/whisper-session-C8cizjJD.js +0 -2
  307. package/dist/ui/assets/xai-grok-BnqGjgBw.js +0 -1
  308. package/dist/ui/assets/xai-grok-yL8zMte6.js +0 -1
  309. package/dist/ui/assets/xterm-DMlKjmUi.js +0 -36
  310. package/dist/ui/assets/xterm-Dwh1I9AE.js +0 -48
@@ -0,0 +1,1613 @@
1
+ import{n as e,r as t,t as n}from"./rolldown-runtime-aKtaBQYM.js";var r=n((e=>{(function(){var t={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function n(e){return i(o(e),arguments)}function r(e,t){return n.apply(null,[e].concat(t||[]))}function i(e,r){var i=1,a=e.length,o,s=``,c,l,u,d,f,p,m,h;for(c=0;c<a;c++)if(typeof e[c]==`string`)s+=e[c];else if(typeof e[c]==`object`){if(u=e[c],u.keys)for(o=r[i],l=0;l<u.keys.length;l++){if(o==null)throw Error(n(`[sprintf] Cannot access property "%s" of undefined value "%s"`,u.keys[l],u.keys[l-1]));o=o[u.keys[l]]}else o=u.param_no?r[u.param_no]:r[i++];if(t.not_type.test(u.type)&&t.not_primitive.test(u.type)&&o instanceof Function&&(o=o()),t.numeric_arg.test(u.type)&&typeof o!=`number`&&isNaN(o))throw TypeError(n(`[sprintf] expecting number but found %T`,o));switch(t.number.test(u.type)&&(m=o>=0),u.type){case`b`:o=parseInt(o,10).toString(2);break;case`c`:o=String.fromCharCode(parseInt(o,10));break;case`d`:case`i`:o=parseInt(o,10);break;case`j`:o=JSON.stringify(o,null,u.width?parseInt(u.width):0);break;case`e`:o=u.precision?parseFloat(o).toExponential(u.precision):parseFloat(o).toExponential();break;case`f`:o=u.precision?parseFloat(o).toFixed(u.precision):parseFloat(o);break;case`g`:o=u.precision?String(Number(o.toPrecision(u.precision))):parseFloat(o);break;case`o`:o=(parseInt(o,10)>>>0).toString(8);break;case`s`:o=String(o),o=u.precision?o.substring(0,u.precision):o;break;case`t`:o=String(!!o),o=u.precision?o.substring(0,u.precision):o;break;case`T`:o=Object.prototype.toString.call(o).slice(8,-1).toLowerCase(),o=u.precision?o.substring(0,u.precision):o;break;case`u`:o=parseInt(o,10)>>>0;break;case`v`:o=o.valueOf(),o=u.precision?o.substring(0,u.precision):o;break;case`x`:o=(parseInt(o,10)>>>0).toString(16);break;case`X`:o=(parseInt(o,10)>>>0).toString(16).toUpperCase();break}t.json.test(u.type)?s+=o:(t.number.test(u.type)&&(!m||u.sign)?(h=m?`+`:`-`,o=o.toString().replace(t.sign,``)):h=``,f=u.pad_char?u.pad_char===`0`?`0`:u.pad_char.charAt(1):` `,p=u.width-(h+o).length,d=u.width&&p>0?f.repeat(p):``,s+=u.align?h+o+d:f===`0`?h+d+o:d+h+o)}return s}var a=Object.create(null);function o(e){if(a[e])return a[e];for(var n=e,r,i=[],o=0;n;){if((r=t.text.exec(n))!==null)i.push(r[0]);else if((r=t.modulo.exec(n))!==null)i.push(`%`);else if((r=t.placeholder.exec(n))!==null){if(r[2]){o|=1;var s=[],c=r[2],l=[];if((l=t.key.exec(c))!==null)for(s.push(l[1]);(c=c.substring(l[0].length))!==``;)if((l=t.key_access.exec(c))!==null)s.push(l[1]);else if((l=t.index_access.exec(c))!==null)s.push(l[1]);else throw SyntaxError(`[sprintf] failed to parse named argument key`);else throw SyntaxError(`[sprintf] failed to parse named argument key`);r[2]=s}else o|=2;if(o===3)throw Error(`[sprintf] mixing positional and named placeholders is not (yet) supported`);i.push({placeholder:r[0],param_no:r[1],keys:r[2],sign:r[3],pad_char:r[4],align:r[5],width:r[6],precision:r[7],type:r[8]})}else throw SyntaxError(`[sprintf] unexpected placeholder`);n=n.substring(r[0].length)}return a[e]=i}e!==void 0&&(e.sprintf=n,e.vsprintf=r),typeof window<`u`&&(window.sprintf=n,window.vsprintf=r,typeof define==`function`&&define.amd&&define(function(){return{sprintf:n,vsprintf:r}}))})()}))();const i=(e,t,n)=>{let r=e instanceof RegExp?a(e,n):e,i=t instanceof RegExp?a(t,n):t,s=r!==null&&i!=null&&o(r,i,n);return s&&{start:s[0],end:s[1],pre:n.slice(0,s[0]),body:n.slice(s[0]+r.length,s[1]),post:n.slice(s[1]+i.length)}},a=(e,t)=>{let n=t.match(e);return n?n[0]:null},o=(e,t,n)=>{let r,i,a,o,s,c=n.indexOf(e),l=n.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(r=[],a=n.length;u>=0&&!s;){if(u===c)r.push(u),c=n.indexOf(e,u+1);else if(r.length===1){let e=r.pop();e!==void 0&&(s=[e,l])}else i=r.pop(),i!==void 0&&i<a&&(a=i,o=l),l=n.indexOf(t,u+1);u=c<l&&c>=0?c:l}r.length&&o!==void 0&&(s=[a,o])}return s},s=`\0SLASH`+Math.random()+`\0`,c=`\0OPEN`+Math.random()+`\0`,l=`\0CLOSE`+Math.random()+`\0`,u=`\0COMMA`+Math.random()+`\0`,d=`\0PERIOD`+Math.random()+`\0`,f=new RegExp(s,`g`),p=new RegExp(c,`g`),m=new RegExp(l,`g`),h=new RegExp(u,`g`),g=new RegExp(d,`g`),_=/\\\\/g,v=/\\{/g,y=/\\}/g,ee=/\\,/g,te=/\\\./g;function ne(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function re(e){return e.replace(_,s).replace(v,c).replace(y,l).replace(ee,u).replace(te,d)}function ie(e){return e.replace(f,`\\`).replace(p,`{`).replace(m,`}`).replace(h,`,`).replace(g,`.`)}function b(e){if(!e)return[``];let t=[],n=i(`{`,`}`,e);if(!n)return e.split(`,`);let{pre:r,body:a,post:o}=n,s=r.split(`,`);s[s.length-1]+=`{`+a+`}`;let c=b(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function ae(e,t={}){if(!e)return[];let{max:n=1e5}=t;return e.slice(0,2)===`{}`&&(e=`\\{\\}`+e.slice(2)),ue(re(e),n,!0).map(ie)}function oe(e){return`{`+e+`}`}function se(e){return/^-?0\d/.test(e)}function ce(e,t){return e<=t}function le(e,t){return e>=t}function ue(e,t,n){let r=[],a=i(`{`,`}`,e);if(!a)return[e];let o=a.pre,s=a.post.length?ue(a.post,t,!1):[``];if(/\$$/.test(a.pre))for(let e=0;e<s.length&&e<t;e++){let t=o+`{`+a.body+`}`+s[e];r.push(t)}else{let i=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(a.body),c=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(a.body),u=i||c,d=a.body.indexOf(`,`)>=0;if(!u&&!d)return a.post.match(/,(?!,).*\}/)?(e=a.pre+`{`+a.body+l+a.post,ue(e,t,!0)):[e];let f;if(u)f=a.body.split(/\.\./);else if(f=b(a.body),f.length===1&&f[0]!==void 0&&(f=ue(f[0],t,!1).map(oe),f.length===1))return s.map(e=>a.pre+f[0]+e);let p;if(u&&f[0]!==void 0&&f[1]!==void 0){let e=ne(f[0]),t=ne(f[1]),n=Math.max(f[0].length,f[1].length),r=f.length===3&&f[2]!==void 0?Math.abs(ne(f[2])):1,i=ce;t<e&&(r*=-1,i=le);let a=f.some(se);p=[];for(let o=e;i(o,t);o+=r){let e;if(c)e=String.fromCharCode(o),e===`\\`&&(e=``);else if(e=String(o),a){let t=n-e.length;if(t>0){let n=Array(t+1).join(`0`);e=o<0?`-`+n+e.slice(1):n+e}}p.push(e)}}else{p=[];for(let e=0;e<f.length;e++)p.push.apply(p,ue(f[e],t,!1))}for(let e=0;e<p.length;e++)for(let i=0;i<s.length&&r.length<t;i++){let t=o+p[e]+s[i];(!n||u||t)&&r.push(t)}}return r}const de=e=>{if(typeof e!=`string`)throw TypeError(`invalid pattern`);if(e.length>65536)throw TypeError(`pattern is too long`)},fe={"[:alnum:]":[`\\p{L}\\p{Nl}\\p{Nd}`,!0],"[:alpha:]":[`\\p{L}\\p{Nl}`,!0],"[:ascii:]":[`\\x00-\\x7f`,!1],"[:blank:]":[`\\p{Zs}\\t`,!0],"[:cntrl:]":[`\\p{Cc}`,!0],"[:digit:]":[`\\p{Nd}`,!0],"[:graph:]":[`\\p{Z}\\p{C}`,!0,!0],"[:lower:]":[`\\p{Ll}`,!0],"[:print:]":[`\\p{C}`,!0],"[:punct:]":[`\\p{P}`,!0],"[:space:]":[`\\p{Z}\\t\\r\\n\\v\\f`,!0],"[:upper:]":[`\\p{Lu}`,!0],"[:word:]":[`\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}`,!0],"[:xdigit:]":[`A-Fa-f0-9`,!1]},pe=e=>e.replace(/[[\]\\-]/g,`\\$&`),me=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),he=e=>e.join(``),ge=(e,t)=>{let n=t;if(e.charAt(n)!==`[`)throw Error(`not in a brace expression`);let r=[],i=[],a=n+1,o=!1,s=!1,c=!1,l=!1,u=n,d=``;WHILE:for(;a<e.length;){let t=e.charAt(a);if((t===`!`||t===`^`)&&a===n+1){l=!0,a++;continue}if(t===`]`&&o&&!c){u=a+1;break}if(o=!0,t===`\\`&&!c){c=!0,a++;continue}if(t===`[`&&!c){for(let[t,[o,c,l]]of Object.entries(fe))if(e.startsWith(t,a)){if(d)return[`$.`,!1,e.length-n,!0];a+=t.length,l?i.push(o):r.push(o),s||=c;continue WHILE}}if(c=!1,d){t>d?r.push(pe(d)+`-`+pe(t)):t===d&&r.push(pe(t)),d=``,a++;continue}if(e.startsWith(`-]`,a+1)){r.push(pe(t+`-`)),a+=2;continue}if(e.startsWith(`-`,a+1)){d=t,a+=2;continue}r.push(pe(t)),a++}if(u<a)return[``,!1,0,!1];if(!r.length&&!i.length)return[`$.`,!1,e.length-n,!0];if(i.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!l){let e=r[0].length===2?r[0].slice(-1):r[0];return[me(e),!1,u-n,!1]}let f=`[`+(l?`^`:``)+he(r)+`]`,p=`[`+(l?``:`^`)+he(i)+`]`;return[r.length&&i.length?`(`+f+`|`+p+`)`:r.length?f:p,s,u-n,!0]},_e=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!0}={})=>n?t?e.replace(/\[([^\/\\])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,`$1$2`).replace(/\\([^\/])/g,`$1`):t?e.replace(/\[([^\/\\{}])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,`$1$2`).replace(/\\([^\/{}])/g,`$1`);var ve;const ye=new Set([`!`,`?`,`+`,`*`,`@`]),be=e=>ye.has(e),xe=e=>be(e.type),Se=new Map([[`!`,[`@`]],[`?`,[`?`,`@`]],[`@`,[`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`]]]),Ce=new Map([[`!`,[`?`]],[`@`,[`?`]],[`+`,[`?`,`*`]]]),we=new Map([[`!`,[`?`,`@`]],[`?`,[`?`,`@`]],[`@`,[`?`,`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`,`?`,`*`]]]),Te=new Map([[`!`,new Map([[`!`,`@`]])],[`?`,new Map([[`*`,`*`],[`+`,`*`]])],[`@`,new Map([[`!`,`!`],[`?`,`?`],[`@`,`@`],[`*`,`*`],[`+`,`+`]])],[`+`,new Map([[`?`,`*`],[`*`,`*`]])]]),Ee=`(?!\\.)`,De=new Set([`[`,`.`]),Oe=new Set([`..`,`.`]),ke=new Set(`().*{}+?[]^$\\!`),Ae=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),je=`[^/]+?`;let Me=0;var Ne=class{type;#e;#t;#n=!1;#r=[];#i;#a;#o;#s=!1;#c;#l;#u=!1;id=++Me;get depth(){return(this.#i?.depth??-1)+1}[Symbol.for(`nodejs.util.inspect.custom`)](){return{"@@type":`AST`,id:this.id,type:this.type,root:this.#e.id,parent:this.#i?.id,depth:this.depth,partsLength:this.#r.length,parts:this.#r}}constructor(e,t,n={}){this.type=e,e&&(this.#t=!0),this.#i=t,this.#e=this.#i?this.#i.#e:this,this.#c=this.#e===this?n:this.#e.#c,this.#o=this.#e===this?[]:this.#e.#o,e===`!`&&!this.#e.#s&&this.#o.push(this),this.#a=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let e of this.#r)if(typeof e!=`string`&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#l===void 0?this.type?this.#l=this.type+`(`+this.#r.map(e=>String(e)).join(`|`)+`)`:this.#l=this.#r.map(e=>String(e)).join(``):this.#l}#d(){if(this!==this.#e)throw Error(`should only call on root`);if(this.#s)return this;this.toString(),this.#s=!0;let e;for(;e=this.#o.pop();){if(e.type!==`!`)continue;let t=e,n=t.#i;for(;n;){for(let r=t.#a+1;!n.type&&r<n.#r.length;r++)for(let t of e.#r){if(typeof t==`string`)throw Error(`string part in extglob AST??`);t.copyIn(n.#r[r])}t=n,n=t.#i}}return this}push(...e){for(let t of e)if(t!==``){if(typeof t!=`string`&&!(t instanceof ve&&t.#i===this))throw Error(`invalid part: `+t);this.#r.push(t)}}toJSON(){let e=this.type===null?this.#r.slice().map(e=>typeof e==`string`?e:e.toJSON()):[this.type,...this.#r.map(e=>e.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#s&&this.#i?.type===`!`)&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#a===0)return!0;let e=this.#i;for(let t=0;t<this.#a;t++){let n=e.#r[t];if(!(n instanceof ve&&n.type===`!`))return!1}return!0}isEnd(){if(this.#e===this||this.#i?.type===`!`)return!0;if(!this.#i?.isEnd())return!1;if(!this.type)return this.#i?.isEnd();let e=this.#i?this.#i.#r.length:0;return this.#a===e-1}copyIn(e){typeof e==`string`?this.push(e):this.push(e.clone(this))}clone(e){let t=new ve(this.type,e);for(let e of this.#r)t.copyIn(e);return t}static#f(e,t,n,r,i){let a=r.maxExtglobRecursion??2,o=!1,s=!1,c=-1,l=!1;if(t.type===null){let u=n,d=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,d+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),d+=n;continue}else if(n===`[`){s=!0,c=u,l=!1,d+=n;continue}if(!r.noext&&be(n)&&e.charAt(u)===`(`&&i<=a){t.push(d),d=``;let a=new ve(n,t);u=ve.#f(e,a,u,r,i+1),t.push(a);continue}d+=n}return t.push(d),u}let u=n+1,d=new ve(null,t),f=[],p=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,p+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),p+=n;continue}else if(n===`[`){s=!0,c=u,l=!1,p+=n;continue}if(!r.noext&&be(n)&&e.charAt(u)===`(`&&(i<=a||t&&t.#h(n))){let a=t&&t.#h(n)?0:1;d.push(p),p=``;let o=new ve(n,d);d.push(o),u=ve.#f(e,o,u,r,i+a);continue}if(n===`|`){d.push(p),p=``,f.push(d),d=new ve(null,t);continue}if(n===`)`)return p===``&&t.#r.length===0&&(t.#u=!0),d.push(p),p=``,t.push(...f,d),u;p+=n}return t.type=null,t.#t=void 0,t.#r=[e.substring(n-1)],u}#p(e){return this.#m(e,Ce)}#m(e,t=Se){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null)return!1;let n=e.#r[0];return!n||typeof n!=`object`||n.type===null?!1:this.#h(n.type,t)}#h(e,t=we){return!!t.get(this.type)?.includes(e)}#g(e,t){let n=e.#r[0],r=new ve(null,n,this.options);r.#r.push(``),n.push(r),this.#_(e,t)}#_(e,t){let n=e.#r[0];this.#r.splice(t,1,...n.#r);for(let e of n.#r)typeof e==`object`&&(e.#i=this);this.#l=void 0}#v(e){return!!Te.get(this.type)?.has(e)}#y(e){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null||this.#r.length!==1)return!1;let t=e.#r[0];return!t||typeof t!=`object`||t.type===null?!1:this.#v(t.type)}#b(e){let t=Te.get(this.type),n=e.#r[0],r=t?.get(n.type);if(!r)return!1;this.#r=n.#r;for(let e of this.#r)typeof e==`object`&&(e.#i=this);this.type=r,this.#l=void 0,this.#u=!1}static fromGlob(e,t={}){let n=new ve(null,void 0,t);return ve.#f(e,n,0,t,0),n}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,n,r,i]=this.toRegExpSource();if(!(r||this.#t||this.#c.nocase&&!this.#c.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return n;let a=(this.#c.nocase?`i`:``)+(i?`u`:``);return Object.assign(RegExp(`^${t}$`,a),{_src:t,_glob:e})}get options(){return this.#c}toRegExpSource(e){let t=e??!!this.#c.dot;if(this.#e===this&&(this.#x(),this.#d()),!xe(this)){let n=this.isStart()&&this.isEnd()&&!this.#r.some(e=>typeof e!=`string`),r=this.#r.map(t=>{let[r,i,a,o]=typeof t==`string`?ve.#C(t,this.#t,n):t.toRegExpSource(e);return this.#t=this.#t||a,this.#n=this.#n||o,r}).join(``),i=``;if(this.isStart()&&typeof this.#r[0]==`string`&&!(this.#r.length===1&&Oe.has(this.#r[0]))){let n=De,a=t&&n.has(r.charAt(0))||r.startsWith(`\\.`)&&n.has(r.charAt(2))||r.startsWith(`\\.\\.`)&&n.has(r.charAt(4)),o=!t&&!e&&n.has(r.charAt(0));i=a?`(?!(?:^|/)\\.\\.?(?:$|/))`:o?Ee:``}let a=``;return this.isEnd()&&this.#e.#s&&this.#i?.type===`!`&&(a=`(?:$|\\/)`),[i+r+a,_e(r),this.#t=!!this.#t,this.#n]}let n=this.type===`*`||this.type===`+`,r=this.type===`!`?`(?:(?!(?:`:`(?:`,i=this.#S(t);if(this.isStart()&&this.isEnd()&&!i&&this.type!==`!`){let e=this.toString(),t=this;return t.#r=[e],t.type=null,t.#t=void 0,[e,_e(this.toString()),!1,!1]}let a=!n||e||t?``:this.#S(!0);a===i&&(a=``),a&&(i=`(?:${i})(?:${a})*?`);let o=``;if(this.type===`!`&&this.#u)o=(this.isStart()&&!t?Ee:``)+je;else{let n=this.type===`!`?`))`+(this.isStart()&&!t&&!e?Ee:``)+`[^/]*?)`:this.type===`@`?`)`:this.type===`?`?`)?`:this.type===`+`&&a?`)`:this.type===`*`&&a?`)?`:`)${this.type}`;o=r+i+n}return[o,_e(i),this.#t=!!this.#t,this.#n]}#x(){if(xe(this)){let e=0,t=!1;do{t=!0;for(let e=0;e<this.#r.length;e++){let n=this.#r[e];typeof n==`object`&&(n.#x(),this.#m(n)?(t=!1,this.#_(n,e)):this.#p(n)?(t=!1,this.#g(n,e)):this.#y(n)&&(t=!1,this.#b(n)))}}while(!t&&++e<10)}else for(let e of this.#r)typeof e==`object`&&e.#x();this.#l=void 0}#S(e){return this.#r.map(t=>{if(typeof t==`string`)throw Error(`string type in extglob ast??`);let[n,r,i,a]=t.toRegExpSource(e);return this.#n=this.#n||a,n}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join(`|`)}static#C(e,t,n=!1){let r=!1,i=``,a=!1,o=!1;for(let s=0;s<e.length;s++){let c=e.charAt(s);if(r){r=!1,i+=(ke.has(c)?`\\`:``)+c;continue}if(c===`*`){if(o)continue;o=!0,i+=n&&/^[*]+$/.test(e)?je:`[^/]*?`,t=!0;continue}else o=!1;if(c===`\\`){s===e.length-1?i+=`\\\\`:r=!0;continue}if(c===`[`){let[n,r,o,c]=ge(e,s);if(o){i+=n,a||=r,s+=o-1,t||=c;continue}}if(c===`?`){i+=`[^/]`,t=!0;continue}i+=Ae(c)}return[i,_e(e),!!t,a]}};ve=Ne;const Pe=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!1}={})=>n?t?e.replace(/[?*()[\]{}]/g,`[$&]`):e.replace(/[?*()[\]\\{}]/g,`\\$&`):t?e.replace(/[?*()[\]]/g,`[$&]`):e.replace(/[?*()[\]\\]/g,`\\$&`),Fe=(e,t,n={})=>(de(t),!n.nocomment&&t.charAt(0)===`#`?!1:new lt(t,n).match(e)),Ie=/^\*+([^+@!?\*\[\(]*)$/,Le=e=>t=>!t.startsWith(`.`)&&t.endsWith(e),Re=e=>t=>t.endsWith(e),ze=e=>(e=e.toLowerCase(),t=>!t.startsWith(`.`)&&t.toLowerCase().endsWith(e)),Be=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),Ve=/^\*+\.\*+$/,He=e=>!e.startsWith(`.`)&&e.includes(`.`),Ue=e=>e!==`.`&&e!==`..`&&e.includes(`.`),We=/^\.\*+$/,Ge=e=>e!==`.`&&e!==`..`&&e.startsWith(`.`),Ke=/^\*+$/,qe=e=>e.length!==0&&!e.startsWith(`.`),Je=e=>e.length!==0&&e!==`.`&&e!==`..`,Ye=/^\?+([^+@!?\*\[\(]*)?$/,Xe=([e,t=``])=>{let n=et([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},Ze=([e,t=``])=>{let n=tt([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},Qe=([e,t=``])=>{let n=tt([e]);return t?e=>n(e)&&e.endsWith(t):n},$e=([e,t=``])=>{let n=et([e]);return t?e=>n(e)&&e.endsWith(t):n},et=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(`.`)},tt=([e])=>{let t=e.length;return e=>e.length===t&&e!==`.`&&e!==`..`},nt=typeof process==`object`&&process?{}.__MINIMATCH_TESTING_PLATFORM__||process.platform:`posix`,rt={win32:{sep:`\\`},posix:{sep:`/`}};Fe.sep=nt===`win32`?rt.win32.sep:rt.posix.sep;const it=Symbol(`globstar **`);Fe.GLOBSTAR=it,Fe.filter=(e,t={})=>n=>Fe(n,e,t);const at=(e,t={})=>Object.assign({},e,t);Fe.defaults=e=>{if(!e||typeof e!=`object`||!Object.keys(e).length)return Fe;let t=Fe;return Object.assign((n,r,i={})=>t(n,r,at(e,i)),{Minimatch:class extends t.Minimatch{constructor(t,n={}){super(t,at(e,n))}static defaults(n){return t.defaults(at(e,n)).Minimatch}},AST:class extends t.AST{constructor(t,n,r={}){super(t,n,at(e,r))}static fromGlob(n,r={}){return t.AST.fromGlob(n,at(e,r))}},unescape:(n,r={})=>t.unescape(n,at(e,r)),escape:(n,r={})=>t.escape(n,at(e,r)),filter:(n,r={})=>t.filter(n,at(e,r)),defaults:n=>t.defaults(at(e,n)),makeRe:(n,r={})=>t.makeRe(n,at(e,r)),braceExpand:(n,r={})=>t.braceExpand(n,at(e,r)),match:(n,r,i={})=>t.match(n,r,at(e,i)),sep:t.sep,GLOBSTAR:it})};const ot=(e,t={})=>(de(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:ae(e,{max:t.braceExpandMax}));Fe.braceExpand=ot,Fe.makeRe=(e,t={})=>new lt(e,t).makeRe(),Fe.match=(e,t,n={})=>{let r=new lt(t,n);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};const st=/[?*]|[+@!]\(.*?\)|\[|\]/,ct=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`);var lt=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){de(e),t||={},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||nt,this.isWindows=this.platform===`win32`,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,`/`)),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot===void 0?!!(this.isWindows&&this.nocase):t.windowsNoMagicRoot,this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if(typeof t!=`string`)return!0;return!1}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)===`#`){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(e=>this.slashSplit(e));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let r=this.globParts.map((e,t,n)=>{if(this.isWindows&&this.windowsNoMagicRoot){let t=e[0]===``&&e[1]===``&&(e[2]===`?`||!st.test(e[2]))&&!st.test(e[3]),n=/^[a-z]:/i.test(e[0]);if(t)return[...e.slice(0,4),...e.slice(4).map(e=>this.parse(e))];if(n)return[e[0],...e.slice(1).map(e=>this.parse(e))]}return e.map(e=>this.parse(e))});if(this.debug(this.pattern,r),this.set=r.filter(e=>e.indexOf(!1)===-1),this.isWindows)for(let e=0;e<this.set.length;e++){let t=this.set[e];t[0]===``&&t[1]===``&&this.globParts[e][2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3])&&(t[2]=`?`)}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let t=0;t<e.length;t++)for(let n=0;n<e[t].length;n++)e[t][n]===`**`&&(e[t][n]=`*`);let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):e=t>=1?this.levelOneOptimize(e):this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(e=>{let t=-1;for(;(t=e.indexOf(`**`,t+1))!==-1;){let n=t;for(;e[n+1]===`**`;)n++;n!==t&&e.splice(t,n-t)}return e})}levelOneOptimize(e){return e.map(e=>(e=e.reduce((e,t)=>{let n=e[e.length-1];return t===`**`&&n===`**`?e:t===`..`&&n&&n!==`..`&&n!==`.`&&n!==`**`?(e.pop(),e):(e.push(t),e)},[]),e.length===0?[``]:e))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let n=1;n<e.length-1;n++){let r=e[n];n===1&&r===``&&e[0]===``||(r===`.`||r===``)&&(t=!0,e.splice(n,1),n--)}e[0]===`.`&&e.length===2&&(e[1]===`.`||e[1]===``)&&(t=!0,e.pop())}let n=0;for(;(n=e.indexOf(`..`,n+1))!==-1;){let r=e[n-1];r&&r!==`.`&&r!==`..`&&r!==`**`&&(t=!0,e.splice(n-1,2),n-=2)}}while(t);return e.length===0?[``]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let n of e){let r=-1;for(;(r=n.indexOf(`**`,r+1))!==-1;){let i=r;for(;n[i+1]===`**`;)i++;i>r&&n.splice(r+1,i-r);let a=n[r+1],o=n[r+2],s=n[r+3];if(a!==`..`||!o||o===`.`||o===`..`||!s||s===`.`||s===`..`)continue;t=!0,n.splice(r,1);let c=n.slice(0);c[r]=`**`,e.push(c),r--}if(!this.preserveMultipleSlashes){for(let e=1;e<n.length-1;e++){let r=n[e];e===1&&r===``&&n[0]===``||(r===`.`||r===``)&&(t=!0,n.splice(e,1),e--)}n[0]===`.`&&n.length===2&&(n[1]===`.`||n[1]===``)&&(t=!0,n.pop())}let i=0;for(;(i=n.indexOf(`..`,i+1))!==-1;){let e=n[i-1];if(e&&e!==`.`&&e!==`..`&&e!==`**`){t=!0;let e=i===1&&n[i+1]===`**`?[`.`]:[];n.splice(i-1,2,...e),n.length===0&&n.push(``),i-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let n=t+1;n<e.length;n++){let r=this.partsMatch(e[t],e[n],!this.preserveMultipleSlashes);if(r){e[t]=[],e[n]=r;break}}return e.filter(e=>e.length)}partsMatch(e,t,n=!1){let r=0,i=0,a=[],o=``;for(;r<e.length&&i<t.length;)if(e[r]===t[i])a.push(o===`b`?t[i]:e[r]),r++,i++;else if(n&&e[r]===`**`&&t[i]===e[r+1])a.push(e[r]),r++;else if(n&&t[i]===`**`&&e[r]===t[i+1])a.push(t[i]),i++;else if(e[r]===`*`&&t[i]&&(this.options.dot||!t[i].startsWith(`.`))&&t[i]!==`**`){if(o===`b`)return!1;o=`a`,a.push(e[r]),r++,i++}else if(t[i]===`*`&&e[r]&&(this.options.dot||!e[r].startsWith(`.`))&&e[r]!==`**`){if(o===`a`)return!1;o=`b`,a.push(t[i]),r++,i++}else return!1;return e.length===t.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,n=0;for(let r=0;r<e.length&&e.charAt(r)===`!`;r++)t=!t,n++;n&&(this.pattern=e.slice(n)),this.negate=t}matchOne(e,t,n=!1){let r=0,i=0;if(this.isWindows){let n=typeof e[0]==`string`&&/^[a-z]:$/i.test(e[0]),a=!n&&e[0]===``&&e[1]===``&&e[2]===`?`&&/^[a-z]:$/i.test(e[3]),o=typeof t[0]==`string`&&/^[a-z]:$/i.test(t[0]),s=!o&&t[0]===``&&t[1]===``&&t[2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3]),c=a?3:n?0:void 0,l=s?3:o?0:void 0;if(typeof c==`number`&&typeof l==`number`){let[n,a]=[e[c],t[l]];n.toLowerCase()===a.toLowerCase()&&(t[l]=n,i=l,r=c)}}let{optimizationLevel:a=1}=this.options;return a>=2&&(e=this.levelTwoFileOptimize(e)),t.includes(it)?this.#e(e,t,n,r,i):this.#n(e,t,n,r,i)}#e(e,t,n,r,i){let a=t.indexOf(it,i),o=t.lastIndexOf(it),[s,c,l]=n?[t.slice(i,a),t.slice(a+1),[]]:[t.slice(i,a),t.slice(a+1,o),t.slice(o+1)];if(s.length){let t=e.slice(r,r+s.length);if(!this.#n(t,s,n,0,0))return!1;r+=s.length,i+=s.length}let u=0;if(l.length){if(l.length+r>e.length)return!1;let t=e.length-l.length;if(this.#n(e,l,n,t,0))u=l.length;else{if(e[e.length-1]!==``||r+l.length===e.length||(t--,!this.#n(e,l,n,t,0)))return!1;u=l.length+1}}if(!c.length){let t=!!u;for(let n=r;n<e.length-u;n++){let r=String(e[n]);if(t=!0,r===`.`||r===`..`||!this.options.dot&&r.startsWith(`.`))return!1}return n||t}let d=[[[],0]],f=d[0],p=0,m=[0];for(let e of c)e===it?(m.push(p),f=[[],0],d.push(f)):(f[0].push(e),p++);let h=d.length-1,g=e.length-u;for(let e of d)e[1]=g-(m[h--]+e[0].length);return!!this.#t(e,d,r,0,n,0,!!u)}#t(e,t,n,r,i,a,o){let s=t[r];if(!s){for(let t=n;t<e.length;t++){o=!0;let n=e[t];if(n===`.`||n===`..`||!this.options.dot&&n.startsWith(`.`))return!1}return o}let[c,l]=s;for(;n<=l;){if(this.#n(e.slice(0,n+c.length),c,i,n,0)&&a<this.maxGlobstarRecursion){let s=this.#t(e,t,n+c.length,r+1,i,a+1,o);if(s!==!1)return s}let s=e[n];if(s===`.`||s===`..`||!this.options.dot&&s.startsWith(`.`))return!1;n++}return i||null}#n(e,t,n,r,i){let a,o,s,c;for(a=r,o=i,c=e.length,s=t.length;a<c&&o<s;a++,o++){this.debug(`matchOne loop`);let n=t[o],r=e[a];if(this.debug(t,n,r),n===!1||n===it)return!1;let i;if(typeof n==`string`?(i=r===n,this.debug(`string match`,n,r,i)):(i=n.test(r),this.debug(`pattern match`,n,r,i)),!i)return!1}if(a===c&&o===s)return!0;if(a===c)return n;if(o===s)return a===c-1&&e[a]===``;throw Error(`wtf?`)}braceExpand(){return ot(this.pattern,this.options)}parse(e){de(e);let t=this.options;if(e===`**`)return it;if(e===``)return``;let n,r=null;(n=e.match(Ke))?r=t.dot?Je:qe:(n=e.match(Ie))?r=(t.nocase?t.dot?Be:ze:t.dot?Re:Le)(n[1]):(n=e.match(Ye))?r=(t.nocase?t.dot?Ze:Xe:t.dot?Qe:$e)(n):(n=e.match(Ve))?r=t.dot?Ue:He:(n=e.match(We))&&(r=Ge);let i=Ne.fromGlob(e,this.options).toMMPattern();return r&&typeof i==`object`&&Reflect.defineProperty(i,"test",{value:r}),i}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,n=t.noglobstar?`[^/]*?`:t.dot?`(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?`:`(?:(?!(?:\\/|^)\\.).)*?`,r=new Set(t.nocase?[`i`]:[]),i=e.map(e=>{let t=e.map(e=>{if(e instanceof RegExp)for(let t of e.flags.split(``))r.add(t);return typeof e==`string`?ct(e):e===it?it:e._src});t.forEach((e,r)=>{let i=t[r+1],a=t[r-1];e!==it||a===it||(a===void 0?i!==void 0&&i!==it?t[r+1]=`(?:\\/|`+n+`\\/)?`+i:t[r]=n:i===void 0?t[r-1]=a+`(?:\\/|\\/`+n+`)?`:i!==it&&(t[r-1]=a+`(?:\\/|\\/`+n+`\\/)`+i,t[r+1]=it))});let i=t.filter(e=>e!==it);if(this.partial&&i.length>=1){let e=[];for(let t=1;t<=i.length;t++)e.push(i.slice(0,t).join(`/`));return`(?:`+e.join(`|`)+`)`}return i.join(`/`)}).join(`|`),[a,o]=e.length>1?[`(?:`,`)`]:[``,``];i=`^`+a+i+o+`$`,this.partial&&(i=`^(?:\\/|`+a+i.slice(1,-1)+o+`)$`),this.negate&&(i=`^(?!`+i+`).+$`);try{this.regexp=new RegExp(i,[...r].join(``))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split(`/`):this.isWindows&&/^\/\/[^\/]+/.test(e)?[``,...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug(`match`,e,this.pattern),this.comment)return!1;if(this.empty)return e===``;if(e===`/`&&t)return!0;let n=this.options;this.isWindows&&(e=e.split(`\\`).join(`/`));let r=this.slashSplit(e);this.debug(this.pattern,`split`,r);let i=this.set;this.debug(this.pattern,`set`,i);let a=r[r.length-1];if(!a)for(let e=r.length-2;!a&&e>=0;e--)a=r[e];for(let e=0;e<i.length;e++){let o=i[e],s=r;if(n.matchBase&&o.length===1&&(s=[a]),this.matchOne(s,o,t))return n.flipNegate?!0:!this.negate}return!n.flipNegate&&this.negate}static defaults(e){return Fe.defaults(e).Minimatch}};Fe.AST=Ne,Fe.Minimatch=lt,Fe.escape=Pe,Fe.unescape=_e;const ut={};function dt(){throw Error(`gunzipSync is not available in the browser`)}function ft(){throw Error(`gzipSync is not available in the browser`)}var pt=class{diff(e,t,n={}){let r;typeof n==`function`?(r=n,n={}):`callback`in n&&(r=n.callback);let i=this.castInput(e,n),a=this.castInput(t,n),o=this.removeEmpty(this.tokenize(i,n)),s=this.removeEmpty(this.tokenize(a,n));return this.diffWithOptionsObj(o,s,n,r)}diffWithOptionsObj(e,t,n,r){let i=e=>{if(e=this.postProcess(e,n),r){setTimeout(function(){r(e)},0);return}else return e},a=t.length,o=e.length,s=1,c=a+o;n.maxEditLength!=null&&(c=Math.min(c,n.maxEditLength));let l=n.timeout??1/0,u=Date.now()+l,d=[{oldPos:-1,lastComponent:void 0}],f=this.extractCommon(d[0],t,e,0,n);if(d[0].oldPos+1>=o&&f+1>=a)return i(this.buildValues(d[0].lastComponent,t,e));let p=-1/0,m=1/0,h=()=>{for(let r=Math.max(p,-s);r<=Math.min(m,s);r+=2){let s,c=d[r-1],l=d[r+1];c&&(d[r-1]=void 0);let u=!1;if(l){let e=l.oldPos-r;u=l&&0<=e&&e<a}let h=c&&c.oldPos+1<o;if(!u&&!h){d[r]=void 0;continue}if(s=!h||u&&c.oldPos<l.oldPos?this.addToPath(l,!0,!1,0,n):this.addToPath(c,!1,!0,1,n),f=this.extractCommon(s,t,e,r,n),s.oldPos+1>=o&&f+1>=a)return i(this.buildValues(s.lastComponent,t,e))||!0;d[r]=s,s.oldPos+1>=o&&(m=Math.min(m,r-1)),f+1>=a&&(p=Math.max(p,r+1))}s++};if(r)(function e(){setTimeout(function(){if(s>c||Date.now()>u)return r(void 0);h()||e()},0)})();else for(;s<=c&&Date.now()<=u;){let e=h();if(e)return e}}addToPath(e,t,n,r,i){let a=e.lastComponent;return a&&!i.oneChangePerToken&&a.added===t&&a.removed===n?{oldPos:e.oldPos+r,lastComponent:{count:a.count+1,added:t,removed:n,previousComponent:a.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:t,removed:n,previousComponent:a}}}extractCommon(e,t,n,r,i){let a=t.length,o=n.length,s=e.oldPos,c=s-r,l=0;for(;c+1<a&&s+1<o&&this.equals(n[s+1],t[c+1],i);)c++,s++,l++,i.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return l&&!i.oneChangePerToken&&(e.lastComponent={count:l,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=s,c}equals(e,t,n){return n.comparator?n.comparator(e,t):e===t||!!n.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){let t=[];for(let n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join(``)}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,n){let r=[],i;for(;e;)r.push(e),i=e.previousComponent,delete e.previousComponent,e=i;r.reverse();let a=r.length,o=0,s=0,c=0;for(;o<a;o++){let e=r[o];if(e.removed)e.value=this.join(n.slice(c,c+e.count)),c+=e.count;else{if(!e.added&&this.useLongestToken){let r=t.slice(s,s+e.count);r=r.map(function(e,t){let r=n[c+t];return r.length>e.length?r:e}),e.value=this.join(r)}else e.value=this.join(t.slice(s,s+e.count));s+=e.count,e.added||(c+=e.count)}}return r}};new class extends pt{};function mt(e,t){let n;for(n=0;n<e.length&&n<t.length;n++)if(e[n]!=t[n])return e.slice(0,n);return e.slice(0,n)}function ht(e,t){let n;if(!e||!t||e[e.length-1]!=t[t.length-1])return``;for(n=0;n<e.length&&n<t.length;n++)if(e[e.length-(n+1)]!=t[t.length-(n+1)])return e.slice(-n);return e.slice(-n)}function gt(e,t,n){if(e.slice(0,t.length)!=t)throw Error(`string ${JSON.stringify(e)} doesn't start with prefix ${JSON.stringify(t)}; this is a bug`);return n+e.slice(t.length)}function _t(e,t,n){if(!t)return e+n;if(e.slice(-t.length)!=t)throw Error(`string ${JSON.stringify(e)} doesn't end with suffix ${JSON.stringify(t)}; this is a bug`);return e.slice(0,-t.length)+n}function vt(e,t){return gt(e,t,``)}function yt(e,t){return _t(e,t,``)}function bt(e,t){return t.slice(0,xt(e,t))}function xt(e,t){let n=0;e.length>t.length&&(n=e.length-t.length);let r=t.length;e.length<t.length&&(r=e.length);let i=Array(r),a=0;i[0]=0;for(let e=1;e<r;e++){for(t[e]==t[a]?i[e]=i[a]:i[e]=a;a>0&&t[e]!=t[a];)a=i[a];t[e]==t[a]&&a++}a=0;for(let r=n;r<e.length;r++){for(;a>0&&e[r]!=t[a];)a=i[a];e[r]==t[a]&&a++}return a}function St(e){let t;for(t=e.length-1;t>=0&&e[t].match(/\s/);t--);return e.substring(t+1)}function Ct(e){let t=e.match(/^\s*/);return t?t[0]:``}const wt=`a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}`,Tt=RegExp(`[${wt}]+|\\s+|[^${wt}]`,`ug`);new class extends pt{equals(e,t,n){return n.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()}tokenize(e,t={}){let n;if(t.intlSegmenter){let r=t.intlSegmenter;if(r.resolvedOptions().granularity!=`word`)throw Error(`The segmenter passed must have a granularity of "word"`);n=[];for(let t of Array.from(r.segment(e))){let e=t.segment;n.length&&/\s/.test(n[n.length-1])&&/\s/.test(e)?n[n.length-1]+=e:n.push(e)}}else n=e.match(Tt)||[];let r=[],i=null;return n.forEach(e=>{/\s/.test(e)?i==null?r.push(e):r.push(r.pop()+e):i!=null&&/\s/.test(i)?r[r.length-1]==i?r.push(r.pop()+e):r.push(i+e):r.push(e),i=e}),r}join(e){return e.map((e,t)=>t==0?e:e.replace(/^\s+/,``)).join(``)}postProcess(e,t){if(!e||t.oneChangePerToken)return e;let n=null,r=null,i=null;return e.forEach(e=>{e.added?r=e:e.removed?i=e:((r||i)&&Et(n,i,r,e),n=e,r=null,i=null)}),(r||i)&&Et(n,i,r,null),e}};function Et(e,t,n,r){if(t&&n){let i=Ct(t.value),a=St(t.value),o=Ct(n.value),s=St(n.value);if(e){let r=mt(i,o);e.value=_t(e.value,o,r),t.value=vt(t.value,r),n.value=vt(n.value,r)}if(r){let e=ht(a,s);r.value=gt(r.value,s,e),t.value=yt(t.value,e),n.value=yt(n.value,e)}}else if(n){if(e){let e=Ct(n.value);n.value=n.value.substring(e.length)}if(r){let e=Ct(r.value);r.value=r.value.substring(e.length)}}else if(e&&r){let n=Ct(r.value),i=Ct(t.value),a=St(t.value),o=mt(n,i);t.value=vt(t.value,o);let s=ht(vt(n,o),a);t.value=yt(t.value,s),r.value=gt(r.value,n,s),e.value=_t(e.value,n,n.slice(0,n.length-s.length))}else if(r){let e=Ct(r.value),n=bt(St(t.value),e);t.value=yt(t.value,n)}else if(e){let n=bt(St(e.value),Ct(t.value));t.value=vt(t.value,n)}}new class extends pt{tokenize(e){let t=RegExp(`(\\r?\\n)|[${wt}]+|[^\\S\\n\\r]+|[^${wt}]`,`ug`);return e.match(t)||[]}};const Dt=new class extends pt{constructor(){super(...arguments),this.tokenize=kt}equals(e,t,n){return n.ignoreWhitespace?((!n.newlineIsToken||!e.includes(`
2
+ `))&&(e=e.trim()),(!n.newlineIsToken||!t.includes(`
3
+ `))&&(t=t.trim())):n.ignoreNewlineAtEof&&!n.newlineIsToken&&(e.endsWith(`
4
+ `)&&(e=e.slice(0,-1)),t.endsWith(`
5
+ `)&&(t=t.slice(0,-1))),super.equals(e,t,n)}};function Ot(e,t,n){return Dt.diff(e,t,n)}function kt(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,`
6
+ `));let n=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(let e=0;e<r.length;e++){let i=r[e];e%2&&!t.newlineIsToken?n[n.length-1]+=i:n.push(i)}return n}function At(e){return e==`.`||e==`!`||e==`?`}new class extends pt{tokenize(e){let t=[],n=0;for(let r=0;r<e.length;r++){if(r==e.length-1){t.push(e.slice(n));break}if(At(e[r])&&e[r+1].match(/\s/)){for(t.push(e.slice(n,r+1)),r=n=r+1;e[r+1]?.match(/\s/);)r++;t.push(e.slice(n,r+1)),n=r+1}}return t}},new class extends pt{tokenize(e){return e.split(/([{}:;,]|\s+)/)}},new class extends pt{constructor(){super(...arguments),this.tokenize=kt}get useLongestToken(){return!0}castInput(e,t){let{undefinedReplacement:n,stringifyReplacer:r=(e,t)=>t===void 0?n:t}=t;return typeof e==`string`?e:JSON.stringify(jt(e,null,null,r),null,` `)}equals(e,t,n){return super.equals(e.replace(/,([\r\n])/g,`$1`),t.replace(/,([\r\n])/g,`$1`),n)}};function jt(e,t,n,r,i){t||=[],n||=[],r&&(e=r(i===void 0?``:i,e));let a;for(a=0;a<t.length;a+=1)if(t[a]===e)return n[a];let o;if(Object.prototype.toString.call(e)===`[object Array]`){for(t.push(e),o=Array(e.length),n.push(o),a=0;a<e.length;a+=1)o[a]=jt(e[a],t,n,r,String(a));return t.pop(),n.pop(),o}if(e&&e.toJSON&&(e=e.toJSON()),typeof e==`object`&&e){t.push(e),o={},n.push(o);let i=[],s;for(s in e)Object.prototype.hasOwnProperty.call(e,s)&&i.push(s);for(i.sort(),a=0;a<i.length;a+=1)s=i[a],o[s]=jt(e[s],t,n,r,s);t.pop(),n.pop()}else o=e;return o}new class extends pt{tokenize(e){return e.slice()}join(e){return e}removeEmpty(e){return e}};const Mt={includeIndex:!0,includeUnderline:!0,includeFileHeaders:!0};function Nt(e,t,n,r,i,a,o){let s;s=o?typeof o==`function`?{callback:o}:o:{},s.context===void 0&&(s.context=4);let c=s.context;if(s.newlineIsToken)throw Error(`newlineIsToken may not be used with patch-generation functions, only with diffing functions`);if(s.callback){let{callback:e}=s;Ot(n,r,Object.assign(Object.assign({},s),{callback:t=>{let n=l(t);e(n)}}))}else return l(Ot(n,r,s));function l(n){if(!n)return;n.push({value:``,lines:[]});function r(e){return e.map(function(e){return` `+e})}let o=[],s=0,l=0,u=[],d=1,f=1;for(let e=0;e<n.length;e++){let t=n[e],i=t.lines||It(t.value);if(t.lines=i,t.added||t.removed){if(!s){let t=n[e-1];s=d,l=f,t&&(u=c>0?r(t.lines.slice(-c)):[],s-=u.length,l-=u.length)}for(let e of i)u.push((t.added?`+`:`-`)+e);t.added?f+=i.length:d+=i.length}else{if(s)if(i.length<=c*2&&e<n.length-2)for(let e of r(i))u.push(e);else{let e=Math.min(i.length,c);for(let t of r(i.slice(0,e)))u.push(t);let t={oldStart:s,oldLines:d-s+e,newStart:l,newLines:f-l+e,lines:u};o.push(t),s=0,l=0,u=[]}d+=i.length,f+=i.length}}for(let e of o)for(let t=0;t<e.lines.length;t++)e.lines[t].endsWith(`
7
+ `)?e.lines[t]=e.lines[t].slice(0,-1):(e.lines.splice(t+1,0,`\`),t++);return{oldFileName:e,newFileName:t,oldHeader:i,newHeader:a,hunks:o}}}function Pt(e,t){if(t||=Mt,Array.isArray(e)){if(e.length>1&&!t.includeFileHeaders)throw Error(`Cannot omit file headers on a multi-file patch. (The result would be unparseable; how would a tool trying to apply the patch know which changes are to which file?)`);return e.map(e=>Pt(e,t)).join(`
8
+ `)}let n=[];t.includeIndex&&e.oldFileName==e.newFileName&&n.push(`Index: `+e.oldFileName),t.includeUnderline&&n.push(`===================================================================`),t.includeFileHeaders&&(n.push(`--- `+e.oldFileName+(e.oldHeader===void 0?``:` `+e.oldHeader)),n.push(`+++ `+e.newFileName+(e.newHeader===void 0?``:` `+e.newHeader)));for(let t=0;t<e.hunks.length;t++){let r=e.hunks[t];r.oldLines===0&&--r.oldStart,r.newLines===0&&--r.newStart,n.push(`@@ -`+r.oldStart+`,`+r.oldLines+` +`+r.newStart+`,`+r.newLines+` @@`);for(let e of r.lines)n.push(e)}return n.join(`
9
+ `)+`
10
+ `}function Ft(e,t,n,r,i,a,o){if(typeof o==`function`&&(o={callback:o}),o?.callback){let{callback:s}=o;Nt(e,t,n,r,i,a,Object.assign(Object.assign({},o),{callback:e=>{s(e?Pt(e,o.headerOptions):void 0)}}))}else{let s=Nt(e,t,n,r,i,a,o);return s?Pt(s,o?.headerOptions):void 0}}function It(e){let t=e.endsWith(`
11
+ `),n=e.split(`
12
+ `).map(e=>e+`
13
+ `);return t?n.pop():n.push(n.pop().slice(0,-1)),n}function Lt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}function Rt(e,t){return Array(t+1).join(e)}function zt(e){return e.replace(/^\n*/,``)}function Bt(e){for(var t=e.length;t>0&&e[t-1]===`
14
+ `;)t--;return e.substring(0,t)}function Vt(e){return Bt(zt(e))}var Ht=`ADDRESS.ARTICLE.ASIDE.AUDIO.BLOCKQUOTE.BODY.CANVAS.CENTER.DD.DIR.DIV.DL.DT.FIELDSET.FIGCAPTION.FIGURE.FOOTER.FORM.FRAMESET.H1.H2.H3.H4.H5.H6.HEADER.HGROUP.HR.HTML.ISINDEX.LI.MAIN.MENU.NAV.NOFRAMES.NOSCRIPT.OL.OUTPUT.P.PRE.SECTION.TABLE.TBODY.TD.TFOOT.TH.THEAD.TR.UL`.split(`.`);function Ut(e){return Xt(e,Ht)}var Wt=[`AREA`,`BASE`,`BR`,`COL`,`COMMAND`,`EMBED`,`HR`,`IMG`,`INPUT`,`KEYGEN`,`LINK`,`META`,`PARAM`,`SOURCE`,`TRACK`,`WBR`];function Gt(e){return Xt(e,Wt)}function Kt(e){return Zt(e,Wt)}var qt=[`A`,`TABLE`,`THEAD`,`TBODY`,`TFOOT`,`TH`,`TD`,`IFRAME`,`SCRIPT`,`AUDIO`,`VIDEO`];function Jt(e){return Xt(e,qt)}function Yt(e){return Zt(e,qt)}function Xt(e,t){return t.indexOf(e.nodeName)>=0}function Zt(e,t){return e.getElementsByTagName&&t.some(function(t){return e.getElementsByTagName(t).length})}var Qt={};Qt.paragraph={filter:`p`,replacement:function(e){return`
15
+
16
+ `+e+`
17
+
18
+ `}},Qt.lineBreak={filter:`br`,replacement:function(e,t,n){return n.br+`
19
+ `}},Qt.heading={filter:[`h1`,`h2`,`h3`,`h4`,`h5`,`h6`],replacement:function(e,t,n){var r=Number(t.nodeName.charAt(1));if(n.headingStyle===`setext`&&r<3){var i=Rt(r===1?`=`:`-`,e.length);return`
20
+
21
+ `+e+`
22
+ `+i+`
23
+
24
+ `}else return`
25
+
26
+ `+Rt(`#`,r)+` `+e+`
27
+
28
+ `}},Qt.blockquote={filter:`blockquote`,replacement:function(e){return e=Vt(e).replace(/^/gm,`> `),`
29
+
30
+ `+e+`
31
+
32
+ `}},Qt.list={filter:[`ul`,`ol`],replacement:function(e,t){var n=t.parentNode;return n.nodeName===`LI`&&n.lastElementChild===t?`
33
+ `+e:`
34
+
35
+ `+e+`
36
+
37
+ `}},Qt.listItem={filter:`li`,replacement:function(e,t,n){var r=n.bulletListMarker+` `,i=t.parentNode;if(i.nodeName===`OL`){var a=i.getAttribute(`start`),o=Array.prototype.indexOf.call(i.children,t);r=(a?Number(a)+o:o+1)+`. `}var s=/\n$/.test(e);return e=Vt(e)+(s?`
38
+ `:``),e=e.replace(/\n/gm,`
39
+ `+` `.repeat(r.length)),r+e+(t.nextSibling?`
40
+ `:``)}},Qt.indentedCodeBlock={filter:function(e,t){return t.codeBlockStyle===`indented`&&e.nodeName===`PRE`&&e.firstChild&&e.firstChild.nodeName===`CODE`},replacement:function(e,t,n){return`
41
+
42
+ `+t.firstChild.textContent.replace(/\n/g,`
43
+ `)+`
44
+
45
+ `}},Qt.fencedCodeBlock={filter:function(e,t){return t.codeBlockStyle===`fenced`&&e.nodeName===`PRE`&&e.firstChild&&e.firstChild.nodeName===`CODE`},replacement:function(e,t,n){for(var r=((t.firstChild.getAttribute(`class`)||``).match(/language-(\S+)/)||[null,``])[1],i=t.firstChild.textContent,a=n.fence.charAt(0),o=3,s=RegExp(`^`+a+`{3,}`,`gm`),c;c=s.exec(i);)c[0].length>=o&&(o=c[0].length+1);var l=Rt(a,o);return`
46
+
47
+ `+l+r+`
48
+ `+i.replace(/\n$/,``)+`
49
+ `+l+`
50
+
51
+ `}},Qt.horizontalRule={filter:`hr`,replacement:function(e,t,n){return`
52
+
53
+ `+n.hr+`
54
+
55
+ `}},Qt.inlineLink={filter:function(e,t){return t.linkStyle===`inlined`&&e.nodeName===`A`&&e.getAttribute(`href`)},replacement:function(e,t){var n=t.getAttribute(`href`);n&&=n.replace(/([()])/g,`\\$1`);var r=$t(t.getAttribute(`title`));return r&&=` "`+r.replace(/"/g,`\\"`)+`"`,`[`+e+`](`+n+r+`)`}},Qt.referenceLink={filter:function(e,t){return t.linkStyle===`referenced`&&e.nodeName===`A`&&e.getAttribute(`href`)},replacement:function(e,t,n){var r=t.getAttribute(`href`),i=$t(t.getAttribute(`title`));i&&=` "`+i+`"`;var a,o;switch(n.linkReferenceStyle){case`collapsed`:a=`[`+e+`][]`,o=`[`+e+`]: `+r+i;break;case`shortcut`:a=`[`+e+`]`,o=`[`+e+`]: `+r+i;break;default:var s=this.references.length+1;a=`[`+e+`][`+s+`]`,o=`[`+s+`]: `+r+i}return this.references.push(o),a},references:[],append:function(e){var t=``;return this.references.length&&(t=`
56
+
57
+ `+this.references.join(`
58
+ `)+`
59
+
60
+ `,this.references=[]),t}},Qt.emphasis={filter:[`em`,`i`],replacement:function(e,t,n){return e.trim()?n.emDelimiter+e+n.emDelimiter:``}},Qt.strong={filter:[`strong`,`b`],replacement:function(e,t,n){return e.trim()?n.strongDelimiter+e+n.strongDelimiter:``}},Qt.code={filter:function(e){var t=e.previousSibling||e.nextSibling,n=e.parentNode.nodeName===`PRE`&&!t;return e.nodeName===`CODE`&&!n},replacement:function(e){if(!e)return``;e=e.replace(/\r?\n|\r/g,` `);for(var t=/^`|^ .*?[^ ].* $|`$/.test(e)?` `:``,n="`",r=e.match(/`+/gm)||[];r.indexOf(n)!==-1;)n+="`";return n+t+e+t+n}},Qt.image={filter:`img`,replacement:function(e,t){var n=$t(t.getAttribute(`alt`)),r=t.getAttribute(`src`)||``,i=$t(t.getAttribute(`title`)),a=i?` "`+i+`"`:``;return r?`![`+n+`](`+r+a+`)`:``}};function $t(e){return e?e.replace(/(\n+\s*)+/g,`
61
+ `):``}function en(e){for(var t in this.options=e,this._keep=[],this._remove=[],this.blankRule={replacement:e.blankReplacement},this.keepReplacement=e.keepReplacement,this.defaultRule={replacement:e.defaultReplacement},this.array=[],e.rules)this.array.push(e.rules[t])}en.prototype={add:function(e,t){this.array.unshift(t)},keep:function(e){this._keep.unshift({filter:e,replacement:this.keepReplacement})},remove:function(e){this._remove.unshift({filter:e,replacement:function(){return``}})},forNode:function(e){if(e.isBlank)return this.blankRule;var t;return(t=tn(this.array,e,this.options))||(t=tn(this._keep,e,this.options))||(t=tn(this._remove,e,this.options))?t:this.defaultRule},forEach:function(e){for(var t=0;t<this.array.length;t++)e(this.array[t],t)}};function tn(e,t,n){for(var r=0;r<e.length;r++){var i=e[r];if(nn(i,t,n))return i}}function nn(e,t,n){var r=e.filter;if(typeof r==`string`){if(r===t.nodeName.toLowerCase())return!0}else if(Array.isArray(r)){if(r.indexOf(t.nodeName.toLowerCase())>-1)return!0}else if(typeof r==`function`){if(r.call(e,t,n))return!0}else throw TypeError("`filter` needs to be a string, array, or function")}function rn(e){var t=e.element,n=e.isBlock,r=e.isVoid,i=e.isPre||function(e){return e.nodeName===`PRE`};if(!(!t.firstChild||i(t))){for(var a=null,o=!1,s=null,c=on(s,t,i);c!==t;){if(c.nodeType===3||c.nodeType===4){var l=c.data.replace(/[ \r\n\t]+/g,` `);if((!a||/ $/.test(a.data))&&!o&&l[0]===` `&&(l=l.substr(1)),!l){c=an(c);continue}c.data=l,a=c}else if(c.nodeType===1)n(c)||c.nodeName===`BR`?(a&&(a.data=a.data.replace(/ $/,``)),a=null,o=!1):r(c)||i(c)?(a=null,o=!0):a&&(o=!1);else{c=an(c);continue}var u=on(s,c,i);s=c,c=u}a&&(a.data=a.data.replace(/ $/,``),a.data||an(a))}}function an(e){var t=e.nextSibling||e.parentNode;return e.parentNode.removeChild(e),t}function on(e,t,n){return e&&e.parentNode===t||n(t)?t.nextSibling||t.parentNode:t.firstChild||t.nextSibling||t.parentNode}var sn=typeof window<`u`?window:{};function cn(){var e=sn.DOMParser,t=!1;try{new e().parseFromString(``,`text/html`)&&(t=!0)}catch{}return t}function ln(){var e=function(){};return un()?e.prototype.parseFromString=function(e){var t=new window.ActiveXObject(`htmlfile`);return t.designMode=`on`,t.open(),t.write(e),t.close(),t}:e.prototype.parseFromString=function(e){var t=document.implementation.createHTMLDocument(``);return t.open(),t.write(e),t.close(),t},e}function un(){var e=!1;try{document.implementation.createHTMLDocument(``).open()}catch{sn.ActiveXObject&&(e=!0)}return e}var dn=cn()?sn.DOMParser:ln();function fn(e,t){var n=typeof e==`string`?mn().parseFromString(`<x-turndown id="turndown-root">`+e+`</x-turndown>`,`text/html`).getElementById(`turndown-root`):e.cloneNode(!0);return rn({element:n,isBlock:Ut,isVoid:Gt,isPre:t.preformattedCode?hn:null}),n}var pn;function mn(){return pn||=new dn,pn}function hn(e){return e.nodeName===`PRE`||e.nodeName===`CODE`}function gn(e,t){return e.isBlock=Ut(e),e.isCode=e.nodeName===`CODE`||e.parentNode.isCode,e.isBlank=_n(e),e.flankingWhitespace=vn(e,t),e}function _n(e){return!Gt(e)&&!Jt(e)&&/^\s*$/i.test(e.textContent)&&!Kt(e)&&!Yt(e)}function vn(e,t){if(e.isBlock||t.preformattedCode&&e.isCode)return{leading:``,trailing:``};var n=yn(e.textContent);return n.leadingAscii&&bn(`left`,e,t)&&(n.leading=n.leadingNonAscii),n.trailingAscii&&bn(`right`,e,t)&&(n.trailing=n.trailingNonAscii),{leading:n.leading,trailing:n.trailing}}function yn(e){var t=e.match(/^(([ \t\r\n]*)(\s*))(?:(?=\S)[\s\S]*\S)?((\s*?)([ \t\r\n]*))$/);return{leading:t[1],leadingAscii:t[2],leadingNonAscii:t[3],trailing:t[4],trailingNonAscii:t[5],trailingAscii:t[6]}}function bn(e,t,n){var r,i,a;return e===`left`?(r=t.previousSibling,i=/ $/):(r=t.nextSibling,i=/^ /),r&&(r.nodeType===3?a=i.test(r.nodeValue):n.preformattedCode&&r.nodeName===`CODE`?a=!1:r.nodeType===1&&!Ut(r)&&(a=i.test(r.textContent))),a}var xn=Array.prototype.reduce,Sn=[[/\\/g,`\\\\`],[/\*/g,`\\*`],[/^-/g,`\\-`],[/^\+ /g,`\\+ `],[/^(=+)/g,`\\$1`],[/^(#{1,6}) /g,`\\$1 `],[/`/g,"\\`"],[/^~~~/g,`\\~~~`],[/\[/g,`\\[`],[/\]/g,`\\]`],[/^>/g,`\\>`],[/_/g,`\\_`],[/^(\d+)\. /g,`$1\\. `]];function Cn(e){if(!(this instanceof Cn))return new Cn(e);var t={rules:Qt,headingStyle:`setext`,hr:`* * *`,bulletListMarker:`*`,codeBlockStyle:`indented`,fence:"```",emDelimiter:`_`,strongDelimiter:`**`,linkStyle:`inlined`,linkReferenceStyle:`full`,br:` `,preformattedCode:!1,blankReplacement:function(e,t){return t.isBlock?`
62
+
63
+ `:``},keepReplacement:function(e,t){return t.isBlock?`
64
+
65
+ `+t.outerHTML+`
66
+
67
+ `:t.outerHTML},defaultReplacement:function(e,t){return t.isBlock?`
68
+
69
+ `+e+`
70
+
71
+ `:e}};this.options=Lt({},t,e),this.rules=new en(this.options)}Cn.prototype={turndown:function(e){if(!On(e))throw TypeError(e+` is not a string, or an element/document/fragment node.`);if(e===``)return``;var t=wn.call(this,new fn(e,this.options));return Tn.call(this,t)},use:function(e){if(Array.isArray(e))for(var t=0;t<e.length;t++)this.use(e[t]);else if(typeof e==`function`)e(this);else throw TypeError(`plugin must be a Function or an Array of Functions`);return this},addRule:function(e,t){return this.rules.add(e,t),this},keep:function(e){return this.rules.keep(e),this},remove:function(e){return this.rules.remove(e),this},escape:function(e){return Sn.reduce(function(e,t){return e.replace(t[0],t[1])},e)}};function wn(e){var t=this;return xn.call(e.childNodes,function(e,n){n=new gn(n,t.options);var r=``;return n.nodeType===3?r=n.isCode?n.nodeValue:t.escape(n.nodeValue):n.nodeType===1&&(r=En.call(t,n)),Dn(e,r)},``)}function Tn(e){var t=this;return this.rules.forEach(function(n){typeof n.append==`function`&&(e=Dn(e,n.append(t.options)))}),e.replace(/^[\t\r\n]+/,``).replace(/[\t\r\n\s]+$/,``)}function En(e){var t=this.rules.forNode(e),n=wn.call(this,e),r=e.flankingWhitespace;return(r.leading||r.trailing)&&(n=n.trim()),r.leading+t.replacement(n,e,this.options)+r.trailing}function Dn(e,t){var n=Bt(e),r=zt(t),i=Math.max(e.length-n.length,t.length-r.length);return n+`
72
+
73
+ `.substring(0,i)+r}function On(e){return e!=null&&(typeof e==`string`||e.nodeType&&(e.nodeType===1||e.nodeType===9||e.nodeType===11))}var kn=e({Bash:()=>WI,InMemoryFs:()=>YA,MountableFs:()=>YI,NetworkAccessDeniedError:()=>qF,RedirectNotAllowedError:()=>YF,TooManyRedirectsError:()=>JF,defineCommand:()=>zA,getCommandNames:()=>MA,getNetworkCommandNames:()=>NA}),An=Object.create,jn=Object.defineProperty,Mn=Object.getOwnPropertyDescriptor,Nn=Object.getOwnPropertyNames,Pn=Object.getPrototypeOf,Fn=Object.prototype.hasOwnProperty,In=(e=>typeof t<`u`?t:typeof Proxy<`u`?new Proxy(e,{get:(e,n)=>(typeof t<`u`?t:e)[n]}):e)(function(e){if(typeof t<`u`)return t.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),x=(e,t)=>()=>(e&&(t=e(e=0)),t),Ln=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),S=(e,t)=>{for(var n in t)jn(e,n,{get:t[n],enumerable:!0})},Rn=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of Nn(t))!Fn.call(e,i)&&i!==n&&jn(e,i,{get:()=>t[i],enumerable:!(r=Mn(t,i))||r.enumerable});return e},zn=(e,t,n)=>(n=e==null?{}:An(Pn(e)),Rn(t||!e||!e.__esModule?jn(n,`default`,{value:e,enumerable:!0}):n,e));function Bn(){let e=[{prop:`Function`,target:globalThis,violationType:`function_constructor`,strategy:`throw`,reason:`Function constructor allows arbitrary code execution`},{prop:`eval`,target:globalThis,violationType:`eval`,strategy:`throw`,reason:`eval() allows arbitrary code execution`},{prop:`setTimeout`,target:globalThis,violationType:`setTimeout`,strategy:`throw`,reason:`setTimeout with string argument allows code execution`},{prop:`setInterval`,target:globalThis,violationType:`setInterval`,strategy:`throw`,reason:`setInterval with string argument allows code execution`},{prop:`setImmediate`,target:globalThis,violationType:`setImmediate`,strategy:`throw`,reason:`setImmediate could be used to escape sandbox context`},{prop:`env`,target:process,violationType:`process_env`,strategy:`throw`,reason:`process.env could leak sensitive environment variables`,allowedKeys:new Set([`NODE_V8_COVERAGE`,`NODE_DEBUG`,`NODE_DEBUG_NATIVE`,`NODE_COMPILE_CACHE`,`WATCH_REPORT_DEPENDENCIES`,`FORCE_COLOR`,`DEBUG`,`UNDICI_NO_FG`,`JEST_WORKER_ID`,`__MINIMATCH_TESTING_PLATFORM__`,`LOG_TOKENS`,`LOG_STREAM`])},{prop:`binding`,target:process,violationType:`process_binding`,strategy:`throw`,reason:`process.binding provides access to native Node.js modules`},{prop:`_linkedBinding`,target:process,violationType:`process_binding`,strategy:`throw`,reason:`process._linkedBinding provides access to native Node.js modules`},{prop:`dlopen`,target:process,violationType:`process_dlopen`,strategy:`throw`,reason:`process.dlopen allows loading native addons`},{prop:`getBuiltinModule`,target:process,violationType:`process_get_builtin_module`,strategy:`throw`,reason:`process.getBuiltinModule allows loading native Node.js modules (fs, child_process, vm)`},{prop:`exit`,target:process,violationType:`process_exit`,strategy:`throw`,reason:`process.exit could terminate the interpreter`},{prop:`abort`,target:process,violationType:`process_exit`,strategy:`throw`,reason:`process.abort could crash the interpreter`},{prop:`kill`,target:process,violationType:`process_kill`,strategy:`throw`,reason:`process.kill could signal other processes`},{prop:`setuid`,target:process,violationType:`process_setuid`,strategy:`throw`,reason:`process.setuid could escalate privileges`},{prop:`setgid`,target:process,violationType:`process_setuid`,strategy:`throw`,reason:`process.setgid could escalate privileges`},{prop:`seteuid`,target:process,violationType:`process_setuid`,strategy:`throw`,reason:`process.seteuid could escalate effective user privileges`},{prop:`setegid`,target:process,violationType:`process_setuid`,strategy:`throw`,reason:`process.setegid could escalate effective group privileges`},{prop:`initgroups`,target:process,violationType:`process_setuid`,strategy:`throw`,reason:`process.initgroups could modify supplementary group IDs`},{prop:`setgroups`,target:process,violationType:`process_setuid`,strategy:`throw`,reason:`process.setgroups could modify supplementary group IDs`},{prop:`umask`,target:process,violationType:`process_umask`,strategy:`throw`,reason:`process.umask could modify file creation permissions`},{prop:`argv`,target:process,violationType:`process_argv`,strategy:`throw`,reason:`process.argv may contain secrets in CLI arguments`},{prop:`cwd`,target:process,violationType:`process_chdir`,strategy:`throw`,reason:`process.cwd could disclose real host working directory path`},{prop:`chdir`,target:process,violationType:`process_chdir`,strategy:`throw`,reason:`process.chdir could confuse the interpreter's CWD tracking`},{prop:`report`,target:process,violationType:`process_report`,strategy:`throw`,reason:`process.report could disclose full environment, host paths, and system info`},{prop:`loadEnvFile`,target:process,violationType:`process_env`,strategy:`throw`,reason:`process.loadEnvFile could load env files bypassing env proxy`},{prop:`setUncaughtExceptionCaptureCallback`,target:process,violationType:`process_exception_handler`,strategy:`throw`,reason:`setUncaughtExceptionCaptureCallback could intercept security errors`},{prop:`send`,target:process,violationType:`process_send`,strategy:`throw`,reason:`process.send could communicate with parent process in IPC contexts`},{prop:`channel`,target:process,violationType:`process_channel`,strategy:`throw`,reason:`process.channel could access IPC channel to parent process`},{prop:`cpuUsage`,target:process,violationType:`process_timing`,strategy:`throw`,reason:`process.cpuUsage could enable timing side-channel attacks`},{prop:`memoryUsage`,target:process,violationType:`process_timing`,strategy:`throw`,reason:`process.memoryUsage could enable timing side-channel attacks`},{prop:`hrtime`,target:process,violationType:`process_timing`,strategy:`throw`,reason:`process.hrtime could enable timing side-channel attacks`},{prop:`WeakRef`,target:globalThis,violationType:`weak_ref`,strategy:`throw`,reason:`WeakRef could be used to leak references outside sandbox`},{prop:`FinalizationRegistry`,target:globalThis,violationType:`finalization_registry`,strategy:`throw`,reason:`FinalizationRegistry could be used to leak references outside sandbox`},{prop:`Reflect`,target:globalThis,violationType:`reflect`,strategy:`freeze`,reason:`Reflect provides introspection capabilities`},{prop:`Proxy`,target:globalThis,violationType:`proxy`,strategy:`throw`,reason:`Proxy allows intercepting and modifying object behavior`},{prop:`WebAssembly`,target:globalThis,violationType:`webassembly`,strategy:`throw`,reason:`WebAssembly allows executing arbitrary compiled code`},{prop:`SharedArrayBuffer`,target:globalThis,violationType:`shared_array_buffer`,strategy:`throw`,reason:`SharedArrayBuffer could enable side-channel communication or timing attacks`},{prop:`Atomics`,target:globalThis,violationType:`atomics`,strategy:`throw`,reason:`Atomics could enable side-channel communication or timing attacks`},{prop:`performance`,target:globalThis,violationType:`performance_timing`,strategy:`throw`,reason:`performance.now() provides sub-millisecond timing for side-channel attacks`},{prop:`stdout`,target:process,violationType:`process_stdout`,strategy:`throw`,reason:`process.stdout could bypass interpreter output to write to host stdout`},{prop:`stderr`,target:process,violationType:`process_stderr`,strategy:`throw`,reason:`process.stderr could bypass interpreter output to write to host stderr`},{prop:`__defineGetter__`,target:Object.prototype,violationType:`prototype_mutation`,strategy:`throw`,reason:`__defineGetter__ allows prototype pollution via getter injection`},{prop:`__defineSetter__`,target:Object.prototype,violationType:`prototype_mutation`,strategy:`throw`,reason:`__defineSetter__ allows prototype pollution via setter injection`},{prop:`__lookupGetter__`,target:Object.prototype,violationType:`prototype_mutation`,strategy:`throw`,reason:`__lookupGetter__ enables introspection for prototype pollution attacks`},{prop:`__lookupSetter__`,target:Object.prototype,violationType:`prototype_mutation`,strategy:`throw`,reason:`__lookupSetter__ enables introspection for prototype pollution attacks`},{prop:`JSON`,target:globalThis,violationType:`json_mutation`,strategy:`freeze`,reason:`Freeze JSON to prevent mutation of parsing/serialization`},{prop:`Math`,target:globalThis,violationType:`math_mutation`,strategy:`freeze`,reason:`Freeze Math to prevent mutation of math utilities`}];try{let t=Object.getPrototypeOf(async()=>{}).constructor;t&&t!==Function&&e.push({prop:`constructor`,target:Object.getPrototypeOf(async()=>{}),violationType:`async_function_constructor`,strategy:`throw`,reason:`AsyncFunction constructor allows arbitrary async code execution`})}catch{}try{let t=Object.getPrototypeOf(function*(){}).constructor;t&&t!==Function&&e.push({prop:`constructor`,target:Object.getPrototypeOf(function*(){}),violationType:`generator_function_constructor`,strategy:`throw`,reason:`GeneratorFunction constructor allows arbitrary generator code execution`})}catch{}try{let t=Object.getPrototypeOf(async function*(){}).constructor;t&&t!==Function&&t!==Object.getPrototypeOf(async()=>{}).constructor&&e.push({prop:`constructor`,target:Object.getPrototypeOf(async function*(){}),violationType:`async_generator_function_constructor`,strategy:`throw`,reason:`AsyncGeneratorFunction constructor allows arbitrary async generator code execution`})}catch{}return e.filter(e=>{try{return e.target[e.prop]!==void 0}catch{return!1}})}var Vn=x(()=>{});function Hn(){return typeof crypto<`u`&&crypto.randomUUID?crypto.randomUUID():`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===`x`?t:t&3|8).toString(16)})}function Un(e,t,...n){return Jn.run(e,()=>t(...n))}function Wn(e){return e===void 0?{...Xn,enabled:!1}:typeof e==`boolean`?{...Xn,enabled:e}:{...Xn,...e}}var Gn,Kn,qn,C,Jn,Yn,Xn,Zn,Qn=x(()=>{if(Vn(),Gn=!0,Kn=null,!Gn)try{let{AsyncLocalStorage:e}=In(`node:async_hooks`);Kn=e}catch{}qn=`
74
+
75
+ This is a defense-in-depth measure and indicates a bug in just-bash. Please report this at security@vercel.com`,C=class extends Error{violation;constructor(e,t){super(e+qn),this.violation=t,this.name=`SecurityViolationError`}},Jn=!Gn&&Kn?new Kn:null,Yn=1e3,Xn={enabled:!0,auditMode:!1},Zn=class e{static instance=null;static importHooksRegistered=!1;static trustedExecutionDepth=new Map;config;refCount=0;patchFailures=[];activeExecutionIds=new Set;contextCache=new Map;originalDescriptors=[];violations=[];activationTime=0;totalActiveTimeMs=0;constructor(e){this.config=e}static getInstance(t){let n=Wn(t);if(!e.instance)e.instance=new e(n);else{let t=e.instance.config;if(n.enabled!==t.enabled||n.auditMode!==t.auditMode)throw Error(`DefenseInDepthBox config conflict: requested {enabled: ${n.enabled}, auditMode: ${n.auditMode}} but singleton already has {enabled: ${t.enabled}, auditMode: ${t.auditMode}}. All Bash instances must use the same defense-in-depth security settings, or call DefenseInDepthBox.resetInstance() between incompatible configurations.`)}return e.instance}static resetInstance(){e.instance&&=(e.instance.forceDeactivate(),null),e.trustedExecutionDepth.clear()}static isInSandboxedContext(){return Jn?Jn?.getStore()?.sandboxActive===!0:!1}static getCurrentExecutionId(){if(Jn)return Jn?.getStore()?.executionId}static enterTrustedScope(t){let n=e.trustedExecutionDepth.get(t)??0;e.trustedExecutionDepth.set(t,n+1)}static leaveTrustedScope(t){let n=e.trustedExecutionDepth.get(t);if(n){if(n===1){e.trustedExecutionDepth.delete(t);return}e.trustedExecutionDepth.set(t,n-1)}}static isTrustedScopeActive(t){return t?(e.trustedExecutionDepth.get(t)??0)>0:!1}isExecutionIdActive(e){return this.activeExecutionIds.has(e)}getCachedContext(e){let t=this.contextCache.get(e);return t||(t={sandboxActive:!0,executionId:e},this.contextCache.set(e,t)),t}getPreferredActiveExecutionId(){if(this.activeExecutionIds.size!==0)for(let e of this.activeExecutionIds)return e}static bindCurrentContext(t){if(!Jn)return t;let n=e.instance,r=Jn.getStore(),i=r?.sandboxActive===!0?r.executionId:n?.getPreferredActiveExecutionId();if(!i)return t;let a=n?.getCachedContext(i)??{sandboxActive:!0,executionId:i};return((...n)=>{let r=e.instance;if(!(r&&!r.isExecutionIdActive(i)&&(r.recordViolation(`bound_callback_after_deactivate`,`bound callback`,`Bound callback blocked after originating execution was deactivated`),!r.config.auditMode)))return Un(a,t,...n)})}isEnabled(){return this.config.enabled===!0&&Jn!==null&&!Gn}updateConfig(e){this.config={...this.config,...e}}activate(){if(Gn||!this.config.enabled||!Jn){let e=Hn(),t=!1;return{run:e=>t?Promise.reject(Error(`DefenseInDepthBox handle is deactivated and cannot run new work`)):e(),deactivate:()=>{t=!0},executionId:e}}this.refCount++,this.refCount===1&&(this.applyPatches(),this.activationTime=Date.now());let e=Hn(),t=!1;return{run:n=>t?Promise.reject(Error(`DefenseInDepthBox handle is deactivated and cannot run new work`)):(this.activeExecutionIds.add(e),Jn.run({sandboxActive:!0,executionId:e},n)),deactivate:()=>{t||(t=!0,this.activeExecutionIds.delete(e),this.contextCache.delete(e),this.refCount--,this.refCount===0&&(this.restorePatches(),this.totalActiveTimeMs+=Date.now()-this.activationTime),this.refCount<0&&(this.refCount=0))},executionId:e}}forceDeactivate(){this.refCount>0&&(this.restorePatches(),this.totalActiveTimeMs+=Date.now()-this.activationTime),this.activeExecutionIds.clear(),this.contextCache.clear(),this.refCount=0}isActive(){return this.refCount>0}getStats(){return{violationsBlocked:this.violations.length,violations:[...this.violations],activeTimeMs:this.totalActiveTimeMs+(this.refCount>0?Date.now()-this.activationTime:0),refCount:this.refCount}}getPatchFailures(){return[...this.patchFailures]}clearViolations(){this.violations=[]}getPathForTarget(e,t){return e===globalThis?`globalThis.${t}`:e===process?`process.${t}`:e===Error?`Error.${t}`:e===Function.prototype?`Function.prototype.${t}`:e===Object.prototype?`Object.prototype.${t}`:`<object>.${t}`}static runTrusted(t){if(!Jn)return t();let n=Jn.getStore();if(!n)return t();let{executionId:r}=n;return Jn.run({...n,trusted:!0},()=>{e.enterTrustedScope(r);try{let n=t();return typeof n==`object`&&n&&`finally`in n&&typeof n.finally==`function`?n.finally(()=>{e.leaveTrustedScope(r)}):(e.leaveTrustedScope(r),n)}catch(t){throw e.leaveTrustedScope(r),t}})}static async runTrustedAsync(t){if(!Jn)return t();let n=Jn.getStore();if(!n)return t();let{executionId:r}=n;return Jn.run({...n,trusted:!0},async()=>{e.enterTrustedScope(r);try{return await t()}finally{e.leaveTrustedScope(r)}})}shouldBlock(){if(Gn||this.config.auditMode||!Jn)return!1;let t=Jn?.getStore();return!(t?.sandboxActive!==!0||t.trusted||e.isTrustedScopeActive(t.executionId))}recordViolation(e,t,n){let r={timestamp:Date.now(),type:e,message:n,path:t,stack:Error().stack,executionId:Jn?.getStore()?.executionId};if(this.violations.length<Yn&&this.violations.push(r),this.config.onViolation)try{this.config.onViolation(r)}catch(e){console.debug(`[DefenseInDepthBox] onViolation callback threw:`,e instanceof Error?e.message:e)}return r}createBlockingProxy(e,t,n){let r=this;return new Proxy(e,{apply(e,i,a){if(r.shouldBlock()){let e=`${t} is blocked during script execution`,i=r.recordViolation(n,t,e);throw new C(e,i)}return r.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&r.recordViolation(n,t,`${t} called (audit mode)`),Reflect.apply(e,i,a)},construct(e,i,a){if(r.shouldBlock()){let e=`${t} constructor is blocked during script execution`,i=r.recordViolation(n,t,e);throw new C(e,i)}return r.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&r.recordViolation(n,t,`${t} constructor called (audit mode)`),Reflect.construct(e,i,a)}})}createBlockingObjectProxy(e,t,n,r){let i=this;return new Proxy(e,{get(e,a,o){if(i.shouldBlock()){if(r&&typeof a==`string`&&r.has(a))return Reflect.get(e,a,o);let s=`${t}.${String(a)}`,c=`${s} is blocked during script execution`,l=i.recordViolation(n,s,c);throw new C(c,l)}if(i.config.auditMode&&Jn?.getStore()?.sandboxActive===!0){let e=`${t}.${String(a)}`;i.recordViolation(n,e,`${e} accessed (audit mode)`)}return Reflect.get(e,a,o)},set(e,r,a,o){if(i.shouldBlock()){let e=`${t}.${String(r)}`,a=`${e} modification is blocked during script execution`,o=i.recordViolation(n,e,a);throw new C(a,o)}return t===`process.env`&&r===`DEBUG`?Reflect.set(e,r,a):Reflect.set(e,r,a,o)},ownKeys(e){if(i.shouldBlock()){let e=`${t} enumeration is blocked during script execution`,r=i.recordViolation(n,t,e);throw new C(e,r)}return Reflect.ownKeys(e)},getOwnPropertyDescriptor(e,r){if(i.shouldBlock()){let e=`${t}.${String(r)}`,a=`${e} descriptor access is blocked during script execution`,o=i.recordViolation(n,e,a);throw new C(a,o)}return Reflect.getOwnPropertyDescriptor(e,r)},has(e,r){if(i.shouldBlock()){let e=`${t}.${String(r)}`,a=`${e} existence check is blocked during script execution`,o=i.recordViolation(n,e,a);throw new C(a,o)}return Reflect.has(e,r)},deleteProperty(e,r){if(i.shouldBlock()){let e=`${t}.${String(r)}`,a=`${e} deletion is blocked during script execution`,o=i.recordViolation(n,e,a);throw new C(a,o)}return Reflect.deleteProperty(e,r)},setPrototypeOf(e,r){if(i.shouldBlock()){let e=`${t} setPrototypeOf is blocked during script execution`,r=i.recordViolation(n,t,e);throw new C(e,r)}return Reflect.setPrototypeOf(e,r)},defineProperty(e,r,a){if(i.shouldBlock()){let e=`${t}.${String(r)}`,a=`${e} defineProperty is blocked during script execution`,o=i.recordViolation(n,e,a);throw new C(a,o)}return Reflect.defineProperty(e,r,a)}})}applyPatches(){this.patchFailures=[];let e=Bn(),t=new Set([`process_send`,`process_channel`,`process_stdout`,`process_stderr`]);for(let n of e)t.has(n.violationType)||this.applyPatch(n);this.protectConstructorChain(),this.protectErrorPrepareStackTrace(),this.protectPromiseThen(),this.protectDynamicImport(),this.protectModuleLoad(),this.protectModuleResolveFilename(),this.protectProcessMainModule(),this.protectProcessExecPath(),this.lockWellKnownSymbols(),this.protectProxyRevocable();let n=[`Function.prototype.constructor`,`Module._load`],r=this.patchFailures.filter(e=>n.includes(e));if(r.length>0)throw this.restorePatches(),Error(`DefenseInDepthBox: critical patches failed: ${r.join(`, `)}`)}protectConstructorChain(){this.patchPrototypeConstructor(Function.prototype,`Function.prototype.constructor`,`function_constructor`);try{let e=Object.getPrototypeOf(async()=>{}).constructor;e&&e!==Function&&this.patchPrototypeConstructor(e.prototype,`AsyncFunction.prototype.constructor`,`async_function_constructor`)}catch(e){this.patchFailures.push(`AsyncFunction.prototype.constructor`),console.debug(`[DefenseInDepthBox] Could not patch AsyncFunction.prototype.constructor:`,e instanceof Error?e.message:e)}try{let e=Object.getPrototypeOf(function*(){}).constructor;e&&e!==Function&&this.patchPrototypeConstructor(e.prototype,`GeneratorFunction.prototype.constructor`,`generator_function_constructor`)}catch(e){this.patchFailures.push(`GeneratorFunction.prototype.constructor`),console.debug(`[DefenseInDepthBox] Could not patch GeneratorFunction.prototype.constructor:`,e instanceof Error?e.message:e)}try{let e=Object.getPrototypeOf(async function*(){}).constructor,t=Object.getPrototypeOf(async()=>{}).constructor;e&&e!==Function&&e!==t&&this.patchPrototypeConstructor(e.prototype,`AsyncGeneratorFunction.prototype.constructor`,`async_generator_function_constructor`)}catch(e){this.patchFailures.push(`AsyncGeneratorFunction.prototype.constructor`),console.debug(`[DefenseInDepthBox] Could not patch AsyncGeneratorFunction.prototype.constructor:`,e instanceof Error?e.message:e)}}protectErrorPrepareStackTrace(){let e=this;try{let t=Object.getOwnPropertyDescriptor(Error,`prepareStackTrace`);this.originalDescriptors.push({target:Error,prop:`prepareStackTrace`,descriptor:t});let n=t?.value;Object.defineProperty(Error,"prepareStackTrace",{get(){return n},set(t){if(e.shouldBlock()){let t=`Error.prepareStackTrace modification is blocked during script execution`,n=e.recordViolation(`error_prepare_stack_trace`,`Error.prepareStackTrace`,t);throw new C(t,n)}e.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&e.recordViolation(`error_prepare_stack_trace`,`Error.prepareStackTrace`,`Error.prepareStackTrace set (audit mode)`),n=t},configurable:!0})}catch(e){this.patchFailures.push(`Error.prepareStackTrace`),console.debug(`[DefenseInDepthBox] Could not protect Error.prepareStackTrace:`,e instanceof Error?e.message:e)}}protectPromiseThen(){let e=this;try{let t=function(...e){return Jn.run(this.captured,()=>{if(!this.box.isExecutionIdActive(this.executionId)){if(this.box.recordViolation(`promise_then_after_deactivate`,`Promise.then`,`Promise.then callback is blocked after defense deactivation`),this.box.config.auditMode)return Reflect.apply(this.cb,void 0,e);if(this.kind===`fulfilled`)return e[0];throw e[0]}return Reflect.apply(this.cb,void 0,e)})},n=Object.getOwnPropertyDescriptor(Promise.prototype,`then`);this.originalDescriptors.push({target:Promise.prototype,prop:`then`,descriptor:n});let r=n?.value;if(typeof r!=`function`)return;Object.defineProperty(Promise.prototype,"then",{value:function(n,i){if(!Jn)return Reflect.apply(r,this,[n,i]);let a=Jn.getStore(),o=a?.sandboxActive===!0&&a.trusted!==!0?a.executionId:void 0;if(!o)return Reflect.apply(r,this,[n,i]);let s=e.getCachedContext(o),c=(n,r)=>typeof n==`function`?t.bind({box:e,executionId:o,captured:s,cb:n,kind:r}):n;return Reflect.apply(r,this,[c(n,`fulfilled`),c(i,`rejected`)])},writable:!0,configurable:!0})}catch(e){this.patchFailures.push(`Promise.prototype.then`),console.debug(`[DefenseInDepthBox] Could not protect Promise.prototype.then:`,e instanceof Error?e.message:e)}}patchPrototypeConstructor(e,t,n){let r=this;try{let i=Object.getOwnPropertyDescriptor(e,`constructor`);this.originalDescriptors.push({target:e,prop:`constructor`,descriptor:i});let a=i?.value;Object.defineProperty(e,"constructor",{get(){if(r.shouldBlock()){let e=`${t} access is blocked during script execution`,i=r.recordViolation(n,t,e);throw new C(e,i)}return r.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&r.recordViolation(n,t,`${t} accessed (audit mode)`),a},set(e){if(r.shouldBlock()){let e=`${t} modification is blocked during script execution`,i=r.recordViolation(n,t,e);throw new C(e,i)}Object.defineProperty(this,"constructor",{value:e,writable:!0,configurable:!0})},configurable:!0})}catch(e){this.patchFailures.push(t),console.debug(`[DefenseInDepthBox] Could not patch ${t}:`,e instanceof Error?e.message:e)}}protectProcessMainModule(){if(typeof process>`u`)return;let e=this;try{let t=Object.getOwnPropertyDescriptor(process,`mainModule`);this.originalDescriptors.push({target:process,prop:`mainModule`,descriptor:t});let n=t?.value;n!==void 0&&Object.defineProperty(process,"mainModule",{get(){if(e.shouldBlock()){let t=`process.mainModule access is blocked during script execution`,n=e.recordViolation(`process_main_module`,`process.mainModule`,t);throw new C(t,n)}return e.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&e.recordViolation(`process_main_module`,`process.mainModule`,`process.mainModule accessed (audit mode)`),n},set(t){if(e.shouldBlock()){let t=`process.mainModule modification is blocked during script execution`,n=e.recordViolation(`process_main_module`,`process.mainModule`,t);throw new C(t,n)}Object.defineProperty(process,"mainModule",{value:t,writable:!0,configurable:!0})},configurable:!0})}catch(e){this.patchFailures.push(`process.mainModule`),console.debug(`[DefenseInDepthBox] Could not protect process.mainModule:`,e instanceof Error?e.message:e)}}protectProcessExecPath(){if(typeof process>`u`)return;let e=this;try{let t=Object.getOwnPropertyDescriptor(process,`execPath`);this.originalDescriptors.push({target:process,prop:`execPath`,descriptor:t});let n=t?.value??process.execPath;Object.defineProperty(process,"execPath",{get(){if(e.shouldBlock()){let t=`process.execPath access is blocked during script execution`,n=e.recordViolation(`process_exec_path`,`process.execPath`,t);throw new C(t,n)}return e.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&e.recordViolation(`process_exec_path`,`process.execPath`,`process.execPath accessed (audit mode)`),n},set(t){if(e.shouldBlock()){let t=`process.execPath modification is blocked during script execution`,n=e.recordViolation(`process_exec_path`,`process.execPath`,t);throw new C(t,n)}Object.defineProperty(process,"execPath",{value:t,writable:!0,configurable:!0})},configurable:!0})}catch(e){this.patchFailures.push(`process.execPath`),console.debug(`[DefenseInDepthBox] Could not protect process.execPath:`,e instanceof Error?e.message:e)}}lockWellKnownSymbols(){let e=(e,t)=>{try{let n=Object.getOwnPropertyDescriptor(e,t);if(n?.configurable){if(`value`in n){Object.defineProperty(e,t,{...n,configurable:!1,writable:!1});return}Object.defineProperty(e,t,{...n,configurable:!1})}}catch{}};for(let t of[Array,Map,Set,RegExp,Promise])e(t,Symbol.species);for(let t of[Array.prototype,String.prototype,Map.prototype,Set.prototype])e(t,Symbol.iterator);e(Symbol.prototype,Symbol.toPrimitive),e(Date.prototype,Symbol.toPrimitive);for(let t of[Symbol.match,Symbol.matchAll,Symbol.replace,Symbol.search,Symbol.split])e(RegExp.prototype,t);e(Function.prototype,Symbol.hasInstance),e(Array.prototype,Symbol.unscopables);for(let t of[Map.prototype,Set.prototype,Promise.prototype,ArrayBuffer.prototype])e(t,Symbol.toStringTag);try{let e=Object.getOwnPropertyDescriptor(Error,`stackTraceLimit`);this.originalDescriptors.push({target:Error,prop:`stackTraceLimit`,descriptor:e}),Object.defineProperty(Error,"stackTraceLimit",{value:Error.stackTraceLimit,writable:!1,configurable:!0})}catch{}}protectProxyRevocable(){let e=this;try{let t=Proxy.revocable;if(typeof t!=`function`)return;let n=Object.getOwnPropertyDescriptor(Proxy,`revocable`);this.originalDescriptors.push({target:Proxy,prop:`revocable`,descriptor:n}),Object.defineProperty(Proxy,"revocable",{value:function(n,r){if(e.shouldBlock()){let t=`Proxy.revocable is blocked during script execution`,n=e.recordViolation(`proxy`,`Proxy.revocable`,t);throw new C(t,n)}return e.config.auditMode&&Jn?.getStore()?.sandboxActive===!0&&e.recordViolation(`proxy`,`Proxy.revocable`,`Proxy.revocable called (audit mode)`),t(n,r)},writable:!1,configurable:!0})}catch(e){this.patchFailures.push(`Proxy.revocable`),console.debug(`[DefenseInDepthBox] Could not protect Proxy.revocable:`,e instanceof Error?e.message:e)}}protectDynamicImport(){if(!(Gn||e.importHooksRegistered))try{let t=this,n=In(`node:module`),r=new Set;for(let e of n.builtinModules??[]){let t=e.startsWith(`node:`)?e.slice(5):e;r.add(t);let n=t.indexOf(`/`);n>0&&r.add(t.slice(0,n))}let i=e=>{if(e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`/`)||e.startsWith(`file:`)||e.startsWith(`data:`)||e.startsWith(`blob:`)||e.startsWith(`http:`)||e.startsWith(`https:`))return!1;let t=e.startsWith(`node:`)?e.slice(5):e;if(!t)return!1;if(typeof n.isBuiltin==`function`&&n.isBuiltin(t)||r.has(t))return!0;let i=t.indexOf(`/`);return i>0&&r.has(t.slice(0,i))},a=()=>{let n=Jn?.getStore();return t.config.auditMode===!0&&n?.sandboxActive===!0&&n.trusted!==!0&&!e.isTrustedScopeActive(n.executionId)};if(typeof n.registerHooks==`function`){n.registerHooks({resolve(e,n,r){if(e.startsWith(`data:`)||e.startsWith(`blob:`))throw Error(`dynamic import of ${e.startsWith(`data:`)?`data:`:`blob:`} URLs is blocked by defense-in-depth`);if(i(e)){let n=`import(${e})`,r=`dynamic import of Node.js builtin '${e}' is blocked during script execution`;if(t.shouldBlock()){let e=t.recordViolation(`dynamic_import_builtin`,n,r);throw new C(r,e)}a()&&t.recordViolation(`dynamic_import_builtin`,n,`dynamic import of Node.js builtin '${e}' called (audit mode)`)}return r(e,n)}}),e.importHooksRegistered=!0;return}if(typeof n.register==`function`){let t=[`export async function resolve(specifier, context, nextResolve) {`,` if (specifier.startsWith("data:") || specifier.startsWith("blob:")) {`,` throw new Error("dynamic import of " + (specifier.startsWith("data:") ? "data:" : "blob:") + " URLs is blocked by defense-in-depth");`,` }`,` return nextResolve(specifier, context);`,`}`].join(`
76
+ `);n.register(`data:text/javascript,${encodeURIComponent(t)}`),e.importHooksRegistered=!0}}catch(e){console.debug(`[DefenseInDepthBox] Could not register import() hooks:`,e instanceof Error?e.message:e)}}protectModuleLoad(){if(!Gn)try{let e=null;if(typeof process<`u`){let t=process.mainModule;t&&typeof t==`object`&&(e=t.constructor)}if(!e&&typeof In<`u`&&typeof In.main<`u`&&(e=In.main.constructor),!e||typeof e._load!=`function`)return;let t=e._load,n=Object.getOwnPropertyDescriptor(e,`_load`);this.originalDescriptors.push({target:e,prop:`_load`,descriptor:n});let r=this.createBlockingProxy(t,`Module._load`,`module_load`);Object.defineProperty(e,"_load",{value:r,writable:!0,configurable:!0})}catch(e){this.patchFailures.push(`Module._load`),console.debug(`[DefenseInDepthBox] Could not protect Module._load:`,e instanceof Error?e.message:e)}}protectModuleResolveFilename(){if(!Gn)try{let e=null;if(typeof process<`u`){let t=process.mainModule;t&&typeof t==`object`&&(e=t.constructor)}if(!e&&typeof In<`u`&&typeof In.main<`u`&&(e=In.main.constructor),!e||typeof e._resolveFilename!=`function`)return;let t=e._resolveFilename,n=Object.getOwnPropertyDescriptor(e,`_resolveFilename`);this.originalDescriptors.push({target:e,prop:`_resolveFilename`,descriptor:n});let r=this.createBlockingProxy(t,`Module._resolveFilename`,`module_resolve_filename`);Object.defineProperty(e,"_resolveFilename",{value:r,writable:!0,configurable:!0})}catch(e){this.patchFailures.push(`Module._resolveFilename`),console.debug(`[DefenseInDepthBox] Could not protect Module._resolveFilename:`,e instanceof Error?e.message:e)}}applyPatch(e){let{target:t,prop:n,violationType:r,strategy:i}=e;try{let a=t[n];if(a===void 0)return;let o=Object.getOwnPropertyDescriptor(t,n);if(this.originalDescriptors.push({target:t,prop:n,descriptor:o}),i===`freeze`)typeof a==`object`&&a&&Object.freeze(a);else{let i=this.getPathForTarget(t,n),o=typeof a==`function`?this.createBlockingProxy(a,i,r):this.createBlockingObjectProxy(a,i,r,e.allowedKeys);Object.defineProperty(t,n,{value:o,writable:!0,configurable:!0})}}catch(e){let r=this.getPathForTarget(t,n);this.patchFailures.push(r),console.debug(`[DefenseInDepthBox] Could not patch ${r}:`,e instanceof Error?e.message:e)}}restorePatches(){for(let e=this.originalDescriptors.length-1;e>=0;e--){let{target:t,prop:n,descriptor:r}=this.originalDescriptors[e];try{r?Object.defineProperty(t,n,r):delete t[n]}catch(e){let r=this.getPathForTarget(t,n);console.debug(`[DefenseInDepthBox] Could not restore ${r}:`,e instanceof Error?e.message:e)}}this.originalDescriptors=[]}}});function $n(e){return typeof e==`function`?Zn.bindCurrentContext(e):e}var er,tr,nr,rr,ir=x(()=>{Qn(),er=globalThis.setTimeout.bind(globalThis),tr=globalThis.clearTimeout.bind(globalThis),globalThis.setInterval.bind(globalThis),globalThis.clearInterval.bind(globalThis),nr=((e,t,...n)=>er($n(e),t,...n)),rr=tr}),ar={};S(ar,{echoCommand:()=>sr,flagsForFuzzing:()=>cr});function or(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`\\`){if(n+1>=e.length){t+=`\\`;break}let r=e[n+1];switch(r){case`\\`:t+=`\\`,n+=2;break;case`n`:t+=`
77
+ `,n+=2;break;case`t`:t+=` `,n+=2;break;case`r`:t+=`\r`,n+=2;break;case`a`:t+=`\x07`,n+=2;break;case`b`:t+=`\b`,n+=2;break;case`f`:t+=`\f`,n+=2;break;case`v`:t+=`\v`,n+=2;break;case`e`:case`E`:t+=`\x1B`,n+=2;break;case`c`:return{output:t,stop:!0};case`0`:{let r=``,i=n+2;for(;i<e.length&&i<n+5&&/[0-7]/.test(e[i]);)r+=e[i],i++;if(r.length===0)t+=`\0`;else{let e=parseInt(r,8)%256;t+=String.fromCharCode(e)}n=i;break}case`x`:{let r=``,i=n+2;for(;i<e.length&&i<n+4&&/[0-9a-fA-F]/.test(e[i]);)r+=e[i],i++;if(r.length===0)t+=`\\x`,n+=2;else{let e=parseInt(r,16);t+=String.fromCharCode(e),n=i}break}case`u`:{let r=``,i=n+2;for(;i<e.length&&i<n+6&&/[0-9a-fA-F]/.test(e[i]);)r+=e[i],i++;if(r.length===0)t+=`\\u`,n+=2;else{let e=parseInt(r,16);t+=String.fromCodePoint(e),n=i}break}case`U`:{let r=``,i=n+2;for(;i<e.length&&i<n+10&&/[0-9a-fA-F]/.test(e[i]);)r+=e[i],i++;if(r.length===0)t+=`\\U`,n+=2;else{let e=parseInt(r,16);try{t+=String.fromCodePoint(e)}catch{t+=`\\U${r}`}n=i}break}default:t+=`\\${r}`,n+=2}}else t+=e[n],n++;return{output:t,stop:!1}}var sr,cr,lr=x(()=>{sr={name:`echo`,async execute(e,t){let n=!1,r=t.xpgEcho??!1,i=0;for(;i<e.length;){let t=e[i];if(t===`-n`)n=!0,i++;else if(t===`-e`)r=!0,i++;else if(t===`-E`)r=!1,i++;else if(t===`-ne`||t===`-en`)n=!0,r=!0,i++;else break}let a=e.slice(i).join(` `);if(r){let e=or(a);if(a=e.output,e.stop)return{stdout:a,stderr:``,exitCode:0}}return n||(a+=`
78
+ `),{stdout:a,stderr:``,exitCode:0}}},cr={name:`echo`,flags:[{flag:`-n`,type:`boolean`},{flag:`-e`,type:`boolean`},{flag:`-E`,type:`boolean`}],stdinType:`none`,needsArgs:!0}});function ur(e){let t=e;if(!t)return t;let n=!1;for(let e=0;e<t.length;e++){let r=t.charCodeAt(e);if(r>255)return t;r>127&&(n=!0)}if(!n)return t;let r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);try{return _r.decode(r)}catch{return t}}function dr(e){if(!e)return e;let t=vr.encode(e),n=``;for(let e=0;e<t.length;e++)n+=String.fromCharCode(t[e]);return n}function fr(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}async function pr(e,t){return typeof e.readFileBytes==`function`?e.readFileBytes(t):fr(await e.readFileBuffer(t))}function mr(e){return e.stdoutKind?e.stdoutKind:e.stdoutEncoding===`binary`?`bytes`:`text`}function hr(e){return mr(e)===`bytes`?e.stdout:dr(e.stdout)}function gr(e){return mr(e)===`bytes`?ur(e.stdout):e.stdout}var _r,vr,yr,w=x(()=>{_r=new TextDecoder(`utf-8`,{fatal:!0}),vr=new TextEncoder,yr=``});function T(e){let t=`${e.name} - ${e.summary}
79
+
80
+ `;if(t+=`Usage: ${e.usage}
81
+ `,e.description){if(t+=`
82
+ Description:
83
+ `,typeof e.description==`string`)for(let n of e.description.split(`
84
+ `))t+=n?` ${n}
85
+ `:`
86
+ `;else if(e.description.length>0)for(let n of e.description)t+=n?` ${n}
87
+ `:`
88
+ `}if(e.options&&e.options.length>0){t+=`
89
+ Options:
90
+ `;for(let n of e.options)t+=` ${n}
91
+ `}if(e.examples&&e.examples.length>0){t+=`
92
+ Examples:
93
+ `;for(let n of e.examples)t+=` ${n}
94
+ `}if(e.notes&&e.notes.length>0){t+=`
95
+ Notes:
96
+ `;for(let n of e.notes)t+=` ${n}
97
+ `}return{stdout:t,stderr:``,exitCode:0}}function E(e){return e.includes(`--help`)}function D(e,t){return{stdout:``,stderr:t.startsWith(`--`)?`${e}: unrecognized option '${t}'
98
+ `:`${e}: invalid option -- '${t.replace(/^-/,``)}'
99
+ `,exitCode:1}}var O=x(()=>{});function br(e,t,n){let r=new Map,i=new Map;for(let[e,t]of Object.entries(n)){let n={name:e,type:t.type};t.short&&r.set(t.short,n),t.long&&i.set(t.long,n)}let a=Object.create(null);for(let[e,t]of Object.entries(n))t.default===void 0?t.type===`boolean`&&(a[e]=!1):a[e]=t.default;let o=[],s=!1;for(let n=0;n<t.length;n++){let c=t[n];if(s||!c.startsWith(`-`)||c===`-`){o.push(c);continue}if(c===`--`){s=!0;continue}if(c.startsWith(`--`)){let r=c.indexOf(`=`),o,s;r===-1?o=c.slice(2):(o=c.slice(2,r),s=c.slice(r+1));let l=i.get(o);if(!l)return{ok:!1,error:D(e,c)};let{name:u,type:d}=l;if(d===`boolean`)a[u]=!0;else{if(s===void 0){if(n+1>=t.length)return{ok:!1,error:{stdout:``,stderr:`${e}: option '--${o}' requires an argument
100
+ `,exitCode:1}};s=t[++n]}a[u]=d===`number`?parseInt(s,10):s}}else{let i=c.slice(1);for(let o=0;o<i.length;o++){let s=i[o],c=r.get(s);if(!c)return{ok:!1,error:D(e,`-${s}`)};let{name:l,type:u}=c;if(u===`boolean`)a[l]=!0;else{let r;if(o+1<i.length)r=i.slice(o+1);else if(n+1<t.length)r=t[++n];else return{ok:!1,error:{stdout:``,stderr:`${e}: option requires an argument -- '${s}'
101
+ `,exitCode:1}};a[l]=u===`number`?parseInt(r,10):r;break}}}}return{ok:!0,result:{flags:a,positional:o}}}var xr=x(()=>{O()}),Sr=x(()=>{});async function Cr(e,t,n){let{cmdName:r,allowStdinMarker:i=!0,stopOnError:a=!1,batchSize:o=100}=n;if(t.length===0)return{files:[{filename:``,content:e.stdin}],stderr:``,exitCode:0};let s=[],c=``,l=0;for(let n=0;n<t.length;n+=o){let u=t.slice(n,n+o),d=await Promise.all(u.map(async t=>{if(i&&t===`-`)return{filename:`-`,content:e.stdin,error:null};try{let n=e.fs.resolvePath(e.cwd,t);return{filename:t,content:await pr(e.fs,n),error:null}}catch{return{filename:t,content:yr,error:`${r}: ${t}: No such file or directory
102
+ `}}}));for(let e of d)if(e.error){if(c+=e.error,l=1,a)return{files:s,stderr:c,exitCode:l}}else s.push({filename:e.filename,content:e.content})}return{files:s,stderr:c,exitCode:l}}async function wr(e,t,n){let r=await Cr(e,t,{...n,stopOnError:!0});return r.exitCode===0?{ok:!0,content:r.files.map(e=>e.content).join(``)}:{ok:!1,error:{stdout:``,stderr:r.stderr,exitCode:r.exitCode}}}var Tr=x(()=>{w(),Sr()}),Er={};S(Er,{catCommand:()=>Ar,flagsForFuzzing:()=>jr});function Dr(e,t){let n=e.split(`
103
+ `),r=e.endsWith(`
104
+ `),i=r?n.slice(0,-1):n;return{content:i.map((e,n)=>`${String(t+n).padStart(6,` `)} ${e}`).join(`
105
+ `)+(r?`
106
+ `:``),nextLineNumber:t+i.length}}var Or,kr,Ar,jr,Mr=x(()=>{w(),xr(),Tr(),O(),Or={name:`cat`,summary:`concatenate files and print on the standard output`,usage:`cat [OPTION]... [FILE]...`,options:[`-n, --number number all output lines`,` --help display this help and exit`]},kr={number:{short:`n`,long:`number`,type:`boolean`}},Ar={name:`cat`,async execute(e,t){if(E(e))return T(Or);let n=br(`cat`,e,kr);if(!n.ok)return n.error;let r=n.result.flags.number,i=n.result.positional,a=await Cr(t,i,{cmdName:`cat`,allowStdinMarker:!0,stopOnError:!1}),o=``,s=1;for(let{content:e}of a.files){let t=e;if(r){let e=Dr(t,s);o+=e.content,s=e.nextLineNumber}else o+=t}return{stdout:o,stderr:a.stderr,exitCode:a.exitCode,stdoutEncoding:`binary`}}},jr={name:`cat`,flags:[{flag:`-n`,type:`boolean`},{flag:`-A`,type:`boolean`},{flag:`-b`,type:`boolean`},{flag:`-s`,type:`boolean`},{flag:`-v`,type:`boolean`},{flag:`-e`,type:`boolean`},{flag:`-t`,type:`boolean`}],stdinType:`text`,needsFiles:!0}});function Nr(e){return e instanceof Fr||e instanceof Ir||e instanceof Lr}var Pr,Fr,Ir,Lr,Rr,zr,Br,Vr,Hr,Ur,Wr,k,Gr,Kr,qr,A=x(()=>{Pr=class extends Error{stdout;stderr;constructor(e,t=``,n=``){super(e),this.stdout=t,this.stderr=n}prependOutput(e,t){this.stdout=e+this.stdout,this.stderr=t+this.stderr}},Fr=class extends Pr{levels;name=`BreakError`;constructor(e=1,t=``,n=``){super(`break`,t,n),this.levels=e}},Ir=class extends Pr{levels;name=`ContinueError`;constructor(e=1,t=``,n=``){super(`continue`,t,n),this.levels=e}},Lr=class extends Pr{exitCode;name=`ReturnError`;constructor(e=0,t=``,n=``){super(`return`,t,n),this.exitCode=e}},Rr=class extends Pr{exitCode;name=`ErrexitError`;constructor(e,t=``,n=``){super(`errexit: command exited with status ${e}`,t,n),this.exitCode=e}},zr=class extends Pr{varName;name=`NounsetError`;constructor(e,t=``){super(`${e}: unbound variable`,t,`bash: ${e}: unbound variable
107
+ `),this.varName=e}},Br=class extends Pr{exitCode;name=`ExitError`;constructor(e,t=``,n=``){super(`exit`,t,n),this.exitCode=e}},Vr=class extends Pr{name=`ArithmeticError`;fatal;constructor(e,t=``,n=``,r=!1){super(e,t,n),this.stderr=n||`bash: ${e}
108
+ `,this.fatal=r}},Hr=class extends Pr{name=`BadSubstitutionError`;constructor(e,t=``,n=``){super(e,t,n),this.stderr=n||`bash: ${e}: bad substitution
109
+ `}},Ur=class extends Pr{name=`GlobError`;constructor(e,t=``,n=``){super(`no match: ${e}`,t,n),this.stderr=n||`bash: no match: ${e}
110
+ `}},Wr=class extends Pr{name=`BraceExpansionError`;constructor(e,t=``,n=``){super(e,t,n),this.stderr=n||`bash: ${e}
111
+ `}},k=class extends Pr{limitType;name=`ExecutionLimitError`;static EXIT_CODE=126;constructor(e,t,n=``,r=``){super(e,n,r),this.limitType=t,this.stderr=r||`bash: ${e}
112
+ `}},Gr=class extends Pr{name=`ExecutionAbortedError`;constructor(e=``,t=``){super(`execution aborted`,e,t)}},Kr=class extends Pr{name=`SubshellExitError`;constructor(e=``,t=``){super(`subshell exit`,e,t)}},qr=class extends Pr{exitCode;name=`PosixFatalError`;constructor(e,t=``,n=``){super(`posix fatal error`,t,n),this.exitCode=e}}});function Jr(e){return e instanceof Error?e.message:String(e)}var Yr=x(()=>{});function Xr(e,t,n){let r=e;n>=0&&r.length>n&&(r=r.slice(0,n));let i=Math.abs(t);return i>r.length&&(r=t<0?r.padEnd(i,` `):r.padStart(i,` `)),r}function Zr(e,t){let n=t,r=0,i=-1,a=!1;for(n<e.length&&e[n]===`-`&&(a=!0,n++);n<e.length&&/\d/.test(e[n]);)r=r*10+parseInt(e[n],10),n++;if(n<e.length&&e[n]===`.`)for(n++,i=0;n<e.length&&/\d/.test(e[n]);)i=i*10+parseInt(e[n],10),n++;return a&&r>0&&(r=-r),[r,i,n-t]}function Qr(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`\\`&&n+1<e.length)switch(e[n+1]){case`n`:t+=`
113
+ `,n+=2;break;case`t`:t+=` `,n+=2;break;case`r`:t+=`\r`,n+=2;break;case`\\`:t+=`\\`,n+=2;break;case`a`:t+=`\x07`,n+=2;break;case`b`:t+=`\b`,n+=2;break;case`f`:t+=`\f`,n+=2;break;case`v`:t+=`\v`,n+=2;break;case`e`:case`E`:t+=`\x1B`,n+=2;break;case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:{let r=``,i=n+1;for(;i<e.length&&i<n+4&&/[0-7]/.test(e[i]);)r+=e[i],i++;t+=String.fromCharCode(parseInt(r,8)),n=i;break}case`x`:{let r=[],i=n;for(;i+3<e.length&&e[i]===`\\`&&e[i+1]===`x`&&/[0-9a-fA-F]{2}/.test(e.slice(i+2,i+4));)r.push(parseInt(e.slice(i+2,i+4),16)),i+=4;if(r.length>0){try{let e=new TextDecoder(`utf-8`,{fatal:!0});t+=e.decode(new Uint8Array(r))}catch{for(let e of r)t+=String.fromCharCode(e)}n=i}else t+=e[n],n++;break}case`u`:{let r=``,i=n+2;for(;i<e.length&&i<n+6&&/[0-9a-fA-F]/.test(e[i]);)r+=e[i],i++;r?(t+=String.fromCodePoint(parseInt(r,16)),n=i):(t+=`\\u`,n+=2);break}case`U`:{let r=``,i=n+2;for(;i<e.length&&i<n+10&&/[0-9a-fA-F]/.test(e[i]);)r+=e[i],i++;r?(t+=String.fromCodePoint(parseInt(r,16)),n=i):(t+=`\\U`,n+=2);break}default:t+=e[n],n++}else t+=e[n],n++;return t}var $r=x(()=>{});function ei(e,t,n){let r=new Date(t*1e3),i=``,a=0;for(;a<e.length;)if(e[a]===`%`&&a+1<e.length){let t=e[a+1],o=ni(r,t,n);o===null?(i+=e[a],a++):(i+=o,a+=2)}else i+=e[a],a++;return i}function ti(e,t){let n={year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,weekday:`short`,hour12:!1,timeZone:t};try{let t=new Intl.DateTimeFormat(`en-US`,n).formatToParts(e),r=e=>t.find(t=>t.type===e)?.value??``,i=new Map([[`Sun`,0],[`Mon`,1],[`Tue`,2],[`Wed`,3],[`Thu`,4],[`Fri`,5],[`Sat`,6]]),a=r(`weekday`),o=(e,t)=>{let n=Number.parseInt(e,10);return Number.isNaN(n)?t:n};return{year:o(r(`year`),e.getFullYear()),month:o(r(`month`),e.getMonth()+1),day:o(r(`day`),e.getDate()),hour:o(r(`hour`),e.getHours())%24,minute:o(r(`minute`),e.getMinutes()),second:o(r(`second`),e.getSeconds()),weekday:i.get(a)??e.getDay()}}catch{return{year:e.getFullYear(),month:e.getMonth()+1,day:e.getDate(),hour:e.getHours(),minute:e.getMinutes(),second:e.getSeconds(),weekday:e.getDay()}}}function ni(e,t,n){let r=ti(e,n),i=(e,t=2)=>String(e).padStart(t,`0`),a=ai(r.year,r.month,r.day),o=oi(r.year,r.month,r.day,r.weekday,0),s=oi(r.year,r.month,r.day,r.weekday,1);switch(t){case`a`:return[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`][r.weekday];case`A`:return[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`][r.weekday];case`b`:case`h`:return[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][r.month-1];case`B`:return[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`][r.month-1];case`c`:return`${[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`][r.weekday]} ${[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][r.month-1]} ${String(r.day).padStart(2,` `)} ${i(r.hour)}:${i(r.minute)}:${i(r.second)} ${r.year}`;case`C`:return i(Math.floor(r.year/100));case`d`:return i(r.day);case`D`:return`${i(r.month)}/${i(r.day)}/${i(r.year%100)}`;case`e`:return String(r.day).padStart(2,` `);case`F`:return`${r.year}-${i(r.month)}-${i(r.day)}`;case`g`:return i(ci(r.year,r.month,r.day)%100);case`G`:return String(ci(r.year,r.month,r.day));case`H`:return i(r.hour);case`I`:return i(r.hour%12||12);case`j`:return String(a).padStart(3,`0`);case`k`:return String(r.hour).padStart(2,` `);case`l`:return String(r.hour%12||12).padStart(2,` `);case`m`:return i(r.month);case`M`:return i(r.minute);case`n`:return`
114
+ `;case`N`:return`000000000`;case`p`:return r.hour<12?`AM`:`PM`;case`P`:return r.hour<12?`am`:`pm`;case`r`:return`${i(r.hour%12||12)}:${i(r.minute)}:${i(r.second)} ${r.hour<12?`AM`:`PM`}`;case`R`:return`${i(r.hour)}:${i(r.minute)}`;case`s`:return String(Math.floor(e.getTime()/1e3));case`S`:return i(r.second);case`t`:return` `;case`T`:return`${i(r.hour)}:${i(r.minute)}:${i(r.second)}`;case`u`:return String(r.weekday===0?7:r.weekday);case`U`:return i(o);case`V`:return i(si(r.year,r.month,r.day));case`w`:return String(r.weekday);case`W`:return i(s);case`x`:return`${i(r.month)}/${i(r.day)}/${i(r.year%100)}`;case`X`:return`${i(r.hour)}:${i(r.minute)}:${i(r.second)}`;case`y`:return i(r.year%100);case`Y`:return String(r.year);case`z`:return ri(e,n);case`Z`:return ii(e,n);case`%`:return`%`;default:return null}}function ri(e,t){if(!t){let t=-e.getTimezoneOffset(),n=t>=0?`+`:`-`,r=Math.floor(Math.abs(t)/60),i=Math.abs(t)%60;return`${n}${String(r).padStart(2,`0`)}${String(i).padStart(2,`0`)}`}try{let n=new Intl.DateTimeFormat(`en-US`,{timeZone:t,timeZoneName:`longOffset`}).formatToParts(e).find(e=>e.type===`timeZoneName`);if(n){let e=n.value.match(/GMT([+-])(\d{2}):(\d{2})/);if(e)return`${e[1]}${e[2]}${e[3]}`;if(n.value===`GMT`||n.value===`UTC`)return`+0000`}}catch{}let n=-e.getTimezoneOffset(),r=n>=0?`+`:`-`,i=Math.floor(Math.abs(n)/60),a=Math.abs(n)%60;return`${r}${String(i).padStart(2,`0`)}${String(a).padStart(2,`0`)}`}function ii(e,t){try{return new Intl.DateTimeFormat(`en-US`,{timeZone:t,timeZoneName:`short`}).formatToParts(e).find(e=>e.type===`timeZoneName`)?.value??`UTC`}catch{return`UTC`}}function ai(e,t,n){let r=[31,28,31,30,31,30,31,31,30,31,30,31];(e%4==0&&e%100!=0||e%400==0)&&(r[1]=29);let i=n;for(let e=0;e<t-1;e++)i+=r[e];return i}function oi(e,t,n,r,i){let a=ai(e,t,n),o=new Date(e,0,1).getDay(),s=a-(1+(7+i-o)%7);return s<0?0:Math.floor(s/7)+1}function si(e,t,n){let r=new Date(e,t-1,n,12,0,0);r.setDate(r.getDate()+3-(r.getDay()+6)%7);let i=new Date(r.getFullYear(),0,4);i.setDate(i.getDate()+3-(i.getDay()+6)%7);let a=r.getTime()-i.getTime();return 1+Math.round(a/(10080*60*1e3))}function ci(e,t,n){let r=new Date(e,t-1,n,12,0,0);return r.setDate(r.getDate()+3-(r.getDay()+6)%7),r.getFullYear()}var li=x(()=>{}),ui={};S(ui,{flagsForFuzzing:()=>Ei,printfCommand:()=>wi});function di(e){let t=``,n=0;for(;n<e.length;){let r=e[n];if(r<128){t+=String.fromCharCode(r),n++;continue}if((r&224)==192){if(n+1<e.length&&(e[n+1]&192)==128&&r>=194){let i=(r&31)<<6|e[n+1]&63;t+=String.fromCharCode(i),n+=2;continue}t+=String.fromCharCode(r),n++;continue}if((r&240)==224){if(n+2<e.length&&(e[n+1]&192)==128&&(e[n+2]&192)==128){if(r===224&&e[n+1]<160){t+=String.fromCharCode(r),n++;continue}let i=(r&15)<<12|(e[n+1]&63)<<6|e[n+2]&63;if(i>=55296&&i<=57343){t+=String.fromCharCode(r),n++;continue}t+=String.fromCharCode(i),n+=3;continue}t+=String.fromCharCode(r),n++;continue}if((r&248)==240&&r<=244){if(n+3<e.length&&(e[n+1]&192)==128&&(e[n+2]&192)==128&&(e[n+3]&192)==128){if(r===240&&e[n+1]<144){t+=String.fromCharCode(r),n++;continue}let i=(r&7)<<18|(e[n+1]&63)<<12|(e[n+2]&63)<<6|e[n+3]&63;if(i>1114111){t+=String.fromCharCode(r),n++;continue}t+=String.fromCodePoint(i),n+=4;continue}t+=String.fromCharCode(r),n++;continue}t+=String.fromCharCode(r),n++}return t}function fi(e,t,n,r){let i=``,a=0,o=0,s=!1,c=``;for(;a<e.length;)if(e[a]===`%`&&a+1<e.length){let l=a;if(a++,e[a]===`%`){i+=`%`,a++;continue}let u=e.slice(l).match(/^%(-?\d*)(?:\.(\d+))?\(([^)]*)\)T/);if(u){let e=u[1]?parseInt(u[1],10):0,s=u[2]?parseInt(u[2],10):-1,c=u[3],d=u[0],f=t[n+o]||``;o++;let p;p=f===``||f===`-1`||f===`-2`?Math.floor(Date.now()/1e3):parseInt(f,10)||0;let m=ei(c,p,r);if(s>=0&&m.length>s&&(m=m.slice(0,s)),e!==0){let t=Math.abs(e);m.length<t&&(m=e<0?m.padEnd(t,` `):m.padStart(t,` `))}i+=m,a=l+d.length;continue}for(;a<e.length&&`+-0 #'`.includes(e[a]);)a++;let d=!1;if(e[a]===`*`)d=!0,a++;else for(;a<e.length&&/\d/.test(e[a]);)a++;let f=!1;if(e[a]===`.`)if(a++,e[a]===`*`)f=!0,a++;else for(;a<e.length&&/\d/.test(e[a]);)a++;a<e.length&&`hlL`.includes(e[a])&&a++;let p=e[a]||``;a++;let m=e.slice(l,a);if(d){let e=parseInt(t[n+o]||`0`,10);o++,m=m.replace(`*`,String(e))}if(f){let e=parseInt(t[n+o]||`0`,10);o++,m=m.replace(`.*`,`.${e}`)}let h=t[n+o]||``;o++;let{value:g,parseError:_,parseErrMsg:v,stopped:y}=pi(m,p,h);if(i+=g,_&&(s=!0,v&&(c=v)),y)return{result:i,argsConsumed:o,error:s,errMsg:c,stopped:!0}}else i+=e[a],a++;return{result:i,argsConsumed:o,error:s,errMsg:c,stopped:!1}}function pi(e,t,n){let i=!1,a=``;switch(t){case`d`:case`i`:{let t=mi(n);return i=Ti,i&&(a=`printf: ${n}: invalid number
115
+ `),{value:hi(e,t),parseError:i,parseErrMsg:a}}case`o`:{let t=mi(n);return i=Ti,i&&(a=`printf: ${n}: invalid number
116
+ `),{value:gi(e,t),parseError:i,parseErrMsg:a}}case`u`:{let t=mi(n);i=Ti,i&&(a=`printf: ${n}: invalid number
117
+ `);let r=t<0?t>>>0:t;return{value:hi(e.replace(`u`,`d`),r),parseError:i,parseErrMsg:a}}case`x`:case`X`:{let t=mi(n);return i=Ti,i&&(a=`printf: ${n}: invalid number
118
+ `),{value:_i(e,t),parseError:i,parseErrMsg:a}}case`e`:case`E`:case`f`:case`F`:case`g`:case`G`:return{value:xi(e,t,parseFloat(n)||0),parseError:!1,parseErrMsg:``};case`c`:{if(n===``)return{value:``,parseError:!1,parseErrMsg:``};let e=new TextEncoder().encode(n)[0];return{value:String.fromCharCode(e),parseError:!1,parseErrMsg:``}}case`s`:return{value:yi(e,n),parseError:!1,parseErrMsg:``};case`q`:return{value:bi(e,n),parseError:!1,parseErrMsg:``};case`b`:{let e=Si(n);return{value:e.value,parseError:!1,parseErrMsg:``,stopped:e.stopped}}default:try{return{value:(0,r.sprintf)(e,n),parseError:!1,parseErrMsg:``}}catch{return{value:``,parseError:!0,parseErrMsg:`printf: [sprintf] unexpected placeholder
119
+ `}}}}function mi(e){Ti=!1;let t=e.trimStart(),n=t!==t.trimEnd();if(e=t.trimEnd(),e.startsWith(`'`)&&e.length>=2||e.startsWith(`"`)&&e.length>=2)return e.charCodeAt(1);if(e.startsWith(`\\'`)&&e.length>=3||e.startsWith(`\\"`)&&e.length>=3)return e.charCodeAt(2);if(e.startsWith(`+`)&&(e=e.slice(1)),e.startsWith(`0x`)||e.startsWith(`0X`)){let t=parseInt(e,16);return Number.isNaN(t)?(Ti=!0,0):(n&&(Ti=!0),t)}if(e.startsWith(`0`)&&e.length>1&&/^-?0[0-7]+$/.test(e))return n&&(Ti=!0),parseInt(e,8)||0;if(/^\d+#/.test(e)){Ti=!0;let t=e.match(/^(\d+)#/);return t?parseInt(t[1],10):0}if(e!==``&&!/^-?\d+$/.test(e)){Ti=!0;let t=parseInt(e,10);return Number.isNaN(t)?0:t}return n&&(Ti=!0),parseInt(e,10)||0}function hi(e,t){let n=e.match(/^%([- +#0']*)(\d*)(\.(\d*))?[diu]$/);if(!n)return(0,r.sprintf)(e.replace(/\.\d*/,``),t);let i=n[1]||``,a=n[2]?parseInt(n[2],10):0,o=n[3]===void 0?-1:n[4]?parseInt(n[4],10):0,s=t<0,c=String(Math.abs(t));o>=0&&(c=c.padStart(o,`0`));let l=``;s?l=`-`:i.includes(`+`)?l=`+`:i.includes(` `)&&(l=` `);let u=l+c;return a>u.length&&(u=i.includes(`-`)?u.padEnd(a,` `):i.includes(`0`)&&o<0?l+c.padStart(a-l.length,`0`):u.padStart(a,` `)),u}function gi(e,t){let n=e.match(/^%([- +#0']*)(\d*)(\.(\d*))?o$/);if(!n)return(0,r.sprintf)(e,t);let i=n[1]||``,a=n[2]?parseInt(n[2],10):0,o=n[3]===void 0?-1:n[4]?parseInt(n[4],10):0,s=Math.abs(t).toString(8);o>=0&&(s=s.padStart(o,`0`)),i.includes(`#`)&&!s.startsWith(`0`)&&(s=`0${s}`);let c=s;return a>c.length&&(c=i.includes(`-`)?c.padEnd(a,` `):i.includes(`0`)&&o<0?c.padStart(a,`0`):c.padStart(a,` `)),c}function _i(e,t){let n=e.includes(`X`),i=e.match(/^%([- +#0']*)(\d*)(\.(\d*))?[xX]$/);if(!i)return(0,r.sprintf)(e,t);let a=i[1]||``,o=i[2]?parseInt(i[2],10):0,s=i[3]===void 0?-1:i[4]?parseInt(i[4],10):0,c=Math.abs(t).toString(16);n&&(c=c.toUpperCase()),s>=0&&(c=c.padStart(s,`0`));let l=``;a.includes(`#`)&&t!==0&&(l=n?`0X`:`0x`);let u=l+c;return o>u.length&&(u=a.includes(`-`)?u.padEnd(o,` `):a.includes(`0`)&&s<0?l+c.padStart(o-l.length,`0`):u.padStart(o,` `)),u}function vi(e){if(e===``)return`''`;if(/^[a-zA-Z0-9_./-]+$/.test(e))return e;if(/[\x00-\x1f\x7f-\xff]/.test(e)){let t=`$'`;for(let n of e){let e=n.charCodeAt(0);n===`'`?t+=`\\'`:n===`\\`?t+=`\\\\`:n===`
120
+ `?t+=`\\n`:n===` `?t+=`\\t`:n===`\r`?t+=`\\r`:n===`\x07`?t+=`\\a`:n===`\b`?t+=`\\b`:n===`\f`?t+=`\\f`:n===`\v`?t+=`\\v`:n===`\x1B`?t+=`\\E`:e<32||e>=127&&e<=255?t+=`\\${e.toString(8).padStart(3,`0`)}`:n===`"`?t+=`\\"`:t+=n}return t+=`'`,t}let t=``;for(let n of e)` |&;<>()$\`\\"'*?[#~=%!{}`.includes(n)?t+=`\\${n}`:t+=n;return t}function yi(e,t){let n=e.match(/^%(-?)(\d*)(\.(\d*))?s$/);if(!n)return(0,r.sprintf)(e.replace(/0+(?=\d)/,``),t);let i=n[1]===`-`,a=n[2]?parseInt(n[2],10):0,o=n[3]===void 0?-1:n[4]?parseInt(n[4],10):0;return Xr(t,i?-a:a,o)}function bi(e,t){let n=vi(t),r=e.match(/^%(-?)(\d*)q$/);if(!r)return n;let i=r[1]===`-`,a=r[2]?parseInt(r[2],10):0,o=n;return a>o.length&&(o=i?o.padEnd(a,` `):o.padStart(a,` `)),o}function xi(e,t,n){let i=e.match(/^%([- +#0']*)(\d*)(\.(\d*))?[eEfFgG]$/);if(!i)return(0,r.sprintf)(e,n);let a=i[1]||``,o=i[2]?parseInt(i[2],10):0,s=i[3]===void 0?6:i[4]?parseInt(i[4],10):0,c,l=t.toLowerCase();if(l===`e`?(c=n.toExponential(s),c=c.replace(/e([+-])(\d)$/,`e$10$2`),t===`E`&&(c=c.toUpperCase())):l===`f`?(c=n.toFixed(s),a.includes(`#`)&&s===0&&!c.includes(`.`)&&(c+=`.`)):l===`g`?(c=n.toPrecision(s||1),a.includes(`#`)||(c=c.replace(/\.?0+$/,``),c=c.replace(/\.?0+e/,`e`)),c=c.replace(/e([+-])(\d)$/,`e$10$2`),t===`G`&&(c=c.toUpperCase())):c=n.toString(),n>=0&&(a.includes(`+`)?c=`+${c}`:a.includes(` `)&&(c=` ${c}`)),o>c.length)if(a.includes(`-`))c=c.padEnd(o,` `);else if(a.includes(`0`)){let e=c.match(/^[+ -]/)?.[0]||``;c=e+(e?c.slice(1):c).padStart(o-e.length,`0`)}else c=c.padStart(o,` `);return c}function Si(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`\\`&&n+1<e.length)switch(e[n+1]){case`n`:t+=`
121
+ `,n+=2;break;case`t`:t+=` `,n+=2;break;case`r`:t+=`\r`,n+=2;break;case`\\`:t+=`\\`,n+=2;break;case`a`:t+=`\x07`,n+=2;break;case`b`:t+=`\b`,n+=2;break;case`f`:t+=`\f`,n+=2;break;case`v`:t+=`\v`,n+=2;break;case`c`:return{value:t,stopped:!0};case`x`:{let r=[],i=n;for(;i+1<e.length&&e[i]===`\\`&&e[i+1]===`x`;){let t=``,n=i+2;for(;n<e.length&&n<i+4&&/[0-9a-fA-F]/.test(e[n]);)t+=e[n],n++;if(t)r.push(parseInt(t,16)),i=n;else break}r.length>0?(t+=di(r),n=i):(t+=`\\x`,n+=2);break}case`u`:{let r=``,i=n+2;for(;i<e.length&&i<n+6&&/[0-9a-fA-F]/.test(e[i]);)r+=e[i],i++;r?(t+=String.fromCodePoint(parseInt(r,16)),n=i):(t+=`\\u`,n+=2);break}case`0`:{let r=``,i=n+2;for(;i<e.length&&i<n+5&&/[0-7]/.test(e[i]);)r+=e[i],i++;r?t+=String.fromCharCode(parseInt(r,8)):t+=`\0`,n=i;break}case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:{let r=``,i=n+1;for(;i<e.length&&i<n+4&&/[0-7]/.test(e[i]);)r+=e[i],i++;t+=String.fromCharCode(parseInt(r,8)),n=i;break}default:t+=e[n],n++}else t+=e[n],n++;return{value:t,stopped:!1}}var Ci,wi,Ti,Ei,Di=x(()=>{A(),Yr(),O(),$r(),li(),Ci={name:`printf`,summary:`format and print data`,usage:`printf [-v var] FORMAT [ARGUMENT...]`,options:[` -v var assign the output to shell variable VAR rather than display it`,` --help display this help and exit`],notes:[`FORMAT controls the output like in C printf.`,`Escape sequences: \\n (newline), \\t (tab), \\\\ (backslash)`,`Format specifiers: %s (string), %d (integer), %f (float), %x (hex), %o (octal), %% (literal %)`,`Width and precision: %10s (width 10), %.2f (2 decimal places), %010d (zero-padded)`,`Flags: %- (left-justify), %+ (show sign), %0 (zero-pad)`]},wi={name:`printf`,async execute(e,t){if(E(e))return T(Ci);if(e.length===0)return{stdout:``,stderr:`printf: usage: printf format [arguments]
122
+ `,exitCode:2};let n=null,r=0;for(;r<e.length;){let t=e[r];if(t===`--`){r++;break}if(t===`-v`){if(r+1>=e.length)return{stdout:``,stderr:`printf: -v: option requires an argument
123
+ `,exitCode:1};if(n=e[r+1],!/^[a-zA-Z_][a-zA-Z0-9_]*(\[[a-zA-Z0-9_@*"'$]+\])?$/.test(n))return{stdout:``,stderr:`printf: \`${n}': not a valid identifier
124
+ `,exitCode:2};r+=2}else{if(t.startsWith(`-`)&&t!==`-`)break;break}}if(r>=e.length)return{stdout:``,stderr:`printf: usage: printf format [arguments]
125
+ `,exitCode:1};let i=e[r],a=e.slice(r+1);try{let e=Qr(i),r=``,o=0,s=!1,c=``,l=t.env.get(`TZ`),u=t.limits?.maxStringLength;do{let{result:t,argsConsumed:n,error:i,errMsg:d,stopped:f}=fi(e,a,o,l);if(r+=t,u!==void 0&&u>0&&r.length>u)throw new k(`printf: output size limit exceeded (${u} bytes)`,`string_length`);if(o+=n,i&&(s=!0,d&&(c=d)),f)break}while(o<a.length&&o>0);if(o===0&&a.length,n){let e=n.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(['"]?)(.+?)\2\]$/);if(e){let n=e[1],i=e[3];i=i.replace(/\$([a-zA-Z_][a-zA-Z0-9_]*)/g,(e,n)=>t.env.get(n)??``),t.env.set(`${n}_${i}`,r)}else t.env.set(n,r);return{stdout:``,stderr:c,exitCode:+!!s}}return{stdout:r,stderr:c,exitCode:+!!s}}catch(e){if(e instanceof k)throw e;return{stdout:``,stderr:`printf: ${Jr(e)}
126
+ `,exitCode:1}}}},Ti=!1,Ei={name:`printf`,flags:[{flag:`-v`,type:`value`,valueHint:`string`}],stdinType:`none`,needsArgs:!0}}),Oi={};S(Oi,{flagsForFuzzing:()=>Li,lsCommand:()=>Ii});function ki(e){if(e<1024)return String(e);if(e<1024*1024){let t=e/1024;return t<10?`${t.toFixed(1)}K`:`${Math.round(t)}K`}if(e<1024*1024*1024){let t=e/1048576;return t<10?`${t.toFixed(1)}M`:`${Math.round(t)}M`}let t=e/(1024*1024*1024);return t<10?`${t.toFixed(1)}G`:`${Math.round(t)}G`}function Ai(e){let t=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][e.getMonth()],n=String(e.getDate()).padStart(2,` `);return e>new Date(new Date().getTime()-4320*60*60*1e3)?`${t} ${n} ${String(e.getHours()).padStart(2,`0`)}:${String(e.getMinutes()).padStart(2,`0`)}`:`${t} ${n} ${e.getFullYear()}`}function ji(e){return e.isDirectory?`/`:e.isSymbolicLink?`@`:e.mode&73?`*`:``}async function Mi(e,t,n,r,i,a=!1,o=!1,s=!1,c=!1){let l=n||r,u=t.fs.getAllPaths(),d=t.fs.resolvePath(t.cwd,`.`),f=[];for(let t of u){let n=t.startsWith(d)&&t.slice(d.length+1)||t;if(Fe(n,e)||Fe(t,e)){let e=n.split(`/`).pop()||n;if(!l&&e.startsWith(`.`))continue;f.push(n||t)}}if(f.length===0)return{stdout:``,stderr:`ls: ${e}: No such file or directory
127
+ `,exitCode:2};if(s){let e=[];for(let n of f){let r=t.fs.resolvePath(t.cwd,n);try{let i=await t.fs.stat(r);e.push({path:n,size:i.size??0})}catch{e.push({path:n,size:0})}}e.sort((e,t)=>t.size-e.size),f.length=0,f.push(...e.map(e=>e.path))}else f.sort();if(a&&f.reverse(),i){let e=[];for(let n of f){let r=t.fs.resolvePath(t.cwd,n);try{let i=await t.fs.stat(r),a=i.isDirectory?`drwxr-xr-x`:`-rw-r--r--`,s=c?ji(await t.fs.lstat(r)):i.isDirectory?`/`:``,l=i.size??0,u=o?ki(l).padStart(5):String(l).padStart(5),d=Ai(i.mtime??new Date(0));e.push(`${a} 1 user user ${u} ${d} ${n}${s}`)}catch{e.push(`-rw-r--r-- 1 user user 0 Jan 1 00:00 ${n}`)}}return{stdout:`${e.join(`
128
+ `)}
129
+ `,stderr:``,exitCode:0}}if(c){let e=[];for(let n of f){let r=t.fs.resolvePath(t.cwd,n);try{let i=await t.fs.lstat(r);e.push(`${n}${ji(i)}`)}catch{e.push(n)}}return{stdout:`${e.join(`
130
+ `)}
131
+ `,stderr:``,exitCode:0}}return{stdout:`${f.join(`
132
+ `)}
133
+ `,stderr:``,exitCode:0}}async function Ni(e,t,n,r,i,a,o,s=!1,c=!1,l=!1,u=!1,d=!1){let f=n||r,p=t.fs.resolvePath(t.cwd,e);try{let d=await t.fs.stat(p);if(!d.isDirectory){let n=u?ji(await t.fs.lstat(p)):``;if(i){let t=d.size??0;return{stdout:`-rw-r--r-- 1 user user ${c?ki(t).padStart(5):String(t).padStart(5)} ${Ai(d.mtime??new Date(0))} ${e}${n}
134
+ `,stderr:``,exitCode:0}}return{stdout:`${e}${n}
135
+ `,stderr:``,exitCode:0}}let m=await t.fs.readdir(p);if(f||(m=m.filter(e=>!e.startsWith(`.`))),l){let e=[];for(let n of m){let r=p===`/`?`/${n}`:`${p}/${n}`;try{let i=await t.fs.stat(r);e.push({name:n,size:i.size??0})}catch{e.push({name:n,size:0})}}e.sort((e,t)=>t.size-e.size),m=e.map(e=>e.name)}else m.sort();n&&(m=[`.`,`..`,...m]),s&&m.reverse();let h=``;if((a||o)&&(h+=`${e}:
136
+ `),i){h+=`total ${m.length}
137
+ `;let e=m.filter(e=>e===`.`||e===`..`),n=m.filter(e=>e!==`.`&&e!==`..`);for(let t of e)h+=`drwxr-xr-x 1 user user 0 Jan 1 00:00 ${t}
138
+ `;let r=[];for(let e=0;e<n.length;e+=100){let i=n.slice(e,e+100),a=await Promise.all(i.map(async e=>{let n=p===`/`?`/${e}`:`${p}/${e}`;try{let r=await t.fs.stat(n),i=r.isDirectory?`drwxr-xr-x`:`-rw-r--r--`,a=u?ji(await t.fs.lstat(n)):r.isDirectory?`/`:``,o=r.size??0;return{name:e,line:`${i} 1 user user ${c?ki(o).padStart(5):String(o).padStart(5)} ${Ai(r.mtime??new Date(0))} ${e}${a}
139
+ `}}catch{return{name:e,line:`-rw-r--r-- 1 user user 0 Jan 1 00:00 ${e}
140
+ `}}}));r.push(...a)}let i=new Map(n.map((e,t)=>[e,t]));r.sort((e,t)=>(i.get(e.name)??0)-(i.get(t.name)??0));for(let{line:e}of r)h+=e}else if(u){let e=[],n=m.filter(e=>e!==`.`&&e!==`..`),r=m.filter(e=>e===`.`||e===`..`);for(let t of r)e.push(`${t}/`);for(let r=0;r<n.length;r+=100){let i=n.slice(r,r+100),a=await Promise.all(i.map(async e=>{let n=p===`/`?`/${e}`:`${p}/${e}`;try{return`${e}${ji(await t.fs.lstat(n))}`}catch{return e}}));e.push(...a)}h+=e.join(`
141
+ `)+(e.length?`
142
+ `:``)}else h+=m.join(`
143
+ `)+(m.length?`
144
+ `:``);if(a){let o=m.filter(e=>e!==`.`&&e!==`..`),d=[];if(t.fs.readdirWithFileTypes)d=(await t.fs.readdirWithFileTypes(p)).filter(e=>e.isDirectory&&o.includes(e.name)).map(e=>({name:e.name,isDirectory:!0}));else for(let e=0;e<o.length;e+=100){let n=o.slice(e,e+100),r=await Promise.all(n.map(async e=>{let n=p===`/`?`/${e}`:`${p}/${e}`;try{return{name:e,isDirectory:(await t.fs.stat(n)).isDirectory}}catch{return{name:e,isDirectory:!1}}}));d.push(...r.filter(e=>e.isDirectory))}d.sort((e,t)=>e.name.localeCompare(t.name)),s&&d.reverse();let f=[];for(let o=0;o<d.length;o+=100){let p=d.slice(o,o+100),m=await Promise.all(p.map(async o=>{let d=await Ni(e===`.`?`./${o.name}`:`${e}/${o.name}`,t,n,r,i,a,!1,s,c,l,u,!0);return{name:o.name,result:d}}));f.push(...m)}f.sort((e,t)=>e.name.localeCompare(t.name)),s&&f.reverse();for(let{result:e}of f)h+=`
145
+ `,h+=e.stdout}return{stdout:h,stderr:``,exitCode:0}}catch{return{stdout:``,stderr:`ls: ${e}: No such file or directory
146
+ `,exitCode:2}}}var Pi,Fi,Ii,Li,Ri=x(()=>{xr(),Sr(),O(),Pi={name:`ls`,summary:`list directory contents`,usage:`ls [OPTION]... [FILE]...`,options:[`-a, --all do not ignore entries starting with .`,`-A, --almost-all do not list . and ..`,`-d, --directory list directories themselves, not their contents`,`-F, --classify append indicator (one of */=>@) to entries`,`-h, --human-readable with -l, print sizes like 1K 234M 2G etc.`,`-l use a long listing format`,`-r, --reverse reverse order while sorting`,`-R, --recursive list subdirectories recursively`,`-S sort by file size, largest first`,`-t sort by time, newest first`,`-1 list one file per line`,` --help display this help and exit`]},Fi={showAll:{short:`a`,long:`all`,type:`boolean`},showAlmostAll:{short:`A`,long:`almost-all`,type:`boolean`},longFormat:{short:`l`,type:`boolean`},humanReadable:{short:`h`,long:`human-readable`,type:`boolean`},recursive:{short:`R`,long:`recursive`,type:`boolean`},reverse:{short:`r`,long:`reverse`,type:`boolean`},sortBySize:{short:`S`,type:`boolean`},classifyFiles:{short:`F`,long:`classify`,type:`boolean`},directoryOnly:{short:`d`,long:`directory`,type:`boolean`},sortByTime:{short:`t`,type:`boolean`},onePerLine:{short:`1`,type:`boolean`}},Ii={name:`ls`,async execute(e,t){if(E(e))return T(Pi);let n=br(`ls`,e,Fi);if(!n.ok)return n.error;let r=n.result.flags.showAll,i=n.result.flags.showAlmostAll,a=n.result.flags.longFormat,o=n.result.flags.humanReadable,s=n.result.flags.recursive,c=n.result.flags.reverse,l=n.result.flags.sortBySize,u=n.result.flags.classifyFiles,d=n.result.flags.directoryOnly;n.result.flags.sortByTime,n.result.flags.onePerLine;let f=n.result.positional;f.length===0&&f.push(`.`);let p=``,m=``,h=0;for(let e=0;e<f.length;e++){let n=f[e];if(e>0&&p&&!p.endsWith(`
147
+
148
+ `)&&(p+=`
149
+ `),d){let e=t.fs.resolvePath(t.cwd,n);try{let r=await t.fs.stat(e);if(a){let i=r.isDirectory?`drwxr-xr-x`:`-rw-r--r--`,a=u?ji(await t.fs.lstat(e)):r.isDirectory?`/`:``,s=r.size??0,c=o?ki(s).padStart(5):String(s).padStart(5),l=Ai(r.mtime??new Date(0));p+=`${i} 1 user user ${c} ${l} ${n}${a}
150
+ `}else{let r=u?ji(await t.fs.lstat(e)):``;p+=`${n}${r}
151
+ `}}catch{m+=`ls: cannot access '${n}': No such file or directory
152
+ `,h=2}continue}if(n.includes(`*`)||n.includes(`?`)||n.includes(`[`)){let e=await Mi(n,t,r,i,a,c,o,l,u);p+=e.stdout,m+=e.stderr,e.exitCode!==0&&(h=e.exitCode)}else{let e=await Ni(n,t,r,i,a,s,f.length>1,c,o,l,u);p+=e.stdout,m+=e.stderr,e.exitCode!==0&&(h=e.exitCode)}}return{stdout:p,stderr:m,exitCode:h}}},Li={name:`ls`,flags:[{flag:`-a`,type:`boolean`},{flag:`-A`,type:`boolean`},{flag:`-l`,type:`boolean`},{flag:`-h`,type:`boolean`},{flag:`-R`,type:`boolean`},{flag:`-r`,type:`boolean`},{flag:`-S`,type:`boolean`},{flag:`-F`,type:`boolean`},{flag:`-d`,type:`boolean`},{flag:`-t`,type:`boolean`},{flag:`-1`,type:`boolean`}],needsFiles:!0}});function zi(e,t,n){if(!e)return e;let r=e.replace(/\n\s+at\s.*/g,``);return n&&(r=r.replace(/\bfile:\/\/\/?[^\s'",)}\]:]+/g,`<path>`)),r=r.replace(t?/(?:\/(?:Users|home|private|var|opt|Library|System|usr|etc|tmp|nix|snap|workspace|root|srv|mnt|app))\b[^\s'",)}\]:]*/g:/(?:\/(?:Users|home|private|var|opt|Library|System|usr|etc|tmp|nix|snap))\b[^\s'",)}\]:]*/g,`<path>`),r=r.replace(/node:internal\/[^\s'",)}\]:]+/g,`<internal>`),r=r.replace(/[A-Z]:\\[^\s'",)}\]:]+/g,`<path>`),n&&(r=r.replace(/\\\\[^\s\\]+\\[^\s'",)}\]:]+/g,`<path>`)),r}function Bi(e){return zi(e,!1,!1)}var Vi=x(()=>{}),Hi={};S(Hi,{flagsForFuzzing:()=>Gi,mkdirCommand:()=>Wi});var Ui,Wi,Gi,Ki=x(()=>{Vi(),Yr(),xr(),Ui={recursive:{short:`p`,long:`parents`,type:`boolean`},verbose:{short:`v`,long:`verbose`,type:`boolean`}},Wi={name:`mkdir`,async execute(e,t){let n=br(`mkdir`,e,Ui);if(!n.ok)return n.error;let r=n.result.flags.recursive,i=n.result.flags.verbose,a=n.result.positional;if(a.length===0)return{stdout:``,stderr:`mkdir: missing operand
153
+ `,exitCode:1};let o=``,s=``,c=0;for(let e of a)try{let n=t.fs.resolvePath(t.cwd,e);await t.fs.mkdir(n,{recursive:r}),i&&(o+=`mkdir: created directory '${e}'
154
+ `)}catch(t){let n=Jr(t);n.includes(`ENOENT`)||n.includes(`no such file`)?s+=`mkdir: cannot create directory '${e}': No such file or directory
155
+ `:n.includes(`EEXIST`)||n.includes(`already exists`)?s+=`mkdir: cannot create directory '${e}': File exists
156
+ `:s+=`mkdir: cannot create directory '${e}': ${Bi(n)}
157
+ `,c=1}return{stdout:o,stderr:s,exitCode:c}}},Gi={name:`mkdir`,flags:[{flag:`-p`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0}}),qi={};S(qi,{flagsForFuzzing:()=>ea,rmdirCommand:()=>$i});async function Ji(e,t,n,r){let i=``,a=``,o=e.fs.resolvePath(e.cwd,t),s=await Yi(e,o,t,r);if(i+=s.stdout,a+=s.stderr,s.exitCode!==0)return{stdout:i,stderr:a,exitCode:s.exitCode};if(n){let n=o,a=t;for(;;){let t=Xi(n),o=Xi(a);if(t===n||t===`/`||t===`.`||o===`.`||o===``)break;let s=await Yi(e,t,o,r);if(i+=s.stdout,s.exitCode!==0)break;n=t,a=o}}return{stdout:i,stderr:a,exitCode:0}}async function Yi(e,t,n,r){try{if(!await e.fs.exists(t))return{stdout:``,stderr:`rmdir: failed to remove '${n}': No such file or directory
158
+ `,exitCode:1};if(!(await e.fs.stat(t)).isDirectory)return{stdout:``,stderr:`rmdir: failed to remove '${n}': Not a directory
159
+ `,exitCode:1};if((await e.fs.readdir(t)).length>0)return{stdout:``,stderr:`rmdir: failed to remove '${n}': Directory not empty
160
+ `,exitCode:1};await e.fs.rm(t,{recursive:!1,force:!1});let i=``;return r&&(i=`rmdir: removing directory, '${n}'
161
+ `),{stdout:i,stderr:``,exitCode:0}}catch(e){return{stdout:``,stderr:`rmdir: failed to remove '${n}': ${Jr(e)}
162
+ `,exitCode:1}}}function Xi(e){let t=e.replace(/\/+$/,``),n=t.lastIndexOf(`/`);return n===-1?`.`:n===0?`/`:t.substring(0,n)}var Zi,Qi,$i,ea,ta=x(()=>{Yr(),xr(),Zi=`Usage: rmdir [-pv] DIRECTORY...
163
+ Remove empty directories.
164
+
165
+ Options:
166
+ -p, --parents Remove DIRECTORY and its ancestors
167
+ -v, --verbose Output a diagnostic for every directory processed`,Qi={parents:{short:`p`,long:`parents`,type:`boolean`},verbose:{short:`v`,long:`verbose`,type:`boolean`},help:{long:`help`,type:`boolean`}},$i={name:`rmdir`,async execute(e,t){let n=br(`rmdir`,e,Qi);if(!n.ok)return n.error;if(n.result.flags.help)return{stdout:`${Zi}
168
+ `,stderr:``,exitCode:0};let r=n.result.flags.parents,i=n.result.flags.verbose,a=n.result.positional;if(a.length===0)return{stdout:``,stderr:`rmdir: missing operand
169
+ `,exitCode:1};let o=``,s=``,c=0;for(let e of a){let n=await Ji(t,e,r,i);o+=n.stdout,s+=n.stderr,n.exitCode!==0&&(c=n.exitCode)}return{stdout:o,stderr:s,exitCode:c}}},ea={name:`rmdir`,flags:[{flag:`-p`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0}}),na={};S(na,{flagsForFuzzing:()=>aa,touchCommand:()=>ia});function ra(e){let t=e.replace(/\//g,`-`),n=new Date(t);if(!Number.isNaN(n.getTime()))return n;let r=t.match(/^(\d{4})-(\d{2})-(\d{2})$/);if(r){let[,e,t,i]=r;if(n=new Date(Number.parseInt(e,10),Number.parseInt(t,10)-1,Number.parseInt(i,10)),!Number.isNaN(n.getTime()))return n}let i=t.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}):(\d{2}):(\d{2})$/);if(i){let[,e,t,r,a,o,s]=i;if(n=new Date(Number.parseInt(e,10),Number.parseInt(t,10)-1,Number.parseInt(r,10),Number.parseInt(a,10),Number.parseInt(o,10),Number.parseInt(s,10)),!Number.isNaN(n.getTime()))return n}return null}var ia,aa,oa=x(()=>{Yr(),O(),ia={name:`touch`,async execute(e,t){let n=[],r=null,i=!1;for(let t=0;t<e.length;t++){let a=e[t];if(a===`--`){n.push(...e.slice(t+1));break}else if(a===`-d`||a===`--date`){if(t+1>=e.length)return{stdout:``,stderr:`touch: option requires an argument -- 'd'
170
+ `,exitCode:1};r=e[++t]}else if(a.startsWith(`--date=`))r=a.slice(7);else if(a===`-c`||a===`--no-create`)i=!0;else if(a===`-a`||a===`-m`||a===`-r`||a===`-t`)(a===`-r`||a===`-t`)&&t++;else{if(a.startsWith(`--`))return D(`touch`,a);if(a.startsWith(`-`)&&a.length>1){let n=!1;for(let o of a.slice(1))if(o===`c`)i=!0;else if(!(o===`a`||o===`m`))if(o===`d`){if(t+1>=e.length)return{stdout:``,stderr:`touch: option requires an argument -- 'd'
171
+ `,exitCode:1};r=e[++t],n=!0;break}else if(o===`r`||o===`t`){t++,n=!0;break}else return D(`touch`,`-${o}`);if(n)continue}else n.push(a)}}if(n.length===0)return{stdout:``,stderr:`touch: missing file operand
172
+ `,exitCode:1};let a=null;if(r!==null&&(a=ra(r),a===null))return{stdout:``,stderr:`touch: invalid date format '${r}'
173
+ `,exitCode:1};let o=``,s=0;for(let e of n)try{let n=t.fs.resolvePath(t.cwd,e);if(!await t.fs.exists(n)){if(i)continue;await t.fs.writeFile(n,``)}let r=a??new Date;await t.fs.utimes(n,r,r)}catch(t){o+=`touch: cannot touch '${e}': ${Jr(t)}
174
+ `,s=1}return{stdout:``,stderr:o,exitCode:s}}},aa={name:`touch`,flags:[{flag:`-c`,type:`boolean`},{flag:`-a`,type:`boolean`},{flag:`-m`,type:`boolean`},{flag:`-d`,type:`value`,valueHint:`string`}],needsArgs:!0}}),sa={};S(sa,{flagsForFuzzing:()=>ua,rmCommand:()=>la});var ca,la,ua,da=x(()=>{Vi(),Yr(),xr(),ca={recursive:{short:`r`,long:`recursive`,type:`boolean`},recursiveUpper:{short:`R`,type:`boolean`},force:{short:`f`,long:`force`,type:`boolean`},verbose:{short:`v`,long:`verbose`,type:`boolean`}},la={name:`rm`,async execute(e,t){let n=br(`rm`,e,ca);if(!n.ok)return n.error;let r=n.result.flags.recursive||n.result.flags.recursiveUpper,i=n.result.flags.force,a=n.result.flags.verbose,o=n.result.positional;if(o.length===0)return i?{stdout:``,stderr:``,exitCode:0}:{stdout:``,stderr:`rm: missing operand
175
+ `,exitCode:1};let s=``,c=``,l=0;for(let e of o)try{let n=t.fs.resolvePath(t.cwd,e);if((await t.fs.stat(n)).isDirectory&&!r){c+=`rm: cannot remove '${e}': Is a directory
176
+ `,l=1;continue}await t.fs.rm(n,{recursive:r,force:i}),a&&(s+=`removed '${e}'
177
+ `)}catch(t){if(!i){let n=Jr(t);n.includes(`ENOENT`)||n.includes(`no such file`)?c+=`rm: cannot remove '${e}': No such file or directory
178
+ `:n.includes(`ENOTEMPTY`)||n.includes(`not empty`)?c+=`rm: cannot remove '${e}': Directory not empty
179
+ `:c+=`rm: cannot remove '${e}': ${Bi(n)}
180
+ `,l=1}}return{stdout:s,stderr:c,exitCode:l}}},ua={name:`rm`,flags:[{flag:`-r`,type:`boolean`},{flag:`-R`,type:`boolean`},{flag:`-f`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0}}),fa={};S(fa,{cpCommand:()=>ha,flagsForFuzzing:()=>ga});var pa,ma,ha,ga,_a=x(()=>{Yr(),xr(),O(),pa={name:`cp`,summary:`copy files and directories`,usage:`cp [OPTION]... SOURCE... DEST`,options:[`-r, -R, --recursive copy directories recursively`,`-n, --no-clobber do not overwrite an existing file`,`-p, --preserve preserve file attributes`,`-v, --verbose explain what is being done`,` --help display this help and exit`]},ma={recursive:{short:`r`,long:`recursive`,type:`boolean`},recursiveUpper:{short:`R`,type:`boolean`},noClobber:{short:`n`,long:`no-clobber`,type:`boolean`},preserve:{short:`p`,long:`preserve`,type:`boolean`},verbose:{short:`v`,long:`verbose`,type:`boolean`}},ha={name:`cp`,async execute(e,t){if(E(e))return T(pa);let n=br(`cp`,e,ma);if(!n.ok)return n.error;let r=n.result.flags.recursive||n.result.flags.recursiveUpper,i=n.result.flags.noClobber;n.result.flags.preserve;let a=n.result.flags.verbose,o=n.result.positional;if(o.length<2)return{stdout:``,stderr:`cp: missing destination file operand
181
+ `,exitCode:1};let s=o.pop()??``,c=o,l=t.fs.resolvePath(t.cwd,s),u=``,d=``,f=0,p=!1;try{p=(await t.fs.stat(l)).isDirectory}catch{}if(c.length>1&&!p)return{stdout:``,stderr:`cp: target '${s}' is not a directory
182
+ `,exitCode:1};for(let e of c)try{let n=t.fs.resolvePath(t.cwd,e),o=await t.fs.stat(n),s=l;if(p){let t=e.split(`/`).pop()||e;s=l===`/`?`/${t}`:`${l}/${t}`}if(o.isDirectory&&!r){d+=`cp: -r not specified; omitting directory '${e}'
183
+ `,f=1;continue}if(i)try{await t.fs.stat(s);continue}catch{}await t.fs.cp(n,s,{recursive:r}),a&&(u+=`'${e}' -> '${s}'
184
+ `)}catch(t){let n=Jr(t);n.includes(`ENOENT`)||n.includes(`no such file`)?d+=`cp: cannot stat '${e}': No such file or directory
185
+ `:d+=`cp: cannot copy '${e}': ${n}
186
+ `,f=1}return{stdout:u,stderr:d,exitCode:f}}},ga={name:`cp`,flags:[{flag:`-r`,type:`boolean`},{flag:`-R`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-p`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0,minArgs:2}}),va={};S(va,{flagsForFuzzing:()=>Sa,mvCommand:()=>xa});var ya,ba,xa,Sa,Ca=x(()=>{Yr(),xr(),O(),ya={name:`mv`,summary:`move (rename) files`,usage:`mv [OPTION]... SOURCE... DEST`,options:[`-f, --force do not prompt before overwriting`,`-n, --no-clobber do not overwrite an existing file`,`-v, --verbose explain what is being done`,` --help display this help and exit`]},ba={force:{short:`f`,long:`force`,type:`boolean`},noClobber:{short:`n`,long:`no-clobber`,type:`boolean`},verbose:{short:`v`,long:`verbose`,type:`boolean`}},xa={name:`mv`,async execute(e,t){if(E(e))return T(ya);let n=br(`mv`,e,ba);if(!n.ok)return n.error;n.result.flags.force;let r=n.result.flags.noClobber,i=n.result.flags.verbose,a=n.result.positional;if(a.length<2)return{stdout:``,stderr:`mv: missing destination file operand
187
+ `,exitCode:1};let o=a.pop()??``,s=a,c=t.fs.resolvePath(t.cwd,o),l=``,u=``,d=0,f=!1;try{f=(await t.fs.stat(c)).isDirectory}catch{}if(s.length>1&&!f)return{stdout:``,stderr:`mv: target '${o}' is not a directory
188
+ `,exitCode:1};for(let e of s)try{let n=t.fs.resolvePath(t.cwd,e),a=c;if(f){let t=e.split(`/`).pop()||e;a=c===`/`?`/${t}`:`${c}/${t}`}if(r)try{await t.fs.stat(a);continue}catch{}if(await t.fs.mv(n,a),i){let t=f?`${o}/${e.split(`/`).pop()||e}`:o;l+=`renamed '${e}' -> '${t}'
189
+ `}}catch(t){let n=Jr(t);n.includes(`ENOENT`)||n.includes(`no such file`)?u+=`mv: cannot stat '${e}': No such file or directory
190
+ `:u+=`mv: cannot move '${e}': ${n}
191
+ `,d=1}return{stdout:l,stderr:u,exitCode:d}}},Sa={name:`mv`,flags:[{flag:`-f`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0,minArgs:2}}),wa={};S(wa,{flagsForFuzzing:()=>Da,lnCommand:()=>Ea});var Ta,Ea,Da,Oa=x(()=>{Vi(),O(),Ta={name:`ln`,summary:`make links between files`,usage:`ln [OPTIONS] TARGET LINK_NAME`,options:[`-s create a symbolic link instead of a hard link`,`-f remove existing destination files`,`-n treat LINK_NAME as a normal file if it is a symbolic link to a directory`,`-v print name of each linked file`,` --help display this help and exit`]},Ea={name:`ln`,async execute(e,t){if(E(e))return T(Ta);let n=!1,r=!1,i=!1,a=0;for(;a<e.length&&e[a].startsWith(`-`);){let t=e[a];if(t===`-s`||t===`--symbolic`)n=!0,a++;else if(t===`-f`||t===`--force`)r=!0,a++;else if(t===`-v`||t===`--verbose`)i=!0,a++;else if(t===`-n`||t===`--no-dereference`)a++;else if(/^-[sfvn]+$/.test(t))t.includes(`s`)&&(n=!0),t.includes(`f`)&&(r=!0),t.includes(`v`)&&(i=!0),a++;else if(t===`--`){a++;break}else return D(`ln`,t)}let o=e.slice(a);if(o.length<2)return{stdout:``,stderr:`ln: missing file operand
192
+ `,exitCode:1};let s=o[0],c=o[1],l=t.fs.resolvePath(t.cwd,c);if(await t.fs.exists(l))if(r)try{await t.fs.rm(l,{force:!0})}catch{return{stdout:``,stderr:`ln: cannot remove '${c}': Permission denied
193
+ `,exitCode:1}}else return{stdout:``,stderr:`ln: failed to create ${n?`symbolic `:``}link '${c}': File exists
194
+ `,exitCode:1};try{if(n)await t.fs.symlink(s,l);else{let e=t.fs.resolvePath(t.cwd,s);if(!await t.fs.exists(e))return{stdout:``,stderr:`ln: failed to access '${s}': No such file or directory
195
+ `,exitCode:1};await t.fs.link(e,l)}}catch(e){let t=e;return t.message.includes(`EPERM`)?{stdout:``,stderr:`ln: '${s}': hard link not allowed for directory
196
+ `,exitCode:1}:{stdout:``,stderr:`ln: ${Bi(t.message)}
197
+ `,exitCode:1}}let u=``;return i&&(u=`'${c}' -> '${s}'
198
+ `),{stdout:u,stderr:``,exitCode:0}}},Da={name:`ln`,flags:[{flag:`-s`,type:`boolean`},{flag:`-f`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0,minArgs:2}}),ka={};S(ka,{chmodCommand:()=>Na,flagsForFuzzing:()=>Pa});async function Aa(e,t,n,r,i){let a=``,o=await e.fs.readdir(t);for(let s of o){let o=t===`/`?`/${s}`:`${t}/${s}`,c;c=n===void 0?r===void 0?420:ja(r,(await e.fs.stat(o)).mode):n,await e.fs.chmod(o,c),i&&(a+=`mode of '${o}' changed to ${c.toString(8).padStart(4,`0`)}
199
+ `),(await e.fs.stat(o)).isDirectory&&(a+=await Aa(e,o,n,r,i))}return a}function ja(e,t=420){if(/^[0-7]+$/.test(e))return parseInt(e,8);let n=t&4095,r=e.split(`,`);for(let t of r){let r=t.match(/^([ugoa]*)([+\-=])([rwxXst]*)$/);if(!r)throw Error(`Invalid mode: ${e}`);let i=r[1]||`a`,a=r[2],o=r[3];(i===`a`||i===``)&&(i=`ugo`);let s=0;o.includes(`r`)&&(s|=4),o.includes(`w`)&&(s|=2),(o.includes(`x`)||o.includes(`X`))&&(s|=1);let c=0;o.includes(`s`)&&(i.includes(`u`)&&(c|=2048),i.includes(`g`)&&(c|=1024)),o.includes(`t`)&&(c|=512);for(let e of i){let t=0;e===`u`?t=6:e===`g`?t=3:e===`o`&&(t=0);let r=s<<t;a===`+`?n|=r:a===`-`?n&=~r:a===`=`&&(n&=~(7<<t),n|=r)}a===`+`?n|=c:a===`-`?n&=~c:a===`=`&&(o.includes(`s`)&&(i.includes(`u`)&&(n&=-2049,n|=c&2048),i.includes(`g`)&&(n&=-1025,n|=c&1024)),o.includes(`t`)&&(n&=-513,n|=c&512))}return n}var Ma,Na,Pa,Fa=x(()=>{O(),Ma={name:`chmod`,summary:`change file mode bits`,usage:`chmod [OPTIONS] MODE FILE...`,options:[`-R change files recursively`,`-v output a diagnostic for every file processed`,` --help display this help and exit`]},Na={name:`chmod`,async execute(e,t){if(E(e))return T(Ma);if(e.length<2)return{stdout:``,stderr:`chmod: missing operand
200
+ `,exitCode:1};let n=!1,r=!1,i=0;for(;i<e.length&&e[i].startsWith(`-`);){let t=e[i];if(t===`-R`||t===`--recursive`)n=!0,i++;else if(t===`-v`||t===`--verbose`)r=!0,i++;else if(t===`--`){i++;break}else{if(/^[+-]?[rwxugo]+/.test(t)||/^\d+$/.test(t))break;if(/^-[Rv]+$/.test(t)){t.includes(`R`)&&(n=!0),t.includes(`v`)&&(r=!0),i++;continue}return D(`chmod`,t)}}if(e.length-i<2)return{stdout:``,stderr:`chmod: missing operand
201
+ `,exitCode:1};let a=e[i],o=e.slice(i+1),s=/^[0-7]+$/.test(a),c;if(s)c=parseInt(a,8);else try{ja(a,420)}catch{return{stdout:``,stderr:`chmod: invalid mode: '${a}'
202
+ `,exitCode:1}}let l=``,u=``,d=!1;for(let e of o){let i=t.fs.resolvePath(t.cwd,e);try{let o;if(o=s&&c!==void 0?c:ja(a,(await t.fs.stat(i)).mode),await t.fs.chmod(i,o),r&&(l+=`mode of '${e}' changed to ${o.toString(8).padStart(4,`0`)}
203
+ `),n&&(await t.fs.stat(i)).isDirectory){let e=await Aa(t,i,s?c:void 0,s?void 0:a,r);l+=e}}catch{u+=`chmod: cannot access '${e}': No such file or directory
204
+ `,d=!0}}return{stdout:l,stderr:u,exitCode:+!!d}}},Pa={name:`chmod`,flags:[{flag:`-R`,type:`boolean`},{flag:`-v`,type:`boolean`}],needsArgs:!0,minArgs:2}}),Ia={};S(Ia,{flagsForFuzzing:()=>Ra,pwdCommand:()=>La});var La,Ra,za=x(()=>{La={name:`pwd`,async execute(e,t){let n=!1;for(let t of e)if(t===`-P`)n=!0;else if(t===`-L`)n=!1;else{if(t===`--`)break;t.startsWith(`-`)}let r=t.cwd;if(n)try{r=await t.fs.realpath(t.cwd)}catch{}return{stdout:`${r}
205
+ `,stderr:``,exitCode:0}}},Ra={name:`pwd`,flags:[{flag:`-P`,type:`boolean`},{flag:`-L`,type:`boolean`}]}}),Ba={};S(Ba,{flagsForFuzzing:()=>Ua,readlinkCommand:()=>Ha});var Va,Ha,Ua,Wa=x(()=>{O(),Va={name:`readlink`,summary:`print resolved symbolic links or canonical file names`,usage:`readlink [OPTIONS] FILE...`,options:[`-f canonicalize by following every symlink in every component of the given name recursively`,` --help display this help and exit`]},Ha={name:`readlink`,async execute(e,t){if(E(e))return T(Va);let n=!1,r=0;for(;r<e.length&&e[r].startsWith(`-`);){let t=e[r];if(t===`-f`||t===`--canonicalize`)n=!0,r++;else if(t===`--`){r++;break}else return D(`readlink`,t)}let i=e.slice(r);if(i.length===0)return{stdout:``,stderr:`readlink: missing operand
206
+ `,exitCode:1};let a=``,o=!1;for(let e of i){let r=t.fs.resolvePath(t.cwd,e);try{if(n){let e=r,n=new Set;for(;!n.has(e);){n.add(e);try{let n=await t.fs.readlink(e);if(n.startsWith(`/`))e=n;else{let r=e.substring(0,e.lastIndexOf(`/`))||`/`;e=t.fs.resolvePath(r,n)}}catch{break}}a+=`${e}
207
+ `}else{let e=await t.fs.readlink(r);a+=`${e}
208
+ `}}catch{n?a+=`${r}
209
+ `:o=!0}}return{stdout:a,stderr:``,exitCode:+!!o}}},Ua={name:`readlink`,flags:[{flag:`-f`,type:`boolean`},{flag:`-e`,type:`boolean`}],needsArgs:!0}});function Ga(e,t){let n=10,r=null,i=!1,a=!1,o=!1,s=[];for(let c=0;c<e.length;c++){let l=e[c];if(l===`-n`&&c+1<e.length){let r=e[++c];t===`tail`&&r.startsWith(`+`)?(o=!0,n=parseInt(r.slice(1),10)):n=parseInt(r,10)}else if(t===`tail`&&l.startsWith(`-n+`))o=!0,n=parseInt(l.slice(3),10);else if(l.startsWith(`-n`))n=parseInt(l.slice(2),10);else if(l===`-c`&&c+1<e.length)r=parseInt(e[++c],10);else if(l.startsWith(`-c`))r=parseInt(l.slice(2),10);else if(l.startsWith(`--bytes=`))r=parseInt(l.slice(8),10);else if(l.startsWith(`--lines=`))n=parseInt(l.slice(8),10);else if(l===`-q`||l===`--quiet`||l===`--silent`)i=!0;else if(l===`-v`||l===`--verbose`)a=!0;else if(l.match(/^-\d+$/))n=parseInt(l.slice(1),10);else{if(l.startsWith(`--`)||l.startsWith(`-`)&&l!==`-`)return{ok:!1,error:D(t,l)};s.push(l)}}return r!==null&&(Number.isNaN(r)||r<0)?{ok:!1,error:{stdout:``,stderr:`${t}: invalid number of bytes
210
+ `,exitCode:1}}:Number.isNaN(n)||n<0?{ok:!1,error:{stdout:``,stderr:`${t}: invalid number of lines
211
+ `,exitCode:1}}:{ok:!0,options:{lines:n,bytes:r,quiet:i,verbose:a,files:s,fromLine:o}}}async function Ka(e,t,n,r){let{quiet:i,verbose:a,files:o}=t;if(o.length===0)return{stdout:r(e.stdin),stderr:``,exitCode:0,stdoutEncoding:`binary`};let s=``,c=``,l=0,u=a||!i&&o.length>1,d=0;for(let t=0;t<o.length;t++){let i=o[t];try{let t=e.fs.resolvePath(e.cwd,i),n=await pr(e.fs,t);u&&(d>0&&(s+=`
212
+ `),s+=dr(`==> ${i} <==
213
+ `)),s+=r(n),d++}catch{c+=`${n}: ${i}: No such file or directory
214
+ `,l=1}}return{stdout:s,stderr:c,exitCode:l,stdoutEncoding:`binary`}}function qa(e,t,n){if(n!==null)return e.slice(0,n);if(t===0)return``;let r=0,i=0,a=e.length;for(;r<a&&i<t;){let t=e.indexOf(`
215
+ `,r);if(t===-1)return`${e}
216
+ `;i++,r=t+1}return r>0?e.slice(0,r):``}function Ja(e,t,n,r){if(n!==null)return e.slice(-n);let i=e.length;if(i===0)return``;if(r){let n=0,r=1;for(;n<i&&r<t;){let t=e.indexOf(`
217
+ `,n);if(t===-1)break;r++,n=t+1}let a=e.slice(n);return a.endsWith(`
218
+ `)?a:`${a}
219
+ `}if(t===0)return``;let a=i-1;e[a]===`
220
+ `&&a--;let o=0;for(;a>=0&&o<t;){if(e[a]===`
221
+ `&&(o++,o===t)){a++;break}a--}a<0&&(a=0);let s=e.slice(a);return e[i-1]===`
222
+ `?s:`${s}
223
+ `}var Ya=x(()=>{w(),O()}),Xa={};S(Xa,{flagsForFuzzing:()=>$a,headCommand:()=>Qa});var Za,Qa,$a,eo=x(()=>{O(),Ya(),Za={name:`head`,summary:`output the first part of files`,usage:`head [OPTION]... [FILE]...`,options:[`-c, --bytes=NUM print the first NUM bytes`,`-n, --lines=NUM print the first NUM lines (default 10)`,`-q, --quiet never print headers giving file names`,`-v, --verbose always print headers giving file names`,` --help display this help and exit`]},Qa={name:`head`,async execute(e,t){if(E(e))return T(Za);let n=Ga(e,`head`);if(!n.ok)return n.error;let{lines:r,bytes:i}=n.options;return Ka(t,n.options,`head`,e=>qa(e,r,i))}},$a={name:`head`,flags:[{flag:`-n`,type:`value`,valueHint:`number`},{flag:`-c`,type:`value`,valueHint:`number`},{flag:`-q`,type:`boolean`},{flag:`-v`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),to={};S(to,{flagsForFuzzing:()=>io,tailCommand:()=>ro});var no,ro,io,ao=x(()=>{Ya(),O(),no={name:`tail`,summary:`output the last part of files`,usage:`tail [OPTION]... [FILE]...`,options:[`-c, --bytes=NUM print the last NUM bytes`,`-n, --lines=NUM print the last NUM lines (default 10)`,`-n +NUM print starting from line NUM`,`-q, --quiet never print headers giving file names`,`-v, --verbose always print headers giving file names`,` --help display this help and exit`]},ro={name:`tail`,async execute(e,t){if(E(e))return T(no);let n=Ga(e,`tail`);if(!n.ok)return n.error;let{lines:r,bytes:i,fromLine:a}=n.options;return Ka(t,n.options,`tail`,e=>Ja(e,r,i,a??!1))}},io={name:`tail`,flags:[{flag:`-n`,type:`value`,valueHint:`number`},{flag:`-c`,type:`value`,valueHint:`number`},{flag:`-q`,type:`boolean`},{flag:`-v`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),oo={};S(oo,{flagsForFuzzing:()=>po,wcCommand:()=>fo});function so(e,t){let n=e,r=n.length,i=t?Array.from(ur(e)).length:r,a=0,o=0,s=!1;for(let e=0;e<r;e++){let t=n[e];t===`
224
+ `?(a++,s&&=(o++,!1)):t===` `||t===` `||t===`\r`?s&&=(o++,!1):s=!0}return s&&o++,{lines:a,words:o,third:i}}function co(e,t,n,r,i,a){let o=[];t&&o.push(String(e.lines).padStart(a)),n&&o.push(String(e.words).padStart(a)),r&&o.push(String(e.third).padStart(a));let s=o.join(` `);return i&&(s+=` ${i}`),s}var lo,uo,fo,po,mo=x(()=>{w(),xr(),Tr(),O(),lo={name:`wc`,summary:`print newline, word, and byte counts for each file`,usage:`wc [OPTION]... [FILE]...`,options:[`-c, --bytes print the byte counts`,`-m, --chars print the character counts`,`-l, --lines print the newline counts`,`-w, --words print the word counts`,` --help display this help and exit`]},uo={lines:{short:`l`,long:`lines`,type:`boolean`},words:{short:`w`,long:`words`,type:`boolean`},bytes:{short:`c`,long:`bytes`,type:`boolean`},chars:{short:`m`,long:`chars`,type:`boolean`}},fo={name:`wc`,async execute(e,t){if(E(e))return T(lo);let n=br(`wc`,e,uo);if(!n.ok)return n.error;let{lines:r,words:i}=n.result.flags,a=n.result.flags.bytes,o=n.result.flags.chars,s=n.result.positional;!r&&!i&&!a&&!o&&(r=i=a=!0);let c=a||o,l=await Cr(t,s,{cmdName:`wc`,stopOnError:!1});if(s.length===0)return{stdout:`${co(so(l.files[0].content,o),r,i,c,``,0)}
225
+ `,stderr:``,exitCode:0};let u=[],d=0,f=0,p=0;for(let{filename:e,content:t}of l.files){let n=so(t,o);d+=n.lines,f+=n.words,p+=n.third,u.push({filename:e,stats:n})}let m=s.length>1?d:Math.max(...u.map(e=>e.stats.lines)),h=s.length>1?f:Math.max(...u.map(e=>e.stats.words)),g=s.length>1?p:Math.max(...u.map(e=>e.stats.third)),_=s.length>1?3:0;r&&(_=Math.max(_,String(m).length)),i&&(_=Math.max(_,String(h).length)),c&&(_=Math.max(_,String(g).length));let v=``;for(let{filename:e,stats:t}of u)v+=`${co(t,r,i,c,e,_)}
226
+ `;return s.length>1&&(v+=`${co({lines:d,words:f,third:p},r,i,c,`total`,_)}
227
+ `),{stdout:v,stderr:l.stderr,exitCode:l.exitCode}}},po={name:`wc`,flags:[{flag:`-l`,type:`boolean`},{flag:`-w`,type:`boolean`},{flag:`-c`,type:`boolean`},{flag:`-m`,type:`boolean`}],stdinType:`text`,needsFiles:!0}});function ho(e,t){return(t?`d`:`-`)+[e&256?`r`:`-`,e&128?`w`:`-`,e&64?`x`:`-`,e&32?`r`:`-`,e&16?`w`:`-`,e&8?`x`:`-`,e&4?`r`:`-`,e&2?`w`:`-`,e&1?`x`:`-`].join(``)}var go=x(()=>{}),_o={};S(_o,{flagsForFuzzing:()=>xo,statCommand:()=>bo});var vo,yo,bo,xo,So=x(()=>{xr(),go(),O(),vo={name:`stat`,summary:`display file or file system status`,usage:`stat [OPTION]... FILE...`,options:[`-c FORMAT use the specified FORMAT instead of the default`,` --help display this help and exit`]},yo={format:{short:`c`,type:`string`}},bo={name:`stat`,async execute(e,t){if(E(e))return T(vo);let n=br(`stat`,e,yo);if(!n.ok)return n.error;let r=n.result.flags.format??null,i=n.result.positional;if(i.length===0)return{stdout:``,stderr:`stat: missing operand
228
+ `,exitCode:1};let a=``,o=``,s=!1;for(let e of i){let n=t.fs.resolvePath(t.cwd,e);try{let i=await t.fs.stat(n);if(r){let t=r,n=i.mode.toString(8),o=ho(i.mode,i.isDirectory);t=t.replace(/%n/g,e),t=t.replace(/%N/g,`'${e}'`),t=t.replace(/%s/g,String(i.size)),t=t.replace(/%F/g,i.isDirectory?`directory`:`regular file`),t=t.replace(/%a/g,n),t=t.replace(/%A/g,o),t=t.replace(/%u/g,`1000`),t=t.replace(/%U/g,`user`),t=t.replace(/%g/g,`1000`),t=t.replace(/%G/g,`group`),a+=`${t}
229
+ `}else{let t=i.mode.toString(8).padStart(4,`0`),n=ho(i.mode,i.isDirectory);a+=` File: ${e}
230
+ `,a+=` Size: ${i.size} Blocks: ${Math.ceil(i.size/512)}
231
+ `,a+=`Access: (${t}/${n})
232
+ `,a+=`Modify: ${i.mtime.toISOString()}
233
+ `}}catch{o+=`stat: cannot stat '${e}': No such file or directory
234
+ `,s=!0}}return{stdout:a,stderr:o,exitCode:+!!s}}},xo={name:`stat`,flags:[{flag:`-c`,type:`value`,valueHint:`format`},{flag:`-L`,type:`boolean`}],needsArgs:!0}}),j,M,N,Co,P,F,wo,To,Eo,Do,Oo,ko,Ao,jo,Mo,No,Po,Fo,Io,Lo,Ro,I,zo,Bo,Vo,Ho,Uo,Wo,Go,L,Ko,qo,Jo,Yo,R,Xo,Zo,Qo,$o,es,ts,ns,rs,is,as,os,ss,cs,ls,us,ds,fs,ps,ms,hs,gs,_s,vs,ys,bs,xs,Ss,Cs=x(()=>{j=class e{static FOLD_CASE=1;static LITERAL=2;static CLASS_NL=4;static DOT_NL=8;static ONE_LINE=16;static NON_GREEDY=32;static PERL_X=64;static UNICODE_GROUPS=128;static WAS_DOLLAR=256;static MATCH_NL=e.CLASS_NL|e.DOT_NL;static PERL=e.CLASS_NL|e.ONE_LINE|e.PERL_X|e.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},M=class{static CODES=new Map([[`\x07`,7],[`\b`,8],[` `,9],[`
235
+ `,10],[`\v`,11],[`\f`,12],[`\r`,13],[` `,32],[`"`,34],[`$`,36],[`&`,38],[`(`,40],[`)`,41],[`*`,42],[`+`,43],[`-`,45],[`.`,46],[`0`,48],[`1`,49],[`2`,50],[`3`,51],[`4`,52],[`5`,53],[`6`,54],[`7`,55],[`8`,56],[`9`,57],[`:`,58],[`<`,60],[`>`,62],[`?`,63],[`A`,65],[`B`,66],[`C`,67],[`F`,70],[`P`,80],[`Q`,81],[`U`,85],[`Z`,90],[`[`,91],[`\\`,92],[`]`,93],[`^`,94],[`_`,95],[`a`,97],[`b`,98],[`f`,102],[`i`,105],[`m`,109],[`n`,110],[`r`,114],[`s`,115],[`t`,116],[`v`,118],[`x`,120],[`z`,122],[`{`,123],[`|`,124],[`}`,125]]);static toUpperCase(e){let t=String.fromCodePoint(e).toUpperCase();if(t.length>1)return e;let n=String.fromCodePoint(t.codePointAt(0)).toLowerCase();return n.length>1||n.codePointAt(0)!==e?e:t.codePointAt(0)}static toLowerCase(e){let t=String.fromCodePoint(e).toLowerCase();if(t.length>1)return e;let n=String.fromCodePoint(t.codePointAt(0)).toUpperCase();return n.length>1||n.codePointAt(0)!==e?e:t.codePointAt(0)}},N=class{SIZE=3;constructor(e){this.data=e}getLo(e){return this.data[e*this.SIZE]}getHi(e){return this.data[e*this.SIZE+1]}getStride(e){return this.data[e*this.SIZE+2]}get(e){let t=e*this.SIZE;return[this.data[t],this.data[t+1],this.data[t+2]]}get length(){return this.data.length/this.SIZE}},Co=class e{static CASE_ORBIT=new Map([[75,107],[107,8490],[8490,75],[83,115],[115,383],[383,83],[181,924],[924,956],[956,181],[197,229],[229,8491],[8491,197],[452,453],[453,454],[454,452],[455,456],[456,457],[457,455],[458,459],[459,460],[460,458],[497,498],[498,499],[499,497],[837,921],[921,953],[953,8126],[8126,837],[914,946],[946,976],[976,914],[917,949],[949,1013],[1013,917],[920,952],[952,977],[977,1012],[1012,920],[922,954],[954,1008],[1008,922],[928,960],[960,982],[982,928],[929,961],[961,1009],[1009,929],[931,962],[962,963],[963,931],[934,966],[966,981],[981,934],[937,969],[969,8486],[8486,937],[1042,1074],[1074,7296],[7296,1042],[1044,1076],[1076,7297],[7297,1044],[1054,1086],[1086,7298],[7298,1054],[1057,1089],[1089,7299],[7299,1057],[1058,1090],[1090,7300],[7300,7301],[7301,1058],[1066,1098],[1098,7302],[7302,1066],[1122,1123],[1123,7303],[7303,1122],[7304,42570],[42570,42571],[42571,7304],[7776,7777],[7777,7835],[7835,7776],[223,7838],[7838,223],[8064,8072],[8072,8064],[8065,8073],[8073,8065],[8066,8074],[8074,8066],[8067,8075],[8075,8067],[8068,8076],[8076,8068],[8069,8077],[8077,8069],[8070,8078],[8078,8070],[8071,8079],[8079,8071],[8080,8088],[8088,8080],[8081,8089],[8089,8081],[8082,8090],[8090,8082],[8083,8091],[8091,8083],[8084,8092],[8092,8084],[8085,8093],[8093,8085],[8086,8094],[8094,8086],[8087,8095],[8095,8087],[8096,8104],[8104,8096],[8097,8105],[8105,8097],[8098,8106],[8106,8098],[8099,8107],[8107,8099],[8100,8108],[8108,8100],[8101,8109],[8109,8101],[8102,8110],[8110,8102],[8103,8111],[8111,8103],[8115,8124],[8124,8115],[8131,8140],[8140,8131],[912,8147],[8147,912],[944,8163],[8163,944],[8179,8188],[8188,8179],[64261,64262],[64262,64261],[66560,66600],[66600,66560],[66561,66601],[66601,66561],[66562,66602],[66602,66562],[66563,66603],[66603,66563],[66564,66604],[66604,66564],[66565,66605],[66605,66565],[66566,66606],[66606,66566],[66567,66607],[66607,66567],[66568,66608],[66608,66568],[66569,66609],[66609,66569],[66570,66610],[66610,66570],[66571,66611],[66611,66571],[66572,66612],[66612,66572],[66573,66613],[66613,66573],[66574,66614],[66614,66574],[66575,66615],[66615,66575],[66576,66616],[66616,66576],[66577,66617],[66617,66577],[66578,66618],[66618,66578],[66579,66619],[66619,66579],[66580,66620],[66620,66580],[66581,66621],[66621,66581],[66582,66622],[66622,66582],[66583,66623],[66623,66583],[66584,66624],[66624,66584],[66585,66625],[66625,66585],[66586,66626],[66626,66586],[66587,66627],[66627,66587],[66588,66628],[66628,66588],[66589,66629],[66629,66589],[66590,66630],[66630,66590],[66591,66631],[66631,66591],[66592,66632],[66632,66592],[66593,66633],[66633,66593],[66594,66634],[66634,66594],[66595,66635],[66635,66595],[66596,66636],[66636,66596],[66597,66637],[66637,66597],[66598,66638],[66638,66598],[66599,66639],[66639,66599],[66736,66776],[66776,66736],[66737,66777],[66777,66737],[66738,66778],[66778,66738],[66739,66779],[66779,66739],[66740,66780],[66780,66740],[66741,66781],[66781,66741],[66742,66782],[66782,66742],[66743,66783],[66783,66743],[66744,66784],[66784,66744],[66745,66785],[66785,66745],[66746,66786],[66786,66746],[66747,66787],[66787,66747],[66748,66788],[66788,66748],[66749,66789],[66789,66749],[66750,66790],[66790,66750],[66751,66791],[66791,66751],[66752,66792],[66792,66752],[66753,66793],[66793,66753],[66754,66794],[66794,66754],[66755,66795],[66795,66755],[66756,66796],[66796,66756],[66757,66797],[66797,66757],[66758,66798],[66798,66758],[66759,66799],[66799,66759],[66760,66800],[66800,66760],[66761,66801],[66801,66761],[66762,66802],[66802,66762],[66763,66803],[66803,66763],[66764,66804],[66804,66764],[66765,66805],[66805,66765],[66766,66806],[66806,66766],[66767,66807],[66807,66767],[66768,66808],[66808,66768],[66769,66809],[66809,66769],[66770,66810],[66810,66770],[66771,66811],[66811,66771],[66928,66967],[66967,66928],[66929,66968],[66968,66929],[66930,66969],[66969,66930],[66931,66970],[66970,66931],[66932,66971],[66971,66932],[66933,66972],[66972,66933],[66934,66973],[66973,66934],[66935,66974],[66974,66935],[66936,66975],[66975,66936],[66937,66976],[66976,66937],[66938,66977],[66977,66938],[66940,66979],[66979,66940],[66941,66980],[66980,66941],[66942,66981],[66981,66942],[66943,66982],[66982,66943],[66944,66983],[66983,66944],[66945,66984],[66984,66945],[66946,66985],[66985,66946],[66947,66986],[66986,66947],[66948,66987],[66987,66948],[66949,66988],[66988,66949],[66950,66989],[66989,66950],[66951,66990],[66990,66951],[66952,66991],[66991,66952],[66953,66992],[66992,66953],[66954,66993],[66993,66954],[66956,66995],[66995,66956],[66957,66996],[66996,66957],[66958,66997],[66997,66958],[66959,66998],[66998,66959],[66960,66999],[66999,66960],[66961,67e3],[67e3,66961],[66962,67001],[67001,66962],[66964,67003],[67003,66964],[66965,67004],[67004,66965],[68736,68800],[68800,68736],[68737,68801],[68801,68737],[68738,68802],[68802,68738],[68739,68803],[68803,68739],[68740,68804],[68804,68740],[68741,68805],[68805,68741],[68742,68806],[68806,68742],[68743,68807],[68807,68743],[68744,68808],[68808,68744],[68745,68809],[68809,68745],[68746,68810],[68810,68746],[68747,68811],[68811,68747],[68748,68812],[68812,68748],[68749,68813],[68813,68749],[68750,68814],[68814,68750],[68751,68815],[68815,68751],[68752,68816],[68816,68752],[68753,68817],[68817,68753],[68754,68818],[68818,68754],[68755,68819],[68819,68755],[68756,68820],[68820,68756],[68757,68821],[68821,68757],[68758,68822],[68822,68758],[68759,68823],[68823,68759],[68760,68824],[68824,68760],[68761,68825],[68825,68761],[68762,68826],[68826,68762],[68763,68827],[68827,68763],[68764,68828],[68828,68764],[68765,68829],[68829,68765],[68766,68830],[68830,68766],[68767,68831],[68831,68767],[68768,68832],[68832,68768],[68769,68833],[68833,68769],[68770,68834],[68834,68770],[68771,68835],[68835,68771],[68772,68836],[68836,68772],[68773,68837],[68837,68773],[68774,68838],[68838,68774],[68775,68839],[68839,68775],[68776,68840],[68840,68776],[68777,68841],[68841,68777],[68778,68842],[68842,68778],[68779,68843],[68843,68779],[68780,68844],[68844,68780],[68781,68845],[68845,68781],[68782,68846],[68846,68782],[68783,68847],[68847,68783],[68784,68848],[68848,68784],[68785,68849],[68849,68785],[68786,68850],[68850,68786],[68944,68976],[68976,68944],[68945,68977],[68977,68945],[68946,68978],[68978,68946],[68947,68979],[68979,68947],[68948,68980],[68980,68948],[68949,68981],[68981,68949],[68950,68982],[68982,68950],[68951,68983],[68983,68951],[68952,68984],[68984,68952],[68953,68985],[68985,68953],[68954,68986],[68986,68954],[68955,68987],[68987,68955],[68956,68988],[68988,68956],[68957,68989],[68989,68957],[68958,68990],[68990,68958],[68959,68991],[68991,68959],[68960,68992],[68992,68960],[68961,68993],[68993,68961],[68962,68994],[68994,68962],[68963,68995],[68995,68963],[68964,68996],[68996,68964],[68965,68997],[68997,68965],[71840,71872],[71872,71840],[71841,71873],[71873,71841],[71842,71874],[71874,71842],[71843,71875],[71875,71843],[71844,71876],[71876,71844],[71845,71877],[71877,71845],[71846,71878],[71878,71846],[71847,71879],[71879,71847],[71848,71880],[71880,71848],[71849,71881],[71881,71849],[71850,71882],[71882,71850],[71851,71883],[71883,71851],[71852,71884],[71884,71852],[71853,71885],[71885,71853],[71854,71886],[71886,71854],[71855,71887],[71887,71855],[71856,71888],[71888,71856],[71857,71889],[71889,71857],[71858,71890],[71890,71858],[71859,71891],[71891,71859],[71860,71892],[71892,71860],[71861,71893],[71893,71861],[71862,71894],[71894,71862],[71863,71895],[71895,71863],[71864,71896],[71896,71864],[71865,71897],[71897,71865],[71866,71898],[71898,71866],[71867,71899],[71899,71867],[71868,71900],[71900,71868],[71869,71901],[71901,71869],[71870,71902],[71902,71870],[71871,71903],[71903,71871],[93760,93792],[93792,93760],[93761,93793],[93793,93761],[93762,93794],[93794,93762],[93763,93795],[93795,93763],[93764,93796],[93796,93764],[93765,93797],[93797,93765],[93766,93798],[93798,93766],[93767,93799],[93799,93767],[93768,93800],[93800,93768],[93769,93801],[93801,93769],[93770,93802],[93802,93770],[93771,93803],[93803,93771],[93772,93804],[93804,93772],[93773,93805],[93805,93773],[93774,93806],[93806,93774],[93775,93807],[93807,93775],[93776,93808],[93808,93776],[93777,93809],[93809,93777],[93778,93810],[93810,93778],[93779,93811],[93811,93779],[93780,93812],[93812,93780],[93781,93813],[93813,93781],[93782,93814],[93814,93782],[93783,93815],[93815,93783],[93784,93816],[93816,93784],[93785,93817],[93817,93785],[93786,93818],[93818,93786],[93787,93819],[93819,93787],[93788,93820],[93820,93788],[93789,93821],[93821,93789],[93790,93822],[93822,93790],[93791,93823],[93823,93791],[125184,125218],[125218,125184],[125185,125219],[125219,125185],[125186,125220],[125220,125186],[125187,125221],[125221,125187],[125188,125222],[125222,125188],[125189,125223],[125223,125189],[125190,125224],[125224,125190],[125191,125225],[125225,125191],[125192,125226],[125226,125192],[125193,125227],[125227,125193],[125194,125228],[125228,125194],[125195,125229],[125229,125195],[125196,125230],[125230,125196],[125197,125231],[125231,125197],[125198,125232],[125232,125198],[125199,125233],[125233,125199],[125200,125234],[125234,125200],[125201,125235],[125235,125201],[125202,125236],[125236,125202],[125203,125237],[125237,125203],[125204,125238],[125238,125204],[125205,125239],[125239,125205],[125206,125240],[125240,125206],[125207,125241],[125241,125207],[125208,125242],[125242,125208],[125209,125243],[125243,125209],[125210,125244],[125244,125210],[125211,125245],[125245,125211],[125212,125246],[125246,125212],[125213,125247],[125247,125213],[125214,125248],[125248,125214],[125215,125249],[125249,125215],[125216,125250],[125250,125216],[125217,125251],[125251,125217]]);static C=new N(new Uint32Array([0,31,1,127,159,1,173,888,715,889,896,7,897,899,1,907,909,2,930,1328,398,1367,1368,1,1419,1420,1,1424,1480,56,1481,1487,1,1515,1518,1,1525,1541,1,1564,1757,193,1806,1807,1,1867,1868,1,1970,1983,1,2043,2044,1,2094,2095,1,2111,2140,29,2141,2143,2,2155,2159,1,2191,2198,1,2274,2436,162,2445,2446,1,2449,2450,1,2473,2481,8,2483,2485,1,2490,2491,1,2501,2502,1,2505,2506,1,2511,2518,1,2520,2523,1,2526,2532,6,2533,2559,26,2560,2564,4,2571,2574,1,2577,2578,1,2601,2609,8,2612,2618,3,2619,2621,2,2627,2630,1,2633,2634,1,2638,2640,1,2642,2648,1,2653,2655,2,2656,2661,1,2679,2688,1,2692,2702,10,2706,2729,23,2737,2740,3,2746,2747,1,2758,2766,4,2767,2769,2,2770,2783,1,2788,2789,1,2802,2808,1,2816,2820,4,2829,2830,1,2833,2834,1,2857,2865,8,2868,2874,6,2875,2885,10,2886,2889,3,2890,2894,4,2895,2900,1,2904,2907,1,2910,2916,6,2917,2936,19,2937,2945,1,2948,2955,7,2956,2957,1,2961,2966,5,2967,2968,1,2971,2973,2,2976,2978,1,2981,2983,1,2987,2989,1,3002,3005,1,3011,3013,1,3017,3022,5,3023,3025,2,3026,3030,1,3032,3045,1,3067,3071,1,3085,3089,4,3113,3130,17,3131,3141,10,3145,3150,5,3151,3156,1,3159,3163,4,3164,3166,2,3167,3172,5,3173,3184,11,3185,3190,1,3213,3217,4,3241,3252,11,3258,3259,1,3269,3273,4,3278,3284,1,3287,3292,1,3295,3300,5,3301,3312,11,3316,3327,1,3341,3345,4,3397,3401,4,3408,3411,1,3428,3429,1,3456,3460,4,3479,3481,1,3506,3516,10,3518,3519,1,3527,3529,1,3531,3534,1,3541,3543,2,3552,3557,1,3568,3569,1,3573,3584,1,3643,3646,1,3676,3712,1,3715,3717,2,3723,3748,25,3750,3774,24,3775,3781,6,3783,3791,8,3802,3803,1,3808,3839,1,3912,3949,37,3950,3952,1,3992,4029,37,4045,4059,14,4060,4095,1,4294,4296,2,4297,4300,1,4302,4303,1,4681,4686,5,4687,4695,8,4697,4702,5,4703,4745,42,4750,4751,1,4785,4790,5,4791,4799,8,4801,4806,5,4807,4823,16,4881,4886,5,4887,4955,68,4956,4989,33,4990,4991,1,5018,5023,1,5110,5111,1,5118,5119,1,5789,5791,1,5881,5887,1,5910,5918,1,5943,5951,1,5972,5983,1,5997,6001,4,6004,6015,1,6110,6111,1,6122,6127,1,6138,6143,1,6158,6170,12,6171,6175,1,6265,6271,1,6315,6319,1,6390,6399,1,6431,6444,13,6445,6447,1,6460,6463,1,6465,6467,1,6510,6511,1,6517,6527,1,6572,6575,1,6602,6607,1,6619,6621,1,6684,6685,1,6751,6781,30,6782,6794,12,6795,6799,1,6810,6815,1,6830,6831,1,6863,6911,1,6989,7156,167,7157,7163,1,7224,7226,1,7242,7244,1,7307,7311,1,7355,7356,1,7368,7375,1,7419,7423,1,7958,7959,1,7966,7967,1,8006,8007,1,8014,8015,1,8024,8030,2,8062,8063,1,8117,8133,16,8148,8149,1,8156,8176,20,8177,8181,4,8191,8203,12,8204,8207,1,8234,8238,1,8288,8303,1,8306,8307,1,8335,8349,14,8350,8351,1,8385,8399,1,8433,8447,1,8588,8591,1,9258,9279,1,9291,9311,1,11124,11125,1,11158,11508,350,11509,11512,1,11558,11560,2,11561,11564,1,11566,11567,1,11624,11630,1,11633,11646,1,11671,11679,1,11687,11743,8,11870,11903,1,11930,12020,90,12021,12031,1,12246,12271,1,12352,12439,87,12440,12544,104,12545,12548,1,12592,12687,95,12774,12782,1,12831,42125,29294,42126,42127,1,42183,42191,1,42540,42559,1,42744,42751,1,42958,42959,1,42962,42964,2,42973,42993,1,43053,43055,1,43066,43071,1,43128,43135,1,43206,43213,1,43226,43231,1,43348,43358,1,43389,43391,1,43470,43482,12,43483,43485,1,43519,43575,56,43576,43583,1,43598,43599,1,43610,43611,1,43715,43738,1,43767,43776,1,43783,43784,1,43791,43792,1,43799,43807,1,43815,43823,8,43884,43887,1,44014,44015,1,44026,44031,1,55204,55215,1,55239,55242,1,55292,63743,1,64110,64111,1,64218,64255,1,64263,64274,1,64280,64284,1,64311,64317,6,64319,64325,3,64451,64466,1,64912,64913,1,64968,64974,1,64976,65007,1,65050,65055,1,65107,65127,20,65132,65135,1,65141,65277,136,65278,65280,1,65471,65473,1,65480,65481,1,65488,65489,1,65496,65497,1,65501,65503,1,65511,65519,8,65520,65531,1,65534,65535,1,65548,65575,27,65595,65598,3,65614,65615,1,65630,65663,1,65787,65791,1,65795,65798,1,65844,65846,1,65935,65949,14,65950,65951,1,65953,65999,1,66046,66175,1,66205,66207,1,66257,66271,1,66300,66303,1,66340,66348,1,66379,66383,1,66427,66431,1,66462,66500,38,66501,66503,1,66518,66559,1,66718,66719,1,66730,66735,1,66772,66775,1,66812,66815,1,66856,66863,1,66916,66926,1,66939,66955,16,66963,66966,3,66978,66994,16,67002,67005,3,67006,67007,1,67060,67071,1,67383,67391,1,67414,67423,1,67432,67455,1,67462,67505,43,67515,67583,1,67590,67591,1,67593,67638,45,67641,67643,1,67645,67646,1,67670,67743,73,67744,67750,1,67760,67807,1,67827,67830,3,67831,67834,1,67868,67870,1,67898,67902,1,67904,67967,1,68024,68027,1,68048,68049,1,68100,68103,3,68104,68107,1,68116,68120,4,68150,68151,1,68155,68158,1,68169,68175,1,68185,68191,1,68256,68287,1,68327,68330,1,68343,68351,1,68406,68408,1,68438,68439,1,68467,68471,1,68498,68504,1,68509,68520,1,68528,68607,1,68681,68735,1,68787,68799,1,68851,68857,1,68904,68911,1,68922,68927,1,68966,68968,1,68998,69005,1,69008,69215,1,69247,69290,43,69294,69295,1,69298,69313,1,69317,69371,1,69416,69423,1,69466,69487,1,69514,69551,1,69580,69599,1,69623,69631,1,69710,69713,1,69750,69758,1,69821,69827,6,69828,69839,1,69865,69871,1,69882,69887,1,69941,69960,19,69961,69967,1,70007,70015,1,70112,70133,21,70134,70143,1,70162,70210,48,70211,70271,1,70279,70281,2,70286,70302,16,70314,70319,1,70379,70383,1,70394,70399,1,70404,70413,9,70414,70417,3,70418,70441,23,70449,70452,3,70458,70469,11,70470,70473,3,70474,70478,4,70479,70481,2,70482,70486,1,70488,70492,1,70500,70501,1,70509,70511,1,70517,70527,1,70538,70540,2,70541,70543,2,70582,70593,11,70595,70596,1,70598,70603,5,70614,70617,3,70618,70624,1,70627,70655,1,70748,70754,6,70755,70783,1,70856,70863,1,70874,71039,1,71094,71095,1,71134,71167,1,71237,71247,1,71258,71263,1,71277,71295,1,71354,71359,1,71370,71375,1,71396,71423,1,71451,71452,1,71468,71471,1,71495,71679,1,71740,71839,1,71923,71934,1,71943,71944,1,71946,71947,1,71956,71959,3,71990,71993,3,71994,72007,13,72008,72015,1,72026,72095,1,72104,72105,1,72152,72153,1,72165,72191,1,72264,72271,1,72355,72367,1,72441,72447,1,72458,72639,1,72674,72687,1,72698,72703,1,72713,72759,46,72774,72783,1,72813,72815,1,72848,72849,1,72872,72887,15,72888,72959,1,72967,72970,3,73015,73017,1,73019,73022,3,73032,73039,1,73050,73055,1,73062,73065,3,73103,73106,3,73113,73119,1,73130,73439,1,73465,73471,1,73489,73531,42,73532,73533,1,73563,73647,1,73649,73663,1,73714,73726,1,74650,74751,1,74863,74869,6,74870,74879,1,75076,77711,1,77811,77823,1,78896,78911,1,78934,78943,1,82939,82943,1,83527,90367,1,90426,92159,1,92729,92735,1,92767,92778,11,92779,92781,1,92863,92874,11,92875,92879,1,92910,92911,1,92918,92927,1,92998,93007,1,93018,93026,8,93048,93052,1,93072,93503,1,93562,93759,1,93851,93951,1,94027,94030,1,94088,94094,1,94112,94175,1,94181,94191,1,94194,94207,1,100344,100351,1,101590,101630,1,101641,110575,1,110580,110588,8,110591,110883,292,110884,110897,1,110899,110927,1,110931,110932,1,110934,110947,1,110952,110959,1,111356,113663,1,113771,113775,1,113789,113791,1,113801,113807,1,113818,113819,1,113824,117759,1,118010,118015,1,118452,118527,1,118574,118575,1,118599,118607,1,118724,118783,1,119030,119039,1,119079,119080,1,119155,119162,1,119275,119295,1,119366,119487,1,119508,119519,1,119540,119551,1,119639,119647,1,119673,119807,1,119893,119965,72,119968,119969,1,119971,119972,1,119975,119976,1,119981,119994,13,119996,120004,8,120070,120075,5,120076,120085,9,120093,120122,29,120127,120133,6,120135,120137,1,120145,120486,341,120487,120780,293,120781,121484,703,121485,121498,1,121504,121520,16,121521,122623,1,122655,122660,1,122667,122879,1,122887,122905,18,122906,122914,8,122917,122923,6,122924,122927,1,122990,123022,1,123024,123135,1,123181,123183,1,123198,123199,1,123210,123213,1,123216,123535,1,123567,123583,1,123642,123646,1,123648,124111,1,124154,124367,1,124411,124414,1,124416,124895,1,124903,124908,5,124911,124927,16,125125,125126,1,125143,125183,1,125260,125263,1,125274,125277,1,125280,126064,1,126133,126208,1,126270,126463,1,126468,126496,28,126499,126501,2,126502,126504,2,126515,126520,5,126522,126524,2,126525,126529,1,126531,126534,1,126536,126540,2,126544,126547,3,126549,126550,1,126552,126560,2,126563,126565,2,126566,126571,5,126579,126589,5,126591,126602,11,126620,126624,1,126628,126634,6,126652,126703,1,126706,126975,1,127020,127023,1,127124,127135,1,127151,127152,1,127168,127184,16,127222,127231,1,127406,127461,1,127491,127503,1,127548,127551,1,127561,127567,1,127570,127583,1,127590,127743,1,128728,128731,1,128749,128751,1,128765,128767,1,128887,128890,1,128986,128991,1,129004,129007,1,129009,129023,1,129036,129039,1,129096,129103,1,129114,129119,1,129160,129167,1,129198,129199,1,129212,129215,1,129218,129279,1,129620,129631,1,129646,129647,1,129661,129663,1,129674,129678,1,129735,129741,1,129757,129758,1,129770,129775,1,129785,129791,1,129939,130042,103,130043,131071,1,173792,173823,1,177978,177983,1,178206,178207,1,183970,183983,1,191457,191471,1,192094,194559,1,195102,196607,1,201547,201551,1,205744,917759,1,918e3,1114111,1]));static Cc=new N(new Uint32Array([0,31,1,127,159,1]));static Cf=new N(new Uint32Array([173,1536,1363,1537,1541,1,1564,1757,193,1807,2192,385,2193,2274,81,6158,8203,2045,8204,8207,1,8234,8238,1,8288,8292,1,8294,8303,1,65279,65529,250,65530,65531,1,69821,69837,16,78896,78911,1,113824,113827,1,119155,119162,1,917505,917536,31,917537,917631,1]));static Co=new N(new Uint32Array([57344,63743,1,983040,1048573,1,1048576,1114109,1]));static Cs=new N(new Uint32Array([55296,57343,1]));static L=new N(new Uint32Array([65,90,1,97,122,1,170,181,11,186,192,6,193,214,1,216,246,1,248,705,1,710,721,1,736,740,1,748,750,2,880,884,1,886,887,1,890,893,1,895,902,7,904,906,1,908,910,2,911,929,1,931,1013,1,1015,1153,1,1162,1327,1,1329,1366,1,1369,1376,7,1377,1416,1,1488,1514,1,1519,1522,1,1568,1610,1,1646,1647,1,1649,1747,1,1749,1765,16,1766,1774,8,1775,1786,11,1787,1788,1,1791,1808,17,1810,1839,1,1869,1957,1,1969,1994,25,1995,2026,1,2036,2037,1,2042,2048,6,2049,2069,1,2074,2084,10,2088,2112,24,2113,2136,1,2144,2154,1,2160,2183,1,2185,2190,1,2208,2249,1,2308,2361,1,2365,2384,19,2392,2401,1,2417,2432,1,2437,2444,1,2447,2448,1,2451,2472,1,2474,2480,1,2482,2486,4,2487,2489,1,2493,2510,17,2524,2525,1,2527,2529,1,2544,2545,1,2556,2565,9,2566,2570,1,2575,2576,1,2579,2600,1,2602,2608,1,2610,2611,1,2613,2614,1,2616,2617,1,2649,2652,1,2654,2674,20,2675,2676,1,2693,2701,1,2703,2705,1,2707,2728,1,2730,2736,1,2738,2739,1,2741,2745,1,2749,2768,19,2784,2785,1,2809,2821,12,2822,2828,1,2831,2832,1,2835,2856,1,2858,2864,1,2866,2867,1,2869,2873,1,2877,2908,31,2909,2911,2,2912,2913,1,2929,2947,18,2949,2954,1,2958,2960,1,2962,2965,1,2969,2970,1,2972,2974,2,2975,2979,4,2980,2984,4,2985,2986,1,2990,3001,1,3024,3077,53,3078,3084,1,3086,3088,1,3090,3112,1,3114,3129,1,3133,3160,27,3161,3162,1,3165,3168,3,3169,3200,31,3205,3212,1,3214,3216,1,3218,3240,1,3242,3251,1,3253,3257,1,3261,3293,32,3294,3296,2,3297,3313,16,3314,3332,18,3333,3340,1,3342,3344,1,3346,3386,1,3389,3406,17,3412,3414,1,3423,3425,1,3450,3455,1,3461,3478,1,3482,3505,1,3507,3515,1,3517,3520,3,3521,3526,1,3585,3632,1,3634,3635,1,3648,3654,1,3713,3714,1,3716,3718,2,3719,3722,1,3724,3747,1,3749,3751,2,3752,3760,1,3762,3763,1,3773,3776,3,3777,3780,1,3782,3804,22,3805,3807,1,3840,3904,64,3905,3911,1,3913,3948,1,3976,3980,1,4096,4138,1,4159,4176,17,4177,4181,1,4186,4189,1,4193,4197,4,4198,4206,8,4207,4208,1,4213,4225,1,4238,4256,18,4257,4293,1,4295,4301,6,4304,4346,1,4348,4680,1,4682,4685,1,4688,4694,1,4696,4698,2,4699,4701,1,4704,4744,1,4746,4749,1,4752,4784,1,4786,4789,1,4792,4798,1,4800,4802,2,4803,4805,1,4808,4822,1,4824,4880,1,4882,4885,1,4888,4954,1,4992,5007,1,5024,5109,1,5112,5117,1,5121,5740,1,5743,5759,1,5761,5786,1,5792,5866,1,5873,5880,1,5888,5905,1,5919,5937,1,5952,5969,1,5984,5996,1,5998,6e3,1,6016,6067,1,6103,6108,5,6176,6264,1,6272,6276,1,6279,6312,1,6314,6320,6,6321,6389,1,6400,6430,1,6480,6509,1,6512,6516,1,6528,6571,1,6576,6601,1,6656,6678,1,6688,6740,1,6823,6917,94,6918,6963,1,6981,6988,1,7043,7072,1,7086,7087,1,7098,7141,1,7168,7203,1,7245,7247,1,7258,7293,1,7296,7306,1,7312,7354,1,7357,7359,1,7401,7404,1,7406,7411,1,7413,7414,1,7418,7424,6,7425,7615,1,7680,7957,1,7960,7965,1,7968,8005,1,8008,8013,1,8016,8023,1,8025,8031,2,8032,8061,1,8064,8116,1,8118,8124,1,8126,8130,4,8131,8132,1,8134,8140,1,8144,8147,1,8150,8155,1,8160,8172,1,8178,8180,1,8182,8188,1,8305,8319,14,8336,8348,1,8450,8455,5,8458,8467,1,8469,8473,4,8474,8477,1,8484,8490,2,8491,8493,1,8495,8505,1,8508,8511,1,8517,8521,1,8526,8579,53,8580,11264,2684,11265,11492,1,11499,11502,1,11506,11507,1,11520,11557,1,11559,11565,6,11568,11623,1,11631,11648,17,11649,11670,1,11680,11686,1,11688,11694,1,11696,11702,1,11704,11710,1,11712,11718,1,11720,11726,1,11728,11734,1,11736,11742,1,11823,12293,470,12294,12337,43,12338,12341,1,12347,12348,1,12353,12438,1,12445,12447,1,12449,12538,1,12540,12543,1,12549,12591,1,12593,12686,1,12704,12735,1,12784,12799,1,13312,19903,1,19968,42124,1,42192,42237,1,42240,42508,1,42512,42527,1,42538,42539,1,42560,42606,1,42623,42653,1,42656,42725,1,42775,42783,1,42786,42888,1,42891,42957,1,42960,42961,1,42963,42965,2,42966,42972,1,42994,43009,1,43011,43013,1,43015,43018,1,43020,43042,1,43072,43123,1,43138,43187,1,43250,43255,1,43259,43261,2,43262,43274,12,43275,43301,1,43312,43334,1,43360,43388,1,43396,43442,1,43471,43488,17,43489,43492,1,43494,43503,1,43514,43518,1,43520,43560,1,43584,43586,1,43588,43595,1,43616,43638,1,43642,43646,4,43647,43695,1,43697,43701,4,43702,43705,3,43706,43709,1,43712,43714,2,43739,43741,1,43744,43754,1,43762,43764,1,43777,43782,1,43785,43790,1,43793,43798,1,43808,43814,1,43816,43822,1,43824,43866,1,43868,43881,1,43888,44002,1,44032,55203,1,55216,55238,1,55243,55291,1,63744,64109,1,64112,64217,1,64256,64262,1,64275,64279,1,64285,64287,2,64288,64296,1,64298,64310,1,64312,64316,1,64318,64320,2,64321,64323,2,64324,64326,2,64327,64433,1,64467,64829,1,64848,64911,1,64914,64967,1,65008,65019,1,65136,65140,1,65142,65276,1,65313,65338,1,65345,65370,1,65382,65470,1,65474,65479,1,65482,65487,1,65490,65495,1,65498,65500,1,65536,65547,1,65549,65574,1,65576,65594,1,65596,65597,1,65599,65613,1,65616,65629,1,65664,65786,1,66176,66204,1,66208,66256,1,66304,66335,1,66349,66368,1,66370,66377,1,66384,66421,1,66432,66461,1,66464,66499,1,66504,66511,1,66560,66717,1,66736,66771,1,66776,66811,1,66816,66855,1,66864,66915,1,66928,66938,1,66940,66954,1,66956,66962,1,66964,66965,1,66967,66977,1,66979,66993,1,66995,67001,1,67003,67004,1,67008,67059,1,67072,67382,1,67392,67413,1,67424,67431,1,67456,67461,1,67463,67504,1,67506,67514,1,67584,67589,1,67592,67594,2,67595,67637,1,67639,67640,1,67644,67647,3,67648,67669,1,67680,67702,1,67712,67742,1,67808,67826,1,67828,67829,1,67840,67861,1,67872,67897,1,67968,68023,1,68030,68031,1,68096,68112,16,68113,68115,1,68117,68119,1,68121,68149,1,68192,68220,1,68224,68252,1,68288,68295,1,68297,68324,1,68352,68405,1,68416,68437,1,68448,68466,1,68480,68497,1,68608,68680,1,68736,68786,1,68800,68850,1,68864,68899,1,68938,68965,1,68975,68997,1,69248,69289,1,69296,69297,1,69314,69316,1,69376,69404,1,69415,69424,9,69425,69445,1,69488,69505,1,69552,69572,1,69600,69622,1,69635,69687,1,69745,69746,1,69749,69763,14,69764,69807,1,69840,69864,1,69891,69926,1,69956,69959,3,69968,70002,1,70006,70019,13,70020,70066,1,70081,70084,1,70106,70108,2,70144,70161,1,70163,70187,1,70207,70208,1,70272,70278,1,70280,70282,2,70283,70285,1,70287,70301,1,70303,70312,1,70320,70366,1,70405,70412,1,70415,70416,1,70419,70440,1,70442,70448,1,70450,70451,1,70453,70457,1,70461,70480,19,70493,70497,1,70528,70537,1,70539,70542,3,70544,70581,1,70583,70609,26,70611,70656,45,70657,70708,1,70727,70730,1,70751,70753,1,70784,70831,1,70852,70853,1,70855,71040,185,71041,71086,1,71128,71131,1,71168,71215,1,71236,71296,60,71297,71338,1,71352,71424,72,71425,71450,1,71488,71494,1,71680,71723,1,71840,71903,1,71935,71942,1,71945,71948,3,71949,71955,1,71957,71958,1,71960,71983,1,71999,72001,2,72096,72103,1,72106,72144,1,72161,72163,2,72192,72203,11,72204,72242,1,72250,72272,22,72284,72329,1,72349,72368,19,72369,72440,1,72640,72672,1,72704,72712,1,72714,72750,1,72768,72818,50,72819,72847,1,72960,72966,1,72968,72969,1,72971,73008,1,73030,73056,26,73057,73061,1,73063,73064,1,73066,73097,1,73112,73440,328,73441,73458,1,73474,73476,2,73477,73488,1,73490,73523,1,73648,73728,80,73729,74649,1,74880,75075,1,77712,77808,1,77824,78895,1,78913,78918,1,78944,82938,1,82944,83526,1,90368,90397,1,92160,92728,1,92736,92766,1,92784,92862,1,92880,92909,1,92928,92975,1,92992,92995,1,93027,93047,1,93053,93071,1,93504,93548,1,93760,93823,1,93952,94026,1,94032,94099,67,94100,94111,1,94176,94177,1,94179,94208,29,94209,100343,1,100352,101589,1,101631,101640,1,110576,110579,1,110581,110587,1,110589,110590,1,110592,110882,1,110898,110928,30,110929,110930,1,110933,110948,15,110949,110951,1,110960,111355,1,113664,113770,1,113776,113788,1,113792,113800,1,113808,113817,1,119808,119892,1,119894,119964,1,119966,119967,1,119970,119973,3,119974,119977,3,119978,119980,1,119982,119993,1,119995,119997,2,119998,120003,1,120005,120069,1,120071,120074,1,120077,120084,1,120086,120092,1,120094,120121,1,120123,120126,1,120128,120132,1,120134,120138,4,120139,120144,1,120146,120485,1,120488,120512,1,120514,120538,1,120540,120570,1,120572,120596,1,120598,120628,1,120630,120654,1,120656,120686,1,120688,120712,1,120714,120744,1,120746,120770,1,120772,120779,1,122624,122654,1,122661,122666,1,122928,122989,1,123136,123180,1,123191,123197,1,123214,123536,322,123537,123565,1,123584,123627,1,124112,124139,1,124368,124397,1,124400,124896,496,124897,124902,1,124904,124907,1,124909,124910,1,124912,124926,1,124928,125124,1,125184,125251,1,125259,126464,1205,126465,126467,1,126469,126495,1,126497,126498,1,126500,126503,3,126505,126514,1,126516,126519,1,126521,126523,2,126530,126535,5,126537,126541,2,126542,126543,1,126545,126546,1,126548,126551,3,126553,126561,2,126562,126564,2,126567,126570,1,126572,126578,1,126580,126583,1,126585,126588,1,126590,126592,2,126593,126601,1,126603,126619,1,126625,126627,1,126629,126633,1,126635,126651,1,131072,173791,1,173824,177977,1,177984,178205,1,178208,183969,1,183984,191456,1,191472,192093,1,194560,195101,1,196608,201546,1,201552,205743,1]));static foldL=new N(new Uint32Array([837,837,1]));static Ll=new N(new Uint32Array([97,122,1,181,223,42,224,246,1,248,255,1,257,311,2,312,328,2,329,375,2,378,382,2,383,384,1,387,389,2,392,396,4,397,402,5,405,409,4,410,411,1,414,417,3,419,421,2,424,426,2,427,429,2,432,436,4,438,441,3,442,445,3,446,447,1,454,460,3,462,476,2,477,495,2,496,499,3,501,505,4,507,563,2,564,569,1,572,575,3,576,578,2,583,591,2,592,659,1,661,687,1,881,883,2,887,891,4,892,893,1,912,940,28,941,974,1,976,977,1,981,983,1,985,1007,2,1008,1011,1,1013,1019,3,1020,1072,52,1073,1119,1,1121,1153,2,1163,1215,2,1218,1230,2,1231,1327,2,1376,1416,1,4304,4346,1,4349,4351,1,5112,5117,1,7296,7304,1,7306,7424,118,7425,7467,1,7531,7543,1,7545,7578,1,7681,7829,2,7830,7837,1,7839,7935,2,7936,7943,1,7952,7957,1,7968,7975,1,7984,7991,1,8e3,8005,1,8016,8023,1,8032,8039,1,8048,8061,1,8064,8071,1,8080,8087,1,8096,8103,1,8112,8116,1,8118,8119,1,8126,8130,4,8131,8132,1,8134,8135,1,8144,8147,1,8150,8151,1,8160,8167,1,8178,8180,1,8182,8183,1,8458,8462,4,8463,8467,4,8495,8505,5,8508,8509,1,8518,8521,1,8526,8580,54,11312,11359,1,11361,11365,4,11366,11372,2,11377,11379,2,11380,11382,2,11383,11387,1,11393,11491,2,11492,11500,8,11502,11507,5,11520,11557,1,11559,11565,6,42561,42605,2,42625,42651,2,42787,42799,2,42800,42801,1,42803,42865,2,42866,42872,1,42874,42876,2,42879,42887,2,42892,42894,2,42897,42899,2,42900,42901,1,42903,42921,2,42927,42933,6,42935,42947,2,42952,42954,2,42957,42961,4,42963,42971,2,42998,43002,4,43824,43866,1,43872,43880,1,43888,43967,1,64256,64262,1,64275,64279,1,65345,65370,1,66600,66639,1,66776,66811,1,66967,66977,1,66979,66993,1,66995,67001,1,67003,67004,1,68800,68850,1,68976,68997,1,71872,71903,1,93792,93823,1,119834,119859,1,119886,119892,1,119894,119911,1,119938,119963,1,119990,119993,1,119995,119997,2,119998,120003,1,120005,120015,1,120042,120067,1,120094,120119,1,120146,120171,1,120198,120223,1,120250,120275,1,120302,120327,1,120354,120379,1,120406,120431,1,120458,120485,1,120514,120538,1,120540,120545,1,120572,120596,1,120598,120603,1,120630,120654,1,120656,120661,1,120688,120712,1,120714,120719,1,120746,120770,1,120772,120777,1,120779,122624,1845,122625,122633,1,122635,122654,1,122661,122666,1,125218,125251,1]));static foldLl=new N(new Uint32Array([65,90,1,192,214,1,216,222,1,256,302,2,306,310,2,313,327,2,330,376,2,377,381,2,385,386,1,388,390,2,391,393,2,394,395,1,398,401,1,403,404,1,406,408,1,412,413,1,415,416,1,418,422,2,423,425,2,428,430,2,431,433,2,434,435,1,437,439,2,440,444,4,452,453,1,455,456,1,458,459,1,461,475,2,478,494,2,497,498,1,500,502,2,503,504,1,506,562,2,570,571,1,573,574,1,577,579,2,580,582,1,584,590,2,837,880,43,882,886,4,895,902,7,904,906,1,908,910,2,911,913,2,914,929,1,931,939,1,975,984,9,986,1006,2,1012,1015,3,1017,1018,1,1021,1071,1,1120,1152,2,1162,1216,2,1217,1229,2,1232,1326,2,1329,1366,1,4256,4293,1,4295,4301,6,5024,5109,1,7305,7312,7,7313,7354,1,7357,7359,1,7680,7828,2,7838,7934,2,7944,7951,1,7960,7965,1,7976,7983,1,7992,7999,1,8008,8013,1,8025,8031,2,8040,8047,1,8072,8079,1,8088,8095,1,8104,8111,1,8120,8124,1,8136,8140,1,8152,8155,1,8168,8172,1,8184,8188,1,8486,8490,4,8491,8498,7,8579,11264,2685,11265,11311,1,11360,11362,2,11363,11364,1,11367,11373,2,11374,11376,1,11378,11381,3,11390,11392,1,11394,11490,2,11499,11501,2,11506,42560,31054,42562,42604,2,42624,42650,2,42786,42798,2,42802,42862,2,42873,42877,2,42878,42886,2,42891,42893,2,42896,42898,2,42902,42922,2,42923,42926,1,42928,42932,1,42934,42948,2,42949,42951,1,42953,42955,2,42956,42960,4,42966,42972,2,42997,65313,22316,65314,65338,1,66560,66599,1,66736,66771,1,66928,66938,1,66940,66954,1,66956,66962,1,66964,66965,1,68736,68786,1,68944,68965,1,71840,71871,1,93760,93791,1,125184,125217,1]));static Lm=new N(new Uint32Array([688,705,1,710,721,1,736,740,1,748,750,2,884,890,6,1369,1600,231,1765,1766,1,2036,2037,1,2042,2074,32,2084,2088,4,2249,2417,168,3654,3782,128,4348,6103,1755,6211,6823,612,7288,7293,1,7468,7530,1,7544,7579,35,7580,7615,1,8305,8319,14,8336,8348,1,11388,11389,1,11631,11823,192,12293,12337,44,12338,12341,1,12347,12445,98,12446,12540,94,12541,12542,1,40981,42232,1251,42233,42237,1,42508,42623,115,42652,42653,1,42775,42783,1,42864,42888,24,42994,42996,1,43e3,43001,1,43471,43494,23,43632,43741,109,43763,43764,1,43868,43871,1,43881,65392,21511,65438,65439,1,67456,67461,1,67463,67504,1,67506,67514,1,68942,68975,33,92992,92995,1,93504,93506,1,93547,93548,1,94099,94111,1,94176,94177,1,94179,110576,16397,110577,110579,1,110581,110587,1,110589,110590,1,122928,122989,1,123191,123197,1,124139,125259,1120]));static Lo=new N(new Uint32Array([170,186,16,443,448,5,449,451,1,660,1488,828,1489,1514,1,1519,1522,1,1568,1599,1,1601,1610,1,1646,1647,1,1649,1747,1,1749,1774,25,1775,1786,11,1787,1788,1,1791,1808,17,1810,1839,1,1869,1957,1,1969,1994,25,1995,2026,1,2048,2069,1,2112,2136,1,2144,2154,1,2160,2183,1,2185,2190,1,2208,2248,1,2308,2361,1,2365,2384,19,2392,2401,1,2418,2432,1,2437,2444,1,2447,2448,1,2451,2472,1,2474,2480,1,2482,2486,4,2487,2489,1,2493,2510,17,2524,2525,1,2527,2529,1,2544,2545,1,2556,2565,9,2566,2570,1,2575,2576,1,2579,2600,1,2602,2608,1,2610,2611,1,2613,2614,1,2616,2617,1,2649,2652,1,2654,2674,20,2675,2676,1,2693,2701,1,2703,2705,1,2707,2728,1,2730,2736,1,2738,2739,1,2741,2745,1,2749,2768,19,2784,2785,1,2809,2821,12,2822,2828,1,2831,2832,1,2835,2856,1,2858,2864,1,2866,2867,1,2869,2873,1,2877,2908,31,2909,2911,2,2912,2913,1,2929,2947,18,2949,2954,1,2958,2960,1,2962,2965,1,2969,2970,1,2972,2974,2,2975,2979,4,2980,2984,4,2985,2986,1,2990,3001,1,3024,3077,53,3078,3084,1,3086,3088,1,3090,3112,1,3114,3129,1,3133,3160,27,3161,3162,1,3165,3168,3,3169,3200,31,3205,3212,1,3214,3216,1,3218,3240,1,3242,3251,1,3253,3257,1,3261,3293,32,3294,3296,2,3297,3313,16,3314,3332,18,3333,3340,1,3342,3344,1,3346,3386,1,3389,3406,17,3412,3414,1,3423,3425,1,3450,3455,1,3461,3478,1,3482,3505,1,3507,3515,1,3517,3520,3,3521,3526,1,3585,3632,1,3634,3635,1,3648,3653,1,3713,3714,1,3716,3718,2,3719,3722,1,3724,3747,1,3749,3751,2,3752,3760,1,3762,3763,1,3773,3776,3,3777,3780,1,3804,3807,1,3840,3904,64,3905,3911,1,3913,3948,1,3976,3980,1,4096,4138,1,4159,4176,17,4177,4181,1,4186,4189,1,4193,4197,4,4198,4206,8,4207,4208,1,4213,4225,1,4238,4352,114,4353,4680,1,4682,4685,1,4688,4694,1,4696,4698,2,4699,4701,1,4704,4744,1,4746,4749,1,4752,4784,1,4786,4789,1,4792,4798,1,4800,4802,2,4803,4805,1,4808,4822,1,4824,4880,1,4882,4885,1,4888,4954,1,4992,5007,1,5121,5740,1,5743,5759,1,5761,5786,1,5792,5866,1,5873,5880,1,5888,5905,1,5919,5937,1,5952,5969,1,5984,5996,1,5998,6e3,1,6016,6067,1,6108,6176,68,6177,6210,1,6212,6264,1,6272,6276,1,6279,6312,1,6314,6320,6,6321,6389,1,6400,6430,1,6480,6509,1,6512,6516,1,6528,6571,1,6576,6601,1,6656,6678,1,6688,6740,1,6917,6963,1,6981,6988,1,7043,7072,1,7086,7087,1,7098,7141,1,7168,7203,1,7245,7247,1,7258,7287,1,7401,7404,1,7406,7411,1,7413,7414,1,7418,8501,1083,8502,8504,1,11568,11623,1,11648,11670,1,11680,11686,1,11688,11694,1,11696,11702,1,11704,11710,1,11712,11718,1,11720,11726,1,11728,11734,1,11736,11742,1,12294,12348,54,12353,12438,1,12447,12449,2,12450,12538,1,12543,12549,6,12550,12591,1,12593,12686,1,12704,12735,1,12784,12799,1,13312,19903,1,19968,40980,1,40982,42124,1,42192,42231,1,42240,42507,1,42512,42527,1,42538,42539,1,42606,42656,50,42657,42725,1,42895,42999,104,43003,43009,1,43011,43013,1,43015,43018,1,43020,43042,1,43072,43123,1,43138,43187,1,43250,43255,1,43259,43261,2,43262,43274,12,43275,43301,1,43312,43334,1,43360,43388,1,43396,43442,1,43488,43492,1,43495,43503,1,43514,43518,1,43520,43560,1,43584,43586,1,43588,43595,1,43616,43631,1,43633,43638,1,43642,43646,4,43647,43695,1,43697,43701,4,43702,43705,3,43706,43709,1,43712,43714,2,43739,43740,1,43744,43754,1,43762,43777,15,43778,43782,1,43785,43790,1,43793,43798,1,43808,43814,1,43816,43822,1,43968,44002,1,44032,55203,1,55216,55238,1,55243,55291,1,63744,64109,1,64112,64217,1,64285,64287,2,64288,64296,1,64298,64310,1,64312,64316,1,64318,64320,2,64321,64323,2,64324,64326,2,64327,64433,1,64467,64829,1,64848,64911,1,64914,64967,1,65008,65019,1,65136,65140,1,65142,65276,1,65382,65391,1,65393,65437,1,65440,65470,1,65474,65479,1,65482,65487,1,65490,65495,1,65498,65500,1,65536,65547,1,65549,65574,1,65576,65594,1,65596,65597,1,65599,65613,1,65616,65629,1,65664,65786,1,66176,66204,1,66208,66256,1,66304,66335,1,66349,66368,1,66370,66377,1,66384,66421,1,66432,66461,1,66464,66499,1,66504,66511,1,66640,66717,1,66816,66855,1,66864,66915,1,67008,67059,1,67072,67382,1,67392,67413,1,67424,67431,1,67584,67589,1,67592,67594,2,67595,67637,1,67639,67640,1,67644,67647,3,67648,67669,1,67680,67702,1,67712,67742,1,67808,67826,1,67828,67829,1,67840,67861,1,67872,67897,1,67968,68023,1,68030,68031,1,68096,68112,16,68113,68115,1,68117,68119,1,68121,68149,1,68192,68220,1,68224,68252,1,68288,68295,1,68297,68324,1,68352,68405,1,68416,68437,1,68448,68466,1,68480,68497,1,68608,68680,1,68864,68899,1,68938,68941,1,68943,69248,305,69249,69289,1,69296,69297,1,69314,69316,1,69376,69404,1,69415,69424,9,69425,69445,1,69488,69505,1,69552,69572,1,69600,69622,1,69635,69687,1,69745,69746,1,69749,69763,14,69764,69807,1,69840,69864,1,69891,69926,1,69956,69959,3,69968,70002,1,70006,70019,13,70020,70066,1,70081,70084,1,70106,70108,2,70144,70161,1,70163,70187,1,70207,70208,1,70272,70278,1,70280,70282,2,70283,70285,1,70287,70301,1,70303,70312,1,70320,70366,1,70405,70412,1,70415,70416,1,70419,70440,1,70442,70448,1,70450,70451,1,70453,70457,1,70461,70480,19,70493,70497,1,70528,70537,1,70539,70542,3,70544,70581,1,70583,70609,26,70611,70656,45,70657,70708,1,70727,70730,1,70751,70753,1,70784,70831,1,70852,70853,1,70855,71040,185,71041,71086,1,71128,71131,1,71168,71215,1,71236,71296,60,71297,71338,1,71352,71424,72,71425,71450,1,71488,71494,1,71680,71723,1,71935,71942,1,71945,71948,3,71949,71955,1,71957,71958,1,71960,71983,1,71999,72001,2,72096,72103,1,72106,72144,1,72161,72163,2,72192,72203,11,72204,72242,1,72250,72272,22,72284,72329,1,72349,72368,19,72369,72440,1,72640,72672,1,72704,72712,1,72714,72750,1,72768,72818,50,72819,72847,1,72960,72966,1,72968,72969,1,72971,73008,1,73030,73056,26,73057,73061,1,73063,73064,1,73066,73097,1,73112,73440,328,73441,73458,1,73474,73476,2,73477,73488,1,73490,73523,1,73648,73728,80,73729,74649,1,74880,75075,1,77712,77808,1,77824,78895,1,78913,78918,1,78944,82938,1,82944,83526,1,90368,90397,1,92160,92728,1,92736,92766,1,92784,92862,1,92880,92909,1,92928,92975,1,93027,93047,1,93053,93071,1,93507,93546,1,93952,94026,1,94032,94208,176,94209,100343,1,100352,101589,1,101631,101640,1,110592,110882,1,110898,110928,30,110929,110930,1,110933,110948,15,110949,110951,1,110960,111355,1,113664,113770,1,113776,113788,1,113792,113800,1,113808,113817,1,122634,123136,502,123137,123180,1,123214,123536,322,123537,123565,1,123584,123627,1,124112,124138,1,124368,124397,1,124400,124896,496,124897,124902,1,124904,124907,1,124909,124910,1,124912,124926,1,124928,125124,1,126464,126467,1,126469,126495,1,126497,126498,1,126500,126503,3,126505,126514,1,126516,126519,1,126521,126523,2,126530,126535,5,126537,126541,2,126542,126543,1,126545,126546,1,126548,126551,3,126553,126561,2,126562,126564,2,126567,126570,1,126572,126578,1,126580,126583,1,126585,126588,1,126590,126592,2,126593,126601,1,126603,126619,1,126625,126627,1,126629,126633,1,126635,126651,1,131072,173791,1,173824,177977,1,177984,178205,1,178208,183969,1,183984,191456,1,191472,192093,1,194560,195101,1,196608,201546,1,201552,205743,1]));static Lt=new N(new Uint32Array([453,459,3,498,8072,7574,8073,8079,1,8088,8095,1,8104,8111,1,8124,8140,16,8188,8188,1]));static foldLt=new N(new Uint32Array([452,454,2,455,457,2,458,460,2,497,499,2,8064,8071,1,8080,8087,1,8096,8103,1,8115,8131,16,8179,8179,1]));static Lu=new N(new Uint32Array([65,90,1,192,214,1,216,222,1,256,310,2,313,327,2,330,376,2,377,381,2,385,386,1,388,390,2,391,393,2,394,395,1,398,401,1,403,404,1,406,408,1,412,413,1,415,416,1,418,422,2,423,425,2,428,430,2,431,433,2,434,435,1,437,439,2,440,444,4,452,461,3,463,475,2,478,494,2,497,500,3,502,504,1,506,562,2,570,571,1,573,574,1,577,579,2,580,582,1,584,590,2,880,882,2,886,895,9,902,904,2,905,906,1,908,910,2,911,913,2,914,929,1,931,939,1,975,978,3,979,980,1,984,1006,2,1012,1015,3,1017,1018,1,1021,1071,1,1120,1152,2,1162,1216,2,1217,1229,2,1232,1326,2,1329,1366,1,4256,4293,1,4295,4301,6,5024,5109,1,7305,7312,7,7313,7354,1,7357,7359,1,7680,7828,2,7838,7934,2,7944,7951,1,7960,7965,1,7976,7983,1,7992,7999,1,8008,8013,1,8025,8031,2,8040,8047,1,8120,8123,1,8136,8139,1,8152,8155,1,8168,8172,1,8184,8187,1,8450,8455,5,8459,8461,1,8464,8466,1,8469,8473,4,8474,8477,1,8484,8490,2,8491,8493,1,8496,8499,1,8510,8511,1,8517,8579,62,11264,11311,1,11360,11362,2,11363,11364,1,11367,11373,2,11374,11376,1,11378,11381,3,11390,11392,1,11394,11490,2,11499,11501,2,11506,42560,31054,42562,42604,2,42624,42650,2,42786,42798,2,42802,42862,2,42873,42877,2,42878,42886,2,42891,42893,2,42896,42898,2,42902,42922,2,42923,42926,1,42928,42932,1,42934,42948,2,42949,42951,1,42953,42955,2,42956,42960,4,42966,42972,2,42997,65313,22316,65314,65338,1,66560,66599,1,66736,66771,1,66928,66938,1,66940,66954,1,66956,66962,1,66964,66965,1,68736,68786,1,68944,68965,1,71840,71871,1,93760,93791,1,119808,119833,1,119860,119885,1,119912,119937,1,119964,119966,2,119967,119973,3,119974,119977,3,119978,119980,1,119982,119989,1,120016,120041,1,120068,120069,1,120071,120074,1,120077,120084,1,120086,120092,1,120120,120121,1,120123,120126,1,120128,120132,1,120134,120138,4,120139,120144,1,120172,120197,1,120224,120249,1,120276,120301,1,120328,120353,1,120380,120405,1,120432,120457,1,120488,120512,1,120546,120570,1,120604,120628,1,120662,120686,1,120720,120744,1,120778,125184,4406,125185,125217,1]));static Upper=this.Lu;static foldLu=new N(new Uint32Array([97,122,1,181,223,42,224,246,1,248,255,1,257,303,2,307,311,2,314,328,2,331,375,2,378,382,2,383,384,1,387,389,2,392,396,4,402,405,3,409,411,1,414,417,3,419,421,2,424,429,5,432,436,4,438,441,3,445,447,2,453,454,1,456,457,1,459,460,1,462,476,2,477,495,2,498,499,1,501,505,4,507,543,2,547,563,2,572,575,3,576,578,2,583,591,2,592,596,1,598,599,1,601,603,2,604,608,4,609,611,2,612,614,1,616,620,1,623,625,2,626,629,3,637,640,3,642,643,1,647,652,1,658,669,11,670,837,167,881,883,2,887,891,4,892,893,1,940,943,1,945,974,1,976,977,1,981,983,1,985,1007,2,1008,1011,1,1013,1019,3,1072,1119,1,1121,1153,2,1163,1215,2,1218,1230,2,1231,1327,2,1377,1414,1,4304,4346,1,4349,4351,1,5112,5117,1,7296,7304,1,7306,7545,239,7549,7566,17,7681,7829,2,7835,7841,6,7843,7935,2,7936,7943,1,7952,7957,1,7968,7975,1,7984,7991,1,8e3,8005,1,8017,8023,2,8032,8039,1,8048,8061,1,8112,8113,1,8126,8144,18,8145,8160,15,8161,8165,4,8526,8580,54,11312,11359,1,11361,11365,4,11366,11372,2,11379,11382,3,11393,11491,2,11500,11502,2,11507,11520,13,11521,11557,1,11559,11565,6,42561,42605,2,42625,42651,2,42787,42799,2,42803,42863,2,42874,42876,2,42879,42887,2,42892,42897,5,42899,42900,1,42903,42921,2,42933,42947,2,42952,42954,2,42957,42961,4,42967,42971,2,42998,43859,861,43888,43967,1,65345,65370,1,66600,66639,1,66776,66811,1,66967,66977,1,66979,66993,1,66995,67001,1,67003,67004,1,68800,68850,1,68976,68997,1,71872,71903,1,93792,93823,1,125218,125251,1]));static M=new N(new Uint32Array([768,879,1,1155,1161,1,1425,1469,1,1471,1473,2,1474,1476,2,1477,1479,2,1552,1562,1,1611,1631,1,1648,1750,102,1751,1756,1,1759,1764,1,1767,1768,1,1770,1773,1,1809,1840,31,1841,1866,1,1958,1968,1,2027,2035,1,2045,2070,25,2071,2073,1,2075,2083,1,2085,2087,1,2089,2093,1,2137,2139,1,2199,2207,1,2250,2273,1,2275,2307,1,2362,2364,1,2366,2383,1,2385,2391,1,2402,2403,1,2433,2435,1,2492,2494,2,2495,2500,1,2503,2504,1,2507,2509,1,2519,2530,11,2531,2558,27,2561,2563,1,2620,2622,2,2623,2626,1,2631,2632,1,2635,2637,1,2641,2672,31,2673,2677,4,2689,2691,1,2748,2750,2,2751,2757,1,2759,2761,1,2763,2765,1,2786,2787,1,2810,2815,1,2817,2819,1,2876,2878,2,2879,2884,1,2887,2888,1,2891,2893,1,2901,2903,1,2914,2915,1,2946,3006,60,3007,3010,1,3014,3016,1,3018,3021,1,3031,3072,41,3073,3076,1,3132,3134,2,3135,3140,1,3142,3144,1,3146,3149,1,3157,3158,1,3170,3171,1,3201,3203,1,3260,3262,2,3263,3268,1,3270,3272,1,3274,3277,1,3285,3286,1,3298,3299,1,3315,3328,13,3329,3331,1,3387,3388,1,3390,3396,1,3398,3400,1,3402,3405,1,3415,3426,11,3427,3457,30,3458,3459,1,3530,3535,5,3536,3540,1,3542,3544,2,3545,3551,1,3570,3571,1,3633,3636,3,3637,3642,1,3655,3662,1,3761,3764,3,3765,3772,1,3784,3790,1,3864,3865,1,3893,3897,2,3902,3903,1,3953,3972,1,3974,3975,1,3981,3991,1,3993,4028,1,4038,4139,101,4140,4158,1,4182,4185,1,4190,4192,1,4194,4196,1,4199,4205,1,4209,4212,1,4226,4237,1,4239,4250,11,4251,4253,1,4957,4959,1,5906,5909,1,5938,5940,1,5970,5971,1,6002,6003,1,6068,6099,1,6109,6155,46,6156,6157,1,6159,6277,118,6278,6313,35,6432,6443,1,6448,6459,1,6679,6683,1,6741,6750,1,6752,6780,1,6783,6832,49,6833,6862,1,6912,6916,1,6964,6980,1,7019,7027,1,7040,7042,1,7073,7085,1,7142,7155,1,7204,7223,1,7376,7378,1,7380,7400,1,7405,7412,7,7415,7417,1,7616,7679,1,8400,8432,1,11503,11505,1,11647,11744,97,11745,11775,1,12330,12335,1,12441,12442,1,42607,42610,1,42612,42621,1,42654,42655,1,42736,42737,1,43010,43014,4,43019,43043,24,43044,43047,1,43052,43136,84,43137,43188,51,43189,43205,1,43232,43249,1,43263,43302,39,43303,43309,1,43335,43347,1,43392,43395,1,43443,43456,1,43493,43561,68,43562,43574,1,43587,43596,9,43597,43643,46,43644,43645,1,43696,43698,2,43699,43700,1,43703,43704,1,43710,43711,1,43713,43755,42,43756,43759,1,43765,43766,1,44003,44010,1,44012,44013,1,64286,65024,738,65025,65039,1,65056,65071,1,66045,66272,227,66422,66426,1,68097,68099,1,68101,68102,1,68108,68111,1,68152,68154,1,68159,68325,166,68326,68900,574,68901,68903,1,68969,68973,1,69291,69292,1,69372,69375,1,69446,69456,1,69506,69509,1,69632,69634,1,69688,69702,1,69744,69747,3,69748,69759,11,69760,69762,1,69808,69818,1,69826,69888,62,69889,69890,1,69927,69940,1,69957,69958,1,70003,70016,13,70017,70018,1,70067,70080,1,70089,70092,1,70094,70095,1,70188,70199,1,70206,70209,3,70367,70378,1,70400,70403,1,70459,70460,1,70462,70468,1,70471,70472,1,70475,70477,1,70487,70498,11,70499,70502,3,70503,70508,1,70512,70516,1,70584,70592,1,70594,70597,3,70599,70602,1,70604,70608,1,70610,70625,15,70626,70709,83,70710,70726,1,70750,70832,82,70833,70851,1,71087,71093,1,71096,71104,1,71132,71133,1,71216,71232,1,71339,71351,1,71453,71467,1,71724,71738,1,71984,71989,1,71991,71992,1,71995,71998,1,72e3,72002,2,72003,72145,142,72146,72151,1,72154,72160,1,72164,72193,29,72194,72202,1,72243,72249,1,72251,72254,1,72263,72273,10,72274,72283,1,72330,72345,1,72751,72758,1,72760,72767,1,72850,72871,1,72873,72886,1,73009,73014,1,73018,73020,2,73021,73023,2,73024,73029,1,73031,73098,67,73099,73102,1,73104,73105,1,73107,73111,1,73459,73462,1,73472,73473,1,73475,73524,49,73525,73530,1,73534,73538,1,73562,78912,5350,78919,78933,1,90398,90415,1,92912,92916,1,92976,92982,1,94031,94033,2,94034,94087,1,94095,94098,1,94180,94192,12,94193,113821,19628,113822,118528,4706,118529,118573,1,118576,118598,1,119141,119145,1,119149,119154,1,119163,119170,1,119173,119179,1,119210,119213,1,119362,119364,1,121344,121398,1,121403,121452,1,121461,121476,15,121499,121503,1,121505,121519,1,122880,122886,1,122888,122904,1,122907,122913,1,122915,122916,1,122918,122922,1,123023,123184,161,123185,123190,1,123566,123628,62,123629,123631,1,124140,124143,1,124398,124399,1,125136,125142,1,125252,125258,1,917760,917999,1]));static foldM=new N(new Uint32Array([921,953,32,8126,8126,1]));static Mc=new N(new Uint32Array([2307,2363,56,2366,2368,1,2377,2380,1,2382,2383,1,2434,2435,1,2494,2496,1,2503,2504,1,2507,2508,1,2519,2563,44,2622,2624,1,2691,2750,59,2751,2752,1,2761,2763,2,2764,2818,54,2819,2878,59,2880,2887,7,2888,2891,3,2892,2903,11,3006,3007,1,3009,3010,1,3014,3016,1,3018,3020,1,3031,3073,42,3074,3075,1,3137,3140,1,3202,3203,1,3262,3264,2,3265,3268,1,3271,3272,1,3274,3275,1,3285,3286,1,3315,3330,15,3331,3390,59,3391,3392,1,3398,3400,1,3402,3404,1,3415,3458,43,3459,3535,76,3536,3537,1,3544,3551,1,3570,3571,1,3902,3903,1,3967,4139,172,4140,4145,5,4152,4155,3,4156,4182,26,4183,4194,11,4195,4196,1,4199,4205,1,4227,4228,1,4231,4236,1,4239,4250,11,4251,4252,1,5909,5940,31,6070,6078,8,6079,6085,1,6087,6088,1,6435,6438,1,6441,6443,1,6448,6449,1,6451,6456,1,6681,6682,1,6741,6743,2,6753,6755,2,6756,6765,9,6766,6770,1,6916,6965,49,6971,6973,2,6974,6977,1,6979,6980,1,7042,7073,31,7078,7079,1,7082,7143,61,7146,7148,1,7150,7154,4,7155,7204,49,7205,7211,1,7220,7221,1,7393,7415,22,12334,12335,1,43043,43044,1,43047,43136,89,43137,43188,51,43189,43203,1,43346,43347,1,43395,43444,49,43445,43450,5,43451,43454,3,43455,43456,1,43567,43568,1,43571,43572,1,43597,43643,46,43645,43755,110,43758,43759,1,43765,44003,238,44004,44006,2,44007,44009,2,44010,44012,2,69632,69634,2,69762,69808,46,69809,69810,1,69815,69816,1,69932,69957,25,69958,70018,60,70067,70069,1,70079,70080,1,70094,70188,94,70189,70190,1,70194,70195,1,70197,70368,171,70369,70370,1,70402,70403,1,70462,70463,1,70465,70468,1,70471,70472,1,70475,70477,1,70487,70498,11,70499,70584,85,70585,70586,1,70594,70597,3,70599,70602,1,70604,70605,1,70607,70709,102,70710,70711,1,70720,70721,1,70725,70832,107,70833,70834,1,70841,70843,2,70844,70846,1,70849,71087,238,71088,71089,1,71096,71099,1,71102,71216,114,71217,71218,1,71227,71228,1,71230,71340,110,71342,71343,1,71350,71454,104,71456,71457,1,71462,71724,262,71725,71726,1,71736,71984,248,71985,71989,1,71991,71992,1,71997,72e3,3,72002,72145,143,72146,72147,1,72156,72159,1,72164,72249,85,72279,72280,1,72343,72751,408,72766,72873,107,72881,72884,3,73098,73102,1,73107,73108,1,73110,73461,351,73462,73475,13,73524,73525,1,73534,73535,1,73537,90410,16873,90411,90412,1,94033,94087,1,94192,94193,1,119141,119142,1,119149,119154,1]));static Me=new N(new Uint32Array([1160,1161,1,6846,8413,1567,8414,8416,1,8418,8420,1,42608,42610,1]));static Mn=new N(new Uint32Array([768,879,1,1155,1159,1,1425,1469,1,1471,1473,2,1474,1476,2,1477,1479,2,1552,1562,1,1611,1631,1,1648,1750,102,1751,1756,1,1759,1764,1,1767,1768,1,1770,1773,1,1809,1840,31,1841,1866,1,1958,1968,1,2027,2035,1,2045,2070,25,2071,2073,1,2075,2083,1,2085,2087,1,2089,2093,1,2137,2139,1,2199,2207,1,2250,2273,1,2275,2306,1,2362,2364,2,2369,2376,1,2381,2385,4,2386,2391,1,2402,2403,1,2433,2492,59,2497,2500,1,2509,2530,21,2531,2558,27,2561,2562,1,2620,2625,5,2626,2631,5,2632,2635,3,2636,2637,1,2641,2672,31,2673,2677,4,2689,2690,1,2748,2753,5,2754,2757,1,2759,2760,1,2765,2786,21,2787,2810,23,2811,2815,1,2817,2876,59,2879,2881,2,2882,2884,1,2893,2901,8,2902,2914,12,2915,2946,31,3008,3021,13,3072,3076,4,3132,3134,2,3135,3136,1,3142,3144,1,3146,3149,1,3157,3158,1,3170,3171,1,3201,3260,59,3263,3270,7,3276,3277,1,3298,3299,1,3328,3329,1,3387,3388,1,3393,3396,1,3405,3426,21,3427,3457,30,3530,3538,8,3539,3540,1,3542,3633,91,3636,3642,1,3655,3662,1,3761,3764,3,3765,3772,1,3784,3790,1,3864,3865,1,3893,3897,2,3953,3966,1,3968,3972,1,3974,3975,1,3981,3991,1,3993,4028,1,4038,4141,103,4142,4144,1,4146,4151,1,4153,4154,1,4157,4158,1,4184,4185,1,4190,4192,1,4209,4212,1,4226,4229,3,4230,4237,7,4253,4957,704,4958,4959,1,5906,5908,1,5938,5939,1,5970,5971,1,6002,6003,1,6068,6069,1,6071,6077,1,6086,6089,3,6090,6099,1,6109,6155,46,6156,6157,1,6159,6277,118,6278,6313,35,6432,6434,1,6439,6440,1,6450,6457,7,6458,6459,1,6679,6680,1,6683,6742,59,6744,6750,1,6752,6754,2,6757,6764,1,6771,6780,1,6783,6832,49,6833,6845,1,6847,6862,1,6912,6915,1,6964,6966,2,6967,6970,1,6972,6978,6,7019,7027,1,7040,7041,1,7074,7077,1,7080,7081,1,7083,7085,1,7142,7144,2,7145,7149,4,7151,7153,1,7212,7219,1,7222,7223,1,7376,7378,1,7380,7392,1,7394,7400,1,7405,7412,7,7416,7417,1,7616,7679,1,8400,8412,1,8417,8421,4,8422,8432,1,11503,11505,1,11647,11744,97,11745,11775,1,12330,12333,1,12441,12442,1,42607,42612,5,42613,42621,1,42654,42655,1,42736,42737,1,43010,43014,4,43019,43045,26,43046,43052,6,43204,43205,1,43232,43249,1,43263,43302,39,43303,43309,1,43335,43345,1,43392,43394,1,43443,43446,3,43447,43449,1,43452,43453,1,43493,43561,68,43562,43566,1,43569,43570,1,43573,43574,1,43587,43596,9,43644,43696,52,43698,43700,1,43703,43704,1,43710,43711,1,43713,43756,43,43757,43766,9,44005,44008,3,44013,64286,20273,65024,65039,1,65056,65071,1,66045,66272,227,66422,66426,1,68097,68099,1,68101,68102,1,68108,68111,1,68152,68154,1,68159,68325,166,68326,68900,574,68901,68903,1,68969,68973,1,69291,69292,1,69372,69375,1,69446,69456,1,69506,69509,1,69633,69688,55,69689,69702,1,69744,69747,3,69748,69759,11,69760,69761,1,69811,69814,1,69817,69818,1,69826,69888,62,69889,69890,1,69927,69931,1,69933,69940,1,70003,70016,13,70017,70070,53,70071,70078,1,70089,70092,1,70095,70191,96,70192,70193,1,70196,70198,2,70199,70206,7,70209,70367,158,70371,70378,1,70400,70401,1,70459,70460,1,70464,70502,38,70503,70508,1,70512,70516,1,70587,70592,1,70606,70610,2,70625,70626,1,70712,70719,1,70722,70724,1,70726,70750,24,70835,70840,1,70842,70847,5,70848,70850,2,70851,71090,239,71091,71093,1,71100,71101,1,71103,71104,1,71132,71133,1,71219,71226,1,71229,71231,2,71232,71339,107,71341,71344,3,71345,71349,1,71351,71453,102,71455,71458,3,71459,71461,1,71463,71467,1,71727,71735,1,71737,71738,1,71995,71996,1,71998,72003,5,72148,72151,1,72154,72155,1,72160,72193,33,72194,72202,1,72243,72248,1,72251,72254,1,72263,72273,10,72274,72278,1,72281,72283,1,72330,72342,1,72344,72345,1,72752,72758,1,72760,72765,1,72767,72850,83,72851,72871,1,72874,72880,1,72882,72883,1,72885,72886,1,73009,73014,1,73018,73020,2,73021,73023,2,73024,73029,1,73031,73104,73,73105,73109,4,73111,73459,348,73460,73472,12,73473,73526,53,73527,73530,1,73536,73538,2,73562,78912,5350,78919,78933,1,90398,90409,1,90413,90415,1,92912,92916,1,92976,92982,1,94031,94095,64,94096,94098,1,94180,113821,19641,113822,118528,4706,118529,118573,1,118576,118598,1,119143,119145,1,119163,119170,1,119173,119179,1,119210,119213,1,119362,119364,1,121344,121398,1,121403,121452,1,121461,121476,15,121499,121503,1,121505,121519,1,122880,122886,1,122888,122904,1,122907,122913,1,122915,122916,1,122918,122922,1,123023,123184,161,123185,123190,1,123566,123628,62,123629,123631,1,124140,124143,1,124398,124399,1,125136,125142,1,125252,125258,1,917760,917999,1]));static foldMn=new N(new Uint32Array([921,953,32,8126,8126,1]));static N=new N(new Uint32Array([48,57,1,178,179,1,185,188,3,189,190,1,1632,1641,1,1776,1785,1,1984,1993,1,2406,2415,1,2534,2543,1,2548,2553,1,2662,2671,1,2790,2799,1,2918,2927,1,2930,2935,1,3046,3058,1,3174,3183,1,3192,3198,1,3302,3311,1,3416,3422,1,3430,3448,1,3558,3567,1,3664,3673,1,3792,3801,1,3872,3891,1,4160,4169,1,4240,4249,1,4969,4988,1,5870,5872,1,6112,6121,1,6128,6137,1,6160,6169,1,6470,6479,1,6608,6618,1,6784,6793,1,6800,6809,1,6992,7001,1,7088,7097,1,7232,7241,1,7248,7257,1,8304,8308,4,8309,8313,1,8320,8329,1,8528,8578,1,8581,8585,1,9312,9371,1,9450,9471,1,10102,10131,1,11517,12295,778,12321,12329,1,12344,12346,1,12690,12693,1,12832,12841,1,12872,12879,1,12881,12895,1,12928,12937,1,12977,12991,1,42528,42537,1,42726,42735,1,43056,43061,1,43216,43225,1,43264,43273,1,43472,43481,1,43504,43513,1,43600,43609,1,44016,44025,1,65296,65305,1,65799,65843,1,65856,65912,1,65930,65931,1,66273,66299,1,66336,66339,1,66369,66378,9,66513,66517,1,66720,66729,1,67672,67679,1,67705,67711,1,67751,67759,1,67835,67839,1,67862,67867,1,68028,68029,1,68032,68047,1,68050,68095,1,68160,68168,1,68221,68222,1,68253,68255,1,68331,68335,1,68440,68447,1,68472,68479,1,68521,68527,1,68858,68863,1,68912,68921,1,68928,68937,1,69216,69246,1,69405,69414,1,69457,69460,1,69573,69579,1,69714,69743,1,69872,69881,1,69942,69951,1,70096,70105,1,70113,70132,1,70384,70393,1,70736,70745,1,70864,70873,1,71248,71257,1,71360,71369,1,71376,71395,1,71472,71483,1,71904,71922,1,72016,72025,1,72688,72697,1,72784,72812,1,73040,73049,1,73120,73129,1,73552,73561,1,73664,73684,1,74752,74862,1,90416,90425,1,92768,92777,1,92864,92873,1,93008,93017,1,93019,93025,1,93552,93561,1,93824,93846,1,118e3,118009,1,119488,119507,1,119520,119539,1,119648,119672,1,120782,120831,1,123200,123209,1,123632,123641,1,124144,124153,1,124401,124410,1,125127,125135,1,125264,125273,1,126065,126123,1,126125,126127,1,126129,126132,1,126209,126253,1,126255,126269,1,127232,127244,1,130032,130041,1]));static Nd=new N(new Uint32Array([48,57,1,1632,1641,1,1776,1785,1,1984,1993,1,2406,2415,1,2534,2543,1,2662,2671,1,2790,2799,1,2918,2927,1,3046,3055,1,3174,3183,1,3302,3311,1,3430,3439,1,3558,3567,1,3664,3673,1,3792,3801,1,3872,3881,1,4160,4169,1,4240,4249,1,6112,6121,1,6160,6169,1,6470,6479,1,6608,6617,1,6784,6793,1,6800,6809,1,6992,7001,1,7088,7097,1,7232,7241,1,7248,7257,1,42528,42537,1,43216,43225,1,43264,43273,1,43472,43481,1,43504,43513,1,43600,43609,1,44016,44025,1,65296,65305,1,66720,66729,1,68912,68921,1,68928,68937,1,69734,69743,1,69872,69881,1,69942,69951,1,70096,70105,1,70384,70393,1,70736,70745,1,70864,70873,1,71248,71257,1,71360,71369,1,71376,71395,1,71472,71481,1,71904,71913,1,72016,72025,1,72688,72697,1,72784,72793,1,73040,73049,1,73120,73129,1,73552,73561,1,90416,90425,1,92768,92777,1,92864,92873,1,93008,93017,1,93552,93561,1,118e3,118009,1,120782,120831,1,123200,123209,1,123632,123641,1,124144,124153,1,124401,124410,1,125264,125273,1,130032,130041,1]));static Nl=new N(new Uint32Array([5870,5872,1,8544,8578,1,8581,8584,1,12295,12321,26,12322,12329,1,12344,12346,1,42726,42735,1,65856,65908,1,66369,66378,9,66513,66517,1,74752,74862,1]));static No=new N(new Uint32Array([178,179,1,185,188,3,189,190,1,2548,2553,1,2930,2935,1,3056,3058,1,3192,3198,1,3416,3422,1,3440,3448,1,3882,3891,1,4969,4988,1,6128,6137,1,6618,8304,1686,8308,8313,1,8320,8329,1,8528,8543,1,8585,9312,727,9313,9371,1,9450,9471,1,10102,10131,1,11517,12690,1173,12691,12693,1,12832,12841,1,12872,12879,1,12881,12895,1,12928,12937,1,12977,12991,1,43056,43061,1,65799,65843,1,65909,65912,1,65930,65931,1,66273,66299,1,66336,66339,1,67672,67679,1,67705,67711,1,67751,67759,1,67835,67839,1,67862,67867,1,68028,68029,1,68032,68047,1,68050,68095,1,68160,68168,1,68221,68222,1,68253,68255,1,68331,68335,1,68440,68447,1,68472,68479,1,68521,68527,1,68858,68863,1,69216,69246,1,69405,69414,1,69457,69460,1,69573,69579,1,69714,69733,1,70113,70132,1,71482,71483,1,71914,71922,1,72794,72812,1,73664,73684,1,93019,93025,1,93824,93846,1,119488,119507,1,119520,119539,1,119648,119672,1,125127,125135,1,126065,126123,1,126125,126127,1,126129,126132,1,126209,126253,1,126255,126269,1,127232,127244,1]));static P=new N(new Uint32Array([33,35,1,37,42,1,44,47,1,58,59,1,63,64,1,91,93,1,95,123,28,125,161,36,167,171,4,182,183,1,187,191,4,894,903,9,1370,1375,1,1417,1418,1,1470,1472,2,1475,1478,3,1523,1524,1,1545,1546,1,1548,1549,1,1563,1565,2,1566,1567,1,1642,1645,1,1748,1792,44,1793,1805,1,2039,2041,1,2096,2110,1,2142,2404,262,2405,2416,11,2557,2678,121,2800,3191,391,3204,3572,368,3663,3674,11,3675,3844,169,3845,3858,1,3860,3898,38,3899,3901,1,3973,4048,75,4049,4052,1,4057,4058,1,4170,4175,1,4347,4960,613,4961,4968,1,5120,5742,622,5787,5788,1,5867,5869,1,5941,5942,1,6100,6102,1,6104,6106,1,6144,6154,1,6468,6469,1,6686,6687,1,6816,6822,1,6824,6829,1,6990,6991,1,7002,7008,1,7037,7039,1,7164,7167,1,7227,7231,1,7294,7295,1,7360,7367,1,7379,8208,829,8209,8231,1,8240,8259,1,8261,8273,1,8275,8286,1,8317,8318,1,8333,8334,1,8968,8971,1,9001,9002,1,10088,10101,1,10181,10182,1,10214,10223,1,10627,10648,1,10712,10715,1,10748,10749,1,11513,11516,1,11518,11519,1,11632,11776,144,11777,11822,1,11824,11855,1,11858,11869,1,12289,12291,1,12296,12305,1,12308,12319,1,12336,12349,13,12448,12539,91,42238,42239,1,42509,42511,1,42611,42622,11,42738,42743,1,43124,43127,1,43214,43215,1,43256,43258,1,43260,43310,50,43311,43359,48,43457,43469,1,43486,43487,1,43612,43615,1,43742,43743,1,43760,43761,1,44011,64830,20819,64831,65040,209,65041,65049,1,65072,65106,1,65108,65121,1,65123,65128,5,65130,65131,1,65281,65283,1,65285,65290,1,65292,65295,1,65306,65307,1,65311,65312,1,65339,65341,1,65343,65371,28,65373,65375,2,65376,65381,1,65792,65794,1,66463,66512,49,66927,67671,744,67871,67903,32,68176,68184,1,68223,68336,113,68337,68342,1,68409,68415,1,68505,68508,1,68974,69293,319,69461,69465,1,69510,69513,1,69703,69709,1,69819,69820,1,69822,69825,1,69952,69955,1,70004,70005,1,70085,70088,1,70093,70107,14,70109,70111,1,70200,70205,1,70313,70612,299,70613,70615,2,70616,70731,115,70732,70735,1,70746,70747,1,70749,70854,105,71105,71127,1,71233,71235,1,71264,71276,1,71353,71484,131,71485,71486,1,71739,72004,265,72005,72006,1,72162,72255,93,72256,72262,1,72346,72348,1,72350,72354,1,72448,72457,1,72673,72769,96,72770,72773,1,72816,72817,1,73463,73464,1,73539,73551,1,73727,74864,1137,74865,74868,1,77809,77810,1,92782,92783,1,92917,92983,66,92984,92987,1,92996,93549,553,93550,93551,1,93847,93850,1,94178,113823,19645,121479,121483,1,124415,125278,863,125279,125279,1]));static Pc=new N(new Uint32Array([95,8255,8160,8256,8276,20,65075,65076,1,65101,65103,1,65343,65343,1]));static Pd=new N(new Uint32Array([45,1418,1373,1470,5120,3650,6150,8208,2058,8209,8213,1,11799,11802,3,11834,11835,1,11840,11869,29,12316,12336,20,12448,65073,52625,65074,65112,38,65123,65293,170,68974,69293,319]));static Pe=new N(new Uint32Array([41,93,52,125,3899,3774,3901,5788,1887,8262,8318,56,8334,8969,635,8971,9002,31,10089,10101,2,10182,10215,33,10217,10223,2,10628,10648,2,10713,10715,2,10749,11811,1062,11813,11817,2,11862,11868,2,12297,12305,2,12309,12315,2,12318,12319,1,64830,65048,218,65078,65092,2,65096,65114,18,65116,65118,2,65289,65341,52,65373,65379,3]));static Pf=new N(new Uint32Array([187,8217,8030,8221,8250,29,11779,11781,2,11786,11789,3,11805,11809,4]));static Pi=new N(new Uint32Array([171,8216,8045,8219,8220,1,8223,8249,26,11778,11780,2,11785,11788,3,11804,11808,4]));static Po=new N(new Uint32Array([33,35,1,37,39,1,42,46,2,47,58,11,59,63,4,64,92,28,161,167,6,182,183,1,191,894,703,903,1370,467,1371,1375,1,1417,1472,55,1475,1478,3,1523,1524,1,1545,1546,1,1548,1549,1,1563,1565,2,1566,1567,1,1642,1645,1,1748,1792,44,1793,1805,1,2039,2041,1,2096,2110,1,2142,2404,262,2405,2416,11,2557,2678,121,2800,3191,391,3204,3572,368,3663,3674,11,3675,3844,169,3845,3858,1,3860,3973,113,4048,4052,1,4057,4058,1,4170,4175,1,4347,4960,613,4961,4968,1,5742,5867,125,5868,5869,1,5941,5942,1,6100,6102,1,6104,6106,1,6144,6149,1,6151,6154,1,6468,6469,1,6686,6687,1,6816,6822,1,6824,6829,1,6990,6991,1,7002,7008,1,7037,7039,1,7164,7167,1,7227,7231,1,7294,7295,1,7360,7367,1,7379,8214,835,8215,8224,9,8225,8231,1,8240,8248,1,8251,8254,1,8257,8259,1,8263,8273,1,8275,8277,2,8278,8286,1,11513,11516,1,11518,11519,1,11632,11776,144,11777,11782,5,11783,11784,1,11787,11790,3,11791,11798,1,11800,11801,1,11803,11806,3,11807,11818,11,11819,11822,1,11824,11833,1,11836,11839,1,11841,11843,2,11844,11855,1,11858,11860,1,12289,12291,1,12349,12539,190,42238,42239,1,42509,42511,1,42611,42622,11,42738,42743,1,43124,43127,1,43214,43215,1,43256,43258,1,43260,43310,50,43311,43359,48,43457,43469,1,43486,43487,1,43612,43615,1,43742,43743,1,43760,43761,1,44011,65040,21029,65041,65046,1,65049,65072,23,65093,65094,1,65097,65100,1,65104,65106,1,65108,65111,1,65119,65121,1,65128,65130,2,65131,65281,150,65282,65283,1,65285,65287,1,65290,65294,2,65295,65306,11,65307,65311,4,65312,65340,28,65377,65380,3,65381,65792,411,65793,65794,1,66463,66512,49,66927,67671,744,67871,67903,32,68176,68184,1,68223,68336,113,68337,68342,1,68409,68415,1,68505,68508,1,69461,69465,1,69510,69513,1,69703,69709,1,69819,69820,1,69822,69825,1,69952,69955,1,70004,70005,1,70085,70088,1,70093,70107,14,70109,70111,1,70200,70205,1,70313,70612,299,70613,70615,2,70616,70731,115,70732,70735,1,70746,70747,1,70749,70854,105,71105,71127,1,71233,71235,1,71264,71276,1,71353,71484,131,71485,71486,1,71739,72004,265,72005,72006,1,72162,72255,93,72256,72262,1,72346,72348,1,72350,72354,1,72448,72457,1,72673,72769,96,72770,72773,1,72816,72817,1,73463,73464,1,73539,73551,1,73727,74864,1137,74865,74868,1,77809,77810,1,92782,92783,1,92917,92983,66,92984,92987,1,92996,93549,553,93550,93551,1,93847,93850,1,94178,113823,19645,121479,121483,1,124415,125278,863,125279,125279,1]));static Ps=new N(new Uint32Array([40,91,51,123,3898,3775,3900,5787,1887,8218,8222,4,8261,8317,56,8333,8968,635,8970,9001,31,10088,10100,2,10181,10214,33,10216,10222,2,10627,10647,2,10712,10714,2,10748,11810,1062,11812,11816,2,11842,11861,19,11863,11867,2,12296,12304,2,12308,12314,2,12317,64831,52514,65047,65077,30,65079,65091,2,65095,65113,18,65115,65117,2,65288,65339,51,65371,65375,4,65378,65378,1]));static S=new N(new Uint32Array([36,43,7,60,62,1,94,96,2,124,126,2,162,166,1,168,169,1,172,174,2,175,177,1,180,184,4,215,247,32,706,709,1,722,735,1,741,747,1,749,751,2,752,767,1,885,900,15,901,1014,113,1154,1421,267,1422,1423,1,1542,1544,1,1547,1550,3,1551,1758,207,1769,1789,20,1790,2038,248,2046,2047,1,2184,2546,362,2547,2554,7,2555,2801,246,2928,3059,131,3060,3066,1,3199,3407,208,3449,3647,198,3841,3843,1,3859,3861,2,3862,3863,1,3866,3871,1,3892,3896,2,4030,4037,1,4039,4044,1,4046,4047,1,4053,4056,1,4254,4255,1,5008,5017,1,5741,6107,366,6464,6622,158,6623,6655,1,7009,7018,1,7028,7036,1,8125,8127,2,8128,8129,1,8141,8143,1,8157,8159,1,8173,8175,1,8189,8190,1,8260,8274,14,8314,8316,1,8330,8332,1,8352,8384,1,8448,8449,1,8451,8454,1,8456,8457,1,8468,8470,2,8471,8472,1,8478,8483,1,8485,8489,2,8494,8506,12,8507,8512,5,8513,8516,1,8522,8525,1,8527,8586,59,8587,8592,5,8593,8967,1,8972,9e3,1,9003,9257,1,9280,9290,1,9372,9449,1,9472,10087,1,10132,10180,1,10183,10213,1,10224,10626,1,10649,10711,1,10716,10747,1,10750,11123,1,11126,11157,1,11159,11263,1,11493,11498,1,11856,11857,1,11904,11929,1,11931,12019,1,12032,12245,1,12272,12287,1,12292,12306,14,12307,12320,13,12342,12343,1,12350,12351,1,12443,12444,1,12688,12689,1,12694,12703,1,12736,12773,1,12783,12800,17,12801,12830,1,12842,12871,1,12880,12896,16,12897,12927,1,12938,12976,1,12992,13311,1,19904,19967,1,42128,42182,1,42752,42774,1,42784,42785,1,42889,42890,1,43048,43051,1,43062,43065,1,43639,43641,1,43867,43882,15,43883,64297,20414,64434,64450,1,64832,64847,1,64975,65020,45,65021,65023,1,65122,65124,2,65125,65126,1,65129,65284,155,65291,65308,17,65309,65310,1,65342,65344,2,65372,65374,2,65504,65510,1,65512,65518,1,65532,65533,1,65847,65855,1,65913,65929,1,65932,65934,1,65936,65948,1,65952,66e3,48,66001,66044,1,67703,67704,1,68296,69006,710,69007,71487,2480,73685,73713,1,92988,92991,1,92997,113820,20823,117760,117999,1,118016,118451,1,118608,118723,1,118784,119029,1,119040,119078,1,119081,119140,1,119146,119148,1,119171,119172,1,119180,119209,1,119214,119274,1,119296,119361,1,119365,119552,187,119553,119638,1,120513,120539,26,120571,120597,26,120629,120655,26,120687,120713,26,120745,120771,26,120832,121343,1,121399,121402,1,121453,121460,1,121462,121475,1,121477,121478,1,123215,123647,432,126124,126128,4,126254,126704,450,126705,126976,271,126977,127019,1,127024,127123,1,127136,127150,1,127153,127167,1,127169,127183,1,127185,127221,1,127245,127405,1,127462,127490,1,127504,127547,1,127552,127560,1,127568,127569,1,127584,127589,1,127744,128727,1,128732,128748,1,128752,128764,1,128768,128886,1,128891,128985,1,128992,129003,1,129008,129024,16,129025,129035,1,129040,129095,1,129104,129113,1,129120,129159,1,129168,129197,1,129200,129211,1,129216,129217,1,129280,129619,1,129632,129645,1,129648,129660,1,129664,129673,1,129679,129734,1,129742,129756,1,129759,129769,1,129776,129784,1,129792,129938,1,129940,130031,1]));static Sc=new N(new Uint32Array([36,162,126,163,165,1,1423,1547,124,2046,2047,1,2546,2547,1,2555,2801,246,3065,3647,582,6107,8352,2245,8353,8384,1,43064,65020,21956,65129,65284,155,65504,65505,1,65509,65510,1,73693,73696,1,123647,126128,2481]));static Sk=new N(new Uint32Array([94,96,2,168,175,7,180,184,4,706,709,1,722,735,1,741,747,1,749,751,2,752,767,1,885,900,15,901,2184,1283,8125,8127,2,8128,8129,1,8141,8143,1,8157,8159,1,8173,8175,1,8189,8190,1,12443,12444,1,42752,42774,1,42784,42785,1,42889,42890,1,43867,43882,15,43883,64434,20551,64435,64450,1,65342,65344,2,65507,127995,62488,127996,127999,1]));static Sm=new N(new Uint32Array([43,60,17,61,62,1,124,126,2,172,177,5,215,247,32,1014,1542,528,1543,1544,1,8260,8274,14,8314,8316,1,8330,8332,1,8472,8512,40,8513,8516,1,8523,8592,69,8593,8596,1,8602,8603,1,8608,8614,3,8622,8654,32,8655,8658,3,8660,8692,32,8693,8959,1,8992,8993,1,9084,9115,31,9116,9139,1,9180,9185,1,9655,9665,10,9720,9727,1,9839,10176,337,10177,10180,1,10183,10213,1,10224,10239,1,10496,10626,1,10649,10711,1,10716,10747,1,10750,11007,1,11056,11076,1,11079,11084,1,64297,65122,825,65124,65126,1,65291,65308,17,65309,65310,1,65372,65374,2,65506,65513,7,65514,65516,1,69006,69007,1,120513,120539,26,120571,120597,26,120629,120655,26,120687,120713,26,120745,120771,26,126704,126705,1]));static So=new N(new Uint32Array([166,169,3,174,176,2,1154,1421,267,1422,1550,128,1551,1758,207,1769,1789,20,1790,2038,248,2554,2928,374,3059,3064,1,3066,3199,133,3407,3449,42,3841,3843,1,3859,3861,2,3862,3863,1,3866,3871,1,3892,3896,2,4030,4037,1,4039,4044,1,4046,4047,1,4053,4056,1,4254,4255,1,5008,5017,1,5741,6464,723,6622,6655,1,7009,7018,1,7028,7036,1,8448,8449,1,8451,8454,1,8456,8457,1,8468,8470,2,8471,8478,7,8479,8483,1,8485,8489,2,8494,8506,12,8507,8522,15,8524,8525,1,8527,8586,59,8587,8597,10,8598,8601,1,8604,8607,1,8609,8610,1,8612,8613,1,8615,8621,1,8623,8653,1,8656,8657,1,8659,8661,2,8662,8691,1,8960,8967,1,8972,8991,1,8994,9e3,1,9003,9083,1,9085,9114,1,9140,9179,1,9186,9257,1,9280,9290,1,9372,9449,1,9472,9654,1,9656,9664,1,9666,9719,1,9728,9838,1,9840,10087,1,10132,10175,1,10240,10495,1,11008,11055,1,11077,11078,1,11085,11123,1,11126,11157,1,11159,11263,1,11493,11498,1,11856,11857,1,11904,11929,1,11931,12019,1,12032,12245,1,12272,12287,1,12292,12306,14,12307,12320,13,12342,12343,1,12350,12351,1,12688,12689,1,12694,12703,1,12736,12773,1,12783,12800,17,12801,12830,1,12842,12871,1,12880,12896,16,12897,12927,1,12938,12976,1,12992,13311,1,19904,19967,1,42128,42182,1,43048,43051,1,43062,43063,1,43065,43639,574,43640,43641,1,64832,64847,1,64975,65021,46,65022,65023,1,65508,65512,4,65517,65518,1,65532,65533,1,65847,65855,1,65913,65929,1,65932,65934,1,65936,65948,1,65952,66e3,48,66001,66044,1,67703,67704,1,68296,71487,3191,73685,73692,1,73697,73713,1,92988,92991,1,92997,113820,20823,117760,117999,1,118016,118451,1,118608,118723,1,118784,119029,1,119040,119078,1,119081,119140,1,119146,119148,1,119171,119172,1,119180,119209,1,119214,119274,1,119296,119361,1,119365,119552,187,119553,119638,1,120832,121343,1,121399,121402,1,121453,121460,1,121462,121475,1,121477,121478,1,123215,126124,2909,126254,126976,722,126977,127019,1,127024,127123,1,127136,127150,1,127153,127167,1,127169,127183,1,127185,127221,1,127245,127405,1,127462,127490,1,127504,127547,1,127552,127560,1,127568,127569,1,127584,127589,1,127744,127994,1,128e3,128727,1,128732,128748,1,128752,128764,1,128768,128886,1,128891,128985,1,128992,129003,1,129008,129024,16,129025,129035,1,129040,129095,1,129104,129113,1,129120,129159,1,129168,129197,1,129200,129211,1,129216,129217,1,129280,129619,1,129632,129645,1,129648,129660,1,129664,129673,1,129679,129734,1,129742,129756,1,129759,129769,1,129776,129784,1,129792,129938,1,129940,130031,1]));static Z=new N(new Uint32Array([32,160,128,5760,8192,2432,8193,8202,1,8232,8233,1,8239,8287,48,12288,12288,1]));static Zl=new N(new Uint32Array([8232,8232,1]));static Zp=new N(new Uint32Array([8233,8233,1]));static Zs=new N(new Uint32Array([32,160,128,5760,8192,2432,8193,8202,1,8239,8287,48,12288,12288,1]));static Adlam=new N(new Uint32Array([125184,125259,1,125264,125273,1,125278,125279,1]));static Ahom=new N(new Uint32Array([71424,71450,1,71453,71467,1,71472,71494,1]));static Anatolian_Hieroglyphs=new N(new Uint32Array([82944,83526,1]));static Arabic=new N(new Uint32Array([1536,1540,1,1542,1547,1,1549,1562,1,1564,1566,1,1568,1599,1,1601,1610,1,1622,1647,1,1649,1756,1,1758,1791,1,1872,1919,1,2160,2190,1,2192,2193,1,2199,2273,1,2275,2303,1,64336,64450,1,64467,64829,1,64832,64911,1,64914,64967,1,64975,65008,33,65009,65023,1,65136,65140,1,65142,65276,1,69216,69246,1,69314,69316,1,69372,69375,1,126464,126467,1,126469,126495,1,126497,126498,1,126500,126503,3,126505,126514,1,126516,126519,1,126521,126523,2,126530,126535,5,126537,126541,2,126542,126543,1,126545,126546,1,126548,126551,3,126553,126561,2,126562,126564,2,126567,126570,1,126572,126578,1,126580,126583,1,126585,126588,1,126590,126592,2,126593,126601,1,126603,126619,1,126625,126627,1,126629,126633,1,126635,126651,1,126704,126705,1]));static Armenian=new N(new Uint32Array([1329,1366,1,1369,1418,1,1421,1423,1,64275,64279,1]));static Avestan=new N(new Uint32Array([68352,68405,1,68409,68415,1]));static Balinese=new N(new Uint32Array([6912,6988,1,6990,7039,1]));static Bamum=new N(new Uint32Array([42656,42743,1,92160,92728,1]));static Bassa_Vah=new N(new Uint32Array([92880,92909,1,92912,92917,1]));static Batak=new N(new Uint32Array([7104,7155,1,7164,7167,1]));static Bengali=new N(new Uint32Array([2432,2435,1,2437,2444,1,2447,2448,1,2451,2472,1,2474,2480,1,2482,2486,4,2487,2489,1,2492,2500,1,2503,2504,1,2507,2510,1,2519,2524,5,2525,2527,2,2528,2531,1,2534,2558,1]));static Bhaiksuki=new N(new Uint32Array([72704,72712,1,72714,72758,1,72760,72773,1,72784,72812,1]));static Bopomofo=new N(new Uint32Array([746,747,1,12549,12591,1,12704,12735,1]));static Brahmi=new N(new Uint32Array([69632,69709,1,69714,69749,1,69759,69759,1]));static Braille=new N(new Uint32Array([10240,10495,1]));static Buginese=new N(new Uint32Array([6656,6683,1,6686,6687,1]));static Buhid=new N(new Uint32Array([5952,5971,1]));static Canadian_Aboriginal=new N(new Uint32Array([5120,5759,1,6320,6389,1,72368,72383,1]));static Carian=new N(new Uint32Array([66208,66256,1]));static Caucasian_Albanian=new N(new Uint32Array([66864,66915,1,66927,66927,1]));static Chakma=new N(new Uint32Array([69888,69940,1,69942,69959,1]));static Cham=new N(new Uint32Array([43520,43574,1,43584,43597,1,43600,43609,1,43612,43615,1]));static Cherokee=new N(new Uint32Array([5024,5109,1,5112,5117,1,43888,43967,1]));static Chorasmian=new N(new Uint32Array([69552,69579,1]));static Common=new N(new Uint32Array([0,64,1,91,96,1,123,169,1,171,185,1,187,191,1,215,247,32,697,735,1,741,745,1,748,767,1,884,894,10,901,903,2,1541,1548,7,1563,1567,4,1600,1757,157,2274,2404,130,2405,3647,1242,4053,4056,1,4347,5867,1520,5868,5869,1,5941,5942,1,6146,6147,1,6149,7379,1230,7393,7401,8,7402,7404,1,7406,7411,1,7413,7415,1,7418,8192,774,8193,8203,1,8206,8292,1,8294,8304,1,8308,8318,1,8320,8334,1,8352,8384,1,8448,8485,1,8487,8489,1,8492,8497,1,8499,8525,1,8527,8543,1,8585,8587,1,8592,9257,1,9280,9290,1,9312,10239,1,10496,11123,1,11126,11157,1,11159,11263,1,11776,11869,1,12272,12292,1,12294,12296,2,12297,12320,1,12336,12343,1,12348,12351,1,12443,12444,1,12448,12539,91,12540,12688,148,12689,12703,1,12736,12773,1,12783,12832,49,12833,12895,1,12927,13007,1,13055,13144,89,13145,13311,1,19904,19967,1,42752,42785,1,42888,42890,1,43056,43065,1,43310,43471,161,43867,43882,15,43883,64830,20947,64831,65040,209,65041,65049,1,65072,65106,1,65108,65126,1,65128,65131,1,65279,65281,2,65282,65312,1,65339,65344,1,65371,65381,1,65392,65438,46,65439,65504,65,65505,65510,1,65512,65518,1,65529,65533,1,65792,65794,1,65799,65843,1,65847,65855,1,65936,65948,1,66e3,66044,1,66273,66299,1,113824,113827,1,117760,118009,1,118016,118451,1,118608,118723,1,118784,119029,1,119040,119078,1,119081,119142,1,119146,119162,1,119171,119172,1,119180,119209,1,119214,119274,1,119488,119507,1,119520,119539,1,119552,119638,1,119648,119672,1,119808,119892,1,119894,119964,1,119966,119967,1,119970,119973,3,119974,119977,3,119978,119980,1,119982,119993,1,119995,119997,2,119998,120003,1,120005,120069,1,120071,120074,1,120077,120084,1,120086,120092,1,120094,120121,1,120123,120126,1,120128,120132,1,120134,120138,4,120139,120144,1,120146,120485,1,120488,120779,1,120782,120831,1,126065,126132,1,126209,126269,1,126976,127019,1,127024,127123,1,127136,127150,1,127153,127167,1,127169,127183,1,127185,127221,1,127232,127405,1,127462,127487,1,127489,127490,1,127504,127547,1,127552,127560,1,127568,127569,1,127584,127589,1,127744,128727,1,128732,128748,1,128752,128764,1,128768,128886,1,128891,128985,1,128992,129003,1,129008,129024,16,129025,129035,1,129040,129095,1,129104,129113,1,129120,129159,1,129168,129197,1,129200,129211,1,129216,129217,1,129280,129619,1,129632,129645,1,129648,129660,1,129664,129673,1,129679,129734,1,129742,129756,1,129759,129769,1,129776,129784,1,129792,129938,1,129940,130041,1,917505,917536,31,917537,917631,1]));static foldCommon=new N(new Uint32Array([924,956,32]));static Coptic=new N(new Uint32Array([994,1007,1,11392,11507,1,11513,11519,1]));static Cuneiform=new N(new Uint32Array([73728,74649,1,74752,74862,1,74864,74868,1,74880,75075,1]));static Cypriot=new N(new Uint32Array([67584,67589,1,67592,67594,2,67595,67637,1,67639,67640,1,67644,67647,3]));static Cypro_Minoan=new N(new Uint32Array([77712,77810,1]));static Cyrillic=new N(new Uint32Array([1024,1156,1,1159,1327,1,7296,7306,1,7467,7544,77,11744,11775,1,42560,42655,1,65070,65071,1,122928,122989,1,123023,123023,1]));static Deseret=new N(new Uint32Array([66560,66639,1]));static Devanagari=new N(new Uint32Array([2304,2384,1,2389,2403,1,2406,2431,1,43232,43263,1,72448,72457,1]));static Dives_Akuru=new N(new Uint32Array([71936,71942,1,71945,71948,3,71949,71955,1,71957,71958,1,71960,71989,1,71991,71992,1,71995,72006,1,72016,72025,1]));static Dogra=new N(new Uint32Array([71680,71739,1]));static Duployan=new N(new Uint32Array([113664,113770,1,113776,113788,1,113792,113800,1,113808,113817,1,113820,113823,1]));static Egyptian_Hieroglyphs=new N(new Uint32Array([77824,78933,1,78944,82938,1]));static Elbasan=new N(new Uint32Array([66816,66855,1]));static Elymaic=new N(new Uint32Array([69600,69622,1]));static Ethiopic=new N(new Uint32Array([4608,4680,1,4682,4685,1,4688,4694,1,4696,4698,2,4699,4701,1,4704,4744,1,4746,4749,1,4752,4784,1,4786,4789,1,4792,4798,1,4800,4802,2,4803,4805,1,4808,4822,1,4824,4880,1,4882,4885,1,4888,4954,1,4957,4988,1,4992,5017,1,11648,11670,1,11680,11686,1,11688,11694,1,11696,11702,1,11704,11710,1,11712,11718,1,11720,11726,1,11728,11734,1,11736,11742,1,43777,43782,1,43785,43790,1,43793,43798,1,43808,43814,1,43816,43822,1,124896,124902,1,124904,124907,1,124909,124910,1,124912,124926,1]));static Garay=new N(new Uint32Array([68928,68965,1,68969,68997,1,69006,69007,1]));static Georgian=new N(new Uint32Array([4256,4293,1,4295,4301,6,4304,4346,1,4348,4351,1,7312,7354,1,7357,7359,1,11520,11557,1,11559,11565,6]));static Glagolitic=new N(new Uint32Array([11264,11359,1,122880,122886,1,122888,122904,1,122907,122913,1,122915,122916,1,122918,122922,1]));static Gothic=new N(new Uint32Array([66352,66378,1]));static Grantha=new N(new Uint32Array([70400,70403,1,70405,70412,1,70415,70416,1,70419,70440,1,70442,70448,1,70450,70451,1,70453,70457,1,70460,70468,1,70471,70472,1,70475,70477,1,70480,70487,7,70493,70499,1,70502,70508,1,70512,70516,1]));static Greek=new N(new Uint32Array([880,883,1,885,887,1,890,893,1,895,900,5,902,904,2,905,906,1,908,910,2,911,929,1,931,993,1,1008,1023,1,7462,7466,1,7517,7521,1,7526,7530,1,7615,7936,321,7937,7957,1,7960,7965,1,7968,8005,1,8008,8013,1,8016,8023,1,8025,8031,2,8032,8061,1,8064,8116,1,8118,8132,1,8134,8147,1,8150,8155,1,8157,8175,1,8178,8180,1,8182,8190,1,8486,43877,35391,65856,65934,1,65952,119296,53344,119297,119365,1]));static foldGreek=new N(new Uint32Array([181,837,656]));static Gujarati=new N(new Uint32Array([2689,2691,1,2693,2701,1,2703,2705,1,2707,2728,1,2730,2736,1,2738,2739,1,2741,2745,1,2748,2757,1,2759,2761,1,2763,2765,1,2768,2784,16,2785,2787,1,2790,2801,1,2809,2815,1]));static Gunjala_Gondi=new N(new Uint32Array([73056,73061,1,73063,73064,1,73066,73102,1,73104,73105,1,73107,73112,1,73120,73129,1]));static Gurmukhi=new N(new Uint32Array([2561,2563,1,2565,2570,1,2575,2576,1,2579,2600,1,2602,2608,1,2610,2611,1,2613,2614,1,2616,2617,1,2620,2622,2,2623,2626,1,2631,2632,1,2635,2637,1,2641,2649,8,2650,2652,1,2654,2662,8,2663,2678,1]));static Gurung_Khema=new N(new Uint32Array([90368,90425,1]));static Han=new N(new Uint32Array([11904,11929,1,11931,12019,1,12032,12245,1,12293,12295,2,12321,12329,1,12344,12347,1,13312,19903,1,19968,40959,1,63744,64109,1,64112,64217,1,94178,94179,1,94192,94193,1,131072,173791,1,173824,177977,1,177984,178205,1,178208,183969,1,183984,191456,1,191472,192093,1,194560,195101,1,196608,201546,1,201552,205743,1]));static Hangul=new N(new Uint32Array([4352,4607,1,12334,12335,1,12593,12686,1,12800,12830,1,12896,12926,1,43360,43388,1,44032,55203,1,55216,55238,1,55243,55291,1,65440,65470,1,65474,65479,1,65482,65487,1,65490,65495,1,65498,65500,1]));static Hanifi_Rohingya=new N(new Uint32Array([68864,68903,1,68912,68921,1]));static Hanunoo=new N(new Uint32Array([5920,5940,1]));static Hatran=new N(new Uint32Array([67808,67826,1,67828,67829,1,67835,67839,1]));static Hebrew=new N(new Uint32Array([1425,1479,1,1488,1514,1,1519,1524,1,64285,64310,1,64312,64316,1,64318,64320,2,64321,64323,2,64324,64326,2,64327,64335,1]));static Hiragana=new N(new Uint32Array([12353,12438,1,12445,12447,1,110593,110879,1,110898,110928,30,110929,110930,1,127488,127488,1]));static Imperial_Aramaic=new N(new Uint32Array([67648,67669,1,67671,67679,1]));static Inherited=new N(new Uint32Array([768,879,1,1157,1158,1,1611,1621,1,1648,2385,737,2386,2388,1,6832,6862,1,7376,7378,1,7380,7392,1,7394,7400,1,7405,7412,7,7416,7417,1,7616,7679,1,8204,8205,1,8400,8432,1,12330,12333,1,12441,12442,1,65024,65039,1,65056,65069,1,66045,66272,227,70459,118528,48069,118529,118573,1,118576,118598,1,119143,119145,1,119163,119170,1,119173,119179,1,119210,119213,1,917760,917999,1]));static foldInherited=new N(new Uint32Array([921,953,32,8126,8126,1]));static Inscriptional_Pahlavi=new N(new Uint32Array([68448,68466,1,68472,68479,1]));static Inscriptional_Parthian=new N(new Uint32Array([68416,68437,1,68440,68447,1]));static Javanese=new N(new Uint32Array([43392,43469,1,43472,43481,1,43486,43487,1]));static Kaithi=new N(new Uint32Array([69760,69826,1,69837,69837,1]));static Kannada=new N(new Uint32Array([3200,3212,1,3214,3216,1,3218,3240,1,3242,3251,1,3253,3257,1,3260,3268,1,3270,3272,1,3274,3277,1,3285,3286,1,3293,3294,1,3296,3299,1,3302,3311,1,3313,3315,1]));static Katakana=new N(new Uint32Array([12449,12538,1,12541,12543,1,12784,12799,1,13008,13054,1,13056,13143,1,65382,65391,1,65393,65437,1,110576,110579,1,110581,110587,1,110589,110590,1,110592,110880,288,110881,110882,1,110933,110948,15,110949,110951,1]));static Kawi=new N(new Uint32Array([73472,73488,1,73490,73530,1,73534,73562,1]));static Kayah_Li=new N(new Uint32Array([43264,43309,1,43311,43311,1]));static Kharoshthi=new N(new Uint32Array([68096,68099,1,68101,68102,1,68108,68115,1,68117,68119,1,68121,68149,1,68152,68154,1,68159,68168,1,68176,68184,1]));static Khitan_Small_Script=new N(new Uint32Array([94180,101120,6940,101121,101589,1,101631,101631,1]));static Khmer=new N(new Uint32Array([6016,6109,1,6112,6121,1,6128,6137,1,6624,6655,1]));static Khojki=new N(new Uint32Array([70144,70161,1,70163,70209,1]));static Khudawadi=new N(new Uint32Array([70320,70378,1,70384,70393,1]));static Kirat_Rai=new N(new Uint32Array([93504,93561,1]));static Lao=new N(new Uint32Array([3713,3714,1,3716,3718,2,3719,3722,1,3724,3747,1,3749,3751,2,3752,3773,1,3776,3780,1,3782,3784,2,3785,3790,1,3792,3801,1,3804,3807,1]));static Latin=new N(new Uint32Array([65,90,1,97,122,1,170,186,16,192,214,1,216,246,1,248,696,1,736,740,1,7424,7461,1,7468,7516,1,7522,7525,1,7531,7543,1,7545,7614,1,7680,7935,1,8305,8319,14,8336,8348,1,8490,8491,1,8498,8526,28,8544,8584,1,11360,11391,1,42786,42887,1,42891,42957,1,42960,42961,1,42963,42965,2,42966,42972,1,42994,43007,1,43824,43866,1,43868,43876,1,43878,43881,1,64256,64262,1,65313,65338,1,65345,65370,1,67456,67461,1,67463,67504,1,67506,67514,1,122624,122654,1,122661,122666,1]));static Lepcha=new N(new Uint32Array([7168,7223,1,7227,7241,1,7245,7247,1]));static Limbu=new N(new Uint32Array([6400,6430,1,6432,6443,1,6448,6459,1,6464,6468,4,6469,6479,1]));static Linear_A=new N(new Uint32Array([67072,67382,1,67392,67413,1,67424,67431,1]));static Linear_B=new N(new Uint32Array([65536,65547,1,65549,65574,1,65576,65594,1,65596,65597,1,65599,65613,1,65616,65629,1,65664,65786,1]));static Lisu=new N(new Uint32Array([42192,42239,1,73648,73648,1]));static Lycian=new N(new Uint32Array([66176,66204,1]));static Lydian=new N(new Uint32Array([67872,67897,1,67903,67903,1]));static Mahajani=new N(new Uint32Array([69968,70006,1]));static Makasar=new N(new Uint32Array([73440,73464,1]));static Malayalam=new N(new Uint32Array([3328,3340,1,3342,3344,1,3346,3396,1,3398,3400,1,3402,3407,1,3412,3427,1,3430,3455,1]));static Mandaic=new N(new Uint32Array([2112,2139,1,2142,2142,1]));static Manichaean=new N(new Uint32Array([68288,68326,1,68331,68342,1]));static Marchen=new N(new Uint32Array([72816,72847,1,72850,72871,1,72873,72886,1]));static Masaram_Gondi=new N(new Uint32Array([72960,72966,1,72968,72969,1,72971,73014,1,73018,73020,2,73021,73023,2,73024,73031,1,73040,73049,1]));static Medefaidrin=new N(new Uint32Array([93760,93850,1]));static Meetei_Mayek=new N(new Uint32Array([43744,43766,1,43968,44013,1,44016,44025,1]));static Mende_Kikakui=new N(new Uint32Array([124928,125124,1,125127,125142,1]));static Meroitic_Cursive=new N(new Uint32Array([68e3,68023,1,68028,68047,1,68050,68095,1]));static Meroitic_Hieroglyphs=new N(new Uint32Array([67968,67999,1]));static Miao=new N(new Uint32Array([93952,94026,1,94031,94087,1,94095,94111,1]));static Modi=new N(new Uint32Array([71168,71236,1,71248,71257,1]));static Mongolian=new N(new Uint32Array([6144,6145,1,6148,6150,2,6151,6169,1,6176,6264,1,6272,6314,1,71264,71276,1]));static Mro=new N(new Uint32Array([92736,92766,1,92768,92777,1,92782,92783,1]));static Multani=new N(new Uint32Array([70272,70278,1,70280,70282,2,70283,70285,1,70287,70301,1,70303,70313,1]));static Myanmar=new N(new Uint32Array([4096,4255,1,43488,43518,1,43616,43647,1,71376,71395,1]));static Nabataean=new N(new Uint32Array([67712,67742,1,67751,67759,1]));static Nag_Mundari=new N(new Uint32Array([124112,124153,1]));static Nandinagari=new N(new Uint32Array([72096,72103,1,72106,72151,1,72154,72164,1]));static New_Tai_Lue=new N(new Uint32Array([6528,6571,1,6576,6601,1,6608,6618,1,6622,6623,1]));static Newa=new N(new Uint32Array([70656,70747,1,70749,70753,1]));static Nko=new N(new Uint32Array([1984,2042,1,2045,2047,1]));static Nushu=new N(new Uint32Array([94177,110960,16783,110961,111355,1]));static Nyiakeng_Puachue_Hmong=new N(new Uint32Array([123136,123180,1,123184,123197,1,123200,123209,1,123214,123215,1]));static Ogham=new N(new Uint32Array([5760,5788,1]));static Ol_Chiki=new N(new Uint32Array([7248,7295,1]));static Ol_Onal=new N(new Uint32Array([124368,124410,1,124415,124415,1]));static Old_Hungarian=new N(new Uint32Array([68736,68786,1,68800,68850,1,68858,68863,1]));static Old_Italic=new N(new Uint32Array([66304,66339,1,66349,66351,1]));static Old_North_Arabian=new N(new Uint32Array([68224,68255,1]));static Old_Permic=new N(new Uint32Array([66384,66426,1]));static Old_Persian=new N(new Uint32Array([66464,66499,1,66504,66517,1]));static Old_Sogdian=new N(new Uint32Array([69376,69415,1]));static Old_South_Arabian=new N(new Uint32Array([68192,68223,1]));static Old_Turkic=new N(new Uint32Array([68608,68680,1]));static Old_Uyghur=new N(new Uint32Array([69488,69513,1]));static Oriya=new N(new Uint32Array([2817,2819,1,2821,2828,1,2831,2832,1,2835,2856,1,2858,2864,1,2866,2867,1,2869,2873,1,2876,2884,1,2887,2888,1,2891,2893,1,2901,2903,1,2908,2909,1,2911,2915,1,2918,2935,1]));static Osage=new N(new Uint32Array([66736,66771,1,66776,66811,1]));static Osmanya=new N(new Uint32Array([66688,66717,1,66720,66729,1]));static Pahawh_Hmong=new N(new Uint32Array([92928,92997,1,93008,93017,1,93019,93025,1,93027,93047,1,93053,93071,1]));static Palmyrene=new N(new Uint32Array([67680,67711,1]));static Pau_Cin_Hau=new N(new Uint32Array([72384,72440,1]));static Phags_Pa=new N(new Uint32Array([43072,43127,1]));static Phoenician=new N(new Uint32Array([67840,67867,1,67871,67871,1]));static Psalter_Pahlavi=new N(new Uint32Array([68480,68497,1,68505,68508,1,68521,68527,1]));static Rejang=new N(new Uint32Array([43312,43347,1,43359,43359,1]));static Runic=new N(new Uint32Array([5792,5866,1,5870,5880,1]));static Samaritan=new N(new Uint32Array([2048,2093,1,2096,2110,1]));static Saurashtra=new N(new Uint32Array([43136,43205,1,43214,43225,1]));static Sharada=new N(new Uint32Array([70016,70111,1]));static Shavian=new N(new Uint32Array([66640,66687,1]));static Siddham=new N(new Uint32Array([71040,71093,1,71096,71133,1]));static SignWriting=new N(new Uint32Array([120832,121483,1,121499,121503,1,121505,121519,1]));static Sinhala=new N(new Uint32Array([3457,3459,1,3461,3478,1,3482,3505,1,3507,3515,1,3517,3520,3,3521,3526,1,3530,3535,5,3536,3540,1,3542,3544,2,3545,3551,1,3558,3567,1,3570,3572,1,70113,70132,1]));static Sogdian=new N(new Uint32Array([69424,69465,1]));static Sora_Sompeng=new N(new Uint32Array([69840,69864,1,69872,69881,1]));static Soyombo=new N(new Uint32Array([72272,72354,1]));static Sundanese=new N(new Uint32Array([7040,7103,1,7360,7367,1]));static Sunuwar=new N(new Uint32Array([72640,72673,1,72688,72697,1]));static Syloti_Nagri=new N(new Uint32Array([43008,43052,1]));static Syriac=new N(new Uint32Array([1792,1805,1,1807,1866,1,1869,1871,1,2144,2154,1]));static Tagalog=new N(new Uint32Array([5888,5909,1,5919,5919,1]));static Tagbanwa=new N(new Uint32Array([5984,5996,1,5998,6e3,1,6002,6003,1]));static Tai_Le=new N(new Uint32Array([6480,6509,1,6512,6516,1]));static Tai_Tham=new N(new Uint32Array([6688,6750,1,6752,6780,1,6783,6793,1,6800,6809,1,6816,6829,1]));static Tai_Viet=new N(new Uint32Array([43648,43714,1,43739,43743,1]));static Takri=new N(new Uint32Array([71296,71353,1,71360,71369,1]));static Tamil=new N(new Uint32Array([2946,2947,1,2949,2954,1,2958,2960,1,2962,2965,1,2969,2970,1,2972,2974,2,2975,2979,4,2980,2984,4,2985,2986,1,2990,3001,1,3006,3010,1,3014,3016,1,3018,3021,1,3024,3031,7,3046,3066,1,73664,73713,1,73727,73727,1]));static Tangsa=new N(new Uint32Array([92784,92862,1,92864,92873,1]));static Tangut=new N(new Uint32Array([94176,94208,32,94209,100343,1,100352,101119,1,101632,101640,1]));static Telugu=new N(new Uint32Array([3072,3084,1,3086,3088,1,3090,3112,1,3114,3129,1,3132,3140,1,3142,3144,1,3146,3149,1,3157,3158,1,3160,3162,1,3165,3168,3,3169,3171,1,3174,3183,1,3191,3199,1]));static Thaana=new N(new Uint32Array([1920,1969,1]));static Thai=new N(new Uint32Array([3585,3642,1,3648,3675,1]));static Tibetan=new N(new Uint32Array([3840,3911,1,3913,3948,1,3953,3991,1,3993,4028,1,4030,4044,1,4046,4052,1,4057,4058,1]));static Tifinagh=new N(new Uint32Array([11568,11623,1,11631,11632,1,11647,11647,1]));static Tirhuta=new N(new Uint32Array([70784,70855,1,70864,70873,1]));static Todhri=new N(new Uint32Array([67008,67059,1]));static Toto=new N(new Uint32Array([123536,123566,1]));static Tulu_Tigalari=new N(new Uint32Array([70528,70537,1,70539,70542,3,70544,70581,1,70583,70592,1,70594,70597,3,70599,70602,1,70604,70613,1,70615,70616,1,70625,70626,1]));static Ugaritic=new N(new Uint32Array([66432,66461,1,66463,66463,1]));static Vai=new N(new Uint32Array([42240,42539,1]));static Vithkuqi=new N(new Uint32Array([66928,66938,1,66940,66954,1,66956,66962,1,66964,66965,1,66967,66977,1,66979,66993,1,66995,67001,1,67003,67004,1]));static Wancho=new N(new Uint32Array([123584,123641,1,123647,123647,1]));static Warang_Citi=new N(new Uint32Array([71840,71922,1,71935,71935,1]));static Yezidi=new N(new Uint32Array([69248,69289,1,69291,69293,1,69296,69297,1]));static Yi=new N(new Uint32Array([40960,42124,1,42128,42182,1]));static Zanabazar_Square=new N(new Uint32Array([72192,72263,1]));static CATEGORIES=new Map([[`C`,e.C],[`Cc`,e.Cc],[`Cf`,e.Cf],[`Co`,e.Co],[`Cs`,e.Cs],[`L`,e.L],[`Ll`,e.Ll],[`Lm`,e.Lm],[`Lo`,e.Lo],[`Lt`,e.Lt],[`Lu`,e.Lu],[`M`,e.M],[`Mc`,e.Mc],[`Me`,e.Me],[`Mn`,e.Mn],[`N`,e.N],[`Nd`,e.Nd],[`Nl`,e.Nl],[`No`,e.No],[`P`,e.P],[`Pc`,e.Pc],[`Pd`,e.Pd],[`Pe`,e.Pe],[`Pf`,e.Pf],[`Pi`,e.Pi],[`Po`,e.Po],[`Ps`,e.Ps],[`S`,e.S],[`Sc`,e.Sc],[`Sk`,e.Sk],[`Sm`,e.Sm],[`So`,e.So],[`Z`,e.Z],[`Zl`,e.Zl],[`Zp`,e.Zp],[`Zs`,e.Zs]]);static SCRIPTS=new Map([[`Adlam`,e.Adlam],[`Ahom`,e.Ahom],[`Anatolian_Hieroglyphs`,e.Anatolian_Hieroglyphs],[`Arabic`,e.Arabic],[`Armenian`,e.Armenian],[`Avestan`,e.Avestan],[`Balinese`,e.Balinese],[`Bamum`,e.Bamum],[`Bassa_Vah`,e.Bassa_Vah],[`Batak`,e.Batak],[`Bengali`,e.Bengali],[`Bhaiksuki`,e.Bhaiksuki],[`Bopomofo`,e.Bopomofo],[`Brahmi`,e.Brahmi],[`Braille`,e.Braille],[`Buginese`,e.Buginese],[`Buhid`,e.Buhid],[`Canadian_Aboriginal`,e.Canadian_Aboriginal],[`Carian`,e.Carian],[`Caucasian_Albanian`,e.Caucasian_Albanian],[`Chakma`,e.Chakma],[`Cham`,e.Cham],[`Cherokee`,e.Cherokee],[`Chorasmian`,e.Chorasmian],[`Common`,e.Common],[`Coptic`,e.Coptic],[`Cuneiform`,e.Cuneiform],[`Cypriot`,e.Cypriot],[`Cypro_Minoan`,e.Cypro_Minoan],[`Cyrillic`,e.Cyrillic],[`Deseret`,e.Deseret],[`Devanagari`,e.Devanagari],[`Dives_Akuru`,e.Dives_Akuru],[`Dogra`,e.Dogra],[`Duployan`,e.Duployan],[`Egyptian_Hieroglyphs`,e.Egyptian_Hieroglyphs],[`Elbasan`,e.Elbasan],[`Elymaic`,e.Elymaic],[`Ethiopic`,e.Ethiopic],[`Garay`,e.Garay],[`Georgian`,e.Georgian],[`Glagolitic`,e.Glagolitic],[`Gothic`,e.Gothic],[`Grantha`,e.Grantha],[`Greek`,e.Greek],[`Gujarati`,e.Gujarati],[`Gunjala_Gondi`,e.Gunjala_Gondi],[`Gurmukhi`,e.Gurmukhi],[`Gurung_Khema`,e.Gurung_Khema],[`Han`,e.Han],[`Hangul`,e.Hangul],[`Hanifi_Rohingya`,e.Hanifi_Rohingya],[`Hanunoo`,e.Hanunoo],[`Hatran`,e.Hatran],[`Hebrew`,e.Hebrew],[`Hiragana`,e.Hiragana],[`Imperial_Aramaic`,e.Imperial_Aramaic],[`Inherited`,e.Inherited],[`Inscriptional_Pahlavi`,e.Inscriptional_Pahlavi],[`Inscriptional_Parthian`,e.Inscriptional_Parthian],[`Javanese`,e.Javanese],[`Kaithi`,e.Kaithi],[`Kannada`,e.Kannada],[`Katakana`,e.Katakana],[`Kawi`,e.Kawi],[`Kayah_Li`,e.Kayah_Li],[`Kharoshthi`,e.Kharoshthi],[`Khitan_Small_Script`,e.Khitan_Small_Script],[`Khmer`,e.Khmer],[`Khojki`,e.Khojki],[`Khudawadi`,e.Khudawadi],[`Kirat_Rai`,e.Kirat_Rai],[`Lao`,e.Lao],[`Latin`,e.Latin],[`Lepcha`,e.Lepcha],[`Limbu`,e.Limbu],[`Linear_A`,e.Linear_A],[`Linear_B`,e.Linear_B],[`Lisu`,e.Lisu],[`Lycian`,e.Lycian],[`Lydian`,e.Lydian],[`Mahajani`,e.Mahajani],[`Makasar`,e.Makasar],[`Malayalam`,e.Malayalam],[`Mandaic`,e.Mandaic],[`Manichaean`,e.Manichaean],[`Marchen`,e.Marchen],[`Masaram_Gondi`,e.Masaram_Gondi],[`Medefaidrin`,e.Medefaidrin],[`Meetei_Mayek`,e.Meetei_Mayek],[`Mende_Kikakui`,e.Mende_Kikakui],[`Meroitic_Cursive`,e.Meroitic_Cursive],[`Meroitic_Hieroglyphs`,e.Meroitic_Hieroglyphs],[`Miao`,e.Miao],[`Modi`,e.Modi],[`Mongolian`,e.Mongolian],[`Mro`,e.Mro],[`Multani`,e.Multani],[`Myanmar`,e.Myanmar],[`Nabataean`,e.Nabataean],[`Nag_Mundari`,e.Nag_Mundari],[`Nandinagari`,e.Nandinagari],[`New_Tai_Lue`,e.New_Tai_Lue],[`Newa`,e.Newa],[`Nko`,e.Nko],[`Nushu`,e.Nushu],[`Nyiakeng_Puachue_Hmong`,e.Nyiakeng_Puachue_Hmong],[`Ogham`,e.Ogham],[`Ol_Chiki`,e.Ol_Chiki],[`Ol_Onal`,e.Ol_Onal],[`Old_Hungarian`,e.Old_Hungarian],[`Old_Italic`,e.Old_Italic],[`Old_North_Arabian`,e.Old_North_Arabian],[`Old_Permic`,e.Old_Permic],[`Old_Persian`,e.Old_Persian],[`Old_Sogdian`,e.Old_Sogdian],[`Old_South_Arabian`,e.Old_South_Arabian],[`Old_Turkic`,e.Old_Turkic],[`Old_Uyghur`,e.Old_Uyghur],[`Oriya`,e.Oriya],[`Osage`,e.Osage],[`Osmanya`,e.Osmanya],[`Pahawh_Hmong`,e.Pahawh_Hmong],[`Palmyrene`,e.Palmyrene],[`Pau_Cin_Hau`,e.Pau_Cin_Hau],[`Phags_Pa`,e.Phags_Pa],[`Phoenician`,e.Phoenician],[`Psalter_Pahlavi`,e.Psalter_Pahlavi],[`Rejang`,e.Rejang],[`Runic`,e.Runic],[`Samaritan`,e.Samaritan],[`Saurashtra`,e.Saurashtra],[`Sharada`,e.Sharada],[`Shavian`,e.Shavian],[`Siddham`,e.Siddham],[`SignWriting`,e.SignWriting],[`Sinhala`,e.Sinhala],[`Sogdian`,e.Sogdian],[`Sora_Sompeng`,e.Sora_Sompeng],[`Soyombo`,e.Soyombo],[`Sundanese`,e.Sundanese],[`Sunuwar`,e.Sunuwar],[`Syloti_Nagri`,e.Syloti_Nagri],[`Syriac`,e.Syriac],[`Tagalog`,e.Tagalog],[`Tagbanwa`,e.Tagbanwa],[`Tai_Le`,e.Tai_Le],[`Tai_Tham`,e.Tai_Tham],[`Tai_Viet`,e.Tai_Viet],[`Takri`,e.Takri],[`Tamil`,e.Tamil],[`Tangsa`,e.Tangsa],[`Tangut`,e.Tangut],[`Telugu`,e.Telugu],[`Thaana`,e.Thaana],[`Thai`,e.Thai],[`Tibetan`,e.Tibetan],[`Tifinagh`,e.Tifinagh],[`Tirhuta`,e.Tirhuta],[`Todhri`,e.Todhri],[`Toto`,e.Toto],[`Tulu_Tigalari`,e.Tulu_Tigalari],[`Ugaritic`,e.Ugaritic],[`Vai`,e.Vai],[`Vithkuqi`,e.Vithkuqi],[`Wancho`,e.Wancho],[`Warang_Citi`,e.Warang_Citi],[`Yezidi`,e.Yezidi],[`Yi`,e.Yi],[`Zanabazar_Square`,e.Zanabazar_Square]]);static FOLD_CATEGORIES=new Map([[`L`,e.foldL],[`Ll`,e.foldLl],[`Lt`,e.foldLt],[`Lu`,e.foldLu],[`M`,e.foldM],[`Mn`,e.foldMn]]);static FOLD_SCRIPT=new Map([[`Common`,e.foldCommon],[`Greek`,e.foldGreek],[`Inherited`,e.foldInherited]]);static Print=new N(new Uint32Array([33,126,1,161,172,1,174,887,1,890,895,1,900,906,1,908,910,2,911,929,1,931,1327,1,1329,1366,1,1369,1418,1,1421,1423,1,1425,1479,1,1488,1514,1,1519,1524,1,1542,1563,1,1565,1756,1,1758,1805,1,1808,1866,1,1869,1969,1,1984,2042,1,2045,2093,1,2096,2110,1,2112,2139,1,2142,2144,2,2145,2154,1,2160,2190,1,2199,2273,1,2275,2435,1,2437,2444,1,2447,2448,1,2451,2472,1,2474,2480,1,2482,2486,4,2487,2489,1,2492,2500,1,2503,2504,1,2507,2510,1,2519,2524,5,2525,2527,2,2528,2531,1,2534,2558,1,2561,2563,1,2565,2570,1,2575,2576,1,2579,2600,1,2602,2608,1,2610,2611,1,2613,2614,1,2616,2617,1,2620,2622,2,2623,2626,1,2631,2632,1,2635,2637,1,2641,2649,8,2650,2652,1,2654,2662,8,2663,2678,1,2689,2691,1,2693,2701,1,2703,2705,1,2707,2728,1,2730,2736,1,2738,2739,1,2741,2745,1,2748,2757,1,2759,2761,1,2763,2765,1,2768,2784,16,2785,2787,1,2790,2801,1,2809,2815,1,2817,2819,1,2821,2828,1,2831,2832,1,2835,2856,1,2858,2864,1,2866,2867,1,2869,2873,1,2876,2884,1,2887,2888,1,2891,2893,1,2901,2903,1,2908,2909,1,2911,2915,1,2918,2935,1,2946,2947,1,2949,2954,1,2958,2960,1,2962,2965,1,2969,2970,1,2972,2974,2,2975,2979,4,2980,2984,4,2985,2986,1,2990,3001,1,3006,3010,1,3014,3016,1,3018,3021,1,3024,3031,7,3046,3066,1,3072,3084,1,3086,3088,1,3090,3112,1,3114,3129,1,3132,3140,1,3142,3144,1,3146,3149,1,3157,3158,1,3160,3162,1,3165,3168,3,3169,3171,1,3174,3183,1,3191,3212,1,3214,3216,1,3218,3240,1,3242,3251,1,3253,3257,1,3260,3268,1,3270,3272,1,3274,3277,1,3285,3286,1,3293,3294,1,3296,3299,1,3302,3311,1,3313,3315,1,3328,3340,1,3342,3344,1,3346,3396,1,3398,3400,1,3402,3407,1,3412,3427,1,3430,3455,1,3457,3459,1,3461,3478,1,3482,3505,1,3507,3515,1,3517,3520,3,3521,3526,1,3530,3535,5,3536,3540,1,3542,3544,2,3545,3551,1,3558,3567,1,3570,3572,1,3585,3642,1,3647,3675,1,3713,3714,1,3716,3718,2,3719,3722,1,3724,3747,1,3749,3751,2,3752,3773,1,3776,3780,1,3782,3784,2,3785,3790,1,3792,3801,1,3804,3807,1,3840,3911,1,3913,3948,1,3953,3991,1,3993,4028,1,4030,4044,1,4046,4058,1,4096,4293,1,4295,4301,6,4304,4680,1,4682,4685,1,4688,4694,1,4696,4698,2,4699,4701,1,4704,4744,1,4746,4749,1,4752,4784,1,4786,4789,1,4792,4798,1,4800,4802,2,4803,4805,1,4808,4822,1,4824,4880,1,4882,4885,1,4888,4954,1,4957,4988,1,4992,5017,1,5024,5109,1,5112,5117,1,5120,5759,1,5761,5788,1,5792,5880,1,5888,5909,1,5919,5942,1,5952,5971,1,5984,5996,1,5998,6e3,1,6002,6003,1,6016,6109,1,6112,6121,1,6128,6137,1,6144,6157,1,6159,6169,1,6176,6264,1,6272,6314,1,6320,6389,1,6400,6430,1,6432,6443,1,6448,6459,1,6464,6468,4,6469,6509,1,6512,6516,1,6528,6571,1,6576,6601,1,6608,6618,1,6622,6683,1,6686,6750,1,6752,6780,1,6783,6793,1,6800,6809,1,6816,6829,1,6832,6862,1,6912,6988,1,6990,7155,1,7164,7223,1,7227,7241,1,7245,7306,1,7312,7354,1,7357,7367,1,7376,7418,1,7424,7957,1,7960,7965,1,7968,8005,1,8008,8013,1,8016,8023,1,8025,8031,2,8032,8061,1,8064,8116,1,8118,8132,1,8134,8147,1,8150,8155,1,8157,8175,1,8178,8180,1,8182,8190,1,8208,8231,1,8240,8286,1,8304,8305,1,8308,8334,1,8336,8348,1,8352,8384,1,8400,8432,1,8448,8587,1,8592,9257,1,9280,9290,1,9312,11123,1,11126,11157,1,11159,11507,1,11513,11557,1,11559,11565,6,11568,11623,1,11631,11632,1,11647,11670,1,11680,11686,1,11688,11694,1,11696,11702,1,11704,11710,1,11712,11718,1,11720,11726,1,11728,11734,1,11736,11742,1,11744,11869,1,11904,11929,1,11931,12019,1,12032,12245,1,12272,12287,1,12289,12351,1,12353,12438,1,12441,12543,1,12549,12591,1,12593,12686,1,12688,12773,1,12783,12830,1,12832,42124,1,42128,42182,1,42192,42539,1,42560,42743,1,42752,42957,1,42960,42961,1,42963,42965,2,42966,42972,1,42994,43052,1,43056,43065,1,43072,43127,1,43136,43205,1,43214,43225,1,43232,43347,1,43359,43388,1,43392,43469,1,43471,43481,1,43486,43518,1,43520,43574,1,43584,43597,1,43600,43609,1,43612,43714,1,43739,43766,1,43777,43782,1,43785,43790,1,43793,43798,1,43808,43814,1,43816,43822,1,43824,43883,1,43888,44013,1,44016,44025,1,44032,55203,1,55216,55238,1,55243,55291,1,63744,64109,1,64112,64217,1,64256,64262,1,64275,64279,1,64285,64310,1,64312,64316,1,64318,64320,2,64321,64323,2,64324,64326,2,64327,64450,1,64467,64911,1,64914,64967,1,64975,65008,33,65009,65049,1,65056,65106,1,65108,65126,1,65128,65131,1,65136,65140,1,65142,65276,1,65281,65470,1,65474,65479,1,65482,65487,1,65490,65495,1,65498,65500,1,65504,65510,1,65512,65518,1,65532,65533,1,65536,65547,1,65549,65574,1,65576,65594,1,65596,65597,1,65599,65613,1,65616,65629,1,65664,65786,1,65792,65794,1,65799,65843,1,65847,65934,1,65936,65948,1,65952,66e3,48,66001,66045,1,66176,66204,1,66208,66256,1,66272,66299,1,66304,66339,1,66349,66378,1,66384,66426,1,66432,66461,1,66463,66499,1,66504,66517,1,66560,66717,1,66720,66729,1,66736,66771,1,66776,66811,1,66816,66855,1,66864,66915,1,66927,66938,1,66940,66954,1,66956,66962,1,66964,66965,1,66967,66977,1,66979,66993,1,66995,67001,1,67003,67004,1,67008,67059,1,67072,67382,1,67392,67413,1,67424,67431,1,67456,67461,1,67463,67504,1,67506,67514,1,67584,67589,1,67592,67594,2,67595,67637,1,67639,67640,1,67644,67647,3,67648,67669,1,67671,67742,1,67751,67759,1,67808,67826,1,67828,67829,1,67835,67867,1,67871,67897,1,67903,67968,65,67969,68023,1,68028,68047,1,68050,68099,1,68101,68102,1,68108,68115,1,68117,68119,1,68121,68149,1,68152,68154,1,68159,68168,1,68176,68184,1,68192,68255,1,68288,68326,1,68331,68342,1,68352,68405,1,68409,68437,1,68440,68466,1,68472,68497,1,68505,68508,1,68521,68527,1,68608,68680,1,68736,68786,1,68800,68850,1,68858,68903,1,68912,68921,1,68928,68965,1,68969,68997,1,69006,69007,1,69216,69246,1,69248,69289,1,69291,69293,1,69296,69297,1,69314,69316,1,69372,69415,1,69424,69465,1,69488,69513,1,69552,69579,1,69600,69622,1,69632,69709,1,69714,69749,1,69759,69820,1,69822,69826,1,69840,69864,1,69872,69881,1,69888,69940,1,69942,69959,1,69968,70006,1,70016,70111,1,70113,70132,1,70144,70161,1,70163,70209,1,70272,70278,1,70280,70282,2,70283,70285,1,70287,70301,1,70303,70313,1,70320,70378,1,70384,70393,1,70400,70403,1,70405,70412,1,70415,70416,1,70419,70440,1,70442,70448,1,70450,70451,1,70453,70457,1,70459,70468,1,70471,70472,1,70475,70477,1,70480,70487,7,70493,70499,1,70502,70508,1,70512,70516,1,70528,70537,1,70539,70542,3,70544,70581,1,70583,70592,1,70594,70597,3,70599,70602,1,70604,70613,1,70615,70616,1,70625,70626,1,70656,70747,1,70749,70753,1,70784,70855,1,70864,70873,1,71040,71093,1,71096,71133,1,71168,71236,1,71248,71257,1,71264,71276,1,71296,71353,1,71360,71369,1,71376,71395,1,71424,71450,1,71453,71467,1,71472,71494,1,71680,71739,1,71840,71922,1,71935,71942,1,71945,71948,3,71949,71955,1,71957,71958,1,71960,71989,1,71991,71992,1,71995,72006,1,72016,72025,1,72096,72103,1,72106,72151,1,72154,72164,1,72192,72263,1,72272,72354,1,72368,72440,1,72448,72457,1,72640,72673,1,72688,72697,1,72704,72712,1,72714,72758,1,72760,72773,1,72784,72812,1,72816,72847,1,72850,72871,1,72873,72886,1,72960,72966,1,72968,72969,1,72971,73014,1,73018,73020,2,73021,73023,2,73024,73031,1,73040,73049,1,73056,73061,1,73063,73064,1,73066,73102,1,73104,73105,1,73107,73112,1,73120,73129,1,73440,73464,1,73472,73488,1,73490,73530,1,73534,73562,1,73648,73664,16,73665,73713,1,73727,74649,1,74752,74862,1,74864,74868,1,74880,75075,1,77712,77810,1,77824,78895,1,78912,78933,1,78944,82938,1,82944,83526,1,90368,90425,1,92160,92728,1,92736,92766,1,92768,92777,1,92782,92862,1,92864,92873,1,92880,92909,1,92912,92917,1,92928,92997,1,93008,93017,1,93019,93025,1,93027,93047,1,93053,93071,1,93504,93561,1,93760,93850,1,93952,94026,1,94031,94087,1,94095,94111,1,94176,94180,1,94192,94193,1,94208,100343,1,100352,101589,1,101631,101640,1,110576,110579,1,110581,110587,1,110589,110590,1,110592,110882,1,110898,110928,30,110929,110930,1,110933,110948,15,110949,110951,1,110960,111355,1,113664,113770,1,113776,113788,1,113792,113800,1,113808,113817,1,113820,113823,1,117760,118009,1,118016,118451,1,118528,118573,1,118576,118598,1,118608,118723,1,118784,119029,1,119040,119078,1,119081,119154,1,119163,119274,1,119296,119365,1,119488,119507,1,119520,119539,1,119552,119638,1,119648,119672,1,119808,119892,1,119894,119964,1,119966,119967,1,119970,119973,3,119974,119977,3,119978,119980,1,119982,119993,1,119995,119997,2,119998,120003,1,120005,120069,1,120071,120074,1,120077,120084,1,120086,120092,1,120094,120121,1,120123,120126,1,120128,120132,1,120134,120138,4,120139,120144,1,120146,120485,1,120488,120779,1,120782,121483,1,121499,121503,1,121505,121519,1,122624,122654,1,122661,122666,1,122880,122886,1,122888,122904,1,122907,122913,1,122915,122916,1,122918,122922,1,122928,122989,1,123023,123136,113,123137,123180,1,123184,123197,1,123200,123209,1,123214,123215,1,123536,123566,1,123584,123641,1,123647,124112,465,124113,124153,1,124368,124410,1,124415,124896,481,124897,124902,1,124904,124907,1,124909,124910,1,124912,124926,1,124928,125124,1,125127,125142,1,125184,125259,1,125264,125273,1,125278,125279,1,126065,126132,1,126209,126269,1,126464,126467,1,126469,126495,1,126497,126498,1,126500,126503,3,126505,126514,1,126516,126519,1,126521,126523,2,126530,126535,5,126537,126541,2,126542,126543,1,126545,126546,1,126548,126551,3,126553,126561,2,126562,126564,2,126567,126570,1,126572,126578,1,126580,126583,1,126585,126588,1,126590,126592,2,126593,126601,1,126603,126619,1,126625,126627,1,126629,126633,1,126635,126651,1,126704,126705,1,126976,127019,1,127024,127123,1,127136,127150,1,127153,127167,1,127169,127183,1,127185,127221,1,127232,127405,1,127462,127490,1,127504,127547,1,127552,127560,1,127568,127569,1,127584,127589,1,127744,128727,1,128732,128748,1,128752,128764,1,128768,128886,1,128891,128985,1,128992,129003,1,129008,129024,16,129025,129035,1,129040,129095,1,129104,129113,1,129120,129159,1,129168,129197,1,129200,129211,1,129216,129217,1,129280,129619,1,129632,129645,1,129648,129660,1,129664,129673,1,129679,129734,1,129742,129756,1,129759,129769,1,129776,129784,1,129792,129938,1,129940,130041,1,131072,173791,1,173824,177977,1,177984,178205,1,178208,183969,1,183984,191456,1,191472,192093,1,194560,195101,1,196608,201546,1,201552,205743,1,917760,917999,1]))},P=class{static MAX_RUNE=1114111;static MAX_ASCII=127;static MAX_LATIN1=255;static MAX_BMP=65535;static MIN_FOLD=65;static MAX_FOLD=125251;static is32(e,t){let n=0,r=e.length;for(;n<r;){let i=n+Math.floor((r-n)/2),a=e.getLo(i),o=e.getHi(i);if(a<=t&&t<=o){let n=e.getStride(i);return(t-a)%n===0}t<a?r=i:n=i+1}return!1}static is(e,t){if(t<=this.MAX_LATIN1){for(let n=0;n<e.length;n++){if(t>e.getHi(n))continue;let r=e.getLo(n);if(t<r)return!1;let i=e.getStride(n);return(t-r)%i===0}return!1}return e.length>0&&t>=e.getLo(0)&&this.is32(e,t)}static isUpper(e){if(e<=this.MAX_LATIN1){let t=String.fromCodePoint(e);return t.toUpperCase()===t&&t.toLowerCase()!==t}return this.is(Co.Upper,e)}static isPrint(e){return e<=this.MAX_LATIN1?e>=32&&e<this.MAX_ASCII||e>=161&&e!==173:this.is(Co.Print,e)}static simpleFold(e){if(Co.CASE_ORBIT.has(e))return Co.CASE_ORBIT.get(e);let t=M.toLowerCase(e);return t===e?M.toUpperCase(e):t}static equalsIgnoreCase(e,t){if(e<0||t<0||e===t)return!0;if(e<=this.MAX_ASCII&&t<=this.MAX_ASCII)return M.CODES.get(`A`)<=e&&e<=M.CODES.get(`Z`)&&(e|=32),M.CODES.get(`A`)<=t&&t<=M.CODES.get(`Z`)&&(t|=32),e===t;for(let n=this.simpleFold(e);n!==e;n=this.simpleFold(n))if(n===t)return!0;return!1}},F=class{static METACHARACTERS=`\\.+*?()|[]{}^$`;static EMPTY_BEGIN_LINE=1;static EMPTY_END_LINE=2;static EMPTY_BEGIN_TEXT=4;static EMPTY_END_TEXT=8;static EMPTY_WORD_BOUNDARY=16;static EMPTY_NO_WORD_BOUNDARY=32;static EMPTY_ALL=-1;static emptyInts(){return[]}static isalnum(e){return M.CODES.get(`0`)<=e&&e<=M.CODES.get(`9`)||M.CODES.get(`a`)<=e&&e<=M.CODES.get(`z`)||M.CODES.get(`A`)<=e&&e<=M.CODES.get(`Z`)}static unhex(e){return M.CODES.get(`0`)<=e&&e<=M.CODES.get(`9`)?e-M.CODES.get(`0`):M.CODES.get(`a`)<=e&&e<=M.CODES.get(`f`)?e-M.CODES.get(`a`)+10:M.CODES.get(`A`)<=e&&e<=M.CODES.get(`F`)?e-M.CODES.get(`A`)+10:-1}static escapeRune(e){let t=``;if(P.isPrint(e))this.METACHARACTERS.indexOf(String.fromCodePoint(e))>=0&&(t+=`\\`),t+=String.fromCodePoint(e);else switch(e){case M.CODES.get(`"`):t+=`\\"`;break;case M.CODES.get(`\\`):t+=`\\\\`;break;case M.CODES.get(` `):t+=`\\t`;break;case M.CODES.get(`
236
+ `):t+=`\\n`;break;case M.CODES.get(`\r`):t+=`\\r`;break;case M.CODES.get(`\b`):t+=`\\b`;break;case M.CODES.get(`\f`):t+=`\\f`;break;default:{let n=e.toString(16);e<256?(t+=`\\x`,n.length===1&&(t+=`0`),t+=n):t+=`\\x{${n}}`;break}}return t}static stringToRunes(e){return String(e).split(``).map(e=>e.codePointAt(0))}static runeToString(e){return String.fromCodePoint(e)}static isWordRune(e){return M.CODES.get(`a`)<=e&&e<=M.CODES.get(`z`)||M.CODES.get(`A`)<=e&&e<=M.CODES.get(`Z`)||M.CODES.get(`0`)<=e&&e<=M.CODES.get(`9`)||e===M.CODES.get(`_`)}static emptyOpContext(e,t){let n=0;return e<0&&(n|=this.EMPTY_BEGIN_TEXT|this.EMPTY_BEGIN_LINE),e===M.CODES.get(`
237
+ `)&&(n|=this.EMPTY_BEGIN_LINE),t<0&&(n|=this.EMPTY_END_TEXT|this.EMPTY_END_LINE),t===M.CODES.get(`
238
+ `)&&(n|=this.EMPTY_END_LINE),this.isWordRune(e)===this.isWordRune(t)?n|=this.EMPTY_NO_WORD_BOUNDARY:n|=this.EMPTY_WORD_BOUNDARY,n}static quoteMeta(e){return e.split(``).map(e=>this.METACHARACTERS.indexOf(e)>=0?`\\${e}`:e).join(``)}static charCount(e){return e>P.MAX_BMP?2:1}static stringToUtf8ByteArray(e){if(globalThis.TextEncoder)return Array.from(new TextEncoder().encode(e));{let t=[],n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);i<128?t[n++]=i:i<2048?(t[n++]=i>>6|192,t[n++]=i&63|128):(i&64512)==55296&&r+1<e.length&&(e.charCodeAt(r+1)&64512)==56320?(i=65536+((i&1023)<<10)+(e.charCodeAt(++r)&1023),t[n++]=i>>18|240,t[n++]=i>>12&63|128,t[n++]=i>>6&63|128,t[n++]=i&63|128):(t[n++]=i>>12|224,t[n++]=i>>6&63|128,t[n++]=i&63|128)}return t}}static utf8ByteArrayToString(e){if(globalThis.TextDecoder)return new TextDecoder(`utf-8`).decode(new Uint8Array(e));{let t=[],n=0,r=0;for(;n<e.length;){let i=e[n++];if(i<128)t[r++]=String.fromCharCode(i);else if(i>191&&i<224){let a=e[n++];t[r++]=String.fromCharCode((i&31)<<6|a&63)}else if(i>239&&i<365){let a=e[n++],o=e[n++],s=e[n++],c=((i&7)<<18|(a&63)<<12|(o&63)<<6|s&63)-65536;t[r++]=String.fromCharCode(55296+(c>>10)),t[r++]=String.fromCharCode(56320+(c&1023))}else{let a=e[n++],o=e[n++];t[r++]=String.fromCharCode((i&15)<<12|(a&63)<<6|o&63)}}return t.join(``)}}},wo=(e=[],t=0)=>{let n={};for(let r=0;r<e.length;r++){let i=e[r],a=t+r;n[i]=a,n[a]=i}return Object.freeze(n)},To=class e{static Encoding=wo([`UTF_16`,`UTF_8`]);getEncoding(){throw Error(`not implemented`)}isUTF8Encoding(){return this.getEncoding()===e.Encoding.UTF_8}isUTF16Encoding(){return this.getEncoding()===e.Encoding.UTF_16}},Eo=class extends To{constructor(e=null){super(),this.bytes=e}getEncoding(){return To.Encoding.UTF_8}asCharSequence(){return F.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},Do=class extends To{constructor(e=null){super(),this.charSequence=e}getEncoding(){return To.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return this.charSequence.toString().split(``).map(e=>e.codePointAt(0))}length(){return this.charSequence.length}},Oo=class{static utf16(e){return new Do(e)}static utf8(e){return Array.isArray(e)?new Eo(e):new Eo(F.stringToUtf8ByteArray(e))}},ko=class{static EOF(){return-8}canCheckPrefix(){return!0}endPos(){return this.end}},Ao=class extends ko{constructor(e,t=0,n=e.length){super(),this.bytes=e,this.start=t,this.end=n}step(e){if(e+=this.start,e>=this.end)return ko.EOF();let t=this.bytes[e++]&255;return t&128?(t&224)==192?(t&=31,e>=this.end?ko.EOF():(t=t<<6|this.bytes[e++]&63,t<<3|2)):(t&240)==224?(t&=15,e+1>=this.end?ko.EOF():(t=t<<6|this.bytes[e++]&63,t=t<<6|this.bytes[e++]&63,t<<3|3)):(t&=7,e+2>=this.end?ko.EOF():(t=t<<6|this.bytes[e++]&63,t=t<<6|this.bytes[e++]&63,t=t<<6|this.bytes[e++]&63,t<<3|4)):t<<3|1}index(e,t){t+=this.start;let n=this.indexOf(this.bytes,e.prefixUTF8,t);return n<0?n:n-t}context(e){e+=this.start;let t=-1;if(e>this.start&&e<=this.end){let n=e-1;if(t=this.bytes[n--],t>=128){let r=e-4;for(r<this.start&&(r=this.start);n>=r&&(this.bytes[n]&192)==128;)n--;n<this.start&&(n=this.start),t=this.step(n)>>3}}let n=e<this.end?this.step(e)>>3:-1;return F.emptyOpContext(t,n)}indexOf(e,t,n=0){let r=t.length;if(r===0)return-1;let i=e.length;for(let a=n;a<=i-r;a++)for(let n=0;n<r&&e[a+n]===t[n];n++)if(n===r-1)return a;return-1}},jo=class extends ko{constructor(e,t=0,n=e.length){super(),this.charSequence=e,this.start=t,this.end=n}step(e){if(e+=this.start,e<this.end){let t=this.charSequence.codePointAt(e);return t<<3|F.charCount(t)}else return ko.EOF()}index(e,t){t+=this.start;let n=this.charSequence.indexOf(e.prefix,t);return n<0?n:n-t}context(e){e+=this.start;let t=e>0&&e<=this.charSequence.length?this.charSequence.codePointAt(e-1):-1,n=e<this.charSequence.length?this.charSequence.codePointAt(e):-1;return F.emptyOpContext(t,n)}},Mo=class{static fromUTF8(e,t=0,n=e.length){return new Ao(e,t,n)}static fromUTF16(e,t=0,n=e.length){return new jo(e,t,n)}},No=class extends Error{constructor(e){super(e),this.name=`RE2JSException`}},Po=class extends No{constructor(e,t=null){let n=`error parsing regexp: ${e}`;t&&(n+=`: \`${t}\``),super(n),this.name=`RE2JSSyntaxException`,this.message=n,this.error=e,this.input=t}getDescription(){return this.error}getPattern(){return this.input}},Fo=class extends No{constructor(e){super(e),this.name=`RE2JSCompileException`}},Io=class extends No{constructor(e){super(e),this.name=`RE2JSGroupException`}},Lo=class extends No{constructor(e){super(e),this.name=`RE2JSFlagsException`}},Ro=class{static quoteReplacement(e,t=!1){return t?e.indexOf(`\\`)<0&&e.indexOf(`$`)<0?e:e.split(``).map(e=>{let t=e.codePointAt(0);return t===M.CODES.get(`\\`)||t===M.CODES.get(`$`)?`\\${e}`:e}).join(``):e.indexOf(`$`)<0?e:e.split(``).map(e=>e.codePointAt(0)===M.CODES.get(`$`)?`$$`:e).join(``)}constructor(e,t){if(e===null)throw Error(`pattern is null`);this.patternInput=e;let n=this.patternInput.re2();this.patternGroupCount=n.numberOfCapturingGroups(),this.groups=[],this.namedGroups=n.namedGroups,this.numberOfInstructions=n.numberOfInstructions(),t instanceof To?this.resetMatcherInput(t):Array.isArray(t)?this.resetMatcherInput(Oo.utf8(t)):this.resetMatcherInput(Oo.utf16(t))}pattern(){return this.patternInput}reset(){return this.matcherInputLength=this.matcherInput.length(),this.appendPos=0,this.hasMatch=!1,this.hasGroups=!1,this.anchorFlag=0,this}resetMatcherInput(e){if(e===null)throw Error(`input is null`);return this.matcherInput=e,this.reset(),this}start(e=0){if(typeof e==`string`){let t=this.namedGroups[e];if(!Number.isFinite(t))throw new Io(`group '${e}' not found`);e=t}return this.loadGroup(e),this.groups[2*e]}end(e=0){if(typeof e==`string`){let t=this.namedGroups[e];if(!Number.isFinite(t))throw new Io(`group '${e}' not found`);e=t}return this.loadGroup(e),this.groups[2*e+1]}programSize(){return this.numberOfInstructions}group(e=0){if(typeof e==`string`){let t=this.namedGroups[e];if(!Number.isFinite(t))throw new Io(`group '${e}' not found`);e=t}let t=this.start(e),n=this.end(e);return t<0&&n<0?null:this.substring(t,n)}groupCount(){return this.patternGroupCount}loadGroup(e){if(e<0||e>this.patternGroupCount)throw new Io(`Group index out of bounds: ${e}`);if(!this.hasMatch)throw new Io(`perhaps no match attempted`);if(e===0||this.hasGroups)return;let t=this.groups[1]+1;t>this.matcherInputLength&&(t=this.matcherInputLength);let n=this.patternInput.re2().matchMachineInput(this.matcherInput,this.groups[0],t,this.anchorFlag,1+this.patternGroupCount);if(!n[0])throw new Io(`inconsistency in matching group data`);this.groups=n[1],this.hasGroups=!0}matches(){return this.genMatch(0,j.ANCHOR_BOTH)}lookingAt(){return this.genMatch(0,j.ANCHOR_START)}find(e=null){if(e!==null){if(e<0||e>this.matcherInputLength)throw new Io(`start index out of bounds: ${e}`);return this.reset(),this.genMatch(e,0)}return e=0,this.hasMatch&&(e=this.groups[1],this.groups[0]===this.groups[1]&&e++),this.genMatch(e,j.UNANCHORED)}genMatch(e,t){let n=this.patternInput.re2().matchMachineInput(this.matcherInput,e,this.matcherInputLength,t,1);return n[0]?(this.groups=n[1],this.hasMatch=!0,this.hasGroups=!1,this.anchorFlag=t,!0):!1}substring(e,t){return this.matcherInput.isUTF8Encoding()?F.utf8ByteArrayToString(this.matcherInput.asBytes().slice(e,t)):this.matcherInput.asCharSequence().substring(e,t).toString()}inputLength(){return this.matcherInputLength}appendReplacement(e,t=!1){let n=``,r=this.start(),i=this.end();return this.appendPos<r&&(n+=this.substring(this.appendPos,r)),this.appendPos=i,n+=t?this.appendReplacementInternalJava(e):this.appendReplacementInternalJs(e),n}appendReplacementInternalJava(e){let t=``,n=0,r=e.length;for(let i=0;i<r-1;i++){if(e.codePointAt(i)===M.CODES.get(`\\`)){n<i&&(t+=e.substring(n,i)),i++,n=i;continue}if(e.codePointAt(i)===M.CODES.get(`$`)){let a=e.codePointAt(i+1);if(M.CODES.get(`0`)<=a&&a<=M.CODES.get(`9`)){let o=a-M.CODES.get(`0`);for(n<i&&(t+=e.substring(n,i)),i+=2;i<r&&(a=e.codePointAt(i),!(a<M.CODES.get(`0`)||a>M.CODES.get(`9`)||o*10+a-M.CODES.get(`0`)>this.patternGroupCount));i++)o=o*10+a-M.CODES.get(`0`);if(o>this.patternGroupCount)throw new Io(`n > number of groups: ${o}`);let s=this.group(o);s!==null&&(t+=s),n=i,i--;continue}else if(a===M.CODES.get(`{`)){n<i&&(t+=e.substring(n,i)),i++;let r=i+1;for(;r<e.length&&e.codePointAt(r)!==M.CODES.get(`}`)&&e.codePointAt(r)!==M.CODES.get(` `);)r++;if(r===e.length||e.codePointAt(r)!==M.CODES.get(`}`))throw new Io(`named capture group is missing trailing '}'`);let a=e.substring(i+1,r);t+=this.group(a),n=r+1}}}return n<r&&(t+=e.substring(n,r)),t}appendReplacementInternalJs(e){let t=``,n=0,r=e.length;for(let i=0;i<r-1;i++)if(e.codePointAt(i)===M.CODES.get(`$`)){let a=e.codePointAt(i+1);if(M.CODES.get(`$`)===a){n<i&&(t+=e.substring(n,i)),t+=`$`,i++,n=i+1;continue}else if(M.CODES.get(`&`)===a){n<i&&(t+=e.substring(n,i));let r=this.group(0);r===null?t+=`$&`:t+=r,i++,n=i+1;continue}else if(M.CODES.get(`1`)<=a&&a<=M.CODES.get(`9`)){let o=a-M.CODES.get(`0`);for(n<i&&(t+=e.substring(n,i)),i+=2;i<r&&(a=e.codePointAt(i),!(a<M.CODES.get(`0`)||a>M.CODES.get(`9`)||o*10+a-M.CODES.get(`0`)>this.patternGroupCount));i++)o=o*10+a-M.CODES.get(`0`);if(o>this.patternGroupCount){t+=`$${o}`,n=i,i--;continue}let s=this.group(o);s!==null&&(t+=s),n=i,i--;continue}else if(a===M.CODES.get(`<`)){n<i&&(t+=e.substring(n,i)),i++;let r=i+1;for(;r<e.length&&e.codePointAt(r)!==M.CODES.get(`>`)&&e.codePointAt(r)!==M.CODES.get(` `);)r++;if(r===e.length||e.codePointAt(r)!==M.CODES.get(`>`)){t+=e.substring(i-1,r+1),n=r+1;continue}let a=e.substring(i+1,r);Object.prototype.hasOwnProperty.call(this.namedGroups,a)?t+=this.group(a):t+=`$<${a}>`,n=r+1}}return n<r&&(t+=e.substring(n,r)),t}appendTail(){return this.substring(this.appendPos,this.matcherInputLength)}replaceAll(e,t=!1){return this.replace(e,!0,t)}replaceFirst(e,t=!1){return this.replace(e,!1,t)}replace(e,t=!0,n=!1){let r=``;for(this.reset();this.find()&&(r+=this.appendReplacement(e,n),t););return r+=this.appendTail(),r}},I=class e{static ALT=1;static ALT_MATCH=2;static CAPTURE=3;static EMPTY_WIDTH=4;static FAIL=5;static MATCH=6;static NOP=7;static RUNE=8;static RUNE1=9;static RUNE_ANY=10;static RUNE_ANY_NOT_NL=11;static isRuneOp(t){return e.RUNE<=t&&t<=e.RUNE_ANY_NOT_NL}static escapeRunes(e){let t=`"`;for(let n of e)t+=F.escapeRune(n);return t+=`"`,t}constructor(e){this.op=e,this.out=0,this.arg=0,this.runes=[]}matchRune(e){if(this.runes.length===1){let t=this.runes[0];return(this.arg&j.FOLD_CASE)===0?e===t:P.equalsIgnoreCase(t,e)}for(let t=0;t<this.runes.length&&t<=8;t+=2){if(e<this.runes[t])return!1;if(e<=this.runes[t+1])return!0}let t=0,n=this.runes.length/2|0;for(;t<n;){let r=t+((n-t)/2|0);if(this.runes[2*r]<=e){if(e<=this.runes[2*r+1])return!0;t=r+1}else n=r}return!1}toString(){switch(this.op){case e.ALT:return`alt -> ${this.out}, ${this.arg}`;case e.ALT_MATCH:return`altmatch -> ${this.out}, ${this.arg}`;case e.CAPTURE:return`cap ${this.arg} -> ${this.out}`;case e.EMPTY_WIDTH:return`empty ${this.arg} -> ${this.out}`;case e.MATCH:return`match`;case e.FAIL:return`fail`;case e.NOP:return`nop -> ${this.out}`;case e.RUNE:return this.runes===null?`rune <null>`:[`rune `,e.escapeRunes(this.runes),(this.arg&j.FOLD_CASE)===0?``:`/i`,` -> `,this.out].join(``);case e.RUNE1:return`rune1 ${e.escapeRunes(this.runes)} -> ${this.out}`;case e.RUNE_ANY:return`any -> ${this.out}`;case e.RUNE_ANY_NOT_NL:return`anynotnl -> ${this.out}`;default:throw Error(`unhandled case in Inst.toString`)}}},zo=class{constructor(){this.inst=null,this.cap=[]}},Bo=class{constructor(){this.sparse=[],this.densePcs=[],this.denseThreads=[],this.size=0}contains(e){let t=this.sparse[e];return t<this.size&&this.densePcs[t]===e}isEmpty(){return this.size===0}add(e){let t=this.size++;return this.sparse[e]=t,this.denseThreads[t]=null,this.densePcs[t]=e,t}clear(){this.sparse=[],this.densePcs=[],this.denseThreads=[],this.size=0}toString(){let e=`{`;for(let t=0;t<this.size;t++)t!==0&&(e+=`, `),e+=this.densePcs[t];return e+=`}`,e}},Vo=class e{static fromRE2(t){let n=new e;return n.prog=t.prog,n.re2=t,n.q0=new Bo(n.prog.numInst()),n.q1=new Bo(n.prog.numInst()),n.pool=[],n.poolSize=0,n.matched=!1,n.matchcap=Array(n.prog.numCap<2?2:n.prog.numCap).fill(0),n.ncap=0,n}static fromMachine(t){let n=new e;return n.re2=t.re2,n.prog=t.prog,n.q0=t.q0,n.q1=t.q1,n.pool=t.pool,n.poolSize=t.poolSize,n.matched=t.matched,n.matchcap=t.matchcap,n.ncap=t.ncap,n}init(e){this.ncap=e,e>this.matchcap.length?this.initNewCap(e):this.resetCap(e)}resetCap(e){for(let t=0;t<this.poolSize;t++){let n=this.pool[t];n.cap=Array(e).fill(0)}}initNewCap(e){for(let t=0;t<this.poolSize;t++){let n=this.pool[t];n.cap=Array(e).fill(0)}this.matchcap=Array(e).fill(0)}submatches(){return this.ncap===0?F.emptyInts():this.matchcap.slice(0,this.ncap)}alloc(e){let t;return this.poolSize>0?(this.poolSize--,t=this.pool[this.poolSize]):t=new zo,t.inst=e,t}freeQueue(e,t=0){let n=e.size-t,r=this.poolSize+n;this.pool.length<r&&(this.pool=this.pool.slice(0,Math.max(this.pool.length*2,r)));for(let n=t;n<e.size;n++){let t=e.denseThreads[n];t!==null&&(this.pool[this.poolSize]=t,this.poolSize++)}e.clear()}freeThread(e){this.pool.length<=this.poolSize&&(this.pool=this.pool.slice(0,this.pool.length*2)),this.pool[this.poolSize]=e,this.poolSize++}match(e,t,n){let r=this.re2.cond;if(r===F.EMPTY_ALL||(n===j.ANCHOR_START||n===j.ANCHOR_BOTH)&&t!==0)return!1;this.matched=!1,this.matchcap=Array(this.prog.numCap).fill(-1);let i=this.q0,a=this.q1,o=e.step(t),s=o>>3,c=o&7,l=-1,u=0;o!==ko.EOF()&&(o=e.step(t+c),l=o>>3,u=o&7);let d;for(d=t===0?F.emptyOpContext(-1,s):e.context(t);;){if(i.isEmpty()){if((r&F.EMPTY_BEGIN_TEXT)!==0&&t!==0||this.matched)break;if(this.re2.prefix.length!==0&&l!==this.re2.prefixRune&&e.canCheckPrefix()){let n=e.index(this.re2,t);if(n<0)break;t+=n,o=e.step(t),s=o>>3,c=o&7,o=e.step(t+c),l=o>>3,u=o&7}}!this.matched&&(t===0||n===j.UNANCHORED)&&(this.ncap>0&&(this.matchcap[0]=t),this.add(i,this.prog.start,t,this.matchcap,d,null));let f=t+c;if(d=e.context(f),this.step(i,a,t,f,s,d,n,t===e.endPos()),c===0||this.ncap===0&&this.matched)break;t+=c,s=l,c=u,s!==-1&&(o=e.step(t+c),l=o>>3,u=o&7);let p=i;i=a,a=p}return this.freeQueue(a),this.matched}step(e,t,n,r,i,a,o,s){let c=this.re2.longest;for(let l=0;l<e.size;l++){let u=e.denseThreads[l];if(u===null)continue;if(c&&this.matched&&this.ncap>0&&this.matchcap[0]<u.cap[0]){this.freeThread(u);continue}let d=u.inst,f=!1;switch(d.op){case I.MATCH:if(o===j.ANCHOR_BOTH&&!s)break;this.ncap>0&&(!c||!this.matched||this.matchcap[1]<n)&&(u.cap[1]=n,this.matchcap=u.cap.slice(0,this.ncap)),c||this.freeQueue(e,l+1),this.matched=!0;break;case I.RUNE:f=d.matchRune(i);break;case I.RUNE1:f=i===d.runes[0];break;case I.RUNE_ANY:f=!0;break;case I.RUNE_ANY_NOT_NL:f=i!==M.CODES.get(`
239
+ `);break;default:throw Error(`bad inst`)}f&&(u=this.add(t,d.out,r,u.cap,a,u)),u!==null&&(this.freeThread(u),e.denseThreads[l]=null)}e.clear()}add(e,t,n,r,i,a){if(t===0||e.contains(t))return a;let o=e.add(t),s=this.prog.inst[t];switch(s.op){case I.FAIL:break;case I.ALT:case I.ALT_MATCH:a=this.add(e,s.out,n,r,i,a),a=this.add(e,s.arg,n,r,i,a);break;case I.EMPTY_WIDTH:(s.arg&~i)===0&&(a=this.add(e,s.out,n,r,i,a));break;case I.NOP:a=this.add(e,s.out,n,r,i,a);break;case I.CAPTURE:if(s.arg<this.ncap){let t=r[s.arg];r[s.arg]=n,this.add(e,s.out,n,r,i,null),r[s.arg]=t}else a=this.add(e,s.out,n,r,i,a);break;case I.MATCH:case I.RUNE:case I.RUNE1:case I.RUNE_ANY:case I.RUNE_ANY_NOT_NL:a===null?a=this.alloc(s):a.inst=s,this.ncap>0&&a.cap!==r&&(a.cap=r.slice(0,this.ncap)),e.denseThreads[o]=a,a=null;break;default:throw Error(`unhandled`)}return a}},Ho=e=>{let t=-2128831035;for(let n=0;n<e.length;n++)t^=e[n],t=Math.imul(t,16777619);return t},Uo=(e,t)=>{if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},Wo=class{constructor(e,t){this.nfaStates=e,this.isMatch=t,this.nextAscii=Array(P.MAX_ASCII+1).fill(null),this.nextMap=new Map}},Go=class{constructor(e){this.prog=e,this.stateCache=new Map,this.stateCount=0,this.startState=null,this.stateLimit=1e4}computeClosure(e){let t=new Set,n=[...e],r=!1;for(;n.length>0;){let e=n.pop();if(t.has(e))continue;t.add(e);let i=this.prog.getInst(e);switch(i.op){case I.MATCH:r=!0;break;case I.ALT:case I.ALT_MATCH:n.push(i.out),n.push(i.arg);break;case I.NOP:case I.CAPTURE:n.push(i.out);break;case I.EMPTY_WIDTH:return null}}return{pcs:Int32Array.from(t).sort(),isMatch:r}}getState(e){let t=this.computeClosure(e);if(!t)return null;let n=t.pcs,r=Ho(n),i=this.stateCache.get(r);if(i)for(let e=0;e<i.length;e++){let t=i[e];if(Uo(t.nfaStates,n))return t}else i=[],this.stateCache.set(r,i);if(this.stateCount>=this.stateLimit)return this.stateCache.clear(),this.stateCount=0,this.startState=null,null;let a=new Wo(n,t.isMatch);return i.push(a),this.stateCount++,a}step(e,t,n){if(n===j.UNANCHORED&&t<=P.MAX_ASCII){let n=e.nextAscii[t];if(n!==null)return n}else{let r=t+(n===j.UNANCHORED?0:P.MAX_RUNE+1);if(e.nextMap.has(r))return e.nextMap.get(r)}let r=[];for(let n=0;n<e.nfaStates.length;n++){let i=e.nfaStates[n],a=this.prog.getInst(i);I.isRuneOp(a.op)&&a.matchRune(t)&&r.push(a.out)}n===j.UNANCHORED&&r.push(this.prog.start);let i=this.getState(r);if(n===j.UNANCHORED&&t<=P.MAX_ASCII)e.nextAscii[t]=i;else{let r=t+(n===j.UNANCHORED?0:P.MAX_RUNE+1);e.nextMap.set(r,i)}return i}match(e,t,n){if((n===j.ANCHOR_START||n===j.ANCHOR_BOTH)&&t!==0)return!1;if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let r=e.endPos(),i=this.startState;if(i.isMatch)if(n===j.ANCHOR_BOTH){if(t===r)return!0}else return!0;let a=t;for(;a<r;){let t=e.step(a),o=t>>3,s=t&7;if(s===0)break;if(i=this.step(i,o,n),i===null)return null;if(i.isMatch)if(n===j.ANCHOR_BOTH){if(a+s===r)return!0}else return!0;if(i.nfaStates.length===0&&n!==j.UNANCHORED)return!1;a+=s}return!1}},L=class e{static Op=wo([`NO_MATCH`,`EMPTY_MATCH`,`LITERAL`,`CHAR_CLASS`,`ANY_CHAR_NOT_NL`,`ANY_CHAR`,`BEGIN_LINE`,`END_LINE`,`BEGIN_TEXT`,`END_TEXT`,`WORD_BOUNDARY`,`NO_WORD_BOUNDARY`,`CAPTURE`,`STAR`,`PLUS`,`QUEST`,`REPEAT`,`CONCAT`,`ALTERNATE`,`LEFT_PAREN`,`VERTICAL_BAR`]);static isPseudoOp(t){return t>=e.Op.LEFT_PAREN}static emptySubs(){return[]}static quoteIfHyphen(e){return e===M.CODES.get(`-`)?`\\`:``}static fromRegexp(t){let n=new e(t.op);return n.flags=t.flags,n.subs=t.subs,n.runes=t.runes,n.cap=t.cap,n.min=t.min,n.max=t.max,n.name=t.name,n.namedGroups=t.namedGroups,n}constructor(t){this.op=t,this.flags=0,this.subs=e.emptySubs(),this.runes=[],this.min=0,this.max=0,this.cap=0,this.name=null,this.namedGroups={}}reinit(){this.flags=0,this.subs=e.emptySubs(),this.runes=[],this.cap=0,this.min=0,this.max=0,this.name=null,this.namedGroups={}}toString(){return this.appendTo()}appendTo(){let t=``;switch(this.op){case e.Op.NO_MATCH:t+=`[^\\x00-\\x{10FFFF}]`;break;case e.Op.EMPTY_MATCH:t+=`(?:)`;break;case e.Op.STAR:case e.Op.PLUS:case e.Op.QUEST:case e.Op.REPEAT:{let n=this.subs[0];switch(n.op>e.Op.CAPTURE||n.op===e.Op.LITERAL&&n.runes.length>1?t+=`(?:${n.appendTo()})`:t+=n.appendTo(),this.op){case e.Op.STAR:t+=`*`;break;case e.Op.PLUS:t+=`+`;break;case e.Op.QUEST:t+=`?`;break;case e.Op.REPEAT:t+=`{${this.min}`,this.min!==this.max&&(t+=`,`,this.max>=0&&(t+=this.max)),t+=`}`;break}(this.flags&j.NON_GREEDY)!==0&&(t+=`?`);break}case e.Op.CONCAT:for(let n of this.subs)n.op===e.Op.ALTERNATE?t+=`(?:${n.appendTo()})`:t+=n.appendTo();break;case e.Op.ALTERNATE:{let e=``;for(let n of this.subs)t+=e,e=`|`,t+=n.appendTo();break}case e.Op.LITERAL:(this.flags&j.FOLD_CASE)!==0&&(t+=`(?i:`);for(let e of this.runes)t+=F.escapeRune(e);(this.flags&j.FOLD_CASE)!==0&&(t+=`)`);break;case e.Op.ANY_CHAR_NOT_NL:t+=`(?-s:.)`;break;case e.Op.ANY_CHAR:t+=`(?s:.)`;break;case e.Op.CAPTURE:this.name===null||this.name.length===0?t+=`(`:t+=`(?P<${this.name}>`,this.subs[0].op!==e.Op.EMPTY_MATCH&&(t+=this.subs[0].appendTo()),t+=`)`;break;case e.Op.BEGIN_TEXT:t+=`\\A`;break;case e.Op.END_TEXT:(this.flags&j.WAS_DOLLAR)===0?t+=`\\z`:t+=`(?-m:$)`;break;case e.Op.BEGIN_LINE:t+=`^`;break;case e.Op.END_LINE:t+=`$`;break;case e.Op.WORD_BOUNDARY:t+=`\\b`;break;case e.Op.NO_WORD_BOUNDARY:t+=`\\B`;break;case e.Op.CHAR_CLASS:if(this.runes.length%2!=0){t+=`[invalid char class]`;break}if(t+=`[`,this.runes.length===0)t+=`^\\x00-\\x{10FFFF}`;else if(this.runes[0]===0&&this.runes[this.runes.length-1]===P.MAX_RUNE){t+=`^`;for(let n=1;n<this.runes.length-1;n+=2){let r=this.runes[n]+1,i=this.runes[n+1]-1;t+=e.quoteIfHyphen(r),t+=F.escapeRune(r),r!==i&&(t+=`-`,t+=e.quoteIfHyphen(i),t+=F.escapeRune(i))}}else for(let n=0;n<this.runes.length;n+=2){let r=this.runes[n],i=this.runes[n+1];t+=e.quoteIfHyphen(r),t+=F.escapeRune(r),r!==i&&(t+=`-`,t+=e.quoteIfHyphen(i),t+=F.escapeRune(i))}t+=`]`;break;default:t+=this.op;break}return t}maxCap(){let t=0;if(this.op===e.Op.CAPTURE&&(t=this.cap),this.subs!==null)for(let e of this.subs){let n=e.maxCap();t<n&&(t=n)}return t}equals(t){if(!(t!==null&&t instanceof e)||this.op!==t.op)return!1;switch(this.op){case e.Op.END_TEXT:if((this.flags&j.WAS_DOLLAR)!==(t.flags&j.WAS_DOLLAR))return!1;break;case e.Op.LITERAL:case e.Op.CHAR_CLASS:if(this.runes===null&&t.runes===null)break;if(this.runes===null||t.runes===null||this.runes.length!==t.runes.length)return!1;for(let e=0;e<this.runes.length;e++)if(this.runes[e]!==t.runes[e])return!1;break;case e.Op.ALTERNATE:case e.Op.CONCAT:if(this.subs.length!==t.subs.length)return!1;for(let e=0;e<this.subs.length;++e)if(!this.subs[e].equals(t.subs[e]))return!1;break;case e.Op.STAR:case e.Op.PLUS:case e.Op.QUEST:if((this.flags&j.NON_GREEDY)!==(t.flags&j.NON_GREEDY)||!this.subs[0].equals(t.subs[0]))return!1;break;case e.Op.REPEAT:if((this.flags&j.NON_GREEDY)!==(t.flags&j.NON_GREEDY)||this.min!==t.min||this.max!==t.max||!this.subs[0].equals(t.subs[0]))return!1;break;case e.Op.CAPTURE:if(this.cap!==t.cap||(this.name===null?t.name!==null:this.name!==t.name)||!this.subs[0].equals(t.subs[0]))return!1;break}return!0}},Ko=class{constructor(){this.inst=[],this.start=0,this.numCap=2}getInst(e){return this.inst[e]}numInst(){return this.inst.length}addInst(e){this.inst.push(new I(e))}skipNop(e){let t=this.inst[e];for(;t.op===I.NOP||t.op===I.CAPTURE;)t=this.inst[e],e=t.out;return t}prefix(){let e=``,t=this.skipNop(this.start);if(!I.isRuneOp(t.op)||t.runes.length!==1)return[t.op===I.MATCH,e];for(;I.isRuneOp(t.op)&&t.runes.length===1&&(t.arg&j.FOLD_CASE)===0;)e+=String.fromCodePoint(t.runes[0]),t=this.skipNop(t.out);return[t.op===I.MATCH,e]}startCond(){let e=0,t=this.start;e:for(;;){let n=this.inst[t];switch(n.op){case I.EMPTY_WIDTH:e|=n.arg;break;case I.FAIL:return-1;case I.CAPTURE:case I.NOP:break;default:break e}t=n.out}return e}next(e){let t=this.inst[e>>1];return e&1?t.arg:t.out}patch(e,t){for(;e!==0;){let n=this.inst[e>>1];e&1?(e=n.arg,n.arg=t):(e=n.out,n.out=t)}}append(e,t){if(e===0)return t;if(t===0)return e;let n=e;for(;;){let e=this.next(n);if(e===0)break;n=e}let r=this.inst[n>>1];return n&1?r.arg=t:r.out=t,e}toString(){let e=``;for(let t=0;t<this.inst.length;t++){let n=e.length;e+=t,t===this.start&&(e+=`*`),e+=` `.substring(e.length-n),e+=this.inst[t],e+=`
240
+ `}return e}},qo=class{constructor(e=0,t=0,n=!1){this.i=e,this.out=t,this.nullable=n}},Jo=class e{static ANY_RUNE_NOT_NL(){return[0,M.CODES.get(`
241
+ `)-1,M.CODES.get(`
242
+ `)+1,P.MAX_RUNE]}static ANY_RUNE(){return[0,P.MAX_RUNE]}static compileRegexp(t){let n=new e,r=n.compile(t);return n.prog.patch(r.out,n.newInst(I.MATCH).i),n.prog.start=r.i,n.prog}constructor(){this.prog=new Ko,this.newInst(I.FAIL)}newInst(e){return this.prog.addInst(e),new qo(this.prog.numInst()-1,0,!0)}nop(){let e=this.newInst(I.NOP);return e.out=e.i<<1,e}fail(){return new qo}cap(e){let t=this.newInst(I.CAPTURE);return t.out=t.i<<1,this.prog.getInst(t.i).arg=e,this.prog.numCap<e+1&&(this.prog.numCap=e+1),t}cat(e,t){return e.i===0||t.i===0?this.fail():(this.prog.patch(e.out,t.i),new qo(e.i,t.out,e.nullable&&t.nullable))}alt(e,t){if(e.i===0)return t;if(t.i===0)return e;let n=this.newInst(I.ALT),r=this.prog.getInst(n.i);return r.out=e.i,r.arg=t.i,n.out=this.prog.append(e.out,t.out),n.nullable=e.nullable||t.nullable,n}loop(e,t){let n=this.newInst(I.ALT),r=this.prog.getInst(n.i);return t?(r.arg=e.i,n.out=n.i<<1):(r.out=e.i,n.out=n.i<<1|1),this.prog.patch(e.out,n.i),n}quest(e,t){let n=this.newInst(I.ALT),r=this.prog.getInst(n.i);return t?(r.arg=e.i,n.out=n.i<<1):(r.out=e.i,n.out=n.i<<1|1),n.out=this.prog.append(n.out,e.out),n}star(e,t){return e.nullable?this.quest(this.plus(e,t),t):this.loop(e,t)}plus(e,t){return new qo(e.i,this.loop(e,t).out,e.nullable)}empty(e){let t=this.newInst(I.EMPTY_WIDTH);return this.prog.getInst(t.i).arg=e,t.out=t.i<<1,t}rune(e,t){let n=this.newInst(I.RUNE);n.nullable=!1;let r=this.prog.getInst(n.i);return r.runes=e,t&=j.FOLD_CASE,(e.length!==1||P.simpleFold(e[0])===e[0])&&(t&=-2),r.arg=t,n.out=n.i<<1,(t&j.FOLD_CASE)===0&&e.length===1||e.length===2&&e[0]===e[1]?r.op=I.RUNE1:e.length===2&&e[0]===0&&e[1]===P.MAX_RUNE?r.op=I.RUNE_ANY:e.length===4&&e[0]===0&&e[1]===M.CODES.get(`
243
+ `)-1&&e[2]===M.CODES.get(`
244
+ `)+1&&e[3]===P.MAX_RUNE&&(r.op=I.RUNE_ANY_NOT_NL),n}compile(t){switch(t.op){case L.Op.NO_MATCH:return this.fail();case L.Op.EMPTY_MATCH:return this.nop();case L.Op.LITERAL:if(t.runes.length===0)return this.nop();{let e=null;for(let n of t.runes){let r=this.rune([n],t.flags);e=e===null?r:this.cat(e,r)}return e}case L.Op.CHAR_CLASS:return this.rune(t.runes,t.flags);case L.Op.ANY_CHAR_NOT_NL:return this.rune(e.ANY_RUNE_NOT_NL(),0);case L.Op.ANY_CHAR:return this.rune(e.ANY_RUNE(),0);case L.Op.BEGIN_LINE:return this.empty(F.EMPTY_BEGIN_LINE);case L.Op.END_LINE:return this.empty(F.EMPTY_END_LINE);case L.Op.BEGIN_TEXT:return this.empty(F.EMPTY_BEGIN_TEXT);case L.Op.END_TEXT:return this.empty(F.EMPTY_END_TEXT);case L.Op.WORD_BOUNDARY:return this.empty(F.EMPTY_WORD_BOUNDARY);case L.Op.NO_WORD_BOUNDARY:return this.empty(F.EMPTY_NO_WORD_BOUNDARY);case L.Op.CAPTURE:{let e=this.cap(t.cap<<1),n=this.compile(t.subs[0]),r=this.cap(t.cap<<1|1);return this.cat(this.cat(e,n),r)}case L.Op.STAR:return this.star(this.compile(t.subs[0]),(t.flags&j.NON_GREEDY)!==0);case L.Op.PLUS:return this.plus(this.compile(t.subs[0]),(t.flags&j.NON_GREEDY)!==0);case L.Op.QUEST:return this.quest(this.compile(t.subs[0]),(t.flags&j.NON_GREEDY)!==0);case L.Op.CONCAT:if(t.subs.length===0)return this.nop();{let e=null;for(let n of t.subs){let t=this.compile(n);e=e===null?t:this.cat(e,t)}return e}case L.Op.ALTERNATE:if(t.subs.length===0)return this.nop();{let e=null;for(let n of t.subs){let t=this.compile(n);e=e===null?t:this.alt(e,t)}return e}default:throw new Fo(`regexp: unhandled case in compile`)}}},Yo=class e{static simplify(t){if(t===null)return null;switch(t.op){case L.Op.CAPTURE:case L.Op.CONCAT:case L.Op.ALTERNATE:{let n=t;for(let r=0;r<t.subs.length;r++){let i=t.subs[r],a=e.simplify(i);n===t&&a!==i&&(n=L.fromRegexp(t),n.runes=[],n.subs=t.subs.slice(0,t.subs.length)),n!==t&&(n.subs[r]=a)}return n}case L.Op.STAR:case L.Op.PLUS:case L.Op.QUEST:{let n=e.simplify(t.subs[0]);return e.simplify1(t.op,t.flags,n,t)}case L.Op.REPEAT:{if(t.min===0&&t.max===0)return new L(L.Op.EMPTY_MATCH);let n=e.simplify(t.subs[0]);if(t.max===-1){if(t.min===0)return e.simplify1(L.Op.STAR,t.flags,n,null);if(t.min===1)return e.simplify1(L.Op.PLUS,t.flags,n,null);let r=new L(L.Op.CONCAT),i=[];for(let e=0;e<t.min-1;e++)i.push(n);return i.push(e.simplify1(L.Op.PLUS,t.flags,n,null)),r.subs=i.slice(0),r}if(t.min===1&&t.max===1)return n;let r=null;if(t.min>0){r=[];for(let e=0;e<t.min;e++)r.push(n)}if(t.max>t.min){let i=e.simplify1(L.Op.QUEST,t.flags,n,null);for(let r=t.min+1;r<t.max;r++){let r=new L(L.Op.CONCAT);r.subs=[n,i],i=e.simplify1(L.Op.QUEST,t.flags,r,null)}if(r===null)return i;r.push(i)}if(r!==null){let e=new L(L.Op.CONCAT);return e.subs=r.slice(0),e}return new L(L.Op.NO_MATCH)}}return t}static simplify1(e,t,n,r){return n.op===L.Op.EMPTY_MATCH||e===n.op&&(t&j.NON_GREEDY)===(n.flags&j.NON_GREEDY)?n:(r!==null&&r.op===e&&(r.flags&j.NON_GREEDY)===(t&j.NON_GREEDY)&&n===r.subs[0]||(r=new L(e),r.flags=t,r.subs=[n]),r)}},R=class{constructor(e,t){this.sign=e,this.cls=t}},Xo=[48,57],Zo=[9,10,12,13,32,32],Qo=[48,57,65,90,95,95,97,122],$o=new Map([[`\\d`,new R(1,Xo)],[`\\D`,new R(-1,Xo)],[`\\s`,new R(1,Zo)],[`\\S`,new R(-1,Zo)],[`\\w`,new R(1,Qo)],[`\\W`,new R(-1,Qo)]]),es=[48,57,65,90,97,122],ts=[65,90,97,122],ns=[0,127],rs=[9,9,32,32],is=[0,31,127,127],as=[48,57],os=[33,126],ss=[97,122],cs=[32,126],ls=[33,47,58,64,91,96,123,126],us=[9,13,32,32],ds=[65,90],fs=[48,57,65,90,95,95,97,122],ps=[48,57,65,70,97,102],ms=new Map([[`[:alnum:]`,new R(1,es)],[`[:^alnum:]`,new R(-1,es)],[`[:alpha:]`,new R(1,ts)],[`[:^alpha:]`,new R(-1,ts)],[`[:ascii:]`,new R(1,ns)],[`[:^ascii:]`,new R(-1,ns)],[`[:blank:]`,new R(1,rs)],[`[:^blank:]`,new R(-1,rs)],[`[:cntrl:]`,new R(1,is)],[`[:^cntrl:]`,new R(-1,is)],[`[:digit:]`,new R(1,as)],[`[:^digit:]`,new R(-1,as)],[`[:graph:]`,new R(1,os)],[`[:^graph:]`,new R(-1,os)],[`[:lower:]`,new R(1,ss)],[`[:^lower:]`,new R(-1,ss)],[`[:print:]`,new R(1,cs)],[`[:^print:]`,new R(-1,cs)],[`[:punct:]`,new R(1,ls)],[`[:^punct:]`,new R(-1,ls)],[`[:space:]`,new R(1,us)],[`[:^space:]`,new R(-1,us)],[`[:upper:]`,new R(1,ds)],[`[:^upper:]`,new R(-1,ds)],[`[:word:]`,new R(1,fs)],[`[:^word:]`,new R(-1,fs)],[`[:xdigit:]`,new R(1,ps)],[`[:^xdigit:]`,new R(-1,ps)]]),hs=class e{static charClassToString(e,t){let n=`[`;for(let r=0;r<t;r+=2){r>0&&(n+=` `);let t=e[r],i=e[r+1];t===i?n+=`0x${t.toString(16)}`:n+=`0x${t.toString(16)}-0x${i.toString(16)}`}return n+=`]`,n}static cmp(e,t,n,r){let i=e[t]-n;return i===0?r-e[t+1]:i}static qsortIntPair(t,n,r){let i=((n+r)/2|0)&-2,a=t[i],o=t[i+1],s=n,c=r;for(;s<=c;){for(;s<r&&e.cmp(t,s,a,o)<0;)s+=2;for(;c>n&&e.cmp(t,c,a,o)>0;)c-=2;if(s<=c){if(s!==c){let e=t[s];t[s]=t[c],t[c]=e,e=t[s+1],t[s+1]=t[c+1],t[c+1]=e}s+=2,c-=2}}n<c&&e.qsortIntPair(t,n,c),s<r&&e.qsortIntPair(t,s,r)}constructor(e=F.emptyInts()){this.r=e,this.len=e.length}toArray(){return this.len===this.r.length?this.r:this.r.slice(0,this.len)}cleanClass(){if(this.len<4)return this;e.qsortIntPair(this.r,0,this.len-2);let t=2;for(let e=2;e<this.len;e+=2){let n=this.r[e],r=this.r[e+1];if(n<=this.r[t-1]+1){r>this.r[t-1]&&(this.r[t-1]=r);continue}this.r[t]=n,this.r[t+1]=r,t+=2}return this.len=t,this}appendLiteral(e,t){return(t&j.FOLD_CASE)===0?this.appendRange(e,e):this.appendFoldedRange(e,e)}appendRange(e,t){if(this.len>0){for(let n=2;n<=4;n+=2)if(this.len>=n){let r=this.r[this.len-n],i=this.r[this.len-n+1];if(e<=i+1&&r<=t+1)return e<r&&(this.r[this.len-n]=e),t>i&&(this.r[this.len-n+1]=t),this}}return this.r[this.len++]=e,this.r[this.len++]=t,this}appendFoldedRange(e,t){if(e<=P.MIN_FOLD&&t>=P.MAX_FOLD||t<P.MIN_FOLD||e>P.MAX_FOLD)return this.appendRange(e,t);e<P.MIN_FOLD&&(this.appendRange(e,P.MIN_FOLD-1),e=P.MIN_FOLD),t>P.MAX_FOLD&&(this.appendRange(P.MAX_FOLD+1,t),t=P.MAX_FOLD);for(let n=e;n<=t;n++){this.appendRange(n,n);for(let e=P.simpleFold(n);e!==n;e=P.simpleFold(e))this.appendRange(e,e)}return this}appendClass(e){for(let t=0;t<e.length;t+=2)this.appendRange(e[t],e[t+1]);return this}appendFoldedClass(e){for(let t=0;t<e.length;t+=2)this.appendFoldedRange(e[t],e[t+1]);return this}appendNegatedClass(e){let t=0;for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];t<=r-1&&this.appendRange(t,r-1),t=i+1}return t<=P.MAX_RUNE&&this.appendRange(t,P.MAX_RUNE),this}appendTable(e){for(let t=0;t<e.length;++t){let n=e.getLo(t),r=e.getHi(t),i=e.getStride(t);if(i===1){this.appendRange(n,r);continue}for(let e=n;e<=r;e+=i)this.appendRange(e,e)}return this}appendNegatedTable(e){let t=0;for(let n=0;n<e.length;++n){let r=e.getLo(n),i=e.getHi(n),a=e.getStride(n);if(a===1){t<=r-1&&this.appendRange(t,r-1),t=i+1;continue}for(let e=r;e<=i;e+=a)t<=e-1&&this.appendRange(t,e-1),t=e+1}return t<=P.MAX_RUNE&&this.appendRange(t,P.MAX_RUNE),this}appendTableWithSign(e,t){return t<0?this.appendNegatedTable(e):this.appendTable(e)}negateClass(){let e=0,t=0;for(let n=0;n<this.len;n+=2){let r=this.r[n],i=this.r[n+1];e<=r-1&&(this.r[t]=e,this.r[t+1]=r-1,t+=2),e=i+1}return this.len=t,e<=P.MAX_RUNE&&(this.r[this.len++]=e,this.r[this.len++]=P.MAX_RUNE),this}appendClassWithSign(e,t){return t<0?this.appendNegatedClass(e):this.appendClass(e)}appendGroup(t,n){let r=t.cls;return n&&(r=new e().appendFoldedClass(r).cleanClass().toArray()),this.appendClassWithSign(r,t.sign)}toString(){return e.charClassToString(this.r,this.len)}},gs=class e{static of(t,n){return new e(t,n)}constructor(e,t){this.first=e,this.second=t}},_s=class{constructor(e){this.str=e,this.position=0}pos(){return this.position}rewindTo(e){this.position=e}more(){return this.position<this.str.length}peek(){return this.str.codePointAt(this.position)}skip(e){this.position+=e}skipString(e){this.position+=e.length}pop(){let e=this.str.codePointAt(this.position);return this.position+=F.charCount(e),e}lookingAt(e){return this.rest().startsWith(e)}rest(){return this.str.substring(this.position)}from(e){return this.str.substring(e,this.position)}toString(){return this.rest()}},vs=class e{static ERR_INTERNAL_ERROR=`regexp/syntax: internal error`;static ERR_INVALID_CHAR_RANGE=`invalid character class range`;static ERR_INVALID_ESCAPE=`invalid escape sequence`;static ERR_INVALID_NAMED_CAPTURE=`invalid named capture`;static ERR_INVALID_PERL_OP=`invalid or unsupported Perl syntax`;static ERR_INVALID_REPEAT_OP=`invalid nested repetition operator`;static ERR_INVALID_REPEAT_SIZE=`invalid repeat count`;static ERR_MISSING_BRACKET=`missing closing ]`;static ERR_MISSING_PAREN=`missing closing )`;static ERR_MISSING_REPEAT_ARGUMENT=`missing argument to repetition operator`;static ERR_TRAILING_BACKSLASH=`trailing backslash at end of expression`;static ERR_DUPLICATE_NAMED_CAPTURE=`duplicate capture group name`;static ERR_UNEXPECTED_PAREN=`unexpected )`;static ERR_NESTING_DEPTH=`expression nests too deeply`;static ERR_LARGE=`expression too large`;static MAX_HEIGHT=1e3;static MAX_SIZE=3355443;static MAX_RUNES=33554432;static ANY_TABLE=new N(new Uint32Array([0,P.MAX_RUNE,1]));static unicodeTable(t){return t===`Any`?gs.of(e.ANY_TABLE,e.ANY_TABLE):Co.CATEGORIES.has(t)?gs.of(Co.CATEGORIES.get(t),Co.FOLD_CATEGORIES.get(t)):Co.SCRIPTS.has(t)?gs.of(Co.SCRIPTS.get(t),Co.FOLD_SCRIPT.get(t)):null}static minFoldRune(e){if(e<P.MIN_FOLD||e>P.MAX_FOLD)return e;let t=e,n=e;for(e=P.simpleFold(e);e!==n;e=P.simpleFold(e))t>e&&(t=e);return t}static leadingRegexp(e){if(e.op===L.Op.EMPTY_MATCH)return null;if(e.op===L.Op.CONCAT&&e.subs.length>0){let t=e.subs[0];return t.op===L.Op.EMPTY_MATCH?null:t}return e}static literalRegexp(e,t){let n=new L(L.Op.LITERAL);return n.flags=t,n.runes=F.stringToRunes(e),n}static parse(t,n){return new e(t,n).parseInternal()}static parseRepeat(t){let n=t.pos();if(!t.more()||!t.lookingAt(`{`))return-1;t.skip(1);let r=e.parseInt(t);if(r===-1||!t.more())return-1;let i;if(!t.lookingAt(`,`))i=r;else{if(t.skip(1),!t.more())return-1;if(t.lookingAt(`}`))i=-1;else if((i=e.parseInt(t))===-1)return-1}if(!t.more()||!t.lookingAt(`}`))return-1;if(t.skip(1),r<0||r>1e3||i===-2||i>1e3||i>=0&&r>i)throw new Po(e.ERR_INVALID_REPEAT_SIZE,t.from(n));return r<<16|i&P.MAX_BMP}static isValidCaptureName(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.codePointAt(t);if(n!==M.CODES.get(`_`)&&!F.isalnum(n))return!1}return!0}static parseInt(e){let t=e.pos();for(;e.more()&&e.peek()>=M.CODES.get(`0`)&&e.peek()<=M.CODES.get(`9`);)e.skip(1);let n=e.from(t);return n.length===0||n.length>1&&n.codePointAt(0)===M.CODES.get(`0`)?-1:n.length>8?-2:parseFloat(n,10)}static isCharClass(e){return e.op===L.Op.LITERAL&&e.runes.length===1||e.op===L.Op.CHAR_CLASS||e.op===L.Op.ANY_CHAR_NOT_NL||e.op===L.Op.ANY_CHAR}static matchRune(e,t){switch(e.op){case L.Op.LITERAL:return e.runes.length===1&&e.runes[0]===t;case L.Op.CHAR_CLASS:for(let n=0;n<e.runes.length;n+=2)if(e.runes[n]<=t&&t<=e.runes[n+1])return!0;return!1;case L.Op.ANY_CHAR_NOT_NL:return t!==M.CODES.get(`
245
+ `);case L.Op.ANY_CHAR:return!0}return!1}static mergeCharClass(t,n){switch(t.op){case L.Op.ANY_CHAR:break;case L.Op.ANY_CHAR_NOT_NL:e.matchRune(n,M.CODES.get(`
246
+ `))&&(t.op=L.Op.ANY_CHAR);break;case L.Op.CHAR_CLASS:n.op===L.Op.LITERAL?t.runes=new hs(t.runes).appendLiteral(n.runes[0],n.flags).toArray():t.runes=new hs(t.runes).appendClass(n.runes).toArray();break;case L.Op.LITERAL:if(n.runes[0]===t.runes[0]&&n.flags===t.flags)break;t.op=L.Op.CHAR_CLASS,t.runes=new hs().appendLiteral(t.runes[0],t.flags).appendLiteral(n.runes[0],n.flags).toArray();break}}static parseEscape(t){let n=t.pos();if(t.skip(1),!t.more())throw new Po(e.ERR_TRAILING_BACKSLASH);let r=t.pop();e:switch(r){case M.CODES.get(`1`):case M.CODES.get(`2`):case M.CODES.get(`3`):case M.CODES.get(`4`):case M.CODES.get(`5`):case M.CODES.get(`6`):case M.CODES.get(`7`):if(!t.more()||t.peek()<M.CODES.get(`0`)||t.peek()>M.CODES.get(`7`))break;case M.CODES.get(`0`):{let e=r-M.CODES.get(`0`);for(let n=1;n<3&&!(!t.more()||t.peek()<M.CODES.get(`0`)||t.peek()>M.CODES.get(`7`));n++)e=e*8+t.peek()-M.CODES.get(`0`),t.skip(1);return e}case M.CODES.get(`x`):{if(!t.more())break;if(r=t.pop(),r===M.CODES.get(`{`)){let e=0,n=0;for(;;){if(!t.more())break e;if(r=t.pop(),r===M.CODES.get(`}`))break;let i=F.unhex(r);if(i<0||(n=n*16+i,n>P.MAX_RUNE))break e;e++}if(e===0)break e;return n}let e=F.unhex(r);if(!t.more())break;r=t.pop();let n=F.unhex(r);if(e<0||n<0)break;return e*16+n}case M.CODES.get(`a`):return M.CODES.get(`\x07`);case M.CODES.get(`f`):return M.CODES.get(`\f`);case M.CODES.get(`n`):return M.CODES.get(`
247
+ `);case M.CODES.get(`r`):return M.CODES.get(`\r`);case M.CODES.get(`t`):return M.CODES.get(` `);case M.CODES.get(`v`):return M.CODES.get(`\v`);default:if(r<=P.MAX_ASCII&&!F.isalnum(r))return r;break}throw new Po(e.ERR_INVALID_ESCAPE,t.from(n))}static parseClassChar(t,n){if(!t.more())throw new Po(e.ERR_MISSING_BRACKET,t.from(n));return t.lookingAt(`\\`)?e.parseEscape(t):t.pop()}static concatRunes(e,t){return[...e,...t]}constructor(e,t=0){this.wholeRegexp=e,this.flags=t,this.numCap=0,this.namedGroups={},this.stack=[],this.free=null,this.numRegexp=0,this.numRunes=0,this.repeats=0,this.height=null,this.size=null}newRegexp(e){let t=this.free;return t!==null&&t.subs!==null&&t.subs.length>0?(this.free=t.subs[0],t.reinit(),t.op=e):(t=new L(e),this.numRegexp+=1),t}reuse(e){this.height!==null&&Object.prototype.hasOwnProperty.call(this.height,e)&&delete this.height[e],e.subs!==null&&e.subs.length>0&&(e.subs[0]=this.free),this.free=e}checkLimits(t){if(this.numRunes>e.MAX_RUNES)throw new Po(e.ERR_LARGE);this.checkSize(t),this.checkHeight(t)}checkSize(t){if(this.size===null){if(this.repeats===0&&(this.repeats=1),t.op===L.Op.REPEAT){let n=t.max;n===-1&&(n=t.min),n<=0&&(n=1),n>e.MAX_SIZE/this.repeats?this.repeats=e.MAX_SIZE:this.repeats*=n}if(this.numRegexp<e.MAX_SIZE/this.repeats)return;this.size={};for(let e of this.stack)this.checkSize(e)}if(this.calcSize(t,!0)>e.MAX_SIZE)throw new Po(e.ERR_LARGE)}calcSize(e,t=!1){if(!t&&Object.prototype.hasOwnProperty.call(this.size,e))return this.size[e];let n=0;switch(e.op){case L.Op.LITERAL:n=e.runes.length;break;case L.Op.CAPTURE:case L.Op.STAR:n=2+this.calcSize(e.subs[0]);break;case L.Op.PLUS:case L.Op.QUEST:n=1+this.calcSize(e.subs[0]);break;case L.Op.CONCAT:for(let t of e.subs)n+=this.calcSize(t);break;case L.Op.ALTERNATE:for(let t of e.subs)n+=this.calcSize(t);e.subs.length>1&&(n=n+e.subs.length-1);break;case L.Op.REPEAT:{let t=this.calcSize(e.subs[0]);if(e.max===-1){n=e.min===0?2+t:1+e.min*t;break}n=e.max*t+(e.max-e.min);break}}return n=Math.max(1,n),this.size[e]=n,n}checkHeight(t){if(!(this.numRegexp<e.MAX_HEIGHT)){if(this.height===null){this.height={};for(let e of this.stack)this.checkHeight(e)}if(this.calcHeight(t,!0)>e.MAX_HEIGHT)throw new Po(e.ERR_NESTING_DEPTH)}}calcHeight(e,t=!1){if(!t&&Object.prototype.hasOwnProperty.call(this.height,e))return this.height[e];let n=1;for(let t of e.subs){let e=this.calcHeight(t);n<1+e&&(n=1+e)}return this.height[e]=n,n}pop(){return this.stack.pop()}popToPseudo(){let e=this.stack.length,t=e;for(;t>0&&!L.isPseudoOp(this.stack[t-1].op);)t--;let n=this.stack.slice(t,e);return this.stack=this.stack.slice(0,t),n}push(e){if(this.numRunes+=e.runes.length,e.op===L.Op.CHAR_CLASS&&e.runes.length===2&&e.runes[0]===e.runes[1]){if(this.maybeConcat(e.runes[0],this.flags&-2))return null;e.op=L.Op.LITERAL,e.runes=[e.runes[0]],e.flags=this.flags&-2}else if(e.op===L.Op.CHAR_CLASS&&e.runes.length===4&&e.runes[0]===e.runes[1]&&e.runes[2]===e.runes[3]&&P.simpleFold(e.runes[0])===e.runes[2]&&P.simpleFold(e.runes[2])===e.runes[0]||e.op===L.Op.CHAR_CLASS&&e.runes.length===2&&e.runes[0]+1===e.runes[1]&&P.simpleFold(e.runes[0])===e.runes[1]&&P.simpleFold(e.runes[1])===e.runes[0]){if(this.maybeConcat(e.runes[0],this.flags|j.FOLD_CASE))return null;e.op=L.Op.LITERAL,e.runes=[e.runes[0]],e.flags=this.flags|j.FOLD_CASE}else this.maybeConcat(-1,0);return this.stack.push(e),this.checkLimits(e),e}maybeConcat(t,n){let r=this.stack.length;if(r<2)return!1;let i=this.stack[r-1],a=this.stack[r-2];return i.op!==L.Op.LITERAL||a.op!==L.Op.LITERAL||(i.flags&j.FOLD_CASE)!==(a.flags&j.FOLD_CASE)?!1:(a.runes=e.concatRunes(a.runes,i.runes),t>=0?(i.runes=[t],i.flags=n,!0):(this.pop(),this.reuse(i),!1))}newLiteral(t,n){let r=this.newRegexp(L.Op.LITERAL);return r.flags=n,(n&j.FOLD_CASE)!==0&&(t=e.minFoldRune(t)),r.runes=[t],r}literal(e){this.push(this.newLiteral(e,this.flags))}op(e){let t=this.newRegexp(e);return t.flags=this.flags,this.push(t)}repeat(t,n,r,i,a,o){let s=this.flags;if((s&j.PERL_X)!==0&&(a.more()&&a.lookingAt(`?`)&&(a.skip(1),s^=j.NON_GREEDY),o!==-1))throw new Po(e.ERR_INVALID_REPEAT_OP,a.from(o));let c=this.stack.length;if(c===0)throw new Po(e.ERR_MISSING_REPEAT_ARGUMENT,a.from(i));let l=this.stack[c-1];if(L.isPseudoOp(l.op))throw new Po(e.ERR_MISSING_REPEAT_ARGUMENT,a.from(i));let u=this.newRegexp(t);if(u.min=n,u.max=r,u.flags=s,u.subs=[l],this.stack[c-1]=u,this.checkLimits(u),t===L.Op.REPEAT&&(n>=2||r>=2)&&!this.repeatIsValid(u,1e3))throw new Po(e.ERR_INVALID_REPEAT_SIZE,a.from(i))}repeatIsValid(e,t){if(e.op===L.Op.REPEAT){let n=e.max;if(n===0)return!0;if(n<0&&(n=e.min),n>t)return!1;n>0&&(t=Math.trunc(t/n))}for(let n of e.subs)if(!this.repeatIsValid(n,t))return!1;return!0}concat(){this.maybeConcat(-1,0);let e=this.popToPseudo();return e.length===0?this.push(this.newRegexp(L.Op.EMPTY_MATCH)):this.push(this.collapse(e,L.Op.CONCAT))}alternate(){let e=this.popToPseudo();return e.length>0&&this.cleanAlt(e[e.length-1]),e.length===0?this.push(this.newRegexp(L.Op.NO_MATCH)):this.push(this.collapse(e,L.Op.ALTERNATE))}cleanAlt(e){e.op===L.Op.CHAR_CLASS&&(e.runes=new hs(e.runes).cleanClass().toArray(),e.runes.length===2&&e.runes[0]===0&&e.runes[1]===P.MAX_RUNE?(e.runes=[],e.op=L.Op.ANY_CHAR):e.runes.length===4&&e.runes[0]===0&&e.runes[1]===M.CODES.get(`
248
+ `)-1&&e.runes[2]===M.CODES.get(`
249
+ `)+1&&e.runes[3]===P.MAX_RUNE&&(e.runes=[],e.op=L.Op.ANY_CHAR_NOT_NL))}collapse(e,t){if(e.length===1)return e[0];let n=0;for(let r of e)n+=r.op===t?r.subs.length:1;let r=Array(n).fill(null),i=0;for(let n of e)n.op===t?(r.splice(i,n.subs.length,...n.subs),i+=n.subs.length,this.reuse(n)):r[i++]=n;let a=this.newRegexp(t);if(a.subs=r,t===L.Op.ALTERNATE&&(a.subs=this.factor(a.subs),a.subs.length===1)){let e=a;a=a.subs[0],this.reuse(e)}return a}factor(t){if(t.length<2)return t;let n=0,r=t.length,i=0,a=null,o=0,s=0,c=0;for(let e=0;e<=r;e++){let l=null,u=0,d=0;if(e<r){let r=t[n+e];if(r.op===L.Op.CONCAT&&r.subs.length>0&&(r=r.subs[0]),r.op===L.Op.LITERAL&&(l=r.runes,u=r.runes.length,d=r.flags&j.FOLD_CASE),d===s){let e=0;for(;e<o&&e<u&&a[e]===l[e];)e++;if(e>0){o=e;continue}}}if(e!==c)if(e===c+1)t[i++]=t[n+c];else{let r=this.newRegexp(L.Op.LITERAL);r.flags=s,r.runes=a.slice(0,o);for(let r=c;r<e;r++)t[n+r]=this.removeLeadingString(t[n+r],o),this.checkLimits(t[n+r]);let l=this.collapse(t.slice(n+c,n+e),L.Op.ALTERNATE),u=this.newRegexp(L.Op.CONCAT);u.subs=[r,l],t[i++]=u}c=e,a=l,o=u,s=d}r=i,n=0,c=0,i=0;let l=null;for(let a=0;a<=r;a++){let o=null;if(!(a<r&&(o=e.leadingRegexp(t[n+a]),l!==null&&l.equals(o)&&(e.isCharClass(l)||l.op===L.Op.REPEAT&&l.min===l.max&&e.isCharClass(l.subs[0]))))){if(a!==c)if(a===c+1)t[i++]=t[n+c];else{let e=l;for(let e=c;e<a;e++){let r=e!==c;t[n+e]=this.removeLeadingRegexp(t[n+e],r),this.checkLimits(t[n+e])}let r=this.collapse(t.slice(n+c,n+a),L.Op.ALTERNATE),o=this.newRegexp(L.Op.CONCAT);o.subs=[e,r],t[i++]=o}c=a,l=o}}r=i,n=0,c=0,i=0;for(let a=0;a<=r;a++)if(!(a<r&&e.isCharClass(t[n+a]))){if(a!==c)if(a===c+1)t[i++]=t[n+c];else{let r=c;for(let e=c+1;e<a;e++){let i=t[n+r],a=t[n+e];(i.op<a.op||i.op===a.op&&(i.runes===null?0:i.runes.length)<(a.runes===null?0:a.runes.length))&&(r=e)}let o=t[n+c];t[n+c]=t[n+r],t[n+r]=o;for(let r=c+1;r<a;r++)e.mergeCharClass(t[n+c],t[n+r]),this.reuse(t[n+r]);this.cleanAlt(t[n+c]),t[i++]=t[n+c]}a<r&&(t[i++]=t[n+a]),c=a+1}r=i,n=0,c=0,i=0;for(let e=0;e<r;++e)e+1<r&&t[n+e].op===L.Op.EMPTY_MATCH&&t[n+e+1].op===L.Op.EMPTY_MATCH||(t[i++]=t[n+e]);return r=i,n=0,t.slice(n,r)}removeLeadingString(e,t){if(e.op===L.Op.CONCAT&&e.subs.length>0){let n=this.removeLeadingString(e.subs[0],t);if(e.subs[0]=n,n.op===L.Op.EMPTY_MATCH)switch(this.reuse(n),e.subs.length){case 0:case 1:e.op=L.Op.EMPTY_MATCH,e.subs=null;break;case 2:{let t=e;e=e.subs[1],this.reuse(t);break}default:e.subs=e.subs.slice(1,e.subs.length);break}return e}return e.op===L.Op.LITERAL&&(e.runes=e.runes.slice(t,e.runes.length),e.runes.length===0&&(e.op=L.Op.EMPTY_MATCH)),e}removeLeadingRegexp(e,t){if(e.op===L.Op.CONCAT&&e.subs.length>0){switch(t&&this.reuse(e.subs[0]),e.subs=e.subs.slice(1,e.subs.length),e.subs.length){case 0:e.op=L.Op.EMPTY_MATCH,e.subs=L.emptySubs();break;case 1:{let t=e;e=e.subs[0],this.reuse(t);break}}return e}return t&&this.reuse(e),this.newRegexp(L.Op.EMPTY_MATCH)}parseInternal(){if((this.flags&j.LITERAL)!==0)return e.literalRegexp(this.wholeRegexp,this.flags);let t=-1,n=-1,r=-1,i=new _s(this.wholeRegexp);for(;i.more();){let a=-1;e:switch(i.peek()){case M.CODES.get(`(`):if((this.flags&j.PERL_X)!==0&&i.lookingAt(`(?`)){this.parsePerlFlags(i);break}this.op(L.Op.LEFT_PAREN).cap=++this.numCap,i.skip(1);break;case M.CODES.get(`|`):this.parseVerticalBar(),i.skip(1);break;case M.CODES.get(`)`):this.parseRightParen(),i.skip(1);break;case M.CODES.get(`^`):(this.flags&j.ONE_LINE)===0?this.op(L.Op.BEGIN_LINE):this.op(L.Op.BEGIN_TEXT),i.skip(1);break;case M.CODES.get(`$`):(this.flags&j.ONE_LINE)===0?this.op(L.Op.END_LINE):this.op(L.Op.END_TEXT).flags|=j.WAS_DOLLAR,i.skip(1);break;case M.CODES.get(`.`):(this.flags&j.DOT_NL)===0?this.op(L.Op.ANY_CHAR_NOT_NL):this.op(L.Op.ANY_CHAR),i.skip(1);break;case M.CODES.get(`[`):this.parseClass(i);break;case M.CODES.get(`*`):case M.CODES.get(`+`):case M.CODES.get(`?`):{a=i.pos();let e=null;switch(i.pop()){case M.CODES.get(`*`):e=L.Op.STAR;break;case M.CODES.get(`+`):e=L.Op.PLUS;break;case M.CODES.get(`?`):e=L.Op.QUEST;break}this.repeat(e,n,r,a,i,t);break}case M.CODES.get(`{`):{a=i.pos();let o=e.parseRepeat(i);if(o<0){i.rewindTo(a),this.literal(i.pop());break}n=o>>16,r=(o&P.MAX_BMP)<<16>>16,this.repeat(L.Op.REPEAT,n,r,a,i,t);break}case M.CODES.get(`\\`):{let t=i.pos();if(i.skip(1),(this.flags&j.PERL_X)!==0&&i.more())switch(i.pop()){case M.CODES.get(`A`):this.op(L.Op.BEGIN_TEXT);break e;case M.CODES.get(`b`):this.op(L.Op.WORD_BOUNDARY);break e;case M.CODES.get(`B`):this.op(L.Op.NO_WORD_BOUNDARY);break e;case M.CODES.get(`C`):throw new Po(e.ERR_INVALID_ESCAPE,`\\C`);case M.CODES.get(`Q`):{let e=i.rest(),t=e.indexOf(`\\E`);t>=0&&(e=e.substring(0,t)),i.skipString(e),i.skipString(`\\E`);let n=0;for(;n<e.length;){let t=e.codePointAt(n);this.literal(t),n+=F.charCount(t)}break e}case M.CODES.get(`z`):this.op(L.Op.END_TEXT);break e;default:i.rewindTo(t);break}let n=this.newRegexp(L.Op.CHAR_CLASS);if(n.flags=this.flags,i.lookingAt(`\\p`)||i.lookingAt(`\\P`)){let e=new hs;if(this.parseUnicodeClass(i,e)){n.runes=e.toArray(),this.push(n);break e}}let r=new hs;if(this.parsePerlClassEscape(i,r)){n.runes=r.toArray(),this.push(n);break e}i.rewindTo(t),this.reuse(n),this.literal(e.parseEscape(i));break}default:this.literal(i.pop());break}t=a}if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length!==1)throw new Po(e.ERR_MISSING_PAREN,this.wholeRegexp);return this.stack[0].namedGroups=this.namedGroups,this.stack[0]}parsePerlFlags(t){let n=t.pos(),r=t.rest();if(r.startsWith(`(?P<`)||r.startsWith(`(?<`)){let n=r.charAt(2)===`P`?4:3,i=r.indexOf(`>`);if(i<0)throw new Po(e.ERR_INVALID_NAMED_CAPTURE,r);let a=r.substring(n,i);if(t.skipString(a),t.skip(n+1),!e.isValidCaptureName(a))throw new Po(e.ERR_INVALID_NAMED_CAPTURE,r.substring(0,i+1));let o=this.op(L.Op.LEFT_PAREN);if(o.cap=++this.numCap,this.namedGroups[a])throw new Po(e.ERR_DUPLICATE_NAMED_CAPTURE,a);this.namedGroups[a]=this.numCap,o.name=a;return}t.skip(2);let i=this.flags,a=1,o=!1;e:for(;t.more();){let e=t.pop();switch(e){case M.CODES.get(`i`):i|=j.FOLD_CASE,o=!0;break;case M.CODES.get(`m`):i&=-17,o=!0;break;case M.CODES.get(`s`):i|=j.DOT_NL,o=!0;break;case M.CODES.get(`U`):i|=j.NON_GREEDY,o=!0;break;case M.CODES.get(`-`):if(a<0)break e;a=-1,i=~i,o=!1;break;case M.CODES.get(`:`):case M.CODES.get(`)`):if(a<0){if(!o)break e;i=~i}e===M.CODES.get(`:`)&&this.op(L.Op.LEFT_PAREN),this.flags=i;return;default:break e}}throw new Po(e.ERR_INVALID_PERL_OP,t.from(n))}parseVerticalBar(){this.concat(),this.swapVerticalBar()||this.op(L.Op.VERTICAL_BAR)}swapVerticalBar(){let t=this.stack.length;if(t>=3&&this.stack[t-2].op===L.Op.VERTICAL_BAR&&e.isCharClass(this.stack[t-1])&&e.isCharClass(this.stack[t-3])){let n=this.stack[t-1],r=this.stack[t-3];if(n.op>r.op){let e=r;r=n,n=e,this.stack[t-3]=r}return e.mergeCharClass(r,n),this.reuse(n),this.pop(),!0}if(t>=2){let e=this.stack[t-1],n=this.stack[t-2];if(n.op===L.Op.VERTICAL_BAR)return t>=3&&this.cleanAlt(this.stack[t-3]),this.stack[t-2]=e,this.stack[t-1]=n,!0}return!1}parseRightParen(){if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length<2)throw new Po(e.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let t=this.pop(),n=this.pop();if(n.op!==L.Op.LEFT_PAREN)throw new Po(e.ERR_UNEXPECTED_PAREN,this.wholeRegexp);this.flags=n.flags,n.cap===0?this.push(t):(n.op=L.Op.CAPTURE,n.subs=[t],this.push(n))}parsePerlClassEscape(e,t){let n=e.pos();if((this.flags&j.PERL_X)===0||!e.more()||e.pop()!==M.CODES.get(`\\`)||!e.more())return!1;e.pop();let r=e.from(n),i=$o.has(r)?$o.get(r):null;return i===null?!1:(t.appendGroup(i,(this.flags&j.FOLD_CASE)!==0),!0)}parseNamedClass(t,n){let r=t.rest(),i=r.indexOf(`:]`);if(i<0)return!1;let a=r.substring(0,i+2);t.skipString(a);let o=ms.has(a)?ms.get(a):null;if(o===null)throw new Po(e.ERR_INVALID_CHAR_RANGE,a);return n.appendGroup(o,(this.flags&j.FOLD_CASE)!==0),!0}parseUnicodeClass(t,n){let r=t.pos();if((this.flags&j.UNICODE_GROUPS)===0||!t.lookingAt(`\\p`)&&!t.lookingAt(`\\P`))return!1;t.skip(1);let i=1,a=t.pop();if(a===M.CODES.get(`P`)&&(i=-1),!t.more())throw t.rewindTo(r),new Po(e.ERR_INVALID_CHAR_RANGE,t.rest());a=t.pop();let o;if(a!==M.CODES.get(`{`))o=F.runeToString(a);else{let n=t.rest(),i=n.indexOf(`}`);if(i<0)throw t.rewindTo(r),new Po(e.ERR_INVALID_CHAR_RANGE,t.rest());o=n.substring(0,i),t.skipString(o),t.skip(1)}o.length!==0&&o.codePointAt(0)===M.CODES.get(`^`)&&(i=0-i,o=o.substring(1));let s=e.unicodeTable(o);if(s===null)throw new Po(e.ERR_INVALID_CHAR_RANGE,t.from(r));let c=s.first,l=s.second;if((this.flags&j.FOLD_CASE)===0||l===null)n.appendTableWithSign(c,i);else{let e=new hs().appendTable(c).appendTable(l).cleanClass().toArray();n.appendClassWithSign(e,i)}return!0}parseClass(t){let n=t.pos();t.skip(1);let r=this.newRegexp(L.Op.CHAR_CLASS);r.flags=this.flags;let i=new hs,a=1;t.more()&&t.lookingAt(`^`)&&(a=-1,t.skip(1),(this.flags&j.CLASS_NL)===0&&i.appendRange(M.CODES.get(`
250
+ `),M.CODES.get(`
251
+ `)));let o=!0;for(;!t.more()||t.peek()!==M.CODES.get(`]`)||o;){if(t.more()&&t.lookingAt(`-`)&&(this.flags&j.PERL_X)===0&&!o){let r=t.rest();if(r===`-`||!r.startsWith(`-]`))throw t.rewindTo(n),new Po(e.ERR_INVALID_CHAR_RANGE,t.rest())}o=!1;let r=t.pos();if(t.lookingAt(`[:`)){if(this.parseNamedClass(t,i))continue;t.rewindTo(r)}if(this.parseUnicodeClass(t,i)||this.parsePerlClassEscape(t,i))continue;t.rewindTo(r);let a=e.parseClassChar(t,n),s=a;if(t.more()&&t.lookingAt(`-`)){if(t.skip(1),t.more()&&t.lookingAt(`]`))t.skip(-1);else if(s=e.parseClassChar(t,n),s<a)throw new Po(e.ERR_INVALID_CHAR_RANGE,t.from(r))}(this.flags&j.FOLD_CASE)===0?i.appendRange(a,s):i.appendFoldedRange(a,s)}t.skip(1),i.cleanClass(),a<0&&i.negateClass(),r.runes=i.toArray(),this.push(r)}},ys=class{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}compareAndSet(e,t){return this.value===e?(this.value=t,!0):!1}},bs=class e{static initTest(t){let n=e.compile(t),r=new e(n.expr,n.prog,n.numSubexp,n.longest);return r.cond=n.cond,r.prefix=n.prefix,r.prefixUTF8=n.prefixUTF8,r.prefixComplete=n.prefixComplete,r.prefixRune=n.prefixRune,r}static compile(t){return e.compileImpl(t,j.PERL,!1)}static compilePOSIX(t){return e.compileImpl(t,j.POSIX,!0)}static compileImpl(t,n,r){let i=vs.parse(t,n),a=i.maxCap();i=Yo.simplify(i);let o=Jo.compileRegexp(i),s=new e(t,o,a,r),[c,l]=o.prefix();return s.prefixComplete=c,s.prefix=l,s.prefixUTF8=F.stringToUtf8ByteArray(s.prefix),s.prefix.length>0&&(s.prefixRune=s.prefix.codePointAt(0)),s.namedGroups=i.namedGroups,s}static match(t,n){return e.compile(t).match(n)}constructor(e,t,n=0,r=0){this.expr=e,this.prog=t,this.numSubexp=n,this.longest=r,this.cond=t.startCond(),this.prefix=null,this.prefixUTF8=null,this.prefixComplete=!1,this.prefixRune=0,this.pooled=new ys,this.dfa=new Go(t)}executeEngine(e,t,n,r){if(r>0)return this.doExecuteNFA(e,t,n,r);let i=this.dfa.match(e,t,n);return i===null?this.doExecuteNFA(e,t,n,r):i?[]:null}numberOfCapturingGroups(){return this.numSubexp}numberOfInstructions(){return this.prog.numInst()}get(){let e;do e=this.pooled.get();while(e&&!this.pooled.compareAndSet(e,e.next));return e}reset(){this.pooled.set(null)}put(e,t){let n=this.pooled.get();do n=this.pooled.get(),!t&&n&&(e=Vo.fromMachine(e),t=!0),e.next!==n&&(e.next=n);while(!this.pooled.compareAndSet(n,e))}toString(){return this.expr}doExecuteNFA(e,t,n,r){let i=this.get(),a=!1;i?i.next!==null&&(i=Vo.fromMachine(i),a=!0):(i=Vo.fromRE2(this),a=!0),i.init(r);let o=i.match(e,t,n)?i.submatches():null;return this.put(i,a),o}match(e){return this.executeEngine(Mo.fromUTF16(e),0,j.UNANCHORED,0)!==null}matchWithGroup(e,t,n,r,i){return e instanceof To||(e=Oo.utf16(e)),this.matchMachineInput(e,t,n,r,i)}matchMachineInput(e,t,n,r,i){if(t>n)return[!1,null];let a=e.isUTF16Encoding()?Mo.fromUTF16(e.asCharSequence(),0,n):Mo.fromUTF8(e.asBytes(),0,n),o=this.executeEngine(a,t,r,2*i);return o===null?[!1,null]:[!0,o]}matchUTF8(e){return this.executeEngine(Mo.fromUTF8(e),0,j.UNANCHORED,0)!==null}replaceAll(e,t){return this.replaceAllFunc(e,()=>t,2*e.length+1)}replaceFirst(e,t){return this.replaceAllFunc(e,()=>t,1)}replaceAllFunc(e,t,n){let r=0,i=0,a=``,o=Mo.fromUTF16(e),s=0;for(;i<=e.length;){let c=this.executeEngine(o,i,j.UNANCHORED,2);if(c===null||c.length===0)break;a+=e.substring(r,c[0]),(c[1]>r||c[0]===0)&&(a+=t(e.substring(c[0],c[1])),s++),r=c[1];let l=o.step(i)&7;if(i+l>c[1]?i+=l:i+1>c[1]?i++:i=c[1],s>=n)break}return a+=e.substring(r),a}pad(e){if(e===null)return null;let t=(1+this.numSubexp)*2;if(e.length<t){let n=Array(t).fill(-1);for(let t=0;t<e.length;t++)n[t]=e[t];e=n}return e}allMatches(e,t,n=e=>e){let r=[],i=e.endPos();t<0&&(t=i+1);let a=0,o=0,s=-1;for(;o<t&&a<=i;){let t=this.executeEngine(e,a,j.UNANCHORED,this.prog.numCap);if(t===null||t.length===0)break;let c=!0;if(t[1]===a){t[0]===s&&(c=!1);let n=e.step(a);n<0?a=i+1:a+=n&7}else a=t[1];s=t[1],c&&(r.push(n(this.pad(t))),o++)}return r}findUTF8(e){let t=this.executeEngine(Mo.fromUTF8(e),0,j.UNANCHORED,2);return t===null?null:e.slice(t[0],t[1])}findUTF8Index(e){let t=this.executeEngine(Mo.fromUTF8(e),0,j.UNANCHORED,2);return t===null?null:t.slice(0,2)}find(e){let t=this.executeEngine(Mo.fromUTF16(e),0,j.UNANCHORED,2);return t===null?``:e.substring(t[0],t[1])}findIndex(e){return this.executeEngine(Mo.fromUTF16(e),0,j.UNANCHORED,2)}findUTF8Submatch(e){let t=this.executeEngine(Mo.fromUTF8(e),0,j.UNANCHORED,this.prog.numCap);if(t===null)return null;let n=Array(1+this.numSubexp).fill(null);for(let r=0;r<n.length;r++)2*r<t.length&&t[2*r]>=0&&(n[r]=e.slice(t[2*r],t[2*r+1]));return n}findUTF8SubmatchIndex(e){return this.pad(this.executeEngine(Mo.fromUTF8(e),0,j.UNANCHORED,this.prog.numCap))}findSubmatch(e){let t=this.executeEngine(Mo.fromUTF16(e),0,j.UNANCHORED,this.prog.numCap);if(t===null)return null;let n=Array(1+this.numSubexp).fill(null);for(let r=0;r<n.length;r++)2*r<t.length&&t[2*r]>=0&&(n[r]=e.substring(t[2*r],t[2*r+1]));return n}findSubmatchIndex(e){return this.pad(this.executeEngine(Mo.fromUTF16(e),0,j.UNANCHORED,this.prog.numCap))}findAllUTF8(e,t){let n=this.allMatches(Mo.fromUTF8(e),t,t=>e.slice(t[0],t[1]));return n.length===0?null:n}findAllUTF8Index(e,t){let n=this.allMatches(Mo.fromUTF8(e),t,e=>e.slice(0,2));return n.length===0?null:n}findAll(e,t){let n=this.allMatches(Mo.fromUTF16(e),t,t=>e.substring(t[0],t[1]));return n.length===0?null:n}findAllIndex(e,t){let n=this.allMatches(Mo.fromUTF16(e),t,e=>e.slice(0,2));return n.length===0?null:n}findAllUTF8Submatch(e,t){let n=this.allMatches(Mo.fromUTF8(e),t,t=>{let n=Array(t.length/2|0).fill(null);for(let r=0;r<n.length;r++)t[2*r]>=0&&(n[r]=e.slice(t[2*r],t[2*r+1]));return n});return n.length===0?null:n}findAllUTF8SubmatchIndex(e,t){let n=this.allMatches(Mo.fromUTF8(e),t);return n.length===0?null:n}findAllSubmatch(e,t){let n=this.allMatches(Mo.fromUTF16(e),t,t=>{let n=Array(t.length/2|0).fill(null);for(let r=0;r<n.length;r++)t[2*r]>=0&&(n[r]=e.substring(t[2*r],t[2*r+1]));return n});return n.length===0?null:n}findAllSubmatchIndex(e,t){let n=this.allMatches(Mo.fromUTF16(e),t);return n.length===0?null:n}},xs=class e{static isUpperCaseAlpha(e){return`A`<=e&&e<=`Z`}static isHexadecimal(e){return`0`<=e&&e<=`9`||`A`<=e&&e<=`F`||`a`<=e&&e<=`f`}static getUtf8CharSize(e){let t=e.charCodeAt(0);return t<128?1:t<2048?2:t<65536?3:4}static translate(t){if(typeof t!=`string`)return t;let n=``,r=!1,i=t.length;i===0&&(n=`(?:)`,r=!0);let a=0;for(;a<i;){let o=t[a];if(o===`\\`){if(a+1<i)switch(o=t[a+1],o){case`\\`:n+=`\\\\`,a+=2;continue;case`c`:if(a+2<i){let i=t[a+2];if(e.isUpperCaseAlpha(i)){n+=`\\x`,n+=(i.charCodeAt(0)-64>>4).toString(16).toUpperCase(),n+=(i.charCodeAt(0)-64&15).toString(16).toUpperCase(),a+=3,r=!0;continue}}n+=`\\c`,a+=2;continue;case`u`:if(a+2<i){let o=t[a+2];if(e.isHexadecimal(o)){n+=`\\x{`+o,a+=3;for(let r=0;r<3&&a<i&&(o=t[a],e.isHexadecimal(o));++a,++r)n+=o;n+=`}`,r=!0;continue}else if(o===`{`){n+=`\\x`,a+=2,r=!0;continue}}n+=`\\u`,a+=2;continue;default:{n+=`\\`;let r=e.getUtf8CharSize(o);n+=t.substring(a+1,a+1+r),a+=r+1;continue}}}else if(o===`/`){n+=`\\/`,a+=1,r=!0;continue}else if(o===`(`&&a+2<i&&t[a+1]===`?`&&t[a+2]===`<`&&(a+3>=i||t[a+3]!==`=`&&t[a+3]!==`!`)){n+=`(?P<`,a+=3,r=!0;continue}let s=e.getUtf8CharSize(o);n+=t.substring(a,a+s),a+=s}return r?n:t}},Ss=class e{static CASE_INSENSITIVE=1;static DOTALL=2;static MULTILINE=4;static DISABLE_UNICODE_GROUPS=8;static LONGEST_MATCH=16;static quote(e){return F.quoteMeta(e)}static quoteReplacement(e,t=!1){return Ro.quoteReplacement(e,t)}static translateRegExp(e){return xs.translate(e)}static compile(t,n=0){let r=t;if((n&e.CASE_INSENSITIVE)!==0&&(r=`(?i)${r}`),(n&e.DOTALL)!==0&&(r=`(?s)${r}`),(n&e.MULTILINE)!==0&&(r=`(?m)${r}`),(n&~(e.MULTILINE|e.DOTALL|e.CASE_INSENSITIVE|e.DISABLE_UNICODE_GROUPS|e.LONGEST_MATCH))!==0)throw new Lo(`Flags should only be a combination of MULTILINE, DOTALL, CASE_INSENSITIVE, DISABLE_UNICODE_GROUPS, LONGEST_MATCH`);let i=j.PERL;(n&e.DISABLE_UNICODE_GROUPS)!==0&&(i&=-129);let a=new e(t,n);return a.re2Input=bs.compileImpl(r,i,(n&e.LONGEST_MATCH)!==0),a}static matches(t,n){return e.compile(t).testExact(n)}static initTest(t,n,r){if(t==null)throw Error(`pattern is null`);if(r==null)throw Error(`re2 is null`);let i=new e(t,n);return i.re2Input=r,i}constructor(e,t){this.patternInput=e,this.flagsInput=t}reset(){this.re2Input.reset()}flags(){return this.flagsInput}pattern(){return this.patternInput}re2(){return this.re2Input}matches(e){return this.testExact(e)}matcher(e){return Array.isArray(e)&&(e=Oo.utf8(e)),new Ro(this,e)}test(e){return Array.isArray(e)?this.re2Input.matchUTF8(e):this.re2Input.match(e)}testExact(e){let t=Array.isArray(e)?Mo.fromUTF8(e):Mo.fromUTF16(e);return this.re2Input.executeEngine(t,0,j.ANCHOR_BOTH,0)!==null}split(e,t=0){let n=this.matcher(e),r=[],i=0,a=0;for(;n.find();){if(a===0&&n.end()===0){a=n.end();continue}if(t>0&&r.length===t-1)break;if(a===n.start()){if(t===0){i+=1,a=n.end();continue}}else for(;i>0;)r.push(``),--i;r.push(n.substring(a,n.start())),a=n.end()}if(t===0&&a!==n.inputLength()){for(;i>0;)r.push(``),--i;r.push(n.substring(a,n.inputLength()))}return(t!==0||r.length===0)&&r.push(n.substring(a,n.inputLength())),r}toString(){return this.patternInput}programSize(){return this.re2Input.numberOfInstructions()}groupCount(){return this.re2Input.numberOfCapturingGroups()}namedGroups(){return this.re2Input.namedGroups}equals(e){return this===e?!0:e===null||this.constructor!==e.constructor?!1:this.flagsInput===e.flagsInput&&this.patternInput===e.patternInput}}});function ws(e){let t=0;return e.includes(`i`)&&(t|=Ss.CASE_INSENSITIVE),e.includes(`m`)&&(t|=Ss.MULTILINE),e.includes(`s`)&&(t|=Ss.DOTALL),t}function Ts(e){return Ss.translateRegExp(e)}function z(e,t=``){return new Es(e,t)}var Es,Ds,Os=x(()=>{Cs(),Es=class{_re2;_pattern;_flags;_global;_ignoreCase;_multiline;_lastIndex=0;_nativeRegex=null;_matcher=null;_matcherInput=null;acquireMatcher(e){return this._matcher===null?(this._matcher=this._re2.matcher(e),this._matcherInput=e,this._matcher):(this._matcherInput!==e&&(this._matcher.matcherInput.charSequence=e,this._matcherInput=e),this._matcher.reset(),this._matcher)}constructor(e,t=``){this._pattern=e,this._flags=t,this._global=t.includes(`g`),this._ignoreCase=t.includes(`i`),this._multiline=t.includes(`m`);try{let n=Ts(e),r=ws(t);this._re2=Ss.compile(n,r)}catch(t){if(t instanceof Po){let n=t.message||``,r=``;throw n.includes(`(?=`)||n.includes(`(?!`)||n.includes(`(?<`)||n.includes(`(?<!`)||e.includes(`(?=`)||e.includes(`(?!`)||e.includes(`(?<=`)||e.includes(`(?<!`)?r=` Lookahead (?=, ?!) and lookbehind (?<=, ?<!) assertions are not supported in this environment because the regex engine uses RE2 for ReDoS protection. RE2 guarantees linear-time matching but cannot support these features.`:(n.includes(`backreference`)||/\\[1-9]/.test(e))&&(r=` Backreferences (\\1, \\2, etc.) are not supported in this environment because the regex engine uses RE2 for ReDoS protection. RE2 guarantees linear-time matching but cannot support backreferences.`),SyntaxError(`Invalid regular expression: /${e}/: ${n}${r}`)}throw t}}test(e){return this._global&&(this._lastIndex=0),this.acquireMatcher(e).find()}exec(e){let t=this.acquireMatcher(e),n=this._global?this._lastIndex:0;if(!t.find(n))return this._global&&(this._lastIndex=0),null;let r=this._re2.groupCount(),i=[];i.push(t.group(0)??``);for(let e=1;e<=r;e++){let n=t.group(e);i.push(n)}let a=i;a.index=t.start(0),a.input=e;let o=this._re2.namedGroups();if(o&&Object.keys(o).length>0){let e=Object.create(null);for(let[n,r]of Object.entries(o)){let i=t.group(r);i!==null&&(e[n]=i)}a.groups=e}return this._global&&(this._lastIndex=t.end(0),t.start(0)===t.end(0)&&this._lastIndex++),a}match(e){if(this._global&&(this._lastIndex=0),!this._global)return this.exec(e);let t=[],n=this.acquireMatcher(e),r=0;for(;n.find(r);){let i=n.group(0)??``;if(t.push(i),r=n.end(0),n.start(0)===n.end(0)&&r++,r>e.length)break}return t.length>0?t:null}replace(e,t){if(this._global&&(this._lastIndex=0),typeof t==`string`){let n=this.acquireMatcher(e);return this._global?n.replaceAll(t,!0):n.replaceFirst(t,!0)}let n=[],r=this._re2.matcher(e),i=0,a=0,o=this._re2.groupCount(),s=this._re2.namedGroups();for(;r.find(a);){n.push(e.slice(i,r.start(0)));let c=[],l=r.group(0)??``;for(let e=1;e<=o;e++)c.push(r.group(e));if(c.push(r.start(0)),c.push(e),s&&Object.keys(s).length>0){let e=Object.create(null);for(let[t,n]of Object.entries(s))e[t]=r.group(n)??``;c.push(e)}let u=r.start(0),d=r.end(0);if(n.push(t(l,...c)),i=d,a=i,u===d&&a++,!this._global||a>e.length)break}return n.push(e.slice(i)),n.join(``)}split(e,t){return t===void 0||t<0?this._re2.split(e,-1):t===0?[]:this._re2.split(e,-1).slice(0,t)}search(e){let t=this.acquireMatcher(e);return t.find()?t.start(0):-1}*matchAll(e){if(!this._global)throw Error(`matchAll requires global flag`);this._lastIndex=0;let t=this._re2.matcher(e),n=this._re2.groupCount(),r=this._re2.namedGroups(),i=0;for(;t.find(i);){let a=[];a.push(t.group(0)??``);for(let e=1;e<=n;e++)a.push(t.group(e));let o=a;if(o.index=t.start(0),o.input=e,r&&Object.keys(r).length>0){let e=Object.create(null);for(let[n,i]of Object.entries(r)){let r=t.group(i);r!==null&&(e[n]=r)}o.groups=e}if(yield o,i=t.end(0),t.start(0)===t.end(0)&&i++,i>e.length)break}}get native(){if(!this._nativeRegex)try{this._nativeRegex=new RegExp(this._pattern,this._flags)}catch{this._nativeRegex=RegExp(``,this._flags),Object.defineProperty(this._nativeRegex,"source",{value:this._pattern,writable:!1})}return this._nativeRegex}get source(){return this._pattern}get flags(){return this._flags}get global(){return this._global}get ignoreCase(){return this._ignoreCase}get multiline(){return this._multiline}get lastIndex(){return this._lastIndex}set lastIndex(e){this._lastIndex=e}},Ds=class{_regex;constructor(e){this._regex=e}test(e){return this._regex.global&&(this._regex.lastIndex=0),this._regex.test(e)}exec(e){return this._regex.exec(e)}match(e){return this._regex.global&&(this._regex.lastIndex=0),e.match(this._regex)}replace(e,t){return this._regex.global&&(this._regex.lastIndex=0),e.replace(this._regex,t)}split(e,t){return e.split(this._regex,t)}search(e){return e.search(this._regex)}*matchAll(e){if(!this._regex.global)throw Error(`matchAll requires global flag`);this._regex.lastIndex=0;let t=this._regex.exec(e);for(;t!==null;)yield t,t[0].length===0&&this._regex.lastIndex++,t=this._regex.exec(e)}get native(){return this._regex}get source(){return this._regex.source}get flags(){return this._regex.flags}get global(){return this._regex.global}get ignoreCase(){return this._regex.ignoreCase}get multiline(){return this._regex.multiline}get lastIndex(){return this._regex.lastIndex}set lastIndex(e){this._regex.lastIndex=e}}}),ks=x(()=>{Os()});function As(e,t,n){let r=typeof n==`boolean`?{ignoreCase:n}:n??{},i=t;r.stripQuotes&&(i.startsWith(`"`)&&i.endsWith(`"`)||i.startsWith(`'`)&&i.endsWith(`'`))&&(i=i.slice(1,-1));let a=r.ignoreCase?`i:${i}`:i,o=Ns.get(a);if(!o){if(o=js(i,r.ignoreCase),Ns.size>=Ms){let e=Ns.keys().next().value;e!==void 0&&Ns.delete(e)}Ns.set(a,o)}return o.test(e)}function js(e,t){let n=`^`;for(let t=0;t<e.length;t++){let r=e[t];if(r===`*`)n+=`.*`;else if(r===`?`)n+=`.`;else if(r===`[`){let r=t+1;for(;r<e.length&&e[r]!==`]`;)r++;n+=e.slice(t,r+1),t=r}else r===`.`||r===`+`||r===`^`||r===`$`||r===`{`||r===`}`||r===`(`||r===`)`||r===`|`||r===`\\`?n+=`\\${r}`:n+=r}return n+=`$`,z(n,t?`i`:``)}var Ms,Ns,Ps=x(()=>{ks(),Ms=2048,Ns=new Map});function Fs(e,t){let n=e.ignoreCase?t.toLowerCase():t,r=e.needles;for(let e=0;e<r.length;e++)if(n.indexOf(r[e])!==-1)return!0;return!1}function Is(e,t){return e.replace(/\$(&|\d+|<([^>]+)>)/g,(e,n,r)=>n===`&`?t[0]:r===void 0?t[parseInt(n,10)]??``:t.groups?.[r]??``)}function Ls(e,t,n={}){let{invertMatch:r=!1,showLineNumbers:i=!1,countOnly:a=!1,countMatches:o=!1,filename:s=``,onlyMatching:c=!1,beforeContext:l=0,afterContext:u=0,maxCount:d=0,contextSeparator:f=`--`,showColumn:p=!1,vimgrep:m=!1,showByteOffset:h=!1,replace:g=null,passthru:_=!1,multiline:v=!1,kResetGroup:y,preFilter:ee}=n;if(v)return Rs(e,t,{invertMatch:r,showLineNumbers:i,countOnly:a,countMatches:o,filename:s,onlyMatching:c,beforeContext:l,afterContext:u,maxCount:d,contextSeparator:f,showColumn:p,showByteOffset:h,replace:g,kResetGroup:y,preFilter:ee});let te=e.split(`
252
+ `),ne=te.length,re=ne>0&&te[ne-1]===``?ne-1:ne;if(a||o){let e=0,n=(o||c)&&!r;for(let i=0;i<re;i++){let a=te[i];if(!(ee&&!r&&!Fs(ee,a)))if(t.lastIndex=0,n)for(let n=t.exec(a);n!==null;n=t.exec(a))e++,n[0].length===0&&t.lastIndex++;else t.test(a)!==r&&e++}return{output:`${s?`${s}:${e}`:String(e)}
253
+ `,matched:e>0,matchCount:e}}if(l===0&&u===0&&!_){let e=[],n=!1,a=0,o=0;for(let l=0;l<re&&!(d>0&&a>=d);l++){let u=te[l],d=null;if(ee&&!Fs(ee,u)||(t.lastIndex=0,d=t.exec(u)),d!==null!==r)if(n=!0,a++,c)for(let n=d;n!==null;n=t.exec(u)){let r=y===void 0?n[0]:n[y]??``,a=g===null?r:Is(g,n),c=s?`${s}:`:``;h&&(c+=`${o+n.index}:`),i&&(c+=`${l+1}:`),p&&(c+=`${n.index+1}:`),e.push(c+a),n[0].length===0&&t.lastIndex++}else if(m)for(let n=d;n!==null;n=t.exec(u)){let r=s?`${s}:`:``;h&&(r+=`${o+n.index}:`),i&&(r+=`${l+1}:`),p&&(r+=`${n.index+1}:`),e.push(r+u),n[0].length===0&&t.lastIndex++}else{let n=d?d.index+1:1,r=u;g!==null&&(t.lastIndex=0,r=t.replace(u,(...e)=>{if(e[0].length===0)return``;let t=e,n=e[e.length-1];return typeof n==`object`&&n?(t.groups=n,t.input=e[e.length-2],t.index=e[e.length-3]):(t.input=e[e.length-1],t.index=e[e.length-2]),Is(g,t)}));let a=s?`${s}:`:``;h&&(a+=`${o+(d?d.index:0)}:`),i&&(a+=`${l+1}:`),p&&(a+=`${n}:`),e.push(a+r)}o+=u.length+1}return{output:e.length>0?`${e.join(`
254
+ `)}
255
+ `:``,matched:n,matchCount:a}}if(_){let e=[],n=!1,a=0;for(let o=0;o<re;o++){let c=te[o],l;ee&&!Fs(ee,c)?l=!1:(t.lastIndex=0,l=t.test(c));let u=l!==r;u&&(n=!0,a++);let d=u?`:`:`-`,f=s?`${s}${d}`:``;i&&(f+=`${o+1}${d}`),e.push(f+c)}return{output:e.length>0?`${e.join(`
256
+ `)}
257
+ `:``,matched:n,matchCount:a}}let ie=[],b=0,ae=new Set,oe=-1,se=[];for(let e=0;e<re&&!(d>0&&b>=d);e++){let n=te[e],i;ee&&!Fs(ee,n)?i=!1:(t.lastIndex=0,i=t.test(n)),i!==r&&(se.push(e),b++)}for(let e of se){let n=Math.max(0,e-l);oe>=0&&n>oe+1&&ie.push(f);for(let t=n;t<e;t++)if(!ae.has(t)){ae.add(t),oe=t;let e=te[t];i&&(e=`${t+1}-${e}`),s&&(e=`${s}-${e}`),ie.push(e)}if(!ae.has(e)){ae.add(e),oe=e;let n=te[e];if(c){t.lastIndex=0;for(let r=t.exec(n);r!==null;r=t.exec(n)){let n=y===void 0?r[0]:r[y]??``,a=g===null?n:g,o=s?`${s}:`:``;i&&(o+=`${e+1}:`),p&&(o+=`${r.index+1}:`),ie.push(o+a),r[0].length===0&&t.lastIndex++}}else{let t=n;i&&(t=`${e+1}:${t}`),s&&(t=`${s}:${t}`),ie.push(t)}}let r=Math.min(re-1,e+u);for(let t=e+1;t<=r;t++)if(!ae.has(t)){ae.add(t),oe=t;let e=te[t];i&&(e=`${t+1}-${e}`),s&&(e=`${s}-${e}`),ie.push(e)}}return{output:ie.length>0?`${ie.join(`
258
+ `)}
259
+ `:``,matched:b>0,matchCount:b}}function Rs(e,t,n){let{invertMatch:r,showLineNumbers:i,countOnly:a,countMatches:o,filename:s,onlyMatching:c,beforeContext:l,afterContext:u,maxCount:d,contextSeparator:f,showColumn:p,showByteOffset:m,replace:h,kResetGroup:g,preFilter:_}=n;if(_&&!r&&!Fs(_,e))return a||o?{output:`${s?`${s}:0`:`0`}
260
+ `,matched:!1,matchCount:0}:{output:``,matched:!1,matchCount:0};let v=e.split(`
261
+ `),y=v.length,ee=y>0&&v[y-1]===``?y-1:y,te=[0];for(let t=0;t<e.length;t++)e[t]===`
262
+ `&&te.push(t+1);let ne=e=>{let t=0;for(let n=0;n<te.length&&!(te[n]>e);n++)t=n;return t},re=e=>{let t=ne(e);return e-te[t]+1},ie=[];t.lastIndex=0;for(let n=t.exec(e);n!==null&&!(d>0&&ie.length>=d);n=t.exec(e)){let e=ne(n.index),r=ne(n.index+Math.max(0,n[0].length-1)),i=g===void 0?n[0]:n[g]??``;ie.push({startLine:e,endLine:r,byteOffset:n.index,column:re(n.index),matchText:i}),n[0].length===0&&t.lastIndex++}if(a||o){let e;if(o)e=r?0:ie.length;else{let t=new Set;for(let e of ie)for(let n=e.startLine;n<=e.endLine;n++)t.add(n);e=r?ee-t.size:t.size}return{output:`${s?`${s}:${e}`:String(e)}
263
+ `,matched:e>0,matchCount:e}}if(r){let e=new Set;for(let t of ie)for(let n=t.startLine;n<=t.endLine;n++)e.add(n);let t=[];for(let n=0;n<ee;n++)if(!e.has(n)){let e=v[n];i&&(e=`${n+1}:${e}`),s&&(e=`${s}:${e}`),t.push(e)}return{output:t.length>0?`${t.join(`
264
+ `)}
265
+ `:``,matched:t.length>0,matchCount:t.length}}if(ie.length===0)return{output:``,matched:!1,matchCount:0};let b=new Set,ae=-1,oe=[];for(let e of ie){let n=Math.max(0,e.startLine-l),r=Math.min(ee-1,e.endLine+u);ae>=0&&n>ae+1&&oe.push(f);for(let t=n;t<e.startLine;t++)if(!b.has(t)){b.add(t),ae=t;let e=v[t];i&&(e=`${t+1}-${e}`),s&&(e=`${s}-${e}`),oe.push(e)}if(c){let t=h===null?e.matchText:h,n=s?`${s}:`:``;m&&(n+=`${e.byteOffset}:`),i&&(n+=`${e.startLine+1}:`),p&&(n+=`${e.column}:`),oe.push(n+t);for(let t=e.startLine;t<=e.endLine;t++)b.add(t),ae=t}else for(let n=e.startLine;n<=e.endLine&&n<ee;n++)if(!b.has(n)){b.add(n),ae=n;let r=v[n];h!==null&&n===e.startLine&&(t.lastIndex=0,r=t.replace(r,h));let a=s?`${s}:`:``;m&&n===e.startLine&&(a+=`${e.byteOffset}:`),i&&(a+=`${n+1}:`),p&&n===e.startLine&&(a+=`${e.column}:`),oe.push(a+r)}for(let t=e.endLine+1;t<=r;t++)if(!b.has(t)){b.add(t),ae=t;let e=v[t];i&&(e=`${t+1}-${e}`),s&&(e=`${s}-${e}`),oe.push(e)}}return{output:oe.length>0?`${oe.join(`
266
+ `)}
267
+ `:``,matched:!0,matchCount:ie.length}}var zs=x(()=>{});function Bs(e){let t=``,n=0;for(;n<e.length;){if(e.slice(n,n+7)===`[[:<:]]`){t+=`\\b`,n+=7;continue}if(e.slice(n,n+7)===`[[:>:]]`){t+=`\\b`,n+=7;continue}if(e[n]===`[`){let r=`[`;for(n++,n<e.length&&(e[n]===`^`||e[n]===`!`)&&(r+=`^`,n++),n<e.length&&e[n]===`]`&&(r+=`\\]`,n++);n<e.length&&e[n]!==`]`;){if(e[n]===`[`&&n+1<e.length&&e[n+1]===`:`){let t=e.indexOf(`:]`,n+2);if(t!==-1){let i=e.slice(n+2,t),a=nc.get(i);if(a){r+=a,n=t+2;continue}}}if(e[n]===`\\`&&n+1<e.length){r+=e[n]+e[n+1],n+=2;continue}r+=e[n],n++}n<e.length&&e[n]===`]`&&(r+=`]`,n++),t+=r;continue}if(e[n]===`\\`&&n+1<e.length){t+=e[n]+e[n+1],n+=2;continue}t+=e[n],n++}return t}function Vs(e,t){let n,r;switch(t.mode){case`fixed`:n=e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);break;case`extended`:case`perl`:if(n=Bs(e),n=n.replace(/\(\?P<([^>]+)>/g,`(?<$1>`),t.mode===`perl`){n=Gs(n),n=Ks(n),n=qs(n);let e=Zs(n);n=e.pattern,r=e.kResetGroup}break;default:n=Bs(e),n=tc(n);break}t.wholeWord&&(n=`\\b(?:${n})\\b`),t.lineRegexp&&(n=`^${n}$`);let i=/\\u\{[0-9A-Fa-f]+\}/.test(n),a=`g`+(t.ignoreCase?`i`:``)+(t.multiline?`m`:``)+(t.multilineDotall?`s`:``)+(i?`u`:``),o=Hs(n,t.ignoreCase??!1);return{regex:z(n,a),kResetGroup:r,preFilter:o??void 0}}function Hs(e,t){let n=e;if(n.startsWith(`\\b(?:`)&&n.endsWith(`)\\b`)?n=n.slice(5,n.length-3):n.startsWith(`\\b`)&&n.endsWith(`\\b`)&&n.length>=4&&(n=n.slice(2,n.length-2)),n.length===0)return null;let r=Us(n);if(r===null)return null;let i=[];for(let e of r){let t=Ws(e);if(t===null||t.length===0)return null;i.push(t)}return i.length===0?null:{needles:t?i.map(e=>e.toLowerCase()):i,ignoreCase:t}}function Us(e){let t=[],n=0,r=!1,i=0;for(let a=0;a<e.length;a++){let o=e[a];if(o===`\\`){a++;continue}if(r){o===`]`&&(r=!1);continue}if(o===`[`)r=!0;else if(o===`(`)n++;else if(o===`)`){if(n--,n<0)return null}else o===`|`&&n===0&&(t.push(e.slice(i,a)),i=a+1)}return n!==0||r?null:(t.push(e.slice(i)),t)}function Ws(e){let t=e;if(t.startsWith(`^`)&&(t=t.slice(1)),t.endsWith(`$`)){let e=0;for(let n=t.length-2;n>=0&&t[n]===`\\`;n--)e++;e%2==0&&(t=t.slice(0,-1))}if(t.length===0)return null;let n=``;for(let e=0;e<t.length;e++){let r=t[e];if(r===`\\`){let r=t[e+1];if(r===void 0||/[dDwWsSbBAZzGQE0-9ckpPNXRxuU]/.test(r))return null;r===`n`?n+=`
268
+ `:r===`t`?n+=` `:r===`r`?n+=`\r`:r===`f`?n+=`\f`:r===`v`?n+=`\v`:n+=r,e++;continue}if(/[.*+?^${}()|[\]]/.test(r))return null;n+=r}return n}function Gs(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`\\`&&n+1<e.length&&e[n+1]===`Q`){n+=2;let r=``;for(;n<e.length;){if(e[n]===`\\`&&n+1<e.length&&e[n+1]===`E`){n+=2;break}r+=e[n],n++}t+=r.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}else t+=e[n],n++;return t}function Ks(e){return e.replace(/\\x\{([0-9A-Fa-f]+)\}/g,`\\u{$1}`)}function qs(e){let t=``,n=0;for(;n<e.length;){if(e[n]===`(`&&n+1<e.length&&e[n+1]===`?`){let r=e.slice(n).match(/^\(\?([imsx]*)(-[imsx]*)?(:|$|\))/);if(r){let i=r[1]||``,a=r[2]||``,o=r[3];if(o===`:`){let o=n+r[0].length-1,s=Js(e,n);if(s!==-1){let r=Ys(e.slice(o+1,s),i,a);t+=`(?:${r})`,n=s+1;continue}}else if(o===`)`||o===``){n+=r[0].length;continue}}}t+=e[n],n++}return t}function Js(e,t){let n=0,r=t;for(;r<e.length;){if(e[r]===`\\`){r+=2;continue}if(e[r]===`[`){for(r++;r<e.length&&e[r]!==`]`;)e[r]===`\\`&&r++,r++;r++;continue}if(e[r]===`(`)n++;else if(e[r]===`)`&&(n--,n===0))return r;r++}return-1}function Ys(e,t,n){let r=e;return t.includes(`i`)&&(r=Xs(r)),r}function Xs(e){let t=``,n=0;for(;n<e.length;){let r=e[n];if(r===`\\`){n+1<e.length?(t+=r+e[n+1],n+=2):(t+=r,n++);continue}if(r===`[`){t+=r,n++,n<e.length&&e[n]===`^`&&(t+=e[n],n++);let i=[];for(;n<e.length&&e[n]!==`]`;)if(e[n]===`\\`)i.push(e[n]),n++,n<e.length&&(i.push(e[n]),n++);else if(e[n]===`-`&&i.length>0&&n+1<e.length&&e[n+1]!==`]`){let t=i[i.length-1],r=e[n+1];i.push(`-`),i.push(r),/[a-z]/.test(t)&&/[a-z]/.test(r)?(i.push(t.toUpperCase()),i.push(`-`),i.push(r.toUpperCase())):/[A-Z]/.test(t)&&/[A-Z]/.test(r)&&(i.push(t.toLowerCase()),i.push(`-`),i.push(r.toLowerCase())),n+=2}else{let t=e[n];if(i.push(t),/[a-zA-Z]/.test(t)){let e=t===t.toLowerCase()?t.toUpperCase():t.toLowerCase();i.includes(e)||i.push(e)}n++}t+=i.join(``),n<e.length&&(t+=e[n],n++);continue}if(/[a-zA-Z]/.test(r)){let e=r.toLowerCase(),n=r.toUpperCase();t+=`[${n}${e}]`}else t+=r;n++}return t}function Zs(e){let t=Qs(e);if(t===-1)return{pattern:e};let n=e.slice(0,t),r=e.slice(t+2),i=$s(n);return{pattern:`(?:${n})(${r})`,kResetGroup:i+1}}function Qs(e){let t=0;for(;t<e.length-1;)if(e[t]===`\\`){if(e[t+1]===`K`){let n=0,r=t-1;for(;r>=0&&e[r]===`\\`;)n++,r--;if(n%2==0)return t}t+=2}else t++;return-1}function $s(e){let t=0,n=0;for(;n<e.length;){if(e[n]===`\\`){n+=2;continue}if(e[n]===`[`){for(n++;n<e.length&&e[n]!==`]`;)e[n]===`\\`&&n++,n++;n++;continue}if(e[n]===`(`)if(n+1<e.length&&e[n+1]===`?`){if(n+2<e.length){let r=e[n+2];if(r===`:`||r===`=`||r===`!`){n++;continue}if(r===`<`&&n+3<e.length){let r=e[n+3];if(r===`=`||r===`!`){n++;continue}t++,n++;continue}}}else t++;n++}return t}function ec(e){let t=e.replace(/\$\{0\}|\$0(?![0-9])/g,`$$&`);return t=t.replace(/\$\{([^0-9}][^}]*)\}/g,`$$<$1>`),t=t.replace(/\$([a-zA-Z_][a-zA-Z0-9_]*)(?![>0-9])/g,`$$<$1>`),t}function tc(e){let t=``,n=0,r=!0,i=0;for(;n<e.length;){let a=e[n];if(a===`[`){for(t+=a,n++,n<e.length&&(e[n]===`^`||e[n]===`!`)&&(t+=e[n],n++),n<e.length&&e[n]===`]`&&(t+=e[n],n++);n<e.length&&e[n]!==`]`;)e[n]===`\\`&&n+1<e.length?(t+=e[n]+e[n+1],n+=2):(t+=e[n],n++);n<e.length&&e[n]===`]`&&(t+=e[n],n++),r=!1;continue}if(a===`\\`&&n+1<e.length){let o=e[n+1];if(o===`|`){t+=`|`,n+=2,r=!0;continue}if(o===`(`){t+=`(`,n+=2,i++,r=!0;continue}if(o===`)`){t+=`)`,n+=2,i=Math.max(0,i-1),r=!1;continue}if(o===`{`){let i=e.slice(n).match(/^\\{(\d+)(,(\d*)?)?\\}/);if(i){let e=i[1],a=i[2]!==void 0,o=i[3]||``;a?t+=`{${e},${o}}`:t+=`{${e}}`,n+=i[0].length,r=!1;continue}t+=`\\{`,n+=2,r=!1;continue}if(o===`}`){t+=`\\}`,n+=2,r=!1;continue}t+=a+o,n+=2,r=!1;continue}if(a===`*`&&r){t+=`\\*`,n++;continue}if(a===`^`){if(r){t+=`^`,n++;continue}t+=`\\^`,n++;continue}if(a===`$`){let i=n===e.length-1,a=n+2<e.length&&e[n+1]===`\\`&&e[n+2]===`)`;i||a?t+=`$`:t+=`\\$`,n++,r=!1;continue}a===`+`||a===`?`||a===`|`||a===`(`||a===`)`||a===`{`||a===`}`?t+=`\\${a}`:t+=a,n++,r=!1}return t}var nc,rc=x(()=>{ks(),nc=new Map([[`alpha`,`a-zA-Z`],[`digit`,`0-9`],[`alnum`,`a-zA-Z0-9`],[`lower`,`a-z`],[`upper`,`A-Z`],[`xdigit`,`0-9A-Fa-f`],[`space`,` \\t\\n\\r\\f\\v`],[`blank`,` \\t`],[`punct`,"!-/:-@\\[-`{-~"],[`graph`,`!-~`],[`print`,` -~`],[`cntrl`,`\\x00-\\x1F\\x7F`],[`ascii`,`\\x00-\\x7F`],[`word`,`a-zA-Z0-9_`]])}),ic=x(()=>{zs(),rc()}),ac={};S(ac,{egrepCommand:()=>pc,egrepFlagsForFuzzing:()=>gc,fgrepCommand:()=>fc,fgrepFlagsForFuzzing:()=>hc,flagsForFuzzing:()=>mc,grepCommand:()=>uc});async function oc(e,t,n,r,i=0){if(i>=dc)return;let a=n.fs.resolvePath(n.cwd,e);try{if(!(await n.fs.stat(a)).isDirectory){let n=e.split(`/`).pop()||``;t&&As(n,t.replace(/^\//,``),{stripQuotes:!0})&&r.push(e);return}let o=await n.fs.readdir(a);for(let a of o){let o=e===`.`?a:`${e}/${a}`,s=n.fs.resolvePath(n.cwd,o);(await n.fs.stat(s)).isDirectory?await oc(o,t,n,r,i+1):t&&As(a,t.replace(/^\//,``),{stripQuotes:!0})&&r.push(o)}}catch{}}async function sc(e,t){let n=[],r=e.lastIndexOf(`/`),i,a;if(r===-1?(i=t.cwd,a=e):(i=e.slice(0,r)||`/`,a=e.slice(r+1)),e.includes(`**`)){let n=[],r=e.split(`**`);return await oc(r[0].replace(/\/$/,``)||`.`,r[1]||``,t,n),n.map(e=>({path:e}))}let o=t.fs.resolvePath(t.cwd,i);try{if(t.fs.readdirWithFileTypes){let e=await t.fs.readdirWithFileTypes(o);for(let t of e)if(As(t.name,a,{stripQuotes:!0})){let e=r===-1?t.name:`${i}/${t.name}`;n.push({path:e,isFile:t.isFile})}}else{let e=await t.fs.readdir(o);for(let t of e)if(As(t,a,{stripQuotes:!0})){let e=r===-1?t:`${i}/${t}`;n.push({path:e})}}}catch{}return n.sort((e,t)=>e.path.localeCompare(t.path))}async function cc(e,t,n=[],r=[],i=[],a,o=0){if(o>=dc)return[];let s=t.fs.resolvePath(t.cwd,e),c=[];try{let l,u;if(a!==void 0)l=a,u=!a;else{let e=await t.fs.stat(s);l=e.isFile,u=e.isDirectory}if(l){let t=e.split(`/`).pop()||e;return r.length>0&&r.some(e=>As(t,e,{stripQuotes:!0}))||n.length>0&&!n.some(e=>As(t,e,{stripQuotes:!0}))?[]:[{path:e,isFile:!0}]}if(!u)return[];let d=e.split(`/`).pop()||e;if(i.length>0&&i.some(e=>As(d,e,{stripQuotes:!0})))return[];if(t.fs.readdirWithFileTypes){let a=await t.fs.readdirWithFileTypes(s);for(let s of a){if(s.name.startsWith(`.`))continue;let a=await cc(e===`.`?s.name:`${e}/${s.name}`,t,n,r,i,s.isFile,o+1);c.push(...a)}}else{let a=await t.fs.readdir(s);for(let s of a){if(s.startsWith(`.`))continue;let a=await cc(e===`.`?s:`${e}/${s}`,t,n,r,i,void 0,o+1);c.push(...a)}}}catch{}return c}var lc,uc,dc,fc,pc,mc,hc,gc,_c=x(()=>{w(),Ps(),O(),ic(),lc={name:`grep`,summary:`print lines that match patterns`,usage:`grep [OPTION]... PATTERN [FILE]...`,options:[`-E, --extended-regexp PATTERN is an extended regular expression`,`-P, --perl-regexp PATTERN is a Perl regular expression`,`-F, --fixed-strings PATTERN is a set of newline-separated strings`,`-i, --ignore-case ignore case distinctions`,`-v, --invert-match select non-matching lines`,`-w, --word-regexp match only whole words`,`-x, --line-regexp match only whole lines`,`-c, --count print only a count of matching lines`,`-l, --files-with-matches print only names of files with matches`,`-L, --files-without-match print names of files with no matches`,`-m NUM, --max-count=NUM stop after NUM matches`,`-n, --line-number print line number with output lines`,`-h, --no-filename suppress the file name prefix on output`,`-o, --only-matching show only nonempty parts of lines that match`,`-q, --quiet, --silent suppress all normal output`,`-r, -R, --recursive search directories recursively`,`-A NUM print NUM lines of trailing context`,`-B NUM print NUM lines of leading context`,`-C NUM print NUM lines of context`,`-e PATTERN use PATTERN for matching`,` --include=GLOB search only files matching GLOB`,` --exclude=GLOB skip files matching GLOB`,` --exclude-dir=DIR skip directories matching DIR`,` --help display this help and exit`]},uc={name:`grep`,async execute(e,t){if(E(e))return T(lc);let n=!1,r=!1,i=!1,a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!1,f=!1,p=!1,m=!1,h=!1,g=!1,_=0,v=0,y=0,ee=[],te=[],ne=[],re=null,ie=[];for(let t=0;t<e.length;t++){let b=e[t];if(b.startsWith(`-`)&&b!==`-`){if(b===`-e`&&t+1<e.length){re=e[++t];continue}if(b.startsWith(`--include=`)){ee.push(b.slice(10));continue}if(b.startsWith(`--exclude=`)){te.push(b.slice(10));continue}if(b.startsWith(`--exclude-dir=`)){ne.push(b.slice(14));continue}if(b.startsWith(`--max-count=`)){_=parseInt(b.slice(12),10);continue}let ie=b.match(/^-m(\d+)$/);if(ie){_=parseInt(ie[1],10);continue}if(b===`-m`&&t+1<e.length){_=parseInt(e[++t],10);continue}let ae=b.match(/^-([ABC])(\d+)$/);if(ae){let e=parseInt(ae[2],10);ae[1]===`A`?y=e:ae[1]===`B`?v=e:ae[1]===`C`&&(v=e,y=e);continue}if((b===`-A`||b===`-B`||b===`-C`)&&t+1<e.length){let n=parseInt(e[++t],10);b===`-A`?y=n:b===`-B`?v=n:(v=n,y=n);continue}let oe=b.startsWith(`--`)?[b]:b.slice(1).split(``);for(let e of oe)if(e===`i`||e===`--ignore-case`)n=!0;else if(e===`n`||e===`--line-number`)r=!0;else if(e===`v`||e===`--invert-match`)i=!0;else if(e===`c`||e===`--count`)a=!0;else if(e===`l`||e===`--files-with-matches`)o=!0;else if(e===`L`||e===`--files-without-match`)s=!0;else if(e===`r`||e===`R`||e===`--recursive`)c=!0;else if(e===`w`||e===`--word-regexp`)l=!0;else if(e===`x`||e===`--line-regexp`)u=!0;else if(e===`E`||e===`--extended-regexp`)d=!0;else if(e===`P`||e===`--perl-regexp`)f=!0;else if(e===`F`||e===`--fixed-strings`)p=!0;else if(e===`o`||e===`--only-matching`)m=!0;else if(e===`h`||e===`--no-filename`)h=!0;else if(e===`q`||e===`--quiet`||e===`--silent`)g=!0;else{if(e.startsWith(`--`))return D(`grep`,e);if(e.length===1)return D(`grep`,`-${e}`)}}else re===null?re=b:ie.push(b)}if(re===null)return{stdout:``,stderr:`grep: missing pattern
269
+ `,exitCode:2};let b=p?`fixed`:d?`extended`:f?`perl`:`basic`,ae,oe,se;try{let e=Vs(re,{mode:b,ignoreCase:n,wholeWord:l,lineRegexp:u});ae=e.regex,oe=e.kResetGroup,se=e.preFilter}catch{return{stdout:``,stderr:`grep: invalid regular expression: ${re}
270
+ `,exitCode:2}}if(ie.length===0&&t.stdin!==void 0){let e=Ls(ur(t.stdin),ae,{invertMatch:i,showLineNumbers:r,countOnly:a,filename:``,onlyMatching:m,beforeContext:v,afterContext:y,maxCount:_,kResetGroup:oe,preFilter:se});return g?{stdout:``,stderr:``,exitCode:+!e.matched}:{stdout:e.output,stderr:``,exitCode:+!e.matched}}if(ie.length===0)return{stdout:``,stderr:`grep: no input files
271
+ `,exitCode:2};let ce=``,le=``,ue=!1,de=!1,fe=[];for(let e of ie)if(e.includes(`*`)||e.includes(`?`)||e.includes(`[`)){let n=await sc(e,t);if(c)for(let e of n){let n=await cc(e.path,t,ee,te,ne,e.isFile);fe.push(...n)}else fe.push(...n)}else if(c){let n=await cc(e,t,ee,te,ne);fe.push(...n)}else fe.push({path:e});let pe=(fe.length>1||c)&&!h;for(let e=0;e<fe.length;e+=50){let n=fe.slice(e,e+50),l=await Promise.all(n.map(async e=>{let n=e.path,o=n.split(`/`).pop()||n;if(te.length>0&&!c&&te.some(e=>As(o,e,{stripQuotes:!0}))||ee.length>0&&!c&&!ee.some(e=>As(o,e,{stripQuotes:!0})))return null;try{let o=t.fs.resolvePath(t.cwd,n),s=!1;if(s=e.isFile===void 0?(await t.fs.stat(o)).isDirectory:!e.isFile,s)return c?null:{error:`grep: ${n}: Is a directory
272
+ `};let l=await t.fs.readFile(o);if(se&&!i){let e=se.ignoreCase?l.toLowerCase():l;if(!se.needles.some(t=>e.includes(t)))return a?{file:n,result:{output:`${pe?`${n}:0`:`0`}
273
+ `,matched:!1,matchCount:0}}:{file:n,result:{output:``,matched:!1,matchCount:0}}}return{file:n,result:Ls(l,ae,{invertMatch:i,showLineNumbers:r,countOnly:a,filename:pe?n:``,onlyMatching:m,beforeContext:v,afterContext:y,maxCount:_,kResetGroup:oe,preFilter:se})}}catch{return{error:`grep: ${n}: No such file or directory
274
+ `}}}));for(let e of l){if(e===null)continue;if(`error`in e&&e.error){le+=e.error,e.error.includes(`Is a directory`)||(de=!0);continue}if(!(`file`in e)||!e.result)continue;let{file:t,result:n}=e;if(n.matched){if(ue=!0,g)return{stdout:``,stderr:``,exitCode:0};o?ce+=`${t}
275
+ `:s||(ce+=n.output)}else s?ce+=`${t}
276
+ `:a&&!o&&(ce+=n.output)}}let me;return me=de?2:s?ce.length>0?0:1:+!ue,g?{stdout:``,stderr:``,exitCode:me}:{stdout:ce,stderr:le,exitCode:me}}},dc=256,fc={name:`fgrep`,async execute(e,t){return uc.execute([`-F`,...e],t)}},pc={name:`egrep`,async execute(e,t){return uc.execute([`-E`,...e],t)}},mc={name:`grep`,flags:[{flag:`-E`,type:`boolean`},{flag:`-F`,type:`boolean`},{flag:`-P`,type:`boolean`},{flag:`-i`,type:`boolean`},{flag:`-v`,type:`boolean`},{flag:`-w`,type:`boolean`},{flag:`-x`,type:`boolean`},{flag:`-c`,type:`boolean`},{flag:`-l`,type:`boolean`},{flag:`-L`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-h`,type:`boolean`},{flag:`-o`,type:`boolean`},{flag:`-q`,type:`boolean`},{flag:`-r`,type:`boolean`},{flag:`-m`,type:`value`,valueHint:`number`},{flag:`-A`,type:`value`,valueHint:`number`},{flag:`-B`,type:`value`,valueHint:`number`},{flag:`-C`,type:`value`,valueHint:`number`},{flag:`-e`,type:`value`,valueHint:`pattern`}],stdinType:`text`,needsArgs:!0},hc={name:`fgrep`,flags:[],stdinType:`text`,needsArgs:!0},gc={name:`egrep`,flags:[],stdinType:`text`,needsArgs:!0}});function vc(e,t){if(Array.isArray(e))throw TypeError(`${t}: expected object, got array`);if(Object.getPrototypeOf(e)!==null)throw TypeError(`${t}: expected null-prototype object, got prototypal object`)}function yc(e){return!Dc.has(e)}function bc(e,t,n){vc(e,`safeSet`),yc(t)&&(e[t]=n)}function xc(e,t){return vc(e,`safeHasOwn`),Object.hasOwn(e,t)}function Sc(e){let t=new WeakMap,n=e=>{if(typeof e!=`object`||!e||e instanceof Date)return e;let r=t.get(e);if(r!==void 0)return r;if(Array.isArray(e)){let r=[];t.set(e,r);for(let t of e)r.push(n(t));return r}let i=Object.create(null);t.set(e,i);for(let t of Object.keys(e))i[t]=n(e[t]);return i};return n(e)}function Cc(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function wc(e){return Object.assign(Object.create(null),e)}function Tc(e){return Object.assign(Object.create(null),e)}function Ec(...e){return Object.assign(Object.create(null),...e)}var Dc,Oc=x(()=>{Dc=new Set([`__proto__`,`constructor`,`prototype`]),[...Dc]});function kc(){let e=[];for(let[t,n]of Object.entries(Ac).sort()){let r=[];for(let e of n.extensions)r.push(`*${e}`);for(let e of n.globs)r.push(e);e.push(`${t}: ${r.join(`, `)}`)}return`${e.join(`
277
+ `)}
278
+ `}var Ac,jc,Mc=x(()=>{ks(),Oc(),Ac=wc({js:{extensions:[`.js`,`.mjs`,`.cjs`,`.jsx`],globs:[]},ts:{extensions:[`.ts`,`.tsx`,`.mts`,`.cts`],globs:[]},html:{extensions:[`.html`,`.htm`,`.xhtml`],globs:[]},css:{extensions:[`.css`,`.scss`,`.sass`,`.less`],globs:[]},json:{extensions:[`.json`,`.jsonc`,`.json5`],globs:[]},xml:{extensions:[`.xml`,`.xsl`,`.xslt`],globs:[]},c:{extensions:[`.c`,`.h`],globs:[]},cpp:{extensions:[`.cpp`,`.cc`,`.cxx`,`.hpp`,`.hh`,`.hxx`,`.h`],globs:[]},rust:{extensions:[`.rs`],globs:[]},go:{extensions:[`.go`],globs:[]},zig:{extensions:[`.zig`],globs:[]},java:{extensions:[`.java`],globs:[]},kotlin:{extensions:[`.kt`,`.kts`],globs:[]},scala:{extensions:[`.scala`,`.sc`],globs:[]},clojure:{extensions:[`.clj`,`.cljc`,`.cljs`,`.edn`],globs:[]},py:{extensions:[`.py`,`.pyi`,`.pyw`],globs:[]},rb:{extensions:[`.rb`,`.rake`,`.gemspec`],globs:[`Rakefile`,`Gemfile`]},php:{extensions:[`.php`,`.phtml`,`.php3`,`.php4`,`.php5`],globs:[]},perl:{extensions:[`.pl`,`.pm`,`.pod`,`.t`],globs:[]},lua:{extensions:[`.lua`],globs:[]},sh:{extensions:[`.sh`,`.bash`,`.zsh`,`.fish`],globs:[`.bashrc`,`.zshrc`,`.profile`]},bat:{extensions:[`.bat`,`.cmd`],globs:[]},ps:{extensions:[`.ps1`,`.psm1`,`.psd1`],globs:[]},yaml:{extensions:[`.yaml`,`.yml`],globs:[]},toml:{extensions:[`.toml`],globs:[`Cargo.toml`,`pyproject.toml`]},ini:{extensions:[`.ini`,`.cfg`,`.conf`],globs:[]},csv:{extensions:[`.csv`,`.tsv`],globs:[]},md:{extensions:[`.md`,`.mdx`,`.markdown`,`.mdown`,`.mkd`],globs:[]},markdown:{extensions:[`.md`,`.mdx`,`.markdown`,`.mdown`,`.mkd`],globs:[]},rst:{extensions:[`.rst`],globs:[]},txt:{extensions:[`.txt`,`.text`],globs:[]},tex:{extensions:[`.tex`,`.ltx`,`.sty`,`.cls`],globs:[]},sql:{extensions:[`.sql`],globs:[]},graphql:{extensions:[`.graphql`,`.gql`],globs:[]},proto:{extensions:[`.proto`],globs:[]},make:{extensions:[`.mk`,`.mak`],globs:[`Makefile`,`GNUmakefile`,`makefile`]},docker:{extensions:[],globs:[`Dockerfile`,`Dockerfile.*`,`*.dockerfile`]},tf:{extensions:[`.tf`,`.tfvars`],globs:[]}}),jc=class{types;constructor(){this.types=new Map(Object.entries(Ac).map(([e,t])=>[e,{extensions:[...t.extensions],globs:[...t.globs]}]))}addType(e){let t=e.indexOf(`:`);if(t===-1)return;let n=e.slice(0,t),r=e.slice(t+1);if(r.startsWith(`include:`)){let e=r.slice(8),t=this.types.get(e);if(t){let e=this.types.get(n)||{extensions:[],globs:[]};e.extensions.push(...t.extensions),e.globs.push(...t.globs),this.types.set(n,e)}}else{let e=this.types.get(n)||{extensions:[],globs:[]};if(r.startsWith(`*.`)&&!r.slice(2).includes(`*`)){let t=r.slice(1);e.extensions.includes(t)||e.extensions.push(t)}else e.globs.includes(r)||e.globs.push(r);this.types.set(n,e)}}clearType(e){let t=this.types.get(e);t&&(t.extensions=[],t.globs=[])}getType(e){return this.types.get(e)}getAllTypes(){return this.types}matchesType(e,t){let n=e.toLowerCase();for(let r of t){if(r===`all`){if(this.matchesAnyType(e))return!0;continue}let t=this.types.get(r);if(t){for(let e of t.extensions)if(n.endsWith(e))return!0;for(let r of t.globs)if(r.includes(`*`)){if(z(`^${r.replace(/\./g,`\\.`).replace(/\*/g,`.*`)}$`,`i`).test(e))return!0}else if(n===r.toLowerCase())return!0}}return!1}matchesAnyType(e){let t=e.toLowerCase();for(let n of this.types.values()){for(let e of n.extensions)if(t.endsWith(e))return!0;for(let r of n.globs)if(r.includes(`*`)){if(z(`^${r.replace(/\./g,`\\.`).replace(/\*/g,`.*`)}$`,`i`).test(e))return!0}else if(t===r.toLowerCase())return!0}return!1}}});function Nc(){return{ignoreCase:!1,caseSensitive:!1,smartCase:!0,fixedStrings:!1,wordRegexp:!1,lineRegexp:!1,invertMatch:!1,multiline:!1,multilineDotall:!1,patterns:[],patternFiles:[],count:!1,countMatches:!1,files:!1,filesWithMatches:!1,filesWithoutMatch:!1,stats:!1,onlyMatching:!1,maxCount:0,lineNumber:!0,noFilename:!1,withFilename:!1,nullSeparator:!1,byteOffset:!1,column:!1,vimgrep:!1,replace:null,afterContext:0,beforeContext:0,contextSeparator:`--`,quiet:!1,heading:!1,passthru:!1,includeZero:!1,sort:`path`,json:!1,globs:[],iglobs:[],globCaseInsensitive:!1,types:[],typesNot:[],typeAdd:[],typeClear:[],hidden:!1,noIgnore:!1,noIgnoreDot:!1,noIgnoreVcs:!1,ignoreFiles:[],maxDepth:256,maxFilesize:0,followSymlinks:!1,searchZip:!1,searchBinary:!1,preprocessor:null,preprocessorGlobs:[]}}var Pc=x(()=>{});function Fc(e){let t=e.match(/^(\d+)([KMG])?$/i);if(!t)return 0;let n=parseInt(t[1],10);switch((t[2]||``).toUpperCase()){case`K`:return n*1024;case`M`:return n*1024*1024;case`G`:return n*1024*1024*1024;default:return n}}function Ic(e){return/^\d+[KMG]?$/i.test(e)?null:{stdout:``,stderr:`rg: invalid --max-filesize value: ${e}
279
+ `,exitCode:1}}function Lc(e){return null}function Rc(e){e.hidden?e.searchBinary=!0:e.noIgnore?e.hidden=!0:e.noIgnore=!0}function zc(e,t,n){let r=e[t];for(let i of Kc){if(r.startsWith(`--${i.long}=`)){let e=Vc(n,i,r.slice(`--${i.long}=`.length));return e?{newIndex:t,error:e}:{newIndex:t}}if(i.short&&r.startsWith(`-${i.short}`)&&r.length>2){let e=Vc(n,i,r.slice(2));return e?{newIndex:t,error:e}:{newIndex:t}}if(i.short&&r===`-${i.short}`||r===`--${i.long}`){if(t+1>=e.length)return null;let r=e[t+1],a=Vc(n,i,r);return a?{newIndex:t+1,error:a}:{newIndex:t+1}}}return null}function Bc(e){return Kc.find(t=>t.short===e)}function Vc(e,t,n){if(t.validate){let e=t.validate(n);if(e)return e}if(t.ignored||!t.target)return;let r=t.parse?t.parse(n):n;t.multi?e[t.target].push(r):e[t.target]=r}function Hc(e,t){let n=e[t];if(n===`--sort`&&t+1<e.length){let n=e[t+1];if(n===`path`||n===`none`)return{value:n,newIndex:t+1}}if(n.startsWith(`--sort=`)){let e=n.slice(7);if(e===`path`||e===`none`)return{value:e,newIndex:t}}return null}function Uc(e,t){let n=e[t],r=n.match(/^-([ABC])(\d+)$/);return r?{flag:r[1],value:parseInt(r[2],10),newIndex:t}:(n===`-A`||n===`-B`||n===`-C`)&&t+1<e.length?{flag:n[1],value:parseInt(e[t+1],10),newIndex:t+1}:null}function Wc(e){let t=e.match(/^-m(\d+)$/);return t?parseInt(t[1],10):null}function Gc(e){let t=Nc(),n=null,r=[],i=-1,a=-1,o=-1,s=!1;for(let c=0;c<e.length;c++){let l=e[c];if(l.startsWith(`-`)&&l!==`-`){let n=Uc(e,c);if(n){let{flag:e,value:t,newIndex:r}=n;e===`A`?i=Math.max(i,t):e===`B`?a=Math.max(a,t):o=t,c=r;continue}let r=Wc(l);if(r!==null){t.maxCount=r;continue}let u=zc(e,c,t);if(u){if(u.error)return{success:!1,error:u.error};c=u.newIndex;continue}let d=Hc(e,c);if(d){t.sort=d.value,c=d.newIndex;continue}let f=l.startsWith(`--`)?[l]:l.slice(1).split(``);for(let n of f){if(Jc.has(n)){t.lineNumber=!0,s=!0;continue}if(n===`u`||n===`--unrestricted`){Rc(t);continue}if(n===`P`||n===`--pcre2`)return{success:!1,error:{stdout:``,stderr:`rg: PCRE2 is not supported. Use standard regex syntax instead.
280
+ `,exitCode:1}};if(n.length===1){let r=Bc(n);if(r){if(c+1>=e.length)return{success:!1,error:D(`rg`,`-${n}`)};let i=Vc(t,r,e[c+1]);if(i)return{success:!1,error:i};c++;continue}}let r=qc.get(n);if(r){r(t);continue}if(n.startsWith(`--`))return{success:!1,error:D(`rg`,n)};if(n.length===1)return{success:!1,error:D(`rg`,`-${n}`)}}}else n===null&&t.patterns.length===0&&t.patternFiles.length===0?n=l:r.push(l)}return(i>=0||o>=0)&&(t.afterContext=Math.max(i>=0?i:0,o>=0?o:0)),(a>=0||o>=0)&&(t.beforeContext=Math.max(a>=0?a:0,o>=0?o:0)),n!==null&&t.patterns.push(n),(t.column||t.vimgrep)&&(s=!0),{success:!0,options:t,paths:r,explicitLineNumbers:s}}var Kc,qc,Jc,Yc=x(()=>{O(),Pc(),Kc=[{short:`g`,long:`glob`,target:`globs`,multi:!0},{long:`iglob`,target:`iglobs`,multi:!0},{short:`t`,long:`type`,target:`types`,multi:!0,validate:Lc},{short:`T`,long:`type-not`,target:`typesNot`,multi:!0,validate:Lc},{long:`type-add`,target:`typeAdd`,multi:!0},{long:`type-clear`,target:`typeClear`,multi:!0},{short:`m`,long:`max-count`,target:`maxCount`,parse:parseInt},{short:`e`,long:`regexp`,target:`patterns`,multi:!0},{short:`f`,long:`file`,target:`patternFiles`,multi:!0},{short:`r`,long:`replace`,target:`replace`},{short:`d`,long:`max-depth`,target:`maxDepth`,parse:parseInt},{long:`max-filesize`,target:`maxFilesize`,parse:Fc,validate:Ic},{long:`context-separator`,target:`contextSeparator`},{short:`j`,long:`threads`,ignored:!0},{long:`ignore-file`,target:`ignoreFiles`,multi:!0},{long:`pre`,target:`preprocessor`},{long:`pre-glob`,target:`preprocessorGlobs`,multi:!0}],qc=new Map([[`i`,e=>{e.ignoreCase=!0,e.caseSensitive=!1,e.smartCase=!1}],[`--ignore-case`,e=>{e.ignoreCase=!0,e.caseSensitive=!1,e.smartCase=!1}],[`s`,e=>{e.caseSensitive=!0,e.ignoreCase=!1,e.smartCase=!1}],[`--case-sensitive`,e=>{e.caseSensitive=!0,e.ignoreCase=!1,e.smartCase=!1}],[`S`,e=>{e.smartCase=!0,e.ignoreCase=!1,e.caseSensitive=!1}],[`--smart-case`,e=>{e.smartCase=!0,e.ignoreCase=!1,e.caseSensitive=!1}],[`F`,e=>{e.fixedStrings=!0}],[`--fixed-strings`,e=>{e.fixedStrings=!0}],[`w`,e=>{e.wordRegexp=!0}],[`--word-regexp`,e=>{e.wordRegexp=!0}],[`x`,e=>{e.lineRegexp=!0}],[`--line-regexp`,e=>{e.lineRegexp=!0}],[`v`,e=>{e.invertMatch=!0}],[`--invert-match`,e=>{e.invertMatch=!0}],[`U`,e=>{e.multiline=!0}],[`--multiline`,e=>{e.multiline=!0}],[`--multiline-dotall`,e=>{e.multilineDotall=!0,e.multiline=!0}],[`c`,e=>{e.count=!0}],[`--count`,e=>{e.count=!0}],[`--count-matches`,e=>{e.countMatches=!0}],[`l`,e=>{e.filesWithMatches=!0}],[`--files`,e=>{e.files=!0}],[`--files-with-matches`,e=>{e.filesWithMatches=!0}],[`--files-without-match`,e=>{e.filesWithoutMatch=!0}],[`--stats`,e=>{e.stats=!0}],[`o`,e=>{e.onlyMatching=!0}],[`--only-matching`,e=>{e.onlyMatching=!0}],[`q`,e=>{e.quiet=!0}],[`--quiet`,e=>{e.quiet=!0}],[`N`,e=>{e.lineNumber=!1}],[`--no-line-number`,e=>{e.lineNumber=!1}],[`H`,e=>{e.withFilename=!0}],[`--with-filename`,e=>{e.withFilename=!0}],[`I`,e=>{e.noFilename=!0}],[`--no-filename`,e=>{e.noFilename=!0}],[`0`,e=>{e.nullSeparator=!0}],[`--null`,e=>{e.nullSeparator=!0}],[`b`,e=>{e.byteOffset=!0}],[`--byte-offset`,e=>{e.byteOffset=!0}],[`--column`,e=>{e.column=!0,e.lineNumber=!0}],[`--no-column`,e=>{e.column=!1}],[`--vimgrep`,e=>{e.vimgrep=!0,e.column=!0,e.lineNumber=!0}],[`--json`,e=>{e.json=!0}],[`--hidden`,e=>{e.hidden=!0}],[`--no-ignore`,e=>{e.noIgnore=!0}],[`--no-ignore-dot`,e=>{e.noIgnoreDot=!0}],[`--no-ignore-vcs`,e=>{e.noIgnoreVcs=!0}],[`L`,e=>{e.followSymlinks=!0}],[`--follow`,e=>{e.followSymlinks=!0}],[`z`,e=>{e.searchZip=!0}],[`--search-zip`,e=>{e.searchZip=!0}],[`a`,e=>{e.searchBinary=!0}],[`--text`,e=>{e.searchBinary=!0}],[`--heading`,e=>{e.heading=!0}],[`--passthru`,e=>{e.passthru=!0}],[`--include-zero`,e=>{e.includeZero=!0}],[`--glob-case-insensitive`,e=>{e.globCaseInsensitive=!0}]]),Jc=new Set([`n`,`--line-number`])});function Xc(e){return`'${e.replace(/'/g,`'\\''`)}'`}function Zc(e){return e.map(Xc).join(` `)}var Qc=x(()=>{});async function $c(e,t,n=!1,r=!1,i=[]){let a=new tl(e,t,n,r);await a.load(t);for(let n of i)try{let r=e.resolvePath(t,n),i=await e.readFile(r);a.addPatternsFromContent(i,t)}catch{}return a}var el,tl,nl=x(()=>{ks(),el=class{patterns=[];basePath;constructor(e=`/`){this.basePath=e}parse(e){let t=e.split(`
281
+ `);for(let e of t){let t=e.replace(/\s+$/,``);if(!t||t.startsWith(`#`))continue;let n=!1;t.startsWith(`!`)&&(n=!0,t=t.slice(1));let r=!1;t.endsWith(`/`)&&(r=!0,t=t.slice(0,-1));let i=!1;t.startsWith(`/`)?(i=!0,t=t.slice(1)):t.includes(`/`)&&!t.startsWith(`**/`)&&(i=!0);let a=this.patternToRegex(t,i);this.patterns.push({pattern:e,regex:a,negated:n,directoryOnly:r,rooted:i})}}patternToRegex(e,t){let n=``;n=t?`^`:`(?:^|/)`;let r=0;for(;r<e.length;){let t=e[r];if(t===`*`)e[r+1]===`*`?e[r+2]===`/`?(n+=`(?:.*/)?`,r+=3):(r+2,e.length,n+=`.*`,r+=2):(n+=`[^/]*`,r++);else if(t===`?`)n+=`[^/]`,r++;else if(t===`[`){let t=r+1;for(t<e.length&&e[t]===`!`&&t++,t<e.length&&e[t]===`]`&&t++;t<e.length&&e[t]!==`]`;)t++;if(t<e.length){let i=e.slice(r,t+1);i.startsWith(`[!`)&&(i=`[^${i.slice(2)}`),n+=i,r=t+1}else n+=`\\[`,r++}else t===`/`?(n+=`/`,r++):(n+=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),r++)}return n+=`(?:/.*)?$`,z(n)}matches(e,t){let n=e.replace(/^\.\//,``);n=n.replace(/^\//,``);let r=!1;for(let e of this.patterns)e.directoryOnly&&!t||e.regex.test(n)&&(r=!e.negated);return r}isWhitelisted(e,t){let n=e.replace(/^\.\//,``);n=n.replace(/^\//,``);for(let e of this.patterns)if(!(e.directoryOnly&&!t)&&e.negated&&e.regex.test(n))return!0;return!1}getBasePath(){return this.basePath}},tl=class{parsers=[];fs;skipDotIgnore;skipVcsIgnore;loadedDirs=new Set;constructor(e,t,n=!1,r=!1){this.fs=e,this.skipDotIgnore=n,this.skipVcsIgnore=r}async load(e){let t=[],n=e;for(;;){t.unshift(n);let e=this.fs.resolvePath(n,`..`);if(e===n)break;n=e}let r=[];this.skipVcsIgnore||r.push(`.gitignore`),this.skipDotIgnore||r.push(`.rgignore`,`.ignore`);for(let e of t){this.loadedDirs.add(e);for(let t of r){let n=this.fs.resolvePath(e,t);try{let t=await this.fs.readFile(n),r=new el(e);r.parse(t),this.parsers.push(r)}catch{}}}}async loadForDirectory(e){if(this.loadedDirs.has(e))return;this.loadedDirs.add(e);let t=[];this.skipVcsIgnore||t.push(`.gitignore`),this.skipDotIgnore||t.push(`.rgignore`,`.ignore`);for(let n of t){let t=this.fs.resolvePath(e,n);try{let n=await this.fs.readFile(t),r=new el(e);r.parse(n),this.parsers.push(r)}catch{}}}addPatternsFromContent(e,t){let n=new el(t);n.parse(e),this.parsers.push(n)}matches(e,t){for(let n of this.parsers){let r=n.getBasePath();if(!e.startsWith(r))continue;let i=e.slice(r.length).replace(/^\//,``);if(n.matches(i,t))return!0}return!1}isWhitelisted(e,t){for(let n of this.parsers){let r=n.getBasePath();if(!e.startsWith(r))continue;let i=e.slice(r.length).replace(/^\//,``);if(n.isWhitelisted(i,t))return!0}return!1}static isCommonIgnored(e){return new Set([`node_modules`,`.git`,`.svn`,`.hg`,`__pycache__`,`.pytest_cache`,`.mypy_cache`,`venv`,`.venv`,`.next`,`.nuxt`,`.cargo`]).has(e)}}});function rl(e){return e.length>=2&&e[0]===31&&e[1]===139}function il(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];r===`[`&&!t?t=!0:r===`]`&&t&&(t=!1)}return t?`rg: glob '${e}' has an unclosed character class`:null}async function al(e){let{ctx:t,options:n,paths:r,explicitLineNumbers:i}=e;for(let e of n.globs){let t=il(e.startsWith(`!`)?e.slice(1):e);if(t)return{stdout:``,stderr:`${t}
282
+ `,exitCode:1}}if(n.files)return fl(t,[...n.patterns,...r],n);let a=[...n.patterns];for(let e of n.patternFiles)try{let n;if(e===`-`)n=ur(t.stdin);else{let r=t.fs.resolvePath(t.cwd,e);n=await t.fs.readFile(r)}let r=n.split(`
283
+ `).filter(e=>e.length>0);a.push(...r)}catch{return{stdout:``,stderr:`rg: ${e}: No such file or directory
284
+ `,exitCode:2}}if(a.length===0)return n.patternFiles.length>0?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`rg: no pattern given
285
+ `,exitCode:2};let o=r.length===0?[`.`]:r,s=ol(n,a),c,l;try{let e=sl(a,n,s);c=e.regex,l=e.kResetGroup}catch{return{stdout:``,stderr:`rg: invalid regex: ${a.join(`, `)}
286
+ `,exitCode:2}}let u=null;n.noIgnore||(u=await $c(t.fs,t.cwd,n.noIgnoreDot,n.noIgnoreVcs,n.ignoreFiles));let d=new jc;for(let e of n.typeClear)d.clearType(e);for(let e of n.typeAdd)d.addType(e);let{files:f,singleExplicitFile:p}=await cl(t,o,n,u,d);if(f.length===0)return{stdout:``,stderr:``,exitCode:1};let m=!n.noFilename&&(n.withFilename||!p||f.length>1),h=n.lineNumber;return i||(p&&f.length===1&&(h=!1),n.onlyMatching&&(h=!1)),hl(t,f,c,n,m,h,l)}function ol(e,t){return e.caseSensitive?!1:e.ignoreCase?!0:e.smartCase?!t.some(e=>/[A-Z]/.test(e)):!1}function sl(e,t,n){let r;return r=e.length===1?e[0]:e.map(e=>t.fixedStrings?e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`):`(?:${e})`).join(`|`),Vs(r,{mode:t.fixedStrings&&e.length===1?`fixed`:`perl`,ignoreCase:n,wholeWord:t.wordRegexp,lineRegexp:t.lineRegexp,multiline:t.multiline,multilineDotall:t.multilineDotall})}async function cl(e,t,n,r,i){let a=[],o=0,s=0;for(let c of t){let t=e.fs.resolvePath(e.cwd,c);try{let l=await e.fs.stat(t);if(l.isFile){if(o++,n.maxFilesize>0&&l.size>n.maxFilesize)continue;ul(c,n,r,t,i)&&a.push(c)}else l.isDirectory&&(s++,await ll(e,c,t,0,n,r,i,a))}catch{}}return{files:n.sort===`path`?a.sort():a,singleExplicitFile:o===1&&s===0}}async function ll(e,t,n,r,i,a,o,s){if(!(r>=i.maxDepth)){a&&await a.loadForDirectory(n);try{let c=e.fs.readdirWithFileTypes?await e.fs.readdirWithFileTypes(n):(await e.fs.readdir(n)).map(e=>({name:e,isFile:void 0}));for(let l of c){let c=l.name;if(!i.noIgnore&&tl.isCommonIgnored(c))continue;let u=c.startsWith(`.`),d=t===`.`?c:t===`./`?`./${c}`:t.endsWith(`/`)?`${t}${c}`:`${t}/${c}`,f=e.fs.resolvePath(n,c),p,m,h=!1;if(l.isFile!==void 0&&`isDirectory`in l){let t=l;if(h=t.isSymbolicLink===!0,h&&!i.followSymlinks)continue;if(h&&i.followSymlinks)try{let t=await e.fs.stat(f);p=t.isFile,m=t.isDirectory}catch{continue}else p=t.isFile,m=t.isDirectory}else try{let t=e.fs.lstat?await e.fs.lstat(f):await e.fs.stat(f);if(h=t.isSymbolicLink===!0,h&&!i.followSymlinks)continue;let n=h&&i.followSymlinks?await e.fs.stat(f):t;p=n.isFile,m=n.isDirectory}catch{continue}if(!a?.matches(f,m)&&!(u&&!i.hidden&&!a?.isWhitelisted(f,m))){if(m)await ll(e,d,f,r+1,i,a,o,s);else if(p){if(i.maxFilesize>0)try{if((await e.fs.stat(f)).size>i.maxFilesize)continue}catch{continue}ul(d,i,a,f,o)&&s.push(d)}}}}catch{}}}function ul(e,t,n,r,i){let a=e.split(`/`).pop()||e;if(n?.matches(r,!1)||t.types.length>0&&!i.matchesType(a,t.types)||t.typesNot.length>0&&i.matchesType(a,t.typesNot))return!1;if(t.globs.length>0){let n=t.globCaseInsensitive,r=t.globs.filter(e=>!e.startsWith(`!`)),i=t.globs.filter(e=>e.startsWith(`!`)).map(e=>e.slice(1));if(r.length>0){let t=!1;for(let i of r)if(dl(a,i,n)||dl(e,i,n)){t=!0;break}if(!t)return!1}for(let t of i)if(t.startsWith(`/`)){if(dl(e,t.slice(1),n))return!1}else if(dl(a,t,n)||dl(e,t,n))return!1}if(t.iglobs.length>0){let n=t.iglobs.filter(e=>!e.startsWith(`!`)),r=t.iglobs.filter(e=>e.startsWith(`!`)).map(e=>e.slice(1));if(n.length>0){let t=!1;for(let r of n)if(dl(a,r,!0)||dl(e,r,!0)){t=!0;break}if(!t)return!1}for(let t of r)if(t.startsWith(`/`)){if(dl(e,t.slice(1),!0))return!1}else if(dl(a,t,!0)||dl(e,t,!0))return!1}return!0}function dl(e,t,n=!1){let r=`^`;for(let e=0;e<t.length;e++){let n=t[e];if(n===`*`)t[e+1]===`*`?(r+=`.*`,e++):r+=`[^/]*`;else if(n===`?`)r+=`[^/]`;else if(n===`[`){let n=e+1;for(n<t.length&&t[n]===`!`&&n++,n<t.length&&t[n]===`]`&&n++;n<t.length&&t[n]!==`]`;)n++;if(n<t.length){let i=t.slice(e,n+1);i.startsWith(`[!`)&&(i=`[^${i.slice(2)}`),r+=i,e=n}else r+=`\\[`}else r+=n.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}return r+=`$`,z(r,n?`i`:``).test(e)}async function fl(e,t,n){let r=null;n.noIgnore||(r=await $c(e.fs,e.cwd,n.noIgnoreDot,n.noIgnoreVcs,n.ignoreFiles));let i=new jc;for(let e of n.typeClear)i.clearType(e);for(let e of n.typeAdd)i.addType(e);let{files:a}=await cl(e,t.length===0?[`.`]:t,n,r,i);if(a.length===0)return{stdout:``,stderr:``,exitCode:1};if(n.quiet)return{stdout:``,stderr:``,exitCode:0};let o=n.nullSeparator?`\0`:`
287
+ `;return{stdout:a.map(e=>e+o).join(``),stderr:``,exitCode:0}}function pl(e,t){if(t.length===0)return!0;for(let n of t)if(dl(e,n,!1))return!0;return!1}async function ml(e,t,n,r){try{if(r.preprocessor&&e.exec&&pl(n.split(`/`).pop()||n,r.preprocessorGlobs)){let n=await e.exec(Zc([r.preprocessor]),{cwd:e.cwd,signal:e.signal,args:[t]});if(n.exitCode===0&&n.stdout){let e=ur(n.stdout);return{content:e,isBinary:e.slice(0,8192).includes(`\0`)}}}if(r.searchZip&&n.endsWith(`.gz`)){let n=await e.fs.readFileBuffer(t);if(rl(n))try{let e=dt(n),t=new TextDecoder().decode(e);return{content:t,isBinary:t.slice(0,8192).includes(`\0`)}}catch{return null}}let i=await e.fs.readFile(t);return{content:i,isBinary:i.slice(0,8192).includes(`\0`)}}catch{return null}}async function hl(e,t,n,r,i,a,o){let s=``,c=!1,l=[],u=0,d=0,f=0;e:for(let p=0;p<t.length;p+=50){let m=t.slice(p,p+50),h=await Promise.all(m.map(async t=>{let s=await ml(e,e.fs.resolvePath(e.cwd,t),t,r);if(!s)return null;let{content:c,isBinary:l}=s;if(f+=c.length,l&&!r.searchBinary)return null;let u=i&&!r.heading?t:``,d=Ls(c,n,{invertMatch:r.invertMatch,showLineNumbers:a,countOnly:r.count,countMatches:r.countMatches,filename:u,onlyMatching:r.onlyMatching,beforeContext:r.beforeContext,afterContext:r.afterContext,maxCount:r.maxCount,contextSeparator:r.contextSeparator,showColumn:r.column,vimgrep:r.vimgrep,showByteOffset:r.byteOffset,replace:r.replace===null?null:ec(r.replace),passthru:r.passthru,multiline:r.multiline,kResetGroup:o});return r.json&&d.matched?{file:t,result:d,content:c,isBinary:!1}:{file:t,result:d}}));for(let e of h){if(!e)continue;let{file:t,result:i}=e;if(i.matched){if(c=!0,d++,u+=i.matchCount,r.quiet&&!r.json)break e;if(r.json&&!r.quiet){let a=e.content||``;l.push(JSON.stringify({type:`begin`,data:{path:{text:t}}}));let o=a.split(`
288
+ `);n.lastIndex=0;let s=0;for(let e=0;e<o.length;e++){let i=o[e];n.lastIndex=0;let a=[];for(let e=n.exec(i);e!==null;e=n.exec(i)){let t={match:{text:e[0]},start:e.index,end:e.index+e[0].length};r.replace!==null&&(t.replacement={text:r.replace}),a.push(t),e[0].length===0&&n.lastIndex++}if(a.length>0){let n={type:`match`,data:{path:{text:t},lines:{text:`${i}
289
+ `},line_number:e+1,absolute_offset:s,submatches:a}};l.push(JSON.stringify(n))}s+=i.length+1}l.push(JSON.stringify({type:`end`,data:{path:{text:t},binary_offset:null,stats:{elapsed:{secs:0,nanos:0,human:`0s`},searches:1,searches_with_match:1,bytes_searched:a.length,bytes_printed:0,matched_lines:i.matchCount,matches:i.matchCount}}}))}else if(r.filesWithMatches){let e=r.nullSeparator?`\0`:`
290
+ `;s+=`${t}${e}`}else r.filesWithoutMatch||(r.heading&&!r.noFilename&&(s+=`${t}
291
+ `),s+=i.output)}else if(r.filesWithoutMatch){let e=r.nullSeparator?`\0`:`
292
+ `;s+=`${t}${e}`}else r.includeZero&&(r.count||r.countMatches)&&(s+=i.output)}}r.json&&(l.push(JSON.stringify({type:`summary`,data:{elapsed_total:{secs:0,nanos:0,human:`0s`},stats:{elapsed:{secs:0,nanos:0,human:`0s`},searches:t.length,searches_with_match:d,bytes_searched:f,bytes_printed:0,matched_lines:u,matches:u}}})),s=`${l.join(`
293
+ `)}
294
+ `);let p=r.quiet&&!r.json?``:s;if(r.stats&&!r.json){let e=[``,`${u} matches`,`${u} matched lines`,`${d} files contained matches`,`${t.length} files searched`,`${f} bytes searched`].join(`
295
+ `);p+=`${e}
296
+ `}let m;return m=r.filesWithoutMatch?s.length>0?0:1:+!c,{stdout:p,stderr:``,exitCode:m}}var gl=x(()=>{w(),Qc(),ks(),ic(),Mc(),nl()}),_l={};S(_l,{flagsForFuzzing:()=>bl,rgCommand:()=>yl});var vl,yl,bl,xl=x(()=>{O(),Mc(),Yc(),gl(),vl={name:`rg`,summary:`recursively search for a pattern`,usage:`rg [OPTIONS] PATTERN [PATH ...]`,description:`rg (ripgrep) recursively searches directories for a regex pattern.
297
+ Unlike grep, rg is recursive by default and respects .gitignore files.
298
+
299
+ EXAMPLES:
300
+ rg foo Search for 'foo' in current directory
301
+ rg foo src/ Search in src/ directory
302
+ rg -i foo Case-insensitive search
303
+ rg -w foo Match whole words only
304
+ rg -t js foo Search only JavaScript files
305
+ rg -g '*.ts' foo Search files matching glob
306
+ rg --hidden foo Include hidden files
307
+ rg -l foo List files with matches only`,options:[`-e, --regexp PATTERN search for PATTERN (can be used multiple times)`,`-f, --file FILE read patterns from FILE, one per line`,`-i, --ignore-case case-insensitive search`,`-s, --case-sensitive case-sensitive search (overrides smart-case)`,`-S, --smart-case smart case (default: case-insensitive unless pattern has uppercase)`,`-F, --fixed-strings treat pattern as literal string`,`-w, --word-regexp match whole words only`,`-x, --line-regexp match whole lines only`,`-v, --invert-match select non-matching lines`,`-r, --replace TEXT replace matches with TEXT`,`-c, --count print count of matching lines per file`,` --count-matches print count of individual matches per file`,`-l, --files-with-matches print only file names with matches`,` --files-without-match print file names without matches`,` --files list files that would be searched`,`-o, --only-matching print only matching parts`,`-m, --max-count NUM stop after NUM matches per file`,`-q, --quiet suppress output, exit 0 on match`,` --stats print search statistics`,`-n, --line-number print line numbers (default: on)`,`-N, --no-line-number do not print line numbers`,`-I, --no-filename suppress the prefixing of file names`,`-0, --null use NUL as filename separator`,`-b, --byte-offset show byte offset of each match`,` --column show column number of first match`,` --vimgrep show results in vimgrep format`,` --json show results in JSON Lines format`,`-A NUM print NUM lines after each match`,`-B NUM print NUM lines before each match`,`-C NUM print NUM lines before and after each match`,` --context-separator SEP separator for context groups (default: --)`,`-U, --multiline match patterns across lines`,`-z, --search-zip search in compressed files (gzip only)`,`-g, --glob GLOB include files matching GLOB`,`-t, --type TYPE only search files of TYPE (e.g., js, py, ts)`,`-T, --type-not TYPE exclude files of TYPE`,`-L, --follow follow symbolic links`,`-u, --unrestricted reduce filtering (-u: no ignore, -uu: +hidden, -uuu: +binary)`,`-a, --text search binary files as text`,` --hidden search hidden files and directories`,` --no-ignore don't respect .gitignore/.ignore files`,`-d, --max-depth NUM maximum search depth`,` --sort TYPE sort files (path, none)`,` --heading show file path above matches`,` --passthru print all lines (non-matches use - separator)`,` --include-zero include files with 0 matches in count output`,` --type-list list all available file types`,` --help display this help and exit`]},yl={name:`rg`,async execute(e,t){if(E(e))return T(vl);if(e.includes(`--type-list`))return{stdout:kc(),stderr:``,exitCode:0};let n=Gc(e);return n.success?al({ctx:t,options:n.options,paths:n.paths,explicitLineNumbers:n.explicitLineNumbers}):n.error}},bl={name:`rg`,flags:[{flag:`-i`,type:`boolean`},{flag:`-s`,type:`boolean`},{flag:`-S`,type:`boolean`},{flag:`-F`,type:`boolean`},{flag:`-w`,type:`boolean`},{flag:`-x`,type:`boolean`},{flag:`-v`,type:`boolean`},{flag:`-c`,type:`boolean`},{flag:`-l`,type:`boolean`},{flag:`-o`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-N`,type:`boolean`},{flag:`--hidden`,type:`boolean`},{flag:`--no-ignore`,type:`boolean`},{flag:`-m`,type:`value`,valueHint:`number`},{flag:`-A`,type:`value`,valueHint:`number`},{flag:`-B`,type:`value`,valueHint:`number`},{flag:`-C`,type:`value`,valueHint:`number`},{flag:`-g`,type:`value`,valueHint:`pattern`},{flag:`-t`,type:`value`,valueHint:`string`},{flag:`-T`,type:`value`,valueHint:`string`}],needsArgs:!0}});function Sl(e,t,n){if(!e||Zn.isInSandboxedContext())return;let r=`${t} ${n} attempted outside defense context`;throw new C(r,{timestamp:Date.now(),type:`missing_defense_context`,message:r,path:`DefenseInDepthBox.context`,stack:Error().stack,executionId:Zn.getCurrentExecutionId()})}async function Cl(e,t,n,r){Sl(e,t,`${n} (pre-await)`);let i=await r();return Sl(e,t,`${n} (post-await)`),i}var wl=x(()=>{Qn()});function Tl(e){let t=``,n=0,r=!1;for(;n<e.length;){if(e[n]===`[`&&!r){if(e[n+1]===`[`&&e[n+2]===`:`){let r=e.indexOf(`:]]`,n+3);if(r!==-1){let i=e.slice(n+3,r),a=Ol.get(i);if(a){t+=`[${a}]`,n=r+3;continue}}}if(e[n+1]===`^`&&e[n+2]===`[`&&e[n+3]===`:`){let r=e.indexOf(`:]]`,n+4);if(r!==-1){let i=e.slice(n+4,r),a=Ol.get(i);if(a){t+=`[^${a}]`,n=r+3;continue}}}t+=`[`,n++,r=!0,n<e.length&&e[n]===`^`&&(t+=`^`,n++),n<e.length&&e[n]===`]`&&(t+=`\\]`,n++);continue}if(r){if(e[n]===`]`){t+=`]`,n++,r=!1;continue}if(e[n]===`[`&&e[n+1]===`:`){let r=e.indexOf(`:]`,n+2);if(r!==-1){let i=e.slice(n+2,r),a=Ol.get(i);if(a){t+=a,n=r+2;continue}}}if(e[n]===`\\`&&n+1<e.length){t+=e[n]+e[n+1],n+=2;continue}t+=e[n],n++;continue}if(e[n]===`\\`&&n+1<e.length){let r=e[n+1];if(r===`+`||r===`?`||r===`|`){t+=r,n+=2;continue}if(r===`(`||r===`)`){t+=r,n+=2;continue}if(r===`{`||r===`}`){t+=r,n+=2;continue}if(r===`t`){t+=` `,n+=2;continue}if(r===`n`){t+=`
308
+ `,n+=2;continue}if(r===`r`){t+=`\r`,n+=2;continue}t+=e[n]+r,n+=2;continue}if(e[n]===`+`||e[n]===`?`||e[n]===`|`||e[n]===`(`||e[n]===`)`){t+=`\\${e[n]}`,n++;continue}if(e[n]===`^`&&!(t===``||t.endsWith(`(`))){t+=`\\^`,n++;continue}if(e[n]===`$`){let r=n===e.length-1,i=n+2<e.length&&e[n+1]===`\\`&&e[n+2]===`)`;if(!r&&!i){t+=`\\$`,n++;continue}}t+=e[n],n++}return t}function El(e){let t=``,n=!1;for(let r=0;r<e.length;r++)e[r]===`[`&&!n?(n=!0,t+=`[`,r++,r<e.length&&e[r]===`^`&&(t+=`^`,r++),r<e.length&&e[r]===`]`&&(t+=`]`,r++),r--):e[r]===`]`&&n?(n=!1,t+=`]`):!n&&e[r]===`{`&&e[r+1]===`,`?(t+=`{0,`,r++):t+=e[r];return t}function Dl(e){let t=``;for(let n=0;n<e.length;n++){let r=e[n],i=r.charCodeAt(0);r===`\\`?t+=`\\\\`:r===` `?t+=`\\t`:r===`
309
+ `?t+=`$
310
+ `:r===`\r`?t+=`\\r`:r===`\x07`?t+=`\\a`:r===`\b`?t+=`\\b`:r===`\f`?t+=`\\f`:r===`\v`?t+=`\\v`:i<32||i>=127?t+=`\\${i.toString(8).padStart(3,`0`)}`:t+=r}return`${t}$`}var Ol,kl=x(()=>{Ol=new Map([[`alnum`,`a-zA-Z0-9`],[`alpha`,`a-zA-Z`],[`ascii`,`\\x00-\\x7F`],[`blank`,` \\t`],[`cntrl`,`\\x00-\\x1F\\x7F`],[`digit`,`0-9`],[`graph`,`!-~`],[`lower`,`a-z`],[`print`,` -~`],[`punct`,"!-/:-@\\[-`{-~"],[`space`,` \\t\\n\\r\\f\\v`],[`upper`,`A-Z`],[`word`,`a-zA-Z0-9_`],[`xdigit`,`0-9A-Fa-f`]])});function Al(e,t,n){return{patternSpace:``,holdSpace:``,lineNumber:0,totalLines:e,deleted:!1,printed:!1,quit:!1,quitSilent:!1,exitCode:void 0,errorMessage:void 0,appendBuffer:[],substitutionMade:!1,lineNumberOutput:[],nCommandOutput:[],restartCycle:!1,inDRestartedCycle:!1,currentFilename:t,pendingFileReads:[],pendingFileWrites:[],rangeStates:n||new Map,linesConsumedInCycle:0}}function jl(e){return typeof e==`object`&&`first`in e&&`step`in e}function Ml(e){return typeof e==`object`&&`offset`in e}function Nl(e,t,n,r,i){if(e===`$`)return t===n;if(typeof e==`number`)return t===e;if(jl(e)){let{first:n,step:r}=e;return r===0?t===n:(t-n)%r===0&&t>=n}if(typeof e==`object`&&`pattern`in e)try{let t=e.pattern;return t===``&&i?.lastPattern?t=i.lastPattern:t!==``&&i&&(i.lastPattern=t),z(El(Tl(t))).test(r)}catch{return!1}return!1}function Pl(e){let t=e=>e===void 0?`undefined`:e===`$`?`$`:typeof e==`number`?String(e):`pattern`in e?`/${e.pattern}/`:`first`in e?`${e.first}~${e.step}`:`unknown`;return`${t(e.start)},${t(e.end)}`}function Fl(e,t,n,r,i,a){if(!e||!e.start&&!e.end)return!0;let o=e.start,s=e.end;if(o!==void 0&&s===void 0)return Nl(o,t,n,r,a);if(o!==void 0&&s!==void 0){let c=typeof o==`object`&&`pattern`in o,l=typeof s==`object`&&`pattern`in s,u=Ml(s);if(u&&i){let c=Pl(e),l=i.get(c);return l||(l={active:!1},i.set(c,l)),l.active?(t>=(l.startLine||t)+s.offset&&(l.active=!1,i.set(c,l)),!0):Nl(o,t,n,r,a)?(l.active=!0,l.startLine=t,i.set(c,l),s.offset===0&&(l.active=!1,i.set(c,l)),!0):!1}if(!c&&!l&&!u){let r=typeof o==`number`?o:o===`$`?n:1,a=typeof s==`number`?s:n;if(r<=a)return t>=r&&t<=a;if(i){let n=Pl(e),a=i.get(n);return a||(a={active:!1},i.set(n,a)),!a.completed&&t>=r?(a.completed=!0,i.set(n,a),!0):!1}return!1}if(i){let c=Pl(e),l=i.get(c);if(l||(l={active:!1},i.set(c,l)),l.active)return Nl(s,t,n,r,a)&&(l.active=!1,typeof o==`number`&&(l.completed=!0),i.set(c,l)),!0;{if(l.completed)return!1;let e=!1;return e=typeof o==`number`?t>=o:Nl(o,t,n,r,a),e?(l.active=!0,l.startLine=t,i.set(c,l),Nl(s,t,n,r,a)&&(l.active=!1,typeof o==`number`&&(l.completed=!0),i.set(c,l)),!0):!1}}return Nl(o,t,n,r,a)}return!0}function Il(e,t,n,r,i,a){let o=Fl(e,t,n,r,i,a);return e?.negated?!o:o}function Ll(e,t,n,r){let i=``,a=0,o=!1;for(;a<=e.length;){t.lastIndex=a;let n=t.exec(e);if(!n){i+=e.slice(a);break}if(n.index!==a){i+=e.slice(a,n.index),a=n.index,o=!1;continue}let s=n[0],c=n.slice(1);if(o&&s.length===0){if(a<e.length)i+=e[a],a++;else break;o=!1;continue}if(i+=r(s,c),o=!1,s.length===0)if(a<e.length)i+=e[a],a++;else break;else a+=s.length,o=!0}return i}function Rl(e,t,n){let r=``,i=0;for(;i<e.length;){if(e[i]===`\\`&&i+1<e.length){let a=e[i+1];if(a===`&`){r+=`&`,i+=2;continue}if(a===`n`){r+=`
311
+ `,i+=2;continue}if(a===`t`){r+=` `,i+=2;continue}if(a===`r`){r+=`\r`,i+=2;continue}let o=parseInt(a,10);if(o===0){r+=t,i+=2;continue}if(o>=1&&o<=9){r+=n[o-1]||``,i+=2;continue}r+=a,i+=2;continue}if(e[i]===`&`){r+=t,i++;continue}r+=e[i],i++}return r}function zl(e,t,n){if(t>0&&e.length>t)throw new k(`sed: ${n} size limit exceeded (${t} bytes)`,`string_length`)}function Bl(e,t,n){let{lineNumber:r,totalLines:i,patternSpace:a}=t;if(e.type===`label`){t.coverage?.hit(`sed:cmd:${e.type}`);return}if(Il(e.address,r,i,a,t.rangeStates,t))switch(t.coverage?.hit(`sed:cmd:${e.type}`),e.type){case`substitute`:{let n=e,r=``;n.global&&(r+=`g`),n.ignoreCase&&(r+=`i`);let i=n.pattern;i===``&&t.lastPattern?i=t.lastPattern:i!==``&&(t.lastPattern=i);let a=El(n.extendedRegex?i:Tl(i));try{let e=z(a,r),i=e.test(t.patternSpace);if(e.lastIndex=0,i){if(t.substitutionMade=!0,n.nthOccurrence&&n.nthOccurrence>0&&!n.global){let e=0,r=n.nthOccurrence;t.patternSpace=z(a,`g${n.ignoreCase?`i`:``}`).replace(t.patternSpace,(t,...i)=>{if(e++,e===r){let e=i.slice(0,-2);return Rl(n.replacement,t,e)}return t})}else if(n.global){let e=z(a,`g${n.ignoreCase?`i`:``}`);t.patternSpace=Ll(t.patternSpace,e,n.replacement,(e,t)=>Rl(n.replacement,e,t))}else t.patternSpace=e.replace(t.patternSpace,(e,...t)=>{let r=t.slice(0,-2);return Rl(n.replacement,e,r)});n.printOnMatch&&t.lineNumberOutput.push(t.patternSpace)}}catch{}break}case`print`:t.lineNumberOutput.push(t.patternSpace);break;case`printFirstLine`:{let e=t.patternSpace.indexOf(`
312
+ `);e===-1?t.lineNumberOutput.push(t.patternSpace):t.lineNumberOutput.push(t.patternSpace.slice(0,e));break}case`delete`:t.deleted=!0;break;case`deleteFirstLine`:{let e=t.patternSpace.indexOf(`
313
+ `);e===-1?t.deleted=!0:(t.patternSpace=t.patternSpace.slice(e+1),t.restartCycle=!0,t.inDRestartedCycle=!0);break}case`zap`:t.patternSpace=``;break;case`append`:t.appendBuffer.push(e.text);break;case`insert`:t.appendBuffer.unshift(`__INSERT__${e.text}`);break;case`change`:t.deleted=!0,t.changedText=e.text;break;case`hold`:t.holdSpace=t.patternSpace;break;case`holdAppend`:t.holdSpace?t.holdSpace+=`
314
+ ${t.patternSpace}`:t.holdSpace=t.patternSpace,zl(t.holdSpace,n?.maxStringLength??0,`hold space`);break;case`get`:t.patternSpace=t.holdSpace;break;case`getAppend`:t.patternSpace+=`
315
+ ${t.holdSpace}`,zl(t.patternSpace,n?.maxStringLength??0,`pattern space`);break;case`exchange`:{let e=t.patternSpace;t.patternSpace=t.holdSpace,t.holdSpace=e;break}case`next`:t.printed=!0;break;case`quit`:t.quit=!0,e.exitCode!==void 0&&(t.exitCode=e.exitCode);break;case`quitSilent`:t.quit=!0,t.quitSilent=!0,e.exitCode!==void 0&&(t.exitCode=e.exitCode);break;case`list`:{let e=Dl(t.patternSpace);t.lineNumberOutput.push(e);break}case`printFilename`:t.currentFilename&&t.lineNumberOutput.push(t.currentFilename);break;case`version`:{let n=[4,8,0];if(e.minVersion){let r=e.minVersion.split(`.`),i=[],a=!1;for(let n of r){let r=parseInt(n,10);if(Number.isNaN(r)||r<0){t.quit=!0,t.exitCode=1,t.errorMessage=`sed: invalid version string: ${e.minVersion}`,a=!0;break}i.push(r)}if(!a){for(;i.length<3;)i.push(0);for(let r=0;r<3;r++){if(i[r]>n[r]){t.quit=!0,t.exitCode=1,t.errorMessage=`sed: this is not GNU sed version ${e.minVersion}`;break}if(i[r]<n[r])break}}}break}case`readFile`:t.pendingFileReads.push({filename:e.filename,wholeFile:!0});break;case`readFileLine`:t.pendingFileReads.push({filename:e.filename,wholeFile:!1});break;case`writeFile`:t.pendingFileWrites.push({filename:e.filename,content:`${t.patternSpace}
316
+ `});break;case`writeFirstLine`:{let n=t.patternSpace.indexOf(`
317
+ `),r=n===-1?t.patternSpace:t.patternSpace.slice(0,n);t.pendingFileWrites.push({filename:e.filename,content:`${r}
318
+ `});break}case`execute`:t.errorMessage=`sed: e command (shell execution) is not supported in sandboxed environment`,t.quit=!0;break;case`transliterate`:t.patternSpace=Vl(t.patternSpace,e);break;case`lineNumber`:t.lineNumberOutput.push(String(t.lineNumber));break;case`branch`:break;case`branchOnSubst`:break;case`branchOnNoSubst`:break;case`group`:break}}function Vl(e,t){let n=``;for(let r of e){let e=t.source.indexOf(r);e===-1?n+=r:n+=t.dest[e]}return n}function Hl(e,t,n,r){let i=new Map;for(let t=0;t<e.length;t++){let n=e[t];n.type===`label`&&i.set(n.name,t)}let a=r?.maxIterations??Ul,o=0,s=0;for(;s<e.length;){if(o++,o>a)throw new k(`sed: command execution exceeded maximum iterations (${a})`,`iterations`);if(t.deleted||t.quit||t.quitSilent||t.restartCycle)break;let c=e[s];if(c.type===`next`){if(Il(c.address,t.lineNumber,t.totalLines,t.patternSpace,t.rangeStates,t))if(t.coverage?.hit(`sed:cmd:next`),t.nCommandOutput.push(t.patternSpace),n&&n.currentLineIndex+t.linesConsumedInCycle+1<n.lines.length)t.linesConsumedInCycle++,t.patternSpace=n.lines[n.currentLineIndex+t.linesConsumedInCycle],t.lineNumber=n.currentLineIndex+t.linesConsumedInCycle+1,t.substitutionMade=!1;else{t.quit=!0,t.deleted=!0;break}s++;continue}if(c.type===`nextAppend`){if(Il(c.address,t.lineNumber,t.totalLines,t.patternSpace,t.rangeStates,t))if(t.coverage?.hit(`sed:cmd:nextAppend`),n&&n.currentLineIndex+t.linesConsumedInCycle+1<n.lines.length){t.linesConsumedInCycle++;let e=n.lines[n.currentLineIndex+t.linesConsumedInCycle];t.patternSpace+=`
319
+ ${e}`,t.lineNumber=n.currentLineIndex+t.linesConsumedInCycle+1}else{t.quit=!0;break}s++;continue}if(c.type===`branch`){let e=c;if(Il(e.address,t.lineNumber,t.totalLines,t.patternSpace,t.rangeStates,t)){if(t.coverage?.hit(`sed:cmd:branch`),e.label){let n=i.get(e.label);if(n!==void 0){s=n;continue}t.branchRequest=e.label;break}break}s++;continue}if(c.type===`branchOnSubst`){let e=c;if(Il(e.address,t.lineNumber,t.totalLines,t.patternSpace,t.rangeStates,t)&&(t.coverage?.hit(`sed:cmd:branchOnSubst`),t.substitutionMade)){if(t.substitutionMade=!1,e.label){let n=i.get(e.label);if(n!==void 0){s=n;continue}t.branchRequest=e.label;break}break}s++;continue}if(c.type===`branchOnNoSubst`){let e=c;if(Il(e.address,t.lineNumber,t.totalLines,t.patternSpace,t.rangeStates,t)&&(t.coverage?.hit(`sed:cmd:branchOnNoSubst`),!t.substitutionMade)){if(e.label){let n=i.get(e.label);if(n!==void 0){s=n;continue}t.branchRequest=e.label;break}break}s++;continue}if(c.type===`group`){let e=c;if(Il(e.address,t.lineNumber,t.totalLines,t.patternSpace,t.rangeStates,t)&&(t.coverage?.hit(`sed:cmd:group`),Hl(e.commands,t,n,r),t.branchRequest)){let e=i.get(t.branchRequest);if(e!==void 0){t.branchRequest=void 0,s=e;continue}break}s++;continue}Bl(c,t,r),s++}return t.linesConsumedInCycle}var Ul,Wl=x(()=>{A(),ks(),kl(),Ul=1e4}),B,Gl,Kl=x(()=>{(function(e){e.NUMBER=`NUMBER`,e.DOLLAR=`DOLLAR`,e.PATTERN=`PATTERN`,e.STEP=`STEP`,e.RELATIVE_OFFSET=`RELATIVE_OFFSET`,e.LBRACE=`LBRACE`,e.RBRACE=`RBRACE`,e.SEMICOLON=`SEMICOLON`,e.NEWLINE=`NEWLINE`,e.COMMA=`COMMA`,e.NEGATION=`NEGATION`,e.COMMAND=`COMMAND`,e.SUBSTITUTE=`SUBSTITUTE`,e.TRANSLITERATE=`TRANSLITERATE`,e.LABEL_DEF=`LABEL_DEF`,e.BRANCH=`BRANCH`,e.BRANCH_ON_SUBST=`BRANCH_ON_SUBST`,e.BRANCH_ON_NO_SUBST=`BRANCH_ON_NO_SUBST`,e.TEXT_CMD=`TEXT_CMD`,e.FILE_READ=`FILE_READ`,e.FILE_READ_LINE=`FILE_READ_LINE`,e.FILE_WRITE=`FILE_WRITE`,e.FILE_WRITE_LINE=`FILE_WRITE_LINE`,e.EXECUTE=`EXECUTE`,e.VERSION=`VERSION`,e.EOF=`EOF`,e.ERROR=`ERROR`})(B||={}),Gl=class{input;pos=0;line=1;column=1;constructor(e){this.input=e}tokenize(){let e=[];for(;this.pos<this.input.length;){let t=this.nextToken();t&&e.push(t)}return e.push(this.makeToken(B.EOF,``)),e}makeToken(e,t,n){return{type:e,value:t,line:this.line,column:this.column,...n}}peek(e=0){return this.input[this.pos+e]||``}advance(){let e=this.input[this.pos++]||``;return e===`
320
+ `?(this.line++,this.column=1):this.column++,e}readEscapedString(e){let t=``;for(;this.pos<this.input.length&&this.peek()!==e;)if(this.peek()===`\\`){this.advance();let e=this.advance();e===`n`?t+=`
321
+ `:e===`t`?t+=` `:t+=e}else{if(this.peek()===`
322
+ `)return null;t+=this.advance()}return t}skipWhitespace(){for(;this.pos<this.input.length;){let e=this.peek();if(e===` `||e===` `||e===`\r`)this.advance();else if(e===`#`)for(;this.pos<this.input.length&&this.peek()!==`
323
+ `;)this.advance();else break}}nextToken(){if(this.skipWhitespace(),this.pos>=this.input.length)return null;let e=this.line,t=this.column,n=this.peek();return n===`
324
+ `?(this.advance(),{type:B.NEWLINE,value:`
325
+ `,line:e,column:t}):n===`;`?(this.advance(),{type:B.SEMICOLON,value:`;`,line:e,column:t}):n===`{`?(this.advance(),{type:B.LBRACE,value:`{`,line:e,column:t}):n===`}`?(this.advance(),{type:B.RBRACE,value:`}`,line:e,column:t}):n===`,`?(this.advance(),{type:B.COMMA,value:`,`,line:e,column:t}):n===`!`?(this.advance(),{type:B.NEGATION,value:`!`,line:e,column:t}):n===`$`?(this.advance(),{type:B.DOLLAR,value:`$`,line:e,column:t}):this.isDigit(n)?this.readNumber():n===`+`&&this.isDigit(this.input[this.pos+1]||``)?this.readRelativeOffset():n===`/`?this.readPattern():n===`:`?this.readLabelDef():this.readCommand()}readNumber(){let e=this.line,t=this.column,n=``;for(;this.isDigit(this.peek());)n+=this.advance();if(this.peek()===`~`){this.advance();let r=``;for(;this.isDigit(this.peek());)r+=this.advance();let i=parseInt(n,10),a=parseInt(r,10)||0;return{type:B.STEP,value:`${i}~${a}`,first:i,step:a,line:e,column:t}}return{type:B.NUMBER,value:parseInt(n,10),line:e,column:t}}readRelativeOffset(){let e=this.line,t=this.column;this.advance();let n=``;for(;this.isDigit(this.peek());)n+=this.advance();let r=parseInt(n,10)||0;return{type:B.RELATIVE_OFFSET,value:`+${r}`,offset:r,line:e,column:t}}readPattern(){let e=this.line,t=this.column;this.advance();let n=``,r=!1;for(;this.pos<this.input.length;){let e=this.peek();if(e===`/`&&!r)break;if(e===`\\`)n+=this.advance(),this.pos<this.input.length&&this.peek()!==`
326
+ `&&(n+=this.advance());else{if(e===`
327
+ `)break;e===`[`&&!r?(r=!0,n+=this.advance(),this.peek()===`^`&&(n+=this.advance()),this.peek()===`]`&&(n+=this.advance())):(e===`]`&&r&&(r=!1),n+=this.advance())}}return this.peek()===`/`&&this.advance(),{type:B.PATTERN,value:n,pattern:n,line:e,column:t}}readLabelDef(){let e=this.line,t=this.column;for(this.advance();this.peek()===` `||this.peek()===` `;)this.advance();let n=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===` `||e===` `||e===`
328
+ `||e===`;`||e===`}`||e===`{`)break;n+=this.advance()}return{type:B.LABEL_DEF,value:n,label:n,line:e,column:t}}readCommand(){let e=this.line,t=this.column,n=this.advance();switch(n){case`s`:return this.readSubstitute(e,t);case`y`:return this.readTransliterate(e,t);case`a`:case`i`:case`c`:return this.readTextCommand(n,e,t);case`b`:return this.readBranch(B.BRANCH,`b`,e,t);case`t`:return this.readBranch(B.BRANCH_ON_SUBST,`t`,e,t);case`T`:return this.readBranch(B.BRANCH_ON_NO_SUBST,`T`,e,t);case`r`:return this.readFileCommand(B.FILE_READ,`r`,e,t);case`R`:return this.readFileCommand(B.FILE_READ_LINE,`R`,e,t);case`w`:return this.readFileCommand(B.FILE_WRITE,`w`,e,t);case`W`:return this.readFileCommand(B.FILE_WRITE_LINE,`W`,e,t);case`e`:return this.readExecute(e,t);case`p`:case`P`:case`d`:case`D`:case`h`:case`H`:case`g`:case`G`:case`x`:case`n`:case`N`:case`q`:case`Q`:case`z`:case`=`:case`l`:case`F`:return{type:B.COMMAND,value:n,line:e,column:t};case`v`:return this.readVersion(e,t);default:return{type:B.ERROR,value:n,line:e,column:t}}}readSubstitute(e,t){let n=this.advance();if(!n||n===`
329
+ `)return{type:B.ERROR,value:`s`,line:e,column:t};let r=``,i=!1;for(;this.pos<this.input.length;){let e=this.peek();if(e===n&&!i)break;if(e===`\\`)this.advance(),this.pos<this.input.length&&this.peek()!==`
330
+ `?(this.peek()===n&&!i||(r+=`\\`),r+=this.advance()):r+=`\\`;else{if(e===`
331
+ `)break;e===`[`&&!i?(i=!0,r+=this.advance(),this.peek()===`^`&&(r+=this.advance()),this.peek()===`]`&&(r+=this.advance())):(e===`]`&&i&&(i=!1),r+=this.advance())}}if(this.peek()!==n)return{type:B.ERROR,value:`unterminated substitution pattern`,line:e,column:t};this.advance();let a=``;for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()===`\\`)if(this.advance(),this.pos<this.input.length){let e=this.peek();e===`\\`?(this.advance(),this.pos<this.input.length&&this.peek()===`
332
+ `?(a+=`
333
+ `,this.advance()):a+=`\\`):e===`
334
+ `?(a+=`
335
+ `,this.advance()):a+=`\\${this.advance()}`}else a+=`\\`;else{if(this.peek()===`
336
+ `)break;a+=this.advance()}this.peek()===n&&this.advance();let o=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===`g`||e===`i`||e===`p`||e===`I`||this.isDigit(e))o+=this.advance();else break}return{type:B.SUBSTITUTE,value:`s${n}${r}${n}${a}${n}${o}`,pattern:r,replacement:a,flags:o,line:e,column:t}}readTransliterate(e,t){let n=this.advance();if(!n||n===`
337
+ `)return{type:B.ERROR,value:`y`,line:e,column:t};let r=this.readEscapedString(n);if(r===null||this.peek()!==n)return{type:B.ERROR,value:`unterminated transliteration source`,line:e,column:t};this.advance();let i=this.readEscapedString(n);if(i===null||this.peek()!==n)return{type:B.ERROR,value:`unterminated transliteration dest`,line:e,column:t};this.advance();let a=this.peek();for(;a===` `||a===` `;)this.advance(),a=this.peek();return a!==``&&a!==`;`&&a!==`
338
+ `&&a!==`}`?{type:B.ERROR,value:`extra text at the end of a transform command`,line:e,column:t}:{type:B.TRANSLITERATE,value:`y${n}${r}${n}${i}${n}`,source:r,dest:i,line:e,column:t}}readTextCommand(e,t,n){let r=!1;this.peek()===`\\`&&this.pos+1<this.input.length&&(this.input[this.pos+1]===`
339
+ `||this.input[this.pos+1]===` `||this.input[this.pos+1]===` `)&&(r=!0,this.advance()),(this.peek()===` `||this.peek()===` `)&&this.advance(),this.peek()===`\\`&&this.pos+1<this.input.length&&(this.input[this.pos+1]===` `||this.input[this.pos+1]===` `)&&this.advance(),r&&this.peek()===`
340
+ `&&this.advance();let i=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===`
341
+ `){if(i.endsWith(`\\`)){i=`${i.slice(0,-1)}
342
+ `,this.advance();continue}break}if(e===`\\`&&this.pos+1<this.input.length){let e=this.input[this.pos+1];if(e===`n`){i+=`
343
+ `,this.advance(),this.advance();continue}if(e===`t`){i+=` `,this.advance(),this.advance();continue}if(e===`r`){i+=`\r`,this.advance(),this.advance();continue}}i+=this.advance()}return{type:B.TEXT_CMD,value:e,text:i,line:t,column:n}}readBranch(e,t,n,r){for(;this.peek()===` `||this.peek()===` `;)this.advance();let i=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===` `||e===` `||e===`
344
+ `||e===`;`||e===`}`||e===`{`)break;i+=this.advance()}return{type:e,value:t,label:i||void 0,line:n,column:r}}readVersion(e,t){for(;this.peek()===` `||this.peek()===` `;)this.advance();let n=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===` `||e===` `||e===`
345
+ `||e===`;`||e===`}`||e===`{`)break;n+=this.advance()}return{type:B.VERSION,value:`v`,label:n||void 0,line:e,column:t}}readFileCommand(e,t,n,r){for(;this.peek()===` `||this.peek()===` `;)this.advance();let i=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===`
346
+ `||e===`;`)break;i+=this.advance()}return{type:e,value:t,filename:i.trim(),line:n,column:r}}readExecute(e,t){for(;this.peek()===` `||this.peek()===` `;)this.advance();let n=``;for(;this.pos<this.input.length;){let e=this.peek();if(e===`
347
+ `||e===`;`)break;n+=this.advance()}return{type:B.EXECUTE,value:`e`,command:n.trim()||void 0,line:e,column:t}}isDigit(e){return e>=`0`&&e<=`9`}}});function ql(e,t=!1){let n=!1,r=!1,i=[];for(let t=0;t<e.length;t++){let a=e[t];if(i.length===0&&t===0){let e=a.match(/^#([nr]+)\s*(?:\n|$)/i);if(e){let t=e[1].toLowerCase();t.includes(`n`)&&(n=!0),t.includes(`r`)&&(r=!0),a=a.slice(e[0].length)}}if(i.length>0&&i[i.length-1].endsWith(`\\`)){let e=i[i.length-1];i[i.length-1]=`${e}
348
+ ${a}`}else i.push(a)}let a=i.join(`
349
+ `),o=new Zl([a],t||r).parse();if(!o.error&&o.commands.length>0){let e=Jl(o.commands);if(e)return{commands:[],error:e,silentMode:n,extendedRegexMode:r}}return{...o,silentMode:n,extendedRegexMode:r}}function Jl(e){let t=new Set;Yl(e,t);let n=Xl(e,t);if(n)return`undefined label '${n}'`}function Yl(e,t){for(let n of e)n.type===`label`?t.add(n.name):n.type===`group`&&Yl(n.commands,t)}function Xl(e,t){for(let n of e){if((n.type===`branch`||n.type===`branchOnSubst`||n.type===`branchOnNoSubst`)&&n.label&&!t.has(n.label))return n.label;if(n.type===`group`){let e=Xl(n.commands,t);if(e)return e}}}var Zl,Ql=x(()=>{Kl(),Zl=class{scripts;tokens=[];pos=0;extendedRegex=!1;constructor(e,t=!1){this.scripts=e,this.extendedRegex=t}parse(){let e=[];for(let t of this.scripts){let n=new Gl(t);for(this.tokens=n.tokenize(),this.pos=0;!this.isAtEnd();){if(this.check(B.NEWLINE)||this.check(B.SEMICOLON)){this.advance();continue}let t=this.pos,n=this.parseCommand();if(n.error)return{commands:[],error:n.error};if(n.command&&e.push(n.command),this.pos===t&&!this.isAtEnd())return{commands:[],error:`unknown command: '${this.peek()?.value??this.peek()?.type}'`}}}return{commands:e}}parseCommand(){let e=this.parseAddressRange();if(e?.error)return{command:null,error:e.error};let t=e?.address;for(this.check(B.NEGATION)&&(this.advance(),t&&(t.negated=!0));this.check(B.NEWLINE)||this.check(B.SEMICOLON);)this.advance();if(this.isAtEnd())return t&&(t.start!==void 0||t.end!==void 0)?{command:null,error:`command expected`}:{command:null};let n=this.peek();switch(n.type){case B.COMMAND:return this.parseSimpleCommand(n,t);case B.SUBSTITUTE:return this.parseSubstituteFromToken(n,t);case B.TRANSLITERATE:return this.parseTransliterateFromToken(n,t);case B.LABEL_DEF:return this.advance(),{command:{type:`label`,name:n.label||``}};case B.BRANCH:return this.advance(),{command:{type:`branch`,address:t,label:n.label}};case B.BRANCH_ON_SUBST:return this.advance(),{command:{type:`branchOnSubst`,address:t,label:n.label}};case B.BRANCH_ON_NO_SUBST:return this.advance(),{command:{type:`branchOnNoSubst`,address:t,label:n.label}};case B.TEXT_CMD:return this.advance(),this.parseTextCommand(n,t);case B.FILE_READ:return this.advance(),{command:{type:`readFile`,address:t,filename:n.filename||``}};case B.FILE_READ_LINE:return this.advance(),{command:{type:`readFileLine`,address:t,filename:n.filename||``}};case B.FILE_WRITE:return this.advance(),{command:{type:`writeFile`,address:t,filename:n.filename||``}};case B.FILE_WRITE_LINE:return this.advance(),{command:{type:`writeFirstLine`,address:t,filename:n.filename||``}};case B.EXECUTE:return this.advance(),{command:{type:`execute`,address:t,command:n.command}};case B.VERSION:return this.advance(),{command:{type:`version`,address:t,minVersion:n.label}};case B.LBRACE:return this.parseGroup(t);case B.RBRACE:return{command:null};case B.ERROR:return{command:null,error:`invalid command: ${n.value}`};default:return t&&(t.start!==void 0||t.end!==void 0)?{command:null,error:`command expected`}:{command:null}}}parseSimpleCommand(e,t){this.advance();let n=e.value;switch(n){case`p`:return{command:{type:`print`,address:t}};case`P`:return{command:{type:`printFirstLine`,address:t}};case`d`:return{command:{type:`delete`,address:t}};case`D`:return{command:{type:`deleteFirstLine`,address:t}};case`h`:return{command:{type:`hold`,address:t}};case`H`:return{command:{type:`holdAppend`,address:t}};case`g`:return{command:{type:`get`,address:t}};case`G`:return{command:{type:`getAppend`,address:t}};case`x`:return{command:{type:`exchange`,address:t}};case`n`:return{command:{type:`next`,address:t}};case`N`:return{command:{type:`nextAppend`,address:t}};case`q`:return{command:{type:`quit`,address:t}};case`Q`:return{command:{type:`quitSilent`,address:t}};case`z`:return{command:{type:`zap`,address:t}};case`=`:return{command:{type:`lineNumber`,address:t}};case`l`:return{command:{type:`list`,address:t}};case`F`:return{command:{type:`printFilename`,address:t}};default:return{command:null,error:`unknown command: ${n}`}}}parseSubstituteFromToken(e,t){this.advance();let n=e.flags||``,r,i=n.match(/(\d+)/);return i&&(r=parseInt(i[1],10)),{command:{type:`substitute`,address:t,pattern:e.pattern||``,replacement:e.replacement||``,global:n.includes(`g`),ignoreCase:n.includes(`i`)||n.includes(`I`),printOnMatch:n.includes(`p`),nthOccurrence:r,extendedRegex:this.extendedRegex}}}parseTransliterateFromToken(e,t){this.advance();let n=e.source||``,r=e.dest||``;return n.length===r.length?{command:{type:`transliterate`,address:t,source:n,dest:r}}:{command:null,error:`transliteration sets must have same length`}}parseTextCommand(e,t){let n=e.value,r=e.text||``;switch(n){case`a`:return{command:{type:`append`,address:t,text:r}};case`i`:return{command:{type:`insert`,address:t,text:r}};case`c`:return{command:{type:`change`,address:t,text:r}};default:return{command:null,error:`unknown text command: ${n}`}}}parseGroup(e){this.advance();let t=[];for(;!this.isAtEnd()&&!this.check(B.RBRACE);){if(this.check(B.NEWLINE)||this.check(B.SEMICOLON)){this.advance();continue}let e=this.pos,n=this.parseCommand();if(n.error)return{command:null,error:n.error};if(n.command&&t.push(n.command),this.pos===e&&!this.isAtEnd())return{command:null,error:`unknown command: '${this.peek()?.value??this.peek()?.type}'`}}return this.check(B.RBRACE)?(this.advance(),{command:{type:`group`,address:e,commands:t}}):{command:null,error:`unmatched brace in grouped commands`}}parseAddressRange(){if(this.check(B.COMMA))return{error:`expected context address`};let e=this.parseAddress();if(e===void 0)return;let t;if(this.check(B.RELATIVE_OFFSET))t={offset:this.advance().offset||0};else if(this.check(B.COMMA)&&(this.advance(),t=this.parseAddress(),t===void 0))return{error:`expected context address`};return{address:{start:e,end:t}}}parseAddress(){let e=this.peek();switch(e.type){case B.NUMBER:return this.advance(),e.value;case B.DOLLAR:return this.advance(),`$`;case B.PATTERN:return this.advance(),{pattern:e.pattern||e.value};case B.STEP:return this.advance(),{first:e.first||0,step:e.step||0};case B.RELATIVE_OFFSET:return this.advance(),{offset:e.offset||0};default:return}}peek(){return this.tokens[this.pos]||{type:B.EOF,value:``,line:0,column:0}}advance(){return this.isAtEnd()||this.pos++,this.tokens[this.pos-1]}check(e){return this.peek().type===e}isAtEnd(){return this.peek().type===B.EOF}}}),$l={};S($l,{flagsForFuzzing:()=>ru,sedCommand:()=>nu});async function eu(e,t,n,r={}){let{limits:i,filename:a,fs:o,cwd:s,coverage:c,requireDefenseContext:l}=r;Sl(l,`sed`,`processing entry`);let u=(e,t)=>Cl(l,`sed`,e,t),d=e.endsWith(`
350
+ `),f=e.split(`
351
+ `);f.length>0&&f[f.length-1]===``&&f.pop();let p=f.length,m=``,h,g=!1,_=i?.maxStringLength??0,v=e=>{if(m+=e,_>0&&m.length>_)throw new k(`sed: output size limit exceeded (${_} bytes)`,`string_length`)},y=``,ee,te=new Map,ne=new Map,re=new Map,ie=new Map,b=i?{maxIterations:i.maxSedIterations,maxStringLength:_}:void 0;for(let e=0;e<f.length;e++){let r={...Al(p,a,te),patternSpace:f[e],holdSpace:y,lastPattern:ee,lineNumber:e+1,totalLines:p,substitutionMade:!1,coverage:c},i={lines:f,currentLineIndex:e},l=0;r.linesConsumedInCycle=0;do{if(l++,l>1e4)break;if(r.restartCycle=!1,r.pendingFileReads=[],r.pendingFileWrites=[],Hl(t,r,i,b),o&&s){for(let e of r.pendingFileReads){let t=o.resolvePath(s,e.filename);try{if(e.wholeFile){let e=await u(`read command file`,()=>o.readFile(t));r.appendBuffer.push(e.replace(/\n$/,``))}else{if(!ne.has(t)){let e=await u(`read command file line cache`,()=>o.readFile(t));ne.set(t,e.split(`
352
+ `)),re.set(t,0)}let e=ne.get(t),n=re.get(t);e&&n!==void 0&&n<e.length&&(r.appendBuffer.push(e[n]),re.set(t,n+1))}}catch(e){if(e instanceof C)throw e}}for(let e of r.pendingFileWrites){let t=o.resolvePath(s,e.filename),n=ie.get(t)||``;ie.set(t,n+e.content)}}}while(r.restartCycle&&!r.deleted&&!r.quit&&!r.quitSilent);if(e+=r.linesConsumedInCycle,y=r.holdSpace,ee=r.lastPattern,!n)for(let e of r.nCommandOutput)v(`${e}
353
+ `);let d=r.lineNumberOutput.length>0;for(let e of r.lineNumberOutput)v(`${e}
354
+ `);let m=[],_=[];for(let e of r.appendBuffer)e.startsWith(`__INSERT__`)?m.push(e.slice(10)):_.push(e);for(let e of m)v(`${e}
355
+ `);let ae=!1;!r.deleted&&!r.quitSilent?n?r.printed&&(v(`${r.patternSpace}
356
+ `),ae=!0):(v(`${r.patternSpace}
357
+ `),ae=!0):r.changedText!==void 0&&(v(`${r.changedText}
358
+ `),ae=!0);for(let e of _)v(`${e}
359
+ `);if(g=(d||ae)&&_.length===0,r.quit||r.quitSilent){if(r.exitCode!==void 0&&(h=r.exitCode),r.errorMessage)return{output:``,exitCode:h||1,errorMessage:r.errorMessage};break}}if(o&&s)for(let[e,t]of ie)try{await u(`flush pending file writes`,()=>o.writeFile(e,t))}catch(e){if(e instanceof C)throw e}return!d&&g&&m.endsWith(`
360
+ `)&&(m=m.slice(0,-1)),{output:m,exitCode:h}}var tu,nu,ru,iu=x(()=>{w(),Vi(),A(),wl(),Qn(),O(),Wl(),Ql(),tu={name:`sed`,summary:`stream editor for filtering and transforming text`,usage:`sed [OPTION]... {script} [input-file]...`,options:[`-n, --quiet, --silent suppress automatic printing of pattern space`,`-e script add the script to commands to be executed`,`-f script-file read script from file`,`-i, --in-place edit files in place`,`-E, -r, --regexp-extended use extended regular expressions`,` --help display this help and exit`],description:`Commands:
361
+ s/regexp/replacement/[flags] substitute
362
+ d delete pattern space
363
+ p print pattern space
364
+ a\\ text append text after line
365
+ i\\ text insert text before line
366
+ c\\ text change (replace) line with text
367
+ h copy pattern space to hold space
368
+ H append pattern space to hold space
369
+ g copy hold space to pattern space
370
+ G append hold space to pattern space
371
+ x exchange pattern and hold spaces
372
+ n read next line into pattern space
373
+ N append next line to pattern space
374
+ y/source/dest/ transliterate characters
375
+ = print line number
376
+ l list pattern space (escape special chars)
377
+ b [label] branch to label
378
+ t [label] branch on substitution
379
+ T [label] branch if no substitution
380
+ :label define label
381
+ q quit
382
+ Q quit without printing
383
+
384
+ Addresses:
385
+ N line number
386
+ $ last line
387
+ /regexp/ lines matching regexp
388
+ N,M range from line N to M
389
+ first~step every step-th line starting at first`},nu={name:`sed`,async execute(e,t){Sl(t.requireDefenseContext,`sed`,`execution entry`);let n=(e,n)=>Cl(t.requireDefenseContext,`sed`,e,n);if(E(e))return T(tu);let r=[],i=[],a=!1,o=!1,s=!1,c=[];for(let t=0;t<e.length;t++){let n=e[t];if(n===`-n`||n===`--quiet`||n===`--silent`)a=!0;else if(n===`-i`||n===`--in-place`)o=!0;else if(n.startsWith(`-i`))o=!0;else if(n===`-E`||n===`-r`||n===`--regexp-extended`)s=!0;else if(n===`-e`)t+1<e.length&&r.push(e[++t]);else if(n===`-f`)t+1<e.length&&i.push(e[++t]);else{if(n.startsWith(`--`))return D(`sed`,n);if(n===`-`)c.push(n);else if(n.startsWith(`-`)&&n.length>1){for(let e of n.slice(1))if(e!==`n`&&e!==`e`&&e!==`f`&&e!==`i`&&e!==`E`&&e!==`r`)return D(`sed`,`-${e}`);n.includes(`n`)&&(a=!0),n.includes(`i`)&&(o=!0),(n.includes(`E`)||n.includes(`r`))&&(s=!0),n.includes(`e`)&&!n.includes(`n`)&&!n.includes(`i`)&&t+1<e.length&&r.push(e[++t]),n.includes(`f`)&&!n.includes(`e`)&&t+1<e.length&&i.push(e[++t])}else!n.startsWith(`-`)&&r.length===0&&i.length===0?r.push(n):n.startsWith(`-`)||c.push(n)}}for(let e of i){let i=t.fs.resolvePath(t.cwd,e);try{let e=await n(`script file read`,()=>t.fs.readFile(i));for(let t of e.split(`
390
+ `)){let e=t.trim();e&&!e.startsWith(`#`)&&r.push(e)}}catch(t){if(t instanceof C)throw t;return{stdout:``,stderr:`sed: couldn't open file ${e}: No such file or directory
391
+ `,exitCode:1}}}if(r.length===0)return{stdout:``,stderr:`sed: no script specified
392
+ `,exitCode:1};let{commands:l,error:u,silentMode:d}=ql(r,s);if(u)return{stdout:``,stderr:`sed: ${u}
393
+ `,exitCode:1};let f=!!(a||d);if(o){if(c.length===0)return{stdout:``,stderr:`sed: -i requires at least one file argument
394
+ `,exitCode:1};for(let e of c){if(e===`-`)continue;let r=t.fs.resolvePath(t.cwd,e);try{let i=await n(`in-place input read`,()=>t.fs.readFile(r)),a=await n(`in-place processing`,()=>eu(i,l,f,{limits:t.limits,filename:e,fs:t.fs,cwd:t.cwd,coverage:t.coverage,requireDefenseContext:t.requireDefenseContext}));if(a.errorMessage)return{stdout:``,stderr:`${a.errorMessage}
395
+ `,exitCode:a.exitCode??1};await n(`in-place output write`,()=>t.fs.writeFile(r,a.output))}catch(t){if(t instanceof C)throw t;return t instanceof k?{stdout:``,stderr:`sed: ${Bi(t.message)}
396
+ `,exitCode:k.EXIT_CODE}:{stdout:``,stderr:`sed: ${e}: No such file or directory
397
+ `,exitCode:1}}}return{stdout:``,stderr:``,exitCode:0}}let p=``;if(c.length===0){p=ur(t.stdin);try{let e=await n(`stdin processing`,()=>eu(p,l,f,{limits:t.limits,fs:t.fs,cwd:t.cwd,coverage:t.coverage,requireDefenseContext:t.requireDefenseContext}));return{stdout:e.output,stderr:e.errorMessage?`${e.errorMessage}
398
+ `:``,exitCode:e.exitCode??0}}catch(e){if(e instanceof C)throw e;if(e instanceof k)return{stdout:``,stderr:`sed: ${Bi(e.message)}
399
+ `,exitCode:k.EXIT_CODE};throw e}}let m=!1;for(let e of c){let r;if(e===`-`)m?r=``:(r=ur(t.stdin),m=!0);else{let i=t.fs.resolvePath(t.cwd,e);try{r=await n(`input file read`,()=>t.fs.readFile(i))}catch(t){if(t instanceof C)throw t;return t instanceof k?{stdout:``,stderr:`sed: ${Bi(t.message)}
400
+ `,exitCode:k.EXIT_CODE}:{stdout:``,stderr:`sed: ${e}: No such file or directory
401
+ `,exitCode:1}}}p.length>0&&r.length>0&&!p.endsWith(`
402
+ `)&&(p+=`
403
+ `),p+=r}try{let e=await n(`final processing`,()=>eu(p,l,f,{limits:t.limits,filename:c.length===1?c[0]:void 0,fs:t.fs,cwd:t.cwd,coverage:t.coverage,requireDefenseContext:t.requireDefenseContext}));return{stdout:e.output,stderr:e.errorMessage?`${e.errorMessage}
404
+ `:``,exitCode:e.exitCode??0}}catch(e){if(e instanceof C)throw e;if(e instanceof k)return{stdout:``,stderr:`sed: ${Bi(e.message)}
405
+ `,exitCode:k.EXIT_CODE};throw e}}},ru={name:`sed`,flags:[{flag:`-n`,type:`boolean`},{flag:`-i`,type:`boolean`},{flag:`-E`,type:`boolean`},{flag:`-r`,type:`boolean`},{flag:`-e`,type:`value`,valueHint:`string`}],stdinType:`text`,needsArgs:!0}});function au(e){return Object.assign(Object.create(null),Object.fromEntries(e))}function ou(e,t){return Object.assign(Object.create(null),Object.fromEntries(e),t)}function su(...e){return Object.assign(Object.create(null),...e)}var cu=x(()=>{});function lu(e={}){let{fieldSep:t=fu,maxIterations:n=uu,maxRecursionDepth:r=du,maxOutputSize:i=0,fs:a,cwd:o,exec:s,coverage:c,requireDefenseContext:l}=e;return{FS:` `,OFS:` `,ORS:`
406
+ `,OFMT:`%.6g`,NR:0,NF:0,FNR:0,FILENAME:``,RSTART:0,RLENGTH:-1,SUBSEP:``,fields:[],line:``,vars:Object.create(null),arrays:Object.create(null),arrayAliases:new Map,ARGC:0,ARGV:Object.create(null),ENVIRON:Object.create(null),functions:new Map,fieldSep:t,maxIterations:n,maxRecursionDepth:r,maxOutputSize:i,currentRecursionDepth:0,exitCode:0,shouldExit:!1,shouldNext:!1,shouldNextFile:!1,loopBreak:!1,loopContinue:!1,hasReturn:!1,inEndBlock:!1,output:``,openedFiles:new Set,fs:a,cwd:o,exec:s,coverage:c,requireDefenseContext:l}}var uu,du,fu,pu=x(()=>{ks(),uu=1e4,du=100,fu=new Ds(/\s+/)});function mu(e,t,n){switch(n){case`+`:return e+t;case`-`:return e-t;case`*`:return e*t;case`/`:return t===0?0:e/t;case`%`:return t===0?0:e%t;case`^`:case`**`:return e**t;default:return 0}}var hu=x(()=>{});function gu(e){if(typeof e==`number`)return e;let t=parseFloat(e);return Number.isNaN(t)?0:t}function _u(e){return typeof e==`string`?e:String(e)}async function vu(e,t){if(e.type===`regex`)return e.pattern;let n=_u(await t.evalExpr(e));return n.startsWith(`/`)&&n.endsWith(`/`)&&(n=n.slice(1,-1)),n}async function yu(e,t){return e?e.type===`variable`?e.name:e.type===`field`?`$${Math.floor(gu(await t.evalExpr(e.index)))}`:`$0`:`$0`}function bu(e,t){if(e===`$0`)return t.line;if(e.startsWith(`$`)){let n=parseInt(e.slice(1),10)-1;return t.fields[n]||``}return _u(t.vars[e]??``)}function xu(e,t,n){if(e===`$0`)n.line=t,n.fields=n.FS===` `?t.trim().split(/\s+/).filter(Boolean):n.fieldSep.split(t),n.NF=n.fields.length;else if(e.startsWith(`$`)){let r=parseInt(e.slice(1),10)-1;for(;n.fields.length<=r;)n.fields.push(``);n.fields[r]=t,n.NF=n.fields.length,n.line=n.fields.join(n.OFS)}else n.vars[e]=t}async function Su(e,t,n){return e.length===0?t.line.length:_u(await n.evalExpr(e[0])).length}async function Cu(e,t,n){if(e.length<2)return``;let r=_u(await n.evalExpr(e[0])),i=Math.floor(gu(await n.evalExpr(e[1])))-1;if(e.length>=3){let t=Math.floor(gu(await n.evalExpr(e[2])));return r.substr(Math.max(0,i),t)}return r.substr(Math.max(0,i))}async function wu(e,t,n){if(e.length<2)return 0;let r=_u(await n.evalExpr(e[0])),i=_u(await n.evalExpr(e[1])),a=r.indexOf(i);return a===-1?0:a+1}async function Tu(e,t,n){if(e.length<2)return 0;let r=_u(await n.evalExpr(e[0])),i=e[1];if(i.type!==`variable`)return 0;let a=i.name,o=t.FS;if(e.length>=3){let t=e[2];if(t.type===`regex`)o=z(t.pattern);else{let e=_u(await n.evalExpr(t));o=e===` `?z(`\\s+`):e}}else t.FS===` `&&(o=z(`\\s+`));let s=typeof o==`string`?r.split(o):o.split(r);t.arrays[a]=Object.create(null);for(let e=0;e<s.length;e++)t.arrays[a][String(e+1)]=s[e];return s.length}async function Eu(e,t,n){if(e.length<2)return 0;let r=await vu(e[0],n),i=_u(await n.evalExpr(e[1])),a=await yu(e[2],n),o=bu(a,t);try{let e=z(r).replace(o,Ou(i)),n=e===o?0:1;return xu(a,e,t),n}catch{return 0}}async function Du(e,t,n){if(e.length<2)return 0;let r=await vu(e[0],n),i=_u(await n.evalExpr(e[1])),a=await yu(e[2],n),o=bu(a,t);try{let e=z(r,`g`),n=e.match(o),s=n?n.length:0;return xu(a,e.replace(o,Ou(i)),t),s}catch{return 0}}function Ou(e){return t=>{let n=``,r=0;for(;r<e.length;)if(e[r]===`\\`&&r+1<e.length){let t=e[r+1];t===`&`?(n+=`&`,r+=2):t===`\\`?(n+=`\\`,r+=2):(n+=e[r+1],r+=2)}else e[r]===`&`?(n+=t,r++):(n+=e[r],r++);return n}}async function ku(e,t,n){if(e.length<2)return t.RSTART=0,t.RLENGTH=-1,0;let r=_u(await n.evalExpr(e[0])),i=await vu(e[1],n);try{let e=z(i).exec(r);if(e)return t.RSTART=e.index+1,t.RLENGTH=e[0].length,t.RSTART}catch{}return t.RSTART=0,t.RLENGTH=-1,0}async function Au(e,t,n){if(e.length<3)return``;let r=await vu(e[0],n),i=_u(await n.evalExpr(e[1])),a=_u(await n.evalExpr(e[2])),o=e.length>=4?_u(await n.evalExpr(e[3])):t.line;try{let e=a.toLowerCase()===`g`,t=e?0:parseInt(a,10)||1;if(e)return z(r,`g`).replace(o,(e,...t)=>ju(i,e,t.slice(0,-2)));{let e=0;return z(r,`g`).replace(o,(n,...r)=>(e++,e===t?ju(i,n,r.slice(0,-2)):n))}}catch{return o}}function ju(e,t,n){let r=``,i=0;for(;i<e.length;)if(e[i]===`\\`&&i+1<e.length){let a=e[i+1];if(a===`&`)r+=`&`,i+=2;else if(a===`0`)r+=t,i+=2;else if(a>=`1`&&a<=`9`){let e=parseInt(a,10)-1;r+=n[e]||``,i+=2}else a===`n`?(r+=`
407
+ `,i+=2):a===`t`?(r+=` `,i+=2):(r+=a,i+=2)}else e[i]===`&`?(r+=t,i++):(r+=e[i],i++);return r}async function Mu(e,t,n){return e.length===0?``:_u(await n.evalExpr(e[0])).toLowerCase()}async function Nu(e,t,n){return e.length===0?``:_u(await n.evalExpr(e[0])).toUpperCase()}async function Pu(e,t,n){if(e.length===0)return``;let r=_u(await n.evalExpr(e[0])),i=[];for(let t=1;t<e.length;t++)i.push(await n.evalExpr(e[t]));return Ku(r,i)}async function Fu(e,t,n){return e.length===0?0:Math.floor(gu(await n.evalExpr(e[0])))}async function Iu(e,t,n){return e.length===0?0:Math.sqrt(gu(await n.evalExpr(e[0])))}async function Lu(e,t,n){return e.length===0?0:Math.sin(gu(await n.evalExpr(e[0])))}async function Ru(e,t,n){return e.length===0?0:Math.cos(gu(await n.evalExpr(e[0])))}async function zu(e,t,n){let r=e.length>0?gu(await n.evalExpr(e[0])):0,i=e.length>1?gu(await n.evalExpr(e[1])):0;return Math.atan2(r,i)}async function Bu(e,t,n){return e.length===0?0:Math.log(gu(await n.evalExpr(e[0])))}async function Vu(e,t,n){return e.length===0?1:Math.exp(gu(await n.evalExpr(e[0])))}function Hu(e,t,n){return t.random?t.random():Math.random()}async function Uu(e,t,n){let r=e.length>0?gu(await n.evalExpr(e[0])):Date.now();return t.vars._srand_seed=r,r}function Wu(e,t){return()=>{throw Error(`${e}() is not supported - ${t}`)}}function Gu(e){return()=>{throw Error(`function '${e}()' is not implemented`)}}function Ku(e,t){let n=0,r=``,i=0;for(;i<e.length;)if(e[i]===`%`&&i+1<e.length){let a=i+1,o=``,s=``,c=``,l,u=a;for(;a<e.length&&/\d/.test(e[a]);)a++;a>u&&e[a]===`$`?(l=parseInt(e.substring(u,a),10)-1,a++):a=u;let d=()=>{if(a<e.length){if(a+1<e.length&&(e[a]===`h`&&e[a+1]===`h`||e[a]===`l`&&e[a+1]===`l`)){a+=2;return}/[lzjh]/.test(e[a])&&a++}};for(;a<e.length&&/[-+ #0]/.test(e[a]);)o+=e[a++];if(e[a]===`*`){let e=t[n++],r=e===void 0?0:Math.floor(Number(e));r<0?(o+=`-`,s=String(Math.min(-r,qu))):s=String(Math.min(r,qu)),a++}else for(;a<e.length&&/\d/.test(e[a]);)s+=e[a++];if(s&&parseInt(s,10)>qu&&(s=String(qu)),e[a]===`.`){if(a++,e[a]===`*`){let e=t[n++];c=String(Math.min(e===void 0?0:Math.floor(Number(e)),qu)),a++}else for(;a<e.length&&/\d/.test(e[a]);)c+=e[a++];c&&parseInt(c,10)>qu&&(c=String(qu))}d();let f=e[a],p=t[l===void 0?n:l];switch(f){case`s`:{let e=p===void 0?``:String(p);if(c&&(e=e.substring(0,parseInt(c,10))),s){let t=parseInt(s,10);e=o.includes(`-`)?e.padEnd(t):e.padStart(t)}r+=e,l===void 0&&n++;break}case`d`:case`i`:{let e=p===void 0?0:Math.floor(Number(p));Number.isNaN(e)&&(e=0);let t=e<0,i=Math.abs(e).toString();if(c){let e=parseInt(c,10);i=i.padStart(e,`0`)}let a=``;t?a=`-`:o.includes(`+`)?a=`+`:o.includes(` `)&&(a=` `);let u=a+i;if(s){let e=parseInt(s,10);u=o.includes(`-`)?u.padEnd(e):o.includes(`0`)&&!c?a+i.padStart(e-a.length,`0`):u.padStart(e)}r+=u,l===void 0&&n++;break}case`f`:{let e=p===void 0?0:Number(p);Number.isNaN(e)&&(e=0);let t=c?parseInt(c,10):6,i=e.toFixed(t);if(s){let e=parseInt(s,10);i=o.includes(`-`)?i.padEnd(e):i.padStart(e)}r+=i,l===void 0&&n++;break}case`e`:case`E`:{let e=p===void 0?0:Number(p);Number.isNaN(e)&&(e=0);let t=c?parseInt(c,10):6,i=e.toExponential(t);if(f===`E`&&(i=i.toUpperCase()),s){let e=parseInt(s,10);i=o.includes(`-`)?i.padEnd(e):i.padStart(e)}r+=i,l===void 0&&n++;break}case`g`:case`G`:{let e=p===void 0?0:Number(p);Number.isNaN(e)&&(e=0);let t=c?parseInt(c,10):6,i=e===0?0:Math.floor(Math.log10(Math.abs(e))),a;if(e===0?a=`0`:i<-4||i>=t?(a=e.toExponential(t-1),f===`G`&&(a=a.toUpperCase())):a=e.toPrecision(t),a.includes(`.`)&&(a=a.replace(/\.?0+$/,``).replace(/\.?0+e/,`e`)),a.includes(`e`)&&(a=a.replace(/\.?0+e/,`e`)),s){let e=parseInt(s,10);a=o.includes(`-`)?a.padEnd(e):a.padStart(e)}r+=a,l===void 0&&n++;break}case`x`:case`X`:{let e=p===void 0?0:Math.floor(Number(p));Number.isNaN(e)&&(e=0);let t=Math.abs(e).toString(16);if(f===`X`&&(t=t.toUpperCase()),c){let e=parseInt(c,10);t=t.padStart(e,`0`)}let i=e<0?`-`:``,a=i+t;if(s){let e=parseInt(s,10);a=o.includes(`-`)?a.padEnd(e):o.includes(`0`)&&!c?i+t.padStart(e-i.length,`0`):a.padStart(e)}r+=a,l===void 0&&n++;break}case`o`:{let e=p===void 0?0:Math.floor(Number(p));Number.isNaN(e)&&(e=0);let t=Math.abs(e).toString(8);if(c){let e=parseInt(c,10);t=t.padStart(e,`0`)}let i=e<0?`-`:``,a=i+t;if(s){let e=parseInt(s,10);a=o.includes(`-`)?a.padEnd(e):o.includes(`0`)&&!c?i+t.padStart(e-i.length,`0`):a.padStart(e)}r+=a,l===void 0&&n++;break}case`c`:typeof p==`number`?r+=String.fromCharCode(p):r+=String(p??``).charAt(0)||``,l===void 0&&n++;break;case`%`:r+=`%`;break;default:r+=e.substring(i,a+1)}i=a+1}else if(e[i]===`\\`&&i+1<e.length){let t=e[i+1];switch(t){case`n`:r+=`
408
+ `;break;case`t`:r+=` `;break;case`r`:r+=`\r`;break;case`\\`:r+=`\\`;break;default:r+=t}i+=2}else r+=e[i++];return r}var qu,Ju,Yu=x(()=>{ks(),qu=1e4,Ju=new Map([[`length`,Su],[`substr`,Cu],[`index`,wu],[`split`,Tu],[`sub`,Eu],[`gsub`,Du],[`match`,ku],[`gensub`,Au],[`tolower`,Mu],[`toupper`,Nu],[`sprintf`,Pu],[`int`,Fu],[`sqrt`,Iu],[`sin`,Lu],[`cos`,Ru],[`atan2`,zu],[`log`,Bu],[`exp`,Vu],[`rand`,Hu],[`srand`,Uu],[`system`,Wu(`system`,`shell execution not allowed in sandboxed environment`)],[`close`,()=>0],[`fflush`,()=>0],[`systime`,Gu(`systime`)],[`mktime`,Gu(`mktime`)],[`strftime`,Gu(`strftime`)]])});function Xu(e){return typeof e==`number`?e!==0:!(e===``||e===`0`)}function Zu(e){if(typeof e==`number`)return e;let t=parseFloat(e);return Number.isNaN(t)?0:t}function Qu(e){return typeof e==`string`?e:String(e)}function $u(e){if(typeof e==`number`)return!0;let t=String(e).trim();return t!==``&&!Number.isNaN(Number(t))}function ed(e,t){try{return z(e).test(t)}catch{return!1}}var td=x(()=>{ks()});function nd(e,t){return t===``?[]:e.FS===` `?t.trim().split(/\s+/).filter(Boolean):e.fieldSep.split(t)}function rd(e,t){return t===0?e.line:t<0||t>e.fields.length?``:e.fields[t-1]??``}function id(e,t,n){if(t===0)e.line=Qu(n),e.fields=nd(e,e.line),e.NF=e.fields.length;else if(t>0){for(;e.fields.length<t;)e.fields.push(``);e.fields[t-1]=Qu(n),e.NF=e.fields.length,e.line=e.fields.join(e.OFS)}}function ad(e,t){e.line=t,e.fields=nd(e,t),e.NF=e.fields.length}function od(e,t){if(e.FS=t,t===` `)e.fieldSep=new Ds(/\s+/);else try{e.fieldSep=z(t)}catch{e.fieldSep=z(t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`))}}var sd=x(()=>{ks(),td()});function cd(e,t){switch(t){case`FS`:return e.FS;case`OFS`:return e.OFS;case`ORS`:return e.ORS;case`OFMT`:return e.OFMT;case`NR`:return e.NR;case`NF`:return e.NF;case`FNR`:return e.FNR;case`FILENAME`:return e.FILENAME;case`RSTART`:return e.RSTART;case`RLENGTH`:return e.RLENGTH;case`SUBSEP`:return e.SUBSEP;case`ARGC`:return e.ARGC}return e.vars[t]??``}function ld(e,t,n){switch(t){case`FS`:od(e,Qu(n));return;case`OFS`:e.OFS=Qu(n);return;case`ORS`:e.ORS=Qu(n);return;case`OFMT`:e.OFMT=Qu(n);return;case`NR`:e.NR=Math.floor(Zu(n));return;case`NF`:{let t=Math.floor(Zu(n));if(t<e.NF)e.fields=e.fields.slice(0,t),e.line=e.fields.join(e.OFS);else if(t>e.NF){for(;e.fields.length<t;)e.fields.push(``);e.line=e.fields.join(e.OFS)}e.NF=t;return}case`FNR`:e.FNR=Math.floor(Zu(n));return;case`FILENAME`:e.FILENAME=Qu(n);return;case`RSTART`:e.RSTART=Math.floor(Zu(n));return;case`RLENGTH`:e.RLENGTH=Math.floor(Zu(n));return;case`SUBSEP`:e.SUBSEP=Qu(n);return}e.vars[t]=n}function ud(e,t){let n=t,r=new Set,i=e.arrayAliases.get(n);for(;i!==void 0&&!r.has(n);)r.add(n),n=i,i=e.arrayAliases.get(n);return n}function dd(e,t,n){if(t===`ARGV`)return e.ARGV[n]??``;if(t===`ENVIRON`)return e.ENVIRON[n]??``;let r=ud(e,t);return e.arrays[r]?.[n]??``}function fd(e,t,n,r){let i=ud(e,t);e.arrays[i]||(e.arrays[i]=Object.create(null)),e.arrays[i][n]=r}function pd(e,t,n){if(t===`ARGV`)return e.ARGV[n]!==void 0;if(t===`ENVIRON`)return e.ENVIRON[n]!==void 0;let r=ud(e,t);return e.arrays[r]?.[n]!==void 0}function md(e,t,n){let r=ud(e,t);e.arrays[r]&&delete e.arrays[r][n]}function hd(e,t){let n=ud(e,t);delete e.arrays[n]}var gd=x(()=>{sd(),td()});function _d(e){zd=e}function vd(e,t){Sl(e.requireDefenseContext,`awk`,t)}function yd(e,t,n){return Cl(e.requireDefenseContext,`awk`,t,n)}async function V(e,t){switch(vd(e,`expression evaluation`),e.coverage?.hit(`awk:expr:${t.type}`),t.type){case`number`:return t.value;case`string`:return t.value;case`regex`:return+!!ed(t.pattern,e.line);case`field`:return bd(e,t);case`variable`:return cd(e,t.name);case`array_access`:return xd(e,t);case`binary`:return Sd(e,t);case`unary`:return Td(e,t);case`ternary`:return Xu(await yd(e,`ternary condition evaluation`,()=>V(e,t.condition)))?await yd(e,`ternary consequent evaluation`,()=>V(e,t.consequent)):await yd(e,`ternary alternate evaluation`,()=>V(e,t.alternate));case`call`:return Ed(e,t.name,t.args);case`assignment`:return Od(e,t);case`pre_increment`:return Ad(e,t.operand);case`pre_decrement`:return jd(e,t.operand);case`post_increment`:return Md(e,t.operand);case`post_decrement`:return Nd(e,t.operand);case`in`:return Pd(e,t.key,t.array);case`getline`:return Fd(e,t.variable,t.file,t.command);case`tuple`:return Rd(e,t.elements);default:return``}}async function bd(e,t){return vd(e,`field reference evaluation`),rd(e,Math.floor(Zu(await yd(e,`field index evaluation`,()=>V(e,t.index)))))}async function xd(e,t){vd(e,`array access evaluation`);let n=Qu(await yd(e,`array key evaluation`,()=>V(e,t.key)));return dd(e,t.array,n)}async function Sd(e,t){vd(e,`binary expression evaluation`);let n=t.operator;if(n===`||`)return Xu(await yd(e,`logical-or left evaluation`,()=>V(e,t.left)))||Xu(await yd(e,`logical-or right evaluation`,()=>V(e,t.right)))?1:0;if(n===`&&`)return Xu(await yd(e,`logical-and left evaluation`,()=>V(e,t.left)))&&Xu(await yd(e,`logical-and right evaluation`,()=>V(e,t.right)))?1:0;if(n===`~`){let n=await yd(e,`regex left evaluation`,()=>V(e,t.left));t.right.type===`regex`&&e.coverage?.hit(`awk:expr:regex`);let r=t.right.type===`regex`?t.right.pattern:Qu(await yd(e,`regex right evaluation`,()=>V(e,t.right)));try{return+!!z(r).test(Qu(n))}catch{return 0}}if(n===`!~`){let n=await yd(e,`negated-regex left evaluation`,()=>V(e,t.left));t.right.type===`regex`&&e.coverage?.hit(`awk:expr:regex`);let r=t.right.type===`regex`?t.right.pattern:Qu(await yd(e,`negated-regex right evaluation`,()=>V(e,t.right)));try{return+!z(r).test(Qu(n))}catch{return 1}}let r=await yd(e,`binary left evaluation`,()=>V(e,t.left)),i=await yd(e,`binary right evaluation`,()=>V(e,t.right));if(n===` `){let t=Qu(r)+Qu(i);if(e.maxOutputSize>0&&t.length>e.maxOutputSize)throw new k(`awk: string concatenation size limit exceeded (${e.maxOutputSize} bytes)`,`string_length`,e.output);return t}return Cd(n)?wd(r,i,n):mu(Zu(r),Zu(i),n)}function Cd(e){return[`<`,`<=`,`>`,`>=`,`==`,`!=`].includes(e)}function wd(e,t,n){let r=$u(e),i=$u(t);if(r&&i){let r=Zu(e),i=Zu(t);switch(n){case`<`:return+(r<i);case`<=`:return+(r<=i);case`>`:return+(r>i);case`>=`:return+(r>=i);case`==`:return+(r===i);case`!=`:return r===i?0:1}}let a=Qu(e),o=Qu(t);switch(n){case`<`:return+(a<o);case`<=`:return+(a<=o);case`>`:return+(a>o);case`>=`:return+(a>=o);case`==`:return+(a===o);case`!=`:return a===o?0:1}return 0}async function Td(e,t){vd(e,`unary expression evaluation`);let n=await yd(e,`unary operand evaluation`,()=>V(e,t.operand));switch(t.operator){case`!`:return+!Xu(n);case`-`:return-Zu(n);case`+`:return+Zu(n);default:return n}}async function Ed(e,t,n){vd(e,`function call evaluation`);let r=Ju.get(t);if(r)return r(n,e,{evalExpr:t=>V(e,t)});let i=e.functions.get(t);return i?Dd(e,i,n):``}async function Dd(e,t,n){if(vd(e,`user function call`),e.currentRecursionDepth++,e.currentRecursionDepth>e.maxRecursionDepth)throw e.currentRecursionDepth--,new k(`awk: recursion depth exceeded maximum (${e.maxRecursionDepth})`,`recursion`,e.output);let r=Object.create(null);for(let n of t.params)r[n]=e.vars[n];let i=[];for(let r=0;r<t.params.length;r++){let a=t.params[r];if(r<n.length){let t=n[r];t.type===`variable`&&(e.arrayAliases.set(a,t.name),i.push(a));let o=await yd(e,`user function argument evaluation`,()=>V(e,t));e.vars[a]=o}else e.vars[a]=``}e.hasReturn=!1,e.returnValue=void 0;let a=zd;a&&await yd(e,`user function body execution`,()=>a(e,t.body.statements));let o=e.returnValue??``;for(let n of t.params)r[n]===void 0?delete e.vars[n]:e.vars[n]=r[n];for(let t of i)e.arrayAliases.delete(t);return e.hasReturn=!1,e.returnValue=void 0,e.currentRecursionDepth--,o}async function Od(e,t){vd(e,`assignment evaluation`);let n=await yd(e,`assignment value evaluation`,()=>V(e,t.value)),r=t.target,i=t.operator,a;if(i===`=`)a=n;else{let t;if(r.type===`field`)t=rd(e,Math.floor(Zu(await yd(e,`assignment field index`,()=>V(e,r.index)))));else if(r.type===`variable`)t=cd(e,r.name);else{let n=Qu(await yd(e,`assignment array key`,()=>V(e,r.key)));t=dd(e,r.array,n)}let o=Zu(t),s=Zu(n);switch(i){case`+=`:a=o+s;break;case`-=`:a=o-s;break;case`*=`:a=o*s;break;case`/=`:a=s===0?0:o/s;break;case`%=`:a=s===0?0:o%s;break;case`^=`:a=o**s;break;default:a=n}}if(r.type===`field`)id(e,Math.floor(Zu(await yd(e,`assignment target field index`,()=>V(e,r.index)))),a);else if(r.type===`variable`)ld(e,r.name,a);else{let t=Qu(await yd(e,`assignment target array key`,()=>V(e,r.key)));fd(e,r.array,t,a)}return a}async function kd(e,t,n,r){vd(e,`inc/dec evaluation`);let i;if(t.type===`field`){let r=Math.floor(Zu(await yd(e,`inc/dec field index`,()=>V(e,t.index))));i=Zu(rd(e,r)),id(e,r,i+n)}else if(t.type===`variable`)i=Zu(cd(e,t.name)),ld(e,t.name,i+n);else{let r=Qu(await yd(e,`inc/dec array key`,()=>V(e,t.key)));i=Zu(dd(e,t.array,r)),fd(e,t.array,r,i+n)}return r?i+n:i}async function Ad(e,t){return kd(e,t,1,!0)}async function jd(e,t){return kd(e,t,-1,!0)}async function Md(e,t){return kd(e,t,1,!1)}async function Nd(e,t){return kd(e,t,-1,!1)}async function Pd(e,t,n){vd(e,`in-expression evaluation`);let r;if(t.type===`tuple`){e.coverage?.hit(`awk:expr:tuple`);let n=[];for(let r of t.elements)n.push(Qu(await yd(e,`tuple key element evaluation`,()=>V(e,r))));r=n.join(e.SUBSEP)}else r=Qu(await yd(e,`in-expression key evaluation`,()=>V(e,t)));return+!!pd(e,n,r)}async function Fd(e,t,n,r){if(vd(e,`getline evaluation`),r)return Id(e,t,r);if(n)return Ld(e,t,n);if(!e.lines||e.lineIndex===void 0)return-1;let i=e.lineIndex+1;if(i>=e.lines.length)return 0;let a=e.lines[i];return t?ld(e,t,a):ad(e,a),e.NR++,e.lineIndex=i,1}async function Id(e,t,n){let r=e.exec;if(!r)return-1;vd(e,`getline command source`);let i=Qu(await yd(e,`getline command expression`,()=>V(e,n))),a=`__cmd_${i}`,o=`__cmdi_${i}`,s,c;if(e.vars[a]===void 0)try{s=ur((await yd(e,`getline command exec`,()=>r(i))).stdout).split(`
409
+ `),s.length>0&&s[s.length-1]===``&&s.pop(),e.vars[a]=JSON.stringify(s),e.vars[o]=-1,c=-1}catch(e){if(e instanceof C)throw e;return-1}else s=JSON.parse(e.vars[a]),c=e.vars[o];let l=c+1;if(l>=s.length)return 0;let u=s[l];return e.vars[o]=l,t?ld(e,t,u):ad(e,u),1}async function Ld(e,t,n){let r=e.fs;if(!r||!e.cwd)return-1;vd(e,`getline file source`);let i=Qu(await yd(e,`getline filename evaluation`,()=>V(e,n)));if(i===`/dev/null`)return 0;let a=r.resolvePath(e.cwd,i),o=`__fc_${a}`,s=`__fi_${a}`,c,l;if(e.vars[o]===void 0)try{c=(await yd(e,`getline file read`,()=>r.readFile(a))).split(`
410
+ `),c.length>0&&c[c.length-1]===``&&c.pop(),e.vars[o]=JSON.stringify(c),e.vars[s]=-1,l=-1}catch(e){if(e instanceof C)throw e;return-1}else c=JSON.parse(e.vars[o]),l=e.vars[s];let u=l+1;if(u>=c.length)return 0;let d=c[u];return e.vars[s]=u,t?ld(e,t,d):ad(e,d),1}async function Rd(e,t){if(vd(e,`tuple evaluation`),t.length===0)return``;for(let n=0;n<t.length-1;n++)await yd(e,`tuple intermediate element`,()=>V(e,t[n]));return yd(e,`tuple final element`,()=>V(e,t[t.length-1]))}var zd,Bd=x(()=>{w(),A(),ks(),wl(),Qn(),hu(),Yu(),sd(),td(),gd(),zd=null});function Vd(e){if(e.maxOutputSize>0&&e.output.length>e.maxOutputSize)throw new k(`awk: output size limit exceeded (${e.maxOutputSize} bytes)`,`string_length`,e.output)}function Hd(e,t){Sl(e.requireDefenseContext,`awk`,t)}function Ud(e,t,n){return Cl(e.requireDefenseContext,`awk`,t,n)}async function Wd(e,t){Hd(e,`block execution`);for(let n of t)if(await Ud(e,`statement execution`,()=>Kd(e,n)),Gd(e))break}function Gd(e){return e.shouldExit||e.shouldNext||e.shouldNextFile||e.loopBreak||e.loopContinue||e.hasReturn}async function Kd(e,t){switch(Hd(e,`single statement execution`),e.coverage?.hit(`awk:stmt:${t.type}`),t.type){case`block`:await Ud(e,`nested block statement`,()=>Wd(e,t.statements));break;case`expr_stmt`:await Ud(e,`expression statement`,()=>V(e,t.expression));break;case`print`:await Ud(e,`print statement`,()=>qd(e,t.args,t.output));break;case`printf`:await Ud(e,`printf statement`,()=>Jd(e,t.format,t.args,t.output));break;case`if`:await Ud(e,`if statement`,()=>Xd(e,t));break;case`while`:await Ud(e,`while statement`,()=>Zd(e,t));break;case`do_while`:await Ud(e,`do-while statement`,()=>Qd(e,t));break;case`for`:await Ud(e,`for statement`,()=>$d(e,t));break;case`for_in`:await Ud(e,`for-in statement`,()=>ef(e,t));break;case`break`:e.loopBreak=!0;break;case`continue`:e.loopContinue=!0;break;case`next`:e.shouldNext=!0;break;case`nextfile`:e.shouldNextFile=!0;break;case`exit`:e.shouldExit=!0;{let n=t.code;e.exitCode=n?Math.floor(Zu(await Ud(e,`exit code expression`,()=>V(e,n)))):0}break;case`return`:e.hasReturn=!0;{let n=t.value;e.returnValue=n?await Ud(e,`return expression`,()=>V(e,n)):``}break;case`delete`:await Ud(e,`delete statement`,()=>tf(e,t.target));break}}async function qd(e,t,n){Hd(e,`print execution`);let r=[];for(let n of t){let t=await Ud(e,`print argument evaluation`,()=>V(e,n));typeof t==`number`?Number.isInteger(t)&&Math.abs(t)<2**53-1?r.push(String(t)):r.push(Ku(e.OFMT,[t])):r.push(Qu(t))}let i=r.join(e.OFS)+e.ORS;n?await Ud(e,`print redirection write`,()=>Yd(e,n.redirect,n.file,i)):(e.output+=i,Vd(e))}async function Jd(e,t,n,r){Hd(e,`printf execution`);let i=Qu(await Ud(e,`printf format evaluation`,()=>V(e,t))),a=[];for(let t of n)a.push(await Ud(e,`printf argument evaluation`,()=>V(e,t)));let o=Ku(i,a);r?await Ud(e,`printf redirection write`,()=>Yd(e,r.redirect,r.file,o)):(e.output+=o,Vd(e))}async function Yd(e,t,n,r){Hd(e,`file write execution`);let i=e.fs;if(!i||!e.cwd){e.output+=r,Vd(e);return}let a=Qu(await Ud(e,`redirection filename evaluation`,()=>V(e,n))),o=i.resolvePath(e.cwd,a);t===`>`?e.openedFiles.has(o)?await Ud(e,`redirection append write`,()=>i.appendFile(o,r)):(await Ud(e,`redirection overwrite write`,()=>i.writeFile(o,r)),e.openedFiles.add(o)):(e.openedFiles.has(o)||e.openedFiles.add(o),await Ud(e,`redirection append mode write`,()=>i.appendFile(o,r)))}async function Xd(e,t){if(Hd(e,`if execution`),Xu(await Ud(e,`if condition evaluation`,()=>V(e,t.condition))))await Ud(e,`if consequent execution`,()=>Kd(e,t.consequent));else if(t.alternate){let n=t.alternate;await Ud(e,`if alternate execution`,()=>Kd(e,n))}}async function Zd(e,t){Hd(e,`while execution`);let n=0;for(;Xu(await Ud(e,`while condition evaluation`,()=>V(e,t.condition)));){if(n++,n>e.maxIterations)throw new k(`awk: while loop exceeded maximum iterations (${e.maxIterations})`,`iterations`,e.output);if(e.loopContinue=!1,await Ud(e,`while body execution`,()=>Kd(e,t.body)),e.loopBreak){e.loopBreak=!1;break}if(e.shouldExit||e.shouldNext||e.hasReturn)break}}async function Qd(e,t){Hd(e,`do-while execution`);let n=0;do{if(n++,n>e.maxIterations)throw new k(`awk: do-while loop exceeded maximum iterations (${e.maxIterations})`,`iterations`,e.output);if(e.loopContinue=!1,await Ud(e,`do-while body execution`,()=>Kd(e,t.body)),e.loopBreak){e.loopBreak=!1;break}if(e.shouldExit||e.shouldNext||e.hasReturn)break}while(Xu(await Ud(e,`do-while condition evaluation`,()=>V(e,t.condition))))}async function $d(e,t){Hd(e,`for execution`);let n=t.init,r=t.condition,i=t.update;n&&await Ud(e,`for init evaluation`,()=>V(e,n));let a=0;for(;!r||Xu(await Ud(e,`for condition evaluation`,()=>V(e,r)));){if(a++,a>e.maxIterations)throw new k(`awk: for loop exceeded maximum iterations (${e.maxIterations})`,`iterations`,e.output);if(e.loopContinue=!1,await Ud(e,`for body execution`,()=>Kd(e,t.body)),e.loopBreak){e.loopBreak=!1;break}if(e.shouldExit||e.shouldNext||e.hasReturn)break;i&&await Ud(e,`for update evaluation`,()=>V(e,i))}}async function ef(e,t){Hd(e,`for-in execution`);let n=e.arrays[t.array];if(n)for(let r of Object.keys(n)){if(e.vars[t.variable]=r,e.loopContinue=!1,await Ud(e,`for-in body execution`,()=>Kd(e,t.body)),e.loopBreak){e.loopBreak=!1;break}if(e.shouldExit||e.shouldNext||e.hasReturn)break}}async function tf(e,t){if(Hd(e,`delete execution`),t.type===`array_access`){let n=Qu(await Ud(e,`delete key evaluation`,()=>V(e,t.key)));md(e,t.array,n)}else t.type===`variable`&&hd(e,t.name)}var nf=x(()=>{A(),wl(),Yu(),Bd(),td(),gd(),_d(Wd)}),rf,af=x(()=>{wl(),Bd(),sd(),nf(),td(),rf=class{ctx;program=null;rangeStates=[];constructor(e){this.ctx=e}assertDefenseContext(e){Sl(this.ctx.requireDefenseContext,`awk`,e)}withDefenseContext(e,t){return Cl(this.ctx.requireDefenseContext,`awk`,e,t)}execute(e){this.assertDefenseContext(`program initialization`),this.program=e,this.ctx.output=``;for(let t of e.functions)this.ctx.functions.set(t.name,t);this.rangeStates=e.rules.map(()=>!1)}async executeBegin(){if(this.assertDefenseContext(`BEGIN execution entry`),this.program){for(let e of this.program.rules)if(e.pattern?.type===`begin`&&(await this.withDefenseContext(`BEGIN block execution`,()=>Wd(this.ctx,e.action.statements)),this.ctx.shouldExit))break}}async executeLine(e){if(this.assertDefenseContext(`line execution entry`),!(!this.program||this.ctx.shouldExit)){ad(this.ctx,e),this.ctx.NR++,this.ctx.FNR++,this.ctx.shouldNext=!1;for(let e=0;e<this.program.rules.length&&!(this.ctx.shouldExit||this.ctx.shouldNext||this.ctx.shouldNextFile);e++){let t=this.program.rules[e];t.pattern?.type===`begin`||t.pattern?.type===`end`||await this.withDefenseContext(`rule match`,()=>this.matchesRule(t,e))&&await this.withDefenseContext(`rule block execution`,()=>Wd(this.ctx,t.action.statements))}}}async executeEnd(){if(this.assertDefenseContext(`END execution entry`),this.program&&!this.ctx.inEndBlock){this.ctx.inEndBlock=!0,this.ctx.shouldExit=!1;for(let e of this.program.rules)if(e.pattern?.type===`end`&&(await this.withDefenseContext(`END block execution`,()=>Wd(this.ctx,e.action.statements)),this.ctx.shouldExit))break;this.ctx.inEndBlock=!1}}getOutput(){return this.ctx.output}getExitCode(){return this.ctx.exitCode}getContext(){return this.ctx}async matchesRule(e,t){this.assertDefenseContext(`rule matching`);let n=e.pattern;if(!n)return!0;switch(n.type){case`begin`:case`end`:return!1;case`regex_pattern`:return ed(n.pattern,this.ctx.line);case`expr_pattern`:return Xu(await this.withDefenseContext(`expression pattern evaluation`,()=>V(this.ctx,n.expression)));case`range`:{let e=await this.withDefenseContext(`range start pattern`,()=>this.matchPattern(n.start)),r=await this.withDefenseContext(`range end pattern`,()=>this.matchPattern(n.end));return this.rangeStates[t]?(r&&(this.rangeStates[t]=!1),!0):e?(this.rangeStates[t]=!0,r&&(this.rangeStates[t]=!1),!0):!1}default:return!1}}async matchPattern(e){switch(this.assertDefenseContext(`pattern matching`),e.type){case`regex_pattern`:return ed(e.pattern,this.ctx.line);case`expr_pattern`:return Xu(await this.withDefenseContext(`nested expression pattern`,()=>V(this.ctx,e.expression)));default:return!1}}}}),of=x(()=>{pu(),af()});function sf(e){return e.replace(/\[\[:space:\]\]/g,`[ \\t\\n\\r\\f\\v]`).replace(/\[\[:blank:\]\]/g,`[ \\t]`).replace(/\[\[:alpha:\]\]/g,`[a-zA-Z]`).replace(/\[\[:digit:\]\]/g,`[0-9]`).replace(/\[\[:alnum:\]\]/g,`[a-zA-Z0-9]`).replace(/\[\[:upper:\]\]/g,`[A-Z]`).replace(/\[\[:lower:\]\]/g,`[a-z]`).replace(/\[\[:punct:\]\]/g,`[!"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_\`{|}~]`).replace(/\[\[:xdigit:\]\]/g,`[0-9A-Fa-f]`).replace(/\[\[:graph:\]\]/g,`[!-~]`).replace(/\[\[:print:\]\]/g,`[ -~]`).replace(/\[\[:cntrl:\]\]/g,`[\\x00-\\x1f\\x7f]`)}var H,cf,lf,uf,df=x(()=>{(function(e){e.NUMBER=`NUMBER`,e.STRING=`STRING`,e.REGEX=`REGEX`,e.IDENT=`IDENT`,e.BEGIN=`BEGIN`,e.END=`END`,e.IF=`IF`,e.ELSE=`ELSE`,e.WHILE=`WHILE`,e.DO=`DO`,e.FOR=`FOR`,e.IN=`IN`,e.BREAK=`BREAK`,e.CONTINUE=`CONTINUE`,e.NEXT=`NEXT`,e.NEXTFILE=`NEXTFILE`,e.EXIT=`EXIT`,e.RETURN=`RETURN`,e.DELETE=`DELETE`,e.FUNCTION=`FUNCTION`,e.PRINT=`PRINT`,e.PRINTF=`PRINTF`,e.GETLINE=`GETLINE`,e.PLUS=`PLUS`,e.MINUS=`MINUS`,e.STAR=`STAR`,e.SLASH=`SLASH`,e.PERCENT=`PERCENT`,e.CARET=`CARET`,e.EQ=`EQ`,e.NE=`NE`,e.LT=`LT`,e.GT=`GT`,e.LE=`LE`,e.GE=`GE`,e.MATCH=`MATCH`,e.NOT_MATCH=`NOT_MATCH`,e.AND=`AND`,e.OR=`OR`,e.NOT=`NOT`,e.ASSIGN=`ASSIGN`,e.PLUS_ASSIGN=`PLUS_ASSIGN`,e.MINUS_ASSIGN=`MINUS_ASSIGN`,e.STAR_ASSIGN=`STAR_ASSIGN`,e.SLASH_ASSIGN=`SLASH_ASSIGN`,e.PERCENT_ASSIGN=`PERCENT_ASSIGN`,e.CARET_ASSIGN=`CARET_ASSIGN`,e.INCREMENT=`INCREMENT`,e.DECREMENT=`DECREMENT`,e.QUESTION=`QUESTION`,e.COLON=`COLON`,e.COMMA=`COMMA`,e.SEMICOLON=`SEMICOLON`,e.NEWLINE=`NEWLINE`,e.LPAREN=`LPAREN`,e.RPAREN=`RPAREN`,e.LBRACE=`LBRACE`,e.RBRACE=`RBRACE`,e.LBRACKET=`LBRACKET`,e.RBRACKET=`RBRACKET`,e.DOLLAR=`DOLLAR`,e.APPEND=`APPEND`,e.PIPE=`PIPE`,e.EOF=`EOF`})(H||={}),cf=new Map([[`BEGIN`,H.BEGIN],[`END`,H.END],[`if`,H.IF],[`else`,H.ELSE],[`while`,H.WHILE],[`do`,H.DO],[`for`,H.FOR],[`in`,H.IN],[`break`,H.BREAK],[`continue`,H.CONTINUE],[`next`,H.NEXT],[`nextfile`,H.NEXTFILE],[`exit`,H.EXIT],[`return`,H.RETURN],[`delete`,H.DELETE],[`function`,H.FUNCTION],[`print`,H.PRINT],[`printf`,H.PRINTF],[`getline`,H.GETLINE]]),lf=new Set([H.COMMA,H.LBRACE,H.AND,H.OR,H.QUESTION,H.COLON,H.DO,H.ELSE,H.IF,H.WHILE]),uf=class{input;pos=0;line=1;column=1;lastTokenType=null;constructor(e){this.input=e}tokenize(){let e=[];for(;this.pos<this.input.length;){let t=this.nextToken();t&&(e.push(t),this.lastTokenType=t.type)}return e.push(this.makeToken(H.EOF,``)),e}makeToken(e,t){return{type:e,value:t,line:this.line,column:this.column}}peek(e=0){return this.input[this.pos+e]||``}advance(){let e=this.input[this.pos++]||``;return e===`
411
+ `?(this.line++,this.column=1):this.column++,e}skipWhitespace(){for(;this.pos<this.input.length;){let e=this.peek();if(e===` `||e===` `||e===`\r`)this.advance();else if(e===`\\`)if(this.peek(1)===`
412
+ `)this.advance(),this.advance();else break;else if(e===`#`)for(;this.pos<this.input.length&&this.peek()!==`
413
+ `;)this.advance();else break}}nextToken(){if(this.skipWhitespace(),this.pos>=this.input.length)return null;let e=this.line,t=this.column,n=this.peek();return n===`
414
+ `?(this.advance(),this.lastTokenType!==null&&lf.has(this.lastTokenType)?this.nextToken():{type:H.NEWLINE,value:`
415
+ `,line:e,column:t}):n===`"`?this.readString():n===`/`&&this.canBeRegex()?this.readRegex():this.isDigit(n)||n===`.`&&this.isDigit(this.peek(1))?this.readNumber():this.isAlpha(n)||n===`_`?this.readIdentifier():this.readOperator()}canBeRegex(){return new Set([null,H.NEWLINE,H.SEMICOLON,H.LBRACE,H.RBRACE,H.LPAREN,H.LBRACKET,H.COMMA,H.ASSIGN,H.PLUS_ASSIGN,H.MINUS_ASSIGN,H.STAR_ASSIGN,H.SLASH_ASSIGN,H.PERCENT_ASSIGN,H.CARET_ASSIGN,H.AND,H.OR,H.NOT,H.MATCH,H.NOT_MATCH,H.QUESTION,H.COLON,H.LT,H.GT,H.LE,H.GE,H.EQ,H.NE,H.PLUS,H.MINUS,H.STAR,H.PERCENT,H.CARET,H.PRINT,H.PRINTF,H.IF,H.WHILE,H.DO,H.FOR,H.RETURN]).has(this.lastTokenType)}readString(){let e=this.line,t=this.column;this.advance();let n=``;for(;this.pos<this.input.length&&this.peek()!==`"`;)if(this.peek()===`\\`){this.advance();let e=this.advance();switch(e){case`n`:n+=`
416
+ `;break;case`t`:n+=` `;break;case`r`:n+=`\r`;break;case`f`:n+=`\f`;break;case`b`:n+=`\b`;break;case`v`:n+=`\v`;break;case`a`:n+=`\x07`;break;case`\\`:n+=`\\`;break;case`"`:n+=`"`;break;case`/`:n+=`/`;break;case`x`:{let e=``;for(;e.length<2&&/[0-9a-fA-F]/.test(this.peek());)e+=this.advance();e.length>0?n+=String.fromCharCode(parseInt(e,16)):n+=`x`;break}default:if(/[0-7]/.test(e)){let t=e;for(;t.length<3&&/[0-7]/.test(this.peek());)t+=this.advance();n+=String.fromCharCode(parseInt(t,8))}else n+=e}}else n+=this.advance();return this.peek()===`"`&&this.advance(),{type:H.STRING,value:n,line:e,column:t}}readRegex(){let e=this.line,t=this.column;this.advance();let n=``;for(;this.pos<this.input.length&&this.peek()!==`/`;)if(this.peek()===`\\`)n+=this.advance(),this.pos<this.input.length&&(n+=this.advance());else{if(this.peek()===`
417
+ `)break;n+=this.advance()}return this.peek()===`/`&&this.advance(),n=sf(n),{type:H.REGEX,value:n,line:e,column:t}}readNumber(){let e=this.line,t=this.column,n=``;for(;this.isDigit(this.peek());)n+=this.advance();if(this.peek()===`.`&&this.isDigit(this.peek(1)))for(n+=this.advance();this.isDigit(this.peek());)n+=this.advance();if(this.peek()===`e`||this.peek()===`E`)for(n+=this.advance(),(this.peek()===`+`||this.peek()===`-`)&&(n+=this.advance());this.isDigit(this.peek());)n+=this.advance();return{type:H.NUMBER,value:parseFloat(n),line:e,column:t}}readIdentifier(){let e=this.line,t=this.column,n=``;for(;this.isAlphaNumeric(this.peek())||this.peek()===`_`;)n+=this.advance();let r=cf.get(n);return r===void 0?{type:H.IDENT,value:n,line:e,column:t}:{type:r,value:n,line:e,column:t}}readOperator(){let e=this.line,t=this.column,n=this.advance(),r=this.peek();switch(n){case`+`:return r===`+`?(this.advance(),{type:H.INCREMENT,value:`++`,line:e,column:t}):r===`=`?(this.advance(),{type:H.PLUS_ASSIGN,value:`+=`,line:e,column:t}):{type:H.PLUS,value:`+`,line:e,column:t};case`-`:return r===`-`?(this.advance(),{type:H.DECREMENT,value:`--`,line:e,column:t}):r===`=`?(this.advance(),{type:H.MINUS_ASSIGN,value:`-=`,line:e,column:t}):{type:H.MINUS,value:`-`,line:e,column:t};case`*`:return r===`*`?(this.advance(),{type:H.CARET,value:`**`,line:e,column:t}):r===`=`?(this.advance(),{type:H.STAR_ASSIGN,value:`*=`,line:e,column:t}):{type:H.STAR,value:`*`,line:e,column:t};case`/`:return r===`=`?(this.advance(),{type:H.SLASH_ASSIGN,value:`/=`,line:e,column:t}):{type:H.SLASH,value:`/`,line:e,column:t};case`%`:return r===`=`?(this.advance(),{type:H.PERCENT_ASSIGN,value:`%=`,line:e,column:t}):{type:H.PERCENT,value:`%`,line:e,column:t};case`^`:return r===`=`?(this.advance(),{type:H.CARET_ASSIGN,value:`^=`,line:e,column:t}):{type:H.CARET,value:`^`,line:e,column:t};case`=`:return r===`=`?(this.advance(),{type:H.EQ,value:`==`,line:e,column:t}):{type:H.ASSIGN,value:`=`,line:e,column:t};case`!`:return r===`=`?(this.advance(),{type:H.NE,value:`!=`,line:e,column:t}):r===`~`?(this.advance(),{type:H.NOT_MATCH,value:`!~`,line:e,column:t}):{type:H.NOT,value:`!`,line:e,column:t};case`<`:return r===`=`?(this.advance(),{type:H.LE,value:`<=`,line:e,column:t}):{type:H.LT,value:`<`,line:e,column:t};case`>`:return r===`=`?(this.advance(),{type:H.GE,value:`>=`,line:e,column:t}):r===`>`?(this.advance(),{type:H.APPEND,value:`>>`,line:e,column:t}):{type:H.GT,value:`>`,line:e,column:t};case`&`:return r===`&`?(this.advance(),{type:H.AND,value:`&&`,line:e,column:t}):{type:H.IDENT,value:`&`,line:e,column:t};case`|`:return r===`|`?(this.advance(),{type:H.OR,value:`||`,line:e,column:t}):{type:H.PIPE,value:`|`,line:e,column:t};case`~`:return{type:H.MATCH,value:`~`,line:e,column:t};case`?`:return{type:H.QUESTION,value:`?`,line:e,column:t};case`:`:return{type:H.COLON,value:`:`,line:e,column:t};case`,`:return{type:H.COMMA,value:`,`,line:e,column:t};case`;`:return{type:H.SEMICOLON,value:`;`,line:e,column:t};case`(`:return{type:H.LPAREN,value:`(`,line:e,column:t};case`)`:return{type:H.RPAREN,value:`)`,line:e,column:t};case`{`:return{type:H.LBRACE,value:`{`,line:e,column:t};case`}`:return{type:H.RBRACE,value:`}`,line:e,column:t};case`[`:return{type:H.LBRACKET,value:`[`,line:e,column:t};case`]`:return{type:H.RBRACKET,value:`]`,line:e,column:t};case`$`:return{type:H.DOLLAR,value:`$`,line:e,column:t};default:return{type:H.IDENT,value:n,line:e,column:t}}}isDigit(e){return e>=`0`&&e<=`9`}isAlpha(e){return e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`}isAlphaNumeric(e){return this.isDigit(e)||this.isAlpha(e)}}});function ff(e){e.expect(U.PRINT);let t=[];if(e.check(U.NEWLINE)||e.check(U.SEMICOLON)||e.check(U.RBRACE)||e.check(U.PIPE)||e.check(U.GT)||e.check(U.APPEND))t.push({type:`field`,index:{type:`number`,value:0}});else for(t.push(pf(e));e.check(U.COMMA);)e.advance(),t.push(pf(e));let n;return e.check(U.GT)?(e.advance(),n={redirect:`>`,file:e.parsePrimary()}):e.check(U.APPEND)&&(e.advance(),n={redirect:`>>`,file:e.parsePrimary()}),{type:`print`,args:t,output:n}}function pf(e){return hf(e)?mf(e,!0):mf(e,!1)}function mf(e,t){let n=t?e.parseTernary():gf(e);if(e.match(U.ASSIGN,U.PLUS_ASSIGN,U.MINUS_ASSIGN,U.STAR_ASSIGN,U.SLASH_ASSIGN,U.PERCENT_ASSIGN,U.CARET_ASSIGN)){let r=e.advance(),i=mf(e,t);if(n.type!==`variable`&&n.type!==`field`&&n.type!==`array_access`)throw Error(`Invalid assignment target`);return{type:`assignment`,operator:new Map([[`=`,`=`],[`+=`,`+=`],[`-=`,`-=`],[`*=`,`*=`],[`/=`,`/=`],[`%=`,`%=`],[`^=`,`^=`]]).get(r.value)??`=`,target:n,value:i}}return n}function hf(e){let t=0,n=e.pos;for(;n<e.tokens.length;){let r=e.tokens[n];if(r.type===U.LPAREN&&t++,r.type===U.RPAREN&&t--,r.type===U.QUESTION&&t===0)return!0;if(r.type===U.NEWLINE||r.type===U.SEMICOLON||r.type===U.RBRACE||r.type===U.COMMA||r.type===U.PIPE)return!1;n++}return!1}function gf(e){let t=_f(e);for(;e.check(U.OR);){e.advance();let n=_f(e);t={type:`binary`,operator:`||`,left:t,right:n}}return t}function _f(e){let t=vf(e);for(;e.check(U.AND);){e.advance();let n=vf(e);t={type:`binary`,operator:`&&`,left:t,right:n}}return t}function vf(e){let t=yf(e);return e.check(U.IN)?(e.advance(),{type:`in`,key:t,array:String(e.expect(U.IDENT).value)}):t}function yf(e){let t=bf(e);for(;Sf(e)&&!Cf(e);){let n=bf(e);t={type:`binary`,operator:` `,left:t,right:n}}return t}function bf(e){let t=xf(e);for(;e.match(U.MATCH,U.NOT_MATCH);){let n=e.advance().type===U.MATCH?`~`:`!~`,r=xf(e);t={type:`binary`,operator:n,left:t,right:r}}return t}function xf(e){let t=e.parseAddSub();for(;e.match(U.LT,U.LE,U.GE,U.EQ,U.NE);){let n=e.advance(),r=e.parseAddSub();t={type:`binary`,operator:new Map([[`<`,`<`],[`<=`,`<=`],[`>=`,`>=`],[`==`,`==`],[`!=`,`!=`]]).get(n.value)??`==`,left:t,right:r}}return t}function Sf(e){return e.match(U.NUMBER,U.STRING,U.IDENT,U.DOLLAR,U.LPAREN,U.NOT,U.MINUS,U.PLUS,U.INCREMENT,U.DECREMENT)}function Cf(e){return e.match(U.AND,U.OR,U.QUESTION,U.ASSIGN,U.PLUS_ASSIGN,U.MINUS_ASSIGN,U.STAR_ASSIGN,U.SLASH_ASSIGN,U.PERCENT_ASSIGN,U.CARET_ASSIGN,U.COMMA,U.SEMICOLON,U.NEWLINE,U.RBRACE,U.RPAREN,U.RBRACKET,U.COLON,U.PIPE,U.APPEND,U.GT,U.IN)}function wf(e){e.expect(U.PRINTF);let t=e.check(U.LPAREN);t&&(e.advance(),e.skipNewlines());let n=t?e.parseExpression():pf(e),r=[];for(;e.check(U.COMMA);)e.advance(),t&&e.skipNewlines(),r.push(t?e.parseExpression():pf(e));t&&(e.skipNewlines(),e.expect(U.RPAREN));let i;return e.check(U.GT)?(e.advance(),i={redirect:`>`,file:e.parsePrimary()}):e.check(U.APPEND)&&(e.advance(),i={redirect:`>>`,file:e.parsePrimary()}),{type:`printf`,format:n,args:r,output:i}}var U,Tf=x(()=>{U={LPAREN:`LPAREN`,RPAREN:`RPAREN`,QUESTION:`QUESTION`,NEWLINE:`NEWLINE`,SEMICOLON:`SEMICOLON`,RBRACE:`RBRACE`,COMMA:`COMMA`,PIPE:`PIPE`,GT:`GT`,APPEND:`APPEND`,AND:`AND`,OR:`OR`,ASSIGN:`ASSIGN`,PLUS_ASSIGN:`PLUS_ASSIGN`,MINUS_ASSIGN:`MINUS_ASSIGN`,STAR_ASSIGN:`STAR_ASSIGN`,SLASH_ASSIGN:`SLASH_ASSIGN`,PERCENT_ASSIGN:`PERCENT_ASSIGN`,CARET_ASSIGN:`CARET_ASSIGN`,RBRACKET:`RBRACKET`,COLON:`COLON`,IN:`IN`,PRINT:`PRINT`,PRINTF:`PRINTF`,IDENT:`IDENT`,LT:`LT`,LE:`LE`,GE:`GE`,EQ:`EQ`,NE:`NE`,MATCH:`MATCH`,NOT_MATCH:`NOT_MATCH`,NUMBER:`NUMBER`,STRING:`STRING`,DOLLAR:`DOLLAR`,NOT:`NOT`,MINUS:`MINUS`,PLUS:`PLUS`,INCREMENT:`INCREMENT`,DECREMENT:`DECREMENT`}}),Ef,Df=x(()=>{df(),Tf(),Ef=class{tokens=[];pos=0;parse(e){let t=new uf(e);return this.tokens=t.tokenize(),this.pos=0,this.parseProgram()}setPos(e){this.pos=e}current(){return this.tokens[this.pos]||{type:H.EOF,value:``,line:0,column:0}}advance(){let e=this.current();return this.pos<this.tokens.length&&this.pos++,e}match(...e){return e.includes(this.current().type)}check(e){return this.current().type===e}expect(e,t){if(!this.check(e)){let n=this.current();throw Error(t||`Expected ${e}, got ${n.type} at line ${n.line}:${n.column}`)}return this.advance()}skipNewlines(){for(;this.check(H.NEWLINE);)this.advance()}skipTerminators(){for(;this.check(H.NEWLINE)||this.check(H.SEMICOLON);)this.advance()}parseProgram(){let e=[],t=[];for(this.skipNewlines();!this.check(H.EOF)&&(this.skipNewlines(),!this.check(H.EOF));)this.check(H.FUNCTION)?e.push(this.parseFunction()):t.push(this.parseRule()),this.skipTerminators();return{functions:e,rules:t}}parseFunction(){this.expect(H.FUNCTION);let e=this.expect(H.IDENT).value;this.expect(H.LPAREN);let t=[];if(!this.check(H.RPAREN))for(t.push(this.expect(H.IDENT).value);this.check(H.COMMA);)this.advance(),t.push(this.expect(H.IDENT).value);return this.expect(H.RPAREN),this.skipNewlines(),{name:e,params:t,body:this.parseBlock()}}parseRule(){let e;if(this.check(H.BEGIN))this.advance(),e={type:`begin`};else if(this.check(H.END))this.advance(),e={type:`end`};else if(this.check(H.LBRACE))e=void 0;else if(this.check(H.REGEX)){let t=this.advance();if(this.check(H.AND)||this.check(H.OR)){let n={type:`binary`,operator:`~`,left:{type:`field`,index:{type:`number`,value:0}},right:{type:`regex`,pattern:t.value}};e={type:`expr_pattern`,expression:this.parseLogicalOrRest(n)}}else{let n={type:`regex_pattern`,pattern:t.value};if(this.check(H.COMMA)){this.advance();let t;t=this.check(H.REGEX)?{type:`regex_pattern`,pattern:this.advance().value}:{type:`expr_pattern`,expression:this.parseExpression()},e={type:`range`,start:n,end:t}}else e=n}}else{let t={type:`expr_pattern`,expression:this.parseExpression()};if(this.check(H.COMMA)){this.advance();let n;n=this.check(H.REGEX)?{type:`regex_pattern`,pattern:this.advance().value}:{type:`expr_pattern`,expression:this.parseExpression()},e={type:`range`,start:t,end:n}}else e=t}this.skipNewlines();let t;return t=this.check(H.LBRACE)?this.parseBlock():{type:`block`,statements:[{type:`print`,args:[{type:`field`,index:{type:`number`,value:0}}]}]},{pattern:e,action:t}}parseBlock(){this.expect(H.LBRACE),this.skipNewlines();let e=[];for(;!this.check(H.RBRACE)&&!this.check(H.EOF);)e.push(this.parseStatement()),this.skipTerminators();return this.expect(H.RBRACE),{type:`block`,statements:e}}parseStatement(){if(this.check(H.SEMICOLON)||this.check(H.NEWLINE))return this.advance(),{type:`block`,statements:[]};if(this.check(H.LBRACE))return this.parseBlock();if(this.check(H.IF))return this.parseIf();if(this.check(H.WHILE))return this.parseWhile();if(this.check(H.DO))return this.parseDoWhile();if(this.check(H.FOR))return this.parseFor();if(this.check(H.BREAK))return this.advance(),{type:`break`};if(this.check(H.CONTINUE))return this.advance(),{type:`continue`};if(this.check(H.NEXT))return this.advance(),{type:`next`};if(this.check(H.NEXTFILE))return this.advance(),{type:`nextfile`};if(this.check(H.EXIT)){this.advance();let e;return!this.check(H.NEWLINE)&&!this.check(H.SEMICOLON)&&!this.check(H.RBRACE)&&!this.check(H.EOF)&&(e=this.parseExpression()),{type:`exit`,code:e}}if(this.check(H.RETURN)){this.advance();let e;return!this.check(H.NEWLINE)&&!this.check(H.SEMICOLON)&&!this.check(H.RBRACE)&&!this.check(H.EOF)&&(e=this.parseExpression()),{type:`return`,value:e}}if(this.check(H.DELETE)){this.advance();let e=this.parsePrimary();if(e.type!==`array_access`&&e.type!==`variable`)throw Error(`delete requires array element or array`);return{type:`delete`,target:e}}return this.check(H.PRINT)?ff(this):this.check(H.PRINTF)?wf(this):{type:`expr_stmt`,expression:this.parseExpression()}}parseIf(){this.expect(H.IF),this.expect(H.LPAREN);let e=this.parseExpression();this.expect(H.RPAREN),this.skipNewlines();let t=this.parseStatement();this.skipTerminators();let n;return this.check(H.ELSE)&&(this.advance(),this.skipNewlines(),n=this.parseStatement()),{type:`if`,condition:e,consequent:t,alternate:n}}parseWhile(){this.expect(H.WHILE),this.expect(H.LPAREN);let e=this.parseExpression();return this.expect(H.RPAREN),this.skipNewlines(),{type:`while`,condition:e,body:this.parseStatement()}}parseDoWhile(){this.expect(H.DO),this.skipNewlines();let e=this.parseStatement();this.skipNewlines(),this.expect(H.WHILE),this.expect(H.LPAREN);let t=this.parseExpression();return this.expect(H.RPAREN),{type:`do_while`,body:e,condition:t}}parseFor(){if(this.expect(H.FOR),this.expect(H.LPAREN),this.check(H.IDENT)){let e=this.advance();if(this.check(H.IN)){this.advance();let t=this.expect(H.IDENT).value;this.expect(H.RPAREN),this.skipNewlines();let n=this.parseStatement();return{type:`for_in`,variable:e.value,array:t,body:n}}this.pos--}let e;this.check(H.SEMICOLON)||(e=this.parseExpression()),this.expect(H.SEMICOLON);let t;this.check(H.SEMICOLON)||(t=this.parseExpression()),this.expect(H.SEMICOLON);let n;this.check(H.RPAREN)||(n=this.parseExpression()),this.expect(H.RPAREN),this.skipNewlines();let r=this.parseStatement();return{type:`for`,init:e,condition:t,update:n,body:r}}parseExpression(){return this.parseAssignment()}parseAssignment(){let e=this.parseTernary();if(this.match(H.ASSIGN,H.PLUS_ASSIGN,H.MINUS_ASSIGN,H.STAR_ASSIGN,H.SLASH_ASSIGN,H.PERCENT_ASSIGN,H.CARET_ASSIGN)){let t=this.advance(),n=this.parseAssignment();if(e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`)throw Error(`Invalid assignment target`);let r=new Set([`=`,`+=`,`-=`,`*=`,`/=`,`%=`,`^=`]),i=t.value;if(!r.has(i))throw Error(`Unknown assignment operator: ${i}`);return{type:`assignment`,operator:i,target:e,value:n}}return e}parseTernary(){let e=this.parsePipeGetline();if(this.check(H.QUESTION)){this.advance();let t=this.parseExpression();this.expect(H.COLON);let n=this.parseExpression();e={type:`ternary`,condition:e,consequent:t,alternate:n}}return e}parsePipeGetline(){let e=this.parseOr();if(this.check(H.PIPE)){if(this.advance(),!this.check(H.GETLINE))throw Error(`Expected 'getline' after '|' in expression context`);this.advance();let t;return this.check(H.IDENT)&&(t=this.advance().value),{type:`getline`,command:e,variable:t}}return e}parseOr(){let e=this.parseAnd();for(;this.check(H.OR);){this.advance();let t=this.parseAnd();e={type:`binary`,operator:`||`,left:e,right:t}}return e}parseLogicalOrRest(e){for(e=this.parseLogicalAndRest(e);this.check(H.OR);){this.advance();let t=this.parseAnd();e={type:`binary`,operator:`||`,left:e,right:t}}return e}parseLogicalAndRest(e){for(;this.check(H.AND);){this.advance();let t=this.parseIn();e={type:`binary`,operator:`&&`,left:e,right:t}}return e}parseAnd(){let e=this.parseIn();for(;this.check(H.AND);){this.advance();let t=this.parseIn();e={type:`binary`,operator:`&&`,left:e,right:t}}return e}parseIn(){let e=this.parseConcatenation();return this.check(H.IN)?(this.advance(),{type:`in`,key:e,array:this.expect(H.IDENT).value}):e}parseConcatenation(){let e=this.parseMatch();for(;this.canStartExpression()&&!this.isConcatTerminator();){let t=this.parseMatch();e={type:`binary`,operator:` `,left:e,right:t}}return e}parseMatch(){let e=this.parseComparison();for(;this.match(H.MATCH,H.NOT_MATCH);){let t=this.advance().type===H.MATCH?`~`:`!~`,n=this.parseComparison();e={type:`binary`,operator:t,left:e,right:n}}return e}parseComparison(){let e=this.parseAddSub();for(;this.match(H.LT,H.LE,H.GT,H.GE,H.EQ,H.NE);){let t=this.advance(),n=this.parseAddSub();e={type:`binary`,operator:new Map([[`<`,`<`],[`<=`,`<=`],[`>`,`>`],[`>=`,`>=`],[`==`,`==`],[`!=`,`!=`]]).get(t.value)??`==`,left:e,right:n}}return e}canStartExpression(){return this.match(H.NUMBER,H.STRING,H.IDENT,H.DOLLAR,H.LPAREN,H.NOT,H.MINUS,H.PLUS,H.INCREMENT,H.DECREMENT)}isConcatTerminator(){return this.match(H.AND,H.OR,H.QUESTION,H.ASSIGN,H.PLUS_ASSIGN,H.MINUS_ASSIGN,H.STAR_ASSIGN,H.SLASH_ASSIGN,H.PERCENT_ASSIGN,H.CARET_ASSIGN,H.COMMA,H.SEMICOLON,H.NEWLINE,H.RBRACE,H.RPAREN,H.RBRACKET,H.COLON,H.PIPE,H.APPEND,H.IN)}parseAddSub(){let e=this.parseMulDiv();for(;this.match(H.PLUS,H.MINUS);){let t=this.advance().value,n=this.parseMulDiv();e={type:`binary`,operator:t,left:e,right:n}}return e}parseMulDiv(){let e=this.parseUnary();for(;this.match(H.STAR,H.SLASH,H.PERCENT);){let t=this.advance(),n=this.parseUnary();e={type:`binary`,operator:new Map([[`*`,`*`],[`/`,`/`],[`%`,`%`]]).get(t.value)??`*`,left:e,right:n}}return e}parseUnary(){if(this.check(H.INCREMENT)){this.advance();let e=this.parseUnary();return e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`?{type:`unary`,operator:`+`,operand:{type:`unary`,operator:`+`,operand:e}}:{type:`pre_increment`,operand:e}}if(this.check(H.DECREMENT)){this.advance();let e=this.parseUnary();return e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`?{type:`unary`,operator:`-`,operand:{type:`unary`,operator:`-`,operand:e}}:{type:`pre_decrement`,operand:e}}return this.match(H.NOT,H.MINUS,H.PLUS)?{type:`unary`,operator:this.advance().value,operand:this.parseUnary()}:this.parsePower()}parsePower(){let e=this.parsePostfix();if(this.check(H.CARET)){this.advance();let t=this.parsePower();e={type:`binary`,operator:`^`,left:e,right:t}}return e}parsePostfix(){let e=this.parsePrimary();if(this.check(H.INCREMENT)){if(this.advance(),e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`)throw Error(`Invalid increment operand`);return{type:`post_increment`,operand:e}}if(this.check(H.DECREMENT)){if(this.advance(),e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`)throw Error(`Invalid decrement operand`);return{type:`post_decrement`,operand:e}}return e}parseFieldIndex(){if(this.check(H.INCREMENT)){this.advance();let e=this.parseFieldIndex();return e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`?{type:`unary`,operator:`+`,operand:{type:`unary`,operator:`+`,operand:e}}:{type:`pre_increment`,operand:e}}if(this.check(H.DECREMENT)){this.advance();let e=this.parseFieldIndex();return e.type!==`variable`&&e.type!==`field`&&e.type!==`array_access`?{type:`unary`,operator:`-`,operand:{type:`unary`,operator:`-`,operand:e}}:{type:`pre_decrement`,operand:e}}return this.match(H.NOT,H.MINUS,H.PLUS)?{type:`unary`,operator:this.advance().value,operand:this.parseFieldIndex()}:this.parseFieldIndexPower()}parseFieldIndexPower(){let e=this.parseFieldIndexPrimary();if(this.check(H.CARET)){this.advance();let t=this.parseFieldIndexPower();e={type:`binary`,operator:`^`,left:e,right:t}}return e}parseFieldIndexPrimary(){if(this.check(H.NUMBER))return{type:`number`,value:this.advance().value};if(this.check(H.STRING))return{type:`string`,value:this.advance().value};if(this.check(H.DOLLAR))return this.advance(),{type:`field`,index:this.parseFieldIndex()};if(this.check(H.LPAREN)){this.advance();let e=this.parseExpression();return this.expect(H.RPAREN),e}if(this.check(H.IDENT)){let e=this.advance().value;if(this.check(H.LPAREN)){this.advance();let t=[];if(!this.check(H.RPAREN))for(t.push(this.parseExpression());this.check(H.COMMA);)this.advance(),t.push(this.parseExpression());return this.expect(H.RPAREN),{type:`call`,name:e,args:t}}if(this.check(H.LBRACKET)){this.advance();let t=this.parseExpression();if(this.check(H.COMMA)){let n=[t];for(;this.check(H.COMMA);)this.advance(),n.push(this.parseExpression());return this.expect(H.RBRACKET),{type:`array_access`,array:e,key:n.reduce((e,t)=>({type:`binary`,operator:` `,left:{type:`binary`,operator:` `,left:e,right:{type:`variable`,name:`SUBSEP`}},right:t}))}}return this.expect(H.RBRACKET),{type:`array_access`,array:e,key:t}}return{type:`variable`,name:e}}throw Error(`Unexpected token in field index: ${this.current().type} at line ${this.current().line}:${this.current().column}`)}parsePrimary(){if(this.check(H.NUMBER))return{type:`number`,value:this.advance().value};if(this.check(H.STRING))return{type:`string`,value:this.advance().value};if(this.check(H.REGEX))return{type:`regex`,pattern:this.advance().value};if(this.check(H.DOLLAR))return this.advance(),{type:`field`,index:this.parseFieldIndex()};if(this.check(H.LPAREN)){this.advance();let e=this.parseExpression();if(this.check(H.COMMA)){let t=[e];for(;this.check(H.COMMA);)this.advance(),t.push(this.parseExpression());return this.expect(H.RPAREN),{type:`tuple`,elements:t}}return this.expect(H.RPAREN),e}if(this.check(H.GETLINE)){this.advance();let e,t;return this.check(H.IDENT)&&(e=this.advance().value),this.check(H.LT)&&(this.advance(),t=this.parsePrimary()),{type:`getline`,variable:e,file:t}}if(this.check(H.IDENT)){let e=this.advance().value;if(this.check(H.LPAREN)){this.advance();let t=[];if(this.skipNewlines(),!this.check(H.RPAREN))for(t.push(this.parseExpression());this.check(H.COMMA);)this.advance(),this.skipNewlines(),t.push(this.parseExpression());return this.skipNewlines(),this.expect(H.RPAREN),{type:`call`,name:e,args:t}}if(this.check(H.LBRACKET)){this.advance();let t=[this.parseExpression()];for(;this.check(H.COMMA);)this.advance(),t.push(this.parseExpression());this.expect(H.RBRACKET);let n;if(t.length===1)n=t[0];else{n=t[0];for(let e=1;e<t.length;e++)n={type:`binary`,operator:` `,left:{type:`binary`,operator:` `,left:n,right:{type:`variable`,name:`SUBSEP`}},right:t[e]}}return{type:`array_access`,array:e,key:n}}return{type:`variable`,name:e}}throw Error(`Unexpected token: ${this.current().type} at line ${this.current().line}:${this.current().column}`)}}}),Of={};S(Of,{awkCommand2:()=>Nf,flagsForFuzzing:()=>Pf});function kf(e){return e.replace(/\\t/g,` `).replace(/\\n/g,`
418
+ `).replace(/\\r/g,`\r`).replace(/\\b/g,`\b`).replace(/\\f/g,`\f`).replace(/\\a/g,`\x07`).replace(/\\v/g,`\v`).replace(/\\\\/g,`\\`)}function Af(e){if(e===` `)return z(`\\s+`);if(/[[\](){}.*+?^$|\\]/.test(e))try{return z(e)}catch{return z(jf(e))}return z(jf(e))}function jf(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}var Mf,Nf,Pf,Ff=x(()=>{w(),cu(),A(),ks(),wl(),Qn(),O(),of(),Df(),Mf={name:`awk`,summary:`pattern scanning and text processing language`,usage:`awk [OPTIONS] 'PROGRAM' [FILE...]`,options:[`-F FS use FS as field separator`,`-v VAR=VAL assign VAL to variable VAR`,` --help display this help and exit`]},Nf={name:`awk`,async execute(e,t){Sl(t.requireDefenseContext,`awk`,`execution entry`);let n=(e,n)=>Cl(t.requireDefenseContext,`awk`,e,n);if(E(e))return T(Mf);let r=new Ds(/\s+/),i=` `,a=Object.create(null),o=0;for(let t=0;t<e.length;t++){let n=e[t];if(n===`-F`&&t+1<e.length)i=kf(e[++t]),r=Af(i),o=t+1;else if(n.startsWith(`-F`))i=kf(n.slice(2)),r=Af(i),o=t+1;else if(n===`-v`&&t+1<e.length){let n=e[++t],r=n.indexOf(`=`);if(r>0){let e=n.slice(0,r);a[e]=kf(n.slice(r+1))}o=t+1}else{if(n.startsWith(`--`))return D(`awk`,n);if(n.startsWith(`-`)&&n.length>1){let e=n[1];if(e!==`F`&&e!==`v`)return D(`awk`,`-${e}`);o=t+1}else if(!n.startsWith(`-`)){o=t;break}}}if(o>=e.length)return{stdout:``,stderr:`awk: missing program
419
+ `,exitCode:1};let s=e[o],c=e.slice(o+1),l=new Ef,u;try{u=l.parse(s)}catch(e){return{stdout:``,stderr:`awk: ${e instanceof Error?e.message:String(e)}
420
+ `,exitCode:1}}let d={readFile:t.fs.readFile.bind(t.fs),writeFile:t.fs.writeFile.bind(t.fs),appendFile:async(e,r)=>{try{let i=await n(`appendFile read`,()=>t.fs.readFile(e));await n(`appendFile write`,()=>t.fs.writeFile(e,i+r))}catch(i){if(i instanceof C)throw i;await n(`appendFile create`,()=>t.fs.writeFile(e,r))}},resolvePath:t.fs.resolvePath.bind(t.fs)},f=t.exec,p=lu({fieldSep:r,maxIterations:t.limits?.maxAwkIterations,maxOutputSize:t.limits?.maxStringLength,fs:d,cwd:t.cwd,exec:f?e=>n(`command pipe exec`,()=>f(e,{cwd:t.cwd,signal:t.signal})):void 0,coverage:t.coverage,requireDefenseContext:t.requireDefenseContext});p.FS=i,p.vars=Object.assign(Object.create(null),a),p.ARGC=c.length+1,p.ARGV=Object.create(null),p.ARGV[0]=`awk`;for(let e=0;e<c.length;e++)p.ARGV[String(e+1)]=c[e];p.ENVIRON=au(t.env);let m=new rf(p);m.execute(u);let h=u.rules.some(e=>e.pattern?.type!==`begin`&&e.pattern?.type!==`end`),g=u.rules.some(e=>e.pattern?.type===`end`);try{if(await n(`BEGIN execution`,()=>m.executeBegin()),p.shouldExit)return await n(`END execution after BEGIN exit`,()=>m.executeEnd()),{stdout:m.getOutput(),stderr:``,exitCode:m.getExitCode()};if(!h&&!g)return{stdout:m.getOutput(),stderr:``,exitCode:m.getExitCode()};let e=[];if(c.length>0)for(let r of c)try{let i=t.fs.resolvePath(t.cwd,r),a=(await n(`input file read`,()=>t.fs.readFile(i))).split(`
421
+ `);a.length>0&&a[a.length-1]===``&&a.pop(),e.push({filename:r,lines:a})}catch(e){if(e instanceof C)throw e;return{stdout:``,stderr:`awk: ${r}: No such file or directory
422
+ `,exitCode:1}}else{let n=ur(t.stdin).split(`
423
+ `);n.length>0&&n[n.length-1]===``&&n.pop(),e.push({filename:``,lines:n})}for(let t of e){for(p.FILENAME=t.filename,p.FNR=0,p.lines=t.lines,p.lineIndex=-1,p.shouldNextFile=!1;p.lineIndex<t.lines.length-1;){p.lineIndex++;let e=p.lineIndex;if(await n(`line execution`,()=>m.executeLine(t.lines[e])),p.shouldExit||p.shouldNextFile)break}if(p.shouldExit)break}return await n(`END execution`,()=>m.executeEnd()),{stdout:m.getOutput(),stderr:``,exitCode:m.getExitCode()}}catch(e){if(e instanceof C)throw e;let t=e instanceof Error?e.message:String(e),n=e instanceof k?k.EXIT_CODE:2;return{stdout:m.getOutput(),stderr:`awk: ${t}
424
+ `,exitCode:n}}}},Pf={name:`awk`,flags:[{flag:`-F`,type:`value`,valueHint:`delimiter`},{flag:`-v`,type:`value`,valueHint:`string`}],stdinType:`text`,needsArgs:!0}});function If(e){let t=e.trim(),n=t.match(/^([+-]?\d*\.?\d+)\s*([kmgtpeKMGTPE])?[iI]?[bB]?$/);if(!n){let e=parseFloat(t);return Number.isNaN(e)?0:e}let r=parseFloat(n[1]),i=(n[2]||``).toLowerCase();return r*(Wf.get(i)??1)}function Lf(e){let t=e.trim().toLowerCase().slice(0,3);return Gf.get(t)??0}function Rf(e,t){let n=e.split(/(\d+)/),r=t.split(/(\d+)/),i=Math.max(n.length,r.length);for(let e=0;e<i;e++){let t=n[e]||``,i=r[e]||``,a=/^\d+$/.test(t)?parseInt(t,10):null,o=/^\d+$/.test(i)?parseInt(i,10):null;if(a!==null&&o!==null){if(a!==o)return a-o}else if(t!==i)return t.localeCompare(i)}return 0}function zf(e){return e.replace(/[^a-zA-Z0-9\s]/g,``)}function Bf(e,t,n){let r=n===null?/\s+/:n,i=e.split(r),a=t.startField-1;if(a>=i.length)return``;if(t.endField===void 0){let e=i[a]||``;return t.startChar!==void 0&&(e=e.slice(t.startChar-1)),t.ignoreLeading&&(e=e.trimStart()),e}let o=Math.min(t.endField-1,i.length-1),s=``;for(let e=a;e<=o&&e<i.length;e++){let r=i[e]||``;if(e===a&&t.startChar!==void 0&&(r=r.slice(t.startChar-1)),e===o&&t.endChar!==void 0){let n=e===a&&t.startChar!==void 0?t.endChar-t.startChar+1:t.endChar;r=r.slice(0,n)}e>a&&(s+=n||` `),s+=r}return t.ignoreLeading&&(s=s.trimStart()),s}function Vf(e,t,n){let r=e,i=t;return n.dictionaryOrder&&(r=zf(r),i=zf(i)),n.ignoreCase&&(r=r.toLowerCase(),i=i.toLowerCase()),n.monthSort?Lf(r)-Lf(i):n.humanNumeric?If(r)-If(i):n.versionSort?Rf(r,i):n.numeric?(parseFloat(r)||0)-(parseFloat(i)||0):r.localeCompare(i)}function Hf(e){let{keys:t,fieldDelimiter:n,numeric:r,ignoreCase:i,reverse:a,humanNumeric:o,versionSort:s,dictionaryOrder:c,monthSort:l,ignoreLeadingBlanks:u,stable:d}=e;return(e,f)=>{let p=e,m=f;if(u&&(p=p.trimStart(),m=m.trimStart()),t.length===0){let t=Vf(p,m,{numeric:r,ignoreCase:i,humanNumeric:o,versionSort:s,dictionaryOrder:c,monthSort:l});if(t!==0)return a?-t:t;if(!d){let t=e.localeCompare(f);return a?-t:t}return 0}for(let e of t){let t=Bf(p,e,n),u=Bf(m,e,n);e.ignoreLeading&&(t=t.trimStart(),u=u.trimStart());let d={numeric:e.numeric??r,ignoreCase:e.ignoreCase??i,humanNumeric:e.humanNumeric??o,versionSort:e.versionSort??s,dictionaryOrder:e.dictionaryOrder??c,monthSort:e.monthSort??l},f=e.reverse??a,h=Vf(t,u,d);if(h!==0)return f?-h:h}if(!d){let t=e.localeCompare(f);return a?-t:t}return 0}}function Uf(e,t){if(t.keys.length===0){if(t.ignoreCase){let t=new Set;return e.filter(e=>{let n=e.toLowerCase();return t.has(n)?!1:(t.add(n),!0)})}return[...new Set(e)]}let n=t.keys[0],r=new Set;return e.filter(e=>{let i=Bf(e,n,t.fieldDelimiter);return(n.ignoreCase??t.ignoreCase)&&(i=i.toLowerCase()),r.has(i)?!1:(r.add(i),!0)})}var Wf,Gf,Kf=x(()=>{Wf=new Map([[``,1],[`k`,1024],[`m`,1048576],[`g`,1073741824],[`t`,1099511627776],[`p`,0x4000000000000],[`e`,0x1000000000000000]]),Gf=new Map([[`jan`,1],[`feb`,2],[`mar`,3],[`apr`,4],[`may`,5],[`jun`,6],[`jul`,7],[`aug`,8],[`sep`,9],[`oct`,10],[`nov`,11],[`dec`,12]])});function qf(e){let t={startField:1},n=``,r=e,i=r.match(/([bdfhMnrV]+)$/);i&&(n=i[1],r=r.slice(0,-n.length)),n.includes(`n`)&&(t.numeric=!0),n.includes(`r`)&&(t.reverse=!0),n.includes(`f`)&&(t.ignoreCase=!0),n.includes(`b`)&&(t.ignoreLeading=!0),n.includes(`h`)&&(t.humanNumeric=!0),n.includes(`V`)&&(t.versionSort=!0),n.includes(`d`)&&(t.dictionaryOrder=!0),n.includes(`M`)&&(t.monthSort=!0);let a=r.split(`,`);if(a.length===0||a[0]===``)return null;let o=a[0].split(`.`),s=parseInt(o[0],10);if(Number.isNaN(s)||s<1)return null;if(t.startField=s,o.length>1&&o[1]){let e=parseInt(o[1],10);!Number.isNaN(e)&&e>=1&&(t.startChar=e)}if(a.length>1&&a[1]){let e=a[1],n=e.match(/([bdfhMnrV]+)$/);if(n){let r=n[1];r.includes(`n`)&&(t.numeric=!0),r.includes(`r`)&&(t.reverse=!0),r.includes(`f`)&&(t.ignoreCase=!0),r.includes(`b`)&&(t.ignoreLeading=!0),r.includes(`h`)&&(t.humanNumeric=!0),r.includes(`V`)&&(t.versionSort=!0),r.includes(`d`)&&(t.dictionaryOrder=!0),r.includes(`M`)&&(t.monthSort=!0),e=e.slice(0,-r.length)}let r=e.split(`.`);if(r[0]){let e=parseInt(r[0],10);if(!Number.isNaN(e)&&e>=1&&(t.endField=e),r.length>1&&r[1]){let e=parseInt(r[1],10);!Number.isNaN(e)&&e>=1&&(t.endChar=e)}}}return t}var Jf=x(()=>{}),Yf={};S(Yf,{flagsForFuzzing:()=>Qf,sortCommand:()=>Zf});var Xf,Zf,Qf,$f=x(()=>{w(),Tr(),O(),Kf(),Jf(),Xf={name:`sort`,summary:`sort lines of text files`,usage:`sort [OPTION]... [FILE]...`,options:[`-b, --ignore-leading-blanks ignore leading blanks`,`-d, --dictionary-order consider only blanks and alphanumeric characters`,`-f, --ignore-case fold lower case to upper case characters`,`-h, --human-numeric-sort compare human readable numbers (e.g., 2K 1G)`,`-M, --month-sort compare (unknown) < 'JAN' < ... < 'DEC'`,`-n, --numeric-sort compare according to string numerical value`,`-r, --reverse reverse the result of comparisons`,`-V, --version-sort natural sort of (version) numbers within text`,`-c, --check check for sorted input; do not sort`,`-o, --output=FILE write result to FILE instead of stdout`,`-s, --stable stabilize sort by disabling last-resort comparison`,`-u, --unique output only unique lines`,`-k, --key=KEYDEF sort via a key; KEYDEF gives location and type`,`-t, --field-separator=SEP use SEP as field separator`,` --help display this help and exit`],description:`KEYDEF is F[.C][OPTS][,F[.C][OPTS]]
425
+ F is a field number (1-indexed)
426
+ C is a character position within the field (1-indexed)
427
+ OPTS can be: b d f h M n r V (per-key modifiers)
428
+
429
+ Examples:
430
+ -k1 sort by first field
431
+ -k2,2 sort by second field only
432
+ -k1.3 sort by first field starting at 3rd character
433
+ -k1,2n sort by fields 1-2 numerically
434
+ -k2 -k1 sort by field 2, then by field 1`},Zf={name:`sort`,async execute(e,t){if(E(e))return T(Xf);let n={reverse:!1,numeric:!1,unique:!1,ignoreCase:!1,humanNumeric:!1,versionSort:!1,dictionaryOrder:!1,monthSort:!1,ignoreLeadingBlanks:!1,stable:!1,checkOnly:!1,outputFile:null,keys:[],fieldDelimiter:null},r=[];for(let t=0;t<e.length;t++){let i=e[t];if(i===`-r`||i===`--reverse`)n.reverse=!0;else if(i===`-n`||i===`--numeric-sort`)n.numeric=!0;else if(i===`-u`||i===`--unique`)n.unique=!0;else if(i===`-f`||i===`--ignore-case`)n.ignoreCase=!0;else if(i===`-h`||i===`--human-numeric-sort`)n.humanNumeric=!0;else if(i===`-V`||i===`--version-sort`)n.versionSort=!0;else if(i===`-d`||i===`--dictionary-order`)n.dictionaryOrder=!0;else if(i===`-M`||i===`--month-sort`)n.monthSort=!0;else if(i===`-b`||i===`--ignore-leading-blanks`)n.ignoreLeadingBlanks=!0;else if(i===`-s`||i===`--stable`)n.stable=!0;else if(i===`-c`||i===`--check`)n.checkOnly=!0;else if(i===`-o`||i===`--output`)n.outputFile=e[++t]||null;else if(i.startsWith(`-o`))n.outputFile=i.slice(2)||null;else if(i.startsWith(`--output=`))n.outputFile=i.slice(9)||null;else if(i===`-t`||i===`--field-separator`)n.fieldDelimiter=e[++t]||null;else if(i.startsWith(`-t`))n.fieldDelimiter=i.slice(2)||null;else if(i.startsWith(`--field-separator=`))n.fieldDelimiter=i.slice(18)||null;else if(i===`-k`||i===`--key`){let r=e[++t];if(r){let e=qf(r);e&&n.keys.push(e)}}else if(i.startsWith(`-k`)){let e=qf(i.slice(2));e&&n.keys.push(e)}else if(i.startsWith(`--key=`)){let e=qf(i.slice(6));e&&n.keys.push(e)}else{if(i.startsWith(`--`))return D(`sort`,i);if(i.startsWith(`-`)&&!i.startsWith(`--`)){let e=!1;for(let t of i.slice(1))if(t===`r`)n.reverse=!0;else if(t===`n`)n.numeric=!0;else if(t===`u`)n.unique=!0;else if(t===`f`)n.ignoreCase=!0;else if(t===`h`)n.humanNumeric=!0;else if(t===`V`)n.versionSort=!0;else if(t===`d`)n.dictionaryOrder=!0;else if(t===`M`)n.monthSort=!0;else if(t===`b`)n.ignoreLeadingBlanks=!0;else if(t===`s`)n.stable=!0;else if(t===`c`)n.checkOnly=!0;else{e=!0;break}if(e)return D(`sort`,i)}else r.push(i)}}let i=await wr(t,r,{cmdName:`sort`});if(!i.ok)return i.error;let a=ur(i.content).split(`
435
+ `);a.length>0&&a[a.length-1]===``&&a.pop();let o=Hf(n);if(n.checkOnly){let e=r.length>0?r[0]:`-`;for(let t=1;t<a.length;t++)if(o(a[t-1],a[t])>0)return{stdout:``,stderr:`sort: ${e}:${t+1}: disorder: ${a[t]}
436
+ `,exitCode:1};return{stdout:``,stderr:``,exitCode:0}}a.sort(o),n.unique&&(a=Uf(a,n));let s=a.length>0?`${a.join(`
437
+ `)}
438
+ `:``;if(n.outputFile){let e=t.fs.resolvePath(t.cwd,n.outputFile);return await t.fs.writeFile(e,s),{stdout:``,stderr:``,exitCode:0}}return{stdout:s,stderr:``,exitCode:0}}},Qf={name:`sort`,flags:[{flag:`-r`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-u`,type:`boolean`},{flag:`-f`,type:`boolean`},{flag:`-h`,type:`boolean`},{flag:`-V`,type:`boolean`},{flag:`-d`,type:`boolean`},{flag:`-M`,type:`boolean`},{flag:`-b`,type:`boolean`},{flag:`-s`,type:`boolean`},{flag:`-c`,type:`boolean`},{flag:`-k`,type:`value`,valueHint:`string`},{flag:`-t`,type:`value`,valueHint:`delimiter`},{flag:`-o`,type:`value`,valueHint:`path`}],stdinType:`text`,needsFiles:!0}}),ep={};S(ep,{flagsForFuzzing:()=>ip,uniqCommand:()=>rp});var tp,np,rp,ip,ap=x(()=>{w(),xr(),Tr(),O(),tp={name:`uniq`,summary:`report or omit repeated lines`,usage:`uniq [OPTION]... [INPUT [OUTPUT]]`,options:[`-c, --count prefix lines by the number of occurrences`,`-d, --repeated only print duplicate lines`,`-i, --ignore-case ignore case when comparing`,`-u, --unique only print unique lines`,` --help display this help and exit`]},np={count:{short:`c`,long:`count`,type:`boolean`},duplicatesOnly:{short:`d`,long:`repeated`,type:`boolean`},uniqueOnly:{short:`u`,long:`unique`,type:`boolean`},ignoreCase:{short:`i`,long:`ignore-case`,type:`boolean`}},rp={name:`uniq`,async execute(e,t){if(E(e))return T(tp);let n=br(`uniq`,e,np);if(!n.ok)return n.error;let{count:r,duplicatesOnly:i,uniqueOnly:a,ignoreCase:o}=n.result.flags,s=n.result.positional,c=await wr(t,s,{cmdName:`uniq`});if(!c.ok)return c.error;let l=(o?ur(c.content):c.content).split(`
439
+ `);if(l.length>0&&l[l.length-1]===``&&l.pop(),l.length===0)return{stdout:``,stderr:``,exitCode:0};let u=[],d=l[0],f=1,p=(e,t)=>o?e.toLowerCase()===t.toLowerCase():e===t;for(let e=1;e<l.length;e++)p(l[e],d)?f++:(u.push({line:d,count:f}),d=l[e],f=1);u.push({line:d,count:f});let m=u;i?m=u.filter(e=>e.count>1):a&&(m=u.filter(e=>e.count===1));let h=``;for(let{line:e,count:t}of m)r?h+=`${String(t).padStart(4)} ${e}
440
+ `:h+=`${e}
441
+ `;return o?{stdout:h,stderr:``,exitCode:0}:{stdout:h,stderr:``,exitCode:0,stdoutKind:`bytes`,stdoutEncoding:`binary`}}},ip={name:`uniq`,flags:[{flag:`-c`,type:`boolean`},{flag:`-d`,type:`boolean`},{flag:`-u`,type:`boolean`},{flag:`-i`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),op={};S(op,{commCommand:()=>cp,flagsForFuzzing:()=>lp});var sp,cp,lp,up=x(()=>{w(),O(),sp={name:`comm`,summary:`compare two sorted files line by line`,usage:`comm [OPTION]... FILE1 FILE2`,options:[`-1 suppress column 1 (lines unique to FILE1)`,`-2 suppress column 2 (lines unique to FILE2)`,`-3 suppress column 3 (lines that appear in both files)`,` --help display this help and exit`]},cp={name:`comm`,async execute(e,t){if(E(e))return T(sp);let n=!1,r=!1,i=!1,a=[];for(let t of e)if(t===`-1`)n=!0;else if(t===`-2`)r=!0;else if(t===`-3`)i=!0;else if(t===`-12`||t===`-21`)n=!0,r=!0;else if(t===`-13`||t===`-31`)n=!0,i=!0;else if(t===`-23`||t===`-32`)r=!0,i=!0;else if(t===`-123`||t===`-132`||t===`-213`||t===`-231`||t===`-312`||t===`-321`)n=!0,r=!0,i=!0;else{if(t.startsWith(`-`)&&t!==`-`)return D(`comm`,t);a.push(t)}if(a.length!==2)return{stdout:``,stderr:`comm: missing operand
442
+ Try 'comm --help' for more information.
443
+ `,exitCode:1};let o=async e=>{if(e===`-`)return ur(t.stdin);try{let n=t.fs.resolvePath(t.cwd,e);return await t.fs.readFile(n)}catch{return null}},s=await o(a[0]);if(s===null)return{stdout:``,stderr:`comm: ${a[0]}: No such file or directory
444
+ `,exitCode:1};let c=await o(a[1]);if(c===null)return{stdout:``,stderr:`comm: ${a[1]}: No such file or directory
445
+ `,exitCode:1};let l=s.split(`
446
+ `),u=c.split(`
447
+ `);l.length>0&&l[l.length-1]===``&&l.pop(),u.length>0&&u[u.length-1]===``&&u.pop();let d=0,f=0,p=``,m=n?``:` `,h=(n?``:` `)+(r?``:` `);for(;d<l.length||f<u.length;)d>=l.length?(r||(p+=`${m}${u[f]}
448
+ `),f++):f>=u.length||l[d]<u[f]?(n||(p+=`${l[d]}
449
+ `),d++):l[d]>u[f]?(r||(p+=`${m}${u[f]}
450
+ `),f++):(i||(p+=`${h}${l[d]}
451
+ `),d++,f++);return{stdout:p,stderr:``,exitCode:0}}},lp={name:`comm`,flags:[{flag:`-1`,type:`boolean`},{flag:`-2`,type:`boolean`},{flag:`-3`,type:`boolean`}],needsArgs:!0,minArgs:2}}),dp={};S(dp,{cutCommand:()=>hp,flagsForFuzzing:()=>gp});function fp(e){let t=[],n=e.split(`,`);for(let e of n)if(e.includes(`-`)){let[n,r]=e.split(`-`);t.push({start:n?parseInt(n,10):1,end:r?parseInt(r,10):null})}else{let n=parseInt(e,10);t.push({start:n,end:n})}return t}function pp(e,t){let n=[];for(let r of t){let t=r.start-1,i=r.end===null?e.length:r.end;for(let r=t;r<i&&r<e.length;r++)r>=0&&!n.includes(e[r])&&n.push(e[r])}return n}var mp,hp,gp,_p=x(()=>{w(),Tr(),O(),mp={name:`cut`,summary:`remove sections from each line of files`,usage:`cut [OPTION]... [FILE]...`,options:[`-c LIST select only these characters`,`-d DELIM use DELIM instead of TAB for field delimiter`,`-f LIST select only these fields`,`-s, --only-delimited do not print lines without delimiters`,` --help display this help and exit`]},hp={name:`cut`,async execute(e,t){if(E(e))return T(mp);let n=` `,r=null,i=null,a=!1,o=[];for(let t=0;t<e.length;t++){let s=e[t];if(s===`-d`)n=e[++t]||` `;else if(s.startsWith(`-d`))n=s.slice(2);else if(s===`-f`)r=e[++t];else if(s.startsWith(`-f`))r=s.slice(2);else if(s===`-c`)i=e[++t];else if(s.startsWith(`-c`))i=s.slice(2);else if(s===`-s`||s===`--only-delimited`)a=!0;else{if(s.startsWith(`--`))return D(`cut`,s);if(s.startsWith(`-`)){let e=!1;for(let t of s.slice(1))if(t===`s`)a=!0;else if(!`dfc`.includes(t)){e=!0;break}if(e)return D(`cut`,s)}else o.push(s)}}if(!r&&!i)return{stdout:``,stderr:`cut: you must specify a list of bytes, characters, or fields
452
+ `,exitCode:1};let s=await wr(t,o,{cmdName:`cut`});if(!s.ok)return s.error;let c=(i?ur(s.content):s.content).split(`
453
+ `);c.length>0&&c[c.length-1]===``&&c.pop();let l=fp(r||i||`1`),u=``;for(let e of c)if(i){let t=Array.from(e),n=[];for(let e of l){let r=e.start-1,i=e.end===null?t.length:e.end;for(let e=r;e<i&&e<t.length;e++)e>=0&&n.push(t[e])}u+=`${n.join(``)}
454
+ `}else{if(a&&!e.includes(n))continue;let t=pp(e.split(n),l);u+=`${t.join(n)}
455
+ `}return i?{stdout:u,stderr:``,exitCode:0}:{stdout:u,stderr:``,exitCode:0,stdoutKind:`bytes`,stdoutEncoding:`binary`}}},gp={name:`cut`,flags:[{flag:`-d`,type:`value`,valueHint:`delimiter`},{flag:`-f`,type:`value`,valueHint:`string`},{flag:`-c`,type:`value`,valueHint:`string`},{flag:`-s`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),vp={};S(vp,{flagsForFuzzing:()=>Cp,pasteCommand:()=>Sp});function yp(e,t){if(e.length===0)return``;if(e.length===1)return e[0];let n=e[0];for(let r=1;r<e.length;r++){let i=(r-1)%t.length;n+=t[i]+e[r]}return n}var bp,xp,Sp,Cp,wp=x(()=>{w(),xr(),O(),bp={name:`paste`,summary:`merge lines of files`,usage:`paste [OPTION]... [FILE]...`,description:[`Write lines consisting of the sequentially corresponding lines from`,`each FILE, separated by TABs, to standard output.`,``,`With no FILE, or when FILE is -, read standard input.`],options:[`-d, --delimiters=LIST reuse characters from LIST instead of TABs`,`-s, --serial paste one file at a time instead of in parallel`,` --help display this help and exit`],examples:[`paste file1 file2 Merge file1 and file2 side by side`,`paste -d, file1 file2 Use comma as delimiter`,`paste -s file1 Paste all lines of file1 on one line`,`paste - - < file Paste pairs of lines from file`]},xp={delimiter:{short:`d`,long:`delimiters`,type:`string`,default:` `},serial:{short:`s`,long:`serial`,type:`boolean`}},Sp={name:`paste`,async execute(e,t){if(E(e))return T(bp);let n=br(`paste`,e,xp);if(!n.ok)return n.error;let r=n.result.flags.delimiter,i=n.result.flags.serial,a=n.result.positional;if(a.length===0)return{stdout:``,stderr:`usage: paste [-s] [-d delimiters] file ...
456
+ `,exitCode:1};let o=ur(t.stdin),s=o?o.split(`
457
+ `):[``];s.length>0&&s[s.length-1]===``&&s.pop();let c=a.filter(e=>e===`-`).length,l=[],u=0;for(let e of a)if(e===`-`){let e=[];for(let t=u;t<s.length;t+=c)e.push(s[t]);l.push(e),u++}else{let n=t.fs.resolvePath(t.cwd,e);try{let e=(await t.fs.readFile(n)).split(`
458
+ `);e.length>0&&e[e.length-1]===``&&e.pop(),l.push(e)}catch{return{stdout:``,stderr:`paste: ${e}: No such file or directory
459
+ `,exitCode:1}}}let d=``;if(i)for(let e of l)e&&(d+=`${yp(e,r)}
460
+ `);else{let e=Math.max(...l.map(e=>e?.length??0));for(let t=0;t<e;t++){let e=[];for(let n of l)e.push(n?.[t]??``);d+=`${yp(e,r)}
461
+ `}}return{stdout:d,stderr:``,exitCode:0}}},Cp={name:`paste`,flags:[{flag:`-d`,type:`value`,valueHint:`delimiter`},{flag:`-s`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),Tp={};S(Tp,{flagsForFuzzing:()=>jp,trCommand:()=>Ap});function Ep(e){let t=``,n=0;for(;n<e.length;){if(e[n]===`[`&&e[n+1]===`:`){let r=!1;for(let[i,a]of Op)if(e.slice(n).startsWith(i)){t+=a,n+=i.length,r=!0;break}if(r)continue}if(e[n]===`\\`&&n+1<e.length){let r=e[n+1];r===`n`?t+=`
462
+ `:r===`t`?t+=` `:r===`r`?t+=`\r`:t+=r,n+=2;continue}if(n+2<e.length&&e[n+1]===`-`){let r=e.charCodeAt(n),i=e.charCodeAt(n+2);if(i-r>65536)throw Error(`tr: character range too large: '${e[n]}-${e[n+2]}'`);for(let e=r;e<=i;e++)t+=String.fromCharCode(e);n+=3;continue}t+=e[n],n++}return t}var Dp,Op,kp,Ap,jp,Mp=x(()=>{w(),Vi(),xr(),O(),Dp={name:`tr`,summary:`translate or delete characters`,usage:`tr [OPTION]... SET1 [SET2]`,options:[`-c, -C, --complement use the complement of SET1`,`-d, --delete delete characters in SET1`,`-s, --squeeze-repeats squeeze repeated characters`,` --help display this help and exit`],description:`SET syntax:
463
+ a-z character range
464
+ [:alnum:] all letters and digits
465
+ [:alpha:] all letters
466
+ [:digit:] all digits
467
+ [:lower:] all lowercase letters
468
+ [:upper:] all uppercase letters
469
+ [:space:] all whitespace
470
+ [:blank:] horizontal whitespace
471
+ [:punct:] all punctuation
472
+ [:print:] all printable characters
473
+ [:graph:] all printable characters except space
474
+ [:cntrl:] all control characters
475
+ [:xdigit:] all hexadecimal digits
476
+ \\n, \\t, \\r escape sequences`},Op=new Map([[`[:alnum:]`,`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`],[`[:alpha:]`,`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`],[`[:blank:]`,` `],[`[:cntrl:]`,Array.from({length:32},(e,t)=>String.fromCharCode(t)).join(``).concat(``)],[`[:digit:]`,`0123456789`],[`[:graph:]`,Array.from({length:94},(e,t)=>String.fromCharCode(33+t)).join(``)],[`[:lower:]`,`abcdefghijklmnopqrstuvwxyz`],[`[:print:]`,Array.from({length:95},(e,t)=>String.fromCharCode(32+t)).join(``)],[`[:punct:]`,`!"#$%&'()*+,-./:;<=>?@[\\]^_\`{|}~`],[`[:space:]`,`
477
+ \r\f\v`],[`[:upper:]`,`ABCDEFGHIJKLMNOPQRSTUVWXYZ`],[`[:xdigit:]`,`0123456789ABCDEFabcdef`]]),kp={complement:{short:`c`,long:`complement`,type:`boolean`},complementUpper:{short:`C`,type:`boolean`},delete:{short:`d`,long:`delete`,type:`boolean`},squeeze:{short:`s`,long:`squeeze-repeats`,type:`boolean`}},Ap={name:`tr`,async execute(e,t){if(E(e))return T(Dp);let n=br(`tr`,e,kp);if(!n.ok)return n.error;let r=n.result.flags.complement||n.result.flags.complementUpper,i=n.result.flags.delete,a=n.result.flags.squeeze,o=n.result.positional;if(o.length<1)return{stdout:``,stderr:`tr: missing operand
478
+ `,exitCode:1};if(!i&&!a&&o.length<2)return{stdout:``,stderr:`tr: missing operand after SET1
479
+ `,exitCode:1};let s,c;try{s=Ep(o[0]),c=o.length>1?Ep(o[1]):``}catch(e){return{stdout:``,stderr:`${Bi(e.message)}
480
+ `,exitCode:1}}let l=ur(t.stdin),u=e=>{let t=s.includes(e);return r?!t:t},d=``;if(i)for(let e of l)u(e)||(d+=e);else if(a&&o.length===1){let e=``;for(let t of l)u(t)&&t===e||(d+=t,e=t)}else{if(r){let e=c.length>0?c[c.length-1]:``;for(let t of l)s.includes(t)?d+=t:d+=e}else{let e=new Map;for(let t=0;t<s.length;t++){let n=t<c.length?c[t]:c[c.length-1];e.set(s[t],n)}for(let t of l)d+=e.get(t)??t}if(a){let e=``,t=``;for(let n of d)c.includes(n)&&n===t||(e+=n,t=n);d=e}}return{stdout:d,stderr:``,exitCode:0}}},jp={name:`tr`,flags:[{flag:`-c`,type:`boolean`},{flag:`-C`,type:`boolean`},{flag:`-d`,type:`boolean`},{flag:`-s`,type:`boolean`}],stdinType:`text`,needsArgs:!0}}),Np={};S(Np,{flagsForFuzzing:()=>Lp,rev:()=>Ip});function Pp(e){return Array.from(e).reverse().join(``)}var Fp,Ip,Lp,Rp=x(()=>{w(),O(),Fp={name:`rev`,summary:`reverse lines characterwise`,usage:`rev [file ...]`,description:`Copies the specified files to standard output, reversing the order of characters in every line. If no files are specified, standard input is read.`,examples:[`echo 'hello' | rev # Output: olleh`,`rev file.txt # Reverse each line in file`]},Ip={name:`rev`,execute:async(e,t)=>{if(E(e))return T(Fp);let n=[];for(let t of e)if(t===`--`){let r=e.indexOf(t);n.push(...e.slice(r+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`rev`,t);n.push(t)}let r=``,i=e=>{let t=e.split(`
481
+ `),n=e.endsWith(`
482
+ `)&&t[t.length-1]===``;return n&&t.pop(),t.map(Pp).join(`
483
+ `)+(n?`
484
+ `:``)};if(n.length===0)r=i(ur(t.stdin)??``);else for(let e of n)if(e===`-`){let e=ur(t.stdin)??``;r+=i(e)}else{let n=t.fs.resolvePath(t.cwd,e),a=await t.fs.readFile(n);if(a===null)return{exitCode:1,stdout:r,stderr:`rev: ${e}: No such file or directory
485
+ `};r+=i(a)}return{exitCode:0,stdout:r,stderr:``}}},Lp={name:`rev`,flags:[],stdinType:`text`,needsFiles:!0}}),zp={};S(zp,{flagsForFuzzing:()=>Gp,nl:()=>Wp});function Bp(e,t,n){let r=String(e);switch(t){case`ln`:return r.padEnd(n);case`rn`:return r.padStart(n);case`rz`:return r.padStart(n,`0`);default:return t}}function Vp(e,t){switch(t){case`a`:return!0;case`t`:return e.trim().length>0;case`n`:return!1;default:return t}}function Hp(e,t,n){if(e===``)return{output:``,nextNumber:n};let r=e.split(`
486
+ `),i=[],a=n,o=e.endsWith(`
487
+ `)&&r[r.length-1]===``;o&&r.pop();for(let e of r)if(Vp(e,t.bodyStyle)){let n=Bp(a,t.numberFormat,t.width);i.push(`${n}${t.separator}${e}`),a+=t.increment}else{let n=` `.repeat(t.width);i.push(`${n}${t.separator}${e}`)}return{output:i.join(`
488
+ `)+(o?`
489
+ `:``),nextNumber:a}}var Up,Wp,Gp,Kp=x(()=>{w(),O(),Up={name:`nl`,summary:`number lines of files`,usage:`nl [OPTION]... [FILE]...`,description:`Write each FILE to standard output, with line numbers added. If no FILE is specified, standard input is read.`,options:[`-b STYLE Body numbering style: a (all), t (non-empty), n (none)`,`-n FORMAT Number format: ln (left), rn (right), rz (right zeros)`,`-w WIDTH Number width (default: 6)`,`-s SEP Separator after number (default: TAB)`,`-v START Starting line number (default: 1)`,`-i INCR Line number increment (default: 1)`],examples:[`nl file.txt # Number non-empty lines`,`nl -ba file.txt # Number all lines`,`nl -n rz -w 3 file.txt # Right-justified with zeros`,`nl -s ': ' file.txt # Use ': ' as separator`]},Wp={name:`nl`,execute:async(e,t)=>{if(E(e))return T(Up);let n={bodyStyle:`t`,numberFormat:`rn`,width:6,separator:` `,startNumber:1,increment:1},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-b`&&i+1<e.length){let t=e[i+1];if(t!==`a`&&t!==`t`&&t!==`n`)return{exitCode:1,stdout:``,stderr:`nl: invalid body numbering style: '${t}'
490
+ `};n.bodyStyle=t,i+=2}else if(t.startsWith(`-b`)){let e=t.slice(2);if(e!==`a`&&e!==`t`&&e!==`n`)return{exitCode:1,stdout:``,stderr:`nl: invalid body numbering style: '${e}'
491
+ `};n.bodyStyle=e,i++}else if(t===`-n`&&i+1<e.length){let t=e[i+1];if(t!==`ln`&&t!==`rn`&&t!==`rz`)return{exitCode:1,stdout:``,stderr:`nl: invalid line numbering format: '${t}'
492
+ `};n.numberFormat=t,i+=2}else if(t.startsWith(`-n`)){let e=t.slice(2);if(e!==`ln`&&e!==`rn`&&e!==`rz`)return{exitCode:1,stdout:``,stderr:`nl: invalid line numbering format: '${e}'
493
+ `};n.numberFormat=e,i++}else if(t===`-w`&&i+1<e.length){let t=parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`nl: invalid line number field width: '${e[i+1]}'
494
+ `};n.width=t,i+=2}else if(t.startsWith(`-w`)){let e=parseInt(t.slice(2),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`nl: invalid line number field width: '${t.slice(2)}'
495
+ `};n.width=e,i++}else if(t===`-s`&&i+1<e.length)n.separator=e[i+1],i+=2;else if(t.startsWith(`-s`))n.separator=t.slice(2),i++;else if(t===`-v`&&i+1<e.length){let t=parseInt(e[i+1],10);if(Number.isNaN(t))return{exitCode:1,stdout:``,stderr:`nl: invalid starting line number: '${e[i+1]}'
496
+ `};n.startNumber=t,i+=2}else if(t.startsWith(`-v`)){let e=parseInt(t.slice(2),10);if(Number.isNaN(e))return{exitCode:1,stdout:``,stderr:`nl: invalid starting line number: '${t.slice(2)}'
497
+ `};n.startNumber=e,i++}else if(t===`-i`&&i+1<e.length){let t=parseInt(e[i+1],10);if(Number.isNaN(t))return{exitCode:1,stdout:``,stderr:`nl: invalid line number increment: '${e[i+1]}'
498
+ `};n.increment=t,i+=2}else if(t.startsWith(`-i`)){let e=parseInt(t.slice(2),10);if(Number.isNaN(e))return{exitCode:1,stdout:``,stderr:`nl: invalid line number increment: '${t.slice(2)}'
499
+ `};n.increment=e,i++}else if(t===`--`){r.push(...e.slice(i+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`nl`,t);r.push(t),i++}}let a=``,o=n.startNumber;if(r.length===0)a=Hp(ur(t.stdin)??``,n,o).output;else for(let e of r){let r=t.fs.resolvePath(t.cwd,e),i=await t.fs.readFile(r);if(i===null)return{exitCode:1,stdout:a,stderr:`nl: ${e}: No such file or directory
500
+ `};let s=Hp(i,n,o);a+=s.output,o=s.nextNumber}return{exitCode:0,stdout:a,stderr:``}}},Gp={name:`nl`,flags:[{flag:`-b`,type:`value`,valueHint:`string`},{flag:`-n`,type:`value`,valueHint:`string`},{flag:`-w`,type:`value`,valueHint:`number`},{flag:`-s`,type:`value`,valueHint:`string`},{flag:`-v`,type:`value`,valueHint:`number`},{flag:`-i`,type:`value`,valueHint:`number`}],stdinType:`text`,needsFiles:!0}}),qp={};S(qp,{flagsForFuzzing:()=>$p,fold:()=>Qp});function Jp(e,t,n){return n?new TextEncoder().encode(e).length:e===` `?8-t%8:e===`\b`?-1:1}function Yp(e,t){if(e.length===0)return e;let{width:n,breakAtSpaces:r,countBytes:i}=t,a=[],o=``,s=0,c=-1,l=0;for(let t=0;t<e.length;t++){let u=e[t],d=Jp(u,s,i);s+d>n&&o.length>0?r&&c>=0?(a.push(o.slice(0,c+1)),o=o.slice(c+1)+u,s=s-l-1+d,c=-1,l=0):(a.push(o),o=u,s=d,c=-1,l=0):(o+=u,s+=d,(u===` `||u===` `)&&(c=o.length-1,l=s-d))}return o.length>0&&a.push(o),a.join(`
501
+ `)}function Xp(e,t){if(e===``)return``;let n=e.split(`
502
+ `),r=e.endsWith(`
503
+ `)&&n[n.length-1]===``;return r&&n.pop(),n.map(e=>Yp(e,t)).join(`
504
+ `)+(r?`
505
+ `:``)}var Zp,Qp,$p,em=x(()=>{w(),O(),Zp={name:`fold`,summary:`wrap each input line to fit in specified width`,usage:`fold [OPTION]... [FILE]...`,description:`Wrap input lines in each FILE, writing to standard output. If no FILE is specified, standard input is read.`,options:[`-w WIDTH Use WIDTH columns instead of 80`,`-s Break at spaces`,`-b Count bytes rather than columns`],examples:[`fold -w 40 file.txt # Wrap at 40 columns`,`fold -sw 40 file.txt # Word wrap at 40 columns`,`echo 'long line' | fold -w 5 # Force wrap at 5`]},Qp={name:`fold`,execute:async(e,t)=>{if(E(e))return T(Zp);let n={width:80,breakAtSpaces:!1,countBytes:!1},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-w`&&i+1<e.length){let t=parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`fold: invalid number of columns: '${e[i+1]}'
506
+ `};n.width=t,i+=2}else if(t.startsWith(`-w`)&&t.length>2){let e=parseInt(t.slice(2),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`fold: invalid number of columns: '${t.slice(2)}'
507
+ `};n.width=e,i++}else if(t===`-s`)n.breakAtSpaces=!0,i++;else if(t===`-b`)n.countBytes=!0,i++;else if(t===`-bs`||t===`-sb`)n.breakAtSpaces=!0,n.countBytes=!0,i++;else if(t.match(/^-[sb]+w\d+$/)){t.includes(`s`)&&(n.breakAtSpaces=!0),t.includes(`b`)&&(n.countBytes=!0);let e=t.replace(/^-[sb]+w/,``),r=parseInt(e,10);if(Number.isNaN(r)||r<1)return{exitCode:1,stdout:``,stderr:`fold: invalid number of columns: '${e}'
508
+ `};n.width=r,i++}else if(t.match(/^-[sb]+w$/)&&i+1<e.length){t.includes(`s`)&&(n.breakAtSpaces=!0),t.includes(`b`)&&(n.countBytes=!0);let r=parseInt(e[i+1],10);if(Number.isNaN(r)||r<1)return{exitCode:1,stdout:``,stderr:`fold: invalid number of columns: '${e[i+1]}'
509
+ `};n.width=r,i+=2}else if(t===`--`){r.push(...e.slice(i+1));break}else if(t.startsWith(`-`)&&t!==`-`){let e=t.slice(1),r=!1;for(let t of e)if(t===`s`)n.breakAtSpaces=!0;else if(t===`b`)n.countBytes=!0;else{r=!0;break}if(r)return D(`fold`,t);i++}else r.push(t),i++}let a=``;if(r.length===0)a=Xp(ur(t.stdin)??``,n);else for(let e of r){let r=t.fs.resolvePath(t.cwd,e),i=await t.fs.readFile(r);if(i===null)return{exitCode:1,stdout:a,stderr:`fold: ${e}: No such file or directory
510
+ `};a+=Xp(i,n)}return{exitCode:0,stdout:a,stderr:``}}},$p={name:`fold`,flags:[{flag:`-w`,type:`value`,valueHint:`number`},{flag:`-s`,type:`boolean`},{flag:`-b`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),tm={};S(tm,{expand:()=>sm,flagsForFuzzing:()=>cm});function nm(e){let t=e.split(`,`).map(e=>e.trim()),n=[];for(let e of t){let t=parseInt(e,10);if(Number.isNaN(t)||t<1)return null;n.push(t)}for(let e=1;e<n.length;e++)if(n[e]<=n[e-1])return null;return n}function rm(e,t){if(t.length===1){let n=t[0];return n-e%n}for(let n of t)if(n>e)return n-e;if(t.length>=2){let n=t[t.length-1]-t[t.length-2],r=t[t.length-1];return r+(Math.floor((e-r)/n)+1)*n-e}return 1}function im(e,t){let{tabStops:n,leadingOnly:r}=t,i=``,a=0,o=!0;for(let t of e)if(t===` `)if(r&&!o)i+=t,a++;else{let e=rm(a,n);i+=` `.repeat(e),a+=e}else t!==` `&&t!==` `&&(o=!1),i+=t,a++;return i}function am(e,t){if(e===``)return``;let n=e.split(`
511
+ `),r=e.endsWith(`
512
+ `)&&n[n.length-1]===``;return r&&n.pop(),n.map(e=>im(e,t)).join(`
513
+ `)+(r?`
514
+ `:``)}var om,sm,cm,lm=x(()=>{w(),O(),om={name:`expand`,summary:`convert tabs to spaces`,usage:`expand [OPTION]... [FILE]...`,description:`Convert TABs in each FILE to spaces, writing to standard output. If no FILE is specified, standard input is read.`,options:[`-t N Use N spaces per tab (default: 8)`,`-t LIST Use comma-separated list of tab stops`,`-i Only convert leading tabs on each line`],examples:[`expand file.txt # Convert all tabs to 8 spaces`,`expand -t 4 file.txt # Use 4-space tabs`,`expand -t 4,8,12 file.txt # Custom tab stops`]},sm={name:`expand`,execute:async(e,t)=>{if(E(e))return T(om);let n={tabStops:[8],leadingOnly:!1},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-t`&&i+1<e.length){let t=nm(e[i+1]);if(!t)return{exitCode:1,stdout:``,stderr:`expand: invalid tab size: '${e[i+1]}'
515
+ `};n.tabStops=t,i+=2}else if(t.startsWith(`-t`)&&t.length>2){let e=nm(t.slice(2));if(!e)return{exitCode:1,stdout:``,stderr:`expand: invalid tab size: '${t.slice(2)}'
516
+ `};n.tabStops=e,i++}else if(t===`--tabs`&&i+1<e.length){let t=nm(e[i+1]);if(!t)return{exitCode:1,stdout:``,stderr:`expand: invalid tab size: '${e[i+1]}'
517
+ `};n.tabStops=t,i+=2}else if(t.startsWith(`--tabs=`)){let e=nm(t.slice(7));if(!e)return{exitCode:1,stdout:``,stderr:`expand: invalid tab size: '${t.slice(7)}'
518
+ `};n.tabStops=e,i++}else if(t===`-i`||t===`--initial`)n.leadingOnly=!0,i++;else if(t===`--`){r.push(...e.slice(i+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`expand`,t);r.push(t),i++}}let a=``;if(r.length===0)a=am(ur(t.stdin)??``,n);else for(let e of r){let r=t.fs.resolvePath(t.cwd,e),i=await t.fs.readFile(r);if(i===null)return{exitCode:1,stdout:a,stderr:`expand: ${e}: No such file or directory
519
+ `};a+=am(i,n)}return{exitCode:0,stdout:a,stderr:``}}},cm={name:`expand`,flags:[{flag:`-t`,type:`value`,valueHint:`number`},{flag:`-i`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),um={};S(um,{flagsForFuzzing:()=>_m,unexpand:()=>gm});function dm(e){let t=e.split(`,`).map(e=>e.trim()),n=[];for(let e of t){let t=parseInt(e,10);if(Number.isNaN(t)||t<1)return null;n.push(t)}for(let e=1;e<n.length;e++)if(n[e]<=n[e-1])return null;return n}function fm(e,t){if(t.length===1){let n=t[0];return e+(n-e%n)}for(let n of t)if(n>e)return n;if(t.length>=2){let n=t[t.length-1]-t[t.length-2],r=t[t.length-1];return r+(Math.floor((e-r)/n)+1)*n}return-1}function pm(e,t){let{tabStops:n,allBlanks:r}=t,i=``,a=0,o=``,s=0,c=!0,l=()=>{if(o.length===0)return;let e=s+o.length;if(!r&&!c){i+=o,o=``;return}let t=s,a=``;for(;t<e;){let r=fm(t,n);if(r<=e&&r>t)a+=` `,t=r;else break}let l=e-t;l>0&&(a+=` `.repeat(l)),i+=a,o=``};for(let t of e)t===` `?(o.length===0&&(s=a),o+=t,a++):t===` `?(l(),i+=t,a=fm(a,n)):(l(),i+=t,a++,c=!1);return l(),i}function mm(e,t){if(e===``)return``;let n=e.split(`
520
+ `),r=e.endsWith(`
521
+ `)&&n[n.length-1]===``;return r&&n.pop(),n.map(e=>pm(e,t)).join(`
522
+ `)+(r?`
523
+ `:``)}var hm,gm,_m,vm=x(()=>{w(),O(),hm={name:`unexpand`,summary:`convert spaces to tabs`,usage:`unexpand [OPTION]... [FILE]...`,description:`Convert blanks in each FILE to TABs, writing to standard output. If no FILE is specified, standard input is read.`,options:[`-t N Use N spaces per tab (default: 8)`,`-t LIST Use comma-separated list of tab stops`,`-a Convert all sequences of blanks (not just leading)`],examples:[`unexpand file.txt # Convert leading spaces to tabs`,`unexpand -a file.txt # Convert all space sequences`,`unexpand -t 4 file.txt # Use 4-space tabs`]},gm={name:`unexpand`,execute:async(e,t)=>{if(E(e))return T(hm);let n={tabStops:[8],allBlanks:!1},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-t`&&i+1<e.length){let t=dm(e[i+1]);if(!t)return{exitCode:1,stdout:``,stderr:`unexpand: invalid tab size: '${e[i+1]}'
524
+ `};n.tabStops=t,i+=2}else if(t.startsWith(`-t`)&&t.length>2){let e=dm(t.slice(2));if(!e)return{exitCode:1,stdout:``,stderr:`unexpand: invalid tab size: '${t.slice(2)}'
525
+ `};n.tabStops=e,i++}else if(t===`--tabs`&&i+1<e.length){let t=dm(e[i+1]);if(!t)return{exitCode:1,stdout:``,stderr:`unexpand: invalid tab size: '${e[i+1]}'
526
+ `};n.tabStops=t,i+=2}else if(t.startsWith(`--tabs=`)){let e=dm(t.slice(7));if(!e)return{exitCode:1,stdout:``,stderr:`unexpand: invalid tab size: '${t.slice(7)}'
527
+ `};n.tabStops=e,i++}else if(t===`-a`||t===`--all`)n.allBlanks=!0,i++;else if(t===`--`){r.push(...e.slice(i+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`unexpand`,t);r.push(t),i++}}let a=``;if(r.length===0)a=mm(ur(t.stdin)??``,n);else for(let e of r){let r=t.fs.resolvePath(t.cwd,e),i=await t.fs.readFile(r);if(i===null)return{exitCode:1,stdout:a,stderr:`unexpand: ${e}: No such file or directory
528
+ `};a+=mm(i,n)}return{exitCode:0,stdout:a,stderr:``}}},_m={name:`unexpand`,flags:[{flag:`-t`,type:`value`,valueHint:`number`},{flag:`-a`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),ym={};S(ym,{flagsForFuzzing:()=>Tm,strings:()=>wm});function bm(e){return e>=32&&e<=126||e===9}function xm(e,t){if(t===null)return``;switch(t){case`o`:return`${e.toString(8).padStart(7,` `)} `;case`x`:return`${e.toString(16).padStart(7,` `)} `;case`d`:return`${e.toString(10).padStart(7,` `)} `;default:return t}}function Sm(e,t){let n=[],r=``,i=0,a=typeof e==`string`?new TextEncoder().encode(e):e;for(let e=0;e<a.length;e++){let o=a[e];if(bm(o))r.length===0&&(i=e),r+=String.fromCharCode(o);else{if(r.length>=t.minLength){let e=xm(i,t.offsetFormat);n.push(`${e}${r}`)}r=``}}if(r.length>=t.minLength){let e=xm(i,t.offsetFormat);n.push(`${e}${r}`)}return n}var Cm,wm,Tm,Em=x(()=>{w(),O(),Cm={name:`strings`,summary:`print the sequences of printable characters in files`,usage:`strings [OPTION]... [FILE]...`,description:`For each FILE, print the printable character sequences that are at least MIN characters long. If no FILE is specified, standard input is read.`,options:[`-n MIN Print sequences of at least MIN characters (default: 4)`,`-t FORMAT Print offset before each string (o=octal, x=hex, d=decimal)`,`-a Scan the entire file (default behavior)`,`-e ENCODING Select character encoding (s=7-bit, S=8-bit)`],examples:[`strings file.bin # Extract strings (min 4 chars)`,`strings -n 8 file.bin # Extract strings (min 8 chars)`,`strings -t x file.bin # Show hex offset`,`echo 'hello' | strings # Read from stdin`]},wm={name:`strings`,execute:async(e,t)=>{if(E(e))return T(Cm);let n={minLength:4,offsetFormat:null},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-n`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`strings: invalid minimum string length: '${e[i+1]}'
529
+ `};n.minLength=t,i+=2}else if(t.match(/^-n\d+$/)){let e=Number.parseInt(t.slice(2),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`strings: invalid minimum string length: '${t.slice(2)}'
530
+ `};n.minLength=e,i++}else if(t.match(/^-\d+$/)){let e=Number.parseInt(t.slice(1),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`strings: invalid minimum string length: '${t.slice(1)}'
531
+ `};n.minLength=e,i++}else if(t===`-t`&&i+1<e.length){let t=e[i+1];if(t!==`o`&&t!==`x`&&t!==`d`)return{exitCode:1,stdout:``,stderr:`strings: invalid radix: '${t}'
532
+ `};n.offsetFormat=t,i+=2}else if(t.startsWith(`-t`)&&t.length===3){let e=t[2];if(e!==`o`&&e!==`x`&&e!==`d`)return{exitCode:1,stdout:``,stderr:`strings: invalid radix: '${e}'
533
+ `};n.offsetFormat=e,i++}else if(t===`-a`||t===`--all`||t===`-`)t===`-`&&r.push(t),i++;else if(t===`-e`&&i+1<e.length){let t=e[i+1];if(t!==`s`&&t!==`S`)return{exitCode:1,stdout:``,stderr:`strings: invalid encoding: '${t}'
534
+ `};i+=2}else if(t.startsWith(`-e`)&&t.length===3){let e=t[2];if(e!==`s`&&e!==`S`)return{exitCode:1,stdout:``,stderr:`strings: invalid encoding: '${e}'
535
+ `};i++}else if(t===`--`){r.push(...e.slice(i+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`strings`,t);r.push(t),i++}}let a=``,o=()=>Uint8Array.from(t.stdin??``,e=>e.charCodeAt(0));if(r.length===0){let e=Sm(o(),n);a=e.length>0?`${e.join(`
536
+ `)}
537
+ `:``}else for(let e of r){let r;if(e===`-`)r=o();else{let n=t.fs.resolvePath(t.cwd,e);try{r=await t.fs.readFileBuffer(n)}catch{return{exitCode:1,stdout:a,stderr:`strings: ${e}: No such file or directory
538
+ `}}}let i=Sm(r,n);i.length>0&&(a+=`${i.join(`
539
+ `)}
540
+ `)}return{exitCode:0,stdout:a,stderr:``}}},Tm={name:`strings`,flags:[{flag:`-n`,type:`value`,valueHint:`number`},{flag:`-t`,type:`value`,valueHint:`string`},{flag:`-a`,type:`boolean`},{flag:`-e`,type:`value`,valueHint:`string`}],stdinType:`text`,needsFiles:!0}}),Dm={};S(Dm,{flagsForFuzzing:()=>Im,split:()=>Fm});function Om(e){let t=e.match(/^(\d+)([KMGTPEZY]?)([B]?)$/i);if(!t)return null;let n=Number.parseInt(t[1],10);if(Number.isNaN(n)||n<1)return null;let r=(t[2]||``).toUpperCase(),i=new Map([[``,1],[`K`,1024],[`M`,1024*1024],[`G`,1024*1024*1024],[`T`,1024*1024*1024*1024],[`P`,1024*1024*1024*1024*1024]]).get(r);return i===void 0?null:n*i}function km(e,t,n){if(t)return e.toString().padStart(n,`0`);let r=``,i=e;for(let e=0;e<n;e++)r=`abcdefghijklmnopqrstuvwxyz`[i%26]+r,i=Math.floor(i/26);return r}function Am(e,t){let n=e.split(`
541
+ `),r=e.endsWith(`
542
+ `)&&n[n.length-1]===``;r&&n.pop();let i=[];for(let e=0;e<n.length;e+=t){let a=n.slice(e,e+t),o=e+t>=n.length&&!r?a.join(`
543
+ `):`${a.join(`
544
+ `)}
545
+ `;i.push({content:o,hasContent:!0})}return i}function jm(e,t){let n=new TextEncoder().encode(e),r=new TextDecoder,i=[];for(let e=0;e<n.length;e+=t){let a=n.slice(e,e+t);i.push({content:r.decode(a),hasContent:a.length>0})}return i}function Mm(e,t){let n=new TextEncoder().encode(e),r=new TextDecoder,i=[],a=Math.ceil(n.length/t);for(let e=0;e<t;e++){let t=e*a,o=Math.min(t+a,n.length),s=n.slice(t,o);i.push({content:r.decode(s),hasContent:s.length>0})}return i}var Nm,Pm,Fm,Im,Lm=x(()=>{w(),O(),Nm={name:`split`,summary:`split a file into pieces`,usage:`split [OPTION]... [FILE [PREFIX]]`,description:`Output pieces of FILE to PREFIXaa, PREFIXab, ...; default size is 1000 lines, and default PREFIX is 'x'.`,options:[`-l N Put N lines per output file`,`-b SIZE Put SIZE bytes per output file (K, M, G suffixes)`,`-n CHUNKS Split into CHUNKS equal-sized files`,`-d Use numeric suffixes (00, 01, ...) instead of alphabetic`,`-a LENGTH Use suffixes of length LENGTH (default: 2)`,`--additional-suffix=SUFFIX Append SUFFIX to file names`],examples:[`split -l 100 file.txt # Split into 100-line chunks`,`split -b 1M file.bin # Split into 1MB chunks`,`split -n 5 file.txt # Split into 5 equal parts`,`split -d file.txt part_ # part_00, part_01, ...`,`split -a 3 -d file.txt x # x000, x001, ...`]},Pm=1e5,Fm={name:`split`,execute:async(e,t)=>{if(E(e))return T(Nm);let n={mode:`lines`,lines:1e3,bytes:0,chunks:0,useNumericSuffix:!1,suffixLength:2,additionalSuffix:``},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-l`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`split: invalid number of lines: '${e[i+1]}'
546
+ `};n.mode=`lines`,n.lines=t,i+=2}else if(t.match(/^-l\d+$/)){let e=Number.parseInt(t.slice(2),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`split: invalid number of lines: '${t.slice(2)}'
547
+ `};n.mode=`lines`,n.lines=e,i++}else if(t===`-b`&&i+1<e.length){let t=Om(e[i+1]);if(t===null)return{exitCode:1,stdout:``,stderr:`split: invalid number of bytes: '${e[i+1]}'
548
+ `};n.mode=`bytes`,n.bytes=t,i+=2}else if(t.match(/^-b.+$/)){let e=Om(t.slice(2));if(e===null)return{exitCode:1,stdout:``,stderr:`split: invalid number of bytes: '${t.slice(2)}'
549
+ `};n.mode=`bytes`,n.bytes=e,i++}else if(t===`-n`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`split: invalid number of chunks: '${e[i+1]}'
550
+ `};n.mode=`chunks`,n.chunks=t,i+=2}else if(t.match(/^-n\d+$/)){let e=Number.parseInt(t.slice(2),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`split: invalid number of chunks: '${t.slice(2)}'
551
+ `};n.mode=`chunks`,n.chunks=e,i++}else if(t===`-a`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`split: invalid suffix length: '${e[i+1]}'
552
+ `};n.suffixLength=t,i+=2}else if(t.match(/^-a\d+$/)){let e=Number.parseInt(t.slice(2),10);if(Number.isNaN(e)||e<1)return{exitCode:1,stdout:``,stderr:`split: invalid suffix length: '${t.slice(2)}'
553
+ `};n.suffixLength=e,i++}else if(t===`-d`||t===`--numeric-suffixes`)n.useNumericSuffix=!0,i++;else if(t.startsWith(`--additional-suffix=`))n.additionalSuffix=t.slice(20),i++;else if(t===`--additional-suffix`&&i+1<e.length)n.additionalSuffix=e[i+1],i+=2;else if(t===`--`){r.push(...e.slice(i+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`split`,t);r.push(t),i++}}let a=`-`,o=`x`;r.length>=1&&(a=r[0]),r.length>=2&&(o=r[1]);let s;if(a===`-`)s=t.stdin??``;else{let e=t.fs.resolvePath(t.cwd,a);try{s=await pr(t.fs,e)}catch{return{exitCode:1,stdout:``,stderr:`split: ${a}: No such file or directory
554
+ `}}}if(s===``)return{exitCode:0,stdout:``,stderr:``};let c;switch(n.mode){case`lines`:c=Am(s,n.lines);break;case`bytes`:c=jm(s,n.bytes);break;case`chunks`:c=Mm(s,n.chunks);break;default:return n.mode}if(c.length>Pm)return{exitCode:1,stdout:``,stderr:`split: too many output files (${c.length}), limit is ${Pm}
555
+ `};for(let e=0;e<c.length;e++){let r=c[e];if(!r.hasContent)continue;let i=km(e,n.useNumericSuffix,n.suffixLength),a=`${o}${i}${n.additionalSuffix}`,s=t.fs.resolvePath(t.cwd,a);await t.fs.writeFile(s,r.content,`binary`)}return{exitCode:0,stdout:``,stderr:``}}},Im={name:`split`,flags:[{flag:`-l`,type:`value`,valueHint:`number`},{flag:`-b`,type:`value`,valueHint:`string`},{flag:`-n`,type:`value`,valueHint:`number`},{flag:`-d`,type:`boolean`},{flag:`-a`,type:`value`,valueHint:`number`}],needsFiles:!0}}),Rm={};S(Rm,{column:()=>Gm,flagsForFuzzing:()=>Km});function zm(e,t,n){return t?n?e.split(t):e.split(t).filter(e=>e.length>0):n?e.split(/[ \t]/):e.split(/[ \t]+/).filter(e=>e.length>0)}function Bm(e){let t=[];for(let n of e)for(let e=0;e<n.length;e++){let r=n[e].length;(t[e]===void 0||r>t[e])&&(t[e]=r)}return t}function Vm(e,t){if(e.length===0)return``;let n=Bm(e),r=[];for(let i of e){let e=[];for(let t=0;t<i.length;t++)t===i.length-1?e.push(i[t]):e.push(i[t].padEnd(n[t]));r.push(e.join(t))}return r.join(`
556
+ `)}function Hm(e,t,n){if(e.length===0)return``;let r=Math.max(...e.map(e=>e.length)),i=n.length,a=r+i,o=Math.max(1,Math.floor((t+i)/a)),s=Math.ceil(e.length/o),c=[];for(let t=0;t<s;t++){let i=[];for(let n=0;n<o;n++){let a=n*s+t;a<e.length&&(n===o-1||(n+1)*s+t>=e.length?i.push(e[a]):i.push(e[a].padEnd(r)))}c.push(i.join(n))}return c.join(`
557
+ `)}var Um,Wm,Gm,Km,qm=x(()=>{w(),xr(),O(),Um={name:`column`,summary:`columnate lists`,usage:`column [OPTION]... [FILE]...`,description:`Format input into multiple columns. By default, fills rows first. Use -t to create a table based on whitespace-delimited input.`,options:[`-t Create a table (determine columns from input)`,`-s SEP Input field delimiter (default: whitespace)`,`-o SEP Output field delimiter (default: two spaces)`,`-c WIDTH Output width for fill mode (default: 80)`,`-n Don't merge multiple adjacent delimiters`],examples:[`ls | column # Fill columns with ls output`,`cat data | column -t # Format as table`,`column -t -s ',' file # Format CSV as table`,`column -c 40 file # Fill 40-char wide columns`]},Wm={table:{short:`t`,long:`table`,type:`boolean`},separator:{short:`s`,type:`string`},outputSep:{short:`o`,type:`string`},width:{short:`c`,type:`number`,default:80},noMerge:{short:`n`,type:`boolean`}},Gm={name:`column`,execute:async(e,t)=>{if(E(e))return T(Um);let n=br(`column`,e,Wm);if(!n.ok)return n.error;let{table:r,separator:i,outputSep:a,width:o,noMerge:s}=n.result.flags,c=n.result.positional,l=a??` `,u;if(c.length===0)u=ur(t.stdin)??``;else{let e=[];for(let n of c)if(n===`-`)e.push(ur(t.stdin)??``);else{let r=t.fs.resolvePath(t.cwd,n),i=await t.fs.readFile(r);if(i===null)return{exitCode:1,stdout:``,stderr:`column: ${n}: No such file or directory
558
+ `};e.push(i)}u=e.join(``)}if(u===``||u.trim()===``)return{exitCode:0,stdout:``,stderr:``};let d=u.split(`
559
+ `);u.endsWith(`
560
+ `)&&d[d.length-1]===``&&d.pop();let f=d.filter(e=>e.trim().length>0),p;if(r)p=Vm(f.map(e=>zm(e,i,s)),l);else{let e=[];for(let t of f){let n=zm(t,i,s);e.push(...n)}p=Hm(e,o,l)}return p.length>0&&(p+=`
561
+ `),{exitCode:0,stdout:p,stderr:``}}},Km={name:`column`,flags:[{flag:`-t`,type:`boolean`},{flag:`-s`,type:`value`,valueHint:`delimiter`},{flag:`-o`,type:`value`,valueHint:`string`},{flag:`-c`,type:`value`,valueHint:`number`},{flag:`-n`,type:`boolean`}],stdinType:`text`,needsFiles:!0}}),Jm={};S(Jm,{flagsForFuzzing:()=>th,join:()=>eh});function Ym(e,t){return t?e.split(t):e.split(/[ \t]+/).filter(e=>e.length>0)}function Xm(e,t,n,r){let i=Ym(e,t),a=i[n-1]??``;return r&&(a=a.toLowerCase()),{fields:i,joinKey:a,original:e}}function Zm(e,t,n){let r=n.separator??` `;if(n.outputFormat){let i=[];for(let{file:r,field:a}of n.outputFormat){let o=r===1?e:t;o&&a===0?i.push(o.joinKey):o&&o.fields[a-1]!==void 0?i.push(o.fields[a-1]):i.push(n.emptyString)}return i.join(r)}let i=[],a=e?.joinKey??t?.joinKey??``;if(i.push(a),e)for(let t=0;t<e.fields.length;t++)t!==n.field1-1&&i.push(e.fields[t]);if(t)for(let e=0;e<t.fields.length;e++)e!==n.field2-1&&i.push(t.fields[e]);return i.join(r)}function Qm(e){let t=e.split(`,`),n=[];for(let e of t){let t=e.trim().match(/^(\d+)\.(\d+)$/);if(!t)return null;let r=Number.parseInt(t[1],10),i=Number.parseInt(t[2],10);if(r!==1&&r!==2)return null;n.push({file:r,field:i})}return n}var $m,eh,th,nh=x(()=>{w(),O(),$m={name:`join`,summary:`join lines of two files on a common field`,usage:`join [OPTION]... FILE1 FILE2`,description:`For each pair of input lines with identical join fields, write a line to standard output. The default join field is the first, delimited by blanks.`,options:[`-1 FIELD Join on this FIELD of file 1 (default: 1)`,`-2 FIELD Join on this FIELD of file 2 (default: 1)`,`-t CHAR Use CHAR as input and output field separator`,`-a FILENUM Also print unpairable lines from file FILENUM (1 or 2)`,`-v FILENUM Like -a but only output unpairable lines`,`-e STRING Replace missing fields with STRING`,`-o FORMAT Output format (comma-separated list of FILENUM.FIELD)`,`-i Ignore case when comparing fields`],examples:[`join file1 file2 # Join on first field`,`join -1 2 -2 1 file1 file2 # Join file1 col 2 with file2 col 1`,`join -t ',' file1.csv file2.csv # Join CSV files`,`join -a 1 file1 file2 # Left outer join`]},eh={name:`join`,execute:async(e,t)=>{if(E(e))return T($m);let n={field1:1,field2:1,separator:null,printUnpairable:new Set,onlyUnpairable:new Set,emptyString:``,outputFormat:null,ignoreCase:!1},r=[],i=0;for(;i<e.length;){let t=e[i];if(t===`-1`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`join: invalid field number: '${e[i+1]}'
562
+ `};n.field1=t,i+=2}else if(t===`-2`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(Number.isNaN(t)||t<1)return{exitCode:1,stdout:``,stderr:`join: invalid field number: '${e[i+1]}'
563
+ `};n.field2=t,i+=2}else if((t===`-t`||t===`--field-separator`)&&i+1<e.length)n.separator=e[i+1],i+=2;else if(t.startsWith(`-t`)&&t.length>2)n.separator=t.slice(2),i++;else if(t===`-a`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(t!==1&&t!==2)return{exitCode:1,stdout:``,stderr:`join: invalid file number: '${e[i+1]}'
564
+ `};n.printUnpairable.add(t),i+=2}else if(t.match(/^-a[12]$/))n.printUnpairable.add(Number.parseInt(t[2],10)),i++;else if(t===`-v`&&i+1<e.length){let t=Number.parseInt(e[i+1],10);if(t!==1&&t!==2)return{exitCode:1,stdout:``,stderr:`join: invalid file number: '${e[i+1]}'
565
+ `};n.onlyUnpairable.add(t),i+=2}else if(t.match(/^-v[12]$/))n.onlyUnpairable.add(Number.parseInt(t[2],10)),i++;else if(t===`-e`&&i+1<e.length)n.emptyString=e[i+1],i+=2;else if(t===`-o`&&i+1<e.length){let t=Qm(e[i+1]);if(!t)return{exitCode:1,stdout:``,stderr:`join: invalid field spec: '${e[i+1]}'
566
+ `};n.outputFormat=t,i+=2}else if(t===`-i`||t===`--ignore-case`)n.ignoreCase=!0,i++;else if(t===`--`){r.push(...e.slice(i+1));break}else{if(t.startsWith(`-`)&&t!==`-`)return D(`join`,t);r.push(t),i++}}if(r.length!==2)return{exitCode:1,stdout:``,stderr:r.length<2?`join: missing file operand
567
+ `:`join: extra operand
568
+ `};let a=[];for(let e of r)if(e===`-`)a.push(ur(t.stdin)??``);else{let n=t.fs.resolvePath(t.cwd,e),r=await t.fs.readFile(n);if(r===null)return{exitCode:1,stdout:``,stderr:`join: ${e}: No such file or directory
569
+ `};a.push(r)}let o=(e,t)=>{let r=e.split(`
570
+ `);return e.endsWith(`
571
+ `)&&r[r.length-1]===``&&r.pop(),r.filter(e=>e.length>0).map(e=>Xm(e,n.separator,t,n.ignoreCase))},s=o(a[0],n.field1),c=o(a[1],n.field2),l=new Map;for(let e of c){let t=l.get(e.joinKey);t?t.push(e):l.set(e.joinKey,[e])}let u=[],d=new Set;for(let e of s){let t=l.get(e.joinKey);if(t&&t.length>0){if(d.add(e.joinKey),n.onlyUnpairable.size===0)for(let r of t)u.push(Zm(e,r,n))}else(n.printUnpairable.has(1)||n.onlyUnpairable.has(1))&&u.push(Zm(e,null,n))}if(n.printUnpairable.has(2)||n.onlyUnpairable.has(2))for(let e of c)d.has(e.joinKey)||u.push(Zm(null,e,n));return{exitCode:0,stdout:dr(u.length>0?`${u.join(`
572
+ `)}
573
+ `:``),stderr:``,stdoutEncoding:`binary`}}},th={name:`join`,flags:[{flag:`-1`,type:`value`,valueHint:`number`},{flag:`-2`,type:`value`,valueHint:`number`},{flag:`-t`,type:`value`,valueHint:`delimiter`},{flag:`-a`,type:`value`,valueHint:`number`},{flag:`-v`,type:`value`,valueHint:`number`},{flag:`-e`,type:`value`,valueHint:`string`},{flag:`-o`,type:`value`,valueHint:`format`},{flag:`-i`,type:`boolean`}],needsArgs:!0,minArgs:2}}),rh={};S(rh,{flagsForFuzzing:()=>sh,teeCommand:()=>oh});var ih,ah,oh,sh,ch=x(()=>{w(),xr(),O(),ih={name:`tee`,summary:`read from stdin and write to stdout and files`,usage:`tee [OPTION]... [FILE]...`,options:[`-a, --append append to the given FILEs, do not overwrite`,` --help display this help and exit`]},ah={append:{short:`a`,long:`append`,type:`boolean`}},oh={name:`tee`,async execute(e,t){if(E(e))return T(ih);let n=br(`tee`,e,ah);if(!n.ok)return n.error;let{append:r}=n.result.flags,i=n.result.positional,a=t.stdin,o=``,s=0;for(let e of i)try{let n=t.fs.resolvePath(t.cwd,e);r?await t.fs.appendFile(n,a,`binary`):await t.fs.writeFile(n,a,`binary`)}catch{o+=`tee: ${e}: No such file or directory
574
+ `,s=1}return{stdout:a,stderr:o,exitCode:s,stdoutEncoding:`binary`}}},sh={name:`tee`,flags:[{flag:`-a`,type:`boolean`}],stdinType:`text`,needsArgs:!0}});function lh(e,t){switch(e.type){case`name`:{let n=e.pattern,r=n.match(/^\*(\.[a-zA-Z0-9]+)$/);if(r){let n=r[1],i=t.name;if(e.ignoreCase){if(!i.toLowerCase().endsWith(n.toLowerCase()))return{matches:!1,pruned:!1,printed:!1}}else if(!i.endsWith(n))return{matches:!1,pruned:!1,printed:!1};return{matches:!0,pruned:!1,printed:!1}}return{matches:As(t.name,n,e.ignoreCase),pruned:!1,printed:!1}}case`path`:{let n=e.pattern,r=t.relativePath,i=n.split(`/`);for(let t=0;t<i.length-1;t++){let n=i[t];if(n&&n!==`.`&&n!==`..`&&!n.includes(`*`)&&!n.includes(`?`)&&!n.includes(`[`)){let t=`/${n}/`;if(e.ignoreCase){if(!r.toLowerCase().includes(t.toLowerCase()))return{matches:!1,pruned:!1,printed:!1}}else if(!r.includes(t))return{matches:!1,pruned:!1,printed:!1}}}let a=n.match(/\*(\.[a-zA-Z0-9]+)$/);if(a){let t=a[1];if(e.ignoreCase){if(!r.toLowerCase().endsWith(t.toLowerCase()))return{matches:!1,pruned:!1,printed:!1}}else if(!r.endsWith(t))return{matches:!1,pruned:!1,printed:!1}}return{matches:As(r,n,e.ignoreCase),pruned:!1,printed:!1}}case`regex`:try{let n=e.ignoreCase?`i`:``;return{matches:z(e.pattern,n).test(t.relativePath),pruned:!1,printed:!1}}catch{return{matches:!1,pruned:!1,printed:!1}}case`type`:return e.fileType===`f`?{matches:t.isFile,pruned:!1,printed:!1}:e.fileType===`d`?{matches:t.isDirectory,pruned:!1,printed:!1}:{matches:!1,pruned:!1,printed:!1};case`empty`:return{matches:t.isEmpty,pruned:!1,printed:!1};case`mtime`:{let n=(Date.now()-t.mtime)/(1e3*60*60*24),r;return r=e.comparison===`more`?n>e.days:e.comparison===`less`?n<e.days:Math.floor(n)===e.days,{matches:r,pruned:!1,printed:!1}}case`newer`:{let n=t.newerRefTimes.get(e.refPath);return n===void 0?{matches:!1,pruned:!1,printed:!1}:{matches:t.mtime>n,pruned:!1,printed:!1}}case`size`:{let n=e.value;switch(e.unit){case`c`:n=e.value;break;case`k`:n=e.value*1024;break;case`M`:n=e.value*1024*1024;break;case`G`:n=e.value*1024*1024*1024;break;case`b`:n=e.value*512;break}let r;return r=e.comparison===`more`?t.size>n:e.comparison===`less`?t.size<n:e.unit===`b`?Math.ceil(t.size/512)===e.value:t.size===n,{matches:r,pruned:!1,printed:!1}}case`perm`:{let n=t.mode&511,r=e.mode&511,i;return i=e.matchType===`exact`?n===r:e.matchType===`all`?(n&r)===r:(n&r)!==0,{matches:i,pruned:!1,printed:!1}}case`prune`:return{matches:!0,pruned:!0,printed:!1};case`print`:return{matches:!0,pruned:!1,printed:!0};case`not`:{let n=lh(e.expr,t);return{matches:!n.matches,pruned:n.pruned,printed:!1}}case`and`:{let n=lh(e.left,t);if(!n.matches)return{matches:!1,pruned:n.pruned,printed:!1};let r=lh(e.right,t);return{matches:r.matches,pruned:n.pruned||r.pruned,printed:n.printed||r.printed}}case`or`:{let n=lh(e.left,t);if(n.matches)return n;let r=lh(e.right,t);return{matches:r.matches,pruned:n.pruned||r.pruned,printed:r.printed}}}}function uh(e){if(!e)return!1;switch(e.type){case`name`:case`path`:case`regex`:case`type`:case`prune`:case`print`:return!1;case`empty`:case`mtime`:case`newer`:case`size`:case`perm`:return!0;case`not`:return uh(e.expr);case`and`:case`or`:return uh(e.left)||uh(e.right)}}function dh(e){if(!e)return!1;switch(e.type){case`empty`:return!0;case`not`:return dh(e.expr);case`and`:case`or`:return dh(e.left)||dh(e.right);default:return!1}}function fh(e){let t={terminalDirName:null,requiredExtension:null};if(!e)return t;let n=ph(e);if(mh(e)&&n.length===1){let e=n[0].split(`/`).filter(e=>e.length>0);if(e.length>=2)for(let n=e.length-2;n>=0;n--){let r=e[n];if(!r.includes(`*`)&&!r.includes(`?`)&&!r.includes(`[`)&&r!==`.`&&r!==`..`){let i=e[n+1];if(i&&(i.includes(`*`)||i.includes(`?`))){t.terminalDirName=r;let e=i.match(/^\*(\.[a-zA-Z0-9]+)$/);e&&(t.requiredExtension=e[1])}break}}}return t}function ph(e){let t=[],n=e=>{e.type===`path`?t.push(e.pattern):e.type===`not`?n(e.expr):(e.type===`and`||e.type===`or`)&&(n(e.left),n(e.right))};return n(e),t}function mh(e){let t=e=>e.type===`type`&&e.fileType===`f`?!0:e.type===`not`?t(e.expr):e.type===`and`||e.type===`or`?t(e.left)||t(e.right):!1;return t(e)}function hh(e){let t=[],n=e=>{e&&(e.type===`newer`?t.push(e.refPath):e.type===`not`?n(e.expr):(e.type===`and`||e.type===`or`)&&(n(e.left),n(e.right)))};return n(e),t}function gh(e){if(!e)return!0;switch(e.type){case`name`:case`path`:case`regex`:case`type`:case`prune`:case`print`:return!0;case`empty`:case`mtime`:case`newer`:case`size`:case`perm`:return!1;case`not`:return gh(e.expr);case`and`:case`or`:return gh(e.left)&&gh(e.right)}}function _h(e,t,n,r,i){switch(e.type){case`name`:{let n=e.pattern,r=n.match(/^\*(\.[a-zA-Z0-9]+)$/);if(r){let n=r[1];if(e.ignoreCase){if(!t.toLowerCase().endsWith(n.toLowerCase()))return{matches:!1,pruned:!1,printed:!1}}else if(!t.endsWith(n))return{matches:!1,pruned:!1,printed:!1};return{matches:!0,pruned:!1,printed:!1}}return{matches:As(t,n,e.ignoreCase),pruned:!1,printed:!1}}case`path`:{let t=e.pattern,r=t.split(`/`);for(let t=0;t<r.length-1;t++){let i=r[t];if(i&&i!==`.`&&i!==`..`&&!i.includes(`*`)&&!i.includes(`?`)&&!i.includes(`[`)){let t=`/${i}/`;if(e.ignoreCase){if(!n.toLowerCase().includes(t.toLowerCase()))return{matches:!1,pruned:!1,printed:!1}}else if(!n.includes(t))return{matches:!1,pruned:!1,printed:!1}}}let i=t.match(/\*(\.[a-zA-Z0-9]+)$/);if(i){let t=i[1];if(e.ignoreCase){if(!n.toLowerCase().endsWith(t.toLowerCase()))return{matches:!1,pruned:!1,printed:!1}}else if(!n.endsWith(t))return{matches:!1,pruned:!1,printed:!1}}return{matches:As(n,t,e.ignoreCase),pruned:!1,printed:!1}}case`regex`:try{let t=e.ignoreCase?`i`:``;return{matches:z(e.pattern,t).test(n),pruned:!1,printed:!1}}catch{return{matches:!1,pruned:!1,printed:!1}}case`type`:return e.fileType===`f`?{matches:r,pruned:!1,printed:!1}:e.fileType===`d`?{matches:i,pruned:!1,printed:!1}:{matches:!1,pruned:!1,printed:!1};case`prune`:return{matches:!0,pruned:!0,printed:!1};case`print`:return{matches:!0,pruned:!1,printed:!0};case`not`:{let a=_h(e.expr,t,n,r,i);return{matches:!a.matches,pruned:a.pruned,printed:!1}}case`and`:{let a=_h(e.left,t,n,r,i);if(!a.matches)return{matches:!1,pruned:a.pruned,printed:!1};let o=_h(e.right,t,n,r,i);return{matches:o.matches,pruned:a.pruned||o.pruned,printed:a.printed||o.printed}}case`or`:{let a=_h(e.left,t,n,r,i);if(a.matches)return a;let o=_h(e.right,t,n,r,i);return{matches:o.matches,pruned:a.pruned||o.pruned,printed:o.printed}}default:return{matches:!1,pruned:!1,printed:!1}}}function vh(e){if(!e)return!1;switch(e.type){case`prune`:return!0;case`not`:return vh(e.expr);case`and`:case`or`:return vh(e.left)||vh(e.right);default:return!1}}function yh(e){switch(e.type){case`name`:case`path`:case`regex`:case`type`:case`prune`:case`print`:return!0;case`empty`:case`mtime`:case`newer`:case`size`:case`perm`:return!1;case`not`:return yh(e.expr);case`and`:case`or`:return yh(e.left)&&yh(e.right)}}function bh(e,t){return!e||!t.isDirectory?{shouldPrune:!1}:yh(e)?{shouldPrune:lh(e,{name:t.name,relativePath:t.relativePath,isFile:t.isFile,isDirectory:t.isDirectory,isEmpty:!1,mtime:0,size:0,mode:0,newerRefTimes:new Map}).pruned}:xh(e,t)}function xh(e,t){switch(e.type){case`or`:if(yh(e.left)){let n={name:t.name,relativePath:t.relativePath,isFile:t.isFile,isDirectory:t.isDirectory,isEmpty:!1,mtime:0,size:0,mode:0,newerRefTimes:new Map};if(lh(e.left,n).pruned)return{shouldPrune:!0}}return xh(e.right,t);case`and`:if(yh(e.left)&&yh(e.right))return{shouldPrune:lh(e,{name:t.name,relativePath:t.relativePath,isFile:t.isFile,isDirectory:t.isDirectory,isEmpty:!1,mtime:0,size:0,mode:0,newerRefTimes:new Map}).pruned};if(yh(e.left)){let n={name:t.name,relativePath:t.relativePath,isFile:t.isFile,isDirectory:t.isDirectory,isEmpty:!1,mtime:0,size:0,mode:0,newerRefTimes:new Map};return lh(e.left,n).matches?xh(e.right,t):{shouldPrune:!1}}return{shouldPrune:!1};case`not`:return{shouldPrune:!1};default:return{shouldPrune:!1}}}var Sh=x(()=>{ks(),Ps()});function Ch(e,t){let n=[],r=[],i=t;for(;i<e.length;){let t=e[i];if(t===`(`||t===`\\(`){n.push({type:`lparen`}),i++;continue}if(t===`)`||t===`\\)`){n.push({type:`rparen`}),i++;continue}if(t===`-name`&&i+1<e.length)n.push({type:`expr`,expr:{type:`name`,pattern:e[++i]}});else if(t===`-iname`&&i+1<e.length)n.push({type:`expr`,expr:{type:`name`,pattern:e[++i],ignoreCase:!0}});else if(t===`-path`&&i+1<e.length)n.push({type:`expr`,expr:{type:`path`,pattern:e[++i]}});else if(t===`-ipath`&&i+1<e.length)n.push({type:`expr`,expr:{type:`path`,pattern:e[++i],ignoreCase:!0}});else if(t===`-regex`&&i+1<e.length)n.push({type:`expr`,expr:{type:`regex`,pattern:e[++i]}});else if(t===`-iregex`&&i+1<e.length)n.push({type:`expr`,expr:{type:`regex`,pattern:e[++i],ignoreCase:!0}});else if(t===`-type`&&i+1<e.length){let t=e[++i];if(t===`f`||t===`d`)n.push({type:`expr`,expr:{type:`type`,fileType:t}});else return{expr:null,pathIndex:i,error:`find: Unknown argument to -type: ${t}
575
+ `,actions:[]}}else if(t===`-empty`)n.push({type:`expr`,expr:{type:`empty`}});else if(t===`-mtime`&&i+1<e.length){let t=e[++i],r=`exact`,a=t;t.startsWith(`+`)?(r=`more`,a=t.slice(1)):t.startsWith(`-`)&&(r=`less`,a=t.slice(1));let o=parseInt(a,10);Number.isNaN(o)||n.push({type:`expr`,expr:{type:`mtime`,days:o,comparison:r}})}else if(t===`-newer`&&i+1<e.length){let t=e[++i];n.push({type:`expr`,expr:{type:`newer`,refPath:t}})}else if(t===`-size`&&i+1<e.length){let t=e[++i],r=`exact`,a=t;t.startsWith(`+`)?(r=`more`,a=t.slice(1)):t.startsWith(`-`)&&(r=`less`,a=t.slice(1));let o=a.match(/^(\d+)([ckMGb])?$/);if(o){let e=parseInt(o[1],10),t=o[2]||`b`;n.push({type:`expr`,expr:{type:`size`,value:e,unit:t,comparison:r}})}}else if(t===`-perm`&&i+1<e.length){let t=e[++i],r=`exact`,a=t;t.startsWith(`-`)?(r=`all`,a=t.slice(1)):t.startsWith(`/`)&&(r=`any`,a=t.slice(1));let o=parseInt(a,8);Number.isNaN(o)||n.push({type:`expr`,expr:{type:`perm`,mode:o,matchType:r}})}else if(t===`-prune`)n.push({type:`expr`,expr:{type:`prune`}});else if(t===`-not`||t===`!`)n.push({type:`not`});else if(t===`-o`||t===`-or`)n.push({type:`op`,op:`or`});else if(t===`-a`||t===`-and`)n.push({type:`op`,op:`and`});else if(t===`-maxdepth`||t===`-mindepth`)i++;else if(t!==`-depth`)if(t===`-exec`){let t=[];for(i++;i<e.length&&e[i]!==`;`&&e[i]!==`+`;)t.push(e[i]),i++;if(i>=e.length)return{expr:null,pathIndex:i,error:`find: missing argument to \`-exec'
576
+ `,actions:[]};let n=e[i]===`+`;r.push({type:`exec`,command:t,batchMode:n})}else if(t===`-print`)n.push({type:`expr`,expr:{type:`print`}}),r.push({type:`print`});else if(t===`-print0`)r.push({type:`print0`});else if(t===`-printf`&&i+1<e.length){let t=e[++i];r.push({type:`printf`,format:t})}else if(t===`-delete`)r.push({type:`delete`});else{if(t.startsWith(`-`))return{expr:null,pathIndex:i,error:`find: unknown predicate '${t}'
577
+ `,actions:[]};if(n.length===0){i++;continue}break}i++}if(n.length===0)return{expr:null,pathIndex:i,actions:r};let a=wh(n);return a.error?{expr:null,pathIndex:i,error:a.error,actions:r}:{expr:a.expr,pathIndex:i,actions:r}}function wh(e){let t=0;function n(){let n=r();if(!n)return null;for(;t<e.length;){let i=e[t];if(i.type===`op`&&i.op===`or`){t++;let e=r();if(!e)return n;n={type:`or`,left:n,right:e}}else break}return n}function r(){let n=i();if(!n)return null;for(;t<e.length;){let r=e[t];if(r.type===`op`&&r.op===`and`){t++;let e=i();if(!e)return n;n={type:`and`,left:n,right:e}}else if(r.type===`expr`||r.type===`not`||r.type===`lparen`){let e=i();if(!e)return n;n={type:`and`,left:n,right:e}}else break}return n}function i(){if(t<e.length&&e[t].type===`not`){t++;let e=i();return e?{type:`not`,expr:e}:null}return a()}function a(){if(t>=e.length)return null;let r=e[t];if(r.type===`lparen`){t++;let r=n();return t<e.length&&e[t].type===`rparen`&&t++,r}return r.type===`expr`?(t++,r.expr):(r.type,null)}return{expr:n()}}var Th=x(()=>{}),Eh={};S(Eh,{findCommand:()=>Fh,flagsForFuzzing:()=>Ih});function Dh(){return{readdirCalls:0,readdirTime:0,statCalls:0,statTime:0,evalCalls:0,evalTime:0,nodeCount:0,batchCount:0,batchTime:0,earlyPrunes:0}}function Oh(e,t,n){e({category:`find`,name:`summary`,durationMs:n,details:{readdirCalls:t.readdirCalls,readdirTimeMs:t.readdirTime,statCalls:t.statCalls,statTimeMs:t.statTime,evalCalls:t.evalCalls,evalTimeMs:t.evalTime,nodeCount:t.nodeCount,batchCount:t.batchCount,batchTimeMs:t.batchTime,earlyPrunes:t.earlyPrunes,otherTimeMs:n-t.readdirTime-t.statTime-t.evalTime-t.batchTime}})}function kh(e,t){let n=Qr(e),r=``,i=0;for(;i<n.length;)if(n[i]===`%`&&i+1<n.length){if(i++,n[i]===`%`){r+=`%`,i++;continue}let[e,a,o]=Zr(n,i);if(i+=o,i>=n.length){r+=`%`;break}let s=n[i],c;switch(s){case`f`:c=t.name,i++;break;case`h`:{let e=t.path.lastIndexOf(`/`);c=e>0?t.path.slice(0,e):`.`,i++;break}case`p`:c=t.path,i++;break;case`P`:{let e=t.startingPoint;c=t.path===e?``:t.path.startsWith(`${e}/`)?t.path.slice(e.length+1):e===`.`&&t.path.startsWith(`./`)?t.path.slice(2):t.path,i++;break}case`s`:c=String(t.size),i++;break;case`d`:c=String(t.depth),i++;break;case`m`:c=(t.mode&511).toString(8),i++;break;case`M`:c=ho(t.mode,t.isDirectory),i++;break;case`t`:c=Ah(new Date(t.mtime)),i++;break;case`T`:if(i+1<n.length){let e=n[i+1];c=jh(new Date(t.mtime),e),i+=2}else c=`%T`,i++;break;default:r+=`%${e!==0||a!==-1?`${e}.${a}`:``}${s}`,i++;continue}r+=Xr(c,e,a)}else r+=n[i],i++;return r}function Ah(e){return`${[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`][e.getDay()]} ${[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][e.getMonth()]} ${String(e.getDate()).padStart(2,` `)} ${String(e.getHours()).padStart(2,`0`)}:${String(e.getMinutes()).padStart(2,`0`)}:${String(e.getSeconds()).padStart(2,`0`)} ${e.getFullYear()}`}function jh(e,t){switch(t){case`@`:return String(e.getTime()/1e3);case`Y`:return String(e.getFullYear());case`m`:return String(e.getMonth()+1).padStart(2,`0`);case`d`:return String(e.getDate()).padStart(2,`0`);case`H`:return String(e.getHours()).padStart(2,`0`);case`M`:return String(e.getMinutes()).padStart(2,`0`);case`S`:return String(e.getSeconds()).padStart(2,`0`);case`T`:return`${String(e.getHours()).padStart(2,`0`)}:${String(e.getMinutes()).padStart(2,`0`)}:${String(e.getSeconds()).padStart(2,`0`)}`;case`F`:return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`;default:return`%T${t}`}}var Mh,Nh,Ph,Fh,Ih,Lh=x(()=>{Qc(),go(),O(),$r(),Sh(),Th(),Mh=500,Nh={name:`find`,summary:`search for files in a directory hierarchy`,usage:`find [path...] [expression]`,options:`-name PATTERN file name matches shell pattern PATTERN.-iname PATTERN like -name but case insensitive.-path PATTERN file path matches shell pattern PATTERN.-ipath PATTERN like -path but case insensitive.-regex PATTERN file path matches regular expression PATTERN.-iregex PATTERN like -regex but case insensitive.-type TYPE file is of type: f (regular file), d (directory).-empty file is empty or directory is empty.-mtime N file's data was modified N*24 hours ago.-newer FILE file was modified more recently than FILE.-size N[ckMGb] file uses N units of space (c=bytes, k=KB, M=MB, G=GB, b=512B blocks).-perm MODE file's permission bits are exactly MODE (octal).-perm -MODE all permission bits MODE are set.-perm /MODE any permission bits MODE are set.-maxdepth LEVELS descend at most LEVELS directories.-mindepth LEVELS do not apply tests at levels less than LEVELS.-depth process directory contents before directory itself.-prune do not descend into this directory.-not, ! negate the following expression.-a, -and logical AND (default).-o, -or logical OR.-exec CMD {} ; execute CMD on each file ({} is replaced by filename).-exec CMD {} + execute CMD with multiple files at once.-print print the full file name (default action).-print0 print the full file name followed by a null character.-printf FORMAT print FORMAT with directives: %f %h %p %P %s %d %m %M %t.-delete delete found files/directories. --help display this help and exit`.split(`.`)},Ph=new Set([`-name`,`-iname`,`-path`,`-ipath`,`-regex`,`-iregex`,`-type`,`-maxdepth`,`-mindepth`,`-mtime`,`-newer`,`-size`,`-perm`]),Fh={name:`find`,async execute(e,t){if(E(e))return T(Nh);let n=[],r=null,i=null,a=!1,o=!1;for(let t=0;t<e.length;t++){let s=e[t];if(s===`-maxdepth`&&t+1<e.length)o=!0,r=parseInt(e[++t],10);else if(s===`-mindepth`&&t+1<e.length)o=!0,i=parseInt(e[++t],10);else if(s===`-depth`)o=!0,a=!0;else if(s===`-exec`)for(o=!0,t++;t<e.length&&e[t]!==`;`&&e[t]!==`+`;)t++;else!s.startsWith(`-`)&&s!==`;`&&s!==`+`&&s!==`(`&&s!==`)`&&s!==`\\(`&&s!==`\\)`&&s!==`!`?o||n.push(s):Ph.has(s)?(o=!0,t++):(s.startsWith(`-`)||s===`(`||s===`\\(`||s===`!`)&&(o=!0)}n.length===0&&n.push(`.`);let{expr:s,error:c,actions:l}=Ch(e,0);if(c)return{stdout:``,stderr:c,exitCode:1};let u=l.some(e=>e.type===`print`),d=l.length===0,f=[],p=l.some(e=>e.type===`printf`),m=[],h=``,g=0,_=hh(s),v=new Map;for(let e of _){let n=t.fs.resolvePath(t.cwd,e);try{let r=await t.fs.stat(n);v.set(e,r.mtime?.getTime()??Date.now())}catch{}}let y=l.some(e=>{if(e.type!==`printf`)return!1;let t=e.format.replace(/%%/g,``);return/%[-+]?[0-9]*\.?[0-9]*(s|m|M|t|T)/.test(t)}),ee=uh(s)||y,te=dh(s),ne=fh(s),re=vh(s),ie=gh(s),b=typeof t.fs.readdirWithFileTypes==`function`;for(let e of n){let n=function(t){let n=i===null||t.depth>=i,r=!1;if(n&&s!==null){let e=Date.now(),i;if(ie)i=_h(s,t.name,t.relativePath,t.isFile,t.isDirectory);else{let e={name:t.name,relativePath:t.relativePath,isFile:t.isFile,isDirectory:t.isDirectory,isEmpty:t.isEmpty,mtime:t.stat?.mtime?.getTime()??Date.now(),size:t.stat?.size??0,mode:t.stat?.mode??420,newerRefTimes:v};i=lh(s,e)}n=i.matches,r=u?i.printed:n,c.evalCalls++,c.evalTime+=Date.now()-e}else n&&(r=!0);return r?{print:!0,printfData:p?{path:t.relativePath,name:t.name,size:t.stat?.size??0,mtime:t.stat?.mtime?.getTime()??Date.now(),mode:t.stat?.mode??420,isDirectory:t.isDirectory,depth:t.depth,startingPoint:e}:null}:{print:!1,printfData:null}};e.length>1&&e.endsWith(`/`)&&(e=e.slice(0,-1));let o=t.fs.resolvePath(t.cwd,e);try{await t.fs.stat(o)}catch{h+=`find: ${e}: No such file or directory
578
+ `,g=1;continue}let c=Dh(),l=Date.now();async function d(n){let{path:i,depth:l,typeInfo:u}=n;if(c.nodeCount++,l>(r??256))return null;let d,f,p;if(u&&!ee)d=u.isFile,f=u.isDirectory;else{try{let e=Date.now();p=await t.fs.stat(i),c.statCalls++,c.statTime+=Date.now()-e}catch{return null}if(!p)return null;d=p.isFile,f=p.isDirectory}let m;m=i===o?e.split(`/`).pop()||e:i.split(`/`).pop()||``;let h=i===o?e:e===`.`?`./${i.slice(o===`/`?o.length:o.length+1)}`:e+i.slice(o.length),g=[],_=null,y=null,ie=!1;f&&re&&!a&&(ie=bh(s,{name:m,relativePath:h,isFile:d,isDirectory:f}).shouldPrune,ie&&c.earlyPrunes++);let ae=l>=(r??256),oe=ne.terminalDirName!==null&&m===ne.terminalDirName,se=!ae&&!oe&&!ie;if(f&&(se||te||oe)&&!ie){let e=Date.now();if(b&&t.fs.readdirWithFileTypes){if(_=await t.fs.readdirWithFileTypes(i),y=_.map(e=>e.name),c.readdirCalls++,c.readdirTime+=Date.now()-e,se)g=_.map((e,t)=>({path:i===`/`?`/${e.name}`:`${i}/${e.name}`,depth:l+1,typeInfo:{isFile:e.isFile,isDirectory:e.isDirectory},resultIndex:t}));else if(oe){let e=ne.requiredExtension;g=_.filter(t=>t.isFile&&(!e||t.name.endsWith(e))).map((e,t)=>({path:i===`/`?`/${e.name}`:`${i}/${e.name}`,depth:l+1,typeInfo:{isFile:e.isFile,isDirectory:e.isDirectory},resultIndex:t}))}}else y=await t.fs.readdir(i),c.readdirCalls++,c.readdirTime+=Date.now()-e,se&&(g=y.map((e,t)=>({path:i===`/`?`/${e}`:`${i}/${e}`,depth:l+1,resultIndex:t})))}let ce=d?(p?.size??0)===0:y!==null&&y.length===0,le=ie;if(!a&&s!==null&&!ie&&re){let e=Date.now(),t={name:m,relativePath:h,isFile:d,isDirectory:f,isEmpty:ce,mtime:p?.mtime?.getTime()??Date.now(),size:p?.size??0,mode:p?.mode??420,newerRefTimes:v};le=lh(s,t).pruned,c.evalCalls++,c.evalTime+=Date.now()-e}return{relativePath:h,name:m,isFile:d,isDirectory:f,isEmpty:ce,stat:p,depth:l,children:le?[]:g,pruned:le}}async function _(){let e={paths:[],printfData:[]};if(a){let t=function(e){let i={paths:[],printfData:[]},a=r[e];if(!a)return i;for(let e of a.childIndices){let n=t(e);i.paths.push(...n.paths),i.printfData.push(...n.printfData)}let{print:o,printfData:s}=n(a.node);return o&&(i.paths.push(a.node.relativePath),s&&i.printfData.push(s)),i},r=[],i=[{item:{path:o,depth:0,resultIndex:0},parentIndex:-1,childOrderInParent:0}],a=new Map;for(;i.length>0;){let e=Date.now(),t=i.splice(0,Mh),n=await Promise.all(t.map(e=>d(e.item)));c.batchCount++,c.batchTime+=Date.now()-e;for(let e=0;e<t.length;e++){let o=n[e],s=t[e];if(!o)continue;let c=r.length;if(s.parentIndex>=0){let e=a.get(s.parentIndex)||[];e.push(c),a.set(s.parentIndex,e)}r.push({node:o,parentIndex:s.parentIndex,childIndices:[]});for(let e=0;e<o.children.length;e++)i.push({item:o.children[e],parentIndex:c,childOrderInParent:e})}}for(let[e,t]of a)e>=0&&e<r.length&&(r[e].childIndices=t);if(r.length>0){let n=t(0);e.paths.push(...n.paths),e.printfData.push(...n.printfData)}}else{let t=function(n){let i=r.get(n);i&&(e.paths.push(i.path),i.printfData&&e.printfData.push(i.printfData));let a=s.get(n);if(a)for(let e of a)t(e)},r=new Map,i=0,a=[{item:{path:o,depth:0,resultIndex:0},orderIndex:i++}],s=new Map;for(;a.length>0;){let e=Date.now(),t=a.splice(0,Mh),o=await Promise.all(t.map(async({item:e,orderIndex:t})=>{let n=await d(e);return n?{node:n,orderIndex:t}:null}));c.batchCount++,c.batchTime+=Date.now()-e;for(let e of o){if(!e)continue;let{node:t,orderIndex:o}=e,{print:c,printfData:l}=n(t);if(c&&r.set(o,{path:t.relativePath,printfData:l}),t.children.length>0){let e=[];for(let n of t.children){let t=i++;e.push(t),a.push({item:n,orderIndex:t})}s.set(o,e)}}}t(0)}return e}let y=await _();if(f.push(...y.paths),m.push(...y.printfData),t.trace){let n=Date.now()-l;Oh(t.trace,c,n),t.trace({category:`find`,name:`searchPath`,durationMs:n,details:{path:e,resultsFound:y.paths.length}})}}let ae=``;if(l.length>0)for(let e of l)switch(e.type){case`print`:ae+=f.length>0?`${f.join(`
579
+ `)}
580
+ `:``;break;case`print0`:ae+=f.length>0?`${f.join(`\0`)}\0`:``;break;case`delete`:{let e=[...f].sort((e,t)=>t.length-e.length);for(let n of e){let e=t.fs.resolvePath(t.cwd,n);try{await t.fs.rm(e,{recursive:!1})}catch(e){let t=e instanceof Error?e.message:String(e);h+=`find: cannot delete '${n}': ${t}
581
+ `,g=1}}break}case`printf`:for(let t of m)ae+=kh(e.format,t);break;case`exec`:if(!t.exec)return{stdout:``,stderr:`find: -exec not supported in this context
582
+ `,exitCode:1};if(e.batchMode){let n=[];for(let t of e.command)t===`{}`?n.push(...f):n.push(t);let r=await t.exec(Zc([n[0]]),{cwd:t.cwd,signal:t.signal,args:n.slice(1)});ae+=r.stdout,h+=r.stderr,r.exitCode!==0&&(g=r.exitCode)}else for(let n of f){let r=e.command.map(e=>e===`{}`?n:e),i=await t.exec(Zc([r[0]]),{cwd:t.cwd,signal:t.signal,args:r.slice(1)});ae+=i.stdout,h+=i.stderr,i.exitCode!==0&&(g=i.exitCode)}break}else d&&(ae=f.length>0?`${f.join(`
583
+ `)}
584
+ `:``);return{stdout:ae,stderr:h,exitCode:g}}},Ih={name:`find`,flags:[{flag:`-name`,type:`value`,valueHint:`pattern`},{flag:`-iname`,type:`value`,valueHint:`pattern`},{flag:`-type`,type:`value`,valueHint:`string`},{flag:`-maxdepth`,type:`value`,valueHint:`number`},{flag:`-mindepth`,type:`value`,valueHint:`number`},{flag:`-empty`,type:`boolean`},{flag:`-print`,type:`boolean`},{flag:`-print0`,type:`boolean`}],needsFiles:!0}}),Rh={};S(Rh,{basenameCommand:()=>Bh,flagsForFuzzing:()=>Vh});var zh,Bh,Vh,Hh=x(()=>{O(),zh={name:`basename`,summary:`strip directory and suffix from filenames`,usage:`basename NAME [SUFFIX]
585
+ basename OPTION... NAME...`,options:[`-a, --multiple support multiple arguments`,`-s, --suffix=SUFFIX remove a trailing SUFFIX`,` --help display this help and exit`]},Bh={name:`basename`,async execute(e,t){if(E(e))return T(zh);let n=!1,r=``,i=[];for(let t=0;t<e.length;t++){let a=e[t];a===`-a`||a===`--multiple`?n=!0:a===`-s`&&t+1<e.length?(r=e[++t],n=!0):a.startsWith(`--suffix=`)?(r=a.slice(9),n=!0):a.startsWith(`-`)||i.push(a)}if(i.length===0)return{stdout:``,stderr:`basename: missing operand
586
+ `,exitCode:1};!n&&i.length>=2&&(r=i.pop()??``);let a=[];for(let e of i){let t=e.replace(/\/+$/,``),n=t.split(`/`).pop()||t;r&&n.endsWith(r)&&(n=n.slice(0,-r.length)),a.push(n)}return{stdout:`${a.join(`
587
+ `)}
588
+ `,stderr:``,exitCode:0}}},Vh={name:`basename`,flags:[{flag:`-a`,type:`boolean`},{flag:`-s`,type:`value`,valueHint:`string`}],needsArgs:!0}}),Uh={};S(Uh,{dirnameCommand:()=>Gh,flagsForFuzzing:()=>Kh});var Wh,Gh,Kh,qh=x(()=>{O(),Wh={name:`dirname`,summary:`strip last component from file name`,usage:`dirname [OPTION] NAME...`,options:[` --help display this help and exit`]},Gh={name:`dirname`,async execute(e,t){if(E(e))return T(Wh);let n=e.filter(e=>!e.startsWith(`-`));if(n.length===0)return{stdout:``,stderr:`dirname: missing operand
589
+ `,exitCode:1};let r=[];for(let e of n){let t=e.replace(/\/+$/,``),n=t.lastIndexOf(`/`);n===-1?r.push(`.`):n===0?r.push(`/`):r.push(t.slice(0,n))}return{stdout:`${r.join(`
590
+ `)}
591
+ `,stderr:``,exitCode:0}}},Kh={name:`dirname`,flags:[],needsArgs:!0}}),Jh={};S(Jh,{flagsForFuzzing:()=>eg,treeCommand:()=>$h});async function Yh(e,t,n,r,i){let a={output:``,stderr:``,dirCount:0,fileCount:0},o=e.fs.resolvePath(e.cwd,t);try{if(!(await e.fs.stat(o)).isDirectory)return a.output=`${t}
592
+ `,a.fileCount=1,a}catch{return a.stderr=`tree: ${t}: No such file or directory
593
+ `,a}if(a.output=`${t}
594
+ `,n.maxDepth!==null&&i>=n.maxDepth)return a;try{let t=[];if(e.fs.readdirWithFileTypes)t=(await e.fs.readdirWithFileTypes(o)).map(e=>({name:e.name,isDirectory:e.isDirectory}));else{let n=await e.fs.readdir(o);for(let r=0;r<n.length;r+=100){let i=n.slice(r,r+100),a=await Promise.all(i.map(async t=>{let n=o===`/`?`/${t}`:`${o}/${t}`;try{return{name:t,isDirectory:(await e.fs.stat(n)).isDirectory}}catch{return null}}));t.push(...a.filter(e=>e!==null))}}let s=t.filter(e=>!(!n.showHidden&&e.name.startsWith(`.`)||n.directoriesOnly&&!e.isDirectory));s.sort((e,t)=>e.name.localeCompare(t.name));for(let t=0;t<s.length;t++){let c=s[t],l=o===`/`?`/${c.name}`:`${o}/${c.name}`,u=t===s.length-1,d=u?"`-- ":`|-- `,f=r+(u?` `:`| `);if(c.isDirectory){a.dirCount++;let t=n.fullPath?l:c.name;if(a.output+=`${r+d+t}
595
+ `,n.maxDepth===null||i+1<n.maxDepth){let t=await Xh(e,l,n,f,i+1);a.output+=t.output,a.dirCount+=t.dirCount,a.fileCount+=t.fileCount}}else{a.fileCount++;let e=n.fullPath?l:c.name;a.output+=`${r+d+e}
596
+ `}}}catch{a.stderr=`tree: ${t}: Permission denied
597
+ `}return a}async function Xh(e,t,n,r,i){let a={output:``,stderr:``,dirCount:0,fileCount:0};if(n.maxDepth!==null&&i>=n.maxDepth)return a;try{let o=[];if(e.fs.readdirWithFileTypes)o=(await e.fs.readdirWithFileTypes(t)).map(e=>({name:e.name,isDirectory:e.isDirectory}));else{let n=await e.fs.readdir(t);for(let r=0;r<n.length;r+=100){let i=n.slice(r,r+100),a=await Promise.all(i.map(async n=>{let r=t===`/`?`/${n}`:`${t}/${n}`;try{return{name:n,isDirectory:(await e.fs.stat(r)).isDirectory}}catch{return null}}));o.push(...a.filter(e=>e!==null))}}let s=o.filter(e=>!(!n.showHidden&&e.name.startsWith(`.`)||n.directoriesOnly&&!e.isDirectory));s.sort((e,t)=>e.name.localeCompare(t.name));for(let o=0;o<s.length;o++){let c=s[o],l=t===`/`?`/${c.name}`:`${t}/${c.name}`,u=o===s.length-1,d=u?"`-- ":`|-- `,f=r+(u?` `:`| `);if(c.isDirectory){a.dirCount++;let t=n.fullPath?l:c.name;a.output+=`${r+d+t}
598
+ `;let o=await Xh(e,l,n,f,i+1);a.output+=o.output,a.dirCount+=o.dirCount,a.fileCount+=o.fileCount}else{a.fileCount++;let e=n.fullPath?l:c.name;a.output+=`${r+d+e}
599
+ `}}}catch{}return a}var Zh,Qh,$h,eg,tg=x(()=>{xr(),Sr(),O(),Zh={name:`tree`,summary:`list contents of directories in a tree-like format`,usage:`tree [OPTION]... [DIRECTORY]...`,options:[`-a include hidden files`,`-d list directories only`,`-L LEVEL limit depth of directory tree`,`-f print full path prefix for each file`,` --help display this help and exit`]},Qh={showHidden:{short:`a`,type:`boolean`},directoriesOnly:{short:`d`,type:`boolean`},fullPath:{short:`f`,type:`boolean`},maxDepth:{short:`L`,type:`number`}},$h={name:`tree`,async execute(e,t){if(E(e))return T(Zh);let n=br(`tree`,e,Qh);if(!n.ok)return n.error;let r={showHidden:n.result.flags.showHidden,directoriesOnly:n.result.flags.directoriesOnly,maxDepth:n.result.flags.maxDepth??null,fullPath:n.result.flags.fullPath},i=n.result.positional;i.length===0&&i.push(`.`);let a=``,o=``,s=0,c=0;for(let e of i){let n=await Yh(t,e,r,``,0);a+=n.output,o+=n.stderr,s+=n.dirCount,c+=n.fileCount}return a+=`
600
+ ${s} director${s===1?`y`:`ies`}`,r.directoriesOnly||(a+=`, ${c} file${c===1?``:`s`}`),a+=`
601
+ `,{stdout:a,stderr:o,exitCode:+!!o}}},eg={name:`tree`,flags:[{flag:`-a`,type:`boolean`},{flag:`-d`,type:`boolean`},{flag:`-f`,type:`boolean`},{flag:`-L`,type:`value`,valueHint:`number`}],needsFiles:!0}}),ng={};S(ng,{duCommand:()=>sg,flagsForFuzzing:()=>lg});async function rg(e,t,n,r,i){let a={output:``,totalSize:0,stderr:``};if(i>cg)return a;try{let o=await e.fs.stat(t);if(!o.isDirectory)return a.totalSize=o.size,(r.allFiles||i===0)&&(a.output=ig(o.size,r.humanReadable)+` `+n+`
602
+ `),a;let s=0,c=[];if(e.fs.readdirWithFileTypes){let n=await e.fs.readdirWithFileTypes(t),r=n.filter(e=>e.isFile),i=n.filter(e=>e.isDirectory);for(let n=0;n<r.length;n+=100){let i=r.slice(n,n+100),a=await Promise.all(i.map(async n=>{let r=t===`/`?`/${n.name}`:`${t}/${n.name}`;try{let t=await e.fs.stat(r);return{name:n.name,isDirectory:!1,size:t.size}}catch{return{name:n.name,isDirectory:!1,size:0}}}));c.push(...a)}c.push(...i.map(e=>({name:e.name,isDirectory:!0})))}else{let n=await e.fs.readdir(t);for(let r=0;r<n.length;r+=100){let i=n.slice(r,r+100),a=await Promise.all(i.map(async n=>{let r=t===`/`?`/${n}`:`${t}/${n}`;try{let t=await e.fs.stat(r);return{name:n,isDirectory:t.isDirectory,size:t.isDirectory?void 0:t.size}}catch{return{name:n,isDirectory:!1,size:0}}}));c.push(...a)}}c.sort((e,t)=>e.name.localeCompare(t.name));let l=c.filter(e=>!e.isDirectory);for(let e of l){let t=e.size??0;if(s+=t,r.allFiles&&!r.summarize){let i=n===`.`?e.name:`${n}/${e.name}`;a.output+=ig(t,r.humanReadable)+` `+i+`
603
+ `}}let u=c.filter(e=>e.isDirectory);for(let o=0;o<u.length;o+=100){let c=u.slice(o,o+100),l=await Promise.all(c.map(async a=>{let o=t===`/`?`/${a.name}`:`${t}/${a.name}`,s=n===`.`?a.name:`${n}/${a.name}`;return{name:a.name,result:await rg(e,o,s,r,i+1)}}));l.sort((e,t)=>e.name.localeCompare(t.name));for(let{result:e}of l)s+=e.totalSize,r.summarize||(r.maxDepth===null||i+1<=r.maxDepth)&&(a.output+=e.output)}a.totalSize=s,(r.summarize||r.maxDepth===null||i<=r.maxDepth)&&(a.output+=`${ig(s,r.humanReadable)} ${n}
604
+ `)}catch{a.stderr=`du: cannot read directory '${n}': Permission denied
605
+ `}return a}function ig(e,t){return t?e<1024?`${e}`:e<1024*1024?`${(e/1024).toFixed(1)}K`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)}M`:`${(e/(1024*1024*1024)).toFixed(1)}G`:String(Math.ceil(e/1024)||1)}var ag,og,sg,cg,lg,ug=x(()=>{xr(),Sr(),O(),ag={name:`du`,summary:`estimate file space usage`,usage:`du [OPTION]... [FILE]...`,options:[`-a write counts for all files, not just directories`,`-h print sizes in human readable format`,`-s display only a total for each argument`,`-c produce a grand total`,`--max-depth=N print total for directory only if N or fewer levels deep`,` --help display this help and exit`]},og={allFiles:{short:`a`,type:`boolean`},humanReadable:{short:`h`,type:`boolean`},summarize:{short:`s`,type:`boolean`},grandTotal:{short:`c`,type:`boolean`},maxDepth:{long:`max-depth`,type:`number`}},sg={name:`du`,async execute(e,t){if(E(e))return T(ag);let n=br(`du`,e,og);if(!n.ok)return n.error;let r={allFiles:n.result.flags.allFiles,humanReadable:n.result.flags.humanReadable,summarize:n.result.flags.summarize,grandTotal:n.result.flags.grandTotal,maxDepth:n.result.flags.maxDepth??null},i=n.result.positional;i.length===0&&i.push(`.`);let a=``,o=``,s=0;for(let e of i){let n=t.fs.resolvePath(t.cwd,e);try{await t.fs.stat(n);let i=await rg(t,n,e,r,0);a+=i.output,s+=i.totalSize,o+=i.stderr}catch{o+=`du: cannot access '${e}': No such file or directory
606
+ `}}return r.grandTotal&&i.length>0&&(a+=`${ig(s,r.humanReadable)} total
607
+ `),{stdout:a,stderr:o,exitCode:+!!o}}},cg=1e3,lg={name:`du`,flags:[{flag:`-a`,type:`boolean`},{flag:`-h`,type:`boolean`},{flag:`-s`,type:`boolean`},{flag:`-c`,type:`boolean`},{flag:`--max-depth`,type:`value`,valueHint:`number`}],needsFiles:!0}}),dg={};S(dg,{envCommand:()=>pg,flagsForFuzzing:()=>gg,printenvCommand:()=>hg,printenvFlagsForFuzzing:()=>_g});var fg,pg,mg,hg,gg,_g,vg=x(()=>{w(),cu(),O(),fg={name:`env`,summary:`run a program in a modified environment`,usage:`env [OPTION]... [NAME=VALUE]... [COMMAND [ARG]...]`,options:[`-i, --ignore-environment start with an empty environment`,`-u NAME, --unset=NAME remove NAME from the environment`,` --help display this help and exit`]},pg={name:`env`,async execute(e,t){if(E(e))return T(fg);let n=!1,r=[],i=new Map,a=-1;for(let t=0;t<e.length;t++){let o=e[t];if(o===`-i`||o===`--ignore-environment`)n=!0;else if(o===`-u`&&t+1<e.length)r.push(e[++t]);else if(o.startsWith(`-u`))r.push(o.slice(2));else if(o.startsWith(`--unset=`))r.push(o.slice(8));else{if(o.startsWith(`--`)&&o!==`--`)return D(`env`,o);if(o.startsWith(`-`)&&o!==`-`){for(let e of o.slice(1))if(e!==`i`&&e!==`u`)return D(`env`,`-${e}`);o.includes(`i`)&&(n=!0)}else if(o.includes(`=`)&&a===-1){let e=o.indexOf(`=`),t=o.slice(0,e),n=o.slice(e+1);i.set(t,n)}else{a=t;break}}}let o;if(n)o=new Map(i);else{o=new Map(t.env);for(let e of r)o.delete(e);for(let[e,t]of i)o.set(e,t)}if(a===-1){let e=[];for(let[t,n]of o)e.push(`${t}=${n}`);return{stdout:e.join(`
608
+ `)+(e.length>0?`
609
+ `:``),stderr:``,exitCode:0}}if(!t.exec)return{stdout:``,stderr:`env: command execution not supported in this context
610
+ `,exitCode:1};let s=e.slice(a);return t.exec(`command`,{cwd:t.cwd,env:au(o),replaceEnv:!0,stdin:t.stdin,stdinKind:`bytes`,signal:t.signal,args:s})}},mg={name:`printenv`,summary:`print all or part of environment`,usage:`printenv [OPTION]... [VARIABLE]...`,options:[` --help display this help and exit`]},hg={name:`printenv`,async execute(e,t){if(E(e))return T(mg);let n=e.filter(e=>!e.startsWith(`-`));if(n.length===0){let e=[];for(let[n,r]of t.env)e.push(`${n}=${r}`);return{stdout:e.join(`
611
+ `)+(e.length>0?`
612
+ `:``),stderr:``,exitCode:0}}let r=[],i=0;for(let e of n){let n=t.env.get(e);n===void 0?i=1:r.push(n)}return{stdout:r.join(`
613
+ `)+(r.length>0?`
614
+ `:``),stderr:``,exitCode:i}}},gg={name:`env`,flags:[{flag:`-i`,type:`boolean`},{flag:`-u`,type:`value`,valueHint:`string`}]},_g={name:`printenv`,flags:[]}}),yg={};S(yg,{aliasCommand:()=>Sg,flagsForFuzzing:()=>wg,unaliasCommand:()=>Cg,unaliasFlagsForFuzzing:()=>Tg});var bg,xg,Sg,Cg,wg,Tg,Eg=x(()=>{O(),bg={name:`alias`,summary:`define or display aliases`,usage:`alias [name[=value] ...]`,options:[` --help display this help and exit`]},xg=`BASH_ALIAS_`,Sg={name:`alias`,async execute(e,t){if(E(e))return T(bg);if(e.length===0){let e=``;for(let[n,r]of t.env)if(n.startsWith(xg)){let t=n.slice(xg.length);e+=`alias ${t}='${r}'
615
+ `}return{stdout:e,stderr:``,exitCode:0}}let n=e[0]===`--`?e.slice(1):e;for(let e of n){let n=e.indexOf(`=`);if(n===-1){let n=xg+e;return t.env.get(n)?{stdout:`alias ${e}='${t.env.get(n)}'
616
+ `,stderr:``,exitCode:0}:{stdout:``,stderr:`alias: ${e}: not found
617
+ `,exitCode:1}}else{let r=e.slice(0,n),i=e.slice(n+1);(i.startsWith(`'`)&&i.endsWith(`'`)||i.startsWith(`"`)&&i.endsWith(`"`))&&(i=i.slice(1,-1)),t.env.set(xg+r,i)}}return{stdout:``,stderr:``,exitCode:0}}},Cg={name:`unalias`,async execute(e,t){if(E(e))return T({name:`unalias`,summary:`remove alias definitions`,usage:`unalias name [name ...]`,options:[`-a remove all aliases`,` --help display this help and exit`]});if(e.length===0)return{stdout:``,stderr:`unalias: usage: unalias [-a] name [name ...]
618
+ `,exitCode:1};if(e[0]===`-a`){for(let e of t.env.keys())e.startsWith(xg)&&t.env.delete(e);return{stdout:``,stderr:``,exitCode:0}}let n=e[0]===`--`?e.slice(1):e,r=!1,i=``;for(let e of n){let n=xg+e;t.env.get(n)?t.env.delete(n):(i+=`unalias: ${e}: not found
619
+ `,r=!0)}return{stdout:``,stderr:i,exitCode:+!!r}}},wg={name:`alias`,flags:[]},Tg={name:`unalias`,flags:[{flag:`-a`,type:`boolean`}]}}),Dg={};S(Dg,{flagsForFuzzing:()=>jg,historyCommand:()=>Ag});var Og,kg,Ag,jg,Mg=x(()=>{O(),Og={name:`history`,summary:`display command history`,usage:`history [n]`,options:[`-c clear the history list`,` --help display this help and exit`]},kg=`BASH_HISTORY`,Ag={name:`history`,async execute(e,t){if(E(e))return T(Og);let n=t.env.get(kg)||`[]`,r;try{r=JSON.parse(n)}catch{r=[]}if(e[0]===`-c`)return t.env.set(kg,`[]`),{stdout:``,stderr:``,exitCode:0};let i=r.length;e[0]&&/^\d+$/.test(e[0])&&(i=Math.min(parseInt(e[0],10),r.length));let a=r.length-i,o=``;for(let e=a;e<r.length;e++){let t=(e+1).toString().padStart(5,` `);o+=`${t} ${r[e]}
620
+ `}return{stdout:o,stderr:``,exitCode:0}}},jg={name:`history`,flags:[{flag:`-c`,type:`boolean`}]}}),Ng={};S(Ng,{flagsForFuzzing:()=>Ig,xargsCommand:()=>Fg});var Pg,Fg,Ig,Lg=x(()=>{w(),Qc(),O(),Pg={name:`xargs`,summary:`build and execute command lines from standard input`,usage:`xargs [OPTION]... [COMMAND [INITIAL-ARGS]]`,options:[`-I REPLACE replace occurrences of REPLACE with input`,`-d DELIM use DELIM as input delimiter (e.g., -d '\\n' for newline)`,`-n NUM use at most NUM arguments per command line`,`-P NUM run at most NUM processes at a time`,`-0, --null items are separated by null, not whitespace`,`-t, --verbose print commands before executing`,`-r, --no-run-if-empty do not run command if input is empty`,` --help display this help and exit`]},Fg={name:`xargs`,async execute(e,t){if(E(e))return T(Pg);let n=null,r=null,i=null,a=null,o=!1,s=!1,c=0;for(let t=0;t<e.length;t++){let l=e[t];if(l===`-I`&&t+1<e.length)n=e[++t],c=t+1;else if(l===`-d`&&t+1<e.length)r=e[++t].replace(/\\n/g,`
621
+ `).replace(/\\t/g,` `).replace(/\\r/g,`\r`).replace(/\\0/g,`\0`).replace(/\\\\/g,`\\`),c=t+1;else if(l===`-n`&&t+1<e.length)i=parseInt(e[++t],10),c=t+1;else if(l===`-P`&&t+1<e.length)a=parseInt(e[++t],10),c=t+1;else if(l===`-0`||l===`--null`)o=!0,c=t+1;else if(l===`-t`||l===`--verbose`)s=!0,c=t+1;else if(l===`-r`||l===`--no-run-if-empty`)c=t+1;else{if(l.startsWith(`--`))return D(`xargs`,l);if(l.startsWith(`-`)&&l.length>1){for(let e of l.slice(1))if(!`0tr`.includes(e))return D(`xargs`,`-${e}`);l.includes(`0`)&&(o=!0),l.includes(`t`)&&(s=!0),l.includes(`r`),c=t+1}else if(!l.startsWith(`-`)){c=t;break}}}let l=e.slice(c);l.length===0&&l.push(`echo`);let u=ur(t.stdin),d;if(d=o?u.split(`\0`).filter(e=>e.length>0):r===null?u.split(/\s+/).map(e=>e.trim()).filter(e=>e.length>0):u.replace(/\n$/,``).split(r).filter(e=>e.length>0),d.length===0)return{stdout:``,stderr:``,exitCode:0};let f=``,p=``,m=0,h=e=>/[\s"'\\$`!*?[\]{}();&|<>#]/.test(e)?`"${e.replace(/([\\"`$])/g,`\\$1`)}"`:e,g=async e=>{if(s){let t=e.map(h).join(` `);p+=`${t}
622
+ `}return t.exec?t.exec(Zc([e[0]]),{cwd:t.cwd,signal:t.signal,args:e.slice(1)}):{stdout:`${e.map(h).join(` `)}
623
+ `,stderr:``,exitCode:0}},_=async e=>{if(a!==null&&a>1)for(let t=0;t<e.length;t+=a){let n=e.slice(t,t+a),r=await Promise.all(n.map(g));for(let e of r)f+=e.stdout,p+=e.stderr,e.exitCode!==0&&(m=e.exitCode)}else for(let t of e){let e=await g(t);f+=e.stdout,p+=e.stderr,e.exitCode!==0&&(m=e.exitCode)}};if(n!==null)await _(d.map(e=>l.map(t=>t.replaceAll(n,e))));else if(i!==null){let e=[];for(let t=0;t<d.length;t+=i){let n=d.slice(t,t+i);e.push([...l,...n])}await _(e)}else{let e=await g([...l,...d]);f+=e.stdout,p+=e.stderr,m=e.exitCode}return{stdout:f,stderr:p,exitCode:m}}},Ig={name:`xargs`,flags:[{flag:`-I`,type:`value`,valueHint:`string`},{flag:`-d`,type:`value`,valueHint:`delimiter`},{flag:`-n`,type:`value`,valueHint:`number`},{flag:`-0`,type:`boolean`},{flag:`-t`,type:`boolean`},{flag:`-r`,type:`boolean`}],stdinType:`text`}}),Rg={};S(Rg,{falseCommand:()=>Bg,falseFlagsForFuzzing:()=>Hg,flagsForFuzzing:()=>Vg,trueCommand:()=>zg});var zg,Bg,Vg,Hg,Ug=x(()=>{zg={name:`true`,async execute(){return{stdout:``,stderr:``,exitCode:0}}},Bg={name:`false`,async execute(){return{stdout:``,stderr:``,exitCode:1}}},Vg={name:`true`,flags:[]},Hg={name:`false`,flags:[]}}),Wg={};S(Wg,{clearCommand:()=>Kg,flagsForFuzzing:()=>qg});var Gg,Kg,qg,Jg=x(()=>{O(),Gg={name:`clear`,summary:`clear the terminal screen`,usage:`clear [OPTIONS]`,options:[` --help display this help and exit`]},Kg={name:`clear`,async execute(e,t){return E(e)?T(Gg):{stdout:`\x1B[2J\x1B[H`,stderr:``,exitCode:0}}},qg={name:`clear`,flags:[]}}),Yg={};S(Yg,{bashCommand:()=>Qg,flagsForFuzzing:()=>e_,shCommand:()=>$g,shFlagsForFuzzing:()=>t_});async function Xg(e,t,n,r){if(!r.exec)return{stdout:``,stderr:`bash: internal error: exec function not available
624
+ `,exitCode:1};let i=su(r.exportedEnv||{},{0:t,"#":String(n.length),"@":n.join(` `),"*":n.join(` `)});n.forEach((e,t)=>{i[String(t+1)]=e});let a=e;if(a.startsWith(`#!`)){let e=a.indexOf(`
625
+ `);e!==-1&&(a=a.slice(e+1))}return await r.exec(a,{env:i,cwd:r.cwd,stdin:r.stdin,stdinKind:`bytes`,signal:r.signal})}var Zg,Qg,$g,e_,t_,n_=x(()=>{w(),cu(),O(),Zg={name:`bash`,summary:`execute shell commands or scripts`,usage:`bash [OPTIONS] [SCRIPT_FILE] [ARGUMENTS...]`,options:[`-c COMMAND execute COMMAND string`,` --help display this help and exit`],notes:[`Without -c, reads and executes commands from SCRIPT_FILE.`,`Arguments are passed as $1, $2, etc. to the script.`,`$0 is set to the script name (or "bash" with -c).`]},Qg={name:`bash`,async execute(e,t){if(E(e))return T(Zg);if(e[0]===`-c`&&e.length>=2){let n=e[1];return Xg(n,e[2]||`bash`,e.slice(3),t)}if(e.length===0){let e=ur(t.stdin);return e.trim()?Xg(e,`bash`,[],t):{stdout:``,stderr:``,exitCode:0}}let n=e[0],r=e.slice(1);try{let e=t.fs.resolvePath(t.cwd,n);return Xg(await t.fs.readFile(e),n,r,t)}catch{return{stdout:``,stderr:`bash: ${n}: No such file or directory
626
+ `,exitCode:127}}}},$g={name:`sh`,async execute(e,t){if(E(e))return T({...Zg,name:`sh`,summary:`execute shell commands or scripts (POSIX shell)`});if(e[0]===`-c`&&e.length>=2){let n=e[1];return Xg(n,e[2]||`sh`,e.slice(3),t)}if(e.length===0){let e=ur(t.stdin);return e.trim()?Xg(e,`sh`,[],t):{stdout:``,stderr:``,exitCode:0}}let n=e[0],r=e.slice(1);try{let e=t.fs.resolvePath(t.cwd,n);return Xg(await t.fs.readFile(e),n,r,t)}catch{return{stdout:``,stderr:`sh: ${n}: No such file or directory
627
+ `,exitCode:127}}}},e_={name:`bash`,flags:[{flag:`-c`,type:`value`,valueHint:`string`}],stdinType:`text`},t_={name:`sh`,flags:[{flag:`-c`,type:`value`,valueHint:`string`}],stdinType:`text`}});function r_(e,t,n,r,i,a,o,s,c,l){switch(t){case`sort`:return Array.isArray(e)?[[...e].sort(o)]:[null];case`sort_by`:return!Array.isArray(e)||n.length===0?[null]:[[...e].sort((e,t)=>{let a=i(e,n[0],r)[0],s=i(t,n[0],r)[0];return o(a,s)})];case`bsearch`:if(!Array.isArray(e))throw Error(`${e===null?`null`:typeof e==`object`?`object`:typeof e} (${JSON.stringify(e)}) cannot be searched from`);return n.length===0?[null]:i(e,n[0],r).map(t=>{let n=0,r=e.length;for(;n<r;){let i=n+r>>>1;o(e[i],t)<0?n=i+1:r=i}return n<e.length&&o(e[n],t)===0?n:-n-1});case`unique_by`:{if(!Array.isArray(e)||n.length===0)return[null];let t=new Map;for(let a of e){let e=i(a,n[0],r)[0],o=JSON.stringify(e);t.has(o)||t.set(o,{item:a,key:e})}let a=[...t.values()];return a.sort((e,t)=>o(e.key,t.key)),[a.map(e=>e.item)]}case`group_by`:{if(!Array.isArray(e)||n.length===0)return[null];let t=new Map;for(let a of e){let e=JSON.stringify(i(a,n[0],r)[0]);t.has(e)||t.set(e,[]),t.get(e)?.push(a)}return[[...t.values()]]}case`max`:return Array.isArray(e)&&e.length>0?[e.reduce((e,t)=>o(e,t)>0?e:t)]:[null];case`max_by`:return!Array.isArray(e)||e.length===0||n.length===0?[null]:[e.reduce((e,t)=>{let a=i(e,n[0],r)[0],s=i(t,n[0],r)[0];return o(a,s)>0?e:t})];case`min`:return Array.isArray(e)&&e.length>0?[e.reduce((e,t)=>o(e,t)<0?e:t)]:[null];case`min_by`:return!Array.isArray(e)||e.length===0||n.length===0?[null]:[e.reduce((e,t)=>{let a=i(e,n[0],r)[0],s=i(t,n[0],r)[0];return o(a,s)<0?e:t})];case`add`:{let t=e=>{let t=e.filter(e=>e!==null);return t.length===0?null:t.every(e=>typeof e==`number`)?t.reduce((e,t)=>e+t,0):t.every(e=>typeof e==`string`)?t.join(``):t.every(e=>Array.isArray(e))?t.flat():t.every(e=>e&&typeof e==`object`&&!Array.isArray(e))?su(...t):null};return n.length>=1?[t(i(e,n[0],r))]:Array.isArray(e)?[t(e)]:[null]}case`any`:if(n.length>=2){try{let t=a(e,n[0],r);for(let e of t)if(i(e,n[1],r).some(s))return[!0]}catch(e){if(e instanceof l)throw e}return[!1]}return n.length===1?Array.isArray(e)?[e.some(e=>s(i(e,n[0],r)[0]))]:[!1]:Array.isArray(e)?[e.some(s)]:[!1];case`all`:if(n.length>=2){try{let t=a(e,n[0],r);for(let e of t)if(!i(e,n[1],r).some(s))return[!1]}catch(e){if(e instanceof l)throw e}return[!0]}return n.length===1?Array.isArray(e)?[e.every(e=>s(i(e,n[0],r)[0]))]:[!0]:Array.isArray(e)?[e.every(s)]:[!0];case`select`:return n.length===0||i(e,n[0],r).some(s)?[e]:[];case`map`:return n.length===0||!Array.isArray(e)?[null]:[e.flatMap(e=>i(e,n[0],r))];case`map_values`:if(n.length===0)return[null];if(Array.isArray(e))return[e.flatMap(e=>i(e,n[0],r))];if(e&&typeof e==`object`){let t=Object.create(null);for(let[a,o]of Object.entries(e)){if(!yc(a))continue;let e=i(o,n[0],r);e.length>0&&bc(t,a,e[0])}return[t]}return[null];case`has`:{if(n.length===0)return[!1];let t=i(e,n[0],r)[0];return Array.isArray(e)&&typeof t==`number`?[t>=0&&t<e.length]:e&&typeof e==`object`&&typeof t==`string`?[xc(e,t)]:[!1]}case`in`:{if(n.length===0)return[!1];let t=i(e,n[0],r)[0];return Array.isArray(t)&&typeof e==`number`?[e>=0&&e<t.length]:t&&typeof t==`object`&&typeof e==`string`?[xc(t,e)]:[!1]}case`contains`:return n.length===0?[!1]:[c(e,i(e,n[0],r)[0])];case`inside`:return n.length===0?[!1]:[c(i(e,n[0],r)[0],e)];default:return null}}var i_=x(()=>{cu(),Oc()});function a_(e,t,n,r,i,a,o,s){switch(t){case`first`:if(n.length>0)try{let t=a(e,n[0],r);return t.length>0?[t[0]]:[]}catch(e){if(e instanceof s)throw e;return[]}return Array.isArray(e)&&e.length>0?[e[0]]:[null];case`last`:if(n.length>0){let t=i(e,n[0],r);return t.length>0?[t[t.length-1]]:[]}return Array.isArray(e)&&e.length>0?[e[e.length-1]]:[null];case`nth`:{if(n.length<1)return[null];let t=i(e,n[0],r);if(n.length>1){for(let e of t)if(e<0)throw Error(`nth doesn't support negative indices`);let i;try{i=a(e,n[1],r)}catch(e){if(e instanceof s)throw e;i=[]}return t.flatMap(e=>{let t=e;return t<i.length?[i[t]]:[]})}return Array.isArray(e)?t.flatMap(t=>{let n=t;if(n<0)throw Error(`nth doesn't support negative indices`);return n<e.length?[e[n]]:[null]}):[null]}case`range`:{if(n.length===0)return[];let t=Math.max(r.limits.maxIterations*100,1e6),a=e=>e.length>=t,o=i(e,n[0],r);if(n.length===1){let e=[];for(let t of o){let n=t;for(let t=0;t<n;t++)if(e.push(t),a(e))return e}return e}let s=i(e,n[1],r);if(n.length===2){let e=[];for(let t of o)for(let n of s){let r=t,i=n;for(let t=r;t<i;t++)if(e.push(t),a(e))return e}return e}let c=i(e,n[2],r),l=[];for(let e of o)for(let t of s)for(let n of c){let r=e,i=t,o=n;if(o!==0){if(o>0){for(let e=r;e<i;e+=o)if(l.push(e),a(l))return l}else for(let e=r;e>i;e+=o)if(l.push(e),a(l))return l}}return l}case`limit`:return n.length<2?[]:i(e,n[0],r).flatMap(t=>{let i=t;if(i<0)throw Error(`limit doesn't support negative count`);if(i===0)return[];let o;try{o=a(e,n[1],r)}catch(e){if(e instanceof s)throw e;o=[]}return o.slice(0,i)});case`isempty`:if(n.length<1)return[!0];try{return[a(e,n[0],r).length===0]}catch(e){if(e instanceof s)throw e;return[!0]}case`isvalid`:if(n.length<1)return[!0];try{return[i(e,n[0],r).length>0]}catch(e){if(e instanceof s)throw e;return[!1]}case`skip`:return n.length<2?[]:i(e,n[0],r).flatMap(t=>{let a=t;if(a<0)throw Error(`skip doesn't support negative count`);return i(e,n[1],r).slice(a)});case`until`:{if(n.length<2)return[e];let t=e,a=r.limits.maxIterations;for(let e=0;e<a;e++){if(i(t,n[0],r).some(o))return[t];let e=i(t,n[1],r);if(e.length===0)return[t];t=e[0]}throw new s(`jq until: too many iterations (${a}), increase executionLimits.maxJqIterations`,`iterations`)}case`while`:{if(n.length<2)return[e];let t=[],a=e,c=r.limits.maxIterations;for(let e=0;e<c&&i(a,n[0],r).some(o);e++){t.push(a);let e=i(a,n[1],r);if(e.length===0)break;a=e[0]}if(t.length>=c)throw new s(`jq while: too many iterations (${c}), increase executionLimits.maxJqIterations`,`iterations`);return t}case`repeat`:{if(n.length===0)return[e];let t=[],a=e,o=r.limits.maxIterations;for(let e=0;e<o;e++){t.push(a);let e=i(a,n[0],r);if(e.length===0)break;a=e[0]}if(t.length>=o)throw new s(`jq repeat: too many iterations (${o}), increase executionLimits.maxJqIterations`,`iterations`);return t}default:return null}}var o_=x(()=>{});function s_(e,t,n,r,i){switch(t){case`now`:return[Date.now()/1e3];case`gmtime`:{if(typeof e!=`number`)return[null];let t=new Date(e*1e3),n=t.getUTCFullYear(),r=t.getUTCMonth(),i=t.getUTCDate(),a=t.getUTCHours(),o=t.getUTCMinutes(),s=t.getUTCSeconds(),c=t.getUTCDay(),l=Date.UTC(n,0,1);return[[n,r,i,a,o,s,c,Math.floor((t.getTime()-l)/(1440*60*1e3))]]}case`mktime`:{if(!Array.isArray(e))throw Error(`mktime requires parsed datetime inputs`);let[t,n,r,i=0,a=0,o=0]=e;if(typeof t!=`number`||typeof n!=`number`)throw Error(`mktime requires parsed datetime inputs`);return[Math.floor(Date.UTC(t,n,r??1,i??0,a??0,o??0)/1e3)]}case`strftime`:{if(n.length===0)return[null];let t=i(e,n[0],r)[0];if(typeof t!=`string`)throw Error(`strftime/1 requires a string format`);let a;if(typeof e==`number`)a=new Date(e*1e3);else if(Array.isArray(e)){let[t,n,r,i=0,o=0,s=0]=e;if(typeof t!=`number`||typeof n!=`number`)throw Error(`strftime/1 requires parsed datetime inputs`);a=new Date(Date.UTC(t,n,r??1,i??0,o??0,s??0))}else throw Error(`strftime/1 requires parsed datetime inputs`);let o=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],s=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],c=(e,t=2)=>String(e).padStart(t,`0`);return[t.replace(/%Y/g,String(a.getUTCFullYear())).replace(/%m/g,c(a.getUTCMonth()+1)).replace(/%d/g,c(a.getUTCDate())).replace(/%H/g,c(a.getUTCHours())).replace(/%M/g,c(a.getUTCMinutes())).replace(/%S/g,c(a.getUTCSeconds())).replace(/%A/g,o[a.getUTCDay()]).replace(/%B/g,s[a.getUTCMonth()]).replace(/%Z/g,`UTC`).replace(/%%/g,`%`)]}case`strptime`:{if(n.length===0)return[null];if(typeof e!=`string`)throw Error(`strptime/1 requires a string input`);let t=i(e,n[0],r)[0];if(typeof t!=`string`)throw Error(`strptime/1 requires a string format`);if(t===`%Y-%m-%dT%H:%M:%SZ`){let t=e.match(/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})Z$/);if(t){let[,e,n,r,i,a,o]=t.map(Number),s=new Date(Date.UTC(e,n-1,r,i,a,o)),c=s.getUTCDay(),l=Date.UTC(e,0,1),u=Math.floor((s.getTime()-l)/(1440*60*1e3));return[[e,n-1,r,i,a,o,c,u]]}}let a=new Date(e);if(!Number.isNaN(a.getTime())){let e=a.getUTCFullYear(),t=a.getUTCMonth(),n=a.getUTCDate(),r=a.getUTCHours(),i=a.getUTCMinutes(),o=a.getUTCSeconds(),s=a.getUTCDay(),c=Date.UTC(e,0,1);return[[e,t,n,r,i,o,s,Math.floor((a.getTime()-c)/(1440*60*1e3))]]}throw Error(`Cannot parse date: ${e}`)}case`fromdate`:{if(typeof e!=`string`)throw Error(`fromdate requires a string input`);let t=new Date(e);if(Number.isNaN(t.getTime()))throw Error(`date "${e}" does not match format "%Y-%m-%dT%H:%M:%SZ"`);return[Math.floor(t.getTime()/1e3)]}case`todate`:if(typeof e!=`number`)throw Error(`todate requires a number input`);return[new Date(e*1e3).toISOString().replace(/\.\d{3}Z$/,`Z`)];default:return null}}var c_=x(()=>{});function l_(e){return e!==!1&&e!==null}function u_(e,t){return JSON.stringify(e)===JSON.stringify(t)}function d_(e,t){return typeof e==`number`&&typeof t==`number`?e-t:typeof e==`string`&&typeof t==`string`?e.localeCompare(t):0}function f_(e,t){let n=Tc(e);for(let e of Object.keys(t)){if(!yc(e))continue;let r=xc(n,e)?Cc(n[e]):null,i=Cc(t[e]);r&&i?bc(n,e,f_(r,i)):bc(n,e,t[e])}return n}function p_(e,t=3e3){let n=0,r=e;for(;n<t;)if(Array.isArray(r)){if(r.length===0)return n+1;r=r[0],n++}else if(typeof r==`object`&&r){let e=Object.keys(r);if(e.length===0)return n+1;r=r[e[0]],n++}else return n;return n}function m_(e,t){let n=e=>e===null?0:typeof e==`boolean`?1:typeof e==`number`?2:typeof e==`string`?3:Array.isArray(e)?4:typeof e==`object`?5:6,r=n(e),i=n(t);if(r!==i)return r-i;if(typeof e==`number`&&typeof t==`number`)return e-t;if(typeof e==`string`&&typeof t==`string`)return e.localeCompare(t);if(typeof e==`boolean`&&typeof t==`boolean`)return!!e-+!!t;if(Array.isArray(e)&&Array.isArray(t)){for(let n=0;n<Math.min(e.length,t.length);n++){let r=m_(e[n],t[n]);if(r!==0)return r}return e.length-t.length}let a=Cc(e),o=Cc(t);if(a&&o){let e=Object.keys(a).sort(),t=Object.keys(o).sort();for(let n=0;n<Math.min(e.length,t.length);n++){let r=e[n].localeCompare(t[n]);if(r!==0)return r}if(e.length!==t.length)return e.length-t.length;for(let t of e){let e=m_(a[t],o[t]);if(e!==0)return e}}return 0}function h_(e,t){if(u_(e,t))return!0;if(typeof e==`string`&&typeof t==`string`)return e.includes(t);if(Array.isArray(e)&&Array.isArray(t))return t.every(t=>e.some(e=>h_(e,t)));let n=Cc(e),r=Cc(t);return n&&r?Object.keys(r).every(e=>xc(n,e)&&h_(n[e],r[e])):!1}var g_=x(()=>{Oc()});function __(e,t,n){switch(t){case`@base64`:return typeof e==`string`?typeof Buffer<`u`?[Buffer.from(e,`utf-8`).toString(`base64`)]:[btoa(e)]:[null];case`@base64d`:return typeof e==`string`?typeof Buffer<`u`?[Buffer.from(e,`base64`).toString(`utf-8`)]:[atob(e)]:[null];case`@uri`:return typeof e==`string`?[encodeURIComponent(e).replace(/!/g,`%21`).replace(/'/g,`%27`).replace(/\(/g,`%28`).replace(/\)/g,`%29`).replace(/\*/g,`%2A`)]:[null];case`@urid`:return typeof e==`string`?[decodeURIComponent(e)]:[null];case`@csv`:return Array.isArray(e)?[e.map(e=>{if(e===null)return``;if(typeof e==`boolean`)return e?`true`:`false`;if(typeof e==`number`)return String(e);let t=String(e);return t.includes(`,`)||t.includes(`"`)||t.includes(`
628
+ `)||t.includes(`\r`)?`"${t.replace(/"/g,`""`)}"`:t}).join(`,`)]:[null];case`@tsv`:return Array.isArray(e)?[e.map(e=>String(e??``).replace(/\t/g,`\\t`).replace(/\n/g,`\\n`)).join(` `)]:[null];case`@json`:{let t=n??v_;return p_(e,t+1)>t?[null]:[JSON.stringify(e)]}case`@html`:return typeof e==`string`?[e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/'/g,`&apos;`).replace(/"/g,`&quot;`)]:[null];case`@sh`:return typeof e==`string`?[`'${e.replace(/'/g,`'\\''`)}'`]:[null];case`@text`:return typeof e==`string`?[e]:e==null?[``]:[String(e)];default:return null}}var v_,y_=x(()=>{g_(),v_=2e3});function b_(e,t,n,r,i,a){switch(t){case`index`:return n.length===0?[null]:i(e,n[0],r).map(t=>{if(typeof e==`string`&&typeof t==`string`){if(t===``&&e===``)return null;let n=e.indexOf(t);return n>=0?n:null}if(Array.isArray(e)){if(Array.isArray(t)){for(let n=0;n<=e.length-t.length;n++){let r=!0;for(let i=0;i<t.length;i++)if(!a(e[n+i],t[i])){r=!1;break}if(r)return n}return null}let n=e.findIndex(e=>a(e,t));return n>=0?n:null}return null});case`rindex`:return n.length===0?[null]:i(e,n[0],r).map(t=>{if(typeof e==`string`&&typeof t==`string`){let n=e.lastIndexOf(t);return n>=0?n:null}if(Array.isArray(e)){if(Array.isArray(t)){for(let n=e.length-t.length;n>=0;n--){let r=!0;for(let i=0;i<t.length;i++)if(!a(e[n+i],t[i])){r=!1;break}if(r)return n}return null}for(let n=e.length-1;n>=0;n--)if(a(e[n],t))return n;return null}return null});case`indices`:return n.length===0?[[]]:i(e,n[0],r).map(t=>{let n=[];if(typeof e==`string`&&typeof t==`string`){let r=e.indexOf(t);for(;r!==-1;)n.push(r),r=e.indexOf(t,r+1)}else if(Array.isArray(e))if(Array.isArray(t)){let r=t.length;if(r===0)for(let t=0;t<=e.length;t++)n.push(t);else for(let i=0;i<=e.length-r;i++){let o=!0;for(let n=0;n<r;n++)if(!a(e[i+n],t[n])){o=!1;break}o&&n.push(i)}}else for(let r=0;r<e.length;r++)a(e[r],t)&&n.push(r);return n});default:return null}}var x_=x(()=>{});function S_(e,t,n,r,i){switch(t){case`fabs`:case`abs`:return typeof e==`number`?[Math.abs(e)]:typeof e==`string`?[e]:[null];case`exp10`:return typeof e==`number`?[10**e]:[null];case`exp2`:return typeof e==`number`?[2**e]:[null];case`pow`:{if(n.length<2)return[null];let t=i(e,n[0],r),a=i(e,n[1],r),o=t[0],s=a[0];return typeof o!=`number`||typeof s!=`number`?[null]:[o**s]}case`atan2`:{if(n.length<2)return[null];let t=i(e,n[0],r),a=i(e,n[1],r),o=t[0],s=a[0];return typeof o!=`number`||typeof s!=`number`?[null]:[Math.atan2(o,s)]}case`hypot`:{if(typeof e!=`number`||n.length===0)return[null];let t=i(e,n[0],r)[0];return[Math.hypot(e,t)]}case`fma`:{if(typeof e!=`number`||n.length<2)return[null];let t=i(e,n[0],r)[0],a=i(e,n[1],r)[0];return[e*t+a]}case`copysign`:{if(typeof e!=`number`||n.length===0)return[null];let t=i(e,n[0],r)[0];return[Math.sign(t)*Math.abs(e)]}case`drem`:case`remainder`:{if(typeof e!=`number`||n.length===0)return[null];let t=i(e,n[0],r)[0];return[e-Math.round(e/t)*t]}case`fdim`:{if(typeof e!=`number`||n.length===0)return[null];let t=i(e,n[0],r)[0];return[Math.max(0,e-t)]}case`fmax`:{if(typeof e!=`number`||n.length===0)return[null];let t=i(e,n[0],r)[0];return[Math.max(e,t)]}case`fmin`:{if(typeof e!=`number`||n.length===0)return[null];let t=i(e,n[0],r)[0];return[Math.min(e,t)]}case`ldexp`:return typeof e!=`number`||n.length===0?[null]:[e*2**i(e,n[0],r)[0]];case`scalbn`:case`scalbln`:return typeof e!=`number`||n.length===0?[null]:[e*2**i(e,n[0],r)[0]];case`nearbyint`:return typeof e==`number`?[Math.round(e)]:[null];case`logb`:return typeof e==`number`?[Math.floor(Math.log2(Math.abs(e)))]:[null];case`significand`:return typeof e==`number`?[e/2**Math.floor(Math.log2(Math.abs(e)))]:[null];case`frexp`:if(typeof e==`number`){if(e===0)return[[0,0]];let t=Math.floor(Math.log2(Math.abs(e)))+1;return[[e/2**t,t]]}return[null];case`modf`:if(typeof e==`number`){let t=Math.trunc(e);return[[e-t,t]]}return[null];default:return null}}var C_=x(()=>{});function w_(e,t,n,r,i,a,o,s){switch(t){case`recurse`:{if(n.length===0){let t=[],n=e=>{if(t.push(e),Array.isArray(e))for(let t of e)n(t);else if(e&&typeof e==`object`)for(let t of Object.keys(e))n(e[t])};return n(e),t}let t=[],o=n.length>=2?n[1]:null,s=0,c=e=>{if(s++>1e4||o&&!i(e,o,r).some(a))return;t.push(e);let l=i(e,n[0],r);for(let e of l)e!=null&&c(e)};return c(e),t}case`recurse_down`:return s(e,`recurse`,n,r);case`walk`:{if(n.length===0)return[e];let t=new WeakSet,a=e=>{if(e&&typeof e==`object`){if(t.has(e))return e;t.add(e)}let o;if(Array.isArray(e))o=e.map(a);else if(e&&typeof e==`object`){let t=Object.create(null);for(let[n,r]of Object.entries(e))yc(n)&&bc(t,n,a(r));o=t}else o=e;return i(o,n[0],r)[0]};return[a(e)]}case`transpose`:{if(!Array.isArray(e))return[null];if(e.length===0)return[[]];let t=Math.max(...e.map(e=>Array.isArray(e)?e.length:0)),n=[];for(let r=0;r<t;r++)n.push(e.map(e=>Array.isArray(e)?e[r]:null));return[n]}case`combinations`:{if(n.length>0){let t=i(e,n[0],r)[0];if(!Array.isArray(e)||t<0)return[];if(t===0)return[[]];let a=[],o=(n,r)=>{if(r===t){a.push([...n]);return}for(let t of e)n.push(t),o(n,r+1),n.pop()};return o([],0),a}if(!Array.isArray(e))return[];if(e.length===0)return[[]];for(let t of e)if(!Array.isArray(t))return[];let t=[],a=(n,r)=>{if(n===e.length){t.push([...r]);return}let i=e[n];for(let e of i)r.push(e),a(n+1,r),r.pop()};return a(0,[]),t}case`parent`:{if(r.root===void 0||r.currentPath===void 0)return[];let t=r.currentPath;if(t.length===0)return[];let a=n.length>0?i(e,n[0],r)[0]:1;if(a>=0){if(a>t.length)return[];let e=t.slice(0,t.length-a);return[o(r.root,e)]}else{let n=-a-1;if(n>=t.length)return[e];let i=t.slice(0,n);return[o(r.root,i)]}}case`parents`:{if(r.root===void 0||r.currentPath===void 0)return[[]];let e=r.currentPath,t=[];for(let n=e.length-1;n>=0;n--)t.push(o(r.root,e.slice(0,n)));return[t]}case`root`:return r.root===void 0?[]:[r.root];default:return null}}var T_=x(()=>{Oc()});function E_(e,t,n,r,i){switch(t){case`keys`:return Array.isArray(e)?[e.map((e,t)=>t)]:e&&typeof e==`object`?[Object.keys(e).sort()]:[null];case`keys_unsorted`:return Array.isArray(e)?[e.map((e,t)=>t)]:e&&typeof e==`object`?[Object.keys(e)]:[null];case`length`:return typeof e==`string`||Array.isArray(e)?[e.length]:e&&typeof e==`object`?[Object.keys(e).length]:e===null?[0]:typeof e==`number`?[Math.abs(e)]:[null];case`utf8bytelength`:{if(typeof e==`string`)return[new TextEncoder().encode(e).length];let t=e===null?`null`:Array.isArray(e)?`array`:typeof e,n=t===`array`||t===`object`?JSON.stringify(e):String(e);throw Error(`${t} (${n}) only strings have UTF-8 byte length`)}case`to_entries`:{let t=Cc(e);return t?[Object.entries(t).map(([e,t])=>({key:e,value:t}))]:[null]}case`from_entries`:if(Array.isArray(e)){let t=Object.create(null);for(let n of e){let e=Cc(n);if(e){let n=e.key??e.Key??e.name??e.Name??e.k,r=e.value??e.Value??e.v;if(n!==void 0){let e=String(n);yc(e)&&bc(t,e,r)}}}return[t]}return[null];case`with_entries`:{if(n.length===0)return[e];let t=Cc(e);if(t){let e=Object.entries(t).map(([e,t])=>({key:e,value:t})).flatMap(e=>i(e,n[0],r)),a=Object.create(null);for(let t of e){let e=Cc(t);if(e){let t=e.key??e.name??e.k,n=e.value??e.v;if(t!==void 0){let e=String(t);yc(e)&&bc(a,e,n)}}}return[a]}return[null]}case`reverse`:return Array.isArray(e)?[[...e].reverse()]:typeof e==`string`?[e.split(``).reverse().join(``)]:[null];case`flatten`:return Array.isArray(e)?(n.length>0?i(e,n[0],r):[1/0]).map(t=>{let n=t;if(n<0)throw Error(`flatten depth must not be negative`);return e.flat(n)}):[null];case`unique`:if(Array.isArray(e)){let t=new Set,n=[];for(let r of e){let e=JSON.stringify(r);t.has(e)||(t.add(e),n.push(r))}return[n]}return[null];case`tojson`:case`tojsonstream`:{let t=r.limits.maxDepth??D_;return p_(e,t+1)>t?[null]:[JSON.stringify(e)]}case`fromjson`:if(typeof e==`string`){let t=e.trim().toLowerCase();if(t===`nan`)return[NaN];if(t===`inf`||t===`infinity`)return[1/0];if(t===`-inf`||t===`-infinity`)return[-1/0];try{return[Sc(JSON.parse(e))]}catch{throw Error(`Invalid JSON: ${e}`)}}return[e];case`tostring`:return typeof e==`string`?[e]:[JSON.stringify(e)];case`tonumber`:if(typeof e==`number`)return[e];if(typeof e==`string`){let t=Number(e);if(Number.isNaN(t))throw Error(`${JSON.stringify(e)} cannot be parsed as a number`);return[t]}throw Error(`${typeof e} cannot be parsed as a number`);case`toboolean`:{if(typeof e==`boolean`)return[e];if(typeof e==`string`){if(e===`true`)return[!0];if(e===`false`)return[!1];throw Error(`string (${JSON.stringify(e)}) cannot be parsed as a boolean`)}let t=e===null?`null`:Array.isArray(e)?`array`:typeof e,n=t===`array`||t===`object`?JSON.stringify(e):String(e);throw Error(`${t} (${n}) cannot be parsed as a boolean`)}case`tostream`:{let t=[],n=(e,r)=>{if(typeof e!=`object`||!e)t.push([r,e]);else if(Array.isArray(e))if(e.length===0)t.push([r,[]]);else for(let t=0;t<e.length;t++)n(e[t],[...r,t]);else{let i=Object.keys(e);if(i.length===0)t.push([r,Object.create(null)]);else for(let t of i)n(e[t],[...r,t])}};return n(e,[]),t.push([[]]),t}case`fromstream`:{if(n.length===0)return[e];let t=i(e,n[0],r),a=null;for(let e of t){if(!Array.isArray(e)||e.length===1&&Array.isArray(e[0])&&e[0].length===0||e.length!==2)continue;let[t,n]=e;if(!Array.isArray(t))continue;if(t.length===0){a=n;continue}a===null&&(a=typeof t[0]==`number`?[]:Object.create(null));let r=a;for(let e=0;e<t.length-1;e++){let n=t[e],i=t[e+1];if(Array.isArray(r)&&typeof n==`number`){for(;r.length<=n;)r.push(null);r[n]===null&&(r[n]=typeof i==`number`?[]:Object.create(null)),r=r[n]}else{let e=Cc(r);if(e){let t=String(n);if(!yc(t))continue;(e[t]===null||e[t]===void 0)&&bc(e,t,typeof i==`number`?[]:Object.create(null)),r=e[t]}}}let i=t[t.length-1];if(Array.isArray(r)&&typeof i==`number`){for(;r.length<=i;)r.push(null);r[i]=n}else{let e=Cc(r);if(e){let t=String(i);yc(t)&&bc(e,t,n)}}}return[a]}case`truncate_stream`:{let t=typeof e==`number`?Math.floor(e):0;if(n.length===0)return[];let a=[],o=i(e,n[0],r);for(let e of o)if(Array.isArray(e)){if(e.length===1&&Array.isArray(e[0])){let n=e[0];n.length>t&&a.push([n.slice(t)]);continue}if(e.length===2&&Array.isArray(e[0])){let n=e[0],r=e[1];n.length>t&&a.push([n.slice(t),r])}}return a}default:return null}}var D_,O_=x(()=>{Oc(),g_(),D_=2e3});function k_(e,t,n,r,i,a,o,s,c,l){switch(t){case`getpath`:{if(n.length===0)return[null];let t=i(e,n[0],r),a=[];for(let n of t){let t=n,r=e;for(let e of t){if(r==null){r=null;break}if(Array.isArray(r)&&typeof e==`number`)r=r[e];else if(typeof e==`string`){let t=Cc(r);if(!t||!Object.hasOwn(t,e)){r=null;break}r=t[e]}else{r=null;break}}a.push(r)}return a}case`setpath`:{if(n.length<2)return[null];let t=i(e,n[0],r)[0],a=i(e,n[1],r)[0];return[o(e,t,a)]}case`delpaths`:{if(n.length===0)return[e];let t=i(e,n[0],r)[0],a=e;for(let e of t.sort((e,t)=>t.length-e.length))a=s(a,e);return[a]}case`path`:{if(n.length===0)return[[]];let t=[];return l(e,n[0],r,[],t),t}case`del`:return n.length===0?[e]:[c(e,n[0],r)];case`pick`:{if(n.length===0)return[null];let t=[];for(let i of n)l(e,i,r,[],t);let i=null;for(let n of t){for(let e of n)if(typeof e==`number`&&e<0)throw Error(`Out of bounds negative array index`);let t=e;for(let e of n){if(t==null)break;if(Array.isArray(t)&&typeof e==`number`)t=t[e];else if(typeof e==`string`){let n=Cc(t);if(!n||!Object.hasOwn(n,e)){t=null;break}t=n[e]}else{t=null;break}}i=o(i,n,t)}return[i]}case`paths`:{let t=[],o=(e,n)=>{if(e&&typeof e==`object`)if(Array.isArray(e))for(let r=0;r<e.length;r++)t.push([...n,r]),o(e[r],[...n,r]);else for(let r of Object.keys(e))t.push([...n,r]),o(e[r],[...n,r])};return o(e,[]),n.length>0?t.filter(t=>{let o=e;for(let e of t)if(Array.isArray(o)&&typeof e==`number`)o=o[e];else if(typeof e==`string`){let t=Cc(o);if(!t||!Object.hasOwn(t,e))return!1;o=t[e]}else return!1;return i(o,n[0],r).some(a)}):t}case`leaf_paths`:{let t=[],n=(e,r)=>{if(typeof e!=`object`||!e)t.push(r);else if(Array.isArray(e))for(let t=0;t<e.length;t++)n(e[t],[...r,t]);else for(let t of Object.keys(e))n(e[t],[...r,t])};return n(e,[]),t}default:return null}}var A_=x(()=>{Oc()});function j_(e,t,n,r,i,a){switch(t){case`IN`:{if(n.length===0)return[!1];if(n.length===1){let t=i(e,n[0],r);for(let n of t)if(a(e,n))return[!0];return[!1]}let t=i(e,n[0],r),o=i(e,n[1],r),s=new Set(o.map(e=>JSON.stringify(e)));for(let e of t)if(s.has(JSON.stringify(e)))return[!0];return[!1]}case`INDEX`:{if(n.length===0)return[Object.create(null)];if(n.length===1){let t=i(e,n[0],r),a=Object.create(null);for(let e of t){let t=String(e);yc(t)&&bc(a,t,e)}return[a]}if(n.length===2){let t=i(e,n[0],r),a=Object.create(null);for(let e of t){let t=i(e,n[1],r);if(t.length>0){let n=String(t[0]);yc(n)&&bc(a,n,e)}}return[a]}let t=i(e,n[0],r),a=Object.create(null);for(let e of t){let t=i(e,n[1],r),o=i(e,n[2],r);if(t.length>0&&o.length>0){let e=String(t[0]);yc(e)&&bc(a,e,o[0])}}return[a]}case`JOIN`:{if(n.length<2)return[null];let t=Cc(i(e,n[0],r)[0]);if(!t||!Array.isArray(e))return[null];let a=[];for(let o of e){let e=i(o,n[1],r),s=e.length>0?String(e[0]):``,c=xc(t,s)?t[s]:null;a.push([o,c])}return[a]}default:return null}}var M_=x(()=>{Oc()});function N_(e,t,n,r,i){switch(t){case`join`:{if(!Array.isArray(e))return[null];let t=n.length>0?i(e,n[0],r):[``];for(let t of e)if(Array.isArray(t)||typeof t==`object`&&t)throw Error(`cannot join: contains arrays or objects`);return t.map(t=>e.map(e=>e===null?``:typeof e==`string`?e:String(e)).join(String(t)))}case`split`:{if(typeof e!=`string`||n.length===0)return[null];let t=i(e,n[0],r),a=String(t[0]);return[e.split(a)]}case`splits`:{if(typeof e!=`string`||n.length===0)return[];let t=i(e,n[0],r),a=String(t[0]);try{let t=n.length>1?String(i(e,n[1],r)[0]):`g`;return z(a,t.includes(`g`)?t:`${t}g`).split(e)}catch{return[]}}case`scan`:{if(typeof e!=`string`||n.length===0)return[];let t=i(e,n[0],r),a=String(t[0]);try{let t=n.length>1?String(i(e,n[1],r)[0]):``;return[...z(a,t.includes(`g`)?t:`${t}g`).matchAll(e)].map(e=>e.length>1?e.slice(1):e[0])}catch{return[]}}case`test`:{if(typeof e!=`string`||n.length===0)return[!1];let t=i(e,n[0],r),a=String(t[0]);try{return[z(a,n.length>1?String(i(e,n[1],r)[0]):``).test(e)]}catch{return[!1]}}case`match`:{if(typeof e!=`string`||n.length===0)return[null];let t=i(e,n[0],r),a=String(t[0]);try{let t=z(a,`${n.length>1?String(i(e,n[1],r)[0]):``}d`).exec(e);if(!t)return[];let o=t.indices;return[{offset:t.index,length:t[0].length,string:t[0],captures:t.slice(1).map((e,t)=>({offset:o?.[t+1]?.[0]??null,length:e?.length??0,string:e??``,name:null}))}]}catch{return[null]}}case`capture`:{if(typeof e!=`string`||n.length===0)return[null];let t=i(e,n[0],r),a=String(t[0]);try{let t=z(a,n.length>1?String(i(e,n[1],r)[0]):``).match(e);return!t||!t.groups?[Object.create(null)]:[t.groups]}catch{return[null]}}case`sub`:{if(typeof e!=`string`||n.length<2)return[null];let t=i(e,n[0],r),a=i(e,n[1],r),o=String(t[0]),s=String(a[0]);try{return[z(o,n.length>2?String(i(e,n[2],r)[0]):``).replace(e,s)]}catch{return[e]}}case`gsub`:{if(typeof e!=`string`||n.length<2)return[null];let t=i(e,n[0],r),a=i(e,n[1],r),o=String(t[0]),s=String(a[0]);try{let t=n.length>2?String(i(e,n[2],r)[0]):`g`;return[z(o,t.includes(`g`)?t:`${t}g`).replace(e,s)]}catch{return[e]}}case`ascii_downcase`:return typeof e==`string`?[e.replace(/[A-Z]/g,e=>String.fromCharCode(e.charCodeAt(0)+32))]:[null];case`ascii_upcase`:return typeof e==`string`?[e.replace(/[a-z]/g,e=>String.fromCharCode(e.charCodeAt(0)-32))]:[null];case`ltrimstr`:{if(typeof e!=`string`||n.length===0)return[e];let t=i(e,n[0],r),a=String(t[0]);return[e.startsWith(a)?e.slice(a.length):e]}case`rtrimstr`:{if(typeof e!=`string`||n.length===0)return[e];let t=i(e,n[0],r),a=String(t[0]);return a===``?[e]:[e.endsWith(a)?e.slice(0,-a.length):e]}case`trimstr`:{if(typeof e!=`string`||n.length===0)return[e];let t=i(e,n[0],r),a=String(t[0]);if(a===``)return[e];let o=e;return o.startsWith(a)&&(o=o.slice(a.length)),o.endsWith(a)&&(o=o.slice(0,-a.length)),[o]}case`trim`:if(typeof e==`string`)return[e.trim()];throw Error(`trim input must be a string`);case`ltrim`:if(typeof e==`string`)return[e.trimStart()];throw Error(`trim input must be a string`);case`rtrim`:if(typeof e==`string`)return[e.trimEnd()];throw Error(`trim input must be a string`);case`startswith`:{if(typeof e!=`string`||n.length===0)return[!1];let t=i(e,n[0],r);return[e.startsWith(String(t[0]))]}case`endswith`:{if(typeof e!=`string`||n.length===0)return[!1];let t=i(e,n[0],r);return[e.endsWith(String(t[0]))]}case`ascii`:return typeof e==`string`&&e.length>0?[e.charCodeAt(0)]:[null];case`explode`:return typeof e==`string`?[Array.from(e).map(e=>e.codePointAt(0))]:[null];case`implode`:if(!Array.isArray(e))throw Error(`implode input must be an array`);return[e.map(e=>{if(typeof e==`string`)throw Error(`string (${JSON.stringify(e)}) can't be imploded, unicode codepoint needs to be numeric`);if(typeof e!=`number`||Number.isNaN(e))throw Error(`number (null) can't be imploded, unicode codepoint needs to be numeric`);let t=Math.trunc(e);return t<0||t>1114111||t>=55296&&t<=57343?String.fromCodePoint(65533):String.fromCodePoint(t)}).join(``)];default:return null}}var P_=x(()=>{ks()});function F_(e,t){switch(t){case`type`:return e===null?[`null`]:Array.isArray(e)?[`array`]:typeof e==`boolean`?[`boolean`]:typeof e==`number`?[`number`]:typeof e==`string`?[`string`]:typeof e==`object`?[`object`]:[`null`];case`infinite`:return[1/0];case`nan`:return[NaN];case`isinfinite`:return[typeof e==`number`&&!Number.isFinite(e)];case`isnan`:return[typeof e==`number`&&Number.isNaN(e)];case`isnormal`:return[typeof e==`number`&&Number.isFinite(e)&&e!==0];case`isfinite`:return[typeof e==`number`&&Number.isFinite(e)];case`numbers`:return typeof e==`number`?[e]:[];case`strings`:return typeof e==`string`?[e]:[];case`booleans`:return typeof e==`boolean`?[e]:[];case`nulls`:return e===null?[e]:[];case`arrays`:return Array.isArray(e)?[e]:[];case`objects`:return e&&typeof e==`object`&&!Array.isArray(e)?[e]:[];case`iterables`:return Array.isArray(e)||e&&typeof e==`object`&&!Array.isArray(e)?[e]:[];case`scalars`:return!Array.isArray(e)&&!(e&&typeof e==`object`)?[e]:[];case`values`:return e===null?[]:[e];case`not`:return e===!1||e===null?[!0]:[!1];case`null`:return[null];case`true`:return[!0];case`false`:return[!1];case`empty`:return[];default:return null}}var I_=x(()=>{}),L_=x(()=>{i_(),o_(),c_(),y_(),x_(),C_(),T_(),O_(),A_(),M_(),P_(),I_()});function R_(e,t,n){if(t.length===0)return n;let[r,...i]=t;if(typeof r==`number`){if(e&&typeof e==`object`&&!Array.isArray(e))throw Error(`Cannot index object with number`);if(r>536870911)throw Error(`Array index too large`);if(r<0)throw Error(`Out of bounds negative array index`);let t=Array.isArray(e)?[...e]:[];for(;t.length<=r;)t.push(null);return t[r]=R_(t[r],i,n),t}if(Array.isArray(e))throw Error(`Cannot index array with string`);if(!yc(r))return e??Object.create(null);let a=Cc(e),o=a?Tc(a):Object.create(null);return bc(o,r,R_(Object.hasOwn(o,r)?o[r]:void 0,i,n)),o}function z_(e,t){if(t.length===0)return null;if(t.length===1){let n=t[0];if(Array.isArray(e)&&typeof n==`number`){let t=[...e];return t.splice(n,1),t}if(e&&typeof e==`object`&&!Array.isArray(e)){let t=String(n);if(!yc(t))return e;let r=Tc(e);return delete r[t],r}return e}let[n,...r]=t;if(Array.isArray(e)&&typeof n==`number`){let t=[...e];return t[n]=z_(t[n],r),t}if(e&&typeof e==`object`&&!Array.isArray(e)){let t=String(n);if(!yc(t))return e;let i=Tc(e);return Object.hasOwn(i,t)&&bc(i,t,z_(i[t],r)),i}return e}var B_=x(()=>{Oc()});function V_(e){return{vars:new Map,limits:{maxIterations:e?.limits?.maxIterations??nv,maxDepth:e?.limits?.maxDepth??rv},env:e?.env,coverage:e?.coverage,requireDefenseContext:e?.requireDefenseContext,defenseContextChecked:!1}}function H_(e,t,n){let r=new Map(e.vars);return r.set(t,n),{vars:r,limits:e.limits,env:e.env,requireDefenseContext:e.requireDefenseContext,defenseContextChecked:e.defenseContextChecked,root:e.root,currentPath:e.currentPath,funcs:e.funcs,labels:e.labels,coverage:e.coverage}}function U_(e,t,n){switch(t.type){case`var`:return H_(e,t.name,n);case`array`:{if(!Array.isArray(n))return null;let r=e;for(let e=0;e<t.elements.length;e++){let i=t.elements[e],a=e<n.length?n[e]:null,o=U_(r,i,a);if(o===null)return null;r=o}return r}case`object`:{let r=Cc(n);if(!r)return null;let i=e;for(let a of t.fields){let t;if(typeof a.key==`string`)t=a.key;else{let r=W(n,a.key,e);if(r.length===0)return null;t=String(r[0])}let o=xc(r,t)?r[t]:null;a.keyVar&&(i=H_(i,a.keyVar,o));let s=U_(i,a.pattern,o);if(s===null)return null;i=s}return i}}}function W_(e,t){let n=e;for(let e of t)if(n&&typeof n==`object`)if(Array.isArray(n))if(typeof e==`number`)n=n[e];else return;else{let t=Cc(n);if(t&&typeof e==`string`&&Object.hasOwn(t,e))n=t[e];else return}else return;return n}function G_(e){if(e.type===`Identity`)return[];if(e.type===`Field`){let t=e.base?G_(e.base):[];return t===null?null:[...t,e.name]}if(e.type===`Index`&&e.index.type===`Literal`){let t=e.base?G_(e.base):[];if(t===null)return null;let n=e.index.value;return typeof n==`number`||typeof n==`string`?[...t,n]:null}if(e.type===`Pipe`){let t=G_(e.left);return t===null?null:K_(t,e.right)}if(e.type===`Call`){if(e.name===`parent`||e.name===`root`)return null;if(e.name===`first`&&e.args.length===0)return[0];if(e.name===`last`&&e.args.length===0)return[-1]}return null}function K_(e,t){if(t.type===`Call`){if(t.name===`parent`){let n=1;if(t.args.length>0&&t.args[0].type===`Literal`){let e=t.args[0].value;typeof e==`number`&&(n=e)}if(n>=0)return e.slice(0,Math.max(0,e.length-n));{let t=-n-1;return e.slice(0,Math.min(t,e.length))}}if(t.name===`root`)return[]}if(t.type===`Field`){let n=G_(t);if(n!==null)return[...e,...n]}if(t.type===`Index`&&t.index.type===`Literal`){let n=G_(t);if(n!==null)return[...e,...n]}if(t.type===`Pipe`){let n=K_(e,t.left);return n===null?null:K_(n,t.right)}return t.type===`Identity`?e:null}function q_(e,t,n){if(t.type===`Comma`){let r=[];try{r.push(...W(e,t.left,n))}catch(e){if(e instanceof k)throw e;if(r.length>0)return r;throw Error(`evaluation failed`)}try{r.push(...W(e,t.right,n))}catch(e){if(e instanceof k)throw e;return r}return r}return W(e,t,n)}function W(e,t,n){let r=n&&`vars`in n?n:V_(n);switch(r.defenseContextChecked||(Sl(r.requireDefenseContext,`query-engine`,`evaluation`),r={...r,defenseContextChecked:!0}),r.root===void 0&&(r={...r,root:e,currentPath:[]}),r.coverage?.hit(`jq:node:${t.type}`),t.type){case`Identity`:return[e];case`Field`:return(t.base?W(e,t.base,r):[e]).flatMap(e=>{let n=Cc(e);if(n){if(!Object.hasOwn(n,t.name))return[null];let e=n[t.name];return[e===void 0?null:e]}if(e===null)return[null];throw Error(`Cannot index ${Array.isArray(e)?`array`:typeof e} with string "${t.name}"`)});case`Index`:return(t.base?W(e,t.base,r):[e]).flatMap(e=>W(e,t.index,r).flatMap(t=>{if(typeof t==`number`&&Array.isArray(e)){if(Number.isNaN(t))return[null];let n=Math.trunc(t),r=n<0?e.length+n:n;return r>=0&&r<e.length?[e[r]]:[null]}if(typeof t==`string`){let n=Cc(e);return!n||!Object.hasOwn(n,t)?[null]:[n[t]]}return[null]}));case`Slice`:return(t.base?W(e,t.base,r):[e]).flatMap(n=>{if(n===null)return[null];if(!Array.isArray(n)&&typeof n!=`string`)throw Error(`Cannot slice ${typeof n} (${JSON.stringify(n)})`);let i=n.length,a=t.start?W(e,t.start,r):[0],o=t.end?W(e,t.end,r):[i];return a.flatMap(e=>o.map(t=>{let r=e,a=t,o=Number.isNaN(r)?0:Number.isInteger(r)?r:Math.floor(r),s=Number.isNaN(a)?i:Number.isInteger(a)?a:Math.ceil(a),c=J_(o,i),l=J_(s,i);return n.slice(c,l)}))});case`Iterate`:return(t.base?W(e,t.base,r):[e]).flatMap(e=>Array.isArray(e)?e:e&&typeof e==`object`?Object.values(e):[]);case`Pipe`:{let n=W(e,t.left,r),i=G_(t.left),a=[];for(let e of n)try{if(i!==null){let n={...r,currentPath:[...r.currentPath??[],...i]};a.push(...W(e,t.right,n))}else a.push(...W(e,t.right,r))}catch(e){throw e instanceof ev?e.withPrependedResults(a):e}return a}case`Comma`:{let n=W(e,t.left,r),i=W(e,t.right,r);return[...n,...i]}case`Literal`:return[t.value];case`Array`:return t.elements?[W(e,t.elements,r)]:[[]];case`Object`:{let n=[Object.create(null)];for(let i of t.entries){let t=typeof i.key==`string`?[i.key]:W(e,i.key,r),a=W(e,i.value,r),o=[];for(let e of n)for(let n of t){if(typeof n!=`string`)throw Error(`Cannot use ${n===null?`null`:Array.isArray(n)?`array`:typeof n} (${JSON.stringify(n)}) as object key`);if(!yc(n)){for(let t of a)o.push(Tc(e));continue}for(let t of a){let r=Tc(e);bc(r,n,t),o.push(r)}}n.length=0,n.push(...o)}return n}case`Paren`:return W(e,t.expr,r);case`BinaryOp`:return Z_(e,t.op,t.left,t.right,r);case`UnaryOp`:return W(e,t.operand,r).map(e=>{if(t.op===`-`){if(typeof e==`number`)return-e;if(typeof e==`string`)throw Error(`string (${(e=>e.length>5?`"${e.slice(0,3)}...`:JSON.stringify(e))(e)}) cannot be negated`);return null}return t.op===`not`?!l_(e):null});case`Cond`:return W(e,t.cond,r).flatMap(n=>{if(l_(n))return W(e,t.then,r);for(let n of t.elifs)if(W(e,n.cond,r).some(l_))return W(e,n.then,r);return t.else?W(e,t.else,r):[e]});case`Try`:try{return W(e,t.body,r)}catch(e){return t.catch?W(e instanceof tv?e.value:e instanceof Error?e.message:String(e),t.catch,r):[]}case`Call`:return Q_(e,t.name,t.args,r);case`VarBind`:return W(e,t.value,r).flatMap(n=>{let i=null,a=[];t.pattern?a.push(t.pattern):t.name&&a.push({type:`var`,name:t.name}),t.alternatives&&a.push(...t.alternatives);for(let e of a)if(i=U_(r,e,n),i!==null)break;return i===null?[]:W(e,t.body,i)});case`VarRef`:{if(t.name===`$ENV`)return[r.env?au(r.env):Object.create(null)];let e=r.vars.get(t.name);return e===void 0?[null]:[e]}case`Recurse`:{let t=[],n=new WeakSet,r=e=>{if(e&&typeof e==`object`){if(n.has(e))return;n.add(e)}if(t.push(e),Array.isArray(e))for(let t of e)r(t);else if(e&&typeof e==`object`)for(let t of Object.keys(e))r(e[t])};return r(e),t}case`Optional`:try{return W(e,t.expr,r)}catch{return[]}case`StringInterp`:return[t.parts.map(t=>typeof t==`string`?t:W(e,t,r).map(e=>typeof e==`string`?e:JSON.stringify(e)).join(``)).join(``)];case`UpdateOp`:return[Y_(e,t.path,t.op,t.value,r)];case`Reduce`:{let n=W(e,t.expr,r),i=W(e,t.init,r)[0],a=r.limits.maxDepth??rv;for(let e of n){let n;if(t.pattern){if(n=U_(r,t.pattern,e),n===null)continue}else n=H_(r,t.varName,e);if(i=W(i,t.update,n)[0],p_(i,a+1)>a)return[null]}return[i]}case`Foreach`:{let n=W(e,t.expr,r),i=W(e,t.init,r)[0],a=[];for(let e of n)try{let n;if(t.pattern){if(n=U_(r,t.pattern,e),n===null)continue}else n=H_(r,t.varName,e);if(i=W(i,t.update,n)[0],t.extract){let e=W(i,t.extract,n);a.push(...e)}else a.push(i)}catch(e){throw e instanceof ev?e.withPrependedResults(a):e}return a}case`Label`:try{return W(e,t.body,{...r,labels:new Set([...r.labels??[],t.name])})}catch(e){if(e instanceof ev&&e.label===t.name)return e.partialResults;throw e}case`Break`:throw new ev(t.name);case`Def`:{let n=new Map(r.funcs??[]),i=`${t.name}/${t.params.length}`;n.set(i,{params:t.params,body:t.funcBody,closure:new Map(r.funcs??[])});let a={...r,funcs:n};return W(e,t.body,a)}default:throw Error(`Unknown AST node type: ${t.type}`)}}function J_(e,t){return e<0?Math.max(0,t+e):Math.min(e,t)}function Y_(e,t,n,r,i){function a(e,t){switch(n){case`=`:return t;case`|=`:return W(e,r,i)[0]??null;case`+=`:return typeof e==`number`&&typeof t==`number`||typeof e==`string`&&typeof t==`string`?e+t:Array.isArray(e)&&Array.isArray(t)?[...e,...t]:e&&t&&typeof e==`object`&&typeof t==`object`?Ec(e,t):t;case`-=`:return typeof e==`number`&&typeof t==`number`?e-t:e;case`*=`:return typeof e==`number`&&typeof t==`number`?e*t:e;case`/=`:return typeof e==`number`&&typeof t==`number`?e/t:e;case`%=`:return typeof e==`number`&&typeof t==`number`?e%t:e;case`//=`:return e===null||e===!1?t:e;default:return t}}function o(t,n,r){switch(n.type){case`Identity`:return r(t);case`Field`:if(!yc(n.name))return t;if(n.base)return o(t,n.base,e=>{if(e&&typeof e==`object`&&!Array.isArray(e)){let t=Tc(e),i=Object.hasOwn(t,n.name)?t[n.name]:void 0;return bc(t,n.name,r(i)),t}return e});if(t&&typeof t==`object`&&!Array.isArray(t)){let e=Tc(t),i=Object.hasOwn(e,n.name)?e[n.name]:void 0;return bc(e,n.name,r(i)),e}return t;case`Index`:{let a=W(e,n.index,i)[0];if(typeof a==`number`&&Number.isNaN(a))throw Error(`Cannot set array element at NaN index`);if(typeof a==`number`&&!Number.isInteger(a)&&(a=Math.trunc(a)),n.base)return o(t,n.base,e=>{if(typeof a==`number`&&Array.isArray(e)){let t=[...e],n=a<0?t.length+a:a;if(n>=0){for(;t.length<=n;)t.push(null);t[n]=r(t[n])}return t}if(typeof a==`string`&&e&&typeof e==`object`&&!Array.isArray(e)){if(!yc(a))return e;let t=Tc(e),n=Object.hasOwn(t,a)?t[a]:void 0;return bc(t,a,r(n)),t}return e});if(typeof a==`number`){if(a>536870911)throw Error(`Array index too large`);if(a<0&&(!t||!Array.isArray(t)))throw Error(`Out of bounds negative array index`);if(Array.isArray(t)){let e=[...t],n=a<0?e.length+a:a;if(n>=0){for(;e.length<=n;)e.push(null);e[n]=r(e[n])}return e}if(t==null){let e=[];for(;e.length<=a;)e.push(null);return e[a]=r(null),e}return t}if(typeof a==`string`&&t&&typeof t==`object`&&!Array.isArray(t)){if(!yc(a))return t;let e=Tc(t),n=Object.hasOwn(e,a)?e[a]:void 0;return bc(e,a,r(n)),e}return t}case`Iterate`:{let e=e=>{if(Array.isArray(e))return e.map(e=>r(e));if(e&&typeof e==`object`){let t=Object.create(null);for(let[n,i]of Object.entries(e))yc(n)&&bc(t,n,r(i));return t}return e};return n.base?o(t,n.base,e):e(t)}case`Pipe`:return o(o(t,n.left,e=>e),n.right,r);default:return r(t)}}return o(e,t,t=>n===`|=`?a(t,t):a(t,W(e,r,i)[0]??null))}function X_(e,t,n){function r(t,i,a){switch(i.type){case`Identity`:return a;case`Field`:if(!yc(i.name))return t;if(i.base){let e=W(t,i.base,n)[0],o=r(e,{type:`Field`,name:i.name},a);return r(t,i.base,o)}if(t&&typeof t==`object`&&!Array.isArray(t)){let e=Tc(t);return bc(e,i.name,a),e}return t;case`Index`:{if(i.base){let e=W(t,i.base,n)[0],o=r(e,{type:`Index`,index:i.index},a);return r(t,i.base,o)}let o=W(e,i.index,n)[0];if(typeof o==`number`&&Array.isArray(t)){let e=[...t],n=o<0?e.length+o:o;return n>=0&&n<e.length&&(e[n]=a),e}if(typeof o==`string`&&t&&typeof t==`object`&&!Array.isArray(t)){if(!yc(o))return t;let e=Tc(t);return bc(e,o,a),e}return t}default:return t}}function i(t,a){switch(a.type){case`Identity`:return null;case`Field`:if(!yc(a.name))return t;if(a.base){let e=W(t,a.base,n)[0];if(e==null)return t;let o=i(e,{type:`Field`,name:a.name});return r(t,a.base,o)}if(t&&typeof t==`object`&&!Array.isArray(t)){if(!yc(a.name))return t;let e=Tc(t);return delete e[a.name],e}return t;case`Index`:{if(a.base){let e=W(t,a.base,n)[0];if(e==null)return t;let o=i(e,{type:`Index`,index:a.index});return r(t,a.base,o)}let o=W(e,a.index,n)[0];if(typeof o==`number`&&Array.isArray(t)){let e=[...t],n=o<0?e.length+o:o;return n>=0&&n<e.length&&e.splice(n,1),e}if(typeof o==`string`&&t&&typeof t==`object`&&!Array.isArray(t)){if(!yc(o))return t;let e=Tc(t);return delete e[o],e}return t}case`Iterate`:return Array.isArray(t)?[]:t&&typeof t==`object`?Object.create(null):t;case`Pipe`:{let r=function(t,i,a){switch(i.type){case`Identity`:return a;case`Field`:if(!yc(i.name))return t;if(t&&typeof t==`object`&&!Array.isArray(t)){let e=Tc(t);return bc(e,i.name,a),e}return t;case`Index`:{let r=W(e,i.index,n)[0];if(typeof r==`number`&&Array.isArray(t)){let e=[...t],n=r<0?e.length+r:r;return n>=0&&n<e.length&&(e[n]=a),e}if(typeof r==`string`&&t&&typeof t==`object`&&!Array.isArray(t)){if(!yc(r))return t;let e=Tc(t);return bc(e,r,a),e}return t}case`Pipe`:{let e=W(t,i.left,n)[0],o=r(e,i.right,a);return r(t,i.left,o)}default:return t}},o=a.left,s=a.right,c=W(t,o,n)[0];return c==null?t:r(t,o,i(c,s))}default:return t}}return i(e,t)}function Z_(e,t,n,r,i){if(t===`and`)return W(e,n,i).flatMap(t=>l_(t)?W(e,r,i).map(e=>l_(e)):[!1]);if(t===`or`)return W(e,n,i).flatMap(t=>l_(t)?[!0]:W(e,r,i).map(e=>l_(e)));if(t===`//`){let t=W(e,n,i).filter(e=>e!=null&&e!==!1);return t.length>0?t:W(e,r,i)}let a=W(e,n,i),o=W(e,r,i);return a.flatMap(e=>o.map(n=>{switch(t){case`+`:return e===null?n:n===null?e:typeof e==`number`&&typeof n==`number`||typeof e==`string`&&typeof n==`string`?e+n:Array.isArray(e)&&Array.isArray(n)?[...e,...n]:e&&n&&typeof e==`object`&&typeof n==`object`&&!Array.isArray(e)&&!Array.isArray(n)?Ec(e,n):null;case`-`:if(typeof e==`number`&&typeof n==`number`)return e-n;if(Array.isArray(e)&&Array.isArray(n)){let t=new Set(n.map(e=>JSON.stringify(e)));return e.filter(e=>!t.has(JSON.stringify(e)))}if(typeof e==`string`&&typeof n==`string`){let t=e=>e.length>10?`"${e.slice(0,10)}...`:JSON.stringify(e);throw Error(`string (${t(e)}) and string (${t(n)}) cannot be subtracted`)}return null;case`*`:if(typeof e==`number`&&typeof n==`number`)return e*n;if(typeof e==`string`&&typeof n==`number`)return e.repeat(n);{let t=Cc(e),r=Cc(n);if(t&&r)return f_(t,r)}return null;case`/`:if(typeof e==`number`&&typeof n==`number`){if(n===0)throw Error(`number (${e}) and number (${n}) cannot be divided because the divisor is zero`);return e/n}return typeof e==`string`&&typeof n==`string`?e.split(n):null;case`%`:if(typeof e==`number`&&typeof n==`number`){if(n===0)throw Error(`number (${e}) and number (${n}) cannot be divided (remainder) because the divisor is zero`);return!Number.isFinite(e)&&!Number.isNaN(e)?!Number.isFinite(n)&&!Number.isNaN(n)&&e<0&&n>0?-1:0:e%n}return null;case`==`:return u_(e,n);case`!=`:return!u_(e,n);case`<`:return d_(e,n)<0;case`<=`:return d_(e,n)<=0;case`>`:return d_(e,n)>0;case`>=`:return d_(e,n)>=0;default:return null}}))}function Q_(e,t,n,r){let i=iv.get(t);if(i)return typeof e==`number`?[i(e)]:[null];let a=S_(e,t,n,r,W);if(a!==null)return a;let o=N_(e,t,n,r,W);if(o!==null)return o;let s=s_(e,t,n,r,W);if(s!==null)return s;let c=__(e,t,r.limits.maxDepth);if(c!==null)return c;let l=F_(e,t);if(l!==null)return l;let u=E_(e,t,n,r,W);if(u!==null)return u;let d=r_(e,t,n,r,W,q_,m_,l_,h_,k);if(d!==null)return d;let f=k_(e,t,n,r,W,l_,R_,z_,X_,$_);if(f!==null)return f;let p=b_(e,t,n,r,W,u_);if(p!==null)return p;let m=a_(e,t,n,r,W,q_,l_,k);if(m!==null)return m;let h=w_(e,t,n,r,W,l_,W_,Q_);if(h!==null)return h;let g=j_(e,t,n,r,W,u_);if(g!==null)return g;switch(t){case`builtins`:return[`add/0.all/0.all/1.all/2.any/0.any/1.any/2.arrays/0.ascii/0.ascii_downcase/0.ascii_upcase/0.booleans/0.bsearch/1.builtins/0.combinations/0.combinations/1.contains/1.debug/0.del/1.delpaths/1.empty/0.env/0.error/0.error/1.explode/0.first/0.first/1.flatten/0.flatten/1.floor/0.from_entries/0.fromdate/0.fromjson/0.getpath/1.gmtime/0.group_by/1.gsub/2.gsub/3.has/1.implode/0.IN/1.IN/2.INDEX/1.INDEX/2.index/1.indices/1.infinite/0.inside/1.isempty/1.isnan/0.isnormal/0.isvalid/1.iterables/0.join/1.keys/0.keys_unsorted/0.last/0.last/1.length/0.limit/2.ltrimstr/1.map/1.map_values/1.match/1.match/2.max/0.max_by/1.min/0.min_by/1.mktime/0.modulemeta/1.nan/0.not/0.nth/1.nth/2.null/0.nulls/0.numbers/0.objects/0.path/1.paths/0.paths/1.pick/1.range/1.range/2.range/3.recurse/0.recurse/1.recurse_down/0.repeat/1.reverse/0.rindex/1.rtrimstr/1.scalars/0.scan/1.scan/2.select/1.setpath/2.skip/2.sort/0.sort_by/1.split/1.splits/1.splits/2.sqrt/0.startswith/1.strftime/1.strings/0.strptime/1.sub/2.sub/3.test/1.test/2.to_entries/0.toboolean/0.todate/0.tojson/0.tostream/0.fromstream/1.truncate_stream/1.tonumber/0.tostring/0.transpose/0.trim/0.ltrim/0.rtrim/0.type/0.unique/0.unique_by/1.until/2.utf8bytelength/0.values/0.walk/1.while/2.with_entries/1`.split(`.`)];case`error`:{let t=n.length>0?W(e,n[0],r)[0]:e;throw new tv(t)}case`env`:return[r.env?au(r.env):Object.create(null)];case`debug`:return[e];case`input_line_number`:return[1];default:{let i=`${t}/${n.length}`,a=r.funcs?.get(i);if(a){let t=a.closure??r.funcs??new Map,o=new Map(t);o.set(i,a);for(let t=0;t<a.params.length;t++){let i=a.params[t],s=n[t];if(s){let t=W(e,s,r),n;if(t.length===0)n={type:`Call`,name:`empty`,args:[]};else if(t.length===1)n={type:`Literal`,value:t[0]};else{n={type:`Literal`,value:t[t.length-1]};for(let e=t.length-2;e>=0;e--)n={type:`Comma`,left:{type:`Literal`,value:t[e]},right:n}}o.set(`${i}/0`,{params:[],body:n})}}let s={...r,funcs:o};return W(e,a.body,s)}throw Error(`Unknown function: ${t}`)}}}function $_(e,t,n,r,i){if(t.type===`Comma`){let a=t;$_(e,a.left,n,r,i),$_(e,a.right,n,r,i);return}let a=G_(t);if(a!==null){i.push([...r,...a]);return}if(t.type===`Iterate`){if(Array.isArray(e))for(let t=0;t<e.length;t++)i.push([...r,t]);else if(e&&typeof e==`object`)for(let t of Object.keys(e))i.push([...r,t]);return}if(t.type===`Recurse`){let t=(e,n)=>{if(i.push([...r,...n]),e&&typeof e==`object`)if(Array.isArray(e))for(let r=0;r<e.length;r++)t(e[r],[...n,r]);else for(let r of Object.keys(e))t(e[r],[...n,r])};t(e,[]);return}if(t.type===`Pipe`){let a=G_(t.left);if(a!==null){let o=W(e,t.left,n);for(let e of o)$_(e,t.right,n,[...r,...a],i);return}}W(e,t,n).length>0&&i.push(r)}var ev,tv,nv,rv,iv,av=x(()=>{cu(),A(),wl(),L_(),B_(),Oc(),g_(),ev=class e extends Error{label;partialResults;constructor(e,t=[]){super(`break ${e}`),this.label=e,this.partialResults=t,this.name=`BreakError`}withPrependedResults(t){return new e(this.label,[...t,...this.partialResults])}},tv=class extends Error{value;constructor(e){super(typeof e==`string`?e:JSON.stringify(e)),this.value=e,this.name=`JqError`}},nv=1e4,rv=2e3,iv=new Map([[`floor`,Math.floor],[`ceil`,Math.ceil],[`round`,Math.round],[`sqrt`,Math.sqrt],[`log`,Math.log],[`log10`,Math.log10],[`log2`,Math.log2],[`exp`,Math.exp],[`sin`,Math.sin],[`cos`,Math.cos],[`tan`,Math.tan],[`asin`,Math.asin],[`acos`,Math.acos],[`atan`,Math.atan],[`sinh`,Math.sinh],[`cosh`,Math.cosh],[`tanh`,Math.tanh],[`asinh`,Math.asinh],[`acosh`,Math.acosh],[`atanh`,Math.atanh],[`cbrt`,Math.cbrt],[`expm1`,Math.expm1],[`log1p`,Math.log1p],[`trunc`,Math.trunc]])});function ov(e){let t=[],n=0,r=(t=0)=>e[n+t],i=()=>e[n++],a=()=>n>=e.length,o=e=>e>=`0`&&e<=`9`,s=e=>e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e===`_`,c=e=>s(e)||o(e);for(;!a();){let l=n,u=i();if(!(u===` `||u===` `||u===`
629
+ `||u===`\r`)){if(u===`#`){for(;!a()&&r()!==`
630
+ `;)i();continue}if(u===`.`&&r()===`.`){i(),t.push({type:`DOTDOT`,pos:l});continue}if(u===`=`&&r()===`=`){i(),t.push({type:`EQ`,pos:l});continue}if(u===`!`&&r()===`=`){i(),t.push({type:`NE`,pos:l});continue}if(u===`<`&&r()===`=`){i(),t.push({type:`LE`,pos:l});continue}if(u===`>`&&r()===`=`){i(),t.push({type:`GE`,pos:l});continue}if(u===`/`&&r()===`/`){i(),r()===`=`?(i(),t.push({type:`UPDATE_ALT`,pos:l})):t.push({type:`ALT`,pos:l});continue}if(u===`+`&&r()===`=`){i(),t.push({type:`UPDATE_ADD`,pos:l});continue}if(u===`-`&&r()===`=`){i(),t.push({type:`UPDATE_SUB`,pos:l});continue}if(u===`*`&&r()===`=`){i(),t.push({type:`UPDATE_MUL`,pos:l});continue}if(u===`/`&&r()===`=`){i(),t.push({type:`UPDATE_DIV`,pos:l});continue}if(u===`%`&&r()===`=`){i(),t.push({type:`UPDATE_MOD`,pos:l});continue}if(u===`=`&&r()!==`=`){t.push({type:`ASSIGN`,pos:l});continue}if(u===`.`){t.push({type:`DOT`,pos:l});continue}if(u===`|`){r()===`=`?(i(),t.push({type:`UPDATE_PIPE`,pos:l})):t.push({type:`PIPE`,pos:l});continue}if(u===`,`){t.push({type:`COMMA`,pos:l});continue}if(u===`:`){t.push({type:`COLON`,pos:l});continue}if(u===`;`){t.push({type:`SEMICOLON`,pos:l});continue}if(u===`(`){t.push({type:`LPAREN`,pos:l});continue}if(u===`)`){t.push({type:`RPAREN`,pos:l});continue}if(u===`[`){t.push({type:`LBRACKET`,pos:l});continue}if(u===`]`){t.push({type:`RBRACKET`,pos:l});continue}if(u===`{`){t.push({type:`LBRACE`,pos:l});continue}if(u===`}`){t.push({type:`RBRACE`,pos:l});continue}if(u===`?`){t.push({type:`QUESTION`,pos:l});continue}if(u===`+`){t.push({type:`PLUS`,pos:l});continue}if(u===`-`){t.push({type:`MINUS`,pos:l});continue}if(u===`*`){t.push({type:`STAR`,pos:l});continue}if(u===`/`){t.push({type:`SLASH`,pos:l});continue}if(u===`%`){t.push({type:`PERCENT`,pos:l});continue}if(u===`<`){t.push({type:`LT`,pos:l});continue}if(u===`>`){t.push({type:`GT`,pos:l});continue}if(o(u)){let s=u;for(;!a()&&(o(r())||r()===`.`||r()===`e`||r()===`E`);)(r()===`e`||r()===`E`)&&(e[n+1]===`+`||e[n+1]===`-`)&&(s+=i()),s+=i();t.push({type:`NUMBER`,value:Number(s),pos:l});continue}if(u===`"`){let e=``;for(;!a()&&r()!==`"`;)if(r()===`\\`){if(i(),a())break;let t=i();switch(t){case`n`:e+=`
631
+ `;break;case`r`:e+=`\r`;break;case`t`:e+=` `;break;case`\\`:e+=`\\`;break;case`"`:e+=`"`;break;case`(`:e+=`\\(`;break;default:e+=t}}else e+=i();a()||i(),t.push({type:`STRING`,value:e,pos:l});continue}if(s(u)||u===`$`||u===`@`){let e=u;for(;!a()&&c(r());)e+=i();let n=cv.get(e);n?t.push({type:n,value:e,pos:l}):t.push({type:`IDENT`,value:e,pos:l});continue}throw Error(`Unexpected character '${u}' at position ${l}`)}}return t.push({type:`EOF`,pos:n}),t}function sv(e){let t=ov(e);return new uv(t).parse()}var cv,lv,uv,dv=x(()=>{cv=new Map([[`and`,`AND`],[`or`,`OR`],[`not`,`NOT`],[`if`,`IF`],[`then`,`THEN`],[`elif`,`ELIF`],[`else`,`ELSE`],[`end`,`END`],[`as`,`AS`],[`try`,`TRY`],[`catch`,`CATCH`],[`true`,`TRUE`],[`false`,`FALSE`],[`null`,`NULL`],[`reduce`,`REDUCE`],[`foreach`,`FOREACH`],[`label`,`LABEL`],[`break`,`BREAK`],[`def`,`DEF`]]),lv=new Set(cv.values()),uv=class e{tokens;pos=0;constructor(e){this.tokens=e}peek(e=0){return this.tokens[this.pos+e]??{type:`EOF`,pos:-1}}advance(){return this.tokens[this.pos++]}check(e){return this.peek().type===e}match(...e){for(let t of e)if(this.check(t))return this.advance();return null}expect(e,t){if(!this.check(e))throw Error(`${t} at position ${this.peek().pos}, got ${this.peek().type}`);return this.advance()}isFieldNameAfterDot(e=0){let t=this.peek(e),n=this.peek(e+1);return n.type===`STRING`?!0:n.type===`IDENT`||lv.has(n.type)?n.pos===t.pos+1:!1}isIdentLike(){let e=this.peek().type;return e===`IDENT`||lv.has(e)}consumeFieldNameAfterDot(e){let t=this.peek();return t.type===`STRING`||(t.type===`IDENT`||lv.has(t.type))&&t.pos===e.pos+1?this.advance().value:null}parse(){let e=this.parseExpr();if(!this.check(`EOF`))throw Error(`Unexpected token ${this.peek().type} at position ${this.peek().pos}`);return e}parseExpr(){return this.parsePipe()}parsePattern(){if(this.match(`LBRACKET`)){let e=[];if(!this.check(`RBRACKET`))for(e.push(this.parsePattern());this.match(`COMMA`)&&!this.check(`RBRACKET`);)e.push(this.parsePattern());return this.expect(`RBRACKET`,`Expected ']' after array pattern`),{type:`array`,elements:e}}if(this.match(`LBRACE`)){let e=[];if(!this.check(`RBRACE`))for(e.push(this.parsePatternField());this.match(`COMMA`)&&!this.check(`RBRACE`);)e.push(this.parsePatternField());return this.expect(`RBRACE`,`Expected '}' after object pattern`),{type:`object`,fields:e}}let e=this.expect(`IDENT`,`Expected variable name in pattern`),t=e.value;if(!t.startsWith(`$`))throw Error(`Variable name must start with $ at position ${e.pos}`);return{type:`var`,name:t}}parsePatternField(){if(this.match(`LPAREN`)){let e=this.parseExpr();return this.expect(`RPAREN`,`Expected ')' after computed key`),this.expect(`COLON`,`Expected ':' after computed key`),{key:e,pattern:this.parsePattern()}}let e=this.peek();if(e.type===`IDENT`||lv.has(e.type)){let t=e.value;if(t.startsWith(`$`)){if(this.advance(),this.match(`COLON`)){let e=this.parsePattern();return{key:t.slice(1),pattern:e,keyVar:t}}return{key:t.slice(1),pattern:{type:`var`,name:t}}}return this.advance(),this.match(`COLON`)?{key:t,pattern:this.parsePattern()}:{key:t,pattern:{type:`var`,name:`$${t}`}}}throw Error(`Expected field name in object pattern at position ${e.pos}`)}parsePipe(){let e=this.parseComma();for(;this.match(`PIPE`);){let t=this.parseComma();e={type:`Pipe`,left:e,right:t}}return e}parseComma(){let e=this.parseVarBind();for(;this.match(`COMMA`);){let t=this.parseVarBind();e={type:`Comma`,left:e,right:t}}return e}parseVarBind(){let e=this.parseUpdate();if(this.match(`AS`)){let t=this.parsePattern(),n=[];for(;this.check(`QUESTION`)&&this.peekAhead(1)?.type===`ALT`;)this.advance(),this.advance(),n.push(this.parsePattern());this.expect(`PIPE`,`Expected '|' after variable binding`);let r=this.parseExpr();return t.type===`var`&&n.length===0?{type:`VarBind`,name:t.name,value:e,body:r}:{type:`VarBind`,name:t.type===`var`?t.name:``,value:e,body:r,pattern:t.type===`var`?void 0:t,alternatives:n.length>0?n:void 0}}return e}peekAhead(e){let t=this.pos+e;return t<this.tokens.length?this.tokens[t]:void 0}parseUpdate(){let e=this.parseAlt(),t=new Map([[`ASSIGN`,`=`],[`UPDATE_ADD`,`+=`],[`UPDATE_SUB`,`-=`],[`UPDATE_MUL`,`*=`],[`UPDATE_DIV`,`/=`],[`UPDATE_MOD`,`%=`],[`UPDATE_ALT`,`//=`],[`UPDATE_PIPE`,`|=`]]),n=this.match(`ASSIGN`,`UPDATE_ADD`,`UPDATE_SUB`,`UPDATE_MUL`,`UPDATE_DIV`,`UPDATE_MOD`,`UPDATE_ALT`,`UPDATE_PIPE`);if(n){let r=this.parseVarBind(),i=t.get(n.type);if(i)return{type:`UpdateOp`,op:i,path:e,value:r}}return e}parseAlt(){let e=this.parseOr();for(;this.match(`ALT`);){let t=this.parseOr();e={type:`BinaryOp`,op:`//`,left:e,right:t}}return e}parseOr(){let e=this.parseAnd();for(;this.match(`OR`);){let t=this.parseAnd();e={type:`BinaryOp`,op:`or`,left:e,right:t}}return e}parseAnd(){let e=this.parseNot();for(;this.match(`AND`);){let t=this.parseNot();e={type:`BinaryOp`,op:`and`,left:e,right:t}}return e}parseNot(){return this.parseComparison()}parseComparison(){let e=this.parseAddSub(),t=new Map([[`EQ`,`==`],[`NE`,`!=`],[`LT`,`<`],[`LE`,`<=`],[`GT`,`>`],[`GE`,`>=`]]),n=this.match(`EQ`,`NE`,`LT`,`LE`,`GT`,`GE`);if(n){let r=t.get(n.type);if(r){let t=this.parseAddSub();e={type:`BinaryOp`,op:r,left:e,right:t}}}return e}parseAddSub(){let e=this.parseMulDiv();for(;;)if(this.match(`PLUS`)){let t=this.parseMulDiv();e={type:`BinaryOp`,op:`+`,left:e,right:t}}else if(this.match(`MINUS`)){let t=this.parseMulDiv();e={type:`BinaryOp`,op:`-`,left:e,right:t}}else break;return e}parseMulDiv(){let e=this.parseUnary();for(;;)if(this.match(`STAR`)){let t=this.parseUnary();e={type:`BinaryOp`,op:`*`,left:e,right:t}}else if(this.match(`SLASH`)){let t=this.parseUnary();e={type:`BinaryOp`,op:`/`,left:e,right:t}}else if(this.match(`PERCENT`)){let t=this.parseUnary();e={type:`BinaryOp`,op:`%`,left:e,right:t}}else break;return e}parseUnary(){return this.match(`MINUS`)?{type:`UnaryOp`,op:`-`,operand:this.parseUnary()}:this.parsePostfix()}parsePostfix(){let e=this.parsePrimary();for(;;)if(this.match(`QUESTION`))e={type:`Optional`,expr:e};else if(this.check(`DOT`)&&this.isFieldNameAfterDot())this.advance(),e={type:`Field`,name:this.advance().value,base:e};else if(this.check(`LBRACKET`))if(this.advance(),this.match(`RBRACKET`))e={type:`Iterate`,base:e};else if(this.check(`COLON`)){this.advance();let t=this.check(`RBRACKET`)?void 0:this.parseExpr();this.expect(`RBRACKET`,`Expected ']'`),e={type:`Slice`,end:t,base:e}}else{let t=this.parseExpr();if(this.match(`COLON`)){let n=this.check(`RBRACKET`)?void 0:this.parseExpr();this.expect(`RBRACKET`,`Expected ']'`),e={type:`Slice`,start:t,end:n,base:e}}else this.expect(`RBRACKET`,`Expected ']'`),e={type:`Index`,index:t,base:e}}else break;return e}parsePrimary(){if(this.match(`DOTDOT`))return{type:`Recurse`};if(this.check(`DOT`)){let e=this.advance();if(this.check(`LBRACKET`)){if(this.advance(),this.match(`RBRACKET`))return{type:`Iterate`};if(this.check(`COLON`)){this.advance();let e=this.check(`RBRACKET`)?void 0:this.parseExpr();return this.expect(`RBRACKET`,`Expected ']'`),{type:`Slice`,end:e}}let e=this.parseExpr();if(this.match(`COLON`)){let t=this.check(`RBRACKET`)?void 0:this.parseExpr();return this.expect(`RBRACKET`,`Expected ']'`),{type:`Slice`,start:e,end:t}}return this.expect(`RBRACKET`,`Expected ']'`),{type:`Index`,index:e}}let t=this.consumeFieldNameAfterDot(e);return t===null?{type:`Identity`}:{type:`Field`,name:t}}if(this.match(`TRUE`))return{type:`Literal`,value:!0};if(this.match(`FALSE`))return{type:`Literal`,value:!1};if(this.match(`NULL`))return{type:`Literal`,value:null};if(this.check(`NUMBER`))return{type:`Literal`,value:this.advance().value};if(this.check(`STRING`)){let e=this.advance().value;return e.includes(`\\(`)?this.parseStringInterpolation(e):{type:`Literal`,value:e}}if(this.match(`LBRACKET`)){if(this.match(`RBRACKET`))return{type:`Array`};let e=this.parseExpr();return this.expect(`RBRACKET`,`Expected ']'`),{type:`Array`,elements:e}}if(this.match(`LBRACE`))return this.parseObjectConstruction();if(this.match(`LPAREN`)){let e=this.parseExpr();return this.expect(`RPAREN`,`Expected ')'`),{type:`Paren`,expr:e}}if(this.match(`IF`))return this.parseIf();if(this.match(`TRY`)){let e=this.parsePostfix(),t;return this.match(`CATCH`)&&(t=this.parsePostfix()),{type:`Try`,body:e,catch:t}}if(this.match(`REDUCE`)){let e=this.parseAddSub();this.expect(`AS`,`Expected 'as' after reduce expression`);let t=this.parsePattern();this.expect(`LPAREN`,`Expected '(' after variable`);let n=this.parseExpr();this.expect(`SEMICOLON`,`Expected ';' after init expression`);let r=this.parseExpr();return this.expect(`RPAREN`,`Expected ')' after update expression`),{type:`Reduce`,expr:e,varName:t.type===`var`?t.name:``,init:n,update:r,pattern:t.type===`var`?void 0:t}}if(this.match(`FOREACH`)){let e=this.parseAddSub();this.expect(`AS`,`Expected 'as' after foreach expression`);let t=this.parsePattern();this.expect(`LPAREN`,`Expected '(' after variable`);let n=this.parseExpr();this.expect(`SEMICOLON`,`Expected ';' after init expression`);let r=this.parseExpr(),i;return this.match(`SEMICOLON`)&&(i=this.parseExpr()),this.expect(`RPAREN`,`Expected ')' after expressions`),{type:`Foreach`,expr:e,varName:t.type===`var`?t.name:``,init:n,update:r,extract:i,pattern:t.type===`var`?void 0:t}}if(this.match(`LABEL`)){let e=this.expect(`IDENT`,`Expected label name (e.g., $out)`),t=e.value;if(!t.startsWith(`$`))throw Error(`Label name must start with $ at position ${e.pos}`);return this.expect(`PIPE`,`Expected '|' after label name`),{type:`Label`,name:t,body:this.parseExpr()}}if(this.match(`BREAK`)){let e=this.expect(`IDENT`,`Expected label name to break to`),t=e.value;if(!t.startsWith(`$`))throw Error(`Break label must start with $ at position ${e.pos}`);return{type:`Break`,name:t}}if(this.match(`DEF`)){let e=this.expect(`IDENT`,`Expected function name after def`).value,t=[];if(this.match(`LPAREN`)){if(!this.check(`RPAREN`)){let e=this.expect(`IDENT`,`Expected parameter name`);for(t.push(e.value);this.match(`SEMICOLON`);){let e=this.expect(`IDENT`,`Expected parameter name`);t.push(e.value)}}this.expect(`RPAREN`,`Expected ')' after parameters`)}this.expect(`COLON`,`Expected ':' after function name`);let n=this.parseExpr();return this.expect(`SEMICOLON`,`Expected ';' after function body`),{type:`Def`,name:e,params:t,funcBody:n,body:this.parseExpr()}}if(this.match(`NOT`))return{type:`Call`,name:`not`,args:[]};if(this.check(`IDENT`)){let e=this.advance().value;if(e.startsWith(`$`))return{type:`VarRef`,name:e};if(this.match(`LPAREN`)){let t=[];if(!this.check(`RPAREN`))for(t.push(this.parseExpr());this.match(`SEMICOLON`);)t.push(this.parseExpr());return this.expect(`RPAREN`,`Expected ')'`),{type:`Call`,name:e,args:t}}return{type:`Call`,name:e,args:[]}}throw Error(`Unexpected token ${this.peek().type} at position ${this.peek().pos}`)}parseObjectConstruction(){let e=[];if(!this.check(`RBRACE`))do{let t,n;if(this.match(`LPAREN`))t=this.parseExpr(),this.expect(`RPAREN`,`Expected ')'`),this.expect(`COLON`,`Expected ':'`),n=this.parseObjectValue();else if(this.isIdentLike()){let e=this.advance().value;this.match(`COLON`)?(t=e,n=this.parseObjectValue()):(t=e,n={type:`Field`,name:e})}else if(this.check(`STRING`))t=this.advance().value,this.expect(`COLON`,`Expected ':'`),n=this.parseObjectValue();else throw Error(`Expected object key at position ${this.peek().pos}`);e.push({key:t,value:n})}while(this.match(`COMMA`));return this.expect(`RBRACE`,`Expected '}'`),{type:`Object`,entries:e}}parseObjectValue(){let e=this.parseVarBind();for(;this.match(`PIPE`);){let t=this.parseVarBind();e={type:`Pipe`,left:e,right:t}}return e}parseIf(){let e=this.parseExpr();this.expect(`THEN`,`Expected 'then'`);let t=this.parseExpr(),n=[];for(;this.match(`ELIF`);){let e=this.parseExpr();this.expect(`THEN`,`Expected 'then' after elif`);let t=this.parseExpr();n.push({cond:e,then:t})}let r;return this.match(`ELSE`)&&(r=this.parseExpr()),this.expect(`END`,`Expected 'end'`),{type:`Cond`,cond:e,then:t,elifs:n,else:r}}parseStringInterpolation(t){let n=[],r=``,i=0;for(;i<t.length;)if(t[i]===`\\`&&t[i+1]===`(`){r&&=(n.push(r),``),i+=2;let a=1,o=``;for(;i<t.length&&a>0;)t[i]===`(`?a++:t[i]===`)`&&a--,a>0&&(o+=t[i]),i++;let s=ov(o),c=new e(s);n.push(c.parse())}else r+=t[i],i++;return r&&n.push(r),{type:`StringInterp`,parts:n}}}}),fv=x(()=>{av(),dv()}),pv={};S(pv,{flagsForFuzzing:()=>xv,jqCommand:()=>bv});function mv(e){switch(e){case`\b`:return`\\b`;case`\f`:return`\\f`;case`
632
+ `:return`\\n`;case`\r`:return`\\r`;case` `:return`\\t`;default:return`\\u${e.charCodeAt(0).toString(16).padStart(4,`0`)}`}}function hv(e){let t=``,n=!1,r=!1;for(let i=0;i<e.length;i++){let a=e[i];if(r){t+=a,r=!1;continue}if(a===`\\`){t+=a,r=!0;continue}if(a===`"`){t+=a,n=!n;continue}if(n&&a.charCodeAt(0)<=31){t+=mv(a);continue}t+=a}return t}function gv(e,t,n){return JSON.parse(hv(e.slice(t,n)))}function _v(e){let t=[],n=0,r=e.length;for(;n<r;){for(;n<r&&/\s/.test(e[n]);)n++;if(n>=r)break;let i=n,a=e[n];if(a===`{`||a===`[`){let o=a,s=a===`{`?`}`:`]`,c=1,l=!1,u=!1;for(n++;n<r&&c>0;){let t=e[n];u?u=!1:t===`\\`?u=!0:t===`"`?l=!l:l||(t===o?c++:t===s&&c--),n++}if(c!==0)throw Error(`Unexpected end of JSON input at position ${n} (unclosed ${o})`);t.push(Sc(gv(e,i,n)))}else if(a===`"`){let a=!1;for(n++;n<r;){let t=e[n];if(a)a=!1;else if(t===`\\`)a=!0;else if(t===`"`){n++;break}n++}t.push(Sc(gv(e,i,n)))}else if(a===`-`||a>=`0`&&a<=`9`){for(;n<r&&/[\d.eE+-]/.test(e[n]);)n++;t.push(Sc(gv(e,i,n)))}else if(e.slice(n,n+4)===`true`)t.push(!0),n+=4;else if(e.slice(n,n+5)===`false`)t.push(!1),n+=5;else if(e.slice(n,n+4)===`null`)t.push(null),n+=4;else{let t=e.slice(n,n+10);throw Error(`Invalid JSON at position ${i}: unexpected '${t.split(/\s/)[0]}'`)}}return t}function vv(e,t,n,r,i,a=0){if(e==null)return`null`;if(typeof e==`boolean`)return String(e);if(typeof e==`number`)return Number.isFinite(e)?String(e):`null`;if(typeof e==`string`)return n?e:JSON.stringify(e);let o=i?` `:` `;if(Array.isArray(e))return e.length===0?`[]`:t?`[${e.map(e=>vv(e,!0,!1,r,i)).join(`,`)}]`:`[
633
+ ${e.map(e=>o.repeat(a+1)+vv(e,!1,!1,r,i,a+1)).join(`,
634
+ `)}
635
+ ${o.repeat(a)}]`;if(typeof e==`object`){let n=Object.keys(e);return r&&(n=n.sort()),n.length===0?`{}`:t?`{${n.map(t=>`${JSON.stringify(t)}:${vv(e[t],!0,!1,r,i)}`).join(`,`)}}`:`{
636
+ ${n.map(t=>{let n=vv(e[t],!1,!1,r,i,a+1);return`${o.repeat(a+1)}${JSON.stringify(t)}: ${n}`}).join(`,
637
+ `)}
638
+ ${o.repeat(a)}}`}return String(e)}var yv,bv,xv,Sv=x(()=>{w(),Vi(),A(),wl(),Qn(),Tr(),O(),fv(),Oc(),yv={name:`jq`,summary:`command-line JSON processor`,usage:`jq [OPTIONS] FILTER [FILE...]`,options:[`-R, --raw-input read each line as string instead of JSON`,`-r, --raw-output output strings without quotes`,`-c, --compact-output compact instead of pretty-printed output`,`-e, --exit-status set exit status based on output`,`-s, --slurp read entire input into array`,`-n, --null-input don't read any input`,`-j, --join-output don't print newlines after each output`,`-a, --ascii force ASCII output`,`-S, --sort-keys sort object keys`,`-C, --color colorize output (ignored)`,`-M, --monochrome monochrome output (ignored)`,` --tab use tabs for indentation`,` --help display this help and exit`]},bv={name:`jq`,async execute(e,t){Sl(t.requireDefenseContext,`jq`,`execution entry`);let n=(e,n)=>Cl(t.requireDefenseContext,`jq`,e,n);if(E(e))return T(yv);let r=!1,i=!1,a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!1,f=`.`,p=!1,m=[];for(let t=0;t<e.length;t++){let n=e[t];if(n===`-R`||n===`--raw-input`)i=!0;else if(n===`-r`||n===`--raw-output`)r=!0;else if(n===`-c`||n===`--compact-output`)a=!0;else if(n===`-e`||n===`--exit-status`)o=!0;else if(n===`-s`||n===`--slurp`)s=!0;else if(n===`-n`||n===`--null-input`)c=!0;else if(n===`-j`||n===`--join-output`)l=!0;else if(!(n===`-a`||n===`--ascii`)){if(n===`-S`||n===`--sort-keys`)u=!0;else if(!(n===`-C`||n===`--color`)&&!(n===`-M`||n===`--monochrome`))if(n===`--tab`)d=!0;else if(n===`-`)m.push(`-`);else{if(n.startsWith(`--`))return D(`jq`,n);if(n.startsWith(`-`)){for(let e of n.slice(1))if(e===`R`)i=!0;else if(e===`r`)r=!0;else if(e===`c`)a=!0;else if(e===`e`)o=!0;else if(e===`s`)s=!0;else if(e===`n`)c=!0;else if(e===`j`)l=!0;else if(e!==`a`){if(e===`S`)u=!0;else if(e!==`C`&&e!==`M`)return D(`jq`,`-${e}`)}}else p?m.push(n):(f=n,p=!0)}}}let h=[];if(!c)if(m.length===0||m.length===1&&m[0]===`-`)h.push({source:`stdin`,content:ur(t.stdin)});else{let e=await n(`file read`,()=>Cr(t,m,{cmdName:`jq`,stopOnError:!0}));if(e.exitCode!==0)return{stdout:``,stderr:e.stderr,exitCode:2};h=e.files.map(e=>({source:e.filename||`stdin`,content:ur(e.content)}))}try{let e=sv(f),n=[],p={limits:t.limits?{maxIterations:t.limits.maxJqIterations}:void 0,env:t.env,coverage:t.coverage,requireDefenseContext:t.requireDefenseContext};if(c)n=W(null,e,p);else if(i&&s)n=W(h.map(({content:e})=>e).join(``),e,p);else if(i){let t=``;for(let{content:r}of h){let i=t+r,a=0,o=i.indexOf(`
639
+ `,a);for(;o!==-1;)n.push(...W(i.slice(a,o),e,p)),a=o+1,o=i.indexOf(`
640
+ `,a);t=i.slice(a)}t!==``&&n.push(...W(t,e,p))}else if(s){let t=[];for(let{content:e}of h){let n=e.trim();n&&t.push(..._v(n))}n=W(t,e,p)}else for(let{content:t}of h){let r=t.trim();if(!r)continue;let i=_v(r);for(let t of i)n.push(...W(t,e,p))}let m=n.map(e=>vv(e,a,r,u,d)),g=l?``:`
641
+ `,_=m.join(g),v=t.limits?.maxStringLength;if(v!==void 0&&v>0&&_.length>v)throw new k(`jq: output size limit exceeded (${v} bytes)`,`string_length`);let y=o&&(n.length===0||n.every(e=>e==null||e===!1))?1:0;return{stdout:_?l?_:`${_}
642
+ `:``,stderr:``,exitCode:y}}catch(e){if(e instanceof C)throw e;if(e instanceof k)return{stdout:``,stderr:`jq: ${Bi(e.message)}
643
+ `,exitCode:k.EXIT_CODE};let t=Bi(e.message);return t.includes(`Unknown function`)?{stdout:``,stderr:`jq: error: ${t}
644
+ `,exitCode:3}:{stdout:``,stderr:`jq: parse error: ${t}
645
+ `,exitCode:5}}}},xv={name:`jq`,flags:[{flag:`-R`,type:`boolean`},{flag:`-r`,type:`boolean`},{flag:`-c`,type:`boolean`},{flag:`-e`,type:`boolean`},{flag:`-s`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-j`,type:`boolean`},{flag:`-S`,type:`boolean`},{flag:`--tab`,type:`boolean`}],stdinType:`json`,needsArgs:!0}}),Cv={};S(Cv,{base64Command:()=>Dv,flagsForFuzzing:()=>Ov});async function wv(e,t,n){if(t.length===0||t.length===1&&t[0]===`-`)return{ok:!0,data:Uint8Array.from(e.stdin,e=>e.charCodeAt(0))};let r=[];for(let i of t){if(i===`-`){r.push(Uint8Array.from(e.stdin,e=>e.charCodeAt(0)));continue}try{let t=e.fs.resolvePath(e.cwd,i),n=await e.fs.readFileBuffer(t);r.push(n)}catch{return{ok:!1,error:{stdout:``,stderr:`${n}: ${i}: No such file or directory
646
+ `,exitCode:1}}}}let i=r.reduce((e,t)=>e+t.length,0),a=new Uint8Array(i),o=0;for(let e of r)a.set(e,o),o+=e.length;return{ok:!0,data:a}}var Tv,Ev,Dv,Ov,kv=x(()=>{w(),xr(),O(),Tv={name:`base64`,summary:`base64 encode/decode data and print to standard output`,usage:`base64 [OPTION]... [FILE]`,options:[`-d, --decode decode data`,`-w, --wrap=COLS wrap encoded lines after COLS character (default 76, 0 to disable)`,` --help display this help and exit`]},Ev={decode:{short:`d`,long:`decode`,type:`boolean`},wrap:{short:`w`,long:`wrap`,type:`number`,default:76}},Dv={name:`base64`,async execute(e,t){if(E(e))return T(Tv);let n=br(`base64`,e,Ev);if(!n.ok)return n.error;let r=n.result.flags.decode,i=n.result.flags.wrap,a=n.result.positional;try{if(r){let e=await wv(t,a,`base64`);if(!e.ok)return e.error;if(typeof Buffer<`u`){let t=Buffer.from(e.data).toString(`utf8`).replace(/\s/g,``);return{stdout:Buffer.from(t,`base64`).toString(`latin1`),stderr:``,exitCode:0,stdoutEncoding:`binary`}}let n=String.fromCharCode(...e.data).replace(/\s/g,``);return{stdout:atob(n),stderr:``,exitCode:0,stdoutEncoding:`binary`}}let e=await wv(t,a,`base64`);if(!e.ok)return e.error;let n;if(n=typeof Buffer<`u`?Buffer.from(e.data).toString(`base64`):btoa(String.fromCharCode(...e.data)),i>0){let e=[];for(let t=0;t<n.length;t+=i)e.push(n.slice(t,t+i));n=e.join(`
647
+ `)+(n.length>0?`
648
+ `:``)}return{stdout:n,stderr:``,exitCode:0}}catch{return{stdout:``,stderr:`base64: invalid input
649
+ `,exitCode:1}}}},Ov={name:`base64`,flags:[{flag:`-d`,type:`boolean`},{flag:`-w`,type:`value`,valueHint:`number`}],stdinType:`text`,needsFiles:!0}}),Av={};S(Av,{diffCommand:()=>Nv,flagsForFuzzing:()=>Pv});var jv,Mv,Nv,Pv,Fv=x(()=>{w(),xr(),O(),jv={name:`diff`,summary:`compare files line by line`,usage:`diff [OPTION]... FILE1 FILE2`,options:[`-u, --unified output unified diff format (default)`,`-q, --brief report only whether files differ`,`-s, --report-identical-files report when files are the same`,`-i, --ignore-case ignore case differences`,` --help display this help and exit`]},Mv={unified:{short:`u`,long:`unified`,type:`boolean`},brief:{short:`q`,long:`brief`,type:`boolean`},reportSame:{short:`s`,long:`report-identical-files`,type:`boolean`},ignoreCase:{short:`i`,long:`ignore-case`,type:`boolean`}},Nv={name:`diff`,async execute(e,t){if(E(e))return T(jv);let n=br(`diff`,e,Mv);if(!n.ok)return n.error;let r=n.result.flags.brief,i=n.result.flags.reportSame,a=n.result.flags.ignoreCase,o=n.result.positional;if(n.result.flags.unified,o.length<2)return{stdout:``,stderr:`diff: missing operand
650
+ `,exitCode:2};let s,c,[l,u]=o;try{s=l===`-`?ur(t.stdin):await t.fs.readFile(t.fs.resolvePath(t.cwd,l))}catch{return{stdout:``,stderr:`diff: ${l}: No such file or directory
651
+ `,exitCode:2}}try{c=u===`-`?ur(t.stdin):await t.fs.readFile(t.fs.resolvePath(t.cwd,u))}catch{return{stdout:``,stderr:`diff: ${u}: No such file or directory
652
+ `,exitCode:2}}let d=s,f=c;return a&&(d=d.toLowerCase(),f=f.toLowerCase()),d===f?i?{stdout:`Files ${l} and ${u} are identical
653
+ `,stderr:``,exitCode:0}:{stdout:``,stderr:``,exitCode:0}:r?{stdout:`Files ${l} and ${u} differ
654
+ `,stderr:``,exitCode:1}:{stdout:Ft(l,u,s,c,``,``,{context:3}),stderr:``,exitCode:1}}},Pv={name:`diff`,flags:[{flag:`-u`,type:`boolean`},{flag:`-q`,type:`boolean`},{flag:`-s`,type:`boolean`},{flag:`-i`,type:`boolean`}],needsArgs:!0,minArgs:2}}),Iv={};S(Iv,{dateCommand:()=>Hv,flagsForFuzzing:()=>Uv});function Lv(e){try{return new Intl.DateTimeFormat(void 0,{timeZone:e}),!0}catch{return!1}}function Rv(e,t){let n=new Intl.DateTimeFormat(`en-US`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1}).formatToParts(e),r=e=>n.find(t=>t.type===e)?.value??`00`,i=Number.parseInt(r(`hour`),10)%24,a=new Date(`${r(`year`)}-${r(`month`)}-${r(`day`)}T${String(i).padStart(2,`0`)}:${r(`minute`)}:${r(`second`)}Z`);return Number.isNaN(a.getTime())?null:a}function zv(e,t){let n=e.match(/^(\d{4})-(\d{2})-(\d{2})(?:[T ](\d{2}):(\d{2})(?::(\d{2}))?)?$/);if(!n)return null;let[,r,i,a,o=`00`,s=`00`,c=`00`]=n,l=new Date(`${r}-${i}-${a}T${o}:${s}:${c}Z`);if(Number.isNaN(l.getTime()))return null;try{let e=l;for(let n=0;n<3;n++){let n=Rv(e,t);if(n===null)return null;let r=n.getTime()-l.getTime();if(r===0)return e;e=new Date(e.getTime()-r)}return e}catch{return null}}function Bv(e,t){if(e.startsWith(`@`)){let t=e.slice(1);return/^-?\d+$/.test(t)?new Date(Number.parseInt(t,10)*1e3):null}let n=e.toLowerCase().trim();if(n===`now`||n===`today`)return new Date;if(n===`yesterday`)return new Date(Date.now()-864e5);if(n===`tomorrow`)return new Date(Date.now()+864e5);if(t&&!/Z$/i.test(e)&&!/[+-]\d{2}:?\d{2}$/.test(e)){let n=zv(e,t);if(n)return n}let r=new Date(e);return Number.isNaN(r.getTime())?null:r}var Vv,Hv,Uv,Wv=x(()=>{O(),li(),Vv={name:`date`,summary:`display the current time in the given FORMAT`,usage:`date [OPTION]... [+FORMAT]`,options:[`-d, --date=STRING display time described by STRING, not 'now'`,`-u, --utc print Coordinated Universal Time (UTC)`,`-I, --iso-8601 output date/time in ISO 8601 format`,`-R, --rfc-email output RFC 5322 date format`,` --help display this help and exit`]},Hv={name:`date`,async execute(e,t){if(E(e))return T(Vv);let n=!1,r=null,i=null,a=!1,o=!1;for(let t=0;t<e.length;t++){let s=e[t];if(s===`-u`||s===`--utc`)n=!0;else if(s===`-d`||s===`--date`)r=e[++t]??``;else if(s.startsWith(`--date=`))r=s.slice(7);else if(s===`-I`||s===`--iso-8601`)a=!0;else if(s===`-R`||s===`--rfc-email`)o=!0;else if(s.startsWith(`+`))i=s.slice(1);else{if(s.startsWith(`--`))return D(`date`,s);if(s.startsWith(`-`))for(let e of s.slice(1))if(e===`u`)n=!0;else if(e===`I`)a=!0;else if(e===`R`)o=!0;else return D(`date`,`-${e}`)}}let s=t.env.get(`TZ`);s&&!Lv(s)&&(s=void 0);let c=n?`UTC`:s??`UTC`,l=r===null?new Date:Bv(r,s);if(!l)return{stdout:``,stderr:`date: invalid date '${r}'
655
+ `,exitCode:1};let u=Math.floor(l.getTime()/1e3),d;return d=ei(i||(a?`%Y-%m-%dT%H:%M:%S%z`:o?`%a, %d %b %Y %H:%M:%S %z`:`%a %b %e %H:%M:%S %Z %Y`),u,c),{stdout:`${d}
656
+ `,stderr:``,exitCode:0}}},Uv={name:`date`,flags:[{flag:`-d`,type:`value`,valueHint:`string`},{flag:`-u`,type:`boolean`},{flag:`-I`,type:`boolean`},{flag:`-R`,type:`boolean`}]}});function Gv(e){let t=e.match(/^(\d+\.?\d*)(s|m|h|d)?$/);if(!t)return null;let n=parseFloat(t[1]);switch(t[2]||`s`){case`s`:return n*1e3;case`m`:return n*60*1e3;case`h`:return n*60*60*1e3;case`d`:return n*24*60*60*1e3;default:return null}}var Kv=x(()=>{}),qv={};S(qv,{flagsForFuzzing:()=>Zv,sleepCommand:()=>Xv});var Jv,Yv,Xv,Zv,Qv=x(()=>{ir(),Kv(),O(),Jv={name:`sleep`,summary:`delay for a specified amount of time`,usage:`sleep NUMBER[SUFFIX]`,description:`Pause for NUMBER seconds. SUFFIX may be:
657
+ s - seconds (default)
658
+ m - minutes
659
+ h - hours
660
+ d - days
661
+
662
+ NUMBER may be a decimal number.`,options:[` --help display this help and exit`]},Yv=36e5,Xv={name:`sleep`,async execute(e,t){if(E(e))return T(Jv);if(e.length===0)return{stdout:``,stderr:`sleep: missing operand
663
+ `,exitCode:1};let n=0;for(let t of e){let e=Gv(t);if(e===null)return{stdout:``,stderr:`sleep: invalid time interval '${t}'
664
+ `,exitCode:1};n+=e}return n>Yv&&(n=Yv),t.signal?.aborted||(t.sleep?await t.sleep(n):t.signal?await new Promise(e=>{let r=()=>{rr(i),e()},i=nr(()=>{t.signal?.removeEventListener(`abort`,r),e()},n);t.signal?.addEventListener(`abort`,r,{once:!0})}):await new Promise(e=>nr(e,n))),{stdout:``,stderr:``,exitCode:0}}},Zv={name:`sleep`,flags:[],needsArgs:!0}}),$v={};S($v,{flagsForFuzzing:()=>ny,timeoutCommand:()=>ty});var ey,ty,ny,ry=x(()=>{w(),Qc(),ir(),Kv(),O(),ey={name:`timeout`,summary:`run a command with a time limit`,usage:`timeout [OPTION] DURATION COMMAND [ARG]...`,description:`Start COMMAND, and kill it if still running after DURATION.
665
+
666
+ DURATION is a number with optional suffix:
667
+ s - seconds (default)
668
+ m - minutes
669
+ h - hours
670
+ d - days`,options:[`-k, --kill-after=DURATION send KILL signal after DURATION if still running`,`-s, --signal=SIGNAL specify signal to send (default: TERM)`,` --preserve-status exit with same status as COMMAND, even on timeout`,` --foreground run command in foreground`,` --help display this help and exit`]},ty={name:`timeout`,async execute(e,t){if(E(e))return T(ey);let n=0;for(let t=0;t<e.length;t++){let r=e[t];if(r===`--preserve-status`)n=t+1;else if(r===`--foreground`)n=t+1;else if(r===`-k`||r===`--kill-after`)t++,n=t+1;else if(r.startsWith(`--kill-after=`))n=t+1;else if(r===`-s`||r===`--signal`)t++,n=t+1;else if(r.startsWith(`--signal=`))n=t+1;else{if(r.startsWith(`--`)&&r!==`--`)return D(`timeout`,r);if(r.startsWith(`-`)&&r.length>1&&r!==`--`)if(r.startsWith(`-k`))n=t+1;else if(r.startsWith(`-s`))n=t+1;else return D(`timeout`,r);else{n=t;break}}}let r=e.slice(n);if(r.length===0)return{stdout:``,stderr:`timeout: missing operand
671
+ `,exitCode:1};let i=r[0],a=Gv(i);if(a===null)return{stdout:``,stderr:`timeout: invalid time interval '${i}'
672
+ `,exitCode:1};let o=r.slice(1);if(o.length===0)return{stdout:``,stderr:`timeout: missing operand
673
+ `,exitCode:1};if(!t.exec)return{stdout:``,stderr:`timeout: exec not available
674
+ `,exitCode:1};let s=new AbortController,c;try{let e=new Promise(e=>{c=nr(()=>{s.abort(),e({timedOut:!0})},a)}),n=t.exec(Zc([o[0]]),{cwd:t.cwd,signal:s.signal,stdin:t.stdin,stdinKind:`bytes`,args:o.slice(1)}).then(e=>({timedOut:!1,result:e})),r=await Promise.race([e,n]);return r.timedOut?{stdout:``,stderr:``,exitCode:124}:r.result}finally{c!==void 0&&rr(c)}}},ny={name:`timeout`,flags:[{flag:`-k`,type:`value`,valueHint:`string`},{flag:`-s`,type:`value`,valueHint:`string`},{flag:`--preserve-status`,type:`boolean`},{flag:`--foreground`,type:`boolean`}],needsArgs:!0,minArgs:2}}),iy,ay,oy=x(()=>{globalThis.SharedArrayBuffer,globalThis.Atomics,iy=performance.now.bind(performance),ay=globalThis.Headers}),sy={};S(sy,{flagsForFuzzing:()=>uy,timeCommand:()=>ly});function cy(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return t>0?`${t}:${n.toString().padStart(2,`0`)}:${r.toFixed(2).padStart(5,`0`)}`:`${n}:${r.toFixed(2).padStart(5,`0`)}`}var ly,uy,dy=x(()=>{w(),Vi(),cu(),Qc(),oy(),ly={name:`time`,async execute(e,t){let n=`%e %M`,r=null,i=!1,a=!1,o=0;for(;o<e.length;){let t=e[o];if(t===`-f`||t===`--format`){if(o++,o>=e.length)return{stdout:``,stderr:`time: missing argument to '-f'
675
+ `,exitCode:1};n=e[o],o++}else if(t===`-o`||t===`--output`){if(o++,o>=e.length)return{stdout:``,stderr:`time: missing argument to '-o'
676
+ `,exitCode:1};r=e[o],o++}else if(t===`-a`||t===`--append`)i=!0,o++;else if(t===`-v`||t===`--verbose`)n=`Command being timed: %C
677
+ Elapsed (wall clock) time: %e seconds
678
+ Maximum resident set size (kbytes): %M`,o++;else if(t===`-p`||t===`--portability`)a=!0,o++;else if(t===`--`){o++;break}else if(t.startsWith(`-`))o++;else break}let s=e.slice(o);if(s.length===0)return{stdout:``,stderr:``,exitCode:0};let c=iy(),l=s.join(` `),u;try{if(!t.exec)return{stdout:``,stderr:`time: exec not available
679
+ `,exitCode:1};u=await t.exec(Zc([s[0]]),{env:au(t.env),cwd:t.cwd,stdin:t.stdin,stdinKind:`bytes`,signal:t.signal,args:s.slice(1)})}catch(e){u={stdout:``,stderr:`time: ${Bi(e.message)}
680
+ `,exitCode:127}}let d=(iy()-c)/1e3,f;if(a?f=`real ${d.toFixed(2)}
681
+ user 0.00
682
+ sys 0.00
683
+ `:(f=n.replace(/%e/g,d.toFixed(2)).replace(/%E/g,cy(d)).replace(/%M/g,`0`).replace(/%S/g,`0.00`).replace(/%U/g,`0.00`).replace(/%P/g,`0%`).replace(/%C/g,l),f.endsWith(`
684
+ `)||(f+=`
685
+ `)),r)try{let e=t.fs.resolvePath(t.cwd,r);if(i&&await t.fs.exists(e)){let n=await t.fs.readFile(e);await t.fs.writeFile(e,n+f)}else await t.fs.writeFile(e,f)}catch(e){let t=Bi(e.message);return{stdout:u.stdout,stderr:u.stderr+`time: cannot write to '${r}': ${t}
686
+ `,exitCode:u.exitCode}}else u={...u,stderr:u.stderr+f};return u}},uy={name:`time`,flags:[{flag:`-p`,type:`boolean`}],needsArgs:!0}}),fy={};S(fy,{flagsForFuzzing:()=>my,seqCommand:()=>py});var py,my,hy=x(()=>{py={name:`seq`,async execute(e){let t=`
687
+ `,n=!1,r=[],i=0;for(;i<e.length;){let a=e[i];if(a===`-s`&&i+1<e.length){t=e[i+1],i+=2;continue}if(a===`-w`){n=!0,i++;continue}if(a===`--`){i++;break}if(a.startsWith(`-`)&&a!==`-`){if(a.startsWith(`-s`)&&a.length>2){t=a.slice(2),i++;continue}if((a===`-ws`||a===`-sw`)&&(n=!0,i+1<e.length)){t=e[i+1],i+=2;continue}}r.push(a),i++}for(;i<e.length;)r.push(e[i]),i++;if(r.length===0)return{stdout:``,stderr:`seq: missing operand
688
+ `,exitCode:1};let a=1,o=1,s;if(r.length===1?s=parseFloat(r[0]):r.length===2?(a=parseFloat(r[0]),s=parseFloat(r[1])):(a=parseFloat(r[0]),o=parseFloat(r[1]),s=parseFloat(r[2])),Number.isNaN(a)||Number.isNaN(o)||Number.isNaN(s))return{stdout:``,stderr:`seq: invalid floating point argument: '${r.find(e=>Number.isNaN(parseFloat(e)))}'
689
+ `,exitCode:1};if(o===0)return{stdout:``,stderr:`seq: invalid Zero increment value: '0'
690
+ `,exitCode:1};let c=[],l=e=>{let t=String(e),n=t.indexOf(`.`);return n===-1?0:t.length-n-1},u=Math.max(l(a),l(o),l(s)),d=1e5,f=0;if(o>0)for(let e=a;e<=s+1e-10&&!(f++>d);e+=o)c.push(u>0?e.toFixed(u):String(Math.round(e)));else for(let e=a;e>=s-1e-10&&!(f++>d);e+=o)c.push(u>0?e.toFixed(u):String(Math.round(e)));if(n&&c.length>0){let e=Math.max(...c.map(e=>e.replace(`-`,``).length));for(let t=0;t<c.length;t++){let n=c[t].startsWith(`-`),r=(n?c[t].slice(1):c[t]).padStart(e,`0`);c[t]=n?`-${r}`:r}}let p=c.join(t);return{stdout:p?`${p}
691
+ `:``,stderr:``,exitCode:0}}},my={name:`seq`,flags:[{flag:`-s`,type:`value`,valueHint:`string`},{flag:`-w`,type:`boolean`}],needsArgs:!0}}),gy={};S(gy,{exprCommand:()=>vy,flagsForFuzzing:()=>yy});function _y(e){if(e.length===1)return e[0];let t=0;function n(){let n=r();for(;t<e.length&&e[t]===`|`;){t++;let e=r();if(n!==`0`&&n!==``)return n;n=e}return n}function r(){let n=i();for(;t<e.length&&e[t]===`&`;){t++;let e=i();(n===`0`||n===``||e===`0`||e===``)&&(n=`0`)}return n}function i(){let n=a();for(;t<e.length;){let r=e[t];if([`=`,`!=`,`<`,`>`,`<=`,`>=`].includes(r)){t++;let e=a(),i=parseInt(n,10),o=parseInt(e,10),s=!Number.isNaN(i)&&!Number.isNaN(o),c;c=r===`=`?s?i===o:n===e:r===`!=`?s?i!==o:n!==e:r===`<`?s?i<o:n<e:r===`>`?s?i>o:n>e:r===`<=`?s?i<=o:n<=e:s?i>=o:n>=e,n=c?`1`:`0`}else break}return n}function a(){let n=o();for(;t<e.length;){let r=e[t];if(r===`+`||r===`-`){t++;let e=o(),i=parseInt(n,10),a=parseInt(e,10);if(Number.isNaN(i)||Number.isNaN(a))throw Error(`non-integer argument`);n=String(r===`+`?i+a:i-a)}else break}return n}function o(){let n=s();for(;t<e.length;){let r=e[t];if(r===`*`||r===`/`||r===`%`){t++;let e=s(),i=parseInt(n,10),a=parseInt(e,10);if(Number.isNaN(i)||Number.isNaN(a))throw Error(`non-integer argument`);if((r===`/`||r===`%`)&&a===0)throw Error(`division by zero`);n=String(r===`*`?i*a:r===`/`?Math.trunc(i/a):i%a)}else break}return n}function s(){let n=c();for(;t<e.length&&e[t]===`:`;){t++;let e=z(`^${c()}`).match(n);n=e?e[1]===void 0?String(e[0].length):e[1]:`0`}return n}function c(){if(t>=e.length)throw Error(`syntax error`);let r=e[t];if(r===`match`){t++;let e=c(),n=z(c()).match(e);return n?n[1]===void 0?String(n[0].length):n[1]:`0`}if(r===`substr`){t++;let e=c(),n=parseInt(c(),10),r=parseInt(c(),10);if(Number.isNaN(n)||Number.isNaN(r))throw Error(`non-integer argument`);return e.substring(n-1,n-1+r)}if(r===`index`){t++;let e=c(),n=c();for(let t=0;t<e.length;t++)if(n.includes(e[t]))return String(t+1);return`0`}if(r===`length`){t++;let e=c();return String(e.length)}if(r===`(`){t++;let r=n();if(t>=e.length||e[t]!==`)`)throw Error(`syntax error`);return t++,r}return t++,r}return n()}var vy,yy,by=x(()=>{Vi(),ks(),vy={name:`expr`,async execute(e,t){if(e.length===0)return{stdout:``,stderr:`expr: missing operand
692
+ `,exitCode:2};try{let t=_y(e),n=+(t===`0`||t===``);return{stdout:`${t}
693
+ `,stderr:``,exitCode:n}}catch(e){return{stdout:``,stderr:`expr: ${Bi(e.message)}
694
+ `,exitCode:2}}}},yy={name:`expr`,flags:[],needsArgs:!0}});function xy(e){function t(e,t){return e<<t|e>>>32-t}let n=new Uint32Array([3614090360,3905402710,606105819,3250441966,4118548399,1200080426,2821735955,4249261313,1770035416,2336552879,4294925233,2304563134,1804603682,4254626195,2792965006,1236535329,4129170786,3225465664,643717713,3921069994,3593408605,38016083,3634488961,3889429448,568446438,3275163606,4107603335,1163531501,2850285829,4243563512,1735328473,2368359562,4294588738,2272392833,1839030562,4259657740,2763975236,1272893353,4139469664,3200236656,681279174,3936430074,3572445317,76029189,3654602809,3873151461,530742520,3299628645,4096336452,1126891415,2878612391,4237533241,1700485571,2399980690,4293915773,2240044497,1873313359,4264355552,2734768916,1309151649,4149444226,3174756917,718787259,3951481745]),r=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21],i=e.length*8,a=(e.length%64<56?56:120)-e.length%64,o=new Uint8Array(e.length+a+8);o.set(e),o[e.length]=128;let s=new DataView(o.buffer);s.setUint32(o.length-8,i>>>0,!0),s.setUint32(o.length-4,Math.floor(i/4294967296),!0);let c=1732584193,l=4023233417,u=2562383102,d=271733878;for(let e=0;e<o.length;e+=64){let i=new Uint32Array(16);for(let t=0;t<16;t++)i[t]=s.getUint32(e+t*4,!0);let a=c,o=l,f=u,p=d;for(let e=0;e<64;e++){let s,c;e<16?(s=o&f|~o&p,c=e):e<32?(s=p&o|~p&f,c=(5*e+1)%16):e<48?(s=o^f^p,c=(3*e+5)%16):(s=f^(o|~p),c=7*e%16),s=s+a+n[e]+i[c]>>>0,a=p,p=f,f=o,o=o+t(s,r[e])>>>0}c=c+a>>>0,l=l+o>>>0,u=u+f>>>0,d=d+p>>>0}let f=new Uint8Array(16);return new DataView(f.buffer).setUint32(0,c,!0),new DataView(f.buffer).setUint32(4,l,!0),new DataView(f.buffer).setUint32(8,u,!0),new DataView(f.buffer).setUint32(12,d,!0),Array.from(f).map(e=>e.toString(16).padStart(2,`0`)).join(``)}async function Sy(e,t){if(e===`md5`)return xy(t);let n=wy.get(e);if(!n)throw Error(`Unknown algorithm: ${e}`);let r=await globalThis.crypto.subtle.digest(n,new Uint8Array(t).buffer);return Array.from(new Uint8Array(r)).map(e=>e.toString(16).padStart(2,`0`)).join(``)}function Cy(e,t,n){let r={name:e,summary:n,usage:`${e} [OPTION]... [FILE]...`,options:[`-c, --check read checksums from FILEs and check them`,` --help display this help and exit`]};return{name:e,async execute(n,i){if(E(n))return T(r);let a=!1,o=[];for(let t of n)if(t===`-c`||t===`--check`)a=!0;else if(!(t===`-b`||t===`-t`||t===`--binary`||t===`--text`)){if(t.startsWith(`-`)&&t!==`-`)return D(e,t);o.push(t)}o.length===0&&o.push(`-`);let s=async e=>{if(e===`-`)return Uint8Array.from(i.stdin,e=>e.charCodeAt(0));try{return await i.fs.readFileBuffer(i.fs.resolvePath(i.cwd,e))}catch{return null}};if(a){let n=0,r=``;for(let a of o){let o=a===`-`?ur(i.stdin):await i.fs.readFile(i.fs.resolvePath(i.cwd,a)).catch(()=>null);if(o===null)return{stdout:``,stderr:`${e}: ${a}: No such file or directory
695
+ `,exitCode:1};for(let e of o.split(`
696
+ `)){let i=e.match(/^([a-fA-F0-9]+)\s+[* ]?(.+)$/);if(!i)continue;let[,a,o]=i,c=await s(o);if(c===null){r+=`${o}: FAILED open or read
697
+ `,n++;continue}let l=await Sy(t,c)===a.toLowerCase();r+=`${o}: ${l?`OK`:`FAILED`}
698
+ `,l||n++}}return n>0&&(r+=`${e}: WARNING: ${n} computed checksum${n>1?`s`:``} did NOT match
699
+ `),{stdout:r,stderr:``,exitCode:+(n>0)}}let c=``,l=0;for(let n of o){let r=await s(n);if(r===null){c+=`${e}: ${n}: No such file or directory
700
+ `,l=1;continue}c+=`${await Sy(t,r)} ${n}
701
+ `}return{stdout:c,stderr:``,exitCode:l}}}}var wy,Ty=x(()=>{w(),O(),wy=new Map([[`sha1`,`SHA-1`],[`sha256`,`SHA-256`]])}),Ey={};S(Ey,{flagsForFuzzing:()=>Oy,md5sumCommand:()=>Dy});var Dy,Oy,ky=x(()=>{Ty(),Dy=Cy(`md5sum`,`md5`,`compute MD5 message digest`),Oy={name:`md5sum`,flags:[{flag:`-c`,type:`boolean`}],needsFiles:!0}}),Ay={};S(Ay,{flagsForFuzzing:()=>My,sha1sumCommand:()=>jy});var jy,My,Ny=x(()=>{Ty(),jy=Cy(`sha1sum`,`sha1`,`compute SHA1 message digest`),My={name:`sha1sum`,flags:[{flag:`-c`,type:`boolean`}],needsFiles:!0}}),Py={};S(Py,{flagsForFuzzing:()=>Iy,sha256sumCommand:()=>Fy});var Fy,Iy,Ly=x(()=>{Ty(),Fy=Cy(`sha256sum`,`sha256`,`compute SHA256 message digest`),Iy={name:`sha256sum`,flags:[{flag:`-c`,type:`boolean`}],needsFiles:!0}}),Ry=Ln(e=>{e.read=function(e,t,n,r,i){var a,o,s=i*8-r-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=a*256+e[t+d],d+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=o*256+e[t+d],d+=f,u-=8);if(a===0)a=1-l;else{if(a===c)return o?NaN:(p?-1:1)*(1/0);o+=2**r,a-=l}return(p?-1:1)*o*2**(a-r)},e.write=function(e,t,n,r,i,a){var o,s,c,l=a*8-i-1,u=(1<<l)-1,d=u>>1,f=i===23?2**-24-2**-77:0,p=r?0:a-1,m=r?1:-1,h=+(t<0||t===0&&1/t<0);for(t=Math.abs(t),isNaN(t)||t===1/0?(s=+!!isNaN(t),o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=2**-o)<1&&(o--,c*=2),o+d>=1?t+=f/c:t+=f*2**(1-d),t*c>=2&&(o++,c/=2),o+d>=u?(s=0,o=u):o+d>=1?(s=(t*c-1)*2**i,o+=d):(s=t*2**(d-1)*2**i,o=0));i>=8;e[n+p]=s&255,p+=m,s/=256,i-=8);for(o=o<<i|s,l+=i;l>0;e[n+p]=o&255,p+=m,o/=256,l-=8);e[n+p-m]|=h*128}});function zy(){if(!(typeof globalThis.TextDecoder>`u`))return Zy??=new globalThis.TextDecoder(`utf-8`)}function By(e,t=`utf-8`){switch(t.toLowerCase()){case`utf-8`:case`utf8`:{let t=zy();return t?t.decode(e):Wy(e)}case`utf-16le`:return Gy(e);case`us-ascii`:case`ascii`:return Ky(e);case`latin1`:case`iso-8859-1`:return qy(e);case`windows-1252`:return Jy(e);default:throw RangeError(`Encoding '${t}' not supported`)}}function Vy(e,t){t.length!==0&&(e.push(String.fromCharCode.apply(null,t)),t.length=0)}function Hy(e,t,n){t.push(n),t.length>=Qy&&Vy(e,t)}function Uy(e,t,n){if(n<=65535){Hy(e,t,n);return}n-=65536,Hy(e,t,55296+(n>>10)),Hy(e,t,56320+(n&1023))}function Wy(e){let t=[],n=[],r=0;for(e.length>=3&&e[0]===239&&e[1]===187&&e[2]===191&&(r=3);r<e.length;){let i=e[r];if(i<=127){Hy(t,n,i),r++;continue}if(i<194||i>244){Hy(t,n,$y),r++;continue}if(i<=223){if(r+1>=e.length){Hy(t,n,$y),r++;continue}let a=e[r+1];if((a&192)!=128){Hy(t,n,$y),r++;continue}Hy(t,n,(i&31)<<6|a&63),r+=2;continue}if(i<=239){if(r+2>=e.length){Hy(t,n,$y),r++;continue}let a=e[r+1],o=e[r+2];if(!((a&192)==128&&(o&192)==128&&!(i===224&&a<160)&&!(i===237&&a>=160))){Hy(t,n,$y),r++;continue}Hy(t,n,(i&15)<<12|(a&63)<<6|o&63),r+=3;continue}if(r+3>=e.length){Hy(t,n,$y),r++;continue}let a=e[r+1],o=e[r+2],s=e[r+3];if(!((a&192)==128&&(o&192)==128&&(s&192)==128&&!(i===240&&a<144)&&!(i===244&&a>143))){Hy(t,n,$y),r++;continue}Uy(t,n,(i&7)<<18|(a&63)<<12|(o&63)<<6|s&63),r+=4}return Vy(t,n),t.join(``)}function Gy(e){let t=[],n=[],r=e.length,i=0;for(;i+1<r;){let a=e[i]|e[i+1]<<8;if(i+=2,a>=55296&&a<=56319){if(i+1<r){let r=e[i]|e[i+1]<<8;r>=56320&&r<=57343?(Hy(t,n,a),Hy(t,n,r),i+=2):Hy(t,n,$y)}else Hy(t,n,$y);continue}if(a>=56320&&a<=57343){Hy(t,n,$y);continue}Hy(t,n,a)}return i<r&&Hy(t,n,$y),Vy(t,n),t.join(``)}function Ky(e){let t=[];for(let n=0;n<e.length;n+=Qy){let r=Math.min(e.length,n+Qy),i=Array(r-n);for(let t=n,a=0;t<r;t++,a++)i[a]=e[t]&127;t.push(String.fromCharCode.apply(null,i))}return t.join(``)}function qy(e){let t=[];for(let n=0;n<e.length;n+=Qy){let r=Math.min(e.length,n+Qy),i=Array(r-n);for(let t=n,a=0;t<r;t++,a++)i[a]=e[t];t.push(String.fromCharCode.apply(null,i))}return t.join(``)}function Jy(e){let t=[],n=``;for(let r=0;r<e.length;r++){let i=e[r],a=i>=128&&i<=159?Yy[i]:void 0;n+=a??String.fromCharCode(i),n.length>=Qy&&(t.push(n),n=``)}return n&&t.push(n),t.join(``)}var Yy,Xy,Zy,Qy,$y,eb=x(()=>{Yy={128:`€`,130:`‚`,131:`ƒ`,132:`„`,133:`…`,134:`†`,135:`‡`,136:`ˆ`,137:`‰`,138:`Š`,139:`‹`,140:`Œ`,142:`Ž`,145:`‘`,146:`’`,147:`“`,148:`”`,149:`•`,150:`–`,151:`—`,152:`˜`,153:`™`,154:`š`,155:`›`,156:`œ`,158:`ž`,159:`Ÿ`},Xy={};for(let[e,t]of Object.entries(Yy))Xy[t]=Number.parseInt(e,10);Qy=32*1024,$y=65533});function tb(e){return new DataView(e.buffer,e.byteOffset)}var nb,rb,ib,ab,ob,sb,cb,lb,ub=x(()=>{zn(Ry(),1),eb(),nb={len:1,get(e,t){return tb(e).getUint8(t)},put(e,t,n){return tb(e).setUint8(t,n),t+1}},rb={len:2,get(e,t){return tb(e).getUint16(t,!0)},put(e,t,n){return tb(e).setUint16(t,n,!0),t+2}},ib={len:2,get(e,t){return tb(e).getUint16(t)},put(e,t,n){return tb(e).setUint16(t,n),t+2}},ab={len:4,get(e,t){return tb(e).getUint32(t,!0)},put(e,t,n){return tb(e).setUint32(t,n,!0),t+4}},ob={len:4,get(e,t){return tb(e).getUint32(t)},put(e,t,n){return tb(e).setUint32(t,n),t+4}},sb={len:4,get(e,t){return tb(e).getInt32(t)},put(e,t,n){return tb(e).setInt32(t,n),t+4}},cb={len:8,get(e,t){return tb(e).getBigUint64(t,!0)},put(e,t,n){return tb(e).setBigUint64(t,n,!0),t+8}},lb=class{constructor(e,t){this.len=e,this.encoding=t}get(e,t=0){return By(e.subarray(t,t+this.len),this.encoding)}}}),db,fb,pb,mb=x(()=>{db=`End-Of-Stream`,fb=class extends Error{constructor(){super(db),this.name=`EndOfStreamError`}},pb=class extends Error{constructor(e=`The operation was aborted`){super(e),this.name=`AbortError`}}}),hb=x(()=>{}),gb,_b=x(()=>{mb(),gb=class{constructor(){this.endOfStream=!1,this.interrupted=!1,this.peekQueue=[]}async peek(e,t=!1){let n=await this.read(e,t);return this.peekQueue.push(e.subarray(0,n)),n}async read(e,t=!1){if(e.length===0)return 0;let n=this.readFromPeekBuffer(e);if(this.endOfStream||(n+=await this.readRemainderFromStream(e.subarray(n),t)),n===0&&!t)throw new fb;return n}readFromPeekBuffer(e){let t=e.length,n=0;for(;this.peekQueue.length>0&&t>0;){let r=this.peekQueue.pop();if(!r)throw Error(`peekData should be defined`);let i=Math.min(r.length,t);e.set(r.subarray(0,i),n),n+=i,t-=i,i<r.length&&this.peekQueue.push(r.subarray(i))}return n}async readRemainderFromStream(e,t){let n=0;for(;n<e.length&&!this.endOfStream;){if(this.interrupted)throw new pb;let r=await this.readFromStream(e.subarray(n),t);if(r===0)break;n+=r}if(!t&&n<e.length)throw new fb;return n}}}),vb=x(()=>{mb(),hb(),_b()}),yb,bb=x(()=>{_b(),yb=class extends gb{constructor(e){super(),this.reader=e}async abort(){return this.close()}async close(){this.reader.releaseLock()}}}),xb,Sb=x(()=>{bb(),xb=class extends yb{async readFromStream(e,t){if(e.length===0)return 0;let n=await this.reader.read(new Uint8Array(e.length),{min:t?void 0:e.length});return n.done&&(this.endOfStream=n.done),n.value?(e.set(n.value),n.value.length):0}}}),Cb,wb=x(()=>{mb(),_b(),Cb=class extends gb{constructor(e){super(),this.reader=e,this.buffer=null}writeChunk(e,t){let n=Math.min(t.length,e.length);return e.set(t.subarray(0,n)),n<t.length?this.buffer=t.subarray(n):this.buffer=null,n}async readFromStream(e,t){if(e.length===0)return 0;let n=0;for(this.buffer&&(n+=this.writeChunk(e,this.buffer));n<e.length&&!this.endOfStream;){let t=await this.reader.read();if(t.done){this.endOfStream=!0;break}t.value&&(n+=this.writeChunk(e.subarray(n),t.value))}if(!t&&n===0&&this.endOfStream)throw new fb;return n}abort(){return this.interrupted=!0,this.reader.cancel()}async close(){await this.abort(),this.reader.releaseLock()}}});function Tb(e){try{let t=e.getReader({mode:`byob`});return t instanceof ReadableStreamDefaultReader?new Cb(t):new xb(t)}catch(t){if(t instanceof TypeError)return new Cb(e.getReader());throw t}}var Eb=x(()=>{Sb(),wb()}),Db=x(()=>{mb(),vb(),Sb(),wb(),Eb()}),Ob,kb=x(()=>{Db(),Ob=class{constructor(e){this.numBuffer=new Uint8Array(8),this.position=0,this.onClose=e?.onClose,e?.abortSignal&&e.abortSignal.addEventListener(`abort`,()=>{this.abort()})}async readToken(e,t=this.position){let n=new Uint8Array(e.len);if(await this.readBuffer(n,{position:t})<e.len)throw new fb;return e.get(n,0)}async peekToken(e,t=this.position){let n=new Uint8Array(e.len);if(await this.peekBuffer(n,{position:t})<e.len)throw new fb;return e.get(n,0)}async readNumber(e){if(await this.readBuffer(this.numBuffer,{length:e.len})<e.len)throw new fb;return e.get(this.numBuffer,0)}async peekNumber(e){if(await this.peekBuffer(this.numBuffer,{length:e.len})<e.len)throw new fb;return e.get(this.numBuffer,0)}async ignore(e){if(e<0)throw RangeError(`ignore length must be ≥ 0 bytes`);if(this.fileInfo.size!==void 0){let t=this.fileInfo.size-this.position;if(e>t)return this.position+=t,t}return this.position+=e,e}async close(){await this.abort(),await this.onClose?.()}normalizeOptions(e,t){if(!this.supportsRandomAccess()&&t&&t.position!==void 0&&t.position<this.position)throw Error("`options.position` must be equal or greater than `tokenizer.position`");return{mayBeLess:!1,offset:0,length:e.length,position:this.position,...t}}abort(){return Promise.resolve()}}}),Ab,jb,Mb=x(()=>{kb(),Db(),Ab=256e3,jb=class extends Ob{constructor(e,t){super(t),this.streamReader=e,this.fileInfo=t?.fileInfo??{}}async readBuffer(e,t){let n=this.normalizeOptions(e,t),r=n.position-this.position;if(r>0)return await this.ignore(r),this.readBuffer(e,t);if(r<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(n.length===0)return 0;let i=await this.streamReader.read(e.subarray(0,n.length),n.mayBeLess);if(this.position+=i,(!t||!t.mayBeLess)&&i<n.length)throw new fb;return i}async peekBuffer(e,t){let n=this.normalizeOptions(e,t),r=0;if(n.position){let t=n.position-this.position;if(t>0){let i=new Uint8Array(n.length+t);return r=await this.peekBuffer(i,{mayBeLess:n.mayBeLess}),e.set(i.subarray(t)),r-t}if(t<0)throw Error(`Cannot peek from a negative offset in a stream`)}if(n.length>0){try{r=await this.streamReader.peek(e.subarray(0,n.length),n.mayBeLess)}catch(e){if(t?.mayBeLess&&e instanceof fb)return 0;throw e}if(!n.mayBeLess&&r<n.length)throw new fb}return r}async ignore(e){if(e<0)throw RangeError(`ignore length must be ≥ 0 bytes`);let t=Math.min(Ab,e),n=new Uint8Array(t),r=0;for(;r<e;){let i=e-r,a=await this.readBuffer(n,{length:Math.min(t,i)});if(a<0)return a;r+=a}return r}abort(){return this.streamReader.abort()}async close(){return this.streamReader.close()}supportsRandomAccess(){return!1}}}),Nb,Pb=x(()=>{Db(),kb(),Nb=class extends Ob{constructor(e,t){super(t),this.uint8Array=e,this.fileInfo={...t?.fileInfo??{},size:e.length}}async readBuffer(e,t){t?.position&&(this.position=t.position);let n=await this.peekBuffer(e,t);return this.position+=n,n}async peekBuffer(e,t){let n=this.normalizeOptions(e,t),r=Math.min(this.uint8Array.length-n.position,n.length);if(!n.mayBeLess&&r<n.length)throw new fb;return e.set(this.uint8Array.subarray(n.position,n.position+r)),r}close(){return super.close()}supportsRandomAccess(){return!0}setPosition(e){this.position=e}}}),Fb,Ib=x(()=>{Db(),kb(),Fb=class extends Ob{constructor(e,t){super(t),this.blob=e,this.fileInfo={...t?.fileInfo??{},size:e.size,mimeType:e.type}}async readBuffer(e,t){t?.position&&(this.position=t.position);let n=await this.peekBuffer(e,t);return this.position+=n,n}async peekBuffer(e,t){let n=this.normalizeOptions(e,t),r=Math.min(this.blob.size-n.position,n.length);if(!n.mayBeLess&&r<n.length)throw new fb;let i=await this.blob.slice(n.position,n.position+r).arrayBuffer();return e.set(new Uint8Array(i)),r}close(){return super.close()}supportsRandomAccess(){return!0}setPosition(e){this.position=e}}});function Lb(e,t){let n=Tb(e),r=t??{},i=r.onClose;return r.onClose=async()=>{if(await n.close(),i)return i()},new jb(n,r)}function Rb(e,t){return new Nb(e,t)}function zb(e,t){return new Fb(e,t)}var Bb=x(()=>{Db(),Mb(),Pb(),Ib(),Db(),kb()}),Vb=Ln((e,t)=>{var n=1e3,r=n*60,i=r*60,a=i*24,o=a*7,s=a*365.25;t.exports=function(e,t){t||={};var n=typeof e;if(n===`string`&&e.length>0)return c(e);if(n===`number`&&isFinite(e))return t.long?u(e):l(e);throw Error(`val is not a non-empty string or a valid number. val=`+JSON.stringify(e))};function c(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var c=parseFloat(t[1]);switch((t[2]||`ms`).toLowerCase()){case`years`:case`year`:case`yrs`:case`yr`:case`y`:return c*s;case`weeks`:case`week`:case`w`:return c*o;case`days`:case`day`:case`d`:return c*a;case`hours`:case`hour`:case`hrs`:case`hr`:case`h`:return c*i;case`minutes`:case`minute`:case`mins`:case`min`:case`m`:return c*r;case`seconds`:case`second`:case`secs`:case`sec`:case`s`:return c*n;case`milliseconds`:case`millisecond`:case`msecs`:case`msec`:case`ms`:return c;default:return}}}}function l(e){var t=Math.abs(e);return t>=a?Math.round(e/a)+`d`:t>=i?Math.round(e/i)+`h`:t>=r?Math.round(e/r)+`m`:t>=n?Math.round(e/n)+`s`:e+`ms`}function u(e){var t=Math.abs(e);return t>=a?d(e,t,a,`day`):t>=i?d(e,t,i,`hour`):t>=r?d(e,t,r,`minute`):t>=n?d(e,t,n,`second`):e+` ms`}function d(e,t,n,r){var i=t>=n*1.5;return Math.round(e/n)+` `+r+(i?`s`:``)}}),Hb=Ln((e,t)=>{function n(e){n.debug=n,n.default=n,n.coerce=c,n.disable=o,n.enable=i,n.enabled=s,n.humanize=Vb(),n.destroy=l,Object.keys(e).forEach(t=>{n[t]=e[t]}),n.names=[],n.skips=[],n.formatters={};function t(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return n.colors[Math.abs(t)%n.colors.length]}n.selectColor=t;function n(e){let t,i=null,a,o;function s(...e){if(!s.enabled)return;let r=s,i=Number(new Date);r.diff=i-(t||i),r.prev=t,r.curr=i,t=i,e[0]=n.coerce(e[0]),typeof e[0]!=`string`&&e.unshift(`%O`);let a=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(t,i)=>{if(t===`%%`)return`%`;a++;let o=n.formatters[i];if(typeof o==`function`){let n=e[a];t=o.call(r,n),e.splice(a,1),a--}return t}),n.formatArgs.call(r,e),(r.log||n.log).apply(r,e)}return s.namespace=e,s.useColors=n.useColors(),s.color=n.selectColor(e),s.extend=r,s.destroy=n.destroy,Object.defineProperty(s,"enabled",{enumerable:!0,configurable:!1,get:()=>i===null?(a!==n.namespaces&&(a=n.namespaces,o=n.enabled(e)),o):i,set:e=>{i=e}}),typeof n.init==`function`&&n.init(s),s}function r(e,t){let r=n(this.namespace+(typeof t>`u`?`:`:t)+e);return r.log=this.log,r}function i(e){n.save(e),n.namespaces=e,n.names=[],n.skips=[];let t=(typeof e==`string`?e:``).trim().replace(/\s+/g,`,`).split(`,`).filter(Boolean);for(let e of t)e[0]===`-`?n.skips.push(e.slice(1)):n.names.push(e)}function a(e,t){let n=0,r=0,i=-1,a=0;for(;n<e.length;)if(r<t.length&&(t[r]===e[n]||t[r]===`*`))t[r]===`*`?(i=r,a=n,r++):(n++,r++);else if(i!==-1)r=i+1,a++,n=a;else return!1;for(;r<t.length&&t[r]===`*`;)r++;return r===t.length}function o(){let e=[...n.names,...n.skips.map(e=>`-`+e)].join(`,`);return n.enable(``),e}function s(e){for(let t of n.skips)if(a(e,t))return!1;for(let t of n.names)if(a(e,t))return!0;return!1}function c(e){return e instanceof Error?e.stack||e.message:e}function l(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return n.enable(n.load()),n}t.exports=n}),Ub=Ln((e,t)=>{e.formatArgs=r,e.save=i,e.load=a,e.useColors=n,e.storage=o(),e.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=`#0000CC.#0000FF.#0033CC.#0033FF.#0066CC.#0066FF.#0099CC.#0099FF.#00CC00.#00CC33.#00CC66.#00CC99.#00CCCC.#00CCFF.#3300CC.#3300FF.#3333CC.#3333FF.#3366CC.#3366FF.#3399CC.#3399FF.#33CC00.#33CC33.#33CC66.#33CC99.#33CCCC.#33CCFF.#6600CC.#6600FF.#6633CC.#6633FF.#66CC00.#66CC33.#9900CC.#9900FF.#9933CC.#9933FF.#99CC00.#99CC33.#CC0000.#CC0033.#CC0066.#CC0099.#CC00CC.#CC00FF.#CC3300.#CC3333.#CC3366.#CC3399.#CC33CC.#CC33FF.#CC6600.#CC6633.#CC9900.#CC9933.#CCCC00.#CCCC33.#FF0000.#FF0033.#FF0066.#FF0099.#FF00CC.#FF00FF.#FF3300.#FF3333.#FF3366.#FF3399.#FF33CC.#FF33FF.#FF6600.#FF6633.#FF9900.#FF9933.#FFCC00.#FFCC33`.split(`.`);function n(){if(typeof window<`u`&&window.process&&(window.process.type===`renderer`||window.process.__nwjs))return!0;if(typeof navigator<`u`&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<`u`&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<`u`&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<`u`&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<`u`&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function r(e){if(e[0]=(this.useColors?`%c`:``)+this.namespace+(this.useColors?` %c`:` `)+e[0]+(this.useColors?`%c `:` `)+`+`+t.exports.humanize(this.diff),!this.useColors)return;let n=`color: `+this.color;e.splice(1,0,n,`color: inherit`);let r=0,i=0;e[0].replace(/%[a-zA-Z%]/g,e=>{e!==`%%`&&(r++,e===`%c`&&(i=r))}),e.splice(i,0,n)}e.log=console.debug||console.log||(()=>{});function i(t){try{t?e.storage.setItem(`debug`,t):e.storage.removeItem(`debug`)}catch{}}function a(){let t;try{t=e.storage.getItem(`debug`)||e.storage.getItem(`DEBUG`)}catch{}return!t&&typeof process<`u`&&`env`in process&&(t={}.DEBUG),t}function o(){try{return localStorage}catch{}}t.exports=Hb()(e);var{formatters:s}=t.exports;s.j=function(e){try{return JSON.stringify(e)}catch(e){return`[UnexpectedJSONParseError]: `+e.message}}}),Wb,Gb,Kb,qb,Jb,Yb=x(()=>{ub(),Wb={LocalFileHeader:67324752,DataDescriptor:134695760,CentralFileHeader:33639248,EndOfCentralDirectory:101010256},Gb={get(e){return{signature:ab.get(e,0),compressedSize:ab.get(e,8),uncompressedSize:ab.get(e,12)}},len:16},Kb={get(e){let t=rb.get(e,6);return{signature:ab.get(e,0),minVersion:rb.get(e,4),dataDescriptor:!!(t&8),compressedMethod:rb.get(e,8),compressedSize:ab.get(e,18),uncompressedSize:ab.get(e,22),filenameLength:rb.get(e,26),extraFieldLength:rb.get(e,28),filename:null}},len:30},qb={get(e){return{signature:ab.get(e,0),nrOfThisDisk:rb.get(e,4),nrOfThisDiskWithTheStart:rb.get(e,6),nrOfEntriesOnThisDisk:rb.get(e,8),nrOfEntriesOfSize:rb.get(e,10),sizeOfCd:ab.get(e,12),offsetOfStartOfCd:ab.get(e,16),zipFileCommentLength:rb.get(e,20)}},len:22},Jb={get(e){let t=rb.get(e,8);return{signature:ab.get(e,0),minVersion:rb.get(e,6),dataDescriptor:!!(t&8),compressedMethod:rb.get(e,10),compressedSize:ab.get(e,20),uncompressedSize:ab.get(e,24),filenameLength:rb.get(e,28),extraFieldLength:rb.get(e,30),fileCommentLength:rb.get(e,32),relativeOffsetOfLocalHeader:ab.get(e,42),filename:null}},len:46}});function Xb(e){let t=new Uint8Array(ab.len);return ab.put(t,0,e),t}function Zb(e,t){let n=e.length,r=t.length;if(r>n)return-1;for(let i=0;i<=n-r;i++){let n=!0;for(let a=0;a<r;a++)if(e[i+a]!==t[a]){n=!1;break}if(n)return i}return-1}function Qb(e){let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}var $b,ex,tx,nx,rx,ix,ax=x(()=>{ub(),$b=zn(Ub(),1),Yb(),ex=(0,$b.default)(`tokenizer:inflate`),tx=256*1024,nx=Xb(Wb.DataDescriptor),rx=Xb(Wb.EndOfCentralDirectory),ix=class e{constructor(e){this.tokenizer=e,this.syncBuffer=new Uint8Array(tx)}async isZip(){return await this.peekSignature()===Wb.LocalFileHeader}peekSignature(){return this.tokenizer.peekToken(ab)}async findEndOfCentralDirectoryLocator(){let e=this.tokenizer,t=Math.min(16*1024,e.fileInfo.size),n=this.syncBuffer.subarray(0,t);await this.tokenizer.readBuffer(n,{position:e.fileInfo.size-t});for(let r=n.length-4;r>=0;r--)if(n[r]===rx[0]&&n[r+1]===rx[1]&&n[r+2]===rx[2]&&n[r+3]===rx[3])return e.fileInfo.size-t+r;return-1}async readCentralDirectory(){if(!this.tokenizer.supportsRandomAccess()){ex(`Cannot reading central-directory without random-read support`);return}ex(`Reading central-directory...`);let e=this.tokenizer.position,t=await this.findEndOfCentralDirectoryLocator();if(t>0){ex(`Central-directory 32-bit signature found`);let n=await this.tokenizer.readToken(qb,t),r=[];this.tokenizer.setPosition(n.offsetOfStartOfCd);for(let e=0;e<n.nrOfEntriesOfSize;++e){let t=await this.tokenizer.readToken(Jb);if(t.signature!==Wb.CentralFileHeader)throw Error(`Expected Central-File-Header signature`);t.filename=await this.tokenizer.readToken(new lb(t.filenameLength,`utf-8`)),await this.tokenizer.ignore(t.extraFieldLength),await this.tokenizer.ignore(t.fileCommentLength),r.push(t),ex(`Add central-directory file-entry: n=${e+1}/${r.length}: filename=${r[e].filename}`)}return this.tokenizer.setPosition(e),r}this.tokenizer.setPosition(e)}async unzip(e){let t=await this.readCentralDirectory();if(t)return this.iterateOverCentralDirectory(t,e);let n=!1;do{let t=await this.readLocalFileHeader();if(!t)break;let r=e(t);n=!!r.stop;let i;if(await this.tokenizer.ignore(t.extraFieldLength),t.dataDescriptor&&t.compressedSize===0){let e=[],n=tx;ex(`Compressed-file-size unknown, scanning for next data-descriptor-signature....`);let i=-1;for(;i<0&&n===tx;){n=await this.tokenizer.peekBuffer(this.syncBuffer,{mayBeLess:!0}),i=Zb(this.syncBuffer.subarray(0,n),nx);let t=i>=0?i:n;if(r.handler){let n=new Uint8Array(t);await this.tokenizer.readBuffer(n),e.push(n)}else await this.tokenizer.ignore(t)}ex(`Found data-descriptor-signature at pos=${this.tokenizer.position}`),r.handler&&await this.inflate(t,Qb(e),r.handler)}else r.handler?(ex(`Reading compressed-file-data: ${t.compressedSize} bytes`),i=new Uint8Array(t.compressedSize),await this.tokenizer.readBuffer(i),await this.inflate(t,i,r.handler)):(ex(`Ignoring compressed-file-data: ${t.compressedSize} bytes`),await this.tokenizer.ignore(t.compressedSize));if(ex(`Reading data-descriptor at pos=${this.tokenizer.position}`),t.dataDescriptor&&(await this.tokenizer.readToken(Gb)).signature!==134695760)throw Error(`Expected data-descriptor-signature at position ${this.tokenizer.position-Gb.len}`)}while(!n)}async iterateOverCentralDirectory(e,t){for(let n of e){let e=t(n);if(e.handler){this.tokenizer.setPosition(n.relativeOffsetOfLocalHeader);let t=await this.readLocalFileHeader();if(t){await this.tokenizer.ignore(t.extraFieldLength);let r=new Uint8Array(n.compressedSize);await this.tokenizer.readBuffer(r),await this.inflate(t,r,e.handler)}}if(e.stop)break}}async inflate(t,n,r){if(t.compressedMethod===0)return r(n);if(t.compressedMethod!==8)throw Error(`Unsupported ZIP compression method: ${t.compressedMethod}`);return ex(`Decompress filename=${t.filename}, compressed-size=${n.length}`),r(await e.decompressDeflateRaw(n))}static async decompressDeflateRaw(e){let t=new ReadableStream({start(t){t.enqueue(e),t.close()}}),n=new DecompressionStream(`deflate-raw`),r=t.pipeThrough(n);try{let e=await new Response(r).arrayBuffer();return new Uint8Array(e)}catch(e){let t=e instanceof Error?`Failed to deflate ZIP entry: ${e.message}`:`Unknown decompression error in ZIP entry`;throw TypeError(t)}}async readLocalFileHeader(){let e=await this.tokenizer.peekToken(ab);if(e===Wb.LocalFileHeader){let e=await this.tokenizer.readToken(Kb);return e.filename=await this.tokenizer.readToken(new lb(e.filenameLength,`utf-8`)),e}if(e===Wb.CentralFileHeader)return!1;throw Error(e===3759263696?`Encrypted ZIP`:`Unexpected signature`)}}}),ox,sx=x(()=>{ox=class{constructor(e){this.tokenizer=e}inflate(){let e=this.tokenizer;return new ReadableStream({async pull(t){let n=new Uint8Array(1024),r=await e.readBuffer(n,{mayBeLess:!0});if(r===0){t.close();return}t.enqueue(n.subarray(0,r))}}).pipeThrough(new DecompressionStream(`gzip`))}}}),cx=x(()=>{ax(),sx()});function lx(e){let{byteLength:t}=e;if(t===6)return e.getUint16(0)*2**32+e.getUint32(2);if(t===5)return e.getUint8(0)*2**32+e.getUint32(1);if(t===4)return e.getUint32(0);if(t===3)return e.getUint8(0)*2**16+e.getUint16(1);if(t===2)return e.getUint16(0);if(t===1)return e.getUint8(0)}var ux=x(()=>{new globalThis.TextDecoder(`utf8`),new globalThis.TextEncoder,Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`))});function dx(e,t){if(t===`utf-16le`){let t=[];for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t.push(r&255,r>>8&255)}return t}if(t===`utf-16be`){let t=[];for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t.push(r>>8&255,r&255)}return t}return[...e].map(e=>e.charCodeAt(0))}function fx(e,t=0){let n=Number.parseInt(new lb(6).get(e,148).replace(/\0.*$/,``).trim(),8);if(Number.isNaN(n))return!1;let r=256;for(let n=t;n<t+148;n++)r+=e[n];for(let n=t+156;n<t+512;n++)r+=e[n];return n===r}var px,mx=x(()=>{ub(),px={get:(e,t)=>e[t+3]&127|e[t+2]<<7|e[t+1]<<14|e[t]<<21,len:4}}),hx,gx,_x=x(()=>{hx=`jpg,png,apng,gif,webp,flif,xcf,cr2,cr3,orf,arw,dng,nef,rw2,raf,tif,bmp,icns,jxr,psd,indd,zip,tar,rar,gz,bz2,7z,dmg,mp4,mid,mkv,webm,mov,avi,mpg,mp2,mp3,m4a,oga,ogg,ogv,opus,flac,wav,spx,amr,pdf,epub,elf,macho,exe,swf,rtf,wasm,woff,woff2,eot,ttf,otf,ttc,ico,flv,ps,xz,sqlite,nes,crx,xpi,cab,deb,ar,rpm,Z,lz,cfb,mxf,mts,blend,bpg,docx,pptx,xlsx,3gp,3g2,j2c,jp2,jpm,jpx,mj2,aif,qcp,odt,ods,odp,xml,mobi,heic,cur,ktx,ape,wv,dcm,ics,glb,pcap,dsf,lnk,alias,voc,ac3,m4v,m4p,m4b,f4v,f4p,f4b,f4a,mie,asf,ogm,ogx,mpc,arrow,shp,aac,mp1,it,s3m,xm,skp,avif,eps,lzh,pgp,asar,stl,chm,3mf,zst,jxl,vcf,jls,pst,dwg,parquet,class,arj,cpio,ace,avro,icc,fbx,vsdx,vtt,apk,drc,lz4,potx,xltx,dotx,xltm,ott,ots,otp,odg,otg,xlsm,docm,dotm,potm,pptm,jar,jmp,rm,sav,ppsm,ppsx,tar.gz,reg,dat`.split(`,`),gx=`image/jpeg,image/png,image/gif,image/webp,image/flif,image/x-xcf,image/x-canon-cr2,image/x-canon-cr3,image/tiff,image/bmp,image/vnd.ms-photo,image/vnd.adobe.photoshop,application/x-indesign,application/epub+zip,application/x-xpinstall,application/vnd.ms-powerpoint.slideshow.macroenabled.12,application/vnd.oasis.opendocument.text,application/vnd.oasis.opendocument.spreadsheet,application/vnd.oasis.opendocument.presentation,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.presentationml.presentation,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.presentationml.slideshow,application/zip,application/x-tar,application/x-rar-compressed,application/gzip,application/x-bzip2,application/x-7z-compressed,application/x-apple-diskimage,application/vnd.apache.arrow.file,video/mp4,audio/midi,video/matroska,video/webm,video/quicktime,video/vnd.avi,audio/wav,audio/qcelp,audio/x-ms-asf,video/x-ms-asf,application/vnd.ms-asf,video/mpeg,video/3gpp,audio/mpeg,audio/mp4,video/ogg,audio/ogg,audio/ogg; codecs=opus,application/ogg,audio/flac,audio/ape,audio/wavpack,audio/amr,application/pdf,application/x-elf,application/x-mach-binary,application/x-msdownload,application/x-shockwave-flash,application/rtf,application/wasm,font/woff,font/woff2,application/vnd.ms-fontobject,font/ttf,font/otf,font/collection,image/x-icon,video/x-flv,application/postscript,application/eps,application/x-xz,application/x-sqlite3,application/x-nintendo-nes-rom,application/x-google-chrome-extension,application/vnd.ms-cab-compressed,application/x-deb,application/x-unix-archive,application/x-rpm,application/x-compress,application/x-lzip,application/x-cfb,application/x-mie,application/mxf,video/mp2t,application/x-blender,image/bpg,image/j2c,image/jp2,image/jpx,image/jpm,image/mj2,audio/aiff,application/xml,application/x-mobipocket-ebook,image/heif,image/heif-sequence,image/heic,image/heic-sequence,image/icns,image/ktx,application/dicom,audio/x-musepack,text/calendar,text/vcard,text/vtt,model/gltf-binary,application/vnd.tcpdump.pcap,audio/x-dsf,application/x.ms.shortcut,application/x.apple.alias,audio/x-voc,audio/vnd.dolby.dd-raw,audio/x-m4a,image/apng,image/x-olympus-orf,image/x-sony-arw,image/x-adobe-dng,image/x-nikon-nef,image/x-panasonic-rw2,image/x-fujifilm-raf,video/x-m4v,video/3gpp2,application/x-esri-shape,audio/aac,audio/x-it,audio/x-s3m,audio/x-xm,video/MP1S,video/MP2P,application/vnd.sketchup.skp,image/avif,application/x-lzh-compressed,application/pgp-encrypted,application/x-asar,model/stl,application/vnd.ms-htmlhelp,model/3mf,image/jxl,application/zstd,image/jls,application/vnd.ms-outlook,image/vnd.dwg,application/vnd.apache.parquet,application/java-vm,application/x-arj,application/x-cpio,application/x-ace-compressed,application/avro,application/vnd.iccprofile,application/x.autodesk.fbx,application/vnd.visio,application/vnd.android.package-archive,application/vnd.google.draco,application/x-lz4,application/vnd.openxmlformats-officedocument.presentationml.template,application/vnd.openxmlformats-officedocument.spreadsheetml.template,application/vnd.openxmlformats-officedocument.wordprocessingml.template,application/vnd.ms-excel.template.macroenabled.12,application/vnd.oasis.opendocument.text-template,application/vnd.oasis.opendocument.spreadsheet-template,application/vnd.oasis.opendocument.presentation-template,application/vnd.oasis.opendocument.graphics,application/vnd.oasis.opendocument.graphics-template,application/vnd.ms-excel.sheet.macroenabled.12,application/vnd.ms-word.document.macroenabled.12,application/vnd.ms-word.template.macroenabled.12,application/vnd.ms-powerpoint.template.macroenabled.12,application/vnd.ms-powerpoint.presentation.macroenabled.12,application/java-archive,application/vnd.rn-realmedia,application/x-spss-sav,application/x-ms-regedit,application/x-ft-windows-registry-hive,application/x-jmp-data`.split(`,`)});function vx(e){let t=e?.streamReader;if(t?.constructor?.name!==`WebStreamByobReader`)return e;let{reader:n}=t,r=async()=>{await n.cancel(),n.releaseLock()};return t.close=r,t.abort=async()=>{t.interrupted=!0,await r()},e}function yx(e,t,n){if(!Number.isFinite(e)||e<0||e>t)throw new yS(`${n} has invalid size ${e} (maximum ${t} bytes)`);return e}async function bx(e,t,{maximumLength:n=Zx,reason:r=`skip`}={}){let i=yx(t,n,r);await e.ignore(i)}async function xx(e,t,n,{maximumLength:r=t.length,reason:i=`read`}={}){let a=yx(n?.length??t.length,r,i);return e.readBuffer(t,{...n,length:a})}async function Sx(e,{maximumLength:t=Jx}={}){let n=new ReadableStream({start(t){t.enqueue(e),t.close()}}).pipeThrough(new DecompressionStream(`deflate-raw`)).getReader(),r=[],i=0;try{for(;;){let{done:e,value:a}=await n.read();if(e)break;if(i+=a.length,i>t)throw await n.cancel(),Error(`ZIP entry decompressed data exceeds ${t} bytes`);r.push(a)}}finally{n.releaseLock()}let a=new Uint8Array(i),o=0;for(let e of r)a.set(e,o),o+=e.length;return a}function Cx(e,t){if(e.length<xS)return-1;let n=e.length-xS;for(let r=0;r<=n;r++)if(ab.get(e,r)===bS&&ab.get(e,r+8)===t+r)return r;return-1}function wx(e){return(e.codePointAt(0)&32)!=0}function Tx(e,t){let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}async function Ex(e,{shouldBuffer:t,maximumLength:n=Jx}={}){let{syncBuffer:r}=e,{length:i}=r,a=[],o=0;for(;;){let s=await e.tokenizer.peekBuffer(r,{mayBeLess:!0}),c=Cx(r.subarray(0,s),o),l=c>=0?0:s===i?Math.min(SS,s-1):0,u=c>=0?c:s-l;if(u===0)break;if(o+=u,o>n)throw Error(`ZIP entry compressed data exceeds ${n} bytes`);if(t){let t=new Uint8Array(u);await e.tokenizer.readBuffer(t),a.push(t)}else await e.tokenizer.ignore(u);if(c>=0)break}if(Lx(e.tokenizer)||(e.knownSizeDescriptorScannedBytes+=o),t)return Tx(a,o)}function Dx(e,t){return Lx(e.tokenizer)?Math.max(0,Zx-(e.tokenizer.position-t)):Math.max(0,Jx-e.knownSizeDescriptorScannedBytes)}async function Ox(e,t,{shouldBuffer:n,maximumDescriptorLength:r=Jx}={}){if(t.dataDescriptor&&t.compressedSize===0)return Ex(e,{shouldBuffer:n,maximumLength:r});if(!n){await bx(e.tokenizer,t.compressedSize,{maximumLength:Lx(e.tokenizer)?Jx:e.tokenizer.fileInfo.size,reason:`ZIP entry compressed data`});return}let i=zx(e.tokenizer);if(!Number.isFinite(t.compressedSize)||t.compressedSize<0||t.compressedSize>i)throw Error(`ZIP entry compressed data exceeds ${i} bytes`);let a=new Uint8Array(t.compressedSize);return await e.tokenizer.readBuffer(a),a}function kx(e,t){let n=e.getReader(),r=0,i=!1,a=!1,o=async e=>{i||a||(a=!0,await n.cancel(e))};return new ReadableStream({async pull(e){if(r>=t){e.close(),await o();return}let{done:a,value:s}=await n.read();if(a||!s){i=!0,e.close();return}let c=t-r;if(s.length>c){e.enqueue(s.subarray(0,c)),r+=c,e.close(),await o();return}e.enqueue(s),r+=s.length},async cancel(e){await o(e)}})}async function Ax(e,t){return new CS(t).fromBuffer(e)}function jx(e){switch(e=e.toLowerCase(),e){case`application/epub+zip`:return{ext:`epub`,mime:e};case`application/vnd.oasis.opendocument.text`:return{ext:`odt`,mime:e};case`application/vnd.oasis.opendocument.text-template`:return{ext:`ott`,mime:e};case`application/vnd.oasis.opendocument.spreadsheet`:return{ext:`ods`,mime:e};case`application/vnd.oasis.opendocument.spreadsheet-template`:return{ext:`ots`,mime:e};case`application/vnd.oasis.opendocument.presentation`:return{ext:`odp`,mime:e};case`application/vnd.oasis.opendocument.presentation-template`:return{ext:`otp`,mime:e};case`application/vnd.oasis.opendocument.graphics`:return{ext:`odg`,mime:e};case`application/vnd.oasis.opendocument.graphics-template`:return{ext:`otg`,mime:e};case`application/vnd.openxmlformats-officedocument.presentationml.slideshow`:return{ext:`ppsx`,mime:e};case`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`:return{ext:`xlsx`,mime:e};case`application/vnd.ms-excel.sheet.macroenabled`:return{ext:`xlsm`,mime:`application/vnd.ms-excel.sheet.macroenabled.12`};case`application/vnd.openxmlformats-officedocument.spreadsheetml.template`:return{ext:`xltx`,mime:e};case`application/vnd.ms-excel.template.macroenabled`:return{ext:`xltm`,mime:`application/vnd.ms-excel.template.macroenabled.12`};case`application/vnd.ms-powerpoint.slideshow.macroenabled`:return{ext:`ppsm`,mime:`application/vnd.ms-powerpoint.slideshow.macroenabled.12`};case`application/vnd.openxmlformats-officedocument.wordprocessingml.document`:return{ext:`docx`,mime:e};case`application/vnd.ms-word.document.macroenabled`:return{ext:`docm`,mime:`application/vnd.ms-word.document.macroenabled.12`};case`application/vnd.openxmlformats-officedocument.wordprocessingml.template`:return{ext:`dotx`,mime:e};case`application/vnd.ms-word.template.macroenabledtemplate`:return{ext:`dotm`,mime:`application/vnd.ms-word.template.macroenabled.12`};case`application/vnd.openxmlformats-officedocument.presentationml.template`:return{ext:`potx`,mime:e};case`application/vnd.ms-powerpoint.template.macroenabled`:return{ext:`potm`,mime:`application/vnd.ms-powerpoint.template.macroenabled.12`};case`application/vnd.openxmlformats-officedocument.presentationml.presentation`:return{ext:`pptx`,mime:e};case`application/vnd.ms-powerpoint.presentation.macroenabled`:return{ext:`pptm`,mime:`application/vnd.ms-powerpoint.presentation.macroenabled.12`};case`application/vnd.ms-visio.drawing`:return{ext:`vsdx`,mime:`application/vnd.visio`};case`application/vnd.ms-package.3dmanufacturing-3dmodel+xml`:return{ext:`3mf`,mime:`model/3mf`};default:}}function Mx(e,t,n){n={offset:0,...n};for(let[r,i]of t.entries())if(n.mask){if(i!==(n.mask[r]&e[r+n.offset]))return!1}else if(i!==e[r+n.offset])return!1;return!0}function Nx(e){return Number.isFinite(e)?Math.max(1,Math.trunc(e)):Kx}function Px(e,t,n){return n===void 0?e.read(t):(n.throwIfAborted(),new Promise((r,i)=>{let a=()=>{n.removeEventListener(`abort`,o)},o=()=>{let t=n.reason;a(),(async()=>{try{await e.cancel(t)}catch{}})(),i(t)};n.addEventListener(`abort`,o,{once:!0}),(async()=>{try{let n=await e.read(t);a(),r(n)}catch(e){a(),i(e)}})()}))}function Fx(e){return Number.isFinite(e)?Math.max(0,Math.min(qx,Math.trunc(e))):0}function Ix(e){return Number.isFinite(e)?Math.max(0,e):2**53-1}function Lx(e){let t=e.fileInfo.size;return!Number.isFinite(t)||t===2**53-1}function Rx(e,t,n){return Lx(e)&&e.position-t>n}function zx(e){let t=e.fileInfo.size,n=Number.isFinite(t)?Math.max(0,t-e.position):2**53-1;return Math.min(n,Xx)}function Bx(e){if(e instanceof fb||e instanceof yS)return!0;if(!(e instanceof Error))return!1;if(gS.has(e.message)||vS.has(e.code))return!0;for(let t of _S)if(e.message.startsWith(t))return!0;return!1}function Vx(e,t=Jx){let n=[e.compressedSize,e.uncompressedSize];for(let e of n)if(!Number.isFinite(e)||e<0||e>t)return!1;return!0}function Hx(){return{hasContentTypesEntry:!1,hasParsedContentTypesEntry:!1,isParsingContentTypes:!1,hasUnparseableContentTypes:!1,hasWordDirectory:!1,hasPresentationDirectory:!1,hasSpreadsheetDirectory:!1,hasThreeDimensionalModelEntry:!1}}function Ux(e,t){t.startsWith(`word/`)&&(e.hasWordDirectory=!0),t.startsWith(`ppt/`)&&(e.hasPresentationDirectory=!0),t.startsWith(`xl/`)&&(e.hasSpreadsheetDirectory=!0),t.startsWith(`3D/`)&&t.endsWith(`.model`)&&(e.hasThreeDimensionalModelEntry=!0)}function Wx(e){if(!(!e.hasContentTypesEntry||e.hasUnparseableContentTypes||e.isParsingContentTypes||e.hasParsedContentTypesEntry)){if(e.hasWordDirectory)return{ext:`docx`,mime:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`};if(e.hasPresentationDirectory)return{ext:`pptx`,mime:`application/vnd.openxmlformats-officedocument.presentationml.presentation`};if(e.hasSpreadsheetDirectory)return{ext:`xlsx`,mime:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`};if(e.hasThreeDimensionalModelEntry)return{ext:`3mf`,mime:`model/3mf`}}}function Gx(e){let t=e.indexOf(`.main+xml"`);if(t===-1){let t=`application/vnd.ms-package.3dmanufacturing-3dmodel+xml`;return e.includes(`ContentType="${t}"`)?t:void 0}let n=e.slice(0,t),r=n.lastIndexOf(`"`);return n.slice(r+1)}var Kx,qx,Jx,Yx,Xx,Zx,Qx,$x,eS,tS,nS,rS,iS,aS,oS,sS,cS,lS,uS,dS,fS,pS,mS,hS,gS,_S,vS,yS,bS,xS,SS,CS,wS=x(()=>{ub(),Bb(),cx(),ux(),mx(),_x(),Kx=4100,qx=Kx-2,Jx=1024*1024,Yx=1024,Xx=2**31-1,Zx=16*1024*1024,Qx=Jx,$x=Jx,eS=Zx,tS=1,nS=100,rS=Zx,iS=64,aS=Qx,oS=256,sS=512,cS=Zx,lS=512,uS=512,dS=256,fS=Qx,pS=Qx,mS=Qx,hS=Zx,gS=new Set([`Unexpected signature`,`Encrypted ZIP`,`Expected Central-File-Header signature`]),_S=[`ZIP entry count exceeds `,`Unsupported ZIP compression method:`,`ZIP entry compressed data exceeds `,`ZIP entry decompressed data exceeds `,`Expected data-descriptor-signature at position `],vS=new Set([`Z_BUF_ERROR`,`Z_DATA_ERROR`,`ERR_INVALID_STATE`]),yS=class extends Error{},bS=134695760,xS=16,SS=xS-1,ix.prototype.inflate=async function(e,t,n){if(e.compressedMethod===0)return n(t);if(e.compressedMethod!==8)throw Error(`Unsupported ZIP compression method: ${e.compressedMethod}`);return n(await Sx(t,{maximumLength:Jx}))},ix.prototype.unzip=async function(e){let t=!1,n=0,r=this.tokenizer.position;this.knownSizeDescriptorScannedBytes=0;do{if(Rx(this.tokenizer,r,Zx))throw new yS(`ZIP stream probing exceeds ${Zx} bytes`);let i=await this.readLocalFileHeader();if(!i)break;if(n++,n>Yx)throw Error(`ZIP entry count exceeds ${Yx}`);let a=e(i);t=!!a.stop,await this.tokenizer.ignore(i.extraFieldLength);let o=await Ox(this,i,{shouldBuffer:!!a.handler,maximumDescriptorLength:Math.min(Jx,Dx(this,r))});if(a.handler&&await this.inflate(i,o,a.handler),i.dataDescriptor){let e=new Uint8Array(xS);if(await this.tokenizer.readBuffer(e),ab.get(e,0)!==bS)throw Error(`Expected data-descriptor-signature at position ${this.tokenizer.position-e.length}`)}if(Rx(this.tokenizer,r,Zx))throw new yS(`ZIP stream probing exceeds ${Zx} bytes`)}while(!t)},CS=class e{constructor(e){let t=Fx(e?.mpegOffsetTolerance);this.options={...e,mpegOffsetTolerance:t},this.detectors=[...this.options.customDetectors??[],{id:`core`,detect:this.detectConfident},{id:`core.imprecise`,detect:this.detectImprecise}],this.tokenizerOptions={abortSignal:this.options.signal},this.gzipProbeDepth=0}getTokenizerOptions(){return{...this.tokenizerOptions}}createTokenizerFromWebStream(e){return vx(Lb(e,this.getTokenizerOptions()))}async parseTokenizer(e,t=0){this.detectionReentryCount=t;let n=e.position;for(let t of this.detectors){let r;try{r=await t.detect(e)}catch(e){if(e instanceof fb||e instanceof yS)return;throw e}if(r)return r;if(n!==e.position)return}}async fromTokenizer(e){try{return await this.parseTokenizer(e)}finally{await e.close()}}async fromBuffer(e){if(!(e instanceof Uint8Array||e instanceof ArrayBuffer))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof e}\``);let t=e instanceof Uint8Array?e:new Uint8Array(e);if(t?.length>1)return this.fromTokenizer(Rb(t,this.getTokenizerOptions()))}async fromBlob(e){this.options.signal?.throwIfAborted();let t=zb(e,this.getTokenizerOptions());return this.fromTokenizer(t)}async fromStream(e){this.options.signal?.throwIfAborted();let t=this.createTokenizerFromWebStream(e);return this.fromTokenizer(t)}async toDetectionStream(e,t){let n=Nx(t?.sampleSize??Kx),r,i,a=e.getReader({mode:`byob`});try{let{value:e,done:t}=await Px(a,new Uint8Array(n),this.options.signal);if(i=e,!t&&e)try{r=await this.fromBuffer(e.subarray(0,n))}catch(e){if(!(e instanceof fb))throw e;r=void 0}i=e}finally{a.releaseLock()}let o=new TransformStream({async start(e){e.enqueue(i)},transform(e,t){t.enqueue(e)}}),s=e.pipeThrough(o);return s.fileType=r,s}async detectGzip(t){if(this.gzipProbeDepth>=tS)return{ext:`gz`,mime:`application/gzip`};let n=kx(new ox(t).inflate(),eS),r=Lx(t),i,a,o,s;if(r){let t=new AbortController;i=setTimeout(()=>{t.abort(new DOMException(`Operation timed out after ${nS} ms`,`TimeoutError`))},nS),a=this.options.signal===void 0?t.signal:AbortSignal.any([this.options.signal,t.signal]),o=new e({...this.options,signal:a}),o.gzipProbeDepth=this.gzipProbeDepth+1}else this.gzipProbeDepth++;try{s=await(o??this).fromStream(n)}catch(e){if(e?.name===`AbortError`&&a?.reason?.name!==`TimeoutError`)throw e}finally{clearTimeout(i),r||this.gzipProbeDepth--}return s?.ext===`tar`?{ext:`tar.gz`,mime:`application/gzip`}:{ext:`gz`,mime:`application/gzip`}}check(e,t){return Mx(this.buffer,e,t)}checkString(e,t){return this.check(dx(e,t?.encoding),t)}detectConfident=async e=>{if(this.buffer=new Uint8Array(Kx),e.fileInfo.size===void 0&&(e.fileInfo.size=2**53-1),this.tokenizer=e,Lx(e)&&(await e.peekBuffer(this.buffer,{length:3,mayBeLess:!0}),this.check([31,139,8])))return this.detectGzip(e);if(await e.peekBuffer(this.buffer,{length:32,mayBeLess:!0}),this.check([66,77]))return{ext:`bmp`,mime:`image/bmp`};if(this.check([11,119]))return{ext:`ac3`,mime:`audio/vnd.dolby.dd-raw`};if(this.check([120,1]))return{ext:`dmg`,mime:`application/x-apple-diskimage`};if(this.check([77,90]))return{ext:`exe`,mime:`application/x-msdownload`};if(this.check([37,33]))return await e.peekBuffer(this.buffer,{length:24,mayBeLess:!0}),this.checkString(`PS-Adobe-`,{offset:2})&&this.checkString(` EPSF-`,{offset:14})?{ext:`eps`,mime:`application/eps`}:{ext:`ps`,mime:`application/postscript`};if(this.check([31,160])||this.check([31,157]))return{ext:`Z`,mime:`application/x-compress`};if(this.check([199,113]))return{ext:`cpio`,mime:`application/x-cpio`};if(this.check([96,234]))return{ext:`arj`,mime:`application/x-arj`};if(this.check([239,187,191]))return this.detectionReentryCount>=dS?void 0:(this.detectionReentryCount++,await this.tokenizer.ignore(3),this.detectConfident(e));if(this.check([71,73,70]))return{ext:`gif`,mime:`image/gif`};if(this.check([73,73,188]))return{ext:`jxr`,mime:`image/vnd.ms-photo`};if(this.check([31,139,8]))return this.detectGzip(e);if(this.check([66,90,104]))return{ext:`bz2`,mime:`application/x-bzip2`};if(this.checkString(`ID3`)){await bx(e,6,{maximumLength:6,reason:`ID3 header prefix`});let t=await e.readToken(px),n=Lx(e);if(!Number.isFinite(t)||t<0||n&&(t>rS||e.position+t>rS))return;if(e.position+t>e.fileInfo.size)return n?void 0:{ext:`mp3`,mime:`audio/mpeg`};try{await bx(e,t,{maximumLength:n?rS:e.fileInfo.size,reason:`ID3 payload`})}catch(e){if(e instanceof fb)return;throw e}return this.detectionReentryCount>=dS?void 0:(this.detectionReentryCount++,this.parseTokenizer(e,this.detectionReentryCount))}if(this.checkString(`MP+`))return{ext:`mpc`,mime:`audio/x-musepack`};if((this.buffer[0]===67||this.buffer[0]===70)&&this.check([87,83],{offset:1}))return{ext:`swf`,mime:`application/x-shockwave-flash`};if(this.check([255,216,255]))return this.check([247],{offset:3})?{ext:`jls`,mime:`image/jls`}:{ext:`jpg`,mime:`image/jpeg`};if(this.check([79,98,106,1]))return{ext:`avro`,mime:`application/avro`};if(this.checkString(`FLIF`))return{ext:`flif`,mime:`image/flif`};if(this.checkString(`8BPS`))return{ext:`psd`,mime:`image/vnd.adobe.photoshop`};if(this.checkString(`MPCK`))return{ext:`mpc`,mime:`audio/x-musepack`};if(this.checkString(`FORM`))return{ext:`aif`,mime:`audio/aiff`};if(this.checkString(`icns`,{offset:0}))return{ext:`icns`,mime:`image/icns`};if(this.check([80,75,3,4])){let t,n=Hx();try{await new ix(e).unzip(e=>{Ux(n,e.filename);let r=e.filename===`[Content_Types].xml`,i=Wx(n);if(!r&&i)return t=i,{stop:!0};switch(e.filename){case`META-INF/mozilla.rsa`:return t={ext:`xpi`,mime:`application/x-xpinstall`},{stop:!0};case`META-INF/MANIFEST.MF`:return t={ext:`jar`,mime:`application/java-archive`},{stop:!0};case`mimetype`:return Vx(e,$x)?{async handler(e){t=jx(new TextDecoder(`utf-8`).decode(e).trim())},stop:!0}:{};case`[Content_Types].xml`:return n.hasContentTypesEntry=!0,Vx(e,$x)?(n.isParsingContentTypes=!0,{async handler(e){let r=Gx(new TextDecoder(`utf-8`).decode(e));r&&(t=jx(r)),n.hasParsedContentTypesEntry=!0,n.isParsingContentTypes=!1},stop:!0}):(n.hasUnparseableContentTypes=!0,{});default:return/classes\d*\.dex/.test(e.filename)?(t={ext:`apk`,mime:`application/vnd.android.package-archive`},{stop:!0}):{}}})}catch(e){if(!Bx(e))throw e;n.isParsingContentTypes&&(n.isParsingContentTypes=!1,n.hasUnparseableContentTypes=!0)}return t??Wx(n)??{ext:`zip`,mime:`application/zip`}}if(this.checkString(`OggS`)){await e.ignore(28);let t=new Uint8Array(8);return await e.readBuffer(t),Mx(t,[79,112,117,115,72,101,97,100])?{ext:`opus`,mime:`audio/ogg; codecs=opus`}:Mx(t,[128,116,104,101,111,114,97])?{ext:`ogv`,mime:`video/ogg`}:Mx(t,[1,118,105,100,101,111,0])?{ext:`ogm`,mime:`video/ogg`}:Mx(t,[127,70,76,65,67])?{ext:`oga`,mime:`audio/ogg`}:Mx(t,[83,112,101,101,120,32,32])?{ext:`spx`,mime:`audio/ogg`}:Mx(t,[1,118,111,114,98,105,115])?{ext:`ogg`,mime:`audio/ogg`}:{ext:`ogx`,mime:`application/ogg`}}if(this.check([80,75])&&(this.buffer[2]===3||this.buffer[2]===5||this.buffer[2]===7)&&(this.buffer[3]===4||this.buffer[3]===6||this.buffer[3]===8))return{ext:`zip`,mime:`application/zip`};if(this.checkString(`MThd`))return{ext:`mid`,mime:`audio/midi`};if(this.checkString(`wOFF`)&&(this.check([0,1,0,0],{offset:4})||this.checkString(`OTTO`,{offset:4})))return{ext:`woff`,mime:`font/woff`};if(this.checkString(`wOF2`)&&(this.check([0,1,0,0],{offset:4})||this.checkString(`OTTO`,{offset:4})))return{ext:`woff2`,mime:`font/woff2`};if(this.check([212,195,178,161])||this.check([161,178,195,212]))return{ext:`pcap`,mime:`application/vnd.tcpdump.pcap`};if(this.checkString(`DSD `))return{ext:`dsf`,mime:`audio/x-dsf`};if(this.checkString(`LZIP`))return{ext:`lz`,mime:`application/x-lzip`};if(this.checkString(`fLaC`))return{ext:`flac`,mime:`audio/flac`};if(this.check([66,80,71,251]))return{ext:`bpg`,mime:`image/bpg`};if(this.checkString(`wvpk`))return{ext:`wv`,mime:`audio/wavpack`};if(this.checkString(`%PDF`))return{ext:`pdf`,mime:`application/pdf`};if(this.check([0,97,115,109]))return{ext:`wasm`,mime:`application/wasm`};if(this.check([73,73])){let e=await this.readTiffHeader(!1);if(e)return e}if(this.check([77,77])){let e=await this.readTiffHeader(!0);if(e)return e}if(this.checkString(`MAC `))return{ext:`ape`,mime:`audio/ape`};if(this.check([26,69,223,163])){async function t(){let t=await e.peekNumber(nb),n=128,r=0;for(;(t&n)===0&&n!==0;)++r,n>>=1;let i=new Uint8Array(r+1);return await xx(e,i,void 0,{maximumLength:i.length,reason:`EBML field`}),i}async function n(){let e=await t(),n=await t();n[0]^=128>>n.length-1;let r=Math.min(6,n.length),i=new DataView(e.buffer),a=new DataView(n.buffer,n.length-r,r);return{id:lx(i),len:lx(a)}}async function r(t){let r=0;for(;t>0;){if(r++,r>oS||Rx(e,a,Zx))return;let i=e.position,o=await n();if(o.id===17026){if(o.len>iS)return;let t=yx(o.len,iS,`EBML DocType`);return(await e.readToken(new lb(t))).replaceAll(/\00.*$/g,``)}if(Lx(e)&&(!Number.isFinite(o.len)||o.len<0||o.len>aS)||(await bx(e,o.len,{maximumLength:Lx(e)?aS:e.fileInfo.size,reason:`EBML payload`}),--t,e.position<=i))return}}let i=await n(),a=e.position;switch(await r(i.len)){case`webm`:return{ext:`webm`,mime:`video/webm`};case`matroska`:return{ext:`mkv`,mime:`video/matroska`};default:return}}if(this.checkString(`SQLi`))return{ext:`sqlite`,mime:`application/x-sqlite3`};if(this.check([78,69,83,26]))return{ext:`nes`,mime:`application/x-nintendo-nes-rom`};if(this.checkString(`Cr24`))return{ext:`crx`,mime:`application/x-google-chrome-extension`};if(this.checkString(`MSCF`)||this.checkString(`ISc(`))return{ext:`cab`,mime:`application/vnd.ms-cab-compressed`};if(this.check([237,171,238,219]))return{ext:`rpm`,mime:`application/x-rpm`};if(this.check([197,208,211,198]))return{ext:`eps`,mime:`application/eps`};if(this.check([40,181,47,253]))return{ext:`zst`,mime:`application/zstd`};if(this.check([127,69,76,70]))return{ext:`elf`,mime:`application/x-elf`};if(this.check([33,66,68,78]))return{ext:`pst`,mime:`application/vnd.ms-outlook`};if(this.checkString(`PAR1`)||this.checkString(`PARE`))return{ext:`parquet`,mime:`application/vnd.apache.parquet`};if(this.checkString(`ttcf`))return{ext:`ttc`,mime:`font/collection`};if(this.check([254,237,250,206])||this.check([254,237,250,207])||this.check([206,250,237,254])||this.check([207,250,237,254]))return{ext:`macho`,mime:`application/x-mach-binary`};if(this.check([4,34,77,24]))return{ext:`lz4`,mime:`application/x-lz4`};if(this.checkString(`regf`))return{ext:`dat`,mime:`application/x-ft-windows-registry-hive`};if(this.checkString(`$FL2`)||this.checkString(`$FL3`))return{ext:`sav`,mime:`application/x-spss-sav`};if(this.check([79,84,84,79,0]))return{ext:`otf`,mime:`font/otf`};if(this.checkString(`#!AMR`))return{ext:`amr`,mime:`audio/amr`};if(this.checkString(`{\\rtf`))return{ext:`rtf`,mime:`application/rtf`};if(this.check([70,76,86,1]))return{ext:`flv`,mime:`video/x-flv`};if(this.checkString(`IMPM`))return{ext:`it`,mime:`audio/x-it`};if(this.checkString(`-lh0-`,{offset:2})||this.checkString(`-lh1-`,{offset:2})||this.checkString(`-lh2-`,{offset:2})||this.checkString(`-lh3-`,{offset:2})||this.checkString(`-lh4-`,{offset:2})||this.checkString(`-lh5-`,{offset:2})||this.checkString(`-lh6-`,{offset:2})||this.checkString(`-lh7-`,{offset:2})||this.checkString(`-lzs-`,{offset:2})||this.checkString(`-lz4-`,{offset:2})||this.checkString(`-lz5-`,{offset:2})||this.checkString(`-lhd-`,{offset:2}))return{ext:`lzh`,mime:`application/x-lzh-compressed`};if(this.check([0,0,1,186])){if(this.check([33],{offset:4,mask:[241]}))return{ext:`mpg`,mime:`video/MP1S`};if(this.check([68],{offset:4,mask:[196]}))return{ext:`mpg`,mime:`video/MP2P`}}if(this.checkString(`ITSF`))return{ext:`chm`,mime:`application/vnd.ms-htmlhelp`};if(this.check([202,254,186,190])){let e=ob.get(this.buffer,4),t=ib.get(this.buffer,6);if(e>0&&e<=30)return{ext:`macho`,mime:`application/x-mach-binary`};if(t>30)return{ext:`class`,mime:`application/java-vm`}}if(this.checkString(`.RMF`))return{ext:`rm`,mime:`application/vnd.rn-realmedia`};if(this.checkString(`DRACO`))return{ext:`drc`,mime:`application/vnd.google.draco`};if(this.check([253,55,122,88,90,0]))return{ext:`xz`,mime:`application/x-xz`};if(this.checkString(`<?xml `))return{ext:`xml`,mime:`application/xml`};if(this.check([55,122,188,175,39,28]))return{ext:`7z`,mime:`application/x-7z-compressed`};if(this.check([82,97,114,33,26,7])&&(this.buffer[6]===0||this.buffer[6]===1))return{ext:`rar`,mime:`application/x-rar-compressed`};if(this.checkString(`solid `))return{ext:`stl`,mime:`model/stl`};if(this.checkString(`AC`)){let e=new lb(4,`latin1`).get(this.buffer,2);if(e.match(`^d*`)&&e>=1e3&&e<=1050)return{ext:`dwg`,mime:`image/vnd.dwg`}}if(this.checkString(`070707`))return{ext:`cpio`,mime:`application/x-cpio`};if(this.checkString(`BLENDER`))return{ext:`blend`,mime:`application/x-blender`};if(this.checkString(`!<arch>`))return await e.ignore(8),await e.readToken(new lb(13,`ascii`))===`debian-binary`?{ext:`deb`,mime:`application/x-deb`}:{ext:`ar`,mime:`application/x-unix-archive`};if(this.checkString(`WEBVTT`)&&[`
702
+ `,`\r`,` `,` `,`\0`].some(e=>this.checkString(e,{offset:6})))return{ext:`vtt`,mime:`text/vtt`};if(this.check([137,80,78,71,13,10,26,10])){let t={ext:`png`,mime:`image/png`},n={ext:`apng`,mime:`image/apng`};await e.ignore(8);async function r(){return{length:await e.readToken(sb),type:await e.readToken(new lb(4,`latin1`))}}let i=Lx(e),a=e.position,o=0,s=!1;do{if(o++,o>sS||Rx(e,a,cS))break;let c=e.position,l=await r();if(l.length<0)return;if(l.type===`IHDR`){if(l.length!==13)return;s=!0}switch(l.type){case`IDAT`:return t;case`acTL`:return n;default:if(!s&&l.type!==`CgBI`)return;if(i&&l.length>fS)return s&&wx(l.type)?t:void 0;try{await bx(e,l.length+4,{maximumLength:i?fS+4:e.fileInfo.size,reason:`PNG chunk payload`})}catch(e){if(!i&&(e instanceof yS||e instanceof fb))return t;throw e}}if(e.position<=c)break}while(e.position+8<e.fileInfo.size);return t}if(this.check([65,82,82,79,87,49,0,0]))return{ext:`arrow`,mime:`application/vnd.apache.arrow.file`};if(this.check([103,108,84,70,2,0,0,0]))return{ext:`glb`,mime:`model/gltf-binary`};if(this.check([102,114,101,101],{offset:4})||this.check([109,100,97,116],{offset:4})||this.check([109,111,111,118],{offset:4})||this.check([119,105,100,101],{offset:4}))return{ext:`mov`,mime:`video/quicktime`};if(this.check([73,73,82,79,8,0,0,0,24]))return{ext:`orf`,mime:`image/x-olympus-orf`};if(this.checkString(`gimp xcf `))return{ext:`xcf`,mime:`image/x-xcf`};if(this.checkString(`ftyp`,{offset:4})&&this.buffer[8]&96){let e=new lb(4,`latin1`).get(this.buffer,8).replace(`\0`,` `).trim();switch(e){case`avif`:case`avis`:return{ext:`avif`,mime:`image/avif`};case`mif1`:return{ext:`heic`,mime:`image/heif`};case`msf1`:return{ext:`heic`,mime:`image/heif-sequence`};case`heic`:case`heix`:return{ext:`heic`,mime:`image/heic`};case`hevc`:case`hevx`:return{ext:`heic`,mime:`image/heic-sequence`};case`qt`:return{ext:`mov`,mime:`video/quicktime`};case`M4V`:case`M4VH`:case`M4VP`:return{ext:`m4v`,mime:`video/x-m4v`};case`M4P`:return{ext:`m4p`,mime:`video/mp4`};case`M4B`:return{ext:`m4b`,mime:`audio/mp4`};case`M4A`:return{ext:`m4a`,mime:`audio/x-m4a`};case`F4V`:return{ext:`f4v`,mime:`video/mp4`};case`F4P`:return{ext:`f4p`,mime:`video/mp4`};case`F4A`:return{ext:`f4a`,mime:`audio/mp4`};case`F4B`:return{ext:`f4b`,mime:`audio/mp4`};case`crx`:return{ext:`cr3`,mime:`image/x-canon-cr3`};default:return e.startsWith(`3g`)?e.startsWith(`3g2`)?{ext:`3g2`,mime:`video/3gpp2`}:{ext:`3gp`,mime:`video/3gpp`}:{ext:`mp4`,mime:`video/mp4`}}}if(this.checkString(`REGEDIT4\r
703
+ `))return{ext:`reg`,mime:`application/x-ms-regedit`};if(this.check([82,73,70,70])){if(this.checkString(`WEBP`,{offset:8}))return{ext:`webp`,mime:`image/webp`};if(this.check([65,86,73],{offset:8}))return{ext:`avi`,mime:`video/vnd.avi`};if(this.check([87,65,86,69],{offset:8}))return{ext:`wav`,mime:`audio/wav`};if(this.check([81,76,67,77],{offset:8}))return{ext:`qcp`,mime:`audio/qcelp`}}if(this.check([73,73,85,0,24,0,0,0,136,231,116,216]))return{ext:`rw2`,mime:`image/x-panasonic-rw2`};if(this.check([48,38,178,117,142,102,207,17,166,217])){let t=!1;try{async function n(){let t=new Uint8Array(16);return await xx(e,t,void 0,{maximumLength:t.length,reason:`ASF header GUID`}),{id:t,size:Number(await e.readToken(cb))}}await bx(e,30,{maximumLength:30,reason:`ASF header prelude`});let r=Lx(e),i=e.position,a=0;for(;e.position+24<e.fileInfo.size&&(a++,!(a>lS||Rx(e,i,Zx)));){let i=e.position,a=await n(),o=a.size-24;if(!Number.isFinite(o)||o<0){t=!0;break}if(Mx(a.id,[145,7,220,183,183,169,207,17,142,230,0,192,12,32,83,101])){let t=new Uint8Array(16);if(o-=await xx(e,t,void 0,{maximumLength:t.length,reason:`ASF stream type GUID`}),Mx(t,[64,158,105,248,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:`asf`,mime:`audio/x-ms-asf`};if(Mx(t,[192,239,25,188,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:`asf`,mime:`video/x-ms-asf`};break}if(r&&o>pS){t=!0;break}if(await bx(e,o,{maximumLength:r?pS:e.fileInfo.size,reason:`ASF header payload`}),e.position<=i){t=!0;break}}}catch(n){if(n instanceof fb||n instanceof yS)Lx(e)&&(t=!0);else throw n}return t?void 0:{ext:`asf`,mime:`application/vnd.ms-asf`}}if(this.check([171,75,84,88,32,49,49,187,13,10,26,10]))return{ext:`ktx`,mime:`image/ktx`};if((this.check([126,16,4])||this.check([126,24,4]))&&this.check([48,77,73,69],{offset:4}))return{ext:`mie`,mime:`application/x-mie`};if(this.check([39,10,0,0,0,0,0,0,0,0,0,0],{offset:2}))return{ext:`shp`,mime:`application/x-esri-shape`};if(this.check([255,79,255,81]))return{ext:`j2c`,mime:`image/j2c`};if(this.check([0,0,0,12,106,80,32,32,13,10,135,10]))switch(await e.ignore(20),await e.readToken(new lb(4,`ascii`))){case`jp2 `:return{ext:`jp2`,mime:`image/jp2`};case`jpx `:return{ext:`jpx`,mime:`image/jpx`};case`jpm `:return{ext:`jpm`,mime:`image/jpm`};case`mjp2`:return{ext:`mj2`,mime:`image/mj2`};default:return}if(this.check([255,10])||this.check([0,0,0,12,74,88,76,32,13,10,135,10]))return{ext:`jxl`,mime:`image/jxl`};if(this.check([254,255]))return this.checkString(`<?xml `,{offset:2,encoding:`utf-16be`})?{ext:`xml`,mime:`application/xml`}:void 0;if(this.check([208,207,17,224,161,177,26,225]))return{ext:`cfb`,mime:`application/x-cfb`};if(await e.peekBuffer(this.buffer,{length:Math.min(256,e.fileInfo.size),mayBeLess:!0}),this.check([97,99,115,112],{offset:36}))return{ext:`icc`,mime:`application/vnd.iccprofile`};if(this.checkString(`**ACE`,{offset:7})&&this.checkString(`**`,{offset:12}))return{ext:`ace`,mime:`application/x-ace-compressed`};if(this.checkString(`BEGIN:`)){if(this.checkString(`VCARD`,{offset:6}))return{ext:`vcf`,mime:`text/vcard`};if(this.checkString(`VCALENDAR`,{offset:6}))return{ext:`ics`,mime:`text/calendar`}}if(this.checkString(`FUJIFILMCCD-RAW`))return{ext:`raf`,mime:`image/x-fujifilm-raf`};if(this.checkString(`Extended Module:`))return{ext:`xm`,mime:`audio/x-xm`};if(this.checkString(`Creative Voice File`))return{ext:`voc`,mime:`audio/x-voc`};if(this.check([4,0,0,0])&&this.buffer.length>=16){let e=new DataView(this.buffer.buffer).getUint32(12,!0);if(e>12&&this.buffer.length>=e+16)try{let t=new TextDecoder().decode(this.buffer.subarray(16,e+16));if(JSON.parse(t).files)return{ext:`asar`,mime:`application/x-asar`}}catch{}}if(this.check([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:`mxf`,mime:`application/mxf`};if(this.checkString(`SCRM`,{offset:44}))return{ext:`s3m`,mime:`audio/x-s3m`};if(this.check([71])&&this.check([71],{offset:188})||this.check([71],{offset:4})&&this.check([71],{offset:196}))return{ext:`mts`,mime:`video/mp2t`};if(this.check([66,79,79,75,77,79,66,73],{offset:60}))return{ext:`mobi`,mime:`application/x-mobipocket-ebook`};if(this.check([68,73,67,77],{offset:128}))return{ext:`dcm`,mime:`application/dicom`};if(this.check([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:`lnk`,mime:`application/x.ms.shortcut`};if(this.check([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:`alias`,mime:`application/x.apple.alias`};if(this.checkString(`Kaydara FBX Binary \0`))return{ext:`fbx`,mime:`application/x.autodesk.fbx`};if(this.check([76,80],{offset:34})&&(this.check([0,0,1],{offset:8})||this.check([1,0,2],{offset:8})||this.check([2,0,2],{offset:8})))return{ext:`eot`,mime:`application/vnd.ms-fontobject`};if(this.check([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:`indd`,mime:`application/x-indesign`};if(this.check([255,255,0,0,7,0,0,0,4,0,0,0,1,0,1,0])||this.check([0,0,255,255,0,0,0,7,0,0,0,4,0,1,0,1]))return{ext:`jmp`,mime:`application/x-jmp-data`};if(await e.peekBuffer(this.buffer,{length:Math.min(512,e.fileInfo.size),mayBeLess:!0}),this.checkString(`ustar`,{offset:257})&&(this.checkString(`\0`,{offset:262})||this.checkString(` `,{offset:262}))||this.check([0,0,0,0,0,0],{offset:257})&&fx(this.buffer))return{ext:`tar`,mime:`application/x-tar`};if(this.check([255,254])){let e=`utf-16le`;return this.checkString(`<?xml `,{offset:2,encoding:e})?{ext:`xml`,mime:`application/xml`}:this.check([255,14],{offset:2})&&this.checkString(`SketchUp Model`,{offset:4,encoding:e})?{ext:`skp`,mime:`application/vnd.sketchup.skp`}:this.checkString(`Windows Registry Editor Version 5.00\r
704
+ `,{offset:2,encoding:e})?{ext:`reg`,mime:`application/x-ms-regedit`}:void 0}if(this.checkString(`-----BEGIN PGP MESSAGE-----`))return{ext:`pgp`,mime:`application/pgp-encrypted`}};detectImprecise=async e=>{this.buffer=new Uint8Array(Kx);let t=Ix(e.fileInfo.size);if(await e.peekBuffer(this.buffer,{length:Math.min(8,t),mayBeLess:!0}),this.check([0,0,1,186])||this.check([0,0,1,179]))return{ext:`mpg`,mime:`video/mpeg`};if(this.check([0,1,0,0,0]))return{ext:`ttf`,mime:`font/ttf`};if(this.check([0,0,1,0]))return{ext:`ico`,mime:`image/x-icon`};if(this.check([0,0,2,0]))return{ext:`cur`,mime:`image/x-icon`};if(await e.peekBuffer(this.buffer,{length:Math.min(2+this.options.mpegOffsetTolerance,t),mayBeLess:!0}),this.buffer.length>=2+this.options.mpegOffsetTolerance)for(let e=0;e<=this.options.mpegOffsetTolerance;++e){let t=this.scanMpeg(e);if(t)return t}};async readTiffTag(e){let t=await this.tokenizer.readToken(e?ib:rb);switch(await this.tokenizer.ignore(10),t){case 50341:return{ext:`arw`,mime:`image/x-sony-arw`};case 50706:return{ext:`dng`,mime:`image/x-adobe-dng`};default:}}async readTiffIFD(e){let t=await this.tokenizer.readToken(e?ib:rb);if(!(t>uS)&&!(Lx(this.tokenizer)&&2+t*12>hS))for(let n=0;n<t;++n){let t=await this.readTiffTag(e);if(t)return t}}async readTiffHeader(e){let t={ext:`tif`,mime:`image/tiff`},n=(e?ib:rb).get(this.buffer,2),r=(e?ob:ab).get(this.buffer,4);if(n===42){if(r>=6){if(this.checkString(`CR`,{offset:8}))return{ext:`cr2`,mime:`image/x-canon-cr2`};if(r>=8){let t=(e?ib:rb).get(this.buffer,8),n=(e?ib:rb).get(this.buffer,10);if(t===28&&n===254||t===31&&n===11)return{ext:`nef`,mime:`image/x-nikon-nef`}}}if(Lx(this.tokenizer)&&r>mS)return t;let n=Lx(this.tokenizer)?hS:this.tokenizer.fileInfo.size;try{await bx(this.tokenizer,r,{maximumLength:n,reason:`TIFF IFD offset`})}catch(e){if(e instanceof fb)return;throw e}let i;try{i=await this.readTiffIFD(e)}catch(e){if(e instanceof fb)return;throw e}return i??t}if(n===43)return t}scanMpeg(e){if(this.check([255,224],{offset:e,mask:[255,224]})){if(this.check([16],{offset:e+1,mask:[22]}))return this.check([8],{offset:e+1,mask:[8]}),{ext:`aac`,mime:`audio/aac`};if(this.check([2],{offset:e+1,mask:[6]}))return{ext:`mp3`,mime:`audio/mpeg`};if(this.check([4],{offset:e+1,mask:[6]}))return{ext:`mp2`,mime:`audio/mpeg`};if(this.check([6],{offset:e+1,mask:[6]}))return{ext:`mp1`,mime:`audio/mpeg`}}}},new Set(hx),new Set(gx)}),TS={};S(TS,{fileCommand:()=>NS,flagsForFuzzing:()=>PS});function ES(e,t){let n=MS.get(e);if(n)return n;let[r,i]=t.split(`/`),a=i?.split(`+`)[0]?.replace(/-/g,` `)||e;switch(r){case`image`:return`${a.toUpperCase()} image data`;case`audio`:return`${a.toUpperCase()} audio`;case`video`:return`${a.toUpperCase()} video`;case`font`:return`${a} font`;case`model`:return`${a} 3D model`;case`application`:return i?.includes(`zip`)||i?.includes(`compressed`)?`${a} archive data`:i?.includes(`executable`)?`${a} executable`:`${e.toUpperCase()} data`;default:return`${e.toUpperCase()} data`}}function DS(e){let t=e.split(`/`).pop()||e;if(t.startsWith(`.`)&&!t.includes(`.`,1))return t;let n=t.lastIndexOf(`.`);return n===-1||n===0?``:t.slice(n).toLowerCase()}function OS(e,t){if(e.startsWith(`#!`)){let t=e.split(`
705
+ `)[0];return t.includes(`python`)?{description:`Python script, ASCII text executable`,mime:`text/x-python`}:t.includes(`node`)||t.includes(`bun`)||t.includes(`deno`)?{description:`JavaScript script, ASCII text executable`,mime:`text/javascript`}:t.includes(`bash`)?{description:`Bourne-Again shell script, ASCII text executable`,mime:`text/x-shellscript`}:t.includes(`sh`)?{description:`POSIX shell script, ASCII text executable`,mime:`text/x-shellscript`}:t.includes(`ruby`)?{description:`Ruby script, ASCII text executable`,mime:`text/x-ruby`}:t.includes(`perl`)?{description:`Perl script, ASCII text executable`,mime:`text/x-perl`}:{description:`script, ASCII text executable`,mime:`text/plain`}}let n=e.trimStart();if(n.startsWith(`<?xml`))return{description:`XML document`,mime:`application/xml`};if(n.startsWith(`<!DOCTYPE html`)||n.toLowerCase().startsWith(`<html`))return{description:`HTML document`,mime:`text/html`};let r=e.includes(`\r
706
+ `),i=e.includes(`\r`)&&!r,a=``;r?a=`, with CRLF line terminators`:i&&(a=`, with CR line terminators`);let o=DS(t),s=o?jS.get(o):void 0;if(s)return s.mime.startsWith(`text/`)&&a?{description:`${s.description}${a}`,mime:s.mime}:s;let c=!1;for(let t=0;t<Math.min(e.length,8192);t++)if(e.charCodeAt(t)>127){c=!0;break}return c?{description:`UTF-8 Unicode text${a}`,mime:`text/plain; charset=utf-8`}:{description:`ASCII text${a}`,mime:`text/plain`}}async function kS(e,t){if(t.length===0)return{description:`empty`,mime:`inode/x-empty`};let n=await Ax(t);return n?{description:ES(n.ext,n.mime),mime:n.mime}:OS(new TextDecoder(`utf-8`,{fatal:!1}).decode(t),e)}var AS,jS,MS,NS,PS,FS=x(()=>{wS(),O(),AS={name:`file`,summary:`determine file type`,usage:`file [OPTION]... FILE...`,options:[`-b, --brief do not prepend filenames to output`,`-i, --mime output MIME type strings`,`-L, --dereference follow symlinks`,` --help display this help and exit`]},jS=new Map([[`.js`,{description:`JavaScript source`,mime:`text/javascript`}],[`.mjs`,{description:`JavaScript module`,mime:`text/javascript`}],[`.cjs`,{description:`CommonJS module`,mime:`text/javascript`}],[`.ts`,{description:`TypeScript source`,mime:`text/typescript`}],[`.tsx`,{description:`TypeScript JSX source`,mime:`text/typescript`}],[`.jsx`,{description:`JavaScript JSX source`,mime:`text/javascript`}],[`.py`,{description:`Python script`,mime:`text/x-python`}],[`.rb`,{description:`Ruby script`,mime:`text/x-ruby`}],[`.go`,{description:`Go source`,mime:`text/x-go`}],[`.rs`,{description:`Rust source`,mime:`text/x-rust`}],[`.c`,{description:`C source`,mime:`text/x-c`}],[`.h`,{description:`C header`,mime:`text/x-c`}],[`.cpp`,{description:`C++ source`,mime:`text/x-c++`}],[`.hpp`,{description:`C++ header`,mime:`text/x-c++`}],[`.java`,{description:`Java source`,mime:`text/x-java`}],[`.sh`,{description:`Bourne-Again shell script`,mime:`text/x-shellscript`}],[`.bash`,{description:`Bourne-Again shell script`,mime:`text/x-shellscript`}],[`.zsh`,{description:`Zsh shell script`,mime:`text/x-shellscript`}],[`.json`,{description:`JSON data`,mime:`application/json`}],[`.yaml`,{description:`YAML data`,mime:`text/yaml`}],[`.yml`,{description:`YAML data`,mime:`text/yaml`}],[`.xml`,{description:`XML document`,mime:`application/xml`}],[`.csv`,{description:`CSV text`,mime:`text/csv`}],[`.toml`,{description:`TOML data`,mime:`text/toml`}],[`.html`,{description:`HTML document`,mime:`text/html`}],[`.htm`,{description:`HTML document`,mime:`text/html`}],[`.css`,{description:`CSS stylesheet`,mime:`text/css`}],[`.svg`,{description:`SVG image`,mime:`image/svg+xml`}],[`.md`,{description:`Markdown document`,mime:`text/markdown`}],[`.markdown`,{description:`Markdown document`,mime:`text/markdown`}],[`.txt`,{description:`ASCII text`,mime:`text/plain`}],[`.rst`,{description:`reStructuredText`,mime:`text/x-rst`}],[`.env`,{description:`ASCII text`,mime:`text/plain`}],[`.gitignore`,{description:`ASCII text`,mime:`text/plain`}],[`.dockerignore`,{description:`ASCII text`,mime:`text/plain`}]]),MS=new Map([[`jpg`,`JPEG image data`],[`jpeg`,`JPEG image data`],[`png`,`PNG image data`],[`gif`,`GIF image data`],[`webp`,`WebP image data`],[`bmp`,`PC bitmap`],[`ico`,`MS Windows icon resource`],[`tif`,`TIFF image data`],[`tiff`,`TIFF image data`],[`psd`,`Adobe Photoshop Document`],[`avif`,`AVIF image`],[`heic`,`HEIC image`],[`heif`,`HEIF image`],[`jxl`,`JPEG XL image`],[`icns`,`Mac OS X icon`],[`svg`,`SVG Scalable Vector Graphics image`],[`pdf`,`PDF document`],[`epub`,`EPUB document`],[`mobi`,`Mobipocket E-book`],[`djvu`,`DjVu document`],[`zip`,`Zip archive data`],[`gz`,`gzip compressed data`],[`gzip`,`gzip compressed data`],[`bz2`,`bzip2 compressed data`],[`xz`,`XZ compressed data`],[`tar`,`POSIX tar archive`],[`rar`,`RAR archive data`],[`7z`,`7-zip archive data`],[`lz`,`lzip compressed data`],[`lzma`,`LZMA compressed data`],[`zst`,`Zstandard compressed data`],[`cab`,`Microsoft Cabinet archive`],[`ar`,`Unix ar archive`],[`rpm`,`RPM package`],[`deb`,`Debian binary package`],[`apk`,`Android Package`],[`dmg`,`Apple disk image`],[`iso`,`ISO 9660 CD-ROM filesystem data`],[`vhd`,`Microsoft Virtual Hard Disk`],[`vhdx`,`Microsoft Virtual Hard Disk (new format)`],[`qcow2`,`QEMU QCOW Image`],[`mp3`,`Audio file with ID3`],[`m4a`,`MPEG-4 audio`],[`aac`,`AAC audio`],[`wav`,`RIFF (little-endian) data, WAVE audio`],[`flac`,`FLAC audio bitstream data`],[`ogg`,`Ogg data`],[`oga`,`Ogg audio`],[`opus`,`Ogg Opus audio`],[`aiff`,`AIFF audio`],[`wma`,`Windows Media Audio`],[`amr`,`AMR audio`],[`mid`,`MIDI audio`],[`midi`,`MIDI audio`],[`ape`,`Monkey's Audio`],[`mp4`,`ISO Media, MPEG-4`],[`m4v`,`MPEG-4 video`],[`webm`,`WebM`],[`avi`,`RIFF (little-endian) data, AVI`],[`mov`,`ISO Media, Apple QuickTime movie`],[`mkv`,`Matroska data`],[`wmv`,`Windows Media Video`],[`flv`,`Flash Video`],[`3gp`,`3GPP multimedia`],[`3g2`,`3GPP2 multimedia`],[`ogv`,`Ogg video`],[`mts`,`MPEG transport stream`],[`m2ts`,`MPEG transport stream`],[`ts`,`MPEG transport stream`],[`mpg`,`MPEG video`],[`mpeg`,`MPEG video`],[`exe`,`PE32 executable`],[`dll`,`PE32 DLL`],[`elf`,`ELF executable`],[`mach`,`Mach-O executable`],[`wasm`,`WebAssembly (wasm) binary module`],[`dex`,`Android Dalvik executable`],[`class`,`Java class file`],[`swf`,`Adobe Flash`],[`doc`,`Microsoft Word Document`],[`docx`,`Microsoft Word 2007+ Document`],[`xls`,`Microsoft Excel Spreadsheet`],[`xlsx`,`Microsoft Excel 2007+ Spreadsheet`],[`ppt`,`Microsoft PowerPoint Presentation`],[`pptx`,`Microsoft PowerPoint 2007+ Presentation`],[`odt`,`OpenDocument Text`],[`ods`,`OpenDocument Spreadsheet`],[`odp`,`OpenDocument Presentation`],[`ttf`,`TrueType Font`],[`otf`,`OpenType Font`],[`woff`,`Web Open Font Format`],[`woff2`,`Web Open Font Format 2`],[`eot`,`Embedded OpenType font`],[`stl`,`Stereolithography CAD`],[`obj`,`Wavefront 3D Object`],[`gltf`,`GL Transmission Format`],[`glb`,`GL Transmission Format (binary)`],[`sqlite`,`SQLite 3.x database`],[`mdb`,`Microsoft Access Database`],[`xml`,`XML document`],[`json`,`JSON data`],[`macho`,`Mach-O binary`],[`ics`,`iCalendar data`],[`vcf`,`vCard data`],[`msi`,`Microsoft Installer`],[`ps`,`PostScript`],[`ai`,`Adobe Illustrator`],[`indd`,`Adobe InDesign`],[`sketch`,`Sketch design file`],[`fig`,`Figma design file`],[`xd`,`Adobe XD`],[`blend`,`Blender`],[`fbx`,`Autodesk FBX`],[`lnk`,`MS Windows shortcut`],[`alias`,`Mac OS alias`],[`torrent`,`BitTorrent file`],[`pcap`,`pcap capture file`],[`arrow`,`Apache Arrow`],[`parquet`,`Apache Parquet`]]),NS={name:`file`,async execute(e,t){if(E(e))return T(AS);let n=!1,r=!1,i=[];for(let t of e)if(t.startsWith(`--`)){if(t===`--brief`)n=!0;else if(t===`--mime`||t===`--mime-type`)r=!0;else if(t!==`--dereference`)return D(`file`,t)}else if(t.startsWith(`-`)&&t!==`-`){for(let e of t.slice(1))if(e===`b`)n=!0;else if(e===`i`)r=!0;else if(e!==`L`)return D(`file`,`-${e}`)}else i.push(t);if(i.length===0)return{stdout:``,stderr:`Usage: file [-bLi] FILE...
707
+ `,exitCode:1};let a=``,o=0;for(let e of i)try{let i=t.fs.resolvePath(t.cwd,e);if((await t.fs.stat(i)).isDirectory){let t=r?`inode/directory`:`directory`;a+=n?`${t}
708
+ `:`${e}: ${t}
709
+ `;continue}let o=await kS(e,await t.fs.readFileBuffer(i)),s=r?o.mime:o.description;a+=n?`${s}
710
+ `:`${e}: ${s}
711
+ `}catch{a+=n?`cannot open
712
+ `:`${e}: cannot open (No such file or directory)
713
+ `,o=1}return{stdout:a,stderr:``,exitCode:o}}},PS={name:`file`,flags:[{flag:`-b`,type:`boolean`},{flag:`-i`,type:`boolean`},{flag:`-L`,type:`boolean`}],needsArgs:!0}}),IS={};S(IS,{flagsForFuzzing:()=>zS,htmlToMarkdownCommand:()=>RS});var LS,RS,zS,BS=x(()=>{w(),O(),LS={name:`html-to-markdown`,summary:`convert HTML to Markdown (BashEnv extension)`,usage:`html-to-markdown [OPTION]... [FILE]`,description:[`Convert HTML content to Markdown format using the turndown library.`,`This is a non-standard BashEnv extension command, not available in regular bash.`,``,`Read HTML from FILE or standard input and output Markdown to standard output.`,`Commonly used with curl to convert web pages:`,` curl -s https://example.com | html-to-markdown`,``,`Supported HTML elements:`,` - Headings (h1-h6) → # Markdown headings`,` - Paragraphs (p) → Plain text with blank lines`,` - Links (a) → [text](url)`,` - Images (img) → ![alt](src)`,` - Bold/Strong → **text**`,` - Italic/Em → _text_`," - Code (code, pre) → `inline` or fenced blocks",` - Lists (ul, ol, li) → - or 1. items`,` - Blockquotes → > quoted text`,` - Horizontal rules (hr) → ---`],options:[`-b, --bullet=CHAR bullet character for unordered lists (-, +, or *)`,"-c, --code=FENCE fence style for code blocks (``` or ~~~)",`-r, --hr=STRING string for horizontal rules (default: ---)`,` --heading-style=STYLE`,` heading style: 'atx' for # headings (default),`,` 'setext' for underlined headings (h1/h2 only)`,` --help display this help and exit`],examples:[`echo '<h1>Hello</h1><p>World</p>' | html-to-markdown`,`html-to-markdown page.html`,`curl -s https://example.com | html-to-markdown > page.md`]},RS={name:`html-to-markdown`,async execute(e,t){if(E(e))return T(LS);let n=`-`,r="```",i=`---`,a=`atx`,o=[];for(let t=0;t<e.length;t++){let s=e[t];if(s===`-b`||s===`--bullet`)n=e[++t]??`-`;else if(s.startsWith(`--bullet=`))n=s.slice(9);else if(s===`-c`||s===`--code`)r=e[++t]??"```";else if(s.startsWith(`--code=`))r=s.slice(7);else if(s===`-r`||s===`--hr`)i=e[++t]??`---`;else if(s.startsWith(`--hr=`))i=s.slice(5);else if(s.startsWith(`--heading-style=`)){let e=s.slice(16);(e===`setext`||e===`atx`)&&(a=e)}else if(s===`-`)o.push(`-`);else{if(s.startsWith(`--`)||s.startsWith(`-`))return D(`html-to-markdown`,s);o.push(s)}}let s;if(o.length===0||o.length===1&&o[0]===`-`)s=ur(t.stdin);else try{let e=t.fs.resolvePath(t.cwd,o[0]);s=await t.fs.readFile(e)}catch{return{stdout:``,stderr:`html-to-markdown: ${o[0]}: No such file or directory
714
+ `,exitCode:1}}if(!s.trim())return{stdout:``,stderr:``,exitCode:0};try{let e=new Cn({bulletListMarker:n,codeBlockStyle:`fenced`,fence:r,hr:i,headingStyle:a});return e.remove([`script`,`style`,`footer`]),{stdout:`${e.turndown(s).trim()}
715
+ `,stderr:``,exitCode:0}}catch(e){return{stdout:``,stderr:`html-to-markdown: conversion error: ${e.message}
716
+ `,exitCode:1}}}},zS={name:`html-to-markdown`,flags:[],stdinType:`text`}}),VS={};S(VS,{flagsForFuzzing:()=>GS,helpCommand:()=>WS});function HS(e){let t=[],n=new Set(e);t.push(`Available commands:
717
+ `);let r=[];for(let[e,r]of US){let i=r.filter(e=>n.has(e));if(i.length>0){t.push(` ${e}:`),t.push(` ${i.join(`, `)}
718
+ `);for(let e of i)n.delete(e)}}for(let e of n)r.push(e);return r.length>0&&(t.push(` Other:`),t.push(` ${r.sort().join(`, `)}
719
+ `)),t.push(`Use '<command> --help' for details on a specific command.`),`${t.join(`
720
+ `)}
721
+ `}var US,WS,GS,KS=x(()=>{Qc(),US=new Map([[`File operations`,[`ls`,`cat`,`head`,`tail`,`wc`,`touch`,`mkdir`,`rm`,`cp`,`mv`,`ln`,`chmod`,`stat`,`readlink`]],[`Text processing`,[`grep`,`sed`,`awk`,`sort`,`uniq`,`cut`,`tr`,`tee`,`diff`]],[`Search`,[`find`]],[`Navigation & paths`,[`pwd`,`basename`,`dirname`,`tree`,`du`]],[`Environment & shell`,[`echo`,`printf`,`env`,`printenv`,`export`,`alias`,`unalias`,`history`,`clear`,`true`,`false`,`bash`,`sh`]],[`Data processing`,[`xargs`,`jq`,`base64`,`date`]],[`Network`,[`curl`,`html-to-markdown`]]]),WS={name:`help`,async execute(e,t){if(e.includes(`--help`)||e.includes(`-h`))return{stdout:`help - display available commands
722
+
723
+ Usage: help [command]
724
+
725
+ Options:
726
+ -h, --help Show this help message
727
+
728
+ If a command name is provided, shows help for that command.
729
+ Otherwise, lists all available commands.
730
+ `,stderr:``,exitCode:0};if(e.length>0&&t.exec){let n=e[0];return t.exec(Zc([n]),{cwd:t.cwd,signal:t.signal,args:[`--help`]})}return{stdout:HS(t.getRegisteredCommands?.()??[]),stderr:``,exitCode:0}}},GS={name:`help`,flags:[]}}),qS={};S(qS,{flagsForFuzzing:()=>ZS,whichCommand:()=>XS});var JS,YS,XS,ZS,QS=x(()=>{xr(),O(),JS={name:`which`,summary:`locate a command`,usage:`which [-as] program ...`,options:[`-a List all instances of executables found`,`-s No output, just return 0 if found, 1 if not`,`--help display this help and exit`]},YS={showAll:{short:`a`,type:`boolean`},silent:{short:`s`,type:`boolean`}},XS={name:`which`,async execute(e,t){if(E(e))return T(JS);let n=br(`which`,e,YS);if(!n.ok)return n.error;let r=n.result.flags.showAll,i=n.result.flags.silent,a=n.result.positional;if(a.length===0)return{stdout:``,stderr:``,exitCode:1};let o=(t.env.get(`PATH`)||`/usr/bin:/bin`).split(`:`),s=``,c=!0;for(let e of a){let n=!1;for(let a of o){if(!a)continue;let o=t.fs.resolvePath(a,e);if(await t.fs.exists(o)&&(n=!0,i||(s+=`${o}
731
+ `),!r))break}n||(c=!1)}return{stdout:s,stderr:``,exitCode:+!c}}},ZS={name:`which`,flags:[{flag:`-a`,type:`boolean`},{flag:`-s`,type:`boolean`}],needsArgs:!0}}),$S={};S($S,{flagsForFuzzing:()=>nC,tac:()=>tC});async function eC(e,t){if(e.length>0&&e[0]!==`-`){let n=t.fs.resolvePath(t.cwd,e[0]);try{let e=(await t.fs.readFile(n)).split(`
732
+ `);e[e.length-1]===``&&e.pop();let r=e.reverse();return{stdout:r.length>0?`${r.join(`
733
+ `)}
734
+ `:``,stderr:``,exitCode:0}}catch{return{stdout:``,stderr:`tac: ${e[0]}: No such file or directory
735
+ `,exitCode:1}}}let n=t.stdin.split(`
736
+ `);n[n.length-1]===``&&n.pop();let r=n.reverse();return{stdout:r.length>0?`${r.join(`
737
+ `)}
738
+ `:``,stderr:``,exitCode:0,stdoutKind:`bytes`}}var tC,nC,rC=x(()=>{w(),tC={name:`tac`,execute:eC},nC={name:`tac`,flags:[],stdinType:`text`,needsFiles:!0}}),iC={};S(iC,{flagsForFuzzing:()=>sC,hostname:()=>oC});async function aC(e,t){return{stdout:`localhost
739
+ `,stderr:``,exitCode:0}}var oC,sC,cC=x(()=>{oC={name:`hostname`,execute:aC},sC={name:`hostname`,flags:[]}}),lC={};S(lC,{flagsForFuzzing:()=>fC,whoami:()=>dC});async function uC(e,t){return{stdout:`user
740
+ `,stderr:``,exitCode:0}}var dC,fC,pC=x(()=>{dC={name:`whoami`,execute:uC},fC={name:`whoami`,flags:[]}}),mC={};S(mC,{flagsForFuzzing:()=>_C,od:()=>gC});async function hC(e,t){let n=`octal`,r=[],i=[];for(let t=0;t<e.length;t++){let a=e[t];if(a===`-c`)r.push(`char`);else if(a===`-An`||a===`-A`&&e[t+1]===`n`)n=`none`,a===`-A`&&t++;else if(a===`-t`&&e[t+1]){let n=e[++t];n===`x1`?r.push(`hex`):n===`c`?r.push(`char`):n.startsWith(`o`)&&r.push(`octal`)}else(!a.startsWith(`-`)||a===`-`)&&i.push(a)}r.length===0&&r.push(`octal`);let a=t.stdin;if(i.length>0&&i[0]!==`-`){let e=i[0].startsWith(`/`)?i[0]:`${t.cwd}/${i[0]}`;try{a=await pr(t.fs,e)}catch{return{stdout:``,stderr:`od: ${i[0]}: No such file or directory
741
+ `,exitCode:1}}}let o=r.includes(`char`);function s(e){return e===0?` \\0`:e===7?` \\a`:e===8?` \\b`:e===9?` \\t`:e===10?` \\n`:e===11?` \\v`:e===12?` \\f`:e===13?` \\r`:e>=32&&e<127?` ${String.fromCharCode(e)}`:` ${e.toString(8).padStart(3,`0`)}`}function c(e){return o?` ${e.toString(16).padStart(2,`0`)}`:` ${e.toString(16).padStart(2,`0`)}`}function l(e){return` ${e.toString(8).padStart(3,`0`)}`}let u=[];for(let e of a)u.push(e.charCodeAt(0));let d=[];for(let e=0;e<u.length;e+=16){let t=u.slice(e,e+16);for(let i=0;i<r.length;i++){let a=r[i],o;o=a===`char`?t.map(s):a===`hex`?t.map(c):t.map(l);let u=``;i===0&&n!==`none`?u=`${e.toString(8).padStart(7,`0`)} `:(i>0||n===`none`)&&(u=n===`none`?``:` `),d.push(u+o.join(``))}}return n!==`none`&&u.length>0&&d.push(u.length.toString(8).padStart(7,`0`)),{stdout:d.length>0?`${d.join(`
742
+ `)}
743
+ `:``,stderr:``,exitCode:0}}var gC,_C,vC=x(()=>{w(),gC={name:`od`,execute:hC},_C={name:`od`,flags:[{flag:`-c`,type:`boolean`},{flag:`-A`,type:`value`,valueHint:`string`},{flag:`-t`,type:`value`,valueHint:`string`},{flag:`-N`,type:`value`,valueHint:`number`}],stdinType:`text`,needsFiles:!0}}),yC={};S(yC,{flagsForFuzzing:()=>zC,gunzipCommand:()=>LC,gunzipFlagsForFuzzing:()=>BC,gzipCommand:()=>IC,zcatCommand:()=>RC,zcatFlagsForFuzzing:()=>VC});function bC(e){return e.best?ut.Z_BEST_COMPRESSION:e.level8?8:e.level7?7:e.level6?6:e.level5?5:e.level4?4:e.level3?3:e.level2?2:e.fast?ut.Z_BEST_SPEED:ut.Z_DEFAULT_COMPRESSION}function xC(e){if(e.length<10||e[0]!==31||e[1]!==139)return{originalName:null,mtime:null,headerSize:0};let t=e[3],n=e[4]|e[5]<<8|e[6]<<16|e[7]<<24,r=10;if(t&4){if(r+2>e.length)return{originalName:null,mtime:null,headerSize:0};let t=e[r]|e[r+1]<<8;r+=2+t}let i=null;if(t&8){let t=r;for(;r<e.length&&e[r]!==0;)r++;r<e.length&&(i=new TextDecoder().decode(e.slice(t,r)),r++)}if(t&16){for(;r<e.length&&e[r]!==0;)r++;r++}return t&2&&(r+=2),{originalName:i,mtime:n>0?new Date(n*1e3):null,headerSize:r}}function SC(e){if(e.length<4)return 0;let t=e.length;return e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24}function CC(e){return e.length>=2&&e[0]===31&&e[1]===139}function wC(e){return Buffer.from(e).toString(`latin1`)}function TC(e){return e.limits?.maxOutputSize??0}function EC(e,t){if(t>0){if(SC(e)>t)throw Error(`decompressed data exceeds limit (${t} bytes)`);return dt(e,{maxOutputLength:t})}return dt(e)}async function DC(e,t,n,r,i,a){let o=n.suffix,s,c,l,u=TC(e);if(t===`-`||t===``)if(l=Uint8Array.from(e.stdin,e=>e.charCodeAt(0)),i){if(!CC(l))return n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: stdin: not in gzip format
744
+ `,exitCode:1};try{return{stdout:wC(EC(l,u)),stderr:``,exitCode:0}}catch(e){return{stdout:``,stderr:`${r}: stdin: ${e instanceof Error?e.message:`unknown error`}
745
+ `,exitCode:1}}}else{let e=bC(n);return{stdout:wC(ft(l,{level:e})),stderr:``,exitCode:0}}s=e.fs.resolvePath(e.cwd,t);try{if((await e.fs.stat(s)).isDirectory)return n.recursive?await OC(e,s,n,r,i,a):n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: ${t}: is a directory -- ignored
746
+ `,exitCode:1}}catch{return{stdout:``,stderr:`${r}: ${t}: No such file or directory
747
+ `,exitCode:1}}try{l=await e.fs.readFileBuffer(s)}catch{return{stdout:``,stderr:`${r}: ${t}: No such file or directory
748
+ `,exitCode:1}}if(i){if(!t.endsWith(o))return n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: ${t}: unknown suffix -- ignored
749
+ `,exitCode:1};if(!CC(l))return n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: ${t}: not in gzip format
750
+ `,exitCode:1};let i;try{i=EC(l,u)}catch(e){return{stdout:``,stderr:`${r}: ${t}: ${e instanceof Error?e.message:`unknown error`}
751
+ `,exitCode:1}}if(a)return{stdout:wC(i),stderr:``,exitCode:0};if(n.name){let t=xC(l);c=t.originalName?e.fs.resolvePath(e.cwd,t.originalName):s.slice(0,-o.length)}else c=s.slice(0,-o.length);if(!n.force)try{return await e.fs.stat(c),{stdout:``,stderr:`${r}: ${c} already exists; not overwritten
752
+ `,exitCode:1}}catch{}return await e.fs.writeFile(c,i),!n.keep&&!a&&await e.fs.rm(s),n.verbose?{stdout:``,stderr:`${t}: ${l.length>0?((1-l.length/i.length)*100).toFixed(1):`0.0`}% -- replaced with ${c.split(`/`).pop()}
753
+ `,exitCode:0}:{stdout:``,stderr:``,exitCode:0}}else{if(t.endsWith(o))return n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: ${t} already has ${o} suffix -- unchanged
754
+ `,exitCode:1};let i=bC(n),u;try{u=ft(l,{level:i})}catch(e){return{stdout:``,stderr:`${r}: ${t}: ${e instanceof Error?e.message:`unknown error`}
755
+ `,exitCode:1}}if(a)return{stdout:wC(u),stderr:``,exitCode:0};if(c=s+o,!n.force)try{return await e.fs.stat(c),{stdout:``,stderr:`${r}: ${c} already exists; not overwritten
756
+ `,exitCode:1}}catch{}return await e.fs.writeFile(c,u),!n.keep&&!a&&await e.fs.rm(s),n.verbose?{stdout:``,stderr:`${t}: ${l.length>0?((1-u.length/l.length)*100).toFixed(1):`0.0`}% -- replaced with ${c.split(`/`).pop()}
757
+ `,exitCode:0}:{stdout:``,stderr:``,exitCode:0}}}async function OC(e,t,n,r,i,a){let o=await e.fs.readdir(t),s=``,c=``,l=0;for(let u of o){let o=e.fs.resolvePath(t,u),d=await e.fs.stat(o);if(d.isDirectory){let t=await OC(e,o,n,r,i,a);s+=t.stdout,c+=t.stderr,t.exitCode!==0&&(l=t.exitCode)}else if(d.isFile){let t=n.suffix;if(i&&!u.endsWith(t)||!i&&u.endsWith(t))continue;let d=await DC(e,o.startsWith(`${e.cwd}/`)?o.slice(e.cwd.length+1):o,n,r,i,a);s+=d.stdout,c+=d.stderr,d.exitCode!==0&&(l=d.exitCode)}}return{stdout:s,stderr:c,exitCode:l}}async function kC(e,t,n,r){let i;if(t===`-`||t===``)i=Uint8Array.from(e.stdin,e=>e.charCodeAt(0));else{let n=e.fs.resolvePath(e.cwd,t);try{i=await e.fs.readFileBuffer(n)}catch{return{stdout:``,stderr:`${r}: ${t}: No such file or directory
758
+ `,exitCode:1}}}if(!CC(i))return n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: ${t}: not in gzip format
759
+ `,exitCode:1};let a=i.length,o=SC(i),s=o>0?((1-a/o)*100).toFixed(1):`0.0`,c=xC(i).originalName||(t===`-`?``:t.replace(/\.gz$/,``));return{stdout:`${a.toString().padStart(10)} ${o.toString().padStart(10)} ${s.padStart(5)}% ${c}
760
+ `,stderr:``,exitCode:0}}async function AC(e,t,n,r){let i;if(t===`-`||t===``)i=Uint8Array.from(e.stdin,e=>e.charCodeAt(0));else{let n=e.fs.resolvePath(e.cwd,t);try{i=await e.fs.readFileBuffer(n)}catch{return{stdout:``,stderr:`${r}: ${t}: No such file or directory
761
+ `,exitCode:1}}}if(!CC(i))return n.quiet?{stdout:``,stderr:``,exitCode:1}:{stdout:``,stderr:`${r}: ${t}: not in gzip format
762
+ `,exitCode:1};try{return EC(i,TC(e)),n.verbose?{stdout:``,stderr:`${t}: OK
763
+ `,exitCode:0}:{stdout:``,stderr:``,exitCode:0}}catch(e){return{stdout:``,stderr:`${r}: ${t}: ${e instanceof Error?e.message:`invalid`}
764
+ `,exitCode:1}}}async function jC(e,t,n){let r=n===`zcat`?PC:n===`gunzip`?NC:MC;if(E(e))return T(r);let i=br(n,e,FC);if(!i.ok)return i.error.stderr.includes(`unrecognized option`),i.error;let a=i.result.flags,o=i.result.positional,s=n===`gunzip`||n===`zcat`||a.decompress||a.uncompress,c=n===`zcat`||a.stdout||a.toStdout;if(a.list){o.length===0&&(o=[`-`]);let e=` compressed uncompressed ratio uncompressed_name
765
+ `,r=``,i=0;for(let s of o){let o=await kC(t,s,a,n);e+=o.stdout,r+=o.stderr,o.exitCode!==0&&(i=o.exitCode)}return{stdout:e,stderr:r,exitCode:i}}if(a.test){o.length===0&&(o=[`-`]);let e=``,r=``,i=0;for(let s of o){let o=await AC(t,s,a,n);e+=o.stdout,r+=o.stderr,o.exitCode!==0&&(i=o.exitCode)}return{stdout:e,stderr:r,exitCode:i}}o.length===0&&(o=[`-`]);let l=``,u=``,d=0;for(let e of o){let r=await DC(t,e,a,n,s,c);l+=r.stdout,u+=r.stderr,r.exitCode!==0&&(d=r.exitCode)}return{stdout:l,stderr:u,exitCode:d}}var MC,NC,PC,FC,IC,LC,RC,zC,BC,VC,HC=x(()=>{w(),xr(),O(),MC={name:`gzip`,summary:`compress or expand files`,usage:`gzip [OPTION]... [FILE]...`,description:`Compress FILEs (by default, in-place).
766
+
767
+ When no FILE is given, or when FILE is -, read from standard input.
768
+
769
+ With -d, decompress instead.`,options:[`-c, --stdout write to standard output, keep original files`,`-d, --decompress decompress`,`-f, --force force overwrite of output file`,`-k, --keep keep (don't delete) input files`,`-l, --list list compressed file contents`,`-n, --no-name do not save or restore the original name and timestamp`,`-N, --name save or restore the original file name and timestamp`,`-q, --quiet suppress all warnings`,`-r, --recursive operate recursively on directories`,`-S, --suffix=SUF use suffix SUF on compressed files (default: .gz)`,`-t, --test test compressed file integrity`,`-v, --verbose verbose mode`,`-1, --fast compress faster`,`-9, --best compress better`,` --help display this help and exit`]},NC={name:`gunzip`,summary:`decompress files`,usage:`gunzip [OPTION]... [FILE]...`,description:`Decompress FILEs (by default, in-place).
770
+
771
+ When no FILE is given, or when FILE is -, read from standard input.`,options:[`-c, --stdout write to standard output, keep original files`,`-f, --force force overwrite of output file`,`-k, --keep keep (don't delete) input files`,`-l, --list list compressed file contents`,`-n, --no-name do not restore the original name and timestamp`,`-N, --name restore the original file name and timestamp`,`-q, --quiet suppress all warnings`,`-r, --recursive operate recursively on directories`,`-S, --suffix=SUF use suffix SUF on compressed files (default: .gz)`,`-t, --test test compressed file integrity`,`-v, --verbose verbose mode`,` --help display this help and exit`]},PC={name:`zcat`,summary:`decompress files to stdout`,usage:`zcat [OPTION]... [FILE]...`,description:`Decompress FILEs to standard output.
772
+
773
+ When no FILE is given, or when FILE is -, read from standard input.`,options:[`-f, --force force; read compressed data even from a terminal`,`-l, --list list compressed file contents`,`-q, --quiet suppress all warnings`,`-S, --suffix=SUF use suffix SUF on compressed files (default: .gz)`,`-t, --test test compressed file integrity`,`-v, --verbose verbose mode`,` --help display this help and exit`]},FC={stdout:{short:`c`,long:`stdout`,type:`boolean`},toStdout:{long:`to-stdout`,type:`boolean`},decompress:{short:`d`,long:`decompress`,type:`boolean`},uncompress:{long:`uncompress`,type:`boolean`},force:{short:`f`,long:`force`,type:`boolean`},keep:{short:`k`,long:`keep`,type:`boolean`},list:{short:`l`,long:`list`,type:`boolean`},noName:{short:`n`,long:`no-name`,type:`boolean`},name:{short:`N`,long:`name`,type:`boolean`},quiet:{short:`q`,long:`quiet`,type:`boolean`},recursive:{short:`r`,long:`recursive`,type:`boolean`},suffix:{short:`S`,long:`suffix`,type:`string`,default:`.gz`},test:{short:`t`,long:`test`,type:`boolean`},verbose:{short:`v`,long:`verbose`,type:`boolean`},fast:{short:`1`,long:`fast`,type:`boolean`},level2:{short:`2`,type:`boolean`},level3:{short:`3`,type:`boolean`},level4:{short:`4`,type:`boolean`},level5:{short:`5`,type:`boolean`},level6:{short:`6`,type:`boolean`},level7:{short:`7`,type:`boolean`},level8:{short:`8`,type:`boolean`},best:{short:`9`,long:`best`,type:`boolean`}},IC={name:`gzip`,async execute(e,t){return{...await jC(e,t,`gzip`),stdoutEncoding:`binary`}}},LC={name:`gunzip`,async execute(e,t){return{...await jC(e,t,`gunzip`),stdoutEncoding:`binary`}}},RC={name:`zcat`,async execute(e,t){return{...await jC(e,t,`zcat`),stdoutEncoding:`binary`}}},zC={name:`gzip`,flags:[{flag:`-c`,type:`boolean`},{flag:`-d`,type:`boolean`},{flag:`-f`,type:`boolean`},{flag:`-k`,type:`boolean`},{flag:`-l`,type:`boolean`},{flag:`-n`,type:`boolean`},{flag:`-q`,type:`boolean`},{flag:`-r`,type:`boolean`},{flag:`-t`,type:`boolean`},{flag:`-v`,type:`boolean`},{flag:`-1`,type:`boolean`},{flag:`-9`,type:`boolean`}],stdinType:`binary`,needsFiles:!0},BC={name:`gunzip`,flags:[{flag:`-c`,type:`boolean`},{flag:`-f`,type:`boolean`},{flag:`-k`,type:`boolean`},{flag:`-q`,type:`boolean`},{flag:`-v`,type:`boolean`}],stdinType:`binary`,needsFiles:!0},VC={name:`zcat`,flags:[{flag:`-f`,type:`boolean`},{flag:`-q`,type:`boolean`},{flag:`-v`,type:`boolean`}],stdinType:`binary`,needsFiles:!0}});function UC(e,t){if(e instanceof Uint8Array)return e;if(t===`base64`)return Uint8Array.from(atob(e),e=>e.charCodeAt(0));if(t===`hex`){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}if(t===`binary`||t===`latin1`){if(e.length<=65536)return Uint8Array.from(e,e=>e.charCodeAt(0));let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}return KC.encode(e)}function WC(e,t){if(t===`base64`){if(typeof Buffer<`u`)return Buffer.from(e).toString(`base64`);let t=65536,n=``;for(let r=0;r<e.length;r+=t){let i=e.subarray(r,r+t);n+=String.fromCharCode(...i)}return btoa(n)}if(t===`hex`)return Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``);if(t===`binary`||t===`latin1`){if(typeof Buffer<`u`)return Buffer.from(e).toString(t);let n=65536;if(e.length<=n)return String.fromCharCode(...e);let r=``;for(let t=0;t<e.length;t+=n){let i=e.subarray(t,t+n);r+=String.fromCharCode(...i)}return r}return qC.decode(e)}function GC(e){if(e!=null)return typeof e==`string`?e:e.encoding??void 0}var KC,qC,JC=x(()=>{KC=new TextEncoder,qC=new TextDecoder});function YC(e){let t=e.indexOf(`=`);if(t>=0){let n=e.slice(0,t),r=e.slice(t+1);return n?`${encodeURIComponent(n)}=${encodeURIComponent(r)}`:encodeURIComponent(r)}return encodeURIComponent(e)}function XC(e){let t=e.indexOf(`=`);if(t<0)return null;let n=e.slice(0,t),r=e.slice(t+1),i,a,o=r.match(/;type=([^;]+)$/);o&&(a=o[1],r=r.slice(0,-o[0].length));let s=r.match(/;filename=([^;]+)/);return s&&(i=s[1],r=r.replace(s[0],``)),(r.startsWith(`@`)||r.startsWith(`<`))&&(i??=r.slice(1).split(`/`).pop()),{name:n,value:r,filename:i,contentType:a}}function ZC(e,t){let n=`----CurlFormBoundary${Date.now().toString(36)}`,r=[];for(let i of e){let e=i.value;if(e.startsWith(`@`)||e.startsWith(`<`)){let n=e.slice(1);e=t.get(n)??``}let a=`--${n}\r
774
+ `;i.filename?(a+=`Content-Disposition: form-data; name="${i.name}"; filename="${i.filename}"\r
775
+ `,i.contentType&&(a+=`Content-Type: ${i.contentType}\r
776
+ `)):a+=`Content-Disposition: form-data; name="${i.name}"\r
777
+ `,a+=`\r
778
+ ${e}\r
779
+ `,r.push(a)}return r.push(`--${n}--\r
780
+ `),{body:r.join(``),boundary:n}}var QC=x(()=>{}),$C,ew=x(()=>{$C={name:`curl`,summary:`transfer a URL`,usage:`curl [OPTIONS] URL`,options:[`-X, --request METHOD HTTP method (GET, POST, PUT, DELETE, etc.)`,`-H, --header HEADER Add header (can be used multiple times)`,`-d, --data DATA HTTP POST data (DATA=@file reads from file, strips newlines)`,` --data-raw DATA HTTP POST data (no @ interpretation)`,` --data-binary DATA HTTP POST binary data (DATA=@file reads file verbatim)`,` --data-urlencode DATA URL-encode and POST data (supports @file and name@file)`,`-F, --form NAME=VALUE Multipart form data`,`-u, --user USER:PASS HTTP authentication`,`-A, --user-agent STR Set User-Agent header`,`-e, --referer URL Set Referer header`,`-b, --cookie DATA Send cookies (name=value or @file)`,`-c, --cookie-jar FILE Save cookies to file`,`-T, --upload-file FILE Upload file (PUT)`,`-o, --output FILE Write output to file`,`-O, --remote-name Write to file named from URL`,`-I, --head Show headers only (HEAD request)`,`-i, --include Include response headers in output`,`-s, --silent Silent mode (no progress)`,`-S, --show-error Show errors even when silent`,`-f, --fail Fail silently on HTTP errors (no output)`,`-L, --location Follow redirects (default)`,` --max-redirs NUM Maximum redirects (default: 20)`,`-m, --max-time SECS Maximum time for request`,` --connect-timeout SECS Connection timeout`,`-w, --write-out FMT Output format after completion`,`-v, --verbose Verbose output`,` --help Display this help and exit`,``,`Note: Network access must be configured via BashEnv network option.`,` curl is not available by default for security reasons.`]}});function tw(e,t,n){n.allowFile&&t.startsWith(`@`)?(e.dataFile={mode:n.binary?`binary`:`ascii`,path:t.slice(1)},e.data=void 0):(e.data=t,e.dataFile=void 0),n.binary&&(e.dataBinary=!0)}function nw(e,t){if(t.startsWith(`@`)){e.urlencodeFiles.push({path:t.slice(1)});return}let n=t.indexOf(`@`),r=t.indexOf(`=`);if(n>0&&(r<0||n<r)){e.urlencodeFiles.push({name:t.slice(0,n),path:t.slice(n+1)});return}e.data=(e.data?`${e.data}&`:``)+YC(t)}function rw(e){let t={method:`GET`,headers:new ay,dataBinary:!1,urlencodeFiles:[],formFields:[],useRemoteName:!1,headOnly:!1,includeHeaders:!1,silent:!1,showError:!1,failSilently:!1,followRedirects:!0,verbose:!1},n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(i===`-X`||i===`--request`)t.method=e[++r]??`GET`;else if(i.startsWith(`-X`))t.method=i.slice(2);else if(i.startsWith(`--request=`))t.method=i.slice(10);else if(i===`-H`||i===`--header`){let n=e[++r];if(n){let e=n.indexOf(`:`);if(e>0){let r=n.slice(0,e).trim(),i=n.slice(e+1).trim();t.headers.append(r,i)}}}else if(i.startsWith(`--header=`)){let e=i.slice(9),n=e.indexOf(`:`);if(n>0){let r=e.slice(0,n).trim(),i=e.slice(n+1).trim();t.headers.append(r,i)}}else if(i===`-d`||i===`--data`)tw(t,e[++r]??``,{binary:!1,allowFile:!0}),n=!0;else if(i===`--data-raw`)tw(t,e[++r]??``,{binary:!1,allowFile:!1}),n=!0;else if(i.startsWith(`-d`))tw(t,i.slice(2),{binary:!1,allowFile:!0}),n=!0;else if(i.startsWith(`--data=`))tw(t,i.slice(7),{binary:!1,allowFile:!0}),n=!0;else if(i.startsWith(`--data-raw=`))tw(t,i.slice(11),{binary:!1,allowFile:!1}),n=!0;else if(i===`--data-binary`)tw(t,e[++r]??``,{binary:!0,allowFile:!0}),n=!0;else if(i.startsWith(`--data-binary=`))tw(t,i.slice(14),{binary:!0,allowFile:!0}),n=!0;else if(i===`--data-urlencode`)nw(t,e[++r]??``),n=!0;else if(i.startsWith(`--data-urlencode=`))nw(t,i.slice(17)),n=!0;else if(i===`-F`||i===`--form`){let i=XC(e[++r]??``);i&&t.formFields.push(i),n=!0}else if(i.startsWith(`--form=`)){let e=XC(i.slice(7));e&&t.formFields.push(e),n=!0}else if(i===`-u`||i===`--user`)t.user=e[++r];else if(i.startsWith(`-u`))t.user=i.slice(2);else if(i.startsWith(`--user=`))t.user=i.slice(7);else if(i===`-A`||i===`--user-agent`)t.headers.set(`User-Agent`,e[++r]??``);else if(i.startsWith(`-A`))t.headers.set(`User-Agent`,i.slice(2));else if(i.startsWith(`--user-agent=`))t.headers.set(`User-Agent`,i.slice(13));else if(i===`-e`||i===`--referer`)t.headers.set(`Referer`,e[++r]??``);else if(i.startsWith(`-e`))t.headers.set(`Referer`,i.slice(2));else if(i.startsWith(`--referer=`))t.headers.set(`Referer`,i.slice(10));else if(i===`-b`||i===`--cookie`)t.headers.set(`Cookie`,e[++r]??``);else if(i.startsWith(`-b`))t.headers.set(`Cookie`,i.slice(2));else if(i.startsWith(`--cookie=`))t.headers.set(`Cookie`,i.slice(9));else if(i===`-c`||i===`--cookie-jar`)t.cookieJar=e[++r];else if(i.startsWith(`--cookie-jar=`))t.cookieJar=i.slice(13);else if(i===`-T`||i===`--upload-file`)t.uploadFile=e[++r],t.method===`GET`&&(t.method=`PUT`);else if(i.startsWith(`--upload-file=`))t.uploadFile=i.slice(14),t.method===`GET`&&(t.method=`PUT`);else if(i===`-m`||i===`--max-time`){let n=parseFloat(e[++r]??`0`);!Number.isNaN(n)&&n>0&&(t.timeoutMs=n*1e3)}else if(i.startsWith(`--max-time=`)){let e=parseFloat(i.slice(11));!Number.isNaN(e)&&e>0&&(t.timeoutMs=e*1e3)}else if(i===`--connect-timeout`){let n=parseFloat(e[++r]??`0`);!Number.isNaN(n)&&n>0&&t.timeoutMs===void 0&&(t.timeoutMs=n*1e3)}else if(i.startsWith(`--connect-timeout=`)){let e=parseFloat(i.slice(18));!Number.isNaN(e)&&e>0&&t.timeoutMs===void 0&&(t.timeoutMs=e*1e3)}else if(i===`-o`||i===`--output`)t.outputFile=e[++r];else if(i.startsWith(`--output=`))t.outputFile=i.slice(9);else if(i===`-O`||i===`--remote-name`)t.useRemoteName=!0;else if(i===`-I`||i===`--head`)t.headOnly=!0,t.method=`HEAD`;else if(i===`-i`||i===`--include`)t.includeHeaders=!0;else if(i===`-s`||i===`--silent`)t.silent=!0;else if(i===`-S`||i===`--show-error`)t.showError=!0;else if(i===`-f`||i===`--fail`)t.failSilently=!0;else if(i===`-L`||i===`--location`)t.followRedirects=!0;else if(i===`--max-redirs`)r++;else if(!i.startsWith(`--max-redirs=`))if(i===`-w`||i===`--write-out`)t.writeOut=e[++r];else if(i.startsWith(`--write-out=`))t.writeOut=i.slice(12);else if(i===`-v`||i===`--verbose`)t.verbose=!0;else{if(i.startsWith(`--`)&&i!==`--`)return D(`curl`,i);if(i.startsWith(`-`)&&i!==`-`)for(let e of i.slice(1))switch(e){case`s`:t.silent=!0;break;case`S`:t.showError=!0;break;case`f`:t.failSilently=!0;break;case`L`:t.followRedirects=!0;break;case`I`:t.headOnly=!0,t.method=`HEAD`;break;case`i`:t.includeHeaders=!0;break;case`O`:t.useRemoteName=!0;break;case`v`:t.verbose=!0;break;default:return D(`curl`,`-${e}`)}else i.startsWith(`-`)||(t.url=i)}}return n&&t.method===`GET`&&(t.method=`POST`),t}var iw=x(()=>{oy(),O(),QC()});function aw(e){return Object.entries(e).map(([e,t])=>`${e}: ${t}`).join(`\r
781
+ `)}function ow(e){try{return new URL(e).pathname.split(`/`).pop()||`index.html`}catch{return`index.html`}}function sw(e,t){let n=e;return n=n.replace(/%\{http_code\}/g,String(t.status)),n=n.replace(/%\{content_type\}/g,t.headers[`content-type`]||``),n=n.replace(/%\{url_effective\}/g,t.url),n=n.replace(/%\{size_download\}/g,String(t.bodyLength)),n=n.replace(/\\n/g,`
782
+ `),n}var cw=x(()=>{}),lw={};S(lw,{curlCommand:()=>_w});async function uw(e,t){if(e.dataFile){let n=t.fs.resolvePath(t.cwd,e.dataFile.path),r=await t.fs.readFile(n);return e.dataFile.mode===`ascii`&&(r=r.replace(/[\r\n]/g,``)),e.data?`${r}&${e.data}`:r}return e.data}async function dw(e,t,n){if(e.urlencodeFiles.length===0)return n;let r=n?[n]:[];for(let n of e.urlencodeFiles){let e=t.fs.resolvePath(t.cwd,n.path),i=await t.fs.readFile(e),a=encodeURIComponent(i);r.push(n.name?`${encodeURIComponent(n.name)}=${a}`:a)}return r.join(`&`)}async function fw(e,t){if(e.uploadFile){let n=t.fs.resolvePath(t.cwd,e.uploadFile);return{body:await t.fs.readFile(n)}}if(e.formFields.length>0){let n=new Map;for(let r of e.formFields)if(r.value.startsWith(`@`)||r.value.startsWith(`<`)){let e=t.fs.resolvePath(t.cwd,r.value.slice(1));try{let i=await t.fs.readFile(e);n.set(r.value.slice(1),i)}catch{n.set(r.value.slice(1),``)}}let{body:r,boundary:i}=ZC(e.formFields,n);return{body:r,contentType:`multipart/form-data; boundary=${i}`}}let n=await uw(e,t);return n=await dw(e,t,n),n===void 0?{}:{body:n}}function pw(e,t){let n=new ay(e.headers);if(e.user){let t=Buffer.from(e.user).toString(`base64`);n.set(`Authorization`,`Basic ${t}`)}return t&&!n.has(`Content-Type`)&&n.set(`Content-Type`,t),n}async function mw(e,t,n){if(!e.cookieJar)return;let r=t[`set-cookie`];if(!r)return;let i=n.fs.resolvePath(n.cwd,e.cookieJar);await n.fs.writeFile(i,r)}function hw(e){return WC(e,`binary`)}function gw(e,t,n){let r=``;if(e.verbose){r+=`> ${e.method} ${n}
783
+ `;for(let[t,n]of e.headers)r+=`> ${t}: ${n}
784
+ `;r+=`>
785
+ `,r+=`< HTTP/1.1 ${t.status} ${t.statusText}
786
+ `;for(let[e,n]of Object.entries(t.headers))r+=`< ${e}: ${n}
787
+ `;r+=`<
788
+ `}return e.includeHeaders&&!e.verbose&&(r+=`HTTP/1.1 ${t.status} ${t.statusText}\r
789
+ `,r+=aw(t.headers),r+=`\r
790
+ \r
791
+ `),e.headOnly?e.includeHeaders||e.verbose||(r+=`HTTP/1.1 ${t.status} ${t.statusText}\r
792
+ `,r+=aw(t.headers),r+=`\r
793
+ `):r+=hw(t.body),e.writeOut&&(r+=sw(e.writeOut,{status:t.status,headers:t.headers,url:t.url,bodyLength:t.body.byteLength})),r}var _w,vw=x(()=>{JC(),Yr(),oy(),O(),QC(),ew(),iw(),cw(),_w={name:`curl`,async execute(e,t){if(E(e))return T($C);let n=rw(e);if(`exitCode`in n)return n;let r=n;if(!r.url)return{stdout:``,stderr:`curl: no URL specified
794
+ `,exitCode:2};if(!t.fetch)return{stdout:``,stderr:`curl: internal error: fetch not available
795
+ `,exitCode:1};let i=r.url;i.match(/^https?:\/\//)||(i=`https://${i}`);try{let{body:e,contentType:n}=await fw(r,t),a=pw(r,n),o=await t.fetch(i,{method:r.method,headers:a,body:e,followRedirects:r.followRedirects,timeoutMs:r.timeoutMs});if(await mw(r,o.headers,t),r.failSilently&&o.status>=400)return{stdout:``,stderr:r.showError||!r.silent?`curl: (22) The requested URL returned error: ${o.status}
796
+ `:``,exitCode:22};let s=gw(r,o,i);if(r.outputFile||r.useRemoteName){let e=r.outputFile||ow(i),n=t.fs.resolvePath(t.cwd,e);await t.fs.writeFile(n,r.headOnly?``:o.body),r.verbose||(s=``),r.writeOut&&(s=sw(r.writeOut,{status:o.status,headers:o.headers,url:o.url,bodyLength:o.body.byteLength}))}return{stdout:s,stderr:``,exitCode:0,stdoutKind:`bytes`}}catch(e){let t=Jr(e),n=1;return t.includes(`Network access denied`)?n=7:t.includes(`HTTP method`)&&t.includes(`not allowed`)?n=3:t.includes(`Redirect target not in allow-list`)||t.includes(`Too many redirects`)?n=47:t.includes(`aborted`)&&(n=28),{stdout:``,stderr:!r.silent||r.showError?`curl: (${n}) ${t}
797
+ `:``,exitCode:n}}}}});function yw(e){let{pid:t,ppid:n,uid:r,gid:i}=e;return`Name: bash
798
+ State: R (running)
799
+ Pid: ${t}
800
+ PPid: ${n}
801
+ Uid: ${r} ${r} ${r} ${r}
802
+ Gid: ${i} ${i} ${i} ${i}
803
+ `}var bw,xw,Sw=x(()=>{bw=`5.1.0(1)-release`,xw=`Linux version 5.15.0-generic (just-bash) #1 SMP PREEMPT`}),G,Cw=x(()=>{G={script(e){return{type:`Script`,statements:e}},statement(e,t=[],n=!1,r,i){let a={type:`Statement`,pipelines:e,operators:t,background:n};return r&&(a.deferredError=r),i!==void 0&&(a.sourceText=i),a},pipeline(e,t=!1,n=!1,r=!1,i){return{type:`Pipeline`,commands:e,negated:t,timed:n,timePosix:r,pipeStderr:i}},simpleCommand(e,t=[],n=[],r=[]){return{type:`SimpleCommand`,name:e,args:t,assignments:n,redirections:r}},word(e){return{type:`Word`,parts:e}},literal(e){return{type:`Literal`,value:e}},singleQuoted(e){return{type:`SingleQuoted`,value:e}},doubleQuoted(e){return{type:`DoubleQuoted`,parts:e}},escaped(e){return{type:`Escaped`,value:e}},parameterExpansion(e,t=null){return{type:`ParameterExpansion`,parameter:e,operation:t}},commandSubstitution(e,t=!1){return{type:`CommandSubstitution`,body:e,legacy:t}},arithmeticExpansion(e){return{type:`ArithmeticExpansion`,expression:e}},assignment(e,t,n=!1,r=null){return{type:`Assignment`,name:e,value:t,append:n,array:r}},redirection(e,t,n=null,r){let i={type:`Redirection`,fd:n,operator:e,target:t};return r&&(i.fdVariable=r),i},hereDoc(e,t,n=!1,r=!1){return{type:`HereDoc`,delimiter:e,content:t,stripTabs:n,quoted:r}},ifNode(e,t=null,n=[]){return{type:`If`,clauses:e,elseBody:t,redirections:n}},forNode(e,t,n,r=[]){return{type:`For`,variable:e,words:t,body:n,redirections:r}},whileNode(e,t,n=[]){return{type:`While`,condition:e,body:t,redirections:n}},untilNode(e,t,n=[]){return{type:`Until`,condition:e,body:t,redirections:n}},caseNode(e,t,n=[]){return{type:`Case`,word:e,items:t,redirections:n}},caseItem(e,t,n=`;;`){return{type:`CaseItem`,patterns:e,body:t,terminator:n}},subshell(e,t=[]){return{type:`Subshell`,body:e,redirections:t}},group(e,t=[]){return{type:`Group`,body:e,redirections:t}},functionDef(e,t,n=[],r){return{type:`FunctionDef`,name:e,body:t,redirections:n,sourceFile:r}},conditionalCommand(e,t=[],n){return{type:`ConditionalCommand`,expression:e,redirections:t,line:n}},arithmeticCommand(e,t=[],n){return{type:`ArithmeticCommand`,expression:e,redirections:t,line:n}}}});function ww(e,t){let n=e.length,r=t+3,i=2,a=!1,o=!1;for(;r<n&&i>0;){let t=e[r];if(a){t===`'`&&(a=!1),r++;continue}if(o){if(t===`\\`){r+=2;continue}t===`"`&&(o=!1),r++;continue}if(t===`'`){a=!0,r++;continue}if(t===`"`){o=!0,r++;continue}if(t===`\\`){r+=2;continue}if(t===`(`){i++,r++;continue}if(t===`)`){if(i--,i===1){let t=r+1;return!(t<n&&e[t]===`)`)}if(i===0)return!1;r++;continue}if(i===1&&(t===`|`&&r+1<n&&e[r+1]===`|`||t===`&`&&r+1<n&&e[r+1]===`&`||t===`|`&&r+1<n&&e[r+1]!==`|`))return!0;r++}return!1}function Tw(e,t){let n=``,r=t,i=e=>e===` `||e===` `||e===`
804
+ `||e===`;`||e===`&`||e===`|`||e===`<`||e===`>`||e===`(`||e===`)`;for(;r<e.length;){let t=e[r];if(t===`'`){for(r++;r<e.length&&e[r]!==`'`;)n+=e[r],r++;r<e.length&&r++;continue}if(t===`"`){for(r++;r<e.length&&e[r]!==`"`;)e[r]===`\\`&&r+1<e.length&&r++,n+=e[r],r++;r<e.length&&r++;continue}if(t===`\\`&&r+1<e.length){n+=e[r+1],r+=2;continue}if(i(t))break;n+=t,r++}return{delim:n,endPos:r}}function Ew(e,t,n){let r=t+1;for(let{delim:t,stripTabs:i}of n)for(;;){if(r>=e.length)return e.length;let n=e.indexOf(`
805
+ `,r);n===-1&&(n=e.length);let a=e.slice(r,n);if(i&&(a=a.replace(/^\t+/,``)),a===t){r=n+1;break}if(n>=e.length)return e.length;r=n+1}return Math.min(r,e.length)}function Dw(e,t,n,r){let i=t+2,a=1,o=i,s=!1,c=!1,l=0,u=!1,d=``,f=[],p=0;for(;o<e.length&&a>0;){let t=e[o];if(s)t===`'`&&(s=!1);else if(c)t===`\\`&&o+1<e.length?o++:t===`"`&&(c=!1);else{if(t===`(`&&e[o+1]===`(`?p++:t===`)`&&e[o+1]===`)`&&p>0&&p--,p===0&&t===`<`&&e[o+1]===`<`&&e[o+2]!==`<`){let t=o+2,n=!1;for(e[t]===`-`&&(n=!0,t++);e[t]===` `||e[t]===` `;)t++;let{delim:r,endPos:i}=Tw(e,t);if(r.length>0){f.push({delim:r,stripTabs:n}),d=``,o=i;continue}}if(t===`
806
+ `&&f.length>0){let t=Ew(e,o,f);f.length=0,d=``,o=t;continue}t===`'`?(s=!0,d=``):t===`"`?(c=!0,d=``):t===`\\`&&o+1<e.length?(o++,d=``):/[a-zA-Z_]/.test(t)?d+=t:(d===`case`?(l++,u=!1):d===`in`&&l>0?u=!0:d===`esac`&&l>0&&(l--,u=!1),d=``,t===`(`?o>0&&e[o-1]===`$`?a++:u||a++:t===`)`?u?u=!1:a--:t===`;`&&l>0&&o+1<e.length&&e[o+1]===`;`&&(u=!0))}a>0&&o++}a>0&&r("unexpected EOF while looking for matching `)'");let m=e.slice(i,o),h=n().parse(m);return{part:G.commandSubstitution(h,!1),endIndex:o+1}}function Ow(e,t,n,r,i){let a=t+1,o=``;for(;a<e.length&&e[a]!=="`";)if(e[a]===`\\`){let t=e[a+1];t===`$`||t==="`"||t===`\\`||t===`
807
+ `||n&&t===`"`?(t!==`
808
+ `&&(o+=t),a+=2):(o+=e[a],a++)}else o+=e[a],a++;a>=e.length&&i("unexpected EOF while looking for matching ``'");let s=r().parse(o);return{part:G.commandSubstitution(s,!0),endIndex:a+1}}var kw=x(()=>{Cw()});function Aw(e){let t=e.match(/^[a-zA-Z_][a-zA-Z0-9_]*/);if(!t)return!1;let n=e.slice(t[0].length);if(n===``||n===`+`)return!0;if(n[0]===`[`){let e=0,t=0;for(;t<n.length;t++)if(n[t]===`[`)e++;else if(n[t]===`]`&&(e--,e===0))break;if(e!==0||t>=n.length)return!1;let r=n.slice(t+1);return r===``||r===`+`}return!1}function jw(e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(r===`[`)t++;else if(r===`]`)t--;else{if(t===0&&r===`=`)return n;if(t===0&&r===`+`&&e[n+1]===`=`)return n+1}}return-1}function Mw(e){return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e)}function Nw(e){return e===` `||e===` `||e===`
809
+ `||e===`;`||e===`&`||e===`|`||e===`(`||e===`)`||e===`<`||e===`>`}var Pw,K,Fw,Iw,Lw,Rw,zw,Bw,Vw=x(()=>{kw(),Pw=10485760,(function(e){e.EOF=`EOF`,e.NEWLINE=`NEWLINE`,e.SEMICOLON=`SEMICOLON`,e.AMP=`AMP`,e.PIPE=`PIPE`,e.PIPE_AMP=`PIPE_AMP`,e.AND_AND=`AND_AND`,e.OR_OR=`OR_OR`,e.BANG=`BANG`,e.LESS=`LESS`,e.GREAT=`GREAT`,e.DLESS=`DLESS`,e.DGREAT=`DGREAT`,e.LESSAND=`LESSAND`,e.GREATAND=`GREATAND`,e.LESSGREAT=`LESSGREAT`,e.DLESSDASH=`DLESSDASH`,e.CLOBBER=`CLOBBER`,e.TLESS=`TLESS`,e.AND_GREAT=`AND_GREAT`,e.AND_DGREAT=`AND_DGREAT`,e.LPAREN=`LPAREN`,e.RPAREN=`RPAREN`,e.LBRACE=`LBRACE`,e.RBRACE=`RBRACE`,e.DSEMI=`DSEMI`,e.SEMI_AND=`SEMI_AND`,e.SEMI_SEMI_AND=`SEMI_SEMI_AND`,e.DBRACK_START=`DBRACK_START`,e.DBRACK_END=`DBRACK_END`,e.DPAREN_START=`DPAREN_START`,e.DPAREN_END=`DPAREN_END`,e.IF=`IF`,e.THEN=`THEN`,e.ELSE=`ELSE`,e.ELIF=`ELIF`,e.FI=`FI`,e.FOR=`FOR`,e.WHILE=`WHILE`,e.UNTIL=`UNTIL`,e.DO=`DO`,e.DONE=`DONE`,e.CASE=`CASE`,e.ESAC=`ESAC`,e.IN=`IN`,e.FUNCTION=`FUNCTION`,e.SELECT=`SELECT`,e.TIME=`TIME`,e.COPROC=`COPROC`,e.WORD=`WORD`,e.NAME=`NAME`,e.NUMBER=`NUMBER`,e.ASSIGNMENT_WORD=`ASSIGNMENT_WORD`,e.FD_VARIABLE=`FD_VARIABLE`,e.COMMENT=`COMMENT`,e.HEREDOC_CONTENT=`HEREDOC_CONTENT`})(K||={}),Fw=class extends Error{line;column;constructor(e,t,n){super(`line ${t}: ${e}`),this.line=t,this.column=n,this.name=`LexerError`}},Iw=new Map([[`if`,K.IF],[`then`,K.THEN],[`else`,K.ELSE],[`elif`,K.ELIF],[`fi`,K.FI],[`for`,K.FOR],[`while`,K.WHILE],[`until`,K.UNTIL],[`do`,K.DO],[`done`,K.DONE],[`case`,K.CASE],[`esac`,K.ESAC],[`in`,K.IN],[`function`,K.FUNCTION],[`select`,K.SELECT],[`time`,K.TIME],[`coproc`,K.COPROC]]),Lw=[[`;`,`;`,`&`,K.SEMI_SEMI_AND],[`<`,`<`,`<`,K.TLESS],[`&`,`>`,`>`,K.AND_DGREAT]],Rw=[[`[`,`[`,K.DBRACK_START],[`]`,`]`,K.DBRACK_END],[`(`,`(`,K.DPAREN_START],[`)`,`)`,K.DPAREN_END],[`&`,`&`,K.AND_AND],[`|`,`|`,K.OR_OR],[`;`,`;`,K.DSEMI],[`;`,`&`,K.SEMI_AND],[`|`,`&`,K.PIPE_AMP],[`>`,`>`,K.DGREAT],[`<`,`&`,K.LESSAND],[`>`,`&`,K.GREATAND],[`<`,`>`,K.LESSGREAT],[`>`,`|`,K.CLOBBER],[`&`,`>`,K.AND_GREAT]],zw=new Map([[`|`,K.PIPE],[`&`,K.AMP],[`;`,K.SEMICOLON],[`(`,K.LPAREN],[`)`,K.RPAREN],[`<`,K.LESS],[`>`,K.GREAT]]),Bw=class{input;pos=0;line=1;column=1;tokens=[];pendingHeredocs=[];dparenDepth=0;maxHeredocSize;constructor(e,t){this.input=e,this.maxHeredocSize=t?.maxHeredocSize??Pw}tokenize(){let e=this.input.length,t=this.tokens,n=this.pendingHeredocs;for(;this.pos<e;){if(n.length>0&&t.length>0&&t[t.length-1].type===K.NEWLINE){this.readHeredocContent();continue}if(this.skipWhitespace(),this.pos>=e)break;let r=this.nextToken();r&&t.push(r)}return t.push({type:K.EOF,value:``,start:this.pos,end:this.pos,line:this.line,column:this.column}),t}skipWhitespace(){let e=this.input,t=e.length,n=this.pos,r=this.column,i=this.line;for(;n<t;){let t=e[n];if(t===` `||t===` `)n++,r++;else if(t===`\\`&&e[n+1]===`
810
+ `)n+=2,i++,r=1;else break}this.pos=n,this.column=r,this.line=i}nextToken(){let e=this.input,t=this.pos,n=this.line,r=this.column,i=e[t],a=e[t+1],o=e[t+2];if(i===`#`&&this.dparenDepth===0)return this.readComment(t,n,r);if(i===`
811
+ `)return this.pos=t+1,this.line++,this.column=1,{type:K.NEWLINE,value:`
812
+ `,start:t,end:t+1,line:n,column:r};if(i===`<`&&a===`<`&&o===`-`)return this.pos=t+3,this.column=r+3,this.registerHeredocFromLookahead(!0),this.makeToken(K.DLESSDASH,`<<-`,t,n,r);for(let[e,s,c,l]of Lw)if(i===e&&a===s&&o===c)return this.pos=t+3,this.column=r+3,this.makeToken(l,e+s+c,t,n,r);if(i===`<`&&a===`<`)return this.pos=t+2,this.column=r+2,this.registerHeredocFromLookahead(!1),this.makeToken(K.DLESS,`<<`,t,n,r);if(i===`(`&&a===`(`)return this.dparenDepth>0?(this.pos=t+1,this.column=r+1,this.dparenDepth++,this.makeToken(K.LPAREN,`(`,t,n,r)):this.looksLikeNestedSubshells(t+2)||this.dparenClosesWithSpacedParens(t+2)?(this.pos=t+1,this.column=r+1,this.makeToken(K.LPAREN,`(`,t,n,r)):(this.pos=t+2,this.column=r+2,this.dparenDepth=1,this.makeToken(K.DPAREN_START,`((`,t,n,r));if(i===`)`&&a===`)`)return this.dparenDepth===1?(this.pos=t+2,this.column=r+2,this.dparenDepth=0,this.makeToken(K.DPAREN_END,`))`,t,n,r)):this.dparenDepth>1?(this.pos=t+1,this.column=r+1,this.dparenDepth--,this.makeToken(K.RPAREN,`)`,t,n,r)):(this.pos=t+1,this.column=r+1,this.makeToken(K.RPAREN,`)`,t,n,r));for(let[o,s,c]of Rw)if(!(o===`(`&&s===`(`||o===`)`&&s===`)`)&&!(this.dparenDepth>0&&o===`;`&&(c===K.DSEMI||c===K.SEMI_AND||c===K.SEMI_SEMI_AND))&&i===o&&a===s){if(c===K.DBRACK_START||c===K.DBRACK_END){let n=e[t+2];if(n!==void 0&&n!==` `&&n!==` `&&n!==`
813
+ `&&n!==`;`&&n!==`&`&&n!==`|`&&n!==`(`&&n!==`)`&&n!==`<`&&n!==`>`)break}return this.pos=t+2,this.column=r+2,this.makeToken(c,o+s,t,n,r)}if(i===`(`&&this.dparenDepth>0)return this.pos=t+1,this.column=r+1,this.dparenDepth++,this.makeToken(K.LPAREN,`(`,t,n,r);if(i===`)`&&this.dparenDepth>1)return this.pos=t+1,this.column=r+1,this.dparenDepth--,this.makeToken(K.RPAREN,`)`,t,n,r);let s=zw.get(i);if(s!==void 0)return this.pos=t+1,this.column=r+1,this.makeToken(s,i,t,n,r);if(i===`{`){let e=this.scanFdVariable(t);return e===null?a===`}`?(this.pos=t+2,this.column=r+2,{type:K.WORD,value:`{}`,start:t,end:t+2,line:n,column:r,quoted:!1,singleQuoted:!1}):this.scanBraceExpansion(t)===null&&this.scanLiteralBraceWord(t)===null?a!==void 0&&a!==` `&&a!==` `&&a!==`
814
+ `?this.readWord(t,n,r):(this.pos=t+1,this.column=r+1,this.makeToken(K.LBRACE,`{`,t,n,r)):this.readWordWithBraceExpansion(t,n,r):(this.pos=e.end,this.column=r+(e.end-t),{type:K.FD_VARIABLE,value:e.varname,start:t,end:e.end,line:n,column:r})}return i===`}`?this.isWordCharFollowing(t+1)?this.readWord(t,n,r):(this.pos=t+1,this.column=r+1,this.makeToken(K.RBRACE,`}`,t,n,r)):i===`!`?a===`=`?(this.pos=t+2,this.column=r+2,this.makeToken(K.WORD,`!=`,t,n,r)):(this.pos=t+1,this.column=r+1,this.makeToken(K.BANG,`!`,t,n,r)):this.readWord(t,n,r)}looksLikeNestedSubshells(e){let t=this.input,n=t.length,r=e;for(;r<n&&(t[r]===` `||t[r]===` `);)r++;if(r>=n)return!1;let i=t[r];if(i===`(`)return this.looksLikeNestedSubshells(r+1);let a=/[a-zA-Z_]/.test(i),o=i===`!`||i===`[`;if(!a&&!o)return!1;let s=r;for(;s<n&&/[a-zA-Z0-9_\-.]/.test(t[s]);)s++;if(s===r)return o;let c=s;for(;c<n&&(t[c]===` `||t[c]===` `);)c++;if(c>=n)return!1;let l=t[c];if(l===`=`&&t[c+1]!==`=`||l===`
815
+ `||s===c&&/[+\-*/%<>&|^!~?:]/.test(l)&&l!==`-`||l===`)`&&t[c+1]===`)`)return!1;if(c>s&&(l===`-`||l===`"`||l===`'`||l===`$`||/[a-zA-Z_/.]/.test(l))){let e=c;for(;e<n&&t[e]!==`
816
+ `;){if(t[e]===`)`)return!0;e++}return!1}if(l===`)`){let e=c+1;for(;e<n&&(t[e]===` `||t[e]===` `);)e++;if(t[e]===`|`&&t[e+1]===`|`||t[e]===`&`&&t[e+1]===`&`||t[e]===`;`||t[e]===`|`&&t[e+1]!==`|`)return!0}return!1}makeToken(e,t,n,r,i){return{type:e,value:t,start:n,end:this.pos,line:r,column:i}}readComment(e,t,n){let r=this.input,i=r.length,a=this.pos;for(;a<i&&r[a]!==`
817
+ `;)a++;let o=r.slice(e,a);return this.pos=a,this.column=n+(a-e),{type:K.COMMENT,value:o,start:e,end:a,line:t,column:n}}readWord(e,t,n){let r=this.input,i=r.length,a=this.pos,o=a;for(;a<i;){let e=r[a];if(e===` `||e===` `||e===`
818
+ `||e===`;`||e===`&`||e===`|`||e===`(`||e===`)`||e===`<`||e===`>`||e===`'`||e===`"`||e===`\\`||e===`$`||e==="`"||e===`{`||e===`}`||e===`~`||e===`*`||e===`?`||e===`[`)break;a++}if(a>o){let s=r[a];if(!(s===`(`&&a>o&&`@*+?!`.includes(r[a-1]))&&(a>=i||s===` `||s===` `||s===`
819
+ `||s===`;`||s===`&`||s===`|`||s===`(`||s===`)`||s===`<`||s===`>`)){let i=r.slice(o,a);this.pos=a,this.column=n+(a-o);let s=Iw.get(i);if(s!==void 0)return{type:s,value:i,start:e,end:a,line:t,column:n};let c=jw(i);return c>0&&Aw(i.slice(0,c))?{type:K.ASSIGNMENT_WORD,value:i,start:e,end:a,line:t,column:n}:/^[0-9]+$/.test(i)?{type:K.NUMBER,value:i,start:e,end:a,line:t,column:n}:/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(i)?{type:K.NAME,value:i,start:e,end:a,line:t,column:n,quoted:!1,singleQuoted:!1}:{type:K.WORD,value:i,start:e,end:a,line:t,column:n,quoted:!1,singleQuoted:!1}}}a=this.pos;let s=this.column,c=this.line,l=``,u=!1,d=!1,f=!1,p=!1,m=r[a]===`"`||r[a]===`'`,h=!1,g=0;for(;a<i;){let e=r[a];if(!f&&!p){if(e===`(`&&l.length>0&&`@*+?!`.includes(l[l.length-1])){let e=this.scanExtglobPattern(a);if(e!==null){l+=e.content,a=e.end,s+=e.content.length;continue}}if(e===`[`&&g===0){if(/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(l)){let t=a+1<i?r[a+1]:``;if(t===`^`||t===`!`){l+=e,a++,s++;continue}g=1,l+=e,a++,s++;continue}}else if(e===`[`&&g>0){l.length>0&&l[l.length-1]!==`\\`&&g++,l+=e,a++,s++;continue}else if(e===`]`&&g>0){l.length>0&&l[l.length-1]!==`\\`&&g--,l+=e,a++,s++;continue}if(g>0){if(e===`
820
+ `)break;l+=e,a++,s++;continue}if(e===` `||e===` `||e===`
821
+ `||e===`;`||e===`&`||e===`|`||e===`(`||e===`)`||e===`<`||e===`>`)break}if(e===`$`&&a+1<i&&r[a+1]===`'`&&!f&&!p){for(l+=`$'`,a+=2,s+=2;a<i&&r[a]!==`'`;)r[a]===`\\`&&a+1<i?(l+=r[a]+r[a+1],a+=2,s+=2):(l+=r[a],a++,s++);a<i&&(l+=`'`,a++,s++);continue}if(e===`$`&&a+1<i&&r[a+1]===`"`&&!f&&!p){a++,s++,p=!0,u=!0,l===``&&(m=!0),a++,s++;continue}if(e===`'`&&!p){if(f)if(f=!1,!m||h)l+=e;else{let t=a+1<i?r[a+1]:``;t&&!Nw(t)&&t!==`'`&&(t===`"`?(h=!0,l+=e,d=!1,u=!1):(h=!0,l+=e))}else f=!0,m&&!h?(d=!0,u=!0):l+=e;a++,s++;continue}if(e===`"`&&!f){if(p)if(p=!1,!m||h)l+=e;else{let t=a+1<i?r[a+1]:``;t&&!Nw(t)&&t!==`"`&&(t===`'`?(h=!0,l+=e,d=!1,u=!1):(h=!0,l+=e))}else p=!0,m&&!h?u=!0:l+=e;a++,s++;continue}if(e===`\\`&&!f&&a+1<i){let t=r[a+1];if(t===`
822
+ `){a+=2,c++,s=1;continue}if(p){if(t===`"`||t===`\\`||t===`$`||t==="`"||t===`
823
+ `){if(t===`
824
+ `){a+=2,s=1,c++;continue}l+=e+t,a+=2,s+=2;continue}}else{t===`\\`||t===`"`||t===`'`||t==="`"||t===`*`||t===`?`||t===`[`||t===`]`||t===`(`||t===`)`||t===`$`||t===`-`||t===`.`||t===`^`||t===`+`||t===`{`||t===`}`?l+=e+t:l+=t,a+=2,s+=2;continue}}if(e===`$`&&a+1<i&&r[a+1]===`(`&&!f){l+=e,a++,s++,l+=r[a],a++,s++;let t=1,n=!1,o=!1,u=0,d=!1,f=``,p=[],m=r[a]===`(`&&!this.dollarDparenIsSubshell(a),h=+!!m;for(;t>0&&a<i;){let e=r[a];if(l+=e,n)e===`'`&&(n=!1);else if(o)e===`\\`&&a+1<i?(l+=r[a+1],a++,s++):e===`"`&&(o=!1);else{if(e===`(`&&r[a+1]===`(`?h++:e===`)`&&r[a+1]===`)`&&h>0&&h--,h===0&&e===`<`&&r[a+1]===`<`&&r[a+2]!==`<`){let e=a+2,t=!1;for(r[e]===`-`&&(t=!0,e++);r[e]===` `||r[e]===` `;)e++;let{delim:n,endPos:i}=Tw(r,e);if(n.length>0){l+=r.slice(a+1,i),s+=i-a,p.push({delim:n,stripTabs:t}),a=i;continue}}if(e===`
825
+ `&&p.length>0){c++,s=0;let e=a+1;for(let{delim:t,stripTabs:n}of p)for(;!(e>=i);){let a=r.indexOf(`
826
+ `,e);a===-1&&(a=i);let o=r.slice(e,a),s=n?o.replace(/^\t+/,``):o;l+=r.slice(e,Math.min(a+1,i)),a<i&&c++;let u=a>=i;if(e=a+1,s===t||u)break}p.length=0,s=0,a=Math.min(e,i);continue}if(e===`'`)n=!0,f=``;else if(e===`"`)o=!0,f=``;else if(e===`\\`&&a+1<i)l+=r[a+1],a++,s++,f=``;else if(e===`$`&&a+1<i&&r[a+1]===`{`){a++,s++,l+=r[a],a++,s++;let e=1,t=!1,n=!1;for(;e>0&&a<i;){let o=r[a];if(o===`\\`&&a+1<i&&!t){l+=o,a++,s++,l+=r[a],a++,s++;continue}l+=o,t?o===`'`&&(t=!1):n?o===`"`&&(n=!1):o===`'`?t=!0:o===`"`?n=!0:o===`{`?e++:o===`}`&&e--,o===`
827
+ `?(c++,s=0):s++,a++}f=``;continue}else if(e===`#`&&!m&&(f===``||/\s/.test(r[a-1]||``))){for(;a+1<i&&r[a+1]!==`
828
+ `;)a++,s++,l+=r[a];f=``}else/[a-zA-Z_]/.test(e)?f+=e:(f===`case`?(u++,d=!1):f===`in`&&u>0?d=!0:f===`esac`&&u>0&&(u--,d=!1),f=``,e===`(`?a>0&&r[a-1]===`$`?t++:d||t++:e===`)`?d?d=!1:t--:e===`;`&&u>0&&(a+1<i&&r[a+1]===`;`||a+1<i&&r[a+1]===`&`)&&(d=!0))}e===`
829
+ `&&(c++,s=0,f=``),a++,s++}continue}if(e===`$`&&a+1<i&&r[a+1]===`[`&&!f){l+=e,a++,s++,l+=r[a],a++,s++;let t=1;for(;t>0&&a<i;){let e=r[a];l+=e,e===`[`?t++:e===`]`?t--:e===`
830
+ `&&(c++,s=0),a++,s++}continue}if(e===`$`&&a+1<i&&r[a+1]===`{`&&!f){l+=e,a++,s++,l+=r[a],a++,s++;let t=1,n=!1,o=!1,u=c,d=s,f=c,p=s;for(;t>0&&a<i;){let e=r[a];if(e===`\\`&&a+1<i&&r[a+1]===`
831
+ `){a+=2,c++,s=1;continue}if(e===`\\`&&a+1<i&&!n){l+=e,a++,s++,l+=r[a],a++,s++;continue}l+=e,n?e===`'`&&(n=!1):o?e===`"`&&(o=!1):e===`'`?(n=!0,u=c,d=s):e===`"`?(o=!0,f=c,p=s):e===`{`?t++:e===`}`&&t--,e===`
832
+ `&&(c++,s=0),a++,s++}if(n)throw new Fw("unexpected EOF while looking for matching `''",u,d);if(o)throw new Fw(`unexpected EOF while looking for matching \`"'`,f,p);continue}if(e===`$`&&a+1<i&&!f){let t=r[a+1];if(t===`#`||t===`?`||t===`$`||t===`!`||t===`@`||t===`*`||t===`-`||t>=`0`&&t<=`9`){l+=e+t,a+=2,s+=2;continue}}if(e==="`"&&!f){for(l+=e,a++,s++;a<i&&r[a]!=="`";){let e=r[a];l+=e,e===`\\`&&a+1<i&&(l+=r[a+1],a++,s++),e===`
833
+ `&&(c++,s=0),a++,s++}a<i&&(l+=r[a],a++,s++);continue}l+=e,a++,e===`
834
+ `?(c++,s=1):s++}if(this.pos=a,this.column=s,this.line=c,h&&m&&(l=r[e]+l,u=!1,d=!1),f||p)throw new Fw(`unexpected EOF while looking for matching \`${f?`'`:`"`}'`,t,n);if(!m&&l.length>=2){if(l[0]===`'`&&l[l.length-1]===`'`){let e=l.slice(1,-1);!e.includes(`'`)&&!e.includes(`"`)&&(l=e,u=!0,d=!0)}else if(l[0]===`"`&&l[l.length-1]===`"`){let e=l.slice(1,-1),t=!1;for(let n=0;n<e.length;n++){if(e[n]===`"`){t=!0;break}e[n]===`\\`&&n+1<e.length&&n++}t||(l=e,u=!0,d=!1)}}if(l===``)return{type:K.WORD,value:``,start:e,end:a,line:t,column:n,quoted:u,singleQuoted:d};let _=Iw.get(l);if(!u&&_!==void 0)return{type:_,value:l,start:e,end:a,line:t,column:n};if(!m){let r=jw(l);if(r>0&&Aw(l.slice(0,r)))return{type:K.ASSIGNMENT_WORD,value:l,start:e,end:a,line:t,column:n,quoted:u,singleQuoted:d}}return/^[0-9]+$/.test(l)?{type:K.NUMBER,value:l,start:e,end:a,line:t,column:n}:Mw(l)?{type:K.NAME,value:l,start:e,end:a,line:t,column:n,quoted:u,singleQuoted:d}:{type:K.WORD,value:l,start:e,end:a,line:t,column:n,quoted:u,singleQuoted:d}}readHeredocContent(){for(;this.pendingHeredocs.length>0;){let e=this.pendingHeredocs.shift();if(!e)break;let t=this.pos,n=this.line,r=this.column,i=``;for(;this.pos<this.input.length;){let t=``;for(;this.pos<this.input.length&&this.input[this.pos]!==`
835
+ `;)t+=this.input[this.pos],this.pos++,this.column++;if((e.stripTabs?t.replace(/^\t+/,``):t)===e.delimiter){this.pos<this.input.length&&this.input[this.pos]===`
836
+ `&&(this.pos++,this.line++,this.column=1);break}if(i+=t,i.length>this.maxHeredocSize)throw new Fw(`Heredoc size limit exceeded (${this.maxHeredocSize} bytes)`,n,r);this.pos<this.input.length&&this.input[this.pos]===`
837
+ `&&(i+=`
838
+ `,this.pos++,this.line++,this.column=1)}this.tokens.push({type:K.HEREDOC_CONTENT,value:i,start:t,end:this.pos,line:n,column:r})}}addPendingHeredoc(e,t,n){this.pendingHeredocs.push({delimiter:e,stripTabs:t,quoted:n})}registerHeredocFromLookahead(e){let t=this.pos,n=this.column;for(;this.pos<this.input.length&&(this.input[this.pos]===` `||this.input[this.pos]===` `);)this.pos++,this.column++;let r=``,i=!1;for(;this.pos<this.input.length;){let e=this.input[this.pos];if(/[\s;<>&|()]/.test(e))break;if(e===`'`||e===`"`){i=!0;let t=e;for(this.pos++,this.column++;this.pos<this.input.length&&this.input[this.pos]!==t;)r+=this.input[this.pos],this.pos++,this.column++;this.pos<this.input.length&&this.input[this.pos]===t&&(this.pos++,this.column++)}else e===`\\`?(i=!0,this.pos++,this.column++,this.pos<this.input.length&&(r+=this.input[this.pos],this.pos++,this.column++)):(r+=e,this.pos++,this.column++)}this.pos=t,this.column=n,r&&this.pendingHeredocs.push({delimiter:r,stripTabs:e,quoted:i})}isWordCharFollowing(e){if(e>=this.input.length)return!1;let t=this.input[e];return!(t===` `||t===` `||t===`
839
+ `||t===`;`||t===`&`||t===`|`||t===`(`||t===`)`||t===`<`||t===`>`)}readWordWithBraceExpansion(e,t,n){let r=this.input,i=r.length,a=e,o=n;for(;a<i;){let e=r[a];if(e===` `||e===` `||e===`
840
+ `||e===`;`||e===`&`||e===`|`||e===`(`||e===`)`||e===`<`||e===`>`)break;if(e===`{`){if(this.scanBraceExpansion(a)!==null){let e=1;for(a++,o++;a<i&&e>0;)r[a]===`{`?e++:r[a]===`}`&&e--,a++,o++;continue}a++,o++;continue}if(e===`}`){a++,o++;continue}if(e===`$`&&a+1<i&&r[a+1]===`(`){a++,o++,a++,o++;let e=1;for(;e>0&&a<i;)r[a]===`(`?e++:r[a]===`)`&&e--,a++,o++;continue}if(e===`$`&&a+1<i&&r[a+1]===`{`){a++,o++,a++,o++;let e=1;for(;e>0&&a<i;)r[a]===`{`?e++:r[a]===`}`&&e--,a++,o++;continue}if(e==="`"){for(a++,o++;a<i&&r[a]!=="`";)r[a]===`\\`&&a+1<i?(a+=2,o+=2):(a++,o++);a<i&&(a++,o++);continue}a++,o++}let s=r.slice(e,a);return this.pos=a,this.column=o,{type:K.WORD,value:s,start:e,end:a,line:t,column:n,quoted:!1,singleQuoted:!1}}scanBraceExpansion(e){let t=this.input,n=t.length,r=e+1,i=1,a=!1,o=!1;for(;r<n&&i>0;){let e=t[r];if(e===`{`)i++,r++;else if(e===`}`)i--,r++;else if(e===`,`&&i===1)a=!0,r++;else if(e===`.`&&r+1<n&&t[r+1]===`.`)o=!0,r+=2;else{if(e===` `||e===` `||e===`
841
+ `||e===`;`||e===`&`||e===`|`)return null;r++}}return i===0&&(a||o)?t.slice(e,r):null}scanLiteralBraceWord(e){let t=this.input,n=t.length,r=e+1,i=1;for(;r<n&&i>0;){let n=t[r];if(n===`{`)i++,r++;else if(n===`}`){if(i--,i===0)return t.slice(e,r+1);r++}else{if(n===` `||n===` `||n===`
842
+ `||n===`;`||n===`&`||n===`|`)return null;r++}}return null}scanExtglobPattern(e){let t=this.input,n=t.length,r=e+1,i=1;for(;r<n&&i>0;){let e=t[r];if(e===`\\`&&r+1<n){r+=2;continue}if(`@*+?!`.includes(e)&&r+1<n&&t[r+1]===`(`){r++,i++,r++;continue}if(e===`(`)i++,r++;else if(e===`)`)i--,r++;else{if(e===`
843
+ `)return null;r++}}return i===0?{content:t.slice(e,r),end:r}:null}scanFdVariable(e){let t=this.input,n=t.length,r=e+1,i=r;for(;r<n;){let e=t[r];if(r===i){if(!(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e===`_`))return null}else if(!(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e>=`0`&&e<=`9`||e===`_`))break;r++}if(r===i)return null;let a=t.slice(i,r);if(r>=n||t[r]!==`}`||(r++,r>=n))return null;let o=t[r],s=r+1<n?t[r+1]:``;return o===`>`||o===`<`||o===`&`&&(s===`>`||s===`<`)?{varname:a,end:r}:null}dollarDparenIsSubshell(e){let t=this.input,n=t.length,r=e+1,i=2,a=!1,o=!1,s=!1;for(;r<n&&i>0;){let e=t[r];if(a){e===`'`&&(a=!1),e===`
844
+ `&&(s=!0),r++;continue}if(o){if(e===`\\`){r+=2;continue}e===`"`&&(o=!1),e===`
845
+ `&&(s=!0),r++;continue}if(e===`'`){a=!0,r++;continue}if(e===`"`){o=!0,r++;continue}if(e===`\\`){r+=2;continue}if(e===`
846
+ `&&(s=!0),e===`(`){i++,r++;continue}if(e===`)`){if(i--,i===1){let e=r+1;if(e<n&&t[e]===`)`)return!1;let i=e,a=!1;for(;i<n&&(t[i]===` `||t[i]===` `||t[i]===`
847
+ `);)a=!0,i++;if(a&&i<n&&t[i]===`)`||s)return!0}if(i===0)return!1;r++;continue}r++}return!1}dparenClosesWithSpacedParens(e){let t=this.input,n=t.length,r=e,i=2,a=!1,o=!1;for(;r<n&&i>0;){let e=t[r];if(a){e===`'`&&(a=!1),r++;continue}if(o){if(e===`\\`){r+=2;continue}e===`"`&&(o=!1),r++;continue}if(e===`'`){a=!0,r++;continue}if(e===`"`){o=!0,r++;continue}if(e===`\\`){r+=2;continue}if(e===`(`){i++,r++;continue}if(e===`)`){if(i--,i===1){let e=r+1;if(e<n&&t[e]===`)`)return!1;let i=e,a=!1;for(;i<n&&(t[i]===` `||t[i]===` `||t[i]===`
848
+ `);)a=!0,i++;if(a&&i<n&&t[i]===`)`)return!0}if(i===0)return!1;r++;continue}if(i===1&&(e===`|`&&r+1<n&&t[r+1]===`|`||e===`&`&&r+1<n&&t[r+1]===`&`||e===`|`&&r+1<n&&t[r+1]!==`|`))return!0;r++}return!1}}}),Hw,Uw,Ww,Gw,Kw,qw,Jw,Yw,Xw=x(()=>{Vw(),Hw=1e6,Uw=1e5,Ww=1e6,Gw=200,Kw=new Set([K.LESS,K.GREAT,K.DLESS,K.DGREAT,K.LESSAND,K.GREATAND,K.LESSGREAT,K.DLESSDASH,K.CLOBBER,K.TLESS,K.AND_GREAT,K.AND_DGREAT]),qw=new Set([K.LESS,K.GREAT,K.DLESS,K.DGREAT,K.LESSAND,K.GREATAND,K.LESSGREAT,K.DLESSDASH,K.CLOBBER,K.TLESS]),Jw=new Set([K.LESS,K.GREAT,K.DLESS,K.DGREAT,K.LESSAND,K.GREATAND,K.LESSGREAT,K.DLESSDASH,K.CLOBBER,K.TLESS,K.AND_GREAT,K.AND_DGREAT]),Yw=class extends Error{line;column;token;constructor(e,t,n,r=void 0){super(`Parse error at ${t}:${n}: ${e}`),this.line=t,this.column=n,this.token=r,this.name=`ParseException`}}});function Zw(e,t){for(;t<e.length;){if(e[t]===`\\`&&e[t+1]===`
849
+ `){t+=2;continue}if(/\s/.test(e[t])){t++;continue}break}return t}function Qw(e){if(e.includes(`#`)){let[t,n]=e.split(`#`),r=Number.parseInt(t,10);if(r<2||r>64)return NaN;if(r<=36){let e=Number.parseInt(n,r);return e>2**53-1?2**53-1:e}let i=0;for(let e of n){let t;if(/[0-9]/.test(e))t=e.charCodeAt(0)-48;else if(/[a-z]/.test(e))t=e.charCodeAt(0)-97+10;else if(/[A-Z]/.test(e))t=e.charCodeAt(0)-65+36;else if(e===`@`)t=62;else if(e===`_`)t=63;else return NaN;if(t>=r)return NaN;if(i=i*r+t,i>2**53-1)return 2**53-1}return i}if(e.startsWith(`0x`)||e.startsWith(`0X`)){let t=Number.parseInt(e.slice(2),16);return t>2**53-1?2**53-1:t}if(e.startsWith(`0`)&&e.length>1&&/^[0-9]+$/.test(e)){if(/[89]/.test(e))return NaN;let t=Number.parseInt(e,8);return t>2**53-1?2**53-1:t}let t=Number.parseInt(e,10);return t>2**53-1?2**53-1:t}function $w(e,t,n,r){if(n.slice(r,r+3)!==`$((`)return null;let i=r+3,a=1,o=i;for(;i<n.length-1&&a>0;)n[i]===`(`&&n[i+1]===`(`?(a++,i+=2):n[i]===`)`&&n[i+1]===`)`?(a--,a>0&&(i+=2)):i++;let{expr:s}=e(t,n.slice(o,i),0);return i+=2,{expr:{type:`ArithNested`,expression:s},pos:i}}function eT(e,t){if(e.slice(t,t+2)!==`$'`)return null;let n=t+2,r=``;for(;n<e.length&&e[n]!==`'`;)if(e[n]===`\\`&&n+1<e.length){let t=e[n+1];switch(t){case`n`:r+=`
850
+ `;break;case`t`:r+=` `;break;case`r`:r+=`\r`;break;case`\\`:r+=`\\`;break;case`'`:r+=`'`;break;default:r+=t}n+=2}else r+=e[n],n++;e[n]===`'`&&n++;let i=Number.parseInt(r,10);return{expr:{type:`ArithNumber`,value:Number.isNaN(i)?0:i},pos:n}}function tT(e,t){if(e.slice(t,t+2)!==`$"`)return null;let n=t+2,r=``;for(;n<e.length&&e[n]!==`"`;)e[n]===`\\`&&n+1<e.length?(r+=e[n+1],n+=2):(r+=e[n],n++);e[n]===`"`&&n++;let i=Number.parseInt(r,10);return{expr:{type:`ArithNumber`,value:Number.isNaN(i)?0:i},pos:n}}var nT,rT=x(()=>{nT=[`=`,`+=`,`-=`,`*=`,`/=`,`%=`,`<<=`,`>>=`,`&=`,`|=`,`^=`]});function iT(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`"`){for(n++;n<e.length&&e[n]!==`"`;)e[n]===`\\`&&n+1<e.length?(t+=e[n+1],n+=2):(t+=e[n],n++);n<e.length&&n++}else t+=e[n],n++;return t}function aT(e,t){let n=iT(t),{expr:r,pos:i}=cT(e,n,0),a=Zw(n,i);if(a<n.length){let e=t.slice(a).trim();if(e)return{type:`ArithmeticExpression`,originalText:t,expression:{type:`ArithSyntaxError`,errorToken:e,message:`${e}: syntax error: invalid arithmetic operator (error token is "${e}")`}}}return{type:`ArithmeticExpression`,expression:r,originalText:t}}function oT(e,t){return{expr:{type:`ArithSyntaxError`,errorToken:e,message:`syntax error: operand expected (error token is "${e}")`},pos:t}}function sT(e,t){return Zw(e,t)>=e.length}function cT(e,t,n){return lT(e,t,n)}function lT(e,t,n){let{expr:r,pos:i}=uT(e,t,n);for(i=Zw(t,i);t[i]===`,`;){if(i++,sT(t,i))return oT(`,`,i);let{expr:n,pos:a}=uT(e,t,i);r={type:`ArithBinary`,operator:`,`,left:r,right:n},i=Zw(t,a)}return{expr:r,pos:i}}function uT(e,t,n){let{expr:r,pos:i}=dT(e,t,n);if(i=Zw(t,i),t[i]===`?`){i++;let{expr:n,pos:a}=cT(e,t,i);if(i=Zw(t,a),t[i]===`:`){i++;let{expr:a,pos:o}=cT(e,t,i);return{expr:{type:`ArithTernary`,condition:r,consequent:n,alternate:a},pos:o}}}return{expr:r,pos:i}}function dT(e,t,n){let{expr:r,pos:i}=fT(e,t,n);for(;i=Zw(t,i),t.slice(i,i+2)===`||`;){if(i+=2,sT(t,i))return oT(`||`,i);let{expr:n,pos:a}=fT(e,t,i);r={type:`ArithBinary`,operator:`||`,left:r,right:n},i=a}return{expr:r,pos:i}}function fT(e,t,n){let{expr:r,pos:i}=pT(e,t,n);for(;i=Zw(t,i),t.slice(i,i+2)===`&&`;){if(i+=2,sT(t,i))return oT(`&&`,i);let{expr:n,pos:a}=pT(e,t,i);r={type:`ArithBinary`,operator:`&&`,left:r,right:n},i=a}return{expr:r,pos:i}}function pT(e,t,n){let{expr:r,pos:i}=mT(e,t,n);for(;i=Zw(t,i),t[i]===`|`&&t[i+1]!==`|`;){if(i++,sT(t,i))return oT(`|`,i);let{expr:n,pos:a}=mT(e,t,i);r={type:`ArithBinary`,operator:`|`,left:r,right:n},i=a}return{expr:r,pos:i}}function mT(e,t,n){let{expr:r,pos:i}=hT(e,t,n);for(;i=Zw(t,i),t[i]===`^`;){if(i++,sT(t,i))return oT(`^`,i);let{expr:n,pos:a}=hT(e,t,i);r={type:`ArithBinary`,operator:`^`,left:r,right:n},i=a}return{expr:r,pos:i}}function hT(e,t,n){let{expr:r,pos:i}=gT(e,t,n);for(;i=Zw(t,i),t[i]===`&`&&t[i+1]!==`&`;){if(i++,sT(t,i))return oT(`&`,i);let{expr:n,pos:a}=gT(e,t,i);r={type:`ArithBinary`,operator:`&`,left:r,right:n},i=a}return{expr:r,pos:i}}function gT(e,t,n){let{expr:r,pos:i}=_T(e,t,n);for(;i=Zw(t,i),t.slice(i,i+2)===`==`||t.slice(i,i+2)===`!=`;){let n=t.slice(i,i+2);if(i+=2,sT(t,i))return oT(n,i);let{expr:a,pos:o}=_T(e,t,i);r={type:`ArithBinary`,operator:n,left:r,right:a},i=o}return{expr:r,pos:i}}function _T(e,t,n){let{expr:r,pos:i}=vT(e,t,n);for(;;)if(i=Zw(t,i),t.slice(i,i+2)===`<=`||t.slice(i,i+2)===`>=`){let n=t.slice(i,i+2);if(i+=2,sT(t,i))return oT(n,i);let{expr:a,pos:o}=vT(e,t,i);r={type:`ArithBinary`,operator:n,left:r,right:a},i=o}else if(t[i]===`<`||t[i]===`>`){let n=t[i];if(i++,sT(t,i))return oT(n,i);let{expr:a,pos:o}=vT(e,t,i);r={type:`ArithBinary`,operator:n,left:r,right:a},i=o}else break;return{expr:r,pos:i}}function vT(e,t,n){let{expr:r,pos:i}=yT(e,t,n);for(;i=Zw(t,i),t.slice(i,i+2)===`<<`||t.slice(i,i+2)===`>>`;){let n=t.slice(i,i+2);if(i+=2,sT(t,i))return oT(n,i);let{expr:a,pos:o}=yT(e,t,i);r={type:`ArithBinary`,operator:n,left:r,right:a},i=o}return{expr:r,pos:i}}function yT(e,t,n){let{expr:r,pos:i}=bT(e,t,n);for(;i=Zw(t,i),(t[i]===`+`||t[i]===`-`)&&t[i+1]!==t[i];){let n=t[i];if(i++,sT(t,i))return oT(n,i);let{expr:a,pos:o}=bT(e,t,i);r={type:`ArithBinary`,operator:n,left:r,right:a},i=o}return{expr:r,pos:i}}function bT(e,t,n){let{expr:r,pos:i}=xT(e,t,n);for(;;)if(i=Zw(t,i),t[i]===`*`&&t[i+1]!==`*`){if(i++,sT(t,i))return oT(`*`,i);let{expr:n,pos:a}=xT(e,t,i);r={type:`ArithBinary`,operator:`*`,left:r,right:n},i=a}else if(t[i]===`/`||t[i]===`%`){let n=t[i];if(i++,sT(t,i))return oT(n,i);let{expr:a,pos:o}=xT(e,t,i);r={type:`ArithBinary`,operator:n,left:r,right:a},i=o}else break;return{expr:r,pos:i}}function xT(e,t,n){let{expr:r,pos:i}=ST(e,t,n),a=Zw(t,i);if(t.slice(a,a+2)===`**`){if(a+=2,sT(t,a))return oT(`**`,a);let{expr:n,pos:i}=xT(e,t,a);return{expr:{type:`ArithBinary`,operator:`**`,left:r,right:n},pos:i}}return{expr:r,pos:i}}function ST(e,t,n){let r=Zw(t,n);if(t.slice(r,r+2)===`++`||t.slice(r,r+2)===`--`){let n=t.slice(r,r+2);r+=2;let{expr:i,pos:a}=ST(e,t,r);return{expr:{type:`ArithUnary`,operator:n,operand:i,prefix:!0},pos:a}}if(t[r]===`+`||t[r]===`-`||t[r]===`!`||t[r]===`~`){let n=t[r];r++;let{expr:i,pos:a}=ST(e,t,r);return{expr:{type:`ArithUnary`,operator:n,operand:i,prefix:!0},pos:a}}return wT(e,t,r)}function CT(e,t){let n=e[t];return n===`$`||n==="`"}function wT(e,t,n){let{expr:r,pos:i}=TT(e,t,n,!1),a=[r];for(;CT(t,i);){let{expr:n,pos:r}=TT(e,t,i,!0);a.push(n),i=r}a.length>1&&(r={type:`ArithConcat`,parts:a});let o;if(t[i]===`[`&&r.type===`ArithConcat`){i++;let{expr:n,pos:r}=cT(e,t,i);o=n,i=r,t[i]===`]`&&i++}if(o&&r.type===`ArithConcat`&&(r={type:`ArithDynamicElement`,nameExpr:r,subscript:o},o=void 0),i=Zw(t,i),r.type===`ArithConcat`||r.type===`ArithVariable`||r.type===`ArithDynamicElement`){for(let n of nT)if(t.slice(i,i+n.length)===n&&t.slice(i,i+n.length+1)!==`==`){i+=n.length;let{expr:a,pos:o}=uT(e,t,i);return r.type===`ArithDynamicElement`?{expr:{type:`ArithDynamicAssignment`,operator:n,target:r.nameExpr,subscript:r.subscript,value:a},pos:o}:r.type===`ArithConcat`?{expr:{type:`ArithDynamicAssignment`,operator:n,target:r,value:a},pos:o}:{expr:{type:`ArithAssignment`,operator:n,variable:r.name,value:a},pos:o}}}if(t.slice(i,i+2)===`++`||t.slice(i,i+2)===`--`){let e=t.slice(i,i+2);return i+=2,{expr:{type:`ArithUnary`,operator:e,operand:r,prefix:!1},pos:i}}return{expr:r,pos:i}}function TT(e,t,n,r=!1){let i=Zw(t,n),a=$w(cT,e,t,i);if(a)return a;let o=eT(t,i);if(o)return o;let s=tT(t,i);if(s)return s;if(t.slice(i,i+2)===`$(`&&t[i+2]!==`(`){i+=2;let e=1,n=i;for(;i<t.length&&e>0;)t[i]===`(`?e++:t[i]===`)`&&e--,e>0&&i++;let r=t.slice(n,i);return i++,{expr:{type:`ArithCommandSubst`,command:r},pos:i}}if(t[i]==="`"){i++;let e=i;for(;i<t.length&&t[i]!=="`";)i++;let n=t.slice(e,i);return t[i]==="`"&&i++,{expr:{type:`ArithCommandSubst`,command:n},pos:i}}if(t[i]===`(`){i++;let{expr:n,pos:r}=cT(e,t,i);return i=Zw(t,r),t[i]===`)`&&i++,{expr:{type:`ArithGroup`,expression:n},pos:i}}if(t[i]===`'`){i++;let e=``;for(;i<t.length&&t[i]!==`'`;)e+=t[i],i++;t[i]===`'`&&i++;let n=Number.parseInt(e,10);return{expr:{type:`ArithSingleQuote`,content:e,value:Number.isNaN(n)?0:n},pos:i}}if(t[i]===`"`){i++;let n=``;for(;i<t.length&&t[i]!==`"`;)t[i]===`\\`&&i+1<t.length?(n+=t[i+1],i+=2):(n+=t[i],i++);t[i]===`"`&&i++;let r=n.trim();if(!r)return{expr:{type:`ArithNumber`,value:0},pos:i};let{expr:a}=cT(e,r,0);return{expr:a,pos:i}}if(/[0-9]/.test(t[i])){let e=``,n=!1,r=!1;for(;i<t.length;){let a=t[i];if(n)if(/[0-9a-zA-Z@_]/.test(a))e+=a,i++;else break;else if(a===`#`)n=!0,e+=a,i++;else if(e===`0`&&(a===`x`||a===`X`)&&i+1<t.length&&/[0-9a-fA-F]/.test(t[i+1]))r=!0,e+=a,i++;else if(r&&/[0-9a-fA-F]/.test(a))e+=a,i++;else if(!r&&/[0-9]/.test(a))e+=a,i++;else break}if(i<t.length&&/[a-zA-Z_]/.test(t[i])){let n=e;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)n+=t[i],i++;return{expr:{type:`ArithSyntaxError`,errorToken:n,message:`${n}: value too great for base (error token is "${n}")`},pos:i}}if(t[i]===`.`&&/[0-9]/.test(t[i+1]))throw new Vr(`${e}.${t[i+1]}...: syntax error: invalid arithmetic operator`);if(t[i]===`[`){let n=t.slice(i).trim();return{expr:{type:`ArithNumberSubscript`,number:e,errorToken:n},pos:t.length}}return{expr:{type:`ArithNumber`,value:Qw(e)},pos:i}}if(t[i]===`$`&&t[i+1]===`{`){let e=i+2,n=1,r=e;for(;r<t.length&&n>0;)t[r]===`{`?n++:t[r]===`}`&&n--,n>0&&r++;let a=t.slice(e,r),o=r+1;if(t[o]===`#`){let e=o+1;for(;e<t.length&&/[0-9a-zA-Z@_]/.test(t[e]);)e++;return{expr:{type:`ArithDynamicBase`,baseExpr:a,value:t.slice(o+1,e)},pos:e}}if(/[0-9]/.test(t[o])||t[o]===`x`||t[o]===`X`){let e=o;if(t[o]===`x`||t[o]===`X`)for(e++;e<t.length&&/[0-9a-fA-F]/.test(t[e]);)e++;else for(;e<t.length&&/[0-9]/.test(t[e]);)e++;return{expr:{type:`ArithDynamicNumber`,prefix:a,suffix:t.slice(o,e)},pos:e}}return i=o,{expr:{type:`ArithBracedExpansion`,content:a},pos:i}}if(t[i]===`$`&&i+1<t.length&&/[0-9]/.test(t[i+1])){i++;let e=``;for(;i<t.length&&/[0-9]/.test(t[i]);)e+=t[i],i++;return{expr:{type:`ArithVariable`,name:e,hasDollarPrefix:!0},pos:i}}if(t[i]===`$`&&i+1<t.length&&/[*@#?\-!$]/.test(t[i+1])){let e=t[i+1];return i+=2,{expr:{type:`ArithSpecialVar`,name:e},pos:i}}let c=!1;if(t[i]===`$`&&i+1<t.length&&/[a-zA-Z_]/.test(t[i+1])&&(c=!0,i++),i<t.length&&/[a-zA-Z_]/.test(t[i])){let n=``;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)n+=t[i],i++;if(t[i]===`[`&&!r){i++;let a;if(t[i]===`'`||t[i]===`"`){let e=t[i];for(i++,a=``;i<t.length&&t[i]!==e;)a+=t[i],i++;t[i]===e&&i++,i=Zw(t,i),t[i]===`]`&&i++}let o;if(a===void 0){let{expr:n,pos:r}=cT(e,t,i);o=n,i=r,t[i]===`]`&&i++}if(i=Zw(t,i),t[i]===`[`&&o)return{expr:{type:`ArithDoubleSubscript`,array:n,index:o},pos:i};if(!r){for(let r of nT)if(t.slice(i,i+r.length)===r&&t.slice(i,i+r.length+1)!==`==`){i+=r.length;let{expr:s,pos:c}=uT(e,t,i);return{expr:{type:`ArithAssignment`,operator:r,variable:n,subscript:o,stringKey:a,value:s},pos:c}}}return{expr:{type:`ArithArrayElement`,array:n,index:o,stringKey:a},pos:i}}if(i=Zw(t,i),!r){for(let r of nT)if(t.slice(i,i+r.length)===r&&t.slice(i,i+r.length+1)!==`==`){i+=r.length;let{expr:a,pos:o}=uT(e,t,i);return{expr:{type:`ArithAssignment`,operator:r,variable:n,value:a},pos:o}}}return{expr:{type:`ArithVariable`,name:n,hasDollarPrefix:c},pos:i}}if(t[i]===`#`){let e=i+1;for(;e<t.length&&t[e]!==`
851
+ `;)e++;let n=t.slice(i,e).trim()||`#`;return{expr:{type:`ArithSyntaxError`,errorToken:n,message:`${n}: syntax error: invalid arithmetic operator (error token is "${n}")`},pos:t.length}}return{expr:{type:`ArithNumber`,value:0},pos:i}}var ET=x(()=>{A(),rT()});function DT(e){let t=``,n=0;for(;n<e.length;){let r=e[n];if(r<128){t+=String.fromCharCode(r),n++;continue}if((r&224)==192){if(n+1<e.length&&(e[n+1]&192)==128&&r>=194){let i=(r&31)<<6|e[n+1]&63;t+=String.fromCharCode(i),n+=2;continue}t+=String.fromCharCode(r),n++;continue}if((r&240)==224){if(n+2<e.length&&(e[n+1]&192)==128&&(e[n+2]&192)==128){if(r===224&&e[n+1]<160){t+=String.fromCharCode(r),n++;continue}let i=(r&15)<<12|(e[n+1]&63)<<6|e[n+2]&63;if(i>=55296&&i<=57343){t+=String.fromCharCode(r),n++;continue}t+=String.fromCharCode(i),n+=3;continue}t+=String.fromCharCode(r),n++;continue}if((r&248)==240&&r<=244){if(n+3<e.length&&(e[n+1]&192)==128&&(e[n+2]&192)==128&&(e[n+3]&192)==128){if(r===240&&e[n+1]<144){t+=String.fromCharCode(r),n++;continue}let i=(r&7)<<18|(e[n+1]&63)<<12|(e[n+2]&63)<<6|e[n+3]&63;if(i>1114111){t+=String.fromCharCode(r),n++;continue}t+=String.fromCodePoint(i),n+=4;continue}t+=String.fromCharCode(r),n++;continue}t+=String.fromCharCode(r),n++}return t}function OT(e,t,n){let r=n+1;for(;r<t.length&&/[a-zA-Z0-9_-]/.test(t[r]);)r++;return r}function kT(e,t,n,r,i){let a=1,o=n+1;for(;o<t.length&&a>0;)t[o]===r?a++:t[o]===i&&a--,a>0&&o++;return a===0?o:-1}function AT(e,t,n){let r=n,i=1;for(;r<t.length&&i>0;){let e=t[r];if(e===`\\`&&r+1<t.length){r+=2;continue}if(e===`'`){let e=t.indexOf(`'`,r+1);if(e!==-1){r=e+1;continue}}if(e===`"`){for(r++;r<t.length&&t[r]!==`"`;)t[r]===`\\`&&r+1<t.length?r+=2:r++;r<t.length&&r++;continue}e===`{`?i++:e===`}`&&i--,i>0&&r++}return r}function jT(e,t,n){let r=n,i=!1;for(;r<t.length;){let e=t[r];if(e===`/`&&i||e===`}`)break;if(e===`'`){let e=t.indexOf(`'`,r+1);if(e!==-1){r=e+1,i=!0;continue}}if(e===`"`){for(r++;r<t.length&&t[r]!==`"`;)t[r]===`\\`&&r+1<t.length?r+=2:r++;r<t.length&&r++,i=!0;continue}e===`\\`?(r+=2,i=!0):(r++,i=!0)}return r}function MT(e,t,n){let r=n,i=``;for(;r<t.length;){let e=t[r];if(e===`*`||e===`?`)i+=e,r++;else if(e===`[`){let n=NT(t,r);n===-1?(i+=e,r++):(i+=t.slice(r,n+1),r=n+1)}else break}return{pattern:i,endIndex:r}}function NT(e,t){let n=t+1;for(n<e.length&&e[n]===`^`&&n++,n<e.length&&e[n]===`]`&&n++;n<e.length;){let t=e[n];if(t===`\\`&&n+1<e.length){let t=e[n+1];if(t===`"`||t===`'`)return-1;n+=2;continue}if(t===`]`)return n;if(t===`"`||t===`$`||t==="`")return-1;if(t===`'`){let t=e.indexOf(`'`,n+1);if(t!==-1){n=t+1;continue}}if(t===`[`&&n+1<e.length&&e[n+1]===`:`){let t=e.indexOf(`:]`,n+2);if(t!==-1){n=t+2;continue}}if(t===`[`&&n+1<e.length&&(e[n+1]===`.`||e[n+1]===`=`)){let t=`${e[n+1]}]`,r=e.indexOf(t,n+2);if(r!==-1){n=r+2;continue}}n++}return-1}function PT(e,t,n){let r=``,i=n;for(;i<t.length&&t[i]!==`'`;){let e=t[i];if(e===`\\`&&i+1<t.length)switch(t[i+1]){case`n`:r+=`
852
+ `,i+=2;break;case`t`:r+=` `,i+=2;break;case`r`:r+=`\r`,i+=2;break;case`\\`:r+=`\\`,i+=2;break;case`'`:r+=`'`,i+=2;break;case`"`:r+=`"`,i+=2;break;case`a`:r+=`\x07`,i+=2;break;case`b`:r+=`\b`,i+=2;break;case`e`:case`E`:r+=`\x1B`,i+=2;break;case`f`:r+=`\f`,i+=2;break;case`v`:r+=`\v`,i+=2;break;case`x`:{let e=[],n=i;for(;n+1<t.length&&t[n]===`\\`&&t[n+1]===`x`;){let r=t.slice(n+2,n+4),i=parseInt(r,16);if(!Number.isNaN(i)&&r.length>0)e.push(i),n+=2+r.length;else break}e.length>0?(r+=DT(e),i=n):(r+=`\\x`,i+=2);break}case`u`:{let e=t.slice(i+2,i+6),n=parseInt(e,16);Number.isNaN(n)?(r+=`\\u`,i+=2):(r+=String.fromCharCode(n),i+=6);break}case`c`:if(i+2<t.length){let e=t[i+2].charCodeAt(0)&31;r+=String.fromCharCode(e),i+=3}else r+=`\\c`,i+=2;break;case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:{let e=``,n=i+1;for(;n<t.length&&n<i+4&&/[0-7]/.test(t[n]);)e+=t[n],n++;let a=parseInt(e,8);r+=String.fromCharCode(a),i=n;break}default:r+=e,i++}else r+=e,i++}return i<t.length&&t[i]===`'`&&i++,{part:G.literal(r),endIndex:i}}function FT(e,t){let n=t.trim();return n===``?{type:`ArithmeticExpression`,expression:{type:`ArithNumber`,value:0}}:aT(e,n)}function IT(e){let t=[],n=``,r=0;for(let i=0;i<e.length;i++){let a=e[i];a===`{`?(r++,n+=a):a===`}`?(r--,n+=a):a===`,`&&r===0?(t.push(n),n=``):n+=a}return t.push(n),t}function LT(e,t,n,r){let i=kT(e,t,n,`{`,`}`);if(i===-1)return null;let a=t.slice(n+1,i),o=a.match(/^(-?\d+)\.\.(-?\d+)(?:\.\.(-?\d+))?$/);if(o)return{part:{type:`BraceExpansion`,items:[{type:`Range`,start:Number.parseInt(o[1],10),end:Number.parseInt(o[2],10),step:o[3]?Number.parseInt(o[3],10):void 0,startStr:o[1],endStr:o[2]}]},endIndex:i+1};let s=a.match(/^([a-zA-Z])\.\.([a-zA-Z])(?:\.\.(-?\d+))?$/);return s?{part:{type:`BraceExpansion`,items:[{type:`Range`,start:s[1],end:s[2],step:s[3]?Number.parseInt(s[3],10):void 0}]},endIndex:i+1}:a.includes(`,`)&&r?{part:{type:`BraceExpansion`,items:IT(a).map(t=>({type:`Word`,word:G.word(r(e,t,!1,!1,!1))}))},endIndex:i+1}:a.includes(`,`)?{part:{type:`BraceExpansion`,items:IT(a).map(e=>({type:`Word`,word:G.word([G.literal(e)])}))},endIndex:i+1}:null}function RT(e,t){let n=``;for(let r of t.parts)switch(r.type){case`Literal`:n+=r.value;break;case`SingleQuoted`:n+=`'${r.value}'`;break;case`Escaped`:n+=r.value;break;case`DoubleQuoted`:n+=`"`;for(let e of r.parts)e.type===`Literal`||e.type===`Escaped`?n+=e.value:e.type===`ParameterExpansion`&&(n+=`\${${e.parameter}}`);n+=`"`;break;case`ParameterExpansion`:n+=`\${${r.parameter}}`;break;case`Glob`:n+=r.pattern;break;case`TildeExpansion`:n+=`~`,r.user&&(n+=r.user);break;case`BraceExpansion`:{n+=`{`;let t=[];for(let n of r.items)if(n.type===`Range`){let e=n.startStr??String(n.start),r=n.endStr??String(n.end);n.step===void 0?t.push(`${e}..${r}`):t.push(`${e}..${r}..${n.step}`)}else t.push(RT(e,n.word));t.length===1&&r.items[0].type===`Range`?n+=t[0]:n+=t.join(`,`),n+=`}`;break}default:n+=r.type}return n}function zT(e,t){return{[K.LESS]:`<`,[K.GREAT]:`>`,[K.DGREAT]:`>>`,[K.LESSAND]:`<&`,[K.GREATAND]:`>&`,[K.LESSGREAT]:`<>`,[K.CLOBBER]:`>|`,[K.TLESS]:`<<<`,[K.AND_GREAT]:`&>`,[K.AND_DGREAT]:`&>>`,[K.DLESS]:`<`,[K.DLESSDASH]:`<`}[t]||`>`}var BT=x(()=>{Cw(),ET(),Vw()});function VT(e){let t=e.current(),n=t.type;if(n===K.NUMBER){let n=e.peek(1);return t.end===n.start&&qw.has(n.type)}if(n===K.FD_VARIABLE){let t=e.peek(1);return Jw.has(t.type)}return Kw.has(n)}function HT(e){let t=null,n;e.check(K.NUMBER)?t=Number.parseInt(e.advance().value,10):e.check(K.FD_VARIABLE)&&(n=e.advance().value);let r=e.advance(),i=zT(e,r.type);if(r.type===K.DLESS||r.type===K.DLESSDASH)return UT(e,i,t,r.type===K.DLESSDASH);e.isWord()||e.error(`Expected redirection target`);let a=e.parseWord();return G.redirection(i,a,t,n)}function UT(e,t,n,r){e.isWord()||e.error(`Expected here-document delimiter`);let i=e.advance(),a=i.value,o=i.quoted||!1;(a.startsWith(`'`)&&a.endsWith(`'`)||a.startsWith(`"`)&&a.endsWith(`"`))&&(a=a.slice(1,-1));let s=G.redirection(r?`<<-`:`<<`,G.hereDoc(a,G.word([]),r,o),n);return e.addPendingHeredoc(s,a,r,o),s}function WT(e){let t=e.current().line,n=[],r=null,i=[],a=[];for(;e.check(K.ASSIGNMENT_WORD)||VT(e);)e.checkIterationLimit(),e.check(K.ASSIGNMENT_WORD)?n.push(GT(e)):a.push(HT(e));if(e.isWord())r=e.parseWord();else if(n.length>0&&(e.check(K.DBRACK_START)||e.check(K.DPAREN_START))){let t=e.advance();r=G.word([G.literal(t.value)])}for(;(!e.isStatementEnd()||e.check(K.RBRACE))&&!e.check(K.PIPE,K.PIPE_AMP);)if(e.checkIterationLimit(),VT(e))a.push(HT(e));else if(e.check(K.RBRACE)){let t=e.advance();i.push(e.parseWordFromString(t.value,!1,!1))}else if(e.check(K.LBRACE)){let t=e.advance();i.push(e.parseWordFromString(t.value,!1,!1))}else if(e.check(K.DBRACK_END)){let t=e.advance();i.push(e.parseWordFromString(t.value,!1,!1))}else if(e.isWord())i.push(e.parseWord());else if(e.check(K.ASSIGNMENT_WORD)){let t=e.advance(),n=t.value,r=n.endsWith(`=`),a=n.endsWith(`=(`);if((r||a)&&(a||e.check(K.LPAREN))){let t=a?n.slice(0,-2):n.slice(0,-1);a||e.expect(K.LPAREN);let r=KT(e);e.expect(K.RPAREN);let o=`${t}=(${r.map(t=>RT(e,t)).join(` `)})`;i.push(e.parseWordFromString(o,!1,!1))}else i.push(e.parseWordFromString(n,t.quoted,t.singleQuoted))}else if(e.check(K.LPAREN))e.error("syntax error near unexpected token `('");else break;let o=G.simpleCommand(r,i,n,a);return o.line=t,o}function GT(e){let t=e.expect(K.ASSIGNMENT_WORD),n=t.value,r=n.match(/^[a-zA-Z_][a-zA-Z0-9_]*/);r||e.error(`Invalid assignment: ${n}`);let i=r[0],a,o=i.length;if(n[o]===`[`){let t=0,r=o+1;for(;o<n.length;o++)if(n[o]===`[`)t++;else if(n[o]===`]`&&(t--,t===0))break;t!==0&&e.error(`Invalid assignment: ${n}`),a=n.slice(r,o),o++}let s=n[o]===`+`;s&&o++,n[o]!==`=`&&e.error(`Invalid assignment: ${n}`),o++;let c=n.slice(o);if(c===`(`){let t=KT(e);e.expect(K.RPAREN);let n=a===void 0?i:`${i}[${a}]`;return G.assignment(n,null,s,t)}if(c===``&&e.check(K.LPAREN)){let n=e.current();if(t.end===n.start){e.advance();let t=KT(e);e.expect(K.RPAREN);let n=a===void 0?i:`${i}[${a}]`;return G.assignment(n,null,s,t)}}let l=c?e.parseWordFromString(c,t.quoted,t.singleQuoted,!0):null,u=a===void 0?i:`${i}[${a}]`;return G.assignment(u,l,s,null)}function KT(e){let t=[];for(e.skipNewlines();!e.check(K.RPAREN,K.EOF);)e.checkIterationLimit(),e.isWord()?t.push(e.parseWord()):qT.has(e.current().type)?e.error(`syntax error near unexpected token \`${e.current().value}'`):e.advance(),e.skipNewlines();return t}var qT,JT=x(()=>{Cw(),Vw(),Xw(),BT(),qT=new Set([K.AMP,K.PIPE,K.PIPE_AMP,K.SEMICOLON,K.AND_AND,K.OR_OR,K.DSEMI,K.SEMI_AND,K.SEMI_SEMI_AND])});function YT(e,t){e.expect(K.IF);let n=[],r=e.parseCompoundList();e.expect(K.THEN);let i=e.parseCompoundList();if(i.length===0){let t=e.check(K.FI)?`fi`:e.check(K.ELSE)?`else`:e.check(K.ELIF)?`elif`:`fi`;e.error(`syntax error near unexpected token \`${t}'`)}for(n.push({condition:r,body:i});e.check(K.ELIF);){e.advance();let t=e.parseCompoundList();e.expect(K.THEN);let r=e.parseCompoundList();if(r.length===0){let t=e.check(K.FI)?`fi`:e.check(K.ELSE)?`else`:e.check(K.ELIF)?`elif`:`fi`;e.error(`syntax error near unexpected token \`${t}'`)}n.push({condition:t,body:r})}let a=null;e.check(K.ELSE)&&(e.advance(),a=e.parseCompoundList(),a.length===0&&e.error("syntax error near unexpected token `fi'")),e.expect(K.FI);let o=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.ifNode(n,a,o)}function XT(e,t){let n=e.expect(K.FOR);if(e.check(K.DPAREN_START))return ZT(e,t,n.line);e.isWord()||e.error(`Expected variable name in for loop`);let r=e.advance().value,i=null;if(e.skipNewlines(),e.check(K.IN))for(e.advance(),i=[];!e.check(K.SEMICOLON,K.NEWLINE,K.DO,K.EOF)&&e.isWord();)i.push(e.parseWord());e.check(K.SEMICOLON)&&e.advance(),e.skipNewlines(),e.expect(K.DO);let a=e.parseCompoundList();e.expect(K.DONE);let o=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.forNode(r,i,a,o)}function ZT(e,t,n){e.expect(K.DPAREN_START);let r=null,i=null,a=null,o=[``,``,``],s=0,c=0;for(;!e.check(K.DPAREN_END,K.EOF);){let t=e.advance();if(t.type===K.SEMICOLON&&c===0){if(s++,s>2)break}else t.value===`(`&&c++,t.value===`)`&&c--,o[s]+=t.value}e.expect(K.DPAREN_END),o[0].trim()&&(r=aT(e,o[0].trim())),o[1].trim()&&(i=aT(e,o[1].trim())),o[2].trim()&&(a=aT(e,o[2].trim())),e.skipNewlines(),e.check(K.SEMICOLON)&&e.advance(),e.skipNewlines();let l;e.check(K.LBRACE)?(e.advance(),l=e.parseCompoundList(),e.expect(K.RBRACE)):(e.expect(K.DO),l=e.parseCompoundList(),e.expect(K.DONE));let u=t?.skipRedirections?[]:e.parseOptionalRedirections();return{type:`CStyleFor`,init:r,condition:i,update:a,body:l,redirections:u,line:n}}function QT(e,t){e.expect(K.WHILE);let n=e.parseCompoundList();e.expect(K.DO);let r=e.parseCompoundList();r.length===0&&e.error("syntax error near unexpected token `done'"),e.expect(K.DONE);let i=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.whileNode(n,r,i)}function $T(e,t){e.expect(K.UNTIL);let n=e.parseCompoundList();e.expect(K.DO);let r=e.parseCompoundList();r.length===0&&e.error("syntax error near unexpected token `done'"),e.expect(K.DONE);let i=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.untilNode(n,r,i)}function eE(e,t){e.expect(K.CASE),e.isWord()||e.error(`Expected word after 'case'`);let n=e.parseWord();e.skipNewlines(),e.expect(K.IN),e.skipNewlines();let r=[];for(;!e.check(K.ESAC,K.EOF);){e.checkIterationLimit();let t=e.getPos(),n=tE(e);if(n&&r.push(n),e.skipNewlines(),e.getPos()===t&&!n)break}e.expect(K.ESAC);let i=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.caseNode(n,r,i)}function tE(e){e.check(K.LPAREN)&&e.advance();let t=[];for(;e.isWord()&&(t.push(e.parseWord()),e.check(K.PIPE));)e.advance();if(t.length===0)return null;e.expect(K.RPAREN),e.skipNewlines();let n=[];for(;!e.check(K.DSEMI,K.SEMI_AND,K.SEMI_SEMI_AND,K.ESAC,K.EOF);){e.checkIterationLimit(),e.isWord()&&e.peek(1).type===K.RPAREN&&e.error("syntax error near unexpected token `)'"),e.check(K.LPAREN)&&e.peek(1).type===K.WORD&&e.error(`syntax error near unexpected token \`${e.peek(1).value}'`);let t=e.getPos(),r=e.parseStatement();if(r&&n.push(r),e.skipSeparators(!1),e.getPos()===t&&!r)break}let r=`;;`;return e.check(K.DSEMI)?(e.advance(),r=`;;`):e.check(K.SEMI_AND)?(e.advance(),r=`;&`):e.check(K.SEMI_SEMI_AND)&&(e.advance(),r=`;;&`),G.caseItem(t,n,r)}function nE(e,t){e.expect(K.LPAREN);let n=e.parseCompoundList();e.expect(K.RPAREN);let r=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.subshell(n,r)}function rE(e,t){e.expect(K.LBRACE);let n=e.parseCompoundList();e.expect(K.RBRACE);let r=t?.skipRedirections?[]:e.parseOptionalRedirections();return G.group(n,r)}var iE=x(()=>{Cw(),ET(),Vw()});function aE(e){return e.isWord()||e.check(K.LBRACE)||e.check(K.RBRACE)||e.check(K.ASSIGNMENT_WORD)}function oE(e){if(e.check(K.BANG)&&e.peek(1).type===K.LPAREN){e.advance(),e.advance();let t=1,n=`!(`;for(;t>0&&!e.check(K.EOF);)if(e.check(K.LPAREN))t++,n+=`(`,e.advance();else if(e.check(K.RPAREN))t--,t>0&&(n+=`)`),e.advance();else if(e.isWord())n+=e.advance().value;else if(e.check(K.PIPE))n+=`|`,e.advance();else break;return n+=`)`,e.parseWordFromString(n,!1,!1,!1,!1,!0)}return e.parseWordNoBraceExpansion()}function sE(e){return e.skipNewlines(),cE(e)}function cE(e){let t=lE(e);for(e.skipNewlines();e.check(K.OR_OR);){e.advance(),e.skipNewlines();let n=lE(e);t={type:`CondOr`,left:t,right:n},e.skipNewlines()}return t}function lE(e){let t=uE(e);for(e.skipNewlines();e.check(K.AND_AND);){e.advance(),e.skipNewlines();let n=uE(e);t={type:`CondAnd`,left:t,right:n},e.skipNewlines()}return t}function uE(e){return e.skipNewlines(),e.check(K.BANG)?(e.advance(),e.skipNewlines(),{type:`CondNot`,operand:uE(e)}):dE(e)}function dE(e){if(e.check(K.LPAREN)){e.advance();let t=sE(e);return e.expect(K.RPAREN),{type:`CondGroup`,expression:t}}if(aE(e)){let t=e.current(),n=t.value;if(pE.includes(n)&&!t.quoted){if(e.advance(),e.check(K.DBRACK_END)&&e.error(`Expected operand after ${n}`),aE(e))return{type:`CondUnary`,operator:n,operand:e.parseWordNoBraceExpansion()};let t=e.current();e.error(`unexpected argument \`${t.value}' to conditional unary operator`)}let r=e.parseWordNoBraceExpansion();if(e.isWord()&&mE.includes(e.current().value)){let t=e.advance().value,n;return n=t===`=~`?fE(e):t===`==`||t===`!=`?oE(e):e.parseWordNoBraceExpansion(),{type:`CondBinary`,operator:t,left:r,right:n}}return e.check(K.LESS)?(e.advance(),{type:`CondBinary`,operator:`<`,left:r,right:e.parseWordNoBraceExpansion()}):e.check(K.GREAT)?(e.advance(),{type:`CondBinary`,operator:`>`,left:r,right:e.parseWordNoBraceExpansion()}):e.isWord()&&e.current().value===`=`?(e.advance(),{type:`CondBinary`,operator:`==`,left:r,right:oE(e)}):{type:`CondWord`,word:r}}e.error(`Expected conditional expression`)}function fE(e){let t=[],n=0,r=-1,i=e.getInput(),a=()=>e.check(K.DBRACK_END)||e.check(K.AND_AND)||e.check(K.OR_OR)||e.check(K.NEWLINE)||e.check(K.EOF);for(;!a();){let a=e.current(),o=r>=0&&a.start>r;if(n===0&&o)break;if(n>0&&o){let e=i.slice(r,a.start);t.push({type:`Literal`,value:e})}if(e.isWord()||e.check(K.ASSIGNMENT_WORD)){let n=e.parseWordForRegex();t.push(...n.parts),r=e.peek(-1).end}else if(e.check(K.LPAREN)){let i=e.advance();t.push({type:`Literal`,value:`(`}),n++,r=i.end}else if(e.check(K.DPAREN_START)){let i=e.advance();t.push({type:`Literal`,value:`((`}),n+=2,r=i.end}else if(e.check(K.DPAREN_END))if(n>=2){let i=e.advance();t.push({type:`Literal`,value:`))`}),n-=2,r=i.end}else{if(n===1)break;break}else if(e.check(K.RPAREN))if(n>0){let i=e.advance();t.push({type:`Literal`,value:`)`}),n--,r=i.end}else break;else if(e.check(K.PIPE)){let n=e.advance();t.push({type:`Literal`,value:`|`}),r=n.end}else if(e.check(K.SEMICOLON))if(n>0){let n=e.advance();t.push({type:`Literal`,value:`;`}),r=n.end}else break;else if(n>0&&e.check(K.LESS)){let n=e.advance();t.push({type:`Literal`,value:`<`}),r=n.end}else if(n>0&&e.check(K.GREAT)){let n=e.advance();t.push({type:`Literal`,value:`>`}),r=n.end}else if(n>0&&e.check(K.DGREAT)){let n=e.advance();t.push({type:`Literal`,value:`>>`}),r=n.end}else if(n>0&&e.check(K.DLESS)){let n=e.advance();t.push({type:`Literal`,value:`<<`}),r=n.end}else if(n>0&&e.check(K.LESSAND)){let n=e.advance();t.push({type:`Literal`,value:`<&`}),r=n.end}else if(n>0&&e.check(K.GREATAND)){let n=e.advance();t.push({type:`Literal`,value:`>&`}),r=n.end}else if(n>0&&e.check(K.LESSGREAT)){let n=e.advance();t.push({type:`Literal`,value:`<>`}),r=n.end}else if(n>0&&e.check(K.CLOBBER)){let n=e.advance();t.push({type:`Literal`,value:`>|`}),r=n.end}else if(n>0&&e.check(K.TLESS)){let n=e.advance();t.push({type:`Literal`,value:`<<<`}),r=n.end}else if(n>0&&e.check(K.AMP)){let n=e.advance();t.push({type:`Literal`,value:`&`}),r=n.end}else if(n>0&&e.check(K.LBRACE)){let n=e.advance();t.push({type:`Literal`,value:`{`}),r=n.end}else if(n>0&&e.check(K.RBRACE)){let n=e.advance();t.push({type:`Literal`,value:`}`}),r=n.end}else break}return t.length===0&&e.error(`Expected regex pattern after =~`),{type:`Word`,parts:t}}var pE,mE,hE=x(()=>{Vw(),pE=`-a.-b.-c.-d.-e.-f.-g.-h.-k.-p.-r.-s.-t.-u.-w.-x.-G.-L.-N.-O.-S.-z.-n.-o.-v.-R`.split(`.`),mE=[`==`,`!=`,`=~`,`<`,`>`,`-eq`,`-ne`,`-lt`,`-le`,`-gt`,`-ge`,`-nt`,`-ot`,`-ef`]});function gE(e){return e.length>0?e:[G.literal(``)]}function _E(e,t){let n=1,r=t+1;for(;r<e.length&&n>0;){let t=e[r];if(t===`\\`){r+=2;continue}if(`@*+?!`.includes(t)&&r+1<e.length&&e[r+1]===`(`){r++,n++,r++;continue}if(t===`(`)n++;else if(t===`)`&&(n--,n===0))return r;r++}return-1}function vE(e,t,n){let r=n+1,i=t[r];if(`@*#?$!-0123456789`.includes(i))return{part:G.parameterExpansion(i),endIndex:r+1};let a=``;for(;r<t.length&&/[a-zA-Z0-9_]/.test(t[r]);)a+=t[r],r++;return{part:G.parameterExpansion(a),endIndex:r}}function yE(e,t,n,r=!1){let i=n+2,a=!1;t[i]===`!`&&(a=!0,i++);let o=!1;t[i]===`#`&&!/[}:#%/^,]/.test(t[i+1]||`}`)&&(o=!0,i++);let s=``,c=t[i];if(/[@*#?$!-]/.test(c)&&!/[a-zA-Z0-9_]/.test(t[i+1]||``))s=c,i++;else for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)s+=t[i],i++;if(t[i]===`[`){let r=kT(e,t,i,`[`,`]`);if(s+=t.slice(i,r+1),i=r+1,t[i]===`[`){let e=1,r=i;for(;r<t.length&&e>0;)t[r]===`{`?e++:t[r]===`}`&&e--,e>0&&r++;let a=t.slice(n+2,r);return{part:G.parameterExpansion(``,{type:`BadSubstitution`,text:a}),endIndex:r+1}}}if(s===``&&!a&&!o&&t[i]!==`}`){let e=1,r=i;for(;r<t.length&&e>0;)t[r]===`{`?e++:t[r]===`}`&&e--,e>0&&r++;if(e>0)throw new Yw(`unexpected EOF while looking for matching '}'`,0,0);let a=t.slice(n+2,r);return{part:G.parameterExpansion(``,{type:`BadSubstitution`,text:a}),endIndex:r+1}}let l=null;if(a){let n=s.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(n)if(i<t.length&&t[i]!==`}`&&/[:=\-+?#%/^,@]/.test(t[i])){let a=bE(e,t,i,s,r);a.operation?(l={type:`Indirection`,innerOp:a.operation},i=a.endIndex):(l={type:`ArrayKeys`,array:n[1],star:n[2]===`*`},s=``)}else l={type:`ArrayKeys`,array:n[1],star:n[2]===`*`},s=``;else if(t[i]===`*`||t[i]===`@`&&!/[QPaAEKkuUL]/.test(t[i+1]||``)){let e=t[i];i++,l={type:`VarNamePrefix`,prefix:s,star:e===`*`},s=``}else if(i<t.length&&t[i]!==`}`&&/[:=\-+?#%/^,@]/.test(t[i])){let n=bE(e,t,i,s,r);n.operation?(l={type:`Indirection`,innerOp:n.operation},i=n.endIndex):l={type:`Indirection`}}else l={type:`Indirection`}}else if(o)if(t[i]===`:`)for(l={type:`LengthSliceError`};i<t.length&&t[i]!==`}`;)i++;else t[i]!==`}`&&/[-+=?]/.test(t[i])||t[i]===`/`?e.error(`\${#${s}${t.slice(i,t.indexOf(`}`,i))}}: bad substitution`):l={type:`Length`};if(!l&&i<t.length&&t[i]!==`}`){let n=bE(e,t,i,s,r);l=n.operation,i=n.endIndex}if(i<t.length&&t[i]!==`}`){let r=t[i];if(!/[:\-+=?#%/^,@[]/.test(r)){let r=i;for(;r<t.length&&t[r]!==`}`;)r++;let a=t.slice(n,r+1);e.error(`\${${a.slice(2,-1)}}: bad substitution`)}}for(;i<t.length&&t[i]!==`}`;)i++;if(i>=t.length)throw new Yw(`unexpected EOF while looking for matching '}'`,0,0);return{part:G.parameterExpansion(s,l),endIndex:i+1}}function bE(e,t,n,r,i=!1){let a=n,o=t[a],s=t[a+1]||``;if(o===`:`){let n=s;if(`-=?+`.includes(n)){a+=2;let r=AT(e,t,a),o=wE(e,t.slice(a,r),!1,!1,!0,!1,i,!1,!1,!0),s=G.word(gE(o));if(n===`-`)return{operation:{type:`DefaultValue`,word:s,checkEmpty:!0},endIndex:r};if(n===`=`)return{operation:{type:`AssignDefault`,word:s,checkEmpty:!0},endIndex:r};if(n===`?`)return{operation:{type:`ErrorIfUnset`,word:s,checkEmpty:!0},endIndex:r};if(n===`+`)return{operation:{type:`UseAlternative`,word:s,checkEmpty:!0},endIndex:r}}a++;let r=AT(e,t,a),o=t.slice(a,r),c=-1,l=0,u=0;for(let e=0;e<o.length;e++){let t=o[e];if(t===`(`||t===`[`)l++;else if(t===`)`||t===`]`)l--;else if(t===`?`&&l===0)u++;else if(t===`:`&&l===0)if(u>0)u--;else{c=e;break}}let d=c>=0?o.slice(0,c):o,f=c>=0?o.slice(c+1):null;return{operation:{type:`Substring`,offset:FT(e,d),length:f===null?null:FT(e,f)},endIndex:r}}if(`-=?+`.includes(o)){a++;let n=AT(e,t,a),r=t.slice(a,n),s=wE(e,r,!1,!1,!0,!1,i,!1,!1,!0),c=G.word(gE(s));if(o===`-`)return{operation:{type:`DefaultValue`,word:c,checkEmpty:!1},endIndex:n};if(o===`=`)return{operation:{type:`AssignDefault`,word:c,checkEmpty:!1},endIndex:n};if(o===`?`)return{operation:{type:`ErrorIfUnset`,word:r?c:null,checkEmpty:!1},endIndex:n};if(o===`+`)return{operation:{type:`UseAlternative`,word:c,checkEmpty:!1},endIndex:n}}if(o===`#`||o===`%`){let n=s===o,r=o===`#`?`prefix`:`suffix`;a+=n?2:1;let i=AT(e,t,a),c=wE(e,t.slice(a,i),!1,!1,!1);return{operation:{type:`PatternRemoval`,pattern:G.word(gE(c)),side:r,greedy:n},endIndex:i}}if(o===`/`){let n=s===`/`;a+=n?2:1;let r=null;t[a]===`#`?(r=`start`,a++):t[a]===`%`&&(r=`end`,a++);let i;i=r!==null&&(t[a]===`/`||t[a]===`}`)?a:jT(e,t,a);let o=wE(e,t.slice(a,i),!1,!1,!1),c=G.word(gE(o)),l=null,u=i;if(t[i]===`/`){let n=i+1,r=AT(e,t,n),a=wE(e,t.slice(n,r),!1,!1,!1);l=G.word(gE(a)),u=r}return{operation:{type:`PatternReplacement`,pattern:c,replacement:l,all:n,anchor:r},endIndex:u}}if(o===`^`||o===`,`){let n=s===o,r=o===`^`?`upper`:`lower`;a+=n?2:1;let i=AT(e,t,a),c=t.slice(a,i);return{operation:{type:`CaseModification`,direction:r,all:n,pattern:c?G.word([G.literal(c)]):null},endIndex:i}}return o===`@`&&/[QPaAEKkuUL]/.test(s)?{operation:{type:`Transform`,operator:s},endIndex:a+2}:{operation:null,endIndex:a}}function xE(e,t,n,r=!1){let i=n+1;if(i>=t.length)return{part:G.literal(`$`),endIndex:i};let a=t[i];if(a===`(`&&t[i+1]===`(`)return e.isDollarDparenSubshell(t,n)?e.parseCommandSubstitution(t,n):e.parseArithmeticExpansion(t,n);if(a===`[`){let n=1,r=i+1;for(;r<t.length&&n>0;)t[r]===`[`?n++:t[r]===`]`&&n--,n>0&&r++;if(n===0){let n=aT(e,t.slice(i+1,r));return{part:G.arithmeticExpansion(n),endIndex:r+1}}}return a===`(`?e.parseCommandSubstitution(t,n):a===`{`?yE(e,t,n,r):/[a-zA-Z_0-9@*#?$!-]/.test(a)?vE(e,t,n):{part:G.literal(`$`),endIndex:i}}function SE(e,t){let n=[],r=0,i=``,a=()=>{i&&=(n.push(G.literal(i)),``)};for(;r<t.length;){let o=t[r];if(o===`\\`&&r+1<t.length){let e=t[r+1];if(e===`$`||e==="`"||e===`"`||e===`\\`){i+=e,r+=2;continue}i+=o,r++;continue}if(o===`$`){a();let{part:i,endIndex:o}=xE(e,t,r,!0);i&&n.push(i),r=o;continue}if(o==="`"){a();let{part:i,endIndex:o}=e.parseBacktickSubstitution(t,r,!0);n.push(i),r=o;continue}i+=o,r++}return a(),n}function CE(e,t,n){let r=[],i=n,a=``,o=()=>{a&&=(r.push(G.literal(a)),``)};for(;i<t.length&&t[i]!==`"`;){let n=t[i];if(n===`\\`&&i+1<t.length){let e=t[i+1];if(`"\\$\`
853
+ `.includes(e)){a+=e,i+=2;continue}a+=n,i++;continue}if(n===`$`){o();let{part:n,endIndex:a}=xE(e,t,i,!0);n&&r.push(n),i=a;continue}if(n==="`"){o();let{part:n,endIndex:a}=e.parseBacktickSubstitution(t,i,!0);r.push(n),i=a;continue}a+=n,i++}return o(),{part:G.doubleQuoted(r),endIndex:i}}function wE(e,t,n=!1,r=!1,i=!1,a=!1,o=!1,s=!1,c=!1,l=!1){if(r)return[G.singleQuoted(t)];if(n){let n=SE(e,t);return[G.doubleQuoted(n)]}if(t.length>=2&&t[0]===`"`&&t[t.length-1]===`"`){let n=t.slice(1,-1),r=!1;for(let e=0;e<n.length;e++){if(n[e]===`"`){r=!0;break}n[e]===`\\`&&e+1<n.length&&e++}if(!r){let t=SE(e,n);return[G.doubleQuoted(t)]}}let u=[],d=0,f=``,p=()=>{f&&=(u.push(G.literal(f)),``)};for(;d<t.length;){let n=t[d];if(n===`\\`&&d+1<t.length){let e=t[d+1];if(c){p(),u.push(G.escaped(e)),d+=2;continue}let n=a?e===`$`||e==="`"||e===`
854
+ `:e===`$`||e==="`"||e===`"`||e===`'`||e===`
855
+ `||l&&e===`}`,r=o?`*?[]\\`.includes(e):`*?[]\\(){}.^+`.includes(e);n?f+=e:r?(p(),u.push(G.escaped(e))):f+=`\\${e}`,d+=2;continue}if(n===`'`&&!o&&!a){p();let e=t.indexOf(`'`,d+1);if(e===-1){f+=t.slice(d);break}u.push(G.singleQuoted(t.slice(d+1,e))),d=e+1;continue}if(n===`"`&&!a){p();let{part:n,endIndex:r}=CE(e,t,d+1);u.push(n),d=r+1;continue}if(n===`$`&&t[d+1]===`'`){p();let{part:n,endIndex:r}=PT(e,t,d+2);u.push(n),d=r;continue}if(n===`$`){p();let{part:n,endIndex:r}=xE(e,t,d);n&&u.push(n),d=r;continue}if(n==="`"){p();let{part:n,endIndex:r}=e.parseBacktickSubstitution(t,d);u.push(n),d=r;continue}if(n===`~`){let n=d>0?t[d-1]:``;if(d===0||n===`=`||i&&n===`:`){let n=OT(e,t,d),r=t[n];if(r===void 0||r===`/`||r===`:`){p();let e=t.slice(d+1,n)||null;u.push({type:`TildeExpansion`,user:e}),d=n;continue}}}if(`@*+?!`.includes(n)&&d+1<t.length&&t[d+1]===`(`){let e=_E(t,d+1);if(e!==-1){p();let n=t.slice(d,e+1);u.push({type:`Glob`,pattern:n}),d=e+1;continue}}if(n===`*`||n===`?`||n===`[`){p();let{pattern:n,endIndex:r}=MT(e,t,d);u.push({type:`Glob`,pattern:n}),d=r;continue}if(n===`{`&&!i&&!s&&!a){let n=LT(e,t,d,wE);if(n){p(),u.push(n.part),d=n.endIndex;continue}}f+=n,d++}return p(),u}var TE=x(()=>{Cw(),ET(),Xw(),BT()});function EE(e,t){return new DE().parse(e,t)}var DE,OE=x(()=>{Cw(),ET(),JT(),iE(),hE(),TE(),Vw(),kw(),Xw(),Xw(),DE=class e{tokens=[];pos=0;pendingHeredocs=[];parseIterations=0;parseDepth=0;_input=``;getInput(){return this._input}checkIterationLimit(){if(this.parseIterations++,this.parseIterations>Ww)throw new Yw(`Maximum parse iterations exceeded (possible infinite loop)`,this.current().line,this.current().column)}enterDepth(){if(this.parseDepth++,this.parseDepth>Gw)throw new Yw(`Maximum parser nesting depth exceeded (${Gw})`,this.current().line,this.current().column);return()=>{this.parseDepth--}}parse(e,t){if(e.length>Hw)throw new Yw(`Input too large: ${e.length} bytes exceeds limit of ${Hw}`,1,1);this._input=e;let n=new Bw(e,t);if(this.tokens=n.tokenize(),this.tokens.length>Uw)throw new Yw(`Too many tokens: ${this.tokens.length} exceeds limit of ${Uw}`,1,1);return this.pos=0,this.pendingHeredocs=[],this.parseIterations=0,this.parseDepth=0,this.parseScript()}parseTokens(e){return this.tokens=e,this.pos=0,this.pendingHeredocs=[],this.parseIterations=0,this.parseDepth=0,this.parseScript()}current(){return this.tokens[this.pos]||this.tokens[this.tokens.length-1]}peek(e=0){return this.tokens[this.pos+e]||this.tokens[this.tokens.length-1]}advance(){let e=this.current();return this.pos<this.tokens.length-1&&this.pos++,e}getPos(){return this.pos}check(e,t,n,r,...i){let a=this.tokens[this.pos]?.type;return a===e||t!==void 0&&a===t||n!==void 0&&a===n||r!==void 0&&a===r||i.length>0&&i.includes(a)}expect(e,t){if(this.check(e))return this.advance();let n=this.current();throw new Yw(t||`Expected ${e}, got ${n.type}`,n.line,n.column,n)}error(e){let t=this.current();throw new Yw(e,t.line,t.column,t)}skipNewlines(){for(;this.check(K.NEWLINE,K.COMMENT);)this.check(K.NEWLINE)?(this.advance(),this.processHeredocs()):this.advance()}skipSeparators(e=!0){for(;;){if(this.check(K.NEWLINE)){this.advance(),this.processHeredocs();continue}if(this.check(K.SEMICOLON,K.COMMENT)){this.advance();continue}if(e&&this.check(K.DSEMI,K.SEMI_AND,K.SEMI_SEMI_AND)){this.advance();continue}break}}addPendingHeredoc(e,t,n,r){this.pendingHeredocs.push({redirect:e,delimiter:t,stripTabs:n,quoted:r})}processHeredocs(){for(let e of this.pendingHeredocs)if(this.check(K.HEREDOC_CONTENT)){let t=this.advance(),n;n=e.quoted?G.word([G.literal(t.value)]):this.parseWordFromString(t.value,!1,!1,!1,!0),e.redirect.target=G.hereDoc(e.delimiter,n,e.stripTabs,e.quoted)}this.pendingHeredocs=[]}isStatementEnd(){return this.check(K.EOF,K.NEWLINE,K.SEMICOLON,K.AMP,K.AND_AND,K.OR_OR,K.RPAREN,K.RBRACE,K.DSEMI,K.SEMI_AND,K.SEMI_SEMI_AND)}isCommandStart(){let e=this.current().type;return e===K.WORD||e===K.NAME||e===K.NUMBER||e===K.ASSIGNMENT_WORD||e===K.IF||e===K.FOR||e===K.WHILE||e===K.UNTIL||e===K.CASE||e===K.LPAREN||e===K.LBRACE||e===K.DPAREN_START||e===K.DBRACK_START||e===K.FUNCTION||e===K.BANG||e===K.TIME||e===K.IN||e===K.LESS||e===K.GREAT||e===K.DLESS||e===K.DGREAT||e===K.LESSAND||e===K.GREATAND||e===K.LESSGREAT||e===K.DLESSDASH||e===K.CLOBBER||e===K.TLESS||e===K.AND_GREAT||e===K.AND_DGREAT}parseScript(){let e=[],t=0;for(this.skipNewlines();!this.check(K.EOF);){t++,t>1e4&&this.error(`Parser stuck: too many iterations (>10000)`);let n=this.checkUnexpectedToken();if(n){e.push(n),this.skipSeparators(!1);continue}let r=this.pos,i=this.parseStatement();i&&e.push(i),this.skipSeparators(!1),this.check(K.DSEMI,K.SEMI_AND,K.SEMI_SEMI_AND)&&this.error(`syntax error near unexpected token \`${this.current().value}'`),this.pos===r&&!this.check(K.EOF)&&this.advance()}return G.script(e)}checkUnexpectedToken(){let e=this.current().type,t=this.current().value;if((e===K.DO||e===K.DONE||e===K.THEN||e===K.ELSE||e===K.ELIF||e===K.FI||e===K.ESAC)&&this.error(`syntax error near unexpected token \`${t}'`),e===K.RBRACE||e===K.RPAREN){let e=`syntax error near unexpected token \`${t}'`;return this.advance(),G.statement([G.pipeline([G.simpleCommand(null,[],[],[])])],[],!1,{message:e,token:t})}return(e===K.DSEMI||e===K.SEMI_AND||e===K.SEMI_SEMI_AND)&&this.error(`syntax error near unexpected token \`${t}'`),e===K.SEMICOLON&&this.error(`syntax error near unexpected token \`${t}'`),(e===K.PIPE||e===K.PIPE_AMP)&&this.error(`syntax error near unexpected token \`${t}'`),null}parseStatement(){if(this.skipNewlines(),!this.isCommandStart())return null;let e=this.current().start,t=[],n=[],r=!1,i=this.parsePipeline();for(t.push(i);this.check(K.AND_AND,K.OR_OR);){let e=this.advance();n.push(e.type===K.AND_AND?`&&`:`||`),this.skipNewlines();let r=this.parsePipeline();t.push(r)}this.check(K.AMP)&&(this.advance(),r=!0);let a=this.pos>0?this.tokens[this.pos-1].end:e,o=this._input.slice(e,a);return G.statement(t,n,r,void 0,o)}parsePipeline(){let e=!1,t=!1;this.check(K.TIME)&&(this.advance(),e=!0,this.check(K.WORD,K.NAME)&&this.current().value===`-p`&&(this.advance(),t=!0));let n=0;for(;this.check(K.BANG);)this.advance(),n++;let r=n%2==1,i=[],a=[],o=this.parseCommand();for(i.push(o);this.check(K.PIPE,K.PIPE_AMP);){let e=this.advance();this.skipNewlines(),a.push(e.type===K.PIPE_AMP);let t=this.parseCommand();i.push(t)}return G.pipeline(i,r,e,t,a.length>0?a:void 0)}parseCommand(){return this.check(K.IF)?YT(this):this.check(K.FOR)?XT(this):this.check(K.WHILE)?QT(this):this.check(K.UNTIL)?$T(this):this.check(K.CASE)?eE(this):this.check(K.LPAREN)?nE(this):this.check(K.LBRACE)?rE(this):this.check(K.DPAREN_START)?this.dparenClosesWithSpacedParens()?this.parseNestedSubshellsFromDparen():this.parseArithmeticCommand():this.check(K.DBRACK_START)?this.parseConditionalCommand():this.check(K.FUNCTION)||this.check(K.NAME,K.WORD)&&this.peek(1).type===K.LPAREN&&this.peek(2).type===K.RPAREN?this.parseFunctionDef():WT(this)}dparenClosesWithSpacedParens(){let e=1,t=1;for(;t<this.tokens.length-this.pos;){let n=this.peek(t);if(n.type===K.EOF)return!1;if(n.type===K.DPAREN_START||n.type===K.LPAREN)e++;else if(n.type===K.DPAREN_END){if(e-=2,e<=0)return!1}else if(n.type===K.RPAREN&&(e--,e===0&&this.peek(t+1).type===K.RPAREN))return!0;t++}return!1}parseNestedSubshellsFromDparen(){this.advance();let e=this.parseCompoundList();this.expect(K.RPAREN),this.expect(K.RPAREN);let t=this.parseOptionalRedirections(),n=G.subshell(e,[]);return G.subshell([G.statement([G.pipeline([n],!1,!1,!1)])],t)}isWord(){let e=this.current().type;return e===K.WORD||e===K.NAME||e===K.NUMBER||e===K.IF||e===K.FOR||e===K.WHILE||e===K.UNTIL||e===K.CASE||e===K.FUNCTION||e===K.ELSE||e===K.ELIF||e===K.FI||e===K.THEN||e===K.DO||e===K.DONE||e===K.ESAC||e===K.IN||e===K.SELECT||e===K.TIME||e===K.COPROC||e===K.BANG}parseWord(){let e=this.advance();return this.parseWordFromString(e.value,e.quoted,e.singleQuoted)}parseWordNoBraceExpansion(){let e=this.advance();return this.parseWordFromString(e.value,e.quoted,e.singleQuoted,!1,!1,!0)}parseWordForRegex(){let e=this.advance();return this.parseWordFromString(e.value,e.quoted,e.singleQuoted,!1,!1,!0,!0)}parseWordFromString(e,t=!1,n=!1,r=!1,i=!1,a=!1,o=!1){let s=wE(this,e,t,n,r,i,!1,a,o);return G.word(s)}parseCommandSubstitution(t,n){return Dw(t,n,()=>new e,e=>this.error(e))}parseBacktickSubstitution(t,n,r=!1){return Ow(t,n,r,()=>new e,e=>this.error(e))}isDollarDparenSubshell(e,t){return ww(e,t)}parseArithmeticExpansion(e,t){let n=t+3,r=1,i=0,a=n;for(;a<e.length-1&&r>0;)e[a]===`$`&&e[a+1]===`(`?e[a+2]===`(`?(r++,a+=3):(i++,a+=2):e[a]===`(`&&e[a+1]===`(`?(r++,a+=2):e[a]===`)`&&e[a+1]===`)`?i>0?(i--,a++):(r--,r>0&&(a+=2)):e[a]===`(`?(i++,a++):(e[a]===`)`&&i>0&&i--,a++);let o=e.slice(n,a),s=this.parseArithmeticExpression(o);return{part:G.arithmeticExpansion(s),endIndex:a+2}}parseArithmeticCommand(){let e=this.expect(K.DPAREN_START),t=``,n=1,r=0,i=!1,a=!1;for(;n>0&&!this.check(K.EOF);){if(i){if(i=!1,r>0){r--,t+=`)`;continue}if(this.check(K.RPAREN)){n--,a=!0,this.advance();continue}if(this.check(K.DPAREN_END)){n--,a=!0;continue}t+=`)`;continue}if(this.check(K.DPAREN_START))n++,t+=`((`,this.advance();else if(this.check(K.DPAREN_END))r>=2?(r-=2,t+=`))`,this.advance()):r===1?(r--,t+=`)`,i=!0,this.advance()):(n--,a=!0,n>0&&(t+=`))`),this.advance());else if(this.check(K.LPAREN))r++,t+=`(`,this.advance();else if(this.check(K.RPAREN))r>0&&r--,t+=`)`,this.advance();else{let e=this.current().value,n=t.length>0?t[t.length-1]:``;t.length>0&&!t.endsWith(` `)&&!(e===`=`&&/[|&^+\-*/%<>]$/.test(t))&&!(e===`<`&&n===`<`)&&!(e===`>`&&n===`>`)&&(t+=` `),t+=e,this.advance()}}a||this.expect(K.DPAREN_END);let o=this.parseArithmeticExpression(t.trim()),s=this.parseOptionalRedirections();return G.arithmeticCommand(o,s,e.line)}parseConditionalCommand(){let e=this.expect(K.DBRACK_START),t=sE(this);this.expect(K.DBRACK_END);let n=this.parseOptionalRedirections();return G.conditionalCommand(t,n,e.line)}parseFunctionDef(){let e;if(this.check(K.FUNCTION)){if(this.advance(),this.check(K.NAME)||this.check(K.WORD))e=this.advance().value;else{let e=this.current();throw new Yw(`Expected function name`,e.line,e.column,e)}this.check(K.LPAREN)&&(this.advance(),this.expect(K.RPAREN))}else e=this.advance().value,e.includes(`$`)&&this.error(`\`${e}': not a valid identifier`),this.expect(K.LPAREN),this.expect(K.RPAREN);this.skipNewlines();let t=this.parseCompoundCommandBody({forFunctionBody:!0}),n=this.parseOptionalRedirections();return G.functionDef(e,t,n)}parseCompoundCommandBody(e){let t=e?.forFunctionBody;if(this.check(K.LBRACE))return rE(this,{skipRedirections:t});if(this.check(K.LPAREN))return nE(this,{skipRedirections:t});if(this.check(K.IF))return YT(this,{skipRedirections:t});if(this.check(K.FOR))return XT(this,{skipRedirections:t});if(this.check(K.WHILE))return QT(this,{skipRedirections:t});if(this.check(K.UNTIL))return $T(this,{skipRedirections:t});if(this.check(K.CASE))return eE(this,{skipRedirections:t});this.error(`Expected compound command for function body`)}parseCompoundList(){let e=this.enterDepth(),t=[];for(this.skipNewlines();!this.check(K.EOF,K.FI,K.ELSE,K.ELIF,K.THEN,K.DO,K.DONE,K.ESAC,K.RPAREN,K.RBRACE,K.DSEMI,K.SEMI_AND,K.SEMI_SEMI_AND)&&this.isCommandStart();){this.checkIterationLimit();let e=this.pos,n=this.parseStatement();if(n&&t.push(n),this.skipSeparators(),this.pos===e&&!n)break}return e(),t}parseOptionalRedirections(){let e=[];for(;VT(this);){this.checkIterationLimit();let t=this.pos;if(e.push(HT(this)),this.pos===t)break}return e}parseArithmeticExpression(e){return aT(this,e)}}});function kE(e){return PE.get(e)??``}function AE(e){let t=[],n=``,r=0;for(;r<e.length;){let i=e[r];if(i===`[`){for(n+=i,r++,r<e.length&&(e[r]===`!`||e[r]===`^`)&&(n+=e[r],r++),r<e.length&&e[r]===`]`&&(n+=e[r],r++);r<e.length&&e[r]!==`]`;){if(e[r]===`[`&&r+1<e.length&&e[r+1]===`:`){let t=e.indexOf(`:]`,r+2);if(t!==-1){n+=e.slice(r,t+2),r=t+2;continue}}if(e[r]===`\\`&&r+1<e.length){n+=e[r]+e[r+1],r+=2;continue}n+=e[r],r++}r<e.length&&e[r]===`]`&&(n+=e[r],r++)}else i===`:`?(n!==``&&t.push(n),n=``,r++):i===`\\`&&r+1<e.length?(n+=i+e[r+1],r+=2):(n+=i,r++)}return n!==``&&t.push(n),t}function jE(e){let t=`^`;for(let n=0;n<e.length;n++){let r=e[n];if(r===`*`)t+=`[^/]*`;else if(r===`?`)t+=`[^/]`;else if(r===`[`){let r=n+1,i=`[`;r<e.length&&(e[r]===`^`||e[r]===`!`)&&(i+=`^`,r++),r<e.length&&e[r]===`]`&&(i+=`\\]`,r++);let a=r;for(;a<e.length;){if(e[a]===`\\`&&a+1<e.length){a+=2;continue}if(e[a]===`[`&&a+1<e.length&&e[a+1]===`:`){let t=e.indexOf(`:]`,a+2);if(t!==-1){a=t+2;continue}}if(e[a]===`]`)break;a++}let o=r;for(;r<e.length&&e[r]!==`]`;){if(e[r]===`[`&&r+1<e.length&&e[r+1]===`:`){let t=e.indexOf(`:]`,r+2);if(t!==-1){let n=kE(e.slice(r+2,t));i+=n,r=t+2;continue}}if(e[r]===`\\`&&r+1<e.length){i+=`\\${e[r+1]}`,r+=2;continue}if(e[r]===`-`){let e=r===o,t=r+1===a;e||t?i+=`\\-`:i+=`-`}else i+=e[r];r++}i+=`]`,t+=i,n=r}else if(r===`\\`&&n+1<e.length){let r=e[n+1];/[.+^${}()|\\*?[\]]/.test(r)?t+=`\\${r}`:t+=r,n++}else/[.+^${}()|]/.test(r)?t+=`\\${r}`:t+=r}return t+=`$`,z(t)}function ME(e,t){let n=1,r=t+1;for(;r<e.length&&n>0;){let t=e[r];if(t===`\\`){r+=2;continue}if(t===`(`)n++;else if(t===`)`&&(n--,n===0))return r;r++}return-1}function NE(e){let t=[],n=``,r=0,i=!1,a=0;for(;a<e.length;){let o=e[a];if(o===`'`&&!i){i=!0,n+=`\0QUOTE_START\0`,a++;continue}if(o===`'`&&i){i=!1,n+=`\0QUOTE_END\0`,a++;continue}if(i){n+=o,a++;continue}if(o===`\\`){n+=o,a+1<e.length?(n+=e[a+1],a+=2):a++;continue}o===`(`?(r++,n+=o):o===`)`?(r--,n+=o):o===`|`&&r===0?(t.push(n),n=``):n+=o,a++}return t.push(n),t}var PE,FE=x(()=>{ks(),PE=new Map([[`alnum`,`a-zA-Z0-9`],[`alpha`,`a-zA-Z`],[`ascii`,`\\x00-\\x7F`],[`blank`,` \\t`],[`cntrl`,`\\x00-\\x1F\\x7F`],[`digit`,`0-9`],[`graph`,`!-~`],[`lower`,`a-z`],[`print`,` -~`],[`punct`,"!-/:-@\\[-`{-~"],[`space`,` \\t\\n\\r\\f\\v`],[`upper`,`A-Z`],[`word`,`a-zA-Z0-9_`],[`xdigit`,`0-9a-fA-F`]])}),IE,LE,RE=x(()=>{A(),ks(),Sr(),FE(),IE=5,LE=class{fs;cwd;globignorePatterns=[];hasGlobignore=!1;globstar=!1;nullglob=!1;failglob=!1;dotglob=!1;extglob=!1;globskipdots=!0;ops={count:0};maxOps;constructor(e,t,n,r){this.fs=e,this.cwd=t,typeof r==`boolean`?(this.globstar=r,this.maxOps=1e5):r?(this.globstar=r.globstar??!1,this.nullglob=r.nullglob??!1,this.failglob=r.failglob??!1,this.dotglob=r.dotglob??!1,this.extglob=r.extglob??!1,this.globskipdots=r.globskipdots??!0,this.maxOps=r.maxGlobOperations??1e5):this.maxOps=1e5;let i=n?.get(`GLOBIGNORE`);i!==void 0&&i!==``&&(this.hasGlobignore=!0,this.globignorePatterns=AE(i))}checkOpsLimit(){if(++this.ops.count>this.maxOps)throw new k(`Glob operation limit exceeded (${this.maxOps})`,`glob_operations`)}hasNullglob(){return this.nullglob}hasFailglob(){return this.failglob}filterGlobignore(e){return!this.hasGlobignore&&!this.globskipdots?e:e.filter(e=>{let t=e.split(`/`).pop()||e;if((this.hasGlobignore||this.globskipdots)&&(t===`.`||t===`..`))return!1;if(this.hasGlobignore){for(let t of this.globignorePatterns)if(this.matchGlobignorePattern(e,t))return!1}return!0})}matchGlobignorePattern(e,t){return jE(t).test(e)}isGlobPattern(e){return!!(e.includes(`*`)||e.includes(`?`)||/\[.*\]/.test(e)||this.extglob&&/[@*+?!]\(/.test(e))}async expandArgs(e,t){let n=e.map((e,n)=>(t?.[n]??!1)||!this.isGlobPattern(e)?null:this.expand(e)),r=await Promise.all(n.map(e=>e||Promise.resolve(null))),i=[];for(let t=0;t<e.length;t++){let n=r[t];n===null?i.push(e[t]):n.length>0?i.push(...n):i.push(e[t])}return i}async expand(e){if(this.globstar){let t=e.split(`/`),n=0;for(let e of t)if(e===`**`&&(n++,n>IE))throw new k(`Glob pattern has too many ** segments (max ${IE})`,`glob_operations`)}let t;if(e.includes(`**`)&&this.globstar&&this.isGlobstarValid(e))t=await this.expandRecursive(e);else{let n=e.replace(/\*\*+/g,`*`);t=await this.expandSimple(n)}return this.filterGlobignore(t)}isGlobstarValid(e){let t=e.split(`/`);for(let e of t)if(e.includes(`**`)&&e!==`**`)return!1;return!0}hasGlobChars(e){return!!(e.includes(`*`)||e.includes(`?`)||/\[.*\]/.test(e)||this.extglob&&/[@*+?!]\(/.test(e))}async expandSimple(e){let t=e.startsWith(`/`),n=e.split(`/`).filter(e=>e!==``),r=-1;for(let e=0;e<n.length;e++)if(this.hasGlobChars(n[e])){r=e;break}if(r===-1)return[e];let i,a;if(r===0)t?(i=`/`,a=`/`):(i=this.cwd,a=``);else{let e=n.slice(0,r);t?(i=`/${e.join(`/`)}`,a=`/${e.join(`/`)}`):(i=this.fs.resolvePath(this.cwd,e.join(`/`)),a=e.join(`/`))}let o=n.slice(r);return(await this.expandSegments(i,a,o)).sort()}async expandSegments(e,t,n){if(this.checkOpsLimit(),n.length===0)return[t];let[r,...i]=n,a=[];try{if(this.fs.readdirWithFileTypes){this.checkOpsLimit();let n=await this.fs.readdirWithFileTypes(e),o=[],s=[...n],c=this.dotglob||this.hasGlobignore;if(r.startsWith(`.`)||this.dotglob){let e=n.some(e=>e.name===`.`),t=n.some(e=>e.name===`..`);e||s.push({name:`.`,isFile:!1,isDirectory:!0,isSymbolicLink:!1}),t||s.push({name:`..`,isFile:!1,isDirectory:!0,isSymbolicLink:!1})}for(let n of s)if(!(n.name.startsWith(`.`)&&!r.startsWith(`.`)&&!c)&&this.matchPattern(n.name,r)){let r=e===`/`?`/${n.name}`:`${e}/${n.name}`,a;a=t===``?n.name:t===`/`?`/${n.name}`:`${t}/${n.name}`,i.length===0?o.push(Promise.resolve([a])):n.isDirectory&&o.push(this.expandSegments(r,a,i))}let l=await Promise.all(o);for(let e of l)a.push(...e)}else{this.checkOpsLimit();let n=await this.fs.readdir(e),o=[],s=[...n],c=this.dotglob||this.hasGlobignore;(r.startsWith(`.`)||this.dotglob)&&(n.includes(`.`)||s.push(`.`),n.includes(`..`)||s.push(`..`));for(let n of s)if(!(n.startsWith(`.`)&&!r.startsWith(`.`)&&!c)&&this.matchPattern(n,r)){let r=e===`/`?`/${n}`:`${e}/${n}`,a;a=t===``?n:t===`/`?`/${n}`:`${t}/${n}`,i.length===0?o.push(Promise.resolve([a])):o.push((async()=>{try{if(this.checkOpsLimit(),(await this.fs.stat(r)).isDirectory)return this.expandSegments(r,a,i)}catch(e){if(e instanceof k)throw e}return[]})())}let l=await Promise.all(o);for(let e of l)a.push(...e)}}catch(e){if(e instanceof k)throw e}return a}async expandRecursive(e){let t=[],n=e.indexOf(`**`),r=e.slice(0,n).replace(/\/$/,``)||`.`,i=e.slice(n+2).replace(/^\//,``);return i.includes(`**`)&&this.isGlobstarValid(i)?(await this.walkDirectoryMultiGlobstar(r,i,t),[...new Set(t)].sort()):(await this.walkDirectory(r,i,t),t.sort())}async walkDirectoryMultiGlobstar(e,t,n){this.checkOpsLimit();let r=this.fs.resolvePath(this.cwd,e);try{this.checkOpsLimit();let i=this.fs.readdirWithFileTypes?await this.fs.readdirWithFileTypes(r):null;if(i){let r=[];for(let t of i){let n=e===`.`?t.name:`${e}/${t.name}`;t.isDirectory&&r.push(n)}let a=e===`.`?t:`${e}/${t}`,o=await this.expandRecursive(a);n.push(...o);for(let e=0;e<r.length;e+=100){let i=r.slice(e,e+100);await Promise.all(i.map(e=>this.walkDirectoryMultiGlobstar(e,t,n)))}}else{this.checkOpsLimit();let i=await this.fs.readdir(r),a=[];for(let t of i){let n=e===`.`?t:`${e}/${t}`,r=this.fs.resolvePath(this.cwd,n);try{this.checkOpsLimit(),(await this.fs.stat(r)).isDirectory&&a.push(n)}catch(e){if(e instanceof k)throw e}}let o=e===`.`?t:`${e}/${t}`,s=await this.expandRecursive(o);n.push(...s);for(let e=0;e<a.length;e+=100){let r=a.slice(e,e+100);await Promise.all(r.map(e=>this.walkDirectoryMultiGlobstar(e,t,n)))}}}catch(e){if(e instanceof k)throw e}}async walkDirectory(e,t,n){this.checkOpsLimit();let r=this.fs.resolvePath(this.cwd,e);try{if(this.fs.readdirWithFileTypes){this.checkOpsLimit();let i=await this.fs.readdirWithFileTypes(r),a=[],o=[];for(let n of i){let r=e===`.`?n.name:`${e}/${n.name}`;n.isDirectory?o.push(r):t&&this.matchPattern(n.name,t)&&a.push(r)}n.push(...a);for(let e=0;e<o.length;e+=100){let r=o.slice(e,e+100);await Promise.all(r.map(e=>this.walkDirectory(e,t,n)))}}else{this.checkOpsLimit();let i=await this.fs.readdir(r),a=[];for(let t=0;t<i.length;t+=100){let n=i.slice(t,t+100),r=await Promise.all(n.map(async t=>{let n=e===`.`?t:`${e}/${t}`,r=this.fs.resolvePath(this.cwd,n);try{return this.checkOpsLimit(),{name:t,path:n,isDirectory:(await this.fs.stat(r)).isDirectory}}catch(e){if(e instanceof k)throw e;return null}}));a.push(...r.filter(e=>e!==null))}for(let e of a)!e.isDirectory&&t&&this.matchPattern(e.name,t)&&n.push(e.path);let o=a.filter(e=>e.isDirectory);for(let e=0;e<o.length;e+=100){let r=o.slice(e,e+100);await Promise.all(r.map(e=>this.walkDirectory(e.path,t,n)))}}}catch(e){if(e instanceof k)throw e}}matchPattern(e,t){return this.patternToRegex(t).test(e)}patternToRegex(e){return z(`^${this.patternToRegexStr(e)}$`)}patternToRegexStr(e){let t=``,n=!1;for(let r=0;r<e.length;r++){if(e.slice(r,r+13)===`\0QUOTE_START\0`){n=!0,r+=12;continue}if(e.slice(r,r+11)===`\0QUOTE_END\0`){n=!1,r+=10;continue}let i=e[r];if(n){/[.+^${}()|\\*?[\]]/.test(i)?t+=`\\${i}`:t+=i;continue}if(this.extglob&&(i===`@`||i===`*`||i===`+`||i===`?`||i===`!`)&&r+1<e.length&&e[r+1]===`(`){let n=ME(e,r+1);if(n!==-1){let a=NE(e.slice(r+2,n)),o=a.map(e=>this.patternToRegexStr(e)),s=o.length>0?o.join(`|`):`(?:)`;if(i===`@`)t+=`(?:${s})`;else if(i===`*`)t+=`(?:${s})*`;else if(i===`+`)t+=`(?:${s})+`;else if(i===`?`)t+=`(?:${s})?`;else if(i===`!`)if(n<e.length-1){let e=a.map(e=>this.computePatternLength(e));if(e.every(e=>e!==null)&&e.every(t=>t===e[0])&&e[0]!==null){let n=e[0];if(n===0)t+=`(?:.+)`;else{let e=[];n>0&&e.push(`.{0,${n-1}}`),e.push(`.{${n+1},}`),e.push(`(?!(?:${s})).{${n}}`),t+=`(?:${e.join(`|`)})`}}else t+=`(?:(?!(?:${s})).)*?`}else t+=`(?!(?:${s})$).*`;r=n;continue}}if(i===`*`)t+=`.*`;else if(i===`?`)t+=`.`;else if(i===`[`){let n=r+1,i=`[`;n<e.length&&(e[n]===`^`||e[n]===`!`)&&(i+=`^`,n++),n<e.length&&e[n]===`]`&&(i+=`\\]`,n++);let a=n;for(;a<e.length;){if(e[a]===`\\`&&a+1<e.length){a+=2;continue}if(e[a]===`[`&&a+1<e.length&&e[a+1]===`:`){let t=e.indexOf(`:]`,a+2);if(t!==-1){a=t+2;continue}}if(e[a]===`]`)break;a++}let o=n;for(;n<e.length&&e[n]!==`]`;){if(e[n]===`[`&&n+1<e.length&&e[n+1]===`:`){let t=e.indexOf(`:]`,n+2);if(t!==-1){let r=kE(e.slice(n+2,t));i+=r,n=t+2;continue}}if(e[n]===`\\`&&n+1<e.length){i+=`\\${e[n+1]}`,n+=2;continue}if(e[n]===`-`){let e=n===o,t=n+1===a;e||t?i+=`\\-`:i+=`-`}else i+=e[n];n++}i+=`]`,t+=i,r=n}else if(i===`\\`&&r+1<e.length){let n=e[r+1];/[.+^${}()|\\*?[\]]/.test(n)?t+=`\\${n}`:t+=n,r++}else/[.+^${}()|]/.test(i)?t+=`\\${i}`:t+=i}return t}computePatternLength(e){let t=0,n=0,r=!1;for(;n<e.length;){if(e.slice(n,n+13)===`\0QUOTE_START\0`){r=!0,n+=13;continue}if(e.slice(n,n+11)===`\0QUOTE_END\0`){r=!1,n+=11;continue}let i=e[n];if(r){t+=1,n++;continue}if((i===`@`||i===`*`||i===`+`||i===`?`||i===`!`)&&n+1<e.length&&e[n+1]===`(`){let r=ME(e,n+1);if(r!==-1){if(i===`@`){let i=NE(e.slice(n+2,r)).map(e=>this.computePatternLength(e));if(i.every(e=>e!==null)&&i.every(e=>e===i[0])){t+=i[0],n=r+1;continue}return null}return null}}if(i===`*`)return null;if(i===`?`){t+=1,n++;continue}if(i===`[`){let r=e.indexOf(`]`,n+1);if(r!==-1){t+=1,n=r+1;continue}t+=1,n++;continue}if(i===`\\`){t+=1,n+=2;continue}t+=1,n++}return t}}});function zE(e){for(let t=0;t<e.length;t++){if(e[t]===`\\`){t++;continue}if(e[t]===`$`){let n=e[t+1];if(n===`{`||n&&/[a-zA-Z_]/.test(n))return!0}}return!1}function BE(e){if(!e.operation)return!1;let t=e.operation,n;if((t.type===`DefaultValue`||t.type===`AssignDefault`||t.type===`UseAlternative`||t.type===`ErrorIfUnset`)&&(n=t.word?.parts),!n)return!1;for(let e of n)if(e.type===`DoubleQuoted`||e.type===`SingleQuoted`)return!0;return!1}function VE(e){if(!e.operation)return!1;let t=e.operation,n;if((t.type===`DefaultValue`||t.type===`AssignDefault`||t.type===`UseAlternative`||t.type===`ErrorIfUnset`)&&(n=t.word?.parts),!n||n.length===0)return!1;for(let e of n)if(e.type!==`DoubleQuoted`&&e.type!==`SingleQuoted`)return!1;return!0}function HE(e){let t=!1,n=!1,r=!1,i=!1,a=!1,o=!1,s=!1;for(let c of e){if((c.type===`SingleQuoted`||c.type===`DoubleQuoted`)&&(t=!0,c.type===`DoubleQuoted`))for(let e of c.parts)e.type===`ParameterExpansion`&&(e.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[[@*]\]$/)&&(!e.operation||e.operation.type===`PatternRemoval`||e.operation.type===`PatternReplacement`)&&(i=!0),(e.operation?.type===`VarNamePrefix`||e.operation?.type===`ArrayKeys`)&&(o=!0),e.operation?.type===`Indirection`&&(s=!0));c.type===`CommandSubstitution`&&(n=!0),c.type===`ParameterExpansion`&&(a=!0,(c.parameter===`@`||c.parameter===`*`)&&(r=!0),BE(c)&&(t=!0),(c.operation?.type===`VarNamePrefix`||c.operation?.type===`ArrayKeys`)&&(o=!0),c.operation?.type===`Indirection`&&(s=!0)),c.type===`Glob`&&zE(c.pattern)&&(a=!0)}return{hasQuoted:t,hasCommandSub:n,hasArrayVar:r,hasArrayAtExpansion:i,hasParamExpansion:a,hasVarNamePrefixExpansion:o,hasIndirection:s}}var UE=x(()=>{});function WE(e,t){let n=`${t}_`,r=[];for(let t of e.state.env.keys())if(t.startsWith(n)){let e=t.slice(n.length),i=Number.parseInt(e,10);!Number.isNaN(i)&&String(i)===e&&r.push(i)}return r.sort((e,t)=>e-t)}function GE(e,t){let n=`${t}_`;for(let t of e.state.env.keys())t.startsWith(n)&&e.state.env.delete(t)}function KE(e,t){let n=`${t}_`,r=`${t}__length`,i=[];for(let t of e.state.env.keys())if(t!==r&&t.startsWith(n)){let e=t.slice(n.length);if(e.startsWith(`_length`))continue;i.push(e)}return i.sort()}function qE(e){return e.startsWith(`'`)&&e.endsWith(`'`)||e.startsWith(`"`)&&e.endsWith(`"`)?e.slice(1,-1):e}function JE(e){if(e.parts.length<2)return null;let t=e.parts[0],n=e.parts[1];if(t.type!==`Glob`||!t.pattern.startsWith(`[`))return null;let r,i=n,a=1;if(n.type===`Literal`&&n.value.startsWith(`]`)){let o=n.value.slice(1);if(o.startsWith(`+=`)||o.startsWith(`=`))r=t.pattern.slice(1);else if(o===``){if(e.parts.length<3)return null;let n=e.parts[2];if(n.type!==`Literal`||!n.value.startsWith(`=`)&&!n.value.startsWith(`+=`))return null;r=t.pattern.slice(1),i=n,a=2}else return null}else if(t.pattern===`[`&&(n.type===`DoubleQuoted`||n.type===`SingleQuoted`)){if(e.parts.length<3)return null;let t=e.parts[2];if(t.type!==`Literal`||!t.value.startsWith(`]=`)&&!t.value.startsWith(`]+=`))return null;if(n.type===`SingleQuoted`)r=n.value;else{r=``;for(let e of n.parts)(e.type===`Literal`||e.type===`Escaped`)&&(r+=e.value)}i=t,a=2}else if(t.pattern.endsWith(`]`)){if(n.type!==`Literal`||!n.value.startsWith(`=`)&&!n.value.startsWith(`+=`))return null;r=t.pattern.slice(1,-1)}else return null;r=qE(r);let o;if(i.type!==`Literal`)return null;o=i.value.startsWith(`]=`)||i.value.startsWith(`]+=`)?i.value.slice(1):i.value;let s=o.startsWith(`+=`);if(!s&&!o.startsWith(`=`))return null;let c=[],l=s?2:1,u=o.slice(l);u&&c.push({type:`Literal`,value:u});for(let t=a+1;t<e.parts.length;t++){let n=e.parts[t];n.type===`BraceExpansion`?c.push({type:`Literal`,value:YE(n)}):c.push(n)}return{key:r,valueParts:c,append:s}}function YE(e){return`{${e.items.map(e=>{if(e.type===`Range`){let t=`${e.startStr??String(e.start)}..${e.endStr??String(e.end)}`;return e.step&&(t+=`..${e.step}`),t}return XE(e.word)}).join(`,`)}}`}function XE(e){let t=``;for(let n of e.parts)switch(n.type){case`Literal`:t+=n.value;break;case`Glob`:t+=n.pattern;break;case`SingleQuoted`:t+=n.value;break;case`DoubleQuoted`:for(let e of n.parts)(e.type===`Literal`||e.type===`Escaped`)&&(t+=e.value);break;case`Escaped`:t+=n.value;break;case`BraceExpansion`:t+=`{`,t+=n.items.map(e=>e.type===`Range`?`${e.startStr}..${e.endStr}${e.step?`..${e.step}`:``}`:XE(e.word)).join(`,`),t+=`}`;break;case`TildeExpansion`:t+=`~`,n.user&&(t+=n.user);break}return t}var ZE=x(()=>{});function QE(e){return e.get(`IFS`)??`
856
+ `}function $E(e){return e.get(`IFS`)===``}function eD(e){let t=QE(e);if(t===``)return!0;for(let e of t)if(e!==` `&&e!==` `&&e!==`
857
+ `)return!1;return!0}function tD(e){let t=!1,n=[];for(let r of e.split(``))r===`-`?t=!0:/[\\^$.*+?()[\]{}|]/.test(r)?n.push(`\\${r}`):r===` `?n.push(`\\t`):r===`
858
+ `?n.push(`\\n`):n.push(r);return t&&n.push(`\\-`),n.join(``)}function q(e){let t=e.get(`IFS`);return t===void 0?` `:t[0]||``}function nD(e){return lD.includes(e)}function rD(e){let t=new Set,n=new Set;for(let r of e)nD(r)?t.add(r):n.add(r);return{whitespace:t,nonWhitespace:n}}function iD(e,t,n,r){if(t===``)return e===``?{words:[],wordStarts:[]}:{words:[e],wordStarts:[0]};let{whitespace:i,nonWhitespace:a}=rD(t),o=[],s=[],c=0;for(;c<e.length&&i.has(e[c]);)c++;if(c>=e.length)return{words:[],wordStarts:[]};if(a.has(e[c]))for(o.push(``),s.push(c),c++;c<e.length&&i.has(e[c]);)c++;for(;c<e.length&&!(n!==void 0&&o.length>=n);){let t=c;for(s.push(t);c<e.length;){let t=e[c];if(!r&&t===`\\`){c++,c<e.length&&c++;continue}if(i.has(t)||a.has(t))break;c++}if(o.push(e.substring(t,c)),c>=e.length)break;for(;c<e.length&&i.has(e[c]);)c++;if(c<e.length&&a.has(e[c])){for(c++;c<e.length&&i.has(e[c]);)c++;for(;c<e.length&&a.has(e[c])&&!(n!==void 0&&o.length>=n);)for(o.push(``),s.push(c),c++;c<e.length&&i.has(e[c]);)c++}}return{words:o,wordStarts:s}}function aD(e,t){if(t===``)return{words:e?[e]:[],hadLeadingDelimiter:!1,hadTrailingDelimiter:!1};if(e===``)return{words:[],hadLeadingDelimiter:!1,hadTrailingDelimiter:!1};let{whitespace:n,nonWhitespace:r}=rD(t),i=[],a=0,o=!1,s=!1,c=a;for(;a<e.length&&n.has(e[a]);)a++;if(a>c&&(o=!0),a>=e.length)return{words:[],hadLeadingDelimiter:!0,hadTrailingDelimiter:!0};if(r.has(e[a]))for(i.push(``),a++;a<e.length&&n.has(e[a]);)a++;for(;a<e.length;){let t=a;for(;a<e.length;){let t=e[a];if(n.has(t)||r.has(t))break;a++}if(i.push(e.substring(t,a)),a>=e.length){s=!1;break}let o=a;for(;a<e.length&&n.has(e[a]);)a++;if(a<e.length&&r.has(e[a])){for(a++;a<e.length&&n.has(e[a]);)a++;for(;a<e.length&&r.has(e[a]);)for(i.push(``),a++;a<e.length&&n.has(e[a]);)a++}a>=e.length&&a>o&&(s=!0)}return{words:i,hadLeadingDelimiter:o,hadTrailingDelimiter:s}}function oD(e,t){return aD(e,t).words}function sD(e,t){for(let n of e)if(t.has(n))return!0;return!1}function cD(e,t,n){if(t===``)return e;let{whitespace:r,nonWhitespace:i}=rD(t),a=e.length;for(;a>0&&r.has(e[a-1]);){if(!n&&a>=2){let t=0,n=a-2;for(;n>=0&&e[n]===`\\`;)t++,n--;if(t%2==1)break}a--}let o=e.substring(0,a);if(o.length>=1&&i.has(o[o.length-1])){if(!n&&o.length>=2){let e=0,t=o.length-2;for(;t>=0&&o[t]===`\\`;)e++,t--;if(e%2==1)return o}let e=o.substring(0,o.length-1);if(!sD(e,i))return e}return o}var lD,uD=x(()=>{lD=`
859
+ `});function dD(e,t){return e.state.namerefs?.has(t)??!1}function fD(e,t){e.state.namerefs??=new Set,e.state.namerefs.add(t)}function pD(e,t){e.state.namerefs?.delete(t),e.state.boundNamerefs?.delete(t),e.state.invalidNamerefs?.delete(t)}function mD(e,t){e.state.invalidNamerefs??=new Set,e.state.invalidNamerefs.add(t)}function hD(e,t){return e.state.invalidNamerefs?.has(t)??!1}function gD(e,t){e.state.boundNamerefs??=new Set,e.state.boundNamerefs.add(t)}function _D(e,t){let n=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(n){let t=n[1],r=Array.from(e.state.env.keys()).some(e=>e.startsWith(`${t}_`)&&!e.includes(`__`)),i=e.state.associativeArrays?.has(t)??!1;return r||i}return Array.from(e.state.env.keys()).some(e=>e.startsWith(`${t}_`)&&!e.includes(`__`))?!0:e.state.env.has(t)}function vD(e,t,n=100){if(!dD(e,t)||hD(e,t))return t;let r=new Set,i=t;for(;n-->0;){if(r.has(i))return;if(r.add(i),!dD(e,i))return i;let t=e.state.env.get(i);if(t===void 0||t===``||!/^[a-zA-Z_][a-zA-Z0-9_]*(\[.+\])?$/.test(t))return i;i=t}}function yD(e,t){if(dD(e,t))return e.state.env.get(t)}function bD(e,t,n,r=100){if(!dD(e,t)||hD(e,t))return t;let i=new Set,a=t;for(;r-->0;){if(i.has(a))return;if(i.add(a),!dD(e,a))return a;let t=e.state.env.get(a);if(t===void 0||t===``)return n===void 0||/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(n)&&_D(e,n)?a:null;if(!/^[a-zA-Z_][a-zA-Z0-9_]*(\[.+\])?$/.test(t))return a;a=t}}var xD=x(()=>{});function SD(e,t){let n=t.replace(/\$\{([a-zA-Z_][a-zA-Z0-9_]*)\}/g,(t,n)=>e.state.env.get(n)??``);return n=n.replace(/\$([a-zA-Z_][a-zA-Z0-9_]*)/g,(t,n)=>e.state.env.get(n)??``),n}function J(e,t){return t===`FUNCNAME`?(e.state.funcNameStack??[]).map((e,t)=>[t,e]):t===`BASH_LINENO`?(e.state.callLineStack??[]).map((e,t)=>[t,String(e)]):t===`BASH_SOURCE`?(e.state.sourceStack??[]).map((e,t)=>[t,e]):e.state.associativeArrays?.has(t)?KE(e,t).map(n=>[n,e.state.env.get(`${t}_${n}`)??``]):WE(e,t).map(n=>[n,e.state.env.get(`${t}_${n}`)??``])}function CD(e,t){return t===`FUNCNAME`?(e.state.funcNameStack?.length??0)>0:t===`BASH_LINENO`?(e.state.callLineStack?.length??0)>0:t===`BASH_SOURCE`?(e.state.sourceStack?.length??0)>0:e.state.associativeArrays?.has(t)?KE(e,t).length>0:WE(e,t).length>0}async function wD(e,t,n=!0,r=!1){switch(t){case`?`:return String(e.state.lastExitCode);case`$`:return String(e.state.virtualPid);case`#`:return e.state.env.get(`#`)||`0`;case`@`:return e.state.env.get(`@`)||``;case`_`:return e.state.lastArg;case`-`:{let t=``;return t+=`h`,e.state.options.errexit&&(t+=`e`),e.state.options.noglob&&(t+=`f`),e.state.options.nounset&&(t+=`u`),e.state.options.verbose&&(t+=`v`),e.state.options.xtrace&&(t+=`x`),t+=`B`,e.state.options.noclobber&&(t+=`C`),t+=`s`,t}case`*`:{let t=Number.parseInt(e.state.env.get(`#`)||`0`,10);if(t===0)return``;let n=[];for(let r=1;r<=t;r++)n.push(e.state.env.get(String(r))||``);return n.join(q(e.state.env))}case`0`:return e.state.env.get(`0`)||`bash`;case`PWD`:return e.state.env.get(`PWD`)??``;case`OLDPWD`:return e.state.env.get(`OLDPWD`)??``;case`PPID`:return String(e.state.virtualPpid);case`UID`:return String(e.state.virtualUid);case`EUID`:return String(e.state.virtualUid);case`RANDOM`:return String(Math.floor(Math.random()*32768));case`SECONDS`:return String(Math.floor((Date.now()-e.state.startTime)/1e3));case`BASH_VERSION`:return bw;case`!`:return String(e.state.lastBackgroundPid);case`BASHPID`:return String(e.state.bashPid);case`LINENO`:return String(e.state.currentLine);case`FUNCNAME`:{let t=e.state.funcNameStack?.[0];if(t!==void 0)return t;if(n&&e.state.options.nounset)throw new zr(`FUNCNAME`);return``}case`BASH_LINENO`:{let t=e.state.callLineStack?.[0];if(t!==void 0)return String(t);if(n&&e.state.options.nounset)throw new zr(`BASH_LINENO`);return``}case`BASH_SOURCE`:{let t=e.state.sourceStack?.[0];if(t!==void 0)return t;if(n&&e.state.options.nounset)throw new zr(`BASH_SOURCE`);return``}}if(/^[a-zA-Z_][a-zA-Z0-9_]*\[\]$/.test(t))throw new Hr(`\${${t}}`);let i=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(i){let t=i[1],r=i[2];if(dD(e,t)){let n=vD(e,t);if(n&&n!==t){if(n.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/))return``;t=n}}if(r===`@`||r===`*`){let n=J(e,t);if(n.length>0)return n.map(([,e])=>e).join(` `);let r=e.state.env.get(t);return r===void 0?``:r}if(t===`FUNCNAME`){let t=Number.parseInt(r,10);return!Number.isNaN(t)&&t>=0?e.state.funcNameStack?.[t]??``:``}if(t===`BASH_LINENO`){let t=Number.parseInt(r,10);if(!Number.isNaN(t)&&t>=0){let n=e.state.callLineStack?.[t];return n===void 0?``:String(n)}return``}if(t===`BASH_SOURCE`){let t=Number.parseInt(r,10);return!Number.isNaN(t)&&t>=0?e.state.sourceStack?.[t]??``:``}if(e.state.associativeArrays?.has(t)){let i=qE(r);i=SD(e,i);let a=e.state.env.get(`${t}_${i}`);if(a===void 0&&n&&e.state.options.nounset)throw new zr(`${t}[${r}]`);return a||``}let a;if(/^-?\d+$/.test(r))a=Number.parseInt(r,10);else try{a=await Z(e,aT(new DE,r).expression)}catch{let t=e.state.env.get(r);a=t?Number.parseInt(t,10):0,Number.isNaN(a)&&(a=0)}if(a<0){let n=J(e,t),r=e.state.currentLine;if(n.length===0)return e.state.expansionStderr=(e.state.expansionStderr||``)+`bash: line ${r}: ${t}: bad array subscript
860
+ `,``;let i=Math.max(...n.map(([e])=>typeof e==`number`?e:0))+1+a;return i<0?(e.state.expansionStderr=(e.state.expansionStderr||``)+`bash: line ${r}: ${t}: bad array subscript
861
+ `,``):e.state.env.get(`${t}_${i}`)||``}let o=e.state.env.get(`${t}_${a}`);if(o!==void 0)return o;if(a===0){let n=e.state.env.get(t);if(n!==void 0)return n}if(n&&e.state.options.nounset)throw new zr(`${t}[${a}]`);return``}if(/^[1-9][0-9]*$/.test(t)){let r=e.state.env.get(t);if(r===void 0&&n&&e.state.options.nounset)throw new zr(t);return r||``}if(dD(e,t)){let i=vD(e,t);if(i===void 0)return``;if(i!==t)return await wD(e,i,n,r);let a=e.state.env.get(t);if((a===void 0||a===``)&&n&&e.state.options.nounset)throw new zr(t);return a||``}let a=e.state.env.get(t);if(a!==void 0)return e.state.tempEnvBindings?.some(e=>e.has(t))&&(e.state.accessedTempEnvVars=e.state.accessedTempEnvVars||new Set,e.state.accessedTempEnvVars.add(t)),a;if(CD(e,t)){let n=e.state.env.get(`${t}_0`);return n===void 0?``:n}if(n&&e.state.options.nounset)throw new zr(t);return``}async function TD(e,t){if(new Set([`?`,`$`,`#`,`_`,`-`,`0`,`PPID`,`UID`,`EUID`,`RANDOM`,`SECONDS`,`BASH_VERSION`,`!`,`BASHPID`,`LINENO`]).has(t))return!0;if(t===`@`||t===`*`)return Number.parseInt(e.state.env.get(`#`)||`0`,10)>0;if(t===`PWD`||t===`OLDPWD`)return e.state.env.has(t);let n=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(n){let t=n[1],r=n[2];if(dD(e,t)){let n=vD(e,t);if(n&&n!==t){if(n.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/))return!1;t=n}}if(r===`@`||r===`*`)return J(e,t).length>0||e.state.env.has(t);if(e.state.associativeArrays?.has(t)){let n=qE(r);return e.state.env.has(`${t}_${n}`)}let i;if(/^-?\d+$/.test(r))i=Number.parseInt(r,10);else try{i=await Z(e,aT(new DE,r).expression)}catch{let t=e.state.env.get(r);i=t?Number.parseInt(t,10):0,Number.isNaN(i)&&(i=0)}if(i<0){let n=J(e,t);if(n.length===0)return!1;let r=Math.max(...n.map(([e])=>typeof e==`number`?e:0))+1+i;return r<0?!1:e.state.env.has(`${t}_${r}`)}return e.state.env.has(`${t}_${i}`)}if(dD(e,t)){let n=vD(e,t);return n===void 0||n===t?e.state.env.has(t):TD(e,n)}return!!(e.state.env.has(t)||CD(e,t))}var ED=x(()=>{ET(),OE(),Sw(),CA(),A(),ZE(),uD(),xD()});async function DD(e,t){let n=``,r=0;for(;r<t.length;){if(t[r]===`$`){if(t[r+1]===`{`){let e=1,i=r+2;for(;i<t.length&&e>0;)t[i]===`{`?e++:t[i]===`}`&&e--,i++;n+=t.slice(r,i),r=i;continue}if(t[r+1]===`(`){let e=1,i=r+2;for(;i<t.length&&e>0;)t[i]===`(`?e++:t[i]===`)`&&e--,i++;n+=t.slice(r,i),r=i;continue}if(/[a-zA-Z_]/.test(t[r+1]||``)){let i=r+1;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)i++;let a=await wD(e,t.slice(r+1,i));n+=a,r=i;continue}if(/[0-9]/.test(t[r+1]||``)){let i=r+1;for(;i<t.length&&/[0-9]/.test(t[i]);)i++;let a=await wD(e,t.slice(r+1,i));n+=a,r=i;continue}if(/[*@#?\-!$]/.test(t[r+1]||``)){let i=t[r+1],a=await wD(e,i);n+=a,r+=2;continue}}if(t[r]===`"`){for(n+=`"`,r++;r<t.length&&t[r]!==`"`;)if(t[r]===`$`&&/[a-zA-Z_]/.test(t[r+1]||``)){let i=r+1;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)i++;let a=await wD(e,t.slice(r+1,i));n+=a,r=i}else t[r]===`\\`?(n+=t[r],r++,r<t.length&&(n+=t[r],r++)):(n+=t[r],r++);r<t.length&&(n+=`"`,r++);continue}n+=t[r],r++}return n}async function OD(e,t){let n=t,r=t.startsWith(`"`)&&t.endsWith(`"`),i=t.startsWith(`'`)&&t.endsWith(`'`);if((r||i)&&(n=t.slice(1,-1)),i)return n;let a=``,o=0;for(;o<n.length;)if(n[o]===`$`)if(n[o+1]===`(`){let t=1,r=o+2;for(;r<n.length&&t>0;)n[r]===`(`&&n[r-1]===`$`||n[r]===`(`?t++:n[r]===`)`&&t--,r++;let i=n.slice(o+2,r-1);if(e.execFn){let t=await e.execFn(i,{signal:e.state.signal});a+=t.stdout.replace(/\n+$/,``),t.stderr&&(e.state.expansionStderr=(e.state.expansionStderr||``)+t.stderr)}o=r}else if(n[o+1]===`{`){let t=1,r=o+2;for(;r<n.length&&t>0;)n[r]===`{`?t++:n[r]===`}`&&t--,r++;let i=await wD(e,n.slice(o+2,r-1));a+=i,o=r}else if(/[a-zA-Z_]/.test(n[o+1]||``)){let t=o+1;for(;t<n.length&&/[a-zA-Z0-9_]/.test(n[t]);)t++;let r=await wD(e,n.slice(o+1,t));a+=r,o=t}else a+=n[o],o++;else if(n[o]==="`"){let t=o+1;for(;t<n.length&&n[t]!=="`";)t++;let r=n.slice(o+1,t);if(e.execFn){let t=await e.execFn(r,{signal:e.state.signal});a+=t.stdout.replace(/\n+$/,``),t.stderr&&(e.state.expansionStderr=(e.state.expansionStderr||``)+t.stderr)}o=t+1}else a+=n[o],o++;return a}var kD=x(()=>{ED()});function AD(e,t,n,r,i){let a=n??1;a===0&&(a=1);let o=Math.abs(a),s=[],c=0;r?.match(/^-?0\d/)&&(c=Math.max(c,r.replace(/^-/,``).length)),i?.match(/^-?0\d/)&&(c=Math.max(c,i.replace(/^-/,``).length));let l=e=>{if(c>0){let t=e<0,n=String(Math.abs(e)).padStart(c,`0`);return t?`-${n}`:n}return String(e)};if(e<=t)for(let n=e,r=0;n<=t&&r<ND;n+=o,r++)s.push(l(n));else for(let n=e,r=0;n>=t&&r<ND;n-=o,r++)s.push(l(n));return s}function jD(e,t,n){let r=n??1;r===0&&(r=1);let i=e.charCodeAt(0),a=t.charCodeAt(0),o=Math.abs(r);if(e>=`A`&&e<=`Z`&&t>=`a`&&t<=`z`||e>=`a`&&e<=`z`&&t>=`A`&&t<=`Z`){let r=n===void 0?``:`..${n}`;throw new Wr(`{${e}..${t}${r}}: invalid sequence`)}let s=[];if(i<=a)for(let e=i,t=0;e<=a&&t<ND;e+=o,t++)s.push(String.fromCharCode(e));else for(let e=i,t=0;e>=a&&t<ND;e-=o,t++)s.push(String.fromCharCode(e));return s}function MD(e,t,n,r,i){let a=n===void 0?``:`..${n}`;return typeof e==`number`&&typeof t==`number`?{expanded:AD(e,t,n,r,i),literal:`{${e}..${t}${a}}`}:typeof e==`string`&&typeof t==`string`?{expanded:jD(e,t,n),literal:`{${e}..${t}${a}}`}:{expanded:null,literal:`{${e}..${t}${a}}`}}var ND,PD=x(()=>{A(),ND=1e4});function FD(e){if(e.statements.length!==1)return null;let t=e.statements[0];if(t.operators.length!==0||t.pipelines.length!==1)return null;let n=t.pipelines[0];if(n.negated||n.commands.length!==1)return null;let r=n.commands[0];if(r.type!==`SimpleCommand`)return null;let i=r;if(i.name!==null||i.args.length!==0||i.assignments.length!==0||i.redirections.length!==1)return null;let a=i.redirections[0];return a.operator!==`<`||a.target.type!==`Word`?null:{target:a.target}}var ID=x(()=>{});function LD(e,t){return!!(/[*?[]/.test(e)||t&&/[@*+?!]\(/.test(e))}function RD(e){let t=``,n=0;for(;n<e.length;)e[n]===`\\`&&n+1<e.length?(t+=e[n+1],n+=2):(t+=e[n],n++);return t}function zD(e){return e.replace(/([*?[\]\\()|])/g,`\\$1`)}function BD(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,`\\$&`)}var VD=x(()=>{});function HD(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}var UD=x(()=>{});function Y(e,t,n=!1){let r=``,i=0;for(;i<e.length;){let a=e[i];if(n&&(a===`@`||a===`*`||a===`+`||a===`?`||a===`!`)&&i+1<e.length&&e[i+1]===`(`){let o=WD(e,i+1);if(o!==-1){let s=GD(e.slice(i+2,o)).map(e=>Y(e,t,n)),c=s.length>0?s.join(`|`):`(?:)`;a===`@`?r+=`(?:${c})`:a===`*`?r+=`(?:${c})*`:a===`+`?r+=`(?:${c})+`:a===`?`?r+=`(?:${c})?`:a===`!`&&(r+=`(?!(?:${c})$).*`),i=o+1;continue}}if(a===`\\`)if(i+1<e.length){let t=e[i+1];/[\\^$.|+(){}[\]*?]/.test(t)?r+=`\\${t}`:r+=t,i+=2}else r+=`\\\\`,i++;else if(a===`*`)r+=t?`.*`:`.*?`,i++;else if(a===`?`)r+=`.`,i++;else if(a===`[`){let t=KD(e,i);if(t===-1)r+=`\\[`,i++;else{let n=e.slice(i+1,t);r+=qD(n),i=t+1}}else/[\^$.|+(){}]/.test(a)?(r+=`\\${a}`,i++):(r+=a,i++)}return r}function WD(e,t){let n=1,r=t+1;for(;r<e.length&&n>0;){let t=e[r];if(t===`\\`){r+=2;continue}if(t===`(`)n++;else if(t===`)`&&(n--,n===0))return r;r++}return-1}function GD(e){let t=[],n=``,r=0,i=0;for(;i<e.length;){let a=e[i];if(a===`\\`){n+=a,i+1<e.length?(n+=e[i+1],i+=2):i++;continue}a===`(`?(r++,n+=a):a===`)`?(r--,n+=a):a===`|`&&r===0?(t.push(n),n=``):n+=a,i++}return t.push(n),t}function KD(e,t){let n=t+1;for(n<e.length&&e[n]===`^`&&n++,n<e.length&&e[n]===`]`&&n++;n<e.length;){if(e[n]===`\\`&&n+1<e.length){n+=2;continue}if(e[n]===`]`)return n;if(e[n]===`'`){let t=e.indexOf(`'`,n+1);if(t!==-1){n=t+1;continue}}if(e[n]===`[`&&n+1<e.length&&e[n+1]===`:`){let t=e.indexOf(`:]`,n+2);if(t!==-1){n=t+2;continue}}n++}return-1}function qD(e){let t=`[`,n=0;for((e[0]===`^`||e[0]===`!`)&&(t+=`^`,n++);n<e.length;){if(e[n]===`'`){let r=e.indexOf(`'`,n+1);if(r!==-1){let i=e.slice(n+1,r);for(let e of i)e===`\\`?t+=`\\\\`:e===`]`?t+=`\\]`:e===`^`&&t===`[`?t+=`\\^`:t+=e;n=r+1;continue}}if(e[n]===`[`&&n+1<e.length&&e[n+1]===`:`){let r=e.indexOf(`:]`,n+2);if(r!==-1){let i=e.slice(n+2,r);t+=JD(i),n=r+2;continue}}let r=e[n];r===`\\`?n+1<e.length?(t+=`\\${e[n+1]}`,n+=2):(t+=`\\\\`,n++):r===`-`&&n>0&&n<e.length-1?(t+=`-`,n++):r===`^`&&n===0?(t+=`^`,n++):(r===`]`&&n===0?t+=`\\]`:t+=r,n++)}return t+=`]`,t}function JD(e){return YD.get(e)??``}var YD,XD=x(()=>{YD=new Map([[`alnum`,`a-zA-Z0-9`],[`alpha`,`a-zA-Z`],[`ascii`,`\\x00-\\x7F`],[`blank`,` \\t`],[`cntrl`,`\\x00-\\x1F\\x7F`],[`digit`,`0-9`],[`graph`,`!-~`],[`lower`,`a-z`],[`print`,` -~`],[`punct`,"!-/:-@\\[-`{-~"],[`space`,` \\t\\n\\r\\f\\v`],[`upper`,`A-Z`],[`word`,`a-zA-Z0-9_`],[`xdigit`,`0-9A-Fa-f`]])});function ZD(e,t,n,r){if(n===`prefix`)return z(`^${t}`,`s`).replace(e,``);let i=z(`${t}$`,`s`);if(r)return i.replace(e,``);for(let t=e.length;t>=0;t--){let n=e.slice(t);if(i.test(n))return e.slice(0,t)}return e}function QD(e,t){let n=Array.from(e.state.env.keys()),r=new Set,i=e.state.associativeArrays??new Set,a=new Set;for(let e of n){let t=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)_\d+$/);t&&a.add(t[1]);let n=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)__length$/);n&&a.add(n[1])}let o=e=>{for(let t of i){let n=`${t}_`;if(e.startsWith(n)&&e!==t)return!0}return!1};for(let e of n)if(e.startsWith(t))if(e.includes(`__`)){let n=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)__length$/);n?.[1].startsWith(t)&&r.add(n[1])}else if(/_\d+$/.test(e)){let n=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)_\d+$/);n?.[1].startsWith(t)&&r.add(n[1])}else o(e)||r.add(e);return[...r].sort()}var $D=x(()=>{ks()});function eO(e,t){let n=(e,t=2)=>String(e).padStart(t,`0`);if(e===``)return`${n(t.getHours())}:${n(t.getMinutes())}:${n(t.getSeconds())}`;let r=``,i=0;for(;i<e.length;)if(e[i]===`%`){if(i+1>=e.length){r+=`%`,i++;continue}let a=e[i+1];switch(a){case`H`:r+=n(t.getHours());break;case`M`:r+=n(t.getMinutes());break;case`S`:r+=n(t.getSeconds());break;case`d`:r+=n(t.getDate());break;case`m`:r+=n(t.getMonth()+1);break;case`Y`:r+=t.getFullYear();break;case`y`:r+=n(t.getFullYear()%100);break;case`I`:{let e=t.getHours()%12;e===0&&(e=12),r+=n(e);break}case`p`:r+=t.getHours()<12?`AM`:`PM`;break;case`P`:r+=t.getHours()<12?`am`:`pm`;break;case`%`:r+=`%`;break;case`a`:r+=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`][t.getDay()];break;case`b`:r+=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][t.getMonth()];break;default:r+=`%${a}`}i+=2}else r+=e[i],i++;return r}function tO(e,t){let n=``,r=0,i=e.state.env.get(`USER`)||e.state.env.get(`LOGNAME`)||`user`,a=e.state.env.get(`HOSTNAME`)||`localhost`,o=a.split(`.`)[0],s=e.state.env.get(`PWD`)||`/`,c=e.state.env.get(`HOME`)||`/`,l=s.startsWith(c)?`~${s.slice(c.length)}`:s,u=s.split(`/`).pop()||s,d=new Date,f=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],p=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],m=e.state.env.get(`__COMMAND_NUMBER`)||`1`;for(;r<t.length;){let e=t[r];if(e===`\\`){if(r+1>=t.length){n+=`\\`,r++;continue}let e=t[r+1];if(e>=`0`&&e<=`7`){let e=``,i=r+1;for(;i<t.length&&i<r+4&&t[i]>=`0`&&t[i]<=`7`;)e+=t[i],i++;let a=Number.parseInt(e,8)%256;n+=String.fromCharCode(a),r=i;continue}switch(e){case`\\`:n+=`\\`,r+=2;break;case`a`:n+=`\x07`,r+=2;break;case`e`:n+=`\x1B`,r+=2;break;case`n`:n+=`
862
+ `,r+=2;break;case`r`:n+=`\r`,r+=2;break;case`$`:n+=`$`,r+=2;break;case`[`:case`]`:r+=2;break;case`u`:n+=i,r+=2;break;case`h`:n+=o,r+=2;break;case`H`:n+=a,r+=2;break;case`w`:n+=l,r+=2;break;case`W`:n+=u,r+=2;break;case`d`:{let e=String(d.getDate()).padStart(2,` `);n+=`${f[d.getDay()]} ${p[d.getMonth()]} ${e}`,r+=2;break}case`t`:{let e=String(d.getHours()).padStart(2,`0`),t=String(d.getMinutes()).padStart(2,`0`),i=String(d.getSeconds()).padStart(2,`0`);n+=`${e}:${t}:${i}`,r+=2;break}case`T`:{let e=d.getHours()%12;e===0&&(e=12);let t=String(e).padStart(2,`0`),i=String(d.getMinutes()).padStart(2,`0`),a=String(d.getSeconds()).padStart(2,`0`);n+=`${t}:${i}:${a}`,r+=2;break}case`@`:{let e=d.getHours()%12;e===0&&(e=12);let t=String(e).padStart(2,`0`),i=String(d.getMinutes()).padStart(2,`0`),a=d.getHours()<12?`AM`:`PM`;n+=`${t}:${i} ${a}`,r+=2;break}case`A`:{let e=String(d.getHours()).padStart(2,`0`),t=String(d.getMinutes()).padStart(2,`0`);n+=`${e}:${t}`,r+=2;break}case`D`:if(r+2<t.length&&t[r+2]===`{`){let e=t.indexOf(`}`,r+3);if(e!==-1){let i=t.slice(r+3,e);n+=eO(i,d),r=e+1}else n+=`\\D`,r+=2}else n+=`\\D`,r+=2;break;case`s`:n+=`bash`,r+=2;break;case`v`:n+=`5.0`,r+=2;break;case`V`:n+=`5.0.0`,r+=2;break;case`j`:n+=`0`,r+=2;break;case`l`:n+=`tty`,r+=2;break;case`#`:n+=m,r+=2;break;case`!`:n+=m,r+=2;break;case`x`:n+=`\\x`,r+=2;break;default:n+=`\\${e}`,r+=2}}else n+=e,r++}return n}var nO=x(()=>{});function rO(e){if(e===``)return`''`;if(/[\n\r\t\x00-\x1f\x7f']/.test(e)){let t=`$'`;for(let n of e)switch(n){case`'`:t+=`\\'`;break;case`\\`:t+=`\\\\`;break;case`
863
+ `:t+=`\\n`;break;case`\r`:t+=`\\r`;break;case` `:t+=`\\t`;break;default:{let e=n.charCodeAt(0);e<32||e===127?t+=`\\${e.toString(8).padStart(3,`0`)}`:t+=n}}return`${t}'`}return`'${e}'`}var iO=x(()=>{});function aO(e,t){e.state.readonlyVars=e.state.readonlyVars||new Set,e.state.readonlyVars.add(t)}function oO(e,t){return e.state.readonlyVars?.has(t)??!1}function sO(e,t,n=`bash`){if(oO(e,t)){let e=`${n}: ${t}: readonly variable
864
+ `;throw new Br(1,``,e)}return null}function cO(e,t){let n=e.state.exportedVars?.has(t)??!1;if(e.state.exportedVars=e.state.exportedVars||new Set,e.state.exportedVars.add(t),e.state.localScopes.length>0&&e.state.localScopes[e.state.localScopes.length-1].has(t)&&!n){for(e.state.localExportedVars||(e.state.localExportedVars=[]);e.state.localExportedVars.length<e.state.localScopes.length;)e.state.localExportedVars.push(new Set);e.state.localExportedVars[e.state.localExportedVars.length-1].add(t)}}function lO(e,t){e.state.exportedVars?.delete(t)}var uO=x(()=>{A()});function dO(e,t){if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(t))return``;let n=``,r=e.state.env.has(`${t}__length`)||Array.from(e.state.env.keys()).some(e=>e.startsWith(`${t}_`)&&/^[0-9]+$/.test(e.slice(t.length+1))),i=e.state.associativeArrays?.has(t)??!1;return r&&!i&&(n+=`a`),i&&(n+=`A`),e.state.integerVars?.has(t)&&(n+=`i`),dD(e,t)&&(n+=`n`),oO(e,t)&&(n+=`r`),e.state.exportedVars?.has(t)&&(n+=`x`),n}var fO=x(()=>{xD(),uO()});async function pO(e,t,n,r){return e.coverage?.hit(`bash:expansion:default_value`),(n.isUnset||t.checkEmpty&&n.isEmpty)&&t.word?r(e,t.word.parts,n.inDoubleQuotes):n.effectiveValue}async function mO(e,t,n,r,i){if(e.coverage?.hit(`bash:expansion:assign_default`),(r.isUnset||n.checkEmpty&&r.isEmpty)&&n.word){let a=await i(e,n.word.parts,r.inDoubleQuotes),o=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(o){let[,t,n]=o,r;if(/^\d+$/.test(n))r=Number.parseInt(n,10);else{try{r=await Z(e,aT(new DE,n).expression)}catch{let t=e.state.env.get(n);r=t?Number.parseInt(t,10):0}Number.isNaN(r)&&(r=0)}e.state.env.set(`${t}_${r}`,a);let i=Number.parseInt(e.state.env.get(`${t}__length`)||`0`,10);r>=i&&e.state.env.set(`${t}__length`,String(r+1))}else e.state.env.set(t,a);return a}return r.effectiveValue}async function hO(e,t,n,r,i){if(e.coverage?.hit(`bash:expansion:error_if_unset`),r.isUnset||n.checkEmpty&&r.isEmpty){let a=n.word?await i(e,n.word.parts,r.inDoubleQuotes):`${t}: parameter null or not set`;throw new Br(1,``,`bash: ${a}
865
+ `)}return r.effectiveValue}async function gO(e,t,n,r){return e.coverage?.hit(`bash:expansion:use_alternative`),!(n.isUnset||t.checkEmpty&&n.isEmpty)&&t.word?r(e,t.word.parts,n.inDoubleQuotes):``}async function _O(e,t,n,r,i){e.coverage?.hit(`bash:expansion:pattern_removal`);let a=``,o=e.state.shoptOptions.extglob;if(n.pattern)for(let t of n.pattern.parts)if(t.type===`Glob`)a+=Y(t.pattern,n.greedy,o);else if(t.type===`Literal`)a+=Y(t.value,n.greedy,o);else if(t.type===`SingleQuoted`||t.type===`Escaped`)a+=HD(t.value);else if(t.type===`DoubleQuoted`){let n=await r(e,t.parts);a+=HD(n)}else if(t.type===`ParameterExpansion`){let r=await i(e,t);a+=Y(r,n.greedy,o)}else{let n=await i(e,t);a+=HD(n)}if(n.side===`prefix`)return z(`^${a}`,`s`).replace(t,``);let s=z(`${a}$`,`s`);if(n.greedy)return s.replace(t,``);for(let e=t.length;e>=0;e--){let n=t.slice(e);if(s.test(n))return t.slice(0,e)}return t}async function vO(e,t,n,r,i){e.coverage?.hit(`bash:expansion:pattern_replacement`);let a=``,o=e.state.shoptOptions.extglob;if(n.pattern)for(let t of n.pattern.parts)if(t.type===`Glob`)a+=Y(t.pattern,!0,o);else if(t.type===`Literal`)a+=Y(t.value,!0,o);else if(t.type===`SingleQuoted`||t.type===`Escaped`)a+=HD(t.value);else if(t.type===`DoubleQuoted`){let n=await r(e,t.parts);a+=HD(n)}else if(t.type===`ParameterExpansion`){let n=await i(e,t);a+=Y(n,!0,o)}else{let n=await i(e,t);a+=HD(n)}let s=n.replacement?await r(e,n.replacement.parts):``;if(n.anchor===`start`?a=`^${a}`:n.anchor===`end`&&(a=`${a}$`),a===``)return t;let c=n.all?`gs`:`s`;try{let r=z(a,c);if(n.all){let n=``,i=0,a=0,o=e.limits.maxStringLength,c=r.exec(t);for(;c!==null&&!(c[0].length===0&&c.index===t.length);){if(n+=t.slice(i,c.index)+s,i=c.index+c[0].length,c[0].length===0&&i++,a++,a%100==0&&n.length>o)throw new k(`pattern replacement: string length limit exceeded (${o} bytes)`,`string_length`);c=r.exec(t)}return n+=t.slice(i),n}return r.replace(t,s)}catch(e){if(e instanceof k)throw e;return t}}function yO(e,t,n){e.coverage?.hit(`bash:expansion:length`);let r=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[[@*]\]$/);if(r){let t=r[1],n=J(e,t);return n.length>0?String(n.length):e.state.env.get(t)===void 0?`0`:`1`}if(/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(t)&&CD(e,t)){if(t===`FUNCNAME`){let t=e.state.funcNameStack?.[0]||``;return String([...t].length)}if(t===`BASH_LINENO`){let t=e.state.callLineStack?.[0];return String(t===void 0?0:[...String(t)].length)}let n=e.state.env.get(`${t}_0`)||``;return String([...n].length)}return String([...n].length)}async function bO(e,t,n,r){e.coverage?.hit(`bash:expansion:substring`);let i=await Z(e,r.offset.expression),a=r.length?await Z(e,r.length.expression):void 0;if(t===`@`||t===`*`){let t=Number.parseInt(e.state.env.get(`#`)||`0`,10),n=[];for(let r=1;r<=t;r++)n.push(e.state.env.get(String(r))||``);let r=e.state.env.get(`0`)||`bash`,o,s;if(i<=0)if(o=[r,...n],i<0){if(s=o.length+i,s<0)return``}else s=0;else o=n,s=i-1;if(s<0||s>=o.length)return``;if(a!==void 0){let e=a<0?o.length+a:s+a;return o.slice(s,Math.max(s,e)).join(` `)}return o.slice(s).join(` `)}let o=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[[@*]\]$/);if(o){let t=o[1];if(e.state.associativeArrays?.has(t))throw new Br(1,``,`bash: \${${t}[@]: 0: 3}: bad substitution
866
+ `);let n=J(e,t),r=0;if(i<0){if(n.length>0){let e=n[n.length-1][0],t=(typeof e==`number`?e:0)+1+i;if(t<0||(r=n.findIndex(([e])=>typeof e==`number`&&e>=t),r<0))return``}}else if(r=n.findIndex(([e])=>typeof e==`number`&&e>=i),r<0)return``;if(a!==void 0){if(a<0)throw new Vr(`${o[1]}[@]: substring expression < 0`);return n.slice(r,r+a).map(([,e])=>e).join(` `)}return n.slice(r).map(([,e])=>e).join(` `)}let s=[...n],c=i;if(c<0&&(c=Math.max(0,s.length+c)),a!==void 0){if(a<0){let e=s.length+a;return s.slice(c,Math.max(c,e)).join(``)}return s.slice(c,c+a).join(``)}return s.slice(c).join(``)}async function xO(e,t,n,r,i){if(e.coverage?.hit(`bash:expansion:case_modification`),n.pattern){let a=e.state.shoptOptions.extglob,o=``;for(let t of n.pattern.parts)if(t.type===`Glob`)o+=Y(t.pattern,!0,a);else if(t.type===`Literal`)o+=Y(t.value,!0,a);else if(t.type===`SingleQuoted`||t.type===`Escaped`)o+=HD(t.value);else if(t.type===`DoubleQuoted`){let n=await r(e,t.parts);o+=HD(n)}else if(t.type===`ParameterExpansion`){let n=await i(e,t);o+=Y(n,!0,a)}let s=z(`^(?:${o})$`),c=n.direction===`upper`?e=>e.toUpperCase():e=>e.toLowerCase(),l=``,u=!1;for(let e of t)!n.all&&u?l+=e:s.test(e)?(l+=c(e),u=!0):l+=e;return l}return n.direction===`upper`?n.all?t.toUpperCase():t.charAt(0).toUpperCase()+t.slice(1):n.all?t.toLowerCase():t.charAt(0).toLowerCase()+t.slice(1)}function SO(e,t,n,r,i){e.coverage?.hit(`bash:expansion:transform`);let a=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[[@*]\]$/);if(a&&i.operator===`Q`)return J(e,a[1]).map(([,e])=>rO(e)).join(` `);if(a&&i.operator===`a`)return dO(e,a[1]);let o=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[.+\]$/);if(o&&i.operator===`a`)return dO(e,o[1]);switch(i.operator){case`Q`:return r?``:rO(n);case`P`:return tO(e,n);case`a`:return dO(e,t);case`A`:return r?``:`${t}=${rO(n)}`;case`E`:return n.replace(/\\([\\abefnrtv'"?])/g,(e,t)=>{switch(t){case`\\`:return`\\`;case`a`:return`\x07`;case`b`:return`\b`;case`e`:return`\x1B`;case`f`:return`\f`;case`n`:return`
867
+ `;case`r`:return`\r`;case`t`:return` `;case`v`:return`\v`;case`'`:return`'`;case`"`:return`"`;case`?`:return`?`;default:return t}});case`K`:case`k`:return r?``:rO(n);case`u`:return n.charAt(0).toUpperCase()+n.slice(1);case`U`:return n.toUpperCase();case`L`:return n.toLowerCase();default:return n}}async function CO(e,t,n,r,i,a,o=!1){if(e.coverage?.hit(`bash:expansion:indirection`),dD(e,t))return yD(e,t)||``;let s=/^[a-zA-Z_][a-zA-Z0-9_]*\[([@*])\]$/.test(t);if(r){if(i.innerOp?.type===`UseAlternative`)return``;throw new Hr(`\${!${t}}`)}let c=n;if(s&&(c===``||c.includes(` `)))throw new Hr(`\${!${t}}`);let l=c.match(/^[a-zA-Z_][a-zA-Z0-9_]*\[(.+)\]$/);if(l&&l[1].includes(`~`))throw new Hr(`\${!${t}}`);return i.innerOp?a(e,{type:`ParameterExpansion`,parameter:c,operation:i.innerOp},o):await wD(e,c)}function wO(e,t){e.coverage?.hit(`bash:expansion:array_keys`);let n=J(e,t.array).map(([e])=>String(e));return t.star?n.join(q(e.state.env)):n.join(` `)}function TO(e,t){e.coverage?.hit(`bash:expansion:var_name_prefix`);let n=QD(e,t.prefix);return t.star?n.join(q(e.state.env)):n.join(` `)}function EO(e,t,n,r){let i=Number.parseInt(e.state.env.get(`#`)||`0`,10),a=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(t===`*`)return{isEmpty:i===0,effectiveValue:n};if(t===`@`)return{isEmpty:i===0||i===1&&e.state.env.get(`1`)===``,effectiveValue:n};if(a){let[,t,n]=a,i=J(e,t);if(i.length===0)return{isEmpty:!0,effectiveValue:``};if(n===`*`){let t=q(e.state.env),n=i.map(([,e])=>e).join(t);return{isEmpty:r?n===``:!1,effectiveValue:n}}return{isEmpty:i.length===1&&i.every(([,e])=>e===``),effectiveValue:i.map(([,e])=>e).join(` `)}}return{isEmpty:n===``,effectiveValue:n}}var DO=x(()=>{ET(),OE(),ks(),CA(),A(),uD(),xD(),UD(),XD(),$D(),nO(),iO(),ED(),fO()});function OO(e){let t=0;for(;t<e.length;){let n=e[t];if(n===`\\`&&t+1<e.length){t+=2;continue}if(n===`'`){let n=e.indexOf(`'`,t+1);if(n!==-1){t=n+1;continue}}if(n===`$`&&t+1<e.length&&e[t+1]===`(`||n==="`")return!0;t++}return!1}function kO(e,t){let n=1,r=t,i=!1,a=!1;for(;r<e.length&&n>0;){let t=e[r];if(t===`\\`&&!i&&r+1<e.length){r+=2;continue}if(t===`'`&&!a){i=!i,r++;continue}if(t===`"`&&!i){a=!a,r++;continue}if(!i&&!a){if(t===`(`)n++;else if(t===`)`&&(n--,n===0))return r}r++}return-1}async function AO(e,t){let n=new DE,r;try{r=n.parse(t)}catch{return``}let i=e.state.bashPid;e.state.bashPid=e.state.nextVirtualPid++;let a=new Map(e.state.env),o=e.state.cwd,s=e.state.suppressVerbose;e.state.suppressVerbose=!0;try{let t=await e.executeScript(r),n=t.exitCode;return e.state.env=a,e.state.cwd=o,e.state.suppressVerbose=s,e.state.lastExitCode=n,e.state.env.set(`?`,String(n)),t.stderr&&(e.state.expansionStderr=(e.state.expansionStderr||``)+t.stderr),e.state.bashPid=i,t.stdout.replace(/\n+$/,``)}catch(t){if(e.state.env=a,e.state.cwd=o,e.state.bashPid=i,e.state.suppressVerbose=s,t instanceof k)throw t;return t instanceof Br?(e.state.lastExitCode=t.exitCode,e.state.env.set(`?`,String(t.exitCode)),t.stdout?.replace(/\n+$/,``)??``):``}}function jO(e,t){let n=``,r=0;for(;r<t.length;){let i=t[r];if(i===`'`){let e=t.indexOf(`'`,r+1);if(e!==-1){let i=t.slice(r+1,e);n+=zD(i),r=e+1;continue}}if(i===`"`){let i=-1,a=r+1;for(;a<t.length;){if(t[a]===`\\`){a+=2;continue}if(t[a]===`"`){i=a;break}a++}if(i!==-1){let a=MO(e,t.slice(r+1,i));n+=zD(a),r=i+1;continue}}if(i===`$`&&r+1<t.length){let i=t[r+1];if(i===`{`){let i=t.indexOf(`}`,r+2);if(i!==-1){let a=t.slice(r+2,i);n+=e.state.env.get(a)??``,r=i+1;continue}}else if(/[a-zA-Z_]/.test(i)){let i=r+1;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)i++;let a=t.slice(r+1,i);n+=e.state.env.get(a)??``,r=i;continue}}if(i===`\\`&&r+1<t.length){n+=i+t[r+1],r+=2;continue}n+=i,r++}return n}function MO(e,t){let n=``,r=0;for(;r<t.length;){let i=t[r];if(i===`\\`&&r+1<t.length){let e=t[r+1];if(e===`$`||e==="`"||e===`\\`||e===`"`){n+=e,r+=2;continue}n+=i,r++;continue}if(i===`$`&&r+1<t.length){let i=t[r+1];if(i===`{`){let i=t.indexOf(`}`,r+2);if(i!==-1){let a=t.slice(r+2,i);n+=e.state.env.get(a)??``,r=i+1;continue}}else if(/[a-zA-Z_]/.test(i)){let i=r+1;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)i++;let a=t.slice(r+1,i);n+=e.state.env.get(a)??``,r=i;continue}}n+=i,r++}return n}async function NO(e,t){let n=``,r=0;for(;r<t.length;){let i=t[r];if(i===`'`){let e=t.indexOf(`'`,r+1);if(e!==-1){let i=t.slice(r+1,e);n+=zD(i),r=e+1;continue}}if(i===`"`){let i=-1,a=r+1;for(;a<t.length;){if(t[a]===`\\`){a+=2;continue}if(t[a]===`"`){i=a;break}a++}if(i!==-1){let a=await PO(e,t.slice(r+1,i));n+=zD(a),r=i+1;continue}}if(i===`$`&&r+1<t.length&&t[r+1]===`(`){let i=kO(t,r+2);if(i!==-1){let a=await AO(e,t.slice(r+2,i));n+=a,r=i+1;continue}}if(i==="`"){let i=t.indexOf("`",r+1);if(i!==-1){let a=await AO(e,t.slice(r+1,i));n+=a,r=i+1;continue}}if(i===`$`&&r+1<t.length){let i=t[r+1];if(i===`{`){let i=t.indexOf(`}`,r+2);if(i!==-1){let a=t.slice(r+2,i);n+=e.state.env.get(a)??``,r=i+1;continue}}else if(/[a-zA-Z_]/.test(i)){let i=r+1;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)i++;let a=t.slice(r+1,i);n+=e.state.env.get(a)??``,r=i;continue}}if(i===`\\`&&r+1<t.length){n+=i+t[r+1],r+=2;continue}n+=i,r++}return n}async function PO(e,t){let n=``,r=0;for(;r<t.length;){let i=t[r];if(i===`\\`&&r+1<t.length){let e=t[r+1];if(e===`$`||e==="`"||e===`\\`||e===`"`){n+=e,r+=2;continue}n+=i,r++;continue}if(i===`$`&&r+1<t.length&&t[r+1]===`(`){let i=kO(t,r+2);if(i!==-1){let a=await AO(e,t.slice(r+2,i));n+=a,r=i+1;continue}}if(i==="`"){let i=t.indexOf("`",r+1);if(i!==-1){let a=await AO(e,t.slice(r+1,i));n+=a,r=i+1;continue}}if(i===`$`&&r+1<t.length){let i=t[r+1];if(i===`{`){let i=t.indexOf(`}`,r+2);if(i!==-1){let a=t.slice(r+2,i);n+=e.state.env.get(a)??``,r=i+1;continue}}else if(/[a-zA-Z_]/.test(i)){let i=r+1;for(;i<t.length&&/[a-zA-Z0-9_]/.test(t[i]);)i++;let a=t.slice(r+1,i);n+=e.state.env.get(a)??``,r=i;continue}}n+=i,r++}return n}var FO=x(()=>{OE(),A(),VD()});function IO(e,t){if(!t.startsWith(`~`))return t;e.coverage?.hit(`bash:expansion:tilde`);let n=e.state.env.get(`HOME`)===void 0?`/home/user`:e.state.env.get(`HOME`);if(t===`~`||t.startsWith(`~/`))return n+t.slice(1);let r=1;for(;r<t.length&&/[a-zA-Z0-9_-]/.test(t[r]);)r++;let i=t.slice(1,r),a=t.slice(r);return a!==``&&!a.startsWith(`/`)?t:i===`root`?`/root${a}`:t}var LO=x(()=>{});async function RO(e,t,n,r){let i=``;for(let a of t.parts)if(a.type===`Glob`)i+=Y(a.pattern,!0,e.state.shoptOptions.extglob);else if(a.type===`Literal`)i+=Y(a.value,!0,e.state.shoptOptions.extglob);else if(a.type===`SingleQuoted`||a.type===`Escaped`)i+=HD(a.value);else if(a.type===`DoubleQuoted`){let t=await n(e,a.parts);i+=HD(t)}else if(a.type===`ParameterExpansion`){let t=await r(e,a);i+=Y(t,!0,e.state.shoptOptions.extglob)}else{let t=await r(e,a);i+=HD(t)}return i}async function zO(e,t,n,r){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let i=t[0];if(i.parts.length!==1||i.parts[0].type!==`ParameterExpansion`||i.parts[0].operation?.type!==`PatternReplacement`)return null;let a=i.parts[0],o=a.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!o)return null;let s=o[1],c=o[2]===`*`,l=a.operation,u=J(e,s),d=u.map(([,e])=>e);if(u.length===0){let t=e.state.env.get(s);t!==void 0&&d.push(t)}if(d.length===0)return{values:[],quoted:!0};let f=``;l.pattern&&(f=await RO(e,l.pattern,n,r));let p=l.replacement?await n(e,l.replacement.parts):``,m=f;l.anchor===`start`?m=`^${f}`:l.anchor===`end`&&(m=`${f}$`);let h=[];try{let e=z(m,l.all?`g`:``);for(let t of d)h.push(e.replace(t,p))}catch{h.push(...d)}if(c){let t=q(e.state.env);return{values:[h.join(t)],quoted:!0}}return{values:h,quoted:!0}}async function BO(e,t,n,r){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let i=t[0];if(i.parts.length!==1||i.parts[0].type!==`ParameterExpansion`||i.parts[0].operation?.type!==`PatternRemoval`)return null;let a=i.parts[0],o=a.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!o)return null;let s=o[1],c=o[2]===`*`,l=a.operation,u=J(e,s),d=u.map(([,e])=>e);if(u.length===0){let t=e.state.env.get(s);t!==void 0&&d.push(t)}if(d.length===0)return{values:[],quoted:!0};let f=``,p=e.state.shoptOptions.extglob;if(l.pattern)for(let t of l.pattern.parts)if(t.type===`Glob`)f+=Y(t.pattern,l.greedy,p);else if(t.type===`Literal`)f+=Y(t.value,l.greedy,p);else if(t.type===`SingleQuoted`||t.type===`Escaped`)f+=HD(t.value);else if(t.type===`DoubleQuoted`){let r=await n(e,t.parts);f+=HD(r)}else if(t.type===`ParameterExpansion`){let n=await r(e,t);f+=Y(n,l.greedy,p)}else{let n=await r(e,t);f+=HD(n)}let m=[];for(let e of d)m.push(ZD(e,f,l.side,l.greedy));if(c){let t=q(e.state.env);return{values:[m.join(t)],quoted:!0}}return{values:m,quoted:!0}}var VO=x(()=>{ks(),uD(),UD(),XD(),$D(),ED()});async function HO(e,t){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let n=t[0];if(n.parts.length!==1||n.parts[0].type!==`ParameterExpansion`||n.parts[0].operation?.type!==`DefaultValue`&&n.parts[0].operation?.type!==`UseAlternative`&&n.parts[0].operation?.type!==`AssignDefault`)return null;let r=n.parts[0],i=r.operation,a=r.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/),o,s=!1;if(a){let t=a[1];s=a[2]===`*`;let n=J(e,t),r=n.length>0||e.state.env.has(t),c=n.length===0||n.length===1&&n.every(([,e])=>e===``),l=i.checkEmpty??!1;if(o=i.type===`UseAlternative`?r&&!(l&&c):!r||l&&c,!o){if(n.length>0){let t=n.map(([,e])=>e);if(s){let n=q(e.state.env);return{values:[t.join(n)],quoted:!0}}return{values:t,quoted:!0}}let r=e.state.env.get(t);return r===void 0?{values:[],quoted:!0}:{values:[r],quoted:!0}}}else{let t=r.parameter,n=await TD(e,t),a=await wD(e,t),s=a===``,c=i.checkEmpty??!1;if(o=i.type===`UseAlternative`?n&&!(c&&s):!n||c&&s,!o)return{values:[a],quoted:!0}}if(o&&i.word){let t=i.word.parts,n=null,r=!1;for(let e of t)if(e.type===`ParameterExpansion`&&!e.operation){let t=e.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(t){n=t[1],r=t[2]===`*`;break}}if(n){let t=J(e,n);if(t.length>0){let n=t.map(([,e])=>e);if(r||s){let t=q(e.state.env);return{values:[n.join(t)],quoted:!0}}return{values:n,quoted:!0}}let i=e.state.env.get(n);return i===void 0?{values:[],quoted:!0}:{values:[i],quoted:!0}}}return null}async function UO(e,t,n,r,i){if(!n||t.length!==1||t[0].type!==`DoubleQuoted`)return null;let a=t[0],o=-1,s=``,c=!1,l=null;for(let e=0;e<a.parts.length;e++){let t=a.parts[e];if(t.type===`ParameterExpansion`&&(t.operation?.type===`PatternRemoval`||t.operation?.type===`PatternReplacement`)){let n=t.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(n){o=e,s=n[1],c=n[2]===`*`,l=t.operation;break}}}if(o===-1||o===0&&o===a.parts.length-1)return null;let u=``;for(let t=0;t<o;t++)u+=await r(e,a.parts[t]);let d=``;for(let t=o+1;t<a.parts.length;t++)d+=await r(e,a.parts[t]);let f=J(e,s),p=f.map(([,e])=>e);if(f.length===0){let t=e.state.env.get(s);if(t!==void 0)p=[t];else{if(c)return{values:[u+d],quoted:!0};let e=u+d;return{values:e?[e]:[],quoted:!0}}}if(l?.type===`PatternRemoval`){let t=l,n=``,a=e.state.shoptOptions.extglob;if(t.pattern)for(let o of t.pattern.parts)if(o.type===`Glob`)n+=Y(o.pattern,t.greedy,a);else if(o.type===`Literal`)n+=Y(o.value,t.greedy,a);else if(o.type===`SingleQuoted`||o.type===`Escaped`)n+=HD(o.value);else if(o.type===`DoubleQuoted`){let t=await i(e,o.parts);n+=HD(t)}else if(o.type===`ParameterExpansion`){let i=await r(e,o);n+=Y(i,t.greedy,a)}else{let t=await r(e,o);n+=HD(t)}p=p.map(e=>ZD(e,n,t.side,t.greedy))}else if(l?.type===`PatternReplacement`){let t=l,n=``;if(t.pattern)for(let a of t.pattern.parts)if(a.type===`Glob`)n+=Y(a.pattern,!0,e.state.shoptOptions.extglob);else if(a.type===`Literal`)n+=Y(a.value,!0,e.state.shoptOptions.extglob);else if(a.type===`SingleQuoted`||a.type===`Escaped`)n+=HD(a.value);else if(a.type===`DoubleQuoted`){let t=await i(e,a.parts);n+=HD(t)}else if(a.type===`ParameterExpansion`){let t=await r(e,a);n+=Y(t,!0,e.state.shoptOptions.extglob)}else{let t=await r(e,a);n+=HD(t)}let a=t.replacement?await i(e,t.replacement.parts):``,o=n;t.anchor===`start`?o=`^${n}`:t.anchor===`end`&&(o=`${n}$`);try{let e=z(o,t.all?`g`:``);p=p.map(t=>e.replace(t,a))}catch{}}if(c){let t=q(e.state.env);return{values:[u+p.join(t)+d],quoted:!0}}return p.length===1?{values:[u+p[0]+d],quoted:!0}:{values:[u+p[0],...p.slice(1,-1),p[p.length-1]+d],quoted:!0}}async function WO(e,t,n,r){if(!n||t.length!==1||t[0].type!==`DoubleQuoted`)return null;let i=t[0],a=-1,o=``,s=!1;for(let e=0;e<i.parts.length;e++){let t=i.parts[e];if(t.type===`ParameterExpansion`&&!t.operation){let n=t.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(n){a=e,o=n[1],s=n[2]===`*`;break}}}if(a===-1)return null;let c=``;for(let t=0;t<a;t++)c+=await r(e,i.parts[t]);let l=``;for(let t=a+1;t<i.parts.length;t++)l+=await r(e,i.parts[t]);let u=J(e,o),d=u.map(([,e])=>e);if(u.length===0){let t=e.state.env.get(o);if(t!==void 0)return{values:[c+t+l],quoted:!0};if(s)return{values:[c+l],quoted:!0};let n=c+l;return{values:n?[n]:[],quoted:!0}}if(s){let t=q(e.state.env);return{values:[c+d.join(t)+l],quoted:!0}}return d.length===1?{values:[c+d[0]+l],quoted:!0}:{values:[c+d[0],...d.slice(1,-1),d[d.length-1]+l],quoted:!0}}var GO=x(()=>{ks(),uD(),UD(),XD(),$D(),ED()});async function KO(e,t,n){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let r=t[0];if(r.parts.length!==1||r.parts[0].type!==`ParameterExpansion`||r.parts[0].operation?.type!==`Substring`)return null;let i=r.parts[0],a=i.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!a)return null;let o=a[1],s=a[2]===`*`,c=i.operation;if(e.state.associativeArrays?.has(o))throw new Br(1,``,`bash: \${${o}[@]: 0: 3}: bad substitution
868
+ `);let l=c.offset?await n(e,c.offset.expression):0,u=c.length?await n(e,c.length.expression):void 0,d=J(e,o),f=0;if(l<0){if(d.length>0){let e=d[d.length-1][0],t=(typeof e==`number`?e:0)+1+l;if(t<0)return{values:[],quoted:!0};f=d.findIndex(([e])=>typeof e==`number`&&e>=t),f<0&&(f=d.length)}}else f=d.findIndex(([e])=>typeof e==`number`&&e>=l),f<0&&(f=d.length);let p;if(u!==void 0){if(u<0)throw new Vr(`${o}[@]: substring expression < 0`);p=d.slice(f,f+u).map(([,e])=>e)}else p=d.slice(f).map(([,e])=>e);if(p.length===0)return{values:[],quoted:!0};if(s){let t=q(e.state.env);return{values:[p.join(t)],quoted:!0}}return{values:p,quoted:!0}}function qO(e,t){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let n=t[0];if(n.parts.length!==1||n.parts[0].type!==`ParameterExpansion`||n.parts[0].operation?.type!==`Transform`)return null;let r=n.parts[0],i=r.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!i)return null;let a=i[1],o=i[2]===`*`,s=r.operation,c=J(e,a);if(c.length===0){let t=e.state.env.get(a);if(t!==void 0){let n;switch(s.operator){case`a`:n=``;break;case`P`:n=tO(e,t);break;case`Q`:n=rO(t);break;default:n=t}return{values:[n],quoted:!0}}return o?{values:[``],quoted:!0}:{values:[],quoted:!0}}let l=dO(e,a),u;switch(s.operator){case`a`:u=c.map(()=>l);break;case`P`:u=c.map(([,t])=>tO(e,t));break;case`Q`:u=c.map(([,e])=>rO(e));break;case`u`:u=c.map(([,e])=>e.charAt(0).toUpperCase()+e.slice(1));break;case`U`:u=c.map(([,e])=>e.toUpperCase());break;case`L`:u=c.map(([,e])=>e.toLowerCase());break;default:u=c.map(([,e])=>e)}if(o){let t=q(e.state.env);return{values:[u.join(t)],quoted:!0}}return{values:u,quoted:!0}}var JO=x(()=>{A(),uD(),nO(),iO(),ED(),fO()});function YO(e,t){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let n=t[0];if(n.parts.length!==1||n.parts[0].type!==`ParameterExpansion`)return null;let r=n.parts[0];if(r.operation)return null;let i=r.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(@)\]$/);if(!i)return null;let a=i[1];if(dD(e,a)){let t=yD(e,a);if(t?.endsWith(`[@]`)||t?.endsWith(`[*]`))return{values:[],quoted:!0}}let o=J(e,a);if(o.length>0)return{values:o.map(([,e])=>e),quoted:!0};let s=e.state.env.get(a);return s===void 0?{values:[],quoted:!0}:{values:[s],quoted:!0}}function XO(e,t){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let n=t[0];if(n.parts.length!==1||n.parts[0].type!==`ParameterExpansion`||n.parts[0].operation)return null;let r=n.parts[0].parameter;if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)||!dD(e,r))return null;let i=yD(e,r);if(!i)return null;let a=i.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(@)\]$/);if(!a)return null;let o=a[1],s=J(e,o);if(s.length>0)return{values:s.map(([,e])=>e),quoted:!0};let c=e.state.env.get(o);return c===void 0?{values:[],quoted:!0}:{values:[c],quoted:!0}}var ZO=x(()=>{xD(),ED()});async function QO(e,t,n,r,i){if(!n||t.length!==1||t[0].type!==`DoubleQuoted`)return null;let a=t[0];if(a.parts.length!==1||a.parts[0].type!==`ParameterExpansion`||a.parts[0].operation?.type!==`Indirection`)return null;let o=a.parts[0],s=o.operation,c=await wD(e,o.parameter),l=c.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!l){if(!s.innerOp&&(c===`@`||c===`*`)){let t=Number.parseInt(e.state.env.get(`#`)||`0`,10),n=[];for(let r=1;r<=t;r++)n.push(e.state.env.get(String(r))||``);return c===`*`?{values:[n.join(q(e.state.env))],quoted:!0}:{values:n,quoted:!0}}return null}let u=l[1],d=l[2]===`*`,f=J(e,u);if(s.innerOp){if(s.innerOp.type===`Substring`)return $O(e,f,u,d,s.innerOp);if(s.innerOp.type===`DefaultValue`||s.innerOp.type===`UseAlternative`||s.innerOp.type===`AssignDefault`||s.innerOp.type===`ErrorIfUnset`)return ek(e,f,u,d,s.innerOp,i);if(s.innerOp.type===`Transform`&&s.innerOp.operator===`a`){let t=dO(e,u),n=f.map(()=>t);return d?{values:[n.join(q(e.state.env))],quoted:!0}:{values:n,quoted:!0}}let t=[];for(let[,n]of f){let i={type:`ParameterExpansion`,parameter:`_indirect_elem_`,operation:s.innerOp},a=e.state.env.get(`_indirect_elem_`);e.state.env.set(`_indirect_elem_`,n);try{let n=await r(e,i,!0);t.push(n)}finally{a===void 0?e.state.env.delete(`_indirect_elem_`):e.state.env.set(`_indirect_elem_`,a)}}return d?{values:[t.join(q(e.state.env))],quoted:!0}:{values:t,quoted:!0}}if(f.length>0){let t=f.map(([,e])=>e);return d?{values:[t.join(q(e.state.env))],quoted:!0}:{values:t,quoted:!0}}let p=e.state.env.get(u);return p===void 0?{values:[],quoted:!0}:{values:[p],quoted:!0}}async function $O(e,t,n,r,i){let a=i.offset?await Z(e,i.offset.expression):0,o=i.length?await Z(e,i.length.expression):void 0,s=0;if(a<0){if(t.length>0){let e=t[t.length-1][0],n=(typeof e==`number`?e:0)+1+a;if(n<0||(s=t.findIndex(([e])=>typeof e==`number`&&e>=n),s<0))return{values:[],quoted:!0}}}else if(s=t.findIndex(([e])=>typeof e==`number`&&e>=a),s<0)return{values:[],quoted:!0};let c;if(o!==void 0){if(o<0)throw new Vr(`${n}[@]: substring expression < 0`);c=t.slice(s,s+o)}else c=t.slice(s);let l=c.map(([,e])=>e);return r?{values:[l.join(q(e.state.env))],quoted:!0}:{values:l,quoted:!0}}async function ek(e,t,n,r,i,a){let o=i.checkEmpty??!1,s=t.map(([,e])=>e),c=t.length===0,l=t.length===0;if(i.type===`UseAlternative`)return!l&&!(o&&c)&&i.word?{values:[await a(e,i.word.parts,!0)],quoted:!0}:{values:[],quoted:!0};if(i.type===`DefaultValue`)return(l||o&&c)&&i.word?{values:[await a(e,i.word.parts,!0)],quoted:!0}:r?{values:[s.join(q(e.state.env))],quoted:!0}:{values:s,quoted:!0};if(i.type===`AssignDefault`){if((l||o&&c)&&i.word){let t=await a(e,i.word.parts,!0);return e.state.env.set(`${n}_0`,t),e.state.env.set(`${n}__length`,`1`),{values:[t],quoted:!0}}return r?{values:[s.join(q(e.state.env))],quoted:!0}:{values:s,quoted:!0}}return r?{values:[s.join(q(e.state.env))],quoted:!0}:{values:s,quoted:!0}}async function tk(e,t){if(t.length!==1||t[0].type!==`ParameterExpansion`||t[0].operation?.type!==`UseAlternative`&&t[0].operation?.type!==`DefaultValue`)return null;let n=t[0],r=n.operation,i=r?.word;if(!i||i.parts.length!==1||i.parts[0].type!==`DoubleQuoted`)return null;let a=i.parts[0];if(a.parts.length!==1||a.parts[0].type!==`ParameterExpansion`||a.parts[0].operation?.type!==`Indirection`)return null;let o=a.parts[0],s=(await wD(e,o.parameter)).match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!s)return null;let c=await TD(e,n.parameter),l=await wD(e,n.parameter)===``,u=r.checkEmpty??!1,d;if(d=r.type===`UseAlternative`?c&&!(u&&l):!c||u&&l,d){let t=s[1],n=s[2]===`*`,r=J(e,t);if(r.length>0){let t=r.map(([,e])=>e);return n?{values:[t.join(q(e.state.env))],quoted:!0}:{values:t,quoted:!0}}let i=e.state.env.get(t);return i===void 0?{values:[],quoted:!0}:{values:[i],quoted:!0}}return{values:[],quoted:!1}}async function nk(e,t){if(t.length!==1||t[0].type!==`ParameterExpansion`||t[0].operation?.type!==`Indirection`)return null;let n=t[0],r=n.operation.innerOp;if(!r||r.type!==`UseAlternative`&&r.type!==`DefaultValue`)return null;let i=r.word;if(!i||i.parts.length!==1||i.parts[0].type!==`DoubleQuoted`)return null;let a=i.parts[0];if(a.parts.length!==1||a.parts[0].type!==`ParameterExpansion`||a.parts[0].operation?.type!==`Indirection`)return null;let o=a.parts[0],s=(await wD(e,o.parameter)).match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!s)return null;let c=await wD(e,n.parameter),l=await TD(e,n.parameter),u=c===``,d=r.checkEmpty??!1,f;if(f=r.type===`UseAlternative`?l&&!(d&&u):!l||d&&u,f){let t=s[1],n=s[2]===`*`,r=J(e,t);if(r.length>0){let t=r.map(([,e])=>e);return n?{values:[t.join(q(e.state.env))],quoted:!0}:{values:t,quoted:!0}}let i=e.state.env.get(t);return i===void 0?{values:[],quoted:!0}:{values:[i],quoted:!0}}return{values:[],quoted:!1}}var rk=x(()=>{CA(),A(),uD(),ED(),fO()});function ik(e){let t=Number.parseInt(e.state.env.get(`#`)||`0`,10),n=[];for(let r=1;r<=t;r++)n.push(e.state.env.get(String(r))||``);return n}async function ak(e,t,n,r){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let i=t[0],a=-1,o=!1;for(let e=0;e<i.parts.length;e++){let t=i.parts[e];if(t.type===`ParameterExpansion`&&(t.parameter===`@`||t.parameter===`*`)&&t.operation?.type===`Substring`){a=e,o=t.parameter===`*`;break}}if(a===-1)return null;let s=i.parts[a].operation,c=s.offset?await n(e,s.offset.expression):0,l=s.length?await n(e,s.length.expression):void 0,u=Number.parseInt(e.state.env.get(`#`)||`0`,10),d=[];for(let t=1;t<=u;t++)d.push(e.state.env.get(String(t))||``);let f=e.state.env.get(`0`)||`bash`,p;if(c<=0){let e=[f,...d],t=e.length+c;if(t<0)p=[];else{let n=c<0?t:0;if(l!==void 0){let t=l<0?e.length+l:n+l;p=e.slice(n,Math.max(n,t))}else p=e.slice(n)}}else{let e=c-1;if(e>=d.length)p=[];else if(l!==void 0){let t=l<0?d.length+l:e+l;p=d.slice(e,Math.max(e,t))}else p=d.slice(e)}let m=``;for(let t=0;t<a;t++)m+=await r(e,i.parts[t]);let h=``;for(let t=a+1;t<i.parts.length;t++)h+=await r(e,i.parts[t]);if(p.length===0){let e=m+h;return{values:e?[e]:[],quoted:!0}}if(o){let t=q(e.state.env);return{values:[m+p.join(t)+h],quoted:!0}}return p.length===1?{values:[m+p[0]+h],quoted:!0}:{values:[m+p[0],...p.slice(1,-1),p[p.length-1]+h],quoted:!0}}async function ok(e,t,n,r){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let i=t[0],a=-1,o=!1;for(let e=0;e<i.parts.length;e++){let t=i.parts[e];if(t.type===`ParameterExpansion`&&(t.parameter===`@`||t.parameter===`*`)&&t.operation?.type===`PatternReplacement`){a=e,o=t.parameter===`*`;break}}if(a===-1)return null;let s=i.parts[a].operation,c=ik(e),l=``;for(let t=0;t<a;t++)l+=await n(e,i.parts[t]);let u=``;for(let t=a+1;t<i.parts.length;t++)u+=await n(e,i.parts[t]);if(c.length===0){let e=l+u;return{values:e?[e]:[],quoted:!0}}let d=``;if(s.pattern)for(let t of s.pattern.parts)if(t.type===`Glob`)d+=Y(t.pattern,!0,e.state.shoptOptions.extglob);else if(t.type===`Literal`)d+=Y(t.value,!0,e.state.shoptOptions.extglob);else if(t.type===`SingleQuoted`||t.type===`Escaped`)d+=HD(t.value);else if(t.type===`DoubleQuoted`){let n=await r(e,t.parts);d+=HD(n)}else if(t.type===`ParameterExpansion`){let r=await n(e,t);d+=Y(r,!0,e.state.shoptOptions.extglob)}else{let r=await n(e,t);d+=HD(r)}let f=s.replacement?await r(e,s.replacement.parts):``,p=d;s.anchor===`start`?p=`^${d}`:s.anchor===`end`&&(p=`${d}$`);let m=[];try{let e=z(p,s.all?`g`:``);for(let t of c)m.push(e.replace(t,f))}catch{m.push(...c)}if(o){let t=q(e.state.env);return{values:[l+m.join(t)+u],quoted:!0}}return m.length===1?{values:[l+m[0]+u],quoted:!0}:{values:[l+m[0],...m.slice(1,-1),m[m.length-1]+u],quoted:!0}}async function sk(e,t,n,r){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let i=t[0],a=-1,o=!1;for(let e=0;e<i.parts.length;e++){let t=i.parts[e];if(t.type===`ParameterExpansion`&&(t.parameter===`@`||t.parameter===`*`)&&t.operation?.type===`PatternRemoval`){a=e,o=t.parameter===`*`;break}}if(a===-1)return null;let s=i.parts[a].operation,c=ik(e),l=``;for(let t=0;t<a;t++)l+=await n(e,i.parts[t]);let u=``;for(let t=a+1;t<i.parts.length;t++)u+=await n(e,i.parts[t]);if(c.length===0){let e=l+u;return{values:e?[e]:[],quoted:!0}}let d=``,f=e.state.shoptOptions.extglob;if(s.pattern)for(let t of s.pattern.parts)if(t.type===`Glob`)d+=Y(t.pattern,s.greedy,f);else if(t.type===`Literal`)d+=Y(t.value,s.greedy,f);else if(t.type===`SingleQuoted`||t.type===`Escaped`)d+=HD(t.value);else if(t.type===`DoubleQuoted`){let n=await r(e,t.parts);d+=HD(n)}else if(t.type===`ParameterExpansion`){let r=await n(e,t);d+=Y(r,s.greedy,f)}else{let r=await n(e,t);d+=HD(r)}let p=[];for(let e of c)p.push(ZD(e,d,s.side,s.greedy));if(o){let t=q(e.state.env);return{values:[l+p.join(t)+u],quoted:!0}}return p.length===1?{values:[l+p[0]+u],quoted:!0}:{values:[l+p[0],...p.slice(1,-1),p[p.length-1]+u],quoted:!0}}async function ck(e,t,n){if(t.length!==1||t[0].type!==`DoubleQuoted`)return null;let r=t[0],i=-1,a=!1;for(let e=0;e<r.parts.length;e++){let t=r.parts[e];if(t.type===`ParameterExpansion`&&(t.parameter===`@`||t.parameter===`*`)){i=e,a=t.parameter===`*`;break}}if(i===-1)return null;let o=r.parts[i];if(o.type===`ParameterExpansion`&&o.operation)return null;let s=Number.parseInt(e.state.env.get(`#`)||`0`,10),c=``;for(let t=0;t<i;t++)c+=await n(e,r.parts[t]);let l=``;for(let t=i+1;t<r.parts.length;t++)l+=await n(e,r.parts[t]);if(s===0){if(a)return{values:[c+l],quoted:!0};let e=c+l;return{values:e?[e]:[],quoted:!0}}let u=[];for(let t=1;t<=s;t++)u.push(e.state.env.get(String(t))||``);if(a){let t=q(e.state.env);return{values:[c+u.join(t)+l],quoted:!0}}return u.length===1?{values:[c+u[0]+l],quoted:!0}:{values:[c+u[0],...u.slice(1,-1),u[u.length-1]+l],quoted:!0}}var lk=x(()=>{ks(),uD(),UD(),XD(),$D()});function uk(e){return new LE(e.fs,e.state.cwd,e.state.env,{globstar:e.state.shoptOptions.globstar,nullglob:e.state.shoptOptions.nullglob,failglob:e.state.shoptOptions.failglob,dotglob:e.state.shoptOptions.dotglob,extglob:e.state.shoptOptions.extglob,globskipdots:e.state.shoptOptions.globskipdots,maxGlobOperations:e.limits.maxGlobOperations})}async function dk(e,t){if(e.state.options.noglob)return t;let n=uk(e),r=[];for(let i of t)if(LD(i,e.state.shoptOptions.extglob)){let e=await n.expand(i);if(e.length>0)r.push(...e);else{if(n.hasFailglob())throw new Ur(i);n.hasNullglob()||r.push(i)}}else r.push(i);return r}async function fk(e,t,n,r){let i=-1,a=``,o=!1;for(let e=0;e<t.length;e++){let n=t[e];if(n.type===`ParameterExpansion`&&n.operation?.type===`PatternReplacement`){let t=n.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(t){i=e,a=t[1],o=t[2]===`*`;break}}}if(i===-1)return null;let s=t[i].operation,c=J(e,a),l=c.map(([,e])=>e);if(c.length===0){let t=e.state.env.get(a);t!==void 0&&(l=[t])}if(l.length===0)return{values:[],quoted:!1};let u=``;if(s.pattern)for(let t of s.pattern.parts)if(t.type===`Glob`)u+=Y(t.pattern,!0,e.state.shoptOptions.extglob);else if(t.type===`Literal`)u+=Y(t.value,!0,e.state.shoptOptions.extglob);else if(t.type===`SingleQuoted`||t.type===`Escaped`)u+=HD(t.value);else if(t.type===`DoubleQuoted`){let r=await n(e,t.parts);u+=HD(r)}else if(t.type===`ParameterExpansion`){let n=await r(e,t);u+=Y(n,!0,e.state.shoptOptions.extglob)}else{let n=await r(e,t);u+=HD(n)}let d=s.replacement?await n(e,s.replacement.parts):``,f=u;s.anchor===`start`?f=`^${u}`:s.anchor===`end`&&(f=`${u}$`);let p=[];try{let e=z(f,s.all?`g`:``);for(let t of l)p.push(e.replace(t,d))}catch{p.push(...l)}let m=QE(e.state.env),h=$E(e.state.env);if(o){let t=q(e.state.env),n=p.join(t);return h?{values:n?[n]:[],quoted:!1}:{values:oD(n,m),quoted:!1}}if(h)return{values:p,quoted:!1};let g=[];for(let e of p)e===``?g.push(``):g.push(...oD(e,m));return{values:g,quoted:!1}}async function pk(e,t,n,r){let i=-1,a=``,o=!1;for(let e=0;e<t.length;e++){let n=t[e];if(n.type===`ParameterExpansion`&&n.operation?.type===`PatternRemoval`){let t=n.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(t){i=e,a=t[1],o=t[2]===`*`;break}}}if(i===-1)return null;let s=t[i].operation,c=J(e,a),l=c.map(([,e])=>e);if(c.length===0){let t=e.state.env.get(a);t!==void 0&&(l=[t])}if(l.length===0)return{values:[],quoted:!1};let u=``,d=e.state.shoptOptions.extglob;if(s.pattern)for(let t of s.pattern.parts)if(t.type===`Glob`)u+=Y(t.pattern,s.greedy,d);else if(t.type===`Literal`)u+=Y(t.value,s.greedy,d);else if(t.type===`SingleQuoted`||t.type===`Escaped`)u+=HD(t.value);else if(t.type===`DoubleQuoted`){let r=await n(e,t.parts);u+=HD(r)}else if(t.type===`ParameterExpansion`){let n=await r(e,t);u+=Y(n,s.greedy,d)}else{let n=await r(e,t);u+=HD(n)}let f=[];for(let e of l)f.push(ZD(e,u,s.side,s.greedy));let p=QE(e.state.env),m=$E(e.state.env);if(o){let t=q(e.state.env),n=f.join(t);return m?{values:n?[n]:[],quoted:!1}:{values:oD(n,p),quoted:!1}}if(m)return{values:f,quoted:!1};let h=[];for(let e of f)e===``?h.push(``):h.push(...oD(e,p));return{values:h,quoted:!1}}async function mk(e,t,n,r){let i=-1,a=!1;for(let e=0;e<t.length;e++){let n=t[e];if(n.type===`ParameterExpansion`&&(n.parameter===`@`||n.parameter===`*`)&&n.operation?.type===`PatternRemoval`){i=e,a=n.parameter===`*`;break}}if(i===-1)return null;let o=t[i].operation,s=Number.parseInt(e.state.env.get(`#`)||`0`,10),c=[];for(let t=1;t<=s;t++)c.push(e.state.env.get(String(t))||``);if(c.length===0)return{values:[],quoted:!1};let l=``,u=e.state.shoptOptions.extglob;if(o.pattern)for(let t of o.pattern.parts)if(t.type===`Glob`)l+=Y(t.pattern,o.greedy,u);else if(t.type===`Literal`)l+=Y(t.value,o.greedy,u);else if(t.type===`SingleQuoted`||t.type===`Escaped`)l+=HD(t.value);else if(t.type===`DoubleQuoted`){let r=await n(e,t.parts);l+=HD(r)}else if(t.type===`ParameterExpansion`){let n=await r(e,t);l+=Y(n,o.greedy,u)}else{let n=await r(e,t);l+=HD(n)}let d=[];for(let e of c)d.push(ZD(e,l,o.side,o.greedy));let f=QE(e.state.env),p=$E(e.state.env);if(a){let t=q(e.state.env),n=d.join(t);return p?{values:n?[n]:[],quoted:!1}:{values:oD(n,f),quoted:!1}}if(p)return{values:d,quoted:!1};let m=[];for(let e of d)e===``?m.push(``):m.push(...oD(e,f));return{values:m,quoted:!1}}async function hk(e,t,n,r){let i=-1,a=!1;for(let e=0;e<t.length;e++){let n=t[e];if(n.type===`ParameterExpansion`&&(n.parameter===`@`||n.parameter===`*`)&&n.operation?.type===`Substring`){i=e,a=n.parameter===`*`;break}}if(i===-1)return null;let o=t[i].operation,s=o.offset?await n(e,o.offset.expression):0,c=o.length?await n(e,o.length.expression):void 0,l=Number.parseInt(e.state.env.get(`#`)||`0`,10),u=[];for(let t=1;t<=l;t++)u.push(e.state.env.get(String(t))||``);let d=e.state.env.get(`0`)||`bash`,f;if(s<=0){let e=[d,...u],t=e.length+s;if(t<0)f=[];else{let n=s<0?t:0;if(c!==void 0){let t=c<0?e.length+c:n+c;f=e.slice(n,Math.max(n,t))}else f=e.slice(n)}}else{let e=s-1;if(e>=u.length)f=[];else if(c!==void 0){let t=c<0?u.length+c:e+c;f=u.slice(e,Math.max(e,t))}else f=u.slice(e)}let p=``;for(let n=0;n<i;n++)p+=await r(e,t[n]);let m=``;for(let n=i+1;n<t.length;n++)m+=await r(e,t[n]);let h=QE(e.state.env),g=$E(e.state.env);if(f.length===0){let e=p+m;return e?g?{values:[e],quoted:!1}:{values:oD(e,h),quoted:!1}:{values:[],quoted:!1}}let _;if(a){let t=q(e.state.env),n=p+f.join(t)+m;_=g?n?[n]:[]:oD(n,h)}else if(g)_=f.length===1?[p+f[0]+m]:[p+f[0],...f.slice(1,-1),f[f.length-1]+m];else{_=[];for(let e=0;e<f.length;e++){let t=f[e];if(e===0&&(t=p+t),e===f.length-1&&(t+=m),t===``)_.push(``);else{let e=oD(t,h);_.push(...e)}}}return{values:await dk(e,_),quoted:!1}}async function gk(e,t){if(t.length!==1||t[0].type!==`ParameterExpansion`||t[0].parameter!==`@`&&t[0].parameter!==`*`||t[0].operation)return null;let n=t[0].parameter===`*`,r=Number.parseInt(e.state.env.get(`#`)||`0`,10);if(r===0)return{values:[],quoted:!1};let i=[];for(let t=1;t<=r;t++)i.push(e.state.env.get(String(t))||``);let a=QE(e.state.env),o=$E(e.state.env),s=eD(e.state.env),c;if(n)if(o)c=i.filter(e=>e!==``);else{let t=q(e.state.env);c=oD(i.join(t),a)}else if(o)c=i.filter(e=>e!==``);else if(s){c=[];for(let e of i){if(e===``)continue;let t=oD(e,a);c.push(...t)}}else{c=[];for(let e of i)if(e===``)c.push(``);else{let t=oD(e,a);c.push(...t)}for(;c.length>0&&c[c.length-1]===``;)c.pop()}return{values:await dk(e,c),quoted:!1}}async function _k(e,t){if(t.length!==1||t[0].type!==`ParameterExpansion`||t[0].operation)return null;let n=t[0].parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(!n)return null;let r=n[1],i=n[2]===`*`,a=J(e,r),o;if(a.length===0){let t=e.state.env.get(r);if(t!==void 0)o=[t];else return{values:[],quoted:!1}}else o=a.map(([,e])=>e);let s=QE(e.state.env),c=$E(e.state.env),l=eD(e.state.env),u;if(i)if(c)u=o.filter(e=>e!==``);else{let t=q(e.state.env);u=oD(o.join(t),s)}else if(c)u=o.filter(e=>e!==``);else if(l){u=[];for(let e of o){if(e===``)continue;let t=oD(e,s);u.push(...t)}}else{u=[];for(let e of o)if(e===``)u.push(``);else{let t=oD(e,s);u.push(...t)}for(;u.length>0&&u[u.length-1]===``;)u.pop()}return{values:await dk(e,u),quoted:!1}}function vk(e,t){if(t.length!==1||t[0].type!==`ParameterExpansion`||t[0].operation?.type!==`VarNamePrefix`)return null;let n=t[0].operation,r=QD(e,n.prefix);if(r.length===0)return{values:[],quoted:!1};let i=QE(e.state.env),a=$E(e.state.env),o;if(n.star)if(a)o=r;else{let t=q(e.state.env);o=oD(r.join(t),i)}else if(a)o=r;else{o=[];for(let e of r){let t=oD(e,i);o.push(...t)}}return{values:o,quoted:!1}}function yk(e,t){if(t.length!==1||t[0].type!==`ParameterExpansion`||t[0].operation?.type!==`ArrayKeys`)return null;let n=t[0].operation,r=J(e,n.array).map(([e])=>String(e));if(r.length===0)return{values:[],quoted:!1};let i=QE(e.state.env),a=$E(e.state.env),o;if(n.star)if(a)o=r;else{let t=q(e.state.env);o=oD(r.join(t),i)}else if(a)o=r;else{o=[];for(let e of r){let t=oD(e,i);o.push(...t)}}return{values:o,quoted:!1}}async function bk(e,t,n){let r=-1;for(let e=0;e<t.length;e++){let n=t[e];if(n.type===`ParameterExpansion`&&(n.parameter===`@`||n.parameter===`*`)&&!n.operation){r=e;break}}if(r===-1||t.length<=1)return null;let i=Number.parseInt(e.state.env.get(`#`)||`0`,10),a=[];for(let t=1;t<=i;t++)a.push(e.state.env.get(String(t))||``);let o=``;for(let i=0;i<r;i++)o+=await n(e,t[i]);let s=``;for(let i=r+1;i<t.length;i++)s+=await n(e,t[i]);let c=QE(e.state.env),l=$E(e.state.env),u=eD(e.state.env);if(i===0){let e=o+s;return{values:e?[e]:[],quoted:!1}}let d;{let e=[];for(let t=0;t<a.length;t++){let n=a[t];t===0&&(n=o+n),t===a.length-1&&(n+=s),e.push(n)}if(l)d=e.filter(e=>e!==``);else if(u){d=[];for(let t of e){if(t===``)continue;let e=oD(t,c);d.push(...e)}}else{d=[];for(let t of e)if(t===``)d.push(``);else{let e=oD(t,c);d.push(...e)}for(;d.length>0&&d[d.length-1]===``;)d.pop()}}return d.length===0?{values:[],quoted:!1}:{values:await dk(e,d),quoted:!1}}var xk=x(()=>{ks(),RE(),A(),uD(),UD(),VD(),XD(),$D(),ED()});async function Sk(e,t,n){e.coverage?.hit(`bash:expansion:word_glob`);let r=t.parts,{hasQuoted:i,hasCommandSub:a,hasArrayVar:o,hasArrayAtExpansion:s,hasParamExpansion:c,hasVarNamePrefixExpansion:l,hasIndirection:u}=HE(r),d=n.hasBraceExpansion(r)?await n.expandWordWithBracesAsync(e,t):null;if(d&&d.length>1)return Ck(e,d,i);let f=await wk(e,r,s,l,u,n);if(f!==null)return f;let p=await Ek(e,r,n);if(p!==null)return p;let m=await Dk(e,r,n);if(m!==null)return m;let h=await Ak(e,r,n.expandPart);if(h!==null)return jk(e,h);if((a||o||c)&&!$E(e.state.env)){let t=QE(e.state.env),i=n.buildIfsCharClassPattern(t);return jk(e,await n.smartWordSplit(e,r,t,i,n.expandPart))}return Nk(e,t,r,await n.expandWordAsync(e,t),i,n.expandWordForGlobbing)}async function Ck(e,t,n){let r=[];for(let i of t)if(!(!n&&i===``))if(!n&&!e.state.options.noglob&&LD(i,e.state.shoptOptions.extglob)){let t=await Mk(e,i);r.push(...t)}else r.push(i);return{values:r,quoted:!1}}async function wk(e,t,n,r,i,a){if(n){let n=YO(e,t);if(n!==null)return n}{let n=XO(e,t);if(n!==null)return n}{let n=await HO(e,t);if(n!==null)return n}{let r=await UO(e,t,n,a.expandPart,a.expandWordPartsAsync);if(r!==null)return r}{let r=await WO(e,t,n,a.expandPart);if(r!==null)return r}{let n=await KO(e,t,a.evaluateArithmetic);if(n!==null)return n}{let n=qO(e,t);if(n!==null)return n}{let n=await zO(e,t,a.expandWordPartsAsync,a.expandPart);if(n!==null)return n}{let n=await BO(e,t,a.expandWordPartsAsync,a.expandPart);if(n!==null)return n}if(r&&t.length===1&&t[0].type===`DoubleQuoted`){let n=Tk(e,t);if(n!==null)return n}{let n=await QO(e,t,i,a.expandParameterAsync,a.expandWordPartsAsync);if(n!==null)return n}{let n=await tk(e,t);if(n!==null)return n}{let n=await nk(e,t);if(n!==null)return n}return null}function Tk(e,t){let n=t[0];if(n.type!==`DoubleQuoted`)return null;if(n.parts.length===1&&n.parts[0].type===`ParameterExpansion`&&n.parts[0].operation?.type===`VarNamePrefix`){let t=n.parts[0].operation,r=QD(e,t.prefix);return t.star?{values:[r.join(q(e.state.env))],quoted:!0}:{values:r,quoted:!0}}if(n.parts.length===1&&n.parts[0].type===`ParameterExpansion`&&n.parts[0].operation?.type===`ArrayKeys`){let t=n.parts[0].operation,r=J(e,t.array).map(([e])=>String(e));return t.star?{values:[r.join(q(e.state.env))],quoted:!0}:{values:r,quoted:!0}}return null}async function Ek(e,t,n){{let r=await ak(e,t,n.evaluateArithmetic,n.expandPart);if(r!==null)return r}{let r=await ok(e,t,n.expandPart,n.expandWordPartsAsync);if(r!==null)return r}{let r=await sk(e,t,n.expandPart,n.expandWordPartsAsync);if(r!==null)return r}{let r=await ck(e,t,n.expandPart);if(r!==null)return r}return null}async function Dk(e,t,n){{let r=await fk(e,t,n.expandWordPartsAsync,n.expandPart);if(r!==null)return r}{let r=await pk(e,t,n.expandWordPartsAsync,n.expandPart);if(r!==null)return r}{let r=await mk(e,t,n.expandWordPartsAsync,n.expandPart);if(r!==null)return r}{let r=await hk(e,t,n.evaluateArithmetic,n.expandPart);if(r!==null)return r}{let n=await gk(e,t);if(n!==null)return n}{let n=await _k(e,t);if(n!==null)return n}{let n=vk(e,t);if(n!==null)return n}{let n=yk(e,t);if(n!==null)return n}{let r=await bk(e,t,n.expandPart);if(r!==null)return r}return null}function Ok(e){if(e.type!==`DoubleQuoted`)return null;for(let t=0;t<e.parts.length;t++){let n=e.parts[t];if(n.type!==`ParameterExpansion`||n.operation)continue;let r=n.parameter.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([@*])\]$/);if(r)return{type:`array`,name:r[1],atIndex:t,isStar:r[2]===`*`};if(n.parameter===`@`||n.parameter===`*`)return{type:`positional`,atIndex:t,isStar:n.parameter===`*`}}return null}async function kk(e,t,n,r){let i=``;for(let a=0;a<n.atIndex;a++)i+=await r(e,t.parts[a]);let a=``;for(let i=n.atIndex+1;i<t.parts.length;i++)a+=await r(e,t.parts[i]);let o;if(n.type===`array`){if(o=J(e,n.name).map(([,e])=>e),o.length===0){let t=e.state.env.get(n.name);t!==void 0&&(o=[t])}}else{let t=Number.parseInt(e.state.env.get(`#`)||`0`,10);o=[];for(let n=1;n<=t;n++)o.push(e.state.env.get(String(n))||``)}if(n.isStar){let t=q(e.state.env),n=o.join(t);return[i+n+a]}if(o.length===0){let e=i+a;return e?[e]:[]}return o.length===1?[i+o[0]+a]:[i+o[0],...o.slice(1,-1),o[o.length-1]+a]}async function Ak(e,t,n){if(t.length<2)return null;let r=!1;for(let e of t)if(Ok(e)){r=!0;break}if(!r)return null;let i=QE(e.state.env),a=$E(e.state.env),o=[];for(let r of t){let t=Ok(r);if(t&&r.type===`DoubleQuoted`){let i=await kk(e,r,t,n);o.push(i)}else if(r.type===`DoubleQuoted`||r.type===`SingleQuoted`){let t=await n(e,r);o.push([t])}else if(r.type===`Literal`)o.push([r.value]);else if(r.type===`ParameterExpansion`){let t=await n(e,r);if(a)o.push(t?[t]:[]);else{let e=oD(t,i);o.push(e)}}else{let t=await n(e,r);if(a)o.push(t?[t]:[]);else{let e=oD(t,i);o.push(e)}}}let s=[];for(let e of o)if(e.length!==0)if(s.length===0)s.push(...e);else{let t=s.length-1;s[t]=s[t]+e[0];for(let t=1;t<e.length;t++)s.push(e[t])}return s}async function jk(e,t){if(e.state.options.noglob)return{values:t,quoted:!1};let n=[];for(let r of t)if(LD(r,e.state.shoptOptions.extglob)){let t=await Mk(e,r);n.push(...t)}else n.push(r);return{values:n,quoted:!1}}async function Mk(e,t){let n=new LE(e.fs,e.state.cwd,e.state.env,{globstar:e.state.shoptOptions.globstar,nullglob:e.state.shoptOptions.nullglob,failglob:e.state.shoptOptions.failglob,dotglob:e.state.shoptOptions.dotglob,extglob:e.state.shoptOptions.extglob,globskipdots:e.state.shoptOptions.globskipdots,maxGlobOperations:e.limits.maxGlobOperations}),r=await n.expand(t);if(r.length>0)return r;if(n.hasFailglob())throw new Ur(t);return n.hasNullglob()?[]:[t]}async function Nk(e,t,n,r,i,a){let o=n.some(e=>e.type===`Glob`);if(!e.state.options.noglob&&o){let n=await a(e,t);if(LD(n,e.state.shoptOptions.extglob)){let t=await Mk(e,n);if(t.length>0&&t[0]!==n)return{values:t,quoted:!1};if(t.length===0)return{values:[],quoted:!1}}let i=RD(r);return $E(e.state.env)?{values:[i],quoted:!1}:{values:oD(i,QE(e.state.env)),quoted:!1}}if(!i&&!e.state.options.noglob&&LD(r,e.state.shoptOptions.extglob)){let n=await a(e,t);if(LD(n,e.state.shoptOptions.extglob)){let t=await Mk(e,n);if(t.length>0&&t[0]!==n)return{values:t,quoted:!1}}}if(r===``&&!i)return{values:[],quoted:!1};if(o&&!i){let t=RD(r);return $E(e.state.env)?{values:[t],quoted:!1}:{values:oD(t,QE(e.state.env)),quoted:!1}}return{values:[r],quoted:i}}var Pk=x(()=>{RE(),A(),uD(),UE(),VO(),GO(),JO(),ZO(),VD(),rk(),$D(),lk(),xk(),ED()});async function Fk(e,t){let n=t.operation;if(!n||n.type!==`DefaultValue`&&n.type!==`AssignDefault`&&n.type!==`UseAlternative`)return null;let r=n.word;if(!r||r.parts.length===0)return null;let i=await TD(e,t.parameter),a=await wD(e,t.parameter,!1)===``,o=n.checkEmpty??!1,s;return s=n.type===`UseAlternative`?i&&!(o&&a):!i||o&&a,s?r.parts:null}function Ik(e){return e.type===`SingleQuoted`||e.type===`DoubleQuoted`&&e.parts.every(e=>e.type===`Literal`)}async function Lk(e,t){if(t.type!==`ParameterExpansion`)return null;let n=await Fk(e,t);if(!n||n.length<=1)return null;let r=n.some(e=>Ik(e)),i=n.some(e=>e.type===`Literal`||e.type===`ParameterExpansion`||e.type===`CommandSubstitution`||e.type===`ArithmeticExpansion`);return r&&i?n:null}function Rk(e){return e.type===`DoubleQuoted`||e.type===`SingleQuoted`||e.type===`Literal`?!1:e.type===`Glob`?zE(e.pattern):!(!(e.type===`ParameterExpansion`||e.type===`CommandSubstitution`||e.type===`ArithmeticExpansion`)||e.type===`ParameterExpansion`&&VE(e))}async function zk(e,t,n,r,i){if(e.coverage?.hit(`bash:expansion:word_split`),t.length===1&&t[0].type===`ParameterExpansion`){let a=t[0],o=await Fk(e,a);if(o&&o.length>0&&o.length>1&&o.some(e=>e.type===`DoubleQuoted`||e.type===`SingleQuoted`)&&o.some(e=>e.type===`Literal`||e.type===`ParameterExpansion`||e.type===`CommandSubstitution`||e.type===`ArithmeticExpansion`))return Vk(e,o,n,r,i)}let a=[],o=!1;for(let n of t){let t=Rk(n),r=n.type===`DoubleQuoted`||n.type===`SingleQuoted`,s=t?await Lk(e,n):null,c=await i(e,n);a.push({value:c,isSplittable:t,isQuoted:r,mixedDefaultParts:s??void 0}),t&&(o=!0)}if(!o){let e=a.map(e=>e.value).join(``);return e?[e]:[]}let s=[],c=``,l=!1,u=!1,d=!1;for(let t of a)if(!t.isSplittable)u?t.isQuoted&&t.value===``?(c!==``&&s.push(c),s.push(``),l=!0,c=``,u=!1,d=!0):t.value===``?(c+=t.value,d=!1):(c!==``&&s.push(c),c=t.value,u=!1,d=!1):(c+=t.value,d=t.isQuoted&&t.value===``);else if(t.mixedDefaultParts){let a=await Vk(e,t.mixedDefaultParts,n,r,i);if(a.length!==0)if(a.length===1)c+=a[0],l=!0;else{c+=a[0],s.push(c),l=!0;for(let e=1;e<a.length-1;e++)s.push(a[e]);c=a[a.length-1]}u=!1,d=!1}else{let{words:e,hadLeadingDelimiter:r,hadTrailingDelimiter:i}=aD(t.value,n);if(d&&r&&c===``&&(s.push(``),l=!0),e.length===0)i&&(u=!0);else if(e.length===1)c+=e[0],l=!0,u=i;else{c+=e[0],s.push(c),l=!0;for(let t=1;t<e.length-1;t++)s.push(e[t]);c=e[e.length-1],u=i}d=!1}return c===``?s.length===0&&l&&s.push(``):s.push(c),s}function Bk(e,t){return e.length>0&&t.includes(e[0])}async function Vk(e,t,n,r,i){let a=[];for(let n of t){let t=!(n.type===`DoubleQuoted`||n.type===`SingleQuoted`),r=await i(e,n);a.push({value:r,isSplittable:t})}let o=[],s=``,c=!1,l=!1;for(let e of a)if(!e.isSplittable)l&&e.value!==``?(s!==``&&o.push(s),s=e.value,l=!1):s+=e.value;else{Bk(e.value,n)&&s!==``&&(o.push(s),s=``,c=!0);let{words:t,hadTrailingDelimiter:r}=aD(e.value,n);if(t.length===0)r&&(l=!0);else if(t.length===1)s+=t[0],c=!0,l=r;else{s+=t[0],o.push(s),c=!0;for(let e=1;e<t.length-1;e++)o.push(t[e]);s=t[t.length-1],l=r}}return s===``?o.length===0&&c&&o.push(``):o.push(s),o}var Hk=x(()=>{ED(),uD(),UE()});function Uk(e){switch(e.type){case`Literal`:return e.value;case`SingleQuoted`:return e.value;case`Escaped`:return e.value;default:return null}}function Wk(e){switch(e.type){case`SingleQuoted`:case`Escaped`:case`DoubleQuoted`:return!0;case`Literal`:return e.value===``;default:return!1}}var Gk=x(()=>{}),Kk={};S(Kk,{escapeGlobChars:()=>zD,escapeRegexChars:()=>BD,expandRedirectTarget:()=>cA,expandWord:()=>X,expandWordForPattern:()=>$k,expandWordForRegex:()=>Qk,expandWordWithGlob:()=>aA,getArrayElements:()=>J,getVariable:()=>wD,hasQuotedMultiValueAt:()=>sA,isArray:()=>CD,isWordFullyQuoted:()=>Xk});function qk(e,t,n){if(e.length>t)throw new k(`${n}: string length limit exceeded (${t} bytes)`,`string_length`)}async function Jk(e,t,n=!1){let r=[];for(let i of t)r.push(await uA(e,i,n));return r.join(``)}function Yk(e){return Wk(e)}function Xk(e){if(e.parts.length===0)return!0;for(let t of e.parts)if(!Yk(t))return!1;return!0}function Zk(e,t,n=!1){let r=Uk(t);if(r!==null)return r;switch(t.type){case`TildeExpansion`:return n?t.user===null?`~`:`~${t.user}`:(e.coverage?.hit(`bash:expansion:tilde`),t.user===null?e.state.env.get(`HOME`)??`/home/user`:t.user===`root`?`/root`:`~${t.user}`);case`Glob`:return jO(e,t.pattern);default:return null}}async function X(e,t){return lA(e,t)}async function Qk(e,t){let n=[];for(let r of t.parts)if(r.type===`Escaped`)n.push(`\\${r.value}`);else if(r.type===`SingleQuoted`)n.push(r.value);else if(r.type===`DoubleQuoted`){let t=await Jk(e,r.parts);n.push(t)}else if(r.type===`TildeExpansion`){let t=await uA(e,r);n.push(BD(t))}else n.push(await uA(e,r));return n.join(``)}async function $k(e,t){let n=[];for(let r of t.parts)if(r.type===`Escaped`){let e=r.value;`()|*?[]`.includes(e)?n.push(`\\${e}`):n.push(e)}else if(r.type===`SingleQuoted`)n.push(zD(r.value));else if(r.type===`DoubleQuoted`){let t=await Jk(e,r.parts);n.push(zD(t))}else n.push(await uA(e,r));return n.join(``)}async function eA(e,t){let n=[];for(let r of t.parts)if(r.type===`SingleQuoted`)n.push(zD(r.value));else if(r.type===`Escaped`){let e=r.value;`*?[]\\()|`.includes(e)?n.push(`\\${e}`):n.push(e)}else if(r.type===`DoubleQuoted`){let t=await Jk(e,r.parts);n.push(zD(t))}else r.type===`Glob`?OO(r.pattern)?n.push(await NO(e,r.pattern)):n.push(jO(e,r.pattern)):r.type===`Literal`?n.push(r.value):n.push(await uA(e,r));return n.join(``)}function tA(e){for(let t of e)if(t.type===`BraceExpansion`||t.type===`DoubleQuoted`&&tA(t.parts))return!0;return!1}async function nA(e,t,n={count:0}){if(n.count>fA)return[[]];let r=[[]];for(let i of t)if(i.type===`BraceExpansion`){let t=[],a=!1,o=``;for(let r of i.items)if(r.type===`Range`){let e=MD(r.start,r.end,r.step,r.startStr,r.endStr);if(e.expanded)for(let r of e.expanded)n.count++,t.push(r);else{a=!0,o=e.literal;break}}else{let i=await nA(e,r.word.parts,n);for(let r of i){n.count++;let i=[];for(let t of r)typeof t==`string`?i.push(t):i.push(await uA(e,t));t.push(i.join(``))}}if(a){for(let e of r)n.count++,e.push(o);continue}if(r.length*t.length>e.limits.maxBraceExpansionResults||n.count>fA)return r;let s=[];for(let e of r)for(let i of t){if(n.count++,n.count>fA)return s.length>0?s:r;s.push([...e,i])}r=s}else for(let e of r)n.count++,e.push(i);return r}async function rA(e,t){let n=t.parts;if(!tA(n))return[await X(e,t)];let r=await nA(e,n),i=[];for(let t of r){let n=[];for(let r of t)typeof r==`string`?n.push(r):n.push(await uA(e,r));i.push(IO(e,n.join(``)))}return i}function iA(){return{expandWordAsync:lA,expandWordForGlobbing:eA,expandWordWithBracesAsync:rA,expandWordPartsAsync:Jk,expandPart:uA,expandParameterAsync:dA,hasBraceExpansion:tA,evaluateArithmetic:Z,buildIfsCharClassPattern:tD,smartWordSplit:zk}}async function aA(e,t){return Sk(e,t,iA())}function oA(e){for(let t of e){if(t.type===`ParameterExpansion`)return t.parameter;if(t.type===`Literal`)return t.value}return``}function sA(e,t){if(Number.parseInt(e.state.env.get(`#`)||`0`,10)<2)return!1;function n(e){for(let t of e)if(t.type===`DoubleQuoted`){for(let e of t.parts)if(e.type===`ParameterExpansion`&&e.parameter===`@`&&!e.operation)return!0}return!1}return n(t.parts)}async function cA(e,t){if(sA(e,t))return{error:`bash: $@: ambiguous redirect
869
+ `};let n=t.parts,{hasQuoted:r}=HE(n);if(tA(n)&&(await rA(e,t)).length>1)return{error:`bash: ${n.map(e=>e.type===`Literal`?e.value:e.type===`BraceExpansion`?`{${e.items.map(e=>{if(e.type===`Range`){let t=e.step?`..${e.step}`:``;return`${e.startStr??e.start}..${e.endStr??e.end}${t}`}return e.word.parts.map(e=>e.type===`Literal`?e.value:``).join(``)}).join(`,`)}}`:``).join(``)}: ambiguous redirect
870
+ `};let i=await lA(e,t),{hasParamExpansion:a,hasCommandSub:o}=HE(n);if((a||o)&&!r&&!$E(e.state.env)&&oD(i,QE(e.state.env)).length>1)return{error:`bash: $${oA(n)}: ambiguous redirect
871
+ `};if(r||e.state.options.noglob)return{target:i};let s=await eA(e,t);if(!LD(s,e.state.shoptOptions.extglob))return{target:i};let c=new LE(e.fs,e.state.cwd,e.state.env,{globstar:e.state.shoptOptions.globstar,nullglob:e.state.shoptOptions.nullglob,failglob:e.state.shoptOptions.failglob,dotglob:e.state.shoptOptions.dotglob,extglob:e.state.shoptOptions.extglob,globskipdots:e.state.shoptOptions.globskipdots,maxGlobOperations:e.limits.maxGlobOperations}),l=await c.expand(s);return l.length===0?c.hasFailglob()?{error:`bash: no match: ${i}
872
+ `}:{target:i}:l.length===1?{target:l[0]}:{error:`bash: ${i}: ambiguous redirect
873
+ `}}async function lA(e,t){let n=t.parts,r=n.length;if(r===1){let t=await uA(e,n[0]);return qk(t,e.limits.maxStringLength,`word expansion`),t}let i=[];for(let t=0;t<r;t++)i.push(await uA(e,n[t]));let a=i.join(``);return qk(a,e.limits.maxStringLength,`word expansion`),a}async function uA(e,t,n=!1){if(t.type===`ParameterExpansion`)return dA(e,t,n);let r=Zk(e,t,n);if(r!==null)return r;switch(t.type){case`DoubleQuoted`:{let n=[];for(let r of t.parts)n.push(await uA(e,r,!0));return n.join(``)}case`CommandSubstitution`:{let n=FD(t.body);if(n)try{let t=await X(e,n.target),r=t.startsWith(`/`)?t:`${e.state.cwd}/${t}`,i=await e.fs.readFile(r);e.state.lastExitCode=0,e.state.env.set(`?`,`0`);let a=i.replace(/\n+$/,``);return qk(a,e.limits.maxStringLength,`command substitution`),a}catch(t){if(t instanceof k)throw t;return e.state.lastExitCode=1,e.state.env.set(`?`,`1`),``}let r=e.substitutionDepth??0,i=e.limits.maxSubstitutionDepth;if(r>=i)throw new k(`Command substitution nesting limit exceeded (${i})`,`substitution_depth`);let a=e.substitutionDepth;e.substitutionDepth=r+1;let o=e.state.bashPid;e.state.bashPid=e.state.nextVirtualPid++;let s=new Map(e.state.env),c=e.state.cwd,l=e.state.suppressVerbose;e.state.suppressVerbose=!0;try{let n=await e.executeScript(t.body),r=n.exitCode;e.state.env=s,e.state.cwd=c,e.state.suppressVerbose=l,e.state.lastExitCode=r,e.state.env.set(`?`,String(r)),n.stderr&&(e.state.expansionStderr=(e.state.expansionStderr||``)+n.stderr),e.state.bashPid=o,e.substitutionDepth=a;let i=n.stdout.replace(/\n+$/,``);return qk(i,e.limits.maxStringLength,`command substitution`),i}catch(t){if(e.state.env=s,e.state.cwd=c,e.state.bashPid=o,e.substitutionDepth=a,e.state.suppressVerbose=l,t instanceof k)throw t;if(t instanceof Br){e.state.lastExitCode=t.exitCode,e.state.env.set(`?`,String(t.exitCode)),t.stderr&&(e.state.expansionStderr=(e.state.expansionStderr||``)+t.stderr);let n=t.stdout.replace(/\n+$/,``);return qk(n,e.limits.maxStringLength,`command substitution`),n}throw t}}case`ArithmeticExpansion`:{let n=t.expression.originalText;if(n&&/\$[a-zA-Z_][a-zA-Z0-9_]*(?![{[(])/.test(n)){let t=await DD(e,n),r=aT(new DE,t);return String(await Z(e,r.expression,!0))}return String(await Z(e,t.expression.expression,!0))}case`BraceExpansion`:{let n=[];for(let r of t.items)if(r.type===`Range`){let e=MD(r.start,r.end,r.step,r.startStr,r.endStr);if(e.expanded)n.push(...e.expanded);else return e.literal}else n.push(await X(e,r.word));return n.join(` `)}default:return``}}async function dA(e,t,n=!1){let{parameter:r}=t,{operation:i}=t,a=r.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(a){let[,t,n]=a;(e.state.associativeArrays?.has(t)||n.includes(`$(`)||n.includes("`")||n.includes("${"))&&(r=`${t}[${await OD(e,n)}]`)}else if(/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)&&dD(e,r)){let t=vD(e,r);if(t&&t!==r){let n=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(n){let[,t,i]=n;(e.state.associativeArrays?.has(t)||i.includes(`$(`)||i.includes("`")||i.includes("${"))&&(r=`${t}[${await OD(e,i)}]`)}}}let o=i&&(i.type===`DefaultValue`||i.type===`AssignDefault`||i.type===`UseAlternative`||i.type===`ErrorIfUnset`),s=await wD(e,r,!o);if(!i)return s;let c=!await TD(e,r),{isEmpty:l,effectiveValue:u}=EO(e,r,s,n),d={value:s,isUnset:c,isEmpty:l,effectiveValue:u,inDoubleQuotes:n};switch(i.type){case`DefaultValue`:return pO(e,i,d,Jk);case`AssignDefault`:return mO(e,r,i,d,Jk);case`ErrorIfUnset`:return hO(e,r,i,d,Jk);case`UseAlternative`:return gO(e,i,d,Jk);case`PatternRemoval`:{let t=await _O(e,s,i,Jk,uA);return qk(t,e.limits.maxStringLength,`pattern removal`),t}case`PatternReplacement`:{let t=await vO(e,s,i,Jk,uA);return qk(t,e.limits.maxStringLength,`pattern replacement`),t}case`Length`:return yO(e,r,s);case`LengthSliceError`:throw new Hr(r);case`BadSubstitution`:throw new Hr(i.text);case`Substring`:return bO(e,r,s,i);case`CaseModification`:{let t=await xO(e,s,i,Jk,dA);return qk(t,e.limits.maxStringLength,`case modification`),t}case`Transform`:return SO(e,r,s,c,i);case`Indirection`:return CO(e,r,s,c,i,dA,n);case`ArrayKeys`:return wO(e,i);case`VarNamePrefix`:return TO(e,i);default:return s}}var fA,pA=x(()=>{ET(),OE(),RE(),CA(),A(),UE(),kD(),PD(),ID(),VD(),DO(),FO(),LO(),ED(),Pk(),Hk(),uD(),xD(),Gk(),VD(),ED(),fA=1e5});function mA(e,t,n){switch(n){case`+`:return e+t;case`-`:return e-t;case`*`:return e*t;case`/`:if(t===0)throw new Vr(`division by 0`);return Math.trunc(e/t);case`%`:if(t===0)throw new Vr(`division by 0`);return e%t;case`**`:if(t<0)throw new Vr(`exponent less than 0`);return e**t;case`<<`:return e<<t;case`>>`:return e>>t;case`<`:return+(e<t);case`<=`:return+(e<=t);case`>`:return+(e>t);case`>=`:return+(e>=t);case`==`:return+(e===t);case`!=`:return e===t?0:1;case`&`:return e&t;case`|`:return e|t;case`^`:return e^t;case`,`:return t;default:return 0}}function hA(e,t,n){switch(n){case`=`:return t;case`+=`:return e+t;case`-=`:return e-t;case`*=`:return e*t;case`/=`:return t===0?0:Math.trunc(e/t);case`%=`:return t===0?0:e%t;case`<<=`:return e<<t;case`>>=`:return e>>t;case`&=`:return e&t;case`|=`:return e|t;case`^=`:return e^t;default:return t}}function gA(e,t){switch(t){case`-`:return-e;case`+`:return+e;case`!`:return+(e===0);case`~`:return~e;default:return e}}async function _A(e,t){let n=e.state.env.get(t);if(n!==void 0)return n;let r=e.state.env.get(`${t}_0`);return r===void 0?await wD(e,t):r}function vA(e){if(!e)return 0;let t=Number.parseInt(e,10);if(!Number.isNaN(t)&&/^-?\d+$/.test(e.trim()))return t;let n=e.trim();if(!n)return 0;try{let{expr:e,pos:r}=cT(new DE,n,0);if(r<n.length){let e=n.slice(r).trim().split(/\s+/)[0];throw new Vr(`${n}: syntax error in expression (error token is "${e}")`)}return e.type===`ArithNumber`?e.value:t||0}catch(e){if(e instanceof Vr)throw e;let t=n.split(/\s+/).slice(1)[0]||n;throw new Vr(`${n}: syntax error in expression (error token is "${t}")`)}}async function yA(e,t){if(!t)return 0;let n=Number.parseInt(t,10);if(!Number.isNaN(n)&&/^-?\d+$/.test(t.trim()))return n;let r=t.trim();if(!r)return 0;let{expr:i,pos:a}=cT(new DE,r,0);if(a<r.length){let e=r.slice(a).trim(),t=e.split(/\s+/)[0]||e;throw new Vr(`syntax error in expression (error token is "${t}")`,``,``)}return await Z(e,i)}async function bA(e,t,n=new Set,r=0){if(r>100)throw new Vr(`maximum variable indirection depth exceeded`);if(n.has(t))return 0;n.add(t);let i=await _A(e,t);if(!i)return 0;let a=Number.parseInt(i,10);if(!Number.isNaN(a)&&/^-?\d+$/.test(i.trim()))return a;let o=i.trim();if(/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(o))return await bA(e,o,n,r+1);let{expr:s,pos:c}=cT(new DE,o,0);if(c<o.length){let e=o.slice(c).trim(),t=e.split(/\s+/)[0]||e;throw new Vr(`${o}: syntax error in expression (error token is "${t}")`)}return await Z(e,s)}async function xA(e,t){if(t.startsWith(`#`)){let n=t.slice(1),r=n.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[[@*]\]$/);if(r){let t=r[1],n=J(e,t);return String(n.length)}let i=e.state.env.get(n)||``;return String(i.length)}if(t.startsWith(`!`)){let n=t.slice(1),r=e.state.env.get(n)||``;return e.state.env.get(r)||``}let n=[`:-`,`:=`,`:?`,`:+`,`-`,`=`,`?`,`+`],r=-1,i=``;for(let e of n){let n=t.indexOf(e);n>0&&(r===-1||n<r)&&(r=n,i=e)}if(r===-1)return await wD(e,t);let a=t.slice(0,r),o=t.slice(r+i.length),s=e.state.env.get(a),c=s===void 0,l=s===``,u=i.startsWith(`:`);switch(i){case`:-`:case`-`:return c||u&&l?o:s||``;case`:=`:case`=`:return c||u&&l?(e.state.env.set(a,o),o):s||``;case`:+`:case`+`:return c||u&&l?``:o;case`:?`:case`?`:if(c||u&&l)throw Error(o||`${a}: parameter null or not set`);return s||``;default:return s||``}}async function Z(e,t,n=!1){switch(t.type){case`ArithNumber`:if(Number.isNaN(t.value))throw new Vr(`value too great for base`);return t.value;case`ArithVariable`:return await bA(e,t.name);case`ArithSpecialVar`:{let n=(await wD(e,t.name)).trim();if(!n)return 0;let r=Number.parseInt(n,10);if(!Number.isNaN(r)&&/^-?\d+$/.test(n))return r;let{expr:i}=cT(new DE,n,0);return await Z(e,i)}case`ArithNested`:return await Z(e,t.expression);case`ArithCommandSubst`:if(e.execFn){let n=await e.execFn(t.command,{signal:e.state.signal});n.stderr&&(e.state.expansionStderr=(e.state.expansionStderr||``)+n.stderr);let r=n.stdout.trim();return Number.parseInt(r,10)||0}return 0;case`ArithBracedExpansion`:{let n=await xA(e,t.content);return Number.parseInt(n,10)||0}case`ArithDynamicBase`:{let n=await xA(e,t.baseExpr),r=Number.parseInt(n,10);return r<2||r>64?0:Qw(`${r}#${t.value}`)}case`ArithDynamicNumber`:return Qw(await xA(e,t.prefix)+t.suffix);case`ArithArrayElement`:{let r=e.state.associativeArrays?.has(t.array),i=async t=>{let n=e.state.env.get(t);return n===void 0?0:await yA(e,n)};if(t.stringKey!==void 0)return await i(`${t.array}_${t.stringKey}`);if(r&&t.index?.type===`ArithVariable`&&!t.index.hasDollarPrefix)return await i(`${t.array}_${t.index.name}`);if(r&&t.index?.type===`ArithVariable`&&t.index.hasDollarPrefix){let n=await wD(e,t.index.name);return await i(`${t.array}_${n}`)}if(t.index){let r=await Z(e,t.index,n);if(r<0){let n=J(e,t.array),i=e.state.currentLine;if(n.length===0)return e.state.expansionStderr=(e.state.expansionStderr||``)+`bash: line ${i}: ${t.array}: bad array subscript
874
+ `,0;let a=Math.max(...n.map(([e])=>typeof e==`number`?e:0))+1+r;if(a<0)return e.state.expansionStderr=(e.state.expansionStderr||``)+`bash: line ${i}: ${t.array}: bad array subscript
875
+ `,0;r=a}let i=`${t.array}_${r}`,a=e.state.env.get(i);if(a!==void 0)return yA(e,a);if(r===0){let n=e.state.env.get(t.array);if(n!==void 0)return yA(e,n)}if(e.state.options.nounset&&!Array.from(e.state.env.keys()).some(e=>e===t.array||e.startsWith(`${t.array}_`)))throw new zr(`${t.array}[${r}]`);return 0}return 0}case`ArithDoubleSubscript`:throw new Vr(`double subscript`,``,``);case`ArithNumberSubscript`:throw new Vr(`${t.number}${t.errorToken}: syntax error: invalid arithmetic operator (error token is "${t.errorToken}")`);case`ArithSyntaxError`:throw new Vr(t.message,``,``,!0);case`ArithSingleQuote`:if(n)throw new Vr(`syntax error: operand expected (error token is "'${t.content}'")`);return t.value;case`ArithBinary`:return t.operator===`||`?await Z(e,t.left,n)||await Z(e,t.right,n)?1:0:t.operator===`&&`?await Z(e,t.left,n)&&await Z(e,t.right,n)?1:0:mA(await Z(e,t.left,n),await Z(e,t.right,n),t.operator);case`ArithUnary`:{let r=await Z(e,t.operand,n);if(t.operator===`++`||t.operator===`--`){if(t.operand.type===`ArithVariable`){let n=t.operand.name,r=Number.parseInt(await wD(e,n),10)||0,i=t.operator===`++`?r+1:r-1;return e.state.env.set(n,String(i)),t.prefix?i:r}if(t.operand.type===`ArithArrayElement`){let i=t.operand.array,a=e.state.associativeArrays?.has(i),o;if(t.operand.stringKey!==void 0)o=`${i}_${t.operand.stringKey}`;else if(a&&t.operand.index?.type===`ArithVariable`&&!t.operand.index.hasDollarPrefix)o=`${i}_${t.operand.index.name}`;else if(a&&t.operand.index?.type===`ArithVariable`&&t.operand.index.hasDollarPrefix)o=`${i}_${await wD(e,t.operand.index.name)}`;else if(t.operand.index)o=`${i}_${await Z(e,t.operand.index,n)}`;else return r;let s=Number.parseInt(e.state.env.get(o)||`0`,10)||0,c=t.operator===`++`?s+1:s-1;return e.state.env.set(o,String(c)),t.prefix?c:s}if(t.operand.type===`ArithConcat`){let r=``;for(let i of t.operand.parts)r+=await SA(e,i,n);if(r&&/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)){let n=Number.parseInt(e.state.env.get(r)||`0`,10)||0,i=t.operator===`++`?n+1:n-1;return e.state.env.set(r,String(i)),t.prefix?i:n}}if(t.operand.type===`ArithDynamicElement`){let r=``;if(t.operand.nameExpr.type===`ArithConcat`)for(let i of t.operand.nameExpr.parts)r+=await SA(e,i,n);else t.operand.nameExpr.type===`ArithVariable`&&(r=t.operand.nameExpr.hasDollarPrefix?await wD(e,t.operand.nameExpr.name):t.operand.nameExpr.name);if(r&&/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)){let i=await Z(e,t.operand.subscript,n),a=`${r}_${i}`,o=Number.parseInt(e.state.env.get(a)||`0`,10)||0,s=t.operator===`++`?o+1:o-1;return e.state.env.set(a,String(s)),t.prefix?s:o}}return r}return gA(r,t.operator)}case`ArithTernary`:return await Z(e,t.condition,n)?await Z(e,t.consequent,n):await Z(e,t.alternate,n);case`ArithAssignment`:{let r=t.variable,i=r;if(t.stringKey!==void 0)i=`${r}_${t.stringKey}`;else if(t.subscript){let a=e.state.associativeArrays?.has(r);if(a&&t.subscript.type===`ArithVariable`&&!t.subscript.hasDollarPrefix)i=`${r}_${t.subscript.name}`;else if(a&&t.subscript.type===`ArithVariable`&&t.subscript.hasDollarPrefix)i=`${r}_${await wD(e,t.subscript.name)||`\\`}`;else if(a)i=`${r}_${await Z(e,t.subscript,n)}`;else{let a=await Z(e,t.subscript,n);if(a<0){let t=J(e,r);t.length>0&&(a=Math.max(...t.map(([e])=>typeof e==`number`?e:0))+1+a)}i=`${r}_${a}`}}let a=hA(Number.parseInt(e.state.env.get(i)||`0`,10)||0,await Z(e,t.value,n),t.operator);return e.state.env.set(i,String(a)),a}case`ArithGroup`:return await Z(e,t.expression,n);case`ArithConcat`:{let r=``;for(let i of t.parts)r+=await SA(e,i,n);return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)?await bA(e,r):Number.parseInt(r,10)||0}case`ArithDynamicAssignment`:{let r=``;if(t.target.type===`ArithConcat`)for(let i of t.target.parts)r+=await SA(e,i,n);else t.target.type===`ArithVariable`&&(r=t.target.hasDollarPrefix?await wD(e,t.target.name):t.target.name);if(!r||!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r))return 0;let i=r;if(t.subscript){let a=await Z(e,t.subscript,n);i=`${r}_${a}`}let a=hA(Number.parseInt(e.state.env.get(i)||`0`,10)||0,await Z(e,t.value,n),t.operator);return e.state.env.set(i,String(a)),a}case`ArithDynamicElement`:{let r=``;if(t.nameExpr.type===`ArithConcat`)for(let i of t.nameExpr.parts)r+=await SA(e,i,n);else t.nameExpr.type===`ArithVariable`&&(r=t.nameExpr.hasDollarPrefix?await wD(e,t.nameExpr.name):t.nameExpr.name);if(!r||!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r))return 0;let i=await Z(e,t.subscript,n),a=`${r}_${i}`,o=e.state.env.get(a);return o===void 0?0:vA(o)}default:return 0}}async function SA(e,t,n=!1){switch(t.type){case`ArithNumber`:return String(t.value);case`ArithSingleQuote`:return String(await Z(e,t,n));case`ArithVariable`:return t.hasDollarPrefix?await wD(e,t.name):t.name;case`ArithSpecialVar`:return await wD(e,t.name);case`ArithBracedExpansion`:return await xA(e,t.content);case`ArithCommandSubst`:return e.execFn?(await e.execFn(t.command,{signal:e.state.signal})).stdout.trim():`0`;case`ArithConcat`:{let r=``;for(let i of t.parts)r+=await SA(e,i,n);return r}default:return String(await Z(e,t,n))}}var CA=x(()=>{ET(),OE(),A(),pA()});function wA(){throw Error(`node:dns is not available in browser environments`)}var TA=x(()=>{});ir(),Qn();var EA=[{name:`echo`,load:async()=>(await Promise.resolve().then(()=>(lr(),ar))).echoCommand},{name:`cat`,load:async()=>(await Promise.resolve().then(()=>(Mr(),Er))).catCommand},{name:`printf`,load:async()=>(await Promise.resolve().then(()=>(Di(),ui))).printfCommand},{name:`ls`,load:async()=>(await Promise.resolve().then(()=>(Ri(),Oi))).lsCommand},{name:`mkdir`,load:async()=>(await Promise.resolve().then(()=>(Ki(),Hi))).mkdirCommand},{name:`rmdir`,load:async()=>(await Promise.resolve().then(()=>(ta(),qi))).rmdirCommand},{name:`touch`,load:async()=>(await Promise.resolve().then(()=>(oa(),na))).touchCommand},{name:`rm`,load:async()=>(await Promise.resolve().then(()=>(da(),sa))).rmCommand},{name:`cp`,load:async()=>(await Promise.resolve().then(()=>(_a(),fa))).cpCommand},{name:`mv`,load:async()=>(await Promise.resolve().then(()=>(Ca(),va))).mvCommand},{name:`ln`,load:async()=>(await Promise.resolve().then(()=>(Oa(),wa))).lnCommand},{name:`chmod`,load:async()=>(await Promise.resolve().then(()=>(Fa(),ka))).chmodCommand},{name:`pwd`,load:async()=>(await Promise.resolve().then(()=>(za(),Ia))).pwdCommand},{name:`readlink`,load:async()=>(await Promise.resolve().then(()=>(Wa(),Ba))).readlinkCommand},{name:`head`,load:async()=>(await Promise.resolve().then(()=>(eo(),Xa))).headCommand},{name:`tail`,load:async()=>(await Promise.resolve().then(()=>(ao(),to))).tailCommand},{name:`wc`,load:async()=>(await Promise.resolve().then(()=>(mo(),oo))).wcCommand},{name:`stat`,load:async()=>(await Promise.resolve().then(()=>(So(),_o))).statCommand},{name:`grep`,load:async()=>(await Promise.resolve().then(()=>(_c(),ac))).grepCommand},{name:`fgrep`,load:async()=>(await Promise.resolve().then(()=>(_c(),ac))).fgrepCommand},{name:`egrep`,load:async()=>(await Promise.resolve().then(()=>(_c(),ac))).egrepCommand},{name:`rg`,load:async()=>(await Promise.resolve().then(()=>(xl(),_l))).rgCommand},{name:`sed`,load:async()=>(await Promise.resolve().then(()=>(iu(),$l))).sedCommand},{name:`awk`,load:async()=>(await Promise.resolve().then(()=>(Ff(),Of))).awkCommand2},{name:`sort`,load:async()=>(await Promise.resolve().then(()=>($f(),Yf))).sortCommand},{name:`uniq`,load:async()=>(await Promise.resolve().then(()=>(ap(),ep))).uniqCommand},{name:`comm`,load:async()=>(await Promise.resolve().then(()=>(up(),op))).commCommand},{name:`cut`,load:async()=>(await Promise.resolve().then(()=>(_p(),dp))).cutCommand},{name:`paste`,load:async()=>(await Promise.resolve().then(()=>(wp(),vp))).pasteCommand},{name:`tr`,load:async()=>(await Promise.resolve().then(()=>(Mp(),Tp))).trCommand},{name:`rev`,load:async()=>(await Promise.resolve().then(()=>(Rp(),Np))).rev},{name:`nl`,load:async()=>(await Promise.resolve().then(()=>(Kp(),zp))).nl},{name:`fold`,load:async()=>(await Promise.resolve().then(()=>(em(),qp))).fold},{name:`expand`,load:async()=>(await Promise.resolve().then(()=>(lm(),tm))).expand},{name:`unexpand`,load:async()=>(await Promise.resolve().then(()=>(vm(),um))).unexpand},{name:`strings`,load:async()=>(await Promise.resolve().then(()=>(Em(),ym))).strings},{name:`split`,load:async()=>(await Promise.resolve().then(()=>(Lm(),Dm))).split},{name:`column`,load:async()=>(await Promise.resolve().then(()=>(qm(),Rm))).column},{name:`join`,load:async()=>(await Promise.resolve().then(()=>(nh(),Jm))).join},{name:`tee`,load:async()=>(await Promise.resolve().then(()=>(ch(),rh))).teeCommand},{name:`find`,load:async()=>(await Promise.resolve().then(()=>(Lh(),Eh))).findCommand},{name:`basename`,load:async()=>(await Promise.resolve().then(()=>(Hh(),Rh))).basenameCommand},{name:`dirname`,load:async()=>(await Promise.resolve().then(()=>(qh(),Uh))).dirnameCommand},{name:`tree`,load:async()=>(await Promise.resolve().then(()=>(tg(),Jh))).treeCommand},{name:`du`,load:async()=>(await Promise.resolve().then(()=>(ug(),ng))).duCommand},{name:`env`,load:async()=>(await Promise.resolve().then(()=>(vg(),dg))).envCommand},{name:`printenv`,load:async()=>(await Promise.resolve().then(()=>(vg(),dg))).printenvCommand},{name:`alias`,load:async()=>(await Promise.resolve().then(()=>(Eg(),yg))).aliasCommand},{name:`unalias`,load:async()=>(await Promise.resolve().then(()=>(Eg(),yg))).unaliasCommand},{name:`history`,load:async()=>(await Promise.resolve().then(()=>(Mg(),Dg))).historyCommand},{name:`xargs`,load:async()=>(await Promise.resolve().then(()=>(Lg(),Ng))).xargsCommand},{name:`true`,load:async()=>(await Promise.resolve().then(()=>(Ug(),Rg))).trueCommand},{name:`false`,load:async()=>(await Promise.resolve().then(()=>(Ug(),Rg))).falseCommand},{name:`clear`,load:async()=>(await Promise.resolve().then(()=>(Jg(),Wg))).clearCommand},{name:`bash`,load:async()=>(await Promise.resolve().then(()=>(n_(),Yg))).bashCommand},{name:`sh`,load:async()=>(await Promise.resolve().then(()=>(n_(),Yg))).shCommand},{name:`jq`,load:async()=>(await Promise.resolve().then(()=>(Sv(),pv))).jqCommand},{name:`base64`,load:async()=>(await Promise.resolve().then(()=>(kv(),Cv))).base64Command},{name:`diff`,load:async()=>(await Promise.resolve().then(()=>(Fv(),Av))).diffCommand},{name:`date`,load:async()=>(await Promise.resolve().then(()=>(Wv(),Iv))).dateCommand},{name:`sleep`,load:async()=>(await Promise.resolve().then(()=>(Qv(),qv))).sleepCommand},{name:`timeout`,load:async()=>(await Promise.resolve().then(()=>(ry(),$v))).timeoutCommand},{name:`time`,load:async()=>(await Promise.resolve().then(()=>(dy(),sy))).timeCommand},{name:`seq`,load:async()=>(await Promise.resolve().then(()=>(hy(),fy))).seqCommand},{name:`expr`,load:async()=>(await Promise.resolve().then(()=>(by(),gy))).exprCommand},{name:`md5sum`,load:async()=>(await Promise.resolve().then(()=>(ky(),Ey))).md5sumCommand},{name:`sha1sum`,load:async()=>(await Promise.resolve().then(()=>(Ny(),Ay))).sha1sumCommand},{name:`sha256sum`,load:async()=>(await Promise.resolve().then(()=>(Ly(),Py))).sha256sumCommand},{name:`file`,load:async()=>(await Promise.resolve().then(()=>(FS(),TS))).fileCommand},{name:`html-to-markdown`,load:async()=>(await Promise.resolve().then(()=>(BS(),IS))).htmlToMarkdownCommand},{name:`help`,load:async()=>(await Promise.resolve().then(()=>(KS(),VS))).helpCommand},{name:`which`,load:async()=>(await Promise.resolve().then(()=>(QS(),qS))).whichCommand},{name:`tac`,load:async()=>(await Promise.resolve().then(()=>(rC(),$S))).tac},{name:`hostname`,load:async()=>(await Promise.resolve().then(()=>(cC(),iC))).hostname},{name:`whoami`,load:async()=>(await Promise.resolve().then(()=>(pC(),lC))).whoami},{name:`od`,load:async()=>(await Promise.resolve().then(()=>(vC(),mC))).od},{name:`gzip`,load:async()=>(await Promise.resolve().then(()=>(HC(),yC))).gzipCommand},{name:`gunzip`,load:async()=>(await Promise.resolve().then(()=>(HC(),yC))).gunzipCommand},{name:`zcat`,load:async()=>(await Promise.resolve().then(()=>(HC(),yC))).zcatCommand}],DA=[],OA=[],kA=[{name:`curl`,load:async()=>(await Promise.resolve().then(()=>(vw(),lw))).curlCommand}],AA=new Map;function jA(e){return{name:e.name,async execute(t,n){let r=AA.get(e.name);return r||(r=await Zn.runTrustedAsync(()=>e.load()),AA.set(e.name,r)),n.coverage,r.execute(t,n)}}}function MA(){return EA.map(e=>e.name)}function NA(){return kA.map(e=>e.name)}function PA(e){return(e?EA.filter(t=>e.includes(t.name)):EA).map(jA)}function FA(){return kA.map(jA)}function IA(){return DA.map(jA)}function LA(){return OA.map(jA)}function RA(e){return`load`in e&&typeof e.load==`function`}function zA(e,t){return{name:e,trusted:!0,execute:t}}function BA(e){let t=null;return{name:e.name,trusted:!0,async execute(n,r){return t||=await e.load(),t.execute(n,r)}}}w(),w(),JC();function VA(e){if(!e||e===`/`)return`/`;let t=e.endsWith(`/`)&&e!==`/`?e.slice(0,-1):e;t.startsWith(`/`)||(t=`/${t}`);let n=t.split(`/`).filter(e=>e&&e!==`.`),r=[];for(let e of n)e===`..`?r.pop():r.push(e);return`/${r.join(`/`)}`||`/`}function HA(e,t){if(e.includes(`\0`))throw Error(`ENOENT: path contains null byte, ${t} '${e}'`)}function UA(e){let t=VA(e);if(t===`/`)return`/`;let n=t.lastIndexOf(`/`);return n===0?`/`:t.slice(0,n)}function WA(e,t){return t.startsWith(`/`)?VA(t):VA(e===`/`?`/${t}`:`${e}/${t}`)}function GA(e,t){return e===`/`?`/${t}`:`${e}/${t}`}function KA(e,t){return t.startsWith(`/`)?VA(t):VA(GA(UA(e),t))}var qA=new TextEncoder;function JA(e){return typeof e==`object`&&!!e&&!(e instanceof Uint8Array)&&`content`in e}var YA=class{data=new Map;constructor(e){if(this.data.set(`/`,{type:`directory`,mode:493,mtime:new Date}),e)for(let[t,n]of Object.entries(e))typeof n==`function`?this.writeFileLazy(t,n):JA(n)?this.writeFileSync(t,n.content,void 0,{mode:n.mode,mtime:n.mtime}):this.writeFileSync(t,n)}ensureParentDirs(e){let t=UA(e);t!==`/`&&(this.data.has(t)||(this.ensureParentDirs(t),this.data.set(t,{type:`directory`,mode:493,mtime:new Date})))}writeFileSync(e,t,n,r){HA(e,`write`);let i=VA(e);this.ensureParentDirs(i);let a=UC(t,GC(n));this.data.set(i,{type:`file`,content:a,mode:r?.mode??420,mtime:r?.mtime??new Date})}writeFileLazy(e,t,n){HA(e,`write`);let r=VA(e);this.ensureParentDirs(r),this.data.set(r,{type:`file`,lazy:t,mode:n?.mode??420,mtime:n?.mtime??new Date})}async materializeLazy(e,t){let n=await t.lazy(),r={type:`file`,content:typeof n==`string`?qA.encode(n):n,mode:t.mode,mtime:t.mtime};return this.data.set(e,r),r}async readFile(e,t){return WC(await this.readFileBuffer(e),GC(t))}async readFileBytes(e){return WC(await this.readFileBuffer(e),`binary`)}async readFileBuffer(e){HA(e,`open`);let t=this.resolvePathWithSymlinks(e),n=this.data.get(t);if(!n)throw Error(`ENOENT: no such file or directory, open '${e}'`);if(n.type!==`file`)throw Error(`EISDIR: illegal operation on a directory, read '${e}'`);if(`lazy`in n){let e=await this.materializeLazy(t,n);return e.content instanceof Uint8Array?e.content:qA.encode(e.content)}return n.content instanceof Uint8Array?n.content:qA.encode(n.content)}async writeFile(e,t,n){this.writeFileSync(e,t,n)}async appendFile(e,t,n){HA(e,`append`);let r=VA(e),i=this.data.get(r);if(i&&i.type===`directory`)throw Error(`EISDIR: illegal operation on a directory, write '${e}'`);let a=UC(t,GC(n));if(i?.type===`file`){let e=i;`lazy`in e&&(e=await this.materializeLazy(r,e));let t=`content`in e&&e.content instanceof Uint8Array?e.content:qA.encode(`content`in e?e.content:``),n=new Uint8Array(t.length+a.length);n.set(t),n.set(a,t.length),this.data.set(r,{type:`file`,content:n,mode:e.mode,mtime:new Date})}else this.writeFileSync(e,t,n)}async exists(e){if(e.includes(`\0`))return!1;try{let t=this.resolvePathWithSymlinks(e);return this.data.has(t)}catch{return!1}}async stat(e){HA(e,`stat`);let t=this.resolvePathWithSymlinks(e),n=this.data.get(t);if(!n)throw Error(`ENOENT: no such file or directory, stat '${e}'`);n.type===`file`&&`lazy`in n&&(n=await this.materializeLazy(t,n));let r=0;return n.type===`file`&&`content`in n&&n.content&&(r=n.content instanceof Uint8Array?n.content.length:qA.encode(n.content).length),{isFile:n.type===`file`,isDirectory:n.type===`directory`,isSymbolicLink:!1,mode:n.mode,size:r,mtime:n.mtime||new Date}}async lstat(e){HA(e,`lstat`);let t=this.resolveIntermediateSymlinks(e),n=this.data.get(t);if(!n)throw Error(`ENOENT: no such file or directory, lstat '${e}'`);if(n.type===`symlink`)return{isFile:!1,isDirectory:!1,isSymbolicLink:!0,mode:n.mode,size:n.target.length,mtime:n.mtime||new Date};n.type===`file`&&`lazy`in n&&(n=await this.materializeLazy(t,n));let r=0;return n.type===`file`&&`content`in n&&n.content&&(r=n.content instanceof Uint8Array?n.content.length:qA.encode(n.content).length),{isFile:n.type===`file`,isDirectory:n.type===`directory`,isSymbolicLink:!1,mode:n.mode,size:r,mtime:n.mtime||new Date}}resolveIntermediateSymlinks(e){let t=VA(e);if(t===`/`)return`/`;let n=t.slice(1).split(`/`);if(n.length<=1)return t;let r=``,i=new Set;for(let t=0;t<n.length-1;t++){let a=n[t];r=`${r}/${a}`;let o=this.data.get(r),s=0;for(;o&&o.type===`symlink`&&s<40;){if(i.has(r))throw Error(`ELOOP: too many levels of symbolic links, lstat '${e}'`);i.add(r),r=KA(r,o.target),o=this.data.get(r),s++}if(s>=40)throw Error(`ELOOP: too many levels of symbolic links, lstat '${e}'`)}return`${r}/${n[n.length-1]}`}resolvePathWithSymlinks(e){let t=VA(e);if(t===`/`)return`/`;let n=t.slice(1).split(`/`),r=``,i=new Set;for(let t of n){r=`${r}/${t}`;let n=this.data.get(r),a=0;for(;n&&n.type===`symlink`&&a<40;){if(i.has(r))throw Error(`ELOOP: too many levels of symbolic links, open '${e}'`);i.add(r),r=KA(r,n.target),n=this.data.get(r),a++}if(a>=40)throw Error(`ELOOP: too many levels of symbolic links, open '${e}'`)}return r}async mkdir(e,t){this.mkdirSync(e,t)}mkdirSync(e,t){HA(e,`mkdir`);let n=VA(e);if(this.data.has(n)){if(this.data.get(n)?.type===`file`)throw Error(`EEXIST: file already exists, mkdir '${e}'`);if(!t?.recursive)throw Error(`EEXIST: directory already exists, mkdir '${e}'`);return}let r=UA(n);if(r!==`/`&&!this.data.has(r))if(t?.recursive)this.mkdirSync(r,{recursive:!0});else throw Error(`ENOENT: no such file or directory, mkdir '${e}'`);this.data.set(n,{type:`directory`,mode:493,mtime:new Date})}async readdir(e){return(await this.readdirWithFileTypes(e)).map(e=>e.name)}async readdirWithFileTypes(e){HA(e,`scandir`);let t=VA(e),n=this.data.get(t);if(!n)throw Error(`ENOENT: no such file or directory, scandir '${e}'`);let r=new Set;for(;n&&n.type===`symlink`;){if(r.has(t))throw Error(`ELOOP: too many levels of symbolic links, scandir '${e}'`);r.add(t),t=KA(t,n.target),n=this.data.get(t)}if(!n)throw Error(`ENOENT: no such file or directory, scandir '${e}'`);if(n.type!==`directory`)throw Error(`ENOTDIR: not a directory, scandir '${e}'`);let i=t===`/`?`/`:`${t}/`,a=new Map;for(let[e,n]of this.data.entries())if(e!==t&&e.startsWith(i)){let t=e.slice(i.length),r=t.split(`/`)[0];r&&!t.includes(`/`,r.length)&&!a.has(r)&&a.set(r,{name:r,isFile:n.type===`file`,isDirectory:n.type===`directory`,isSymbolicLink:n.type===`symlink`})}return Array.from(a.values()).sort((e,t)=>e.name<t.name?-1:+(e.name>t.name))}async rm(e,t){HA(e,`rm`);let n=VA(e),r=this.data.get(n);if(!r){if(t?.force)return;throw Error(`ENOENT: no such file or directory, rm '${e}'`)}if(r.type===`directory`){let r=await this.readdir(n);if(r.length>0){if(!t?.recursive)throw Error(`ENOTEMPTY: directory not empty, rm '${e}'`);for(let e of r){let r=GA(n,e);await this.rm(r,t)}}}this.data.delete(n)}async cp(e,t,n){HA(e,`cp`),HA(t,`cp`);let r=VA(e),i=VA(t),a=this.data.get(r);if(!a)throw Error(`ENOENT: no such file or directory, cp '${e}'`);if(a.type===`file`)if(this.ensureParentDirs(i),`content`in a){let e=a.content instanceof Uint8Array?new Uint8Array(a.content):a.content;this.data.set(i,{...a,content:e})}else this.data.set(i,{...a});else if(a.type===`symlink`)this.ensureParentDirs(i),this.data.set(i,{...a});else if(a.type===`directory`){if(!n?.recursive)throw Error(`EISDIR: is a directory, cp '${e}'`);await this.mkdir(i,{recursive:!0});let t=await this.readdir(r);for(let e of t){let t=GA(r,e),a=GA(i,e);await this.cp(t,a,n)}}}async mv(e,t){await this.cp(e,t,{recursive:!0}),await this.rm(e,{recursive:!0})}getAllPaths(){return Array.from(this.data.keys())}resolvePath(e,t){return WA(e,t)}async chmod(e,t){HA(e,`chmod`);let n=VA(e),r=this.data.get(n);if(!r)throw Error(`ENOENT: no such file or directory, chmod '${e}'`);r.mode=t}async symlink(e,t){HA(t,`symlink`);let n=VA(t);if(this.data.has(n))throw Error(`EEXIST: file already exists, symlink '${t}'`);this.ensureParentDirs(n),this.data.set(n,{type:`symlink`,target:e,mode:511,mtime:new Date})}async link(e,t){HA(e,`link`),HA(t,`link`);let n=VA(e),r=VA(t),i=this.data.get(n);if(!i)throw Error(`ENOENT: no such file or directory, link '${e}'`);if(i.type!==`file`)throw Error(`EPERM: operation not permitted, link '${e}'`);if(this.data.has(r))throw Error(`EEXIST: file already exists, link '${t}'`);let a=i;`lazy`in a&&(a=await this.materializeLazy(n,a)),this.ensureParentDirs(r),this.data.set(r,{type:`file`,content:a.content,mode:a.mode,mtime:a.mtime})}async readlink(e){HA(e,`readlink`);let t=VA(e),n=this.data.get(t);if(!n)throw Error(`ENOENT: no such file or directory, readlink '${e}'`);if(n.type!==`symlink`)throw Error(`EINVAL: invalid argument, readlink '${e}'`);return n.target}async realpath(e){HA(e,`realpath`);let t=this.resolvePathWithSymlinks(e);if(!this.data.has(t))throw Error(`ENOENT: no such file or directory, realpath '${e}'`);return t}async utimes(e,t,n){HA(e,`utimes`);let r=VA(e),i=this.resolvePathWithSymlinks(r),a=this.data.get(i);if(!a)throw Error(`ENOENT: no such file or directory, utimes '${e}'`);a.mtime=n}};Sw();function XA(e){let t=e;return typeof t.mkdirSync==`function`&&typeof t.writeFileSync==`function`}function ZA(e,t){e.mkdirSync(`/bin`,{recursive:!0}),e.mkdirSync(`/usr/bin`,{recursive:!0}),t&&(e.mkdirSync(`/home/user`,{recursive:!0}),e.mkdirSync(`/tmp`,{recursive:!0}))}function QA(e){e.mkdirSync(`/dev`,{recursive:!0}),e.writeFileSync(`/dev/null`,``),e.writeFileSync(`/dev/zero`,new Uint8Array),e.writeFileSync(`/dev/stdin`,``),e.writeFileSync(`/dev/stdout`,``),e.writeFileSync(`/dev/stderr`,``)}function $A(e,t){e.mkdirSync(`/proc/self/fd`,{recursive:!0}),e.writeFileSync(`/proc/version`,`${xw}
876
+ `),e.writeFileSync(`/proc/self/exe`,`/bin/bash`),e.writeFileSync(`/proc/self/cmdline`,`bash\0`),e.writeFileSync(`/proc/self/comm`,`bash
877
+ `),e.writeFileLazy?e.writeFileLazy(`/proc/self/status`,()=>yw(t)):e.writeFileSync(`/proc/self/status`,yw(t)),e.writeFileSync(`/proc/self/fd/0`,`/dev/stdin`),e.writeFileSync(`/proc/self/fd/1`,`/dev/stdout`),e.writeFileSync(`/proc/self/fd/2`,`/dev/stderr`)}function ej(e,t,n={pid:1,ppid:0,uid:1e3,gid:1e3}){XA(e)&&(ZA(e,t),QA(e),$A(e,n))}Vi(),cu(),A();var tj=[`allexport`,`errexit`,`noglob`,`noclobber`,`noexec`,`nounset`,`pipefail`,`posix`,`verbose`,`xtrace`],nj=[`braceexpand`,`hashall`,`interactive-comments`];function rj(e){let t=[],n=[...nj.map(e=>({name:e,enabled:!0})),...tj.map(t=>({name:t,enabled:e[t]}))].sort((e,t)=>e.name.localeCompare(t.name));for(let e of n)e.enabled&&t.push(e.name);return t.join(`:`)}function ij(e){e.state.env.set(`SHELLOPTS`,rj(e.state.options))}var aj=[`dotglob`,`expand_aliases`,`extglob`,`failglob`,`globskipdots`,`globstar`,`lastpipe`,`nocaseglob`,`nocasematch`,`nullglob`,`xpg_echo`];function oj(e){let t=[];for(let n of aj)e[n]&&t.push(n);return t.join(`:`)}function sj(e){e.state.env.set(`BASHOPTS`,oj(e.state.shoptOptions))}w(),cu(),Xw(),Qn(),OE(),Xw();var cj=`BASH_ALIAS_`;function lj(e){return e.parts.length===1&&e.parts[0].type===`Literal`}function uj(e){if(e.parts.length!==1)return null;let t=e.parts[0];return t.type===`Literal`?t.value:null}function dj(e,t){return e.env.get(`${cj}${t}`)}function fj(e,t,n){if(!t.name||!lj(t.name))return t;let r=uj(t.name);if(!r)return t;let i=dj(e,r);if(!i||n.has(r))return t;try{n.add(r);let a=new DE,o=i,s=i.endsWith(` `);if(!s)for(let e of t.args){let t=mj(e);o+=` ${t}`}let c;try{c=a.parse(o)}catch(e){if(e instanceof Yw)throw e;return t}if(c.statements.length!==1||c.statements[0].pipelines.length!==1||c.statements[0].pipelines[0].commands.length!==1)return pj(t,i);let l=c.statements[0].pipelines[0].commands[0];if(l.type!==`SimpleCommand`)return pj(t,i);let u={...l,assignments:[...t.assignments,...l.assignments],redirections:[...l.redirections,...t.redirections],line:t.line};if(s&&t.args.length>0&&(u={...u,args:[...u.args,...t.args]},u.args.length>0)){let t=u.args[0];if(lj(t)){let r=uj(t);if(r&&dj(e,r)){let r={type:`SimpleCommand`,name:t,args:u.args.slice(1),assignments:[],redirections:[]},i=fj(e,r,n);i!==r&&(u={...u,name:i.name,args:[...i.args]})}}}return u}catch(e){throw n.delete(r),e}}function pj(e,t){let n=t;for(let t of e.args){let e=mj(t);n+=` ${e}`}let r=new DE;return{type:`SimpleCommand`,name:r.parseWordFromString(`eval`,!1,!1),args:[r.parseWordFromString(`'${n.replace(/'/g,`'\\''`)}'`,!1,!1)],assignments:e.assignments,redirections:e.redirections,line:e.line}}function mj(e){let t=``;for(let n of e.parts)switch(n.type){case`Literal`:t+=n.value.replace(/([\s"'$`\\*?[\]{}()<>|&;#!])/g,`\\$1`);break;case`SingleQuoted`:t+=`'${n.value}'`;break;case`DoubleQuoted`:t+=`"${n.parts.map(e=>e.type===`Literal`?e.value:`$${e.type}`).join(``)}"`;break;case`ParameterExpansion`:t+=`\${${n.parameter}}`;break;case`CommandSubstitution`:t+=`$(...)`;break;case`ArithmeticExpansion`:t+=`$((${n.expression}))`;break;case`Glob`:t+=n.pattern;break;default:break}return t}CA(),pA(),ZE();async function hj(e,t){let n=t.parts.map(e=>e.type===`Literal`?e.value:`\0`).join(``),r=n.match(/^([a-zA-Z_][a-zA-Z0-9_]*)=\(/);if(!r||!n.endsWith(`)`))return null;let i=r[1],a=[],o=!1,s=``,c=!1;for(let n of t.parts)if(n.type===`Literal`){let e=n.value;if(!o){let t=e.indexOf(`=(`);t!==-1&&(o=!0,e=e.slice(t+2))}if(o){e.endsWith(`)`)&&(e=e.slice(0,-1));let t=e.split(/(\s+)/);for(let e of t)/^\s+$/.test(e)?(s||c)&&(a.push(s),s=``,c=!1):e&&(s+=e)}}else if(o)if(n.type===`BraceExpansion`)if(/^\[.+\]=/.test(s))s+=XE({type:`Word`,parts:[n]});else{(s||c)&&(a.push(s),s=``,c=!1);let t=await aA(e,{type:`Word`,parts:[n]});a.push(...t.values)}else{(n.type===`SingleQuoted`||n.type===`DoubleQuoted`||n.type===`Escaped`)&&(c=!0);let t=await X(e,{type:`Word`,parts:[n]});s+=t}return(s||c)&&a.push(s),`${i}=(${a.map(e=>/^\[.+\]=/.test(e)?e:e===``?`''`:/[\s"'\\$`!*?[\]{}|&;<>()]/.test(e)&&!e.startsWith(`'`)&&!e.startsWith(`"`)?`'${e.replace(/'/g,`'\\''`)}'`:e).join(` `)})`}async function gj(e,t){let n=-1,r=-1,i=!1;for(let e=0;e<t.parts.length;e++){let a=t.parts[e];if(a.type===`Literal`){let t=a.value.indexOf(`+=`);if(t!==-1){let o=a.value.slice(0,t);if(/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(o)){n=e,r=t,i=!0;break}if(/^[a-zA-Z_][a-zA-Z0-9_]*\[[^\]]+\]$/.test(o)){n=e,r=t,i=!0;break}}let o=a.value.indexOf(`=`);if(o!==-1&&(o===0||a.value[o-1]!==`+`)){let t=a.value.slice(0,o);if(/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(t)||/^[a-zA-Z_][a-zA-Z0-9_]*\[[^\]]+\]$/.test(t)){n=e,r=o;break}}}}if(n===-1)return null;let a=t.parts.slice(0,n),o=t.parts[n];if(o.type!==`Literal`)return null;let s=i?2:1,c=o.value.slice(0,r),l=o.value.slice(r+s),u=t.parts.slice(n+1),d=``;for(let t of a)d+=await X(e,{type:`Word`,parts:[t]});d+=c;let f={type:`Word`,parts:l===``?u:[{type:`Literal`,value:l},...u]},p=f.parts.length>0?await X(e,f):``;return`${d}${i?`+=`:`=`}${p}`}var _j=[`tar`,`yq`,`xan`,`sqlite3`,`python3`,`python`];function vj(e){return _j.includes(e)}w(),Vi(),wl(),Qn(),A(),A();var yj=Object.freeze({stdout:``,stderr:``,exitCode:0});function bj(e=``){return{stdout:e,stderr:``,exitCode:0}}function Q(e,t=1){return{stdout:``,stderr:e,exitCode:t}}function $(e,t,n){return{stdout:e,stderr:t,exitCode:n}}function xj(e){return{stdout:``,stderr:``,exitCode:+!e}}function Sj(e,t,n=``,r=``){throw new k(e,t,n,r)}function Cj(e){let t=e.state.fileDescriptors;if(t&&t.size>=e.limits.maxFileDescriptors)throw new k(`too many open file descriptors (max ${e.limits.maxFileDescriptors})`,`file_descriptors`)}function wj(e,t){if(e.state.loopDepth===0){if(e.state.parentHasLoopContext)throw new Kr;return yj}if(t.length>1)throw new Br(1,``,`bash: break: too many arguments
878
+ `);let n=1;if(t.length>0){let e=Number.parseInt(t[0],10);if(Number.isNaN(e)||e<1)throw new Br(128,``,`bash: break: ${t[0]}: numeric argument required
879
+ `);n=e}throw new Fr(n)}async function Tj(e,t){let n,r=!1,i=!1,a=0;for(;a<t.length;)if(t[a]===`--`){a++;break}else if(t[a]===`-L`)i=!1,a++;else if(t[a]===`-P`)i=!0,a++;else if(t[a].startsWith(`-`)&&t[a]!==`-`)a++;else break;let o=t.slice(a);if(o.length===0||o[0]===`~`?n=e.state.env.get(`HOME`)||`/`:o[0]===`-`?(n=e.state.previousDir,r=!0):n=o[0],!n.startsWith(`/`)&&!n.startsWith(`./`)&&!n.startsWith(`../`)&&n!==`.`&&n!==`..`){let t=e.state.env.get(`CDPATH`);if(t){let i=t.split(`:`).filter(e=>e);for(let t of i){let i=t.startsWith(`/`)?`${t}/${n}`:`${e.state.cwd}/${t}/${n}`;try{if((await e.fs.stat(i)).isDirectory){n=i,r=!0;break}}catch{}}}}let s=(n.startsWith(`/`)?n:`${e.state.cwd}/${n}`).split(`/`).filter(e=>e&&e!==`.`),c=``;for(let t of s)if(t===`..`)c=c.split(`/`).slice(0,-1).join(`/`)||`/`;else{c=c?`${c}/${t}`:`/${t}`;try{if(!(await e.fs.stat(c)).isDirectory)return Q(`bash: cd: ${n}: Not a directory
880
+ `)}catch{return Q(`bash: cd: ${n}: No such file or directory
881
+ `)}}let l=c||`/`;if(i)try{l=await e.fs.realpath(l)}catch{}return e.state.previousDir=e.state.cwd,e.state.cwd=l,e.state.env.set(`PWD`,e.state.cwd),e.state.env.set(`OLDPWD`,e.state.previousDir),bj(r?`${l}
882
+ `:``)}OE(),ET(),OE(),ks(),CA(),pA(),ZE();function Ej(e,t){return e.fs.resolvePath(e.state.cwd,t)}var Dj=[`-e`,`-a`,`-f`,`-d`,`-r`,`-w`,`-x`,`-s`,`-L`,`-h`,`-k`,`-g`,`-u`,`-G`,`-O`,`-b`,`-c`,`-p`,`-S`,`-t`,`-N`];function Oj(e){return Dj.includes(e)}async function kj(e,t,n){let r=Ej(e,n);switch(t){case`-e`:case`-a`:return e.fs.exists(r);case`-f`:return await e.fs.exists(r)?(await e.fs.stat(r)).isFile:!1;case`-d`:return await e.fs.exists(r)?(await e.fs.stat(r)).isDirectory:!1;case`-r`:return await e.fs.exists(r)?((await e.fs.stat(r)).mode&256)!=0:!1;case`-w`:return await e.fs.exists(r)?((await e.fs.stat(r)).mode&128)!=0:!1;case`-x`:return await e.fs.exists(r)?((await e.fs.stat(r)).mode&64)!=0:!1;case`-s`:return await e.fs.exists(r)?(await e.fs.stat(r)).size>0:!1;case`-L`:case`-h`:try{return(await e.fs.lstat(r)).isSymbolicLink}catch{return!1}case`-k`:return await e.fs.exists(r)?((await e.fs.stat(r)).mode&512)!=0:!1;case`-g`:return await e.fs.exists(r)?((await e.fs.stat(r)).mode&1024)!=0:!1;case`-u`:return await e.fs.exists(r)?((await e.fs.stat(r)).mode&2048)!=0:!1;case`-G`:case`-O`:return e.fs.exists(r);case`-b`:return!1;case`-c`:return[`/dev/null`,`/dev/zero`,`/dev/random`,`/dev/urandom`,`/dev/tty`,`/dev/stdin`,`/dev/stdout`,`/dev/stderr`].includes(r);case`-p`:return!1;case`-S`:return!1;case`-t`:return!1;case`-N`:return e.fs.exists(r);default:return!1}}var Aj=[`-nt`,`-ot`,`-ef`];function jj(e){return Aj.includes(e)}async function Mj(e,t,n,r){let i=Ej(e,n),a=Ej(e,r);switch(t){case`-nt`:try{let t=await e.fs.stat(i),n=await e.fs.stat(a);return t.mtime>n.mtime}catch{return!1}case`-ot`:try{let t=await e.fs.stat(i),n=await e.fs.stat(a);return t.mtime<n.mtime}catch{return!1}case`-ef`:try{return!await e.fs.exists(i)||!await e.fs.exists(a)?!1:e.fs.resolvePath(e.state.cwd,i)===e.fs.resolvePath(e.state.cwd,a)}catch{return!1}default:return!1}}var Nj=new Set([`-eq`,`-ne`,`-lt`,`-le`,`-gt`,`-ge`]);function Pj(e){return Nj.has(e)}function Fj(e,t,n){switch(e){case`-eq`:return t===n;case`-ne`:return t!==n;case`-lt`:return t<n;case`-le`:return t<=n;case`-gt`:return t>n;case`-ge`:return t>=n}}function Ij(e){return e===`=`||e===`==`||e===`!=`}function Lj(e,t,n,r=!1,i=!1,a=!1){if(r){let r=Yj(t,n,i,a);return e===`!=`?!r:r}if(i){let r=t.toLowerCase()===n.toLowerCase();return e===`!=`?!r:r}let o=t===n;return e===`!=`?!o:o}var Rj=new Set([`-z`,`-n`]);function zj(e){return Rj.has(e)}function Bj(e,t){switch(e){case`-z`:return t===``;case`-n`:return t!==``}}ET(),OE(),CA(),ZE();async function Vj(e,t){let n=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(n){let t=n[1],r=n[2];if(e.state.associativeArrays?.has(t)){let n=r;return(n.startsWith(`'`)&&n.endsWith(`'`)||n.startsWith(`"`)&&n.endsWith(`"`))&&(n=n.slice(1,-1)),n=n.replace(/\$([a-zA-Z_][a-zA-Z0-9_]*)/g,(t,n)=>e.state.env.get(n)||``),e.state.env.has(`${t}_${n}`)}let i;try{i=await Z(e,aT(new DE,r).expression)}catch{if(/^-?\d+$/.test(r))i=Number.parseInt(r,10);else{let t=e.state.env.get(r);i=t?Number.parseInt(t,10):0}}if(i<0){let n=WE(e,t),r=e.state.currentLine;if(n.length===0||(i=Math.max(...n)+1+i,i<0))return e.state.expansionStderr=(e.state.expansionStderr||``)+`bash: line ${r}: ${t}: bad array subscript
883
+ `,!1}return e.state.env.has(`${t}_${i}`)}return e.state.env.has(t)?!0:e.state.associativeArrays?.has(t)?KE(e,t).length>0:WE(e,t).length>0}async function Hj(e,t){switch(t.type){case`CondBinary`:{let n=await X(e,t.left),r=t.right.parts.length>0&&t.right.parts.every(e=>e.type===`SingleQuoted`||e.type===`DoubleQuoted`||e.type===`Escaped`&&t.operator!==`=~`),i;if(i=t.operator===`=~`?r?BD(await X(e,t.right)):await Qk(e,t.right):Ij(t.operator)&&!r?await $k(e,t.right):await X(e,t.right),Ij(t.operator)){let a=e.state.shoptOptions.nocasematch;return Lj(t.operator,n,i,!r,a,!0)}if(Pj(t.operator))return Fj(t.operator,await tM(e,n),await tM(e,i));if(jj(t.operator))return Mj(e,t.operator,n,i);switch(t.operator){case`=~`:try{let t=e.state.shoptOptions.nocasematch,r=z(aM(i),t?`i`:``).match(n);if(GE(e,`BASH_REMATCH`),r)for(let t=0;t<r.length;t++)e.state.env.set(`BASH_REMATCH_${t}`,r[t]||``);return r!==null}catch{throw Error(`syntax error in regular expression`)}case`<`:return n<i;case`>`:return n>i;default:return!1}}case`CondUnary`:{let n=await X(e,t.operand);return Oj(t.operator)?kj(e,t.operator,n):zj(t.operator)?Bj(t.operator,n):t.operator===`-v`?await Vj(e,n):t.operator===`-o`&&eM(e,n)}case`CondNot`:return e.state.shoptOptions.extglob&&t.operand.type===`CondGroup`&&t.operand.expression.type===`CondWord`?`!(${await X(e,t.operand.expression.word)})`!=``:!await Hj(e,t.operand);case`CondAnd`:return await Hj(e,t.left)?await Hj(e,t.right):!1;case`CondOr`:return await Hj(e,t.left)?!0:await Hj(e,t.right);case`CondGroup`:return await Hj(e,t.expression);case`CondWord`:return await X(e,t.word)!==``;default:return!1}}async function Uj(e,t){if(t.length===0)return $(``,``,1);if(t.length===1)return xj(!!t[0]);if(t.length===2){let n=t[0],r=t[1];return n===`(`?Q(`test: '(' without matching ')'
884
+ `,2):Oj(n)?xj(await kj(e,n,r)):zj(n)?xj(Bj(n,r)):n===`!`?xj(!r):n===`-v`?xj(await Vj(e,r)):n===`-o`?xj(eM(e,r)):n===`=`||n===`==`||n===`!=`||n===`<`||n===`>`||n===`-eq`||n===`-ne`||n===`-lt`||n===`-le`||n===`-gt`||n===`-ge`||n===`-nt`||n===`-ot`||n===`-ef`?Q(`test: ${n}: unary operator expected
885
+ `,2):$(``,``,1)}if(t.length===3){let n=t[0],r=t[1],i=t[2];if(Ij(r))return xj(Lj(r,n,i));if(Pj(r)){let e=iM(n),t=iM(i);return!e.valid||!t.valid?$(``,``,2):xj(Fj(r,e.value,t.value))}if(jj(r))return xj(await Mj(e,r,n,i));switch(r){case`-a`:return xj(n!==``&&i!==``);case`-o`:return xj(n!==``||i!==``);case`>`:return xj(n>i);case`<`:return xj(n<i)}if(n===`!`){let t=await Uj(e,[r,i]);return $(``,t.stderr,t.exitCode===0?1:t.exitCode===1?0:t.exitCode)}if(n===`(`&&i===`)`)return xj(r!==``)}if(t.length===4){if(t[0]===`!`){let n=await Uj(e,t.slice(1));return $(``,n.stderr,n.exitCode===0?1:n.exitCode===1?0:n.exitCode)}if(t[0]===`(`&&t[3]===`)`)return Uj(e,[t[1],t[2]])}let n=await Wj(e,t,0);return n.pos<t.length?Q(`test: too many arguments
886
+ `,2):xj(n.value)}async function Wj(e,t,n){return Gj(e,t,n)}async function Gj(e,t,n){let{value:r,pos:i}=await Kj(e,t,n);for(;t[i]===`-o`;){let n=await Kj(e,t,i+1);r||=n.value,i=n.pos}return{value:r,pos:i}}async function Kj(e,t,n){let{value:r,pos:i}=await qj(e,t,n);for(;t[i]===`-a`;){let n=await qj(e,t,i+1);r&&=n.value,i=n.pos}return{value:r,pos:i}}async function qj(e,t,n){if(t[n]===`!`){let{value:r,pos:i}=await qj(e,t,n+1);return{value:!r,pos:i}}return Jj(e,t,n)}async function Jj(e,t,n){let r=t[n];if(r===`(`){let{value:r,pos:i}=await Wj(e,t,n+1);return{value:r,pos:t[i]===`)`?i+1:i}}let i=t[n+1];if(Ij(i))return{value:Lj(i,r,t[n+2]??``),pos:n+3};if(Pj(i)){let e=iM(r),a=iM(t[n+2]??`0`);return!e.valid||!a.valid?{value:!1,pos:n+3}:{value:Fj(i,e.value,a.value),pos:n+3}}return jj(i)?{value:await Mj(e,i,r,t[n+2]??``),pos:n+3}:Oj(r)?{value:await kj(e,r,t[n+1]??``),pos:n+2}:zj(r)?{value:Bj(r,t[n+1]??``),pos:n+2}:r===`-v`?{value:await Vj(e,t[n+1]??``),pos:n+2}:r===`-o`?{value:eM(e,t[n+1]??``),pos:n+2}:{value:r!==void 0&&r!==``,pos:n+1}}function Yj(e,t,n=!1,r=!1){return z(`^${Xj(t,r)}$`,n?`is`:`s`).test(e)}function Xj(e,t){let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(t&&(i===`@`||i===`*`||i===`+`||i===`?`||i===`!`)&&r+1<e.length&&e[r+1]===`(`){let a=Zj(e,r+1);if(a!==-1){let o=Qj(e.slice(r+2,a)),s=o.map(e=>Xj(e,t)),c=s.length>0?s.join(`|`):`(?:)`;if(i===`@`)n+=`(?:${c})`;else if(i===`*`)n+=`(?:${c})*`;else if(i===`+`)n+=`(?:${c})+`;else if(i===`?`)n+=`(?:${c})?`;else if(i===`!`)if(a<e.length-1){let e=o.map(e=>$j(e,t));if(e.every(e=>e!==null)&&e.every(t=>t===e[0])&&e[0]!==null){let t=e[0];if(t===0)n+=`(?:.+)`;else{let e=[];t>0&&e.push(`.{0,${t-1}}`),e.push(`.{${t+1},}`),e.push(`(?!(?:${c})).{${t}}`),n+=`(?:${e.join(`|`)})`}}else n+=`(?:(?!(?:${c})).)*?`}else n+=`(?!(?:${c})$).*`;r=a;continue}}if(i===`\\`)if(r+1<e.length){let t=e[r+1];/[\\^$.|+(){}[\]*?]/.test(t)?n+=`\\${t}`:n+=t,r++}else n+=`\\\\`;else if(i===`*`)n+=`.*`;else if(i===`?`)n+=`.`;else if(i===`[`){let t=e.indexOf(`]`,r+1);t===-1?n+=`\\[`:(n+=e.slice(r,t+1),r=t)}else/[\\^$.|+(){}]/.test(i)?n+=`\\${i}`:n+=i}return n}function Zj(e,t){let n=1,r=t+1;for(;r<e.length&&n>0;){let t=e[r];if(t===`\\`){r+=2;continue}if(t===`(`)n++;else if(t===`)`&&(n--,n===0))return r;r++}return-1}function Qj(e){let t=[],n=``,r=0,i=0;for(;i<e.length;){let a=e[i];if(a===`\\`){n+=a,i+1<e.length?(n+=e[i+1],i+=2):i++;continue}a===`(`?(r++,n+=a):a===`)`?(r--,n+=a):a===`|`&&r===0?(t.push(n),n=``):n+=a,i++}return t.push(n),t}function $j(e,t){let n=0,r=0;for(;r<e.length;){let i=e[r];if(t&&(i===`@`||i===`*`||i===`+`||i===`?`||i===`!`)&&r+1<e.length&&e[r+1]===`(`){let a=Zj(e,r+1);if(a!==-1){if(i===`@`){let i=Qj(e.slice(r+2,a)).map(e=>$j(e,t));if(i.every(e=>e!==null)&&i.every(e=>e===i[0])){n+=i[0],r=a+1;continue}return null}return null}}if(i===`*`)return null;if(i===`?`){n+=1,r++;continue}if(i===`[`){let t=e.indexOf(`]`,r+1);if(t!==-1){n+=1,r=t+1;continue}n+=1,r++;continue}if(i===`\\`){n+=1,r+=2;continue}n+=1,r++}return n}function eM(e,t){let n=new Map([[`errexit`,()=>e.state.options.errexit===!0],[`nounset`,()=>e.state.options.nounset===!0],[`pipefail`,()=>e.state.options.pipefail===!0],[`xtrace`,()=>e.state.options.xtrace===!0],[`e`,()=>e.state.options.errexit===!0],[`u`,()=>e.state.options.nounset===!0],[`x`,()=>e.state.options.xtrace===!0]]).get(t);return n?n():!1}async function tM(e,t){if(t=t.trim(),t===``)return 0;if(/^[+-]?(\d+#[a-zA-Z0-9@_]+|0[xX][0-9a-fA-F]+|0[0-7]+|\d+)$/.test(t))return rM(t);try{return await Z(e,aT(new DE,t).expression)}catch{return rM(t)}}function nM(e,t){let n=0;for(let r of e){let e;if(r>=`0`&&r<=`9`)e=r.charCodeAt(0)-48;else if(r>=`a`&&r<=`z`)e=r.charCodeAt(0)-97+10;else if(r>=`A`&&r<=`Z`)e=r.charCodeAt(0)-65+36;else if(r===`@`)e=62;else if(r===`_`)e=63;else return NaN;if(e>=t)return NaN;n=n*t+e}return n}function rM(e){if(e=e.trim(),e===``)return 0;let t=!1;e.startsWith(`-`)?(t=!0,e=e.slice(1)):e.startsWith(`+`)&&(e=e.slice(1));let n,r=e.match(/^(\d+)#([a-zA-Z0-9@_]+)$/);if(r){let e=Number.parseInt(r[1],10);n=e>=2&&e<=64?nM(r[2],e):0}else n=/^0[xX][0-9a-fA-F]+$/.test(e)?Number.parseInt(e,16):/^0[0-7]+$/.test(e)?Number.parseInt(e,8):Number.parseInt(e,10);return Number.isNaN(n)&&(n=0),t?-n:n}function iM(e){if(e=e.trim(),e===``)return{value:0,valid:!0};let t=!1;if(e.startsWith(`-`)?(t=!0,e=e.slice(1)):e.startsWith(`+`)&&(e=e.slice(1)),!/^\d+$/.test(e))return{value:0,valid:!1};let n=Number.parseInt(e,10);return Number.isNaN(n)?{value:0,valid:!1}:{value:t?-n:n,valid:!0}}function aM(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`\\`&&n+1<e.length)t+=e[n]+e[n+1],n+=2;else if(e[n]===`[`){let r=oM(e,n);t+=r.converted,n=r.endIndex}else t+=e[n],n++;return t}function oM(e,t){let n=t+1,r=`[`;n<e.length&&(e[n]===`^`||e[n]===`!`)&&(r+=`^`,n++);let i=!1;n<e.length&&e[n]===`]`&&(i=!0,n++);let a=!1;n<e.length&&e[n]===`[`&&n+1<e.length&&e[n+1]!==`:`&&(a=!0,n++);let o=``,s=!1;for(;n<e.length;){let t=e[n];if(t===`]`){s=!0,n++;break}if(t===`[`&&n+1<e.length&&e[n+1]===`:`){let t=e.indexOf(`:]`,n+2);if(t!==-1){let r=e.slice(n+2,t);o+=sM(r),n=t+2;continue}}if(t===`[`&&n+1<e.length){let t=e[n+1];if(t===`.`||t===`=`){let r=`${t}]`,i=e.indexOf(r,n+2);if(i!==-1){let t=e.slice(n+2,i);o+=t,n=i+2;continue}}}if(t===`\\`&&n+1<e.length){o+=t+e[n+1],n+=2;continue}o+=t,n++}return s?(i&&(r+=`\\]`),a&&(r+=`\\[`),r+=o,r+=`]`,{converted:r,endIndex:n}):{converted:`\\[`,endIndex:t+1}}function sM(e){return new Map([[`alnum`,`a-zA-Z0-9`],[`alpha`,`a-zA-Z`],[`ascii`,`\\x00-\\x7F`],[`blank`,` \\t`],[`cntrl`,`\\x00-\\x1F\\x7F`],[`digit`,`0-9`],[`graph`,`!-~`],[`lower`,`a-z`],[`print`,` -~`],[`punct`,"!-/:-@\\[-`{-~"],[`space`,` \\t\\n\\r\\f\\v`],[`upper`,`A-Z`],[`word`,`a-zA-Z0-9_`],[`xdigit`,`0-9A-Fa-f`]]).get(e)??``}pA(),ET(),OE(),CA(),uO();function cM(e){let t=[],n=``,r=!1,i=!1,a=!1,o=!1;for(let s of e){if(a){n+=s,a=!1,o=!0;continue}if(s===`\\`){a=!0;continue}if(s===`'`&&!i){r||(o=!0),r=!r;continue}if(s===`"`&&!r){i||(o=!0),i=!i;continue}if((s===` `||s===` `||s===`
887
+ `)&&!r&&!i){o&&=(t.push(n),n=``,!1);continue}n+=s,o=!0}return o&&t.push(n),t}function lM(e){let t=[],n=0;for(;n<e.length;){for(;n<e.length&&/\s/.test(e[n]);)n++;if(n>=e.length)break;if(e[n]!==`[`){n++;continue}n++;let r=``;if(e[n]===`'`||e[n]===`"`){let t=e[n];for(n++;n<e.length&&e[n]!==t;)r+=e[n],n++;e[n]===t&&n++}else for(;n<e.length&&e[n]!==`]`&&e[n]!==`=`;)r+=e[n],n++;for(;n<e.length&&e[n]!==`]`;)n++;if(e[n]===`]`&&n++,e[n]!==`=`)continue;n++;let i=``;if(e[n]===`'`||e[n]===`"`){let t=e[n];for(n++;n<e.length&&e[n]!==t;)e[n]===`\\`&&n+1<e.length&&n++,i+=e[n],n++;e[n]===t&&n++}else for(;n<e.length&&!/\s/.test(e[n]);)i+=e[n],n++;t.push([r,i])}return t}function uM(e){let t=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)=\((.*)\)$/s);if(t)return{name:t[1],isArray:!0,arrayElements:cM(t[2])};let n=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([^\]]+)\]=(.*)$/s);if(n)return{name:n[1],isArray:!1,arrayIndex:n[2],value:n[3]};if(e.includes(`=`)){let t=e.indexOf(`=`);return{name:e.slice(0,t),isArray:!1,value:e.slice(t+1)}}return{name:e,isArray:!1}}async function dM(e,t){try{return await Z(e,aT(new DE,t).expression)}catch{let e=parseInt(t,10);return Number.isNaN(e)?0:e}}async function fM(e,t,n={}){let{name:r,isArray:i,arrayElements:a,value:o,arrayIndex:s}=t,{makeReadonly:c=!1,checkReadonly:l=!0}=n;if(l){let t=sO(e,r);if(t)return t}if(i&&a){for(let t=0;t<a.length;t++)e.state.env.set(`${r}_${t}`,a[t]);e.state.env.set(`${r}__length`,String(a.length))}else if(s!==void 0&&o!==void 0){let t=await dM(e,s);e.state.env.set(`${r}_${t}`,o),t>=parseInt(e.state.env.get(`${r}__length`)??`0`,10)&&e.state.env.set(`${r}__length`,String(t+1))}else o!==void 0&&e.state.env.set(r,o);return c&&aO(e,r),null}function pM(e,t){e.state.localVarDepth=e.state.localVarDepth||new Map,e.state.localVarDepth.set(t,e.state.callDepth)}function mM(e,t){return e.state.localVarDepth?.get(t)}function hM(e,t){e.state.localVarDepth?.delete(t)}function gM(e,t,n){e.state.localVarStack=e.state.localVarStack||new Map;let r=e.state.localVarStack.get(t)||[];r.push({value:n,scopeIndex:e.state.localScopes.length-1}),e.state.localVarStack.set(t,r)}function _M(e,t){let n=e.state.localVarStack?.get(t);if(!(!n||n.length===0))return n.pop()}function vM(e,t){if(e.state.localVarStack)for(let[n,r]of e.state.localVarStack.entries()){for(;r.length>0&&r[r.length-1].scopeIndex===t;)r.pop();r.length===0&&e.state.localVarStack.delete(n)}}A(),pA();var yM=new Set([`:`,`.`,`break`,`continue`,`eval`,`exec`,`exit`,`export`,`readonly`,`return`,`set`,`shift`,`trap`,`unset`]);function bM(e){return yM.has(e)}var xM=new Set([`if`,`then`,`else`,`elif`,`fi`,`case`,`esac`,`for`,`select`,`while`,`until`,`do`,`done`,`in`,`function`,`{`,`}`,`time`,`[[`,`]]`,`!`]),SM=new Set(`:,true,false,cd,export,unset,exit,local,set,break,continue,return,eval,shift,getopts,compgen,complete,compopt,pushd,popd,dirs,source,.,read,mapfile,readarray,declare,typeset,readonly,let,command,shopt,exec,test,[,echo,printf,pwd,alias,unalias,type,hash,ulimit,umask,trap,times,wait,kill,jobs,fg,bg,disown,suspend,fc,history,help,enable,builtin,caller`.split(`,`));pA();async function CM(e,t,n,r){try{if((await e.fs.stat(t)).isDirectory)return`bash: ${n}: Is a directory
888
+ `;if(r.checkNoclobber&&e.state.options.noclobber&&!r.isClobber&&n!==`/dev/null`)return`bash: ${n}: cannot overwrite existing file
889
+ `}catch{}return null}function wM(e){let t=Math.min(e.length,8192);for(let n=0;n<t;n++)if(e.charCodeAt(n)>127)return`utf8`;return`binary`}function TM(e){if(!e.startsWith(`__rw__:`))return null;let t=e.slice(7),n=t.indexOf(`:`);if(n===-1)return null;let r=Number.parseInt(t.slice(0,n),10);if(Number.isNaN(r)||r<0)return null;let i=n+1,a=t.slice(i,i+r),o=i+r+1,s=t.slice(o),c=s.indexOf(`:`);if(c===-1)return null;let l=Number.parseInt(s.slice(0,c),10);return Number.isNaN(l)||l<0?null:{path:a,position:l,content:s.slice(c+1)}}async function EM(e,t){let n=new Map;for(let r=0;r<t.length;r++){let i=t[r];if(i.target.type!==`HereDoc`)if(i.operator===`>&`||i.operator===`<&`){if(sA(e,i.target))return{targets:n,error:`bash: $@: ambiguous redirect
890
+ `};n.set(r,await X(e,i.target))}else{let t=await cA(e,i.target);if(`error`in t)return{targets:n,error:t.error};n.set(r,t.target)}}return{targets:n}}function DM(e){e.state.nextFd===void 0&&(e.state.nextFd=10);let t=e.state.nextFd,n=e.limits.maxFileDescriptors;if(t>=n)throw Error(`bash: cannot allocate file descriptor: too many open files (max ${n})`);return e.state.nextFd++,t}async function OM(e,t){for(let n of t){if(!n.fdVariable)continue;if(e.state.fileDescriptors||(e.state.fileDescriptors=new Map),(n.operator===`>&`||n.operator===`<&`)&&n.target.type===`Word`&&await X(e,n.target)===`-`){let t=e.state.env.get(n.fdVariable);if(t!==void 0){let n=Number.parseInt(t,10);Number.isNaN(n)||e.state.fileDescriptors.delete(n)}continue}let t=DM(e);if(e.state.env.set(n.fdVariable,String(t)),n.target.type===`Word`){let r=await X(e,n.target);if(n.operator===`>&`||n.operator===`<&`){let n=Number.parseInt(r,10);if(!Number.isNaN(n)){let r=e.state.fileDescriptors.get(n);r!==void 0&&(Cj(e),e.state.fileDescriptors.set(t,r));continue}}if(n.operator===`>`||n.operator===`>>`||n.operator===`>|`||n.operator===`&>`||n.operator===`&>>`){let i=e.fs.resolvePath(e.state.cwd,r);(n.operator===`>`||n.operator===`>|`||n.operator===`&>`)&&await e.fs.writeFile(i,``,`binary`),Cj(e),e.state.fileDescriptors.set(t,`__file__:${i}`)}else if(n.operator===`<<<`)Cj(e),e.state.fileDescriptors.set(t,`${r}
891
+ `);else if(n.operator===`<`||n.operator===`<>`)try{let n=e.fs.resolvePath(e.state.cwd,r),i=await e.fs.readFile(n);Cj(e),e.state.fileDescriptors.set(t,i)}catch{return $(``,`bash: ${r}: No such file or directory
892
+ `,1)}}}return null}async function kM(e,t){for(let n of t){if(n.target.type===`HereDoc`)continue;let t=n.operator===`>&`;if(n.operator!==`>`&&n.operator!==`>|`&&n.operator!==`&>`&&!t)continue;let r;if(t){if(r=await X(e,n.target),r===`-`||!Number.isNaN(Number.parseInt(r,10))||n.fd!=null)continue}else{let t=await cA(e,n.target);if(`error`in t)return $(``,t.error,1);r=t.target}let i=e.fs.resolvePath(e.state.cwd,r),a=n.operator===`>|`;if(i.includes(`\0`))return $(``,`bash: ${r}: No such file or directory
893
+ `,1);try{let t=await e.fs.stat(i);if(t.isDirectory)return $(``,`bash: ${r}: Is a directory
894
+ `,1);if(e.state.options.noclobber&&!a&&!t.isDirectory&&r!==`/dev/null`)return $(``,`bash: ${r}: cannot overwrite existing file
895
+ `,1)}catch{}if(r!==`/dev/null`&&r!==`/dev/stdout`&&r!==`/dev/stderr`&&r!==`/dev/full`&&await e.fs.writeFile(i,``,`binary`),r===`/dev/full`)return $(``,`bash: /dev/full: No space left on device
896
+ `,1)}return null}async function AM(e,t,n,r){let{stdout:i,stderr:a,exitCode:o}=t,s=t.stdoutKind===`bytes`||t.stdoutKind===void 0&&t.stdoutEncoding===`binary`?`binary`:`utf8`,c=e=>s;for(let t=0;t<n.length;t++){let s=n[t];if(s.target.type===`HereDoc`)continue;let l,u=r?.get(t);if(u!==void 0)l=u;else if(s.operator===`>&`||s.operator===`<&`){if(sA(e,s.target)){a+=`bash: $@: ambiguous redirect
897
+ `,o=1,i=``;continue}l=await X(e,s.target)}else{let t=await cA(e,s.target);if(`error`in t){a+=t.error,o=1,i=``;continue}l=t.target}if(!s.fdVariable){if(l.includes(`\0`)){a+=`bash: ${l.replace(/\0/g,``)}: No such file or directory
898
+ `,o=1,i=``;continue}switch(s.operator){case`>`:case`>|`:{let t=s.fd??1,n=s.operator===`>|`;if(t===1){if(l===`/dev/stdout`)break;if(l===`/dev/stderr`){a+=i,i=``;break}if(l===`/dev/full`){a+=`bash: echo: write error: No space left on device
899
+ `,o=1,i=``;break}let t=e.fs.resolvePath(e.state.cwd,l),r=await CM(e,t,l,{checkNoclobber:!0,isClobber:n});if(r){a+=r,o=1,i=``;break}await e.fs.writeFile(t,i,c(i)),i=``}else if(t===2){if(l===`/dev/stderr`)break;if(l===`/dev/stdout`){i+=a,a=``;break}if(l===`/dev/full`){a+=`bash: echo: write error: No space left on device
900
+ `,o=1;break}if(l===`/dev/null`)a=``;else{let t=e.fs.resolvePath(e.state.cwd,l),r=await CM(e,t,l,{checkNoclobber:!0,isClobber:n});if(r){a+=r,o=1;break}await e.fs.writeFile(t,a,wM(a)),a=``}}break}case`>>`:{let t=s.fd??1;if(t===1){if(l===`/dev/stdout`)break;if(l===`/dev/stderr`){a+=i,i=``;break}if(l===`/dev/full`){a+=`bash: echo: write error: No space left on device
901
+ `,o=1,i=``;break}let t=e.fs.resolvePath(e.state.cwd,l),n=await CM(e,t,l,{});if(n){a+=n,o=1,i=``;break}await e.fs.appendFile(t,i,c(i)),i=``}else if(t===2){if(l===`/dev/stderr`)break;if(l===`/dev/stdout`){i+=a,a=``;break}if(l===`/dev/full`){a+=`bash: echo: write error: No space left on device
902
+ `,o=1;break}let t=e.fs.resolvePath(e.state.cwd,l),n=await CM(e,t,l,{});if(n){a+=n,o=1;break}await e.fs.appendFile(t,a,wM(a)),a=``}break}case`>&`:case`<&`:{let t=s.fd??1;if(l===`-`)break;if(l.endsWith(`-`)){let n=l.slice(0,-1),r=Number.parseInt(n,10);if(!Number.isNaN(r)){let n=e.state.fileDescriptors?.get(r);n===void 0?r===1||r===2?(e.state.fileDescriptors||(e.state.fileDescriptors=new Map),e.state.fileDescriptors.set(t,`__dupout__:${r}`)):r===0?(e.state.fileDescriptors||(e.state.fileDescriptors=new Map),e.state.fileDescriptors.set(t,`__dupin__:${r}`)):r>=3&&(a+=`bash: ${r}: Bad file descriptor
903
+ `,o=1):(e.state.fileDescriptors||(e.state.fileDescriptors=new Map),e.state.fileDescriptors.set(t,n),r>=3&&e.state.fileDescriptors?.delete(r))}break}if(l===`2`||l===`&2`)t===1&&(a+=i,i=``);else if(l===`1`||l===`&1`)i+=a,a=``;else{let n=Number.parseInt(l,10);if(Number.isNaN(n)){if(s.operator===`>&`){let n=e.fs.resolvePath(e.state.cwd,l),r=await CM(e,n,l,{checkNoclobber:!0});if(r){a=r,o=1,i=``;break}if(s.fd==null){let t=i+a;await e.fs.writeFile(n,t,c(t)),i=``,a=``}else t===1?(await e.fs.writeFile(n,i,c(i)),i=``):t===2&&(await e.fs.writeFile(n,a,wM(a)),a=``)}}else{let r=e.state.fileDescriptors?.get(n);if(r?.startsWith(`__file__:`)){let n=r.slice(9);t===1?(await e.fs.appendFile(n,i,c(i)),i=``):t===2&&(await e.fs.appendFile(n,a,wM(a)),a=``)}else if(r?.startsWith(`__rw__:`)){let n=TM(r);n&&(t===1?(await e.fs.appendFile(n.path,i,c(i)),i=``):t===2&&(await e.fs.appendFile(n.path,a,wM(a)),a=``))}else if(r?.startsWith(`__dupout__:`)){let n=Number.parseInt(r.slice(11),10);if(n!==1)if(n===2)t===1&&(a+=i,i=``);else{let r=e.state.fileDescriptors?.get(n);if(r?.startsWith(`__file__:`)){let n=r.slice(9);t===1?(await e.fs.appendFile(n,i,c(i)),i=``):t===2&&(await e.fs.appendFile(n,a,wM(a)),a=``)}}}else(r?.startsWith(`__dupin__:`)||n>=3)&&(a+=`bash: ${n}: Bad file descriptor
904
+ `,o=1,i=``)}}break}case`&>`:{if(l===`/dev/full`){a=`bash: echo: write error: No space left on device
905
+ `,o=1,i=``;break}let t=e.fs.resolvePath(e.state.cwd,l),n=await CM(e,t,l,{checkNoclobber:!0});if(n){a=n,o=1,i=``;break}let r=i+a;await e.fs.writeFile(t,r,c(r)),i=``,a=``;break}case`&>>`:{if(l===`/dev/full`){a=`bash: echo: write error: No space left on device
906
+ `,o=1,i=``;break}let t=e.fs.resolvePath(e.state.cwd,l),n=await CM(e,t,l,{});if(n){a=n,o=1,i=``;break}let r=i+a;await e.fs.appendFile(t,r,c(r)),i=``,a=``;break}}}}let l=e.state.fileDescriptors?.get(1);if(l){if(l===`__dupout__:2`)a+=i,i=``;else if(l.startsWith(`__file__:`)){let t=l.slice(9);await e.fs.appendFile(t,i,c(i)),i=``}else if(l.startsWith(`__file_append__:`)){let t=l.slice(16);await e.fs.appendFile(t,i,c(i)),i=``}}let u=e.state.fileDescriptors?.get(2);if(u){if(u===`__dupout__:1`)i+=a,a=``;else if(u.startsWith(`__file__:`)){let t=u.slice(9);await e.fs.appendFile(t,a,wM(a)),a=``}else if(u.startsWith(`__file_append__:`)){let t=u.slice(16);await e.fs.appendFile(t,a,wM(a)),a=``}}let d=$(i,a,o);return t.stdoutKind&&(d.stdoutKind=t.stdoutKind),t.stdoutEncoding===`binary`&&(d.stdoutEncoding=`binary`),d}function jM(e,t){if(e.state.options.posix&&yM.has(t.name)){let n=`bash: line ${e.state.currentLine}: \`${t.name}': is a special builtin
907
+ `;throw new Br(2,``,n)}let n={...t,sourceFile:t.sourceFile??e.state.currentSource??`main`};return e.state.functions.set(t.name,n),yj}async function MM(e,t){let n=``;for(let r of t)if((r.operator===`<<`||r.operator===`<<-`)&&r.target.type===`HereDoc`){let t=r.target,i=await X(e,t.content);t.stripTabs&&(i=i.split(`
908
+ `).map(e=>e.replace(/^\t+/,``)).join(`
909
+ `)),(r.fd??0)===0&&(n=i)}else if(r.operator===`<<<`&&r.target.type===`Word`)n=`${await X(e,r.target)}
910
+ `;else if(r.operator===`<`&&r.target.type===`Word`){let t=await X(e,r.target),i=e.fs.resolvePath(e.state.cwd,t);try{n=await e.fs.readFile(i)}catch{}}return n}async function NM(e,t,n,r=``,i){e.state.callDepth++,e.state.callDepth>e.limits.maxCallDepth&&(e.state.callDepth--,Sj(`${t.name}: maximum recursion depth (${e.limits.maxCallDepth}) exceeded, increase executionLimits.maxCallDepth`,`recursion`)),e.state.funcNameStack||(e.state.funcNameStack=[]),e.state.callLineStack||(e.state.callLineStack=[]),e.state.sourceStack||(e.state.sourceStack=[]),e.state.funcNameStack.unshift(t.name),e.state.callLineStack.unshift(i??e.state.currentLine),e.state.sourceStack.unshift(t.sourceFile??`main`),e.state.localScopes.push(new Map),e.state.localExportedVars||(e.state.localExportedVars=[]),e.state.localExportedVars.push(new Set);let a=new Map;for(let t=0;t<n.length;t++)a.set(String(t+1),e.state.env.get(String(t+1))),e.state.env.set(String(t+1),n[t]);a.set(`@`,e.state.env.get(`@`)),a.set(`#`,e.state.env.get(`#`)),e.state.env.set(`@`,n.join(` `)),e.state.env.set(`#`,String(n.length));let o=()=>{let t=e.state.localScopes.length-1,n=e.state.localScopes.pop();if(n)for(let[t,r]of n)r===void 0?e.state.env.delete(t):e.state.env.set(t,r);if(vM(e,t),e.state.fullyUnsetLocals)for(let[n,r]of e.state.fullyUnsetLocals.entries())r===t&&e.state.fullyUnsetLocals.delete(n);if(e.state.localExportedVars&&e.state.localExportedVars.length>0){let t=e.state.localExportedVars.pop();if(t)for(let n of t)e.state.exportedVars?.delete(n)}for(let[t,n]of a)n===void 0?e.state.env.delete(t):e.state.env.set(t,n);e.state.funcNameStack?.shift(),e.state.callLineStack?.shift(),e.state.sourceStack?.shift(),e.state.callDepth--},{targets:s,error:c}=await EM(e,t.redirections);if(c)return o(),$(``,c,1);try{let n=await MM(e,t.redirections),i=r||n,a=await e.executeCommand(t.body,i);return o(),AM(e,a,t.redirections,s)}catch(n){if(o(),n instanceof Lr)return AM(e,$(n.stdout,n.stderr,n.exitCode),t.redirections,s);throw n}}var PM=[`!`,`[[`,`]]`,`case`,`do`,`done`,`elif`,`else`,`esac`,`fi`,`for`,`function`,`if`,`in`,`then`,`time`,`until`,`while`,`{`,`}`],FM=`.,:,[,alias,bg,bind,break,builtin,caller,cd,command,compgen,complete,compopt,continue,declare,dirs,disown,echo,enable,eval,exec,exit,export,false,fc,fg,getopts,hash,help,history,jobs,kill,let,local,logout,mapfile,popd,printf,pushd,pwd,read,readarray,readonly,return,set,shift,shopt,source,suspend,test,times,trap,true,type,typeset,ulimit,umask,unalias,unset,wait`.split(`,`),IM=`autocd.assoc_expand_once.cdable_vars.cdspell.checkhash.checkjobs.checkwinsize.cmdhist.compat31.compat32.compat40.compat41.compat42.compat43.compat44.complete_fullquote.direxpand.dirspell.dotglob.execfail.expand_aliases.extdebug.extglob.extquote.failglob.force_fignore.globasciiranges.globstar.gnu_errfmt.histappend.histreedit.histverify.hostcomplete.huponexit.inherit_errexit.interactive_comments.lastpipe.lithist.localvar_inherit.localvar_unset.login_shell.mailwarn.no_empty_cmd_completion.nocaseglob.nocasematch.nullglob.progcomp.progcomp_alias.promptvars.restricted_shell.shift_verbose.sourcepath.xpg_echo`.split(`.`),LM=FM;async function RM(e,t){let n=[],r=null,i=``,a=``,o=null,s=!1,c=!1,l=!1,u=null,d=null,f=null,p=[],m=[`alias`,`arrayvar`,`binding`,`builtin`,`command`,`directory`,`disabled`,`enabled`,`export`,`file`,`function`,`group`,`helptopic`,`hostname`,`job`,`keyword`,`running`,`service`,`setopt`,`shopt`,`signal`,`stopped`,`user`,`variable`];for(let e=0;e<t.length;e++){let o=t[e];if(o===`-v`)n.push(`variable`);else if(o===`-e`)n.push(`export`);else if(o===`-f`)n.push(`file`);else if(o===`-d`)n.push(`directory`);else if(o===`-k`)n.push(`keyword`);else if(o===`-A`){if(e++,e>=t.length)return Q(`compgen: -A: option requires an argument
911
+ `,2);let r=t[e];if(!m.includes(r))return Q(`compgen: ${r}: invalid action name
912
+ `,2);n.push(r)}else if(o===`-W`){if(e++,e>=t.length)return Q(`compgen: -W: option requires an argument
913
+ `,2);r=t[e]}else if(o===`-P`){if(e++,e>=t.length)return Q(`compgen: -P: option requires an argument
914
+ `,2);i=t[e]}else if(o===`-S`){if(e++,e>=t.length)return Q(`compgen: -S: option requires an argument
915
+ `,2);a=t[e]}else if(o===`-o`){if(e++,e>=t.length)return Q(`compgen: -o: option requires an argument
916
+ `,2);let n=t[e];if(n===`plusdirs`)s=!0;else if(n===`dirnames`)c=!0;else if(n==="default")l=!0;else if(!(n===`filenames`||n===`nospace`||n===`bashdefault`||n===`noquote`))return Q(`compgen: ${n}: invalid option name
917
+ `,2)}else if(o===`-F`){if(e++,e>=t.length)return Q(`compgen: -F: option requires an argument
918
+ `,2);d=t[e]}else if(o===`-C`){if(e++,e>=t.length)return Q(`compgen: -C: option requires an argument
919
+ `,2);f=t[e]}else if(o===`-X`){if(e++,e>=t.length)return Q(`compgen: -X: option requires an argument
920
+ `,2);u=t[e]}else if(o===`-G`){if(e++,e>=t.length)return Q(`compgen: -G: option requires an argument
921
+ `,2)}else if(o===`--`){p.push(...t.slice(e+1));break}else o.startsWith(`-`)||p.push(o)}o=p[0]??null;let h=[];if(c){let t=await qM(e,o);h.push(...t)}if(l){let t=await JM(e,o);h.push(...t)}for(let t of n)if(t===`variable`){let t=zM(e,o);h.push(...t)}else if(t===`export`){let t=BM(e,o);h.push(...t)}else if(t===`function`){let t=VM(e,o);h.push(...t)}else if(t===`builtin`){let e=HM(o);h.push(...e)}else if(t===`keyword`){let e=UM(o);h.push(...e)}else if(t===`alias`){let t=WM(e,o);h.push(...t)}else if(t===`shopt`){let e=GM(o);h.push(...e)}else if(t===`helptopic`){let e=KM(o);h.push(...e)}else if(t===`directory`){let t=await qM(e,o);h.push(...t)}else if(t===`file`){let t=await JM(e,o);h.push(...t)}else if(t===`user`){let e=YM(o);h.push(...e)}else if(t===`command`){let t=await XM(e,o);h.push(...t)}if(r!==null)try{let t=QM(e,await ZM(e,r));for(let e of t)(o===null||e.startsWith(o))&&h.push(e)}catch{return $(``,``,1)}if(s){let t=await qM(e,o);for(let e of t)h.includes(e)||h.push(e)}let g=``;if(d!==null){let t=e.state.functions.get(d);if(t){let n=new Map;n.set(`COMP_WORDS__length`,e.state.env.get(`COMP_WORDS__length`)),e.state.env.set(`COMP_WORDS__length`,`0`),n.set(`COMP_CWORD`,e.state.env.get(`COMP_CWORD`)),e.state.env.set(`COMP_CWORD`,`-1`),n.set(`COMP_LINE`,e.state.env.get(`COMP_LINE`)),e.state.env.set(`COMP_LINE`,``),n.set(`COMP_POINT`,e.state.env.get(`COMP_POINT`)),e.state.env.set(`COMP_POINT`,`0`);let r=new Map;for(let t of e.state.env.keys())(t===`COMPREPLY`||t.startsWith(`COMPREPLY_`)||t===`COMPREPLY__length`)&&(r.set(t,e.state.env.get(t)),e.state.env.delete(t));let i=[`compgen`,p[0]??``,``];try{let a=await NM(e,t,i,``);if(a.exitCode!==0)return $M(e,n),$M(e,r),$(``,a.stderr,1);g=a.stdout;let o=eN(e);h.push(...o)}catch{return $M(e,n),$M(e,r),$(``,``,1)}$M(e,n),$M(e,r)}}if(f!==null)try{let t=EE(f),n=await e.executeScript(t);if(n.exitCode!==0)return $(``,n.stderr,n.exitCode);if(n.stdout){let e=n.stdout.split(`
922
+ `);for(let t of e)t.length>0&&h.push(t)}}catch(e){if(e.name===`ParseException`)return Q(`compgen: -C: ${e.message}
923
+ `,2);throw e}let _=h;if(u!==null){let e=u.startsWith(`!`),t=e?u.slice(1):u;_=h.filter(n=>{let r=Yj(n,t,!1,!0);return e?r:!r})}if(_.length===0&&o!==null)return $(g,``,1);let v=_.map(e=>`${i}${e}${a}`).join(`
924
+ `);return bj(g+(v?`${v}
925
+ `:``))}function zM(e,t){let n=new Set;for(let t of e.state.env.keys()){if(t.includes(`_`)&&/^[a-zA-Z_][a-zA-Z0-9_]*_\d+$/.test(t)||t.endsWith(`__length`))continue;let r=t.split(`_`)[0];/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(t)?n.add(t):r&&/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)&&e.state.env.has(`${r}__length`)&&n.add(r)}let r=Array.from(n);return t!==null&&(r=r.filter(e=>e.startsWith(t))),r.sort()}function BM(e,t){let n=e.state.exportedVars??new Set,r=Array.from(n);return t!==null&&(r=r.filter(e=>e.startsWith(t))),r=r.filter(t=>t.includes(`_`)&&/^[a-zA-Z_][a-zA-Z0-9_]*_\d+$/.test(t)||t.endsWith(`__length`)?!1:e.state.env.has(t)),r.sort()}function VM(e,t){let n=Array.from(e.state.functions.keys());return t!==null&&(n=n.filter(e=>e.startsWith(t))),n.sort()}function HM(e){let t=[...FM];return e!==null&&(t=t.filter(t=>t.startsWith(e))),t.sort()}function UM(e){let t=[...PM];return e!==null&&(t=t.filter(t=>t.startsWith(e))),t.sort()}function WM(e,t){let n=[];for(let t of e.state.env.keys())if(t.startsWith(`BASH_ALIAS_`)){let e=t.slice(11);n.push(e)}let r=n;return t!==null&&(r=r.filter(e=>e.startsWith(t))),r.sort()}function GM(e){let t=[...IM];return e!==null&&(t=t.filter(t=>t.startsWith(e))),t.sort()}function KM(e){let t=[...LM];return e!==null&&(t=t.filter(t=>t.startsWith(e))),t.sort()}async function qM(e,t){let n=[];try{let r=e.state.cwd,i=t??``;if(t){let n=t.lastIndexOf(`/`);if(n!==-1){let a=t.slice(0,n)||`/`;i=t.slice(n+1),r=a.startsWith(`/`)?a:`${e.state.cwd}/${a}`}}let a=await e.fs.readdir(r);for(let o of a){let a=`${r}/${o}`;try{if((await e.fs.stat(a)).isDirectory&&(!i||o.startsWith(i)))if(t?.includes(`/`)){let e=t.lastIndexOf(`/`),r=t.slice(0,e+1);n.push(r+o)}else n.push(o)}catch{}}}catch{}return n.sort()}async function JM(e,t){let n=[];try{let r=e.state.cwd,i=t??``;if(t){let n=t.lastIndexOf(`/`);if(n!==-1){let a=t.slice(0,n)||`/`;i=t.slice(n+1),r=a.startsWith(`/`)?a:`${e.state.cwd}/${a}`}}let a=await e.fs.readdir(r);for(let e of a)if(!i||e.startsWith(i))if(t?.includes(`/`)){let r=t.lastIndexOf(`/`),i=t.slice(0,r+1);n.push(i+e)}else n.push(e)}catch{}return n.sort()}function YM(e){return[`root`,`nobody`]}async function XM(e,t){let n=new Set;for(let e of FM)n.add(e);for(let t of e.state.functions.keys())n.add(t);for(let t of e.state.env.keys())t.startsWith(`BASH_ALIAS_`)&&n.add(t.slice(11));for(let e of PM)n.add(e);let r=e.state.env.get(`PATH`)??`/usr/bin:/bin`;for(let t of r.split(`:`))if(t)try{let r=await e.fs.readdir(t);for(let e of r)n.add(e)}catch{}let i=Array.from(n);return t!==null&&(i=i.filter(e=>e.startsWith(t))),i.sort()}async function ZM(e,t){return await X(e,new DE().parseWordFromString(t,!1,!1))}function QM(e,t){let n=e.state.env.get(`IFS`)??`
926
+ `;if(n.length===0)return[t];let r=new Set(n.split(``)),i=[],a=``,o=0;for(;o<t.length;){let e=t[o];if(e===`\\`&&o+1<t.length){let e=t[o+1];a+=e,o+=2}else r.has(e)?(a.length>0&&(i.push(a),a=``),o++):(a+=e,o++)}return a.length>0&&i.push(a),i}function $M(e,t){for(let[n,r]of t)r===void 0?e.state.env.delete(n):e.state.env.set(n,r)}function eN(e){let t=[];if(e.state.env.get(`COMPREPLY__length`)!==void 0){let n=J(e,`COMPREPLY`);for(let[,e]of n)t.push(e)}else{let n=e.state.env.get(`COMPREPLY`);n!==void 0&&t.push(n)}return t}var tN=[`bashdefault`,`default`,`dirnames`,`filenames`,`noquote`,`nosort`,`nospace`,`plusdirs`];function nN(e,t){e.state.completionSpecs||(e.state.completionSpecs=new Map);let n=!1,r=!1,i=!1,a,o,s,c=[],l=[],u=[];for(let e=0;e<t.length;e++){let d=t[e];if(d===`-p`)n=!0;else if(d===`-r`)r=!0;else if(d===`-D`)i=!0;else if(d===`-W`){if(e++,e>=t.length)return Q(`complete: -W: option requires an argument
927
+ `,2);a=t[e]}else if(d===`-F`){if(e++,e>=t.length)return Q(`complete: -F: option requires an argument
928
+ `,2);o=t[e]}else if(d===`-o`){if(e++,e>=t.length)return Q(`complete: -o: option requires an argument
929
+ `,2);let n=t[e];if(!tN.includes(n))return Q(`complete: ${n}: invalid option name
930
+ `,2);c.push(n)}else if(d===`-A`){if(e++,e>=t.length)return Q(`complete: -A: option requires an argument
931
+ `,2);l.push(t[e])}else if(d===`-C`){if(e++,e>=t.length)return Q(`complete: -C: option requires an argument
932
+ `,2);s=t[e]}else if(d===`-G`){if(e++,e>=t.length)return Q(`complete: -G: option requires an argument
933
+ `,2)}else if(d===`-P`){if(e++,e>=t.length)return Q(`complete: -P: option requires an argument
934
+ `,2)}else if(d===`-S`){if(e++,e>=t.length)return Q(`complete: -S: option requires an argument
935
+ `,2)}else if(d===`-X`){if(e++,e>=t.length)return Q(`complete: -X: option requires an argument
936
+ `,2)}else if(d===`--`){u.push(...t.slice(e+1));break}else d.startsWith(`-`)||u.push(d)}if(r){if(u.length===0)return e.state.completionSpecs.clear(),bj(``);for(let t of u)e.state.completionSpecs.delete(t);return bj(``)}if(n)return u.length===0?rN(e):rN(e,u);if(t.length===0||u.length===0&&!a&&!o&&!s&&c.length===0&&l.length===0&&!i)return rN(e);if(o&&u.length===0&&!i)return Q(`complete: -F: option requires a command name
937
+ `,2);if(i){let t={isDefault:!0};return a!==void 0&&(t.wordlist=a),o!==void 0&&(t.function=o),s!==void 0&&(t.command=s),c.length>0&&(t.options=c),l.length>0&&(t.actions=l),e.state.completionSpecs.set(`__default__`,t),bj(``)}for(let t of u){let n=Object.create(null);a!==void 0&&(n.wordlist=a),o!==void 0&&(n.function=o),s!==void 0&&(n.command=s),c.length>0&&(n.options=c),l.length>0&&(n.actions=l),e.state.completionSpecs.set(t,n)}return bj(``)}function rN(e,t){let n=e.state.completionSpecs;if(!n||n.size===0){if(t&&t.length>0){let e=``;for(let n of t)e+=`complete: ${n}: no completion specification
938
+ `;return $(``,e,1)}return bj(``)}let r=[],i=t||Array.from(n.keys());for(let e of i){if(e===`__default__`)continue;let i=n.get(e);if(!i){if(t)return $(r.join(`
939
+ `)+(r.length>0?`
940
+ `:``),`complete: ${e}: no completion specification
941
+ `,1);continue}let a=`complete`;if(i.options)for(let e of i.options)a+=` -o ${e}`;if(i.actions)for(let e of i.actions)a+=` -A ${e}`;i.wordlist!==void 0&&(i.wordlist.includes(` `)||i.wordlist.includes(`'`)?a+=` -W '${i.wordlist}'`:a+=` -W ${i.wordlist}`),i.function!==void 0&&(a+=` -F ${i.function}`),i.isDefault&&(a+=` -D`),a+=` ${e}`,r.push(a)}return r.length===0?bj(``):bj(`${r.join(`
942
+ `)}
943
+ `)}var iN=[`bashdefault`,`default`,`dirnames`,`filenames`,`noquote`,`nosort`,`nospace`,`plusdirs`];function aN(e,t){e.state.completionSpecs||(e.state.completionSpecs=new Map);let n=!1,r=!1,i=[],a=[],o=[];for(let e=0;e<t.length;e++){let s=t[e];if(s===`-D`)n=!0;else if(s===`-E`)r=!0;else if(s===`-o`){if(e++,e>=t.length)return Q(`compopt: -o: option requires an argument
944
+ `,2);let n=t[e];if(!iN.includes(n))return Q(`compopt: ${n}: invalid option name
945
+ `,2);i.push(n)}else if(s===`+o`){if(e++,e>=t.length)return Q(`compopt: +o: option requires an argument
946
+ `,2);let n=t[e];if(!iN.includes(n))return Q(`compopt: ${n}: invalid option name
947
+ `,2);a.push(n)}else if(s===`--`){o.push(...t.slice(e+1));break}else!s.startsWith(`-`)&&!s.startsWith(`+`)&&o.push(s)}if(n){let t=e.state.completionSpecs.get(`__default__`)??{isDefault:!0},n=new Set(t.options??[]);for(let e of i)n.add(e);for(let e of a)n.delete(e);return t.options=n.size>0?Array.from(n):void 0,e.state.completionSpecs.set(`__default__`,t),bj(``)}if(r){let t=e.state.completionSpecs.get(`__empty__`)??{},n=new Set(t.options??[]);for(let e of i)n.add(e);for(let e of a)n.delete(e);return t.options=n.size>0?Array.from(n):void 0,e.state.completionSpecs.set(`__empty__`,t),bj(``)}if(o.length>0){for(let t of o){let n=e.state.completionSpecs.get(t)??{},r=new Set(n.options??[]);for(let e of i)r.add(e);for(let e of a)r.delete(e);n.options=r.size>0?Array.from(r):void 0,e.state.completionSpecs.set(t,n)}return bj(``)}return Q(`compopt: not currently executing completion function
948
+ `,1)}A();function oN(e,t){if(e.state.loopDepth===0){if(e.state.parentHasLoopContext)throw new Kr;return yj}if(t.length>1)throw new Br(1,``,`bash: continue: too many arguments
949
+ `);let n=1;if(t.length>0){let e=Number.parseInt(t[0],10);if(Number.isNaN(e)||e<1)throw new Br(1,``,`bash: continue: ${t[0]}: numeric argument required
950
+ `);n=e}throw new Ir(n)}ET(),OE(),CA(),ZE(),xD(),uO();function sN(e,t){let n=e.state.env.get(`HOME`)||`/home/user`;return t.split(`:`).map(e=>e===`~`?n:e===`~root`?`/root`:e.startsWith(`~/`)?n+e.slice(1):e.startsWith(`~root/`)?`/root${e.slice(5)}`:e).join(`:`)}ZE(),xD();function cN(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<32||n===127)return!0}return!1}function lN(e){let t=`$'`;for(let n=0;n<e.length;n++){let r=e[n],i=e.charCodeAt(n);i===7?t+=`\\a`:i===8?t+=`\\b`:i===9?t+=`\\t`:i===10?t+=`\\n`:i===11?t+=`\\v`:i===12?t+=`\\f`:i===13?t+=`\\r`:i===27?t+=`\\e`:i===39?t+=`\\'`:i===92?t+=`\\\\`:i<32||i===127?t+=`\\${i.toString(8).padStart(3,`0`)}`:t+=r}return t+=`'`,t}function uN(e){return cN(e)?lN(e):/^[a-zA-Z0-9_/.:\-@%+,=]*$/.test(e)?e:`'${e.replace(/'/g,`'\\''`)}'`}function dN(e){return cN(e)?lN(e):`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`}function fN(e){return cN(e)?lN(e):`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`}function pN(e,t){let n=``;return e.state.integerVars?.has(t)&&(n+=`i`),e.state.lowercaseVars?.has(t)&&(n+=`l`),dD(e,t)&&(n+=`n`),e.state.readonlyVars?.has(t)&&(n+=`r`),e.state.uppercaseVars?.has(t)&&(n+=`u`),e.state.exportedVars?.has(t)&&(n+=`x`),n===``?`--`:`-${n}`}function mN(e){return e===``?`''`:/[\s'\\]/.test(e)?`'${e.replace(/'/g,`'\\''`)}'`:e}function hN(e,t){let n=``,r=``,i=!1;for(let a of t){let t=pN(e,a);if(e.state.associativeArrays?.has(a)){let t=KE(e,a);if(t.length===0)n+=`declare -A ${a}=()
951
+ `;else{let r=t.map(t=>`['${t}']=${mN(e.state.env.get(`${a}_${t}`)??``)}`);n+=`declare -A ${a}=(${r.join(` `)})
952
+ `}continue}let o=WE(e,a);if(o.length>0){let t=o.map(t=>`[${t}]=${dN(e.state.env.get(`${a}_${t}`)??``)}`);n+=`declare -a ${a}=(${t.join(` `)})
953
+ `;continue}if(e.state.env.has(`${a}__length`)){n+=`declare -a ${a}=()
954
+ `;continue}let s=e.state.env.get(a);if(s!==void 0)n+=`declare ${t} ${a}=${fN(s)}
955
+ `;else{let o=e.state.declaredVars?.has(a),s=e.state.localVarDepth?.has(a);o||s?n+=`declare ${t} ${a}
956
+ `:(r+=`bash: declare: ${a}: not found
957
+ `,i=!0)}}return $(n,r,+!!i)}function gN(e,t){let{filterExport:n,filterReadonly:r,filterNameref:i,filterIndexedArray:a,filterAssocArray:o}=t,s=n||r||i||a||o,c=``,l=new Set;for(let t of e.state.env.keys()){if(t.startsWith(`BASH_`))continue;if(t.endsWith(`__length`)){let e=t.slice(0,-8);l.add(e);continue}let n=t.lastIndexOf(`_`);if(n>0){let r=t.slice(0,n),i=t.slice(n+1);if(/^\d+$/.test(i)||e.state.associativeArrays?.has(r)){l.add(r);continue}}l.add(t)}if(e.state.localVarDepth)for(let t of e.state.localVarDepth.keys())l.add(t);if(e.state.associativeArrays)for(let t of e.state.associativeArrays)l.add(t);let u=Array.from(l).sort();for(let t of u){let l=pN(e,t),u=e.state.associativeArrays?.has(t),d=WE(e,t),f=!u&&(d.length>0||e.state.env.has(`${t}__length`));if(s&&(o&&!u||a&&!f||n&&!e.state.exportedVars?.has(t)||r&&!e.state.readonlyVars?.has(t)||i&&!dD(e,t)))continue;if(u){let n=KE(e,t);if(n.length===0)c+=`declare -A ${t}=()
958
+ `;else{let r=n.map(n=>`['${n}']=${mN(e.state.env.get(`${t}_${n}`)??``)}`);c+=`declare -A ${t}=(${r.join(` `)})
959
+ `}continue}if(d.length>0){let n=d.map(n=>`[${n}]=${dN(e.state.env.get(`${t}_${n}`)??``)}`);c+=`declare -a ${t}=(${n.join(` `)})
960
+ `;continue}if(e.state.env.has(`${t}__length`)){c+=`declare -a ${t}=()
961
+ `;continue}let p=e.state.env.get(t);p!==void 0&&(c+=`declare ${l} ${t}=${fN(p)}
962
+ `)}return bj(c)}function _N(e){let t=``,n=Array.from(e.state.associativeArrays??[]).sort();for(let r of n){let n=KE(e,r);if(n.length===0)t+=`declare -A ${r}=()
963
+ `;else{let i=n.map(t=>`['${t}']=${mN(e.state.env.get(`${r}_${t}`)??``)}`);t+=`declare -A ${r}=(${i.join(` `)})
964
+ `}}return bj(t)}function vN(e){let t=``,n=new Set;for(let t of e.state.env.keys()){if(t.startsWith(`BASH_`))continue;if(t.endsWith(`__length`)){let r=t.slice(0,-8);e.state.associativeArrays?.has(r)||n.add(r);continue}let r=t.lastIndexOf(`_`);if(r>0){let i=t.slice(0,r),a=t.slice(r+1);/^\d+$/.test(a)&&(e.state.associativeArrays?.has(i)||n.add(i))}}let r=Array.from(n).sort();for(let n of r){let r=WE(e,n);if(r.length===0)t+=`declare -a ${n}=()
965
+ `;else{let i=r.map(t=>`[${t}]=${dN(e.state.env.get(`${n}_${t}`)??``)}`);t+=`declare -a ${n}=(${i.join(` `)})
966
+ `}}return bj(t)}function yN(e){let t=``,n=new Set;for(let t of e.state.env.keys()){if(t.startsWith(`BASH_`))continue;if(t.endsWith(`__length`)){let e=t.slice(0,-8);n.add(e);continue}let r=t.lastIndexOf(`_`);if(r>0){let i=t.slice(0,r),a=t.slice(r+1);if(/^\d+$/.test(a)||e.state.associativeArrays?.has(i)){n.add(i);continue}}n.add(t)}let r=Array.from(n).sort();for(let n of r){if(e.state.associativeArrays?.has(n)||WE(e,n).length>0||e.state.env.has(`${n}__length`))continue;let r=e.state.env.get(n);r!==void 0&&(t+=`${n}=${uN(r)}
967
+ `)}return bj(t)}function bN(e,t){e.state.integerVars??=new Set,e.state.integerVars.add(t)}function xN(e,t){return e.state.integerVars?.has(t)??!1}function SN(e,t){e.state.lowercaseVars??=new Set,e.state.lowercaseVars.add(t),e.state.uppercaseVars?.delete(t)}function CN(e,t){return e.state.lowercaseVars?.has(t)??!1}function wN(e,t){e.state.uppercaseVars??=new Set,e.state.uppercaseVars.add(t),e.state.lowercaseVars?.delete(t)}function TN(e,t){return e.state.uppercaseVars?.has(t)??!1}function EN(e,t,n){return CN(e,t)?n.toLowerCase():TN(e,t)?n.toUpperCase():n}async function DN(e,t){try{let n=await Z(e,aT(new DE,t).expression);return String(n)}catch{return`0`}}function ON(e){let t=e.match(/^[a-zA-Z_][a-zA-Z0-9_]*/);if(!t)return null;let n=t[0],r=n.length;if(e[r]!==`[`)return null;let i=0,a=r+1;for(;r<e.length;r++)if(e[r]===`[`)i++;else if(e[r]===`]`&&(i--,i===0))break;if(i!==0)return null;let o=e.slice(a,r);return r++,e[r]===`=`?(r++,{name:n,indexExpr:o,value:e.slice(r)}):null}async function kN(e,t){let n=!1,r=!1,i=!1,a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!1,f=!1,p=!1,m=!1,h=!1,g=!1,_=[];for(let e=0;e<t.length;e++){let v=t[e];if(v===`-a`)n=!0;else if(v===`-A`)r=!0;else if(v===`-r`)i=!0;else if(v===`-x`)a=!0;else if(v===`-p`)o=!0;else if(v===`-n`)s=!0;else if(v===`+n`)c=!0;else if(v===`+a`)l=!0;else if(v===`+x`)u=!0;else if(v===`--`){_.push(...t.slice(e+1));break}else if(v.startsWith(`+`)){for(let e of v.slice(1))if(e===`n`)c=!0;else if(e===`a`)l=!0;else if(e===`x`)u=!0;else if(e!==`r`&&e!==`i`&&!(e===`f`||e===`F`))return $(``,`bash: typeset: +${e}: invalid option
968
+ `,2)}else if(v===`-i`)d=!0;else if(v===`-l`)f=!0;else if(v===`-u`)p=!0;else if(v===`-f`)m=!0;else if(v===`-F`)h=!0;else if(v===`-g`)g=!0;else if(v.startsWith(`-`))for(let e of v.slice(1))if(e===`a`)n=!0;else if(e===`A`)r=!0;else if(e===`r`)i=!0;else if(e===`x`)a=!0;else if(e===`p`)o=!0;else if(e===`n`)s=!0;else if(e===`i`)d=!0;else if(e===`l`)f=!0;else if(e===`u`)p=!0;else if(e===`f`)m=!0;else if(e===`F`)h=!0;else if(e===`g`)g=!0;else return $(``,`bash: typeset: -${e}: invalid option
969
+ `,2);else _.push(v)}let v=e.state.localScopes.length>0&&!g,y=t=>{if(!v)return;let n=e.state.localScopes[e.state.localScopes.length-1];n.has(t)||n.set(t,e.state.env.get(t))},ee=t=>{if(!v)return;let n=e.state.localScopes[e.state.localScopes.length-1];n.has(t)||n.set(t,e.state.env.get(t));let r=`${t}_`;for(let t of e.state.env.keys())t.startsWith(r)&&!t.includes(`__`)&&(n.has(t)||n.set(t,e.state.env.get(t)));let i=`${t}__length`;e.state.env.has(i)&&!n.has(i)&&n.set(i,e.state.env.get(i))},te=t=>{v&&pM(e,t)};if(h){if(_.length===0){let t=Array.from(e.state.functions.keys()).sort(),n=``;for(let e of t)n+=`declare -f ${e}
970
+ `;return bj(n)}let t=!0,n=``;for(let r of _)e.state.functions.has(r)?n+=`${r}
971
+ `:t=!1;return $(n,``,+!t)}if(m){if(_.length===0){let t=``,n=Array.from(e.state.functions.keys()).sort();for(let e of n)t+=`${e} ()
972
+ {
973
+ # function body
974
+ }
975
+ `;return bj(t)}let t=!0;for(let n of _)e.state.functions.has(n)||(t=!1);return $(``,``,+!t)}if(o&&_.length>0)return hN(e,_);if(o&&_.length===0)return gN(e,{filterExport:a,filterReadonly:i,filterNameref:s,filterIndexedArray:n,filterAssocArray:r});if(_.length===0&&r&&!o)return _N(e);if(_.length===0&&n&&!o)return vN(e);if(_.length===0&&!o)return yN(e);let ne=``,re=0;for(let t of _){let o=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)=\((.*)\)$/s);if(o&&!l){let t=o[1],s=o[2];if(r&&WE(e,t).length>0){ne+=`bash: declare: ${t}: cannot convert indexed to associative array
976
+ `,re=1;continue}if((n||!r&&!n)&&e.state.associativeArrays?.has(t)){ne+=`bash: declare: ${t}: cannot convert associative to indexed array
977
+ `,re=1;continue}if(ee(t),r&&(e.state.associativeArrays??=new Set,e.state.associativeArrays.add(t)),GE(e,t),e.state.env.delete(t),e.state.env.delete(`${t}__length`),r&&s.includes(`[`)){let n=lM(s);for(let[r,i]of n){let n=sN(e,i);e.state.env.set(`${t}_${r}`,n)}}else if(r){let n=cM(s);for(let r=0;r<n.length;r+=2){let i=n[r],a=r+1<n.length?sN(e,n[r+1]):``;e.state.env.set(`${t}_${i}`,a)}}else{let n=cM(s);if(n.some(e=>/^\[[^\]]+\]=/.test(e))){let r=0;for(let i of n){let n=i.match(/^\[([^\]]+)\]=(.*)$/);if(n){let i=n[1],a=n[2],o=sN(e,a),s;if(/^-?\d+$/.test(i))s=Number.parseInt(i,10);else try{s=await Z(e,aT(new DE,i).expression)}catch{s=0}e.state.env.set(`${t}_${s}`,o),r=s+1}else{let n=sN(e,i);e.state.env.set(`${t}_${r}`,n),r++}}}else{for(let r=0;r<n.length;r++)e.state.env.set(`${t}_${r}`,n[r]);e.state.env.set(`${t}__length`,String(n.length))}}te(t),i&&aO(e,t),a&&cO(e,t);continue}if(c&&(pD(e,t.includes(`=`)?t.slice(0,t.indexOf(`=`)):t),!t.includes(`=`))||u&&(lO(e,t.includes(`=`)?t.slice(0,t.indexOf(`=`)):t),!t.includes(`=`)))continue;let m=ON(t);if(m){let{name:t,indexExpr:n,value:r}=m,o=sO(e,t);if(o)return o;ee(t);let s;try{s=await Z(e,aT(new DE,n).expression)}catch{let e=parseInt(n,10);s=Number.isNaN(e)?0:e}e.state.env.set(`${t}_${s}`,r);let c=parseInt(e.state.env.get(`${t}__length`)??`0`,10);s>=c&&e.state.env.set(`${t}__length`,String(s+1)),te(t),i&&aO(e,t),a&&cO(e,t);continue}let h=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=\((.*)\)$/s);if(h&&!l){let t=h[1],n=h[2],r=sO(e,t);if(r)return r;ee(t);let o=cM(n);if(e.state.associativeArrays?.has(t)){let r=lM(n);for(let[n,i]of r){let r=sN(e,i);e.state.env.set(`${t}_${n}`,r)}}else{let n=WE(e,t),r=0,i=e.state.env.get(t);n.length===0&&i!==void 0?(e.state.env.set(`${t}_0`,i),e.state.env.delete(t),r=1):n.length>0&&(r=Math.max(...n)+1);for(let n=0;n<o.length;n++)e.state.env.set(`${t}_${r+n}`,sN(e,o[n]));let a=r+o.length;e.state.env.set(`${t}__length`,String(a))}te(t),i&&aO(e,t),a&&cO(e,t);continue}let g=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=(.*)$/);if(g){let t=g[1],n=sN(e,g[2]),r=sO(e,t);if(r)return r;y(t),d&&bN(e,t),f&&SN(e,t),p&&wN(e,t);let o=WE(e,t).length>0||e.state.associativeArrays?.has(t);if(xN(e,t)){let r=e.state.env.get(t)??`0`,i=parseInt(r,10)||0,a=parseInt(await DN(e,n),10)||0;n=String(i+a),e.state.env.set(t,n)}else if(o){n=EN(e,t,n);let r=`${t}_0`,i=e.state.env.get(r)??``;e.state.env.set(r,i+n)}else{n=EN(e,t,n);let r=e.state.env.get(t)??``;e.state.env.set(t,r+n)}te(t),i&&aO(e,t),a&&cO(e,t),e.state.options.allexport&&!u&&(e.state.exportedVars=e.state.exportedVars||new Set,e.state.exportedVars.add(t));continue}if(t.includes(`=`)){let n=t.indexOf(`=`),r=t.slice(0,n),o=t.slice(n+1);if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r)){ne+=`bash: typeset: \`${r}': not a valid identifier
978
+ `,re=1;continue}let c=sO(e,r);if(c)return c;if(y(r),s){if(o!==``&&!/^[a-zA-Z_][a-zA-Z0-9_]*(\[.+\])?$/.test(o)){ne+=`bash: declare: \`${o}': invalid variable name for name reference
979
+ `,re=1;continue}e.state.env.set(r,o),fD(e,r),o!==``&&_D(e,o)&&gD(e,r),te(r),i&&aO(e,r),a&&cO(e,r);continue}if(d&&bN(e,r),f&&SN(e,r),p&&wN(e,r),xN(e,r)&&(o=await DN(e,o)),o=EN(e,r,o),dD(e,r)){let t=vD(e,r);t&&t!==r?e.state.env.set(t,o):e.state.env.set(r,o)}else e.state.env.set(r,o);te(r),i&&aO(e,r),a&&cO(e,r),e.state.options.allexport&&!u&&(e.state.exportedVars=e.state.exportedVars||new Set,e.state.exportedVars.add(r))}else{let o=t;if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(o)){ne+=`bash: typeset: \`${o}': not a valid identifier
980
+ `,re=1;continue}if(n||r?ee(o):y(o),s){fD(e,o);let t=e.state.env.get(o);t!==void 0&&t!==``&&!/^[a-zA-Z_][a-zA-Z0-9_]*(\[.+\])?$/.test(t)?mD(e,o):t&&_D(e,t)&&gD(e,o),te(o),i&&aO(e,o),a&&cO(e,o);continue}if(d&&bN(e,o),f&&SN(e,o),p&&wN(e,o),r){if(WE(e,o).length>0){ne+=`bash: declare: ${o}: cannot convert indexed to associative array
981
+ `,re=1;continue}e.state.associativeArrays??=new Set,e.state.associativeArrays.add(o)}let c=Array.from(e.state.env.keys()).some(e=>e.startsWith(`${o}_`)&&!e.startsWith(`${o}__length`));!e.state.env.has(o)&&!c&&(n||r?e.state.env.set(`${o}__length`,`0`):(e.state.declaredVars??=new Set,e.state.declaredVars.add(o))),te(o),i&&aO(e,o),a&&cO(e,o)}}return $(``,ne,re)}async function AN(e,t){let n=[];for(let e=0;e<t.length;e++){let r=t[e];if(r!==`-a`&&r!==`-A`&&r!==`-p`)if(r===`--`){n.push(...t.slice(e+1));break}else r.startsWith(`-`)||n.push(r)}if(n.length===0){let t=``,n=Array.from(e.state.readonlyVars||[]).sort();for(let r of n){let n=e.state.env.get(r);if(n!==void 0){let e=n.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`);t+=`declare -r ${r}="${e}"
982
+ `}}return bj(t)}for(let t of n){let n=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=\((.*)\)$/s);if(n){let t=n[1],r=n[2],i=sO(e,t);if(i)return i;let a=cM(r);if(e.state.associativeArrays?.has(t)){let n=lM(r);for(let[r,i]of n){let n=sN(e,i);e.state.env.set(`${t}_${r}`,n)}}else{let n=WE(e,t),r=0,i=e.state.env.get(t);n.length===0&&i!==void 0?(e.state.env.set(`${t}_0`,i),e.state.env.delete(t),r=1):n.length>0&&(r=Math.max(...n)+1);for(let n=0;n<a.length;n++)e.state.env.set(`${t}_${r+n}`,sN(e,a[n]));let o=r+a.length;e.state.env.set(`${t}__length`,String(o))}aO(e,t);continue}let r=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=(.*)$/);if(r){let t=r[1],n=sN(e,r[2]),i=sO(e,t);if(i)return i;let a=e.state.env.get(t)??``;e.state.env.set(t,a+n),aO(e,t);continue}let i=uM(t);if(i.value===void 0&&!i.isArray){aO(e,i.name);continue}let a=await fM(e,i,{makeReadonly:!0});if(a)return a}return yj}function jN(e){return e.state.directoryStack??=[],e.state.directoryStack}function MN(e,t){return t&&e===t?`~`:t&&e.startsWith(`${t}/`)?`~${e.slice(t.length)}`:e}function NN(e){let t=e.split(`/`).filter(e=>e&&e!==`.`),n=[];for(let e of t)e===`..`?n.pop():n.push(e);return`/${n.join(`/`)}`}async function PN(e,t){let n=jN(e),r;for(let e=0;e<t.length;e++){let n=t[e];if(n===`--`){if(e+1<t.length){if(r!==void 0)return Q(`bash: pushd: too many arguments
983
+ `,2);r=t[e+1],e++}}else{if(n.startsWith(`-`)&&n!==`-`)return Q(`bash: pushd: ${n}: invalid option
984
+ `,2);if(r!==void 0)return Q(`bash: pushd: too many arguments
985
+ `,2);r=n}}if(r===void 0){if(n.length<2)return Q(`bash: pushd: no other directory
986
+ `,1);let e=n[0];n[0]=n[1],n[1]=e,r=n[0]}let i;if(r.startsWith(`/`))i=r;else if(r===`..`){let t=e.state.cwd.split(`/`).filter(e=>e);t.pop(),i=`/${t.join(`/`)}`}else i=r===`.`?e.state.cwd:r.startsWith(`~`)?(e.state.env.get(`HOME`)||`/`)+r.slice(1):`${e.state.cwd}/${r}`;i=NN(i);try{if(!(await e.fs.stat(i)).isDirectory)return Q(`bash: pushd: ${r}: Not a directory
987
+ `,1)}catch{return Q(`bash: pushd: ${r}: No such file or directory
988
+ `,1)}n.unshift(e.state.cwd),e.state.previousDir=e.state.cwd,e.state.cwd=i,e.state.env.set(`PWD`,i),e.state.env.set(`OLDPWD`,e.state.previousDir);let a=e.state.env.get(`HOME`)||``;return bj(`${[i,...n].map(e=>MN(e,a)).join(` `)}
989
+ `)}function FN(e,t){let n=jN(e);for(let e of t)if(e!==`--`)return e.startsWith(`-`)&&e!==`-`?Q(`bash: popd: ${e}: invalid option
990
+ `,2):Q(`bash: popd: too many arguments
991
+ `,2);if(n.length===0)return Q(`bash: popd: directory stack empty
992
+ `,1);let r=n.shift();if(!r)return Q(`bash: popd: directory stack empty
993
+ `,1);e.state.previousDir=e.state.cwd,e.state.cwd=r,e.state.env.set(`PWD`,r),e.state.env.set(`OLDPWD`,e.state.previousDir);let i=e.state.env.get(`HOME`)||``;return bj(`${[r,...n].map(e=>MN(e,i)).join(` `)}
994
+ `)}function IN(e,t){let n=jN(e),r=!1,i=!1,a=!1,o=!1;for(let e of t)if(e!==`--`)if(e.startsWith(`-`))for(let t of e.slice(1))if(t===`c`)r=!0;else if(t===`l`)i=!0;else if(t===`p`)a=!0;else if(t===`v`)a=!0,o=!0;else return Q(`bash: dirs: -${t}: invalid option
995
+ `,2);else return Q(`bash: dirs: too many arguments
996
+ `,1);if(r)return e.state.directoryStack=[],yj;let s=[e.state.cwd,...n],c=e.state.env.get(`HOME`)||``,l;return o?(l=s.map((e,t)=>` ${t} ${i?e:MN(e,c)}`).join(`
997
+ `),l+=`
998
+ `):l=a?s.map(e=>i?e:MN(e,c)).join(`
999
+ `)+`
1000
+ `:s.map(e=>i?e:MN(e,c)).join(` `)+`
1001
+ `,bj(l)}OE(),A();async function LN(e,t,n){let r=t;if(r.length>0){let e=r[0];if(e===`--`)r=r.slice(1);else if(e.startsWith(`-`)&&e!==`-`&&e.length>1)return Q(`bash: eval: ${e}: invalid option
1002
+ eval: usage: eval [arg ...]
1003
+ `,2)}if(r.length===0)return yj;let i=r.join(` `);if(i.trim()===``)return yj;let a=e.state.groupStdin,o=n??e.state.groupStdin;o!==void 0&&(e.state.groupStdin=o);try{let t=EE(i);return await e.executeScript(t)}catch(e){if(e instanceof Fr||e instanceof Ir||e instanceof Lr||e instanceof Br)throw e;if(e.name===`ParseException`)return Q(`bash: eval: ${e.message}
1004
+ `);throw e}finally{e.state.groupStdin=a}}A();function RN(e,t){let n,r=``;if(t.length===0)n=e.state.lastExitCode;else{let e=t[0],i=Number.parseInt(e,10);e===``||Number.isNaN(i)||!/^-?\d+$/.test(e)?(r=`bash: exit: ${e}: numeric argument required
1005
+ `,n=2):n=(i%256+256)%256}throw new Br(n,``,r)}uO();function zN(e,t){let n=!1,r=[];for(let e of t)e===`-n`?n=!0:e===`-p`||e===`--`||r.push(e);if(r.length===0&&!n){let t=``,n=e.state.exportedVars??new Set,r=Array.from(n).sort();for(let n of r){let r=e.state.env.get(n);if(r!==void 0){let e=r.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`);t+=`declare -x ${n}="${e}"
1006
+ `}}return bj(t)}if(n){for(let t of r){let n,r;if(t.includes(`=`)){let i=t.indexOf(`=`);n=t.slice(0,i),r=sN(e,t.slice(i+1)),e.state.env.set(n,r)}else n=t;lO(e,n)}return yj}let i=``,a=0;for(let t of r){let n,r,o=!1,s=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=(.*)$/);if(s)n=s[1],r=sN(e,s[2]),o=!0;else if(t.includes(`=`)){let i=t.indexOf(`=`);n=t.slice(0,i),r=sN(e,t.slice(i+1))}else n=t;if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(n)){i+=`bash: export: \`${t}': not a valid identifier
1007
+ `,a=1;continue}if(r!==void 0)if(o){let t=e.state.env.get(n)??``;e.state.env.set(n,t+r)}else e.state.env.set(n,r);else e.state.env.has(n)||e.state.env.set(n,``);cO(e,n)}return $(``,i,a)}function BN(e,t){if(t.length<2)return Q(`bash: getopts: usage: getopts optstring name [arg ...]
1008
+ `);let n=t[0],r=t[1],i=!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(r),a=n.startsWith(`:`),o=a?n.slice(1):n,s;if(t.length>2)s=t.slice(2);else{let t=Number.parseInt(e.state.env.get(`#`)||`0`,10);s=[];for(let n=1;n<=t;n++)s.push(e.state.env.get(String(n))||``)}let c=Number.parseInt(e.state.env.get(`OPTIND`)||`1`,10);c<1&&(c=1);let l=Number.parseInt(e.state.env.get(`__GETOPTS_CHARINDEX`)||`0`,10);if(e.state.env.set(`OPTARG`,``),c>s.length)return i||e.state.env.set(r,`?`),e.state.env.set(`OPTIND`,String(s.length+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`),{exitCode:i?2:1,stdout:``,stderr:``};let u=s[c-1];if(!u||u===`-`||!u.startsWith(`-`))return i||e.state.env.set(r,`?`),{exitCode:i?2:1,stdout:``,stderr:``};if(u===`--`)return e.state.env.set(`OPTIND`,String(c+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`),i||e.state.env.set(r,`?`),{exitCode:i?2:1,stdout:``,stderr:``};let d=l===0?1:l,f=u[d];if(!f)return e.state.env.set(`OPTIND`,String(c+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`),BN(e,t);let p=o.indexOf(f);if(p===-1){let t=``;return a?e.state.env.set(`OPTARG`,f):t=`bash: illegal option -- ${f}
1009
+ `,i||e.state.env.set(r,`?`),d+1<u.length?(e.state.env.set(`__GETOPTS_CHARINDEX`,String(d+1)),e.state.env.set(`OPTIND`,String(c))):(e.state.env.set(`OPTIND`,String(c+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`)),{exitCode:i?2:0,stdout:``,stderr:t}}if(p+1<o.length&&o[p+1]===`:`)if(d+1<u.length)e.state.env.set(`OPTARG`,u.slice(d+1)),e.state.env.set(`OPTIND`,String(c+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`);else{if(c>=s.length){let t=``;return a?(e.state.env.set(`OPTARG`,f),i||e.state.env.set(r,`:`)):(t=`bash: option requires an argument -- ${f}
1010
+ `,i||e.state.env.set(r,`?`)),e.state.env.set(`OPTIND`,String(c+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`),{exitCode:i?2:0,stdout:``,stderr:t}}e.state.env.set(`OPTARG`,s[c]),e.state.env.set(`OPTIND`,String(c+2)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`)}else d+1<u.length?(e.state.env.set(`__GETOPTS_CHARINDEX`,String(d+1)),e.state.env.set(`OPTIND`,String(c))):(e.state.env.set(`OPTIND`,String(c+1)),e.state.env.set(`__GETOPTS_CHARINDEX`,`0`));return i||e.state.env.set(r,f),{exitCode:i?2:0,stdout:``,stderr:``}}async function VN(e,t){e.state.hashTable||(e.state.hashTable=new Map);let n=!1,r=!1,i=!1,a=!1,o=!1,s=``,c=[],l=0;for(;l<t.length;){let e=t[l];if(e===`--`){l++,c.push(...t.slice(l));break}if(e===`-r`)n=!0,l++;else if(e===`-d`)r=!0,l++;else if(e===`-l`)i=!0,l++;else if(e===`-t`)o=!0,l++;else if(e===`-p`){if(a=!0,l++,l>=t.length)return Q(`bash: hash: -p: option requires an argument
1011
+ `,1);s=t[l],l++}else if(e.startsWith(`-`)&&e.length>1){for(let t of e.slice(1))if(t===`r`)n=!0;else if(t===`d`)r=!0;else if(t===`l`)i=!0;else if(t===`t`)o=!0;else return Q(t===`p`?`bash: hash: -p: option requires an argument
1012
+ `:`bash: hash: -${t}: invalid option
1013
+ `,1);l++}else c.push(e),l++}if(n)return e.state.hashTable.clear(),yj;if(r){if(c.length===0)return Q(`bash: hash: -d: option requires an argument
1014
+ `,1);let t=!1,n=``;for(let r of c)e.state.hashTable.has(r)?e.state.hashTable.delete(r):(n+=`bash: hash: ${r}: not found
1015
+ `,t=!0);return t?Q(n,1):yj}if(o){if(c.length===0)return Q(`bash: hash: -t: option requires an argument
1016
+ `,1);let t=``,n=!1,r=``;for(let i of c){let a=e.state.hashTable.get(i);a?c.length>1?t+=`${i} ${a}
1017
+ `:t+=`${a}
1018
+ `:(r+=`bash: hash: ${i}: not found
1019
+ `,n=!0)}return n?{exitCode:1,stdout:t,stderr:r}:bj(t)}if(a){if(c.length===0)return Q(`bash: hash: usage: hash [-lr] [-p pathname] [-dt] [name ...]
1020
+ `,1);let t=c[0];return e.state.hashTable.set(t,s),yj}if(c.length===0){if(e.state.hashTable.size===0)return bj(`hash: hash table empty
1021
+ `);let t=``;if(i)for(let[n,r]of e.state.hashTable)t+=`builtin hash -p ${r} ${n}
1022
+ `;else{t=`hits command
1023
+ `;for(let[,n]of e.state.hashTable)t+=` 1 ${n}
1024
+ `}return bj(t)}let u=!1,d=``,f=(e.state.env.get(`PATH`)||`/usr/bin:/bin`).split(`:`);for(let t of c){if(t.includes(`/`)){d+=`bash: hash: ${t}: cannot use / in name
1025
+ `,u=!0;continue}let n=!1;for(let r of f){if(!r)continue;let i=`${r}/${t}`;if(await e.fs.exists(i)){e.state.hashTable.set(t,i),n=!0;break}}n||(d+=`bash: hash: ${t}: not found
1026
+ `,u=!0)}return u?Q(d,1):yj}ks();var HN=new Map([[`:`,[`: [arguments]`,`Null command.
1027
+ No effect; the command does nothing.
1028
+ Exit Status:
1029
+ Always succeeds.`]],[`.`,[`. filename [arguments]`,`Execute commands from a file in the current shell.
1030
+ Read and execute commands from FILENAME in the current shell.
1031
+ The entries in $PATH are used to find the directory containing FILENAME.
1032
+ Exit Status:
1033
+ Returns the status of the last command executed in FILENAME.`]],[`[`,[`[ arg... ]`,`Evaluate conditional expression.
1034
+ This is a synonym for the "test" builtin, but the last argument must
1035
+ be a literal \`]', to match the opening \`['.`]],[`alias`,[`alias [-p] [name[=value] ... ]`,`Define or display aliases.
1036
+ Without arguments, \`alias' prints the list of aliases in the reusable
1037
+ form \`alias NAME=VALUE' on standard output.
1038
+ Exit Status:
1039
+ alias returns true unless a NAME is supplied for which no alias has been
1040
+ defined.`]],[`bg`,[`bg [job_spec ...]`,`Move jobs to the background.
1041
+ Place the jobs identified by each JOB_SPEC in the background, as if they
1042
+ had been started with \`&'.`]],[`break`,[`break [n]`,`Exit for, while, or until loops.
1043
+ Exit a FOR, WHILE or UNTIL loop. If N is specified, break N enclosing
1044
+ loops.
1045
+ Exit Status:
1046
+ The exit status is 0 unless N is not greater than or equal to 1.`]],[`builtin`,[`builtin [shell-builtin [arg ...]]`,`Execute shell builtins.
1047
+ Execute SHELL-BUILTIN with arguments ARGs without performing command
1048
+ lookup. This is useful when you wish to reimplement a shell builtin
1049
+ as a shell function, but need to execute the builtin within the function.
1050
+ Exit Status:
1051
+ Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is
1052
+ not a shell builtin.`]],[`caller`,[`caller [expr]`,`Return the context of the current subroutine call.
1053
+ Without EXPR, returns "$line $filename". With EXPR, returns
1054
+ "$line $subroutine $filename"; this extra information can be used to
1055
+ provide a stack trace.
1056
+ Exit Status:
1057
+ Returns 0 unless the shell is not executing a subroutine call or
1058
+ EXPR is invalid.`]],[`cd`,[`cd [-L|-P] [dir]`,`Change the shell working directory.
1059
+ Change the current directory to DIR. The default DIR is the value of the
1060
+ HOME shell variable.
1061
+
1062
+ The variable CDPATH defines the search path for the directory containing
1063
+ DIR. Alternative directory names in CDPATH are separated by a colon (:).
1064
+ A null directory name is the same as the current directory. If DIR begins
1065
+ with a slash (/), then CDPATH is not used.
1066
+
1067
+ If the directory is not found, and the shell option \`cdable_vars' is set,
1068
+ the word is assumed to be a variable name. If that variable has a value,
1069
+ its value is used for DIR.
1070
+
1071
+ Options:
1072
+ -L force symbolic links to be followed
1073
+ -P use the physical directory structure without following symbolic
1074
+ links
1075
+
1076
+ The default is to follow symbolic links, as if \`-L' were specified.
1077
+
1078
+ Exit Status:
1079
+ Returns 0 if the directory is changed; non-zero otherwise.`]],[`command`,[`command [-pVv] command [arg ...]`,`Execute a simple command or display information about commands.
1080
+ Runs COMMAND with ARGS suppressing shell function lookup, or display
1081
+ information about the specified COMMANDs.
1082
+
1083
+ Options:
1084
+ -p use a default value for PATH that is guaranteed to find all of
1085
+ the standard utilities
1086
+ -v print a description of COMMAND similar to the \`type' builtin
1087
+ -V print a more verbose description of each COMMAND
1088
+
1089
+ Exit Status:
1090
+ Returns exit status of COMMAND, or failure if COMMAND is not found.`]],[`compgen`,[`compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]`,`Display possible completions depending on the options.
1091
+ Intended to be used from within a shell function generating possible
1092
+ completions. If the optional WORD argument is supplied, matches against
1093
+ WORD are generated.
1094
+ Exit Status:
1095
+ Returns success unless an invalid option is supplied or an error occurs.`]],[`complete`,[`complete [-abcdefgjksuv] [-pr] [-DEI] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [name ...]`,`Specify how arguments are to be completed.
1096
+ For each NAME, specify how arguments are to be completed.
1097
+ Exit Status:
1098
+ Returns success unless an invalid option is supplied or an error occurs.`]],[`continue`,[`continue [n]`,`Resume for, while, or until loops.
1099
+ Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.
1100
+ If N is specified, resumes the Nth enclosing loop.
1101
+ Exit Status:
1102
+ The exit status is 0 unless N is not greater than or equal to 1.`]],[`declare`,[`declare [-aAfFgilnrtux] [-p] [name[=value] ...]`,`Set variable values and attributes.
1103
+ Declare variables and give them attributes. If no NAMEs are given,
1104
+ display the attributes and values of all variables.
1105
+
1106
+ Options:
1107
+ -a to make NAMEs indexed arrays (if supported)
1108
+ -A to make NAMEs associative arrays (if supported)
1109
+ -i to make NAMEs have the \`integer' attribute
1110
+ -l to convert the value of each NAME to lower case on assignment
1111
+ -n make NAME a reference to the variable named by its value
1112
+ -r to make NAMEs readonly
1113
+ -t to make NAMEs have the \`trace' attribute
1114
+ -u to convert the value of each NAME to upper case on assignment
1115
+ -x to make NAMEs export
1116
+
1117
+ Exit Status:
1118
+ Returns success unless an invalid option is supplied or a variable
1119
+ assignment error occurs.`]],[`dirs`,[`dirs [-clpv] [+N] [-N]`,`Display directory stack.
1120
+ Display the list of currently remembered directories. Directories
1121
+ find their way onto the list with the \`pushd' command; you can get
1122
+ back up through the list with the \`popd' command.
1123
+ Exit Status:
1124
+ Returns success unless an invalid option is supplied or an error occurs.`]],[`disown`,[`disown [-h] [-ar] [jobspec ...]`,`Remove jobs from current shell.
1125
+ Without any JOBSPECs, remove the current job.`]],[`echo`,[`echo [-neE] [arg ...]`,`Write arguments to the standard output.
1126
+ Display the ARGs, separated by a single space character and followed by a
1127
+ newline, on the standard output.
1128
+
1129
+ Options:
1130
+ -n do not append a newline
1131
+ -e enable interpretation of the following backslash escapes
1132
+ -E explicitly suppress interpretation of backslash escapes
1133
+
1134
+ Exit Status:
1135
+ Returns success unless a write error occurs.`]],[`enable`,[`enable [-a] [-dnps] [-f filename] [name ...]`,`Enable and disable shell builtins.
1136
+ Enables and disables builtin shell commands.
1137
+ Exit Status:
1138
+ Returns success unless NAME is not a shell builtin or an error occurs.`]],[`eval`,[`eval [arg ...]`,`Execute arguments as a shell command.
1139
+ Combine ARGs into a single string, use the result as input to the shell,
1140
+ and execute the resulting commands.
1141
+ Exit Status:
1142
+ Returns exit status of command or success if command is null.`]],[`exec`,[`exec [-cl] [-a name] [command [arguments ...]] [redirection ...]`,`Replace the shell with the given command.
1143
+ Execute COMMAND, replacing this shell with the specified program.
1144
+ ARGUMENTS become the arguments to COMMAND. If COMMAND is not specified,
1145
+ any redirections take effect in the current shell.
1146
+ Exit Status:
1147
+ Returns success unless COMMAND is not found or a redirection error occurs.`]],[`exit`,[`exit [n]`,`Exit the shell.
1148
+ Exits the shell with a status of N. If N is omitted, the exit status
1149
+ is that of the last command executed.`]],[`export`,[`export [-fn] [name[=value] ...] or export -p`,`Set export attribute for shell variables.
1150
+ Marks each NAME for automatic export to the environment of subsequently
1151
+ executed commands. If VALUE is supplied, assign VALUE before exporting.
1152
+
1153
+ Options:
1154
+ -f refer to shell functions
1155
+ -n remove the export property from each NAME
1156
+ -p display a list of all exported variables and functions
1157
+
1158
+ Exit Status:
1159
+ Returns success unless an invalid option is given or NAME is invalid.`]],[`false`,[`false`,`Return an unsuccessful result.
1160
+ Exit Status:
1161
+ Always fails.`]],[`fc`,[`fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]`,`Display or execute commands from the history list.
1162
+ Exit Status:
1163
+ Returns success or status of executed command.`]],[`fg`,[`fg [job_spec]`,`Move job to the foreground.
1164
+ Place the job identified by JOB_SPEC in the foreground, making it the
1165
+ current job.`]],[`getopts`,[`getopts optstring name [arg]`,`Parse option arguments.
1166
+ Getopts is used by shell procedures to parse positional parameters
1167
+ as options.
1168
+
1169
+ OPTSTRING contains the option letters to be recognized; if a letter
1170
+ is followed by a colon, the option is expected to have an argument,
1171
+ which should be separated from it by white space.
1172
+ Exit Status:
1173
+ Returns success if an option is found; fails if the end of options is
1174
+ encountered or an error occurs.`]],[`hash`,[`hash [-lr] [-p pathname] [-dt] [name ...]`,`Remember or display program locations.
1175
+ Determine and remember the full pathname of each command NAME.
1176
+ Exit Status:
1177
+ Returns success unless NAME is not found or an invalid option is given.`]],[`help`,[`help [-s] [pattern ...]`,`Display information about builtin commands.
1178
+ Displays brief summaries of builtin commands. If PATTERN is
1179
+ specified, gives detailed help on all commands matching PATTERN,
1180
+ otherwise the list of help topics is printed.
1181
+
1182
+ Options:
1183
+ -s output only a short usage synopsis for each topic matching
1184
+ PATTERN
1185
+
1186
+ Exit Status:
1187
+ Returns success unless PATTERN is not found.`]],[`history`,[`history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]`,`Display or manipulate the history list.
1188
+ Display the history list with line numbers, prefixing each modified
1189
+ entry with a \`*'.
1190
+ Exit Status:
1191
+ Returns success unless an invalid option is given or an error occurs.`]],[`jobs`,[`jobs [-lnprs] [jobspec ...] or jobs -x command [args]`,`Display status of jobs.
1192
+ Lists the active jobs.
1193
+ Exit Status:
1194
+ Returns success unless an invalid option is given or an error occurs.`]],[`kill`,[`kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]`,`Send a signal to a job.
1195
+ Send the processes identified by PID or JOBSPEC the signal named by
1196
+ SIGSPEC or SIGNUM.
1197
+ Exit Status:
1198
+ Returns success unless an invalid option is given or an error occurs.`]],[`let`,[`let arg [arg ...]`,`Evaluate arithmetic expressions.
1199
+ Evaluate each ARG as an arithmetic expression. Evaluation is done in
1200
+ fixed-width integers with no check for overflow, though division by 0
1201
+ is trapped and flagged as an error.
1202
+ Exit Status:
1203
+ If the last ARG evaluates to 0, let returns 1; 0 is returned otherwise.`]],[`local`,[`local [option] name[=value] ...`,`Define local variables.
1204
+ Create a local variable called NAME, and give it VALUE. OPTION can
1205
+ be any option accepted by \`declare'.
1206
+
1207
+ Local can only be used within a function; it makes the variable NAME
1208
+ have a visible scope restricted to that function and its children.
1209
+ Exit Status:
1210
+ Returns success unless an invalid option is supplied, a variable
1211
+ assignment error occurs, or the shell is not executing a function.`]],[`logout`,[`logout [n]`,`Exit a login shell.
1212
+ Exits a login shell with exit status N. Returns an error if not executed
1213
+ in a login shell.`]],[`mapfile`,[`mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]`,`Read lines from the standard input into an indexed array variable.
1214
+ Read lines from the standard input into the indexed array variable ARRAY,
1215
+ or from file descriptor FD if the -u option is supplied.
1216
+
1217
+ Options:
1218
+ -d delim Use DELIM to terminate lines, instead of newline
1219
+ -n count Copy at most COUNT lines
1220
+ -O origin Begin assigning to ARRAY at index ORIGIN
1221
+ -s count Discard the first COUNT lines read
1222
+ -t Remove a trailing DELIM from each line read (default newline)
1223
+ -u fd Read lines from file descriptor FD instead of standard input
1224
+
1225
+ Exit Status:
1226
+ Returns success unless an invalid option is given or ARRAY is readonly.`]],[`popd`,[`popd [-n] [+N | -N]`,`Remove directories from stack.
1227
+ Removes entries from the directory stack.
1228
+ Exit Status:
1229
+ Returns success unless an invalid argument is supplied or the directory
1230
+ change fails.`]],[`printf`,[`printf [-v var] format [arguments]`,`Formats and prints ARGUMENTS under control of the FORMAT.
1231
+
1232
+ Options:
1233
+ -v var assign the output to shell variable VAR rather than
1234
+ display it on the standard output
1235
+
1236
+ FORMAT is a character string which contains three types of objects: plain
1237
+ characters, which are simply copied to standard output; character escape
1238
+ sequences, which are converted and copied to the standard output; and
1239
+ format specifications, each of which causes printing of the next successive
1240
+ argument.
1241
+ Exit Status:
1242
+ Returns success unless an invalid option is given or a write or assignment
1243
+ error occurs.`]],[`pushd`,[`pushd [-n] [+N | -N | dir]`,`Add directories to stack.
1244
+ Adds a directory to the top of the directory stack, or rotates
1245
+ the stack, making the new top of the stack the current working
1246
+ directory.
1247
+ Exit Status:
1248
+ Returns success unless an invalid argument is supplied or the directory
1249
+ change fails.`]],[`pwd`,[`pwd [-LP]`,`Print the name of the current working directory.
1250
+
1251
+ Options:
1252
+ -L print the value of $PWD if it names the current working
1253
+ directory
1254
+ -P print the physical directory, without any symbolic links
1255
+
1256
+ By default, \`pwd' behaves as if \`-L' were specified.
1257
+ Exit Status:
1258
+ Returns 0 unless an invalid option is given or the current directory
1259
+ cannot be read.`]],[`read`,[`read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]`,`Read a line from the standard input and split it into fields.
1260
+ Reads a single line from the standard input, or from file descriptor FD
1261
+ if the -u option is supplied. The line is split into fields as with word
1262
+ splitting, and the first word is assigned to the first NAME, the second
1263
+ word to the second NAME, and so on, with any leftover words assigned to
1264
+ the last NAME.
1265
+ Exit Status:
1266
+ The return code is zero, unless end-of-file is encountered, read times out,
1267
+ or an invalid file descriptor is supplied as the argument to -u.`]],[`readarray`,[`readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]`,`Read lines from a file into an array variable.
1268
+ A synonym for \`mapfile'.`]],[`readonly`,[`readonly [-aAf] [name[=value] ...] or readonly -p`,`Mark shell variables as unchangeable.
1269
+ Mark each NAME as read-only; the values of these NAMEs may not be
1270
+ changed by subsequent assignment.
1271
+ Exit Status:
1272
+ Returns success unless an invalid option is given or NAME is invalid.`]],[`return`,[`return [n]`,`Return from a shell function.
1273
+ Causes a function or sourced script to exit with the return value
1274
+ specified by N. If N is omitted, the return status is that of the
1275
+ last command executed within the function or script.
1276
+ Exit Status:
1277
+ Returns N, or failure if the shell is not executing a function or script.`]],[`set`,[`set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]`,`Set or unset values of shell options and positional parameters.
1278
+ Change the value of shell attributes and positional parameters, or
1279
+ display the names and values of shell variables.
1280
+
1281
+ Options:
1282
+ -e Exit immediately if a command exits with a non-zero status.
1283
+ -u Treat unset variables as an error when substituting.
1284
+ -x Print commands and their arguments as they are executed.
1285
+ -o option-name
1286
+ Set the variable corresponding to option-name
1287
+
1288
+ Exit Status:
1289
+ Returns success unless an invalid option is given.`]],[`shift`,[`shift [n]`,`Shift positional parameters.
1290
+ Rename the positional parameters $N+1,$N+2 ... to $1,$2 ... If N is
1291
+ not given, it is assumed to be 1.
1292
+ Exit Status:
1293
+ Returns success unless N is negative or greater than $#.`]],[`shopt`,[`shopt [-pqsu] [-o] [optname ...]`,`Set and unset shell options.
1294
+ Change the setting of each shell option OPTNAME. Without any option
1295
+ arguments, list each supplied OPTNAME, or all shell options if no
1296
+ OPTNAMEs are given, with an indication of whether or not each is set.
1297
+
1298
+ Options:
1299
+ -o restrict OPTNAMEs to those defined for use with \`set -o'
1300
+ -p print each shell option with an indication of its status
1301
+ -q suppress output
1302
+ -s enable (set) each OPTNAME
1303
+ -u disable (unset) each OPTNAME
1304
+
1305
+ Exit Status:
1306
+ Returns success if OPTNAME is enabled; fails if an invalid option is
1307
+ given or OPTNAME is disabled.`]],[`source`,[`source filename [arguments]`,`Execute commands from a file in the current shell.
1308
+ Read and execute commands from FILENAME in the current shell.
1309
+ The entries in $PATH are used to find the directory containing FILENAME.
1310
+ Exit Status:
1311
+ Returns the status of the last command executed in FILENAME.`]],[`suspend`,[`suspend [-f]`,`Suspend shell execution.
1312
+ Suspend the execution of this shell until it receives a SIGCONT signal.`]],[`test`,[`test [expr]`,`Evaluate conditional expression.
1313
+ Exits with a status of 0 (true) or 1 (false) depending on
1314
+ the evaluation of EXPR. Expressions may be unary or binary.
1315
+ Exit Status:
1316
+ Returns success if EXPR evaluates to true; fails if EXPR evaluates to
1317
+ false or an invalid argument is given.`]],[`times`,[`times`,`Display process times.
1318
+ Prints the accumulated user and system times for the shell and all of its
1319
+ child processes.
1320
+ Exit Status:
1321
+ Always succeeds.`]],[`trap`,[`trap [-lp] [[arg] signal_spec ...]`,`Trap signals and other events.
1322
+ Defines and activates handlers to be run when the shell receives signals
1323
+ or other conditions.
1324
+ Exit Status:
1325
+ Returns success unless a SIGSPEC is invalid or an invalid option is given.`]],[`true`,[`true`,`Return a successful result.
1326
+ Exit Status:
1327
+ Always succeeds.`]],[`type`,[`type [-afptP] name [name ...]`,`Display information about command type.
1328
+ For each NAME, indicate how it would be interpreted if used as a
1329
+ command name.
1330
+
1331
+ Options:
1332
+ -a display all locations containing an executable named NAME
1333
+ -f suppress shell function lookup
1334
+ -P force a PATH search for each NAME, even if it is an alias,
1335
+ builtin, or function, and returns the name of the disk file
1336
+ that would be executed
1337
+ -p returns either the name of the disk file that would be executed,
1338
+ or nothing if \`type -t NAME' would not return \`file'
1339
+ -t output a single word which is one of \`alias', \`keyword',
1340
+ \`function', \`builtin', \`file' or \`', if NAME is an alias,
1341
+ shell reserved word, shell function, shell builtin, disk file,
1342
+ or not found, respectively
1343
+
1344
+ Exit Status:
1345
+ Returns success if all of the NAMEs are found; fails if any are not found.`]],[`typeset`,[`typeset [-aAfFgilnrtux] [-p] name[=value] ...`,`Set variable values and attributes.
1346
+ A synonym for \`declare'.`]],[`ulimit`,[`ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]`,`Modify shell resource limits.
1347
+ Provides control over the resources available to the shell and processes
1348
+ it creates, on systems that allow such control.
1349
+ Exit Status:
1350
+ Returns success unless an invalid option is supplied or an error occurs.`]],[`umask`,[`umask [-p] [-S] [mode]`,`Display or set file mode mask.
1351
+ Sets the user file-creation mask to MODE. If MODE is omitted, prints
1352
+ the current value of the mask.
1353
+ Exit Status:
1354
+ Returns success unless MODE is invalid or an invalid option is given.`]],[`unalias`,[`unalias [-a] name [name ...]`,`Remove each NAME from the list of defined aliases.
1355
+ Exit Status:
1356
+ Returns success unless a NAME is not an existing alias.`]],[`unset`,[`unset [-f] [-v] [-n] [name ...]`,`Unset values and attributes of shell variables and functions.
1357
+ For each NAME, remove the corresponding variable or function.
1358
+
1359
+ Options:
1360
+ -f treat each NAME as a shell function
1361
+ -v treat each NAME as a shell variable
1362
+ -n treat each NAME as a name reference and unset the variable itself
1363
+ rather than the variable it references
1364
+
1365
+ Without options, unset first tries to unset a variable, and if that fails,
1366
+ tries to unset a function.
1367
+ Exit Status:
1368
+ Returns success unless an invalid option is given or a NAME is read-only.`]],[`wait`,[`wait [-fn] [id ...]`,`Wait for job completion and return exit status.
1369
+ Waits for each process identified by an ID, which may be a process ID or a
1370
+ job specification, and reports its termination status.
1371
+ Exit Status:
1372
+ Returns the status of the last ID; fails if ID is invalid or an invalid
1373
+ option is given.`]]]),UN=[...HN.keys()].sort();function WN(e,t){let n=!1,r=[],i=0;for(;i<t.length;){let e=t[i];if(e===`--`){for(i++;i<t.length;)r.push(t[i]),i++;break}if(e.startsWith(`-`)&&e.length>1){for(let t=1;t<e.length;t++){let r=e[t];if(r===`s`)n=!0;else return Q(`bash: help: -${r}: invalid option
1374
+ `,2)}i++}else r.push(e),i++}if(r.length===0)return KN();let a=``,o=!1,s=``;for(let e of r){let t=GN(e);if(t.length===0){s+=`bash: help: no help topics match \`${e}'. Try \`help help' or \`man -k ${e}' or \`info ${e}'.
1375
+ `,o=!0;continue}for(let e of t){let t=HN.get(e);if(!t)continue;let[r,i]=t;n?a+=`${e}: ${r}
1376
+ `:a+=`${e}: ${r}
1377
+ ${i}
1378
+ `}}return{exitCode:+!!o,stdout:a,stderr:s}}function GN(e){let t=z(`^${e.replace(/[.+^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`.*`).replace(/\?/g,`.`)}$`);return UN.filter(e=>t.test(e))}function KN(){let e=[];e.push(`just-bash shell builtins`),e.push("These shell commands are defined internally. Type `help' to see this list."),e.push("Type `help name' to find out more about the function `name'."),e.push(``);let t=UN.slice(),n=Math.ceil(t.length/2);for(let r=0;r<n;r++){let i=t[r]||``,a=t[r+n]||``,o=i.padEnd(36);e.push(a?`${o}${a}`:i)}return bj(`${e.join(`
1379
+ `)}
1380
+ `)}OE(),CA();function qN(e){let t=[],n=``,r=0;for(let i of e){for(let e of i)e===`(`?r++:e===`)`&&r--;n?n+=` ${i}`:n=i,r===0&&(t.push(n),n=``)}return n&&t.push(n),t}async function JN(e,t){if(t.length===0)return Q(`bash: let: expression expected
1381
+ `);let n=qN(t),r=0;for(let t of n)try{let n=EE(`(( ${t} ))`).statements[0];if(n&&n.pipelines.length>0&&n.pipelines[0].commands.length>0){let t=n.pipelines[0].commands[0];t.type===`ArithmeticCommand`&&(r=await Z(e,t.expression.expression))}}catch(e){return Q(`bash: let: ${t}: ${e.message}
1382
+ `)}return $(``,``,+(r===0))}ET(),OE(),CA(),ZE(),xD(),uO();async function YN(e,t){if(e.state.localScopes.length===0)return Q(`bash: local: can only be used in a function
1383
+ `);let n=e.state.localScopes[e.state.localScopes.length-1],r=``,i=0,a=!1,o=!1,s=[];for(let e of t)if(e===`-n`)a=!0;else if(e===`-a`)o=!0;else if(e!==`-p`)if(e.startsWith(`-`)&&!e.includes(`=`))for(let t of e.slice(1))t===`n`?a=!0:t===`a`&&(o=!0);else s.push(e);if(s.length===0){let t=``,r=Array.from(n.keys()).filter(e=>!e.includes(`_`)||!e.match(/_\d+$/)).filter(e=>!e.includes(`__length`)).sort();for(let n of r){let r=e.state.env.get(n);r!==void 0&&(t+=`${n}=${r}
1384
+ `)}return $(t,``,0)}for(let t of s){let s,c,l=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)=\((.*)\)$/s);if(l){s=l[1];let o=l[2];if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(s)){r+=`bash: local: \`${t}': not a valid identifier
1385
+ `,i=1;continue}if(sO(e,s,`bash`),!n.has(s)){n.set(s,e.state.env.get(s));let t=`${s}_`;for(let r of e.state.env.keys())r.startsWith(t)&&!r.includes(`__`)&&(n.has(r)||n.set(r,e.state.env.get(r)))}let c=`${s}_`;for(let t of e.state.env.keys())t.startsWith(c)&&!t.includes(`__`)&&e.state.env.delete(t);let u=cM(o);for(let t=0;t<u.length;t++)e.state.env.set(`${s}_${t}`,u[t]);e.state.env.set(`${s}__length`,String(u.length)),pM(e,s),a&&fD(e,s);continue}let u=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=\((.*)\)$/s);if(u){s=u[1];let t=u[2];if(sO(e,s,`bash`),!n.has(s)){n.set(s,e.state.env.get(s));let t=`${s}_`;for(let r of e.state.env.keys())r.startsWith(t)&&!r.includes(`__`)&&(n.has(r)||n.set(r,e.state.env.get(r)));let r=`${s}__length`;e.state.env.has(r)&&!n.has(r)&&n.set(r,e.state.env.get(r))}let r=cM(t),i=WE(e,s),o=0,c=e.state.env.get(s);i.length===0&&c!==void 0?(e.state.env.set(`${s}_0`,c),e.state.env.delete(s),o=1):i.length>0&&(o=Math.max(...i)+1);for(let t=0;t<r.length;t++)e.state.env.set(`${s}_${o+t}`,sN(e,r[t]));let l=o+r.length;e.state.env.set(`${s}__length`,String(l)),pM(e,s),a&&fD(e,s);continue}let d=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\+=(.*)$/);if(d){s=d[1];let t=sN(e,d[2]);sO(e,s,`bash`),n.has(s)||n.set(s,e.state.env.get(s));let r=e.state.env.get(s)??``;e.state.env.set(s,r+t),pM(e,s),a&&fD(e,s);continue}let f=t.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[([^\]]+)\]=(.*)$/s);if(f){s=f[1];let t=f[2],r=sN(e,f[3]);if(sO(e,s,`bash`),!n.has(s)){n.set(s,e.state.env.get(s));let t=`${s}_`;for(let r of e.state.env.keys())r.startsWith(t)&&!r.includes(`__`)&&(n.has(r)||n.set(r,e.state.env.get(r)));let r=`${s}__length`;e.state.env.has(r)&&!n.has(r)&&n.set(r,e.state.env.get(r))}let i;try{i=await Z(e,aT(new DE,t).expression)}catch{let e=parseInt(t,10);i=Number.isNaN(e)?0:e}e.state.env.set(`${s}_${i}`,r);let o=parseInt(e.state.env.get(`${s}__length`)??`0`,10);i>=o&&e.state.env.set(`${s}__length`,String(i+1)),pM(e,s),a&&fD(e,s);continue}if(t.includes(`=`)){let n=t.indexOf(`=`);s=t.slice(0,n),c=sN(e,t.slice(n+1))}else s=t;if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(s)){r+=`bash: local: \`${t}': not a valid identifier
1386
+ `,i=1;continue}let p=n.has(s);if(c!==void 0){let t=e.state.env.get(s);if(e.state.tempEnvBindings){let n=e.state.accessedTempEnvVars?.has(s),r=e.state.mutatedTempEnvVars?.has(s);if(!n&&!r)for(let n=e.state.tempEnvBindings.length-1;n>=0;n--){let r=e.state.tempEnvBindings[n];if(r.has(s)){t=r.get(s);break}}}gM(e,s,t)}if(!p){let t=e.state.env.get(s);if(e.state.tempEnvBindings)for(let n=e.state.tempEnvBindings.length-1;n>=0;n--){let r=e.state.tempEnvBindings[n];if(r.has(s)){t=r.get(s);break}}if(n.set(s,t),o){let t=`${s}_`;for(let r of e.state.env.keys())r.startsWith(t)&&!r.includes(`__`)&&(n.has(r)||n.set(r,e.state.env.get(r)));let r=`${s}__length`;e.state.env.has(r)&&!n.has(r)&&n.set(r,e.state.env.get(r))}}if(o&&c===void 0){let t=`${s}_`;for(let n of e.state.env.keys())n.startsWith(t)&&!n.includes(`__`)&&e.state.env.delete(n);e.state.env.set(`${s}__length`,`0`)}else if(c!==void 0){if(sO(e,s,`bash`),a&&c!==``&&!/^[a-zA-Z_][a-zA-Z0-9_]*(\[.+\])?$/.test(c)){r+=`bash: local: \`${c}': invalid variable name for name reference
1387
+ `,i=1;continue}e.state.env.set(s,c),e.state.options.allexport&&(e.state.exportedVars=e.state.exportedVars||new Set,e.state.exportedVars.add(s))}else{let t=e.state.tempEnvBindings?.some(e=>e.has(s));!p&&!t&&e.state.env.delete(s)}pM(e,s),a&&fD(e,s)}return $(``,r,i)}ZE();function XN(e,t,n){let r=`
1388
+ `,i=0,a=0,o=0,s=!1,c=`MAPFILE`,l=0;for(;l<t.length;){let e=t[l];e===`-d`&&l+1<t.length?(r=t[l+1]===``?`\0`:t[l+1]||`
1389
+ `,l+=2):e===`-n`&&l+1<t.length?(i=Number.parseInt(t[l+1],10)||0,l+=2):e===`-O`&&l+1<t.length?(a=Number.parseInt(t[l+1],10)||0,l+=2):e===`-s`&&l+1<t.length?(o=Number.parseInt(t[l+1],10)||0,l+=2):e===`-t`?(s=!0,l++):e===`-u`||e===`-C`||e===`-c`?l+=2:(e.startsWith(`-`)||(c=e),l++)}let u=n;!u&&e.state.groupStdin!==void 0&&(u=e.state.groupStdin);let d=[],f=u,p=0,m=0,h=e.limits?.maxArrayElements??1e5;for(;f.length>0;){let e=f.indexOf(r);if(e===-1){if(f.length>0){if(m<o)m++;else if(i===0||p<i){if(a+p>=h)return $(``,`mapfile: array element limit exceeded (${h})
1390
+ `,1);let e=f,t=e.indexOf(`\0`);t!==-1&&(e=e.substring(0,t)),d.push(e),p++}}break}let t=f.substring(0,e),n=t.indexOf(`\0`);if(n!==-1&&(t=t.substring(0,n)),!s&&r!==`\0`&&(t+=r),f=f.substring(e+r.length),m<o){m++;continue}if(i>0&&p>=i)break;if(a+p>=h)return $(``,`mapfile: array element limit exceeded (${h})
1391
+ `,1);d.push(t),p++}a===0&&GE(e,c);for(let t=0;t<d.length;t++)e.state.env.set(`${c}_${a+t}`,d[t]);let g=parseInt(e.state.env.get(`${c}__length`)||`0`,10),_=a+d.length;return e.state.env.set(`${c}__length`,String(Math.max(g,_))),e.state.groupStdin!==void 0&&!n&&(e.state.groupStdin=``),$(``,``,0)}ZE(),uD();function ZN(e){if(!e.startsWith(`__rw__:`))return null;let t=e.slice(7),n=t.indexOf(`:`);if(n===-1)return null;let r=Number.parseInt(t.slice(0,n),10);if(Number.isNaN(r)||r<0)return null;let i=n+1,a=t.slice(i,i+r),o=i+r+1,s=t.slice(o),c=s.indexOf(`:`);if(c===-1)return null;let l=Number.parseInt(s.slice(0,c),10);return Number.isNaN(l)||l<0?null:{path:a,position:l,content:s.slice(c+1)}}function QN(e,t,n){return`__rw__:${e.length}:${e}:${t}:${n}`}function $N(e,t,n,r=-1){let i=!1,a=`
1392
+ `,o=-1,s=-1,c=null,l=-1,u=-1,d=[],f=0,p=!1,m=(e,n)=>{let r=1;for(;r<e.length;){let d=e[r];if(d===`r`)i=!0,r++;else if(d===`s`)r++;else{if(d===`d`)return r+1<e.length?(a=e.substring(r+1),{nextArgIndex:n+1}):n+1<t.length?(a=t[n+1],{nextArgIndex:n+2}):{nextArgIndex:n+1};if(d===`n`){if(r+1<e.length){let t=e.substring(r+1);return o=Number.parseInt(t,10),(Number.isNaN(o)||o<0)&&(p=!0,o=0),{nextArgIndex:n+1}}else if(n+1<t.length)return o=Number.parseInt(t[n+1],10),(Number.isNaN(o)||o<0)&&(p=!0,o=0),{nextArgIndex:n+2};return{nextArgIndex:n+1}}else if(d===`N`){if(r+1<e.length){let t=e.substring(r+1);return s=Number.parseInt(t,10),(Number.isNaN(s)||s<0)&&(p=!0,s=0),{nextArgIndex:n+1}}else if(n+1<t.length)return s=Number.parseInt(t[n+1],10),(Number.isNaN(s)||s<0)&&(p=!0,s=0),{nextArgIndex:n+2};return{nextArgIndex:n+1}}else{if(d===`a`)return r+1<e.length?(c=e.substring(r+1),{nextArgIndex:n+1}):n+1<t.length?(c=t[n+1],{nextArgIndex:n+2}):{nextArgIndex:n+1};if(d===`p`)return r+1<e.length?(e.substring(r+1),{nextArgIndex:n+1}):n+1<t.length?(t[n+1],{nextArgIndex:n+2}):{nextArgIndex:n+1};if(d===`u`){if(r+1<e.length){let t=e.substring(r+1);return l=Number.parseInt(t,10),Number.isNaN(l)||l<0?{nextArgIndex:-2}:{nextArgIndex:n+1}}else if(n+1<t.length)return l=Number.parseInt(t[n+1],10),Number.isNaN(l)||l<0?{nextArgIndex:-2}:{nextArgIndex:n+2};return{nextArgIndex:n+1}}else if(d===`t`){if(r+1<e.length){let t=e.substring(r+1);return u=Number.parseFloat(t),Number.isNaN(u)&&(u=0),{nextArgIndex:n+1}}else if(n+1<t.length)return u=Number.parseFloat(t[n+1]),Number.isNaN(u)&&(u=0),{nextArgIndex:n+2};return{nextArgIndex:n+1}}else if(d===`e`||d===`i`||d===`P`){if(d===`i`&&n+1<t.length)return{nextArgIndex:n+2};r++}else r++}}}return{nextArgIndex:n+1}};for(;f<t.length;){let e=t[f];if(e.startsWith(`-`)&&e.length>1&&e!==`--`){let t=m(e,f);if(t.nextArgIndex===-1)return{stdout:``,stderr:``,exitCode:2};if(t.nextArgIndex===-2)return{stdout:``,stderr:``,exitCode:1};f=t.nextArgIndex}else if(e===`--`)for(f++;f<t.length;)d.push(t[f]),f++;else d.push(e),f++}if(p)return $(``,``,1);if(d.length===0&&c===null&&d.push(`REPLY`),u===0){if(c)GE(e,c);else{for(let t of d)e.state.env.set(t,``);d.length===0&&e.state.env.set(`REPLY`,``)}return $(``,``,0)}if(u<0&&u!==-1)return $(``,``,1);let h=n;l>=0?h=e.state.fileDescriptors&&e.state.fileDescriptors.get(l)||``:!h&&e.state.groupStdin!==void 0&&(h=e.state.groupStdin);let g=a===``?`\0`:a,_=``,v=0,y=!0,ee=t=>{if(l>=0&&e.state.fileDescriptors)e.state.fileDescriptors.set(l,h.substring(t));else if(r>=0&&e.state.fileDescriptors){let n=e.state.fileDescriptors.get(r);if(n?.startsWith(`__rw__:`)){let i=ZN(n);if(i){let n=i.position+t;e.state.fileDescriptors.set(r,QN(i.path,n,i.content))}}}else e.state.groupStdin!==void 0&&!n&&(e.state.groupStdin=h.substring(t))};if(s>=0){let t=Math.min(s,h.length);_=h.substring(0,t),v=t,y=t>=s,ee(v);let n=d[0]||`REPLY`;e.state.env.set(n,_);for(let t=1;t<d.length;t++)e.state.env.set(d[t],``);return $(``,``,+!y)}else if(o>=0){let e=0,t=0,n=!1;for(;t<h.length&&e<o;){let r=h[t];if(r===g){v=t+1,n=!0;break}if(!i&&r===`\\`&&t+1<h.length){let n=h[t+1];if(n===g&&g===`
1393
+ `){t+=2,v=t;continue}if(n===g){t+=2,e++,_+=n,v=t;continue}_+=n,t+=2,e++,v=t}else _+=r,t++,e++,v=t}y=e>=o||n,ee(v)}else{v=0;let t=0;for(;t<h.length;){let e=h[t];if(e===g){v=t+g.length,y=!0;break}if(!i&&e===`\\`&&t+1<h.length){let n=h[t+1];if(n===`
1394
+ `){t+=2;continue}if(n===g){_+=n,t+=2;continue}_+=e,_+=n,t+=2;continue}_+=e,t++}if(t>=h.length&&(y=!1,v=t,_.length===0&&h.length===0)){for(let t of d)e.state.env.set(t,``);return c&&GE(e,c),$(``,``,1)}ee(v)}g===`
1395
+ `&&_.endsWith(`
1396
+ `)&&(_=_.slice(0,-1));let te=e=>i?e:e.replace(/\\(.)/g,`$1`);if(d.length===1&&d[0]===`REPLY`)return e.state.env.set(`REPLY`,te(_)),$(``,``,+!y);let ne=QE(e.state.env);if(c){let{words:t}=iD(_,ne,void 0,i),n=e.limits?.maxArrayElements??1e5;if(t.length>n)return $(``,`read: array element limit exceeded (${n})
1397
+ `,1);GE(e,c);for(let n=0;n<t.length;n++)e.state.env.set(`${c}_${n}`,te(t[n]));return $(``,``,+!y)}let re=d.length,{words:ie,wordStarts:b}=iD(_,ne,re,i);for(let t=0;t<d.length;t++){let n=d[t];if(t<d.length-1)e.state.env.set(n,te(ie[t]??``));else if(t<b.length){let r=_.substring(b[t]);r=cD(r,ne,i),r=te(r),e.state.env.set(n,r)}else e.state.env.set(n,``)}return $(``,``,+!y)}A();function eP(e,t){if(e.state.callDepth===0&&e.state.sourceDepth===0)return Q(`bash: return: can only \`return' from a function or sourced script
1398
+ `);let n=e.state.lastExitCode;if(t.length>0){let e=t[0],r=Number.parseInt(e,10);if(e===``||Number.isNaN(r)||!/^-?\d+$/.test(e))return Q(`bash: return: ${e}: numeric argument required
1399
+ `,2);n=(r%256+256)%256}throw new Lr(n)}A(),ZE();var tP=`set: usage: set [-eux] [+eux] [-o option] [+o option]
1400
+ Options:
1401
+ -e Exit immediately if a command exits with non-zero status
1402
+ +e Disable -e
1403
+ -u Treat unset variables as an error when substituting
1404
+ +u Disable -u
1405
+ -x Print commands and their arguments as they are executed
1406
+ +x Disable -x
1407
+ -o errexit Same as -e
1408
+ +o errexit Disable errexit
1409
+ -o nounset Same as -u
1410
+ +o nounset Disable nounset
1411
+ -o pipefail Return status of last failing command in pipeline
1412
+ +o pipefail Disable pipefail
1413
+ -o xtrace Same as -x
1414
+ +o xtrace Disable xtrace
1415
+ `,nP=new Map([[`e`,`errexit`],[`u`,`nounset`],[`x`,`xtrace`],[`v`,`verbose`],[`f`,`noglob`],[`C`,`noclobber`],[`a`,`allexport`],[`n`,`noexec`],[`h`,null],[`b`,null],[`m`,null],[`B`,null],[`H`,null],[`P`,null],[`T`,null],[`E`,null],[`p`,null]]),rP=new Map([[`errexit`,`errexit`],[`pipefail`,`pipefail`],[`nounset`,`nounset`],[`xtrace`,`xtrace`],[`verbose`,`verbose`],[`noclobber`,`noclobber`],[`noglob`,`noglob`],[`allexport`,`allexport`],[`noexec`,`noexec`],[`posix`,`posix`],[`vi`,`vi`],[`emacs`,`emacs`],[`notify`,null],[`monitor`,null],[`braceexpand`,null],[`histexpand`,null],[`physical`,null],[`functrace`,null],[`errtrace`,null],[`privileged`,null],[`hashall`,null],[`ignoreeof`,null],[`interactive-comments`,null],[`keyword`,null],[`onecmd`,null]]),iP=[`errexit`,`nounset`,`pipefail`,`verbose`,`xtrace`,`posix`,`allexport`,`noclobber`,`noglob`,`noexec`,`vi`,`emacs`],aP=[`braceexpand`,`errtrace`,`functrace`,`hashall`,`histexpand`,`history`,`ignoreeof`,`interactive-comments`,`keyword`,`monitor`,`nolog`,`notify`,`onecmd`,`physical`,`privileged`];function oP(e,t,n){t!==null&&(n&&(t===`vi`?e.state.options.emacs=!1:t===`emacs`&&(e.state.options.vi=!1)),e.state.options[t]=n,ij(e))}function sP(e,t){return t+1<e.length&&!e[t+1].startsWith(`-`)&&!e[t+1].startsWith(`+`)}function cP(e,t){let n=WE(e,t);return n.length===0?`${t}=()`:`${t}=(${n.map(n=>`[${n}]=${dN(e.state.env.get(`${t}_${n}`)??``)}`).join(` `)})`}function lP(e){return/^[a-zA-Z0-9_]+$/.test(e)?e:`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`}function uP(e,t){let n=KE(e,t);return n.length===0?`${t}=()`:`${t}=(${n.map(n=>{let r=e.state.env.get(`${t}_${n}`)??``;return`[${lP(n)}]=${dN(r)}`}).join(` `)} )`}function dP(e){let t=new Set,n=e.state.associativeArrays??new Set;for(let r of e.state.env.keys()){let e=r.match(/^([a-zA-Z_][a-zA-Z0-9_]*)_(\d+)$/);if(e){let r=e[1];n.has(r)||t.add(r)}}return t}function fP(e){return e.state.associativeArrays??new Set}function pP(e){let t=iP.map(t=>`${t.padEnd(16)}${e.state.options[t]?`on`:`off`}`),n=aP.map(e=>`${e.padEnd(16)}off`);return`${[...t,...n].sort().join(`
1416
+ `)}
1417
+ `}function mP(e){let t=iP.map(t=>`set ${e.state.options[t]?`-o`:`+o`} ${t}`),n=aP.map(e=>`set +o ${e}`);return`${[...t,...n].sort().join(`
1418
+ `)}
1419
+ `}function hP(e,t){if(t.includes(`--help`))return bj(tP);if(t.length===0){let t=dP(e),n=fP(e),r=e=>{for(let t of n){let n=`${t}_`;if(e!==`${t}__length`&&e.startsWith(n)){if(e.slice(n.length).startsWith(`_length`))continue;return!0}}return!1},i=[];for(let[a,o]of e.state.env){if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(a)||t.has(a)||n.has(a))continue;let e=a.match(/^([a-zA-Z_][a-zA-Z0-9_]*)_(\d+)$/);if(e&&t.has(e[1]))continue;let s=a.match(/^([a-zA-Z_][a-zA-Z0-9_]*)__length$/);s&&t.has(s[1])||r(a)||s&&n.has(s[1])||i.push([a,o])}let a=[];for(let[e,t]of i.sort(([e],[t])=>e<t?-1:+(e>t)))a.push(`${e}=${uN(t)}`);for(let n of[...t].sort((e,t)=>e<t?-1:+(e>t)))a.push(cP(e,n));for(let t of[...n].sort((e,t)=>e<t?-1:+(e>t)))a.push(uP(e,t));return a.sort((e,t)=>{let n=e.split(`=`)[0],r=t.split(`=`)[0];return n<r?-1:+(n>r)}),bj(a.length>0?`${a.join(`
1420
+ `)}
1421
+ `:``)}let n=[],r=()=>n.length>0?bj(n.join(``)):yj,i=0;for(;i<t.length;){let a=t[i];if((a===`-o`||a===`+o`)&&sP(t,i)){let n=t[i+1];if(!rP.has(n)){let t=`bash: set: ${n}: invalid option name
1422
+ ${tP}`;if(e.state.options.posix)throw new qr(1,``,t);return Q(t)}oP(e,rP.get(n)??null,a===`-o`),i+=2;continue}if(a===`-o`){n.push(pP(e)),i++;continue}if(a===`+o`){n.push(mP(e)),i++;continue}if(a.length>1&&(a[0]===`-`||a[0]===`+`)&&a[1]!==`-`){let r=a[0]===`-`,o=0;for(let s=1;s<a.length;s++){let c=a[s];if(c===`o`){let a=i+1+o;if(a<t.length&&!t[a].startsWith(`-`)&&!t[a].startsWith(`+`)){let n=t[a];if(!rP.has(n)){let t=`bash: set: ${n}: invalid option name
1423
+ ${tP}`;if(e.state.options.posix)throw new qr(1,``,t);return Q(t)}oP(e,rP.get(n)??null,r),o++;continue}n.push(r?pP(e):mP(e));continue}if(!nP.has(c)){let t=`bash: set: ${a[0]}${c}: invalid option
1424
+ ${tP}`;if(e.state.options.posix)throw new qr(1,``,t);return Q(t)}oP(e,nP.get(c)??null,r)}i+=1+o;continue}if(a===`--`)return gP(e,t.slice(i+1)),r();if(a===`-`){if(e.state.options.xtrace=!1,e.state.options.verbose=!1,ij(e),i+1<t.length)return gP(e,t.slice(i+1)),r();i++;continue}if(a===`+`){i++;continue}if(a.startsWith(`-`)||a.startsWith(`+`)){let t=`bash: set: ${a}: invalid option
1425
+ ${tP}`;if(e.state.options.posix)throw new qr(1,``,t);return Q(t)}return gP(e,t.slice(i)),r()}return r()}function gP(e,t){let n=1;for(;e.state.env.has(String(n));)e.state.env.delete(String(n)),n++;for(let n=0;n<t.length;n++)e.state.env.set(String(n+1),t[n]);e.state.env.set(`#`,String(t.length)),e.state.env.set(`@`,t.join(` `)),e.state.env.set(`*`,t.join(` `))}A();function _P(e,t){let n=1;if(t.length>0){let r=Number.parseInt(t[0],10);if(Number.isNaN(r)||r<0){let n=`bash: shift: ${t[0]}: numeric argument required
1426
+ `;if(e.state.options.posix)throw new qr(1,``,n);return Q(n)}n=r}let r=Number.parseInt(e.state.env.get(`#`)||`0`,10);if(n>r){let t=`bash: shift: shift count out of range
1427
+ `;if(e.state.options.posix)throw new qr(1,``,t);return Q(t)}if(n===0)return yj;let i=[];for(let t=1;t<=r;t++)i.push(e.state.env.get(String(t))||``);let a=i.slice(n);for(let t=1;t<=r;t++)e.state.env.delete(String(t));for(let t=0;t<a.length;t++)e.state.env.set(String(t+1),a[t]);return e.state.env.set(`#`,String(a.length)),e.state.env.set(`@`,a.join(` `)),yj}OE(),A();async function vP(e,t){let n=t;if(n.length>0&&n[0]===`--`&&(n=n.slice(1)),n.length===0)return $(``,`bash: source: filename argument required
1428
+ `,2);let r=n[0],i=null;if(r.includes(`/`)){let t=e.fs.resolvePath(e.state.cwd,r);try{i=await e.fs.readFile(t)}catch{}}else{let t=(e.state.env.get(`PATH`)||``).split(`:`).filter(e=>e);for(let n of t){let t=e.fs.resolvePath(e.state.cwd,`${n}/${r}`);try{if((await e.fs.stat(t)).isDirectory)continue;i=await e.fs.readFile(t);break}catch{}}if(i===null){let t=e.fs.resolvePath(e.state.cwd,r);try{i=await e.fs.readFile(t)}catch{}}}if(i===null)return Q(`bash: ${r}: No such file or directory
1429
+ `);let a=new Map;if(n.length>1){for(let t=1;t<=9;t++)a.set(String(t),e.state.env.get(String(t)));a.set(`#`,e.state.env.get(`#`)),a.set(`@`,e.state.env.get(`@`));let t=n.slice(1);e.state.env.set(`#`,String(t.length)),e.state.env.set(`@`,t.join(` `));for(let n=0;n<t.length&&n<9;n++)e.state.env.set(String(n+1),t[n]);for(let n=t.length+1;n<=9;n++)e.state.env.delete(String(n))}let o=e.state.currentSource,s=()=>{if(e.state.sourceDepth--,e.state.currentSource=o,n.length>1)for(let[t,n]of a)n===void 0?e.state.env.delete(t):e.state.env.set(t,n)};if(e.state.sourceDepth++,e.state.sourceDepth>e.limits.maxSourceDepth)throw e.state.sourceDepth--,new k(`source: maximum nesting depth (${e.limits.maxSourceDepth}) exceeded, increase executionLimits.maxSourceDepth`,`recursion`);e.state.currentSource=r;try{let t=EE(i),n=await e.executeScript(t);return s(),n}catch(e){if(s(),e instanceof Br)throw e;if(e instanceof Lr)return $(e.stdout,e.stderr,e.exitCode);if(e.name===`ParseException`)return Q(`bash: ${r}: ${e.message}
1430
+ `);throw e}}ET(),OE(),CA(),ED(),pA(),xD(),uO();function yP(e){return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e)}function bP(e){return e.startsWith(`'`)&&e.endsWith(`'`)||e.startsWith(`"`)&&e.endsWith(`"`)}async function xP(e,t){if(bP(t))return null;try{return await Z(e,aT(new DE,t).expression)}catch{let e=parseInt(t,10);return Number.isNaN(e)?0:e}}function SP(e,t){if(e.state.localVarStack?.has(t)){let n=_M(e,t);if(n){n.value===void 0?e.state.env.delete(t):e.state.env.set(t,n.value);let r=e.state.localVarStack?.get(t);if(!r||r.length===0)hM(e,t),e.state.localVarStack?.delete(t),e.state.fullyUnsetLocals=e.state.fullyUnsetLocals||new Map,e.state.fullyUnsetLocals.set(t,n.scopeIndex),CP(e,t);else{let n=r[r.length-1];e.state.localVarDepth=e.state.localVarDepth||new Map,e.state.localVarDepth.set(t,n.scopeIndex+1)}return!0}return e.state.env.delete(t),hM(e,t),e.state.localVarStack?.delete(t),e.state.fullyUnsetLocals=e.state.fullyUnsetLocals||new Map,e.state.fullyUnsetLocals.set(t,0),!0}for(let n=e.state.localScopes.length-1;n>=0;n--){let r=e.state.localScopes[n];if(r.has(t)){let i=r.get(t);i===void 0?e.state.env.delete(t):e.state.env.set(t,i),r.delete(t);let a=!1;for(let r=n-1;r>=0;r--)if(e.state.localScopes[r].has(t)){e.state.localVarDepth&&e.state.localVarDepth.set(t,r+1),a=!0;break}return a||hM(e,t),!0}}return!1}function CP(e,t){if(!e.state.tempEnvBindings||e.state.tempEnvBindings.length===0)return!1;for(let n=e.state.tempEnvBindings.length-1;n>=0;n--){let r=e.state.tempEnvBindings[n];if(r.has(t)){let n=r.get(t);return n===void 0?e.state.env.delete(t):e.state.env.set(t,n),r.delete(t),!0}}return!1}async function wP(e,t){if(t.startsWith(`'`)&&t.endsWith(`'`))return t.slice(1,-1);if(t.startsWith(`"`)&&t.endsWith(`"`)){let n=t.slice(1,-1);return X(e,new DE().parseWordFromString(n,!0,!1))}return t.includes(`$`)?X(e,new DE().parseWordFromString(t,!1,!1)):t}async function TP(e,t){let n=`both`,r=``,i=0;for(let a of t){if(a===`-v`){n=`variable`;continue}if(a===`-f`){n=`function`;continue}if(n===`function`){e.state.functions.delete(a);continue}if(n===`variable`){let t=a.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(t){let n=t[1],a=t[2];if(a===`@`||a===`*`){let t=J(e,n);for(let[r]of t)e.state.env.delete(`${n}_${r}`);e.state.env.delete(n);continue}let o=e.state.associativeArrays?.has(n);if(o){let t=await wP(e,a);e.state.env.delete(`${n}_${t}`);continue}let s=CD(e,n),c=e.state.declaredVars?.has(n);if((e.state.env.has(n)||c)&&!s&&!o){r+=`bash: unset: ${n}: not an array variable
1431
+ `,i=1;continue}let l=await xP(e,a);if(l===null&&s){r+=`bash: unset: ${a}: not a valid identifier
1432
+ `,i=1;continue}if(l===null)continue;if(l<0){let t=J(e,n),a=t.length,o=e.state.currentLine;if(a===0){r+=`bash: line ${o}: unset: [${l}]: bad array subscript
1433
+ `,i=1;continue}let s=a+l;if(s<0){r+=`bash: line ${o}: unset: [${l}]: bad array subscript
1434
+ `,i=1;continue}let c=t[s][0];e.state.env.delete(`${n}_${c}`);continue}e.state.env.delete(`${n}_${l}`);continue}if(!yP(a)){r+=`bash: unset: \`${a}': not a valid identifier
1435
+ `,i=1;continue}let n=a;if(dD(e,a)){let t=vD(e,a);t&&t!==a&&(n=t)}if(oO(e,n)){r+=`bash: unset: ${n}: cannot unset: readonly variable
1436
+ `,i=1;continue}let o=mM(e,n);if(o!==void 0&&o!==e.state.callDepth)SP(e,n);else if(e.state.fullyUnsetLocals?.has(n))e.state.env.delete(n);else if(o!==void 0){let t=e.state.accessedTempEnvVars?.has(n),r=e.state.mutatedTempEnvVars?.has(n);if((t||r)&&e.state.localVarStack?.has(n)){let t=_M(e,n);t?t.value===void 0?e.state.env.delete(n):e.state.env.set(n,t.value):e.state.env.delete(n)}else e.state.env.delete(n)}else CP(e,n)||e.state.env.delete(n);e.state.exportedVars?.delete(n);continue}let t=a.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(t){let n=t[1],a=t[2];if(a===`@`||a===`*`){let t=J(e,n);for(let[r]of t)e.state.env.delete(`${n}_${r}`);e.state.env.delete(n);continue}let o=e.state.associativeArrays?.has(n);if(o){let t=await wP(e,a);e.state.env.delete(`${n}_${t}`);continue}let s=CD(e,n);if(e.state.env.has(n)&&!s&&!o){r+=`bash: unset: ${n}: not an array variable
1437
+ `,i=1;continue}let c=await xP(e,a);if(c===null&&s){r+=`bash: unset: ${a}: not a valid identifier
1438
+ `,i=1;continue}if(c===null)continue;if(c<0){let t=J(e,n),a=t.length,o=e.state.currentLine;if(a===0){r+=`bash: line ${o}: unset: [${c}]: bad array subscript
1439
+ `,i=1;continue}let s=a+c;if(s<0){r+=`bash: line ${o}: unset: [${c}]: bad array subscript
1440
+ `,i=1;continue}let l=t[s][0];e.state.env.delete(`${n}_${l}`);continue}e.state.env.delete(`${n}_${c}`);continue}if(!yP(a)){r+=`bash: unset: \`${a}': not a valid identifier
1441
+ `,i=1;continue}let o=a;if(dD(e,a)){let t=vD(e,a);t&&t!==a&&(o=t)}if(oO(e,o)){r+=`bash: unset: ${o}: cannot unset: readonly variable
1442
+ `,i=1;continue}let s=mM(e,o);if(s!==void 0&&s!==e.state.callDepth)SP(e,o);else if(e.state.fullyUnsetLocals?.has(o))e.state.env.delete(o);else if(s!==void 0){let t=e.state.accessedTempEnvVars?.has(o),n=e.state.mutatedTempEnvVars?.has(o);if((t||n)&&e.state.localVarStack?.has(o)){let t=_M(e,o);t?t.value===void 0?e.state.env.delete(o):e.state.env.set(o,t.value):e.state.env.delete(o)}else e.state.env.delete(o)}else CP(e,o)||e.state.env.delete(o);e.state.exportedVars?.delete(o),e.state.functions.delete(a)}return $(``,r,i)}var EP=[`extglob`,`dotglob`,`nullglob`,`failglob`,`globstar`,`globskipdots`,`nocaseglob`,`nocasematch`,`expand_aliases`,`lastpipe`,`xpg_echo`],DP=`autocd.cdable_vars.cdspell.checkhash.checkjobs.checkwinsize.cmdhist.compat31.compat32.compat40.compat41.compat42.compat43.compat44.complete_fullquote.direxpand.dirspell.execfail.extdebug.extquote.force_fignore.globasciiranges.gnu_errfmt.histappend.histreedit.histverify.hostcomplete.huponexit.inherit_errexit.interactive_comments.lithist.localvar_inherit.localvar_unset.login_shell.mailwarn.no_empty_cmd_completion.progcomp.progcomp_alias.promptvars.restricted_shell.shift_verbose.sourcepath`.split(`.`);function OP(e){return EP.includes(e)}function kP(e){return DP.includes(e)}function AP(e,t){let n=!1,r=!1,i=!1,a=!1,o=!1,s=[],c=0;for(;c<t.length;){let e=t[c];if(e===`--`){c++;break}if(e.startsWith(`-`)&&e.length>1){for(let t=1;t<e.length;t++){let s=e[t];switch(s){case`s`:n=!0;break;case`u`:r=!0;break;case`p`:i=!0;break;case`q`:a=!0;break;case`o`:o=!0;break;default:return{exitCode:2,stdout:``,stderr:`shopt: -${s}: invalid option
1443
+ `}}}c++}else break}for(;c<t.length;)s.push(t[c]),c++;if(o)return jP(e,s,n,r,i,a);if(n&&r)return{exitCode:1,stdout:``,stderr:`shopt: cannot set and unset shell options simultaneously
1444
+ `};if(s.length===0){if(n||r){let t=[];for(let a of EP){let o=e.state.shoptOptions[a];n&&o?t.push(i?`shopt -s ${a}`:`${a} on`):r&&!o&&t.push(i?`shopt -u ${a}`:`${a} off`)}return{exitCode:0,stdout:t.length>0?`${t.join(`
1445
+ `)}
1446
+ `:``,stderr:``}}let t=[];for(let n of EP){let r=e.state.shoptOptions[n];t.push(i?`shopt ${r?`-s`:`-u`} ${n}`:`${n} ${r?`on`:`off`}`)}return{exitCode:0,stdout:`${t.join(`
1447
+ `)}
1448
+ `,stderr:``}}let l=!1,u=``,d=[];for(let t of s){if(!OP(t)&&!kP(t)){u+=`shopt: ${t}: invalid shell option name
1449
+ `,l=!0;continue}if(n)OP(t)&&(e.state.shoptOptions[t]=!0,sj(e));else if(r)OP(t)&&(e.state.shoptOptions[t]=!1,sj(e));else if(OP(t)){let n=e.state.shoptOptions[t];a?n||(l=!0):i?(d.push(`shopt ${n?`-s`:`-u`} ${t}`),n||(l=!0)):(d.push(`${t} ${n?`on`:`off`}`),n||(l=!0))}else a?l=!0:i?(d.push(`shopt -u ${t}`),l=!0):(d.push(`${t} off`),l=!0)}return{exitCode:+!!l,stdout:d.length>0?`${d.join(`
1450
+ `)}
1451
+ `:``,stderr:u}}function jP(e,t,n,r,i,a){let o=new Map([[`errexit`,`errexit`],[`pipefail`,`pipefail`],[`nounset`,`nounset`],[`xtrace`,`xtrace`],[`verbose`,`verbose`],[`posix`,`posix`],[`allexport`,`allexport`],[`noclobber`,`noclobber`],[`noglob`,`noglob`],[`noexec`,`noexec`],[`vi`,`vi`],[`emacs`,`emacs`]]),s=[`braceexpand`,`errtrace`,`functrace`,`hashall`,`histexpand`,`history`,`ignoreeof`,`interactive-comments`,`keyword`,`monitor`,`nolog`,`notify`,`onecmd`,`physical`,`privileged`],c=[...o.keys(),...s].sort();if(t.length===0){let t=[];for(let a of c){let c=s.includes(a),l=o.get(a),u=c||!l?!1:e.state.options[l];n&&!u||r&&u||t.push(i?`set ${u?`-o`:`+o`} ${a}`:`${a} ${u?`on`:`off`}`)}return{exitCode:0,stdout:t.length>0?`${t.join(`
1452
+ `)}
1453
+ `:``,stderr:``}}let l=!1,u=``,d=[];for(let c of t){let t=o.has(c),f=s.includes(c);if(!t&&!f){u+=`shopt: ${c}: invalid option name
1454
+ `,l=!0;continue}if(f){n||r||(a?l=!0:i?(d.push(`set +o ${c}`),l=!0):(d.push(`${c} off`),l=!0));continue}let p=o.get(c);if(p)if(n)p===`vi`?e.state.options.emacs=!1:p===`emacs`&&(e.state.options.vi=!1),e.state.options[p]=!0,ij(e);else if(r)e.state.options[p]=!1,ij(e);else{let t=e.state.options[p];a?t||(l=!0):i?(d.push(`set ${t?`-o`:`+o`} ${c}`),t||(l=!0)):(d.push(`${c} ${t?`on`:`off`}`),t||(l=!0))}}return{exitCode:+!!l,stdout:d.length>0?`${d.join(`
1455
+ `)}
1456
+ `:``,stderr:u}}async function MP(e,t,n){if(t.includes(`/`)){let n=e.fs.resolvePath(e.state.cwd,t);if(!await e.fs.exists(n))return{error:`not_found`,path:n};let r=n.split(`/`).pop()||t,i=e.commands.get(r);try{let t=await e.fs.stat(n);return t.isDirectory?{error:`permission_denied`,path:n}:i?{cmd:i,path:n}:t.mode&73?{script:!0,path:n}:{error:`permission_denied`,path:n}}catch{return{error:`not_found`,path:n}}}if(!n&&e.state.hashTable){let n=e.state.hashTable.get(t);if(n)if(await e.fs.exists(n)){let r=e.commands.get(t);if(r)return{cmd:r,path:n};try{let t=await e.fs.stat(n);if(!t.isDirectory&&t.mode&73)return{script:!0,path:n}}catch{}}else e.state.hashTable.delete(t)}let r=(n??e.state.env.get(`PATH`)??`/usr/bin:/bin`).split(`:`);for(let n of r){if(!n)continue;let r=`${n.startsWith(`/`)?n:e.fs.resolvePath(e.state.cwd,n)}/${t}`;if(await e.fs.exists(r))try{let i=await e.fs.stat(r);if(i.isDirectory)continue;let a=(i.mode&73)!=0,o=e.commands.get(t),s=n===`/bin`||n===`/usr/bin`;if(o&&s)return{cmd:o,path:r};if(a&&(o&&!s||!o))return{script:!0,path:r}}catch{}}if(!await e.fs.exists(`/usr/bin`)){let n=e.commands.get(t);if(n)return{cmd:n,path:`/usr/bin/${t}`}}return null}async function NP(e,t){let n=[];if(t.includes(`/`)){let r=e.fs.resolvePath(e.state.cwd,t);if(await e.fs.exists(r))try{let i=await e.fs.stat(r);i.isDirectory||i.mode&73&&n.push(t)}catch{}return n}let r=(e.state.env.get(`PATH`)||`/usr/bin:/bin`).split(`:`);for(let i of r){if(!i)continue;let r=`${i.startsWith(`/`)?i:e.fs.resolvePath(e.state.cwd,i)}/${t}`;if(await e.fs.exists(r)){try{if((await e.fs.stat(r)).isDirectory)continue}catch{continue}n.push(i.startsWith(`/`)?r:`${i}/${t}`)}}return n}wl();function PP(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}function FP(e,t,n,r){return((...i)=>{Sl(t,n,`${r} call`);let a=e(...i);return PP(a)?a.then(e=>(Sl(t,n,`${r} post-await`),e),e=>{throw Sl(t,n,`${r} post-await`),e}):(Sl(t,n,`${r} return`),a)})}function IP(e,t,n){let r={readFile:FP(e.readFile.bind(e),t,n,`fs.readFile`),...typeof e.readFileBytes==`function`?{readFileBytes:FP(e.readFileBytes.bind(e),t,n,`fs.readFileBytes`)}:Object.create(null),readFileBuffer:FP(e.readFileBuffer.bind(e),t,n,`fs.readFileBuffer`),writeFile:FP(e.writeFile.bind(e),t,n,`fs.writeFile`),appendFile:FP(e.appendFile.bind(e),t,n,`fs.appendFile`),exists:FP(e.exists.bind(e),t,n,`fs.exists`),stat:FP(e.stat.bind(e),t,n,`fs.stat`),mkdir:FP(e.mkdir.bind(e),t,n,`fs.mkdir`),readdir:FP(e.readdir.bind(e),t,n,`fs.readdir`),rm:FP(e.rm.bind(e),t,n,`fs.rm`),cp:FP(e.cp.bind(e),t,n,`fs.cp`),mv:FP(e.mv.bind(e),t,n,`fs.mv`),resolvePath:FP(e.resolvePath.bind(e),t,n,`fs.resolvePath`),getAllPaths:FP(e.getAllPaths.bind(e),t,n,`fs.getAllPaths`),chmod:FP(e.chmod.bind(e),t,n,`fs.chmod`),symlink:FP(e.symlink.bind(e),t,n,`fs.symlink`),link:FP(e.link.bind(e),t,n,`fs.link`),readlink:FP(e.readlink.bind(e),t,n,`fs.readlink`),lstat:FP(e.lstat.bind(e),t,n,`fs.lstat`),realpath:FP(e.realpath.bind(e),t,n,`fs.realpath`),utimes:FP(e.utimes.bind(e),t,n,`fs.utimes`)};return e.readdirWithFileTypes&&(r.readdirWithFileTypes=FP(e.readdirWithFileTypes.bind(e),t,n,`fs.readdirWithFileTypes`)),r}function LP(e,t){if(!e.requireDefenseContext)return e;let n=`command:${t}`,r={...e,fs:IP(e.fs,e.requireDefenseContext,n)};return e.exec&&(r.exec=FP(e.exec,e.requireDefenseContext,n,`exec`)),e.fetch&&(r.fetch=FP(e.fetch,e.requireDefenseContext,n,`fetch`)),e.sleep&&(r.sleep=FP(e.sleep,e.requireDefenseContext,n,`sleep`)),e.getRegisteredCommands&&(r.getRegisteredCommands=FP(e.getRegisteredCommands,e.requireDefenseContext,n,`getRegisteredCommands`)),r}A(),Yr();async function RP(e,t,n,r){let i=!1,a=!1,o=!1,s=!1,c=!1,l=[];for(let e of t)if(e.startsWith(`-`)&&e.length>1)for(let t of e.slice(1))t===`t`?i=!0:t===`p`?a=!0:t===`P`?o=!0:t===`a`?s=!0:t===`f`&&(c=!0);else l.push(e);let u=``,d=``,f=0,p=!1,m=!1;for(let t of l){let l=!1;if(o){if(s){let e=await r(t);if(e.length>0){for(let t of e)u+=`${t}
1457
+ `;p=!0,l=!0}}else{let e=await n(t);e&&(u+=`${e}
1458
+ `,p=!0,l=!0)}l||(m=!0);continue}let f=!c&&e.state.functions.has(t);if(s&&f){if(!a)if(i)u+=`function
1459
+ `;else{let n=e.state.functions.get(t),r=n?zP(t,n):`${t} is a function
1460
+ `;u+=r}l=!0}let h=e.state.env.get(`BASH_ALIAS_${t}`);if(!(h!==void 0&&(s||!l)&&(a||(i?u+=`alias
1461
+ `:u+=`${t} is aliased to \`${h}'
1462
+ `),l=!0,!s)||xM.has(t)&&(s||!l)&&(a||(i?u+=`keyword
1463
+ `:u+=`${t} is a shell keyword
1464
+ `),l=!0,!s))){if(!s&&f&&!l){if(!a)if(i)u+=`function
1465
+ `;else{let n=e.state.functions.get(t),r=n?zP(t,n):`${t} is a function
1466
+ `;u+=r}l=!0;continue}if(!(SM.has(t)&&(s||!l)&&(a||(i?u+=`builtin
1467
+ `:u+=`${t} is a shell builtin
1468
+ `),l=!0,!s))){if(s){let e=await r(t);for(let n of e)a?u+=`${n}
1469
+ `:i?u+=`file
1470
+ `:u+=`${t} is ${n}
1471
+ `,p=!0,l=!0}else if(!l){let e=await n(t);e&&(a?u+=`${e}
1472
+ `:i?u+=`file
1473
+ `:u+=`${t} is ${e}
1474
+ `,p=!0,l=!0)}if(!l&&(m=!0,!i&&!a)){let n=!0;if(t.includes(`/`)){let r=e.fs.resolvePath(e.state.cwd,t);await e.fs.exists(r)&&(n=!1)}n&&(d+=`bash: type: ${t}: not found
1475
+ `)}}}}return f=a?m&&!p?1:0:+!!m,$(u,d,f)}function zP(e,t){let n;return n=t.body.type===`Group`?t.body.body.map(e=>BP(e)).join(`; `):BP(t.body),`${e} is a function
1476
+ ${e} ()
1477
+ {
1478
+ ${n}
1479
+ }
1480
+ `}function BP(e){if(Array.isArray(e))return e.map(e=>BP(e)).join(`; `);if(e.type===`Statement`){let t=[];for(let n=0;n<e.pipelines.length;n++){let r=e.pipelines[n];t.push(VP(r)),e.operators[n]&&t.push(e.operators[n])}return t.join(` `)}if(e.type===`SimpleCommand`){let t=e,n=[];t.name&&n.push(HP(t.name));for(let e of t.args)n.push(HP(e));return n.join(` `)}return e.type===`Group`?`{ ${e.body.map(e=>BP(e)).join(`; `)}; }`:`...`}function VP(e){let t=e.commands.map(e=>BP(e));return(e.negated?`! `:``)+t.join(` | `)}function HP(e){let t=``;for(let n of e.parts)n.type===`Literal`?t+=n.value:n.type===`DoubleQuoted`?t+=`"${n.parts.map(e=>UP(e)).join(``)}"`:n.type===`SingleQuoted`?t+=`'${n.value}'`:t+=UP(n);return t}function UP(e){let t=e;return t.type===`Literal`?t.value??``:t.type===`Variable`?`$${t.name}`:``}async function WP(e,t,n,r){let i=``,a=``,o=0;for(let n of t){if(!n){o=1;continue}let t=e.state.env.get(`BASH_ALIAS_${n}`);if(t!==void 0)r?i+=`${n} is an alias for "${t}"
1481
+ `:i+=`alias ${n}='${t}'
1482
+ `;else if(xM.has(n))r?i+=`${n} is a shell keyword
1483
+ `:i+=`${n}
1484
+ `;else if(SM.has(n))r?i+=`${n} is a shell builtin
1485
+ `:i+=`${n}
1486
+ `;else if(e.state.functions.has(n))r?i+=`${n} is a function
1487
+ `:i+=`${n}
1488
+ `;else if(n.includes(`/`)){let t=e.fs.resolvePath(e.state.cwd,n),s=!1;if(await e.fs.exists(t))try{let a=await e.fs.stat(t);a.isDirectory||a.mode&73&&(r?i+=`${n} is ${n}
1489
+ `:i+=`${n}
1490
+ `,s=!0)}catch{}s||(r&&(a+=`${n}: not found
1491
+ `),o=1)}else if(e.commands.has(n)){let t=(e.state.env.get(`PATH`)??`/usr/bin:/bin`).split(`:`),a=null;for(let r of t){if(!r)continue;let t=`${r}/${n}`;try{let n=await e.fs.stat(t);if(!n.isDirectory&&n.mode&73){a=t;break}}catch{}}a||=`/usr/bin/${n}`,r?i+=`${n} is ${a}
1492
+ `:i+=`${a}
1493
+ `}else r&&(a+=`${n}: not found
1494
+ `),o=1}return $(i,a,o)}async function GP(e,t){if(t.includes(`/`)){let n=e.fs.resolvePath(e.state.cwd,t);if(await e.fs.exists(n)){try{let t=await e.fs.stat(n);if(t.isDirectory||!(t.mode&73))return null}catch{return null}return t}return null}let n=(e.state.env.get(`PATH`)??`/usr/bin:/bin`).split(`:`);for(let r of n){if(!r)continue;let n=`${r.startsWith(`/`)?r:e.fs.resolvePath(e.state.cwd,r)}/${t}`;if(await e.fs.exists(n)){try{if((await e.fs.stat(n)).isDirectory)continue}catch{continue}return`${r}/${t}`}}if(e.commands.has(t)){for(let e of n)if(e===`/usr/bin`||e===`/bin`)return`${e}/${t}`;return`/usr/bin/${t}`}return null}async function KP(e,t,n,r,i,a,o,s){let{ctx:c,runCommand:l}=e;if(c.coverage&&SM.has(t)&&c.coverage.hit(`bash:builtin:${t}`),t===`export`)return zN(c,n);if(t===`unset`)return TP(c,n);if(t===`exit`)return RN(c,n);if(t===`local`)return YN(c,n);if(t===`set`)return hP(c,n);if(t===`break`)return wj(c,n);if(t===`continue`)return oN(c,n);if(t===`return`)return eP(c,n);if(t===`eval`&&c.state.options.posix)return LN(c,n,i);if(t===`shift`)return _P(c,n);if(t===`getopts`)return BN(c,n);if(t===`compgen`)return RM(c,n);if(t===`complete`)return nN(c,n);if(t===`compopt`)return aN(c,n);if(t===`pushd`)return await PN(c,n);if(t===`popd`)return FN(c,n);if(t===`dirs`)return IN(c,n);if(t===`source`||t===`.`)return vP(c,n);if(t===`read`)return $N(c,n,i,s);if(t===`mapfile`||t===`readarray`)return XN(c,n,i);if(t===`declare`||t===`typeset`)return kN(c,n);if(t===`readonly`)return AN(c,n);if(!a){let e=c.state.functions.get(t);if(e)return NM(c,e,n,i)}if(t===`eval`)return LN(c,n,i);if(t===`cd`)return await Tj(c,n);if(t===`:`||t===`true`)return yj;if(t===`false`)return xj(!1);if(t===`let`)return JN(c,n);if(t===`command`)return qP(e,n,i);if(t===`builtin`)return JP(e,n,i);if(t===`shopt`)return AP(c,n);if(t===`exec`){if(n.length===0)return yj;let[e,...t]=n;return l(e,t,[],i,!1,!1,-1)}if(t===`wait`)return yj;if(t===`type`)return await RP(c,n,e=>GP(c,e),e=>NP(c,e));if(t===`hash`)return VN(c,n);if(t===`help`)return WN(c,n);if(t===`[`||t===`test`){let e=n;if(t===`[`){if(n[n.length-1]!==`]`)return Q(`[: missing \`]'
1495
+ `,2);e=n.slice(0,-1)}return Uj(c,e)}return null}async function qP(e,t,n){let{ctx:r,runCommand:i}=e;if(t.length===0)return yj;let a=!1,o=!1,s=!1,c=t;for(;c.length>0&&c[0].startsWith(`-`);){let e=c[0];if(e===`--`){c=c.slice(1);break}for(let t of e.slice(1))t===`p`?a=!0:t===`V`?o=!0:t===`v`&&(s=!0);c=c.slice(1)}if(c.length===0)return yj;if(s||o)return await WP(r,c,s,o);let[l,...u]=c;return i(l,u,[],n,!0,a,-1)}async function JP(e,t,n){let{runCommand:r}=e;if(t.length===0)return yj;let i=t;if(i[0]===`--`&&(i=i.slice(1),i.length===0))return yj;let a=i[0];if(!SM.has(a))return Q(`bash: builtin: ${a}: not a shell builtin
1496
+ `);let[,...o]=i;return r(a,o,[],n,!0,!1,-1)}async function YP(e,t,n,r,i){let{ctx:a,buildExportedEnv:o,executeUserScript:s}=e,c=await MP(a,t,i?`/usr/bin:/bin`:void 0);if(!c)return vj(t)?Q(`bash: ${t}: command not available in browser environments. Exclude '${t}' from your commands or use the Node.js bundle.
1497
+ `,127):Q(`bash: ${t}: command not found
1498
+ `,127);if(`error`in c)return c.error===`permission_denied`?Q(`bash: ${t}: Permission denied
1499
+ `,126):Q(`bash: ${t}: No such file or directory
1500
+ `,127);if(`script`in c)return t.includes(`/`)||(a.state.hashTable||(a.state.hashTable=new Map),a.state.hashTable.set(t,c.path)),await s(c.path,n,r);let{cmd:l,path:u}=c;t.includes(`/`)||(a.state.hashTable||(a.state.hashTable=new Map),a.state.hashTable.set(t,u));let d=r||a.state.groupStdin||``,f=o(),p=LP({fs:a.fs,cwd:a.state.cwd,env:a.state.env,exportedEnv:f,stdin:d,limits:a.limits,exec:a.execFn,fetch:a.fetch,getRegisteredCommands:()=>Array.from(a.commands.keys()),sleep:a.sleep,trace:a.trace,fileDescriptors:a.state.fileDescriptors,xpgEcho:a.state.shoptOptions.xpg_echo,coverage:a.coverage,signal:a.state.signal,requireDefenseContext:a.requireDefenseContext,jsBootstrapCode:a.jsBootstrapCode,invokeTool:a.invokeTool},t);try{let e=()=>Cl(a.requireDefenseContext,`command`,`${t} execution`,()=>l.execute(n,p));return l.trusted?await Zn.runTrustedAsync(()=>e()):await e()}catch(e){if(e instanceof k||e instanceof C)throw e;return Q(`${t}: ${Bi(Jr(e))}
1501
+ `)}}CA(),A(),pA();async function XP(e,t){let n=e.state.inCondition;e.state.inCondition=!0;let r=``,i=``,a=0;try{for(let n of t){let t=await e.executeStatement(n);r+=t.stdout,i+=t.stderr,a=t.exitCode}}finally{e.state.inCondition=n}return{stdout:r,stderr:i,exitCode:a}}A(),Yr();function ZP(e,t,n,r){if(e instanceof Fr)return t+=e.stdout,n+=e.stderr,e.levels>1&&r>1?(e.levels--,e.stdout=t,e.stderr=n,{action:`rethrow`,stdout:t,stderr:n,error:e}):{action:`break`,stdout:t,stderr:n};if(e instanceof Ir)return t+=e.stdout,n+=e.stderr,e.levels>1&&r>1?(e.levels--,e.stdout=t,e.stderr=n,{action:`rethrow`,stdout:t,stderr:n,error:e}):{action:`continue`,stdout:t,stderr:n};if(e instanceof Lr||e instanceof Rr||e instanceof Br||e instanceof k)return e.prependOutput(t,n),{action:`rethrow`,stdout:t,stderr:n,error:e};let i=Jr(e);return{action:`error`,stdout:t,stderr:`${n}${i}
1502
+ `,exitCode:1}}A(),Yr();async function QP(e,t,n=``,r=``){let i=n,a=r,o=0;try{for(let n of t){let t=await e.executeStatement(n);i+=t.stdout,a+=t.stderr,o=t.exitCode}}catch(e){if(Nr(e)||e instanceof Rr||e instanceof Br||e instanceof k||e instanceof Kr)throw e.prependOutput(i,a),e;return{stdout:i,stderr:`${a}${Jr(e)}
1503
+ `,exitCode:1}}return{stdout:i,stderr:a,exitCode:o}}async function $P(e,t){let n=``,r=``;for(let i of t.clauses){let t=await XP(e,i.condition);if(n+=t.stdout,r+=t.stderr,t.exitCode===0)return QP(e,i.body,n,r)}return t.elseBody?QP(e,t.elseBody,n,r):$(n,r,0)}async function eF(e,t){let n=await kM(e,t.redirections);if(n)return n;let r=``,i=``,a=0,o=0;if(!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(t.variable))return Q(`bash: \`${t.variable}': not a valid identifier
1504
+ `);let s=[];if(t.words===null)s=(e.state.env.get(`@`)||``).split(` `).filter(Boolean);else if(t.words.length===0)s=[];else try{for(let n of t.words){let t=await aA(e,n);s.push(...t.values)}}catch(e){if(e instanceof Ur)return{stdout:``,stderr:e.stderr,exitCode:1};throw e}e.state.loopDepth++;try{for(let n of s){o++,o>e.limits.maxLoopIterations&&Sj(`for loop: too many iterations (${e.limits.maxLoopIterations}), increase executionLimits.maxLoopIterations`,`iterations`,r,i),e.state.env.set(t.variable,n);try{for(let n of t.body){let t=await e.executeStatement(n);r+=t.stdout,i+=t.stderr,a=t.exitCode}}catch(n){let a=ZP(n,r,i,e.state.loopDepth);if(r=a.stdout,i=a.stderr,a.action===`break`)break;if(a.action===`continue`)continue;if(a.action===`error`)return AM(e,$(r,i,a.exitCode??1),t.redirections);throw a.error}}}finally{e.state.loopDepth--}return AM(e,$(r,i,a),t.redirections)}async function tF(e,t){let n=await kM(e,t.redirections);if(n)return n;let r=t.line;r!==void 0&&(e.state.currentLine=r);let i=``,a=``,o=0,s=0;t.init&&await Z(e,t.init.expression),e.state.loopDepth++;try{for(;s++,s>e.limits.maxLoopIterations&&Sj(`for loop: too many iterations (${e.limits.maxLoopIterations}), increase executionLimits.maxLoopIterations`,`iterations`,i,a),!(t.condition&&(r!==void 0&&(e.state.currentLine=r),await Z(e,t.condition.expression)===0));){try{for(let n of t.body){let t=await e.executeStatement(n);i+=t.stdout,a+=t.stderr,o=t.exitCode}}catch(n){let r=ZP(n,i,a,e.state.loopDepth);if(i=r.stdout,a=r.stderr,r.action===`break`)break;if(r.action===`continue`){t.update&&await Z(e,t.update.expression);continue}if(r.action===`error`)return AM(e,$(i,a,r.exitCode??1),t.redirections);throw r.error}t.update&&await Z(e,t.update.expression)}}finally{e.state.loopDepth--}return AM(e,$(i,a,o),t.redirections)}async function nF(e,t,n=``){let r=``,i=``,a=0,o=0,s=n;for(let n of t.redirections)if((n.operator===`<<`||n.operator===`<<-`)&&n.target.type===`HereDoc`){let t=n.target,r=await X(e,t.content);t.stripTabs&&(r=r.split(`
1505
+ `).map(e=>e.replace(/^\t+/,``)).join(`
1506
+ `)),s=r}else if(n.operator===`<<<`&&n.target.type===`Word`)s=`${await X(e,n.target)}
1507
+ `;else if(n.operator===`<`&&n.target.type===`Word`)try{let t=await X(e,n.target),r=e.fs.resolvePath(e.state.cwd,t);s=await e.fs.readFile(r)}catch{return Q(`bash: ${await X(e,n.target)}: No such file or directory
1508
+ `)}let c=e.state.groupStdin;s&&(e.state.groupStdin=s),e.state.loopDepth++;try{for(;;){o++,o>e.limits.maxLoopIterations&&Sj(`while loop: too many iterations (${e.limits.maxLoopIterations}), increase executionLimits.maxLoopIterations`,`iterations`,r,i);let n=0,s=!1,c=!1,l=e.state.inCondition;e.state.inCondition=!0;try{for(let a of t.condition){let t=await e.executeStatement(a);r+=t.stdout,i+=t.stderr,n=t.exitCode}}catch(t){if(t instanceof Fr){if(r+=t.stdout,i+=t.stderr,t.levels>1&&e.state.loopDepth>1)throw t.levels--,t.stdout=r,t.stderr=i,e.state.inCondition=l,t;s=!0}else if(t instanceof Ir){if(r+=t.stdout,i+=t.stderr,t.levels>1&&e.state.loopDepth>1)throw t.levels--,t.stdout=r,t.stderr=i,e.state.inCondition=l,t;c=!0}else throw e.state.inCondition=l,t}finally{e.state.inCondition=l}if(s)break;if(!c){if(n!==0)break;try{for(let n of t.body){let t=await e.executeStatement(n);r+=t.stdout,i+=t.stderr,a=t.exitCode}}catch(t){let n=ZP(t,r,i,e.state.loopDepth);if(r=n.stdout,i=n.stderr,n.action===`break`)break;if(n.action===`continue`)continue;if(n.action===`error`)return $(r,i,n.exitCode??1);throw n.error}}}}finally{e.state.loopDepth--,e.state.groupStdin=c}return $(r,i,a)}async function rF(e,t){let n=``,r=``,i=0,a=0;e.state.loopDepth++;try{for(;;){a++,a>e.limits.maxLoopIterations&&Sj(`until loop: too many iterations (${e.limits.maxLoopIterations}), increase executionLimits.maxLoopIterations`,`iterations`,n,r);let o=await XP(e,t.condition);if(n+=o.stdout,r+=o.stderr,o.exitCode===0)break;try{for(let a of t.body){let t=await e.executeStatement(a);n+=t.stdout,r+=t.stderr,i=t.exitCode}}catch(t){let i=ZP(t,n,r,e.state.loopDepth);if(n=i.stdout,r=i.stderr,i.action===`break`)break;if(i.action===`continue`)continue;if(i.action===`error`)return $(n,r,i.exitCode??1);throw i.error}}}finally{e.state.loopDepth--}return $(n,r,i)}async function iF(e,t){let n=await kM(e,t.redirections);if(n)return n;let r=``,i=``,a=0,o=await X(e,t.word),s=!1;for(let n=0;n<t.items.length;n++){let c=t.items[n],l=s;if(!s)for(let t of c.patterns){let n=await X(e,t);Xk(t)&&(n=zD(n));let r=e.state.shoptOptions.nocasematch,i=e.state.shoptOptions.extglob;if(Yj(o,n,r,i)){l=!0;break}}if(l){let t=await QP(e,c.body,r,i);if(r=t.stdout,i=t.stderr,a=t.exitCode,c.terminator===`;;`)break;s=c.terminator===`;&`}else s=!1}return AM(e,$(r,i,a),t.redirections)}A(),pA();function aF(e,t){if(e.parts.length!==1)return!1;let n=e.parts[0];return n.type===`Literal`&&t.includes(n.value)}function oF(e){if(!e.startsWith(`__rw__:`))return null;let t=e.slice(7),n=t.indexOf(`:`);if(n===-1)return null;let r=Number.parseInt(t.slice(0,n),10);if(Number.isNaN(r)||r<0)return null;let i=n+1,a=t.slice(i,i+r),o=i+r+1,s=t.slice(o),c=s.indexOf(`:`);if(c===-1)return null;let l=Number.parseInt(s.slice(0,c),10);return Number.isNaN(l)||l<0?null:{path:a,position:l,content:s.slice(c+1)}}OE(),pA();var sF=`+ `;async function cF(e){let t=e.state.env.get(`PS4`);if(t===void 0)return sF;if(t===``)return``;try{return await X(e,new DE().parseWordFromString(t,!1,!1))}catch{return e.state.expansionStderr=`${e.state.expansionStderr||``}bash: ${t}: bad substitution
1509
+ `,t||sF}}function lF(e){return e.map(e=>uF(e)).join(` `)}function uF(e){if(e===``)return`''`;if(!/[\s'"\\$`!*?[\]{}|&;<>()~#\n\t]/.test(e))return e;let t=/[\x00-\x1f\x7f]/.test(e),n=e.includes(`
1510
+ `),r=e.includes(` `),i=e.includes(`\\`),a=e.includes(`'`);if(t||n||r||i){let t=``;for(let n of e){let e=n.charCodeAt(0);n===`
1511
+ `?t+=`\\n`:n===` `?t+=`\\t`:n===`\\`?t+=`\\\\`:n===`'`?t+=`'`:n===`"`?t+=`"`:e<32||e===127?e<256?t+=`\\x${e.toString(16).padStart(2,`0`)}`:t+=`\\u${e.toString(16).padStart(4,`0`)}`:t+=n}return`$'${t}'`}return a?`"${e.replace(/([\\$`"])/g,`\\$1`)}"`:`'${e}'`}async function dF(e,t,n){return e.state.options.xtrace?`${await cF(e)}${lF([t,...n])}
1512
+ `:``}async function fF(e,t,n){return e.state.options.xtrace?`${await cF(e)}${t}=${n}
1513
+ `:``}w(),oy(),A();async function pF(e,t,n){let r=t.timed?iy():0,i=``,a=yj,o=0,s=[],c=``,l=t.commands.length>1,u=e.state.lastArg;for(let r=0;r<t.commands.length;r++){let u=t.commands[r],d=r===t.commands.length-1,f=r===0;l&&(e.state.lastArg=``,f||(e.state.groupStdin=void 0));let p=l&&(!d||!e.state.shoptOptions.lastpipe)?new Map(e.state.env):null,m;try{m=await n(u,i)}catch(n){if(n instanceof Hr)m={stdout:n.stdout,stderr:n.stderr,exitCode:1};else if(n instanceof Br&&t.commands.length>1)m={stdout:n.stdout,stderr:n.stderr,exitCode:n.exitCode};else if(n instanceof Rr&&t.commands.length>1)m={stdout:n.stdout,stderr:n.stderr,exitCode:n.exitCode};else throw p&&(e.state.env=p),n}p&&(e.state.env=p),s.push(m.exitCode),m.exitCode!==0&&(o=m.exitCode),d?a=m:(t.pipeStderr?.[r]??!1?i=dr(m.stderr)+hr(m):(i=hr(m),c+=m.stderr),a={stdout:``,stderr:``,exitCode:m.exitCode})}if(c&&(a={...a,stderr:c+a.stderr}),t.commands.length>1||t.commands.length===1&&t.commands[0].type===`SimpleCommand`){for(let t of e.state.env.keys())t.startsWith(`PIPESTATUS_`)&&e.state.env.delete(t);for(let t=0;t<s.length;t++)e.state.env.set(`PIPESTATUS_${t}`,String(s[t]));e.state.env.set(`PIPESTATUS__length`,String(s.length))}if(e.state.options.pipefail&&o!==0&&(a={...a,exitCode:o}),t.negated&&(a={...a,exitCode:+(a.exitCode===0)}),t.timed){let e=(iy()-r)/1e3,n=Math.floor(e/60),i=e%60,o;o=t.timePosix?`real ${e.toFixed(2)}
1514
+ user 0.00
1515
+ sys 0.00
1516
+ `:`
1517
+ real ${`${n}m${i.toFixed(3)}s`}
1518
+ user 0m0.000s
1519
+ sys 0m0.000s
1520
+ `,a={...a,stderr:a.stderr+o}}return l&&!e.state.shoptOptions.lastpipe&&(e.state.lastArg=u),a}ET(),OE(),CA(),A(),pA(),ZE(),xD(),uO();async function mF(e,t){let n=new Map,r=``;for(let i of t.assignments){let a=i.name;if(i.array){let o=await hF(e,t,a,i.array,i.append,n);if(o.error)return{continueToNext:!1,xtraceOutput:r,tempAssignments:n,error:o.error};if(r+=o.xtraceOutput,o.continueToNext)continue}let o=i.value?await X(e,i.value):``;if(a.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[\]$/))return{continueToNext:!1,xtraceOutput:r,tempAssignments:n,error:$(``,`bash: ${a}: bad array subscript
1521
+ `,1)};let s=a.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);if(s){let a=await bF(e,t,s[1],s[2],o,i.append,n);if(a.error)return{continueToNext:!1,xtraceOutput:r,tempAssignments:n,error:a.error};if(a.continueToNext)continue}let c=await CF(e,t,a,o,i.append,n);if(c.error)return{continueToNext:!1,xtraceOutput:r,tempAssignments:n,error:c.error};r+=c.xtraceOutput,c.continueToNext}return{continueToNext:!1,xtraceOutput:r,tempAssignments:n}}async function hF(e,t,n,r,i,a){let o=``;if(/\[.+\]$/.test(n))return{continueToNext:!1,xtraceOutput:``,error:$(``,`bash: ${n}: cannot assign list to array member
1522
+ `,1)};if(dD(e,n)){let t=yD(e,n);if(t===void 0||t===``)throw new Br(1,``,``);let r=vD(e,n);if(r&&/^[a-zA-Z_][a-zA-Z0-9_]*\[@\]$/.test(r))return{continueToNext:!1,xtraceOutput:``,error:$(``,`bash: ${n}: cannot assign list to array member
1523
+ `,1)}}if(oO(e,n)){if(t.name)return o+=`bash: ${n}: readonly variable
1524
+ `,{continueToNext:!0,xtraceOutput:o};let r=sO(e,n);if(r)return{continueToNext:!1,xtraceOutput:``,error:r}}let s=e.state.associativeArrays?.has(n),c=gF(r),l=()=>{let t=`${n}_`;for(let n of e.state.env.keys())n.startsWith(t)&&!n.includes(`__`)&&e.state.env.delete(n);e.state.env.delete(n)};if(s&&c?await _F(e,t,n,r,i,l,e=>{o+=e}):c?await vF(e,n,r,i,l):await yF(e,n,r,i,l),t.name){a.set(n,e.state.env.get(n));let t=`(${r.map(e=>XE(e)).join(` `)})`;e.state.env.set(n,t)}return{continueToNext:!0,xtraceOutput:o}}function gF(e){return e.some(e=>{if(e.parts.length>=2){let t=e.parts[0],n=e.parts[1];if(t.type!==`Glob`||!t.pattern.startsWith(`[`))return!1;if(t.pattern===`[`&&(n.type===`DoubleQuoted`||n.type===`SingleQuoted`)){if(e.parts.length<3)return!1;let t=e.parts[2];return t.type===`Literal`?t.value.startsWith(`]=`)||t.value.startsWith(`]+=`):!1}return n.type===`Literal`?n.value.startsWith(`]`)?n.value.startsWith(`]=`)||n.value.startsWith(`]+=`):t.pattern.endsWith(`]`)?n.value.startsWith(`=`)||n.value.startsWith(`+=`):!1:!1}return!1})}async function _F(e,t,n,r,i,a,o){let s=[];for(let t of r){let n=JE(t);if(n){let{key:t,valueParts:r,append:i}=n,a;a=r.length>0?await X(e,{type:`Word`,parts:r}):``,a=sN(e,a),s.push({type:`keyed`,key:t,value:a,append:i})}else{let n=await X(e,t);s.push({type:`invalid`,expandedValue:n})}}i||a();for(let r of s)if(r.type===`keyed`)if(r.append){let t=e.state.env.get(`${n}_${r.key}`)??``;e.state.env.set(`${n}_${r.key}`,t+r.value)}else e.state.env.set(`${n}_${r.key}`,r.value);else o(`bash: line ${t.line??e.state.currentLine??1}: ${n}: ${r.expandedValue}: must use subscript when assigning associative array
1525
+ `)}async function vF(e,t,n,r,i){let a=[];for(let t of n){let n=JE(t);if(n){let{key:t,valueParts:r,append:i}=n,o;o=r.length>0?await X(e,{type:`Word`,parts:r}):``,o=sN(e,o),a.push({type:`keyed`,indexExpr:t,value:o,append:i})}else{let n=await aA(e,t);a.push({type:`non-keyed`,values:n.values})}}r||i();let o=0;for(let n of a)if(n.type===`keyed`){let r;try{r=await Z(e,aT(new DE,n.indexExpr).expression,!1)}catch{if(/^-?\d+$/.test(n.indexExpr))r=Number.parseInt(n.indexExpr,10);else{let t=e.state.env.get(n.indexExpr);r=t?Number.parseInt(t,10):0,Number.isNaN(r)&&(r=0)}}if(n.append){let i=e.state.env.get(`${t}_${r}`)??``;e.state.env.set(`${t}_${r}`,i+n.value)}else e.state.env.set(`${t}_${r}`,n.value);o=r+1}else for(let r of n.values)e.state.env.set(`${t}_${o++}`,r)}async function yF(e,t,n,r,i){let a=[];for(let t of n){let n=await aA(e,t);a.push(...n.values)}let o=0;if(r){let n=J(e,t);if(n.length>0)o=Math.max(...n.map(([e])=>typeof e==`number`?e:0))+1;else{let n=e.state.env.get(t);n!==void 0&&(e.state.env.set(`${t}_0`,n),e.state.env.delete(t),o=1)}}else i();for(let n=0;n<a.length;n++)e.state.env.set(`${t}_${o+n}`,a[n]);r||e.state.env.set(`${t}__length`,String(a.length))}async function bF(e,t,n,r,i,a,o){let s=n;if(dD(e,n)){let t=vD(e,n);if(t&&t!==n){if(t.includes(`[`))return{continueToNext:!1,xtraceOutput:``,error:$(``,`bash: \`${t}': not a valid identifier
1526
+ `,1)};s=t}}if(oO(e,s)){if(t.name)return{continueToNext:!0,xtraceOutput:``};let n=sO(e,s);if(n)return{continueToNext:!1,xtraceOutput:``,error:n}}let c=e.state.associativeArrays?.has(s),l;if(c)l=await xF(e,s,r);else{let t=await SF(e,s,r);if(t.error)return{continueToNext:!1,xtraceOutput:``,error:t.error};l=`${s}_${t.index}`}let u=a?(e.state.env.get(l)||``)+i:i;if(t.name)o.set(l,e.state.env.get(l)),e.state.env.set(l,u);else{let t=mM(e,s);if(t!==void 0&&t===e.state.callDepth&&e.state.localScopes.length>0){let t=e.state.localScopes[e.state.localScopes.length-1];t.has(l)||t.set(l,e.state.env.get(l))}e.state.env.set(l,u)}return{continueToNext:!0,xtraceOutput:``}}async function xF(e,t,n){let r;if(n.startsWith(`'`)&&n.endsWith(`'`))r=n.slice(1,-1);else if(n.startsWith(`"`)&&n.endsWith(`"`)){let t=n.slice(1,-1);r=await X(e,new DE().parseWordFromString(t,!0,!1))}else r=n.includes(`$`)?await X(e,new DE().parseWordFromString(n,!1,!1)):n;return`${t}_${r}`}async function SF(e,t,n){let r=n;n.startsWith(`"`)&&n.endsWith(`"`)&&n.length>=2&&(r=n.slice(1,-1));let i;if(/^-?\d+$/.test(r))i=Number.parseInt(r,10);else{try{i=await Z(e,aT(new DE,r).expression,!1)}catch(t){if(t instanceof Vr){let r=`bash: line ${e.state.currentLine}: ${n}: ${t.message}
1527
+ `;if(t.fatal)throw new Br(1,``,r);return{index:0,error:$(``,r,1)}}let r=e.state.env.get(n);i=r?Number.parseInt(r,10):0}Number.isNaN(i)&&(i=0)}if(i<0){let r=J(e,t);if(r.length===0){let r=e.state.currentLine;return{index:0,error:$(``,`bash: line ${r}: ${t}[${n}]: bad array subscript
1528
+ `,1)}}if(i=Math.max(...r.map(([e])=>typeof e==`number`?e:0))+1+i,i<0){let r=e.state.currentLine;return{index:0,error:$(``,`bash: line ${r}: ${t}[${n}]: bad array subscript
1529
+ `,1)}}}return{index:i}}async function CF(e,t,n,r,i,a){let o=``,s=n,c=null;if(dD(e,n)){let t=bD(e,n,r);if(t===void 0)return{continueToNext:!1,xtraceOutput:``,error:$(``,`bash: ${n}: circular name reference
1530
+ `,1)};if(t===null)return{continueToNext:!0,xtraceOutput:``};s=t;let i=s.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\[(.+)\]$/);i&&(c={arrayName:i[1],subscriptExpr:i[2]},s=i[1])}if(oO(e,s)){if(t.name)return o+=`bash: ${s}: readonly variable
1531
+ `,{continueToNext:!0,xtraceOutput:o};let n=sO(e,s);if(n)return{continueToNext:!1,xtraceOutput:``,error:n}}let l;if(xN(e,s))try{let t=new DE;if(i){let n=aT(t,`(${e.state.env.get(s)||`0`}) + (${r})`);l=String(await Z(e,n.expression))}else{let n=aT(t,r);l=String(await Z(e,n.expression))}}catch{l=`0`}else{let{isArray:t}=await Promise.resolve().then(()=>(pA(),Kk)),n=t(e,s)?`${s}_0`:s;l=i?(e.state.env.get(n)||``)+r:r}l=EN(e,s,l),o+=await fF(e,s,l);let u=s;if(c)u=await wF(e,c);else{let{isArray:t}=await Promise.resolve().then(()=>(pA(),Kk));t(e,s)&&(u=`${s}_0`)}return t.name?(a.set(u,e.state.env.get(u)),e.state.env.set(u,l)):(e.state.env.set(u,l),e.state.options.allexport&&(e.state.exportedVars=e.state.exportedVars||new Set,e.state.exportedVars.add(s)),e.state.tempEnvBindings?.some(e=>e.has(s))&&(e.state.mutatedTempEnvVars=e.state.mutatedTempEnvVars||new Set,e.state.mutatedTempEnvVars.add(s))),{continueToNext:!1,xtraceOutput:o}}async function wF(e,t){let{arrayName:n,subscriptExpr:r}=t;if(e.state.associativeArrays?.has(n))return xF(e,n,r);let i;if(/^-?\d+$/.test(r))i=Number.parseInt(r,10);else{try{i=await Z(e,aT(new DE,r).expression,!1)}catch{let t=e.state.env.get(r);i=t?Number.parseInt(t,10):0}Number.isNaN(i)&&(i=0)}if(i<0){let t=J(e,n);t.length>0&&(i=Math.max(...t.map(e=>e[0]))+1+i)}return`${n}_${i}`}OE(),A(),pA(),Yr();async function TF(e,t,n,r){let i=await kM(e,t.redirections);if(i)return i;let a=new Map(e.state.env),o=e.state.cwd,s={...e.state.options},c=new Map(e.state.functions),l=e.state.localScopes,u=e.state.localVarStack,d=e.state.localVarDepth,f=e.state.fullyUnsetLocals;if(e.state.localScopes=l.map(e=>new Map(e)),u){e.state.localVarStack=new Map;for(let[t,n]of u.entries())e.state.localVarStack.set(t,n.map(e=>({...e})))}d&&(e.state.localVarDepth=new Map(d)),f&&(e.state.fullyUnsetLocals=new Map(f));let p=e.state.loopDepth,m=e.state.parentHasLoopContext;e.state.parentHasLoopContext=p>0,e.state.loopDepth=0;let h=e.state.lastArg,g=e.state.bashPid;e.state.bashPid=e.state.nextVirtualPid++;let _=e.state.groupStdin;n&&(e.state.groupStdin=n);let v=``,y=``,ee=0,te=()=>{e.state.env=a,e.state.cwd=o,e.state.options=s,e.state.functions=c,e.state.localScopes=l,e.state.localVarStack=u,e.state.localVarDepth=d,e.state.fullyUnsetLocals=f,e.state.loopDepth=p,e.state.parentHasLoopContext=m,e.state.groupStdin=_,e.state.bashPid=g,e.state.lastArg=h};try{for(let e of t.body){let t=await r(e);v+=t.stdout,y+=t.stderr,ee=t.exitCode}}catch(n){if(te(),n instanceof k)throw n;return n instanceof Kr||n instanceof Fr||n instanceof Ir?(v+=n.stdout,y+=n.stderr,AM(e,$(v,y,0),t.redirections)):n instanceof Br||n instanceof Lr?(v+=n.stdout,y+=n.stderr,AM(e,$(v,y,n.exitCode),t.redirections)):n instanceof Rr?AM(e,$(v+n.stdout,y+n.stderr,n.exitCode),t.redirections):AM(e,$(v,`${y}${Jr(n)}
1532
+ `,1),t.redirections)}return te(),AM(e,$(v,y,ee),t.redirections)}async function EF(e,t,n,r){let i=``,a=``,o=0,s=await OM(e,t.redirections);if(s)return s;let c=n;for(let n of t.redirections)if((n.operator===`<<`||n.operator===`<<-`)&&n.target.type===`HereDoc`){let t=n.target,r=await X(e,t.content);t.stripTabs&&(r=r.split(`
1533
+ `).map(e=>e.replace(/^\t+/,``)).join(`
1534
+ `));let i=n.fd??0;i===0?c=r:(e.state.fileDescriptors||(e.state.fileDescriptors=new Map),Cj(e),e.state.fileDescriptors.set(i,r))}else if(n.operator===`<<<`&&n.target.type===`Word`)c=`${await X(e,n.target)}
1535
+ `;else if(n.operator===`<`&&n.target.type===`Word`)try{let t=await X(e,n.target),r=e.fs.resolvePath(e.state.cwd,t);c=await e.fs.readFile(r)}catch{return $(``,`bash: ${await X(e,n.target)}: No such file or directory
1536
+ `,1)}let l=e.state.groupStdin;c&&(e.state.groupStdin=c);try{for(let e of t.body){let t=await r(e);i+=t.stdout,a+=t.stderr,o=t.exitCode}}catch(t){if(e.state.groupStdin=l,t instanceof k)throw t;if(Nr(t)||t instanceof Rr||t instanceof Br)throw t.prependOutput(i,a),t;return $(i,`${a}${Jr(t)}
1537
+ `,1)}return e.state.groupStdin=l,AM(e,$(i,a,o),t.redirections)}async function DF(e,t,n,r,i){let a;try{a=await e.fs.readFile(t)}catch{return Q(`bash: ${t}: No such file or directory
1538
+ `,127)}if(a.startsWith(`#!`)){let e=a.indexOf(`
1539
+ `);e!==-1&&(a=a.slice(e+1))}let o=new Map(e.state.env),s=e.state.cwd,c={...e.state.options},l=e.state.loopDepth,u=e.state.parentHasLoopContext,d=e.state.lastArg,f=e.state.bashPid,p=e.state.groupStdin,m=e.state.currentSource;e.state.parentHasLoopContext=l>0,e.state.loopDepth=0,e.state.bashPid=e.state.nextVirtualPid++,r&&(e.state.groupStdin=r),e.state.currentSource=t,e.state.env.set(`0`,t),e.state.env.set(`#`,String(n.length)),e.state.env.set(`@`,n.join(` `)),e.state.env.set(`*`,n.join(` `));for(let t=0;t<n.length&&t<9;t++)e.state.env.set(String(t+1),n[t]);for(let t=n.length+1;t<=9;t++)e.state.env.delete(String(t));let h=()=>{e.state.env=o,e.state.cwd=s,e.state.options=c,e.state.loopDepth=l,e.state.parentHasLoopContext=u,e.state.lastArg=d,e.state.bashPid=f,e.state.groupStdin=p,e.state.currentSource=m};try{let e=await i(new DE().parse(a));return h(),e}catch(e){if(h(),e instanceof Br||e instanceof k)throw e;if(e.name===`ParseException`)return Q(`bash: ${t}: ${e.message}
1540
+ `);throw e}}var OF=class{ctx;constructor(e,t){this.ctx={state:t,fs:e.fs,commands:e.commands,limits:e.limits,execFn:e.exec,executeScript:this.executeScript.bind(this),executeStatement:this.executeStatement.bind(this),executeCommand:this.executeCommand.bind(this),fetch:e.fetch,sleep:e.sleep,trace:e.trace,coverage:e.coverage,requireDefenseContext:e.requireDefenseContext??!1,jsBootstrapCode:e.jsBootstrapCode,invokeTool:e.invokeTool}}assertDefenseContext(e){if(!this.ctx.requireDefenseContext||Zn.isInSandboxedContext())return;let t=`interpreter ${e} attempted outside defense context`;throw new C(t,{timestamp:Date.now(),type:`missing_defense_context`,message:t,path:`DefenseInDepthBox.context`,stack:Error().stack,executionId:Zn.getCurrentExecutionId()})}buildExportedEnv(){let e=this.ctx.state.exportedVars,t=this.ctx.state.tempExportedVars,n=new Set;if(e)for(let t of e)n.add(t);if(t)for(let e of t)n.add(e);if(n.size===0)return Object.create(null);let r=Object.create(null);for(let e of n){let t=this.ctx.state.env.get(e);t!==void 0&&(r[e]=t)}return r}async executeScript(e){this.assertDefenseContext(`execution`);let t=``,n=``,r=0,i=this.ctx.limits.maxOutputSize,a=(e,r)=>{t.length+n.length+e.length+r.length>i&&Sj(`total output size exceeded (>${i} bytes), increase executionLimits.maxOutputSize`,`output_size`),t+=e,n+=r};for(let i of e.statements)try{let e=await this.executeStatement(i);a(gr(e),e.stderr),r=e.exitCode,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r))}catch(e){if(e instanceof Br)throw e.prependOutput(t,n),e;if(e instanceof qr)return a(e.stdout,e.stderr),r=e.exitCode,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r)),{stdout:t,stderr:n,exitCode:r,env:au(this.ctx.state.env)};if(e instanceof k)throw e;if(e instanceof Rr)return a(e.stdout,e.stderr),r=e.exitCode,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r)),{stdout:t,stderr:n,exitCode:r,env:au(this.ctx.state.env)};if(e instanceof zr||e instanceof Hr)return a(e.stdout,e.stderr),r=1,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r)),{stdout:t,stderr:n,exitCode:r,env:au(this.ctx.state.env)};if(e instanceof Vr){a(e.stdout,e.stderr),r=1,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r));continue}if(e instanceof Wr){a(e.stdout,e.stderr),r=1,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r));continue}if(e instanceof Fr||e instanceof Ir){if(this.ctx.state.loopDepth>0)throw e.prependOutput(t,n),e;a(e.stdout,e.stderr);continue}throw e instanceof Lr&&e.prependOutput(t,n),e}return{stdout:t,stderr:n,exitCode:r,env:au(this.ctx.state.env)}}async executeUserScript(e,t,n=``){return DF(this.ctx,e,t,n,e=>this.executeScript(e))}async executeStatement(e){if(this.assertDefenseContext(`statement`),this.ctx.state.signal?.aborted)throw new Gr;if(this.ctx.state.commandCount++,this.ctx.state.commandCount>this.ctx.limits.maxCommandCount&&Sj(`too many commands executed (>${this.ctx.limits.maxCommandCount}), increase executionLimits.maxCommandCount`,`commands`),e.deferredError)throw new Yw(e.deferredError.message,e.line??1,1);if(this.ctx.state.options.noexec)return yj;this.ctx.state.errexitSafe=!1;let t=``,n=``;this.ctx.state.options.verbose&&!this.ctx.state.suppressVerbose&&e.sourceText&&(n+=`${e.sourceText}
1541
+ `);let r=0,i=-1,a=!1;for(let o=0;o<e.pipelines.length;o++){let s=e.pipelines[o],c=o>0?e.operators[o-1]:null;if(c===`&&`&&r!==0||c===`||`&&r===0)continue;let l=await this.executePipeline(s);t+=gr(l),n+=l.stderr,r=l.exitCode,i=o,a=s.negated,this.ctx.state.lastExitCode=r,this.ctx.state.env.set(`?`,String(r))}let o=i<e.pipelines.length-1,s=this.ctx.state.errexitSafe;if(this.ctx.state.errexitSafe=o||a||s,this.ctx.state.options.errexit&&r!==0&&i===e.pipelines.length-1&&!a&&!this.ctx.state.inCondition&&!s)throw new Rr(r,t,n);return $(t,n,r)}async executePipeline(e){return pF(this.ctx,e,(e,t)=>this.executeCommand(e,t))}async executeCommand(e,t){switch(this.assertDefenseContext(`command`),this.ctx.coverage?.hit(`bash:cmd:${e.type}`),e.type){case`SimpleCommand`:return this.executeSimpleCommand(e,t);case`If`:return $P(this.ctx,e);case`For`:return eF(this.ctx,e);case`CStyleFor`:return tF(this.ctx,e);case`While`:return nF(this.ctx,e,t);case`Until`:return rF(this.ctx,e);case`Case`:return iF(this.ctx,e);case`Subshell`:return this.executeSubshell(e,t);case`Group`:return this.executeGroup(e,t);case`FunctionDef`:return jM(this.ctx,e);case`ArithmeticCommand`:return this.executeArithmeticCommand(e);case`ConditionalCommand`:return this.executeConditionalCommand(e);default:return yj}}async executeSimpleCommand(e,t){try{return await this.executeSimpleCommandInner(e,t)}catch(e){if(e instanceof Ur)return Q(e.stderr);throw e}}async executeSimpleCommandInner(e,t){if(e.line!==void 0&&(this.ctx.state.currentLine=e.line),this.ctx.state.shoptOptions.expand_aliases&&e.name){let t=e,n=100;for(;n>0;){let e=this.expandAlias(t);if(e===t)break;t=e,n--}this.aliasExpansionStack.clear(),t!==e&&(e=t)}this.ctx.state.expansionStderr=``;let n=await mF(this.ctx,e);if(n.error)return n.error;let r=n.tempAssignments,i=n.xtraceOutput;if(!e.name){if(e.redirections.length>0){let t=await kM(this.ctx,e.redirections);if(t)return t;let n=$(``,i,0);return AM(this.ctx,n,e.redirections)}this.ctx.state.lastArg=``;let t=(this.ctx.state.expansionStderr||``)+i;return this.ctx.state.expansionStderr=``,$(``,t,this.ctx.state.lastExitCode)}let a=e.name&&aF(e.name,[`local`,`declare`,`typeset`,`export`,`readonly`]),o=Array.from(r.keys());if(o.length>0&&!a){this.ctx.state.tempExportedVars=this.ctx.state.tempExportedVars||new Set;for(let e of o)this.ctx.state.tempExportedVars.add(e)}let s=await OM(this.ctx,e.redirections);if(s){for(let[e,t]of r)t===void 0?this.ctx.state.env.delete(e):this.ctx.state.env.set(e,t);return s}let c=-1;for(let n of e.redirections){if((n.operator===`<<`||n.operator===`<<-`)&&n.target.type===`HereDoc`){let e=n.target,r=await X(this.ctx,e.content);e.stripTabs&&(r=r.split(`
1542
+ `).map(e=>e.replace(/^\t+/,``)).join(`
1543
+ `)),r=dr(r);let i=n.fd??0;i===0?t=r:(this.ctx.state.fileDescriptors||(this.ctx.state.fileDescriptors=new Map),Cj(this.ctx),this.ctx.state.fileDescriptors.set(i,r));continue}if(n.operator===`<<<`&&n.target.type===`Word`){t=dr(`${await X(this.ctx,n.target)}
1544
+ `);continue}if(n.operator===`<`&&n.target.type===`Word`)try{let e=await X(this.ctx,n.target),r=this.ctx.fs.resolvePath(this.ctx.state.cwd,e);t=await pr(this.ctx.fs,r)}catch{let e=await X(this.ctx,n.target);for(let[e,t]of r)t===void 0?this.ctx.state.env.delete(e):this.ctx.state.env.set(e,t);return Q(`bash: ${e}: No such file or directory
1545
+ `)}if(n.operator===`<&`&&n.target.type===`Word`){let e=await X(this.ctx,n.target),r=Number.parseInt(e,10);if(!Number.isNaN(r)&&this.ctx.state.fileDescriptors){let e=this.ctx.state.fileDescriptors.get(r);if(e!==void 0)if(e.startsWith(`__rw__:`)){let n=oF(e);n&&(t=n.content.slice(n.position),c=r)}else e.startsWith(`__file__:`)||e.startsWith(`__file_append__:`)||(t=e)}}}let l=await X(this.ctx,e.name),u=[],d=[];if(aF(e.name,[`local`,`declare`,`typeset`,`export`,`readonly`])&&(l===`local`||l===`declare`||l===`typeset`||l===`export`||l===`readonly`))for(let t of e.args){let e=await hj(this.ctx,t);if(e)u.push(e),d.push(!0);else{let e=await gj(this.ctx,t);if(e!==null)u.push(e),d.push(!0);else{let e=await aA(this.ctx,t);for(let t of e.values)u.push(t),d.push(e.quoted)}}}else for(let t of e.args){let e=await aA(this.ctx,t);for(let t of e.values)u.push(t),d.push(e.quoted)}if(!l){if(e.name.parts.every(e=>e.type===`CommandSubstitution`||e.type===`ParameterExpansion`||e.type===`ArithmeticExpansion`)){if(u.length>0){let e=u.shift();return d.shift(),await this.runCommand(e,u,d,t,!1,!1,c)}return $(``,``,this.ctx.state.lastExitCode)}return Q(`bash: : command not found
1546
+ `,127)}if(l===`exec`&&(u.length===0||u[0]===`--`)){for(let t of e.redirections){if(t.target.type===`HereDoc`||t.fdVariable)continue;let e=await X(this.ctx,t.target),n=t.fd??(t.operator===`<`||t.operator===`<>`?0:1);switch(this.ctx.state.fileDescriptors||(this.ctx.state.fileDescriptors=new Map),t.operator){case`>`:case`>|`:{let t=this.ctx.fs.resolvePath(this.ctx.state.cwd,e);await this.ctx.fs.writeFile(t,``,`utf8`),Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,`__file__:${t}`);break}case`>>`:{let t=this.ctx.fs.resolvePath(this.ctx.state.cwd,e);Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,`__file_append__:${t}`);break}case`<`:{let t=this.ctx.fs.resolvePath(this.ctx.state.cwd,e);try{let e=await this.ctx.fs.readFile(t);Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,e)}catch{return Q(`bash: ${e}: No such file or directory
1547
+ `)}break}case`<>`:{let t=this.ctx.fs.resolvePath(this.ctx.state.cwd,e);try{let e=await this.ctx.fs.readFile(t);Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,`__rw__:${t.length}:${t}:0:${e}`)}catch{await this.ctx.fs.writeFile(t,``,`utf8`),Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,`__rw__:${t.length}:${t}:0:`)}break}case`>&`:if(e===`-`)this.ctx.state.fileDescriptors.delete(n);else if(e.endsWith(`-`)){let t=e.slice(0,-1),r=Number.parseInt(t,10);if(!Number.isNaN(r)){let e=this.ctx.state.fileDescriptors.get(r);e===void 0?this.ctx.state.fileDescriptors.set(n,`__dupout__:${r}`):this.ctx.state.fileDescriptors.set(n,e),this.ctx.state.fileDescriptors.delete(r)}}else{let t=Number.parseInt(e,10);Number.isNaN(t)||(Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,`__dupout__:${t}`))}break;case`<&`:if(e===`-`)this.ctx.state.fileDescriptors.delete(n);else if(e.endsWith(`-`)){let t=e.slice(0,-1),r=Number.parseInt(t,10);if(!Number.isNaN(r)){let e=this.ctx.state.fileDescriptors.get(r);e===void 0?this.ctx.state.fileDescriptors.set(n,`__dupin__:${r}`):this.ctx.state.fileDescriptors.set(n,e),this.ctx.state.fileDescriptors.delete(r)}}else{let t=Number.parseInt(e,10);Number.isNaN(t)||(Cj(this.ctx),this.ctx.state.fileDescriptors.set(n,`__dupin__:${t}`))}break}}for(let[e,t]of r)t===void 0?this.ctx.state.env.delete(e):this.ctx.state.env.set(e,t);if(this.ctx.state.tempExportedVars)for(let e of r.keys())this.ctx.state.tempExportedVars.delete(e);return yj}if(this.ctx.state.extraArgs){u.push(...this.ctx.state.extraArgs);for(let e=0;e<this.ctx.state.extraArgs.length;e++)d.push(!0);this.ctx.state.extraArgs=void 0}let f=await dF(this.ctx,l,u);r.size>0&&(this.ctx.state.tempEnvBindings=this.ctx.state.tempEnvBindings||[],this.ctx.state.tempEnvBindings.push(new Map(r)));let p,m=null;try{p=await this.runCommand(l,u,d,t,!1,!1,c)}catch(e){if(e instanceof Fr||e instanceof Ir)m=e,p=yj;else throw e}let h=i+f;if(h&&(p={...p,stderr:h+p.stderr}),p=await AM(this.ctx,p,e.redirections),m)throw m;if(u.length>0){let e=u[u.length-1];if((l===`declare`||l===`local`||l===`typeset`)&&/^[a-zA-Z_][a-zA-Z0-9_]*=\(/.test(e)){let t=e.match(/^([a-zA-Z_][a-zA-Z0-9_]*)=\(/);t&&(e=t[1])}this.ctx.state.lastArg=e}else this.ctx.state.lastArg=l;let g=bM(l)&&l!==`unset`&&l!==`eval`;if(!this.ctx.state.options.posix||!g)for(let[e,t]of r)this.ctx.state.fullyUnsetLocals?.has(e)||(t===void 0?this.ctx.state.env.delete(e):this.ctx.state.env.set(e,t));if(this.ctx.state.tempExportedVars)for(let e of r.keys())this.ctx.state.tempExportedVars.delete(e);return r.size>0&&this.ctx.state.tempEnvBindings&&this.ctx.state.tempEnvBindings.pop(),this.ctx.state.expansionStderr&&(p={...p,stderr:this.ctx.state.expansionStderr+p.stderr},this.ctx.state.expansionStderr=``),p}async runCommand(e,t,n,r,i=!1,a=!1,o=-1){let s={ctx:this.ctx,runCommand:(e,t,n,r,i,a,o)=>this.runCommand(e,t,n,r,i,a,o),buildExportedEnv:()=>this.buildExportedEnv(),executeUserScript:(e,t,n)=>this.executeUserScript(e,t,n)},c=await KP(s,e,t,n,r,i,a,o);return c===null?YP(s,e,t,r,a):c}aliasExpansionStack=new Set;expandAlias(e){return fj(this.ctx.state,e,this.aliasExpansionStack)}async findCommandInPath(e){return NP(this.ctx,e)}async executeSubshell(e,t=``){return TF(this.ctx,e,t,e=>this.executeStatement(e))}async executeGroup(e,t=``){return EF(this.ctx,e,t,e=>this.executeStatement(e))}async executeArithmeticCommand(e){e.line!==void 0&&(this.ctx.state.currentLine=e.line);let t=await kM(this.ctx,e.redirections);if(t)return t;try{let t=xj(await Z(this.ctx,e.expression.expression)!==0);return this.ctx.state.expansionStderr&&(t={...t,stderr:this.ctx.state.expansionStderr+t.stderr},this.ctx.state.expansionStderr=``),AM(this.ctx,t,e.redirections)}catch(t){let n=Q(`bash: arithmetic expression: ${t.message}
1548
+ `);return AM(this.ctx,n,e.redirections)}}async executeConditionalCommand(e){e.line!==void 0&&(this.ctx.state.currentLine=e.line);let t=await kM(this.ctx,e.redirections);if(t)return t;try{let t=xj(await Hj(this.ctx,e.expression));return this.ctx.state.expansionStderr&&(t={...t,stderr:this.ctx.state.expansionStderr+t.stderr},this.ctx.state.expansionStderr=``),AM(this.ctx,t,e.redirections)}catch(t){let n=t instanceof Vr?1:2,r=Q(`bash: conditional expression: ${t.message}
1549
+ `,n);return AM(this.ctx,r,e.redirections)}}},kF={maxCallDepth:100,maxCommandCount:1e4,maxLoopIterations:1e4,maxAwkIterations:1e4,maxSedIterations:1e4,maxJqIterations:1e4,maxSqliteTimeoutMs:5e3,maxPythonTimeoutMs:1e4,maxJsTimeoutMs:1e4,maxGlobOperations:1e5,maxStringLength:10485760,maxArrayElements:1e5,maxHeredocSize:10485760,maxSubstitutionDepth:50,maxBraceExpansionResults:1e4,maxOutputSize:10485760,maxFileDescriptors:1024,maxSourceDepth:100};function AF(e){return e?{maxCallDepth:e.maxCallDepth??kF.maxCallDepth,maxCommandCount:e.maxCommandCount??kF.maxCommandCount,maxLoopIterations:e.maxLoopIterations??kF.maxLoopIterations,maxAwkIterations:e.maxAwkIterations??kF.maxAwkIterations,maxSedIterations:e.maxSedIterations??kF.maxSedIterations,maxJqIterations:e.maxJqIterations??kF.maxJqIterations,maxSqliteTimeoutMs:e.maxSqliteTimeoutMs??kF.maxSqliteTimeoutMs,maxPythonTimeoutMs:e.maxPythonTimeoutMs??kF.maxPythonTimeoutMs,maxJsTimeoutMs:e.maxJsTimeoutMs??kF.maxJsTimeoutMs,maxGlobOperations:e.maxGlobOperations??kF.maxGlobOperations,maxStringLength:e.maxStringLength??kF.maxStringLength,maxArrayElements:e.maxArrayElements??kF.maxArrayElements,maxHeredocSize:e.maxHeredocSize??kF.maxHeredocSize,maxSubstitutionDepth:e.maxSubstitutionDepth??kF.maxSubstitutionDepth,maxBraceExpansionResults:e.maxBraceExpansionResults??kF.maxBraceExpansionResults,maxOutputSize:e.maxOutputSize??kF.maxOutputSize,maxFileDescriptors:e.maxFileDescriptors??kF.maxFileDescriptors,maxSourceDepth:e.maxSourceDepth??kF.maxSourceDepth}:{...kF}}TA(),Qn(),ir();function jF(e){try{let t=new URL(e);return{origin:t.origin,pathname:t.pathname,href:t.href}}catch{return null}}function MF(e){let t=jF(e);return t?{origin:t.origin,pathPrefix:t.pathname}:null}function NF(e){if(e.includes(`\\`))return!0;let t=e.toLowerCase();return t.includes(`%2f`)||t.includes(`%5c`)}function PF(e,t){return t===`/`||t===``?!0:t.endsWith(`/`)?e.startsWith(t):e===t||e.startsWith(`${t}/`)}function FF(e,t){let n=jF(e);if(!n)return!1;let r=MF(t);return!r||n.origin!==r.origin||r.pathPrefix!==`/`&&r.pathPrefix!==``&&NF(n.pathname)?!1:PF(n.pathname,r.pathPrefix)}function IF(e){return typeof e==`string`?e:e.url}function LF(e,t){return!t||t.length===0?!1:t.some(t=>FF(e,IF(t)))}function RF(e){let t=zF(e);if(t===`localhost`||t.endsWith(`.localhost`))return!0;let n=VF(t);if(n)return UF(n);let r=HF(t);return r?WF(r):!1}function zF(e){let t=e.trim().toLowerCase();return t.startsWith(`[`)&&t.endsWith(`]`)?t.slice(1,-1):t}function BF(e){if(!e)return null;let t=10,n=e;if(n.startsWith(`0x`)||n.startsWith(`0X`)?(t=16,n=n.slice(2)):n.length>1&&n.startsWith(`0`)&&(t=8),!n||t===16&&!/^[0-9a-fA-F]+$/.test(n)||t===10&&!/^\d+$/.test(n)||t===8&&!/^[0-7]+$/.test(n))return null;let r=Number.parseInt(n,t);return!Number.isFinite(r)||r<0?null:r}function VF(e){let t=e.split(`.`);if(t.length===0||t.length>4)return null;let n=t.map(e=>BF(e));if(n.some(e=>e===null))return null;let r=n;if(t.length===1){let e=r[0];return e>4294967295?null:[e>>>24&255,e>>>16&255,e>>>8&255,e&255]}if(t.length===2){let[e,t]=r;return e>255||t>16777215?null:[e,t>>>16&255,t>>>8&255,t&255]}if(t.length===3){let[e,t,n]=r;return e>255||t>255||n>65535?null:[e,t,n>>>8&255,n&255]}let[i,a,o,s]=r;return i>255||a>255||o>255||s>255?null:[i,a,o,s]}function HF(e){let t=e,n=null;if(t.includes(`.`)){let e=t.lastIndexOf(`:`);if(e<0)return null;let r=VF(t.slice(e+1));if(!r)return null;n=r,t=t.slice(0,e)}let r=t.includes(`::`)?t.split(`::`).length-1:0;if(r>1)return null;let[i,a]=t.split(`::`),o=i?i.split(`:`).filter(Boolean):[],s=a?a.split(`:`).filter(Boolean):[],c=e=>/^[0-9a-f]{1,4}$/i.test(e)?Number.parseInt(e,16):null,l=o.map(c),u=s.map(c);if(l.some(e=>e===null)||u.some(e=>e===null))return null;let d=n?2:0,f=l.length+u.length+d,p=0;if(r===1){if(p=8-f,p<0)return null}else if(f!==8)return null;let m=[...l,...Array(p).fill(0),...u];return n&&(m.push(n[0]<<8|n[1]),m.push(n[2]<<8|n[3])),m.length===8?m:null}function UF(e){let[t,n]=e;return t===127||t===10||t===172&&n>=16&&n<=31||t===192&&n===168||t===169&&n===254||t===0||t===100&&n>=64&&n<=127||t===198&&(n===18||n===19)||t===192&&n===0&&e[2]===0||t===192&&n===0&&e[2]===2||t===198&&n===51&&e[2]===100||t===203&&n===0&&e[2]===113||t>=240}function WF(e){return e.every(e=>e===0)||e.slice(0,7).every(e=>e===0)&&e[7]===1||(e[0]&65472)==65152||(e[0]&65024)==64512?!0:e[0]===0&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===65535?UF([e[6]>>>8&255,e[6]&255,e[7]>>>8&255,e[7]&255]):e[0]===8193&&e[1]===3512?!0:e[0]===100&&e[1]===65435&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===0?UF([e[6]>>>8&255,e[6]&255,e[7]>>>8&255,e[7]&255]):e[0]===100&&e[1]===65435&&e[2]===1||e[0]===8194&&UF([e[1]>>>8&255,e[1]&255,e[2]>>>8&255,e[2]&255])}function GF(e){let t=[];for(let n of e){if(typeof n!=`string`&&(typeof n!=`object`||!n||!(`url`in n)||typeof n.url!=`string`)){t.push(`Invalid allow-list entry: must be a string URL or an object with a "url" string property`);continue}let e=IF(n);if(!jF(e)){t.push(`Invalid URL in allow-list: "${e}" - must be a valid URL with scheme and host (e.g., "https://example.com")`);continue}let r=new URL(e);if(r.protocol!==`http:`&&r.protocol!==`https:`){t.push(`Only http and https URLs are allowed in allow-list: "${e}"`);continue}if(!r.hostname){t.push(`Allow-list entry must include a hostname: "${e}"`);continue}if(r.pathname!==`/`&&r.pathname!==``&&NF(r.pathname)){t.push(`Allow-list entry contains ambiguous path separators: "${e}"`);continue}(r.search||r.hash)&&t.push(`Query strings and fragments are ignored in allow-list entries: "${e}"`)}return t}function KF(e,t){return t()}var qF=class extends Error{constructor(e,t){super(`Network access denied: ${t??`URL not in allow-list`}: ${e}`),this.name=`NetworkAccessDeniedError`}},JF=class extends Error{constructor(e){super(`Too many redirects (max: ${e})`),this.name=`TooManyRedirectsError`}},YF=class extends Error{constructor(e){super(`Redirect target not in allow-list: ${e}`),this.name=`RedirectNotAllowedError`}},XF=class extends Error{constructor(e,t){super(`HTTP method '${e}' not allowed. Allowed methods: ${t.join(`, `)}`),this.name=`MethodNotAllowedError`}},ZF=class extends Error{constructor(e){super(`Response body too large (max: ${e} bytes)`),this.name=`ResponseTooLargeError`}};function QF(e){return new Promise((t,n)=>{wA(e,{all:!0},(e,r)=>{e?n(e):t(r)})})}var $F=20,eI=3e4,tI=10485760,nI=[`GET`,`HEAD`],rI=new Set([`GET`,`HEAD`,`OPTIONS`]),iI=new Set([301,302,303,307,308]);function aI(e){let t=e.allowedUrlPrefixes??[];if(!e.dangerouslyAllowFullInternetAccess){let e=GF(t);if(e.length>0)throw Error(`Invalid network allow-list:
1550
+ ${e.join(`
1551
+ `)}`)}let n=[];for(let e of t)typeof e==`object`&&e.transform&&e.transform.length>0&&n.push(e);function r(e){if(n.length===0)return null;let t=null;for(let r of n)if(FF(e,r.url)&&r.transform){t||=new Headers;for(let e of r.transform)for(let[n,r]of Object.entries(e.headers))t.set(n,r)}return t}let i=e.maxRedirects??$F,a=e.timeoutMs??eI,o=e.maxResponseSize??tI,s=e.dangerouslyAllowFullInternetAccess?[`GET`,`HEAD`,`POST`,`PUT`,`DELETE`,`PATCH`,`OPTIONS`]:e.allowedMethods??nI,c=e.denyPrivateRanges??(typeof process<`u`&&!0),l=e._dnsResolve??QF;async function u(n){if(!e.dangerouslyAllowFullInternetAccess&&!LF(n,t))throw new qF(n);if(c)try{let e=new URL(n);if(RF(e.hostname))throw new qF(n,`private/loopback IP address blocked`);let t=e.hostname;if(/[a-zA-Z]/.test(t))try{let e=await l(t);for(let{address:t}of e)if(RF(t))throw new qF(n,`hostname resolves to private/loopback IP address`);let r=e[0];if(r)return{hostname:t,address:r.address,family:r.family===6?6:4}}catch(e){if(e instanceof qF)throw e;let t=e?.code;if(!(t===`ENOTFOUND`||t===`ENODATA`))throw new qF(n,`DNS resolution failed for private IP check`)}}catch(e){if(e instanceof qF)throw e}return null}function d(t){if(e.dangerouslyAllowFullInternetAccess)return;let n=t.toUpperCase();if(!s.includes(n))throw new XF(n,s)}async function f(e,t={}){let n=t.method?.toUpperCase()??`GET`,s=await u(e);d(n);let c=e,l=0,f=t.followRedirects??!0,p=t.timeoutMs===void 0?a:Math.min(t.timeoutMs,a);for(;;){let e=new AbortController,a=nr(()=>e.abort(),p);try{let a=await Zn.runTrustedAsync(()=>{let i=r(c),a=oI(t.headers,i),o={method:n,headers:a,signal:e.signal,redirect:`manual`};return t.body&&!rI.has(n)&&(o.body=t.body),s?KF(s,()=>fetch(c,o)):fetch(c,o)});if(iI.has(a.status)&&f){let e=a.headers.get(`location`);if(!e)return await sI(a,c,o);let t=new URL(e,c).href;try{s=await u(t)}catch{throw new YF(t)}if(l++,l>i)throw new JF(i);c=t;continue}return await sI(a,c,o)}finally{rr(a)}}}return f}function oI(e,t){if(!e&&!t)return;if(!t)return e;let n=(e instanceof Headers,new Headers(e));for(let[e,r]of t)n.set(e,r);return n}async function sI(e,t,n){let r=Object.create(null);if(e.headers.forEach((e,t)=>{r[t.toLowerCase()]=e}),n>0){let t=e.headers.get(`content-length`);if(t){let e=parseInt(t,10);if(!Number.isNaN(e)&&e>n)throw new ZF(n)}}let i;if(n>0&&e.body){let t=e.body.getReader(),r=[],a=0;for(;;){let{done:e,value:i}=await t.read();if(e)break;if(i){if(a+=i.byteLength,a>n)throw t.cancel(),new ZF(n);r.push(i)}}i=new Uint8Array(a);let o=0;for(let e of r)i.set(e,o),o+=e.byteLength}else{let t=await e.arrayBuffer();if(n>0&&t.byteLength>n)throw new ZF(n);i=new Uint8Array(t)}return{status:e.status,statusText:e.statusText,headers:r,body:i,url:t}}Vw(),OE(),Qn();function cI(e){return lI(e)}function lI(e){return e.statements.map(uI).join(`
1552
+ `)}function uI(e){let t=[];for(let n=0;n<e.pipelines.length;n++)t.push(dI(e.pipelines[n])),n<e.operators.length&&t.push(e.operators[n]);let n=t.join(` `);return e.background&&(n+=` &`),n}function dI(e){let t=[];e.timed&&t.push(e.timePosix?`time -p`:`time`),e.negated&&t.push(`!`);let n=[];for(let t=0;t<e.commands.length;t++)if(n.push(fI(e.commands[t])),t<e.commands.length-1){let r=e.pipeStderr?.[t];n.push(r?`|&`:`|`)}return(t.length>0?`${t.join(` `)} `:``)+n.join(` `)}function fI(e){switch(e.type){case`SimpleCommand`:return pI(e);case`If`:return AI(e);case`For`:return jI(e);case`CStyleFor`:return MI(e);case`While`:return NI(e);case`Until`:return PI(e);case`Case`:return FI(e);case`Subshell`:return LI(e);case`Group`:return RI(e);case`ArithmeticCommand`:return zI(e);case`ConditionalCommand`:return BI(e);case`FunctionDef`:return VI(e);default:throw Error(`Unsupported command type: ${e.type}`)}}function pI(e){let t=[];for(let n of e.assignments)t.push(mI(n));e.name&&t.push(hI(e.name));for(let n of e.args)t.push(hI(n));for(let n of e.redirections)t.push(DI(n));return t.join(` `)}function mI(e){let t=e.append?`+=`:`=`;if(e.array){let n=e.array.map(hI).join(` `);return`${e.name}${t}(${n})`}return e.value?`${e.name}${t}${hI(e.value)}`:`${e.name}${t}`}function hI(e){return e.parts.map(e=>_I(e,!1)).join(``)}function gI(e){return e.parts.map(e=>_I(e,!0)).join(``)}function _I(e,t){switch(e.type){case`Literal`:return t?yI(e.value):vI(e.value);case`SingleQuoted`:return`'${e.value}'`;case`DoubleQuoted`:return`"${e.parts.map(e=>_I(e,!0)).join(``)}"`;case`Escaped`:return`\\${e.value}`;case`ParameterExpansion`:return SI(e);case`CommandSubstitution`:return e.legacy?`\`${lI(e.body)}\``:`$(${lI(e.body)})`;case`ArithmeticExpansion`:return`$((${HI(e.expression.expression)}))`;case`ProcessSubstitution`:return e.direction===`input`?`<(${lI(e.body)})`:`>(${lI(e.body)})`;case`BraceExpansion`:return TI(e);case`TildeExpansion`:return e.user===null?`~`:`~${e.user}`;case`Glob`:return e.pattern;default:throw Error(`Unsupported word part type: ${e.type}`)}}function vI(e){return e.replace(/[\s\\'"`!|&;()<>{}[\]*?~#]/g,`\\$&`)}function yI(e){return e.replace(/[$`"\\]/g,`\\$&`)}function bI(e,t){return e.parts.map(e=>xI(e,t)).join(``)}function xI(e,t){switch(e.type){case`Literal`:return t?e.value:e.value.replace(/[$`]/g,`\\$&`);case`Escaped`:return`\\${e.value}`;case`ParameterExpansion`:return SI(e);case`CommandSubstitution`:return e.legacy?`\`${lI(e.body)}\``:`$(${lI(e.body)})`;case`ArithmeticExpansion`:return`$((${HI(e.expression.expression)}))`;default:return _I(e,!1)}}function SI(e){return e.operation?`\${${wI(e.parameter,e.operation)}}`:CI(e.parameter)?`\${${e.parameter}}`:`$${e.parameter}`}function CI(e){return!(/^[?#@*$!\-0-9]$/.test(e)||/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e))}function wI(e,t){switch(t.type){case`Length`:return`#${e}`;case`LengthSliceError`:return`#${e}:`;case`BadSubstitution`:return t.text;case`DefaultValue`:return`${e}${t.checkEmpty?`:`:``}-${gI(t.word)}`;case`AssignDefault`:return`${e}${t.checkEmpty?`:`:``}=${gI(t.word)}`;case`ErrorIfUnset`:return`${e}${t.checkEmpty?`:`:``}?${t.word?gI(t.word):``}`;case`UseAlternative`:return`${e}${t.checkEmpty?`:`:``}+${gI(t.word)}`;case`Substring`:{let n=HI(t.offset.expression);return t.length?`${e}:${n}:${HI(t.length.expression)}`:`${e}:${n}`}case`PatternRemoval`:{let n=t.side===`prefix`?`#`:`%`;return`${e}${t.greedy?`${n}${n}`:n}${gI(t.pattern)}`}case`PatternReplacement`:{let n=`/`;t.all?n=`//`:t.anchor===`start`?n=`/#`:t.anchor===`end`&&(n=`/%`);let r=t.replacement?`/${gI(t.replacement)}`:``;return`${e}${n}${gI(t.pattern)}${r}`}case`CaseModification`:{let n=t.direction===`upper`?`^`:`,`;return`${e}${t.all?`${n}${n}`:n}${t.pattern?gI(t.pattern):``}`}case`Transform`:return`${e}@${t.operator}`;case`Indirection`:return t.innerOp?`!${wI(e,t.innerOp)}`:`!${e}`;case`ArrayKeys`:return`!${t.array}[${t.star?`*`:`@`}]`;case`VarNamePrefix`:return`!${t.prefix}${t.star?`*`:`@`}`;default:throw Error(`Unsupported parameter operation type: ${t.type}`)}}function TI(e){return`{${e.items.map(EI).join(`,`)}}`}function EI(e){if(e.type===`Word`)return hI(e.word);let t=e.startStr??String(e.start),n=e.endStr??String(e.end);return e.step===void 0?`${t}..${n}`:`${t}..${n}..${e.step}`}function DI(e){let t=e.fdVariable?`{${e.fdVariable}}`:e.fd===null?``:String(e.fd);if(e.operator===`<<`||e.operator===`<<-`){let n=e.target,r=n.quoted?`'${n.delimiter}'`:n.delimiter,i=bI(n.content,n.quoted);return`${t}${e.operator}${r}
1553
+ ${i}${n.delimiter}`}return e.operator===`<<<`?`${t}<<< ${hI(e.target)}`:e.operator===`&>`||e.operator===`&>>`?`${e.operator} ${hI(e.target)}`:`${t}${e.operator} ${hI(e.target)}`}function OI(e){return e.length===0?``:` ${e.map(DI).join(` `)}`}function kI(e){return e.map(uI).join(`
1554
+ `)}function AI(e){let t=[];for(let n=0;n<e.clauses.length;n++){let r=e.clauses[n],i=n===0?`if`:`elif`;t.push(`${i} ${kI(r.condition)}; then
1555
+ ${kI(r.body)}`)}return e.elseBody&&t.push(`else
1556
+ ${kI(e.elseBody)}`),`${t.join(`
1557
+ `)}
1558
+ fi${OI(e.redirections)}`}function jI(e){let t;if(e.words===null)t=`for ${e.variable}`;else{let n=e.words.map(hI).join(` `);t=`for ${e.variable} in ${n}`}return`${t}; do
1559
+ ${kI(e.body)}
1560
+ done${OI(e.redirections)}`}function MI(e){return`for ((${e.init?HI(e.init.expression):``}; ${e.condition?HI(e.condition.expression):``}; ${e.update?HI(e.update.expression):``})); do
1561
+ ${kI(e.body)}
1562
+ done${OI(e.redirections)}`}function NI(e){return`while ${kI(e.condition)}; do
1563
+ ${kI(e.body)}
1564
+ done${OI(e.redirections)}`}function PI(e){return`until ${kI(e.condition)}; do
1565
+ ${kI(e.body)}
1566
+ done${OI(e.redirections)}`}function FI(e){let t=e.items.map(II).join(`
1567
+ `);return`case ${hI(e.word)} in
1568
+ ${t}
1569
+ esac${OI(e.redirections)}`}function II(e){let t=e.patterns.map(hI).join(` | `),n=kI(e.body);return n?`${t})
1570
+ ${n}
1571
+ ${e.terminator}`:`${t})
1572
+ ${e.terminator}`}function LI(e){return`(${kI(e.body)})${OI(e.redirections)}`}function RI(e){return`{ ${kI(e.body)}; }${OI(e.redirections)}`}function zI(e){return`((${HI(e.expression.expression)}))${OI(e.redirections)}`}function BI(e){return`[[ ${UI(e.expression)} ]]${OI(e.redirections)}`}function VI(e){let t=fI(e.body);return`${e.name}() ${t}${OI(e.redirections)}`}function HI(e){switch(e.type){case`ArithNumber`:return String(e.value);case`ArithVariable`:return e.hasDollarPrefix?`$${e.name}`:e.name;case`ArithSpecialVar`:return`$${e.name}`;case`ArithBinary`:return`${HI(e.left)} ${e.operator} ${HI(e.right)}`;case`ArithUnary`:return e.prefix?`${e.operator}${HI(e.operand)}`:`${HI(e.operand)}${e.operator}`;case`ArithTernary`:return`${HI(e.condition)} ? ${HI(e.consequent)} : ${HI(e.alternate)}`;case`ArithAssignment`:return`${e.subscript?`${e.variable}[${HI(e.subscript)}]`:e.stringKey===void 0?e.variable:`${e.variable}[${e.stringKey}]`} ${e.operator} ${HI(e.value)}`;case`ArithDynamicAssignment`:return`${e.subscript?`${HI(e.target)}[${HI(e.subscript)}]`:HI(e.target)} ${e.operator} ${HI(e.value)}`;case`ArithDynamicElement`:return`${HI(e.nameExpr)}[${HI(e.subscript)}]`;case`ArithGroup`:return`(${HI(e.expression)})`;case`ArithNested`:return`$((${HI(e.expression)}))`;case`ArithCommandSubst`:return`$(${e.command})`;case`ArithBracedExpansion`:return`\${${e.content}}`;case`ArithArrayElement`:return e.stringKey===void 0?e.index?`${e.array}[${HI(e.index)}]`:e.array:`${e.array}[${e.stringKey}]`;case`ArithDynamicBase`:return`\${${e.baseExpr}}#${e.value}`;case`ArithDynamicNumber`:return`\${${e.prefix}}${e.suffix}`;case`ArithConcat`:return e.parts.map(HI).join(``);case`ArithDoubleSubscript`:return`${e.array}[${HI(e.index)}]`;case`ArithNumberSubscript`:return`${e.number}[${e.errorToken}]`;case`ArithSyntaxError`:return e.errorToken;case`ArithSingleQuote`:return`'${e.content}'`;default:throw Error(`Unsupported arithmetic expression type: ${e.type}`)}}function UI(e){switch(e.type){case`CondBinary`:return`${hI(e.left)} ${e.operator} ${hI(e.right)}`;case`CondUnary`:return`${e.operator} ${hI(e.operand)}`;case`CondNot`:return`! ${UI(e.operand)}`;case`CondAnd`:return`${UI(e.left)} && ${UI(e.right)}`;case`CondOr`:return`${UI(e.left)} || ${UI(e.right)}`;case`CondGroup`:return`( ${UI(e.expression)} )`;case`CondWord`:return hI(e.word);default:throw Error(`Unsupported conditional expression type: ${e.type}`)}}var WI=class{fs;commands=new Map;useDefaultLayout=!1;limits;secureFetch;sleepFn;traceFn;logger;defenseInDepthConfig;coverageWriter;jsBootstrapCode;invokeToolFn;transformPlugins=[];state;constructor(e={}){let t=e.fs??new YA(e.files);this.fs=t,this.useDefaultLayout=!e.cwd&&!e.files;let n=e.cwd||(this.useDefaultLayout?`/home/user`:`/`),r=new Map([[`HOME`,this.useDefaultLayout?`/home/user`:`/`],[`PATH`,`/usr/bin:/bin`],[`IFS`,`
1573
+ `],[`OSTYPE`,`linux-gnu`],[`MACHTYPE`,`x86_64-pc-linux-gnu`],[`HOSTTYPE`,`x86_64`],[`HOSTNAME`,`localhost`],[`PWD`,n],[`OLDPWD`,n],[`OPTIND`,`1`],...Object.entries(e.env??{})]);if(this.limits=AF({...e.executionLimits,...e.maxCallDepth!==void 0&&{maxCallDepth:e.maxCallDepth},...e.maxCommandCount!==void 0&&{maxCommandCount:e.maxCommandCount},...e.maxLoopIterations!==void 0&&{maxLoopIterations:e.maxLoopIterations}}),e.fetch?this.secureFetch=e.fetch:e.network&&(this.secureFetch=aI(e.network)),this.sleepFn=e.sleep,this.traceFn=e.trace,this.logger=e.logger,this.defenseInDepthConfig=e.defenseInDepth??!0,this.coverageWriter=e.coverage,this.state={env:r,cwd:n,previousDir:`/home/user`,functions:new Map,localScopes:[],callDepth:0,sourceDepth:0,commandCount:0,lastExitCode:0,lastArg:``,startTime:Date.now(),lastBackgroundPid:0,virtualPid:e.processInfo?.pid??1,virtualPpid:e.processInfo?.ppid??0,virtualUid:e.processInfo?.uid??1e3,virtualGid:e.processInfo?.gid??1e3,bashPid:e.processInfo?.pid??1,nextVirtualPid:(e.processInfo?.pid??1)+1,currentLine:1,options:{errexit:!1,pipefail:!1,nounset:!1,xtrace:!1,verbose:!1,posix:!1,allexport:!1,noclobber:!1,noglob:!1,noexec:!1,vi:!1,emacs:!1},shoptOptions:{extglob:!1,dotglob:!1,nullglob:!1,failglob:!1,globstar:!1,globskipdots:!0,nocaseglob:!1,nocasematch:!1,expand_aliases:!1,lastpipe:!1,xpg_echo:!1},inCondition:!1,loopDepth:0,exportedVars:new Set([`HOME`,`PATH`,`PWD`,`OLDPWD`,...Object.keys(e.env||{})]),readonlyVars:new Set([`SHELLOPTS`,`BASHOPTS`]),hashTable:new Map},this.state.env.set(`SHELLOPTS`,rj(this.state.options)),this.state.env.set(`BASHOPTS`,oj(this.state.shoptOptions)),ej(t,this.useDefaultLayout,{pid:this.state.virtualPid,ppid:this.state.virtualPpid,uid:this.state.virtualUid,gid:this.state.virtualGid}),n!==`/`&&t instanceof YA)try{t.mkdirSync(n,{recursive:!0})}catch{}for(let t of PA(e.commands))this.registerCommand(t);if(e.fetch||e.network)for(let e of FA())this.registerCommand(e);if(e.python)for(let e of IA())this.registerCommand(e);let i=typeof e.javascript==`object`?e.javascript:Object.create(null);if(e.javascript||i.invokeTool){for(let e of LA())this.registerCommand(e);i.bootstrap&&(this.jsBootstrapCode=i.bootstrap),i.invokeTool&&(this.invokeToolFn=i.invokeTool)}if(e.customCommands)for(let t of e.customCommands)RA(t)?this.registerCommand(BA(t)):this.registerCommand({...t,trusted:t.trusted??!0})}registerCommand(e){this.commands.set(e.name,e);let t=this.fs;if(typeof t.writeFileSync==`function`){let n=`#!/bin/bash
1574
+ # Built-in command: ${e.name}
1575
+ `;try{t.writeFileSync(`/bin/${e.name}`,n)}catch{}try{t.writeFileSync(`/usr/bin/${e.name}`,n)}catch{}}}logResult(e){return this.logger&&(e.stdout&&this.logger.debug(`stdout`,{output:e.stdout}),e.stderr&&this.logger.info(`stderr`,{output:e.stderr}),this.logger.info(`exit`,{exitCode:e.exitCode})),e.stdout=qI(e.stdout),e.stderr=qI(e.stderr),e}async exec(e,t){if(this.state.callDepth===0&&(this.state.commandCount=0),this.state.commandCount++,this.state.commandCount>this.limits.maxCommandCount)return{stdout:``,stderr:`bash: maximum command count (${this.limits.maxCommandCount}) exceeded (possible infinite loop). Increase with executionLimits.maxCommandCount option.
1576
+ `,exitCode:1,env:ou(this.state.env,t?.env)};if(!e.trim())return{stdout:``,stderr:``,exitCode:0,env:ou(this.state.env,t?.env)};this.logger?.info(`exec`,{command:e});let n=t?.cwd??this.state.cwd,r,i=n;if(t?.cwd)if(t.env&&`PWD`in t.env)r=t.env.PWD;else if(t?.env&&!(`PWD`in t.env))try{r=await this.fs.realpath(n),i=r}catch{r=n}else r=n;let a=t?.replaceEnv?new Map:new Map(this.state.env);if(t?.env)for(let[e,n]of Object.entries(t.env))a.set(e,n);r!==void 0&&a.set(`PWD`,r);let o={...this.state,env:a,cwd:i,functions:new Map(this.state.functions),localScopes:[...this.state.localScopes],options:{...this.state.options},hashTable:this.state.hashTable,groupStdin:JI(t?.stdin,t?.stdinKind),signal:t?.signal,extraArgs:t?.args},s=e;t?.rawScript||(s=GI(e));let c=this.defenseInDepthConfig?Zn.getInstance(this.defenseInDepthConfig):null,l=c?.activate();try{let e=async()=>{let e=EE(s,{maxHeredocSize:this.limits.maxHeredocSize}),t;if(this.transformPlugins.length>0){let n=Object.create(null);for(let t of this.transformPlugins){let r=t.transform({ast:e,metadata:n});e=r.ast,r.metadata&&(n=su(n,r.metadata))}t=n}let n=await new OF({fs:this.fs,commands:this.commands,limits:this.limits,exec:this.exec.bind(this),fetch:this.secureFetch,sleep:this.sleepFn,trace:this.traceFn,coverage:this.coverageWriter,requireDefenseContext:c?.isEnabled()===!0,jsBootstrapCode:this.jsBootstrapCode,invokeTool:this.invokeToolFn},o).executeScript(e);return t&&(n.metadata=t),this.logResult(n)};return l?await l.run(e):await e()}catch(e){if(e instanceof Br||e instanceof qr)return this.logResult({stdout:e.stdout,stderr:e.stderr,exitCode:e.exitCode,env:ou(this.state.env,t?.env)});if(e instanceof Vr)return this.logResult({stdout:e.stdout,stderr:e.stderr,exitCode:1,env:ou(this.state.env,t?.env)});if(e instanceof Gr)return this.logResult({stdout:e.stdout,stderr:e.stderr,exitCode:124,env:ou(this.state.env,t?.env)});if(e instanceof k)return this.logResult({stdout:e.stdout,stderr:Bi(e.stderr),exitCode:k.EXIT_CODE,env:ou(this.state.env,t?.env)});if(e instanceof C)return this.logResult({stdout:``,stderr:`bash: security violation: ${Bi(e.message)}
1577
+ `,exitCode:1,env:ou(this.state.env,t?.env)});if(e.name===`ParseException`)return this.logResult({stdout:``,stderr:`bash: syntax error: ${Bi(e.message)}
1578
+ `,exitCode:2,env:ou(this.state.env,t?.env)});if(e instanceof Fw)return this.logResult({stdout:``,stderr:`bash: ${Bi(e.message)}
1579
+ `,exitCode:2,env:ou(this.state.env,t?.env)});if(e instanceof RangeError)return this.logResult({stdout:``,stderr:`bash: ${Bi(e.message)}
1580
+ `,exitCode:1,env:ou(this.state.env,t?.env)});throw e}finally{l?.deactivate()}}async readFile(e){return this.fs.readFile(this.fs.resolvePath(this.state.cwd,e))}async writeFile(e,t){return this.fs.writeFile(this.fs.resolvePath(this.state.cwd,e),t)}getCwd(){return this.state.cwd}getEnv(){return au(this.state.env)}registerTransformPlugin(e){this.transformPlugins.push(e)}transform(e){let t=EE(GI(e),{maxHeredocSize:this.limits.maxHeredocSize}),n=Object.create(null);for(let e of this.transformPlugins){let r=e.transform({ast:t,metadata:n});t=r.ast,r.metadata&&(n=su(n,r.metadata))}return{script:cI(t),ast:t,metadata:n}}};function GI(e){let t=e.split(`
1581
+ `),n=[],r=[];for(let e=0;e<t.length;e++){let i=t[e];if(r.length>0){let e=r[r.length-1];if((e.stripTabs?i.replace(/^\t+/,``):i)===e.delimiter){n.push(i.trimStart()),r.pop();continue}n.push(i);continue}let a=i.trimStart();n.push(a);for(let e of a.matchAll(/<<(-?)\s*(['"]?)([\w-]+)\2/g)){let t=e[1]===`-`,n=e[3];r.push({delimiter:n,stripTabs:t})}}return n.join(`
1582
+ `)}var KI=new TextDecoder(`utf-8`,{fatal:!0});function qI(e){if(!e)return e;let t=!1;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r>255)return e;r>127&&(t=!0)}if(!t)return e;let n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t);try{return KI.decode(n)}catch{return e}}function JI(e,t){if(e!==void 0)return t===`bytes`?e:dr(e)}w();var YI=class{baseFs;mounts=new Map;constructor(e){if(this.baseFs=e?.base??new YA,e?.mounts)for(let{mountPoint:t,filesystem:n}of e.mounts)this.mount(t,n)}mount(e,t){this.validateMountPath(e);let n=VA(e);this.validateMount(n),this.mounts.set(n,{mountPoint:n,filesystem:t})}unmount(e){let t=VA(e);if(!this.mounts.has(t))throw Error(`No filesystem mounted at '${e}'`);this.mounts.delete(t)}getMounts(){return Array.from(this.mounts.values()).map(e=>({mountPoint:e.mountPoint,filesystem:e.filesystem}))}isMountPoint(e){let t=VA(e);return this.mounts.has(t)}validateMountPath(e){let t=e.split(`/`);for(let n of t)if(n===`.`||n===`..`)throw Error(`Invalid mount point '${e}': contains '.' or '..' segments`)}validateMount(e){if(e===`/`)throw Error(`Cannot mount at root '/'`);for(let t of this.mounts.keys())if(t!==e){if(e.startsWith(`${t}/`))throw Error(`Cannot mount at '${e}': inside existing mount '${t}'`);if(t.startsWith(`${e}/`))throw Error(`Cannot mount at '${e}': would contain existing mount '${t}'`)}}routePath(e){HA(e,`access`);let t=VA(e),n=null,r=0;for(let e of this.mounts.values()){let i=e.mountPoint;if(t===i)return{fs:e.filesystem,relativePath:`/`};t.startsWith(`${i}/`)&&i.length>r&&(n=e,r=i.length)}if(n){let e=t.slice(r);return{fs:n.filesystem,relativePath:e||`/`}}return{fs:this.baseFs,relativePath:t}}getChildMountPoints(e){let t=VA(e),n=t===`/`?`/`:`${t}/`,r=[];for(let e of this.mounts.keys())if(e.startsWith(n)){let t=e.slice(n.length).split(`/`)[0];t&&!r.includes(t)&&r.push(t)}return r}async readFile(e,t){let{fs:n,relativePath:r}=this.routePath(e);return n.readFile(r,t)}async readFileBytes(e){let{fs:t,relativePath:n}=this.routePath(e);return pr(t,n)}async readFileBuffer(e){let{fs:t,relativePath:n}=this.routePath(e);return t.readFileBuffer(n)}async writeFile(e,t,n){let{fs:r,relativePath:i}=this.routePath(e);return r.writeFile(i,t,n)}async appendFile(e,t,n){let{fs:r,relativePath:i}=this.routePath(e);return r.appendFile(i,t,n)}async exists(e){let t=VA(e);if(this.mounts.has(t)||this.getChildMountPoints(t).length>0)return!0;let{fs:n,relativePath:r}=this.routePath(e);return n.exists(r)}async stat(e){let t=VA(e),n=this.mounts.get(t);if(n)try{return await n.filesystem.stat(`/`)}catch{return{isFile:!1,isDirectory:!0,isSymbolicLink:!1,mode:493,size:0,mtime:new Date}}if(this.getChildMountPoints(t).length>0)try{return await this.baseFs.stat(t)}catch{return{isFile:!1,isDirectory:!0,isSymbolicLink:!1,mode:493,size:0,mtime:new Date}}let{fs:r,relativePath:i}=this.routePath(e);return r.stat(i)}async lstat(e){let t=VA(e),n=this.mounts.get(t);if(n)try{return await n.filesystem.lstat(`/`)}catch{return{isFile:!1,isDirectory:!0,isSymbolicLink:!1,mode:493,size:0,mtime:new Date}}if(this.getChildMountPoints(t).length>0)try{return await this.baseFs.lstat(t)}catch{return{isFile:!1,isDirectory:!0,isSymbolicLink:!1,mode:493,size:0,mtime:new Date}}let{fs:r,relativePath:i}=this.routePath(e);return r.lstat(i)}async mkdir(e,t){let n=VA(e);if(this.mounts.has(n)){if(t?.recursive)return;throw Error(`EEXIST: directory already exists, mkdir '${e}'`)}if(this.getChildMountPoints(n).length>0&&t?.recursive)return;let{fs:r,relativePath:i}=this.routePath(e);return r.mkdir(i,t)}async readdir(e){let t=VA(e),n=new Set,r=null,{fs:i,relativePath:a}=this.routePath(e);try{let e=await i.readdir(a);for(let t of e)n.add(t)}catch(e){let t=e.code,n=e.message||``;if(t!==`ENOENT`&&!n.includes(`ENOENT`))throw e;r=e}let o=this.getChildMountPoints(t);for(let e of o)n.add(e);if(n.size===0&&r&&!this.mounts.has(t))throw r;return Array.from(n).sort()}async rm(e,t){let n=VA(e);if(this.mounts.has(n))throw Error(`EBUSY: mount point, cannot remove '${e}'`);if(this.getChildMountPoints(n).length>0)throw Error(`EBUSY: contains mount points, cannot remove '${e}'`);let{fs:r,relativePath:i}=this.routePath(e);return r.rm(i,t)}async cp(e,t,n){let r=this.routePath(e),i=this.routePath(t);return r.fs===i.fs?r.fs.cp(r.relativePath,i.relativePath,n):this.crossMountCopy(e,t,n)}async mv(e,t){let n=VA(e);if(this.mounts.has(n))throw Error(`EBUSY: mount point, cannot move '${e}'`);let r=this.routePath(e),i=this.routePath(t);if(r.fs===i.fs)return r.fs.mv(r.relativePath,i.relativePath);await this.cp(e,t,{recursive:!0}),await this.rm(e,{recursive:!0})}resolvePath(e,t){return WA(e,t)}getAllPaths(){let e=new Set;for(let t of this.baseFs.getAllPaths())e.add(t);for(let t of this.mounts.keys()){let n=t.split(`/`).filter(Boolean),r=``;for(let t of n)r=`${r}/${t}`,e.add(r);let i=this.mounts.get(t);if(i)for(let n of i.filesystem.getAllPaths())n===`/`?e.add(t):e.add(`${t}${n}`)}return Array.from(e).sort()}async chmod(e,t){let n=VA(e),r=this.mounts.get(n);if(r)return r.filesystem.chmod(`/`,t);let{fs:i,relativePath:a}=this.routePath(e);return i.chmod(a,t)}async symlink(e,t){let{fs:n,relativePath:r}=this.routePath(t);return n.symlink(e,r)}async link(e,t){let n=this.routePath(e),r=this.routePath(t);if(n.fs!==r.fs)throw Error(`EXDEV: cross-device link not permitted, link '${e}' -> '${t}'`);return n.fs.link(n.relativePath,r.relativePath)}async readlink(e){let{fs:t,relativePath:n}=this.routePath(e);return t.readlink(n)}async realpath(e){let t=VA(e);if(this.mounts.get(t))return t;let{fs:n,relativePath:r}=this.routePath(e),i=await n.realpath(r);for(let[e,n]of this.mounts)if(t===e||t.startsWith(`${e}/`))return i===`/`?e:`${e}${i}`;return i}async crossMountCopy(e,t,n){let r=await this.lstat(e);if(r.isFile){let n=await this.readFileBuffer(e);await this.writeFile(t,n),await this.chmod(t,r.mode)}else if(r.isDirectory){if(!n?.recursive)throw Error(`cp: ${e} is a directory (not copied)`);await this.mkdir(t,{recursive:!0});let r=await this.readdir(e);for(let i of r){let r=GA(e,i),a=GA(t,i);await this.crossMountCopy(r,a,n)}}else if(r.isSymbolicLink){let n=await this.readlink(e);await this.symlink(n,t)}}async utimes(e,t,n){let{fs:r,relativePath:i}=this.routePath(e);return r.utimes(i,t,n)}},XI=e({createCostCommand:()=>aL,registerSessionCostsProvider:()=>QI})
1583
+ /*! Bundled license information:
1584
+
1585
+ re2js/build/index.esm.js:
1586
+ (*!
1587
+ * re2js
1588
+ * RE2JS is the JavaScript port of RE2, a regular expression engine that provides linear time matching
1589
+ *
1590
+ * @version v1.4.0
1591
+ * @author Alexey Vasiliev
1592
+ * @homepage https://github.com/le0pard/re2js#readme
1593
+ * @repository github:le0pard/re2js
1594
+ * @license MIT
1595
+ *)
1596
+
1597
+ ieee754/index.js:
1598
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
1599
+ */
1600
+ ;let ZI=null;function QI(e){ZI=e}function $I(){return`cost - show session cost breakdown
1601
+
1602
+ Usage: cost [options]
1603
+
1604
+ Options:
1605
+ --json Output as JSON (for programmatic use)
1606
+ -h, --help Show this help message
1607
+ `}function eL(e){let t=e/1e6;return t<.01?`<0.01`:t.toFixed(2)}function tL(e){return`$${e.toFixed(2)}`}function nL(e,t){if(!t||t===0)return`-`;let n=t/(1e3*60*60);return n===0?`-`:`$${(e/n).toFixed(2)}`}function rL(e,t){return e.length<=t?e:e.slice(0,t-3)+`...`}function iL(e){let t=[];t.push(`Session Cost Breakdown:
1608
+ `);let n=` `+`Agent`.padEnd(16)+`Model`.padEnd(18)+`MTok (in/out)`.padEnd(15)+`Cache (r/w)`.padEnd(15)+`Cost`.padStart(10)+`$/hour`.padStart(10),r=` `+`─`.repeat(84);t.push(n),t.push(r);let i=0,a=0,o=0,s=0,c=0;for(let n of e){let e=n.name.padEnd(16),r=rL(n.model,18).padEnd(18),l=`${eL(n.usage.input).padStart(5)} / ${eL(n.usage.output).padStart(5)}`.padEnd(15),u=`${eL(n.usage.cacheRead).padStart(5)} / ${eL(n.usage.cacheWrite).padStart(5)}`.padEnd(15),d=tL(n.usage.cost.total).padStart(10),f=nL(n.usage.cost.total,n.activeTimeMs).padStart(10);t.push(` ${e}${r}${l}${u}${d}${f}`),i+=n.usage.input,a+=n.usage.output,o+=n.usage.cacheRead,s+=n.usage.cacheWrite,c+=n.usage.cost.total}t.push(r);let l=`Total`.padEnd(16),u=``.padEnd(18),d=`${eL(i).padStart(5)} / ${eL(a).padStart(5)}`.padEnd(15),f=`${eL(o).padStart(5)} / ${eL(s).padStart(5)}`.padEnd(15),p=tL(c).padStart(10),m=``.padStart(10);return t.push(` ${l}${u}${d}${f}${p}${m}`),t.join(`
1609
+ `)+`
1610
+ `}function aL(){return zA(`cost`,async e=>{if(e.includes(`--help`)||e.includes(`-h`))return{stdout:$I(),stderr:``,exitCode:0};if(!ZI)return{stdout:``,stderr:`Cost data not available.
1611
+ `,exitCode:1};let t=await ZI();return t.length===0?{stdout:`No session cost data yet.
1612
+ `,stderr:``,exitCode:0}:e.includes(`--json`)?{stdout:JSON.stringify(t,null,2)+`
1613
+ `,stderr:``,exitCode:0}:{stdout:iL(t),stderr:``,exitCode:0}})}export{NA as a,kn as c,zA as i,aL as n,WI as o,QI as r,MA as s,XI as t};