@tencent-ai/agent-harness 0.2.0-beta.7 → 0.2.0-beta.8

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 (859) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/cli/CHANGELOG.md +74 -0
  3. package/cli/dist-server/lite/in-memory-session-store.js +1 -1
  4. package/cli/dist-server/shared.cjs +263 -217
  5. package/cli/dist-server/types/node/a2a/a2a-protocol.d.ts +516 -0
  6. package/cli/dist-server/types/node/agent/agent-completion-waiter.d.ts +28 -0
  7. package/cli/dist-server/types/node/agent/agent-controller.d.ts +147 -0
  8. package/cli/dist-server/types/node/agent/agent-display.d.ts +77 -0
  9. package/cli/dist-server/types/node/agent/agent-manager.d.ts +964 -0
  10. package/cli/dist-server/types/node/agent/agent-memory.d.ts +72 -0
  11. package/cli/dist-server/types/node/agent/agent-runtime-adapter.d.ts +71 -0
  12. package/cli/dist-server/types/node/agent/builtin-agent-modes.d.ts +47 -0
  13. package/cli/dist-server/types/node/agent/custom-agent-identity.d.ts +54 -0
  14. package/cli/dist-server/types/node/agent/custom-agent-manager.d.ts +43 -0
  15. package/cli/dist-server/types/node/agent/custom-agent-path-registry.d.ts +19 -0
  16. package/cli/dist-server/types/node/agent/exit-planmode-visibility.d.ts +64 -0
  17. package/cli/dist-server/types/node/agent/index.d.ts +22 -0
  18. package/cli/dist-server/types/node/agent/insights-data-agent-run-interceptor.d.ts +67 -0
  19. package/cli/dist-server/types/node/agent/interceptors/command-interceptors.d.ts +89 -0
  20. package/cli/dist-server/types/node/agent/interceptors/deep-research-pending-interceptor.d.ts +30 -0
  21. package/cli/dist-server/types/node/agent/interceptors/env-interceptor.d.ts +7 -0
  22. package/cli/dist-server/types/node/agent/interceptors/file-interceptors.d.ts +45 -0
  23. package/cli/dist-server/types/node/agent/interceptors/image-interceptors.d.ts +47 -0
  24. package/cli/dist-server/types/node/agent/interceptors/index.d.ts +16 -0
  25. package/cli/dist-server/types/node/agent/interceptors/initial-prompt-interceptor.d.ts +29 -0
  26. package/cli/dist-server/types/node/agent/interceptors/manual-compact-request-handler.d.ts +29 -0
  27. package/cli/dist-server/types/node/agent/interceptors/model-interceptors.d.ts +43 -0
  28. package/cli/dist-server/types/node/agent/interceptors/sandbox-interceptor.d.ts +84 -0
  29. package/cli/dist-server/types/node/agent/interceptors/sensitive-user-input-interceptor.d.ts +7 -0
  30. package/cli/dist-server/types/node/agent/interceptors/system-reminder-interceptor.d.ts +101 -0
  31. package/cli/dist-server/types/node/agent/interceptors/team-resume-intent-interceptor.d.ts +31 -0
  32. package/cli/dist-server/types/node/agent/interceptors/telemetry-interceptors.d.ts +43 -0
  33. package/cli/dist-server/types/node/agent/interceptors/ultracode-effort-reminder-interceptor.d.ts +21 -0
  34. package/cli/dist-server/types/node/agent/interceptors/ultracode-keyword-interceptor.d.ts +34 -0
  35. package/cli/dist-server/types/node/agent/main-agent-policy.d.ts +33 -0
  36. package/cli/dist-server/types/node/agent/main-agent-preset.d.ts +32 -0
  37. package/cli/dist-server/types/node/agent/main-agent-resolver.d.ts +156 -0
  38. package/cli/dist-server/types/node/agent/main-agent-session.d.ts +212 -0
  39. package/cli/dist-server/types/node/agent/memory-context-interceptor.d.ts +84 -0
  40. package/cli/dist-server/types/node/agent/standing-main-agent.d.ts +12 -0
  41. package/cli/dist-server/types/node/agent/stream-json-init-interceptor.d.ts +9 -0
  42. package/cli/dist-server/types/node/agent/subagent-limits.d.ts +90 -0
  43. package/cli/dist-server/types/node/agent/team-context-interceptor.d.ts +42 -0
  44. package/cli/dist-server/types/node/agent/teammate-failure-interceptor.d.ts +67 -0
  45. package/cli/dist-server/types/node/agent-home/agent-home-attachments.d.ts +83 -0
  46. package/cli/dist-server/types/node/agent-home/agent-home-channel-system-event.d.ts +15 -0
  47. package/cli/dist-server/types/node/agent-home/agent-home-channel-task-event.d.ts +24 -0
  48. package/cli/dist-server/types/node/agent-home/agent-home-channel-wake.d.ts +115 -0
  49. package/cli/dist-server/types/node/agent-home/agent-home-channel-widget.d.ts +45 -0
  50. package/cli/dist-server/types/node/agent-home/agent-home-directory.d.ts +304 -0
  51. package/cli/dist-server/types/node/agent-home/agent-home-limits.d.ts +73 -0
  52. package/cli/dist-server/types/node/agent-home/agent-home-membership.d.ts +34 -0
  53. package/cli/dist-server/types/node/agent-home/agent-home-mentions.d.ts +39 -0
  54. package/cli/dist-server/types/node/agent-home/agent-home-room-contacts.d.ts +51 -0
  55. package/cli/dist-server/types/node/agent-home/channel-wake-service.d.ts +69 -0
  56. package/cli/dist-server/types/node/agent-task/agent-task-manager.d.ts +242 -0
  57. package/cli/dist-server/types/node/agent-task/agent-task-output-manager.d.ts +55 -0
  58. package/cli/dist-server/types/node/agent-task/agent-task-protocol.d.ts +687 -0
  59. package/cli/dist-server/types/node/agent-task/agent-task.d.ts +405 -0
  60. package/cli/dist-server/types/node/agent-task/background-task-notifier.d.ts +212 -0
  61. package/cli/dist-server/types/node/agent-task/background-task-tool-approval-service.d.ts +36 -0
  62. package/cli/dist-server/types/node/agent-task/index.d.ts +9 -0
  63. package/cli/dist-server/types/node/agent-task/retained-agent-task.d.ts +11 -0
  64. package/cli/dist-server/types/node/agent-task/stream-json-drain-trigger.d.ts +23 -0
  65. package/cli/dist-server/types/node/agent-task/subagent-output-scanner.d.ts +53 -0
  66. package/cli/dist-server/types/node/agent-team/backends/teammate-backend-protocol.d.ts +119 -0
  67. package/cli/dist-server/types/node/agent-team/team-member.d.ts +391 -0
  68. package/cli/dist-server/types/node/agent-team/team-protocol.d.ts +375 -0
  69. package/cli/dist-server/types/node/agent-view/agent-view-actions.d.ts +209 -0
  70. package/cli/dist-server/types/node/agent-view/agent-view-protocol.d.ts +714 -0
  71. package/cli/dist-server/types/node/agent-view/handoff-policy.d.ts +80 -0
  72. package/cli/dist-server/types/node/agent-view/launch-workspace.d.ts +9 -0
  73. package/cli/dist-server/types/node/agent-view/session-handoff.d.ts +161 -0
  74. package/cli/dist-server/types/node/ask/ask-protoctol.d.ts +102 -0
  75. package/cli/dist-server/types/node/ask/ask-service.d.ts +62 -0
  76. package/cli/dist-server/types/node/ask/index.d.ts +3 -0
  77. package/cli/dist-server/types/node/ask/session-ask-user-question-handler.d.ts +25 -0
  78. package/cli/dist-server/types/node/authentication/api-key-authentication-storage.d.ts +17 -0
  79. package/cli/dist-server/types/node/authentication/custom-token-authentication-storage.d.ts +10 -0
  80. package/cli/dist-server/types/node/authentication/file-authentication-storage.d.ts +71 -0
  81. package/cli/dist-server/types/node/bash-sandbox/bash-sandbox-manager.d.ts +125 -0
  82. package/cli/dist-server/types/node/bash-sandbox/index.d.ts +4 -0
  83. package/cli/dist-server/types/node/bash-sandbox/legacy-sandbox-shell-protocol.d.ts +33 -0
  84. package/cli/dist-server/types/node/bash-sandbox/legacy-sandbox-shell-service.d.ts +33 -0
  85. package/cli/dist-server/types/node/blob-store/blob-store-protocol.d.ts +104 -0
  86. package/cli/dist-server/types/node/blob-store/blob-store-service.d.ts +22 -0
  87. package/cli/dist-server/types/node/blob-store/image-blob-service.d.ts +121 -0
  88. package/cli/dist-server/types/node/blob-store/index.d.ts +4 -0
  89. package/cli/dist-server/types/node/blob-store/tool-result-blob-service.d.ts +109 -0
  90. package/cli/dist-server/types/node/channel/channel-event-service.d.ts +18 -0
  91. package/cli/dist-server/types/node/channel/channel-manager.d.ts +41 -0
  92. package/cli/dist-server/types/node/channel/channel-permission-adapter.d.ts +27 -0
  93. package/cli/dist-server/types/node/channel/channel-protocol.d.ts +192 -0
  94. package/cli/dist-server/types/node/channel/channel-security-manager.d.ts +12 -0
  95. package/cli/dist-server/types/node/channel/index.d.ts +5 -0
  96. package/cli/dist-server/types/node/cli/tui-mode-service.d.ts +20 -0
  97. package/cli/dist-server/types/node/code-ratio/cli-git-commit-watcher.d.ts +142 -0
  98. package/cli/dist-server/types/node/code-ratio/cli-svn-commit-watcher.d.ts +111 -0
  99. package/cli/dist-server/types/node/code-ratio/code-ratio-reporting-service.d.ts +90 -0
  100. package/cli/dist-server/types/node/code-ratio/fs-file-reader.d.ts +26 -0
  101. package/cli/dist-server/types/node/code-ratio/index.d.ts +5 -0
  102. package/cli/dist-server/types/node/code-ratio/vcs-repo-resolver.d.ts +51 -0
  103. package/cli/dist-server/types/node/command/add-dir-command-executor.d.ts +11 -0
  104. package/cli/dist-server/types/node/command/agent-mode-command-executor.d.ts +11 -0
  105. package/cli/dist-server/types/node/command/agents-command-executor.d.ts +9 -0
  106. package/cli/dist-server/types/node/command/auto-compact-command-executor.d.ts +20 -0
  107. package/cli/dist-server/types/node/command/background-command-executor.d.ts +29 -0
  108. package/cli/dist-server/types/node/command/bash-command-executor.d.ts +62 -0
  109. package/cli/dist-server/types/node/command/btw-command-executor.d.ts +13 -0
  110. package/cli/dist-server/types/node/command/clear-command-executor.d.ts +17 -0
  111. package/cli/dist-server/types/node/command/command-manager.d.ts +54 -0
  112. package/cli/dist-server/types/node/command/command-protocol.d.ts +106 -0
  113. package/cli/dist-server/types/node/command/config-command-executor.d.ts +15 -0
  114. package/cli/dist-server/types/node/command/context-command-executor.d.ts +42 -0
  115. package/cli/dist-server/types/node/command/copy-command-executor.d.ts +10 -0
  116. package/cli/dist-server/types/node/command/cost-command-executor.d.ts +13 -0
  117. package/cli/dist-server/types/node/command/custom-command-renderer.d.ts +29 -0
  118. package/cli/dist-server/types/node/command/debug-command-executor.d.ts +15 -0
  119. package/cli/dist-server/types/node/command/deep-research-command-executor.d.ts +27 -0
  120. package/cli/dist-server/types/node/command/doctor-command-executor.d.ts +7 -0
  121. package/cli/dist-server/types/node/command/effort-command-executor.d.ts +68 -0
  122. package/cli/dist-server/types/node/command/exit-command-executor.d.ts +14 -0
  123. package/cli/dist-server/types/node/command/export-command-executor.d.ts +7 -0
  124. package/cli/dist-server/types/node/command/feedback-command-executor.d.ts +9 -0
  125. package/cli/dist-server/types/node/command/fork-bg-command-executor.d.ts +29 -0
  126. package/cli/dist-server/types/node/command/fork-command-executor.d.ts +28 -0
  127. package/cli/dist-server/types/node/command/goal-command-executor.d.ts +50 -0
  128. package/cli/dist-server/types/node/command/handoff-message-adapter.d.ts +9 -0
  129. package/cli/dist-server/types/node/command/help-command-executor.d.ts +9 -0
  130. package/cli/dist-server/types/node/command/hooks-command-executor.d.ts +9 -0
  131. package/cli/dist-server/types/node/command/ide-command-executor.d.ts +11 -0
  132. package/cli/dist-server/types/node/command/index.d.ts +66 -0
  133. package/cli/dist-server/types/node/command/local-shell.d.ts +31 -0
  134. package/cli/dist-server/types/node/command/mcp-command-executor.d.ts +15 -0
  135. package/cli/dist-server/types/node/command/mcp-prompt-renderer.d.ts +44 -0
  136. package/cli/dist-server/types/node/command/memory-command-executor.d.ts +17 -0
  137. package/cli/dist-server/types/node/command/model-command-executor.d.ts +11 -0
  138. package/cli/dist-server/types/node/command/model-image-to-image-command-executor.d.ts +17 -0
  139. package/cli/dist-server/types/node/command/model-image-to-video-command-executor.d.ts +17 -0
  140. package/cli/dist-server/types/node/command/model-lite-command-executor.d.ts +17 -0
  141. package/cli/dist-server/types/node/command/model-reasoning-command-executor.d.ts +17 -0
  142. package/cli/dist-server/types/node/command/model-text-to-image-command-executor.d.ts +17 -0
  143. package/cli/dist-server/types/node/command/model-text-to-video-command-executor.d.ts +17 -0
  144. package/cli/dist-server/types/node/command/multitask-command-executor.d.ts +9 -0
  145. package/cli/dist-server/types/node/command/permissions-command-executor.d.ts +9 -0
  146. package/cli/dist-server/types/node/command/plan-command-executor.d.ts +11 -0
  147. package/cli/dist-server/types/node/command/plugin-command-executor.d.ts +25 -0
  148. package/cli/dist-server/types/node/command/plugin-validate-command-executor.d.ts +21 -0
  149. package/cli/dist-server/types/node/command/release-notes-command-executor.d.ts +18 -0
  150. package/cli/dist-server/types/node/command/reload-plugins-command-executor.d.ts +22 -0
  151. package/cli/dist-server/types/node/command/remote-control-command-executor.d.ts +44 -0
  152. package/cli/dist-server/types/node/command/rename-command-executor.d.ts +11 -0
  153. package/cli/dist-server/types/node/command/reset-command-executor.d.ts +9 -0
  154. package/cli/dist-server/types/node/command/resume-command-executor.d.ts +21 -0
  155. package/cli/dist-server/types/node/command/rewind-command-executor.d.ts +10 -0
  156. package/cli/dist-server/types/node/command/sandbox-command-executor.d.ts +20 -0
  157. package/cli/dist-server/types/node/command/save-workflow-command-executor.d.ts +43 -0
  158. package/cli/dist-server/types/node/command/skills-command-executor.d.ts +9 -0
  159. package/cli/dist-server/types/node/command/stats-command-executor.d.ts +11 -0
  160. package/cli/dist-server/types/node/command/status-command-executor.d.ts +11 -0
  161. package/cli/dist-server/types/node/command/tasks-command-executor.d.ts +9 -0
  162. package/cli/dist-server/types/node/command/terminal-setup-command-executor.d.ts +7 -0
  163. package/cli/dist-server/types/node/command/theme-command-executor.d.ts +7 -0
  164. package/cli/dist-server/types/node/command/todos-command-executor.d.ts +16 -0
  165. package/cli/dist-server/types/node/command/upgrade-command-executor.d.ts +13 -0
  166. package/cli/dist-server/types/node/command/vim-command-executor.d.ts +11 -0
  167. package/cli/dist-server/types/node/command/web-command-executor.d.ts +18 -0
  168. package/cli/dist-server/types/node/command/workflows-command-executor.d.ts +26 -0
  169. package/cli/dist-server/types/node/command-parser/command-parser-protocol.d.ts +81 -0
  170. package/cli/dist-server/types/node/console/console-manager.d.ts +37 -0
  171. package/cli/dist-server/types/node/console/console-protocol.d.ts +112 -0
  172. package/cli/dist-server/types/node/console/index.d.ts +2 -0
  173. package/cli/dist-server/types/node/context/deferred-tools-description-builder.d.ts +145 -0
  174. package/cli/dist-server/types/node/context/token-calculator/token-calculator-protocol.d.ts +27 -0
  175. package/cli/dist-server/types/node/debug/debug-middleware.d.ts +8 -0
  176. package/cli/dist-server/types/node/debug/debug-protocol.d.ts +63 -0
  177. package/cli/dist-server/types/node/debug/debug-service.d.ts +26 -0
  178. package/cli/dist-server/types/node/debug/index.d.ts +3 -0
  179. package/cli/dist-server/types/node/elicitation/elicitation-service.d.ts +100 -0
  180. package/cli/dist-server/types/node/feedback/feedback-protocol.d.ts +32 -0
  181. package/cli/dist-server/types/node/feedback/feedback-service.d.ts +19 -0
  182. package/cli/dist-server/types/node/feedback/index.d.ts +2 -0
  183. package/cli/dist-server/types/node/galileo/agent-metrics-aggregator.d.ts +115 -0
  184. package/cli/dist-server/types/node/galileo/error-category.d.ts +65 -0
  185. package/cli/dist-server/types/node/galileo/galileo-chat-reporter.d.ts +302 -0
  186. package/cli/dist-server/types/node/galileo/galileo-protocol.d.ts +78 -0
  187. package/cli/dist-server/types/node/galileo/galileo-service.d.ts +171 -0
  188. package/cli/dist-server/types/node/galileo/galileo-session-bridge-protocol.d.ts +134 -0
  189. package/cli/dist-server/types/node/galileo/galileo-session-bridge.d.ts +105 -0
  190. package/cli/dist-server/types/node/galileo/galileo-timing-hook.d.ts +115 -0
  191. package/cli/dist-server/types/node/galileo/galileo-tool-error-report-hook.d.ts +32 -0
  192. package/cli/dist-server/types/node/galileo/galileo-tool-post-hook.d.ts +18 -0
  193. package/cli/dist-server/types/node/galileo/galileo-tool-pre-hook.d.ts +16 -0
  194. package/cli/dist-server/types/node/galileo/galileo-tool-start-report-hook.d.ts +14 -0
  195. package/cli/dist-server/types/node/galileo/galileo-tool-success-report-hook.d.ts +14 -0
  196. package/cli/dist-server/types/node/galileo/index.d.ts +15 -0
  197. package/cli/dist-server/types/node/galileo/session-error-tracker.d.ts +44 -0
  198. package/cli/dist-server/types/node/galileo/task-outcome-resolver.d.ts +28 -0
  199. package/cli/dist-server/types/node/galileo/task-outcome.d.ts +35 -0
  200. package/cli/dist-server/types/node/hooks/functional-hooks-protocol.d.ts +78 -0
  201. package/cli/dist-server/types/node/hooks/functional-hooks.d.ts +23 -0
  202. package/cli/dist-server/types/node/http/certificate-manager.d.ts +50 -0
  203. package/cli/dist-server/types/node/http/classify-network-error.d.ts +21 -0
  204. package/cli/dist-server/types/node/http/custom-header-http-interceptor.d.ts +14 -0
  205. package/cli/dist-server/types/node/http/custom-headers-provider.d.ts +26 -0
  206. package/cli/dist-server/types/node/http/fetch-proxy.d.ts +22 -0
  207. package/cli/dist-server/types/node/http/http-proxy-interceptor.d.ts +116 -0
  208. package/cli/dist-server/types/node/http/index.d.ts +6 -0
  209. package/cli/dist-server/types/node/ide-integration/ide-edit-manager.d.ts +53 -0
  210. package/cli/dist-server/types/node/ide-integration/ide-protocol.d.ts +450 -0
  211. package/cli/dist-server/types/node/install/index.d.ts +6 -0
  212. package/cli/dist-server/types/node/install/install-controller.d.ts +15 -0
  213. package/cli/dist-server/types/node/install/install-env.d.ts +12 -0
  214. package/cli/dist-server/types/node/install/install-protocol.d.ts +83 -0
  215. package/cli/dist-server/types/node/install/install-service.d.ts +36 -0
  216. package/cli/dist-server/types/node/install/releases-service.d.ts +29 -0
  217. package/cli/dist-server/types/node/install/shell-setup.d.ts +36 -0
  218. package/cli/dist-server/types/node/library-runtime.d.ts +9 -0
  219. package/cli/dist-server/types/node/loopback/endpoint-provider.d.ts +9 -0
  220. package/cli/dist-server/types/node/loopback/error-provider.d.ts +9 -0
  221. package/cli/dist-server/types/node/loopback/index.d.ts +4 -0
  222. package/cli/dist-server/types/node/loopback/loopback-body-limit.d.ts +52 -0
  223. package/cli/dist-server/types/node/lsp/index.d.ts +6 -0
  224. package/cli/dist-server/types/node/lsp/lsp-client.d.ts +104 -0
  225. package/cli/dist-server/types/node/lsp/lsp-manager.d.ts +90 -0
  226. package/cli/dist-server/types/node/lsp/lsp-protocol.d.ts +245 -0
  227. package/cli/dist-server/types/node/mcp/agent-scoped-mcp-manager.d.ts +38 -0
  228. package/cli/dist-server/types/node/mcp/index.d.ts +32 -0
  229. package/cli/dist-server/types/node/mcp/mcp-cli-config-initializer.d.ts +18 -0
  230. package/cli/dist-server/types/node/mcp/mcp-config-diagnostics-manager.d.ts +29 -0
  231. package/cli/dist-server/types/node/mcp/mcp-config-env-expand-service.d.ts +45 -0
  232. package/cli/dist-server/types/node/mcp/mcp-config-fingerprint.d.ts +28 -0
  233. package/cli/dist-server/types/node/mcp/mcp-config-manager.d.ts +110 -0
  234. package/cli/dist-server/types/node/mcp/mcp-config-store.d.ts +18 -0
  235. package/cli/dist-server/types/node/mcp/mcp-connection-manager.d.ts +35 -0
  236. package/cli/dist-server/types/node/mcp/mcp-controller.d.ts +56 -0
  237. package/cli/dist-server/types/node/mcp/mcp-descriptor-environment.d.ts +5 -0
  238. package/cli/dist-server/types/node/mcp/mcp-first-run-status-service.d.ts +37 -0
  239. package/cli/dist-server/types/node/mcp/mcp-log-service.d.ts +5 -0
  240. package/cli/dist-server/types/node/mcp/mcp-manager.d.ts +339 -0
  241. package/cli/dist-server/types/node/mcp/mcp-oauth-controller.d.ts +26 -0
  242. package/cli/dist-server/types/node/mcp/mcp-oauth-manager.d.ts +33 -0
  243. package/cli/dist-server/types/node/mcp/mcp-oauth-store.d.ts +30 -0
  244. package/cli/dist-server/types/node/mcp/mcp-permissions-manager.d.ts +52 -0
  245. package/cli/dist-server/types/node/mcp/mcp-plugin-registry.d.ts +39 -0
  246. package/cli/dist-server/types/node/mcp/mcp-ready-service.d.ts +94 -0
  247. package/cli/dist-server/types/node/mcp/mcp-resource-catalog-protocol.d.ts +62 -0
  248. package/cli/dist-server/types/node/mcp/mcp-resource-catalog.d.ts +32 -0
  249. package/cli/dist-server/types/node/mcp/mcp-server-manager.d.ts +283 -0
  250. package/cli/dist-server/types/node/mcp/mcp-server-model-manager.d.ts +14 -0
  251. package/cli/dist-server/types/node/mcp/mcp-subagent-tool-manager.d.ts +36 -0
  252. package/cli/dist-server/types/node/mcp/mcp-toggle-manager.d.ts +45 -0
  253. package/cli/dist-server/types/node/mcp/mcp-transport-manager.d.ts +34 -0
  254. package/cli/dist-server/types/node/mcp/mcp-validate-middleware.d.ts +25 -0
  255. package/cli/dist-server/types/node/mcp/node-websocket-transport.d.ts +38 -0
  256. package/cli/dist-server/types/node/mcp/official-mcp-egress-policy.d.ts +17 -0
  257. package/cli/dist-server/types/node/mcp/sdk-mcp-server.d.ts +149 -0
  258. package/cli/dist-server/types/node/mcp/sdk-mcp-transport.d.ts +97 -0
  259. package/cli/dist-server/types/node/memory/conditional-rules-service.d.ts +21 -0
  260. package/cli/dist-server/types/node/memory/glob-matcher.d.ts +16 -0
  261. package/cli/dist-server/types/node/memory/index.d.ts +20 -0
  262. package/cli/dist-server/types/node/memory/memory-age.d.ts +44 -0
  263. package/cli/dist-server/types/node/memory/memory-cache.d.ts +8 -0
  264. package/cli/dist-server/types/node/memory/memory-controller.d.ts +62 -0
  265. package/cli/dist-server/types/node/memory/memory-extraction-prompts.d.ts +11 -0
  266. package/cli/dist-server/types/node/memory/memory-extraction-service.d.ts +56 -0
  267. package/cli/dist-server/types/node/memory/memory-extraction-stop-hook.d.ts +18 -0
  268. package/cli/dist-server/types/node/memory/memory-freshness-post-tool-hook.d.ts +22 -0
  269. package/cli/dist-server/types/node/memory/memory-loader.d.ts +62 -0
  270. package/cli/dist-server/types/node/memory/memory-manager.d.ts +24 -0
  271. package/cli/dist-server/types/node/memory/memory-parser.d.ts +15 -0
  272. package/cli/dist-server/types/node/memory/memory-prompt-builder.d.ts +38 -0
  273. package/cli/dist-server/types/node/memory/memory-protocol.d.ts +235 -0
  274. package/cli/dist-server/types/node/memory/memory-relevance-protocol.d.ts +33 -0
  275. package/cli/dist-server/types/node/memory/memory-relevance-service.d.ts +30 -0
  276. package/cli/dist-server/types/node/memory/memory-scan.d.ts +35 -0
  277. package/cli/dist-server/types/node/memory/memory-types.d.ts +49 -0
  278. package/cli/dist-server/types/node/memory/memory-validator.d.ts +6 -0
  279. package/cli/dist-server/types/node/memory/subdirectory-memory-loader.d.ts +55 -0
  280. package/cli/dist-server/types/node/model/model-protocol.d.ts +22 -0
  281. package/cli/dist-server/types/node/multitask/session-flags.d.ts +110 -0
  282. package/cli/dist-server/types/node/multitask/types.d.ts +123 -0
  283. package/cli/dist-server/types/node/navigation/index.d.ts +2 -0
  284. package/cli/dist-server/types/node/navigation/navigation-manager.d.ts +12 -0
  285. package/cli/dist-server/types/node/navigation/navigation-protocol.d.ts +23 -0
  286. package/cli/dist-server/types/node/notification/notification-protocol.d.ts +19 -0
  287. package/cli/dist-server/types/node/output-style/output-style-protocol.d.ts +60 -0
  288. package/cli/dist-server/types/node/permission/brokered-sandbox/approval-coordinator.d.ts +32 -0
  289. package/cli/dist-server/types/node/permission/brokered-sandbox/host-protocol.d.ts +103 -0
  290. package/cli/dist-server/types/node/permission/canonicalize-command.d.ts +30 -0
  291. package/cli/dist-server/types/node/permission/codebuddy-sandbox-env.d.ts +35 -0
  292. package/cli/dist-server/types/node/permission/directory-trust-service.d.ts +45 -0
  293. package/cli/dist-server/types/node/permission/file-policy-assessment.d.ts +35 -0
  294. package/cli/dist-server/types/node/permission/index.d.ts +16 -0
  295. package/cli/dist-server/types/node/permission/permission-protocol.d.ts +9 -0
  296. package/cli/dist-server/types/node/permission/sandbox-attribution-analyzer.d.ts +108 -0
  297. package/cli/dist-server/types/node/permission/sandbox-audit-service.d.ts +40 -0
  298. package/cli/dist-server/types/node/permission/sandbox-exec-policy-builtin.d.ts +30 -0
  299. package/cli/dist-server/types/node/permission/sandbox-exec-policy-protocol.d.ts +67 -0
  300. package/cli/dist-server/types/node/permission/sandbox-exec-policy.d.ts +13 -0
  301. package/cli/dist-server/types/node/permission/sandbox-orchestrator-protocol.d.ts +239 -0
  302. package/cli/dist-server/types/node/permission/sandbox-orchestrator.d.ts +308 -0
  303. package/cli/dist-server/types/node/permission/sandbox-permission-gateway.d.ts +36 -0
  304. package/cli/dist-server/types/node/permission/sandbox-telemetry-context.d.ts +27 -0
  305. package/cli/dist-server/types/node/permission/sensitive-command-detector.d.ts +71 -0
  306. package/cli/dist-server/types/node/prewarm/prewarm-protocol.d.ts +296 -0
  307. package/cli/dist-server/types/node/product/api-key-helper-product-provider.d.ts +105 -0
  308. package/cli/dist-server/types/node/product/cli-options-product-provider.d.ts +30 -0
  309. package/cli/dist-server/types/node/product/cloud-pre-product-provider.d.ts +76 -0
  310. package/cli/dist-server/types/node/product/config-watch-service.d.ts +201 -0
  311. package/cli/dist-server/types/node/product/craft-to-cli-agent-models-sync-provider.d.ts +16 -0
  312. package/cli/dist-server/types/node/product/custom-agents-product-provider.d.ts +67 -0
  313. package/cli/dist-server/types/node/product/custom-commands-product-provider.d.ts +49 -0
  314. package/cli/dist-server/types/node/product/custom-product-config-provider.d.ts +6 -0
  315. package/cli/dist-server/types/node/product/index.d.ts +21 -0
  316. package/cli/dist-server/types/node/product/internet-enviroment-product-provider.d.ts +61 -0
  317. package/cli/dist-server/types/node/product/mcp-prompt-product-provider.d.ts +17 -0
  318. package/cli/dist-server/types/node/product/mcp-watch-service.d.ts +31 -0
  319. package/cli/dist-server/types/node/product/models-product-provider.d.ts +41 -0
  320. package/cli/dist-server/types/node/product/plugin-product-provider.d.ts +13 -0
  321. package/cli/dist-server/types/node/product/product-capabilities.d.ts +55 -0
  322. package/cli/dist-server/types/node/product/product-config-controller.d.ts +27 -0
  323. package/cli/dist-server/types/node/product/product-env-service.d.ts +20 -0
  324. package/cli/dist-server/types/node/product/product-identity.d.ts +57 -0
  325. package/cli/dist-server/types/node/product/product-protocol.d.ts +7 -0
  326. package/cli/dist-server/types/node/product/sdk-initialize-product-provider.d.ts +17 -0
  327. package/cli/dist-server/types/node/product/settings-endpoint-product-provider.d.ts +20 -0
  328. package/cli/dist-server/types/node/product/skill-product-provider.d.ts +62 -0
  329. package/cli/dist-server/types/node/references/index.d.ts +2 -0
  330. package/cli/dist-server/types/node/references/reference-protocol.d.ts +20 -0
  331. package/cli/dist-server/types/node/references/reference-service.d.ts +42 -0
  332. package/cli/dist-server/types/node/remote-control/remote-control-protocol.d.ts +288 -0
  333. package/cli/dist-server/types/node/runtime/add-dir-middleware.d.ts +13 -0
  334. package/cli/dist-server/types/node/runtime/cli-capabilities.d.ts +28 -0
  335. package/cli/dist-server/types/node/runtime/external-uri-opener.d.ts +8 -0
  336. package/cli/dist-server/types/node/runtime/file-local-storage.d.ts +17 -0
  337. package/cli/dist-server/types/node/runtime/host-capability-provider.d.ts +57 -0
  338. package/cli/dist-server/types/node/runtime/host-detection.d.ts +34 -0
  339. package/cli/dist-server/types/node/runtime/index.d.ts +8 -0
  340. package/cli/dist-server/types/node/runtime/workspace-folder-manager.d.ts +45 -0
  341. package/cli/dist-server/types/node/runtime/workspace.d.ts +5 -0
  342. package/cli/dist-server/types/node/sandbox-cli/sandbox-backend-support.d.ts +7 -0
  343. package/cli/dist-server/types/node/sandbox-cli/sandbox-cli-lifecycle-protocol.d.ts +109 -0
  344. package/cli/dist-server/types/node/sandbox-cli/sandbox-cli-protocol.d.ts +376 -0
  345. package/cli/dist-server/types/node/sandbox-cli/sandbox-rule-sync-service.d.ts +310 -0
  346. package/cli/dist-server/types/node/sandbox-cli/sandbox-session-preparation.d.ts +49 -0
  347. package/cli/dist-server/types/node/sandbox-cli/sandbox-turn-config.d.ts +32 -0
  348. package/cli/dist-server/types/node/sandbox-cli/threat-domain-checker.d.ts +137 -0
  349. package/cli/dist-server/types/node/security-review/gate.d.ts +13 -0
  350. package/cli/dist-server/types/node/security-review/index.d.ts +2 -0
  351. package/cli/dist-server/types/node/security-review/protocol.d.ts +14 -0
  352. package/cli/dist-server/types/node/sensitive-content/index.d.ts +15 -0
  353. package/cli/dist-server/types/node/sensitive-content/managed-cipher-stream-restorer.d.ts +22 -0
  354. package/cli/dist-server/types/node/sensitive-content/sandbox-center-ipc-client-protocol.d.ts +3 -0
  355. package/cli/dist-server/types/node/sensitive-content/sandbox-center-ipc-client.d.ts +7 -0
  356. package/cli/dist-server/types/node/sensitive-content/sandbox-center-port.d.ts +17 -0
  357. package/cli/dist-server/types/node/sensitive-content/sensitive-approval-port.d.ts +22 -0
  358. package/cli/dist-server/types/node/sensitive-content/sensitive-content-mediation.d.ts +6 -0
  359. package/cli/dist-server/types/node/sensitive-content/sensitive-decision-mediation.d.ts +69 -0
  360. package/cli/dist-server/types/node/sensitive-content/sensitive-history-admission.d.ts +42 -0
  361. package/cli/dist-server/types/node/sensitive-content/sensitive-history-replay.d.ts +6 -0
  362. package/cli/dist-server/types/node/sensitive-content/sensitive-local-sideband.d.ts +21 -0
  363. package/cli/dist-server/types/node/sensitive-content/sensitive-model-boundary.d.ts +22 -0
  364. package/cli/dist-server/types/node/sensitive-content/sensitive-protection-metadata.d.ts +7 -0
  365. package/cli/dist-server/types/node/sensitive-content/sensitive-session-grants.d.ts +41 -0
  366. package/cli/dist-server/types/node/sensitive-content/sensitive-tool-egress-guard.d.ts +7 -0
  367. package/cli/dist-server/types/node/sensitive-content/sensitive-user-input-review.d.ts +7 -0
  368. package/cli/dist-server/types/node/sensitive-content/settings-sensitive-protection-policy.d.ts +14 -0
  369. package/cli/dist-server/types/node/server/types.d.ts +3 -1
  370. package/cli/dist-server/types/node/session/index.d.ts +15 -0
  371. package/cli/dist-server/types/node/session/input-history-service.d.ts +47 -0
  372. package/cli/dist-server/types/node/session/input-item-processors.d.ts +70 -0
  373. package/cli/dist-server/types/node/session/session-abort-middleware.d.ts +22 -0
  374. package/cli/dist-server/types/node/session/session-controller.d.ts +126 -0
  375. package/cli/dist-server/types/node/session/session-history-clean-flag.d.ts +2 -0
  376. package/cli/dist-server/types/node/session/session-history-clean-service.d.ts +49 -0
  377. package/cli/dist-server/types/node/session/session-hook-host-adapter.d.ts +21 -0
  378. package/cli/dist-server/types/node/session/session-host-adapter.d.ts +34 -0
  379. package/cli/dist-server/types/node/session/session-http-protocol.d.ts +1 -0
  380. package/cli/dist-server/types/node/session/session-interruption-host-adapter.d.ts +115 -0
  381. package/cli/dist-server/types/node/session/session-manager-host-adapter.d.ts +100 -0
  382. package/cli/dist-server/types/node/session/session-middleware.d.ts +68 -0
  383. package/cli/dist-server/types/node/session/session-response-host-adapter.d.ts +9 -0
  384. package/cli/dist-server/types/node/session/session-store-host-adapter.d.ts +23 -0
  385. package/cli/dist-server/types/node/session/tasks-controller.d.ts +80 -0
  386. package/cli/dist-server/types/node/settings/current-session-model-transition-protocol.d.ts +23 -0
  387. package/cli/dist-server/types/node/settings/current-session-model-transition.d.ts +15 -0
  388. package/cli/dist-server/types/node/settings/index.d.ts +8 -0
  389. package/cli/dist-server/types/node/settings/settings-controller.d.ts +23 -0
  390. package/cli/dist-server/types/node/settings/settings-manager.d.ts +1 -0
  391. package/cli/dist-server/types/node/settings/settings-protocol.d.ts +4 -0
  392. package/cli/dist-server/types/node/settings/settings-validate-middleware.d.ts +9 -0
  393. package/cli/dist-server/types/node/shell/delegating-shell-service.d.ts +44 -0
  394. package/cli/dist-server/types/node/shell/driver-shell-service.d.ts +8 -0
  395. package/cli/dist-server/types/node/shell/index.d.ts +10 -0
  396. package/cli/dist-server/types/node/shell/language-shim-env.d.ts +11 -0
  397. package/cli/dist-server/types/node/shell/output-spiller.d.ts +39 -0
  398. package/cli/dist-server/types/node/shell/powershell-safe-delete.d.ts +16 -0
  399. package/cli/dist-server/types/node/shell/safe-delete/bulk-guard/contract.d.ts +61 -0
  400. package/cli/dist-server/types/node/shell/safe-delete/bulk-guard/index.d.ts +3 -0
  401. package/cli/dist-server/types/node/shell/safe-delete/bulk-guard/marker.d.ts +5 -0
  402. package/cli/dist-server/types/node/shell/safe-delete/bulk-guard/service.d.ts +12 -0
  403. package/cli/dist-server/types/node/shell/safe-delete/index.d.ts +17 -0
  404. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-attribution.d.ts +16 -0
  405. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-bootstrap.d.ts +1 -0
  406. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-env.d.ts +42 -0
  407. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-report.d.ts +18 -0
  408. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-sandbox-helpers.d.ts +39 -0
  409. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-settings.d.ts +42 -0
  410. package/cli/dist-server/types/node/shell/safe-delete/safe-delete-trash-service.d.ts +12 -0
  411. package/cli/dist-server/types/node/shell/shell-protocol.d.ts +287 -0
  412. package/cli/dist-server/types/node/shell/shell-runtime-paths.d.ts +23 -0
  413. package/cli/dist-server/types/node/shell/shell-service.d.ts +257 -0
  414. package/cli/dist-server/types/node/shell/shell-snapshot-protocol.d.ts +75 -0
  415. package/cli/dist-server/types/node/shell/shell-snapshot-service.d.ts +86 -0
  416. package/cli/dist-server/types/node/shell/terminal-serializer.d.ts +26 -0
  417. package/cli/dist-server/types/node/shell/truncate-buffer.d.ts +24 -0
  418. package/cli/dist-server/types/node/shell/windows-process-utils.d.ts +42 -0
  419. package/cli/dist-server/types/node/shortcut/shortcut-protocol.d.ts +41 -0
  420. package/cli/dist-server/types/node/skills/skill-approval.d.ts +31 -0
  421. package/cli/dist-server/types/node/stats/index.d.ts +5 -0
  422. package/cli/dist-server/types/node/stats/insights-protocol.d.ts +59 -0
  423. package/cli/dist-server/types/node/stats/insights-report-service.d.ts +17 -0
  424. package/cli/dist-server/types/node/stats/session-facet-service.d.ts +46 -0
  425. package/cli/dist-server/types/node/stats/stats-protocol.d.ts +145 -0
  426. package/cli/dist-server/types/node/stats/stats-service.d.ts +48 -0
  427. package/cli/dist-server/types/node/telemetry/cost-protocol.d.ts +67 -0
  428. package/cli/dist-server/types/node/telemetry/cost-service.d.ts +21 -0
  429. package/cli/dist-server/types/node/telemetry/extension-info-processor.d.ts +13 -0
  430. package/cli/dist-server/types/node/telemetry/friction-analysis.d.ts +54 -0
  431. package/cli/dist-server/types/node/telemetry/friction-recall-client.d.ts +15 -0
  432. package/cli/dist-server/types/node/telemetry/host-ide-info-processor.d.ts +11 -0
  433. package/cli/dist-server/types/node/telemetry/index.d.ts +21 -0
  434. package/cli/dist-server/types/node/telemetry/logger/index.d.ts +1 -0
  435. package/cli/dist-server/types/node/telemetry/logger/storage-path-provider.d.ts +4 -0
  436. package/cli/dist-server/types/node/telemetry/plugin-telemetry-protocol.d.ts +68 -0
  437. package/cli/dist-server/types/node/telemetry/plugin-telemetry-service.d.ts +31 -0
  438. package/cli/dist-server/types/node/telemetry/qimei-env-detector.d.ts +16 -0
  439. package/cli/dist-server/types/node/telemetry/sandbox-telemetry-protocol.d.ts +164 -0
  440. package/cli/dist-server/types/node/telemetry/sandbox-telemetry-service.d.ts +181 -0
  441. package/cli/dist-server/types/node/telemetry/startup-profiler.d.ts +32 -0
  442. package/cli/dist-server/types/node/telemetry/status-reporter.d.ts +39 -0
  443. package/cli/dist-server/types/node/telemetry/telemetry-client-carrier.d.ts +14 -0
  444. package/cli/dist-server/types/node/telemetry/telemetry-client-info-event-processor.d.ts +8 -0
  445. package/cli/dist-server/types/node/telemetry/telemetry-protocol.d.ts +137 -0
  446. package/cli/dist-server/types/node/telemetry/telemetry-service.d.ts +115 -0
  447. package/cli/dist-server/types/node/telemetry/turn-baggage-processor.d.ts +23 -0
  448. package/cli/dist-server/types/node/telemetry/vcs-event-processor.d.ts +19 -0
  449. package/cli/dist-server/types/node/tips/builtin-tips.d.ts +2 -0
  450. package/cli/dist-server/types/node/tips/index.d.ts +4 -0
  451. package/cli/dist-server/types/node/tips/tips-manager.d.ts +14 -0
  452. package/cli/dist-server/types/node/tips/tips-protocol.d.ts +42 -0
  453. package/cli/dist-server/types/node/tips/user-state-manager.d.ts +25 -0
  454. package/cli/dist-server/types/node/tool-control/index.d.ts +1 -0
  455. package/cli/dist-server/types/node/tool-control/tool-control-policy.d.ts +34 -0
  456. package/cli/dist-server/types/node/tools/a2a-cancel-task-tool.d.ts +55 -0
  457. package/cli/dist-server/types/node/tools/a2a-get-agent-card-tool.d.ts +59 -0
  458. package/cli/dist-server/types/node/tools/a2a-get-task-tool.d.ts +334 -0
  459. package/cli/dist-server/types/node/tools/a2a-send-message-tool.d.ts +168 -0
  460. package/cli/dist-server/types/node/tools/a2a-tool-guards.d.ts +48 -0
  461. package/cli/dist-server/types/node/tools/agent-tool.d.ts +202 -0
  462. package/cli/dist-server/types/node/tools/artifact-control-tool.d.ts +103 -0
  463. package/cli/dist-server/types/node/tools/artifact-tool.d.ts +96 -0
  464. package/cli/dist-server/types/node/tools/ask-user-for-structured-input-tool.d.ts +127 -0
  465. package/cli/dist-server/types/node/tools/ask-user-question-tool.d.ts +237 -0
  466. package/cli/dist-server/types/node/tools/audio-transcribe-service.d.ts +61 -0
  467. package/cli/dist-server/types/node/tools/audio-transcribe-tool.d.ts +66 -0
  468. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-allow-filter.d.ts +33 -0
  469. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-classifier-client.d.ts +230 -0
  470. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-critique-client.d.ts +51 -0
  471. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-defaults.d.ts +16 -0
  472. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-denial-tracker.d.ts +114 -0
  473. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-permission-service.d.ts +51 -0
  474. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-project-instructions.d.ts +26 -0
  475. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-protocol.d.ts +140 -0
  476. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-settings.d.ts +36 -0
  477. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-strategy.d.ts +21 -0
  478. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-system-prompt-builder.d.ts +28 -0
  479. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-timeout.d.ts +16 -0
  480. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-transcript-limit.d.ts +29 -0
  481. package/cli/dist-server/types/node/tools/auto-mode/auto-mode-transcript.d.ts +50 -0
  482. package/cli/dist-server/types/node/tools/auto-mode/index.d.ts +15 -0
  483. package/cli/dist-server/types/node/tools/auto-mode/permission-mode-policy.d.ts +63 -0
  484. package/cli/dist-server/types/node/tools/bash-output-tool.d.ts +34 -0
  485. package/cli/dist-server/types/node/tools/bash-sandbox-approval-requester.d.ts +55 -0
  486. package/cli/dist-server/types/node/tools/bash-tool.d.ts +211 -0
  487. package/cli/dist-server/types/node/tools/brief-mode-service.d.ts +26 -0
  488. package/cli/dist-server/types/node/tools/channel-tasks-tool.d.ts +174 -0
  489. package/cli/dist-server/types/node/tools/computer-use-tool.d.ts +86 -0
  490. package/cli/dist-server/types/node/tools/create-channel-tool.d.ts +82 -0
  491. package/cli/dist-server/types/node/tools/create-colleague-tool.d.ts +64 -0
  492. package/cli/dist-server/types/node/tools/cron-create-tool.d.ts +46 -0
  493. package/cli/dist-server/types/node/tools/cron-delete-tool.d.ts +28 -0
  494. package/cli/dist-server/types/node/tools/cron-list-tool.d.ts +27 -0
  495. package/cli/dist-server/types/node/tools/defer-execute-tool.d.ts +265 -0
  496. package/cli/dist-server/types/node/tools/defer-tool-config-protocol.d.ts +88 -0
  497. package/cli/dist-server/types/node/tools/defer-tool-config-service.d.ts +23 -0
  498. package/cli/dist-server/types/node/tools/deferred-tool-bridge.d.ts +50 -0
  499. package/cli/dist-server/types/node/tools/delegate-tool.d.ts +71 -0
  500. package/cli/dist-server/types/node/tools/edit-tool.d.ts +83 -0
  501. package/cli/dist-server/types/node/tools/enter-planmode-tool.d.ts +29 -0
  502. package/cli/dist-server/types/node/tools/enter-worktree-tool.d.ts +59 -0
  503. package/cli/dist-server/types/node/tools/exit-planmode-tool.d.ts +86 -0
  504. package/cli/dist-server/types/node/tools/file-change-artifact-publisher.d.ts +82 -0
  505. package/cli/dist-server/types/node/tools/glob-tool.d.ts +102 -0
  506. package/cli/dist-server/types/node/tools/grep-tool.d.ts +141 -0
  507. package/cli/dist-server/types/node/tools/image-edit-tool.d.ts +94 -0
  508. package/cli/dist-server/types/node/tools/image-gen-tool.d.ts +107 -0
  509. package/cli/dist-server/types/node/tools/image-service.d.ts +113 -0
  510. package/cli/dist-server/types/node/tools/index.d.ts +109 -0
  511. package/cli/dist-server/types/node/tools/kill-shell-tool.d.ts +27 -0
  512. package/cli/dist-server/types/node/tools/leave-worktree-tool.d.ts +54 -0
  513. package/cli/dist-server/types/node/tools/library-upload-tool.d.ts +70 -0
  514. package/cli/dist-server/types/node/tools/list-colleagues-tool.d.ts +35 -0
  515. package/cli/dist-server/types/node/tools/list-mcp-resources-tool.d.ts +58 -0
  516. package/cli/dist-server/types/node/tools/lsp-tool.d.ts +68 -0
  517. package/cli/dist-server/types/node/tools/main-agent-meta-tools.d.ts +107 -0
  518. package/cli/dist-server/types/node/tools/memory-tool.d.ts +33 -0
  519. package/cli/dist-server/types/node/tools/message-colleague-tool.d.ts +83 -0
  520. package/cli/dist-server/types/node/tools/monitor-tool.d.ts +216 -0
  521. package/cli/dist-server/types/node/tools/multi-edit-tool.d.ts +109 -0
  522. package/cli/dist-server/types/node/tools/notebook-edit-tool.d.ts +75 -0
  523. package/cli/dist-server/types/node/tools/notebook-read-tool.d.ts +55 -0
  524. package/cli/dist-server/types/node/tools/notebook-write-tool.d.ts +7 -0
  525. package/cli/dist-server/types/node/tools/plan-storage-service.d.ts +68 -0
  526. package/cli/dist-server/types/node/tools/powershell-clm-types.d.ts +30 -0
  527. package/cli/dist-server/types/node/tools/powershell-command-semantics.d.ts +23 -0
  528. package/cli/dist-server/types/node/tools/powershell-dangerous-cmdlets.d.ts +72 -0
  529. package/cli/dist-server/types/node/tools/powershell-destructive-warning.d.ts +12 -0
  530. package/cli/dist-server/types/node/tools/powershell-detection.d.ts +51 -0
  531. package/cli/dist-server/types/node/tools/powershell-git-safety.d.ts +60 -0
  532. package/cli/dist-server/types/node/tools/powershell-security.d.ts +93 -0
  533. package/cli/dist-server/types/node/tools/powershell-tool.d.ts +174 -0
  534. package/cli/dist-server/types/node/tools/produced-artifact-report.d.ts +35 -0
  535. package/cli/dist-server/types/node/tools/push-notification-tool.d.ts +55 -0
  536. package/cli/dist-server/types/node/tools/read-file-state-service.d.ts +27 -0
  537. package/cli/dist-server/types/node/tools/read-mcp-resource-tool.d.ts +71 -0
  538. package/cli/dist-server/types/node/tools/read-tool.d.ts +71 -0
  539. package/cli/dist-server/types/node/tools/repl/index.d.ts +10 -0
  540. package/cli/dist-server/types/node/tools/repl/repl-bridge-broker.d.ts +150 -0
  541. package/cli/dist-server/types/node/tools/repl/repl-bridge-host.d.ts +29 -0
  542. package/cli/dist-server/types/node/tools/repl/repl-catalog-protocol.d.ts +149 -0
  543. package/cli/dist-server/types/node/tools/repl/repl-catalog-render.d.ts +56 -0
  544. package/cli/dist-server/types/node/tools/repl/repl-catalog-source.d.ts +108 -0
  545. package/cli/dist-server/types/node/tools/repl/repl-import-rewrite.d.ts +17 -0
  546. package/cli/dist-server/types/node/tools/repl/repl-protocol.d.ts +210 -0
  547. package/cli/dist-server/types/node/tools/repl/repl-tool.d.ts +142 -0
  548. package/cli/dist-server/types/node/tools/repl/repl-worker-manager.d.ts +103 -0
  549. package/cli/dist-server/types/node/tools/repl/repl-worker-source.d.ts +16 -0
  550. package/cli/dist-server/types/node/tools/repl/repl-worker-source.generated.d.ts +2 -0
  551. package/cli/dist-server/types/node/tools/report-findings-tool.d.ts +97 -0
  552. package/cli/dist-server/types/node/tools/sandbox-approval-review.d.ts +40 -0
  553. package/cli/dist-server/types/node/tools/sandbox-permission-file-tool.d.ts +14 -0
  554. package/cli/dist-server/types/node/tools/sandbox-write-rule-guard.d.ts +126 -0
  555. package/cli/dist-server/types/node/tools/send-message-tool.d.ts +116 -0
  556. package/cli/dist-server/types/node/tools/send-user-message-attachments.d.ts +22 -0
  557. package/cli/dist-server/types/node/tools/send-user-message-tool.d.ts +60 -0
  558. package/cli/dist-server/types/node/tools/shell-stream-pusher.d.ts +25 -0
  559. package/cli/dist-server/types/node/tools/skill-manage-tool.d.ts +77 -0
  560. package/cli/dist-server/types/node/tools/skill-tool.d.ts +129 -0
  561. package/cli/dist-server/types/node/tools/slash-command-tool.d.ts +51 -0
  562. package/cli/dist-server/types/node/tools/space-upload/errors.d.ts +14 -0
  563. package/cli/dist-server/types/node/tools/space-upload/index.d.ts +4 -0
  564. package/cli/dist-server/types/node/tools/space-upload/local-file-source.d.ts +33 -0
  565. package/cli/dist-server/types/node/tools/space-upload/types.d.ts +65 -0
  566. package/cli/dist-server/types/node/tools/space-upload/upload-file.d.ts +27 -0
  567. package/cli/dist-server/types/node/tools/speak-in-channel-tool.d.ts +182 -0
  568. package/cli/dist-server/types/node/tools/structured-output-tool.d.ts +43 -0
  569. package/cli/dist-server/types/node/tools/task-create-tool.d.ts +71 -0
  570. package/cli/dist-server/types/node/tools/task-get-tool.d.ts +31 -0
  571. package/cli/dist-server/types/node/tools/task-list-tool.d.ts +20 -0
  572. package/cli/dist-server/types/node/tools/task-output-tool.d.ts +142 -0
  573. package/cli/dist-server/types/node/tools/task-stop-tool.d.ts +61 -0
  574. package/cli/dist-server/types/node/tools/task-storage-service.d.ts +161 -0
  575. package/cli/dist-server/types/node/tools/task-update-tool.d.ts +79 -0
  576. package/cli/dist-server/types/node/tools/team-create-tool.d.ts +84 -0
  577. package/cli/dist-server/types/node/tools/team-delete-tool.d.ts +38 -0
  578. package/cli/dist-server/types/node/tools/todo-storage-service.d.ts +48 -0
  579. package/cli/dist-server/types/node/tools/todo-write-tool.d.ts +117 -0
  580. package/cli/dist-server/types/node/tools/tool-always-approval-service.d.ts +73 -0
  581. package/cli/dist-server/types/node/tools/tool-argument-rewrite-service.d.ts +4 -0
  582. package/cli/dist-server/types/node/tools/tool-error-codes.d.ts +140 -0
  583. package/cli/dist-server/types/node/tools/tool-hook-manager.d.ts +61 -0
  584. package/cli/dist-server/types/node/tools/tool-manager.d.ts +585 -0
  585. package/cli/dist-server/types/node/tools/tool-permission-service.d.ts +145 -0
  586. package/cli/dist-server/types/node/tools/tool-permission-strategy.d.ts +83 -0
  587. package/cli/dist-server/types/node/tools/tool-protocol.d.ts +2 -0
  588. package/cli/dist-server/types/node/tools/tool-risk-review/content-history-admission.d.ts +10 -0
  589. package/cli/dist-server/types/node/tools/tool-risk-review/content-review.d.ts +56 -0
  590. package/cli/dist-server/types/node/tools/tool-risk-review/execution-approval-adapter.d.ts +11 -0
  591. package/cli/dist-server/types/node/tools/tool-risk-review/index.d.ts +7 -0
  592. package/cli/dist-server/types/node/tools/tool-risk-review/mcp-permission-review.d.ts +15 -0
  593. package/cli/dist-server/types/node/tools/tool-risk-review/mcp-projector.d.ts +5 -0
  594. package/cli/dist-server/types/node/tools/tool-risk-review/permission-metadata.d.ts +8 -0
  595. package/cli/dist-server/types/node/tools/tool-risk-review/projector-registry.d.ts +22 -0
  596. package/cli/dist-server/types/node/tools/tool-risk-review/projectors/index.d.ts +5 -0
  597. package/cli/dist-server/types/node/tools/tool-risk-review/prompt.d.ts +6 -0
  598. package/cli/dist-server/types/node/tools/tool-risk-review/protocol.d.ts +231 -0
  599. package/cli/dist-server/types/node/tools/tool-risk-review/review-context-build.d.ts +2 -0
  600. package/cli/dist-server/types/node/tools/tool-risk-review/review-context.d.ts +42 -0
  601. package/cli/dist-server/types/node/tools/tool-risk-review/review-runtime.d.ts +6 -0
  602. package/cli/dist-server/types/node/tools/tool-risk-review/reviewer-client-impl.d.ts +3 -0
  603. package/cli/dist-server/types/node/tools/tool-risk-review/reviewer-client.d.ts +37 -0
  604. package/cli/dist-server/types/node/tools/tool-risk-review/scope.d.ts +6 -0
  605. package/cli/dist-server/types/node/tools/tool-risk-review/service.d.ts +75 -0
  606. package/cli/dist-server/types/node/tools/tool-risk-review/session-state.d.ts +49 -0
  607. package/cli/dist-server/types/node/tools/tool-risk-review/trusted-builtin-code.d.ts +25 -0
  608. package/cli/dist-server/types/node/tools/tool-search-protocol.d.ts +286 -0
  609. package/cli/dist-server/types/node/tools/tool-search-service.d.ts +137 -0
  610. package/cli/dist-server/types/node/tools/tool-search-tool.d.ts +103 -0
  611. package/cli/dist-server/types/node/tools/tool-spec/agent-tool-defer-overlay-cache.d.ts +45 -0
  612. package/cli/dist-server/types/node/tools/tool-spec/index.d.ts +6 -0
  613. package/cli/dist-server/types/node/tools/tool-spec/legacy-ide-tool-names.d.ts +2 -0
  614. package/cli/dist-server/types/node/tools/tool-spec/tool-defer-overlay.d.ts +70 -0
  615. package/cli/dist-server/types/node/tools/tool-spec/tool-spec-augment.d.ts +17 -0
  616. package/cli/dist-server/types/node/tools/tool-spec/tool-spec-parser.d.ts +38 -0
  617. package/cli/dist-server/types/node/tools/tool-spec/tool-spec-protocol.d.ts +83 -0
  618. package/cli/dist-server/types/node/tools/video-gen-tool.d.ts +88 -0
  619. package/cli/dist-server/types/node/tools/video-service.d.ts +57 -0
  620. package/cli/dist-server/types/node/tools/wait-for-mcp-servers-tool.d.ts +79 -0
  621. package/cli/dist-server/types/node/tools/web-fetch-tool.d.ts +164 -0
  622. package/cli/dist-server/types/node/tools/web-search-tool.d.ts +79 -0
  623. package/cli/dist-server/types/node/tools/wechat-reply-tool.d.ts +43 -0
  624. package/cli/dist-server/types/node/tools/wecom-reply-tool.d.ts +65 -0
  625. package/cli/dist-server/types/node/tools/workflow-background-task.d.ts +54 -0
  626. package/cli/dist-server/types/node/tools/workflow-tool.d.ts +83 -0
  627. package/cli/dist-server/types/node/tools/write-tool.d.ts +80 -0
  628. package/cli/dist-server/types/node/trace/trace-collector-protocol.d.ts +203 -0
  629. package/cli/dist-server/types/node/utils/installation-utils.d.ts +35 -0
  630. package/cli/dist-server/types/node/utils/osc-protocol-utils.d.ts +209 -0
  631. package/cli/dist-server/types/node/utils/process-identity.d.ts +40 -0
  632. package/cli/dist-server/types/node/utils/security-audit-log.d.ts +134 -0
  633. package/cli/dist-server/types/node/utils/terminal-detector-utils.d.ts +78 -0
  634. package/cli/dist-server/types/node/vim/index.d.ts +2 -0
  635. package/cli/dist-server/types/node/vim/vim-manager.d.ts +12 -0
  636. package/cli/dist-server/types/node/vim/vim-protocol.d.ts +24 -0
  637. package/cli/dist-server/types/vendor/cbc-core/node/agent/agent-protocol.d.ts +7 -2
  638. package/cli/dist-server/types/vendor/cbc-core/node/agent/reviewer-recovery.d.ts +7 -0
  639. package/cli/dist-server/types/vendor/cbc-core/node/context/mods-bridge.d.ts +38 -2
  640. package/cli/dist-server/types/vendor/cbc-core/node/session/interruption-service.d.ts +4 -0
  641. package/cli/dist-server/types/vendor/cbc-core/node/session/session-hook-host-protocol.d.ts +2 -1
  642. package/cli/dist-server/types/vendor/cbc-core/node/session/session-interruption-host-protocol.d.ts +3 -0
  643. package/cli/dist-server/types/vendor/cbc-core/node/session/session-protocol.d.ts +6 -0
  644. package/cli/dist-server/types/vendor/cbc-core/node/session/session-store.d.ts +46 -7
  645. package/cli/dist-server/types/vendor/cbc-core/node/session-title/session-title-utils.d.ts +36 -0
  646. package/cli/dist-server/types/vendor/cbc-core/node/utils/history-utils.d.ts +37 -9
  647. package/cli/dist-server/types/vendor/cbc-core/node/utils/input-item-utils.d.ts +27 -0
  648. package/cli/dist-server/types/vendor/cbc-core/node/utils/model-utils.d.ts +9 -5
  649. package/cli/dist-server/types/vendor/cbc-shared/node/agent/custom-input-item-types.d.ts +20 -0
  650. package/cli/dist-server/types/vendor/cbc-shared/node/agent/openai-agents-types.d.ts +2 -2
  651. package/cli/dist-server/types/vendor/cbc-shared/node/model/model-errors.d.ts +23 -6
  652. package/cli/dist-server/types/workspace/agent-client-protocol/lib/common/prompt-codec.d.ts +2 -0
  653. package/cli/dist-server/types/workspace/agent-client-protocol/lib/common/security-review-reason-code.d.ts +0 -10
  654. package/cli/dist-server/types/workspace/cbc-checkpoint/lib/node/checkpoint/checkpoint-path-utils.d.ts +10 -0
  655. package/cli/dist-server/types/workspace/cbc-checkpoint/lib/node/checkpoint/checkpoint-service.d.ts +2 -0
  656. package/cli/dist-server/types/workspace/cbc-core/lib/node/agent/agent-protocol.d.ts +7 -2
  657. package/cli/dist-server/types/workspace/cbc-core/lib/node/agent/reviewer-recovery.d.ts +7 -0
  658. package/cli/dist-server/types/workspace/cbc-core/lib/node/context/mods-bridge.d.ts +38 -2
  659. package/cli/dist-server/types/workspace/cbc-core/lib/node/session/interruption-service.d.ts +4 -0
  660. package/cli/dist-server/types/workspace/cbc-core/lib/node/session/session-hook-host-protocol.d.ts +2 -1
  661. package/cli/dist-server/types/workspace/cbc-core/lib/node/session/session-interruption-host-protocol.d.ts +3 -0
  662. package/cli/dist-server/types/workspace/cbc-core/lib/node/session/session-protocol.d.ts +6 -0
  663. package/cli/dist-server/types/workspace/cbc-core/lib/node/session/session-store.d.ts +46 -7
  664. package/cli/dist-server/types/workspace/cbc-core/lib/node/session-title/session-title-utils.d.ts +36 -0
  665. package/cli/dist-server/types/workspace/cbc-core/lib/node/utils/history-utils.d.ts +37 -9
  666. package/cli/dist-server/types/workspace/cbc-core/lib/node/utils/input-item-utils.d.ts +27 -0
  667. package/cli/dist-server/types/workspace/cbc-core/lib/node/utils/model-utils.d.ts +9 -5
  668. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-parser.d.ts +34 -0
  669. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-protocol.d.ts +191 -0
  670. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-scheduler-service.d.ts +131 -0
  671. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-scheduler.d.ts +20 -0
  672. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-state-manager.d.ts +50 -0
  673. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-storage.d.ts +61 -0
  674. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/cron-task-session.d.ts +1 -0
  675. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/index.d.ts +8 -0
  676. package/cli/dist-server/types/workspace/cbc-cron/lib/node/cron/loop-skill-provider.d.ts +36 -0
  677. package/cli/dist-server/types/workspace/cbc-cron/lib/node/index.d.ts +10 -0
  678. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/bg-session-handler.d.ts +88 -0
  679. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/daemon-auto-restart.d.ts +61 -0
  680. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/daemon-channel-autoconnect.d.ts +28 -0
  681. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/daemon-enhancements-lifecycle.d.ts +45 -0
  682. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/daemon-process.d.ts +77 -0
  683. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/daemon-protocol.d.ts +324 -0
  684. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/daemon-service.d.ts +45 -0
  685. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/index.d.ts +10 -0
  686. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/session-registry.d.ts +39 -0
  687. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/system-service.d.ts +60 -0
  688. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/daemon/wake-detector.d.ts +47 -0
  689. package/cli/dist-server/types/workspace/cbc-daemon/lib/node/index.d.ts +11 -0
  690. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/goal-format.d.ts +25 -0
  691. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/goal-policy.d.ts +55 -0
  692. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/goal-protocol.d.ts +204 -0
  693. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/goal-service.d.ts +353 -0
  694. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/goal-session-start-hook.d.ts +25 -0
  695. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/goal-utils.d.ts +23 -0
  696. package/cli/dist-server/types/workspace/cbc-goal/lib/node/goal/index.d.ts +6 -0
  697. package/cli/dist-server/types/workspace/cbc-goal/lib/node/index.d.ts +12 -0
  698. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/index.d.ts +35 -0
  699. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/builtin/index.d.ts +14 -0
  700. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/builtin/sec-default.d.ts +32 -0
  701. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/builtin/telemetry.d.ts +43 -0
  702. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/enable-flag.d.ts +41 -0
  703. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/engine-builder.d.ts +61 -0
  704. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/hooks-registry.d.ts +188 -0
  705. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/index.d.ts +6 -0
  706. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/mods-runtime.d.ts +101 -0
  707. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/op-table.d.ts +37 -0
  708. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/engine/pattern.d.ts +20 -0
  709. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/core-handler.d.ts +78 -0
  710. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/host-bindings.d.ts +215 -0
  711. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/index.d.ts +6 -0
  712. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/plugin-store.d.ts +22 -0
  713. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/render-component.d.ts +115 -0
  714. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/render-registry.d.ts +99 -0
  715. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/host/terminal-play.d.ts +56 -0
  716. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/index.d.ts +9 -0
  717. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/legacy-adapter/fan-out.d.ts +23 -0
  718. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/legacy-adapter/hook-result-mapper.d.ts +27 -0
  719. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/legacy-adapter/index.d.ts +2 -0
  720. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/bootstrap.d.ts +104 -0
  721. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/bundle-cache.d.ts +59 -0
  722. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/index.d.ts +8 -0
  723. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/isolated-import.d.ts +20 -0
  724. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/load-mod.d.ts +151 -0
  725. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/manifest-dir.d.ts +33 -0
  726. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/mounted-import.d.ts +12 -0
  727. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/ts-runtime.d.ts +64 -0
  728. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/loader/types-emitter.d.ts +105 -0
  729. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/testing/harness.d.ts +84 -0
  730. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/testing/index.d.ts +1 -0
  731. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/events/agent.d.ts +188 -0
  732. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/events/command.d.ts +114 -0
  733. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/events/prompt.d.ts +310 -0
  734. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/events/tool.d.ts +308 -0
  735. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/events/upstream.d.ts +8777 -0
  736. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/events.d.ts +651 -0
  737. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/mods/types/index.d.ts +1 -0
  738. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/concurrency.d.ts +1 -0
  739. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/dependency-resolver.d.ts +43 -0
  740. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/directory-plugin-cache-projection.d.ts +2 -0
  741. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/guards/index.d.ts +2 -0
  742. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/guards/weixinpay-integrity-guard.d.ts +48 -0
  743. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/index.d.ts +42 -0
  744. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/installers/git-plugin-installer.d.ts +42 -0
  745. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/installers/git-subdir-plugin-installer.d.ts +19 -0
  746. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/installers/index.d.ts +4 -0
  747. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/installers/local-plugin-installer.d.ts +40 -0
  748. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/installers/npm-plugin-installer.d.ts +23 -0
  749. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/agent-loader.d.ts +43 -0
  750. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/command-loader.d.ts +39 -0
  751. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/hook-loader.d.ts +55 -0
  752. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/index.d.ts +8 -0
  753. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/lsp-loader.d.ts +47 -0
  754. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/mcp-loader.d.ts +75 -0
  755. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/output-style-loader.d.ts +49 -0
  756. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/plugin-loader-manager.d.ts +73 -0
  757. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/loaders/skill-loader.d.ts +45 -0
  758. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplace-name-validator.d.ts +50 -0
  759. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplace-path-safety.d.ts +86 -0
  760. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/base-marketplace.d.ts +48 -0
  761. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/builtin-marketplace-provider.d.ts +47 -0
  762. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/directory-marketplace.d.ts +19 -0
  763. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/git-availability-detector.d.ts +62 -0
  764. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/git-fallback-coordinator.d.ts +42 -0
  765. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/git-to-zip-url-converter.d.ts +50 -0
  766. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/github-marketplace.d.ts +41 -0
  767. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/http-marketplace.d.ts +47 -0
  768. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/index.d.ts +13 -0
  769. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/marketplace-config-manager.d.ts +43 -0
  770. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/marketplace-factory.d.ts +12 -0
  771. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/marketplace-storage.d.ts +142 -0
  772. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/marketplace-update-checker.d.ts +41 -0
  773. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/marketplaces/zip-marketplace.d.ts +150 -0
  774. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/mcpb-handler.d.ts +29 -0
  775. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-controller.d.ts +77 -0
  776. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-environment.d.ts +36 -0
  777. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-error-collector.d.ts +17 -0
  778. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-install-stats-service.d.ts +20 -0
  779. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-manager.d.ts +765 -0
  780. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-mcp-snapshot.d.ts +63 -0
  781. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-options-storage.d.ts +87 -0
  782. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-policy-service.d.ts +55 -0
  783. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-protocol.d.ts +1567 -0
  784. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-read-summary.d.ts +61 -0
  785. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-runtime-refresh-service.d.ts +262 -0
  786. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/plugin-validator.d.ts +48 -0
  787. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/session-plugin-snapshot.d.ts +5 -0
  788. package/cli/dist-server/types/workspace/cbc-plugins/lib/node/plugins/zip-utils.d.ts +94 -0
  789. package/cli/dist-server/types/workspace/cbc-shared/lib/node/agent/custom-input-item-types.d.ts +20 -0
  790. package/cli/dist-server/types/workspace/cbc-shared/lib/node/agent/openai-agents-types.d.ts +2 -2
  791. package/cli/dist-server/types/workspace/cbc-shared/lib/node/model/model-errors.d.ts +23 -6
  792. package/cli/dist-server/types/workspace/code-ratio/lib/common/code-ratio-protocol.d.ts +124 -0
  793. package/cli/dist-server/types/workspace/code-ratio/lib/common/code-ratio-reporter.d.ts +57 -0
  794. package/cli/dist-server/types/workspace/code-ratio/lib/common/diff/unified-diff.d.ts +37 -0
  795. package/cli/dist-server/types/workspace/code-ratio/lib/common/feature-gate.d.ts +59 -0
  796. package/cli/dist-server/types/workspace/code-ratio/lib/common/filters/file-filter.d.ts +41 -0
  797. package/cli/dist-server/types/workspace/code-ratio/lib/common/index.d.ts +6 -0
  798. package/cli/dist-server/types/workspace/code-ratio/lib/common/vcs-repo-resolver-protocol.d.ts +50 -0
  799. package/cli/dist-server/types/workspace/product/lib/common/index.d.ts +1 -0
  800. package/cli/dist-server/types/workspace/product/lib/common/repo-params.d.ts +14 -0
  801. package/cli/dist-server/types/workspace/product/lib/common/types/features.d.ts +35 -22
  802. package/cli/dist-server/types/workspace/product/lib/common/types/index.d.ts +0 -1
  803. package/cli/dist-server/types/workspace/product/lib/common/types/language-model.d.ts +1 -0
  804. package/cli/dist-server/types/workspace/product/lib/common/types/product.d.ts +0 -7
  805. package/cli/dist-server/types/workspace/sandbox-cli/lib/common/protocol.generated.d.ts +392 -0
  806. package/cli/dist-server/types/workspace/sandbox-cli/lib/node/file-policy.d.ts +48 -0
  807. package/cli/dist-server/types/workspace/sandbox-cli/lib/node/resolver.d.ts +95 -0
  808. package/cli/dist-server/types/workspace/sandbox-cli/lib/node/sandbox-cli-client.d.ts +78 -0
  809. package/cli/dist-server/types/workspace/telemetry/lib/common/event/types/security-review.d.ts +35 -6
  810. package/cli/dist-server/types/workspace/telemetry/lib/common/tracing/index.d.ts +1 -1
  811. package/cli/dist-server/types/workspace/telemetry/lib/common/tracing/otel-env.d.ts +1 -0
  812. package/cli/package.json +1 -1
  813. package/cli/product.cloudhosted.json +1 -1
  814. package/cli/product.internal.json +1 -1
  815. package/cli/product.ioa.json +1 -1
  816. package/cli/product.json +1 -1
  817. package/cli/product.selfhosted.json +1 -1
  818. package/docs/client.md +41 -0
  819. package/docs/in-process.md +151 -14
  820. package/docs/server.md +40 -1
  821. package/executor/lib/capsule/THIRD_PARTY_LICENSES.md +2 -2
  822. package/executor/lib/capsule/entry.mjs +8 -8
  823. package/executor/lib/capsule/manifest.json +2 -2
  824. package/executor/lib/private-protocol.cjs +33 -2
  825. package/executor/lib/private-protocol.d.cts +21 -1
  826. package/executor/lib/types.d.cts +15 -0
  827. package/lib/agent/v2.d.ts +1 -1
  828. package/lib/agent/v2.js +1 -1
  829. package/lib/application/services.d.ts +13 -1
  830. package/lib/application/services.js +1 -1
  831. package/lib/cli/main.js +3 -3
  832. package/lib/client/rpc.d.ts +16 -0
  833. package/lib/components/functional-hooks.d.mts +4 -0
  834. package/lib/components/functional-hooks.mjs +1 -0
  835. package/lib/harness/create-harness.js +1 -1
  836. package/lib/harness/hooks.d.ts +8 -0
  837. package/lib/harness/hooks.js +1 -0
  838. package/lib/harness/runtime.js +1 -1
  839. package/lib/harness/types.d.ts +7 -2
  840. package/lib/integration/agent-integration.d.ts +5 -1
  841. package/lib/integration/agent-integration.js +1 -1
  842. package/lib/integration/client-mcp-attachment.d.ts +5 -1
  843. package/lib/integration/client-mcp-attachment.js +1 -1
  844. package/lib/integration/executor-supervisor.d.ts +10 -1
  845. package/lib/integration/executor-supervisor.js +1 -1
  846. package/lib/integration/session-mcp-scope.d.ts +5 -1
  847. package/lib/integration/session-mcp-scope.js +1 -1
  848. package/lib/integration/session-mcp-view.d.ts +6 -1
  849. package/lib/integration/session-mcp-view.js +1 -1
  850. package/lib/mcp-server/module.d.ts +22 -2
  851. package/lib/mcp-server/module.js +1 -1
  852. package/lib/mcp-server/rpcs.d.ts +174 -123
  853. package/lib/mcp-server/rpcs.js +1 -1
  854. package/lib/mcp-server/schemas.d.ts +33 -0
  855. package/lib/mcp-server/schemas.js +1 -1
  856. package/lib/protocol/rpc.d.ts +73 -3
  857. package/lib/public.d.ts +1 -1
  858. package/package.json +24 -20
  859. package/cli/dist-server/types/workspace/product/lib/common/types/workspace-report.d.ts +0 -119
@@ -49,16 +49,16 @@ ${lv(n)}`,requestedSchema:{type:`object`,properties:{}}}),source:`policy`});if(s
49
49
  Title: ${u}
50
50
  MIME Type: ${a.file.mimetype}
51
51
  Size: ${a.file.size} bytes
52
- `},{type:`image`,data:ee.encode(l),mimeType:a.file.mimetype}]};return E.some(d)}).pipe(_.catch(()=>_.succeed(E.none())),_.withSpan(`plugin.mcp.slack_connect_file_fallback`))},vS=`mcp`,yS=e=>{if(e.httpStatus!==void 0)return kt(e.httpStatus)===`expired`?`expired`:`degraded`;let t=e.message.toLowerCase();return t.includes(`oauth re-authorization`)||t.includes(`unauthorized`)||t.includes(`forbidden`)?`expired`:`degraded`},bS=e=>e.timedOut===!0||e.failureKind===`timeout`?`probe_timeout`:e.httpStatus===void 0?`probe_failed`:`upstream_status`,xS=e=>{let t=e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``);return t.length>0?t:null},SS=(e,t)=>{let n=new Set,r=xS(e);r&&n.add(r);let i=t==null?null:xS(t.description);return i&&n.add(i),n},CS=(e,t)=>`${e}:${String(t)}`,wS=(e,t,n)=>!t.has(String(e.slug))||!n||n.transport!==`remote`||!n.authenticationTemplate.some(e=>e.kind===`oauth2`)?!1:e.grant===`authorization_code`&&(e.resource??null)===n.endpoint,TS=j.Struct({toolName:j.String,upstream:j.optional(j.Struct({title:j.optional(j.String),readOnlyHint:j.optional(j.Boolean),destructiveHint:j.optional(j.Boolean),idempotentHint:j.optional(j.Boolean),openWorldHint:j.optional(j.Boolean)})),_meta:j.optional(ky)}),ES=j.Struct({mcp:TS}),DS=j.decodeUnknownOption(ES),OS=e=>E.match(DS(e),{onNone:()=>null,onSome:e=>e.mcp}),kS=j.Struct({transport:j.optional(j.Literal(`remote`)),name:j.String,family:j.optional(j.String),description:j.optional(j.String),endpoint:j.String,remoteTransport:j.optional(uy),headers:j.optional(j.Record(j.String,j.String)),queryParams:j.optional(j.Record(j.String,j.String)),slug:j.optional(j.String),authenticationTemplate:j.optional(j.Array(vy)),auth:j.optional(gy),versionNegotiation:j.optional(dy)}),AS=j.Struct({transport:j.Literal(`stdio`),name:j.String,family:j.optional(j.String),description:j.optional(j.String),command:j.String,args:j.optional(j.Array(j.String)),envVars:j.optional(j.Array(j.String)),env:j.optional(j.Record(j.String,j.String)),staticEnv:j.optional(j.Record(j.String,j.String)),cwd:j.optional(j.String),versionNegotiation:j.optional(dy),spawnPerCall:j.optional(j.Boolean),appServer:j.optional(j.Struct({server:j.String,surface:j.optional(j.Literals([`sky`,`browser`])),modulePath:j.optional(j.String),presetId:j.optional(j.String)})),slug:j.optional(j.String)}),jS=j.Union([kS,AS]),MS=j.Struct({slug:j.String});j.Struct({authenticationTemplate:j.Array(vy),mode:j.optional(j.Literals([`merge`,`replace`]))});var NS=j.Struct({endpoint:j.String,headers:j.optional(j.Record(j.String,j.String)),queryParams:j.optional(j.Record(j.String,j.String))}),PS=j.Struct({connected:j.Boolean,requiresAuthentication:j.Boolean,requiresOAuth:j.Boolean,supportsDynamicRegistration:j.Boolean,name:j.String,slug:j.String,toolCount:j.NullOr(j.Number),serverName:j.NullOr(j.String),instructions:j.NullOr(j.String),versionNegotiation:j.optional(dy)}),FS=j.Struct({slug:j.String}),IS=j.Struct({integration:j.NullOr(j.Unknown)}),LS=e=>j.toStandardSchemaV1(j.toStandardJSONSchemaV1(e)),RS=LS(jS),zS=LS(MS),BS=LS(NS),VS=LS(PS),HS=LS(FS),US=LS(IS),WS=(e,t,n)=>cu.fail({code:e,message:t,...n===void 0?{}:{details:n}}),GS=e=>e.status===403&&e.insufficientScope===!0?cm({code:`oauth_scope_insufficient`,message:`MCP server rejected connection "${e.connection}" with HTTP 403: the connection's OAuth grant does not cover the scope this tool requires. Re-authenticating with the same grant will return the same error; reconnect with broader access.`,integration:{id:e.integration},credential:{kind:`oauth`,label:e.connection},status:e.status,upstream:{status:e.status}}):cm({code:`connection_rejected`,message:e.status===403?`MCP server rejected connection "${e.connection}" with HTTP 403. The credential may lack access or required scope; re-authenticate or update the connection before retrying this tool.`:`MCP server rejected connection "${e.connection}" with HTTP 401. Re-authenticate or update the connection before retrying this tool.`,integration:{id:e.integration},credential:{kind:`upstream`,label:e.connection},status:e.status,upstream:{status:e.status}}),KS=e=>cm({code:`oauth_reauth_required`,message:`OAuth connection "${e.connection}" requires reauthorization before retrying this MCP tool.`,integration:{id:e.integration},credential:{kind:`oauth`,label:e.connection}}),qS=e=>Y.make(e),JS=e=>e.slug??Ky({name:e.name,endpoint:e.transport===`stdio`?void 0:e.endpoint,command:e.transport===`stdio`?e.command:void 0}),YS=`env`,XS=e=>{let t=e.env??{},n=Object.keys(t);return n.length>0?{values:t,vars:n}:null},ZS=e=>{if(e.transport===`stdio`&&e.authenticationTemplate===void 0){let t=XS(e);return t===null?[{slug:`none`,kind:`none`}]:[{slug:YS,kind:`stdio_env`,vars:t.vars}]}return e.authenticationTemplate??[]},QS=e=>{let t=new Set(e.envVars??[]);for(let n of Object.keys(e.env??{}))t.add(n);return[...t]},$S=e=>{if(e.transport===`stdio`){let t=QS(e),n=e.staticEnv;return{transport:`stdio`,family:e.family?.trim()||void 0,command:e.command,args:e.args?[...e.args]:void 0,env:n!==void 0&&Object.keys(n).length>0?n:void 0,cwd:e.cwd,versionNegotiation:e.versionNegotiation,spawnPerCall:e.spawnPerCall,appServer:e.appServer,authenticationTemplate:t.length>0?[{slug:YS,kind:`stdio_env`,vars:t}]:[{slug:`none`,kind:`none`}]}}return{transport:`remote`,family:e.family?.trim()||void 0,endpoint:e.endpoint,remoteTransport:e.remoteTransport??`auto`,queryParams:e.queryParams,headers:e.headers,authenticationTemplate:e.authenticationTemplate?xy(e.authenticationTemplate):[_y(e.auth??{kind:`none`})],versionNegotiation:e.versionNegotiation}},eC=qy,tC=e=>{let t=eC.properties?.structuredContent??{};return{...eC,properties:{...eC.properties,structuredContent:e===void 0?t:e,isError:{const:!1}},required:e===void 0?[`content`]:[`content`,`structuredContent`]}},nC=e=>{let t=e.annotations?.destructiveHint===!0,n={toolName:e.toolName,...e.annotations?{upstream:e.annotations}:{},...e._meta?{_meta:e._meta}:{}},r={requiresApproval:t,...t?{approvalDescription:e.annotations?.title??e.toolName}:{},mcp:n};return{name:at.make(e.toolId),description:e.description??`MCP tool: ${e.toolName}`,inputSchema:e.inputSchema,outputSchema:tC(e.outputSchema),annotations:r}},rC=j.Struct({type:j.Literal(`text`),text:j.String}),iC=j.Struct({isError:j.optional(j.Boolean),content:j.optional(j.Array(j.Unknown))}),aC=j.decodeUnknownOption(rC),oC=j.decodeUnknownOption(iC),sC=e=>{if(Array.isArray(e))for(let t of e){let e=E.getOrUndefined(aC(t));if(e!==void 0&&e.text.length>0)return e.text}return`MCP tool returned an error`},cC=(e,t)=>cu.fail({code:`mcp_tool_unknown`,message:`The MCP server no longer provides tool "${e}". Its tool catalog changed; list tools again for the current set.`,details:{integration:String(t.integration),connection:String(t.connection)}}),lC=(e,t)=>{let n=RegExp(`(?:^|[^a-z0-9])${t}(?:$|[^a-z0-9])`,`i`);return n.test(e.hostname)||n.test(e.pathname)},uC=e=>e.kind===`unreachable`?`Couldn't reach this URL. Check the address, your network, and that the server is running.`:`This URL doesn't appear to host an MCP server. Double-check the address, including the path.`,dC=e=>({get redirectUrl(){return`http://localhost/oauth/callback`},get clientMetadata(){return{redirect_uris:[`http://localhost/oauth/callback`],grant_types:[`authorization_code`,`refresh_token`],response_types:[`code`],token_endpoint_auth_method:`none`,client_name:`Executor`}},clientInformation:()=>void 0,saveClientInformation:()=>void 0,tokens:()=>({access_token:e,token_type:`Bearer`}),saveTokens:()=>void 0,redirectToAuthorization:async()=>{throw new cy({message:`MCP OAuth re-authorization required`})},saveCodeVerifier:()=>void 0,codeVerifier:()=>{throw Error(`No active PKCE verifier`)},saveDiscoveryState:()=>void 0,discoveryState:()=>void 0}),fC=(e,t)=>{let n=ZS(e);if(t!==null){let e=n.find(e=>e.slug===t);if(e)return e}return n.length===1?n[0]:void 0},pC=(e,t,n,r,i)=>{if(e.transport===`stdio`){if(!r)return _.fail(new ay({transport:`stdio`,message:"MCP stdio transport is disabled. Enable it by passing `dangerouslyAllowStdioMCP: true` to mcpPlugin() — only safe for trusted local contexts."}));let i=fC(e,n),a={...e.env??{}};if(i?.kind===`stdio_env`)for(let e of i.vars){let n=t[e];n!=null&&(a[e]=n)}return _.succeed({transport:`stdio`,command:e.command,args:e.args,env:Object.keys(a).length>0?a:void 0,cwd:e.cwd,versionNegotiation:e.versionNegotiation,spawnPerCall:e.spawnPerCall,appServer:e.appServer})}let a={...e.headers??{}},o={...e.queryParams??{}},s,c=fC(e,n);if(c?.kind===`apikey`){let e=Vv(c.placements,t);Object.assign(a,e.headers),Object.assign(o,e.queryParams)}else if(c?.kind===`oauth2`){let e=t[Fv];e!=null&&(s=dC(e))}return _.succeed({transport:`remote`,endpoint:e.endpoint,remoteTransport:e.remoteTransport??`auto`,queryParams:Object.keys(o).length>0?o:void 0,headers:Object.keys(a).length>0?a:void 0,authProvider:s,...s===void 0?{}:{staticOAuthBearer:!0},httpClientLayer:i,versionNegotiation:e.versionNegotiation})},mC=e=>Object.fromEntries(Object.entries(e??{}).filter(e=>e[1]!==void 0).sort(([e],[t])=>e<t?-1:+(e>t))),hC=e=>e.transport===`remote`||e.appServer!==void 0||e.spawnPerCall!==!0,gC=(e,t,n,r)=>Jl(JSON.stringify(e.transport===`remote`?{owner:r.owner,connection:r.connection,endpoint:e.endpoint,transport:e.transport,remoteTransport:e.remoteTransport,headers:mC(e.headers),queryParams:mC(e.queryParams),template:t,values:mC(n)}:{owner:r.owner,connection:r.connection,transport:e.appServer===void 0?`stdio`:`appserver`,command:e.command,args:e.args??[],cwd:e.cwd??null,env:mC(e.env),versionNegotiation:e.versionNegotiation??null,server:e.appServer?.server??null,surface:e.appServer?.surface??null,modulePath:e.appServer?.modulePath??null,template:t,values:mC(n)})),_C=e=>({id:e.slug,label:`Environment variables`,kind:`apikey`,template:e.slug,placements:e.vars.map(e=>({carrier:`env`,name:e,prefix:``,variable:e}))}),vC=e=>{let t=Dy(e.config);return t?ZS(t).map(e=>e.kind===`stdio_env`?_C(e):e.kind===`apikey`?Kv(e):e.kind===`oauth2`?{id:e.slug,label:`OAuth`,kind:`oauth`,template:e.slug,oauth:{discoveryUrl:t.transport===`remote`?t.endpoint:void 0,...e.scopes===void 0?{}:{scopes:e.scopes},supportsDynamicRegistration:!0,...e.enterpriseIdentityProvider===void 0?{}:{enterpriseIdentityProvider:e.enterpriseIdentityProvider}}}:qv(e.slug)):[]},yC=e=>{let t=Dy(e.config);if(!t)return{};let n=t.family?.trim();return{...t.transport===`remote`?{url:t.endpoint}:{},...n?{family:n}:{}}},bC=iu(e=>{let t=e?.dangerouslyAllowStdioMCP??!1,n=rx();return{id:vS,packageName:`@executor-js/plugin-mcp`,remoteToolCatalog:!0,integrationPresets:(t?Pv:Pv.filter(e=>!(`transport`in e&&e.transport===`stdio`))).map(e=>({id:e.id,name:e.name,summary:e.summary,...`url`in e&&e.url?{url:e.url}:{},...`endpoint`in e&&e.endpoint?{endpoint:e.endpoint}:{},...e.icon?{icon:e.icon}:{},...e.fallbackIcon?{fallbackIcon:e.fallbackIcon}:{},...e.featured?{featured:e.featured}:{},...e.family?{family:e.family}:{},...`defaultSlug`in e&&e.defaultSlug?{defaultSlug:e.defaultSlug}:{},transport:`transport`in e&&e.transport===`stdio`?`stdio`:`remote`,...`command`in e?{command:e.command}:{},...`args`in e&&e.args?{args:[...e.args]}:{},...`env`in e&&e.env?{env:e.env}:{}})),clientConfig:{allowStdio:t},storage:()=>({}),close:()=>n.close(),extension:n=>{let r=e?.httpClientLayer??n.httpClientLayer,i=e=>_.gen(function*(){let t=(typeof e==`string`?e:e.endpoint).trim();if(!t)return yield*new ay({transport:`remote`,message:`Endpoint URL is required`});let i=yield*_.try({try:()=>new URL(t).hostname,catch:()=>`mcp`}).pipe(_.orElseSucceed(()=>`mcp`)),a=Ky({endpoint:t}),o=typeof e==`string`?void 0:e.headers,s=typeof e==`string`?void 0:e.queryParams,c=yield*ux({transport:`remote`,endpoint:t,headers:o,queryParams:s,httpClientLayer:r}).pipe(_.map(e=>({ok:!0,...e})),_.catch(()=>_.succeed({ok:!1,manifest:null,versionNegotiation:null})),_.withSpan(`mcp.plugin.discover_tools`));if(c.ok&&c.manifest)return{connected:!0,requiresAuthentication:!1,requiresOAuth:!1,supportsDynamicRegistration:!1,name:c.manifest.server?.name??i,slug:a,toolCount:c.manifest.tools.length,serverName:c.manifest.server?.name??null,instructions:c.manifest.server?.instructions??null,...c.versionNegotiation===`legacy`?{versionNegotiation:`legacy`}:{}};let l=yield*tS(t,{httpClientLayer:r,headers:o,queryParams:s});if(l.kind===`unreachable`)return yield*new ay({transport:`remote`,message:uC(l)});if(l.kind===`not-mcp`)return l.category===`wrong-shape`?yield*new ay({transport:`remote`,message:uC(l)}):{connected:!1,requiresAuthentication:!0,requiresOAuth:!1,supportsDynamicRegistration:!1,name:i,slug:a,toolCount:null,serverName:null,instructions:null};let u=yield*n.oauth.probe({url:t}).pipe(_.map(e=>({ok:!0,oauth:e})),_.catch(()=>_.succeed({ok:!1,oauth:null})),_.withSpan(`mcp.plugin.probe_oauth`));return u.ok?{connected:!1,requiresAuthentication:!0,requiresOAuth:!0,supportsDynamicRegistration:u.oauth.registrationEndpoint!=null,name:i,slug:a,toolCount:null,serverName:null,instructions:null}:l.requiresAuth?{connected:!1,requiresAuthentication:!0,requiresOAuth:!1,supportsDynamicRegistration:!1,name:i,slug:a,toolCount:null,serverName:null,instructions:null}:yield*new ay({transport:`remote`,message:`This endpoint looks like MCP, but Executor couldn't discover tools from it. Check the URL and try again.`})}).pipe(_.withSpan(`mcp.plugin.probe_endpoint`,{attributes:Ov(`mcp.endpoint`,typeof e==`string`?e:e.endpoint)})),a=e=>_.gen(function*(){let t=JS(e),r=$S(e);if(yield*n.core.integrations.get(qS(t)))return yield*new fn({slug:qS(t)});if(yield*n.core.integrations.register({slug:qS(t),name:e.name,description:e.description?.trim()||e.name,config:r,canRemove:!0,canRefresh:!0}).pipe(_.withSpan(`mcp.plugin.register_integration`,{attributes:{"mcp.integration.slug":t}})),e.transport===`stdio`){let r=e.env!=null&&Object.keys(e.env).length>0,i=QS(e).length>0;(r||!i)&&(yield*n.connections.create({owner:`org`,name:Qe.make(`default`),integration:qS(t),template:Xe.make(r?YS:`none`),values:r?{...e.env}:{}}).pipe(_.catchTags({IntegrationNotFoundError:e=>_.fail(new ay({transport:`stdio`,message:e.message})),ConnectionAlreadyExistsError:e=>_.fail(new ay({transport:`stdio`,message:e.message})),CredentialProviderNotRegisteredError:e=>_.fail(new ay({transport:`stdio`,message:e.message})),InvalidConnectionInputError:e=>_.fail(new ay({transport:`stdio`,message:e.message}))}),_.withSpan(`mcp.plugin.bootstrap_stdio_connection`,{attributes:{"mcp.integration.slug":t}})))}return{slug:t}}).pipe(_.withSpan(`mcp.plugin.add_server`,{attributes:{"mcp.server.transport":e.transport??`remote`,"mcp.server.name":e.name}})),o=()=>_.gen(function*(){let e=yield*n.core.integrations.list();for(let t of e)t.kind===vS&&(yield*_.gen(function*(){let e=yield*n.core.integrations.get(t.slug),r=e?Dy(e.config):null;if(!r||r.transport!==`stdio`||r.authenticationTemplate!==void 0||(yield*n.connections.list({integration:t.slug})).length>0)return;let i=XS(r);yield*n.connections.create({owner:`org`,name:Qe.make(`default`),integration:t.slug,template:Xe.make(i===null?`none`:YS),values:i===null?{}:{...i.values}});let a={transport:`stdio`,command:r.command,args:r.args,cwd:r.cwd,versionNegotiation:r.versionNegotiation,authenticationTemplate:i===null?[{slug:`none`,kind:`none`}]:[{slug:YS,kind:`stdio_env`,vars:i.vars}]};yield*n.core.integrations.update(t.slug,{config:a})}).pipe(_.catch(e=>_.logWarning(`mcp: failed healing stdio connection for "${t.slug}"`,e)),_.withSpan(`mcp.plugin.reconcile_stdio_connection`,{attributes:{"mcp.integration.slug":String(t.slug)}})))}).pipe(_.withSpan(`mcp.plugin.reconcile_stdio_connections`)),s=e=>_.gen(function*(){let t=qS(e),r=yield*n.core.integrations.get(t),i=r?Dy(r.config):null,a=SS(e,r),o=yield*n.connections.list({integration:t}),s=yield*n.connections.list(),c=yield*n.oauth.listClients(),l=new Set(s.filter(e=>String(e.integration)!==String(t)).flatMap(e=>e.oauthClient==null?[]:[CS(e.oauthClientOwner??e.owner,e.oauthClient)])),u=new Map(c.map(e=>[CS(e.owner,e.slug),e])),d=new Map;for(let e of o){if(e.oauthClient==null)continue;let t=e.oauthClientOwner??e.owner,n=CS(t,e.oauthClient);u.get(n)?.origin.kind===`dynamic_client_registration`&&d.set(n,{owner:t,slug:e.oauthClient})}for(let t of c){let n=CS(t.owner,t.slug);if(!l.has(n)){if(t.origin.kind===`dynamic_client_registration`&&(t.origin.integration==null||String(t.origin.integration)===e)){d.set(n,{owner:t.owner,slug:t.slug});continue}wS(t,a,i)&&d.set(n,{owner:t.owner,slug:t.slug})}}yield*n.core.integrations.remove(t).pipe(_.catchTag(`IntegrationRemovalNotAllowedError`,()=>_.void)),yield*_.forEach(d.values(),e=>n.oauth.removeClient(e.owner,e.slug),{discard:!0})}).pipe(_.withSpan(`mcp.plugin.remove_server`,{attributes:{"mcp.integration.slug":e}})),c=e=>n.core.integrations.get(qS(e)).pipe(_.withSpan(`mcp.plugin.get_server`,{attributes:{"mcp.integration.slug":e}})),l=(e,t)=>n.core.integrations.update(qS(e),{config:t}).pipe(_.withSpan(`mcp.plugin.configure_server`,{attributes:{"mcp.integration.slug":e}})),u=(e,t)=>_.gen(function*(){let r=yield*n.core.integrations.get(qS(e)),i=r?Dy(r.config):null;if(!i||i.transport===`stdio`)return[];let a=t.mode===`replace`?xy(t.authenticationTemplate):_v(i.authenticationTemplate,by(t.authenticationTemplate));return yield*n.core.integrations.update(qS(e),{config:{...i,authenticationTemplate:a}}),a}).pipe(_.withSpan(`mcp.plugin.configure_auth`,{attributes:{"mcp.integration.slug":e}})),d=e=>typeof e==`object`&&!!e&&`code`in e&&e.code===`REQUEST_TIMEOUT`,f=e=>_.gen(function*(){if(!t)return{status:`unsupported`};let n=(yield*p()).find(t=>t.id===e);if(n===void 0)return{status:`unknown`};if(!n.available)return{status:`not-installed`};let r=(yield*_.promise(()=>import(`./codex-plugin-presets-4WOJSVUQ.mjs`))).CURATED_CODEX_PLUGINS.find(t=>t.id===e)?.probeTool;if(r===void 0)return{status:`nothing-to-check`};let i=Xb({transport:`stdio`,command:n.command,args:n.args,env:n.env===void 0?void 0:{...n.env},...n.appServer===void 0?{}:{appServer:n.appServer}}),a=!1;return yield*_.gen(function*(){let e=yield*i,t=yield*_.tryPromise({try:()=>e.client.callTool({name:r.name,arguments:r.args},{timeout:25e3}),catch:e=>(a=d(e),new ay({transport:`appserver`,message:`The plugin did not answer.`}))}).pipe(_.ensuring(_.promise(()=>e.close()))),n=(Array.isArray(t.content)?t.content:[]).map(e=>e.text).filter(e=>typeof e==`string`).join(` `);return t.isError===!0?{status:`blocked`,message:n}:{status:`ok`}}).pipe(_.catchTags({McpConnectionError:()=>_.succeed({status:`blocked`,message:a?`macOS has not answered yet. If a permission prompt is on screen, answer it, then check again.`:`Could not start the plugin. Check that Codex is installed and signed in.`}),McpOAuthReauthorizationRequired:()=>_.succeed({status:`blocked`,message:`The plugin needs to be re-authorized in Codex.`})}),_.withSpan(`mcp.plugin.check_codex_plugin_access`))}),p=()=>t?_.promise(()=>import(`./codex-plugins-TDUKNEVV.mjs`)).pipe(_.map(e=>e.scanCodexPlugins()),_.withSpan(`mcp.plugin.list_codex_plugins`)):_.succeed([]);return{probeEndpoint:i,addServer:a,removeServer:s,reconcileStdioConnections:o,getServer:c,configureServer:l,configureAuth:u,listCodexPlugins:p,checkCodexPluginAccess:f}},resolveTools:({config:e,connection:n,template:r,getValues:i,httpClientLayer:a})=>_.gen(function*(){let o=Dy(e);if(!o)return{tools:[],incomplete:!0};let s=yield*pC(o,yield*i().pipe(_.orElseSucceed(()=>({}))),r===null?null:String(r),t,a).pipe(_.result);if(A.isFailure(s))return{tools:[],incomplete:!0,incompleteReason:s.failure.message};let c=yield*ux(s.success).pipe(_.result,_.withSpan(`mcp.plugin.discover_tools`,{attributes:{"mcp.connection.name":String(n.name)}}));if(A.isFailure(c)){let e=c.failure.reauthorizationRequired===!0;return{tools:[],incomplete:!0,incompleteReason:c.failure.message,...e?{health:{status:`expired`,checkedAt:Date.now(),detail:`MCP OAuth reauthorization required`}}:{}}}return{tools:c.success.manifest.tools.map(nC)}}).pipe(_.withSpan(`mcp.plugin.resolve_tools`,{attributes:{"mcp.connection.name":String(n.name)}})),invokeTool:({ctx:r,toolRow:i,credential:a,args:o,elicit:s})=>_.gen(function*(){let c=Dy(a.config);if(!c)return yield*new ay({transport:`auto`,message:`MCP integration "${i.integration}" has no usable config`});let l=OS(i.annotations);if(!l)return yield*new oy({stage:`list_tools`,message:`Tool "${i.name}" is missing its MCP binding \u2014 refresh the connection`});let u=c.transport===`stdio`?`stdio`:c.remoteTransport??`auto`;if(c.transport===`remote`){let e=fC(c,String(a.template));if(e?.kind===`apikey`){let t=Hv(e.placements).filter(e=>a.values[e]==null);if(t.length>0)return cm({code:`connection_value_missing`,message:`Connection has no resolvable credential value for input(s): ${t.join(`, `)}. Re-create the connection with the required value(s).`,integration:{id:String(a.integration)},credential:{kind:`upstream`,label:String(a.connection)}})}}let d=e?.httpClientLayer??r.httpClientLayer,f=yield*pC(c,a.values,String(a.template),t,d),p=Xb(f),m=hC(f)?yield*gC(f,String(a.template),a.values,{owner:String(a.owner),connection:String(a.connection)}):void 0,h={owner:a.owner,integration:a.integration,name:a.connection},g=!1,v=yield*Lx({toolId:String(i.name),toolName:l.toolName,args:o,transport:u,connector:p,...m===void 0?{}:{connectionPool:n,connectionPoolKey:m},elicit:s,onToolListChanged:()=>{g=!0}}).pipe(_.onExit(()=>g?r.connections.markToolsStale(h).pipe(_.ignore):_.void)),y=E.getOrUndefined(oC(v));if(y?.isError===!0){let e=sC(y.content);if(xx(e,l.toolName))return yield*r.connections.markToolsStale(h).pipe(_.ignore,_.as(cC(String(i.name),a)));if(c.transport===`remote`){let t=yield*_S({endpoint:c.endpoint,toolName:l.toolName,args:o,accessToken:a.values[Fv],upstreamErrorMessage:e}).pipe(_.provide(d));if(E.isSome(t))return cu.ok(t.value)}return cu.fail({code:`mcp_tool_error`,message:e,details:{content:y.content}})}return cu.ok(v)}).pipe(_.catchTag(`McpOAuthReauthorizationRequired`,()=>_.succeed(KS({integration:String(a.integration),connection:String(a.connection)}))),_.catchTag(`McpConnectionError`,e=>e.httpStatus===401||e.httpStatus===403?_.succeed(GS({status:e.httpStatus,integration:String(a.integration),connection:String(a.connection),...e.insufficientScope===!0?{insufficientScope:!0}:{}})):_.succeed(cm({code:`connection_rejected`,message:e.message,integration:{id:String(a.integration)},credential:{kind:`upstream`,label:String(a.connection)}}))),_.catchTag(`McpInvocationError`,e=>e.status===401||e.status===403?_.succeed(GS({status:e.status,integration:String(a.integration),connection:String(a.connection),...e.insufficientScope===!0?{insufficientScope:!0}:{}})):e.unknownTool===!0?r.connections.markToolsStale({owner:a.owner,integration:a.integration,name:a.connection}).pipe(_.ignore,_.as(cC(String(i.name),a))):e.protocolError===void 0?e.httpRefusal===void 0?_.fail(e):_.succeed(cu.fail({code:`mcp_tool_error`,message:e.httpRefusal.message,status:e.httpRefusal.status,retryable:!1,details:{upstream:{status:e.httpRefusal.status}}})):_.succeed(cu.fail({code:`mcp_tool_error`,message:e.protocolError.message,retryable:!1,details:{jsonrpc:{code:e.protocolError.code}}}))),_.withSpan(`mcp.plugin.invoke_tool`,{attributes:{"mcp.tool.name":String(i.name),"mcp.integration.slug":String(i.integration)}})),detect:({ctx:t,url:n})=>_.gen(function*(){let r=e?.httpClientLayer??t.httpClientLayer,i=n.trim();if(!i)return null;let a=yield*_.try({try:()=>new URL(i),catch:e=>e}).pipe(_.option);if(E.isNone(a))return null;let o=a.value.hostname||`mcp`,s=Ky({endpoint:i});return(yield*ux({transport:`remote`,endpoint:i,httpClientLayer:r}).pipe(_.map(()=>!0),_.catch(()=>_.succeed(!1)),_.withSpan(`mcp.plugin.discover_tools`)))||(yield*tS(i,{httpClientLayer:r})).kind===`mcp`?{kind:vS,confidence:`high`,endpoint:i,name:o,slug:s}:lC(a.value,`mcp`)?{kind:vS,confidence:`low`,endpoint:i,name:o,slug:s}:null}).pipe(_.catch(()=>_.succeed(null)),_.withSpan(`mcp.plugin.detect`,{attributes:Ov(`mcp.endpoint`,n)})),resolveAnnotations:({toolRows:e})=>_.sync(()=>{let t={};for(let n of e){let e=OS(n.annotations),r=e?.upstream;r?.destructiveHint===!0?t[String(n.name)]={requiresApproval:!0,approvalDescription:r.title??e?.toolName??String(n.name)}:t[String(n.name)]={requiresApproval:!1}}return t}),checkHealth:({ctx:n,credential:r})=>_.gen(function*(){let i=Dy(r.config);if(!i)return{status:`unknown`,checkedAt:Date.now()};if(i.transport===`remote`){let e=fC(i,String(r.template));if(e?.kind===`apikey`){let t=Hv(e.placements).filter(e=>r.values[e]==null);if(t.length>0)return{status:`expired`,checkedAt:Date.now(),detail:`Connection has no resolvable credential value for input(s): ${t.join(`, `)}.`,reason:`credential_missing`}}}return yield*ux(yield*pC(i,r.values,r.template===null?null:String(r.template),t,e?.httpClientLayer??n.httpClientLayer)).pipe(_.map(()=>({status:`healthy`,checkedAt:Date.now()})),_.catchTag(`McpToolDiscoveryError`,e=>_.succeed({status:yS(e),checkedAt:Date.now(),...e.httpStatus===void 0?{}:{httpStatus:e.httpStatus},detail:e.message,reason:bS(e)})))}).pipe(_.catchTag(`McpConnectionError`,e=>_.succeed({status:yS(e),checkedAt:Date.now(),...e.httpStatus===void 0?{}:{httpStatus:e.httpStatus},detail:e.message,reason:bS(e)})),_.tap(e=>_.annotateCurrentSpan({"mcp.health.status":e.status,...`httpStatus`in e&&e.httpStatus!==void 0?{"mcp.health.http_status":e.httpStatus}:{},...`reason`in e&&e.reason!==void 0?{"mcp.health.reason":e.reason}:{}})),_.withSpan(`mcp.plugin.check_health`,{attributes:{"executor.integration":String(r.integration),"mcp.connection.name":String(r.connection)}})),describeAuthMethods:vC,describeIntegrationDisplay:yC,integrationConfigure:{type:`mcp`,configure:({ctx:e,integration:t,config:n})=>_.gen(function*(){let r=Dy(n);r&&(yield*e.core.integrations.update(t,{config:r}))})},staticIntegrations:e=>[{id:`mcp`,kind:`executor`,name:`MCP`,tools:[ru({name:`probeEndpoint`,description:"Probe a remote MCP endpoint before adding it. If the result requires OAuth, run the core OAuth handoff (`oauth.probe`, `oauth.start`) to mint a connection; otherwise create a connection with `connections.create` carrying the API key or header value.",inputSchema:BS,outputSchema:VS,execute:t=>e.probeEndpoint(t).pipe(_.map(cu.ok),_.catchTag(`McpConnectionError`,({message:e,transport:t})=>_.succeed(WS(`mcp_connection_failed`,e,{transport:t}))))}),ru({name:`getServer`,description:"Inspect a registered MCP integration, including transport, endpoint/command, and auth template. Use this before creating a connection (`connections.create` / `oauth.start`).",inputSchema:HS,outputSchema:US,execute:t=>{let n=t;return _.map(e.getServer(n.slug),e=>cu.ok({integration:e}))}}),ru({name:`addServer`,description:"Register an MCP server in the catalog as an integration. Returns its `slug`. Then create a connection against it: for header/API-key auth call `connections.create` with the value; for OAuth-protected servers run `oauth.probe` + `oauth.start`. Tools are produced per-connection at connection create / refresh.",annotations:{requiresApproval:!0,approvalDescription:`Add an MCP server`},inputSchema:RS,outputSchema:zS,execute:t=>{let n=t;return e.addServer(n).pipe(_.map(cu.ok),_.catchTag(`IntegrationAlreadyExistsError`,({slug:e})=>_.succeed(WS(`integration_already_exists`,`Integration ${e} already exists; update it instead of re-adding.`))))}})]}]}}),xC=j.Union([j.Struct({kind:j.Literal(`none`)}),j.Struct({kind:j.Literal(`header`),headerName:j.String,prefix:j.optional(j.String)}),j.Struct({kind:j.Literal(`query`),paramName:j.String,prefix:j.optional(j.String)}),j.Struct({kind:j.Literal(`oauth2`)})]);j.decodeUnknownOption(xC);var SC=j.Struct({slug:j.String,kind:j.Literal(`header`),headerName:j.String,prefix:j.optional(j.String)}),CC=j.Struct({slug:j.String,kind:j.Literal(`query`),paramName:j.String,prefix:j.optional(j.String)}),wC=j.Struct({slug:j.String,type:j.Literal(`oauth`)});j.decodeUnknownOption(SC),j.decodeUnknownOption(CC),j.decodeUnknownOption(wC),j.decodeUnknownOption(j.Union([j.Struct({slug:j.String,kind:j.Literals([`none`,`oauth2`])}),j.Struct({slug:j.String,kind:j.Literal(`apikey`),label:j.optional(j.String),placements:j.Array(j.Unknown)})]));function TC(e,t){let n=bC(e),r=n.invokeTool;return!r||!t?n:{...n,invokeTool:e=>r({...e,ctx:{...e.ctx,connections:{...e.ctx.connections,markToolsStale:n=>e.ctx.connections.markToolsStale(n).pipe(_.tap(()=>_.sync(()=>t(String(n.integration),String(n.name)))))}}})}}function EC(e){if(!e||typeof e!=`object`||!(`sourceId`in e)||typeof e.sourceId!=`string`)throw Error(`Invalid client MCP source`);return e.sourceId}var DC=iu(e=>({id:`clientMcp`,storage:()=>void 0,remoteToolCatalog:!0,extension:e=>({register:(t,n)=>e.core.integrations.register({slug:t,name:String(t),description:`Client MCP`,canRemove:!0,canRefresh:!0,config:{sourceId:n,authenticationTemplate:[{slug:`none`,kind:`none`}]}})}),describeAuthMethods:()=>[{id:`none`,label:`Client-owned connection`,kind:`none`,template:`none`}],resolveTools:({config:t})=>_.tryPromise(async n=>{if(!e?.request)throw Error(`Client MCP bridge unavailable`);return{tools:Hy(await e.request(EC(t),`tools/list`,{},n)).tools.map(e=>({name:at.make(e.toolId),description:e.description??void 0,inputSchema:e.inputSchema,outputSchema:e.outputSchema==null?void 0:{type:`object`,properties:{content:{type:`array`},structuredContent:e.outputSchema},required:[`content`,`structuredContent`]},annotations:{mayElicit:!0,requiresApproval:e.annotations?.destructiveHint===!0,mcp:{toolName:e.toolName,upstream:e.annotations,_meta:e._meta}}}))}}).pipe(_.catch(()=>_.succeed({tools:[],incomplete:!0,incompleteReason:`Client MCP catalog unavailable`}))),invokeTool:({credential:t,toolRow:n,args:r})=>_.tryPromise(async i=>{if(!e?.request)throw Error(`Client MCP bridge unavailable`);let a=n.annotations;return e.request(EC(t.config),`tools/call`,{name:a?.mcp?.toolName??String(n.name),arguments:r},i)})})),OC=q(((e,t)=>{t.exports={kClose:Symbol(`close`),kDestroy:Symbol(`destroy`),kDispatch:Symbol(`dispatch`),kUrl:Symbol(`url`),kRequestOrigin:Symbol(`request origin`),kOriginless:Symbol(`originless`),kWriting:Symbol(`writing`),kResuming:Symbol(`resuming`),kQueue:Symbol(`queue`),kConnect:Symbol(`connect`),kConnecting:Symbol(`connecting`),kKeepAliveDefaultTimeout:Symbol(`default keep alive timeout`),kKeepAliveMaxTimeout:Symbol(`max keep alive timeout`),kKeepAliveTimeoutThreshold:Symbol(`keep alive timeout threshold`),kKeepAliveTimeoutValue:Symbol(`keep alive timeout`),kKeepAlive:Symbol(`keep alive`),kHeadersTimeout:Symbol(`headers timeout`),kBodyTimeout:Symbol(`body timeout`),kServerName:Symbol(`server name`),kLocalAddress:Symbol(`local address`),kHost:Symbol(`host`),kNoRef:Symbol(`no ref`),kBodyUsed:Symbol(`used`),kBody:Symbol(`abstracted request body`),kRunning:Symbol(`running`),kBlocking:Symbol(`blocking`),kPending:Symbol(`pending`),kSize:Symbol(`size`),kBusy:Symbol(`busy`),kQueued:Symbol(`queued`),kFree:Symbol(`free`),kConnected:Symbol(`connected`),kClosed:Symbol(`closed`),kNeedDrain:Symbol(`need drain`),kReset:Symbol(`reset`),kDestroyed:Symbol.for(`nodejs.stream.destroyed`),kResume:Symbol(`resume`),kOnError:Symbol(`on error`),kMaxHeadersSize:Symbol(`max headers size`),kRunningIdx:Symbol(`running index`),kPendingIdx:Symbol(`pending index`),kError:Symbol(`error`),kClients:Symbol(`clients`),kClient:Symbol(`client`),kParser:Symbol(`parser`),kOnDestroyed:Symbol(`destroy callbacks`),kPipelining:Symbol(`pipelining`),kSocket:Symbol(`socket`),kHostHeader:Symbol(`host header`),kConnector:Symbol(`connector`),kStrictContentLength:Symbol(`strict content length`),kMaxRedirections:Symbol(`maxRedirections`),kMaxRequests:Symbol(`maxRequestsPerClient`),kProxy:Symbol(`proxy agent options`),kCounter:Symbol(`socket request counter`),kMaxResponseSize:Symbol(`max response size`),kHTTP2Session:Symbol(`http2Session`),kHTTP2Options:Symbol(`http2 options`),kHTTP2SessionState:Symbol(`http2Session state`),kRetryHandlerDefaultRetry:Symbol(`retry agent default retry`),kConstruct:Symbol(`constructable`),kListeners:Symbol(`listeners`),kHTTPContext:Symbol(`http context`),kMaxConcurrentStreams:Symbol(`max concurrent streams`),kHostAuthority:Symbol(`host authority`),kHTTP2InitialWindowSize:Symbol(`http2 initial window size`),kHTTP2ConnectionWindowSize:Symbol(`http2 connection window size`),kEnableConnectProtocol:Symbol(`http2session connect protocol`),kRemoteSettings:Symbol(`http2session remote settings`),kHTTP2Stream:Symbol(`http2session client stream`),kPingInterval:Symbol(`ping interval`),kNoProxyAgent:Symbol(`no proxy agent`),kHttpProxyAgent:Symbol(`http proxy agent`),kHttpsProxyAgent:Symbol(`https proxy agent`),kSocks5ProxyAgent:Symbol(`socks5 proxy agent`)}})),kC=q(((e,t)=>{var n=0,r=1e3,i,a=Symbol(`kFastTimer`),o=[],s=-2,c=-1,l=0,u=1;function d(){n+=499;let e=0,t=o.length;for(;e<t;){let r=o[e];r._state===l?(r._idleStart=n-499,r._state=u):r._state===u&&n>=r._idleStart+r._idleTimeout&&(r._state=c,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===c?(r._state=s,--t!==0&&(o[e]=o[t])):++e}o.length=t,o.length!==0&&f()}function f(){i?.refresh?i.refresh():(clearTimeout(i),i=setTimeout(d,499),i?.unref())}var p=class{[a]=!0;_state=s;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,t,n){this._onTimeout=e,this._idleTimeout=t,this._timerArg=n,this.refresh()}refresh(){this._state===s&&o.push(this),(!i||o.length===1)&&f(),this._state=l}clear(){this._state=c,this._idleStart=-1}};t.exports={setTimeout(e,t,n){return t<=r?setTimeout(e,t,n):new p(e,t,n)},clearTimeout(e){e[a]?e.clear():clearTimeout(e)},setFastTimeout(e,t,n){return new p(e,t,n)},clearFastTimeout(e){e.clear()},now(){return n},tick(e=0){n+=e-r+1,d(),d()},reset(){n=0,o.length=0,clearTimeout(i),i=null},kFastTimer:a}})),Q=q(((e,t)=>{var n=Symbol.for(`undici.error.UND_ERR`),r=class extends Error{constructor(e,t){super(e,t),this.name=`UndiciError`,this.code=`UND_ERR`}static[Symbol.hasInstance](e){return e&&e[n]===!0}get[n](){return!0}},i=Symbol.for(`undici.error.UND_ERR_CONNECT_TIMEOUT`),a=class extends r{constructor(e){super(e),this.name=`ConnectTimeoutError`,this.message=e||`Connect Timeout Error`,this.code=`UND_ERR_CONNECT_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[i]===!0}get[i](){return!0}},o=Symbol.for(`undici.error.UND_ERR_HEADERS_TIMEOUT`),s=class extends r{constructor(e){super(e),this.name=`HeadersTimeoutError`,this.message=e||`Headers Timeout Error`,this.code=`UND_ERR_HEADERS_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[o]===!0}get[o](){return!0}},c=Symbol.for(`undici.error.UND_ERR_HEADERS_OVERFLOW`),l=class extends r{constructor(e){super(e),this.name=`HeadersOverflowError`,this.message=e||`Headers Overflow Error`,this.code=`UND_ERR_HEADERS_OVERFLOW`}static[Symbol.hasInstance](e){return e&&e[c]===!0}get[c](){return!0}},u=Symbol.for(`undici.error.UND_ERR_BODY_TIMEOUT`),d=class extends r{constructor(e){super(e),this.name=`BodyTimeoutError`,this.message=e||`Body Timeout Error`,this.code=`UND_ERR_BODY_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[u]===!0}get[u](){return!0}},f=Symbol.for(`undici.error.UND_ERR_INVALID_ARG`),p=class extends r{constructor(e){super(e),this.name=`InvalidArgumentError`,this.message=e||`Invalid Argument Error`,this.code=`UND_ERR_INVALID_ARG`}static[Symbol.hasInstance](e){return e&&e[f]===!0}get[f](){return!0}},m=Symbol.for(`undici.error.UND_ERR_INVALID_RETURN_VALUE`),h=class extends r{constructor(e){super(e),this.name=`InvalidReturnValueError`,this.message=e||`Invalid Return Value Error`,this.code=`UND_ERR_INVALID_RETURN_VALUE`}static[Symbol.hasInstance](e){return e&&e[m]===!0}get[m](){return!0}},g=Symbol.for(`undici.error.UND_ERR_ABORT`),_=class extends r{constructor(e){super(e),this.name=`AbortError`,this.message=e||`The operation was aborted`,this.code=`UND_ERR_ABORT`}static[Symbol.hasInstance](e){return e&&e[g]===!0}get[g](){return!0}},v=Symbol.for(`undici.error.UND_ERR_ABORTED`),y=class extends _{constructor(e){super(e),this.name=`AbortError`,this.message=e||`Request aborted`,this.code=`UND_ERR_ABORTED`}static[Symbol.hasInstance](e){return e&&e[v]===!0}get[v](){return!0}},b=Symbol.for(`undici.error.UND_ERR_INFO`),x=class extends r{constructor(e,t){super(e,t),this.name=`InformationalError`,this.message=e||`Request information`,this.code=`UND_ERR_INFO`}static[Symbol.hasInstance](e){return e&&e[b]===!0}get[b](){return!0}},S=Symbol.for(`undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`),C=class extends r{constructor(e){super(e),this.name=`RequestContentLengthMismatchError`,this.message=e||`Request body length does not match content-length header`,this.code=`UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[S]===!0}get[S](){return!0}},w=Symbol.for(`undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH`),T=class extends r{constructor(e){super(e),this.name=`ResponseContentLengthMismatchError`,this.message=e||`Response body length does not match content-length header`,this.code=`UND_ERR_RES_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[w]===!0}get[w](){return!0}},E=Symbol.for(`undici.error.UND_ERR_DESTROYED`),D=class extends r{constructor(e){super(e),this.name=`ClientDestroyedError`,this.message=e||`The client is destroyed`,this.code=`UND_ERR_DESTROYED`}static[Symbol.hasInstance](e){return e&&e[E]===!0}get[E](){return!0}},O=Symbol.for(`undici.error.UND_ERR_CLOSED`),k=class extends r{constructor(e){super(e),this.name=`ClientClosedError`,this.message=e||`The client is closed`,this.code=`UND_ERR_CLOSED`}static[Symbol.hasInstance](e){return e&&e[O]===!0}get[O](){return!0}},A=Symbol.for(`undici.error.UND_ERR_SOCKET`),j=class extends r{constructor(e,t){super(e),this.name=`SocketError`,this.message=e||`Socket error`,this.code=`UND_ERR_SOCKET`,this.socket=t}static[Symbol.hasInstance](e){return e&&e[A]===!0}get[A](){return!0}},M=Symbol.for(`undici.error.UND_ERR_NOT_SUPPORTED`),N=class extends r{constructor(e){super(e),this.name=`NotSupportedError`,this.message=e||`Not supported error`,this.code=`UND_ERR_NOT_SUPPORTED`}static[Symbol.hasInstance](e){return e&&e[M]===!0}get[M](){return!0}},P=Symbol.for(`undici.error.UND_ERR_BPL_MISSING_UPSTREAM`),F=class extends r{constructor(e){super(e),this.name=`MissingUpstreamError`,this.message=e||`No upstream has been added to the BalancedPool`,this.code=`UND_ERR_BPL_MISSING_UPSTREAM`}static[Symbol.hasInstance](e){return e&&e[P]===!0}get[P](){return!0}},I=Symbol.for(`undici.error.UND_ERR_HTTP_PARSER`),L=class extends Error{constructor(e,t,n){super(e),this.name=`HTTPParserError`,this.code=t?`HPE_${t}`:void 0,this.data=n?n.toString():void 0}static[Symbol.hasInstance](e){return e&&e[I]===!0}get[I](){return!0}},R=Symbol.for(`undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE`),ee=class extends r{constructor(e){super(e),this.name=`ResponseExceededMaxSizeError`,this.message=e||`Response content exceeded max size`,this.code=`UND_ERR_RES_EXCEEDED_MAX_SIZE`}static[Symbol.hasInstance](e){return e&&e[R]===!0}get[R](){return!0}},te=Symbol.for(`undici.error.UND_ERR_REQ_RETRY`),ne=class extends r{constructor(e,t,{headers:n,data:r}){super(e),this.name=`RequestRetryError`,this.message=e||`Request retry error`,this.code=`UND_ERR_REQ_RETRY`,this.statusCode=t,this.data=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[te]===!0}get[te](){return!0}},re=Symbol.for(`undici.error.UND_ERR_RESPONSE`),z=class extends r{constructor(e,t,{headers:n,body:r}){super(e),this.name=`ResponseError`,this.message=e||`Response error`,this.code=`UND_ERR_RESPONSE`,this.statusCode=t,this.body=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[re]===!0}get[re](){return!0}},ie=Symbol.for(`undici.error.UND_ERR_PRX_TLS`),ae=class extends r{constructor(e,t,n={}){super(t,{cause:e,...n}),this.name=`SecureProxyConnectionError`,this.message=t||`Secure Proxy Connection failed`,this.code=`UND_ERR_PRX_TLS`,this.cause=e}static[Symbol.hasInstance](e){return e&&e[ie]===!0}get[ie](){return!0}},oe=Symbol.for(`undici.error.UND_ERR_PRX_CONN`),B=class extends r{constructor(e,t,n={}){super(t,{cause:e,...n}),this.name=`ProxyConnectionError`,this.message=t||`Proxy Connection failed`,this.code=`UND_ERR_PRX_CONN`,this.cause=e}static[Symbol.hasInstance](e){return e&&e[oe]===!0}get[oe](){return!0}},V=Symbol.for(`undici.error.UND_ERR_MAX_ORIGINS_REACHED`),H=class extends r{constructor(e){super(e),this.name=`MaxOriginsReachedError`,this.message=e||`Maximum allowed origins reached`,this.code=`UND_ERR_MAX_ORIGINS_REACHED`}static[Symbol.hasInstance](e){return e&&e[V]===!0}get[V](){return!0}},se=class extends r{constructor(e,t){super(e),this.name=`Socks5ProxyError`,this.message=e||`SOCKS5 proxy error`,this.code=t||`UND_ERR_SOCKS5`}},ce=Symbol.for(`undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`);t.exports={AbortError:_,HTTPParserError:L,UndiciError:r,HeadersTimeoutError:s,HeadersOverflowError:l,BodyTimeoutError:d,RequestContentLengthMismatchError:C,ConnectTimeoutError:a,InvalidArgumentError:p,InvalidReturnValueError:h,RequestAbortedError:y,ClientDestroyedError:D,ClientClosedError:k,InformationalError:x,SocketError:j,NotSupportedError:N,ResponseContentLengthMismatchError:T,BalancedPoolMissingUpstreamError:F,ResponseExceededMaxSizeError:ee,RequestRetryError:ne,ResponseError:z,SecureProxyConnectionError:ae,ProxyConnectionError:B,MaxOriginsReachedError:H,Socks5ProxyError:se,MessageSizeExceededError:class extends r{constructor(e){super(e),this.name=`MessageSizeExceededError`,this.message=e||`Max decompressed message size exceeded`,this.code=`UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`}static[Symbol.hasInstance](e){return e&&e[ce]===!0}get[ce](){return!0}}}})),AC=q(((e,t)=>{var n=`Accept.Accept-Encoding.Accept-Language.Accept-Ranges.Access-Control-Allow-Credentials.Access-Control-Allow-Headers.Access-Control-Allow-Methods.Access-Control-Allow-Origin.Access-Control-Expose-Headers.Access-Control-Max-Age.Access-Control-Request-Headers.Access-Control-Request-Method.Age.Allow.Alt-Svc.Alt-Used.Authorization.Cache-Control.Clear-Site-Data.Connection.Content-Disposition.Content-Encoding.Content-Language.Content-Length.Content-Location.Content-Range.Content-Security-Policy.Content-Security-Policy-Report-Only.Content-Type.Cookie.Cross-Origin-Embedder-Policy.Cross-Origin-Opener-Policy.Cross-Origin-Resource-Policy.Date.Device-Memory.Downlink.ECT.ETag.Expect.Expect-CT.Expires.Forwarded.From.Host.If-Match.If-Modified-Since.If-None-Match.If-Range.If-Unmodified-Since.Keep-Alive.Last-Modified.Link.Location.Max-Forwards.Origin.Permissions-Policy.Pragma.Proxy-Authenticate.Proxy-Authorization.RTT.Range.Referer.Referrer-Policy.Refresh.Retry-After.Sec-WebSocket-Accept.Sec-WebSocket-Extensions.Sec-WebSocket-Key.Sec-WebSocket-Protocol.Sec-WebSocket-Version.Server.Server-Timing.Service-Worker-Allowed.Service-Worker-Navigation-Preload.Set-Cookie.SourceMap.Strict-Transport-Security.Supports-Loading-Mode.TE.Timing-Allow-Origin.Trailer.Transfer-Encoding.Upgrade.Upgrade-Insecure-Requests.User-Agent.Vary.Via.WWW-Authenticate.X-Content-Type-Options.X-DNS-Prefetch-Control.X-Frame-Options.X-Permitted-Cross-Domain-Policies.X-Powered-By.X-Requested-With.X-XSS-Protection`.split(`.`),r={};Object.setPrototypeOf(r,null);for(let e=0;e<n.length;++e){let t=n[e],i=t.toLowerCase();r[t]=r[i]=i}t.exports={wellknownHeaderNames:n,headerNameLowerCasedRecord:r}})),jC=q(((e,t)=>{var{wellknownHeaderNames:n,headerNameLowerCasedRecord:r}=AC(),i=class e{value=null;left=null;middle=null;right=null;code;constructor(t,n,r){if(r===void 0||r>=t.length)throw TypeError(`Unreachable`);if((this.code=t.charCodeAt(r))>127)throw TypeError(`key must be ascii string`);t.length===++r?this.value=n:this.middle=new e(t,n,r)}add(t,n){let r=t.length;if(r===0)throw TypeError(`Unreachable`);let i=0,a=this;for(;;){let o=t.charCodeAt(i);if(o>127)throw TypeError(`key must be ascii string`);if(a.code===o){if(r===++i){a.value=n;break}if(a.middle!==null)a=a.middle;else{a.middle=new e(t,n,i);break}}else if(a.code<o){if(a.left!==null)a=a.left;else{a.left=new e(t,n,i);break}}else if(a.right!==null)a=a.right;else{a.right=new e(t,n,i);break}}}search(e){let t=e.length,n=0,r=this;for(;r!==null&&n<t;){let i=e[n];for(i<=90&&i>=65&&(i|=32);r!==null;){if(i===r.code){if(t===++n)return r;r=r.middle;break}r=r.code<i?r.left:r.right}}return null}},a=class{node=null;insert(e,t){this.node===null?this.node=new i(e,t,0):this.node.add(e,t)}lookup(e){return this.node?.search(e)?.value??null}},o=new a;for(let e=0;e<n.length;++e){let t=r[n[e]];o.insert(t,t)}t.exports={TernarySearchTree:a,tree:o}})),$=q(((e,t)=>{var n=J(`node:assert`),{kDestroyed:r,kBodyUsed:i,kListeners:a,kBody:o}=OC(),{IncomingMessage:s}=J(`node:http`),c=J(`node:stream`),l=J(`node:net`),{stringify:u}=J(`node:querystring`),{EventEmitter:d,addAbortListener:f}=J(`node:events`),p=kC(),{InvalidArgumentError:m,ConnectTimeoutError:h}=Q(),{headerNameLowerCasedRecord:g}=AC(),{tree:_}=jC(),v=class{constructor(e){this[o]=e,this[i]=!1}async*[Symbol.asyncIterator](){n(!this[i],`disturbed`),this[i]=!0,yield*this[o]}};function y(){}function b(e){return x(e)?(F(e)===0&&e.on(`data`,function(){n(!1)}),typeof e.readableDidRead!=`boolean`&&(e[i]=!1,d.prototype.on.call(e,`data`,function(){this[i]=!0})),e):e&&typeof e.pipeTo==`function`?new v(e):e&&se(e)?e:e&&typeof e!=`string`&&!ArrayBuffer.isView(e)&&N(e)?new v(e):e}function x(e){return e&&typeof e==`object`&&typeof e.pipe==`function`&&typeof e.on==`function`}function S(e){return e instanceof Blob}function C(e){return e.includes(`?`)||e.includes(`#`)}function w(e,t){if(C(e))throw Error(`Query params cannot be passed when url already contains "?" or "#".`);let n=u(t);return n&&(e+=`?`+n),e}function T(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function E(e){return e!=null&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&(e[4]===`:`||e[4]===`s`&&e[5]===`:`)}function D(e){if(typeof e==`string`){if(e=new URL(e),!E(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!=`object`)throw new m(`Invalid URL: The URL argument must be a non-null object.`);if(!(e instanceof URL)){if(e.port!=null&&e.port!==``&&T(e.port)===!1)throw new m(`Invalid URL: port must be a valid integer or a string representation of an integer.`);if(e.path!=null&&typeof e.path!=`string`)throw new m(`Invalid URL path: the path must be a string or null/undefined.`);if(e.pathname!=null&&typeof e.pathname!=`string`)throw new m(`Invalid URL pathname: the pathname must be a string or null/undefined.`);if(e.hostname!=null&&typeof e.hostname!=`string`)throw new m(`Invalid URL hostname: the hostname must be a string or null/undefined.`);if(e.origin!=null&&typeof e.origin!=`string`)throw new m(`Invalid URL origin: the origin must be a string or null/undefined.`);if(!E(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port==null?e.protocol===`https:`?443:80:e.port,n=e.origin==null?`${e.protocol||``}//${e.hostname||``}:${t}`:e.origin,r=e.path==null?`${e.pathname||``}${e.search||``}`:e.path;return n[n.length-1]===`/`&&(n=n.slice(0,n.length-1)),r&&r[0]!==`/`&&(r=`/${r}`),new URL(`${n}${r}`)}if(!E(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function O(e){if(e=D(e),e.pathname!==`/`||e.search||e.hash)throw new m(`invalid url`);return e}function k(e){if(e[0]===`[`){let t=e.indexOf(`]`);return n(t!==-1),e.substring(1,t)}let t=e.indexOf(`:`);return t===-1?e:e.substring(0,t)}function A(e){if(!e)return null;n(typeof e==`string`);let t=k(e);return l.isIP(t)?``:t}function j(e){return JSON.parse(JSON.stringify(e))}function M(e){return e!=null&&typeof e[Symbol.asyncIterator]==`function`}function N(e){return!(e==null||typeof e[Symbol.iterator]!=`function`&&typeof e[Symbol.asyncIterator]!=`function`)}function P(e){let t=Object.getPrototypeOf(e);return Object.hasOwn(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function F(e){if(e==null)return 0;if(x(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}return S(e)?e.size==null?null:e.size:oe(e)?e.byteLength:null}function I(e){return e&&!!(e.destroyed||e[r]||c.isDestroyed?.(e))}function L(e,t){if(e!=null&&x(e)&&!I(e)){if(typeof e.destroy==`function`){Object.getPrototypeOf(e).constructor===s&&(e.socket=null);try{e.destroy(t)}catch{}}else t&&queueMicrotask(()=>{e.emit(`error`,t)});e.destroyed!==!0&&(e[r]=!0)}}var R=/timeout=(\d+)/;function ee(e){let t=e.match(R);return t?parseInt(t[1],10)*1e3:null}function te(e){return typeof e==`string`?g[e]??e.toLowerCase():_.lookup(e)??e.toString(`latin1`).toLowerCase()}function ne(e){return _.lookup(e)??e.toString(`latin1`).toLowerCase()}function re(e,t){t===void 0&&(t={});for(let n=0;n<e.length;n+=2){let r=te(e[n]),i=t[r];if(i!==void 0){if(Object.hasOwn(t,r))typeof i==`string`&&(i=[i],t[r]=i),i.push(e[n+1].toString(`latin1`));else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);r===`__proto__`?Object.defineProperty(t,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[r]=i}}else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);t[r]=i}}return t}function z(e){if(e==null)return[];if(!Array.isArray(e)){let t=[];for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.push(n,`${e}`);else t.push(n,`${r}`);return t}let t=e.length,n=Array(t),r,i;for(let a=0;a<t;a+=2)r=e[a],i=e[a+1],typeof r!=`string`&&(r=r.toString()),typeof i!=`string`&&(i=i.toString(`latin1`)),n[a]=r,n[a+1]=i;return n}function ie(e){let t=[];for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.push(Buffer.from(n,`latin1`),Buffer.from(`${e}`,`latin1`));else t.push(Buffer.from(n,`latin1`),Buffer.from(`${r}`,`latin1`));return t}function ae(e){if(!Array.isArray(e))throw TypeError(`expected headers to be an array`);return e.map(e=>Buffer.from(e))}function oe(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}function B(e,t,n){if(!e||typeof e!=`object`)throw new m(`handler must be an object`);if(typeof e.onRequestStart!=`function`)throw new m(`invalid onRequestStart method`);if(typeof e.onResponseError!=`function`)throw new m(`invalid onResponseError method`);if(typeof e.onBodySent!=`function`&&e.onBodySent!==void 0)throw new m(`invalid onBodySent method`);if(typeof e.onRequestSent!=`function`&&e.onRequestSent!==void 0)throw new m(`invalid onRequestSent method`);if(n||t===`CONNECT`){if(typeof e.onRequestUpgrade!=`function`)throw new m(`invalid onRequestUpgrade method`)}else{if(typeof e.onResponseStart!=`function`)throw new m(`invalid onResponseStart method`);if(typeof e.onResponseData!=`function`)throw new m(`invalid onResponseData method`);if(typeof e.onResponseEnd!=`function`)throw new m(`invalid onResponseEnd method`)}}function V(e){return!!(e&&(c.isDisturbed(e)||e[i]))}function H(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}}function se(e){return e&&typeof e==`object`&&typeof e.append==`function`&&typeof e.delete==`function`&&typeof e.get==`function`&&typeof e.getAll==`function`&&typeof e.has==`function`&&typeof e.set==`function`&&e[Symbol.toStringTag]===`FormData`}function ce(e,t){return!e||`aborted`in e?f(e,t)[Symbol.dispose]:typeof e.addEventListener==`function`?(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)):(e.once(`abort`,t),()=>e.removeListener(`abort`,t))}var le=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function U(e){return le[e]===1}var W=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;function ue(e){if(e.length>=12)return W.test(e);if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(le[e.charCodeAt(t)]!==1)return!1;return!0}var de=/[^\t\x20-\x7e\x80-\xff]/;function fe(e){return!de.test(e)}var pe=/^bytes (\d+)-(\d+)\/(\d+|\*)?$/;function me(e){if(e==null||e===``)return{start:0,end:null,size:null};if(!e)return null;let t=pe.exec(e);return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]&&t[3]!==`*`?parseInt(t[3]):null}:null}function G(e,t,n){return(e[a]??=[]).push([t,n]),e.on(t,n),e}function he(e){if(e[a]!=null){for(let[t,n]of e[a])e.removeListener(t,n);e[a]=null}return e}function ge(e,t,r){try{t.onResponseError(r),n(t.aborted)}catch(t){e.emit(`error`,t)}}var _e=process.platform===`win32`?(e,t)=>{if(!t.timeout)return y;let n=null,r=null,i=p.setFastTimeout(()=>{n=setImmediate(()=>{r=setImmediate(()=>ve(e.deref(),t))})},t.timeout);return()=>{p.clearFastTimeout(i),clearImmediate(n),clearImmediate(r)}}:(e,t)=>{if(!t.timeout)return y;let n=null,r=p.setFastTimeout(()=>{n=setImmediate(()=>{ve(e.deref(),t)})},t.timeout);return()=>{p.clearFastTimeout(r),clearImmediate(n)}};function ve(e,t){if(e==null)return;let n=`Connect Timeout Error`;Array.isArray(e.autoSelectFamilyAttemptedAddresses)?n+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(`, `)},`:n+=` (attempted address: ${t.hostname}:${t.port},`,n+=` timeout: ${t.timeout}ms)`,L(e,new h(n))}var K=null,ye=null;function be(e){if(e===K)return ye;let t=xe(e);return K=e,ye=t,t}function xe(e){if(e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`)switch(e[4]){case`:`:return`http:`;case`s`:if(e[5]===`:`)return`https:`}return e.slice(0,e.indexOf(`:`)+1)}var Se={__proto__:null,enumerable:!0},Ce={delete:`DELETE`,DELETE:`DELETE`,get:`GET`,GET:`GET`,head:`HEAD`,HEAD:`HEAD`,options:`OPTIONS`,OPTIONS:`OPTIONS`,post:`POST`,POST:`POST`,put:`PUT`,PUT:`PUT`,query:`QUERY`,QUERY:`QUERY`},we={...Ce,patch:`patch`,PATCH:`PATCH`};Object.setPrototypeOf(Ce,null),Object.setPrototypeOf(we,null),t.exports={kEnumerableProperty:Se,isDisturbed:V,isBlobLike:S,parseOrigin:O,parseURL:D,getServerName:A,isStream:x,isIterable:N,hasSafeIterator:P,isAsyncIterable:M,isDestroyed:I,headerNameToString:te,bufferToLowerCasedHeaderName:ne,addListener:G,removeAllListeners:he,errorRequest:ge,parseRawHeaders:z,toRawHeaders:ie,encodeRawHeaders:ae,parseHeaders:re,parseKeepAliveTimeout:ee,destroy:L,bodyLength:F,deepClone:j,isBuffer:oe,assertRequestHandler:B,getSocketInfo:H,isFormDataLike:se,pathHasQueryOrFragment:C,serializePathWithQuery:w,addAbortListener:ce,isValidHTTPToken:ue,isValidHeaderValue:fe,isTokenCharCode:U,parseRangeHeader:me,normalizedMethodRecordsBase:Ce,normalizedMethodRecords:we,isValidPort:T,isHttpOrHttpsPrefixed:E,safeHTTPMethods:Object.freeze([`GET`,`HEAD`,`OPTIONS`,`TRACE`]),wrapRequestBody:b,setupConnectTimeout:_e,getProtocolFromUrlString:be}})),MC=q(((e,t)=>{var{kConnected:n,kPending:r,kRunning:i,kSize:a,kFree:o,kQueued:s}=OC();t.exports={ClientStats:class{constructor(e){this.connected=e[n],this.pending=e[r],this.running=e[i],this.size=e[a]}},PoolStats:class{constructor(e){this.connected=e[n],this.free=e[o],this.pending=e[r],this.queued=e[s],this.running=e[i],this.size=e[a]}}}})),NC=q(((e,t)=>{var n=J(`node:diagnostics_channel`),r=J(`node:util`),i=r.debuglog(`undici`),a=r.debuglog(`fetch`),o=r.debuglog(`websocket`),s={beforeConnect:n.channel(`undici:client:beforeConnect`),connected:n.channel(`undici:client:connected`),connectError:n.channel(`undici:client:connectError`),sendHeaders:n.channel(`undici:client:sendHeaders`),create:n.channel(`undici:request:create`),bodySent:n.channel(`undici:request:bodySent`),bodyChunkSent:n.channel(`undici:request:bodyChunkSent`),bodyChunkReceived:n.channel(`undici:request:bodyChunkReceived`),headers:n.channel(`undici:request:headers`),trailers:n.channel(`undici:request:trailers`),error:n.channel(`undici:request:error`),open:n.channel(`undici:websocket:open`),close:n.channel(`undici:websocket:close`),socketError:n.channel(`undici:websocket:socket_error`),ping:n.channel(`undici:websocket:ping`),pong:n.channel(`undici:websocket:pong`),proxyConnected:n.channel(`undici:proxy:connected`)},c=!1;function l(e=i){if(!c){if(s.beforeConnect.hasSubscribers||s.connected.hasSubscribers||s.connectError.hasSubscribers||s.sendHeaders.hasSubscribers){c=!0;return}c=!0,n.subscribe(`undici:client:beforeConnect`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connecting to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),n.subscribe(`undici:client:connected`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connected to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),n.subscribe(`undici:client:connectError`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a},error:o}=t;e(`connection to %s%s using %s%s errored - %s`,a,i?`:${i}`:``,r,n,o.message)}),n.subscribe(`undici:client:sendHeaders`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`sending request to %s %s%s`,n,i,r)})}}var u=!1;function d(e=i){if(!u){if(s.headers.hasSubscribers||s.trailers.hasSubscribers||s.error.hasSubscribers){u=!0;return}u=!0,n.subscribe(`undici:request:headers`,t=>{let{request:{method:n,path:r,origin:i},response:{statusCode:a}}=t;e(`received response to %s %s%s - HTTP %d`,n,i,r,a)}),n.subscribe(`undici:request:trailers`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`trailers received from %s %s%s`,n,i,r)}),n.subscribe(`undici:request:error`,t=>{let{request:{method:n,path:r,origin:i},error:a}=t;e(`request to %s %s%s errored - %s`,n,i,r,a.message)})}}var f=!1;function p(e=o){if(!f){if(s.open.hasSubscribers||s.close.hasSubscribers||s.socketError.hasSubscribers||s.ping.hasSubscribers||s.pong.hasSubscribers){f=!0;return}f=!0,n.subscribe(`undici:websocket:open`,t=>{if(t.address!=null){let{address:n,port:r}=t.address;e(`connection opened %s%s`,n,r?`:${r}`:``)}else e(`connection opened`)}),n.subscribe(`undici:websocket:close`,t=>{let{websocket:n,code:r,reason:i}=t;e(`closed connection to %s - %s %s`,n.url,r,i)}),n.subscribe(`undici:websocket:socket_error`,t=>{e(`connection errored - %s`,t.message)}),n.subscribe(`undici:websocket:ping`,t=>{e(`ping received`)}),n.subscribe(`undici:websocket:pong`,t=>{e(`pong received`)})}}(i.enabled||a.enabled)&&(l(a.enabled?a:i),d(a.enabled?a:i)),o.enabled&&(l(i.enabled?i:o),p(o)),t.exports={channels:s}})),PC=q(((e,t)=>{var{InvalidArgumentError:n,NotSupportedError:r}=Q(),i=J(`node:assert`),{isValidHTTPToken:a,isValidHeaderValue:o,isStream:s,destroy:c,isBuffer:l,isFormDataLike:u,isIterable:d,hasSafeIterator:f,isBlobLike:p,serializePathWithQuery:m,parseHeaders:h,assertRequestHandler:g,getServerName:_,normalizedMethodRecords:v,getProtocolFromUrlString:y}=$(),{channels:b}=NC(),{headerNameLowerCasedRecord:x}=AC(),S=/[^\u0021-\u00ff]/;function C(e){if(typeof e!=`string`||e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return!0}var w=Symbol(`handler`),T=Symbol(`controller`),E=Symbol(`resume`),D=class{#e=!1;#t=null;#n=!1;#r;[E]=null;rawHeaders=null;rawTrailers=null;constructor(e){this.#r=e}pause(){this.#e=!0}resume(){this.#e&&(this.#e=!1,this[E]?.())}abort(e){this.#n||(this.#n=!0,this.#t=e,this.#r(e))}get aborted(){return this.#n}get reason(){return this.#t}get paused(){return this.#e}},O=class{constructor(e,{path:t,method:r,body:i,headers:h,query:x,idempotent:C,blocking:T,upgrade:E,headersTimeout:D,bodyTimeout:O,reset:A,expectContinue:j,servername:M,throwOnError:N,maxRedirections:P,typeOfService:F},I){if(typeof t!=`string`)throw new n(`path must be a string`);if(t[0]!==`/`&&!(t.startsWith(`http://`)||t.startsWith(`https://`))&&r!==`CONNECT`)throw new n(`path must be an absolute URL or start with a slash`);if(S.test(t))throw new n(`invalid request path`);if(typeof r!=`string`)throw new n(`method must be a string`);if(v[r]===void 0&&!a(r))throw new n(`invalid request method`);if(E&&typeof E!=`string`)throw new n(`upgrade must be a string`);if(E&&!o(E))throw new n(`invalid upgrade header`);if(D!=null&&(!Number.isFinite(D)||D<0))throw new n(`invalid headersTimeout`);if(O!=null&&(!Number.isFinite(O)||O<0))throw new n(`invalid bodyTimeout`);if(A!=null&&typeof A!=`boolean`)throw new n(`invalid reset`);if(j!=null&&typeof j!=`boolean`)throw new n(`invalid expectContinue`);if(N!=null)throw new n(`invalid throwOnError`);if(P!=null&&P!==0)throw new n(`maxRedirections is not supported, use the redirect interceptor`);if(F!=null&&(!Number.isInteger(F)||F<0||F>255))throw new n(`typeOfService must be an integer between 0 and 255`);if(this.headersTimeout=D,this.bodyTimeout=O,this.method=r,this.typeOfService=F,this.abort=null,i==null)this.body=null;else if(s(i)){this.body=i;let e=this.body._readableState;(!e||!e.autoDestroy)&&(this.endHandler=function(){c(this)},this.body.on(`end`,this.endHandler)),this.errorHandler=e=>{this.abort?this.abort(e):this.error=e},this.body.on(`error`,this.errorHandler)}else if(l(i))this.body=i.byteLength?i:null;else if(ArrayBuffer.isView(i))this.body=i.buffer.byteLength?Buffer.from(i.buffer,i.byteOffset,i.byteLength):null;else if(i instanceof ArrayBuffer)this.body=i.byteLength?Buffer.from(i):null;else if(typeof i==`string`)this.body=i.length?Buffer.from(i):null;else if(u(i)||d(i)||p(i))this.body=i;else throw new n(`body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable`);if(this.completed=!1,this.aborted=!1,this.upgrade=E||null,this.path=x?m(t,x):t,this.origin=e,this.protocol=y(e),this.idempotent=C??(r===`HEAD`||r===`GET`||r===`QUERY`),this.blocking=T??this.method!==`HEAD`,this.reset=A??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=j??!1,Array.isArray(h)){if(h.length%2!=0)throw new n(`headers array must be even`);for(let e=0;e<h.length;e+=2)k(this,h[e],h[e+1])}else if(h&&typeof h==`object`){if(f(h))for(let e of h){if(!Array.isArray(e)||e.length!==2)throw new n(`headers must be in key-value pair format`);k(this,e[0],e[1])}else{let e=Object.keys(h);for(let t=0;t<e.length;++t)k(this,e[t],h[e[t]])}}else if(h!=null)throw new n(`headers must be an object or an array`);g(I,r,E),this.servername=M||_(this.host)||null,this[w]=I,b.create.hasSubscribers&&b.create.publish({request:this})}onBodySent(e){if(b.bodyChunkSent.hasSubscribers&&b.bodyChunkSent.publish({request:this,chunk:e}),this[w].onBodySent)try{return this[w].onBodySent(e)}catch(e){this.abort(e)}}onRequestSent(){if(b.bodySent.hasSubscribers&&b.bodySent.publish({request:this}),this[w].onRequestSent)try{return this[w].onRequestSent()}catch(e){this.abort(e)}}onRequestStart(e,t){if(i(!this.aborted),i(!this.completed),this[T]=new D(e),this.error){this[T].abort(this.error);return}return this.abort=e,this[w].onRequestStart(this[T],t)}onResponseStarted(){return this[w].onResponseStarted?.()}onResponseStart(e,t,n,r){i(!this.aborted),i(!this.completed),b.headers.hasSubscribers&&b.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:r}});let a=this[T];a&&(a[E]=n,a.rawHeaders=t);let o=Array.isArray(t)?h(t):t;try{return this[w].onResponseStart?.(a,e,o,r),!a?.paused}catch(e){return this.abort(e),!1}}onResponseData(e){i(!this.aborted),i(!this.completed),b.bodyChunkReceived.hasSubscribers&&b.bodyChunkReceived.publish({request:this,chunk:e});let t=this[T];try{return this[w].onResponseData?.(t,e),!t?.paused}catch(e){return this.abort(e),!1}}onRequestUpgrade(e,t,n,r=``){this.onFinally(),i(!this.aborted),i(!this.completed),b.headers.hasSubscribers&&b.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:r}});let a=this[T];a&&(a.rawHeaders=t);let o=Array.isArray(t)?h(t):t,s=this[w].onRequestUpgrade?.(a,e,o,n);return this.aborted||(this.completed=!0,b.trailers.hasSubscribers&&b.trailers.publish({request:this,trailers:[]})),s}onResponseEnd(e){this.onFinally(),i(!this.aborted),i(!this.completed),this.completed=!0,b.trailers.hasSubscribers&&b.trailers.publish({request:this,trailers:e});let t=this[T];t&&(t.rawTrailers=e);let n=Array.isArray(e)?h(e):e;try{return this[w].onResponseEnd?.(t,n)}catch(e){this.onResponseError(e)}}onResponseError(e){if(this.onFinally(),b.error.hasSubscribers&&b.error.publish({request:this,error:e}),this.aborted)return;this.aborted=!0;let t=this[T];return this[w].onResponseError?.(t,e)}onFinally(){this.errorHandler&&=(this.body.off(`error`,this.errorHandler),null),this.endHandler&&=(this.body.off(`end`,this.endHandler),null)}addHeader(e,t){return k(this,e,t),this}};function k(e,t,i){if(i&&typeof i==`object`&&!Array.isArray(i))throw new n(`invalid ${t} header`);if(i===void 0)return;let s=x[t];if(s===void 0&&(s=t.toLowerCase(),x[s]===void 0&&!a(s)))throw new n(`invalid header key`);if(Array.isArray(i)){let e=[];for(let r=0;r<i.length;r++)if(typeof i[r]==`string`){if(!o(i[r]))throw new n(`invalid ${t} header`);e.push(i[r])}else if(i[r]===null)e.push(``);else if(typeof i[r]==`object`)throw new n(`invalid ${t} header`);else{let a=`${i[r]}`;if(!o(a))throw new n(`invalid ${t} header`);e.push(a)}i=e}else if(typeof i==`string`){if(!o(i))throw new n(`invalid ${t} header`)}else if(i===null)i=``;else if(i=`${i}`,!o(i))throw new n(`invalid ${t} header`);if(s===`host`){if(e.host!==null)throw new n(`duplicate host header`);if(typeof i!=`string`)throw new n(`invalid host header`);e.host=i}else if(s===`content-length`){if(e.contentLength!==null)throw new n(`duplicate content-length header`);if(!C(i))throw new n(`invalid content-length header`);e.contentLength=parseInt(i,10)}else if(e.contentType===null&&s===`content-type`)e.contentType=i,e.headers.push(t,i);else if(s===`transfer-encoding`||s===`keep-alive`||s===`upgrade`)throw new n(`invalid ${s} header`);else if(s===`connection`){let t=typeof i==`string`?i:null;if(t===null)throw new n(`invalid connection header`);for(let r of t.toLowerCase().split(`,`)){let t=r.trim();if(!a(t))throw new n(`invalid connection header`);t===`close`&&(e.reset=!0)}}else if(s===`expect`)throw new r(`expect header not supported`);else e.headers.push(t,i)}t.exports=O})),FC=q(((e,t)=>{var n=J(`node:events`),{kOriginless:r,kUrl:i}=OC();t.exports=class extends n{dispatch(){throw Error(`not implemented`)}close(){throw Error(`not implemented`)}destroy(){throw Error(`not implemented`)}compose(...e){let t=Array.isArray(e[0])?e[0]:e,n=this[r]===!0?null:this[i]?.origin,a=this.dispatch.bind(this);for(let e of t)if(e!=null){if(typeof e!=`function`)throw TypeError(`invalid interceptor, expected function received ${typeof e}`);if(a=e(a,n),a==null||typeof a!=`function`||a.length!==2)throw TypeError(`invalid interceptor`)}let o=a,s=this;return a=function(e,t){return e&&typeof e==`object`&&!e.origin&&s[i]&&(e=Object.assign({},e,{origin:s[i].origin})),o(e,t)},new Proxy(this,{get:(e,t)=>t===`dispatch`?a:e[t]})}}})),IC=q(((e,t)=>{var n=J(`node:buffer`),r=FC(),{ClientDestroyedError:i,ClientClosedError:a,InvalidArgumentError:o}=Q(),{kDestroy:s,kClose:c,kClosed:l,kDestroyed:u,kDispatch:d}=OC(),f=Symbol(`onDestroyed`),p=Symbol(`onClosed`),m=Symbol(`webSocketOptions`),h=Symbol(`eventSourceOptions`);t.exports=class extends r{[u]=!1;[f]=null;[l]=!1;[p]=null;constructor(e){super(),this[m]=e?.webSocket??{},this[h]=e?.eventSource??{}}get webSocketOptions(){return{maxFragments:this[m].maxFragments??131072,maxPayloadSize:this[m].maxPayloadSize??134217728}}get eventSourceOptions(){return{maxEventSize:this[h].maxEventSize??n.kStringMaxLength}}get destroyed(){return this[u]}get closed(){return this[l]}close(e){if(e===void 0)return new Promise((e,t)=>{this.close((n,r)=>n?t(n):e(r))});if(typeof e!=`function`)throw new o(`invalid callback`);if(this[u]){let t=new i;queueMicrotask(()=>e(t,null));return}if(this[l]){this[p]?this[p].push(e):queueMicrotask(()=>e(null,null));return}this[l]=!0,this[p]??=[],this[p].push(e);let t=()=>{let e=this[p];this[p]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[c]().then(()=>this.destroy()).then(()=>queueMicrotask(t))}destroy(e,t){if(typeof e==`function`&&(t=e,e=null),t===void 0)return new Promise((t,n)=>{this.destroy(e,(e,r)=>e?n(e):t(r))});if(typeof t!=`function`)throw new o(`invalid callback`);if(this[u]){this[f]?this[f].push(t):queueMicrotask(()=>t(null,null));return}e||=new i,this[u]=!0,this[f]??=[],this[f].push(t);let n=()=>{let e=this[f];this[f]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[s](e).then(()=>queueMicrotask(n))}dispatch(e,t){if(!t||typeof t!=`object`)throw new o(`handler must be an object`);try{if(!e||typeof e!=`object`)throw new o(`opts must be an object.`);if(e.dispatcher)throw new o(`opts.dispatcher is not supported by instance methods. Pass opts.dispatcher to the top-level undici functions or call the dispatcher instance method directly.`);if(this[u]||this[f])throw new i;if(this[l])throw new a;return this[d](e,t)}catch(e){if(typeof t.onResponseError!=`function`)throw e;return t.onResponseError(null,e),!1}}}})),LC=q(((e,t)=>{var n=J(`node:net`),r=J(`node:assert`),i=$(),{InvalidArgumentError:a,ConnectTimeoutError:o}=Q(),s,c=class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry(e=>{if(this._sessionCache.size<this._maxCachedSessions)return;let t=this._sessionCache.get(e);t!==void 0&&t.deref()===void 0&&this._sessionCache.delete(e)})}get(e){let t=this._sessionCache.get(e);return t?t.deref():null}set(e,t){if(this._maxCachedSessions!==0){if(this._sessionCache.has(e))this._sessionCache.delete(e);else if(this._sessionCache.size>=this._maxCachedSessions){for(let[e,t]of this._sessionCache)if(t.deref()===void 0){this._sessionCache.delete(e);return}let e=this._sessionCache.keys().next();e.done||this._sessionCache.delete(e.value)}this._sessionCache.set(e,new WeakRef(t)),this._sessionRegistry.register(t,e)}}};function l({allowH2:e,preferH2:t,useH2c:o,maxCachedSessions:l,socketPath:d,timeout:f,session:p,...m}){if(l!=null&&(!Number.isInteger(l)||l<0))throw new a(`maxCachedSessions must be a positive integer or zero`);let h={path:d,...m},g=new c(l??100);return f??=1e4,e??=!0,function({hostname:a,host:c,protocol:l,port:d,servername:m,localAddress:_,httpSocket:v},y){let b;if(l===`https:`){s||=J(`node:tls`),m=m||h.servername||i.getServerName(c)||null;let n=m||a;r(n);let o=p||g.get(n)||null;d||=443,b=s.connect({highWaterMark:16384,...h,servername:m,session:o,localAddress:_,ALPNProtocols:e?t?[`h2`,`http/1.1`]:[`http/1.1`,`h2`]:[`http/1.1`],socket:v,port:d,host:a}),b.on(`session`,function(e){g.set(n,e)})}else{r(!v,`httpSocket can only be sent on TLS update`),d||=80;let e={highWaterMark:65536,...h,localAddress:_,port:d,host:a},t=n.isIP(a);t!==0&&m&&m!==a&&(e.host=m,e.lookup=(e,n,r)=>{n.all?r(null,[{address:a,family:t}]):r(null,a,t)}),b=n.connect(e),o===!0&&(b.alpnProtocol=`h2`)}if(h.keepAlive==null||h.keepAlive){let e=h.keepAliveInitialDelay===void 0?6e4:h.keepAliveInitialDelay;b.setKeepAlive(!0,e)}let x=i.setupConnectTimeout(new WeakRef(b),{timeout:f,hostname:a,port:d});return b.setNoDelay(!0).once(l===`https:`?`secureConnect`:`connect`,function(){if(queueMicrotask(x),y){let e=y;y=null,e(null,this)}}).on(`error`,function(e){if(queueMicrotask(x),y){let t=y;y=null,t(u(e,this,{timeout:f,hostname:a,port:d}))}}),b}}function u(e,t,n){if(e instanceof AggregateError&&(e.code===`ETIMEDOUT`||e.errors.some(e=>e!=null&&e.code===`ETIMEDOUT`))){let r=`Connect Timeout Error`;Array.isArray(t.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${t.autoSelectFamilyAttemptedAddresses.join(`, `)},`:r+=` (attempted address: ${n.hostname}:${n.port},`,r+=` timeout: ${n.timeout}ms)`;let i=new o(r);return i.cause=e,i}return e}t.exports=l})),RC=q((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.enumToMap=t;function t(e,t=[],n=[]){let r=(t?.length??0)===0,i=(n?.length??0)===0;return Object.fromEntries(Object.entries(e).filter(([,e])=>typeof e==`number`&&(r||t.includes(e))&&(i||!n.includes(e))))}})),zC=q((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SPECIAL_HEADERS=e.MINOR=e.MAJOR=e.HTAB_SP_VCHAR_OBS_TEXT=e.QUOTED_STRING=e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS=e.TOKEN=e.HEX=e.URL_CHAR=e.USERINFO_CHARS=e.MARK=e.ALPHANUM=e.NUM=e.HEX_MAP=e.NUM_MAP=e.ALPHA=e.STATUSES_HTTP=e.H_METHOD_MAP=e.METHOD_MAP=e.METHODS_RTSP=e.METHODS_ICE=e.METHODS_HTTP=e.HEADER_STATE=e.FINISH=e.STATUSES=e.METHODS=e.LENIENT_FLAGS=e.FLAGS=e.TYPE=e.ERROR=void 0;var t=RC();e.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38},e.TYPE={BOTH:0,REQUEST:1,RESPONSE:2},e.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512},e.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512},e.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46},e.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599},e.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2},e.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8},e.METHODS_HTTP=[e.METHODS.DELETE,e.METHODS.GET,e.METHODS.HEAD,e.METHODS.POST,e.METHODS.PUT,e.METHODS.CONNECT,e.METHODS.OPTIONS,e.METHODS.TRACE,e.METHODS.COPY,e.METHODS.LOCK,e.METHODS.MKCOL,e.METHODS.MOVE,e.METHODS.PROPFIND,e.METHODS.PROPPATCH,e.METHODS.SEARCH,e.METHODS.UNLOCK,e.METHODS.BIND,e.METHODS.REBIND,e.METHODS.UNBIND,e.METHODS.ACL,e.METHODS.REPORT,e.METHODS.MKACTIVITY,e.METHODS.CHECKOUT,e.METHODS.MERGE,e.METHODS[`M-SEARCH`],e.METHODS.NOTIFY,e.METHODS.SUBSCRIBE,e.METHODS.UNSUBSCRIBE,e.METHODS.PATCH,e.METHODS.PURGE,e.METHODS.MKCALENDAR,e.METHODS.LINK,e.METHODS.UNLINK,e.METHODS.PRI,e.METHODS.SOURCE,e.METHODS.QUERY],e.METHODS_ICE=[e.METHODS.SOURCE],e.METHODS_RTSP=[e.METHODS.OPTIONS,e.METHODS.DESCRIBE,e.METHODS.ANNOUNCE,e.METHODS.SETUP,e.METHODS.PLAY,e.METHODS.PAUSE,e.METHODS.TEARDOWN,e.METHODS.GET_PARAMETER,e.METHODS.SET_PARAMETER,e.METHODS.REDIRECT,e.METHODS.RECORD,e.METHODS.FLUSH,e.METHODS.GET,e.METHODS.POST],e.METHOD_MAP=(0,t.enumToMap)(e.METHODS),e.H_METHOD_MAP=Object.fromEntries(Object.entries(e.METHODS).filter(([e])=>e.startsWith(`H`))),e.STATUSES_HTTP=[e.STATUSES.CONTINUE,e.STATUSES.SWITCHING_PROTOCOLS,e.STATUSES.PROCESSING,e.STATUSES.EARLY_HINTS,e.STATUSES.RESPONSE_IS_STALE,e.STATUSES.REVALIDATION_FAILED,e.STATUSES.DISCONNECTED_OPERATION,e.STATUSES.HEURISTIC_EXPIRATION,e.STATUSES.MISCELLANEOUS_WARNING,e.STATUSES.OK,e.STATUSES.CREATED,e.STATUSES.ACCEPTED,e.STATUSES.NON_AUTHORITATIVE_INFORMATION,e.STATUSES.NO_CONTENT,e.STATUSES.RESET_CONTENT,e.STATUSES.PARTIAL_CONTENT,e.STATUSES.MULTI_STATUS,e.STATUSES.ALREADY_REPORTED,e.STATUSES.TRANSFORMATION_APPLIED,e.STATUSES.IM_USED,e.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,e.STATUSES.MULTIPLE_CHOICES,e.STATUSES.MOVED_PERMANENTLY,e.STATUSES.FOUND,e.STATUSES.SEE_OTHER,e.STATUSES.NOT_MODIFIED,e.STATUSES.USE_PROXY,e.STATUSES.SWITCH_PROXY,e.STATUSES.TEMPORARY_REDIRECT,e.STATUSES.PERMANENT_REDIRECT,e.STATUSES.BAD_REQUEST,e.STATUSES.UNAUTHORIZED,e.STATUSES.PAYMENT_REQUIRED,e.STATUSES.FORBIDDEN,e.STATUSES.NOT_FOUND,e.STATUSES.METHOD_NOT_ALLOWED,e.STATUSES.NOT_ACCEPTABLE,e.STATUSES.PROXY_AUTHENTICATION_REQUIRED,e.STATUSES.REQUEST_TIMEOUT,e.STATUSES.CONFLICT,e.STATUSES.GONE,e.STATUSES.LENGTH_REQUIRED,e.STATUSES.PRECONDITION_FAILED,e.STATUSES.PAYLOAD_TOO_LARGE,e.STATUSES.URI_TOO_LONG,e.STATUSES.UNSUPPORTED_MEDIA_TYPE,e.STATUSES.RANGE_NOT_SATISFIABLE,e.STATUSES.EXPECTATION_FAILED,e.STATUSES.IM_A_TEAPOT,e.STATUSES.PAGE_EXPIRED,e.STATUSES.ENHANCE_YOUR_CALM,e.STATUSES.MISDIRECTED_REQUEST,e.STATUSES.UNPROCESSABLE_ENTITY,e.STATUSES.LOCKED,e.STATUSES.FAILED_DEPENDENCY,e.STATUSES.TOO_EARLY,e.STATUSES.UPGRADE_REQUIRED,e.STATUSES.PRECONDITION_REQUIRED,e.STATUSES.TOO_MANY_REQUESTS,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,e.STATUSES.LOGIN_TIMEOUT,e.STATUSES.NO_RESPONSE,e.STATUSES.RETRY_WITH,e.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,e.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,e.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,e.STATUSES.INVALID_X_FORWARDED_FOR,e.STATUSES.REQUEST_HEADER_TOO_LARGE,e.STATUSES.SSL_CERTIFICATE_ERROR,e.STATUSES.SSL_CERTIFICATE_REQUIRED,e.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,e.STATUSES.INVALID_TOKEN,e.STATUSES.CLIENT_CLOSED_REQUEST,e.STATUSES.INTERNAL_SERVER_ERROR,e.STATUSES.NOT_IMPLEMENTED,e.STATUSES.BAD_GATEWAY,e.STATUSES.SERVICE_UNAVAILABLE,e.STATUSES.GATEWAY_TIMEOUT,e.STATUSES.HTTP_VERSION_NOT_SUPPORTED,e.STATUSES.VARIANT_ALSO_NEGOTIATES,e.STATUSES.INSUFFICIENT_STORAGE,e.STATUSES.LOOP_DETECTED,e.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,e.STATUSES.NOT_EXTENDED,e.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,e.STATUSES.WEB_SERVER_UNKNOWN_ERROR,e.STATUSES.WEB_SERVER_IS_DOWN,e.STATUSES.CONNECTION_TIMEOUT,e.STATUSES.ORIGIN_IS_UNREACHABLE,e.STATUSES.TIMEOUT_OCCURED,e.STATUSES.SSL_HANDSHAKE_FAILED,e.STATUSES.INVALID_SSL_CERTIFICATE,e.STATUSES.RAILGUN_ERROR,e.STATUSES.SITE_IS_OVERLOADED,e.STATUSES.SITE_IS_FROZEN,e.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,e.STATUSES.NETWORK_READ_TIMEOUT,e.STATUSES.NETWORK_CONNECT_TIMEOUT],e.ALPHA=[];for(let t=65;t<=90;t++)e.ALPHA.push(String.fromCharCode(t)),e.ALPHA.push(String.fromCharCode(t+32));e.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},e.NUM=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],e.ALPHANUM=e.ALPHA.concat(e.NUM),e.MARK=[`-`,`_`,`.`,`!`,`~`,`*`,`'`,`(`,`)`],e.USERINFO_CHARS=e.ALPHANUM.concat(e.MARK).concat([`%`,`;`,`:`,`&`,`=`,`+`,`$`,`,`]),e.URL_CHAR=`!"$%&'()*+,-./:;<=>@[\\]^_\`{|}~`.split(``).concat(e.ALPHANUM),e.HEX=e.NUM.concat([`a`,`b`,`c`,`d`,`e`,`f`,`A`,`B`,`C`,`D`,`E`,`F`]),e.TOKEN=[`!`,`#`,`$`,`%`,`&`,`'`,`*`,`+`,`-`,`.`,`^`,`_`,"`",`|`,`~`].concat(e.ALPHANUM),e.HEADER_CHARS=[` `];for(let t=32;t<=255;t++)t!==127&&e.HEADER_CHARS.push(t);e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS.filter(e=>e!==44),e.QUOTED_STRING=[` `,` `];for(let t=33;t<=255;t++)t!==34&&t!==92&&e.QUOTED_STRING.push(t);e.HTAB_SP_VCHAR_OBS_TEXT=[` `,` `];for(let t=33;t<=126;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);for(let t=128;t<=255;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);e.MAJOR=e.NUM_MAP,e.MINOR=e.MAJOR,e.SPECIAL_HEADERS={connection:e.HEADER_STATE.CONNECTION,"content-length":e.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":e.HEADER_STATE.CONNECTION,"transfer-encoding":e.HEADER_STATE.TRANSFER_ENCODING,upgrade:e.HEADER_STATE.UPGRADE},e.default={ERROR:e.ERROR,TYPE:e.TYPE,FLAGS:e.FLAGS,LENIENT_FLAGS:e.LENIENT_FLAGS,METHODS:e.METHODS,STATUSES:e.STATUSES,FINISH:e.FINISH,HEADER_STATE:e.HEADER_STATE,ALPHA:e.ALPHA,NUM_MAP:e.NUM_MAP,HEX_MAP:e.HEX_MAP,NUM:e.NUM,ALPHANUM:e.ALPHANUM,MARK:e.MARK,USERINFO_CHARS:e.USERINFO_CHARS,URL_CHAR:e.URL_CHAR,HEX:e.HEX,TOKEN:e.TOKEN,HEADER_CHARS:e.HEADER_CHARS,CONNECTION_TOKEN_CHARS:e.CONNECTION_TOKEN_CHARS,QUOTED_STRING:e.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:e.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:e.MAJOR,MINOR:e.MINOR,SPECIAL_HEADERS:e.SPECIAL_HEADERS,METHODS_HTTP:e.METHODS_HTTP,METHODS_ICE:e.METHODS_ICE,METHODS_RTSP:e.METHODS_RTSP,METHOD_MAP:e.METHOD_MAP,H_METHOD_MAP:e.H_METHOD_MAP,STATUSES_HTTP:e.STATUSES_HTTP}})),BC=q(((e,t)=>{var{Buffer:n}=J(`node:buffer`),r=`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASECDKACCwJAAkACQCABLQAAQQprDgQBAgIAAgsgAUEBaiEBDAILIAFBAWohAQwBCyADLQAuQcAAcUUNAQtBACEAAkAgAygCOCICRQ0AIAIoAjwiAkUNACADIAIRAAAhAAsgAEUNoAEgAEEVRgRAIANB2QA2AhwgAyABNgIUIANBtxo2AhAgA0EVNgIMQQAhAgyfAgsgA0EANgIcIAMgATYCFCADQYANNgIQIANBGzYCDEEAIQIMngILIANBADYCHCADIAE2AhQgA0HcKDYCECADQQI2AgxBACECDJ0CCyABIARHBEAgA0EMNgIIIAMgATYCBEG/ASECDIQCC0HYASECDJwCCyABIARGBEBB1wEhAgycAgsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEtAABBwQBrDhUAAQIDWgQFBlpaWgcICQoLDA0ODxBaCyABQQFqIQFB+wAhAgySAgsgAUEBaiEBQfwAIQIMkQILIAFBAWohAUGBASECDJACCyABQQFqIQFBhQEhAgyPAgsgAUEBaiEBQYYBIQIMjgILIAFBAWohAUGJASECDI0CCyABQQFqIQFBigEhAgyMAgsgAUEBaiEBQY0BIQIMiwILIAFBAWohAUGWASECDIoCCyABQQFqIQFBlwEhAgyJAgsgAUEBaiEBQZgBIQIMiAILIAFBAWohAUGlASECDIcCCyABQQFqIQFBpgEhAgyGAgsgAUEBaiEBQawBIQIMhQILIAFBAWohAUG0ASECDIQCCyABQQFqIQFBtwEhAgyDAgsgAUEBaiEBQb4BIQIMggILIAEgBEYEQEHWASECDJsCCyABLQAAQc4ARw1IIAFBAWohAUG9ASECDIECCyABIARGBEBB1QEhAgyaAgsCQAJAAkAgAS0AAEHCAGsOEgBKSkpKSkpKSkoBSkpKSkpKAkoLIAFBAWohAUG4ASECDIICCyABQQFqIQFBuwEhAgyBAgsgAUEBaiEBQbwBIQIMgAILQdQBIQIgASAERg2YAiADKAIAIgAgBCABa2ohBSABIABrQQdqIQYCQANAIAEtAAAgAEGo1QBqLQAARw1FIABBB0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAgsgA0EANgIAIAZBAWohAUEbDEULIAEgBEYEQEHTASECDJgCCwJAAkAgAS0AAEHJAGsOBwBHR0dHRwFHCyABQQFqIQFBuQEhAgz/AQsgAUEBaiEBQboBIQIM/gELQdIBIQIgASAERg2WAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw1DIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyXAgsgA0EANgIAIAZBAWohAUEPDEMLQdEBIQIgASAERg2VAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw1CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyWAgsgA0EANgIAIAZBAWohAUEgDEILQdABIQIgASAERg2UAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw1BIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyVAgsgA0EANgIAIAZBAWohAUESDEELIAEgBEYEQEHPASECDJQCCwJAAkAgAS0AAEHFAGsODgBDQ0NDQ0NDQ0NDQ0MBQwsgAUEBaiEBQbUBIQIM+wELIAFBAWohAUG2ASECDPoBC0HOASECIAEgBEYNkgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBntUAai0AAEcNPyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMkwILIANBADYCACAGQQFqIQFBBww/C0HNASECIAEgBEYNkQIgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBmNUAai0AAEcNPiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMkgILIANBADYCACAGQQFqIQFBKAw+CyABIARGBEBBzAEhAgyRAgsCQAJAAkAgAS0AAEHFAGsOEQBBQUFBQUFBQUEBQUFBQUECQQsgAUEBaiEBQbEBIQIM+QELIAFBAWohAUGyASECDPgBCyABQQFqIQFBswEhAgz3AQtBywEhAiABIARGDY8CIAMoAgAiACAEIAFraiEFIAEgAGtBBmohBgJAA0AgAS0AACAAQZHVAGotAABHDTwgAEEGRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJACCyADQQA2AgAgBkEBaiEBQRoMPAtBygEhAiABIARGDY4CIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQY3VAGotAABHDTsgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADI8CCyADQQA2AgAgBkEBaiEBQSEMOwsgASAERgRAQckBIQIMjgILAkACQCABLQAAQcEAaw4UAD09PT09PT09PT09PT09PT09PQE9CyABQQFqIQFBrQEhAgz1AQsgAUEBaiEBQbABIQIM9AELIAEgBEYEQEHIASECDI0CCwJAAkAgAS0AAEHVAGsOCwA8PDw8PDw8PDwBPAsgAUEBaiEBQa4BIQIM9AELIAFBAWohAUGvASECDPMBC0HHASECIAEgBEYNiwIgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNOCAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjAILIANBADYCACAGQQFqIQFBKgw4CyABIARGBEBBxgEhAgyLAgsgAS0AAEHQAEcNOCABQQFqIQFBJQw3C0HFASECIAEgBEYNiQIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBgdUAai0AAEcNNiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMigILIANBADYCACAGQQFqIQFBDgw2CyABIARGBEBBxAEhAgyJAgsgAS0AAEHFAEcNNiABQQFqIQFBqwEhAgzvAQsgASAERgRAQcMBIQIMiAILAkACQAJAAkAgAS0AAEHCAGsODwABAjk5OTk5OTk5OTk5AzkLIAFBAWohAUGnASECDPEBCyABQQFqIQFBqAEhAgzwAQsgAUEBaiEBQakBIQIM7wELIAFBAWohAUGqASECDO4BC0HCASECIAEgBEYNhgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABB/tQAai0AAEcNMyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhwILIANBADYCACAGQQFqIQFBFAwzC0HBASECIAEgBEYNhQIgAygCACIAIAQgAWtqIQUgASAAa0EEaiEGAkADQCABLQAAIABB+dQAai0AAEcNMiAAQQRGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhgILIANBADYCACAGQQFqIQFBKwwyC0HAASECIAEgBEYNhAIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABB9tQAai0AAEcNMSAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhQILIANBADYCACAGQQFqIQFBLAwxC0G/ASECIAEgBEYNgwIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBodUAai0AAEcNMCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhAILIANBADYCACAGQQFqIQFBEQwwC0G+ASECIAEgBEYNggIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABB8tQAai0AAEcNLyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMgwILIANBADYCACAGQQFqIQFBLgwvCyABIARGBEBBvQEhAgyCAgsCQAJAAkACQAJAIAEtAABBwQBrDhUANDQ0NDQ0NDQ0NAE0NAI0NAM0NAQ0CyABQQFqIQFBmwEhAgzsAQsgAUEBaiEBQZwBIQIM6wELIAFBAWohAUGdASECDOoBCyABQQFqIQFBogEhAgzpAQsgAUEBaiEBQaQBIQIM6AELIAEgBEYEQEG8ASECDIECCwJAAkAgAS0AAEHSAGsOAwAwATALIAFBAWohAUGjASECDOgBCyABQQFqIQFBBAwtC0G7ASECIAEgBEYN/wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABB8NQAai0AAEcNLCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMgAILIANBADYCACAGQQFqIQFBHQwsCyABIARGBEBBugEhAgz/AQsCQAJAIAEtAABByQBrDgcBLi4uLi4ALgsgAUEBaiEBQaEBIQIM5gELIAFBAWohAUEiDCsLIAEgBEYEQEG5ASECDP4BCyABLQAAQdAARw0rIAFBAWohAUGgASECDOQBCyABIARGBEBBuAEhAgz9AQsCQAJAIAEtAABBxgBrDgsALCwsLCwsLCwsASwLIAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,i;Object.defineProperty(t,"exports",{get:()=>i||=n.from(r,`base64`)})})),VC=q(((e,t)=>{var{Buffer:n}=J(`node:buffer`),r=`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,i;Object.defineProperty(t,"exports",{get:()=>i||=n.from(r,`base64`)})})),HC=q(((e,t)=>{var n=[`GET`,`HEAD`,`POST`],r=new Set(n),i=[101,204,205,304],a=[301,302,303,307,308],o=new Set(a),s=`1.7.9.11.13.15.17.19.20.21.22.23.25.37.42.43.53.69.77.79.87.95.101.102.103.104.109.110.111.113.115.117.119.123.135.137.139.143.161.179.389.427.465.512.513.514.515.526.530.531.532.540.548.554.556.563.587.601.636.989.990.993.995.1719.1720.1723.2049.3659.4045.4190.5060.5061.6000.6566.6665.6666.6667.6668.6669.6679.6697.10080`.split(`.`),c=new Set(s),l=[`no-referrer`,`no-referrer-when-downgrade`,`same-origin`,`origin`,`strict-origin`,`origin-when-cross-origin`,`strict-origin-when-cross-origin`,`unsafe-url`],u=[``,...l],d=new Set(l),f=[`follow`,`manual`,`error`],p=[`GET`,`HEAD`,`OPTIONS`,`TRACE`,`QUERY`],m=new Set(p),h=[`navigate`,`same-origin`,`no-cors`,`cors`],g=[`omit`,`same-origin`,`include`],_=[`default`,`no-store`,`reload`,`no-cache`,`force-cache`,`only-if-cached`],v=[`content-encoding`,`content-language`,`content-location`,`content-type`,`content-length`],y=[`half`],b=[`CONNECT`,`TRACE`,`TRACK`],x=new Set(b),S=[`audio`,`audioworklet`,`font`,`image`,`manifest`,`paintworklet`,`script`,`style`,`track`,`video`,`xslt`,``];t.exports={subresource:S,forbiddenMethods:b,requestBodyHeader:v,referrerPolicy:u,requestRedirect:f,requestMode:h,requestCredentials:g,requestCache:_,redirectStatus:a,corsSafeListedMethods:n,nullBodyStatus:i,safeMethods:p,badPorts:s,requestDuplex:y,subresourceSet:new Set(S),badPortsSet:c,redirectStatusSet:o,corsSafeListedMethodsSet:r,safeMethodsSet:m,forbiddenMethodsSet:x,referrerPolicyTokens:d}})),UC=q(((e,t)=>{var n=Symbol.for(`undici.globalOrigin.1`);function r(){return globalThis[n]}function i(e){if(e===void 0){Object.defineProperty(globalThis,n,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`)throw TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,n,{value:t,writable:!0,enumerable:!1,configurable:!1})}t.exports={getGlobalOrigin:r,setGlobalOrigin:i}})),WC=q(((e,t)=>{var n=new TextDecoder;function r(e){return e.length===0?``:(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),n.decode(e))}t.exports={utf8DecodeBytes:r}})),GC=q(((e,t)=>{var n=J(`node:assert`),{utf8DecodeBytes:r}=WC();function i(e,t,n){let r=``;for(;n.position<t.length&&e(t[n.position]);)r+=t[n.position],n.position++;return r}function a(e,t,n){let r=t.indexOf(e,n.position),i=n.position;return r===-1?(n.position=t.length,t.slice(i)):(n.position=r,t.slice(i,n.position))}var o=/[\u0009\u000A\u000C\u000D\u0020]/g;function s(e){e=e.replace(o,``);let t=e.length;if(t%4==0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4==1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return`failure`;let n=Buffer.from(e,`base64`);return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}function c(e){return e===9||e===10||e===12||e===13||e===32}function l(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let n=``,r=0,i=65535;for(;r<t;)r+i>t&&(i=t-r),n+=String.fromCharCode.apply(null,e.subarray(r,r+=i));return n}var u=/[^\x00-\xFF]/;function d(e){return n(!u.test(e)),e}var f=/[^\x00-\x7F]/;function p(e){return f.test(e)?e.replace(/[A-Z]+/g,e=>e.toLowerCase()):e.toLowerCase()}function m(e){return JSON.parse(r(e))}function h(e,t=!0,n=!0){return g(e,t,n,c)}function g(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e.charCodeAt(i));)i++;if(n)for(;a>=i&&r(e.charCodeAt(a));)a--;return i===0&&a===e.length-1?e:e.slice(i,a+1)}function _(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`Value is not JSON serializable`);return n(typeof t==`string`),t}t.exports={asciiLowercase:p,collectASequenceOfCodePoints:i,collectASequenceOfCodePointsFast:a,forgivingBase64:s,isASCIIWhitespace:c,isomorphicDecode:l,isomorphicEncode:d,parseJSONFromBytes:m,removeASCIIWhitespace:h,removeChars:g,serializeJavascriptValueToJSONString:_}})),KC=q(((e,t)=>{var n=J(`node:assert`),{asciiLowercase:r,forgivingBase64:i,collectASequenceOfCodePoints:a,collectASequenceOfCodePointsFast:o,isomorphicDecode:s,removeASCIIWhitespace:c,removeChars:l}=GC(),u=new TextEncoder,d=/^[-!#$%&'*+.^_`|~A-Za-z0-9]+$/u,f=/[\u000A\u000D\u0009\u0020]/u,p=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function m(e){n(e.protocol===`data:`);let t=h(e,!0);t=t.slice(5);let r={position:0},a=o(`,`,t,r),l=a.length;if(a=c(a,!0,!0),r.position>=t.length)return`failure`;r.position++;let u=g(t.slice(l+1));if(/;\u0020*[Bb][Aa][Ss][Ee]64$/u.test(a)){if(u=i(s(u)),u===`failure`)return`failure`;a=a.slice(0,-6),a=a.replace(/(\u0020+)$/u,``),a=a.slice(0,-1)}a.startsWith(`;`)&&(a=`text/plain`+a);let d=b(a);return d===`failure`&&(d=b(`text/plain;charset=US-ASCII`)),{mimeType:d,body:u}}function h(e,t=!1){if(!t)return e.href;let n=e.href,r=e.hash.length,i=r===0?n:n.substring(0,n.length-r);return!r&&n.endsWith(`#`)?i.slice(0,-1):i}function g(e){return y(u.encode(e))}function _(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function v(e){return e>=48&&e<=57?e-48:(e&223)-55}function y(e){let t=e.length,n=new Uint8Array(t),r=0,i=0;for(;i<t;){let t=e[i];t===37?t===37&&!(_(e[i+1])&&_(e[i+2]))?n[r++]=37:(n[r++]=v(e[i+1])<<4|v(e[i+2]),i+=2):n[r++]=t,++i}return t===r?n:n.subarray(0,r)}function b(e){e=w(e,!0,!0);let t={position:0},n=o(`/`,e,t);if(n.length===0||!d.test(n)||t.position>=e.length)return`failure`;t.position++;let i=o(`;`,e,t);if(i=w(i,!1,!0),i.length===0||!d.test(i))return`failure`;let s=r(n),c=r(i),l={type:s,subtype:c,parameters:new Map,essence:`${s}/${c}`};for(;t.position<e.length;){t.position++,a(e=>f.test(e),e,t);let n=a(e=>e!==`;`&&e!==`=`,e,t);if(n=r(n),t.position<e.length){if(e[t.position]===`;`)continue;t.position++}if(t.position>=e.length)break;let i=null;if(e[t.position]===`"`)i=x(e,t,!0),o(`;`,e,t);else if(i=o(`;`,e,t),i=w(i,!1,!0),i.length===0)continue;n.length!==0&&d.test(n)&&(i.length===0||p.test(i))&&!l.parameters.has(n)&&l.parameters.set(n,i)}return l}function x(e,t,r=!1){let i=t.position,o=``;for(n(e[t.position]===`"`),t.position++;o+=a(e=>e!==`"`&&e!==`\\`,e,t),!(t.position>=e.length);){let r=e[t.position];if(t.position++,r===`\\`){if(t.position>=e.length){o+=`\\`;break}o+=e[t.position],t.position++}else{n(r===`"`);break}}return r?o:e.slice(i,t.position)}function S(e){n(e!==`failure`);let{parameters:t,essence:r}=e,i=r;for(let[e,n]of t.entries())i+=`;`,i+=e,i+=`=`,d.test(n)||(n=n.replace(/[\\"]/gu,`\\$&`),n=`"`+n,n+=`"`),i+=n;return i}function C(e){return e===13||e===10||e===9||e===32}function w(e,t=!0,n=!0){return l(e,t,n,C)}function T(e){switch(e.essence){case`application/ecmascript`:case`application/javascript`:case`application/x-ecmascript`:case`application/x-javascript`:case`text/ecmascript`:case`text/javascript`:case`text/javascript1.0`:case`text/javascript1.1`:case`text/javascript1.2`:case`text/javascript1.3`:case`text/javascript1.4`:case`text/javascript1.5`:case`text/jscript`:case`text/livescript`:case`text/x-ecmascript`:case`text/x-javascript`:return`text/javascript`;case`application/json`:case`text/json`:return`application/json`;case`image/svg+xml`:return`image/svg+xml`;case`text/xml`:case`application/xml`:return`application/xml`}return e.subtype.endsWith(`+json`)?`application/json`:e.subtype.endsWith(`+xml`)?`application/xml`:``}t.exports={dataURLProcessor:m,URLSerializer:h,stringPercentDecode:g,parseMIMEType:b,collectAnHTTPQuotedString:x,serializeAMimeType:S,removeHTTPWhitespace:w,minimizeSupportedMimeType:T,HTTP_TOKEN_CODEPOINTS:d}})),qC=q(((e,t)=>{var n=J(`node:assert`),{types:r,inspect:i}=J(`node:util`),{markAsUncloneable:a}=J(`node:worker_threads`),o=1,s=2,c=3,l=4,u=5,d=6,f=7,p=8,m=Function.call.bind(Function.prototype[Symbol.hasInstance]),h={converters:{},util:{},errors:{},is:{}};h.errors.exception=function(e){return TypeError(`${e.header}: ${e.message}`)},h.errors.conversionFailed=function(e){let t=e.types.length===1?``:` one of`,n=`${e.argument} could not be converted to${t}: ${e.types.join(`, `)}.`;return h.errors.exception({header:e.prefix,message:n})},h.errors.invalidArgument=function(e){return h.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})},h.brandCheck=function(e,t){if(!t(e)){let e=TypeError(`Illegal invocation`);throw e.code=`ERR_INVALID_THIS`,e}},h.argumentLengthCheck=function({length:e},t,n){if(e<t)throw h.errors.exception({message:`${t} argument${t===1?``:`s`} required, but${e?` only`:``} ${e} found.`,header:n})},h.illegalConstructor=function(){throw h.errors.exception({header:`TypeError`,message:`Illegal constructor`})},h.util.MakeTypeAssertion=function(e){return t=>m(e,t)},h.util.Type=function(e){switch(typeof e){case`undefined`:return o;case`boolean`:return s;case`string`:return c;case`symbol`:return l;case`number`:return u;case`bigint`:return d;case`function`:case`object`:return e===null?f:p}},h.util.Types={UNDEFINED:o,BOOLEAN:s,STRING:c,SYMBOL:l,NUMBER:u,BIGINT:d,NULL:f,OBJECT:p},h.util.TypeValueToString=function(e){switch(h.util.Type(e)){case o:return`Undefined`;case s:return`Boolean`;case c:return`String`;case l:return`Symbol`;case u:return`Number`;case d:return`BigInt`;case f:return`Null`;case p:return`Object`}},h.util.markAsUncloneable=a,h.util.ConvertToInt=function(e,t,n,r){let i,a;t===64?(i=2**53-1,a=n===`unsigned`?0:(-2)**53+1):n===`unsigned`?(a=0,i=2**t-1):(a=-(2**(t-1)),i=2**(t-1)-1);let o=Number(e);if(o===0&&(o=0),h.util.HasFlag(r,h.attributes.EnforceRange)){if(Number.isNaN(o)||o===1/0||o===-1/0)throw h.errors.exception({header:`Integer conversion`,message:`Could not convert ${h.util.Stringify(e)} to an integer.`});if(o=h.util.IntegerPart(o),o<a||o>i)throw h.errors.exception({header:`Integer conversion`,message:`Value must be between ${a}-${i}, got ${o}.`});return o}return!Number.isNaN(o)&&h.util.HasFlag(r,h.attributes.Clamp)?(o=Math.min(Math.max(o,a),i),o=Math.floor(o)%2==0?Math.floor(o):Math.ceil(o),o):Number.isNaN(o)||o===0&&Object.is(0,o)||o===1/0||o===-1/0?0:(o=h.util.IntegerPart(o),o%=2**t,n===`signed`&&o>=2**(t-1)?o-2**t:o)},h.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t},h.util.Stringify=function(e){switch(h.util.Type(e)){case l:return`Symbol(${e.description})`;case p:return i(e);case c:return`"${e}"`;case d:return`${e}n`;default:return`${e}`}},h.util.IsResizableArrayBuffer=function(e){if(r.isArrayBuffer(e))return e.resizable;if(r.isSharedArrayBuffer(e))return e.growable;throw h.errors.exception({header:`IsResizableArrayBuffer`,message:`"${h.util.Stringify(e)}" is not an array buffer.`})},h.util.HasFlag=function(e,t){return typeof e==`number`&&(e&t)===t},h.sequenceConverter=function(e){return(t,n,r,i)=>{if(h.util.Type(t)!==p)throw h.errors.exception({header:n,message:`${r} (${h.util.Stringify(t)}) is not iterable.`});let a=typeof i==`function`?i():t?.[Symbol.iterator]?.(),o=[],s=0;if(a===void 0||typeof a.next!=`function`)throw h.errors.exception({header:n,message:`${r} is not iterable.`});for(;;){let{done:t,value:i}=a.next();if(t)break;o.push(e(i,n,`${r}[${s++}]`))}return o}},h.recordConverter=function(e,t){return(n,i,a)=>{if(h.util.Type(n)!==p)throw h.errors.exception({header:i,message:`${a} ("${h.util.TypeValueToString(n)}") is not an Object.`});let o={};if(!r.isProxy(n)){let r=[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)];for(let s of r){let r=h.util.Stringify(s),c=e(s,i,`Key ${r} in ${a}`);o[c]=t(n[s],i,`${a}[${r}]`)}return o}let s=Reflect.ownKeys(n);for(let r of s)if(Reflect.getOwnPropertyDescriptor(n,r)?.enumerable){let s=e(r,i,a);o[s]=t(n[r],i,a)}return o}},h.interfaceConverter=function(e,t){return(n,r,i)=>{if(!e(n))throw h.errors.exception({header:r,message:`Expected ${i} ("${h.util.Stringify(n)}") to be an instance of ${t}.`});return n}},h.dictionaryConverter=function(e){return e.sort((e,t)=>(e.key>t.key)-(e.key<t.key)),(t,n,r)=>{let i={};if(t!=null&&h.util.Type(t)!==p)throw h.errors.exception({header:n,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:e,defaultValue:o,required:s,converter:c}=a;if(s===!0&&(t==null||!Object.hasOwn(t,e)))throw h.errors.exception({header:n,message:`Missing required key "${e}".`});let l=t?.[e],u=o!==void 0;if(u&&l===void 0&&(l=o()),s||u||l!==void 0){if(l=c(l,n,`${r}.${e}`),a.allowedValues&&!a.allowedValues.includes(l))throw h.errors.exception({header:n,message:`${l} is not an accepted type. Expected one of ${a.allowedValues.join(`, `)}.`});i[e]=l}}return i}},h.nullableConverter=function(e){return(t,n,r)=>t===null?t:e(t,n,r)},h.is.USVString=function(e){return typeof e==`string`&&e.isWellFormed()},h.is.ReadableStream=h.util.MakeTypeAssertion(ReadableStream),h.is.Blob=h.util.MakeTypeAssertion(Blob),h.is.URLSearchParams=h.util.MakeTypeAssertion(URLSearchParams),h.is.File=h.util.MakeTypeAssertion(File),h.is.URL=h.util.MakeTypeAssertion(URL),h.is.AbortSignal=h.util.MakeTypeAssertion(AbortSignal),h.is.MessagePort=h.util.MakeTypeAssertion(MessagePort),h.is.BufferSource=function(e){return r.isArrayBuffer(e)||ArrayBuffer.isView(e)&&r.isArrayBuffer(e.buffer)},h.util.getCopyOfBytesHeldByBufferSource=function(e){let t=e,i=t,a=0,o=0;if(r.isTypedArray(t)||r.isDataView(t)?(i=t.buffer,a=t.byteOffset,o=t.byteLength):(n(r.isAnyArrayBuffer(t)),o=t.byteLength),i.detached)return new Uint8Array;let s=new Uint8Array(o),c=new Uint8Array(i,a,o);return s.set(c),s},h.converters.DOMString=function(e,t,n,r){if(e===null&&h.util.HasFlag(r,h.attributes.LegacyNullToEmptyString))return``;if(typeof e==`symbol`)throw h.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a DOMString.`});return String(e)},h.converters.ByteString=function(e,t,n){if(typeof e==`symbol`)throw h.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a ByteString.`});let r=String(e);for(let e=0;e<r.length;e++)if(r.charCodeAt(e)>255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${e} has a value of ${r.charCodeAt(e)} which is greater than 255.`);return r},h.converters.USVString=function(e){return typeof e==`string`?e.toWellFormed():`${e}`.toWellFormed()},h.converters.boolean=function(e){return!!e},h.converters.any=function(e){return e},h.converters[`long long`]=function(e,t,n){return h.util.ConvertToInt(e,64,`signed`,0,t,n)},h.converters[`unsigned long long`]=function(e,t,n){return h.util.ConvertToInt(e,64,`unsigned`,0,t,n)},h.converters[`unsigned long`]=function(e,t,n){return h.util.ConvertToInt(e,32,`unsigned`,0,t,n)},h.converters[`unsigned short`]=function(e,t,n,r){return h.util.ConvertToInt(e,16,`unsigned`,r,t,n)},h.converters.ArrayBuffer=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isArrayBuffer(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBuffer`]});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e))throw h.errors.exception({header:t,message:`${n} cannot be a resizable ArrayBuffer.`});return e},h.converters.SharedArrayBuffer=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isSharedArrayBuffer(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`SharedArrayBuffer`]});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e))throw h.errors.exception({header:t,message:`${n} cannot be a resizable SharedArrayBuffer.`});return e},h.converters.TypedArray=function(e,t,n,i,a){if(h.util.Type(e)!==p||!r.isTypedArray(e)||e.constructor.name!==t.name)throw h.errors.conversionFailed({prefix:n,argument:`${i} ("${h.util.Stringify(e)}")`,types:[t.name]});if(!h.util.HasFlag(a,h.attributes.AllowShared)&&r.isSharedArrayBuffer(e.buffer))throw h.errors.exception({header:n,message:`${i} cannot be a view on a shared array buffer.`});if(!h.util.HasFlag(a,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e.buffer))throw h.errors.exception({header:n,message:`${i} cannot be a view on a resizable array buffer.`});return e},h.converters.DataView=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isDataView(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`DataView`]});if(!h.util.HasFlag(i,h.attributes.AllowShared)&&r.isSharedArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},h.converters.ArrayBufferView=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isArrayBufferView(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBufferView`]});if(!h.util.HasFlag(i,h.attributes.AllowShared)&&r.isSharedArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},h.converters.BufferSource=function(e,t,n,i){if(r.isArrayBuffer(e))return h.converters.ArrayBuffer(e,t,n,i);if(r.isArrayBufferView(e))return i&=~h.attributes.AllowShared,h.converters.ArrayBufferView(e,t,n,i);throw r.isSharedArrayBuffer(e)?h.errors.exception({header:t,message:`${n} cannot be a SharedArrayBuffer.`}):h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBuffer`,`ArrayBufferView`]})},h.converters.AllowSharedBufferSource=function(e,t,n,i){if(r.isArrayBuffer(e))return h.converters.ArrayBuffer(e,t,n,i);if(r.isSharedArrayBuffer(e))return h.converters.SharedArrayBuffer(e,t,n,i);if(r.isArrayBufferView(e))return i|=h.attributes.AllowShared,h.converters.ArrayBufferView(e,t,n,i);throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBuffer`,`SharedArrayBuffer`,`ArrayBufferView`]})},h.converters[`sequence<ByteString>`]=h.sequenceConverter(h.converters.ByteString),h.converters[`sequence<sequence<ByteString>>`]=h.sequenceConverter(h.converters[`sequence<ByteString>`]),h.converters[`record<ByteString, ByteString>`]=h.recordConverter(h.converters.ByteString,h.converters.ByteString),h.converters.Blob=h.interfaceConverter(h.is.Blob,`Blob`),h.converters.AbortSignal=h.interfaceConverter(h.is.AbortSignal,`AbortSignal`),h.converters.EventHandlerNonNull=function(e){return h.util.Type(e)===p?typeof e==`function`?e:()=>{}:null},h.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16},t.exports={webidl:h}})),JC=q(((e,t)=>{var{Transform:n}=J(`node:stream`),r=J(`node:zlib`),{redirectStatusSet:i,referrerPolicyTokens:a,badPortsSet:o}=HC(),{getGlobalOrigin:s}=UC(),{collectAnHTTPQuotedString:c,parseMIMEType:l}=KC(),{performance:u}=J(`node:perf_hooks`),{isValidHTTPToken:d,normalizedMethodRecordsBase:f}=$(),p=J(`node:assert`),{isUint8Array:m}=J(`node:util/types`),{webidl:h}=qC(),{isomorphicEncode:g,collectASequenceOfCodePoints:_,removeChars:v}=GC();function y(e){let t=e.urlList,n=t.length;return n===0?null:t[n-1].toString()}function b(e,t){if(!i.has(e.status))return null;let n=e.headersList.get(`location`,!0);return n!==null&&O(n)&&(x(n)||(n=S(n)),n=new URL(n,y(e))),n&&!n.hash&&(n.hash=t),n}function x(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>126||n<32)return!1}return!0}function S(e){return Buffer.from(e,`binary`).toString(`utf8`)}function C(e){return e.urlList[e.urlList.length-1]}function w(e){let t=C(e);return ge(t)&&o.has(t.port)?`blocked`:`allowed`}function T(e){return e instanceof Error||e?.constructor?.name===`Error`||e?.constructor?.name===`DOMException`}function E(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(!(n===9||n>=32&&n<=126||n>=128&&n<=255))return!1}return!0}var D=d;function O(e){return(e[0]===` `||e[0]===` `||e[e.length-1]===` `||e[e.length-1]===` `||e.includes(`
53
- `)||e.includes(`\r`)||e.includes(`\0`))===!1}function k(e){let t=(e.headersList.get(`referrer-policy`,!0)??``).split(`,`),n=``;if(t.length)for(let e=t.length;e!==0;e--){let r=t[e-1].trim();if(a.has(r)){n=r;break}}return n}function A(e,t){let n=k(t);n!==``&&(e.referrerPolicy=n)}function j(){return`allowed`}function M(){return`success`}function N(){return`success`}function P(e){if(!V(C(e)))return;let t=null;t=e.mode,e.headersList.set(`sec-fetch-mode`,t,!0)}function F(e){let t=e.origin;if(t!==`client`&&t!==void 0){if(e.responseTainting===`cors`||e.mode===`websocket`)e.headersList.append(`origin`,t,!0);else if(e.method!==`GET`&&e.method!==`HEAD`){switch(e.referrerPolicy){case`no-referrer`:t=null;break;case`no-referrer-when-downgrade`:case`strict-origin`:case`strict-origin-when-cross-origin`:e.origin&&he(e.origin)&&!he(C(e))&&(t=null);break;case`same-origin`:se(e,C(e))||(t=null)}e.headersList.append(`origin`,t,!0)}}}function I(e,t){return e}function L(e,t,n){return!e?.startTime||e.startTime<t?{domainLookupStartTime:t,domainLookupEndTime:t,connectionStartTime:t,connectionEndTime:t,secureConnectionStartTime:t,ALPNNegotiatedProtocol:e?.ALPNNegotiatedProtocol}:{domainLookupStartTime:I(e.domainLookupStartTime,n),domainLookupEndTime:I(e.domainLookupEndTime,n),connectionStartTime:I(e.connectionStartTime,n),connectionEndTime:I(e.connectionEndTime,n),secureConnectionStartTime:I(e.secureConnectionStartTime,n),ALPNNegotiatedProtocol:e.ALPNNegotiatedProtocol}}function R(e){return I(u.now(),e)}function ee(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function te(){return{referrerPolicy:`strict-origin-when-cross-origin`}}function ne(e){return{referrerPolicy:e.referrerPolicy}}function re(e){let t=e.referrerPolicy;p(t);let n=null;if(e.referrer===`client`){let e=s();if(!e||e.origin===`null`)return`no-referrer`;n=new URL(e)}else h.is.URL(e.referrer)&&(n=e.referrer);let r=z(n),i=z(n,!0);switch(r.toString().length>4096&&(r=i),t){case`no-referrer`:return`no-referrer`;case`origin`:return i??z(n,!0);case`unsafe-url`:return r;case`strict-origin`:{let t=C(e);return V(r)&&!V(t)?`no-referrer`:i}case`strict-origin-when-cross-origin`:{let t=C(e);return se(r,t)?r:V(r)&&!V(t)?`no-referrer`:i}case`same-origin`:return se(e,r)?r:`no-referrer`;case`origin-when-cross-origin`:return se(e,r)?r:i;case`no-referrer-when-downgrade`:{let t=C(e);return V(r)&&!V(t)?`no-referrer`:r}}}function z(e,t=!1){return p(h.is.URL(e)),e=new URL(e),G(e)?`no-referrer`:(e.username=``,e.password=``,e.hash=``,t===!0&&(e.pathname=``,e.search=``),e)}var ie=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),ae=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function oe(e){return e.includes(`:`)?(e[0]===`[`&&e[e.length-1]===`]`&&(e=e.slice(1,-1)),ae(e)):ie(e)}function B(e){return e==null||e===`null`?!1:(e=new URL(e),!!(e.protocol===`https:`||e.protocol===`wss:`||oe(e.hostname)||e.hostname===`localhost`||e.hostname===`localhost.`||e.hostname.endsWith(`.localhost`)||e.hostname.endsWith(`.localhost.`)||e.protocol===`file:`))}function V(e){return h.is.URL(e)?e.href===`about:blank`||e.href===`about:srcdoc`||e.protocol===`data:`||e.protocol===`blob:`||B(e.origin):!1}function H(e){}function se(e,t){return e.origin===t.origin&&e.origin===`null`||e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}function ce(e){return e.controller.state===`aborted`}function le(e){return e.controller.state===`aborted`||e.controller.state===`terminated`}function U(e){return f[e.toLowerCase()]??e}var W=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function ue(e,t,n=0,r=1){class i{#e;#t;#n;constructor(e,t){this.#e=e,this.#t=t,this.#n=0}next(){if(typeof this!=`object`||this===null||!(#e in this))throw TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let i=this.#n,a=t(this.#e);if(i>=a.length)return{value:void 0,done:!0};let{[n]:o,[r]:s}=a[i];this.#n=i+1;let c;switch(this.#t){case`key`:c=o;break;case`value`:c=s;break;case`key+value`:c=[o,s]}return{value:c,done:!1}}}return delete i.prototype.constructor,Object.setPrototypeOf(i.prototype,W),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(e,t){return new i(e,t)}}function de(e,t,n,r=0,i=1,a){let o=ue(e,n,r,i),s={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return h.brandCheck(this,a),o(this,`key`)}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return h.brandCheck(this,a),o(this,`value`)}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return h.brandCheck(this,a),o(this,`key+value`)}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(t,n=globalThis){if(h.brandCheck(this,a),h.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof t!=`function`)throw TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:e,1:r}of o(this,`key+value`))t.call(n,r,e,this)}}};return Object.defineProperties(t.prototype,{...s,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:s.entries.value}})}function fe(e,t,n){let r=t,i=n;try{me(e.stream.getReader(),r,i)}catch(e){i(e)}}function pe(e){try{e.close(),e.byobRequest?.respond(0)}catch(e){if(!e.message.includes(`Controller is already closed`)&&!e.message.includes(`ReadableStream is already closed`))throw e}}async function me(e,t,n){try{let r=[],i=0;do{let{done:a,value:o}=await e.read();if(a){t(Buffer.concat(r,i));return}if(!m(o)){n(TypeError(`Received non-Uint8Array chunk`));return}r.push(o),i+=o.length}while(1)}catch(e){n(e)}}function G(e){p(`protocol`in e);let t=e.protocol;return t===`about:`||t===`blob:`||t===`data:`}function he(e){return typeof e==`string`&&e[5]===`:`&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&e[4]===`s`||e.protocol===`https:`}function ge(e){p(`protocol`in e);let t=e.protocol;return t===`http:`||t===`https:`}function _e(e,t){let n=e;if(!n.startsWith(`bytes`))return`failure`;let r={position:5};if(t&&_(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==61)return`failure`;r.position++,t&&_(e=>e===` `||e===` `,n,r);let i=_(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),a=i.length?Number(i):null;if(t&&_(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==45)return`failure`;r.position++,t&&_(e=>e===` `||e===` `,n,r);let o=_(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),s=o.length?Number(o):null;return r.position<n.length||s===null&&a===null||a!==null&&s!==null&&a>s?`failure`:{rangeStartValue:a,rangeEndValue:s}}function ve(e,t,n){let r=`bytes `;return r+=g(`${e}`),r+=`-`,r+=g(`${t}`),r+=`/`,r+=g(`${n}`),r}var K=class extends n{#e;constructor(e){super(),this.#e=e}_transform(e,t,n){if(!this._inflateStream){if(e.length===0){n();return}this._inflateStream=(e[0]&15)==8?r.createInflate(this.#e):r.createInflateRaw(this.#e),this._inflateStream.on(`data`,this.push.bind(this)),this._inflateStream.on(`end`,()=>this.push(null)),this._inflateStream.on(`error`,e=>this.destroy(e))}this._inflateStream.write(e,t,n)}_final(e){this._inflateStream&&=(this._inflateStream.end(),null),e()}};function ye(e){return new K(e)}function be(e){let t=null,n=null,r=null,i=Se(`content-type`,e);if(i===null)return`failure`;for(let e of i){let i=l(e);i!==`failure`&&i.essence!==`*/*`&&(r=i,r.essence===n?!r.parameters.has(`charset`)&&t!==null&&r.parameters.set(`charset`,t):(t=null,r.parameters.has(`charset`)&&(t=r.parameters.get(`charset`)),n=r.essence))}return r??`failure`}function xe(e){let t=e,n={position:0},r=[],i=``;for(;n.position<t.length;){if(i+=_(e=>e!==`"`&&e!==`,`,t,n),n.position<t.length){if(t.charCodeAt(n.position)===34){if(i+=c(t,n),n.position<t.length)continue}else p(t.charCodeAt(n.position)===44),n.position++}i=v(i,!0,!0,e=>e===9||e===32),r.push(i),i=``}return r}function Se(e,t){let n=t.get(e,!0);return n===null?null:xe(n)}function Ce(e){return!1}function we(e){return!!(e.username||e.password)}function Te(e){return e!=null&&e!==`client`&&e!==`no-traversable`}var Ee=class{get baseUrl(){return s()}get origin(){return this.baseUrl?.origin}policyContainer=te()};t.exports={isAborted:ce,isCancelled:le,isValidEncodedURL:x,tryUpgradeRequestToAPotentiallyTrustworthyURL:H,clampAndCoarsenConnectionTimingInfo:L,coarsenedSharedCurrentTime:R,determineRequestsReferrer:re,makePolicyContainer:te,clonePolicyContainer:ne,appendFetchMetadata:P,appendRequestOriginHeader:F,TAOCheck:N,corsCheck:M,crossOriginResourcePolicyCheck:j,createOpaqueTimingInfo:ee,setRequestReferrerPolicyOnRedirect:A,isValidHTTPToken:d,requestBadPort:w,requestCurrentURL:C,responseURL:y,responseLocationURL:b,isURLPotentiallyTrustworthy:V,isValidReasonPhrase:E,sameOrigin:se,normalizeMethod:U,iteratorMixin:de,createIterator:ue,isValidHeaderName:D,isValidHeaderValue:O,isErrorLike:T,fullyReadBody:fe,readableStreamClose:pe,urlIsLocal:G,urlHasHttpsScheme:he,urlIsHttpHttpsScheme:ge,readAllBytes:me,simpleRangeHeaderValue:_e,buildContentRange:ve,createInflate:ye,extractMimeType:be,getDecodeSplit:Se,environmentSettingsObject:new class{settingsObject=new Ee},isOriginIPPotentiallyTrustworthy:oe,hasAuthenticationEntry:Ce,includesCredentials:we,isTraversableNavigable:Te}})),YC=q(((e,t)=>{var n={__proto__:null,"node:crypto":()=>J(`node:crypto`),"node:sqlite":()=>J(`node:sqlite`)};function r(e){try{return n[e](),!0}catch(e){if(e.code!==`ERR_UNKNOWN_BUILTIN_MODULE`&&e.code!==`ERR_NO_CRYPTO`)throw e;return!1}}var i=[`crypto`,`sqlite`];function a(e){if(i.includes(e))return r(`node:${e}`);throw TypeError(`unknown feature: ${e}`)}var o=new class{#e=new Map;clear(){this.#e.clear()}has(e){return this.#e.get(e)??this.#t(e)}set(e,t){if(i.includes(e)===!1)throw TypeError(`unknown feature: ${e}`);this.#e.set(e,t)}#t(e){let t=a(e);return this.#e.set(e,t),t}};t.exports.runtimeFeatures=o,t.exports.default=o})),XC=q(((e,t)=>{var{iteratorMixin:n}=JC(),{kEnumerableProperty:r}=$(),{webidl:i}=qC(),a=J(`node:util`),{runtimeFeatures:o}=YC(),s=o.has(`crypto`)?J(`node:crypto`).randomInt:e=>Math.floor(Math.random()*e),c,l,u,d=class{#e=[];#t=null;constructor(e=void 0){if(i.util.markAsUncloneable(this),e!==void 0)throw i.errors.conversionFailed({prefix:`FormData constructor`,argument:`Argument 1`,types:[`undefined`]})}append(e,t,n=void 0){i.brandCheck(this,i.is.FormData);let r=`FormData.append`;i.argumentLengthCheck(arguments,2,r),e=i.converters.USVString(e),arguments.length===3||i.is.Blob(t)?(t=i.converters.Blob(t,r,`value`),n!==void 0&&(n=i.converters.USVString(n))):t=i.converters.USVString(t);let a=f(e,t,n);this.#e.push(a)}delete(e){i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.delete`),e=i.converters.USVString(e),this.#e=this.#e.filter(t=>t.name!==e)}get(e){i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.get`),e=i.converters.USVString(e);let t=this.#e.findIndex(t=>t.name===e);return t===-1?null:this.#e[t].value}getAll(e){return i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.getAll`),e=i.converters.USVString(e),this.#e.filter(t=>t.name===e).map(e=>e.value)}has(e){return i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.has`),e=i.converters.USVString(e),this.#e.findIndex(t=>t.name===e)!==-1}set(e,t,n=void 0){i.brandCheck(this,i.is.FormData);let r=`FormData.set`;i.argumentLengthCheck(arguments,2,r),e=i.converters.USVString(e),arguments.length===3||i.is.Blob(t)?(t=i.converters.Blob(t,r,`value`),n!==void 0&&(n=i.converters.USVString(n))):t=i.converters.USVString(t);let a=f(e,t,n),o=this.#e.findIndex(t=>t.name===e);o===-1?this.#e.push(a):this.#e=[...this.#e.slice(0,o),a,...this.#e.slice(o+1).filter(t=>t.name!==e)]}[a.inspect.custom](e,t){let n=this.#e.reduce((e,t)=>(e[t.name]?Array.isArray(e[t.name])?e[t.name].push(t.value):e[t.name]=[e[t.name],t.value]:e[t.name]=t.value,e),{__proto__:null});t.depth??=e,t.colors??=!0;let r=a.formatWithOptions(t,n);return`FormData ${r.slice(r.indexOf(`]`)+2)}`}static{c=e=>e.#e,l=(e,t)=>{e.#e=t},u=e=>e.#t??=`----formdata-undici-0${`${s(1e11)}`.padStart(11,`0`)}`,i.is.FormData=e=>typeof e==`object`&&!!e&&#e in e}};n(`FormData`,d,c,`name`,`value`,i.is.FormData),Object.defineProperties(d.prototype,{append:r,delete:r,get:r,getAll:r,has:r,set:r,[Symbol.toStringTag]:{value:`FormData`,configurable:!0}});function f(e,t,n){if(typeof t!=`string`&&(i.is.File(t)||(t=new File([t],`blob`,{type:t.type})),n!==void 0)){let e={type:t.type,lastModified:t.lastModified};t=new File([t],n,e)}return{name:e,value:t}}t.exports={FormData:d,makeEntry:f,setFormDataState:l,getFormDataBoundary:u}})),ZC=q(((e,t)=>{var{bufferToLowerCasedHeaderName:n}=$(),{HTTP_TOKEN_CODEPOINTS:r}=KC(),{makeEntry:i}=XC(),{webidl:a}=qC(),o=J(`node:assert`),{isomorphicDecode:s}=GC(),c=Buffer.from(`--`),l=new TextDecoder,u=new TextDecoder(`utf-8`,{ignoreBOM:!0});function d(e){for(let t=0;t<e.length;++t)if(e.charCodeAt(t)&-128)return!1;return!0}function f(e){let t=e.length;if(t<27||t>70)return!1;for(let n=0;n<t;++n){let t=e.charCodeAt(n);if(!(t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===39||t===45||t===95))return!1}return!0}function p(e,t){o(t!==`failure`&&t.essence===`multipart/form-data`);let n=t.parameters.get(`boundary`);if(n===void 0)throw y(`missing boundary in content-type header`);let r=Buffer.from(`--${n}`,`utf8`),s=[],l={position:0},f=e.indexOf(r);if(f===-1)throw y(`no boundary found in multipart body`);for(l.position=f;;){if(e.subarray(l.position,l.position+r.length).equals(r))l.position+=r.length;else throw y(`expected a value starting with -- and the boundary`);if(v(e,c,l))return s;if(e[l.position]!==13||e[l.position+1]!==10)throw y(`expected CRLF`);l.position+=2;let{name:t,filename:n,contentType:f,encoding:p}=h(e,l);l.position+=2;let m;{let t=e.indexOf(r.subarray(2),l.position);if(t===-1)throw y(`expected boundary after body`);m=e.subarray(l.position,t-4),l.position+=m.length,p===`base64`&&(m=Buffer.from(m.toString(),`base64`))}if(e[l.position]!==13||e[l.position+1]!==10)throw y(`expected CRLF`);l.position+=2;let g;n===null?g=u.decode(Buffer.from(m)):(f??=`text/plain`,d(f)||(f=``),g=new File([m],n,{type:f})),o(a.is.USVString(t)),o(typeof g==`string`&&a.is.USVString(g)||a.is.File(g)),s.push(i(t,g,n))}}function m(e,t){e[t.position]===59&&t.position++,g(e=>e===32||e===9,e,t);let n=g(e=>S(e)&&e!==61&&e!==42,e,t);if(n.length===0)return null;let r=n.toString(`ascii`).toLowerCase(),i=e[t.position]===42;if(i&&t.position++,e[t.position]!==61)return null;t.position++,g(e=>e===32||e===9,e,t);let a;if(i){let n=g(e=>e!==32&&e!==13&&e!==10&&e!==59,e,t);if(n[0]!==117&&n[0]!==85||n[1]!==116&&n[1]!==84||n[2]!==102&&n[2]!==70||n[3]!==45||n[4]!==56)throw y(`unknown encoding, expected utf-8''`);a=decodeURIComponent(l.decode(n.subarray(7)))}else if(e[t.position]===34){t.position++;let n=g(e=>e!==10&&e!==13&&e!==34,e,t);if(e[t.position]!==34)throw y(`Closing quote not found`);t.position++,a=l.decode(n).replace(/%0A/gi,`
54
- `).replace(/%0D/gi,`\r`).replace(/%22/g,`"`)}else{let n=g(e=>S(e)&&e!==59,e,t);a=l.decode(n)}return{name:r,value:a,extended:i}}function h(e,t){let i=null,a=null,o=null,c=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10){if(i===null)throw y(`header name is null`);return{name:i,filename:a,contentType:o,encoding:c}}let l=g(e=>e!==10&&e!==13&&e!==58,e,t);if(l=_(l,!0,!0,e=>e===9||e===32),!r.test(l.toString()))throw y(`header name does not match the field-name token production`);if(e[t.position]!==58)throw y(`expected :`);switch(t.position++,g(e=>e===32||e===9,e,t),n(l)){case`content-disposition`:{i=a=null;let n=!1;if(g(e=>S(e),e,t).toString(`ascii`).toLowerCase()!==`form-data`)throw y(`expected form-data for content-disposition header`);for(;t.position<e.length&&(e[t.position]!==13||e[t.position+1]!==10);){let r=m(e,t);if(!r)break;r.name===`name`?i=r.value:r.name===`filename`&&(r.extended?(a=r.value,n=!0):n||(a=r.value))}if(i===null)throw y(`name attribute is required in content-disposition header`);break}case`content-type`:{let n=g(e=>e!==10&&e!==13,e,t);n=_(n,!1,!0,e=>e===9||e===32),o=s(n);break}case`content-transfer-encoding`:{let n=g(e=>e!==10&&e!==13,e,t);n=_(n,!1,!0,e=>e===9||e===32),c=s(n);break}default:g(e=>e!==10&&e!==13,e,t)}if(e[t.position]!==13||e[t.position+1]!==10)throw y(`expected CRLF`);t.position+=2}}function g(e,t,n){let r=n.position;for(;r<t.length&&e(t[r]);)++r;return t.subarray(n.position,n.position=r)}function _(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e[i]);)i++;if(n)for(;a>0&&r(e[a]);)a--;return i===0&&a===e.length-1?e:e.subarray(i,a+1)}function v(e,t,n){if(e.length<t.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[n.position+r])return!1;return!0}function y(e){return TypeError(`Failed to parse body as FormData.`,{cause:TypeError(e)})}function b(e){return e<=31||e===127}function x(e){return e===40||e===41||e===60||e===62||e===64||e===44||e===59||e===58||e===92||e===34||e===47||e===91||e===93||e===63||e===61}function S(e){return e<=127&&e!==32&&e!==9&&!b(e)&&!x(e)}t.exports={multipartFormDataParser:p,validateBoundary:f}})),QC=q(((e,t)=>{var n=$(),{readableStreamClose:r,fullyReadBody:i,extractMimeType:a}=JC(),{FormData:o,setFormDataState:s,getFormDataBoundary:c}=XC(),{webidl:l}=qC(),u=J(`node:assert`),{isErrored:d,isDisturbed:f}=J(`node:stream`),{isUint8Array:p}=J(`node:util/types`),{serializeAMimeType:m}=KC(),{multipartFormDataParser:h}=ZC(),{parseJSONFromBytes:g}=GC(),{utf8DecodeBytes:_}=WC(),{ReadableStreamTee:v}=J(`node:stream/web`),y=new TextEncoder;function b(){}var x=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!f(t)&&!d(t)&&t.cancel(`Response object has been garbage collected`).catch(b)});function S(e,t=!1){let i=null,a=null;i=l.is.ReadableStream(e)?e:l.is.Blob(e)?e.stream():new ReadableStream({pull(){},start(e){a=e},cancel(){},type:`bytes`}),u(l.is.ReadableStream(i));let o=null,s=null,f=null,m=null;if(typeof e==`string`)s=e,m=`text/plain;charset=UTF-8`;else if(l.is.URLSearchParams(e))s=e.toString(),m=`application/x-www-form-urlencoded;charset=UTF-8`;else if(l.is.BufferSource(e))s=l.util.getCopyOfBytesHeldByBufferSource(e);else if(l.is.FormData(e)){let t=c(e),n=`--${t}\r\nContent-Disposition: form-data`,r=e=>e.replace(/\n/g,`%0A`).replace(/\r/g,`%0D`).replace(/"/g,`%22`),i=e=>e.replace(/\r?\n|\r/g,`\r
52
+ `},{type:`image`,data:ee.encode(l),mimeType:a.file.mimetype}]};return E.some(d)}).pipe(_.catch(()=>_.succeed(E.none())),_.withSpan(`plugin.mcp.slack_connect_file_fallback`))},vS=`mcp`,yS=e=>{if(e.httpStatus!==void 0)return kt(e.httpStatus)===`expired`?`expired`:`degraded`;let t=e.message.toLowerCase();return t.includes(`oauth re-authorization`)||t.includes(`unauthorized`)||t.includes(`forbidden`)?`expired`:`degraded`},bS=e=>e.timedOut===!0||e.failureKind===`timeout`?`probe_timeout`:e.httpStatus===void 0?`probe_failed`:`upstream_status`,xS=e=>{let t=e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``);return t.length>0?t:null},SS=(e,t)=>{let n=new Set,r=xS(e);r&&n.add(r);let i=t==null?null:xS(t.description);return i&&n.add(i),n},CS=(e,t)=>`${e}:${String(t)}`,wS=(e,t,n)=>!t.has(String(e.slug))||!n||n.transport!==`remote`||!n.authenticationTemplate.some(e=>e.kind===`oauth2`)?!1:e.grant===`authorization_code`&&(e.resource??null)===n.endpoint,TS=j.Struct({toolName:j.String,upstream:j.optional(j.Struct({title:j.optional(j.String),readOnlyHint:j.optional(j.Boolean),destructiveHint:j.optional(j.Boolean),idempotentHint:j.optional(j.Boolean),openWorldHint:j.optional(j.Boolean)})),_meta:j.optional(ky)}),ES=j.Struct({mcp:TS}),DS=j.decodeUnknownOption(ES),OS=e=>E.match(DS(e),{onNone:()=>null,onSome:e=>e.mcp}),kS=j.Struct({transport:j.optional(j.Literal(`remote`)),name:j.String,family:j.optional(j.String),description:j.optional(j.String),endpoint:j.String,remoteTransport:j.optional(uy),headers:j.optional(j.Record(j.String,j.String)),queryParams:j.optional(j.Record(j.String,j.String)),slug:j.optional(j.String),authenticationTemplate:j.optional(j.Array(vy)),auth:j.optional(gy),versionNegotiation:j.optional(dy)}),AS=j.Struct({transport:j.Literal(`stdio`),name:j.String,family:j.optional(j.String),description:j.optional(j.String),command:j.String,args:j.optional(j.Array(j.String)),envVars:j.optional(j.Array(j.String)),env:j.optional(j.Record(j.String,j.String)),staticEnv:j.optional(j.Record(j.String,j.String)),cwd:j.optional(j.String),versionNegotiation:j.optional(dy),spawnPerCall:j.optional(j.Boolean),appServer:j.optional(j.Struct({server:j.String,surface:j.optional(j.Literals([`sky`,`browser`])),modulePath:j.optional(j.String),presetId:j.optional(j.String)})),slug:j.optional(j.String)}),jS=j.Union([kS,AS]),MS=j.Struct({slug:j.String});j.Struct({authenticationTemplate:j.Array(vy),mode:j.optional(j.Literals([`merge`,`replace`]))});var NS=j.Struct({endpoint:j.String,headers:j.optional(j.Record(j.String,j.String)),queryParams:j.optional(j.Record(j.String,j.String))}),PS=j.Struct({connected:j.Boolean,requiresAuthentication:j.Boolean,requiresOAuth:j.Boolean,supportsDynamicRegistration:j.Boolean,name:j.String,slug:j.String,toolCount:j.NullOr(j.Number),serverName:j.NullOr(j.String),instructions:j.NullOr(j.String),versionNegotiation:j.optional(dy)}),FS=j.Struct({slug:j.String}),IS=j.Struct({integration:j.NullOr(j.Unknown)}),LS=e=>j.toStandardSchemaV1(j.toStandardJSONSchemaV1(e)),RS=LS(jS),zS=LS(MS),BS=LS(NS),VS=LS(PS),HS=LS(FS),US=LS(IS),WS=(e,t,n)=>cu.fail({code:e,message:t,...n===void 0?{}:{details:n}}),GS=e=>e.status===403&&e.insufficientScope===!0?cm({code:`oauth_scope_insufficient`,message:`MCP server rejected connection "${e.connection}" with HTTP 403: the connection's OAuth grant does not cover the scope this tool requires. Re-authenticating with the same grant will return the same error; reconnect with broader access.`,integration:{id:e.integration},credential:{kind:`oauth`,label:e.connection},status:e.status,upstream:{status:e.status}}):cm({code:`connection_rejected`,message:e.status===403?`MCP server rejected connection "${e.connection}" with HTTP 403. The credential may lack access or required scope; re-authenticate or update the connection before retrying this tool.`:`MCP server rejected connection "${e.connection}" with HTTP 401. Re-authenticate or update the connection before retrying this tool.`,integration:{id:e.integration},credential:{kind:`upstream`,label:e.connection},status:e.status,upstream:{status:e.status}}),KS=e=>cm({code:`oauth_reauth_required`,message:`OAuth connection "${e.connection}" requires reauthorization before retrying this MCP tool.`,integration:{id:e.integration},credential:{kind:`oauth`,label:e.connection}}),qS=e=>Y.make(e),JS=e=>e.slug??Ky({name:e.name,endpoint:e.transport===`stdio`?void 0:e.endpoint,command:e.transport===`stdio`?e.command:void 0}),YS=`env`,XS=e=>{let t=e.env??{},n=Object.keys(t);return n.length>0?{values:t,vars:n}:null},ZS=e=>{if(e.transport===`stdio`&&e.authenticationTemplate===void 0){let t=XS(e);return t===null?[{slug:`none`,kind:`none`}]:[{slug:YS,kind:`stdio_env`,vars:t.vars}]}return e.authenticationTemplate??[]},QS=e=>{let t=new Set(e.envVars??[]);for(let n of Object.keys(e.env??{}))t.add(n);return[...t]},$S=e=>{if(e.transport===`stdio`){let t=QS(e),n=e.staticEnv;return{transport:`stdio`,family:e.family?.trim()||void 0,command:e.command,args:e.args?[...e.args]:void 0,env:n!==void 0&&Object.keys(n).length>0?n:void 0,cwd:e.cwd,versionNegotiation:e.versionNegotiation,spawnPerCall:e.spawnPerCall,appServer:e.appServer,authenticationTemplate:t.length>0?[{slug:YS,kind:`stdio_env`,vars:t}]:[{slug:`none`,kind:`none`}]}}return{transport:`remote`,family:e.family?.trim()||void 0,endpoint:e.endpoint,remoteTransport:e.remoteTransport??`auto`,queryParams:e.queryParams,headers:e.headers,authenticationTemplate:e.authenticationTemplate?xy(e.authenticationTemplate):[_y(e.auth??{kind:`none`})],versionNegotiation:e.versionNegotiation}},eC=qy,tC=e=>{let t=eC.properties?.structuredContent??{};return{...eC,properties:{...eC.properties,structuredContent:e===void 0?t:e,isError:{const:!1}},required:e===void 0?[`content`]:[`content`,`structuredContent`]}},nC=e=>{let t=e.annotations?.destructiveHint===!0,n={toolName:e.toolName,...e.annotations?{upstream:e.annotations}:{},...e._meta?{_meta:e._meta}:{}},r={requiresApproval:t,...t?{approvalDescription:e.annotations?.title??e.toolName}:{},mcp:n};return{name:at.make(e.toolId),description:e.description??`MCP tool: ${e.toolName}`,inputSchema:e.inputSchema,outputSchema:tC(e.outputSchema),annotations:r}},rC=j.Struct({type:j.Literal(`text`),text:j.String}),iC=j.Struct({isError:j.optional(j.Boolean),content:j.optional(j.Array(j.Unknown))}),aC=j.decodeUnknownOption(rC),oC=j.decodeUnknownOption(iC),sC=e=>{if(Array.isArray(e))for(let t of e){let e=E.getOrUndefined(aC(t));if(e!==void 0&&e.text.length>0)return e.text}return`MCP tool returned an error`},cC=(e,t)=>cu.fail({code:`mcp_tool_unknown`,message:`The MCP server no longer provides tool "${e}". Its tool catalog changed; list tools again for the current set.`,details:{integration:String(t.integration),connection:String(t.connection)}}),lC=(e,t)=>{let n=RegExp(`(?:^|[^a-z0-9])${t}(?:$|[^a-z0-9])`,`i`);return n.test(e.hostname)||n.test(e.pathname)},uC=e=>e.kind===`unreachable`?`Couldn't reach this URL. Check the address, your network, and that the server is running.`:`This URL doesn't appear to host an MCP server. Double-check the address, including the path.`,dC=e=>({get redirectUrl(){return`http://localhost/oauth/callback`},get clientMetadata(){return{redirect_uris:[`http://localhost/oauth/callback`],grant_types:[`authorization_code`,`refresh_token`],response_types:[`code`],token_endpoint_auth_method:`none`,client_name:`Executor`}},clientInformation:()=>void 0,saveClientInformation:()=>void 0,tokens:()=>({access_token:e,token_type:`Bearer`}),saveTokens:()=>void 0,redirectToAuthorization:async()=>{throw new cy({message:`MCP OAuth re-authorization required`})},saveCodeVerifier:()=>void 0,codeVerifier:()=>{throw Error(`No active PKCE verifier`)},saveDiscoveryState:()=>void 0,discoveryState:()=>void 0}),fC=(e,t)=>{let n=ZS(e);if(t!==null){let e=n.find(e=>e.slug===t);if(e)return e}return n.length===1?n[0]:void 0},pC=(e,t,n,r,i)=>{if(e.transport===`stdio`){if(!r)return _.fail(new ay({transport:`stdio`,message:"MCP stdio transport is disabled. Enable it by passing `dangerouslyAllowStdioMCP: true` to mcpPlugin() — only safe for trusted local contexts."}));let i=fC(e,n),a={...e.env??{}};if(i?.kind===`stdio_env`)for(let e of i.vars){let n=t[e];n!=null&&(a[e]=n)}return _.succeed({transport:`stdio`,command:e.command,args:e.args,env:Object.keys(a).length>0?a:void 0,cwd:e.cwd,versionNegotiation:e.versionNegotiation,spawnPerCall:e.spawnPerCall,appServer:e.appServer})}let a={...e.headers??{}},o={...e.queryParams??{}},s,c=fC(e,n);if(c?.kind===`apikey`){let e=Vv(c.placements,t);Object.assign(a,e.headers),Object.assign(o,e.queryParams)}else if(c?.kind===`oauth2`){let e=t[Fv];e!=null&&(s=dC(e))}return _.succeed({transport:`remote`,endpoint:e.endpoint,remoteTransport:e.remoteTransport??`auto`,queryParams:Object.keys(o).length>0?o:void 0,headers:Object.keys(a).length>0?a:void 0,authProvider:s,...s===void 0?{}:{staticOAuthBearer:!0},httpClientLayer:i,versionNegotiation:e.versionNegotiation})},mC=e=>Object.fromEntries(Object.entries(e??{}).filter(e=>e[1]!==void 0).sort(([e],[t])=>e<t?-1:+(e>t))),hC=e=>e.transport===`remote`||e.appServer!==void 0||e.spawnPerCall!==!0,gC=(e,t,n,r)=>Jl(JSON.stringify(e.transport===`remote`?{owner:r.owner,connection:r.connection,endpoint:e.endpoint,transport:e.transport,remoteTransport:e.remoteTransport,headers:mC(e.headers),queryParams:mC(e.queryParams),template:t,values:mC(n)}:{owner:r.owner,connection:r.connection,transport:e.appServer===void 0?`stdio`:`appserver`,command:e.command,args:e.args??[],cwd:e.cwd??null,env:mC(e.env),versionNegotiation:e.versionNegotiation??null,server:e.appServer?.server??null,surface:e.appServer?.surface??null,modulePath:e.appServer?.modulePath??null,template:t,values:mC(n)})),_C=e=>({id:e.slug,label:`Environment variables`,kind:`apikey`,template:e.slug,placements:e.vars.map(e=>({carrier:`env`,name:e,prefix:``,variable:e}))}),vC=e=>{let t=Dy(e.config);return t?ZS(t).map(e=>e.kind===`stdio_env`?_C(e):e.kind===`apikey`?Kv(e):e.kind===`oauth2`?{id:e.slug,label:`OAuth`,kind:`oauth`,template:e.slug,oauth:{discoveryUrl:t.transport===`remote`?t.endpoint:void 0,...e.scopes===void 0?{}:{scopes:e.scopes},supportsDynamicRegistration:!0,...e.enterpriseIdentityProvider===void 0?{}:{enterpriseIdentityProvider:e.enterpriseIdentityProvider}}}:qv(e.slug)):[]},yC=e=>{let t=Dy(e.config);if(!t)return{};let n=t.family?.trim();return{...t.transport===`remote`?{url:t.endpoint}:{},...n?{family:n}:{}}},bC=iu(e=>{let t=e?.dangerouslyAllowStdioMCP??!1,n=rx();return{id:vS,packageName:`@executor-js/plugin-mcp`,remoteToolCatalog:!0,integrationPresets:(t?Pv:Pv.filter(e=>!(`transport`in e&&e.transport===`stdio`))).map(e=>({id:e.id,name:e.name,summary:e.summary,...`url`in e&&e.url?{url:e.url}:{},...`endpoint`in e&&e.endpoint?{endpoint:e.endpoint}:{},...e.icon?{icon:e.icon}:{},...e.fallbackIcon?{fallbackIcon:e.fallbackIcon}:{},...e.featured?{featured:e.featured}:{},...e.family?{family:e.family}:{},...`defaultSlug`in e&&e.defaultSlug?{defaultSlug:e.defaultSlug}:{},transport:`transport`in e&&e.transport===`stdio`?`stdio`:`remote`,...`command`in e?{command:e.command}:{},...`args`in e&&e.args?{args:[...e.args]}:{},...`env`in e&&e.env?{env:e.env}:{}})),clientConfig:{allowStdio:t},storage:()=>({}),close:()=>n.close(),extension:n=>{let r=e?.httpClientLayer??n.httpClientLayer,i=e=>_.gen(function*(){let t=(typeof e==`string`?e:e.endpoint).trim();if(!t)return yield*new ay({transport:`remote`,message:`Endpoint URL is required`});let i=yield*_.try({try:()=>new URL(t).hostname,catch:()=>`mcp`}).pipe(_.orElseSucceed(()=>`mcp`)),a=Ky({endpoint:t}),o=typeof e==`string`?void 0:e.headers,s=typeof e==`string`?void 0:e.queryParams,c=yield*ux({transport:`remote`,endpoint:t,headers:o,queryParams:s,httpClientLayer:r}).pipe(_.map(e=>({ok:!0,...e})),_.catch(()=>_.succeed({ok:!1,manifest:null,versionNegotiation:null})),_.withSpan(`mcp.plugin.discover_tools`));if(c.ok&&c.manifest)return{connected:!0,requiresAuthentication:!1,requiresOAuth:!1,supportsDynamicRegistration:!1,name:c.manifest.server?.name??i,slug:a,toolCount:c.manifest.tools.length,serverName:c.manifest.server?.name??null,instructions:c.manifest.server?.instructions??null,...c.versionNegotiation===`legacy`?{versionNegotiation:`legacy`}:{}};let l=yield*tS(t,{httpClientLayer:r,headers:o,queryParams:s});if(l.kind===`unreachable`)return yield*new ay({transport:`remote`,message:uC(l)});if(l.kind===`not-mcp`)return l.category===`wrong-shape`?yield*new ay({transport:`remote`,message:uC(l)}):{connected:!1,requiresAuthentication:!0,requiresOAuth:!1,supportsDynamicRegistration:!1,name:i,slug:a,toolCount:null,serverName:null,instructions:null};let u=yield*n.oauth.probe({url:t}).pipe(_.map(e=>({ok:!0,oauth:e})),_.catch(()=>_.succeed({ok:!1,oauth:null})),_.withSpan(`mcp.plugin.probe_oauth`));return u.ok?{connected:!1,requiresAuthentication:!0,requiresOAuth:!0,supportsDynamicRegistration:u.oauth.registrationEndpoint!=null,name:i,slug:a,toolCount:null,serverName:null,instructions:null}:l.requiresAuth?{connected:!1,requiresAuthentication:!0,requiresOAuth:!1,supportsDynamicRegistration:!1,name:i,slug:a,toolCount:null,serverName:null,instructions:null}:yield*new ay({transport:`remote`,message:`This endpoint looks like MCP, but Executor couldn't discover tools from it. Check the URL and try again.`})}).pipe(_.withSpan(`mcp.plugin.probe_endpoint`,{attributes:Ov(`mcp.endpoint`,typeof e==`string`?e:e.endpoint)})),a=e=>_.gen(function*(){let t=JS(e),r=$S(e);if(yield*n.core.integrations.get(qS(t)))return yield*new fn({slug:qS(t)});if(yield*n.core.integrations.register({slug:qS(t),name:e.name,description:e.description?.trim()||e.name,config:r,canRemove:!0,canRefresh:!0}).pipe(_.withSpan(`mcp.plugin.register_integration`,{attributes:{"mcp.integration.slug":t}})),e.transport===`stdio`){let r=e.env!=null&&Object.keys(e.env).length>0,i=QS(e).length>0;(r||!i)&&(yield*n.connections.create({owner:`org`,name:Qe.make(`default`),integration:qS(t),template:Xe.make(r?YS:`none`),values:r?{...e.env}:{}}).pipe(_.catchTags({IntegrationNotFoundError:e=>_.fail(new ay({transport:`stdio`,message:e.message})),ConnectionAlreadyExistsError:e=>_.fail(new ay({transport:`stdio`,message:e.message})),CredentialProviderNotRegisteredError:e=>_.fail(new ay({transport:`stdio`,message:e.message})),InvalidConnectionInputError:e=>_.fail(new ay({transport:`stdio`,message:e.message}))}),_.withSpan(`mcp.plugin.bootstrap_stdio_connection`,{attributes:{"mcp.integration.slug":t}})))}return{slug:t}}).pipe(_.withSpan(`mcp.plugin.add_server`,{attributes:{"mcp.server.transport":e.transport??`remote`,"mcp.server.name":e.name}})),o=()=>_.gen(function*(){let e=yield*n.core.integrations.list();for(let t of e)t.kind===vS&&(yield*_.gen(function*(){let e=yield*n.core.integrations.get(t.slug),r=e?Dy(e.config):null;if(!r||r.transport!==`stdio`||r.authenticationTemplate!==void 0||(yield*n.connections.list({integration:t.slug})).length>0)return;let i=XS(r);yield*n.connections.create({owner:`org`,name:Qe.make(`default`),integration:t.slug,template:Xe.make(i===null?`none`:YS),values:i===null?{}:{...i.values}});let a={transport:`stdio`,command:r.command,args:r.args,cwd:r.cwd,versionNegotiation:r.versionNegotiation,authenticationTemplate:i===null?[{slug:`none`,kind:`none`}]:[{slug:YS,kind:`stdio_env`,vars:i.vars}]};yield*n.core.integrations.update(t.slug,{config:a})}).pipe(_.catch(e=>_.logWarning(`mcp: failed healing stdio connection for "${t.slug}"`,e)),_.withSpan(`mcp.plugin.reconcile_stdio_connection`,{attributes:{"mcp.integration.slug":String(t.slug)}})))}).pipe(_.withSpan(`mcp.plugin.reconcile_stdio_connections`)),s=e=>_.gen(function*(){let t=qS(e),r=yield*n.core.integrations.get(t),i=r?Dy(r.config):null,a=SS(e,r),o=yield*n.connections.list({integration:t}),s=yield*n.connections.list(),c=yield*n.oauth.listClients(),l=new Set(s.filter(e=>String(e.integration)!==String(t)).flatMap(e=>e.oauthClient==null?[]:[CS(e.oauthClientOwner??e.owner,e.oauthClient)])),u=new Map(c.map(e=>[CS(e.owner,e.slug),e])),d=new Map;for(let e of o){if(e.oauthClient==null)continue;let t=e.oauthClientOwner??e.owner,n=CS(t,e.oauthClient);u.get(n)?.origin.kind===`dynamic_client_registration`&&d.set(n,{owner:t,slug:e.oauthClient})}for(let t of c){let n=CS(t.owner,t.slug);if(!l.has(n)){if(t.origin.kind===`dynamic_client_registration`&&(t.origin.integration==null||String(t.origin.integration)===e)){d.set(n,{owner:t.owner,slug:t.slug});continue}wS(t,a,i)&&d.set(n,{owner:t.owner,slug:t.slug})}}yield*n.core.integrations.remove(t).pipe(_.catchTag(`IntegrationRemovalNotAllowedError`,()=>_.void)),yield*_.forEach(d.values(),e=>n.oauth.removeClient(e.owner,e.slug),{discard:!0})}).pipe(_.withSpan(`mcp.plugin.remove_server`,{attributes:{"mcp.integration.slug":e}})),c=e=>n.core.integrations.get(qS(e)).pipe(_.withSpan(`mcp.plugin.get_server`,{attributes:{"mcp.integration.slug":e}})),l=(e,t)=>n.core.integrations.update(qS(e),{config:t}).pipe(_.withSpan(`mcp.plugin.configure_server`,{attributes:{"mcp.integration.slug":e}})),u=(e,t)=>_.gen(function*(){let r=yield*n.core.integrations.get(qS(e)),i=r?Dy(r.config):null;if(!i||i.transport===`stdio`)return[];let a=t.mode===`replace`?xy(t.authenticationTemplate):_v(i.authenticationTemplate,by(t.authenticationTemplate));return yield*n.core.integrations.update(qS(e),{config:{...i,authenticationTemplate:a}}),a}).pipe(_.withSpan(`mcp.plugin.configure_auth`,{attributes:{"mcp.integration.slug":e}})),d=e=>typeof e==`object`&&!!e&&`code`in e&&e.code===`REQUEST_TIMEOUT`,f=e=>_.gen(function*(){if(!t)return{status:`unsupported`};let n=(yield*p()).find(t=>t.id===e);if(n===void 0)return{status:`unknown`};if(!n.available)return{status:`not-installed`};let r=(yield*_.promise(()=>import(`./codex-plugin-presets-4WOJSVUQ.mjs`))).CURATED_CODEX_PLUGINS.find(t=>t.id===e)?.probeTool;if(r===void 0)return{status:`nothing-to-check`};let i=Xb({transport:`stdio`,command:n.command,args:n.args,env:n.env===void 0?void 0:{...n.env},...n.appServer===void 0?{}:{appServer:n.appServer}}),a=!1;return yield*_.gen(function*(){let e=yield*i,t=yield*_.tryPromise({try:()=>e.client.callTool({name:r.name,arguments:r.args},{timeout:25e3}),catch:e=>(a=d(e),new ay({transport:`appserver`,message:`The plugin did not answer.`}))}).pipe(_.ensuring(_.promise(()=>e.close()))),n=(Array.isArray(t.content)?t.content:[]).map(e=>e.text).filter(e=>typeof e==`string`).join(` `);return t.isError===!0?{status:`blocked`,message:n}:{status:`ok`}}).pipe(_.catchTags({McpConnectionError:()=>_.succeed({status:`blocked`,message:a?`macOS has not answered yet. If a permission prompt is on screen, answer it, then check again.`:`Could not start the plugin. Check that Codex is installed and signed in.`}),McpOAuthReauthorizationRequired:()=>_.succeed({status:`blocked`,message:`The plugin needs to be re-authorized in Codex.`})}),_.withSpan(`mcp.plugin.check_codex_plugin_access`))}),p=()=>t?_.promise(()=>import(`./codex-plugins-TDUKNEVV.mjs`)).pipe(_.map(e=>e.scanCodexPlugins()),_.withSpan(`mcp.plugin.list_codex_plugins`)):_.succeed([]);return{probeEndpoint:i,addServer:a,removeServer:s,reconcileStdioConnections:o,getServer:c,configureServer:l,configureAuth:u,listCodexPlugins:p,checkCodexPluginAccess:f}},resolveTools:({config:e,connection:n,template:r,getValues:i,httpClientLayer:a})=>_.gen(function*(){let o=Dy(e);if(!o)return{tools:[],incomplete:!0};let s=yield*pC(o,yield*i().pipe(_.orElseSucceed(()=>({}))),r===null?null:String(r),t,a).pipe(_.result);if(A.isFailure(s))return{tools:[],incomplete:!0,incompleteReason:s.failure.message};let c=yield*ux(s.success).pipe(_.result,_.withSpan(`mcp.plugin.discover_tools`,{attributes:{"mcp.connection.name":String(n.name)}}));if(A.isFailure(c)){let e=c.failure.reauthorizationRequired===!0;return{tools:[],incomplete:!0,incompleteReason:c.failure.message,...e?{health:{status:`expired`,checkedAt:Date.now(),detail:`MCP OAuth reauthorization required`}}:{}}}return{tools:c.success.manifest.tools.map(nC)}}).pipe(_.withSpan(`mcp.plugin.resolve_tools`,{attributes:{"mcp.connection.name":String(n.name)}})),invokeTool:({ctx:r,toolRow:i,credential:a,args:o,elicit:s})=>_.gen(function*(){let c=Dy(a.config);if(!c)return yield*new ay({transport:`auto`,message:`MCP integration "${i.integration}" has no usable config`});let l=OS(i.annotations);if(!l)return yield*new oy({stage:`list_tools`,message:`Tool "${i.name}" is missing its MCP binding \u2014 refresh the connection`});let u=c.transport===`stdio`?`stdio`:c.remoteTransport??`auto`;if(c.transport===`remote`){let e=fC(c,String(a.template));if(e?.kind===`apikey`){let t=Hv(e.placements).filter(e=>a.values[e]==null);if(t.length>0)return cm({code:`connection_value_missing`,message:`Connection has no resolvable credential value for input(s): ${t.join(`, `)}. Re-create the connection with the required value(s).`,integration:{id:String(a.integration)},credential:{kind:`upstream`,label:String(a.connection)}})}}let d=e?.httpClientLayer??r.httpClientLayer,f=yield*pC(c,a.values,String(a.template),t,d),p=Xb(f),m=hC(f)?yield*gC(f,String(a.template),a.values,{owner:String(a.owner),connection:String(a.connection)}):void 0,h={owner:a.owner,integration:a.integration,name:a.connection},g=!1,v=yield*Lx({toolId:String(i.name),toolName:l.toolName,args:o,transport:u,connector:p,...m===void 0?{}:{connectionPool:n,connectionPoolKey:m},elicit:s,onToolListChanged:()=>{g=!0}}).pipe(_.onExit(()=>g?r.connections.markToolsStale(h).pipe(_.ignore):_.void)),y=E.getOrUndefined(oC(v));if(y?.isError===!0){let e=sC(y.content);if(xx(e,l.toolName))return yield*r.connections.markToolsStale(h).pipe(_.ignore,_.as(cC(String(i.name),a)));if(c.transport===`remote`){let t=yield*_S({endpoint:c.endpoint,toolName:l.toolName,args:o,accessToken:a.values[Fv],upstreamErrorMessage:e}).pipe(_.provide(d));if(E.isSome(t))return cu.ok(t.value)}return cu.fail({code:`mcp_tool_error`,message:e,details:{content:y.content}})}return cu.ok(v)}).pipe(_.catchTag(`McpOAuthReauthorizationRequired`,()=>_.succeed(KS({integration:String(a.integration),connection:String(a.connection)}))),_.catchTag(`McpConnectionError`,e=>e.httpStatus===401||e.httpStatus===403?_.succeed(GS({status:e.httpStatus,integration:String(a.integration),connection:String(a.connection),...e.insufficientScope===!0?{insufficientScope:!0}:{}})):_.succeed(cm({code:`connection_rejected`,message:e.message,integration:{id:String(a.integration)},credential:{kind:`upstream`,label:String(a.connection)}}))),_.catchTag(`McpInvocationError`,e=>e.status===401||e.status===403?_.succeed(GS({status:e.status,integration:String(a.integration),connection:String(a.connection),...e.insufficientScope===!0?{insufficientScope:!0}:{}})):e.unknownTool===!0?r.connections.markToolsStale({owner:a.owner,integration:a.integration,name:a.connection}).pipe(_.ignore,_.as(cC(String(i.name),a))):e.protocolError===void 0?e.httpRefusal===void 0?_.fail(e):_.succeed(cu.fail({code:`mcp_tool_error`,message:e.httpRefusal.message,status:e.httpRefusal.status,retryable:!1,details:{upstream:{status:e.httpRefusal.status}}})):_.succeed(cu.fail({code:`mcp_tool_error`,message:e.protocolError.message,retryable:!1,details:{jsonrpc:{code:e.protocolError.code}}}))),_.withSpan(`mcp.plugin.invoke_tool`,{attributes:{"mcp.tool.name":String(i.name),"mcp.integration.slug":String(i.integration)}})),detect:({ctx:t,url:n})=>_.gen(function*(){let r=e?.httpClientLayer??t.httpClientLayer,i=n.trim();if(!i)return null;let a=yield*_.try({try:()=>new URL(i),catch:e=>e}).pipe(_.option);if(E.isNone(a))return null;let o=a.value.hostname||`mcp`,s=Ky({endpoint:i});return(yield*ux({transport:`remote`,endpoint:i,httpClientLayer:r}).pipe(_.map(()=>!0),_.catch(()=>_.succeed(!1)),_.withSpan(`mcp.plugin.discover_tools`)))||(yield*tS(i,{httpClientLayer:r})).kind===`mcp`?{kind:vS,confidence:`high`,endpoint:i,name:o,slug:s}:lC(a.value,`mcp`)?{kind:vS,confidence:`low`,endpoint:i,name:o,slug:s}:null}).pipe(_.catch(()=>_.succeed(null)),_.withSpan(`mcp.plugin.detect`,{attributes:Ov(`mcp.endpoint`,n)})),resolveAnnotations:({toolRows:e})=>_.sync(()=>{let t={};for(let n of e){let e=OS(n.annotations),r=e?.upstream;r?.destructiveHint===!0?t[String(n.name)]={requiresApproval:!0,approvalDescription:r.title??e?.toolName??String(n.name)}:t[String(n.name)]={requiresApproval:!1}}return t}),checkHealth:({ctx:n,credential:r})=>_.gen(function*(){let i=Dy(r.config);if(!i)return{status:`unknown`,checkedAt:Date.now()};if(i.transport===`remote`){let e=fC(i,String(r.template));if(e?.kind===`apikey`){let t=Hv(e.placements).filter(e=>r.values[e]==null);if(t.length>0)return{status:`expired`,checkedAt:Date.now(),detail:`Connection has no resolvable credential value for input(s): ${t.join(`, `)}.`,reason:`credential_missing`}}}return yield*ux(yield*pC(i,r.values,r.template===null?null:String(r.template),t,e?.httpClientLayer??n.httpClientLayer)).pipe(_.map(()=>({status:`healthy`,checkedAt:Date.now()})),_.catchTag(`McpToolDiscoveryError`,e=>_.succeed({status:yS(e),checkedAt:Date.now(),...e.httpStatus===void 0?{}:{httpStatus:e.httpStatus},detail:e.message,reason:bS(e)})))}).pipe(_.catchTag(`McpConnectionError`,e=>_.succeed({status:yS(e),checkedAt:Date.now(),...e.httpStatus===void 0?{}:{httpStatus:e.httpStatus},detail:e.message,reason:bS(e)})),_.tap(e=>_.annotateCurrentSpan({"mcp.health.status":e.status,...`httpStatus`in e&&e.httpStatus!==void 0?{"mcp.health.http_status":e.httpStatus}:{},...`reason`in e&&e.reason!==void 0?{"mcp.health.reason":e.reason}:{}})),_.withSpan(`mcp.plugin.check_health`,{attributes:{"executor.integration":String(r.integration),"mcp.connection.name":String(r.connection)}})),describeAuthMethods:vC,describeIntegrationDisplay:yC,integrationConfigure:{type:`mcp`,configure:({ctx:e,integration:t,config:n})=>_.gen(function*(){let r=Dy(n);r&&(yield*e.core.integrations.update(t,{config:r}))})},staticIntegrations:e=>[{id:`mcp`,kind:`executor`,name:`MCP`,tools:[ru({name:`probeEndpoint`,description:"Probe a remote MCP endpoint before adding it. If the result requires OAuth, run the core OAuth handoff (`oauth.probe`, `oauth.start`) to mint a connection; otherwise create a connection with `connections.create` carrying the API key or header value.",inputSchema:BS,outputSchema:VS,execute:t=>e.probeEndpoint(t).pipe(_.map(cu.ok),_.catchTag(`McpConnectionError`,({message:e,transport:t})=>_.succeed(WS(`mcp_connection_failed`,e,{transport:t}))))}),ru({name:`getServer`,description:"Inspect a registered MCP integration, including transport, endpoint/command, and auth template. Use this before creating a connection (`connections.create` / `oauth.start`).",inputSchema:HS,outputSchema:US,execute:t=>{let n=t;return _.map(e.getServer(n.slug),e=>cu.ok({integration:e}))}}),ru({name:`addServer`,description:"Register an MCP server in the catalog as an integration. Returns its `slug`. Then create a connection against it: for header/API-key auth call `connections.create` with the value; for OAuth-protected servers run `oauth.probe` + `oauth.start`. Tools are produced per-connection at connection create / refresh.",annotations:{requiresApproval:!0,approvalDescription:`Add an MCP server`},inputSchema:RS,outputSchema:zS,execute:t=>{let n=t;return e.addServer(n).pipe(_.map(cu.ok),_.catchTag(`IntegrationAlreadyExistsError`,({slug:e})=>_.succeed(WS(`integration_already_exists`,`Integration ${e} already exists; update it instead of re-adding.`))))}})]}]}}),xC=j.Union([j.Struct({kind:j.Literal(`none`)}),j.Struct({kind:j.Literal(`header`),headerName:j.String,prefix:j.optional(j.String)}),j.Struct({kind:j.Literal(`query`),paramName:j.String,prefix:j.optional(j.String)}),j.Struct({kind:j.Literal(`oauth2`)})]);j.decodeUnknownOption(xC);var SC=j.Struct({slug:j.String,kind:j.Literal(`header`),headerName:j.String,prefix:j.optional(j.String)}),CC=j.Struct({slug:j.String,kind:j.Literal(`query`),paramName:j.String,prefix:j.optional(j.String)}),wC=j.Struct({slug:j.String,type:j.Literal(`oauth`)});j.decodeUnknownOption(SC),j.decodeUnknownOption(CC),j.decodeUnknownOption(wC),j.decodeUnknownOption(j.Union([j.Struct({slug:j.String,kind:j.Literals([`none`,`oauth2`])}),j.Struct({slug:j.String,kind:j.Literal(`apikey`),label:j.optional(j.String),placements:j.Array(j.Unknown)})]));var TC=class extends Error{constructor(e){super(e),this.code=e,this.name=e}},EC=class{constructor(e){this.executor=e,this.pending=new Map,this.attempted=new Set}start(e,t,n){let r=this;return _.gen(function*(){if(e.transport.transport!==`remote`||e.transport.authentication.kind!==`none`)return yield*_.fail(new TC(`McpOAuthUnsupportedTransport`));yield*r.release(e.registrationId);let i=yield*r.executor.oauth.probe({url:e.transport.endpoint}),a=$e.make(`harness-${e.registrationId}`),o=n.client?yield*r.executor.oauth.createClient({owner:`org`,slug:a,grant:`authorization_code`,authorizationUrl:i.authorizationUrl,tokenUrl:i.tokenUrl,resource:i.resource??e.transport.endpoint,clientId:n.client.clientId,clientSecret:n.client.clientSecret??``,origin:{kind:`manual`,integration:t.integration}}):i.registrationEndpoint?yield*r.executor.oauth.registerDynamicClient({owner:`org`,slug:a,issuer:i.issuer,registrationEndpoint:i.registrationEndpoint,authorizationUrl:i.authorizationUrl,tokenUrl:i.tokenUrl,resource:i.resource??e.transport.endpoint,scopes:i.scopesSupported??[],tokenEndpointAuthMethodsSupported:i.tokenEndpointAuthMethodsSupported,redirectUri:n.redirectUri,clientName:`Agent Harness`,originIntegration:t.integration}):yield*_.fail(new TC(`McpOAuthClientRequired`)),s=yield*r.executor.oauth.start({...t,client:o,clientOwner:`org`,template:Xe.make(`oauth2`),redirectUri:n.redirectUri});return s.status===`redirect`?(r.pending.set(e.registrationId,String(s.state)),r.attempted.add(e.registrationId),{authorizationUrl:s.authorizationUrl,state:String(s.state)}):yield*_.fail(new TC(`McpOAuthUnexpectedGrant`))})}complete(e,t,n){let r=this;return _.gen(function*(){yield*r.assertPending(e,t),yield*r.executor.oauth.complete({state:et.make(t),code:n}),r.pending.delete(e)})}cancel(e,t){let n=this;return _.gen(function*(){yield*n.assertPending(e,t),yield*n.executor.oauth.cancel(et.make(t)),n.pending.delete(e)})}release(e){let t=this;return _.gen(function*(){let n=t.pending.get(e);n!==void 0&&(yield*t.executor.oauth.cancel(et.make(n)),t.pending.delete(e))})}forget(e){this.pending.delete(e),this.attempted.delete(e)}status(e,t){if(e.transport.transport!==`remote`)return`unsupported`;if(t?.oauthClient)return t.lastHealth?.status===`expired`||t.lastHealth?.httpStatus===401?`notLoggedIn`:`oAuth`;if(this.attempted.has(e.registrationId)||t?.lastHealth?.httpStatus===401)return`notLoggedIn`;if(e.transport.authentication.kind===`headers`){let t=Object.entries(e.transport.authentication.placements).find(([e])=>e.toLowerCase()===`authorization`);if(t&&/^bearer\s/i.test(e.transport.headers[t[1]]??``))return`bearerToken`}return`unknown`}assertPending(e,t){return _.suspend(()=>this.pending.get(e)===t?_.void:_.fail(new TC(`McpOAuthInvalidState`)))}};function DC(e,t){let n=bC(e),r=n.invokeTool;return!r||!t?n:{...n,invokeTool:e=>r({...e,ctx:{...e.ctx,connections:{...e.ctx.connections,markToolsStale:n=>e.ctx.connections.markToolsStale(n).pipe(_.tap(()=>_.sync(()=>t(String(n.integration),String(n.name)))))}}})}}function OC(e){if(!e||typeof e!=`object`||!(`sourceId`in e)||typeof e.sourceId!=`string`)throw Error(`Invalid client MCP source`);return e.sourceId}var kC=iu(e=>({id:`clientMcp`,storage:()=>void 0,remoteToolCatalog:!0,extension:e=>({register:(t,n)=>e.core.integrations.register({slug:t,name:String(t),description:`Client MCP`,canRemove:!0,canRefresh:!0,config:{sourceId:n,authenticationTemplate:[{slug:`none`,kind:`none`}]}})}),describeAuthMethods:()=>[{id:`none`,label:`Client-owned connection`,kind:`none`,template:`none`}],resolveTools:({config:t})=>_.tryPromise(async n=>{if(!e?.request)throw Error(`Client MCP bridge unavailable`);return{tools:Hy(await e.request(OC(t),`tools/list`,{},n)).tools.map(e=>({name:at.make(e.toolId),description:e.description??void 0,inputSchema:e.inputSchema,outputSchema:e.outputSchema==null?void 0:{type:`object`,properties:{content:{type:`array`},structuredContent:e.outputSchema},required:[`content`,`structuredContent`]},annotations:{mayElicit:!0,requiresApproval:e.annotations?.destructiveHint===!0,mcp:{toolName:e.toolName,upstream:e.annotations,_meta:e._meta}}}))}}).pipe(_.catch(()=>_.succeed({tools:[],incomplete:!0,incompleteReason:`Client MCP catalog unavailable`}))),invokeTool:({credential:t,toolRow:n,args:r})=>_.tryPromise(async i=>{if(!e?.request)throw Error(`Client MCP bridge unavailable`);let a=n.annotations;return e.request(OC(t.config),`tools/call`,{name:a?.mcp?.toolName??String(n.name),arguments:r},i)})})),AC=q(((e,t)=>{t.exports={kClose:Symbol(`close`),kDestroy:Symbol(`destroy`),kDispatch:Symbol(`dispatch`),kUrl:Symbol(`url`),kRequestOrigin:Symbol(`request origin`),kOriginless:Symbol(`originless`),kWriting:Symbol(`writing`),kResuming:Symbol(`resuming`),kQueue:Symbol(`queue`),kConnect:Symbol(`connect`),kConnecting:Symbol(`connecting`),kKeepAliveDefaultTimeout:Symbol(`default keep alive timeout`),kKeepAliveMaxTimeout:Symbol(`max keep alive timeout`),kKeepAliveTimeoutThreshold:Symbol(`keep alive timeout threshold`),kKeepAliveTimeoutValue:Symbol(`keep alive timeout`),kKeepAlive:Symbol(`keep alive`),kHeadersTimeout:Symbol(`headers timeout`),kBodyTimeout:Symbol(`body timeout`),kServerName:Symbol(`server name`),kLocalAddress:Symbol(`local address`),kHost:Symbol(`host`),kNoRef:Symbol(`no ref`),kBodyUsed:Symbol(`used`),kBody:Symbol(`abstracted request body`),kRunning:Symbol(`running`),kBlocking:Symbol(`blocking`),kPending:Symbol(`pending`),kSize:Symbol(`size`),kBusy:Symbol(`busy`),kQueued:Symbol(`queued`),kFree:Symbol(`free`),kConnected:Symbol(`connected`),kClosed:Symbol(`closed`),kNeedDrain:Symbol(`need drain`),kReset:Symbol(`reset`),kDestroyed:Symbol.for(`nodejs.stream.destroyed`),kResume:Symbol(`resume`),kOnError:Symbol(`on error`),kMaxHeadersSize:Symbol(`max headers size`),kRunningIdx:Symbol(`running index`),kPendingIdx:Symbol(`pending index`),kError:Symbol(`error`),kClients:Symbol(`clients`),kClient:Symbol(`client`),kParser:Symbol(`parser`),kOnDestroyed:Symbol(`destroy callbacks`),kPipelining:Symbol(`pipelining`),kSocket:Symbol(`socket`),kHostHeader:Symbol(`host header`),kConnector:Symbol(`connector`),kStrictContentLength:Symbol(`strict content length`),kMaxRedirections:Symbol(`maxRedirections`),kMaxRequests:Symbol(`maxRequestsPerClient`),kProxy:Symbol(`proxy agent options`),kCounter:Symbol(`socket request counter`),kMaxResponseSize:Symbol(`max response size`),kHTTP2Session:Symbol(`http2Session`),kHTTP2Options:Symbol(`http2 options`),kHTTP2SessionState:Symbol(`http2Session state`),kRetryHandlerDefaultRetry:Symbol(`retry agent default retry`),kConstruct:Symbol(`constructable`),kListeners:Symbol(`listeners`),kHTTPContext:Symbol(`http context`),kMaxConcurrentStreams:Symbol(`max concurrent streams`),kHostAuthority:Symbol(`host authority`),kHTTP2InitialWindowSize:Symbol(`http2 initial window size`),kHTTP2ConnectionWindowSize:Symbol(`http2 connection window size`),kEnableConnectProtocol:Symbol(`http2session connect protocol`),kRemoteSettings:Symbol(`http2session remote settings`),kHTTP2Stream:Symbol(`http2session client stream`),kPingInterval:Symbol(`ping interval`),kNoProxyAgent:Symbol(`no proxy agent`),kHttpProxyAgent:Symbol(`http proxy agent`),kHttpsProxyAgent:Symbol(`https proxy agent`),kSocks5ProxyAgent:Symbol(`socks5 proxy agent`)}})),jC=q(((e,t)=>{var n=0,r=1e3,i,a=Symbol(`kFastTimer`),o=[],s=-2,c=-1,l=0,u=1;function d(){n+=499;let e=0,t=o.length;for(;e<t;){let r=o[e];r._state===l?(r._idleStart=n-499,r._state=u):r._state===u&&n>=r._idleStart+r._idleTimeout&&(r._state=c,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===c?(r._state=s,--t!==0&&(o[e]=o[t])):++e}o.length=t,o.length!==0&&f()}function f(){i?.refresh?i.refresh():(clearTimeout(i),i=setTimeout(d,499),i?.unref())}var p=class{[a]=!0;_state=s;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,t,n){this._onTimeout=e,this._idleTimeout=t,this._timerArg=n,this.refresh()}refresh(){this._state===s&&o.push(this),(!i||o.length===1)&&f(),this._state=l}clear(){this._state=c,this._idleStart=-1}};t.exports={setTimeout(e,t,n){return t<=r?setTimeout(e,t,n):new p(e,t,n)},clearTimeout(e){e[a]?e.clear():clearTimeout(e)},setFastTimeout(e,t,n){return new p(e,t,n)},clearFastTimeout(e){e.clear()},now(){return n},tick(e=0){n+=e-r+1,d(),d()},reset(){n=0,o.length=0,clearTimeout(i),i=null},kFastTimer:a}})),Q=q(((e,t)=>{var n=Symbol.for(`undici.error.UND_ERR`),r=class extends Error{constructor(e,t){super(e,t),this.name=`UndiciError`,this.code=`UND_ERR`}static[Symbol.hasInstance](e){return e&&e[n]===!0}get[n](){return!0}},i=Symbol.for(`undici.error.UND_ERR_CONNECT_TIMEOUT`),a=class extends r{constructor(e){super(e),this.name=`ConnectTimeoutError`,this.message=e||`Connect Timeout Error`,this.code=`UND_ERR_CONNECT_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[i]===!0}get[i](){return!0}},o=Symbol.for(`undici.error.UND_ERR_HEADERS_TIMEOUT`),s=class extends r{constructor(e){super(e),this.name=`HeadersTimeoutError`,this.message=e||`Headers Timeout Error`,this.code=`UND_ERR_HEADERS_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[o]===!0}get[o](){return!0}},c=Symbol.for(`undici.error.UND_ERR_HEADERS_OVERFLOW`),l=class extends r{constructor(e){super(e),this.name=`HeadersOverflowError`,this.message=e||`Headers Overflow Error`,this.code=`UND_ERR_HEADERS_OVERFLOW`}static[Symbol.hasInstance](e){return e&&e[c]===!0}get[c](){return!0}},u=Symbol.for(`undici.error.UND_ERR_BODY_TIMEOUT`),d=class extends r{constructor(e){super(e),this.name=`BodyTimeoutError`,this.message=e||`Body Timeout Error`,this.code=`UND_ERR_BODY_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[u]===!0}get[u](){return!0}},f=Symbol.for(`undici.error.UND_ERR_INVALID_ARG`),p=class extends r{constructor(e){super(e),this.name=`InvalidArgumentError`,this.message=e||`Invalid Argument Error`,this.code=`UND_ERR_INVALID_ARG`}static[Symbol.hasInstance](e){return e&&e[f]===!0}get[f](){return!0}},m=Symbol.for(`undici.error.UND_ERR_INVALID_RETURN_VALUE`),h=class extends r{constructor(e){super(e),this.name=`InvalidReturnValueError`,this.message=e||`Invalid Return Value Error`,this.code=`UND_ERR_INVALID_RETURN_VALUE`}static[Symbol.hasInstance](e){return e&&e[m]===!0}get[m](){return!0}},g=Symbol.for(`undici.error.UND_ERR_ABORT`),_=class extends r{constructor(e){super(e),this.name=`AbortError`,this.message=e||`The operation was aborted`,this.code=`UND_ERR_ABORT`}static[Symbol.hasInstance](e){return e&&e[g]===!0}get[g](){return!0}},v=Symbol.for(`undici.error.UND_ERR_ABORTED`),y=class extends _{constructor(e){super(e),this.name=`AbortError`,this.message=e||`Request aborted`,this.code=`UND_ERR_ABORTED`}static[Symbol.hasInstance](e){return e&&e[v]===!0}get[v](){return!0}},b=Symbol.for(`undici.error.UND_ERR_INFO`),x=class extends r{constructor(e,t){super(e,t),this.name=`InformationalError`,this.message=e||`Request information`,this.code=`UND_ERR_INFO`}static[Symbol.hasInstance](e){return e&&e[b]===!0}get[b](){return!0}},S=Symbol.for(`undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`),C=class extends r{constructor(e){super(e),this.name=`RequestContentLengthMismatchError`,this.message=e||`Request body length does not match content-length header`,this.code=`UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[S]===!0}get[S](){return!0}},w=Symbol.for(`undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH`),T=class extends r{constructor(e){super(e),this.name=`ResponseContentLengthMismatchError`,this.message=e||`Response body length does not match content-length header`,this.code=`UND_ERR_RES_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[w]===!0}get[w](){return!0}},E=Symbol.for(`undici.error.UND_ERR_DESTROYED`),D=class extends r{constructor(e){super(e),this.name=`ClientDestroyedError`,this.message=e||`The client is destroyed`,this.code=`UND_ERR_DESTROYED`}static[Symbol.hasInstance](e){return e&&e[E]===!0}get[E](){return!0}},O=Symbol.for(`undici.error.UND_ERR_CLOSED`),k=class extends r{constructor(e){super(e),this.name=`ClientClosedError`,this.message=e||`The client is closed`,this.code=`UND_ERR_CLOSED`}static[Symbol.hasInstance](e){return e&&e[O]===!0}get[O](){return!0}},A=Symbol.for(`undici.error.UND_ERR_SOCKET`),j=class extends r{constructor(e,t){super(e),this.name=`SocketError`,this.message=e||`Socket error`,this.code=`UND_ERR_SOCKET`,this.socket=t}static[Symbol.hasInstance](e){return e&&e[A]===!0}get[A](){return!0}},M=Symbol.for(`undici.error.UND_ERR_NOT_SUPPORTED`),N=class extends r{constructor(e){super(e),this.name=`NotSupportedError`,this.message=e||`Not supported error`,this.code=`UND_ERR_NOT_SUPPORTED`}static[Symbol.hasInstance](e){return e&&e[M]===!0}get[M](){return!0}},P=Symbol.for(`undici.error.UND_ERR_BPL_MISSING_UPSTREAM`),F=class extends r{constructor(e){super(e),this.name=`MissingUpstreamError`,this.message=e||`No upstream has been added to the BalancedPool`,this.code=`UND_ERR_BPL_MISSING_UPSTREAM`}static[Symbol.hasInstance](e){return e&&e[P]===!0}get[P](){return!0}},I=Symbol.for(`undici.error.UND_ERR_HTTP_PARSER`),L=class extends Error{constructor(e,t,n){super(e),this.name=`HTTPParserError`,this.code=t?`HPE_${t}`:void 0,this.data=n?n.toString():void 0}static[Symbol.hasInstance](e){return e&&e[I]===!0}get[I](){return!0}},R=Symbol.for(`undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE`),ee=class extends r{constructor(e){super(e),this.name=`ResponseExceededMaxSizeError`,this.message=e||`Response content exceeded max size`,this.code=`UND_ERR_RES_EXCEEDED_MAX_SIZE`}static[Symbol.hasInstance](e){return e&&e[R]===!0}get[R](){return!0}},te=Symbol.for(`undici.error.UND_ERR_REQ_RETRY`),ne=class extends r{constructor(e,t,{headers:n,data:r}){super(e),this.name=`RequestRetryError`,this.message=e||`Request retry error`,this.code=`UND_ERR_REQ_RETRY`,this.statusCode=t,this.data=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[te]===!0}get[te](){return!0}},re=Symbol.for(`undici.error.UND_ERR_RESPONSE`),z=class extends r{constructor(e,t,{headers:n,body:r}){super(e),this.name=`ResponseError`,this.message=e||`Response error`,this.code=`UND_ERR_RESPONSE`,this.statusCode=t,this.body=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[re]===!0}get[re](){return!0}},ie=Symbol.for(`undici.error.UND_ERR_PRX_TLS`),ae=class extends r{constructor(e,t,n={}){super(t,{cause:e,...n}),this.name=`SecureProxyConnectionError`,this.message=t||`Secure Proxy Connection failed`,this.code=`UND_ERR_PRX_TLS`,this.cause=e}static[Symbol.hasInstance](e){return e&&e[ie]===!0}get[ie](){return!0}},oe=Symbol.for(`undici.error.UND_ERR_PRX_CONN`),B=class extends r{constructor(e,t,n={}){super(t,{cause:e,...n}),this.name=`ProxyConnectionError`,this.message=t||`Proxy Connection failed`,this.code=`UND_ERR_PRX_CONN`,this.cause=e}static[Symbol.hasInstance](e){return e&&e[oe]===!0}get[oe](){return!0}},V=Symbol.for(`undici.error.UND_ERR_MAX_ORIGINS_REACHED`),H=class extends r{constructor(e){super(e),this.name=`MaxOriginsReachedError`,this.message=e||`Maximum allowed origins reached`,this.code=`UND_ERR_MAX_ORIGINS_REACHED`}static[Symbol.hasInstance](e){return e&&e[V]===!0}get[V](){return!0}},se=class extends r{constructor(e,t){super(e),this.name=`Socks5ProxyError`,this.message=e||`SOCKS5 proxy error`,this.code=t||`UND_ERR_SOCKS5`}},ce=Symbol.for(`undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`);t.exports={AbortError:_,HTTPParserError:L,UndiciError:r,HeadersTimeoutError:s,HeadersOverflowError:l,BodyTimeoutError:d,RequestContentLengthMismatchError:C,ConnectTimeoutError:a,InvalidArgumentError:p,InvalidReturnValueError:h,RequestAbortedError:y,ClientDestroyedError:D,ClientClosedError:k,InformationalError:x,SocketError:j,NotSupportedError:N,ResponseContentLengthMismatchError:T,BalancedPoolMissingUpstreamError:F,ResponseExceededMaxSizeError:ee,RequestRetryError:ne,ResponseError:z,SecureProxyConnectionError:ae,ProxyConnectionError:B,MaxOriginsReachedError:H,Socks5ProxyError:se,MessageSizeExceededError:class extends r{constructor(e){super(e),this.name=`MessageSizeExceededError`,this.message=e||`Max decompressed message size exceeded`,this.code=`UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`}static[Symbol.hasInstance](e){return e&&e[ce]===!0}get[ce](){return!0}}}})),MC=q(((e,t)=>{var n=`Accept.Accept-Encoding.Accept-Language.Accept-Ranges.Access-Control-Allow-Credentials.Access-Control-Allow-Headers.Access-Control-Allow-Methods.Access-Control-Allow-Origin.Access-Control-Expose-Headers.Access-Control-Max-Age.Access-Control-Request-Headers.Access-Control-Request-Method.Age.Allow.Alt-Svc.Alt-Used.Authorization.Cache-Control.Clear-Site-Data.Connection.Content-Disposition.Content-Encoding.Content-Language.Content-Length.Content-Location.Content-Range.Content-Security-Policy.Content-Security-Policy-Report-Only.Content-Type.Cookie.Cross-Origin-Embedder-Policy.Cross-Origin-Opener-Policy.Cross-Origin-Resource-Policy.Date.Device-Memory.Downlink.ECT.ETag.Expect.Expect-CT.Expires.Forwarded.From.Host.If-Match.If-Modified-Since.If-None-Match.If-Range.If-Unmodified-Since.Keep-Alive.Last-Modified.Link.Location.Max-Forwards.Origin.Permissions-Policy.Pragma.Proxy-Authenticate.Proxy-Authorization.RTT.Range.Referer.Referrer-Policy.Refresh.Retry-After.Sec-WebSocket-Accept.Sec-WebSocket-Extensions.Sec-WebSocket-Key.Sec-WebSocket-Protocol.Sec-WebSocket-Version.Server.Server-Timing.Service-Worker-Allowed.Service-Worker-Navigation-Preload.Set-Cookie.SourceMap.Strict-Transport-Security.Supports-Loading-Mode.TE.Timing-Allow-Origin.Trailer.Transfer-Encoding.Upgrade.Upgrade-Insecure-Requests.User-Agent.Vary.Via.WWW-Authenticate.X-Content-Type-Options.X-DNS-Prefetch-Control.X-Frame-Options.X-Permitted-Cross-Domain-Policies.X-Powered-By.X-Requested-With.X-XSS-Protection`.split(`.`),r={};Object.setPrototypeOf(r,null);for(let e=0;e<n.length;++e){let t=n[e],i=t.toLowerCase();r[t]=r[i]=i}t.exports={wellknownHeaderNames:n,headerNameLowerCasedRecord:r}})),NC=q(((e,t)=>{var{wellknownHeaderNames:n,headerNameLowerCasedRecord:r}=MC(),i=class e{value=null;left=null;middle=null;right=null;code;constructor(t,n,r){if(r===void 0||r>=t.length)throw TypeError(`Unreachable`);if((this.code=t.charCodeAt(r))>127)throw TypeError(`key must be ascii string`);t.length===++r?this.value=n:this.middle=new e(t,n,r)}add(t,n){let r=t.length;if(r===0)throw TypeError(`Unreachable`);let i=0,a=this;for(;;){let o=t.charCodeAt(i);if(o>127)throw TypeError(`key must be ascii string`);if(a.code===o){if(r===++i){a.value=n;break}if(a.middle!==null)a=a.middle;else{a.middle=new e(t,n,i);break}}else if(a.code<o){if(a.left!==null)a=a.left;else{a.left=new e(t,n,i);break}}else if(a.right!==null)a=a.right;else{a.right=new e(t,n,i);break}}}search(e){let t=e.length,n=0,r=this;for(;r!==null&&n<t;){let i=e[n];for(i<=90&&i>=65&&(i|=32);r!==null;){if(i===r.code){if(t===++n)return r;r=r.middle;break}r=r.code<i?r.left:r.right}}return null}},a=class{node=null;insert(e,t){this.node===null?this.node=new i(e,t,0):this.node.add(e,t)}lookup(e){return this.node?.search(e)?.value??null}},o=new a;for(let e=0;e<n.length;++e){let t=r[n[e]];o.insert(t,t)}t.exports={TernarySearchTree:a,tree:o}})),$=q(((e,t)=>{var n=J(`node:assert`),{kDestroyed:r,kBodyUsed:i,kListeners:a,kBody:o}=AC(),{IncomingMessage:s}=J(`node:http`),c=J(`node:stream`),l=J(`node:net`),{stringify:u}=J(`node:querystring`),{EventEmitter:d,addAbortListener:f}=J(`node:events`),p=jC(),{InvalidArgumentError:m,ConnectTimeoutError:h}=Q(),{headerNameLowerCasedRecord:g}=MC(),{tree:_}=NC(),v=class{constructor(e){this[o]=e,this[i]=!1}async*[Symbol.asyncIterator](){n(!this[i],`disturbed`),this[i]=!0,yield*this[o]}};function y(){}function b(e){return x(e)?(F(e)===0&&e.on(`data`,function(){n(!1)}),typeof e.readableDidRead!=`boolean`&&(e[i]=!1,d.prototype.on.call(e,`data`,function(){this[i]=!0})),e):e&&typeof e.pipeTo==`function`?new v(e):e&&se(e)?e:e&&typeof e!=`string`&&!ArrayBuffer.isView(e)&&N(e)?new v(e):e}function x(e){return e&&typeof e==`object`&&typeof e.pipe==`function`&&typeof e.on==`function`}function S(e){return e instanceof Blob}function C(e){return e.includes(`?`)||e.includes(`#`)}function w(e,t){if(C(e))throw Error(`Query params cannot be passed when url already contains "?" or "#".`);let n=u(t);return n&&(e+=`?`+n),e}function T(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function E(e){return e!=null&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&(e[4]===`:`||e[4]===`s`&&e[5]===`:`)}function D(e){if(typeof e==`string`){if(e=new URL(e),!E(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!=`object`)throw new m(`Invalid URL: The URL argument must be a non-null object.`);if(!(e instanceof URL)){if(e.port!=null&&e.port!==``&&T(e.port)===!1)throw new m(`Invalid URL: port must be a valid integer or a string representation of an integer.`);if(e.path!=null&&typeof e.path!=`string`)throw new m(`Invalid URL path: the path must be a string or null/undefined.`);if(e.pathname!=null&&typeof e.pathname!=`string`)throw new m(`Invalid URL pathname: the pathname must be a string or null/undefined.`);if(e.hostname!=null&&typeof e.hostname!=`string`)throw new m(`Invalid URL hostname: the hostname must be a string or null/undefined.`);if(e.origin!=null&&typeof e.origin!=`string`)throw new m(`Invalid URL origin: the origin must be a string or null/undefined.`);if(!E(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port==null?e.protocol===`https:`?443:80:e.port,n=e.origin==null?`${e.protocol||``}//${e.hostname||``}:${t}`:e.origin,r=e.path==null?`${e.pathname||``}${e.search||``}`:e.path;return n[n.length-1]===`/`&&(n=n.slice(0,n.length-1)),r&&r[0]!==`/`&&(r=`/${r}`),new URL(`${n}${r}`)}if(!E(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function O(e){if(e=D(e),e.pathname!==`/`||e.search||e.hash)throw new m(`invalid url`);return e}function k(e){if(e[0]===`[`){let t=e.indexOf(`]`);return n(t!==-1),e.substring(1,t)}let t=e.indexOf(`:`);return t===-1?e:e.substring(0,t)}function A(e){if(!e)return null;n(typeof e==`string`);let t=k(e);return l.isIP(t)?``:t}function j(e){return JSON.parse(JSON.stringify(e))}function M(e){return e!=null&&typeof e[Symbol.asyncIterator]==`function`}function N(e){return!(e==null||typeof e[Symbol.iterator]!=`function`&&typeof e[Symbol.asyncIterator]!=`function`)}function P(e){let t=Object.getPrototypeOf(e);return Object.hasOwn(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function F(e){if(e==null)return 0;if(x(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}return S(e)?e.size==null?null:e.size:oe(e)?e.byteLength:null}function I(e){return e&&!!(e.destroyed||e[r]||c.isDestroyed?.(e))}function L(e,t){if(e!=null&&x(e)&&!I(e)){if(typeof e.destroy==`function`){Object.getPrototypeOf(e).constructor===s&&(e.socket=null);try{e.destroy(t)}catch{}}else t&&queueMicrotask(()=>{e.emit(`error`,t)});e.destroyed!==!0&&(e[r]=!0)}}var R=/timeout=(\d+)/;function ee(e){let t=e.match(R);return t?parseInt(t[1],10)*1e3:null}function te(e){return typeof e==`string`?g[e]??e.toLowerCase():_.lookup(e)??e.toString(`latin1`).toLowerCase()}function ne(e){return _.lookup(e)??e.toString(`latin1`).toLowerCase()}function re(e,t){t===void 0&&(t={});for(let n=0;n<e.length;n+=2){let r=te(e[n]),i=t[r];if(i!==void 0){if(Object.hasOwn(t,r))typeof i==`string`&&(i=[i],t[r]=i),i.push(e[n+1].toString(`latin1`));else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);r===`__proto__`?Object.defineProperty(t,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[r]=i}}else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);t[r]=i}}return t}function z(e){if(e==null)return[];if(!Array.isArray(e)){let t=[];for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.push(n,`${e}`);else t.push(n,`${r}`);return t}let t=e.length,n=Array(t),r,i;for(let a=0;a<t;a+=2)r=e[a],i=e[a+1],typeof r!=`string`&&(r=r.toString()),typeof i!=`string`&&(i=i.toString(`latin1`)),n[a]=r,n[a+1]=i;return n}function ie(e){let t=[];for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.push(Buffer.from(n,`latin1`),Buffer.from(`${e}`,`latin1`));else t.push(Buffer.from(n,`latin1`),Buffer.from(`${r}`,`latin1`));return t}function ae(e){if(!Array.isArray(e))throw TypeError(`expected headers to be an array`);return e.map(e=>Buffer.from(e))}function oe(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}function B(e,t,n){if(!e||typeof e!=`object`)throw new m(`handler must be an object`);if(typeof e.onRequestStart!=`function`)throw new m(`invalid onRequestStart method`);if(typeof e.onResponseError!=`function`)throw new m(`invalid onResponseError method`);if(typeof e.onBodySent!=`function`&&e.onBodySent!==void 0)throw new m(`invalid onBodySent method`);if(typeof e.onRequestSent!=`function`&&e.onRequestSent!==void 0)throw new m(`invalid onRequestSent method`);if(n||t===`CONNECT`){if(typeof e.onRequestUpgrade!=`function`)throw new m(`invalid onRequestUpgrade method`)}else{if(typeof e.onResponseStart!=`function`)throw new m(`invalid onResponseStart method`);if(typeof e.onResponseData!=`function`)throw new m(`invalid onResponseData method`);if(typeof e.onResponseEnd!=`function`)throw new m(`invalid onResponseEnd method`)}}function V(e){return!!(e&&(c.isDisturbed(e)||e[i]))}function H(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}}function se(e){return e&&typeof e==`object`&&typeof e.append==`function`&&typeof e.delete==`function`&&typeof e.get==`function`&&typeof e.getAll==`function`&&typeof e.has==`function`&&typeof e.set==`function`&&e[Symbol.toStringTag]===`FormData`}function ce(e,t){return!e||`aborted`in e?f(e,t)[Symbol.dispose]:typeof e.addEventListener==`function`?(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)):(e.once(`abort`,t),()=>e.removeListener(`abort`,t))}var le=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function U(e){return le[e]===1}var W=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;function ue(e){if(e.length>=12)return W.test(e);if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(le[e.charCodeAt(t)]!==1)return!1;return!0}var de=/[^\t\x20-\x7e\x80-\xff]/;function fe(e){return!de.test(e)}var pe=/^bytes (\d+)-(\d+)\/(\d+|\*)?$/;function me(e){if(e==null||e===``)return{start:0,end:null,size:null};if(!e)return null;let t=pe.exec(e);return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]&&t[3]!==`*`?parseInt(t[3]):null}:null}function G(e,t,n){return(e[a]??=[]).push([t,n]),e.on(t,n),e}function he(e){if(e[a]!=null){for(let[t,n]of e[a])e.removeListener(t,n);e[a]=null}return e}function ge(e,t,r){try{t.onResponseError(r),n(t.aborted)}catch(t){e.emit(`error`,t)}}var _e=process.platform===`win32`?(e,t)=>{if(!t.timeout)return y;let n=null,r=null,i=p.setFastTimeout(()=>{n=setImmediate(()=>{r=setImmediate(()=>ve(e.deref(),t))})},t.timeout);return()=>{p.clearFastTimeout(i),clearImmediate(n),clearImmediate(r)}}:(e,t)=>{if(!t.timeout)return y;let n=null,r=p.setFastTimeout(()=>{n=setImmediate(()=>{ve(e.deref(),t)})},t.timeout);return()=>{p.clearFastTimeout(r),clearImmediate(n)}};function ve(e,t){if(e==null)return;let n=`Connect Timeout Error`;Array.isArray(e.autoSelectFamilyAttemptedAddresses)?n+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(`, `)},`:n+=` (attempted address: ${t.hostname}:${t.port},`,n+=` timeout: ${t.timeout}ms)`,L(e,new h(n))}var K=null,ye=null;function be(e){if(e===K)return ye;let t=xe(e);return K=e,ye=t,t}function xe(e){if(e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`)switch(e[4]){case`:`:return`http:`;case`s`:if(e[5]===`:`)return`https:`}return e.slice(0,e.indexOf(`:`)+1)}var Se={__proto__:null,enumerable:!0},Ce={delete:`DELETE`,DELETE:`DELETE`,get:`GET`,GET:`GET`,head:`HEAD`,HEAD:`HEAD`,options:`OPTIONS`,OPTIONS:`OPTIONS`,post:`POST`,POST:`POST`,put:`PUT`,PUT:`PUT`,query:`QUERY`,QUERY:`QUERY`},we={...Ce,patch:`patch`,PATCH:`PATCH`};Object.setPrototypeOf(Ce,null),Object.setPrototypeOf(we,null),t.exports={kEnumerableProperty:Se,isDisturbed:V,isBlobLike:S,parseOrigin:O,parseURL:D,getServerName:A,isStream:x,isIterable:N,hasSafeIterator:P,isAsyncIterable:M,isDestroyed:I,headerNameToString:te,bufferToLowerCasedHeaderName:ne,addListener:G,removeAllListeners:he,errorRequest:ge,parseRawHeaders:z,toRawHeaders:ie,encodeRawHeaders:ae,parseHeaders:re,parseKeepAliveTimeout:ee,destroy:L,bodyLength:F,deepClone:j,isBuffer:oe,assertRequestHandler:B,getSocketInfo:H,isFormDataLike:se,pathHasQueryOrFragment:C,serializePathWithQuery:w,addAbortListener:ce,isValidHTTPToken:ue,isValidHeaderValue:fe,isTokenCharCode:U,parseRangeHeader:me,normalizedMethodRecordsBase:Ce,normalizedMethodRecords:we,isValidPort:T,isHttpOrHttpsPrefixed:E,safeHTTPMethods:Object.freeze([`GET`,`HEAD`,`OPTIONS`,`TRACE`]),wrapRequestBody:b,setupConnectTimeout:_e,getProtocolFromUrlString:be}})),PC=q(((e,t)=>{var{kConnected:n,kPending:r,kRunning:i,kSize:a,kFree:o,kQueued:s}=AC();t.exports={ClientStats:class{constructor(e){this.connected=e[n],this.pending=e[r],this.running=e[i],this.size=e[a]}},PoolStats:class{constructor(e){this.connected=e[n],this.free=e[o],this.pending=e[r],this.queued=e[s],this.running=e[i],this.size=e[a]}}}})),FC=q(((e,t)=>{var n=J(`node:diagnostics_channel`),r=J(`node:util`),i=r.debuglog(`undici`),a=r.debuglog(`fetch`),o=r.debuglog(`websocket`),s={beforeConnect:n.channel(`undici:client:beforeConnect`),connected:n.channel(`undici:client:connected`),connectError:n.channel(`undici:client:connectError`),sendHeaders:n.channel(`undici:client:sendHeaders`),create:n.channel(`undici:request:create`),bodySent:n.channel(`undici:request:bodySent`),bodyChunkSent:n.channel(`undici:request:bodyChunkSent`),bodyChunkReceived:n.channel(`undici:request:bodyChunkReceived`),headers:n.channel(`undici:request:headers`),trailers:n.channel(`undici:request:trailers`),error:n.channel(`undici:request:error`),open:n.channel(`undici:websocket:open`),close:n.channel(`undici:websocket:close`),socketError:n.channel(`undici:websocket:socket_error`),ping:n.channel(`undici:websocket:ping`),pong:n.channel(`undici:websocket:pong`),proxyConnected:n.channel(`undici:proxy:connected`)},c=!1;function l(e=i){if(!c){if(s.beforeConnect.hasSubscribers||s.connected.hasSubscribers||s.connectError.hasSubscribers||s.sendHeaders.hasSubscribers){c=!0;return}c=!0,n.subscribe(`undici:client:beforeConnect`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connecting to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),n.subscribe(`undici:client:connected`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connected to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),n.subscribe(`undici:client:connectError`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a},error:o}=t;e(`connection to %s%s using %s%s errored - %s`,a,i?`:${i}`:``,r,n,o.message)}),n.subscribe(`undici:client:sendHeaders`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`sending request to %s %s%s`,n,i,r)})}}var u=!1;function d(e=i){if(!u){if(s.headers.hasSubscribers||s.trailers.hasSubscribers||s.error.hasSubscribers){u=!0;return}u=!0,n.subscribe(`undici:request:headers`,t=>{let{request:{method:n,path:r,origin:i},response:{statusCode:a}}=t;e(`received response to %s %s%s - HTTP %d`,n,i,r,a)}),n.subscribe(`undici:request:trailers`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`trailers received from %s %s%s`,n,i,r)}),n.subscribe(`undici:request:error`,t=>{let{request:{method:n,path:r,origin:i},error:a}=t;e(`request to %s %s%s errored - %s`,n,i,r,a.message)})}}var f=!1;function p(e=o){if(!f){if(s.open.hasSubscribers||s.close.hasSubscribers||s.socketError.hasSubscribers||s.ping.hasSubscribers||s.pong.hasSubscribers){f=!0;return}f=!0,n.subscribe(`undici:websocket:open`,t=>{if(t.address!=null){let{address:n,port:r}=t.address;e(`connection opened %s%s`,n,r?`:${r}`:``)}else e(`connection opened`)}),n.subscribe(`undici:websocket:close`,t=>{let{websocket:n,code:r,reason:i}=t;e(`closed connection to %s - %s %s`,n.url,r,i)}),n.subscribe(`undici:websocket:socket_error`,t=>{e(`connection errored - %s`,t.message)}),n.subscribe(`undici:websocket:ping`,t=>{e(`ping received`)}),n.subscribe(`undici:websocket:pong`,t=>{e(`pong received`)})}}(i.enabled||a.enabled)&&(l(a.enabled?a:i),d(a.enabled?a:i)),o.enabled&&(l(i.enabled?i:o),p(o)),t.exports={channels:s}})),IC=q(((e,t)=>{var{InvalidArgumentError:n,NotSupportedError:r}=Q(),i=J(`node:assert`),{isValidHTTPToken:a,isValidHeaderValue:o,isStream:s,destroy:c,isBuffer:l,isFormDataLike:u,isIterable:d,hasSafeIterator:f,isBlobLike:p,serializePathWithQuery:m,parseHeaders:h,assertRequestHandler:g,getServerName:_,normalizedMethodRecords:v,getProtocolFromUrlString:y}=$(),{channels:b}=FC(),{headerNameLowerCasedRecord:x}=MC(),S=/[^\u0021-\u00ff]/;function C(e){if(typeof e!=`string`||e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return!0}var w=Symbol(`handler`),T=Symbol(`controller`),E=Symbol(`resume`),D=class{#e=!1;#t=null;#n=!1;#r;[E]=null;rawHeaders=null;rawTrailers=null;constructor(e){this.#r=e}pause(){this.#e=!0}resume(){this.#e&&(this.#e=!1,this[E]?.())}abort(e){this.#n||(this.#n=!0,this.#t=e,this.#r(e))}get aborted(){return this.#n}get reason(){return this.#t}get paused(){return this.#e}},O=class{constructor(e,{path:t,method:r,body:i,headers:h,query:x,idempotent:C,blocking:T,upgrade:E,headersTimeout:D,bodyTimeout:O,reset:A,expectContinue:j,servername:M,throwOnError:N,maxRedirections:P,typeOfService:F},I){if(typeof t!=`string`)throw new n(`path must be a string`);if(t[0]!==`/`&&!(t.startsWith(`http://`)||t.startsWith(`https://`))&&r!==`CONNECT`)throw new n(`path must be an absolute URL or start with a slash`);if(S.test(t))throw new n(`invalid request path`);if(typeof r!=`string`)throw new n(`method must be a string`);if(v[r]===void 0&&!a(r))throw new n(`invalid request method`);if(E&&typeof E!=`string`)throw new n(`upgrade must be a string`);if(E&&!o(E))throw new n(`invalid upgrade header`);if(D!=null&&(!Number.isFinite(D)||D<0))throw new n(`invalid headersTimeout`);if(O!=null&&(!Number.isFinite(O)||O<0))throw new n(`invalid bodyTimeout`);if(A!=null&&typeof A!=`boolean`)throw new n(`invalid reset`);if(j!=null&&typeof j!=`boolean`)throw new n(`invalid expectContinue`);if(N!=null)throw new n(`invalid throwOnError`);if(P!=null&&P!==0)throw new n(`maxRedirections is not supported, use the redirect interceptor`);if(F!=null&&(!Number.isInteger(F)||F<0||F>255))throw new n(`typeOfService must be an integer between 0 and 255`);if(this.headersTimeout=D,this.bodyTimeout=O,this.method=r,this.typeOfService=F,this.abort=null,i==null)this.body=null;else if(s(i)){this.body=i;let e=this.body._readableState;(!e||!e.autoDestroy)&&(this.endHandler=function(){c(this)},this.body.on(`end`,this.endHandler)),this.errorHandler=e=>{this.abort?this.abort(e):this.error=e},this.body.on(`error`,this.errorHandler)}else if(l(i))this.body=i.byteLength?i:null;else if(ArrayBuffer.isView(i))this.body=i.buffer.byteLength?Buffer.from(i.buffer,i.byteOffset,i.byteLength):null;else if(i instanceof ArrayBuffer)this.body=i.byteLength?Buffer.from(i):null;else if(typeof i==`string`)this.body=i.length?Buffer.from(i):null;else if(u(i)||d(i)||p(i))this.body=i;else throw new n(`body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable`);if(this.completed=!1,this.aborted=!1,this.upgrade=E||null,this.path=x?m(t,x):t,this.origin=e,this.protocol=y(e),this.idempotent=C??(r===`HEAD`||r===`GET`||r===`QUERY`),this.blocking=T??this.method!==`HEAD`,this.reset=A??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=j??!1,Array.isArray(h)){if(h.length%2!=0)throw new n(`headers array must be even`);for(let e=0;e<h.length;e+=2)k(this,h[e],h[e+1])}else if(h&&typeof h==`object`){if(f(h))for(let e of h){if(!Array.isArray(e)||e.length!==2)throw new n(`headers must be in key-value pair format`);k(this,e[0],e[1])}else{let e=Object.keys(h);for(let t=0;t<e.length;++t)k(this,e[t],h[e[t]])}}else if(h!=null)throw new n(`headers must be an object or an array`);g(I,r,E),this.servername=M||_(this.host)||null,this[w]=I,b.create.hasSubscribers&&b.create.publish({request:this})}onBodySent(e){if(b.bodyChunkSent.hasSubscribers&&b.bodyChunkSent.publish({request:this,chunk:e}),this[w].onBodySent)try{return this[w].onBodySent(e)}catch(e){this.abort(e)}}onRequestSent(){if(b.bodySent.hasSubscribers&&b.bodySent.publish({request:this}),this[w].onRequestSent)try{return this[w].onRequestSent()}catch(e){this.abort(e)}}onRequestStart(e,t){if(i(!this.aborted),i(!this.completed),this[T]=new D(e),this.error){this[T].abort(this.error);return}return this.abort=e,this[w].onRequestStart(this[T],t)}onResponseStarted(){return this[w].onResponseStarted?.()}onResponseStart(e,t,n,r){i(!this.aborted),i(!this.completed),b.headers.hasSubscribers&&b.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:r}});let a=this[T];a&&(a[E]=n,a.rawHeaders=t);let o=Array.isArray(t)?h(t):t;try{return this[w].onResponseStart?.(a,e,o,r),!a?.paused}catch(e){return this.abort(e),!1}}onResponseData(e){i(!this.aborted),i(!this.completed),b.bodyChunkReceived.hasSubscribers&&b.bodyChunkReceived.publish({request:this,chunk:e});let t=this[T];try{return this[w].onResponseData?.(t,e),!t?.paused}catch(e){return this.abort(e),!1}}onRequestUpgrade(e,t,n,r=``){this.onFinally(),i(!this.aborted),i(!this.completed),b.headers.hasSubscribers&&b.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:r}});let a=this[T];a&&(a.rawHeaders=t);let o=Array.isArray(t)?h(t):t,s=this[w].onRequestUpgrade?.(a,e,o,n);return this.aborted||(this.completed=!0,b.trailers.hasSubscribers&&b.trailers.publish({request:this,trailers:[]})),s}onResponseEnd(e){this.onFinally(),i(!this.aborted),i(!this.completed),this.completed=!0,b.trailers.hasSubscribers&&b.trailers.publish({request:this,trailers:e});let t=this[T];t&&(t.rawTrailers=e);let n=Array.isArray(e)?h(e):e;try{return this[w].onResponseEnd?.(t,n)}catch(e){this.onResponseError(e)}}onResponseError(e){if(this.onFinally(),b.error.hasSubscribers&&b.error.publish({request:this,error:e}),this.aborted)return;this.aborted=!0;let t=this[T];return this[w].onResponseError?.(t,e)}onFinally(){this.errorHandler&&=(this.body.off(`error`,this.errorHandler),null),this.endHandler&&=(this.body.off(`end`,this.endHandler),null)}addHeader(e,t){return k(this,e,t),this}};function k(e,t,i){if(i&&typeof i==`object`&&!Array.isArray(i))throw new n(`invalid ${t} header`);if(i===void 0)return;let s=x[t];if(s===void 0&&(s=t.toLowerCase(),x[s]===void 0&&!a(s)))throw new n(`invalid header key`);if(Array.isArray(i)){let e=[];for(let r=0;r<i.length;r++)if(typeof i[r]==`string`){if(!o(i[r]))throw new n(`invalid ${t} header`);e.push(i[r])}else if(i[r]===null)e.push(``);else if(typeof i[r]==`object`)throw new n(`invalid ${t} header`);else{let a=`${i[r]}`;if(!o(a))throw new n(`invalid ${t} header`);e.push(a)}i=e}else if(typeof i==`string`){if(!o(i))throw new n(`invalid ${t} header`)}else if(i===null)i=``;else if(i=`${i}`,!o(i))throw new n(`invalid ${t} header`);if(s===`host`){if(e.host!==null)throw new n(`duplicate host header`);if(typeof i!=`string`)throw new n(`invalid host header`);e.host=i}else if(s===`content-length`){if(e.contentLength!==null)throw new n(`duplicate content-length header`);if(!C(i))throw new n(`invalid content-length header`);e.contentLength=parseInt(i,10)}else if(e.contentType===null&&s===`content-type`)e.contentType=i,e.headers.push(t,i);else if(s===`transfer-encoding`||s===`keep-alive`||s===`upgrade`)throw new n(`invalid ${s} header`);else if(s===`connection`){let t=typeof i==`string`?i:null;if(t===null)throw new n(`invalid connection header`);for(let r of t.toLowerCase().split(`,`)){let t=r.trim();if(!a(t))throw new n(`invalid connection header`);t===`close`&&(e.reset=!0)}}else if(s===`expect`)throw new r(`expect header not supported`);else e.headers.push(t,i)}t.exports=O})),LC=q(((e,t)=>{var n=J(`node:events`),{kOriginless:r,kUrl:i}=AC();t.exports=class extends n{dispatch(){throw Error(`not implemented`)}close(){throw Error(`not implemented`)}destroy(){throw Error(`not implemented`)}compose(...e){let t=Array.isArray(e[0])?e[0]:e,n=this[r]===!0?null:this[i]?.origin,a=this.dispatch.bind(this);for(let e of t)if(e!=null){if(typeof e!=`function`)throw TypeError(`invalid interceptor, expected function received ${typeof e}`);if(a=e(a,n),a==null||typeof a!=`function`||a.length!==2)throw TypeError(`invalid interceptor`)}let o=a,s=this;return a=function(e,t){return e&&typeof e==`object`&&!e.origin&&s[i]&&(e=Object.assign({},e,{origin:s[i].origin})),o(e,t)},new Proxy(this,{get:(e,t)=>t===`dispatch`?a:e[t]})}}})),RC=q(((e,t)=>{var n=J(`node:buffer`),r=LC(),{ClientDestroyedError:i,ClientClosedError:a,InvalidArgumentError:o}=Q(),{kDestroy:s,kClose:c,kClosed:l,kDestroyed:u,kDispatch:d}=AC(),f=Symbol(`onDestroyed`),p=Symbol(`onClosed`),m=Symbol(`webSocketOptions`),h=Symbol(`eventSourceOptions`);t.exports=class extends r{[u]=!1;[f]=null;[l]=!1;[p]=null;constructor(e){super(),this[m]=e?.webSocket??{},this[h]=e?.eventSource??{}}get webSocketOptions(){return{maxFragments:this[m].maxFragments??131072,maxPayloadSize:this[m].maxPayloadSize??134217728}}get eventSourceOptions(){return{maxEventSize:this[h].maxEventSize??n.kStringMaxLength}}get destroyed(){return this[u]}get closed(){return this[l]}close(e){if(e===void 0)return new Promise((e,t)=>{this.close((n,r)=>n?t(n):e(r))});if(typeof e!=`function`)throw new o(`invalid callback`);if(this[u]){let t=new i;queueMicrotask(()=>e(t,null));return}if(this[l]){this[p]?this[p].push(e):queueMicrotask(()=>e(null,null));return}this[l]=!0,this[p]??=[],this[p].push(e);let t=()=>{let e=this[p];this[p]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[c]().then(()=>this.destroy()).then(()=>queueMicrotask(t))}destroy(e,t){if(typeof e==`function`&&(t=e,e=null),t===void 0)return new Promise((t,n)=>{this.destroy(e,(e,r)=>e?n(e):t(r))});if(typeof t!=`function`)throw new o(`invalid callback`);if(this[u]){this[f]?this[f].push(t):queueMicrotask(()=>t(null,null));return}e||=new i,this[u]=!0,this[f]??=[],this[f].push(t);let n=()=>{let e=this[f];this[f]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[s](e).then(()=>queueMicrotask(n))}dispatch(e,t){if(!t||typeof t!=`object`)throw new o(`handler must be an object`);try{if(!e||typeof e!=`object`)throw new o(`opts must be an object.`);if(e.dispatcher)throw new o(`opts.dispatcher is not supported by instance methods. Pass opts.dispatcher to the top-level undici functions or call the dispatcher instance method directly.`);if(this[u]||this[f])throw new i;if(this[l])throw new a;return this[d](e,t)}catch(e){if(typeof t.onResponseError!=`function`)throw e;return t.onResponseError(null,e),!1}}}})),zC=q(((e,t)=>{var n=J(`node:net`),r=J(`node:assert`),i=$(),{InvalidArgumentError:a,ConnectTimeoutError:o}=Q(),s,c=class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry(e=>{if(this._sessionCache.size<this._maxCachedSessions)return;let t=this._sessionCache.get(e);t!==void 0&&t.deref()===void 0&&this._sessionCache.delete(e)})}get(e){let t=this._sessionCache.get(e);return t?t.deref():null}set(e,t){if(this._maxCachedSessions!==0){if(this._sessionCache.has(e))this._sessionCache.delete(e);else if(this._sessionCache.size>=this._maxCachedSessions){for(let[e,t]of this._sessionCache)if(t.deref()===void 0){this._sessionCache.delete(e);return}let e=this._sessionCache.keys().next();e.done||this._sessionCache.delete(e.value)}this._sessionCache.set(e,new WeakRef(t)),this._sessionRegistry.register(t,e)}}};function l({allowH2:e,preferH2:t,useH2c:o,maxCachedSessions:l,socketPath:d,timeout:f,session:p,...m}){if(l!=null&&(!Number.isInteger(l)||l<0))throw new a(`maxCachedSessions must be a positive integer or zero`);let h={path:d,...m},g=new c(l??100);return f??=1e4,e??=!0,function({hostname:a,host:c,protocol:l,port:d,servername:m,localAddress:_,httpSocket:v},y){let b;if(l===`https:`){s||=J(`node:tls`),m=m||h.servername||i.getServerName(c)||null;let n=m||a;r(n);let o=p||g.get(n)||null;d||=443,b=s.connect({highWaterMark:16384,...h,servername:m,session:o,localAddress:_,ALPNProtocols:e?t?[`h2`,`http/1.1`]:[`http/1.1`,`h2`]:[`http/1.1`],socket:v,port:d,host:a}),b.on(`session`,function(e){g.set(n,e)})}else{r(!v,`httpSocket can only be sent on TLS update`),d||=80;let e={highWaterMark:65536,...h,localAddress:_,port:d,host:a},t=n.isIP(a);t!==0&&m&&m!==a&&(e.host=m,e.lookup=(e,n,r)=>{n.all?r(null,[{address:a,family:t}]):r(null,a,t)}),b=n.connect(e),o===!0&&(b.alpnProtocol=`h2`)}if(h.keepAlive==null||h.keepAlive){let e=h.keepAliveInitialDelay===void 0?6e4:h.keepAliveInitialDelay;b.setKeepAlive(!0,e)}let x=i.setupConnectTimeout(new WeakRef(b),{timeout:f,hostname:a,port:d});return b.setNoDelay(!0).once(l===`https:`?`secureConnect`:`connect`,function(){if(queueMicrotask(x),y){let e=y;y=null,e(null,this)}}).on(`error`,function(e){if(queueMicrotask(x),y){let t=y;y=null,t(u(e,this,{timeout:f,hostname:a,port:d}))}}),b}}function u(e,t,n){if(e instanceof AggregateError&&(e.code===`ETIMEDOUT`||e.errors.some(e=>e!=null&&e.code===`ETIMEDOUT`))){let r=`Connect Timeout Error`;Array.isArray(t.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${t.autoSelectFamilyAttemptedAddresses.join(`, `)},`:r+=` (attempted address: ${n.hostname}:${n.port},`,r+=` timeout: ${n.timeout}ms)`;let i=new o(r);return i.cause=e,i}return e}t.exports=l})),BC=q((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.enumToMap=t;function t(e,t=[],n=[]){let r=(t?.length??0)===0,i=(n?.length??0)===0;return Object.fromEntries(Object.entries(e).filter(([,e])=>typeof e==`number`&&(r||t.includes(e))&&(i||!n.includes(e))))}})),VC=q((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SPECIAL_HEADERS=e.MINOR=e.MAJOR=e.HTAB_SP_VCHAR_OBS_TEXT=e.QUOTED_STRING=e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS=e.TOKEN=e.HEX=e.URL_CHAR=e.USERINFO_CHARS=e.MARK=e.ALPHANUM=e.NUM=e.HEX_MAP=e.NUM_MAP=e.ALPHA=e.STATUSES_HTTP=e.H_METHOD_MAP=e.METHOD_MAP=e.METHODS_RTSP=e.METHODS_ICE=e.METHODS_HTTP=e.HEADER_STATE=e.FINISH=e.STATUSES=e.METHODS=e.LENIENT_FLAGS=e.FLAGS=e.TYPE=e.ERROR=void 0;var t=BC();e.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38},e.TYPE={BOTH:0,REQUEST:1,RESPONSE:2},e.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512},e.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512},e.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46},e.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599},e.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2},e.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8},e.METHODS_HTTP=[e.METHODS.DELETE,e.METHODS.GET,e.METHODS.HEAD,e.METHODS.POST,e.METHODS.PUT,e.METHODS.CONNECT,e.METHODS.OPTIONS,e.METHODS.TRACE,e.METHODS.COPY,e.METHODS.LOCK,e.METHODS.MKCOL,e.METHODS.MOVE,e.METHODS.PROPFIND,e.METHODS.PROPPATCH,e.METHODS.SEARCH,e.METHODS.UNLOCK,e.METHODS.BIND,e.METHODS.REBIND,e.METHODS.UNBIND,e.METHODS.ACL,e.METHODS.REPORT,e.METHODS.MKACTIVITY,e.METHODS.CHECKOUT,e.METHODS.MERGE,e.METHODS[`M-SEARCH`],e.METHODS.NOTIFY,e.METHODS.SUBSCRIBE,e.METHODS.UNSUBSCRIBE,e.METHODS.PATCH,e.METHODS.PURGE,e.METHODS.MKCALENDAR,e.METHODS.LINK,e.METHODS.UNLINK,e.METHODS.PRI,e.METHODS.SOURCE,e.METHODS.QUERY],e.METHODS_ICE=[e.METHODS.SOURCE],e.METHODS_RTSP=[e.METHODS.OPTIONS,e.METHODS.DESCRIBE,e.METHODS.ANNOUNCE,e.METHODS.SETUP,e.METHODS.PLAY,e.METHODS.PAUSE,e.METHODS.TEARDOWN,e.METHODS.GET_PARAMETER,e.METHODS.SET_PARAMETER,e.METHODS.REDIRECT,e.METHODS.RECORD,e.METHODS.FLUSH,e.METHODS.GET,e.METHODS.POST],e.METHOD_MAP=(0,t.enumToMap)(e.METHODS),e.H_METHOD_MAP=Object.fromEntries(Object.entries(e.METHODS).filter(([e])=>e.startsWith(`H`))),e.STATUSES_HTTP=[e.STATUSES.CONTINUE,e.STATUSES.SWITCHING_PROTOCOLS,e.STATUSES.PROCESSING,e.STATUSES.EARLY_HINTS,e.STATUSES.RESPONSE_IS_STALE,e.STATUSES.REVALIDATION_FAILED,e.STATUSES.DISCONNECTED_OPERATION,e.STATUSES.HEURISTIC_EXPIRATION,e.STATUSES.MISCELLANEOUS_WARNING,e.STATUSES.OK,e.STATUSES.CREATED,e.STATUSES.ACCEPTED,e.STATUSES.NON_AUTHORITATIVE_INFORMATION,e.STATUSES.NO_CONTENT,e.STATUSES.RESET_CONTENT,e.STATUSES.PARTIAL_CONTENT,e.STATUSES.MULTI_STATUS,e.STATUSES.ALREADY_REPORTED,e.STATUSES.TRANSFORMATION_APPLIED,e.STATUSES.IM_USED,e.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,e.STATUSES.MULTIPLE_CHOICES,e.STATUSES.MOVED_PERMANENTLY,e.STATUSES.FOUND,e.STATUSES.SEE_OTHER,e.STATUSES.NOT_MODIFIED,e.STATUSES.USE_PROXY,e.STATUSES.SWITCH_PROXY,e.STATUSES.TEMPORARY_REDIRECT,e.STATUSES.PERMANENT_REDIRECT,e.STATUSES.BAD_REQUEST,e.STATUSES.UNAUTHORIZED,e.STATUSES.PAYMENT_REQUIRED,e.STATUSES.FORBIDDEN,e.STATUSES.NOT_FOUND,e.STATUSES.METHOD_NOT_ALLOWED,e.STATUSES.NOT_ACCEPTABLE,e.STATUSES.PROXY_AUTHENTICATION_REQUIRED,e.STATUSES.REQUEST_TIMEOUT,e.STATUSES.CONFLICT,e.STATUSES.GONE,e.STATUSES.LENGTH_REQUIRED,e.STATUSES.PRECONDITION_FAILED,e.STATUSES.PAYLOAD_TOO_LARGE,e.STATUSES.URI_TOO_LONG,e.STATUSES.UNSUPPORTED_MEDIA_TYPE,e.STATUSES.RANGE_NOT_SATISFIABLE,e.STATUSES.EXPECTATION_FAILED,e.STATUSES.IM_A_TEAPOT,e.STATUSES.PAGE_EXPIRED,e.STATUSES.ENHANCE_YOUR_CALM,e.STATUSES.MISDIRECTED_REQUEST,e.STATUSES.UNPROCESSABLE_ENTITY,e.STATUSES.LOCKED,e.STATUSES.FAILED_DEPENDENCY,e.STATUSES.TOO_EARLY,e.STATUSES.UPGRADE_REQUIRED,e.STATUSES.PRECONDITION_REQUIRED,e.STATUSES.TOO_MANY_REQUESTS,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,e.STATUSES.LOGIN_TIMEOUT,e.STATUSES.NO_RESPONSE,e.STATUSES.RETRY_WITH,e.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,e.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,e.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,e.STATUSES.INVALID_X_FORWARDED_FOR,e.STATUSES.REQUEST_HEADER_TOO_LARGE,e.STATUSES.SSL_CERTIFICATE_ERROR,e.STATUSES.SSL_CERTIFICATE_REQUIRED,e.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,e.STATUSES.INVALID_TOKEN,e.STATUSES.CLIENT_CLOSED_REQUEST,e.STATUSES.INTERNAL_SERVER_ERROR,e.STATUSES.NOT_IMPLEMENTED,e.STATUSES.BAD_GATEWAY,e.STATUSES.SERVICE_UNAVAILABLE,e.STATUSES.GATEWAY_TIMEOUT,e.STATUSES.HTTP_VERSION_NOT_SUPPORTED,e.STATUSES.VARIANT_ALSO_NEGOTIATES,e.STATUSES.INSUFFICIENT_STORAGE,e.STATUSES.LOOP_DETECTED,e.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,e.STATUSES.NOT_EXTENDED,e.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,e.STATUSES.WEB_SERVER_UNKNOWN_ERROR,e.STATUSES.WEB_SERVER_IS_DOWN,e.STATUSES.CONNECTION_TIMEOUT,e.STATUSES.ORIGIN_IS_UNREACHABLE,e.STATUSES.TIMEOUT_OCCURED,e.STATUSES.SSL_HANDSHAKE_FAILED,e.STATUSES.INVALID_SSL_CERTIFICATE,e.STATUSES.RAILGUN_ERROR,e.STATUSES.SITE_IS_OVERLOADED,e.STATUSES.SITE_IS_FROZEN,e.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,e.STATUSES.NETWORK_READ_TIMEOUT,e.STATUSES.NETWORK_CONNECT_TIMEOUT],e.ALPHA=[];for(let t=65;t<=90;t++)e.ALPHA.push(String.fromCharCode(t)),e.ALPHA.push(String.fromCharCode(t+32));e.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},e.NUM=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],e.ALPHANUM=e.ALPHA.concat(e.NUM),e.MARK=[`-`,`_`,`.`,`!`,`~`,`*`,`'`,`(`,`)`],e.USERINFO_CHARS=e.ALPHANUM.concat(e.MARK).concat([`%`,`;`,`:`,`&`,`=`,`+`,`$`,`,`]),e.URL_CHAR=`!"$%&'()*+,-./:;<=>@[\\]^_\`{|}~`.split(``).concat(e.ALPHANUM),e.HEX=e.NUM.concat([`a`,`b`,`c`,`d`,`e`,`f`,`A`,`B`,`C`,`D`,`E`,`F`]),e.TOKEN=[`!`,`#`,`$`,`%`,`&`,`'`,`*`,`+`,`-`,`.`,`^`,`_`,"`",`|`,`~`].concat(e.ALPHANUM),e.HEADER_CHARS=[` `];for(let t=32;t<=255;t++)t!==127&&e.HEADER_CHARS.push(t);e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS.filter(e=>e!==44),e.QUOTED_STRING=[` `,` `];for(let t=33;t<=255;t++)t!==34&&t!==92&&e.QUOTED_STRING.push(t);e.HTAB_SP_VCHAR_OBS_TEXT=[` `,` `];for(let t=33;t<=126;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);for(let t=128;t<=255;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);e.MAJOR=e.NUM_MAP,e.MINOR=e.MAJOR,e.SPECIAL_HEADERS={connection:e.HEADER_STATE.CONNECTION,"content-length":e.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":e.HEADER_STATE.CONNECTION,"transfer-encoding":e.HEADER_STATE.TRANSFER_ENCODING,upgrade:e.HEADER_STATE.UPGRADE},e.default={ERROR:e.ERROR,TYPE:e.TYPE,FLAGS:e.FLAGS,LENIENT_FLAGS:e.LENIENT_FLAGS,METHODS:e.METHODS,STATUSES:e.STATUSES,FINISH:e.FINISH,HEADER_STATE:e.HEADER_STATE,ALPHA:e.ALPHA,NUM_MAP:e.NUM_MAP,HEX_MAP:e.HEX_MAP,NUM:e.NUM,ALPHANUM:e.ALPHANUM,MARK:e.MARK,USERINFO_CHARS:e.USERINFO_CHARS,URL_CHAR:e.URL_CHAR,HEX:e.HEX,TOKEN:e.TOKEN,HEADER_CHARS:e.HEADER_CHARS,CONNECTION_TOKEN_CHARS:e.CONNECTION_TOKEN_CHARS,QUOTED_STRING:e.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:e.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:e.MAJOR,MINOR:e.MINOR,SPECIAL_HEADERS:e.SPECIAL_HEADERS,METHODS_HTTP:e.METHODS_HTTP,METHODS_ICE:e.METHODS_ICE,METHODS_RTSP:e.METHODS_RTSP,METHOD_MAP:e.METHOD_MAP,H_METHOD_MAP:e.H_METHOD_MAP,STATUSES_HTTP:e.STATUSES_HTTP}})),HC=q(((e,t)=>{var{Buffer:n}=J(`node:buffer`),r=`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASECDKACCwJAAkACQCABLQAAQQprDgQBAgIAAgsgAUEBaiEBDAILIAFBAWohAQwBCyADLQAuQcAAcUUNAQtBACEAAkAgAygCOCICRQ0AIAIoAjwiAkUNACADIAIRAAAhAAsgAEUNoAEgAEEVRgRAIANB2QA2AhwgAyABNgIUIANBtxo2AhAgA0EVNgIMQQAhAgyfAgsgA0EANgIcIAMgATYCFCADQYANNgIQIANBGzYCDEEAIQIMngILIANBADYCHCADIAE2AhQgA0HcKDYCECADQQI2AgxBACECDJ0CCyABIARHBEAgA0EMNgIIIAMgATYCBEG/ASECDIQCC0HYASECDJwCCyABIARGBEBB1wEhAgycAgsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEtAABBwQBrDhUAAQIDWgQFBlpaWgcICQoLDA0ODxBaCyABQQFqIQFB+wAhAgySAgsgAUEBaiEBQfwAIQIMkQILIAFBAWohAUGBASECDJACCyABQQFqIQFBhQEhAgyPAgsgAUEBaiEBQYYBIQIMjgILIAFBAWohAUGJASECDI0CCyABQQFqIQFBigEhAgyMAgsgAUEBaiEBQY0BIQIMiwILIAFBAWohAUGWASECDIoCCyABQQFqIQFBlwEhAgyJAgsgAUEBaiEBQZgBIQIMiAILIAFBAWohAUGlASECDIcCCyABQQFqIQFBpgEhAgyGAgsgAUEBaiEBQawBIQIMhQILIAFBAWohAUG0ASECDIQCCyABQQFqIQFBtwEhAgyDAgsgAUEBaiEBQb4BIQIMggILIAEgBEYEQEHWASECDJsCCyABLQAAQc4ARw1IIAFBAWohAUG9ASECDIECCyABIARGBEBB1QEhAgyaAgsCQAJAAkAgAS0AAEHCAGsOEgBKSkpKSkpKSkoBSkpKSkpKAkoLIAFBAWohAUG4ASECDIICCyABQQFqIQFBuwEhAgyBAgsgAUEBaiEBQbwBIQIMgAILQdQBIQIgASAERg2YAiADKAIAIgAgBCABa2ohBSABIABrQQdqIQYCQANAIAEtAAAgAEGo1QBqLQAARw1FIABBB0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAgsgA0EANgIAIAZBAWohAUEbDEULIAEgBEYEQEHTASECDJgCCwJAAkAgAS0AAEHJAGsOBwBHR0dHRwFHCyABQQFqIQFBuQEhAgz/AQsgAUEBaiEBQboBIQIM/gELQdIBIQIgASAERg2WAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw1DIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyXAgsgA0EANgIAIAZBAWohAUEPDEMLQdEBIQIgASAERg2VAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw1CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyWAgsgA0EANgIAIAZBAWohAUEgDEILQdABIQIgASAERg2UAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw1BIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyVAgsgA0EANgIAIAZBAWohAUESDEELIAEgBEYEQEHPASECDJQCCwJAAkAgAS0AAEHFAGsODgBDQ0NDQ0NDQ0NDQ0MBQwsgAUEBaiEBQbUBIQIM+wELIAFBAWohAUG2ASECDPoBC0HOASECIAEgBEYNkgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBntUAai0AAEcNPyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMkwILIANBADYCACAGQQFqIQFBBww/C0HNASECIAEgBEYNkQIgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBmNUAai0AAEcNPiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMkgILIANBADYCACAGQQFqIQFBKAw+CyABIARGBEBBzAEhAgyRAgsCQAJAAkAgAS0AAEHFAGsOEQBBQUFBQUFBQUEBQUFBQUECQQsgAUEBaiEBQbEBIQIM+QELIAFBAWohAUGyASECDPgBCyABQQFqIQFBswEhAgz3AQtBywEhAiABIARGDY8CIAMoAgAiACAEIAFraiEFIAEgAGtBBmohBgJAA0AgAS0AACAAQZHVAGotAABHDTwgAEEGRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJACCyADQQA2AgAgBkEBaiEBQRoMPAtBygEhAiABIARGDY4CIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQY3VAGotAABHDTsgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADI8CCyADQQA2AgAgBkEBaiEBQSEMOwsgASAERgRAQckBIQIMjgILAkACQCABLQAAQcEAaw4UAD09PT09PT09PT09PT09PT09PQE9CyABQQFqIQFBrQEhAgz1AQsgAUEBaiEBQbABIQIM9AELIAEgBEYEQEHIASECDI0CCwJAAkAgAS0AAEHVAGsOCwA8PDw8PDw8PDwBPAsgAUEBaiEBQa4BIQIM9AELIAFBAWohAUGvASECDPMBC0HHASECIAEgBEYNiwIgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNOCAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjAILIANBADYCACAGQQFqIQFBKgw4CyABIARGBEBBxgEhAgyLAgsgAS0AAEHQAEcNOCABQQFqIQFBJQw3C0HFASECIAEgBEYNiQIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBgdUAai0AAEcNNiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMigILIANBADYCACAGQQFqIQFBDgw2CyABIARGBEBBxAEhAgyJAgsgAS0AAEHFAEcNNiABQQFqIQFBqwEhAgzvAQsgASAERgRAQcMBIQIMiAILAkACQAJAAkAgAS0AAEHCAGsODwABAjk5OTk5OTk5OTk5AzkLIAFBAWohAUGnASECDPEBCyABQQFqIQFBqAEhAgzwAQsgAUEBaiEBQakBIQIM7wELIAFBAWohAUGqASECDO4BC0HCASECIAEgBEYNhgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABB/tQAai0AAEcNMyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhwILIANBADYCACAGQQFqIQFBFAwzC0HBASECIAEgBEYNhQIgAygCACIAIAQgAWtqIQUgASAAa0EEaiEGAkADQCABLQAAIABB+dQAai0AAEcNMiAAQQRGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhgILIANBADYCACAGQQFqIQFBKwwyC0HAASECIAEgBEYNhAIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABB9tQAai0AAEcNMSAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhQILIANBADYCACAGQQFqIQFBLAwxC0G/ASECIAEgBEYNgwIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBodUAai0AAEcNMCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMhAILIANBADYCACAGQQFqIQFBEQwwC0G+ASECIAEgBEYNggIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABB8tQAai0AAEcNLyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMgwILIANBADYCACAGQQFqIQFBLgwvCyABIARGBEBBvQEhAgyCAgsCQAJAAkACQAJAIAEtAABBwQBrDhUANDQ0NDQ0NDQ0NAE0NAI0NAM0NAQ0CyABQQFqIQFBmwEhAgzsAQsgAUEBaiEBQZwBIQIM6wELIAFBAWohAUGdASECDOoBCyABQQFqIQFBogEhAgzpAQsgAUEBaiEBQaQBIQIM6AELIAEgBEYEQEG8ASECDIECCwJAAkAgAS0AAEHSAGsOAwAwATALIAFBAWohAUGjASECDOgBCyABQQFqIQFBBAwtC0G7ASECIAEgBEYN/wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABB8NQAai0AAEcNLCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMgAILIANBADYCACAGQQFqIQFBHQwsCyABIARGBEBBugEhAgz/AQsCQAJAIAEtAABByQBrDgcBLi4uLi4ALgsgAUEBaiEBQaEBIQIM5gELIAFBAWohAUEiDCsLIAEgBEYEQEG5ASECDP4BCyABLQAAQdAARw0rIAFBAWohAUGgASECDOQBCyABIARGBEBBuAEhAgz9AQsCQAJAIAEtAABBxgBrDgsALCwsLCwsLCwsASwLIAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,i;Object.defineProperty(t,"exports",{get:()=>i||=n.from(r,`base64`)})})),UC=q(((e,t)=>{var{Buffer:n}=J(`node:buffer`),r=`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,i;Object.defineProperty(t,"exports",{get:()=>i||=n.from(r,`base64`)})})),WC=q(((e,t)=>{var n=[`GET`,`HEAD`,`POST`],r=new Set(n),i=[101,204,205,304],a=[301,302,303,307,308],o=new Set(a),s=`1.7.9.11.13.15.17.19.20.21.22.23.25.37.42.43.53.69.77.79.87.95.101.102.103.104.109.110.111.113.115.117.119.123.135.137.139.143.161.179.389.427.465.512.513.514.515.526.530.531.532.540.548.554.556.563.587.601.636.989.990.993.995.1719.1720.1723.2049.3659.4045.4190.5060.5061.6000.6566.6665.6666.6667.6668.6669.6679.6697.10080`.split(`.`),c=new Set(s),l=[`no-referrer`,`no-referrer-when-downgrade`,`same-origin`,`origin`,`strict-origin`,`origin-when-cross-origin`,`strict-origin-when-cross-origin`,`unsafe-url`],u=[``,...l],d=new Set(l),f=[`follow`,`manual`,`error`],p=[`GET`,`HEAD`,`OPTIONS`,`TRACE`,`QUERY`],m=new Set(p),h=[`navigate`,`same-origin`,`no-cors`,`cors`],g=[`omit`,`same-origin`,`include`],_=[`default`,`no-store`,`reload`,`no-cache`,`force-cache`,`only-if-cached`],v=[`content-encoding`,`content-language`,`content-location`,`content-type`,`content-length`],y=[`half`],b=[`CONNECT`,`TRACE`,`TRACK`],x=new Set(b),S=[`audio`,`audioworklet`,`font`,`image`,`manifest`,`paintworklet`,`script`,`style`,`track`,`video`,`xslt`,``];t.exports={subresource:S,forbiddenMethods:b,requestBodyHeader:v,referrerPolicy:u,requestRedirect:f,requestMode:h,requestCredentials:g,requestCache:_,redirectStatus:a,corsSafeListedMethods:n,nullBodyStatus:i,safeMethods:p,badPorts:s,requestDuplex:y,subresourceSet:new Set(S),badPortsSet:c,redirectStatusSet:o,corsSafeListedMethodsSet:r,safeMethodsSet:m,forbiddenMethodsSet:x,referrerPolicyTokens:d}})),GC=q(((e,t)=>{var n=Symbol.for(`undici.globalOrigin.1`);function r(){return globalThis[n]}function i(e){if(e===void 0){Object.defineProperty(globalThis,n,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`)throw TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,n,{value:t,writable:!0,enumerable:!1,configurable:!1})}t.exports={getGlobalOrigin:r,setGlobalOrigin:i}})),KC=q(((e,t)=>{var n=new TextDecoder;function r(e){return e.length===0?``:(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),n.decode(e))}t.exports={utf8DecodeBytes:r}})),qC=q(((e,t)=>{var n=J(`node:assert`),{utf8DecodeBytes:r}=KC();function i(e,t,n){let r=``;for(;n.position<t.length&&e(t[n.position]);)r+=t[n.position],n.position++;return r}function a(e,t,n){let r=t.indexOf(e,n.position),i=n.position;return r===-1?(n.position=t.length,t.slice(i)):(n.position=r,t.slice(i,n.position))}var o=/[\u0009\u000A\u000C\u000D\u0020]/g;function s(e){e=e.replace(o,``);let t=e.length;if(t%4==0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4==1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return`failure`;let n=Buffer.from(e,`base64`);return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}function c(e){return e===9||e===10||e===12||e===13||e===32}function l(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let n=``,r=0,i=65535;for(;r<t;)r+i>t&&(i=t-r),n+=String.fromCharCode.apply(null,e.subarray(r,r+=i));return n}var u=/[^\x00-\xFF]/;function d(e){return n(!u.test(e)),e}var f=/[^\x00-\x7F]/;function p(e){return f.test(e)?e.replace(/[A-Z]+/g,e=>e.toLowerCase()):e.toLowerCase()}function m(e){return JSON.parse(r(e))}function h(e,t=!0,n=!0){return g(e,t,n,c)}function g(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e.charCodeAt(i));)i++;if(n)for(;a>=i&&r(e.charCodeAt(a));)a--;return i===0&&a===e.length-1?e:e.slice(i,a+1)}function _(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`Value is not JSON serializable`);return n(typeof t==`string`),t}t.exports={asciiLowercase:p,collectASequenceOfCodePoints:i,collectASequenceOfCodePointsFast:a,forgivingBase64:s,isASCIIWhitespace:c,isomorphicDecode:l,isomorphicEncode:d,parseJSONFromBytes:m,removeASCIIWhitespace:h,removeChars:g,serializeJavascriptValueToJSONString:_}})),JC=q(((e,t)=>{var n=J(`node:assert`),{asciiLowercase:r,forgivingBase64:i,collectASequenceOfCodePoints:a,collectASequenceOfCodePointsFast:o,isomorphicDecode:s,removeASCIIWhitespace:c,removeChars:l}=qC(),u=new TextEncoder,d=/^[-!#$%&'*+.^_`|~A-Za-z0-9]+$/u,f=/[\u000A\u000D\u0009\u0020]/u,p=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function m(e){n(e.protocol===`data:`);let t=h(e,!0);t=t.slice(5);let r={position:0},a=o(`,`,t,r),l=a.length;if(a=c(a,!0,!0),r.position>=t.length)return`failure`;r.position++;let u=g(t.slice(l+1));if(/;\u0020*[Bb][Aa][Ss][Ee]64$/u.test(a)){if(u=i(s(u)),u===`failure`)return`failure`;a=a.slice(0,-6),a=a.replace(/(\u0020+)$/u,``),a=a.slice(0,-1)}a.startsWith(`;`)&&(a=`text/plain`+a);let d=b(a);return d===`failure`&&(d=b(`text/plain;charset=US-ASCII`)),{mimeType:d,body:u}}function h(e,t=!1){if(!t)return e.href;let n=e.href,r=e.hash.length,i=r===0?n:n.substring(0,n.length-r);return!r&&n.endsWith(`#`)?i.slice(0,-1):i}function g(e){return y(u.encode(e))}function _(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function v(e){return e>=48&&e<=57?e-48:(e&223)-55}function y(e){let t=e.length,n=new Uint8Array(t),r=0,i=0;for(;i<t;){let t=e[i];t===37?t===37&&!(_(e[i+1])&&_(e[i+2]))?n[r++]=37:(n[r++]=v(e[i+1])<<4|v(e[i+2]),i+=2):n[r++]=t,++i}return t===r?n:n.subarray(0,r)}function b(e){e=w(e,!0,!0);let t={position:0},n=o(`/`,e,t);if(n.length===0||!d.test(n)||t.position>=e.length)return`failure`;t.position++;let i=o(`;`,e,t);if(i=w(i,!1,!0),i.length===0||!d.test(i))return`failure`;let s=r(n),c=r(i),l={type:s,subtype:c,parameters:new Map,essence:`${s}/${c}`};for(;t.position<e.length;){t.position++,a(e=>f.test(e),e,t);let n=a(e=>e!==`;`&&e!==`=`,e,t);if(n=r(n),t.position<e.length){if(e[t.position]===`;`)continue;t.position++}if(t.position>=e.length)break;let i=null;if(e[t.position]===`"`)i=x(e,t,!0),o(`;`,e,t);else if(i=o(`;`,e,t),i=w(i,!1,!0),i.length===0)continue;n.length!==0&&d.test(n)&&(i.length===0||p.test(i))&&!l.parameters.has(n)&&l.parameters.set(n,i)}return l}function x(e,t,r=!1){let i=t.position,o=``;for(n(e[t.position]===`"`),t.position++;o+=a(e=>e!==`"`&&e!==`\\`,e,t),!(t.position>=e.length);){let r=e[t.position];if(t.position++,r===`\\`){if(t.position>=e.length){o+=`\\`;break}o+=e[t.position],t.position++}else{n(r===`"`);break}}return r?o:e.slice(i,t.position)}function S(e){n(e!==`failure`);let{parameters:t,essence:r}=e,i=r;for(let[e,n]of t.entries())i+=`;`,i+=e,i+=`=`,d.test(n)||(n=n.replace(/[\\"]/gu,`\\$&`),n=`"`+n,n+=`"`),i+=n;return i}function C(e){return e===13||e===10||e===9||e===32}function w(e,t=!0,n=!0){return l(e,t,n,C)}function T(e){switch(e.essence){case`application/ecmascript`:case`application/javascript`:case`application/x-ecmascript`:case`application/x-javascript`:case`text/ecmascript`:case`text/javascript`:case`text/javascript1.0`:case`text/javascript1.1`:case`text/javascript1.2`:case`text/javascript1.3`:case`text/javascript1.4`:case`text/javascript1.5`:case`text/jscript`:case`text/livescript`:case`text/x-ecmascript`:case`text/x-javascript`:return`text/javascript`;case`application/json`:case`text/json`:return`application/json`;case`image/svg+xml`:return`image/svg+xml`;case`text/xml`:case`application/xml`:return`application/xml`}return e.subtype.endsWith(`+json`)?`application/json`:e.subtype.endsWith(`+xml`)?`application/xml`:``}t.exports={dataURLProcessor:m,URLSerializer:h,stringPercentDecode:g,parseMIMEType:b,collectAnHTTPQuotedString:x,serializeAMimeType:S,removeHTTPWhitespace:w,minimizeSupportedMimeType:T,HTTP_TOKEN_CODEPOINTS:d}})),YC=q(((e,t)=>{var n=J(`node:assert`),{types:r,inspect:i}=J(`node:util`),{markAsUncloneable:a}=J(`node:worker_threads`),o=1,s=2,c=3,l=4,u=5,d=6,f=7,p=8,m=Function.call.bind(Function.prototype[Symbol.hasInstance]),h={converters:{},util:{},errors:{},is:{}};h.errors.exception=function(e){return TypeError(`${e.header}: ${e.message}`)},h.errors.conversionFailed=function(e){let t=e.types.length===1?``:` one of`,n=`${e.argument} could not be converted to${t}: ${e.types.join(`, `)}.`;return h.errors.exception({header:e.prefix,message:n})},h.errors.invalidArgument=function(e){return h.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})},h.brandCheck=function(e,t){if(!t(e)){let e=TypeError(`Illegal invocation`);throw e.code=`ERR_INVALID_THIS`,e}},h.argumentLengthCheck=function({length:e},t,n){if(e<t)throw h.errors.exception({message:`${t} argument${t===1?``:`s`} required, but${e?` only`:``} ${e} found.`,header:n})},h.illegalConstructor=function(){throw h.errors.exception({header:`TypeError`,message:`Illegal constructor`})},h.util.MakeTypeAssertion=function(e){return t=>m(e,t)},h.util.Type=function(e){switch(typeof e){case`undefined`:return o;case`boolean`:return s;case`string`:return c;case`symbol`:return l;case`number`:return u;case`bigint`:return d;case`function`:case`object`:return e===null?f:p}},h.util.Types={UNDEFINED:o,BOOLEAN:s,STRING:c,SYMBOL:l,NUMBER:u,BIGINT:d,NULL:f,OBJECT:p},h.util.TypeValueToString=function(e){switch(h.util.Type(e)){case o:return`Undefined`;case s:return`Boolean`;case c:return`String`;case l:return`Symbol`;case u:return`Number`;case d:return`BigInt`;case f:return`Null`;case p:return`Object`}},h.util.markAsUncloneable=a,h.util.ConvertToInt=function(e,t,n,r){let i,a;t===64?(i=2**53-1,a=n===`unsigned`?0:(-2)**53+1):n===`unsigned`?(a=0,i=2**t-1):(a=-(2**(t-1)),i=2**(t-1)-1);let o=Number(e);if(o===0&&(o=0),h.util.HasFlag(r,h.attributes.EnforceRange)){if(Number.isNaN(o)||o===1/0||o===-1/0)throw h.errors.exception({header:`Integer conversion`,message:`Could not convert ${h.util.Stringify(e)} to an integer.`});if(o=h.util.IntegerPart(o),o<a||o>i)throw h.errors.exception({header:`Integer conversion`,message:`Value must be between ${a}-${i}, got ${o}.`});return o}return!Number.isNaN(o)&&h.util.HasFlag(r,h.attributes.Clamp)?(o=Math.min(Math.max(o,a),i),o=Math.floor(o)%2==0?Math.floor(o):Math.ceil(o),o):Number.isNaN(o)||o===0&&Object.is(0,o)||o===1/0||o===-1/0?0:(o=h.util.IntegerPart(o),o%=2**t,n===`signed`&&o>=2**(t-1)?o-2**t:o)},h.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t},h.util.Stringify=function(e){switch(h.util.Type(e)){case l:return`Symbol(${e.description})`;case p:return i(e);case c:return`"${e}"`;case d:return`${e}n`;default:return`${e}`}},h.util.IsResizableArrayBuffer=function(e){if(r.isArrayBuffer(e))return e.resizable;if(r.isSharedArrayBuffer(e))return e.growable;throw h.errors.exception({header:`IsResizableArrayBuffer`,message:`"${h.util.Stringify(e)}" is not an array buffer.`})},h.util.HasFlag=function(e,t){return typeof e==`number`&&(e&t)===t},h.sequenceConverter=function(e){return(t,n,r,i)=>{if(h.util.Type(t)!==p)throw h.errors.exception({header:n,message:`${r} (${h.util.Stringify(t)}) is not iterable.`});let a=typeof i==`function`?i():t?.[Symbol.iterator]?.(),o=[],s=0;if(a===void 0||typeof a.next!=`function`)throw h.errors.exception({header:n,message:`${r} is not iterable.`});for(;;){let{done:t,value:i}=a.next();if(t)break;o.push(e(i,n,`${r}[${s++}]`))}return o}},h.recordConverter=function(e,t){return(n,i,a)=>{if(h.util.Type(n)!==p)throw h.errors.exception({header:i,message:`${a} ("${h.util.TypeValueToString(n)}") is not an Object.`});let o={};if(!r.isProxy(n)){let r=[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)];for(let s of r){let r=h.util.Stringify(s),c=e(s,i,`Key ${r} in ${a}`);o[c]=t(n[s],i,`${a}[${r}]`)}return o}let s=Reflect.ownKeys(n);for(let r of s)if(Reflect.getOwnPropertyDescriptor(n,r)?.enumerable){let s=e(r,i,a);o[s]=t(n[r],i,a)}return o}},h.interfaceConverter=function(e,t){return(n,r,i)=>{if(!e(n))throw h.errors.exception({header:r,message:`Expected ${i} ("${h.util.Stringify(n)}") to be an instance of ${t}.`});return n}},h.dictionaryConverter=function(e){return e.sort((e,t)=>(e.key>t.key)-(e.key<t.key)),(t,n,r)=>{let i={};if(t!=null&&h.util.Type(t)!==p)throw h.errors.exception({header:n,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:e,defaultValue:o,required:s,converter:c}=a;if(s===!0&&(t==null||!Object.hasOwn(t,e)))throw h.errors.exception({header:n,message:`Missing required key "${e}".`});let l=t?.[e],u=o!==void 0;if(u&&l===void 0&&(l=o()),s||u||l!==void 0){if(l=c(l,n,`${r}.${e}`),a.allowedValues&&!a.allowedValues.includes(l))throw h.errors.exception({header:n,message:`${l} is not an accepted type. Expected one of ${a.allowedValues.join(`, `)}.`});i[e]=l}}return i}},h.nullableConverter=function(e){return(t,n,r)=>t===null?t:e(t,n,r)},h.is.USVString=function(e){return typeof e==`string`&&e.isWellFormed()},h.is.ReadableStream=h.util.MakeTypeAssertion(ReadableStream),h.is.Blob=h.util.MakeTypeAssertion(Blob),h.is.URLSearchParams=h.util.MakeTypeAssertion(URLSearchParams),h.is.File=h.util.MakeTypeAssertion(File),h.is.URL=h.util.MakeTypeAssertion(URL),h.is.AbortSignal=h.util.MakeTypeAssertion(AbortSignal),h.is.MessagePort=h.util.MakeTypeAssertion(MessagePort),h.is.BufferSource=function(e){return r.isArrayBuffer(e)||ArrayBuffer.isView(e)&&r.isArrayBuffer(e.buffer)},h.util.getCopyOfBytesHeldByBufferSource=function(e){let t=e,i=t,a=0,o=0;if(r.isTypedArray(t)||r.isDataView(t)?(i=t.buffer,a=t.byteOffset,o=t.byteLength):(n(r.isAnyArrayBuffer(t)),o=t.byteLength),i.detached)return new Uint8Array;let s=new Uint8Array(o),c=new Uint8Array(i,a,o);return s.set(c),s},h.converters.DOMString=function(e,t,n,r){if(e===null&&h.util.HasFlag(r,h.attributes.LegacyNullToEmptyString))return``;if(typeof e==`symbol`)throw h.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a DOMString.`});return String(e)},h.converters.ByteString=function(e,t,n){if(typeof e==`symbol`)throw h.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a ByteString.`});let r=String(e);for(let e=0;e<r.length;e++)if(r.charCodeAt(e)>255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${e} has a value of ${r.charCodeAt(e)} which is greater than 255.`);return r},h.converters.USVString=function(e){return typeof e==`string`?e.toWellFormed():`${e}`.toWellFormed()},h.converters.boolean=function(e){return!!e},h.converters.any=function(e){return e},h.converters[`long long`]=function(e,t,n){return h.util.ConvertToInt(e,64,`signed`,0,t,n)},h.converters[`unsigned long long`]=function(e,t,n){return h.util.ConvertToInt(e,64,`unsigned`,0,t,n)},h.converters[`unsigned long`]=function(e,t,n){return h.util.ConvertToInt(e,32,`unsigned`,0,t,n)},h.converters[`unsigned short`]=function(e,t,n,r){return h.util.ConvertToInt(e,16,`unsigned`,r,t,n)},h.converters.ArrayBuffer=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isArrayBuffer(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBuffer`]});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e))throw h.errors.exception({header:t,message:`${n} cannot be a resizable ArrayBuffer.`});return e},h.converters.SharedArrayBuffer=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isSharedArrayBuffer(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`SharedArrayBuffer`]});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e))throw h.errors.exception({header:t,message:`${n} cannot be a resizable SharedArrayBuffer.`});return e},h.converters.TypedArray=function(e,t,n,i,a){if(h.util.Type(e)!==p||!r.isTypedArray(e)||e.constructor.name!==t.name)throw h.errors.conversionFailed({prefix:n,argument:`${i} ("${h.util.Stringify(e)}")`,types:[t.name]});if(!h.util.HasFlag(a,h.attributes.AllowShared)&&r.isSharedArrayBuffer(e.buffer))throw h.errors.exception({header:n,message:`${i} cannot be a view on a shared array buffer.`});if(!h.util.HasFlag(a,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e.buffer))throw h.errors.exception({header:n,message:`${i} cannot be a view on a resizable array buffer.`});return e},h.converters.DataView=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isDataView(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`DataView`]});if(!h.util.HasFlag(i,h.attributes.AllowShared)&&r.isSharedArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},h.converters.ArrayBufferView=function(e,t,n,i){if(h.util.Type(e)!==p||!r.isArrayBufferView(e))throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBufferView`]});if(!h.util.HasFlag(i,h.attributes.AllowShared)&&r.isSharedArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!h.util.HasFlag(i,h.attributes.AllowResizable)&&h.util.IsResizableArrayBuffer(e.buffer))throw h.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},h.converters.BufferSource=function(e,t,n,i){if(r.isArrayBuffer(e))return h.converters.ArrayBuffer(e,t,n,i);if(r.isArrayBufferView(e))return i&=~h.attributes.AllowShared,h.converters.ArrayBufferView(e,t,n,i);throw r.isSharedArrayBuffer(e)?h.errors.exception({header:t,message:`${n} cannot be a SharedArrayBuffer.`}):h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBuffer`,`ArrayBufferView`]})},h.converters.AllowSharedBufferSource=function(e,t,n,i){if(r.isArrayBuffer(e))return h.converters.ArrayBuffer(e,t,n,i);if(r.isSharedArrayBuffer(e))return h.converters.SharedArrayBuffer(e,t,n,i);if(r.isArrayBufferView(e))return i|=h.attributes.AllowShared,h.converters.ArrayBufferView(e,t,n,i);throw h.errors.conversionFailed({prefix:t,argument:`${n} ("${h.util.Stringify(e)}")`,types:[`ArrayBuffer`,`SharedArrayBuffer`,`ArrayBufferView`]})},h.converters[`sequence<ByteString>`]=h.sequenceConverter(h.converters.ByteString),h.converters[`sequence<sequence<ByteString>>`]=h.sequenceConverter(h.converters[`sequence<ByteString>`]),h.converters[`record<ByteString, ByteString>`]=h.recordConverter(h.converters.ByteString,h.converters.ByteString),h.converters.Blob=h.interfaceConverter(h.is.Blob,`Blob`),h.converters.AbortSignal=h.interfaceConverter(h.is.AbortSignal,`AbortSignal`),h.converters.EventHandlerNonNull=function(e){return h.util.Type(e)===p?typeof e==`function`?e:()=>{}:null},h.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16},t.exports={webidl:h}})),XC=q(((e,t)=>{var{Transform:n}=J(`node:stream`),r=J(`node:zlib`),{redirectStatusSet:i,referrerPolicyTokens:a,badPortsSet:o}=WC(),{getGlobalOrigin:s}=GC(),{collectAnHTTPQuotedString:c,parseMIMEType:l}=JC(),{performance:u}=J(`node:perf_hooks`),{isValidHTTPToken:d,normalizedMethodRecordsBase:f}=$(),p=J(`node:assert`),{isUint8Array:m}=J(`node:util/types`),{webidl:h}=YC(),{isomorphicEncode:g,collectASequenceOfCodePoints:_,removeChars:v}=qC();function y(e){let t=e.urlList,n=t.length;return n===0?null:t[n-1].toString()}function b(e,t){if(!i.has(e.status))return null;let n=e.headersList.get(`location`,!0);return n!==null&&O(n)&&(x(n)||(n=S(n)),n=new URL(n,y(e))),n&&!n.hash&&(n.hash=t),n}function x(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>126||n<32)return!1}return!0}function S(e){return Buffer.from(e,`binary`).toString(`utf8`)}function C(e){return e.urlList[e.urlList.length-1]}function w(e){let t=C(e);return ge(t)&&o.has(t.port)?`blocked`:`allowed`}function T(e){return e instanceof Error||e?.constructor?.name===`Error`||e?.constructor?.name===`DOMException`}function E(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(!(n===9||n>=32&&n<=126||n>=128&&n<=255))return!1}return!0}var D=d;function O(e){return(e[0]===` `||e[0]===` `||e[e.length-1]===` `||e[e.length-1]===` `||e.includes(`
53
+ `)||e.includes(`\r`)||e.includes(`\0`))===!1}function k(e){let t=(e.headersList.get(`referrer-policy`,!0)??``).split(`,`),n=``;if(t.length)for(let e=t.length;e!==0;e--){let r=t[e-1].trim();if(a.has(r)){n=r;break}}return n}function A(e,t){let n=k(t);n!==``&&(e.referrerPolicy=n)}function j(){return`allowed`}function M(){return`success`}function N(){return`success`}function P(e){if(!V(C(e)))return;let t=null;t=e.mode,e.headersList.set(`sec-fetch-mode`,t,!0)}function F(e){let t=e.origin;if(t!==`client`&&t!==void 0){if(e.responseTainting===`cors`||e.mode===`websocket`)e.headersList.append(`origin`,t,!0);else if(e.method!==`GET`&&e.method!==`HEAD`){switch(e.referrerPolicy){case`no-referrer`:t=null;break;case`no-referrer-when-downgrade`:case`strict-origin`:case`strict-origin-when-cross-origin`:e.origin&&he(e.origin)&&!he(C(e))&&(t=null);break;case`same-origin`:se(e,C(e))||(t=null)}e.headersList.append(`origin`,t,!0)}}}function I(e,t){return e}function L(e,t,n){return!e?.startTime||e.startTime<t?{domainLookupStartTime:t,domainLookupEndTime:t,connectionStartTime:t,connectionEndTime:t,secureConnectionStartTime:t,ALPNNegotiatedProtocol:e?.ALPNNegotiatedProtocol}:{domainLookupStartTime:I(e.domainLookupStartTime,n),domainLookupEndTime:I(e.domainLookupEndTime,n),connectionStartTime:I(e.connectionStartTime,n),connectionEndTime:I(e.connectionEndTime,n),secureConnectionStartTime:I(e.secureConnectionStartTime,n),ALPNNegotiatedProtocol:e.ALPNNegotiatedProtocol}}function R(e){return I(u.now(),e)}function ee(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function te(){return{referrerPolicy:`strict-origin-when-cross-origin`}}function ne(e){return{referrerPolicy:e.referrerPolicy}}function re(e){let t=e.referrerPolicy;p(t);let n=null;if(e.referrer===`client`){let e=s();if(!e||e.origin===`null`)return`no-referrer`;n=new URL(e)}else h.is.URL(e.referrer)&&(n=e.referrer);let r=z(n),i=z(n,!0);switch(r.toString().length>4096&&(r=i),t){case`no-referrer`:return`no-referrer`;case`origin`:return i??z(n,!0);case`unsafe-url`:return r;case`strict-origin`:{let t=C(e);return V(r)&&!V(t)?`no-referrer`:i}case`strict-origin-when-cross-origin`:{let t=C(e);return se(r,t)?r:V(r)&&!V(t)?`no-referrer`:i}case`same-origin`:return se(e,r)?r:`no-referrer`;case`origin-when-cross-origin`:return se(e,r)?r:i;case`no-referrer-when-downgrade`:{let t=C(e);return V(r)&&!V(t)?`no-referrer`:r}}}function z(e,t=!1){return p(h.is.URL(e)),e=new URL(e),G(e)?`no-referrer`:(e.username=``,e.password=``,e.hash=``,t===!0&&(e.pathname=``,e.search=``),e)}var ie=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),ae=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function oe(e){return e.includes(`:`)?(e[0]===`[`&&e[e.length-1]===`]`&&(e=e.slice(1,-1)),ae(e)):ie(e)}function B(e){return e==null||e===`null`?!1:(e=new URL(e),!!(e.protocol===`https:`||e.protocol===`wss:`||oe(e.hostname)||e.hostname===`localhost`||e.hostname===`localhost.`||e.hostname.endsWith(`.localhost`)||e.hostname.endsWith(`.localhost.`)||e.protocol===`file:`))}function V(e){return h.is.URL(e)?e.href===`about:blank`||e.href===`about:srcdoc`||e.protocol===`data:`||e.protocol===`blob:`||B(e.origin):!1}function H(e){}function se(e,t){return e.origin===t.origin&&e.origin===`null`||e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}function ce(e){return e.controller.state===`aborted`}function le(e){return e.controller.state===`aborted`||e.controller.state===`terminated`}function U(e){return f[e.toLowerCase()]??e}var W=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function ue(e,t,n=0,r=1){class i{#e;#t;#n;constructor(e,t){this.#e=e,this.#t=t,this.#n=0}next(){if(typeof this!=`object`||this===null||!(#e in this))throw TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let i=this.#n,a=t(this.#e);if(i>=a.length)return{value:void 0,done:!0};let{[n]:o,[r]:s}=a[i];this.#n=i+1;let c;switch(this.#t){case`key`:c=o;break;case`value`:c=s;break;case`key+value`:c=[o,s]}return{value:c,done:!1}}}return delete i.prototype.constructor,Object.setPrototypeOf(i.prototype,W),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(e,t){return new i(e,t)}}function de(e,t,n,r=0,i=1,a){let o=ue(e,n,r,i),s={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return h.brandCheck(this,a),o(this,`key`)}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return h.brandCheck(this,a),o(this,`value`)}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return h.brandCheck(this,a),o(this,`key+value`)}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(t,n=globalThis){if(h.brandCheck(this,a),h.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof t!=`function`)throw TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:e,1:r}of o(this,`key+value`))t.call(n,r,e,this)}}};return Object.defineProperties(t.prototype,{...s,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:s.entries.value}})}function fe(e,t,n){let r=t,i=n;try{me(e.stream.getReader(),r,i)}catch(e){i(e)}}function pe(e){try{e.close(),e.byobRequest?.respond(0)}catch(e){if(!e.message.includes(`Controller is already closed`)&&!e.message.includes(`ReadableStream is already closed`))throw e}}async function me(e,t,n){try{let r=[],i=0;do{let{done:a,value:o}=await e.read();if(a){t(Buffer.concat(r,i));return}if(!m(o)){n(TypeError(`Received non-Uint8Array chunk`));return}r.push(o),i+=o.length}while(1)}catch(e){n(e)}}function G(e){p(`protocol`in e);let t=e.protocol;return t===`about:`||t===`blob:`||t===`data:`}function he(e){return typeof e==`string`&&e[5]===`:`&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&e[4]===`s`||e.protocol===`https:`}function ge(e){p(`protocol`in e);let t=e.protocol;return t===`http:`||t===`https:`}function _e(e,t){let n=e;if(!n.startsWith(`bytes`))return`failure`;let r={position:5};if(t&&_(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==61)return`failure`;r.position++,t&&_(e=>e===` `||e===` `,n,r);let i=_(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),a=i.length?Number(i):null;if(t&&_(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==45)return`failure`;r.position++,t&&_(e=>e===` `||e===` `,n,r);let o=_(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),s=o.length?Number(o):null;return r.position<n.length||s===null&&a===null||a!==null&&s!==null&&a>s?`failure`:{rangeStartValue:a,rangeEndValue:s}}function ve(e,t,n){let r=`bytes `;return r+=g(`${e}`),r+=`-`,r+=g(`${t}`),r+=`/`,r+=g(`${n}`),r}var K=class extends n{#e;constructor(e){super(),this.#e=e}_transform(e,t,n){if(!this._inflateStream){if(e.length===0){n();return}this._inflateStream=(e[0]&15)==8?r.createInflate(this.#e):r.createInflateRaw(this.#e),this._inflateStream.on(`data`,this.push.bind(this)),this._inflateStream.on(`end`,()=>this.push(null)),this._inflateStream.on(`error`,e=>this.destroy(e))}this._inflateStream.write(e,t,n)}_final(e){this._inflateStream&&=(this._inflateStream.end(),null),e()}};function ye(e){return new K(e)}function be(e){let t=null,n=null,r=null,i=Se(`content-type`,e);if(i===null)return`failure`;for(let e of i){let i=l(e);i!==`failure`&&i.essence!==`*/*`&&(r=i,r.essence===n?!r.parameters.has(`charset`)&&t!==null&&r.parameters.set(`charset`,t):(t=null,r.parameters.has(`charset`)&&(t=r.parameters.get(`charset`)),n=r.essence))}return r??`failure`}function xe(e){let t=e,n={position:0},r=[],i=``;for(;n.position<t.length;){if(i+=_(e=>e!==`"`&&e!==`,`,t,n),n.position<t.length){if(t.charCodeAt(n.position)===34){if(i+=c(t,n),n.position<t.length)continue}else p(t.charCodeAt(n.position)===44),n.position++}i=v(i,!0,!0,e=>e===9||e===32),r.push(i),i=``}return r}function Se(e,t){let n=t.get(e,!0);return n===null?null:xe(n)}function Ce(e){return!1}function we(e){return!!(e.username||e.password)}function Te(e){return e!=null&&e!==`client`&&e!==`no-traversable`}var Ee=class{get baseUrl(){return s()}get origin(){return this.baseUrl?.origin}policyContainer=te()};t.exports={isAborted:ce,isCancelled:le,isValidEncodedURL:x,tryUpgradeRequestToAPotentiallyTrustworthyURL:H,clampAndCoarsenConnectionTimingInfo:L,coarsenedSharedCurrentTime:R,determineRequestsReferrer:re,makePolicyContainer:te,clonePolicyContainer:ne,appendFetchMetadata:P,appendRequestOriginHeader:F,TAOCheck:N,corsCheck:M,crossOriginResourcePolicyCheck:j,createOpaqueTimingInfo:ee,setRequestReferrerPolicyOnRedirect:A,isValidHTTPToken:d,requestBadPort:w,requestCurrentURL:C,responseURL:y,responseLocationURL:b,isURLPotentiallyTrustworthy:V,isValidReasonPhrase:E,sameOrigin:se,normalizeMethod:U,iteratorMixin:de,createIterator:ue,isValidHeaderName:D,isValidHeaderValue:O,isErrorLike:T,fullyReadBody:fe,readableStreamClose:pe,urlIsLocal:G,urlHasHttpsScheme:he,urlIsHttpHttpsScheme:ge,readAllBytes:me,simpleRangeHeaderValue:_e,buildContentRange:ve,createInflate:ye,extractMimeType:be,getDecodeSplit:Se,environmentSettingsObject:new class{settingsObject=new Ee},isOriginIPPotentiallyTrustworthy:oe,hasAuthenticationEntry:Ce,includesCredentials:we,isTraversableNavigable:Te}})),ZC=q(((e,t)=>{var n={__proto__:null,"node:crypto":()=>J(`node:crypto`),"node:sqlite":()=>J(`node:sqlite`)};function r(e){try{return n[e](),!0}catch(e){if(e.code!==`ERR_UNKNOWN_BUILTIN_MODULE`&&e.code!==`ERR_NO_CRYPTO`)throw e;return!1}}var i=[`crypto`,`sqlite`];function a(e){if(i.includes(e))return r(`node:${e}`);throw TypeError(`unknown feature: ${e}`)}var o=new class{#e=new Map;clear(){this.#e.clear()}has(e){return this.#e.get(e)??this.#t(e)}set(e,t){if(i.includes(e)===!1)throw TypeError(`unknown feature: ${e}`);this.#e.set(e,t)}#t(e){let t=a(e);return this.#e.set(e,t),t}};t.exports.runtimeFeatures=o,t.exports.default=o})),QC=q(((e,t)=>{var{iteratorMixin:n}=XC(),{kEnumerableProperty:r}=$(),{webidl:i}=YC(),a=J(`node:util`),{runtimeFeatures:o}=ZC(),s=o.has(`crypto`)?J(`node:crypto`).randomInt:e=>Math.floor(Math.random()*e),c,l,u,d=class{#e=[];#t=null;constructor(e=void 0){if(i.util.markAsUncloneable(this),e!==void 0)throw i.errors.conversionFailed({prefix:`FormData constructor`,argument:`Argument 1`,types:[`undefined`]})}append(e,t,n=void 0){i.brandCheck(this,i.is.FormData);let r=`FormData.append`;i.argumentLengthCheck(arguments,2,r),e=i.converters.USVString(e),arguments.length===3||i.is.Blob(t)?(t=i.converters.Blob(t,r,`value`),n!==void 0&&(n=i.converters.USVString(n))):t=i.converters.USVString(t);let a=f(e,t,n);this.#e.push(a)}delete(e){i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.delete`),e=i.converters.USVString(e),this.#e=this.#e.filter(t=>t.name!==e)}get(e){i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.get`),e=i.converters.USVString(e);let t=this.#e.findIndex(t=>t.name===e);return t===-1?null:this.#e[t].value}getAll(e){return i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.getAll`),e=i.converters.USVString(e),this.#e.filter(t=>t.name===e).map(e=>e.value)}has(e){return i.brandCheck(this,i.is.FormData),i.argumentLengthCheck(arguments,1,`FormData.has`),e=i.converters.USVString(e),this.#e.findIndex(t=>t.name===e)!==-1}set(e,t,n=void 0){i.brandCheck(this,i.is.FormData);let r=`FormData.set`;i.argumentLengthCheck(arguments,2,r),e=i.converters.USVString(e),arguments.length===3||i.is.Blob(t)?(t=i.converters.Blob(t,r,`value`),n!==void 0&&(n=i.converters.USVString(n))):t=i.converters.USVString(t);let a=f(e,t,n),o=this.#e.findIndex(t=>t.name===e);o===-1?this.#e.push(a):this.#e=[...this.#e.slice(0,o),a,...this.#e.slice(o+1).filter(t=>t.name!==e)]}[a.inspect.custom](e,t){let n=this.#e.reduce((e,t)=>(e[t.name]?Array.isArray(e[t.name])?e[t.name].push(t.value):e[t.name]=[e[t.name],t.value]:e[t.name]=t.value,e),{__proto__:null});t.depth??=e,t.colors??=!0;let r=a.formatWithOptions(t,n);return`FormData ${r.slice(r.indexOf(`]`)+2)}`}static{c=e=>e.#e,l=(e,t)=>{e.#e=t},u=e=>e.#t??=`----formdata-undici-0${`${s(1e11)}`.padStart(11,`0`)}`,i.is.FormData=e=>typeof e==`object`&&!!e&&#e in e}};n(`FormData`,d,c,`name`,`value`,i.is.FormData),Object.defineProperties(d.prototype,{append:r,delete:r,get:r,getAll:r,has:r,set:r,[Symbol.toStringTag]:{value:`FormData`,configurable:!0}});function f(e,t,n){if(typeof t!=`string`&&(i.is.File(t)||(t=new File([t],`blob`,{type:t.type})),n!==void 0)){let e={type:t.type,lastModified:t.lastModified};t=new File([t],n,e)}return{name:e,value:t}}t.exports={FormData:d,makeEntry:f,setFormDataState:l,getFormDataBoundary:u}})),$C=q(((e,t)=>{var{bufferToLowerCasedHeaderName:n}=$(),{HTTP_TOKEN_CODEPOINTS:r}=JC(),{makeEntry:i}=QC(),{webidl:a}=YC(),o=J(`node:assert`),{isomorphicDecode:s}=qC(),c=Buffer.from(`--`),l=new TextDecoder,u=new TextDecoder(`utf-8`,{ignoreBOM:!0});function d(e){for(let t=0;t<e.length;++t)if(e.charCodeAt(t)&-128)return!1;return!0}function f(e){let t=e.length;if(t<27||t>70)return!1;for(let n=0;n<t;++n){let t=e.charCodeAt(n);if(!(t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===39||t===45||t===95))return!1}return!0}function p(e,t){o(t!==`failure`&&t.essence===`multipart/form-data`);let n=t.parameters.get(`boundary`);if(n===void 0)throw y(`missing boundary in content-type header`);let r=Buffer.from(`--${n}`,`utf8`),s=[],l={position:0},f=e.indexOf(r);if(f===-1)throw y(`no boundary found in multipart body`);for(l.position=f;;){if(e.subarray(l.position,l.position+r.length).equals(r))l.position+=r.length;else throw y(`expected a value starting with -- and the boundary`);if(v(e,c,l))return s;if(e[l.position]!==13||e[l.position+1]!==10)throw y(`expected CRLF`);l.position+=2;let{name:t,filename:n,contentType:f,encoding:p}=h(e,l);l.position+=2;let m;{let t=e.indexOf(r.subarray(2),l.position);if(t===-1)throw y(`expected boundary after body`);m=e.subarray(l.position,t-4),l.position+=m.length,p===`base64`&&(m=Buffer.from(m.toString(),`base64`))}if(e[l.position]!==13||e[l.position+1]!==10)throw y(`expected CRLF`);l.position+=2;let g;n===null?g=u.decode(Buffer.from(m)):(f??=`text/plain`,d(f)||(f=``),g=new File([m],n,{type:f})),o(a.is.USVString(t)),o(typeof g==`string`&&a.is.USVString(g)||a.is.File(g)),s.push(i(t,g,n))}}function m(e,t){e[t.position]===59&&t.position++,g(e=>e===32||e===9,e,t);let n=g(e=>S(e)&&e!==61&&e!==42,e,t);if(n.length===0)return null;let r=n.toString(`ascii`).toLowerCase(),i=e[t.position]===42;if(i&&t.position++,e[t.position]!==61)return null;t.position++,g(e=>e===32||e===9,e,t);let a;if(i){let n=g(e=>e!==32&&e!==13&&e!==10&&e!==59,e,t);if(n[0]!==117&&n[0]!==85||n[1]!==116&&n[1]!==84||n[2]!==102&&n[2]!==70||n[3]!==45||n[4]!==56)throw y(`unknown encoding, expected utf-8''`);a=decodeURIComponent(l.decode(n.subarray(7)))}else if(e[t.position]===34){t.position++;let n=g(e=>e!==10&&e!==13&&e!==34,e,t);if(e[t.position]!==34)throw y(`Closing quote not found`);t.position++,a=l.decode(n).replace(/%0A/gi,`
54
+ `).replace(/%0D/gi,`\r`).replace(/%22/g,`"`)}else{let n=g(e=>S(e)&&e!==59,e,t);a=l.decode(n)}return{name:r,value:a,extended:i}}function h(e,t){let i=null,a=null,o=null,c=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10){if(i===null)throw y(`header name is null`);return{name:i,filename:a,contentType:o,encoding:c}}let l=g(e=>e!==10&&e!==13&&e!==58,e,t);if(l=_(l,!0,!0,e=>e===9||e===32),!r.test(l.toString()))throw y(`header name does not match the field-name token production`);if(e[t.position]!==58)throw y(`expected :`);switch(t.position++,g(e=>e===32||e===9,e,t),n(l)){case`content-disposition`:{i=a=null;let n=!1;if(g(e=>S(e),e,t).toString(`ascii`).toLowerCase()!==`form-data`)throw y(`expected form-data for content-disposition header`);for(;t.position<e.length&&(e[t.position]!==13||e[t.position+1]!==10);){let r=m(e,t);if(!r)break;r.name===`name`?i=r.value:r.name===`filename`&&(r.extended?(a=r.value,n=!0):n||(a=r.value))}if(i===null)throw y(`name attribute is required in content-disposition header`);break}case`content-type`:{let n=g(e=>e!==10&&e!==13,e,t);n=_(n,!1,!0,e=>e===9||e===32),o=s(n);break}case`content-transfer-encoding`:{let n=g(e=>e!==10&&e!==13,e,t);n=_(n,!1,!0,e=>e===9||e===32),c=s(n);break}default:g(e=>e!==10&&e!==13,e,t)}if(e[t.position]!==13||e[t.position+1]!==10)throw y(`expected CRLF`);t.position+=2}}function g(e,t,n){let r=n.position;for(;r<t.length&&e(t[r]);)++r;return t.subarray(n.position,n.position=r)}function _(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e[i]);)i++;if(n)for(;a>0&&r(e[a]);)a--;return i===0&&a===e.length-1?e:e.subarray(i,a+1)}function v(e,t,n){if(e.length<t.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[n.position+r])return!1;return!0}function y(e){return TypeError(`Failed to parse body as FormData.`,{cause:TypeError(e)})}function b(e){return e<=31||e===127}function x(e){return e===40||e===41||e===60||e===62||e===64||e===44||e===59||e===58||e===92||e===34||e===47||e===91||e===93||e===63||e===61}function S(e){return e<=127&&e!==32&&e!==9&&!b(e)&&!x(e)}t.exports={multipartFormDataParser:p,validateBoundary:f}})),ew=q(((e,t)=>{var n=$(),{readableStreamClose:r,fullyReadBody:i,extractMimeType:a}=XC(),{FormData:o,setFormDataState:s,getFormDataBoundary:c}=QC(),{webidl:l}=YC(),u=J(`node:assert`),{isErrored:d,isDisturbed:f}=J(`node:stream`),{isUint8Array:p}=J(`node:util/types`),{serializeAMimeType:m}=JC(),{multipartFormDataParser:h}=$C(),{parseJSONFromBytes:g}=qC(),{utf8DecodeBytes:_}=KC(),{ReadableStreamTee:v}=J(`node:stream/web`),y=new TextEncoder;function b(){}var x=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!f(t)&&!d(t)&&t.cancel(`Response object has been garbage collected`).catch(b)});function S(e,t=!1){let i=null,a=null;i=l.is.ReadableStream(e)?e:l.is.Blob(e)?e.stream():new ReadableStream({pull(){},start(e){a=e},cancel(){},type:`bytes`}),u(l.is.ReadableStream(i));let o=null,s=null,f=null,m=null;if(typeof e==`string`)s=e,m=`text/plain;charset=UTF-8`;else if(l.is.URLSearchParams(e))s=e.toString(),m=`application/x-www-form-urlencoded;charset=UTF-8`;else if(l.is.BufferSource(e))s=l.util.getCopyOfBytesHeldByBufferSource(e);else if(l.is.FormData(e)){let t=c(e),n=`--${t}\r\nContent-Disposition: form-data`,r=e=>e.replace(/\n/g,`%0A`).replace(/\r/g,`%0D`).replace(/"/g,`%22`),i=e=>e.replace(/\r?\n|\r/g,`\r
55
55
  `),a=[],l=new Uint8Array([13,10]);f=0;let u=!1;for(let[t,o]of e)if(typeof o==`string`){let e=y.encode(n+`; name="${r(i(t))}"\r\n\r\n${i(o)}\r\n`);a.push(e),f+=e.byteLength}else{let e=y.encode(`${n}; name="${r(i(t))}"`+(o.name?`; filename="${r(o.name)}"`:``)+`\r
56
- Content-Type: ${o.type||`application/octet-stream`}\r\n\r\n`);a.push(e,o,l),typeof o.size==`number`?f+=e.byteLength+o.size+l.byteLength:u=!0}let d=y.encode(`--${t}--\r\n`);a.push(d),f+=d.byteLength,u&&(f=null),s=e,o=async function*(){for(let e of a)e.stream?yield*e.stream():yield e},m=`multipart/form-data; boundary=${t}`}else if(l.is.Blob(e))s=e,f=e.size,e.type&&(m=e.type);else if(typeof e[Symbol.asyncIterator]==`function`){if(t)throw TypeError(`keepalive`);if(n.isDisturbed(e)||e.locked)throw TypeError(`Response body object should not be disturbed or locked`);i=l.is.ReadableStream(e)?e:ReadableStream.from(e).pipeThrough(new TransformStream({transform(e,t){let n=p(e)?e:Buffer.from(e);n.byteLength&&t.enqueue(n)}}))}return(typeof s==`string`||p(s))&&(o=()=>(f=typeof s==`string`?Buffer.byteLength(s):s.length,s)),o!=null&&(async()=>{let e=o(),t=e?.[Symbol.asyncIterator]?.();if(t)for await(let e of t){if(d(i))break;e.length&&a.enqueue(new Uint8Array(e))}else e?.length&&!d(i)&&a.enqueue(typeof e==`string`?y.encode(e):new Uint8Array(e));queueMicrotask(()=>r(a))})(),[{stream:i,source:s,length:f},m]}function C(e,t=!1){return l.is.ReadableStream(e)&&(u(!n.isDisturbed(e),`The body has already been consumed.`),u(!e.locked,`The stream is locked.`)),S(e,t)}function w(e){let{0:t,1:n}=v?.(e.stream,!0)??e.stream.tee();return e.stream=t,{stream:n,length:e.length,source:e.source}}function T(e,t){return{blob(){return D(this,e=>{let n=k(t(this));return n===null?n=``:n&&=m(n),new Blob([e],{type:n})},e,t)},arrayBuffer(){return D(this,e=>new Uint8Array(e).buffer,e,t)},text(){return D(this,_,e,t)},json(){return D(this,g,e,t)},formData(){return D(this,e=>{let n=k(t(this));if(n!==null)switch(n.essence){case`multipart/form-data`:{let t=h(e,n),r=new o;return s(r,t),r}case`application/x-www-form-urlencoded`:{let t=new URLSearchParams(e.toString()),n=new o;for(let[e,r]of t)n.append(e,r);return n}}throw TypeError(`Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".`)},e,t)},bytes(){return D(this,e=>new Uint8Array(e),e,t)},textStream(){let e=t(this);if(O(e))throw TypeError(`Body is unusable: Body has already been read`);if(e.body==null){let e,t=new ReadableStream({start:t=>{e=t},pull:()=>Promise.resolve(),cancel:()=>Promise.resolve()},{size:()=>1});return e.close(),t}let n=e.body.stream,r=new TextDecoderStream(`UTF-8`);return n.pipeThrough(r)}}}function E(e,t,n){Object.assign(e.prototype,T(n,t))}function D(e,t,n,r){try{l.brandCheck(e,n)}catch(e){return Promise.reject(e)}if(e=r(e),O(e))return Promise.reject(TypeError(`Body is unusable: Body has already been read`));let a=Promise.withResolvers(),o=a.reject,s=e=>{try{a.resolve(t(e))}catch(e){o(e)}};return e.body==null?(s(Buffer.allocUnsafe(0)),a.promise):(i(e.body,s,o),a.promise)}function O(e){let t=e.body;return t!=null&&(t.stream.locked||n.isDisturbed(t.stream))}function k(e){let t=e.headersList,n=a(t);return n===`failure`?null:n}t.exports={extractBody:S,safelyExtractBody:C,cloneBody:w,mixinBody:E,streamRegistry:x,bodyUnusable:O}})),$C=q(((e,t)=>{var n=J(`node:assert`),r=$(),{channels:i}=NC(),a=kC(),{RequestContentLengthMismatchError:o,ResponseContentLengthMismatchError:s,RequestAbortedError:c,InvalidArgumentError:l,HeadersTimeoutError:u,HeadersOverflowError:d,SocketError:f,InformationalError:p,BodyTimeoutError:m,HTTPParserError:h,ResponseExceededMaxSizeError:g}=Q(),{kUrl:_,kReset:v,kClient:y,kParser:b,kBlocking:x,kRunning:S,kPending:C,kSize:w,kWriting:T,kQueue:E,kNoRef:D,kKeepAliveDefaultTimeout:O,kHostHeader:k,kPendingIdx:A,kRunningIdx:j,kError:M,kPipelining:N,kSocket:P,kKeepAliveTimeoutValue:F,kMaxHeadersSize:I,kKeepAliveMaxTimeout:L,kKeepAliveTimeoutThreshold:R,kHeadersTimeout:ee,kBodyTimeout:te,kStrictContentLength:ne,kMaxRequests:re,kCounter:z,kMaxResponseSize:ie,kOnError:ae,kResume:oe,kHTTPContext:B,kClosed:V}=OC(),H=zC(),se=Buffer.alloc(0),ce=Buffer[Symbol.species],le=r.removeAllListeners,U=Symbol(`kIdleSocketValidation`),W=Symbol(`kIdleSocketValidationTimeout`),ue=Symbol(`kSocketUsed`),de=Symbol(`kTypeOfService`),fe;function pe(){let e=process.env.JEST_WORKER_ID?BC():void 0,t,r=!0;if(process.arch===`ppc64`){let[e,t]=process.versions.node.split(`.`).map(e=>parseInt(e,10));(e<24||e===24&&t<12)&&(r=!1)}if(process.env.UNDICI_NO_WASM_SIMD===`1`?r=!1:process.env.UNDICI_NO_WASM_SIMD===`0`&&(r=!0),r)try{t=new WebAssembly.Module(VC())}catch{}return t||=new WebAssembly.Module(e||BC()),new WebAssembly.Instance(t,{env:{wasm_on_url:(e,t,n)=>0,wasm_on_status:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onStatus(new ce(he.buffer,i,r))},wasm_on_message_begin:e=>(n(G.ptr===e),G.onMessageBegin()),wasm_on_header_field:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onHeaderField(new ce(he.buffer,i,r))},wasm_on_header_value:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onHeaderValue(new ce(he.buffer,i,r))},wasm_on_headers_complete:(e,t,r,i)=>(n(G.ptr===e),G.onHeadersComplete(t,r===1,i===1)),wasm_on_body:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onBody(new ce(he.buffer,i,r))},wasm_on_message_complete:e=>(n(G.ptr===e),G.onMessageComplete())}})}var me=null,G=null,he=null,ge=0,_e=null,ve=null,K=1,ye=3,be=5,xe=8,Se=class{constructor(e,t,{exports:n}){this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(H.TYPE.RESPONSE),this.client=e,this.socket=t,this.timeout=null,this.timeoutWeakRef=new WeakRef(this),this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText=``,this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=e[I],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive=``,this.contentLength=-1,this.connectionKeepAlive=!1,this.maxResponseSize=e[ie]}setTimeout(e,t){e!==this.timeoutValue||t&K^this.timeoutType&K?(this.timeout&&=(a.clearTimeout(this.timeout),null),e&&(t&K?this.timeout=a.setFastTimeout(Ce,e,this.timeoutWeakRef):(this.timeout=setTimeout(Ce,e,this.timeoutWeakRef),this.timeout?.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=t}resume(){!this.socket.destroyed&&this.paused&&(n(this.ptr!=null),n(G===null),this.llhttp.llhttp_resume(this.ptr),n(this.timeoutType===be),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||se),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){n(G===null),n(this.ptr!=null),n(!this.paused);let{socket:t,llhttp:i}=this;e.length>ge&&(_e&&i.free(_e),ge=Math.ceil(e.length/4096)*4096,_e=i.malloc(ge)),(ve===null||ve.buffer!==i.memory.buffer||ve.byteOffset!==_e||ve.byteLength!==ge)&&(ve=new Uint8Array(i.memory.buffer,_e,ge)),ve.set(e);try{let n;try{he=e,G=this,n=i.llhttp_execute(this.ptr,_e,e.length)}finally{G=null,he=null}if(n!==H.ERROR.OK){let r=e.subarray(i.llhttp_get_error_pos(this.ptr)-_e);if(n===H.ERROR.PAUSED_UPGRADE)this.onUpgrade(r);else if(n===H.ERROR.PAUSED)this.paused=!0,t.unshift(r);else throw this.createError(n,r)}}catch(e){r.destroy(t,e)}}finish(){n(G===null),n(this.ptr!=null);let{llhttp:e}=this;if(this.paused){let t;do e.llhttp_resume(this.ptr),this.paused=!1,t=this.socket.read()||se,this.execute(t);while(this.paused&&t.length>0);this.paused&&=(e.llhttp_resume(this.ptr),!1)}let t;try{G=this,t=e.llhttp_finish(this.ptr)}finally{G=null}return t===H.ERROR.OK?null:t===H.ERROR.PAUSED||t===H.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(t,se)}createError(e,t){let{llhttp:n,contentLength:r,bytesRead:i}=this;if(r!==-1&&i!==r)return new s;let a=n.llhttp_get_error_reason(this.ptr),o=``;if(a){let e=new Uint8Array(n.memory.buffer,a).indexOf(0);o=`Response does not match the HTTP/1.1 protocol (`+Buffer.from(n.memory.buffer,a,e).toString()+`)`}return new h(o,H.ERROR[e],t)}destroy(){n(G===null),n(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&a.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(e){return this.statusText=e.toString(),0}onMessageBegin(){let{socket:e,client:t}=this;if(e.destroyed)return-1;if(t[S]===0)return r.destroy(e,new f(`bad response`,r.getSocketInfo(e))),-1;let n=t[E][t[j]];return n?(n.onResponseStarted(),0):-1}onHeaderField(e){let t=this.headers.length;return t&1?this.headers[t-1]=Buffer.concat([this.headers[t-1],e]):this.headers.push(e),this.trackHeader(e.length),0}onHeaderValue(e){let t=this.headers.length;(t&1)==1?(this.headers.push(e),t+=1):this.headers[t-1]=Buffer.concat([this.headers[t-1],e]);let n=this.headers[t-2];if(n.length===10){let i=r.bufferToLowerCasedHeaderName(n);i===`keep-alive`?this.keepAlive+=e.toString():i===`connection`&&(this.connectionKeepAlive=this.headers[t-1].length===10&&r.bufferToLowerCasedHeaderName(this.headers[t-1])===`keep-alive`)}else if(n.length===14&&r.bufferToLowerCasedHeaderName(n)===`content-length`){this.contentLength===-1&&(this.contentLength=0);for(let t=0;t<e.length;t++)this.contentLength=this.contentLength*10+(e[t]-48)}return this.trackHeader(e.length),0}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&r.destroy(this.socket,new d)}onUpgrade(e){let{upgrade:t,client:i,socket:a,headers:o,statusCode:s,statusText:c}=this;n(t),n(i[P]===a),n(!a.destroyed),n(!this.paused),n(!(o.length&1));let l=i[E][i[j]];n(l),n(l.upgrade||l.method===`CONNECT`),this.statusCode=0,this.statusText=``,this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,a.unshift(e),a[b].destroy(),a[b]=null,a[y]=null,a[M]=null,le(a),i[P]=null,i[B]=null,i[E][i[j]++]=null,i.emit(`disconnect`,i[_],[i],new p(`upgrade`));try{l.onRequestUpgrade(s,o,a,c)}catch(e){r.errorRequest(i,l,e),r.destroy(a,e)}i[oe]()}onHeadersComplete(e,t,i){let{client:a,socket:o,headers:s,statusText:c}=this;if(o.destroyed)return-1;if(a[S]===0)return r.destroy(o,new f(`bad response`,r.getSocketInfo(o))),-1;let l=a[E][a[j]];if(!l)return-1;if(n(!this.upgrade),n(this.statusCode<200),e===100)return r.destroy(o,new f(`bad response`,r.getSocketInfo(o))),-1;if(t&&!l.upgrade)return r.destroy(o,new f(`bad upgrade`,r.getSocketInfo(o))),-1;if(n(this.timeoutType===ye),this.statusCode=e,this.shouldKeepAlive=i||l.method===`HEAD`&&!o[v]&&this.connectionKeepAlive,this.statusCode>=200){let e=l.bodyTimeout==null?a[te]:l.bodyTimeout;this.setTimeout(e,be)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method===`CONNECT`||t)return n(a[S]===1),this.upgrade=!0,2;if(n(!(this.headers.length&1)),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[N]){let e=this.keepAlive?r.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){let t=Math.min(e-a[R],a[L]);t<=0?o[v]=!0:a[F]=t}else a[F]=a[O]}else o[v]=!0;let u=l.onResponseStart(e,s,this.resume,c)===!1;return l.aborted?-1:l.method===`HEAD`||e<200?1:(o[x]&&(o[x]=!1,a[oe]()),u?H.ERROR.PAUSED:0)}onBody(e){let{client:t,socket:i,statusCode:a,maxResponseSize:o}=this;if(i.destroyed)return-1;let s=t[E][t[j]];return n(s),n(this.timeoutType===be),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),n(a>=200),o>-1&&this.bytesRead+e.length>o?(r.destroy(i,new g),-1):(this.bytesRead+=e.length,s.onResponseData(e)===!1?H.ERROR.PAUSED:0)}onMessageComplete(){let{client:e,socket:t,statusCode:i,upgrade:a,headers:o,contentLength:c,bytesRead:l,shouldKeepAlive:u}=this;if(t.destroyed&&(!i||u))return-1;if(a)return 0;n(i>=100),n(!(this.headers.length&1));let d=e[E][e[j]];return n(d),this.statusCode=0,this.statusText=``,this.bytesRead=0,this.contentLength=-1,this.keepAlive=``,this.connectionKeepAlive=!1,this.headers=[],this.headersSize=0,i<200?0:d.method!==`HEAD`&&c!==-1&&l!==c?(r.destroy(t,new s),-1):(d.onResponseEnd(o),e[E][e[j]++]=null,t[ue]=e[C]===0,t[T]?(n(e[S]===0),r.destroy(t,new p(`reset`)),H.ERROR.PAUSED):!u||t[v]&&e[S]===0?(r.destroy(t,new p(`reset`)),H.ERROR.PAUSED):(e[N]==null||e[N]===1?setImmediate(e[oe]):e[oe](),0))}};function Ce(e){let t=e.deref();if(!t)return;let{socket:i,timeoutType:a,client:o,paused:s}=t;a===ye?(!i[T]||i.writableNeedDrain||o[S]>1)&&(n(!s,`cannot be paused while waiting for headers`),r.destroy(i,new u)):a===be?s||r.destroy(i,new m):a===xe&&(n(o[S]===0&&o[F]),r.destroy(i,new p(`socket idle timeout`)))}function we(e,t){if(e[P]=t,me||=pe(),t.errored)throw t.errored;if(t.destroyed)throw new f(`destroyed`);return t[D]=!1,t[T]=!1,t[v]=!1,t[x]=!1,t[U]=0,t[W]=null,t[ue]=!1,t[b]=new Se(e,t,me),r.addListener(t,`error`,Te),r.addListener(t,`readable`,Ee),r.addListener(t,`end`,De),r.addListener(t,`close`,Oe),t[V]=!1,t.on(`close`,ke),{version:`h1`,defaultPipelining:1,write(t){return Pe(e,t)},resume(){je(e)},destroy(e,n){t[V]?queueMicrotask(n):(t.on(`close`,n),t.destroy(e))},get destroyed(){return t.destroyed},busy(n){return!!(t[T]||t[v]||t[x]||t[U]===1||n&&(e[S]>0&&!n.idempotent||e[S]>0&&(n.upgrade||n.method===`CONNECT`)||e[S]>0&&r.bodyLength(n.body)!==0&&(r.isStream(n.body)||r.isAsyncIterable(n.body)||r.isFormDataLike(n.body))))}}}function Te(e){n(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`);let t=this[b];if(e.code===`ECONNRESET`&&t.statusCode&&!t.shouldKeepAlive){let e=t.finish();e&&(this[M]=e,this[y][ae](e));return}this[M]=e,this[y][ae](e)}function Ee(){this[b]?.readMore()}function De(){let e=this[b];if(e.statusCode&&!e.shouldKeepAlive){let t=e.finish();t&&r.destroy(this,t);return}r.destroy(this,new f(`other side closed`,r.getSocketInfo(this)))}function Oe(){let e=this[b];Ae(this),e&&(!this[M]&&e.statusCode&&!e.shouldKeepAlive&&(this[M]=e.finish()||this[M]),this[b].destroy(),this[b]=null);let t=this[M]||new f(`closed`,r.getSocketInfo(this)),i=this[y];if(i[P]=null,i[B]=null,i.destroyed){n(i[C]===0);let e=i[E].splice(i[j]);for(let n=0;n<e.length;n++){let a=e[n];r.errorRequest(i,a,t)}}else if(i[S]>0&&t.code!==`UND_ERR_INFO`){let e=i[E][i[j]];i[E][i[j]++]=null,r.errorRequest(i,e,t)}i[A]=i[j],n(i[S]===0),i.emit(`disconnect`,i[_],[i],t),i[oe]()}function ke(){this[V]=!0}function Ae(e){e[W]&&(clearImmediate(e[W]),e[W]=null),e[U]=0}function q(e,t){t[U]=1,t[W]=setImmediate(()=>{t[W]=null,t[U]=2,e[P]===t&&!t.destroyed&&e[oe]()})}function je(e){let t=e[P];if(t&&!t.destroyed){if(e[w]===0?!t[D]&&t.unref&&(t.unref(),t[D]=!0):t[D]&&t.ref&&(t.ref(),t[D]=!1),e[S]===0&&e[C]>0&&t[ue]){if(t[U]===0){q(e,t),t[b].readMore(),t.destroyed;return}if(t[U]===1){t[b].readMore(),t.destroyed;return}}if(e[S]===0&&(t[b].readMore(),t.destroyed))return;if(e[w]===0)t[b].timeoutType!==xe&&t[b].setTimeout(e[F],xe);else if(e[S]>0&&t[b].statusCode<200&&t[b].timeoutType!==ye){let n=e[E][e[j]],r=n.headersTimeout==null?e[ee]:n.headersTimeout;t[b].setTimeout(r,ye)}}}function Me(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function Ne(e,t){if(typeof e.setTypeOfService!=`function`)return;let n=t.typeOfService;if(n!==void 0&&e[de]!==n)try{e.setTypeOfService(n),e[de]=n}catch{}}function Pe(e,t){let{method:a,path:s,host:u,upgrade:d,blocking:f,reset:m}=t,{body:h,headers:g,contentLength:_}=t,y=a===`PUT`||a===`POST`||a===`PATCH`||a===`QUERY`||a===`PROPFIND`||a===`PROPPATCH`;if(r.isFormDataLike(h)){fe||=QC().extractBody;let[e,n]=fe(h);t.contentType??g.push(`content-type`,n),h=e.stream,_=e.length}else if(r.isBlobLike(h)&&t.contentType==null){let n=h.type;if(n){let i=`${n}`;if(!r.isValidHeaderValue(i))return r.errorRequest(e,t,new l(`invalid content-type header`)),!1;g.push(`content-type`,i)}}h&&typeof h.read==`function`&&h.read(0);let b=r.bodyLength(h);if(_=b??_,_===null&&(_=t.contentLength),_===0&&!y&&(_=null),Me(a)&&_>0&&t.contentLength!==null&&t.contentLength!==_){if(e[ne])return r.errorRequest(e,t,new o),!1;process.emitWarning(new o)}let S=e[P];Ae(S);let C=n=>{t.aborted||t.completed||(r.errorRequest(e,t,n||new c),r.destroy(h),r.destroy(S,new p(`aborted`)))};try{t.onRequestStart(C,null)}catch(n){r.errorRequest(e,t,n)}if(t.aborted)return!1;a===`HEAD`&&(S[v]=!0),(d||a===`CONNECT`)&&(S[v]=!0),m!=null&&(S[v]=m),e[re]&&++S[z]>=e[re]&&(S[v]=!0),f&&(S[x]=!0),Ne(S,t);let w=`${a} ${s} HTTP/1.1\r\n`;if(w+=typeof u==`string`?`host: ${u}\r\n`:e[k],d?w+=`connection: upgrade\r\nupgrade: ${d}\r\n`:e[N]&&!S[v]?w+=`connection: keep-alive\r
56
+ Content-Type: ${o.type||`application/octet-stream`}\r\n\r\n`);a.push(e,o,l),typeof o.size==`number`?f+=e.byteLength+o.size+l.byteLength:u=!0}let d=y.encode(`--${t}--\r\n`);a.push(d),f+=d.byteLength,u&&(f=null),s=e,o=async function*(){for(let e of a)e.stream?yield*e.stream():yield e},m=`multipart/form-data; boundary=${t}`}else if(l.is.Blob(e))s=e,f=e.size,e.type&&(m=e.type);else if(typeof e[Symbol.asyncIterator]==`function`){if(t)throw TypeError(`keepalive`);if(n.isDisturbed(e)||e.locked)throw TypeError(`Response body object should not be disturbed or locked`);i=l.is.ReadableStream(e)?e:ReadableStream.from(e).pipeThrough(new TransformStream({transform(e,t){let n=p(e)?e:Buffer.from(e);n.byteLength&&t.enqueue(n)}}))}return(typeof s==`string`||p(s))&&(o=()=>(f=typeof s==`string`?Buffer.byteLength(s):s.length,s)),o!=null&&(async()=>{let e=o(),t=e?.[Symbol.asyncIterator]?.();if(t)for await(let e of t){if(d(i))break;e.length&&a.enqueue(new Uint8Array(e))}else e?.length&&!d(i)&&a.enqueue(typeof e==`string`?y.encode(e):new Uint8Array(e));queueMicrotask(()=>r(a))})(),[{stream:i,source:s,length:f},m]}function C(e,t=!1){return l.is.ReadableStream(e)&&(u(!n.isDisturbed(e),`The body has already been consumed.`),u(!e.locked,`The stream is locked.`)),S(e,t)}function w(e){let{0:t,1:n}=v?.(e.stream,!0)??e.stream.tee();return e.stream=t,{stream:n,length:e.length,source:e.source}}function T(e,t){return{blob(){return D(this,e=>{let n=k(t(this));return n===null?n=``:n&&=m(n),new Blob([e],{type:n})},e,t)},arrayBuffer(){return D(this,e=>new Uint8Array(e).buffer,e,t)},text(){return D(this,_,e,t)},json(){return D(this,g,e,t)},formData(){return D(this,e=>{let n=k(t(this));if(n!==null)switch(n.essence){case`multipart/form-data`:{let t=h(e,n),r=new o;return s(r,t),r}case`application/x-www-form-urlencoded`:{let t=new URLSearchParams(e.toString()),n=new o;for(let[e,r]of t)n.append(e,r);return n}}throw TypeError(`Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".`)},e,t)},bytes(){return D(this,e=>new Uint8Array(e),e,t)},textStream(){let e=t(this);if(O(e))throw TypeError(`Body is unusable: Body has already been read`);if(e.body==null){let e,t=new ReadableStream({start:t=>{e=t},pull:()=>Promise.resolve(),cancel:()=>Promise.resolve()},{size:()=>1});return e.close(),t}let n=e.body.stream,r=new TextDecoderStream(`UTF-8`);return n.pipeThrough(r)}}}function E(e,t,n){Object.assign(e.prototype,T(n,t))}function D(e,t,n,r){try{l.brandCheck(e,n)}catch(e){return Promise.reject(e)}if(e=r(e),O(e))return Promise.reject(TypeError(`Body is unusable: Body has already been read`));let a=Promise.withResolvers(),o=a.reject,s=e=>{try{a.resolve(t(e))}catch(e){o(e)}};return e.body==null?(s(Buffer.allocUnsafe(0)),a.promise):(i(e.body,s,o),a.promise)}function O(e){let t=e.body;return t!=null&&(t.stream.locked||n.isDisturbed(t.stream))}function k(e){let t=e.headersList,n=a(t);return n===`failure`?null:n}t.exports={extractBody:S,safelyExtractBody:C,cloneBody:w,mixinBody:E,streamRegistry:x,bodyUnusable:O}})),tw=q(((e,t)=>{var n=J(`node:assert`),r=$(),{channels:i}=FC(),a=jC(),{RequestContentLengthMismatchError:o,ResponseContentLengthMismatchError:s,RequestAbortedError:c,InvalidArgumentError:l,HeadersTimeoutError:u,HeadersOverflowError:d,SocketError:f,InformationalError:p,BodyTimeoutError:m,HTTPParserError:h,ResponseExceededMaxSizeError:g}=Q(),{kUrl:_,kReset:v,kClient:y,kParser:b,kBlocking:x,kRunning:S,kPending:C,kSize:w,kWriting:T,kQueue:E,kNoRef:D,kKeepAliveDefaultTimeout:O,kHostHeader:k,kPendingIdx:A,kRunningIdx:j,kError:M,kPipelining:N,kSocket:P,kKeepAliveTimeoutValue:F,kMaxHeadersSize:I,kKeepAliveMaxTimeout:L,kKeepAliveTimeoutThreshold:R,kHeadersTimeout:ee,kBodyTimeout:te,kStrictContentLength:ne,kMaxRequests:re,kCounter:z,kMaxResponseSize:ie,kOnError:ae,kResume:oe,kHTTPContext:B,kClosed:V}=AC(),H=VC(),se=Buffer.alloc(0),ce=Buffer[Symbol.species],le=r.removeAllListeners,U=Symbol(`kIdleSocketValidation`),W=Symbol(`kIdleSocketValidationTimeout`),ue=Symbol(`kSocketUsed`),de=Symbol(`kTypeOfService`),fe;function pe(){let e=process.env.JEST_WORKER_ID?HC():void 0,t,r=!0;if(process.arch===`ppc64`){let[e,t]=process.versions.node.split(`.`).map(e=>parseInt(e,10));(e<24||e===24&&t<12)&&(r=!1)}if(process.env.UNDICI_NO_WASM_SIMD===`1`?r=!1:process.env.UNDICI_NO_WASM_SIMD===`0`&&(r=!0),r)try{t=new WebAssembly.Module(UC())}catch{}return t||=new WebAssembly.Module(e||HC()),new WebAssembly.Instance(t,{env:{wasm_on_url:(e,t,n)=>0,wasm_on_status:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onStatus(new ce(he.buffer,i,r))},wasm_on_message_begin:e=>(n(G.ptr===e),G.onMessageBegin()),wasm_on_header_field:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onHeaderField(new ce(he.buffer,i,r))},wasm_on_header_value:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onHeaderValue(new ce(he.buffer,i,r))},wasm_on_headers_complete:(e,t,r,i)=>(n(G.ptr===e),G.onHeadersComplete(t,r===1,i===1)),wasm_on_body:(e,t,r)=>{n(G.ptr===e);let i=t-_e+he.byteOffset;return G.onBody(new ce(he.buffer,i,r))},wasm_on_message_complete:e=>(n(G.ptr===e),G.onMessageComplete())}})}var me=null,G=null,he=null,ge=0,_e=null,ve=null,K=1,ye=3,be=5,xe=8,Se=class{constructor(e,t,{exports:n}){this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(H.TYPE.RESPONSE),this.client=e,this.socket=t,this.timeout=null,this.timeoutWeakRef=new WeakRef(this),this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText=``,this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=e[I],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive=``,this.contentLength=-1,this.connectionKeepAlive=!1,this.maxResponseSize=e[ie]}setTimeout(e,t){e!==this.timeoutValue||t&K^this.timeoutType&K?(this.timeout&&=(a.clearTimeout(this.timeout),null),e&&(t&K?this.timeout=a.setFastTimeout(Ce,e,this.timeoutWeakRef):(this.timeout=setTimeout(Ce,e,this.timeoutWeakRef),this.timeout?.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=t}resume(){!this.socket.destroyed&&this.paused&&(n(this.ptr!=null),n(G===null),this.llhttp.llhttp_resume(this.ptr),n(this.timeoutType===be),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||se),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){n(G===null),n(this.ptr!=null),n(!this.paused);let{socket:t,llhttp:i}=this;e.length>ge&&(_e&&i.free(_e),ge=Math.ceil(e.length/4096)*4096,_e=i.malloc(ge)),(ve===null||ve.buffer!==i.memory.buffer||ve.byteOffset!==_e||ve.byteLength!==ge)&&(ve=new Uint8Array(i.memory.buffer,_e,ge)),ve.set(e);try{let n;try{he=e,G=this,n=i.llhttp_execute(this.ptr,_e,e.length)}finally{G=null,he=null}if(n!==H.ERROR.OK){let r=e.subarray(i.llhttp_get_error_pos(this.ptr)-_e);if(n===H.ERROR.PAUSED_UPGRADE)this.onUpgrade(r);else if(n===H.ERROR.PAUSED)this.paused=!0,t.unshift(r);else throw this.createError(n,r)}}catch(e){r.destroy(t,e)}}finish(){n(G===null),n(this.ptr!=null);let{llhttp:e}=this;if(this.paused){let t;do e.llhttp_resume(this.ptr),this.paused=!1,t=this.socket.read()||se,this.execute(t);while(this.paused&&t.length>0);this.paused&&=(e.llhttp_resume(this.ptr),!1)}let t;try{G=this,t=e.llhttp_finish(this.ptr)}finally{G=null}return t===H.ERROR.OK?null:t===H.ERROR.PAUSED||t===H.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(t,se)}createError(e,t){let{llhttp:n,contentLength:r,bytesRead:i}=this;if(r!==-1&&i!==r)return new s;let a=n.llhttp_get_error_reason(this.ptr),o=``;if(a){let e=new Uint8Array(n.memory.buffer,a).indexOf(0);o=`Response does not match the HTTP/1.1 protocol (`+Buffer.from(n.memory.buffer,a,e).toString()+`)`}return new h(o,H.ERROR[e],t)}destroy(){n(G===null),n(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&a.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(e){return this.statusText=e.toString(),0}onMessageBegin(){let{socket:e,client:t}=this;if(e.destroyed)return-1;if(t[S]===0)return r.destroy(e,new f(`bad response`,r.getSocketInfo(e))),-1;let n=t[E][t[j]];return n?(n.onResponseStarted(),0):-1}onHeaderField(e){let t=this.headers.length;return t&1?this.headers[t-1]=Buffer.concat([this.headers[t-1],e]):this.headers.push(e),this.trackHeader(e.length),0}onHeaderValue(e){let t=this.headers.length;(t&1)==1?(this.headers.push(e),t+=1):this.headers[t-1]=Buffer.concat([this.headers[t-1],e]);let n=this.headers[t-2];if(n.length===10){let i=r.bufferToLowerCasedHeaderName(n);i===`keep-alive`?this.keepAlive+=e.toString():i===`connection`&&(this.connectionKeepAlive=this.headers[t-1].length===10&&r.bufferToLowerCasedHeaderName(this.headers[t-1])===`keep-alive`)}else if(n.length===14&&r.bufferToLowerCasedHeaderName(n)===`content-length`){this.contentLength===-1&&(this.contentLength=0);for(let t=0;t<e.length;t++)this.contentLength=this.contentLength*10+(e[t]-48)}return this.trackHeader(e.length),0}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&r.destroy(this.socket,new d)}onUpgrade(e){let{upgrade:t,client:i,socket:a,headers:o,statusCode:s,statusText:c}=this;n(t),n(i[P]===a),n(!a.destroyed),n(!this.paused),n(!(o.length&1));let l=i[E][i[j]];n(l),n(l.upgrade||l.method===`CONNECT`),this.statusCode=0,this.statusText=``,this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,a.unshift(e),a[b].destroy(),a[b]=null,a[y]=null,a[M]=null,le(a),i[P]=null,i[B]=null,i[E][i[j]++]=null,i.emit(`disconnect`,i[_],[i],new p(`upgrade`));try{l.onRequestUpgrade(s,o,a,c)}catch(e){r.errorRequest(i,l,e),r.destroy(a,e)}i[oe]()}onHeadersComplete(e,t,i){let{client:a,socket:o,headers:s,statusText:c}=this;if(o.destroyed)return-1;if(a[S]===0)return r.destroy(o,new f(`bad response`,r.getSocketInfo(o))),-1;let l=a[E][a[j]];if(!l)return-1;if(n(!this.upgrade),n(this.statusCode<200),e===100)return r.destroy(o,new f(`bad response`,r.getSocketInfo(o))),-1;if(t&&!l.upgrade)return r.destroy(o,new f(`bad upgrade`,r.getSocketInfo(o))),-1;if(n(this.timeoutType===ye),this.statusCode=e,this.shouldKeepAlive=i||l.method===`HEAD`&&!o[v]&&this.connectionKeepAlive,this.statusCode>=200){let e=l.bodyTimeout==null?a[te]:l.bodyTimeout;this.setTimeout(e,be)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method===`CONNECT`||t)return n(a[S]===1),this.upgrade=!0,2;if(n(!(this.headers.length&1)),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[N]){let e=this.keepAlive?r.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){let t=Math.min(e-a[R],a[L]);t<=0?o[v]=!0:a[F]=t}else a[F]=a[O]}else o[v]=!0;let u=l.onResponseStart(e,s,this.resume,c)===!1;return l.aborted?-1:l.method===`HEAD`||e<200?1:(o[x]&&(o[x]=!1,a[oe]()),u?H.ERROR.PAUSED:0)}onBody(e){let{client:t,socket:i,statusCode:a,maxResponseSize:o}=this;if(i.destroyed)return-1;let s=t[E][t[j]];return n(s),n(this.timeoutType===be),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),n(a>=200),o>-1&&this.bytesRead+e.length>o?(r.destroy(i,new g),-1):(this.bytesRead+=e.length,s.onResponseData(e)===!1?H.ERROR.PAUSED:0)}onMessageComplete(){let{client:e,socket:t,statusCode:i,upgrade:a,headers:o,contentLength:c,bytesRead:l,shouldKeepAlive:u}=this;if(t.destroyed&&(!i||u))return-1;if(a)return 0;n(i>=100),n(!(this.headers.length&1));let d=e[E][e[j]];return n(d),this.statusCode=0,this.statusText=``,this.bytesRead=0,this.contentLength=-1,this.keepAlive=``,this.connectionKeepAlive=!1,this.headers=[],this.headersSize=0,i<200?0:d.method!==`HEAD`&&c!==-1&&l!==c?(r.destroy(t,new s),-1):(d.onResponseEnd(o),e[E][e[j]++]=null,t[ue]=e[C]===0,t[T]?(n(e[S]===0),r.destroy(t,new p(`reset`)),H.ERROR.PAUSED):!u||t[v]&&e[S]===0?(r.destroy(t,new p(`reset`)),H.ERROR.PAUSED):(e[N]==null||e[N]===1?setImmediate(e[oe]):e[oe](),0))}};function Ce(e){let t=e.deref();if(!t)return;let{socket:i,timeoutType:a,client:o,paused:s}=t;a===ye?(!i[T]||i.writableNeedDrain||o[S]>1)&&(n(!s,`cannot be paused while waiting for headers`),r.destroy(i,new u)):a===be?s||r.destroy(i,new m):a===xe&&(n(o[S]===0&&o[F]),r.destroy(i,new p(`socket idle timeout`)))}function we(e,t){if(e[P]=t,me||=pe(),t.errored)throw t.errored;if(t.destroyed)throw new f(`destroyed`);return t[D]=!1,t[T]=!1,t[v]=!1,t[x]=!1,t[U]=0,t[W]=null,t[ue]=!1,t[b]=new Se(e,t,me),r.addListener(t,`error`,Te),r.addListener(t,`readable`,Ee),r.addListener(t,`end`,De),r.addListener(t,`close`,Oe),t[V]=!1,t.on(`close`,ke),{version:`h1`,defaultPipelining:1,write(t){return Pe(e,t)},resume(){je(e)},destroy(e,n){t[V]?queueMicrotask(n):(t.on(`close`,n),t.destroy(e))},get destroyed(){return t.destroyed},busy(n){return!!(t[T]||t[v]||t[x]||t[U]===1||n&&(e[S]>0&&!n.idempotent||e[S]>0&&(n.upgrade||n.method===`CONNECT`)||e[S]>0&&r.bodyLength(n.body)!==0&&(r.isStream(n.body)||r.isAsyncIterable(n.body)||r.isFormDataLike(n.body))))}}}function Te(e){n(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`);let t=this[b];if(e.code===`ECONNRESET`&&t.statusCode&&!t.shouldKeepAlive){let e=t.finish();e&&(this[M]=e,this[y][ae](e));return}this[M]=e,this[y][ae](e)}function Ee(){this[b]?.readMore()}function De(){let e=this[b];if(e.statusCode&&!e.shouldKeepAlive){let t=e.finish();t&&r.destroy(this,t);return}r.destroy(this,new f(`other side closed`,r.getSocketInfo(this)))}function Oe(){let e=this[b];Ae(this),e&&(!this[M]&&e.statusCode&&!e.shouldKeepAlive&&(this[M]=e.finish()||this[M]),this[b].destroy(),this[b]=null);let t=this[M]||new f(`closed`,r.getSocketInfo(this)),i=this[y];if(i[P]=null,i[B]=null,i.destroyed){n(i[C]===0);let e=i[E].splice(i[j]);for(let n=0;n<e.length;n++){let a=e[n];r.errorRequest(i,a,t)}}else if(i[S]>0&&t.code!==`UND_ERR_INFO`){let e=i[E][i[j]];i[E][i[j]++]=null,r.errorRequest(i,e,t)}i[A]=i[j],n(i[S]===0),i.emit(`disconnect`,i[_],[i],t),i[oe]()}function ke(){this[V]=!0}function Ae(e){e[W]&&(clearImmediate(e[W]),e[W]=null),e[U]=0}function q(e,t){t[U]=1,t[W]=setImmediate(()=>{t[W]=null,t[U]=2,e[P]===t&&!t.destroyed&&e[oe]()})}function je(e){let t=e[P];if(t&&!t.destroyed){if(e[w]===0?!t[D]&&t.unref&&(t.unref(),t[D]=!0):t[D]&&t.ref&&(t.ref(),t[D]=!1),e[S]===0&&e[C]>0&&t[ue]){if(t[U]===0){q(e,t),t[b].readMore(),t.destroyed;return}if(t[U]===1){t[b].readMore(),t.destroyed;return}}if(e[S]===0&&(t[b].readMore(),t.destroyed))return;if(e[w]===0)t[b].timeoutType!==xe&&t[b].setTimeout(e[F],xe);else if(e[S]>0&&t[b].statusCode<200&&t[b].timeoutType!==ye){let n=e[E][e[j]],r=n.headersTimeout==null?e[ee]:n.headersTimeout;t[b].setTimeout(r,ye)}}}function Me(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function Ne(e,t){if(typeof e.setTypeOfService!=`function`)return;let n=t.typeOfService;if(n!==void 0&&e[de]!==n)try{e.setTypeOfService(n),e[de]=n}catch{}}function Pe(e,t){let{method:a,path:s,host:u,upgrade:d,blocking:f,reset:m}=t,{body:h,headers:g,contentLength:_}=t,y=a===`PUT`||a===`POST`||a===`PATCH`||a===`QUERY`||a===`PROPFIND`||a===`PROPPATCH`;if(r.isFormDataLike(h)){fe||=ew().extractBody;let[e,n]=fe(h);t.contentType??g.push(`content-type`,n),h=e.stream,_=e.length}else if(r.isBlobLike(h)&&t.contentType==null){let n=h.type;if(n){let i=`${n}`;if(!r.isValidHeaderValue(i))return r.errorRequest(e,t,new l(`invalid content-type header`)),!1;g.push(`content-type`,i)}}h&&typeof h.read==`function`&&h.read(0);let b=r.bodyLength(h);if(_=b??_,_===null&&(_=t.contentLength),_===0&&!y&&(_=null),Me(a)&&_>0&&t.contentLength!==null&&t.contentLength!==_){if(e[ne])return r.errorRequest(e,t,new o),!1;process.emitWarning(new o)}let S=e[P];Ae(S);let C=n=>{t.aborted||t.completed||(r.errorRequest(e,t,n||new c),r.destroy(h),r.destroy(S,new p(`aborted`)))};try{t.onRequestStart(C,null)}catch(n){r.errorRequest(e,t,n)}if(t.aborted)return!1;a===`HEAD`&&(S[v]=!0),(d||a===`CONNECT`)&&(S[v]=!0),m!=null&&(S[v]=m),e[re]&&++S[z]>=e[re]&&(S[v]=!0),f&&(S[x]=!0),Ne(S,t);let w=`${a} ${s} HTTP/1.1\r\n`;if(w+=typeof u==`string`?`host: ${u}\r\n`:e[k],d?w+=`connection: upgrade\r\nupgrade: ${d}\r\n`:e[N]&&!S[v]?w+=`connection: keep-alive\r
57
57
  `:w+=`connection: close\r
58
58
  `,Array.isArray(g))for(let e=0;e<g.length;e+=2){let t=g[e+0],n=g[e+1];if(Array.isArray(n))for(let e=0;e<n.length;e++)w+=`${t}: ${n[e]}\r\n`;else w+=`${t}: ${n}\r\n`}return i.sendHeaders.hasSubscribers&&i.sendHeaders.publish({request:t,headers:w,socket:S}),!h||b===0?Ie(C,null,e,t,S,_,w,y):r.isBuffer(h)?Ie(C,h,e,t,S,_,w,y):r.isBlobLike(h)?typeof h.stream==`function`?Re(C,h.stream(),e,t,S,_,w,y):Le(C,h,e,t,S,_,w,y):r.isStream(h)?Fe(C,h,e,t,S,_,w,y):r.isIterable(h)?Re(C,h,e,t,S,_,w,y):n(!1),!0}function Fe(e,t,i,a,o,s,l,u){n(s!==0||i[S]===0,`stream body cannot be pipelined`);let d=!1,f=new ze({abort:e,socket:o,request:a,contentLength:s,client:i,expectsPayload:u,header:l}),p=function(e){if(!d)try{!f.write(e)&&this.pause&&this.pause()}catch(e){r.destroy(this,e)}},m=function(){d||t.resume&&t.resume()},h=function(){if(queueMicrotask(()=>{t.removeListener(`error`,g)}),!d){let e=new c;queueMicrotask(()=>g(e))}},g=function(e){if(!d){if(d=!0,n(o.destroyed||o[T]&&i[S]<=1),o.off(`drain`,m).off(`error`,g),t.removeListener(`data`,p).removeListener(`end`,g).removeListener(`close`,h),!e)try{f.end()}catch(t){e=t}f.destroy(e),e&&(e.code!==`UND_ERR_INFO`||e.message!==`reset`)?r.destroy(t,e):r.destroy(t)}};t.on(`data`,p).on(`end`,g).on(`error`,g).on(`close`,h),t.resume&&t.resume(),o.on(`drain`,m).on(`error`,g),t.errorEmitted??t.errored?setImmediate(g,t.errored):(t.endEmitted??t.readableEnded)&&setImmediate(g,null),(t.closeEmitted??t.closed)&&setImmediate(h)}function Ie(e,t,i,a,o,s,c,l){try{t?r.isBuffer(t)&&(n(s===t.byteLength,`buffer body must have content length`),o.cork(),o.write(`${c}content-length: ${s}\r\n\r\n`,`latin1`),o.write(t),o.uncork(),a.onBodySent(t),!l&&a.reset!==!1&&(o[v]=!0)):s===0?o.write(`${c}content-length: 0\r\n\r\n`,`latin1`):(n(s===null,`no body must not have content length`),o.write(`${c}\r\n`,`latin1`)),a.onRequestSent(),i[oe]()}catch(t){e(t)}}async function Le(e,t,n,r,i,a,s,c){try{if(a!=null&&a!==t.size)throw new o;let e=Buffer.from(await t.arrayBuffer());i.cork(),i.write(`${s}content-length: ${a}\r\n\r\n`,`latin1`),i.write(e),i.uncork(),r.onBodySent(e),r.onRequestSent(),!c&&r.reset!==!1&&(i[v]=!0),n[oe]()}catch(t){e(t)}}async function Re(e,t,r,i,a,o,s,c){n(o!==0||r[S]===0,`iterator body cannot be pipelined`);let l=null;function u(){if(l){let e=l;l=null,e()}}let d=()=>new Promise((e,t)=>{n(l===null),a[M]?t(a[M]):l=e});a.on(`close`,u).on(`drain`,u);let f=new ze({abort:e,socket:a,request:i,contentLength:o,client:r,expectsPayload:c,header:s});try{for await(let e of t){if(a[M])throw a[M];f.write(e)||await d()}f.end()}catch(e){f.destroy(e)}finally{a.off(`close`,u).off(`drain`,u)}}var ze=class{constructor({abort:e,socket:t,request:n,contentLength:r,client:i,expectsPayload:a,header:o}){this.socket=t,this.request=n,this.contentLength=r,this.client=i,this.bytesWritten=0,this.expectsPayload=a,this.header=o,this.abort=e,t[T]=!0}write(e){let{socket:t,request:n,contentLength:r,client:i,bytesWritten:a,expectsPayload:s,header:c}=this;if(t[M])throw t[M];if(t.destroyed)return!1;let l=e instanceof Uint8Array?e.byteLength:Buffer.byteLength(e);if(!l)return!0;if(r!==null&&a+l>r){if(i[ne])throw new o;process.emitWarning(new o)}t.cork(),a===0&&(!s&&n.reset!==!1&&(t[v]=!0),r===null?t.write(`${c}transfer-encoding: chunked\r\n`,`latin1`):t.write(`${c}content-length: ${r}\r\n\r\n`,`latin1`)),r===null&&t.write(`\r\n${l.toString(16)}\r\n`,`latin1`),this.bytesWritten+=l;let u=t.write(e);return t.uncork(),n.onBodySent(e),u||t[b].timeout&&t[b].timeoutType===ye&&t[b].timeout.refresh&&t[b].timeout.refresh(),u}end(){let{socket:e,contentLength:t,client:n,bytesWritten:r,expectsPayload:i,header:a,request:s}=this;if(s.onRequestSent(),e[T]=!1,e[M])throw e[M];if(!e.destroyed){if(r===0?i?e.write(`${a}content-length: 0\r\n\r\n`,`latin1`):e.write(`${a}\r\n`,`latin1`):t===null&&e.write(`\r
59
59
  0\r
60
60
  \r
61
- `,`latin1`),t!==null&&r!==t){if(n[ne])throw new o;process.emitWarning(new o)}e[b].timeout&&e[b].timeoutType===ye&&e[b].timeout.refresh&&e[b].timeout.refresh(),n[oe]()}}destroy(e){let{socket:t,client:r,abort:i}=this;t[T]=!1,e&&(n(r[S]<=1,`pipeline should only contain this request`),i(e))}};t.exports=we})),ew=q(((e,t)=>{var n=J(`node:assert`),{pipeline:r}=J(`node:stream`),i=$(),{RequestContentLengthMismatchError:a,ResponseContentLengthMismatchError:o,RequestAbortedError:s,SocketError:c,InformationalError:l,InvalidArgumentError:u,HeadersTimeoutError:d,BodyTimeoutError:f,ResponseExceededMaxSizeError:p}=Q(),{kUrl:m,kReset:h,kClient:g,kRunning:_,kPending:v,kQueue:y,kPendingIdx:b,kRunningIdx:x,kError:S,kSocket:C,kStrictContentLength:w,kOnError:T,kMaxConcurrentStreams:E,kHTTP2Session:D,kHostAuthority:O,kResume:k,kSize:A,kHTTPContext:j,kClosed:M,kKeepAliveDefaultTimeout:N,kHeadersTimeout:P,kBodyTimeout:F,kEnableConnectProtocol:I,kRemoteSettings:L,kHTTP2Stream:R,kHTTP2SessionState:ee,kHTTP2Options:te,kMaxResponseSize:ne}=OC(),{channels:re}=NC(),z=Symbol(`open streams`),ie=Symbol(`request stream id`),ae=Symbol(`request stream`),oe=Symbol(`request stream cleanup`),B=Symbol(`request stream state`),V=Symbol(`received goaway`),H=Symbol(`goaway replay attempts`),se=Symbol(`refused stream retry`),ce=1,le,U;try{U=J(`node:http2`)}catch{U={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:W,HTTP2_HEADER_METHOD:ue,HTTP2_HEADER_PATH:de,HTTP2_HEADER_SCHEME:fe,HTTP2_HEADER_CONTENT_LENGTH:pe,HTTP2_HEADER_EXPECT:me,HTTP2_HEADER_STATUS:G,HTTP2_HEADER_PROTOCOL:he,NGHTTP2_NO_ERROR:ge,NGHTTP2_REFUSED_STREAM:_e}}=U;function ve(e,t){return e[S]||(t===ge?new l(`HTTP/2: "GOAWAY" frame received with code ${t}`):new c(`HTTP/2: "GOAWAY" frame received with code ${t}`,i.getSocketInfo(e[C])))}function K(e,t){let n=e[g],r=e[C];if(n[D]===e&&(n[C]=null,n[j]=null,n[D]=null),r!=null&&r[S]==null&&(r[S]=t),!e.closed&&!e.destroyed)try{e.destroy(t)}catch{}i.destroy(r,t)}function ye(e,t){let n=Number.isInteger(t)?t:2**53-1;for(let t=e[x];t<e[b];t++){let r=e[y][t];if(r!=null&&(typeof r[ie]!=`number`||r[ie]>n))return t}return e[b]}function be(e){e[ie]=null,e[ae]=null,e[oe]=null}function xe(e,t,n){let r=e[oe],i=e[ae];be(e),r?.(i),e[ie]=t.id,e[ae]=t,e[oe]=n}function Se(e){let t=e[oe],n=e[ae];be(e),t?.(n)}function Ce(e,t){e[y].splice(e[b]+1,0,t)}function we(e,t,n=!1){let r=e[y],i=e[x];if(i<e[b]&&r[i]===t){r[i]=null,e[x]=i+1;return}let a=r.indexOf(t,i);a===-1||a>=e[b]||(r.splice(a,1),e[b]--,n&&e[b]<e[x]&&(e[b]=e[x]))}function Te(e){let{body:t}=e;return t==null||i.isBuffer(t)||i.isBlobLike(t)}function Ee(e){return e[ae]?.[B]?.responseReceived===!0}function De(e){let t=(e[H]??0)+1;return e[H]=t,t<=ce}function Oe(e,t=_e){if(e!=null&&!e.destroyed&&!e.closed)try{e.close(t)}catch{}}function ke(e){let t=e[ae];return Se(e),Ae(t),t}function Ae(e){e!=null&&e[B]!=null&&(e[B]=null,e.off(`close`,$e),e.off(`close`,Qe),e[D]!=null&&Ze(e),!e.destroyed&&!e.closed&&e.once(`error`,Xe))}function q(e,t){e[C]=t;let n=e[te].sessionOptions?.initialWindowSize,r=e[te].connectionWindowSize,a=U.connect(e[m],{createConnection:()=>t,peerMaxConcurrentStreams:e[te].maxConcurrentStreams,settings:{enablePush:!1,...n==null?null:{initialWindowSize:n}}});return e[C]=t,a[z]=0,a[g]=e,a[C]=t,a[ee]={idleTimeout:null,noStreamsTimeout:null,refed:!0,ping:{interval:e[te].pingInterval===0?null:setInterval(He,e[te].pingInterval,a).unref()}},a[V]=!1,a[I]=!1,a[L]=!1,r&&i.addListener(a,`connect`,Be.bind(a,r)),i.addListener(a,`error`,Ue),i.addListener(a,`frameError`,We),i.addListener(a,`goaway`,Ge),i.addListener(a,`close`,Ke),i.addListener(a,`remoteSettings`,Ve),Me(a),e[D]=a,t[D]=a,i.addListener(t,`error`,Je),i.addListener(t,`end`,Ye),i.addListener(t,`close`,qe),t[M]=!1,t.on(`close`,Y),{version:`h2`,defaultPipelining:1/0,write(t){return ft(e,t)},resume(){Ne(e)},destroy(e,n){t[M]?queueMicrotask(n):t.destroy(e).on(`close`,n)},get destroyed(){return t.destroyed},busy(t){if(a[L]===!1&&e[_]>0||e[_]>=e[E])return!0;if(t!=null){if(e[_]>0){if((t.upgrade===`websocket`||t.method===`CONNECT`)&&a[L]===!1)return!0}else return(t.upgrade===`websocket`||t.method===`CONNECT`)&&a[L]===!1}return!1}}}function je(e){let t=e[ee];t.refed===!1&&(t.refed=!0,e.ref())}function Me(e){let t=e[ee];t.refed===!0&&(t.refed=!1,e.unref())}function Ne(e){let t=e[C],n=e[D];t?.destroyed===!1&&(n[z]===0&&e[A]===0?Me(n):je(n),e[A]===0&&n[z]===0?Re(n):Le(n),e[E]===0&&e[_]===0&&e[v]>0?Fe(n):Pe(n))}function Pe(e){let t=e[ee];t?.noStreamsTimeout!=null&&(clearTimeout(t.noStreamsTimeout),t.noStreamsTimeout=null)}function Fe(e){let t=e[g],n=e[ee],r=t[P];r&&n.noStreamsTimeout==null&&(n.noStreamsTimeout=setTimeout(Ie,r,e).unref())}function Ie(e){let t=e[g],n=e[ee];if(n.noStreamsTimeout=null,t[D]!==e||t[E]!==0||t[_]!==0||t[v]===0)return;let r=new d(`HTTP/2: server did not accept a new stream within ${t[P]}`),a=t[y].splice(t[b]);for(let e=0;e<a.length;e++)a[e]!=null&&i.errorRequest(t,a[e],r);e[S]=r,K(e,r)}function Le(e){let t=e[ee];t?.idleTimeout!=null&&(clearTimeout(t.idleTimeout),t.idleTimeout=null)}function Re(e){let t=e[g];if(t[D]!==e||e.closed||e.destroyed)return;if(e[z]!==0||t[A]!==0){Le(e);return}let n=e[ee];n.idleTimeout??=setTimeout(ze,t[N],e).unref()}function ze(e){let t=e[g],n=e[C],r=e[ee];if(r.idleTimeout=null,t[D]!==e||e[z]!==0||t[A]!==0||e.closed||e.destroyed)return;let a=new l(`socket idle timeout`);n[S]=a,i.destroy(n,a)}function Be(e){try{typeof this.setLocalWindowSize==`function`&&this.setLocalWindowSize(e)}catch{}}function Ve(e){if(this[g][E]=e.maxConcurrentStreams??this[g][E],this[L]===!0&&this[I]===!0&&e.enableConnectProtocol===!1){let e=new l(`HTTP/2: Server disabled extended CONNECT protocol against RFC-8441`);this[C][S]=e,this[g][T](e);return}this[I]=e.enableConnectProtocol??this[I],this[L]=!0,this[g][k]()}function He(e){let t=e[ee];if((e.closed||e.destroyed)&&t.ping.interval!=null){clearInterval(t.ping.interval),t.ping.interval=null;return}e.ping(n.bind(e));function n(e,t){let n=this[g],r=this[C];if(e!=null){let t=new l(`HTTP/2: "PING" errored - type ${e.message}`);r[S]=t,n[T](t)}else n.emit(`ping`,t)}}function Ue(e){n(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[C][S]=e,!this[V]&&this[g][T](e)}function We(e,t,n){if(n===0){if(this[V])return;let n=new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[C][S]=n,this[g][T](n)}}function Ge(e,t){if(this[V])return;this[V]=!0;let n=ve(this,e),r=this[g],a=r[b],o=ye(r,t),s=[],c=[];for(let e=o;e<a;e++){let t=r[y][e];if(t!=null){let e=Ee(t);c.push(ke(t)),!e&&Te(t)&&De(t)?s.push(t):i.errorRequest(r,t,n)}}for(let e=0;e<c.length;e++)Oe(c[e]);if(o!==a){let e=r[y].slice(a);r[y].length=o,r[y].push(...s,...e)}r[D]===this&&(r[C]=null,r[j]=null,r[D]=null),Le(this),Pe(this),!this.closed&&!this.destroyed&&this.close(),r[b]=o,r.emit(`disconnect`,r[m],[r],n),r[k]()}function Ke(){let{[g]:e,[ee]:t,[C]:r}=this,a=r[S]||this[S]||new c(`closed`,i.getSocketInfo(r));if(e[D]===this&&(e[C]=null,e[j]=null,e[D]=null),Le(this),Pe(this),t.ping.interval!=null&&(clearInterval(t.ping.interval),t.ping.interval=null),e.destroyed){n(e[v]===0);let t=e[y].splice(e[x]);for(let n=0;n<t.length;n++){let r=t[n];r!=null&&i.errorRequest(e,r,a)}}}function qe(){let e=this[S]||new c(`closed`,i.getSocketInfo(this)),t=this[D],r=t[g];r[C]!==this&&(t[V]||r[D]!=null&&r[D]!==t)||(r[C]=null,r[j]=null,r[D]===t&&(r[D]=null),t.destroy(e),r[b]=r[x],n(r[_]===0),r.emit(`disconnect`,r[m],[r],e),r[k]())}function Je(e){n(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[S]=e,!this[D]?.[V]&&this[D]?.[g]?.[T](e)}function Ye(){i.destroy(this,new c(`other side closed`,i.getSocketInfo(this)))}function Y(){this[M]=!0}function Xe(){}function Ze(e){let t=e[D],n=t[g];e[D]=null,--t[z],t[z]===0&&(n[A]===0||t[V])&&(Me(t),Re(t))}function Qe(){this.off(`error`,Xe);let e=this[B];this[B]=null,it(e,new l(`HTTP/2: stream closed before response headers`)),Ze(this)}function $e(){let e=this[B];e!=null&&(mt(this),e.pendingEnd&&!e.request.aborted&&!e.request.completed?e.request.onResponseEnd(e.trailers||{}):!e.request.aborted&&!e.request.completed&&i.errorRequest(e.client,e.request,new l(`HTTP/2: stream closed before the response was complete`)),ut(e),Ze(this),this[B]=null)}function et(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function tt(e){let t={};for(let n=0;n<e.length;n+=2){let r=e[n+0],i=e[n+1],a=t[r];if(r===`cookie`){t[r]=a==null?i:Array.isArray(a)?(a.push(i),a):[a,i];continue}if(typeof i==`string`){t[r]=a?`${a}, ${i}`:i;continue}for(let e=0;e<i.length;e++)t[r]=t[r]?`${t[r]}, ${i[e]}`:i[e]}return t}function nt(e){e.off(`response`,ct),e.off(`error`,at),e.off(`end`,ot),e.off(`timeout`,st),e.off(`error`,Xe)}function rt(e){if(e==null)return;let t=e[B];if(t==null)return;let{request:n}=t;n[ae]===e&&be(n),nt(e),!e.destroyed&&!e.closed&&e.once(`error`,Xe)}function it(e,t){if(e==null)return;let{request:n}=e;e.responseReceived||n.aborted||n.completed||(rt(e.stream),e.abort(t,!0))}function at(){let e=this[B];typeof this.rstCode==`number`&&this.rstCode!==0?it(e,new l(`HTTP/2: "stream error" received - code ${this.rstCode}`)):it(e,new l(`HTTP/2: stream errored before response headers`))}function ot(){it(this[B],new l(`HTTP/2: stream half-closed (remote)`))}function st(){let e=this[B];it(e,new l(`HTTP/2: "stream timeout after ${e.headersTimeout}"`))}function ct(e,t){let n=this,r=n[B],{request:i}=r;r.responseReceived=!0;let a=e[G];delete e[G];try{i.onRequestUpgrade(a,e,n)}catch(e){r.abort(e);return}i.aborted||(nt(n),be(i),ut(r))}function lt(e,t){let{request:n,headersTimeout:r,session:i}=t;e[R]=!0,e[D]=i,e[B]=t,t.stream=e,xe(n,e,rt),e.once(`response`,ct),e.on(`error`,at),e.once(`end`,ot),e.on(`timeout`,st),e.once(`close`,Qe),Le(i),++i[z],e.setTimeout(r)}function ut(e,t=!1){e.requestFinalized||(e.requestFinalized=!0,we(e.client,e.request,t),e.client[k]())}function dt(e,t,n,r,a,o){try{return n.request(a,o)}catch(a){if(a?.code===`ERR_HTTP2_INVALID_SESSION`||a?.code===`ERR_HTTP2_GOAWAY_SESSION`){let r=new c(a.message,i.getSocketInfo(n[C]));return r.cause=a,n[S]=r,K(n,r),Ce(e,t),null}let o=new l(a.message,{cause:a});return n[S]=o,n[C][S]=o,n.destroy(o),i.destroy(n[C],o),r(o),null}}function ft(e,t){let r=t.headersTimeout??e[P],o=t.bodyTimeout??e[F],c=e[D],{method:d,path:f,host:p,upgrade:m,expectContinue:h,signal:g,protocol:_,headers:v}=t;if(m!=null&&m!==`websocket`)return i.errorRequest(e,t,new u(`Custom upgrade "${m}" not supported over HTTP/2`)),!1;let y=tt(v);y[W]=p||e[O],y[ue]=d;let b={abort:null,body:t.body,bytesRead:0,client:e,contentLength:null,expectsPayload:!1,maxResponseSize:e[ne],request:t,headersTimeout:r,bodyTimeout:o,requestFinalized:!1,responseContentLength:null,responseReceived:!1,bodySent:!1,pendingEnd:!1,trailers:null,session:c,stream:null},x=(n,r=!1)=>{if(!(t.aborted||t.completed)){if(n||=new s,i.errorRequest(e,t,n),b.stream!=null){Se(t);let a=b.stream;a.close(),a.destroyed||i.destroy(a),e[T](n),ut(b,r)}i.destroy(b.body,n)}};b.abort=x;let S=null;try{t.onRequestStart(x,null)}catch(n){i.errorRequest(e,t,n)}if(t.aborted)return!1;if(m||d===`CONNECT`)return je(c),m===`websocket`?c[I]===!1?(i.errorRequest(e,t,new l(`HTTP/2: Extended CONNECT protocol not supported by server`)),Me(c),!1):(y[ue]=`CONNECT`,y[he]=`websocket`,y[de]=f,y[fe]=_===`ws:`||_===`wss:`?_===`ws:`?`http`:`https`:_===`http:`?`http`:`https`,S=dt(e,t,c,x,y,{endStream:!1,signal:g}),S==null?(Me(c),!1):(lt(S,b),!0)):(S=dt(e,t,c,x,y,{endStream:!1,signal:g}),S==null?(Me(c),!1):(lt(S,b),!0));y[de]=f,y[fe]=_===`http:`?`http`:`https`;let E=d===`PUT`||d===`POST`||d===`PATCH`||d===`QUERY`||d===`PROPFIND`||d===`PROPPATCH`,k=b.body;k&&typeof k.read==`function`&&k.read(0);let A=i.bodyLength(k);if(i.isFormDataLike(k)){le??=QC().extractBody;let[e,t]=le(k);y[`content-type`]=t,k=e.stream,A=e.length}if(A??=t.contentLength,A===0&&!E&&(A=null),et(d)&&A>0&&t.contentLength!=null&&t.contentLength!==A){if(e[w])return i.errorRequest(e,t,new a),!1;process.emitWarning(new a)}if(A!=null&&(n(k||A===0,`no body must not have content length`),y[pe]=`${A}`),je(c),re.sendHeaders.hasSubscribers){let e=``;for(let t in y)e+=`${t}: ${y[t]}\r\n`;re.sendHeaders.publish({request:t,headers:e,socket:c[C]})}let j=k===null||A===0;return b.body=k,b.contentLength=A,b.expectsPayload=E,h&&(y[me]=`100-continue`),S=dt(e,t,c,x,y,{endStream:j,signal:g}),S!=null&&(S[R]=!0,S[B]=b,b.stream=S,Le(c),++c[z],r&&S.setTimeout(r),S[D]=c,S.on(`close`,$e),xe(t,S,mt),h&&S.once(`continue`,Tt),S.on(`response`,_t),S.on(`headers`,gt),S.on(`end`,vt),S.on(`error`,bt),S.on(`frameError`,xt),S.on(`aborted`,St),(r||o)&&S.on(`timeout`,Ct),S.on(`trailers`,wt),h||Tt.call(S),!0)}function pt(e){e.off(`error`,Xe),e.off(`continue`,Tt),e.off(`response`,_t),e.off(`headers`,gt),e.off(`end`,vt),e.off(`error`,bt),e.off(`frameError`,xt),e.off(`aborted`,St),e.off(`timeout`,Ct),e.off(`trailers`,wt),e.off(`data`,ht)}function mt(e){if(e==null)return;let t=e[B];if(t==null)return;let{request:n}=t;n[ae]===e&&be(n),!e.destroyed&&!e.closed&&(pt(e),e.once(`error`,Xe))}function ht(e){let t=this,n=t[B];if(n==null)return;let{request:r,maxResponseSize:i,responseContentLength:a}=n;if(!(r.aborted||r.completed)){if(a!=null&&n.bytesRead+e.length>a){n.abort(new o);return}if(i>-1&&n.bytesRead+e.length>i){n.abort(new p);return}n.bytesRead+=e.length,r.onResponseData(e)===!1&&t.pause()}}function gt(e){let t=this[B];if(t==null)return;let{request:n}=t;if(n.aborted||n.completed)return;let r=e[G];delete e[G],n.onResponseStart(Number(r),e,Xe,``)}function _t(e){let t=this,n=t[B];if(n==null)return;let{request:r}=n;t.off(`response`,_t),n.body!=null&&!n.bodySent&&!t.writableEnded&&(t.removeListener(`continue`,Tt),t.end());let i=Number(e[G]);if(delete e[G],r.onResponseStarted(),n.responseReceived=!0,r.method!==`HEAD`&&i!==304){let t=e[pe];n.responseContentLength=t==null?null:Number(t)}if((n.headersTimeout||n.bodyTimeout)&&t.setTimeout(n.bodyTimeout),r.aborted||r.completed){mt(t);return}r.onResponseStart(i,e,t.resume.bind(t),``)===!1&&t.pause(),t.on(`data`,ht)}function vt(){let e=this,t=e[B];if(t==null)return;let{request:n}=t;if(e.off(`end`,vt),t.responseReceived){if(!n.aborted&&!n.completed){if(t.responseContentLength!=null&&t.bytesRead!==t.responseContentLength){t.abort(new o);return}t.pendingEnd=!0,$e.call(e)}}else t.abort(new l(`HTTP/2: stream half-closed (remote)`),!0)}function yt(e,t){let{client:n,request:r}=t;return t.responseReceived||r.aborted||r.completed||r[se]||!Te(r)?!1:(r[se]=!0,ke(r),t.stream=null,t.requestFinalized=!0,we(n,r),n[y].splice(n[b],0,r),n[k](),!0)}function bt(e){let t=this,n=t[B];n!=null&&(t.off(`error`,bt),n.responseContentLength!=null&&n.bytesRead!==n.responseContentLength&&(e=new o),typeof t.rstCode==`number`&&t.rstCode!==ge&&(e.http2ErrorCode=t.rstCode),!(t.rstCode===_e&&yt(t,n))&&n.abort(e))}function xt(e,t){let n=this,r=n[B];r!=null&&(n.off(`frameError`,xt),r.abort(new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`)))}function St(){this.off(`data`,ht)}function Ct(){let e=this,t=e[B];if(t==null)return;e.off(`timeout`,Ct);let n=t.responseReceived?new f(`HTTP/2: "stream timeout after ${t.bodyTimeout}"`):new d(`HTTP/2: "headers timeout after ${t.headersTimeout}"`);t.abort(n)}function wt(e){let t=this,n=t[B];if(n==null)return;let{request:r}=n;t.off(`trailers`,wt),t.off(`data`,ht),!(r.aborted||r.completed)&&(n.trailers=e)}function Tt(){let e=this,t=e[B];t.bodySent=!0;let{abort:r,body:a,client:o,contentLength:s,expectsPayload:c,request:l}=t;!a||s===0?Et(r,e,null,o,l,o[C],s,c):i.isBuffer(a)?Et(r,e,a,o,l,o[C],s,c):i.isBlobLike(a)?typeof a.stream==`function`?kt(r,e,a.stream(),o,l,o[C],s,c):Ot(r,e,a,o,l,o[C],s,c):i.isStream(a)?Dt(r,o[C],c,e,a,o,l,s):i.isIterable(a)?kt(r,e,a,o,l,o[C],s,c):n(!1)}function Et(e,t,r,a,o,s,c,l){try{r!=null&&i.isBuffer(r)&&(n(c===r.byteLength,`buffer body must have content length`),t.cork(),t.write(r),t.uncork(),t.end(),o.onBodySent(r)),l||(s[h]=!0),o.onRequestSent(),a[k]()}catch(t){e(t)}}function Dt(e,t,a,o,s,c,l,u){n(u!==0||c[_]===0,`stream body cannot be pipelined`);let d=r(s,o,n=>{n?(i.destroy(d,n),e(n)):(i.removeAllListeners(d),l.onRequestSent(),a||(t[h]=!0),c[k]())});i.addListener(d,`data`,f);function f(e){l.onBodySent(e)}}async function Ot(e,t,n,r,i,o,s,c){try{if(s!=null&&s!==n.size)throw new a;let e=Buffer.from(await n.arrayBuffer());t.cork(),t.write(e),t.uncork(),t.end(),i.onBodySent(e),i.onRequestSent(),c||(o[h]=!0),r[k]()}catch(t){e(t)}}async function kt(e,t,r,i,a,o,s,c){n(s!==0||i[_]===0,`iterator body cannot be pipelined`);let l=null;function u(){if(l){let e=l;l=null,e()}}let d=()=>new Promise((e,t)=>{n(l===null),o[S]?t(o[S]):l=e});t.on(`close`,u).on(`drain`,u);try{for await(let e of r){if(o[S])throw o[S];let n=t.write(e);a.onBodySent(e),n||await d()}t.end(),a.onRequestSent(),c||(o[h]=!0),i[k]()}catch(t){e(t)}finally{t.off(`close`,u).off(`drain`,u)}}t.exports=q})),tw=q(((e,t)=>{var n=J(`node:assert`),r=J(`node:net`),i=J(`node:http`),a=$(),{ClientStats:o}=MC(),{channels:s}=NC(),c=PC(),l=IC(),{InvalidArgumentError:u,InformationalError:d,ClientDestroyedError:f}=Q(),p=LC(),{kUrl:m,kServerName:h,kClient:g,kBusy:_,kConnect:v,kResuming:y,kRunning:b,kPending:x,kSize:S,kQueue:C,kConnected:w,kConnecting:T,kNeedDrain:E,kKeepAliveDefaultTimeout:D,kHostHeader:O,kPendingIdx:k,kRunningIdx:A,kError:j,kPipelining:M,kKeepAliveTimeoutValue:N,kMaxHeadersSize:P,kKeepAliveMaxTimeout:F,kKeepAliveTimeoutThreshold:I,kHeadersTimeout:L,kBodyTimeout:R,kStrictContentLength:ee,kConnector:te,kMaxRequests:ne,kCounter:re,kClose:z,kDestroy:ie,kDispatch:ae,kLocalAddress:oe,kMaxResponseSize:B,kOnError:V,kHTTPContext:H,kMaxConcurrentStreams:se,kHostAuthority:ce,kResume:le,kHTTP2Options:U}=OC(),W=$C(),ue=ew(),de=Symbol(`kClosedResolve`),fe=i&&i.maxHeaderSize&&Number.isInteger(i.maxHeaderSize)&&i.maxHeaderSize>0?()=>i.maxHeaderSize:()=>{throw new u(`http module not available or http.maxHeaderSize invalid`)},pe=()=>{};function me(e){return e[M]??e[H]?.defaultPipelining??1}var G=!1;function he(e){G!==!0&&(process.emitWarning(`Use h2Options.${e} instead. ${e} for H2 will be deprecated in future major.`,{code:`UNDICI-H2-OPTIONS`}),G=!0)}function ge(e){return e[H]?.version===`h2`?e[se]:me(e)}var _e=class extends l{constructor(e,{maxHeaderSize:t,headersTimeout:n,socketTimeout:i,requestTimeout:o,connectTimeout:s,bodyTimeout:c,idleTimeout:l,keepAlive:d,keepAliveTimeout:f,maxKeepAliveTimeout:g,keepAliveMaxTimeout:_,keepAliveTimeoutThreshold:v,socketPath:b,pipelining:x,tls:S,strictContentLength:w,maxCachedSessions:T,connect:j,maxRequestsPerClient:re,localAddress:z,maxResponseSize:ie,autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:se,maxConcurrentStreams:W,allowH2:ue,useH2c:pe,initialWindowSize:me,connectionWindowSize:G,pingInterval:ge,webSocket:_e,h2Options:K,eventSource:ye}={}){if(d!==void 0)throw new u(`unsupported keepAlive, use pipelining=0 instead`);if(i!==void 0)throw new u(`unsupported socketTimeout, use headersTimeout & bodyTimeout instead`);if(o!==void 0)throw new u(`unsupported requestTimeout, use headersTimeout & bodyTimeout instead`);if(l!==void 0)throw new u(`unsupported idleTimeout, use keepAliveTimeout instead`);if(g!==void 0)throw new u(`unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead`);if(t!=null){if(!Number.isInteger(t)||t<1)throw new u(`invalid maxHeaderSize`)}else t=fe();if(b!=null&&typeof b!=`string`)throw new u(`invalid socketPath`);if(s!=null&&(!Number.isFinite(s)||s<0))throw new u(`invalid connectTimeout`);if(f!=null&&(!Number.isFinite(f)||f<=0))throw new u(`invalid keepAliveTimeout`);if(_!=null&&(!Number.isFinite(_)||_<=0))throw new u(`invalid keepAliveMaxTimeout`);if(v!=null&&!Number.isFinite(v))throw new u(`invalid keepAliveTimeoutThreshold`);if(n!=null&&(!Number.isInteger(n)||n<0))throw new u(`headersTimeout must be a positive integer or zero`);if(c!=null&&(!Number.isInteger(c)||c<0))throw new u(`bodyTimeout must be a positive integer or zero`);if(j!=null&&typeof j!=`function`&&typeof j!=`object`)throw new u(`connect must be a function or an object`);if(re!=null&&(!Number.isInteger(re)||re<0))throw new u(`maxRequestsPerClient must be a positive number`);if(z!=null&&(typeof z!=`string`||r.isIP(z)===0))throw new u(`localAddress must be valid string IP address`);if(ie!=null&&(!Number.isInteger(ie)||ie<-1))throw new u(`maxResponseSize must be a positive number`);if(se!=null&&(!Number.isInteger(se)||se<-1))throw new u(`autoSelectFamilyAttemptTimeout must be a positive number`);if(ue!=null&&typeof ue!=`boolean`)throw new u(`allowH2 must be a valid boolean value`);if(ue!==!1){if(K!=null){if(K.useH2c!=null&&typeof K.useH2c!=`boolean`)throw new u(`h2Options.useH2c must be a valid boolean value`);if(K.settings?.initialWindowSize!=null&&(!Number.isInteger(K.settings.initialWindowSize)||K.settings.initialWindowSize<1))throw new u(`h2Options.settings.initialWindowSize must be a positive integer, greater than 0`);if(K.maxConcurrentStreams!=null&&(!Number.isInteger(K.maxConcurrentStreams)||K.maxConcurrentStreams<1))throw new u(`h2Options.maxConcurrentStreams must be a positive integer, greater than 0`);if(K.connectionWindowSize!=null&&(!Number.isInteger(K.connectionWindowSize)||K.connectionWindowSize<1))throw new u(`h2Options.connectionWindowSize must be a positive integer, greater than 0`);if(K.pingInterval!=null&&(typeof K.pingInterval!=`number`||!Number.isInteger(K.pingInterval)||K.pingInterval<0))throw new u(`h2Options.pingInterval must be a positive integer, greater or equal to 0`)}else{if(pe!=null&&typeof pe!=`boolean`)throw he(`useH2c`),new u(`useH2c must be a valid boolean value`);if(W!=null&&(typeof W!=`number`||W<1))throw he(`maxConcurrentStreams`),new u(`maxConcurrentStreams must be a positive integer, greater than 0`);if(me!=null&&(!Number.isInteger(me)||me<1))throw he(`initialWindowSize`),new u(`initialWindowSize must be a positive integer, greater than 0`);if(G!=null&&(!Number.isInteger(G)||G<1))throw he(`connectionWindowSize`),new u(`connectionWindowSize must be a positive integer, greater than 0`);if(ge!=null&&(typeof ge!=`number`||!Number.isInteger(ge)||ge<0))throw he(`pingInterval`),new u(`pingInterval must be a positive integer, greater or equal to 0`)}}if(super({webSocket:_e,eventSource:ye}),typeof j!=`function`)j=p({...S,maxCachedSessions:T,allowH2:ue,socketPath:b,useH2c:K?.useH2c??pe,timeout:s,...typeof ae==`boolean`?{autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:se}:void 0,...j});else{let e=j;j=(t,n)=>e({...t,...b==null?null:{socketPath:b},...ue==null?null:{allowH2:ue}},n)}this[m]=a.parseOrigin(e),this[ce]=`${this[m].hostname}${this[m].port?`:${this[m].port}`:``}`,this[te]=j,this[M]=x??1,this[P]=t,this[D]=f??4e3,this[F]=_??6e5,this[I]=v??2e3,this[N]=this[D],this[h]=null,this[oe]=z??null,this[y]=0,this[E]=0,this[O]=`host: ${this[ce]}\r\n`,this[R]=c??3e5,this[L]=n??3e5,this[ee]=w??!0,this[ne]=re,this[de]=null,this[B]=ie>-1?ie:-1,this[H]=null,this[U]={pingInterval:K?.pingInterval??ge??6e4,connectionWindowSize:K?.connectionWindowSize??G??524288,maxConcurrentStreams:K?.maxConcurrentStreams??W??100,sessionOptions:{initialWindowSize:K?.initialWindowSize??me??262144}},this[C]=[],this[A]=0,this[k]=0,this[le]=e=>xe(this,e),this[V]=e=>ve(this,e)}get pipelining(){return this[M]}set pipelining(e){this[M]=e,this[le](!0)}get stats(){return new o(this)}get[x](){return this[C].length-this[k]}get[b](){return this[k]-this[A]}get[S](){return this[C].length-this[A]}get[w](){return!!this[H]&&!this[T]&&!this[H].destroyed}get[_](){let e=this[H]?.version===`h2`;return!!(this[H]?.busy(null)||this[S]>=(ge(this)||1)||this[x]>0&&!e)}[v](e){K(this),this.once(`connect`,e)}[ae](e,t){let n=new c(this[m].origin,e,t);return this[C].push(n),this[y]||(a.bodyLength(n.body)==null&&a.isIterable(n.body)?(this[y]=1,queueMicrotask(()=>xe(this))):this[le](!0)),this[y]&&this[E]!==2&&this[_]&&(this[E]=2),this[E]<2}[z](){return new Promise(e=>{this[S]?this[de]=e:e(null)})}[ie](e){return new Promise(t=>{let n=this[C].splice(this[k]);for(let t=0;t<n.length;t++){let r=n[t];r!=null&&a.errorRequest(this,r,e)}let r=()=>{this[de]&&(this[de](),this[de]=null),t(null)};this[H]?(this[H].destroy(e,r),this[H]=null):queueMicrotask(r),this[le]()})}};function ve(e,t){if(e[b]===0&&t.code!==`UND_ERR_INFO`&&t.code!==`UND_ERR_SOCKET`){n(e[k]===e[A]);let r=e[C].splice(e[A]);for(let n=0;n<r.length;n++){let i=r[n];i!=null&&a.errorRequest(e,i,t)}n(e[S]===0)}}function K(e){n(!e[T]),n(!e[H]);let{host:t,hostname:i,protocol:o,port:c}=e[m];if(i[0]===`[`){let e=i.indexOf(`]`);n(e!==-1);let t=i.substring(1,e);n(r.isIPv6(t)),i=t}e[T]=!0,s.beforeConnect.hasSubscribers&&s.beforeConnect.publish({connectParams:{host:t,hostname:i,protocol:o,port:c,version:e[H]?.version,servername:e[h],localAddress:e[oe]},connector:e[te]});try{e[te]({host:t,hostname:i,protocol:o,port:c,servername:e[h],localAddress:e[oe]},(r,l)=>{if(r){ye(e,r,{host:t,hostname:i,protocol:o,port:c}),e[le]();return}if(e.destroyed){a.destroy(l.on(`error`,pe),new f),e[le]();return}n(l);try{e[H]=l.alpnProtocol===`h2`?ue(e,l):W(e,l)}catch(n){l.destroy().on(`error`,pe),ye(e,n,{host:t,hostname:i,protocol:o,port:c}),e[le]();return}e[T]=!1,l[re]=0,l[ne]=e[ne],l[g]=e,l[j]=null,s.connected.hasSubscribers&&s.connected.publish({connectParams:{host:t,hostname:i,protocol:o,port:c,version:e[H]?.version,servername:e[h],localAddress:e[oe]},connector:e[te],socket:l}),e.emit(`connect`,e[m],[e]),e[le]()})}catch(n){ye(e,n,{host:t,hostname:i,protocol:o,port:c}),e[le]()}}function ye(e,t,{host:n,hostname:r,protocol:i,port:o}){if(!e.destroyed){if(e[T]=!1,s.connectError.hasSubscribers&&s.connectError.publish({connectParams:{host:n,hostname:r,protocol:i,port:o,version:e[H]?.version,servername:e[h],localAddress:e[oe]},connector:e[te],error:t}),t.code===`ERR_TLS_CERT_ALTNAME_INVALID`){let n=e[C].splice(e[A],e[b]);e[k]=e[A];for(let r=0;r<n.length;r++)a.errorRequest(e,n[r],t);for(;e[x]>0&&e[C][e[k]].servername===e[h];){let n=e[C].splice(e[k],1)[0];a.errorRequest(e,n,t)}}else ve(e,t);e.emit(`connectionError`,e[m],[e],t)}}function be(e){e[E]=0,e.emit(`drain`,e[m],[e])}function xe(e,t){e[y]!==2&&(e[y]=2,Se(e,t),e[y]=0,e[A]>256&&(e[C].splice(0,e[A]),e[k]-=e[A],e[A]=0))}function Se(e,t){for(;;){if(e.destroyed){n(e[x]===0);return}if(e[de]&&!e[S]){e[de](),e[de]=null;return}if(e[H]&&e[H].resume(),e[_])e[E]=2;else if(e[E]===2){t?(e[E]=1,queueMicrotask(()=>be(e))):be(e);continue}if(e[x]===0||e[b]>=(ge(e)||1))return;let r=e[C][e[k]];if(r===null)return;if(r.aborted){e[C].splice(e[k],1);continue}if(e[m].protocol===`https:`&&e[h]!==r.servername){if(e[b]>0)return;e[h]=r.servername,e[H]?.destroy(new d(`servername changed`),()=>{e[H]=null,xe(e)})}if(e[T])return;if(!e[H]){e[h]=r.servername,K(e);return}if(e[H].destroyed||e[H].busy(r))return;!r.aborted&&e[H].write(r)?e[k]++:e[C].splice(e[k],1)}}t.exports=_e})),nw=q(((e,t)=>{var n=2048,r=2047,i=class{bottom=0;top=0;list=Array(n).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&r)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&r}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&r,e)}};t.exports=class{constructor(){this.head=this.tail=new i}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new i),this.head.push(e)}shift(){let e=this.tail,t=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next,e.next=null),t}}})),rw=q(((e,t)=>{var{PoolStats:n}=MC(),r=IC(),i=nw(),{kConnected:a,kSize:o,kRunning:s,kPending:c,kQueued:l,kBusy:u,kFree:d,kUrl:f,kClose:p,kDestroy:m,kDispatch:h}=OC(),g=Symbol(`clients`),_=Symbol(`needDrain`),v=Symbol(`queue`),y=Symbol(`closed resolve`),b=Symbol(`onDrain`),x=Symbol(`onConnect`),S=Symbol(`onDisconnect`),C=Symbol(`onConnectionError`),w=Symbol(`on client busy`),T=Symbol(`on client drain`),E=Symbol(`drain queue`),D=Symbol(`get dispatcher`),O=Symbol(`has dispatcher`),k=Symbol(`add client`),A=Symbol(`remove client`);t.exports={PoolBase:class extends r{[v]=new i;[l]=0;[g]=[];[_]=!1;[b](e,t,n){if(e.closed||e.destroyed)return;let r=this[v],i=!1;for(this[T](e);!i;){let t=r.shift();if(!t)break;this[l]--,i=!e.dispatch(t.opts,t.handler)}if(e[_]=i,i&&this[w](e),!i&&this[_]&&(this[_]=!1,this.emit(`drain`,t,[this,...n])),this[y]&&r.isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e).then(this[y])}}[w](){}[T](){}[E](e,t){let n=this[v],r=!0;for(;!n.isEmpty();){let e=this[D]();if(!e){r=!1;break}let t=n.shift();if(this[l]--,!e.dispatch(t.opts,t.handler)&&(e[_]=!0,this[w](e),r=this[O](),!r))break}if(r&&this[_]&&(this[_]=!1,this.emit(`drain`,e,[this,...t])),this[y]&&n.isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e).then(this[y])}}[x]=(e,t)=>{this.emit(`connect`,e,[this,...t])};[S]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)};[C]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)};get[u](){return this[_]}get[a](){let e=0;for(let{[a]:t}of this[g])e+=t;return e}get[d](){let e=0;for(let{[a]:t,[_]:n}of this[g])e+=t&&!n;return e}get[c](){let e=this[l];for(let{[c]:t}of this[g])e+=t;return e}get[s](){let e=0;for(let{[s]:t}of this[g])e+=t;return e}get[o](){let e=this[l];for(let{[o]:t}of this[g])e+=t;return e}get stats(){return new n(this)}[p](){if(this[v].isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e)}return new Promise(e=>{this[y]=e})}[m](e){for(;;){let t=this[v].shift();if(!t)break;t.handler.onResponseError(null,e)}let t=Array(this[g].length);for(let n=0;n<this[g].length;n++)t[n]=this[g][n].destroy(e);return Promise.all(t)}[h](e,t){let n=this[D]();return n?n.dispatch(e,t)||(n[_]=!0,this[w](n),this[_]=!this[O]()):(this[_]=!0,this[v].push({opts:e,handler:t}),this[l]++),!this[_]}[O](){for(let e=0;e<this[g].length;e++){let t=this[g][e];if(!t[_]&&t.closed!==!0&&t.destroyed!==!0)return!0}return!1}[k](e){return e.on(`drain`,this[b].bind(this,e)).on(`connect`,this[x]).on(`disconnect`,this[S]).on(`connectionError`,this[C]),this[g].push(e),this[_]&&queueMicrotask(()=>{this[_]&&!e[_]&&this[b](e,e[f],[e,this])}),this}[A](e){let t=this[g].indexOf(e);t!==-1&&this[g].splice(t,1),e.close(()=>{}),this[_]=!this[g].some(e=>!e[_]&&e.closed!==!0&&e.destroyed!==!0)}},kClients:g,kNeedDrain:_,kAddClient:k,kRemoveClient:A,kDrainQueue:E,kOnClientBusy:w,kOnClientDrain:T,kGetDispatcher:D,kHasDispatcher:O}})),iw=q(((e,t)=>{var{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kDrainQueue:o,kOnClientBusy:s,kOnClientDrain:c,kGetDispatcher:l,kHasDispatcher:u,kRemoveClient:d}=rw(),f=tw(),{InvalidArgumentError:p}=Q(),m=$(),{kConnecting:h,kHTTPContext:g,kUrl:_}=OC(),v=LC(),y=Symbol(`options`),b=Symbol(`connections`),x=Symbol(`factory`),S=Symbol(`protocol`),C=Symbol(`protocol probe`);function w(e,t){return new f(e,t)}function T(e,t){return t instanceof f&&e[S]!==`h1`&&(e[y].useH2c===!0||e[_].protocol===`https:`&&e[y].allowH2!==!1)}function E(e){let t=e[x](e[_],e[y]);return T(e,t)&&(e[C]=t),e[a](t),t}t.exports=class extends n{constructor(e,{connections:t,factory:n=w,connect:i,connectTimeout:a,tls:s,maxCachedSessions:c,socketPath:l,autoSelectFamily:u,autoSelectFamilyAttemptTimeout:d,allowH2:h,useH2c:T,clientTtl:E,...D}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new p(`invalid connections`);if(typeof n!=`function`)throw new p(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new p(`connect must be a function or an object`);typeof i!=`function`&&(i=v({...s,maxCachedSessions:c,allowH2:h,useH2c:T,socketPath:l,timeout:a,...typeof u==`boolean`?{autoSelectFamily:u,autoSelectFamilyAttemptTimeout:d}:void 0,...i})),super(D),this[b]=t||null,this[_]=m.parseOrigin(e),this[y]={...m.deepClone(D),connect:i,allowH2:h,useH2c:T,clientTtl:E,socketPath:l},this[x]=n,this[S]=null,this[C]=null,this.on(`connect`,(e,t)=>{if(E!=null&&E>0)for(let e of t)Object.assign(e,{ttl:Date.now()});let n=t[t.length-1];n instanceof f&&(this[S]=n[g]?.version),n===this[C]&&this[S]!==`h2`&&(this[C]=null,this[o](e,t.slice(1)))}),this.on(`disconnect`,(e,t)=>{t.includes(this[C])&&(this[C]=null,this[o](e,t.slice(1)))}),this.on(`connectionError`,(e,t)=>{let n=!1;for(let e of t){e===this[C]&&(this[C]=null,n=!0);let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}n&&this[o](e,t.slice(1))})}[s](e){this[C]===null&&e[h]&&T(this,e)&&(this[C]=e)}[c](e){e===this[C]&&(this[C]=null)}[l](){let e=this[y].clientTtl;for(let t=0;t<this[r].length;t++){let n=this[r][t];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e)this[d](n),t--;else if(!n[i])return n}if(this[C]===null&&(!this[b]||this[r].length<this[b]))return E(this)}[u](){let e=this[y].clientTtl;for(let t=0;t<this[r].length;t++){let n=this[r][t];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e)this[d](n),t--;else if(!n[i])return!0}return this[C]===null&&(!this[b]||this[r].length<this[b])&&(E(this),!0)}}})),aw=q(((e,t)=>{var{BalancedPoolMissingUpstreamError:n,InvalidArgumentError:r}=Q(),{PoolBase:i,kClients:a,kNeedDrain:o,kAddClient:s,kRemoveClient:c,kGetDispatcher:l}=rw(),u=iw(),{kOriginless:d,kUrl:f}=OC(),p=$(),m=Symbol(`factory`),h=Symbol(`options`),g=Symbol(`kGreatestCommonDivisor`),_=Symbol(`kCurrentWeight`),v=Symbol(`kIndex`),y=Symbol(`kWeight`),b=Symbol(`kMaxWeightPerServer`),x=Symbol(`kErrorPenalty`);function S(e,t){if(e===0)return t;for(;t!==0;){let n=t;t=e%t,e=n}return e}function C(e,t){return new u(e,t)}t.exports=class extends i{constructor(e=[],{factory:t=C,connect:n,tls:i,...a}={}){if(typeof t!=`function`)throw new r(`factory must be a function.`);super(a),this[d]=!0,n&&typeof n!=`function`&&(n={...n}),i&&typeof i!=`function`&&(i={...i}),this[h]={...p.deepClone(a),connect:n,tls:i},this[v]=-1,this[_]=0,this[b]=this[h].maxWeightPerServer||100,this[x]=this[h].errorPenalty||15,Array.isArray(e)||(e=[e]),this[m]=t;for(let t of e)this.addUpstream(t);this._updateBalancedPoolStats()}addUpstream(e){let t=p.parseOrigin(e).origin;if(this[a].find(e=>e[f].origin===t&&e.closed!==!0&&e.destroyed!==!0))return this;let n=this[m](t,this[h]);this[s](n),n.on(`connect`,()=>{n[y]=Math.min(this[b],n[y]+this[x])}),n.on(`connectionError`,()=>{n[y]=Math.max(1,n[y]-this[x]),this._updateBalancedPoolStats()}),n.on(`disconnect`,(...e)=>{let t=e[2];t&&t.code===`UND_ERR_SOCKET`&&(n[y]=Math.max(1,n[y]-this[x]),this._updateBalancedPoolStats())});for(let e of this[a])e[y]=this[b];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let t=0;t<this[a].length;t++)e=S(this[a][t][y],e);this[g]=e}removeUpstream(e){let t=p.parseOrigin(e).origin,n=this[a].find(e=>e[f].origin===t&&e.closed!==!0&&e.destroyed!==!0);return n&&this[c](n),this}getUpstream(e){let t=p.parseOrigin(e).origin;return this[a].find(e=>e[f].origin===t&&e.closed!==!0&&e.destroyed!==!0)}get upstreams(){return this[a].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[f].origin)}[l](){if(this[a].length===0)throw new n;let e=0,t=-1;for(;e++<this[a].length;){this[v]=(this[v]+1)%this[a].length;let e=this[a][this[v]];if(this[v]===0&&(this[_]=this[_]-this[g],this[_]<=0&&(this[_]=this[b])),!(e[o]||e.closed===!0||e.destroyed===!0)&&((t===-1||e[y]>this[a][t][y])&&(t=this[v]),e[y]>=this[_]))return e}if(t!==-1)return this[_]=this[a][t][y],this[v]=t,this[a][t]}}})),ow=q(((e,t)=>{var{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kGetDispatcher:o,kHasDispatcher:s,kRemoveClient:c}=rw(),l=tw(),{InvalidArgumentError:u}=Q(),d=$(),{kUrl:f}=OC(),p=LC(),m=Symbol(`options`),h=Symbol(`connections`),g=Symbol(`factory`),_=Symbol(`index`);function v(e,t){return new l(e,t)}t.exports=class extends n{constructor(e,{connections:t,factory:n=v,connect:i,connectTimeout:a,tls:o,maxCachedSessions:s,socketPath:c,autoSelectFamily:l,autoSelectFamilyAttemptTimeout:y,allowH2:b,clientTtl:x,...S}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new u(`invalid connections`);if(typeof n!=`function`)throw new u(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new u(`connect must be a function or an object`);typeof i!=`function`&&(i=p({...o,maxCachedSessions:s,allowH2:b,socketPath:c,timeout:a,...typeof l==`boolean`?{autoSelectFamily:l,autoSelectFamilyAttemptTimeout:y}:void 0,...i})),super(S),this[h]=t||null,this[f]=d.parseOrigin(e),this[m]={...d.deepClone(S),connect:i,allowH2:b,clientTtl:x,socketPath:c},this[g]=n,this[_]=-1,this.on(`connect`,(e,t)=>{if(x!=null&&x>0)for(let e of t)Object.assign(e,{ttl:Date.now()})}),this.on(`connectionError`,(e,t,n)=>{for(let e of t){let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}})}[o](){let e=this[m].clientTtl;if(this[r].length===0){let e=this[g](this[f],this[m]);return this[a](e),e}let t=0;for(;t<this[r].length;){this[_]=(this[_]+1)%this[r].length;let n=this[r][this[_]];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e){this[c](n),this[_]--;continue}if(!n[i])return n;t++}if(!this[h]||this[r].length<this[h]){let e=this[g](this[f],this[m]);return this[a](e),e}}[s](){let e=this[m].clientTtl;for(let t=0;t<this[r].length;t++){let n=this[r][t];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e)this[c](n),t<=this[_]&&this[_]--,t--;else if(!n[i])return!0}if(!this[h]||this[r].length<this[h]){let e=this[g](this[f],this[m]);return this[a](e),!0}return!1}}})),sw=q(((e,t)=>{var{InvalidArgumentError:n,MaxOriginsReachedError:r}=Q(),{kBusy:i,kClients:a,kConnected:o,kRunning:s,kPending:c,kClose:l,kDestroy:u,kDispatch:d,kUrl:f}=OC(),p=IC(),m=iw(),h=tw(),g=$(),_=Symbol(`onConnect`),v=Symbol(`onDisconnect`),y=Symbol(`onConnectionError`),b=Symbol(`onDrain`),x=Symbol(`factory`),S=Symbol(`options`),C=Symbol(`origins`);function w(e,t){return t&&t.connections===1?new h(e,t):new m(e,t)}t.exports=class extends p{constructor({factory:e=w,maxOrigins:t=1/0,connect:r,...i}={}){if(typeof e!=`function`)throw new n(`factory must be a function.`);if(r!=null&&typeof r!=`function`&&typeof r!=`object`)throw new n(`connect must be a function or an object`);if(typeof t!=`number`||Number.isNaN(t)||t<=0)throw new n(`maxOrigins must be a number greater than 0`);super(i),r&&typeof r!=`function`&&(r={...r}),this[S]={...g.deepClone(i),maxOrigins:t,connect:r},this[x]=e,this[a]=new Map,this[C]=new Set,this[b]=(e,t)=>{this.emit(`drain`,e,[this,...t])},this[_]=(e,t)=>{this.emit(`connect`,e,[this,...t])},this[v]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)},this[y]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)}}get[s](){let e=0;for(let t of this[a].values())e+=t[s];return e}[d](e,t){let s;if(e.origin&&(typeof e.origin==`string`||e.origin instanceof URL))s=String(e.origin);else throw new n(`opts.origin must be a non-empty string or URL.`);let l=e.allowH2??this[S].allowH2,u=l===!1?`${s}#http1-only`:s;if(this[C].size>=this[S].maxOrigins&&!this[C].has(s))throw new r;let d=this[a].get(u);if(!d){d=this[x](e.origin,l===!1?{...this[S],allowH2:!1}:this[S]);let t=()=>{if(this[a].get(u)!==d||d[o]>0||d[i]||d[c]>0)return;this[a].delete(u),d.destroyed||d.close();let e=!1;for(let t of this[a].keys())if(t===s||t===`${s}#http1-only`){e=!0;break}e||this[C].delete(s)};d.on(`drain`,this[b]).on(`connect`,this[_]).on(`disconnect`,(e,n,r)=>{t(),this[v](e,n,r)}).on(`connectionError`,(e,n,r)=>{t(),this[y](e,n,r)}),this[a].set(u,d),this[C].add(s)}return d.dispatch(e,t)}[l](){let e=[];for(let t of this[a].values())e.push(t.close());return this[a].clear(),Promise.all(e)}[u](e){let t=[];for(let n of this[a].values())t.push(n.destroy(e));return this[a].clear(),Promise.all(t)}get stats(){let e={};for(let t of this[a].values())t.stats&&(e[t[f].origin]=t.stats);return e}}})),cw=q(((e,t)=>{var n=FC(),{InvalidArgumentError:r}=Q(),{toRawHeaders:i}=$(),{kOriginless:a,kUrl:o}=OC(),s=class{#e;constructor(e){this.#e=e}onRequestStart(e,t){this.#e.onConnect?.(t=>e.abort(t),t)}onRequestUpgrade(e,t,n,r){let a=e?.rawHeaders??i(n??{});this.#e.onUpgrade?.(t,a,r)}onResponseStart(e,t,n,r){let a=e?.rawHeaders??i(n??{});this.#e.onHeaders?.(t,a,()=>e.resume(),r)===!1&&e.pause()}onResponseData(e,t){this.#e.onData?.(t)===!1&&e.pause()}onResponseEnd(e,t){let n=e?.rawTrailers??i(t??{});this.#e.onComplete?.(n)}onResponseError(e,t){if(!this.#e.onError)throw t;this.#e.onError(t)}onBodySent(e){this.#e.onBodySent?.(e)}onRequestSent(){this.#e.onRequestSent?.()}onResponseStarted(){this.#e.onResponseStarted?.()}};t.exports=class e extends n{#e;constructor(e){if(super(),!e||typeof e.dispatch!=`function`)throw new r(`Argument dispatcher must implement dispatch`);this.#e=e,this[o]=e[o],this[a]=e[a]}static wrapHandler(e){if(!e||typeof e!=`object`)throw new r(`handler must be an object`);return typeof e.onRequestStart==`function`?e:new s(e)}dispatch(t,n){return t.allowH2!==!1&&(t={...t,allowH2:!1}),this.#e.dispatch(t,e.wrapHandler(n))}close(...e){return this.#e.close(...e)}destroy(...e){return this.#e.destroy(...e)}}})),lw=q(((e,t)=>{var{Buffer:n}=J(`node:buffer`),r=J(`node:net`),{InvalidArgumentError:i}=Q();function a(e){if(r.isIPv4(e)){let t=e.split(`.`).map(Number);return{type:1,buffer:n.from(t)}}if(r.isIPv6(e))return{type:4,buffer:o(e)};let t=n.from(e,`utf8`);if(t.length>255)throw new i(`Domain name too long (max 255 bytes)`);return{type:3,buffer:n.concat([n.from([t.length]),t])}}function o(e){let t=n.alloc(16),i=e;if(e.includes(`.`)){let t=e.lastIndexOf(`:`),n=e.slice(t+1);if(r.isIPv4(n)){let r=n.split(`.`).map(Number),a=(r[0]<<8|r[1]).toString(16),o=(r[2]<<8|r[3]).toString(16);i=`${e.slice(0,t)}:${a}:${o}`}}let a=i.indexOf(`::`);if(a!==-1){let e=i.slice(0,a),n=i.slice(a+2),r=e===``?[]:e.split(`:`),o=n===``?[]:n.split(`:`),s=0;for(let e of r)t.writeUInt16BE(parseInt(e,16),s),s+=2;s=16-o.length*2;for(let e of o)t.writeUInt16BE(parseInt(e,16),s),s+=2}else{let e=i.split(`:`);for(let n=0;n<e.length;n++)t.writeUInt16BE(parseInt(e[n],16),n*2)}return t}function s(e,t,r){let i=n.allocUnsafe(2);return i.writeUInt16BE(r,0),n.concat([n.from([e]),t,i])}function c(e,t=0){if(e.length<t+1)throw new i(`Buffer too small to contain address type`);let n=e[t],r,a=t+1;switch(n){case 1:if(e.length<a+6)throw new i(`Buffer too small for IPv4 address`);r=Array.from(e.subarray(a,a+4)).join(`.`),a+=4;break;case 3:{if(e.length<a+1)throw new i(`Buffer too small for domain length`);let t=e[a];if(a+=1,e.length<a+t+2)throw new i(`Buffer too small for domain address`);r=e.subarray(a,a+t).toString(`utf8`),a+=t;break}case 4:{if(e.length<a+18)throw new i(`Buffer too small for IPv6 address`);let t=[];for(let n=0;n<8;n++){let r=e.readUInt16BE(a+n*2);t.push(r.toString(16))}r=t.join(`:`),a+=16;break}default:throw new i(`Invalid address type: ${n}`)}if(e.length<a+2)throw new i(`Buffer too small for port`);let o=e.readUInt16BE(a);return a+=2,{address:r,port:o,bytesRead:a-t}}function l(e){let t={1:`General SOCKS server failure`,2:`Connection not allowed by ruleset`,3:`Network unreachable`,4:`Host unreachable`,5:`Connection refused`,6:`TTL expired`,7:`Command not supported`,8:`Address type not supported`}[e]||`Unknown SOCKS5 error code: ${e}`,n=Error(t);return n.code=`SOCKS5_${e}`,n}t.exports={parseAddress:a,parseIPv6:o,buildAddressBuffer:s,parseResponseAddress:c,createReplyError:l}})),uw=q(((e,t)=>{var{EventEmitter:n}=J(`node:events`),{Buffer:r}=J(`node:buffer`),{InvalidArgumentError:i,Socks5ProxyError:a}=Q(),{debuglog:o}=J(`node:util`),{parseAddress:s}=lw(),c=o(`undici:socks5`),l=r.alloc(0),u=5,d={NO_AUTH:0,GSSAPI:1,USERNAME_PASSWORD:2,NO_ACCEPTABLE:255},f={CONNECT:1,BIND:2,UDP_ASSOCIATE:3},p={IPV4:1,DOMAIN:3,IPV6:4},m={SUCCEEDED:0,GENERAL_FAILURE:1,CONNECTION_NOT_ALLOWED:2,NETWORK_UNREACHABLE:3,HOST_UNREACHABLE:4,CONNECTION_REFUSED:5,TTL_EXPIRED:6,COMMAND_NOT_SUPPORTED:7,ADDRESS_TYPE_NOT_SUPPORTED:8},h={INITIAL:`initial`,HANDSHAKING:`handshaking`,AUTHENTICATING:`authenticating`,AUTHENTICATED:`authenticated`,CONNECTING:`connecting`,CONNECTED:`connected`,ERROR:`error`,CLOSED:`closed`};t.exports={Socks5Client:class extends n{constructor(e,t={}){if(super(),!e)throw new i(`socket is required`);this.socket=e,this.options=t,this.state=h.INITIAL,this.buffer=l,this.onSocketData=this.onData.bind(this),this.onSocketError=this.onError.bind(this),this.onSocketClose=this.onClose.bind(this),this.authMethods=[],t.username&&t.password&&this.authMethods.push(d.USERNAME_PASSWORD),this.authMethods.push(d.NO_AUTH),this.socket.on(`data`,this.onSocketData),this.socket.on(`error`,this.onSocketError),this.socket.on(`close`,this.onSocketClose)}onData(e){c(`received data`,e.length,`bytes in state`,this.state),this.buffer=r.concat([this.buffer,e]);try{switch(this.state){case h.HANDSHAKING:this.handleHandshakeResponse();break;case h.AUTHENTICATING:this.handleAuthResponse();break;case h.CONNECTING:this.handleConnectResponse()}}catch(e){this.onError(e)}}onError(e){c(`socket error`,e),this.state=h.ERROR,this.emit(`error`,e),this.destroy()}onClose(){c(`socket closed`),this.state=h.CLOSED,this.emit(`close`)}destroy(){this.socket&&!this.socket.destroyed&&this.socket.destroy()}markAuthenticated(){this.state=h.AUTHENTICATED,this.emit(`authenticated`)}handshake(){if(this.state!==h.INITIAL)throw new i(`Handshake already started`);c(`starting handshake with`,this.authMethods.length,`auth methods`),this.state=h.HANDSHAKING;let e=r.alloc(2+this.authMethods.length);e[0]=u,e[1]=this.authMethods.length,this.authMethods.forEach((t,n)=>{e[2+n]=t}),this.socket.write(e)}handleHandshakeResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==u)throw new a(`Invalid SOCKS version: ${e}`,`UND_ERR_SOCKS5_VERSION`);if(t===d.NO_ACCEPTABLE)throw new a(`No acceptable authentication method`,`UND_ERR_SOCKS5_AUTH_REJECTED`);if(this.buffer=this.buffer.subarray(2),c(`server selected auth method`,t),t===d.NO_AUTH)this.markAuthenticated();else if(t===d.USERNAME_PASSWORD)this.state=h.AUTHENTICATING,this.sendAuthRequest();else throw new a(`Unsupported authentication method: ${t}`,`UND_ERR_SOCKS5_AUTH_METHOD`)}sendAuthRequest(){let{username:e,password:t}=this.options;if(!e||!t)throw new i(`Username and password required for authentication`);c(`sending username/password auth`);let n=r.from(e),a=r.from(t);if(n.length>255||a.length>255)throw new i(`Username or password too long`);let o=r.alloc(3+n.length+a.length);o[0]=1,o[1]=n.length,n.copy(o,2),o[2+n.length]=a.length,a.copy(o,3+n.length),this.socket.write(o)}handleAuthResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==1)throw new a(`Invalid auth sub-negotiation version: ${e}`,`UND_ERR_SOCKS5_AUTH_VERSION`);if(t!==0)throw new a(`Authentication failed`,`UND_ERR_SOCKS5_AUTH_FAILED`);this.buffer=this.buffer.subarray(2),c(`authentication successful`),this.markAuthenticated()}connect(e,t){if(this.state===h.CONNECTING||this.state===h.CONNECTED)throw new i(`Connection already in progress`);if(this.state!==h.AUTHENTICATED)throw new i(`Client must be authenticated before CONNECT`);c(`connecting to`,e,t),this.state=h.CONNECTING;let n=this.buildConnectRequest(f.CONNECT,e,t);this.socket.write(n)}buildConnectRequest(e,t,n){let{type:i,buffer:a}=s(t),o=r.alloc(4+a.length+2);return o[0]=u,o[1]=e,o[2]=0,o[3]=i,a.copy(o,4),o.writeUInt16BE(n,4+a.length),o}handleConnectResponse(){if(this.buffer.length<4)return;let e=this.buffer[0],t=this.buffer[1],n=this.buffer[3];if(e!==u)throw new a(`Invalid SOCKS version in reply: ${e}`,`UND_ERR_SOCKS5_REPLY_VERSION`);let r=4;if(n===p.IPV4)r+=6;else if(n===p.DOMAIN){if(this.buffer.length<5)return;r+=1+this.buffer[4]+2}else if(n===p.IPV6)r+=18;else throw new a(`Invalid address type in reply: ${n}`,`UND_ERR_SOCKS5_ADDR_TYPE`);if(this.buffer.length<r)return;if(t!==m.SUCCEEDED)throw new a(`SOCKS5 connection failed: ${this.getReplyErrorMessage(t)}`,`UND_ERR_SOCKS5_REPLY_${t}`);let i,o=4;if(n===p.IPV4)i=Array.from(this.buffer.subarray(o,o+4)).join(`.`),o+=4;else if(n===p.DOMAIN){let e=this.buffer[o];o+=1,i=this.buffer.subarray(o,o+e).toString(),o+=e}else if(n===p.IPV6){let e=[];for(let t=0;t<8;t++){let n=this.buffer.readUInt16BE(o+t*2);e.push(n.toString(16))}i=e.join(`:`),o+=16}let s=this.buffer.readUInt16BE(o);this.buffer=l,this.state=h.CONNECTED,this.socket.removeListener(`data`,this.onSocketData),c(`connected, bound address:`,i,`port:`,s),this.emit(`connected`,{address:i,port:s})}getReplyErrorMessage(e){switch(e){case m.GENERAL_FAILURE:return`General SOCKS server failure`;case m.CONNECTION_NOT_ALLOWED:return`Connection not allowed by ruleset`;case m.NETWORK_UNREACHABLE:return`Network unreachable`;case m.HOST_UNREACHABLE:return`Host unreachable`;case m.CONNECTION_REFUSED:return`Connection refused`;case m.TTL_EXPIRED:return`TTL expired`;case m.COMMAND_NOT_SUPPORTED:return`Command not supported`;case m.ADDRESS_TYPE_NOT_SUPPORTED:return`Address type not supported`;default:return`Unknown error code: ${e}`}}},AUTH_METHODS:d,COMMANDS:f,ADDRESS_TYPES:p,REPLY_CODES:m,STATES:h}})),dw=q(((e,t)=>{var{URL:n}=J(`node:url`),r,i=IC(),{ConnectTimeoutError:a,InvalidArgumentError:o}=Q(),{Socks5Client:s,STATES:c}=uw(),{kBusy:l,kConnected:u,kDispatch:d,kClose:f,kDestroy:p}=OC(),m=iw(),h=LC(),{setupConnectTimeout:g}=$(),{debuglog:_}=J(`node:util`),v=_(`undici:socks5-proxy`),y=5e3,b=Symbol(`proxy url`),x=Symbol(`proxy headers`),S=Symbol(`proxy auth`),C=Symbol(`proxy protocol`),w=Symbol(`pools`),T=Symbol(`connector`),E=Symbol(`connect timeout`),D=Symbol(`request tls settings`),O=Symbol(`request tls timeout`);function k(e,t,n){return new a(`Connect Timeout Error (attempted address: ${e}:${t}, timeout: ${n}ms)`)}var A=!1;t.exports=class extends i{constructor(e,t={}){if(super(t),A||=(process.emitWarning(`SOCKS5 proxy support is experimental and subject to change`,`ExperimentalWarning`),!0),!e)throw new o(`Proxy URL is mandatory`);let r=typeof e==`string`?new n(e):e;if(r.protocol!==`socks5:`&&r.protocol!==`socks:`)throw new o(`Proxy URL must use socks5:// or socks:// protocol`);this[b]=r,this[x]=t.headers||{},this[C]=t.proxyTls?`https:`:`http:`;let i=t.connectTimeout??y;if(!Number.isFinite(i)||i<0)throw new o(`invalid connectTimeout`);this[E]=i;let{timeout:a,...s}=t.requestTls||{},c=a??i;if(!Number.isFinite(c)||c<0)throw new o(`invalid requestTls.timeout`);this[D]=s,this[O]=c,this[S]={username:t.username||(r.username?decodeURIComponent(r.username):null),password:t.password||(r.password?decodeURIComponent(r.password):null)};let l=t.proxyTls?.timeout??i;if(!Number.isFinite(l)||l<0)throw new o(`invalid proxyTls.timeout`);this[T]=t.connect||h({...t.proxyTls,timeout:l,servername:t.proxyTls?.servername||r.hostname}),this[w]=new Map}async createSocks5Connection(e,t){let n=this[b].hostname,r=parseInt(this[b].port)||1080;v(`creating SOCKS5 connection to`,n,r);let i=Promise.withResolvers();this[T]({hostname:n,host:n,port:r,protocol:this[C]},(e,t)=>{e?i.reject(e):i.resolve(t)});let a=await i.promise,o=new s(a,this[S]);o.on(`error`,e=>{v(`SOCKS5 error:`,e),a.destroy()}),await o.handshake();let l=Promise.withResolvers(),u=this[E]===0?null:setTimeout(()=>{d(),o.destroy(),l.reject(k(n,r,this[E]))},this[E]),d=()=>{clearTimeout(u),o.removeListener(`authenticated`,f),o.removeListener(`error`,p)},f=()=>{d(),l.resolve()},p=e=>{d(),l.reject(e)};o.state===c.AUTHENTICATED?(clearTimeout(u),l.resolve()):(o.once(`authenticated`,f),o.once(`error`,p)),await l.promise,await o.connect(e,t);let m=Promise.withResolvers(),h=this[E]===0?null:setTimeout(()=>{g(),o.destroy(),m.reject(k(e,t,this[E]))},this[E]),g=()=>{clearTimeout(h),o.removeListener(`connected`,_),o.removeListener(`error`,y)},_=n=>{v(`SOCKS5 tunnel established to`,e,t,`via`,n),g(),m.resolve()},y=e=>{g(),m.reject(e)};return o.once(`connected`,_),o.once(`error`,y),await m.promise,a}[d](e,t){let{origin:i}=e;v(`dispatching request to`,i,`via SOCKS5`);try{let a=String(i),o=this[w].get(a);if(!o||o.destroyed||o.closed){o=new m(i,{pipelining:e.pipelining,connections:e.connections,connect:async(e,t)=>{try{let e=new n(i),a=e.hostname,o=parseInt(e.port)||(e.protocol===`https:`?443:80);v(`establishing SOCKS5 connection to`,a,o);let s=await this.createSocks5Connection(a,o),c=s;if(e.protocol===`https:`){r||=J(`node:tls`),v(`upgrading to TLS`),c=r.connect({...this[D],socket:s,servername:this[D]?.servername||a});let e=Promise.withResolvers(),t=()=>{queueMicrotask(l),c.removeListener(`secureConnect`,n),c.removeListener(`error`,i)},n=()=>{t(),e.resolve()},i=n=>{t(),e.reject(n)},l=g(new WeakRef(c),{timeout:this[O],hostname:a,port:o});c.once(`secureConnect`,n),c.once(`error`,i),await e.promise}t(null,c)}catch(e){v(`SOCKS5 connection error:`,e),t(e)}}}),this[w].set(a,o);let t=()=>{this[w].get(a)!==o||o[u]>0||o[l]||(this[w].delete(a),o.destroyed||o.close())};o.on(`disconnect`,t),o.on(`connectionError`,t)}return o[d](e,t)}catch(e){if(v(`dispatch error:`,e),typeof t.onResponseError==`function`)return t.onResponseError(null,e),!1;if(typeof t.onError==`function`)return t.onError(e),!1;throw e}}async[f](){let e=[];for(let t of this[w].values())e.push(t.close());this[w].clear(),await Promise.all(e)}async[p](e){let t=[];for(let n of this[w].values())t.push(n.destroy(e));this[w].clear(),await Promise.all(t)}}})),fw=q(((e,t)=>{var{kProxy:n,kClose:r,kDestroy:i,kDispatch:a}=OC(),o=sw(),s=iw(),c=IC(),{InvalidArgumentError:l,RequestAbortedError:u,SecureProxyConnectionError:d,ProxyConnectionError:f}=Q(),p=LC(),m=tw(),{channels:h}=NC(),g=dw(),{hasSafeIterator:_}=$(),v=Symbol(`proxy agent`),y=Symbol(`proxy client`),b=Symbol(`proxy headers`),x=Symbol(`request tls settings`),S=Symbol(`proxy tls settings`),C=Symbol(`connect endpoint function`),w=Symbol(`connect endpoint function (http/1.1 only)`),T=Symbol(`tunnel proxy`),E=`proxy-authorization`;function D(e){return e===`https:`?443:80}function O(e,t){return new s(e,t)}var k=()=>{};function A(e,t){return t.connections===1?new m(e,t):new s(e,t)}function j(e,t){return t===!0||e!==`http:`}var M=class extends c{#e;#t;constructor(e,{headers:t={},connect:n,factory:r,proxyServername:i}){if(!e)throw new l(`Proxy URL is mandatory`);super(),this[b]=t,this.#t=i,this.#e=r?r(e,{connect:n}):new m(e,{connect:n})}[a](e,t){let n=t.onResponseStart;t.onResponseStart=function(e,r,i,a){if(r===407){typeof t.onResponseError==`function`&&t.onResponseError(e,new l(`Proxy Authentication Required (407)`));return}n&&n.call(this,e,r,i,a)};let{origin:r,path:i=`/`,headers:o={}}=e;if(e.path=r+i,!(`host`in o)&&!(`Host`in o)){let{host:e}=new URL(r);o.host=e}return e.headers={...this[b],...o},this.#t!=null&&(e.servername=this.#t),this.#e[a](e,t)}[r](){return this.#e.close()}[i](e){return this.#e.destroy(e)}},N=class extends c{constructor(e){if(!e||typeof e==`object`&&!(e instanceof URL)&&!e.uri)throw new l(`Proxy uri is mandatory`);let{clientFactory:t=O}=e;if(typeof t!=`function`)throw new l(`Proxy opts.clientFactory must be a function.`);let{proxyTunnel:r,connectTimeout:i}=e;super(e);let a=this.#e(e),{href:s,origin:c,port:m,protocol:_,username:E,password:N,hostname:P}=a;if(this[n]={uri:s,protocol:_},this[x]=e.requestTls,this[S]=e.proxyTls,this[b]=e.headers||{},this[T]=r,e.auth&&e.token)throw new l(`opts.auth cannot be used in combination with opts.token`);e.auth?this[b][`proxy-authorization`]=`Basic ${e.auth}`:e.token?this[b][`proxy-authorization`]=e.token:E&&N?this[b][`proxy-authorization`]=`Basic ${Buffer.from(`${decodeURIComponent(E)}:${decodeURIComponent(N)}`).toString(`base64`)}`:E&&(this[b][`proxy-authorization`]=`Basic ${Buffer.from(`${decodeURIComponent(E)}:`).toString(`base64`)}`);let F=p({timeout:i,...e.proxyTls}),I=p({timeout:i,...e.proxyTls,allowH2:!1});this[C]=p({timeout:i,...e.requestTls}),this[w]=p({timeout:i,...e.requestTls,allowH2:!1});let L=e.factory||A,R=(t,r)=>{let{protocol:a}=new URL(t);if(this[n].protocol===`socks5:`||this[n].protocol===`socks:`)return new g(this[n].uri,{headers:this[b],connect:F,factory:L,username:e.username||E,password:e.password||N,connectTimeout:i,proxyTls:e.proxyTls,requestTls:e.requestTls});if(!j(a,this[T])){let e=this[n].protocol===`https:`?(e,t)=>I(e,(e,n)=>{e&&e.code===`ERR_TLS_CERT_ALTNAME_INVALID`?t(new d(e)):t(e,n)}):I;return new M(this[n].uri,{headers:this[b],connect:e,factory:L,proxyServername:this[n].protocol===`https:`?this[S]?.servername||P:void 0})}return L(t,r)};this[y]=_===`socks5:`||_===`socks:`?null:t(a,{connect:F}),this[v]=new o({...e,factory:R,connect:async(e,t)=>{if(!this[y]){t(new l(`Cannot establish tunnel connection without a proxy client`));return}let n=e.host;e.port||(n+=`:${D(e.protocol)}`);try{let r={origin:c,port:m,path:n,signal:e.signal,headers:{...this[b],host:e.host,...e.connections==null||e.connections>0?{"proxy-connection":`keep-alive`}:{}},servername:this[S]?.servername||P},{socket:i,statusCode:a}=await this[y].connect(r);if(a!==200){i.on(`error`,k).destroy(),t(new u(`Proxy response (${a}) !== 200 when HTTP Tunneling`));return}if(h.proxyConnected.hasSubscribers&&h.proxyConnected.publish({socket:i,connectParams:r}),e.protocol!==`https:`){t(null,i);return}let o;o=this[x]?this[x].servername:e.servername,(e.allowH2===!1?this[w]:this[C])({...e,servername:o,httpSocket:i},t)}catch(e){e.code===`ERR_TLS_CERT_ALTNAME_INVALID`?t(new d(e)):e.code===`UND_ERR_SOCKET`?t(new f(e)):t(e)}}})}dispatch(e,t){let n=P(e.headers);if(F(n),n&&!(`host`in n)&&!(`Host`in n)){let{host:t}=new URL(e.origin);n.host=t}return this[v].dispatch({...e,headers:n},t)}#e(e){return typeof e==`string`?new URL(e):e instanceof URL?e:new URL(e.uri)}[r](){let e=[this[v].close()];return this[y]&&e.push(this[y].close()),Promise.all(e)}[i](){let e=[this[v].destroy()];return this[y]&&e.push(this[y].destroy()),Promise.all(e)}};function P(e){if(Array.isArray(e)){let t={};for(let n=0;n<e.length;n+=2)I(e[n])&&L(),t[e[n]]=e[n+1];return t}if(e&&typeof e==`object`&&_(e)){let t={};for(let[n,r]of e){if(!Object.hasOwn(t,n)){t[n]=r;continue}let e=t[n],i=[];e!==void 0&&i.push(...Array.isArray(e)?e:[e]),r!==void 0&&i.push(...Array.isArray(r)?r:[r]),t[n]=i.length>1?i:i[0]}return t}return e}function F(e){for(let t in e)I(t)&&L()}function I(e){return e.length===19&&e.toLowerCase()===E}function L(){throw new l(`Proxy-Authorization should be sent in ProxyAgent constructor`)}t.exports=N})),pw=q(((e,t)=>{var n=IC(),{kClose:r,kDestroy:i,kClosed:a,kDestroyed:o,kDispatch:s,kNoProxyAgent:c,kHttpProxyAgent:l,kHttpsProxyAgent:u}=OC(),d=fw(),f=sw(),p={"http:":80,"https:":443};t.exports=class extends n{#e=null;#t=null;#n=null;constructor(e={}){super(e),this.#n=e;let{httpProxy:t,httpsProxy:n,noProxy:r,...i}=e;this[c]=new f(i);let a=t??process.env.http_proxy??process.env.HTTP_PROXY;this[l]=a?new d({...i,uri:a}):this[c];let o=n??process.env.https_proxy??process.env.HTTPS_PROXY;this[u]=o?new d({...i,uri:o}):this[l],this.#a()}[s](e,t){let n=new URL(e.origin);return this.#r(n).dispatch(e,t)}[r](){return Promise.all([this[c].close(),!this[l][a]&&this[l].close(),!this[u][a]&&this[u].close()])}[i](e){return Promise.all([this[c].destroy(e),!this[l][o]&&this[l].destroy(e),!this[u][o]&&this[u].destroy(e)])}#r(e){let{protocol:t,host:n,port:r}=e;return n=n.replace(/:\d*$/,``).replace(/^\[(.+)\]$/,`$1`).toLowerCase(),n.length>1&&n.charCodeAt(n.length-1)===46&&(n=n.slice(0,-1)),r=Number.parseInt(r,10)||p[t]||0,this.#i(n,r)?t===`https:`?this[u]:this[l]:this[c]}#i(e,t){if(this.#o&&this.#a(),this.#t.length===0)return!0;for(let n=0;n<this.#t.length;n++){let r=this.#t[n];if(r.hostname===`*`){if(r.port&&r.port!==t)continue;return!1}if(!(r.port&&r.port!==t)&&(!r.wildcard&&e===r.hostname||e.slice(-(r.hostname.length+1))===`.${r.hostname}`))return!1}return!0}#a(){let e=this.#n.noProxy??this.#s,t=e.split(/[,\s]/),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!r)continue;let i,a,o=r.match(/^\[(.+)\]:(\d+)$/);if(o)i=o[1],a=Number.parseInt(o[2],10);else{let e=r.replace(/^\[(.+)\]$/,`$1`),t=(e.match(/:/g)||[]).length===1&&e.match(/^(.+):(\d+)$/);i=t?t[1]:e,a=t?Number.parseInt(t[2],10):0}let s=r.charCodeAt(0)===42;n.push({hostname:i.replace(/^\*?\./,``).replace(/^(.+)\.$/,`$1`).toLowerCase(),port:a,wildcard:s})}this.#e=e,this.#t=n}get#o(){return this.#n.noProxy===void 0&&this.#e!==this.#s}get#s(){return process.env.no_proxy??process.env.NO_PROXY??``}}})),mw=q(((e,t)=>{var n=J(`node:assert`),{kRetryHandlerDefaultRetry:r}=OC(),{RequestRetryError:i,RequestAbortedError:a}=Q(),{isDisturbed:o,parseRangeHeader:s,wrapRequestBody:c}=$();function l(e){let t=new Date(e).getTime();return isNaN(t)?null:t-Date.now()}function u(e,t,n,r){let a=e[`content-length`];if(a==null||!Number.isFinite(t.start)||!Number.isFinite(t.end))return;let o=Number(a),s=t.end-t.start+1;if(!Number.isFinite(o)||o!==s)throw new i(`Content-Length mismatch`,n,{headers:e,data:{count:r}})}var d=class{#e;#t=!1;#n=null;constructor(e){this.#e=e}set target(e){this.#n=e,this.#t&&e?.pause()}get target(){return this.#n}pause(){this.#t=!0,this.#n?.pause()}resume(){this.#t=!1,this.#n?.resume()}abort(e){this.#n?.abort(e),this.#e(e)}get paused(){return this.#t||(this.#n?.paused??!1)}get aborted(){return this.#n?.aborted??!1}get reason(){return this.#n?.reason??null}get rawHeaders(){return this.#n?.rawHeaders??null}set rawHeaders(e){this.#n&&(this.#n.rawHeaders=e)}get rawTrailers(){return this.#n?.rawTrailers??null}set rawTrailers(e){this.#n&&(this.#n.rawTrailers=e)}};t.exports=class e{constructor(t,{dispatch:n,handler:i}){let{retryOptions:a,...o}=t,{retry:s,maxRetries:l,maxTimeout:u,minTimeout:f,timeoutFactor:p,methods:m,errorCodes:h,retryAfter:g,statusCodes:_,throwOnError:v}=a??{};this.error=null,this.dispatch=n,this.handler=i,this.opts={...o,body:c(t.body)},this.retryOpts={throwOnError:v??!0,retry:s??e[r],retryAfter:g??!0,maxTimeout:u??3e4,minTimeout:f??500,timeoutFactor:p??2,maxRetries:l??5,methods:m??[`GET`,`HEAD`,`OPTIONS`,`PUT`,`DELETE`,`TRACE`,`QUERY`],statusCodes:_??[500,502,503,504,429],errorCodes:h??[`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`UND_ERR_SOCKET`]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null,this.statusCode=null,this.headers=null,this.controllerProxy=new d(e=>this.#e(e)),this.retryPending=!1,this.retryTimer=null,this.pendingResponseData=null,this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,this.aborted=!1}onResponseStartWithRetry(e,t,n,r,i){if(this.retryOpts.throwOnError){this.retryOpts.statusCodes.includes(t)===!1?this.headersSent?this.handler.onResponseError?.(this.controllerProxy,i):(this.headersSent=!0,this.checkpointResponseEnd(n),this.handler.onResponseStart?.(this.controllerProxy,t,n,r)):this.error=i;return}if(o(this.opts.body)){this.headersSent=!0,this.checkpointResponseEnd(n),this.handler.onResponseStart?.(this.controllerProxy,t,n,r);return}function a(a){if(this.aborted)return;this.retryPending=!1,this.retryTimer=null;let o=this.pendingResponseData,s=this.pendingResponseTrailers,c=this.pendingResponseEnded;if(this.pendingResponseData=null,this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,a){if(this.headersSent)this.handler.onResponseError?.(this.controllerProxy,a);else{if(this.headersSent=!0,this.checkpointResponseEnd(n),this.handler.onResponseStart?.(this.controllerProxy,t,n,r),e.resume(),c){for(let t of o)this.onResponseData(e,t);this.onResponseEnd(e,s)}return}e.resume();return}this.error=i,e.resume(),c&&this.onResponseEnd(e,s)}e.pause(),this.retryPending=!0,this.pendingResponseData=[],this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,this.retryTimer=this.retryOpts.retry(i,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},a.bind(this))??null}checkpointResponseEnd(e){if(this.end==null&&this.opts.method!==`HEAD`){let t=e[`content-length`];this.end=t==null?null:Number(t)-1,n(this.end==null||Number.isFinite(this.end),`invalid content-length`),this.resume=this.end!=null}}onRequestStart(e,t){this.controllerProxy.target=e,this.headersSent||this.handler.onRequestStart?.(this.controllerProxy,t)}onBodySent(e){this.handler.onBodySent?.(e)}onRequestSent(){this.handler.onRequestSent?.()}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(this.controllerProxy,t,n,r)}static[r](e,{state:t,opts:n},r){let{statusCode:i,code:a,headers:o}=e,{method:s,retryOptions:c}=n,{maxRetries:u,minTimeout:d,maxTimeout:f,timeoutFactor:p,statusCodes:m,errorCodes:h,methods:g,retryAfter:_}=c,{counter:v}=t;if(a&&a!==`UND_ERR_REQ_RETRY`&&!h.includes(a)){r(e);return}if(Array.isArray(g)&&!g.includes(s)){r(e);return}if(i!=null&&Array.isArray(m)&&!m.includes(i)){r(e);return}if(v>u){r(e);return}let y=_===!1?void 0:o?.[`retry-after`];y&&=(y=Number(y),Number.isNaN(y)?l(o[`retry-after`]):y*1e3);let b=y===0?0:Math.min(y>0?y:d*p**(v-1),f);return setTimeout(()=>r(null),b)}onResponseStart(e,t,r,a){if(t<200){this.handler.onResponseStart?.(this.controllerProxy,t,r,a);return}if(this.error=null,this.retryCount+=1,this.statusCode=t,this.headers=r,this.headersSent){if(t!==206&&(this.start>0||t!==200))throw new i(`server does not support the range header and the payload was partially consumed`,t,{headers:r,data:{count:this.retryCount}});let e=s(r[`content-range`]);if(!e)throw new i(`Content-Range mismatch`,t,{headers:r,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==r.etag)throw new i(`ETag mismatch`,t,{headers:r,data:{count:this.retryCount}});u(r,e,t,this.retryCount);let{start:n,size:a,end:o=a?a-1:null}=e;if(this.start!==n||this.end!=null&&this.end!==o)throw new i(`Content-Range mismatch`,t,{headers:r,data:{count:this.retryCount}});return}if(t>=300){let n=new i(`Request failed`,t,{headers:r,data:{count:this.retryCount}});this.onResponseStartWithRetry(e,t,r,a,n);return}if(this.end==null){if(t===206){let e=s(r[`content-range`]);if(e==null||e.end==null){this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,t,r,a);return}u(r,e,t,this.retryCount);let{start:i,size:o,end:c=o?o-1:null}=e;n(i!=null&&Number.isFinite(i),`content-range mismatch`),n(c!=null&&Number.isFinite(c),`invalid content-length`),this.start=i,this.end=c}if(this.end==null&&this.opts.method!==`HEAD`){let e=r[`content-length`];this.end=e==null?null:Number(e)-1}n(Number.isFinite(this.start)),n(this.end==null||Number.isFinite(this.end),`invalid content-length`),this.resume=!0,this.etag=r.etag==null?null:r.etag,this.etag!=null&&this.etag[0]===`W`&&this.etag[1]===`/`&&(this.etag=null),this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,t,r,a)}else throw new i(`Request failed`,t,{headers:r,data:{count:this.retryCount}})}onResponseData(e,t){if(this.pendingResponseData!==null){this.pendingResponseData.push(t);return}this.error||(this.start+=t.length,this.handler.onResponseData?.(this.controllerProxy,t))}onResponseEnd(e,t){if(this.pendingResponseData!==null){this.pendingResponseTrailers=t,this.pendingResponseEnded=!0;return}if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error){if(this.end!=null&&Number.isFinite(this.end)&&this.start!==this.end+1)throw new i(`Content-Range mismatch`,this.statusCode,{headers:this.headers,data:{count:this.retryCount}});return this.retryCount=0,this.handler.onResponseEnd?.(this.controllerProxy,t)}this.retry()}retry(){if(this.start!==0){let e={range:`bytes=${this.start}-${this.end??``}`};this.etag!=null&&(e[`if-match`]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...e}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(e){this.handler.onResponseError?.(this.controllerProxy,e)}}onResponseError(e,t){if(this.aborted)return;if(e?.aborted||o(this.opts.body)||this.headersSent&&!this.resume){this.handler.onResponseError?.(this.controllerProxy,t);return}function n(e){if(!this.aborted){if(this.retryPending=!1,this.retryTimer=null,!e){this.retry();return}this.handler?.onResponseError?.(this.controllerProxy,e)}}this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryPending=!0,this.retryTimer=this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},n.bind(this))??null}#e(e){this.retryPending&&(this.aborted=!0,this.retryPending=!1,clearTimeout(this.retryTimer),this.retryTimer=null,this.pendingResponseData=null,this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,this.handler.onResponseError?.(this.controllerProxy,e??new a))}}})),hw=q(((e,t)=>{var n=FC(),r=mw(),{kOriginless:i,kUrl:a}=OC();t.exports=class extends n{#e=null;#t=null;constructor(e,t={}){super(t),this.#e=e,this.#t=t,this[a]=e[a],this[i]=e[i]}dispatch(e,t){let n=new r({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:t});return this.#e.dispatch(e,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}}})),gw=q(((e,t)=>{var{InvalidArgumentError:n}=Q(),r=tw();t.exports=class extends r{constructor(e,t){if(typeof e==`string`&&(e=new URL(e)),e.protocol!==`http:`)throw new n(`h2c-client: Only h2c protocol is supported`);let{maxConcurrentStreams:r,pipelining:i,...a}=t??{},o=r??100,s=100;if(r!=null&&(!Number.isInteger(r)||r<1))throw new n(`maxConcurrentStreams must be a positive integer, greater than 0`);if(i!=null&&Number.isInteger(i)&&i>0&&(s=i),s>o)throw new n(`h2c-client: pipelining cannot be greater than maxConcurrentStreams`);super(e,{...a,maxConcurrentStreams:o,pipelining:s,allowH2:!0,useH2c:!0})}}})),_w=q(((e,t)=>{var n=J(`node:assert`),{addAbortListener:r}=J(`node:events`),{Readable:i}=J(`node:stream`),{RequestAbortedError:a,NotSupportedError:o,InvalidArgumentError:s,AbortError:c}=Q(),l=$(),u=Symbol(`kConsume`),d=Symbol(`kReading`),f=Symbol(`kBody`),p=Symbol(`kAbort`),m=Symbol(`kContentType`),h=Symbol(`kContentLength`),g=Symbol(`kUsed`),_=Symbol(`kBytesRead`),v=()=>{},y=class extends i{constructor({resume:e,abort:t,contentType:n=``,contentLength:r,highWaterMark:i=65536}){super({autoDestroy:!0,read:e,highWaterMark:i}),this._readableState.dataEmitted=!1,this[p]=t,this[u]=null,this[_]=0,this[f]=null,this[g]=!1,this[m]=n,this[h]=Number.isFinite(r)?r:null,this[d]=!1}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new a),e&&this[p](),this[g]?t(e):setImmediate(t,e)}on(e,t){return(e===`data`||e===`readable`)&&(this[d]=!0,this[g]=!0),super.on(e,t)}addListener(e,t){return this.on(e,t)}off(e,t){let n=super.off(e,t);return(e===`data`||e===`readable`)&&(this[d]=this.listenerCount(`data`)>0||this.listenerCount(`readable`)>0),n}removeListener(e,t){return this.off(e,t)}push(e){return e&&(this[_]+=e.length,this[u])?(D(this[u],e),!this[d]||super.push(e)):super.push(e)}text(){return S(this,`text`)}json(){return S(this,`json`)}blob(){return S(this,`blob`)}bytes(){return S(this,`bytes`)}arrayBuffer(){return S(this,`arrayBuffer`)}async formData(){throw new o}get bodyUsed(){return l.isDisturbed(this)}get body(){return this[f]||(this[f]=ReadableStream.from(this),this[u]&&(this[f].getReader(),n(this[f].locked))),this[f]}dump(e){let t=e?.signal;if(t!=null&&(typeof t!=`object`||!(`aborted`in t)))return Promise.reject(new s(`signal must be an AbortSignal`));let n=e?.limit&&Number.isFinite(e.limit)?e.limit:131072;return t?.aborted?Promise.reject(t.reason??new c):this._readableState.closeEmitted?Promise.resolve(null):new Promise((e,i)=>{if((this[h]&&this[h]>n||this[_]>n)&&this.destroy(new c),t){let n=r(t,()=>{this.destroy(t.reason??new c)});this.on(`close`,function(){n[Symbol.dispose](),t.aborted?i(t.reason??new c):e(null)})}else this.on(`close`,e);this.on(`error`,v).on(`data`,()=>{this[_]>n&&this.destroy()}).resume()})}setEncoding(e){return Buffer.isEncoding(e)&&super.setEncoding(e),this}};function b(e){return e[f]?.locked===!0||e[u]!==null}function x(e){return l.isDisturbed(e)||b(e)}function S(e,t){return n(!e[u]),new Promise((n,r)=>{if(x(e)){let t=e._readableState;t.destroyed&&t.closeEmitted===!1?e.on(`error`,r).on(`close`,()=>{r(TypeError(`unusable`))}):r(t.errored??TypeError(`unusable`))}else queueMicrotask(()=>{e[u]={type:t,stream:e,resolve:n,reject:r,length:0,body:[]},e.on(`error`,function(e){O(this[u],e)}).on(`close`,function(){this[u].body!==null&&O(this[u],new a)}),C(e[u])})})}function C(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let n=t.bufferIndex,r=t.buffer.length;for(let i=n;i<r;i++)D(e,t.buffer[i])}else for(let n of t.buffer)D(e,n);let n=t.decoder;if(n!=null&&n.lastNeed>0&&D(e,Buffer.from(n.lastChar.subarray(0,n.lastTotal-n.lastNeed))),t.endEmitted){E(e,t.encoding);return}for(e.stream.on(`end`,function(){E(this[u],this._readableState.encoding)}),e.stream.resume();e.stream.read()!=null;);}function w(e,t,n){if(e.length===0||t===0)return``;let r=e.length===1?e[0]:Buffer.concat(e,t),i=r.length,a=i>2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return!n||n===`utf8`||n===`utf-8`?r.utf8Slice(a,i):r.subarray(a,i).toString(n)}function T(e,t){if(e.length===0||t===0)return new Uint8Array;if(e.length===1)return new Uint8Array(e[0]);let n=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),r=0;for(let t=0;t<e.length;++t){let i=e[t];n.set(i,r),r+=i.length}return n}function E(e,t){let{type:n,body:r,resolve:i,stream:a,length:o}=e;try{n===`text`?i(w(r,o,t)):n===`json`?i(JSON.parse(w(r,o,t))):n===`arrayBuffer`?i(T(r,o).buffer):n===`blob`?i(new Blob(r,{type:a[m]})):n===`bytes`&&i(T(r,o)),O(e)}catch(e){a.destroy(e)}}function D(e,t){e.body!==null&&(typeof t==`string`&&(t=Buffer.from(t,e.stream._readableState.encoding)),e.length+=t.length,e.body.push(t))}function O(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}t.exports={Readable:y,chunksDecode:w}})),vw=q(((e,t)=>{var n=J(`node:assert`),{AsyncResource:r}=J(`node:async_hooks`),{Readable:i}=_w(),{InvalidArgumentError:a,RequestAbortedError:o}=Q(),s=$();function c(){}var l=class extends r{constructor(e,t){if(!e||typeof e!=`object`)throw new a(`invalid opts`);let{signal:n,method:r,opaque:i,body:l,onInfo:u,responseHeaders:d,highWaterMark:f}=e;try{if(typeof t!=`function`)throw new a(`invalid callback`);if(f!=null&&(!Number.isFinite(f)||f<0))throw new a(`invalid highWaterMark`);if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new a(`signal must be an EventEmitter or EventTarget`);if(r===`CONNECT`)throw new a(`invalid method`);if(u&&typeof u!=`function`)throw new a(`invalid onInfo callback`);super(`UNDICI_REQUEST`)}catch(e){throw s.isStream(l)&&s.destroy(l.on(`error`,c),e),e}this.method=r,this.responseHeaders=d||null,this.opaque=i||null,this.callback=t,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.controller=null,this.onInfo=u||null,this.highWaterMark=f,this.reason=null,this.removeAbortListener=null,n?.aborted?this.reason=n.reason??new o:n&&(this.removeAbortListener=s.addAbortListener(n,()=>{if(this.reason=n.reason??new o,this.res){let e=this.res;this.res=null,s.destroy(e.on(`error`,c),this.reason)}else this.abort&&this.abort(this.reason)}))}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}n(this.callback),this.controller=e,this.abort=t=>e.abort(t),this.context=t}onResponseStart(e,t,n,r){let{callback:a,opaque:o,context:l,responseHeaders:u,highWaterMark:d}=this,f=e?.rawHeaders,p=u===`raw`?s.parseRawHeaders(f):n;if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:p});return}let m=n,h=m?.[`content-type`],g=m?.[`content-length`],_=new i({resume:()=>e.resume(),abort:t=>e.abort(t),contentType:h,contentLength:this.method!==`HEAD`&&g?Number(g):null,highWaterMark:d});if(this.removeAbortListener&&=(_.on(`close`,this.removeAbortListener),null),this.callback=null,this.res=_,a!==null)try{this.runInAsyncScope(a,null,null,{statusCode:t,statusText:r,headers:p,trailers:this.trailers,opaque:o,body:_,context:l})}catch(e){this.res=null,s.destroy(_.on(`error`,c),e),queueMicrotask(()=>{throw e})}}onResponseData(e,t){this.res&&this.res.push(t)===!1&&e.pause()}onResponseEnd(e,t){if(t&&typeof t==`object`)for(let e of Object.keys(t))e===`__proto__`?Object.defineProperty(this.trailers,e,{value:t[e],enumerable:!0,configurable:!0,writable:!0}):this.trailers[e]=t[e];this.res?.push(null)}onResponseError(e,t){let{res:n,callback:r,body:i,opaque:a}=this;r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:a})})),n&&(this.res=null,queueMicrotask(()=>{s.destroy(n.on(`error`,c),t)})),i&&(this.body=null,s.isStream(i)&&(i.on(`error`,c),s.destroy(i,t))),this.removeAbortListener&&=(this.removeAbortListener(),null)}};function u(e,t){if(t===void 0)return new Promise((t,n)=>{u.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new l(e,t);this.dispatch(e,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}t.exports=u,t.exports.RequestHandler=l})),yw=q(((e,t)=>{var{addAbortListener:n}=$(),{RequestAbortedError:r}=Q(),i=Symbol(`kListener`),a=Symbol(`kSignal`);function o(e){e.abort?e.abort(e[a]?.reason):e.reason=e[a]?.reason??new r,c(e)}function s(e,t){if(e.reason=null,e[a]=null,e[i]=null,t){if(t.aborted){o(e);return}e[a]=t,e[i]=()=>{o(e)},n(e[a],e[i])}}function c(e){e[a]&&(`removeEventListener`in e[a]?e[a].removeEventListener(`abort`,e[i]):e[a].removeListener(`abort`,e[i]),e[a]=null,e[i]=null)}t.exports={addSignal:s,removeSignal:c}})),bw=q(((e,t)=>{var n=J(`node:assert`),{AsyncResource:r}=J(`node:async_hooks`),{InvalidArgumentError:i,InvalidReturnValueError:a}=Q(),o=$(),{addSignal:s,removeSignal:c}=yw();function l(){}function u(e){return e.errored??e.writableErrored??e._writableState?.errored}function d(){let e=Error(`Premature close`);return e.code=`ERR_STREAM_PREMATURE_CLOSE`,e}function f(e,t){let n=!1,r=()=>{e.removeListener(`close`,a),e.removeListener(`error`,o),e.removeListener(`finish`,s)},i=(e,i=!1)=>{n||(n=!0,r(),t(e,i))},a=()=>{let t=u(e);i(t??(e.writableFinished?void 0:d()))},o=e=>i(e,!0),s=()=>i();e.on(`close`,a),e.on(`error`,o),e.on(`finish`,s),e.closed?process.nextTick(a):e.writableFinished&&process.nextTick(s)}var p=class extends r{constructor(e,t,n){if(!e||typeof e!=`object`)throw new i(`invalid opts`);let{signal:r,method:a,opaque:c,body:u,onInfo:d,responseHeaders:f}=e;try{if(typeof n!=`function`)throw new i(`invalid callback`);if(typeof t!=`function`)throw new i(`invalid factory`);if(r&&typeof r.on!=`function`&&typeof r.addEventListener!=`function`)throw new i(`signal must be an EventEmitter or EventTarget`);if(a===`CONNECT`)throw new i(`invalid method`);if(d&&typeof d!=`function`)throw new i(`invalid onInfo callback`);super(`UNDICI_STREAM`)}catch(e){throw o.isStream(u)&&o.destroy(u.on(`error`,l),e),e}this.responseHeaders=f||null,this.opaque=c||null,this.factory=t,this.callback=n,this.res=null,this.abort=null,this.context=null,this.controller=null,this.trailers=null,this.body=u,this.onInfo=d||null,o.isStream(u)&&u.on(`error`,e=>{this.onResponseError(this.controller,e)}),s(this,r)}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}n(this.callback),this.controller=e,this.abort=t=>e.abort(t),this.context=t}onResponseStart(e,t,n,r){let{factory:i,opaque:s,context:c,responseHeaders:l}=this,u=e?.rawHeaders,d=l===`raw`?o.parseRawHeaders(u):n;if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:d});return}if(this.factory=null,i===null)return;let p=this.runInAsyncScope(i,null,{statusCode:t,headers:d,opaque:s,context:c});if(!p||typeof p.write!=`function`||typeof p.end!=`function`||typeof p.on!=`function`)throw new a(`expected Writable`);f(p,(e,t)=>{let{callback:n,res:r,opaque:i,trailers:a,abort:s}=this;this.res=null,(e||!r?.readable)&&o.destroy(r,t?void 0:e),this.callback=null,this.runInAsyncScope(n,null,e||null,{opaque:i,trailers:a}),e&&s(e)}),p.on(`drain`,()=>e.resume()),this.res=p,(p.writableNeedDrain===void 0?p._writableState?.needDrain:p.writableNeedDrain)===!0&&e.pause()}onResponseData(e,t){let{res:n}=this;n&&n.write(t)===!1&&e.pause()}onResponseEnd(e,t){let{res:n}=this;c(this),n&&(t&&typeof t==`object`&&(this.trailers=t),n.end())}onResponseError(e,t){let{res:n,callback:r,opaque:i,body:a}=this;c(this),this.factory=null,n?(this.res=null,o.destroy(n,t)):r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:i})})),a&&(this.body=null,o.destroy(a,t))}};function m(e,t,n){if(n===void 0)return new Promise((n,r)=>{m.call(this,e,t,(e,t)=>e?r(e):n(t))});try{let r=new p(e,t,n);this.dispatch(e,r)}catch(t){if(typeof n!=`function`)throw t;let r=e?.opaque;queueMicrotask(()=>n(t,{opaque:r}))}}t.exports=m})),xw=q(((e,t)=>{var{Readable:n,Duplex:r,PassThrough:i}=J(`node:stream`),a=J(`node:assert`),{AsyncResource:o}=J(`node:async_hooks`),{InvalidArgumentError:s,InvalidReturnValueError:c,RequestAbortedError:l}=Q(),u=$(),{kBodyUsed:d}=OC(),{addSignal:f,removeSignal:p}=yw();function m(){}var h=Symbol(`resume`),g=class extends n{constructor(){super({autoDestroy:!0}),this[h]=null,this[d]=!0}_read(){let{[h]:e}=this;e&&(this[h]=null,e())}_destroy(e,t){this._read(),t(e)}},_=class extends n{constructor(e){super({autoDestroy:!0}),this[h]=e}_read(){this[h]()}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new l),t(e)}},v=class extends o{constructor(e,t){if(!e||typeof e!=`object`)throw new s(`invalid opts`);if(typeof t!=`function`)throw new s(`invalid handler`);let{signal:n,method:i,opaque:a,onInfo:o,responseHeaders:c}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new s(`signal must be an EventEmitter or EventTarget`);if(i===`CONNECT`)throw new s(`invalid method`);if(o&&typeof o!=`function`)throw new s(`invalid onInfo callback`);super(`UNDICI_PIPELINE`),this.opaque=a||null,this.responseHeaders=c||null,this.handler=t,this.abort=null,this.context=null,this.onInfo=o||null,this.req=new g().on(`error`,m),this.ret=new r({readableObjectMode:e.objectMode,autoDestroy:!0,read:()=>{let{body:e}=this;e?.resume&&e.resume()},write:(e,t,n)=>{let{req:r}=this;r.push(e,t)||r._readableState.destroyed?n():r[h]=n},destroy:(e,t)=>{let{body:n,req:r,res:i,ret:a,abort:o}=this;!e&&!a._readableState.endEmitted&&(e=new l),o&&e&&o(),u.destroy(n,e),u.destroy(r,e),u.destroy(i,e),p(this),t(e)}}).on(`prefinish`,()=>{let{req:e}=this;e.push(null)}),this.res=null,f(this,n)}onRequestStart(e,t){let{res:n}=this;if(this.reason){e.abort(this.reason);return}a(!n,`pipeline cannot be retried`),this.abort=t=>e.abort(t),this.context=t}onResponseStart(e,t,n,r){let{opaque:i,handler:a,context:o}=this;if(t<200){if(this.onInfo){let r=e?.rawHeaders,i=this.responseHeaders===`raw`?u.parseRawHeaders(r):n;this.onInfo({statusCode:t,headers:i})}return}this.res=new _(()=>e.resume());let s;try{this.handler=null;let r=e?.rawHeaders,c=this.responseHeaders===`raw`?u.parseRawHeaders(r):n;s=this.runInAsyncScope(a,null,{statusCode:t,headers:c,opaque:i,body:this.res,context:o})}catch(e){throw this.res.on(`error`,m),e}if(!s||typeof s.on!=`function`)throw new c(`expected Readable`);s.on(`data`,e=>{let{ret:t,body:n}=this;!t.push(e)&&n.pause&&n.pause()}).on(`error`,e=>{let{ret:t}=this;u.destroy(t,e)}).on(`end`,()=>{let{ret:e}=this;e.push(null)}).on(`close`,()=>{let{ret:e}=this;e._readableState.ended||u.destroy(e,new l)}),this.body=s}onResponseData(e,t){let{res:n}=this;n.push(t)===!1&&e.pause()}onResponseEnd(e,t){let{res:n}=this;n.push(null)}onResponseError(e,t){let{ret:n}=this;this.handler=null,u.destroy(n,t)}};function y(e,t){try{let n=new v(e,t);return this.dispatch({...e,body:n.req},n),n.ret}catch(e){return new i().destroy(e)}}t.exports=y})),Sw=q(((e,t)=>{var{InvalidArgumentError:n,SocketError:r}=Q(),{AsyncResource:i}=J(`node:async_hooks`),a=J(`node:assert`),o=$(),{kHTTP2Stream:s}=OC(),{addSignal:c,removeSignal:l}=yw(),u=class extends i{constructor(e,t){if(!e||typeof e!=`object`)throw new n(`invalid opts`);if(typeof t!=`function`)throw new n(`invalid callback`);let{signal:r,opaque:i,responseHeaders:a}=e;if(r&&typeof r.on!=`function`&&typeof r.addEventListener!=`function`)throw new n(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_UPGRADE`),this.responseHeaders=a||null,this.opaque=i||null,this.callback=t,this.abort=null,this.context=null,c(this,r)}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}a(this.callback),this.abort=t=>e.abort(t),this.context=t}onResponseStart(){throw new r(`bad upgrade`,null)}onRequestUpgrade(e,t,n,i){if(t!==(i[s]===!0?200:101)){let t=i[s]===!0?null:o.getSocketInfo(i);e.abort(new r(`bad upgrade`,t));return}let{callback:a,opaque:c,context:u}=this;l(this),this.callback=null;let d=e?.rawHeaders,f=this.responseHeaders===`raw`?o.parseRawHeaders(d):n;this.runInAsyncScope(a,null,null,{headers:f,socket:i,opaque:c,context:u})}onResponseError(e,t){let{callback:n,opaque:r}=this;l(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:r})}))}};function d(e,t){if(t===void 0)return new Promise((t,n)=>{d.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new u(e,t),r={...e,method:e.method||`GET`,upgrade:e.protocol||`Websocket`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}t.exports=d})),Cw=q(((e,t)=>{var n=J(`node:assert`),{AsyncResource:r}=J(`node:async_hooks`),{InvalidArgumentError:i,SocketError:a}=Q(),o=$(),{addSignal:s,removeSignal:c}=yw(),l=class extends r{constructor(e,t){if(!e||typeof e!=`object`)throw new i(`invalid opts`);if(typeof t!=`function`)throw new i(`invalid callback`);let{signal:n,opaque:r,responseHeaders:a}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new i(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_CONNECT`),this.opaque=r||null,this.responseHeaders=a||null,this.callback=t,this.abort=null,s(this,n)}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}n(this.callback),this.abort=t=>e.abort(t),this.context=t}onResponseStart(){throw new a(`bad connect`,null)}onRequestUpgrade(e,t,n,r){let{callback:i,opaque:a,context:s}=this;c(this),this.callback=null;let l=n,u=e?.rawHeaders;l!=null&&(l=this.responseHeaders===`raw`?o.parseRawHeaders(u):n),this.runInAsyncScope(i,null,null,{statusCode:t,headers:l,socket:r,opaque:a,context:s})}onResponseError(e,t){let{callback:n,opaque:r}=this;c(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:r})}))}};function u(e,t){if(t===void 0)return new Promise((t,n)=>{u.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new l(e,t),r={...e,method:`CONNECT`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}t.exports=u})),ww=q(((e,t)=>{t.exports.request=vw(),t.exports.stream=bw(),t.exports.pipeline=xw(),t.exports.upgrade=Sw(),t.exports.connect=Cw()})),Tw=q(((e,t)=>{var{UndiciError:n}=Q(),r=Symbol.for(`undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED`);t.exports={MockNotMatchedError:class extends n{constructor(e){super(e),this.name=`MockNotMatchedError`,this.message=e||`The request does not match any registered mock dispatches`,this.code=`UND_MOCK_ERR_MOCK_NOT_MATCHED`}static[Symbol.hasInstance](e){return e&&e[r]===!0}get[r](){return!0}}}})),Ew=q(((e,t)=>{t.exports={kAgent:Symbol(`agent`),kOptions:Symbol(`options`),kFactory:Symbol(`factory`),kDispatches:Symbol(`dispatches`),kDispatchKey:Symbol(`dispatch key`),kDefaultHeaders:Symbol(`default headers`),kDefaultTrailers:Symbol(`default trailers`),kContentLength:Symbol(`content length`),kMockAgent:Symbol(`mock agent`),kMockAgentSet:Symbol(`mock agent set`),kMockAgentGet:Symbol(`mock agent get`),kMockDispatch:Symbol(`mock dispatch`),kClose:Symbol(`close`),kOriginalClose:Symbol(`original agent close`),kOriginalDispatch:Symbol(`original dispatch`),kOrigin:Symbol(`origin`),kIsMockActive:Symbol(`is mock active`),kNetConnect:Symbol(`net connect`),kGetNetConnect:Symbol(`get net connect`),kConnected:Symbol(`connected`),kIgnoreTrailingSlash:Symbol(`ignore trailing slash`),kMockAgentMockCallHistoryInstance:Symbol(`mock agent mock call history name`),kMockAgentRegisterCallHistory:Symbol(`mock agent register mock call history`),kMockAgentAddCallHistoryLog:Symbol(`mock agent add call history log`),kMockAgentIsCallHistoryEnabled:Symbol(`mock agent is call history enabled`),kMockAgentAcceptsNonStandardSearchParameters:Symbol(`mock agent accepts non standard search parameters`),kMockCallHistoryAddLog:Symbol(`mock call history add log`),kTotalDispatchCount:Symbol(`total dispatch count`)}})),Dw=q(((e,t)=>{var{MockNotMatchedError:n}=Tw(),{kDispatches:r,kMockAgent:i,kOriginalDispatch:a,kOrigin:o,kGetNetConnect:s,kTotalDispatchCount:c}=Ew(),{serializePathWithQuery:l,parseHeaders:u}=$(),{STATUS_CODES:d}=J(`node:http`),{types:{isPromise:f}}=J(`node:util`),{InvalidArgumentError:p}=Q(),m=Symbol(`request aborted`);function h(e,t){return typeof e==`string`?e===t:e instanceof RegExp?e.test(t):typeof e==`function`&&e(t)===!0}function g(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLocaleLowerCase(),t]))}function _(e,t){if(Array.isArray(e)){for(let n=0;n<e.length;n+=2)if(e[n].toLocaleLowerCase()===t.toLocaleLowerCase())return e[n+1];return}return typeof e.get==`function`?e.get(t):g(e)[t.toLocaleLowerCase()]}function v(e){let t=e.slice(),n=[];for(let e=0;e<t.length;e+=2)n.push([t[e],t[e+1]]);return Object.fromEntries(n)}function y(e,t){if(typeof e.headers==`function`)return Array.isArray(t)&&(t=v(t)),e.headers(t?g(t):{});if(e.headers===void 0)return!0;if(typeof t!=`object`||typeof e.headers!=`object`)return!1;for(let[n,r]of Object.entries(e.headers))if(!h(r,_(t,n)))return!1;return!0}function b(e){if(typeof e!=`string`)return e;let t=new URLSearchParams(e),n=new URLSearchParams;for(let[e,r]of t.entries()){if(e=e.replace(`[]`,``),/^(['"]).*\1$/.test(r)){n.append(e,r);continue}if(r.includes(`,`)){let t=r.split(`,`);for(let r of t)n.append(e,r);continue}n.append(e,r)}return n}function x(e){if(typeof e!=`string`)return e;let t=e.split(`?`,3);if(t.length!==2)return e;let n=new URLSearchParams(t.pop());return n.sort(),[...t,n.toString()].join(`?`)}function S(e,{path:t,method:n,body:r,headers:i}){let a=h(e.path,t),o=h(e.method,n),s=e.body===void 0||h(e.body,r),c=y(e,i);return a&&o&&s&&c}function C(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):typeof e==`object`?JSON.stringify(e):e?e.toString():``}function w(e,t){let r=t.query?l(t.path,t.query):t.path,i=typeof r==`string`?x(r):r,a=D(i),o=e.filter(({consumed:e})=>!e).filter(({path:e,ignoreTrailingSlash:t})=>t?h(D(x(e)),a):h(x(e),i));if(o.length===0)throw new n(`Mock dispatch not matched for path '${i}'`);if(o=o.filter(({method:e})=>h(e,t.method)),o.length===0)throw new n(`Mock dispatch not matched for method '${t.method}' on path '${i}'`);if(o=o.filter(({body:e})=>e===void 0||h(e,t.body)),o.length===0)throw new n(`Mock dispatch not matched for body '${t.body}' on path '${i}'`);if(o=o.filter(e=>y(e,t.headers)),o.length===0)throw new n(`Mock dispatch not matched for headers '${typeof t.headers==`object`?JSON.stringify(t.headers):t.headers}' on path '${i}'`);return o[0]}function T(e,t,n,r){let i={timesInvoked:0,times:1,persist:!1,consumed:!1,...r},a=typeof n==`function`?{callback:n}:{...n},o={...i,...t,pending:!0,data:{error:null,...a}};return e.push(o),e[c]=(e[c]||0)+1,o}function E(e,t){let n=e.findIndex(e=>e.consumed?S(e,t):!1);n!==-1&&e.splice(n,1)}function D(e){if(typeof e!=`string`)return e;for(;e.endsWith(`/`);)e=e.slice(0,-1);return e.length===0&&(e=`/`),e}function O(e){let{path:t,method:n,body:r,headers:i,query:a}=e;return{path:t,method:n,body:r,headers:i,query:a}}function k(e){let t=Object.keys(e),n=[];for(let r=0;r<t.length;++r){let i=t[r],a=e[i],o=Buffer.from(`${i}`);if(Array.isArray(a))for(let e=0;e<a.length;++e)n.push(o,Buffer.from(`${a[e]}`));else n.push(o,Buffer.from(`${a}`))}return n}function A(e){return d[e]||`unknown`}async function j(e){let t=[];for await(let n of e)t.push(n);return Buffer.concat(t).toString(`utf8`)}function M(e,t){let n=O(e),i=w(this[r],n),a=this[r];i.timesInvoked++;let{timesInvoked:o,times:s}=i;i.consumed=!i.persist&&o>=s,i.pending=o<s;let c=typeof t.onBodySent==`function`||typeof t.onRequestSent==`function`;if(i.data.callback&&(!c||e.body==null)){let{callback:r,...o}=i.data,s=r(e);if(f(s))return s.then(r=>{if(typeof r!=`object`||!r){t.onResponseError(null,new p(`reply options callback must return an object`));return}N(a,i,n,e,t,{...o,...r})},e=>{t.onResponseError(null,e)}),!0;if(typeof s!=`object`||!s)throw new p(`reply options callback must return an object`);return N(a,i,n,e,t,{...o,...s})}return N(a,i,n,e,t)}function N(e,t,n,r,i,a){let{data:o,delay:s}=t,c=a??o;if(c.error!==null)return E(e,n),i.onResponseError(null,c.error),!0;let l=!1,d=null,h={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:e=>{l||(l=!0,d!==null&&(clearTimeout(d),d=null),i.onResponseError?.(h,e))}},g=r,_=e;if(i.onRequestStart?.(h,null),l)return!0;let y=P(r.body,i,h,()=>l);if(f(y))return y.then(e=>{e!==m&&(e!==r.body&&(g={...r,body:e}),b())},e=>h.abort(e)),!0;if(y===m)return!0;y!==r.body&&(g={...r,body:y}),b();function b(){if(c.callback){let{callback:t,...r}=c,a;try{a=t(g)}catch(t){E(e,n),i.onResponseError(null,t);return}if(f(a)){a.then(e=>{if(typeof e!=`object`||!e){i.onResponseError(null,new p(`reply options callback must return an object`));return}x(_,{...r,...e})},e=>{i.onResponseError(null,e)});return}if(typeof a!=`object`||!a)throw new p(`reply options callback must return an object`);x(_,{...r,...a});return}typeof s==`number`&&s>0?d=setTimeout(()=>{d=null,x(_)},s):x(_)}function x(e,t=c){if(l)return;let{statusCode:a,data:o,headers:s,trailers:d}=t,p=Array.isArray(r.headers)?v(r.headers):r.headers,m=typeof o==`function`?o({...g,headers:p}):o;if(f(m))return m.then(n=>x(e,{...t,data:n}));if(l)return;let _=C(m),y=k(s??{}),b=k(d??{});h.rawHeaders=y,h.rawTrailers=b,i.onResponseStart?.(h,a,u(y),A(a)),i.onResponseData?.(h,Buffer.from(_)),i.onResponseEnd?.(h,u(b)),E(e,n)}return!0}function P(e,t,n,r){if(typeof t.onBodySent!=`function`&&typeof t.onRequestSent!=`function`)return e;if(e==null)return L(t,n,r)?e:m;if(e&&typeof e[Symbol.asyncIterator]==`function`)return F(e,t,n,r);if(R(e)){let i=[];for(let a of e)if(r()||(i.push(a),!I(t,n,a)||r()))return m;return L(t,n,r)?i:m}return r()||!I(t,n,e)?m:L(t,n,r)?e:m}async function F(e,t,n,r){let i=[];for await(let a of e)if(r()||(i.push(a),!I(t,n,a)||r()))return m;return L(t,n,r)?{async*[Symbol.asyncIterator](){yield*i}}:m}function I(e,t,n){try{return e.onBodySent?.(n),!0}catch(e){return t.abort(e),!1}}function L(e,t,n){try{return e.onRequestSent?.(),!n()}catch(e){return t.abort(e),!1}}function R(e){return typeof e!=`string`&&!Buffer.isBuffer(e)&&!ArrayBuffer.isView(e)&&typeof e[Symbol.iterator]==`function`}function ee(){let e=this[i],t=this[o],l=this[a];return function(i,a){if(e.isMockActive)try{M.call(this,i,a)}catch(o){if(o.code===`UND_MOCK_ERR_MOCK_NOT_MATCHED`){let u=e[s](),d=this[r][c]||this[r].length,f=`, ${this[r].filter(({consumed:e})=>!e).length} interceptor(s) remaining out of ${d} defined`;if(u===!1)throw new n(`${o.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)${f}`);if(te(u,t))l.call(this,`__mockAgentBodyForDispatch`in i?{...i,body:i.__mockAgentBodyForDispatch}:i,a);else throw new n(`${o.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)${f}`)}else throw o}else l.call(this,i,a)}}function te(e,t){let n=new URL(t);return!!(e===!0||Array.isArray(e)&&e.some(e=>h(e,n.host)))}function ne(e){return typeof e!=`string`&&!(e instanceof URL)?e:e instanceof URL?e.origin:e.toLowerCase()}function re(e){let{agent:t,...n}=e;if(`enableCallHistory`in n&&typeof n.enableCallHistory!=`boolean`)throw new p(`options.enableCallHistory must to be a boolean`);if(`acceptNonStandardSearchParameters`in n&&typeof n.acceptNonStandardSearchParameters!=`boolean`)throw new p(`options.acceptNonStandardSearchParameters must to be a boolean`);if(`ignoreTrailingSlash`in n&&typeof n.ignoreTrailingSlash!=`boolean`)throw new p(`options.ignoreTrailingSlash must to be a boolean`);return n}t.exports={getResponseData:C,getMockDispatch:w,addMockDispatch:T,deleteMockDispatch:E,buildKey:O,generateKeyValues:k,matchValue:h,getResponse:j,getStatusText:A,mockDispatch:M,buildMockDispatch:ee,checkNetConnect:te,buildAndValidateMockOptions:re,getHeaderByName:_,buildHeadersFromArray:v,normalizeSearchParams:b,normalizeOrigin:ne}})),Ow=q(((e,t)=>{var{getResponseData:n,buildKey:r,addMockDispatch:i}=Dw(),{kDispatches:a,kDispatchKey:o,kDefaultHeaders:s,kDefaultTrailers:c,kContentLength:l,kMockDispatch:u,kIgnoreTrailingSlash:d}=Ew(),{InvalidArgumentError:f}=Q(),{serializePathWithQuery:p}=$(),{types:{isPromise:m}}=J(`node:util`),h=class{constructor(e){this[u]=e}delay(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`waitInMs must be a valid integer > 0`);return this[u].delay=e,this}persist(){return this[u].persist=!0,this}times(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`repeatTimes must be a valid integer > 0`);return this[u].times=e,this}},g=class{constructor(e,t){if(typeof e!=`object`)throw new f(`opts must be an object`);if(e.path===void 0)throw new f(`opts.path must be defined`);if(e.method===void 0&&(e.method=`GET`),typeof e.path==`string`){if(e.query)e.path=p(e.path,e.query);else{let t=new URL(e.path,`data://`);e.path=t.pathname+t.search}}typeof e.method==`string`&&(e.method=e.method.toUpperCase()),this[o]=r(e),this[a]=t,this[d]=e.ignoreTrailingSlash??!1,this[s]={},this[c]={},this[l]=!1}createMockScopeDispatchData({statusCode:e,data:t,responseOptions:r}){let i=n(t),a=this[l]?{"content-length":i.length}:{};return{statusCode:e,data:t,headers:{...this[s],...a,...r.headers},trailers:{...this[c],...r.trailers}}}validateReplyParameters(e){if(e.statusCode===void 0)throw new f(`statusCode must be defined`);if(typeof e.responseOptions!=`object`||e.responseOptions===null)throw new f(`responseOptions must be an object`)}reply(e){if(typeof e==`function`){let t=e=>{if(typeof e!=`object`||!e)throw new f(`reply options callback must return an object`);let t={data:``,responseOptions:{},...e};return this.validateReplyParameters(t),{...this.createMockScopeDispatchData(t)}};return new h(i(this[a],this[o],n=>{let r=e(n);return m(r)?r.then(t):t(r)},{ignoreTrailingSlash:this[d]}))}let t={statusCode:e,data:arguments[1]===void 0?``:arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(t);let n=this.createMockScopeDispatchData(t);return new h(i(this[a],this[o],n,{ignoreTrailingSlash:this[d]}))}replyWithError(e){if(e===void 0)throw new f(`error must be defined`);return new h(i(this[a],this[o],{error:e},{ignoreTrailingSlash:this[d]}))}defaultReplyHeaders(e){if(e===void 0)throw new f(`headers must be defined`);return this[s]=e,this}defaultReplyTrailers(e){if(e===void 0)throw new f(`trailers must be defined`);return this[c]=e,this}replyContentLength(){return this[l]=!0,this}};t.exports.MockInterceptor=g,t.exports.MockScope=h})),kw=q(((e,t)=>{var{promisify:n}=J(`node:util`),r=tw(),{buildMockDispatch:i}=Dw(),{kDispatches:a,kMockAgent:o,kClose:s,kOriginalClose:c,kOrigin:l,kOriginalDispatch:u,kConnected:d,kIgnoreTrailingSlash:f}=Ew(),{MockInterceptor:p}=Ow(),m=OC(),{InvalidArgumentError:h}=Q();t.exports=class extends r{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new h(`Argument opts.agent must implement Agent`);super(e,t),this[o]=t.agent,this[l]=e,this[f]=t.ignoreTrailingSlash??!1,this[a]=[],this[d]=1,this[u]=this.dispatch,this[c]=this.close.bind(this),this.dispatch=i.call(this),this.close=this[s]}get[m.kConnected](){return this[d]}intercept(e){return new p(e&&{ignoreTrailingSlash:this[f],...e},this[a])}cleanMocks(){this[a]=[]}async[s](){await n(this[c])(),this[d]=0,this[o][m.kClients].delete(this[l])}}})),Aw=q(((e,t)=>{var{kMockCallHistoryAddLog:n}=Ew(),{InvalidArgumentError:r}=Q();function i(e,t,n,i,a){switch(t.operator){case`OR`:return i.push(...n(e,a)),i;case`AND`:return n(e,i);default:throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`)}}function a(e={}){let t={};if(`operator`in e){if(typeof e.operator!=`string`||e.operator.toUpperCase()!==`OR`&&e.operator.toUpperCase()!==`AND`)throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`);return{...t,operator:e.operator.toUpperCase()}}return t}function o(e){return(t,n=this.logs)=>{if(typeof t==`string`||t==null)return n.filter(n=>n[e]===t);if(t instanceof RegExp)return n.filter(n=>t.test(n[e]));throw new r(`${e} parameter should be one of string, regexp, undefined or null`)}}function s(e){try{let t=new URL(e.path,e.origin);return t.search.length===0&&(t.search=new URLSearchParams(e.query).toString()),t}catch(e){throw new r(`An error occurred when computing MockCallHistoryLog.url`,{cause:e})}}var c=class{constructor(e={}){this.body=e.body,this.headers=e.headers,this.method=e.method;let t=s(e);this.fullUrl=t.toString(),this.origin=t.origin,this.path=t.pathname,this.searchParams=Object.fromEntries(t.searchParams),this.protocol=t.protocol,this.host=t.host,this.port=t.port,this.hash=t.hash}toMap(){return new Map([[`protocol`,this.protocol],[`host`,this.host],[`port`,this.port],[`origin`,this.origin],[`path`,this.path],[`hash`,this.hash],[`searchParams`,this.searchParams],[`fullUrl`,this.fullUrl],[`method`,this.method],[`body`,this.body],[`headers`,this.headers]])}toString(){let e={betweenKeyValueSeparator:`->`,betweenPairSeparator:`|`},t=``;return this.toMap().forEach((n,r)=>{(typeof n==`string`||n==null)&&(t=`${t}${r}${e.betweenKeyValueSeparator}${n}${e.betweenPairSeparator}`),(typeof n==`object`&&n||Array.isArray(n))&&(t=`${t}${r}${e.betweenKeyValueSeparator}${JSON.stringify(n)}${e.betweenPairSeparator}`)}),t.slice(0,-1)}},l=class{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(e){if(typeof e!=`number`)throw new r(`nthCall must be called with a number`);if(!Number.isInteger(e))throw new r(`nthCall must be called with an integer`);if(Math.sign(e)!==1)throw new r(`nthCall must be called with a positive value. use firstCall or lastCall instead`);return this.logs.at(e-1)}filterCalls(e,t){if(this.logs.length===0)return this.logs;if(typeof e==`function`)return this.logs.filter(e);if(e instanceof RegExp)return this.logs.filter(t=>e.test(t.toString()));if(typeof e==`object`&&e){if(Object.keys(e).length===0)return this.logs;let n={operator:`OR`,...a(t)},r=n.operator===`AND`?this.logs:[];return`protocol`in e&&(r=i(e.protocol,n,this.filterCallsByProtocol,r,this.logs)),`host`in e&&(r=i(e.host,n,this.filterCallsByHost,r,this.logs)),`port`in e&&(r=i(e.port,n,this.filterCallsByPort,r,this.logs)),`origin`in e&&(r=i(e.origin,n,this.filterCallsByOrigin,r,this.logs)),`path`in e&&(r=i(e.path,n,this.filterCallsByPath,r,this.logs)),`hash`in e&&(r=i(e.hash,n,this.filterCallsByHash,r,this.logs)),`fullUrl`in e&&(r=i(e.fullUrl,n,this.filterCallsByFullUrl,r,this.logs)),`method`in e&&(r=i(e.method,n,this.filterCallsByMethod,r,this.logs)),[...new Set(r)]}throw new r(`criteria parameter should be one of function, regexp, or object`)}filterCallsByProtocol=o.call(this,`protocol`);filterCallsByHost=o.call(this,`host`);filterCallsByPort=o.call(this,`port`);filterCallsByOrigin=o.call(this,`origin`);filterCallsByPath=o.call(this,`path`);filterCallsByHash=o.call(this,`hash`);filterCallsByFullUrl=o.call(this,`fullUrl`);filterCallsByMethod=o.call(this,`method`);clear(){this.logs=[]}[n](e){let t=new c(e);return this.logs.push(t),t}*[Symbol.iterator](){for(let e of this.calls())yield e}};t.exports.MockCallHistory=l,t.exports.MockCallHistoryLog=c})),jw=q(((e,t)=>{var{promisify:n}=J(`node:util`),r=iw(),{buildMockDispatch:i}=Dw(),{kDispatches:a,kMockAgent:o,kClose:s,kOriginalClose:c,kOrigin:l,kOriginalDispatch:u,kConnected:d,kIgnoreTrailingSlash:f}=Ew(),{MockInterceptor:p}=Ow(),m=OC(),{InvalidArgumentError:h}=Q();t.exports=class extends r{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new h(`Argument opts.agent must implement Agent`);super(e,t),this[o]=t.agent,this[l]=e,this[f]=t.ignoreTrailingSlash??!1,this[a]=[],this[d]=1,this[u]=this.dispatch,this[c]=this.close.bind(this),this.dispatch=i.call(this),this.close=this[s]}get[m.kConnected](){return this[d]}intercept(e){return new p(e&&{ignoreTrailingSlash:this[f],...e},this[a])}cleanMocks(){this[a]=[]}async[s](){await n(this[c])(),this[d]=0,this[o][m.kClients].delete(this[l])}}})),Mw=q(((e,t)=>{var{Transform:n}=J(`node:stream`),{Console:r}=J(`node:console`),i=process.versions.icu?`✅`:`Y `,a=process.versions.icu?`❌`:`N `;t.exports=class{constructor({disableColors:e}={}){this.transform=new n({transform(e,t,n){n(null,e)}}),this.logger=new r({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let t=e.map(({method:e,path:t,data:{statusCode:n},persist:r,times:o,timesInvoked:s,origin:c})=>({Method:e,Origin:c,Path:t,"Status code":n,Persistent:r?i:a,Invocations:s,Remaining:r?1/0:o-s}));return this.logger.table(t),this.transform.read().toString()}}})),Nw=q(((e,t)=>{var{kClients:n}=OC(),r=sw(),{kAgent:i,kMockAgentSet:a,kMockAgentGet:o,kDispatches:s,kIsMockActive:c,kNetConnect:l,kGetNetConnect:u,kOptions:d,kFactory:f,kMockAgentRegisterCallHistory:p,kMockAgentIsCallHistoryEnabled:m,kMockAgentAddCallHistoryLog:h,kMockAgentMockCallHistoryInstance:g,kMockAgentAcceptsNonStandardSearchParameters:_,kMockCallHistoryAddLog:v,kIgnoreTrailingSlash:y}=Ew(),b=kw(),x=jw(),{matchValue:S,normalizeSearchParams:C,buildAndValidateMockOptions:w,normalizeOrigin:T}=Dw(),{InvalidArgumentError:E,UndiciError:D}=Q(),O=FC(),k=Mw(),{MockCallHistory:A}=Aw();t.exports=class extends O{constructor(e={}){super(e);let t=w(e);if(this[l]=!0,this[c]=!0,this[m]=t.enableCallHistory??!1,this[_]=t.acceptNonStandardSearchParameters??!1,this[y]=t.ignoreTrailingSlash??!1,e?.agent&&typeof e.agent.dispatch!=`function`)throw new E(`Argument opts.agent must implement Agent`);let a=e?.agent?e.agent:new r(e);this[i]=a,this[n]=a[n],this[d]=t,this[m]&&this[p]()}get(e){let t=T(e),n=this[y]?t.replace(/\/$/,``):t,r=this[o](n);return r||(r=this[f](n),this[a](n,r)),r}dispatch(e,t){e.origin=T(e.origin);let r=this.get(e.origin);this[h](e);let o=this[_],c={...e};if(c.allowH2===!1){let e=`${c.origin}#http1-only`;if(!this[n].has(e)){let t=this[f](c.origin);t[s]=r[s],this[a](e,t)}}if(o&&c.path){let[e,t]=c.path.split(`?`);c.path=`${e}?${C(t,o)}`}return this[i].dispatch(c,t)}async close(){this.clearCallHistory(),await this[i].close(),this[n].clear()}deactivate(){this[c]=!1}activate(){this[c]=!0}enableNetConnect(e){if(typeof e==`string`||typeof e==`function`||e instanceof RegExp)Array.isArray(this[l])?this[l].push(e):this[l]=[e];else if(e===void 0)this[l]=!0;else throw new E(`Unsupported matcher. Must be one of String|Function|RegExp.`)}disableNetConnect(){this[l]=!1}enableCallHistory(){return this[m]=!0,this}disableCallHistory(){return this[m]=!1,this}getCallHistory(){return this[g]}clearCallHistory(){this[g]!==void 0&&this[g].clear()}get isMockActive(){return this[c]}[p](){this[g]===void 0&&(this[g]=new A)}[h](e){this[m]&&(this[p](),this[g][v](e))}[a](e,t){this[n].set(e,t)}[f](e){let t=Object.assign({agent:this},this[d]);return this[d]&&this[d].connections===1?new b(e,t):new x(e,t)}[o](e){let t=this[n].get(e);if(t)return t;if(typeof e!=`string`){let t=this[f](`http://localhost:9999`);return this[a](e,t),t}for(let[t,r]of Array.from(this[n]))if(r&&typeof t!=`string`&&S(t,e)){let t=this[f](e);return this[a](e,t),t[s]=r[s],t}}[u](){return this[l]}pendingInterceptors(){let e=this[n];return Array.from(e.entries()).flatMap(([e,t])=>t[s].map(t=>({...t,origin:e}))).filter(({pending:e})=>e)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new k}={}){let t=this.pendingInterceptors();if(t.length!==0)throw new D(t.length===1?`1 interceptor is pending:\n\n${e.format(t)}`.trim():`${t.length} interceptors are pending:\n\n${e.format(t)}`.trim())}}})),Pw=q(((e,t)=>{var{InvalidArgumentError:n}=Q(),{runtimeFeatures:r}=YC();function i(e={}){let{ignoreHeaders:t=[],excludeHeaders:n=[],matchHeaders:r=[],caseSensitive:i=!1}=e;return{ignore:new Set(t.map(e=>i?e:e.toLowerCase())),exclude:new Set(n.map(e=>i?e:e.toLowerCase())),match:new Set(r.map(e=>i?e:e.toLowerCase()))}}var a=r.has(`crypto`)?J(`node:crypto`):null,o=a?.hash?e=>a.hash(`sha256`,e,`base64url`):e=>Buffer.from(e).toString(`base64url`);function s(e){return Array.isArray(e)&&!(e.length&1)}function c(e=[]){return e.length===0?()=>!1:function(t){let n;for(let r of e)if(typeof r==`string`){if(n||=t.toLowerCase(),n.includes(r.toLowerCase()))return!0}else if(r instanceof RegExp&&r.test(t))return!0;return!1}}function l(e){let t={};if(!e)return t;if(s(e)){for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];if(r&&i!==void 0){let e=Buffer.isBuffer(r)?r.toString():r,n=Buffer.isBuffer(i)?i.toString():i;t[e.toLowerCase()]=n}}return t}if(e&&typeof e==`object`)for(let[n,r]of Object.entries(e))n&&typeof n==`string`&&(t[n.toLowerCase()]=Array.isArray(r)?r.join(`, `):String(r));return t}var u=[`record`,`playback`,`update`];function d(e){if(!u.includes(e))throw new n(`Invalid snapshot mode: ${e}. Must be one of: ${u.join(`, `)}`)}t.exports={createHeaderFilters:i,hashId:o,isUndiciHeaders:s,normalizeHeaders:l,isUrlExcludedFactory:c,validateSnapshotMode:d}})),Fw=q(((e,t)=>{var{writeFile:n,readFile:r,mkdir:i}=J(`node:fs/promises`),{dirname:a,resolve:o}=J(`node:path`),{setTimeout:s,clearTimeout:c}=J(`node:timers`),{InvalidArgumentError:l,UndiciError:u}=Q(),{hashId:d,isUrlExcludedFactory:f,normalizeHeaders:p,createHeaderFilters:m}=Pw();function h(e,t,n){if(t===!1)return`${e.origin}${e.pathname}`;if(n){let t=String(n(e.searchParams)??``);return t?`${e.origin}${e.pathname}?${t}`:`${e.origin}${e.pathname}`}return e.toString()}function g(e,t,n){return t===!1?``:n?String(n(e)??``):e?String(e):``}function _(e,t,n={}){let r=new URL(e.path,e.origin),i=e._normalizedHeaders||p(e.headers);return e._normalizedHeaders||=i,{method:e.method||`GET`,url:h(r,n.matchQuery,n.normalizeQuery),headers:v(i,t,n),body:g(e.body,n.matchBody,n.normalizeBody)}}function v(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{ignore:a,exclude:o,match:s}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();o.has(e)||a.has(e)||(s.size===0||s.has(e))&&(i[e]=n)}return i}function y(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{exclude:a}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();a.has(e)||(i[e]=n)}return i}function b(e){let t=[e.method,e.url];if(e.headers&&typeof e.headers==`object`){let n=Object.keys(e.headers).sort();for(let r of n){let n=Array.isArray(e.headers[r])?e.headers[r]:[e.headers[r]];t.push(r);for(let e of n.sort())t.push(String(e))}}return t.push(e.body),d(t.join(`|`))}t.exports={SnapshotRecorder:class{#e;#t;#n=new Map;#r;#i=1/0;#a=!1;#o;constructor(e={}){this.#r=e.snapshotPath,this.#i=e.maxSnapshots||1/0,this.#a=e.autoFlush||!1,this.flushInterval=e.flushInterval||3e4,this._flushTimer=null,this.matchOptions={matchHeaders:e.matchHeaders||[],ignoreHeaders:e.ignoreHeaders||[],excludeHeaders:e.excludeHeaders||[],matchBody:e.matchBody!==!1,normalizeBody:e.normalizeBody||void 0,matchQuery:e.matchQuery!==!1,normalizeQuery:e.normalizeQuery||void 0,caseSensitive:e.caseSensitive||!1},this.#o=m(this.matchOptions),this.shouldRecord=e.shouldRecord||(()=>!0),this.shouldPlayback=e.shouldPlayback||(()=>!0),this.#t=f(e.excludeUrls),this.#a&&this.#r&&this.#s()}async record(e,t){if(!this.shouldRecord(e)||this.isUrlExcluded(e))return;let n=_(e,this.#o,this.matchOptions),r=b(n),i=p(t.headers),a={statusCode:t.statusCode,headers:y(i,this.#o,this.matchOptions),body:Buffer.isBuffer(t.body)?t.body.toString(`base64`):Buffer.from(String(t.body||``)).toString(`base64`),trailers:t.trailers};if(this.#n.size>=this.#i&&!this.#n.has(r)){let e=this.#n.keys().next().value;this.#n.delete(e)}let o=this.#n.get(r);o&&o.responses?(o.responses.push(a),o.timestamp=new Date().toISOString()):this.#n.set(r,{request:n,responses:[a],callCount:0,timestamp:new Date().toISOString()}),this.#a&&this.#r&&this.#l()}isUrlExcluded(e){let t=new URL(e.path,e.origin).toString();return this.#t(t)}findSnapshot(e){if(!this.shouldPlayback(e)||this.isUrlExcluded(e))return;let t=b(_(e,this.#o,this.matchOptions)),n=this.#n.get(t);if(!n)return;let r=n.callCount||0,i=Math.min(r,n.responses.length-1);return n.callCount=r+1,{...n,response:n.responses[i]}}async loadSnapshots(e){let t=e||this.#r;if(!t)throw new l(`Snapshot path is required`);try{let e=await r(o(t),`utf8`),n=JSON.parse(e);if(Array.isArray(n)){this.#n.clear();for(let{hash:e,snapshot:t}of n)this.#n.set(e,t)}else this.#n=new Map(Object.entries(n))}catch(e){if(e.code===`ENOENT`)this.#n.clear();else throw new u(`Failed to load snapshots from ${t}`,{cause:e})}}async saveSnapshots(e){let t=e||this.#r;if(!t)throw new l(`Snapshot path is required`);let r=o(t);await i(a(r),{recursive:!0});let s=Array.from(this.#n.entries()).map(([e,t])=>({hash:e,snapshot:t}));await n(r,JSON.stringify(s,null,2),{flush:!0})}clear(){this.#n.clear()}getSnapshots(){return Array.from(this.#n.values())}size(){return this.#n.size}resetCallCounts(){for(let e of this.#n.values())e.callCount=0}deleteSnapshot(e){let t=b(_(e,this.#o,this.matchOptions));return this.#n.delete(t)}getSnapshotInfo(e){let t=b(_(e,this.#o,this.matchOptions)),n=this.#n.get(t);return n?{hash:t,request:n.request,responseCount:n.responses?n.responses.length:+!!n.response,callCount:n.callCount||0,timestamp:n.timestamp}:null}replaceSnapshots(e){if(this.#n.clear(),Array.isArray(e))for(let{hash:t,snapshot:n}of e)this.#n.set(t,n);else e&&typeof e==`object`&&(this.#n=new Map(Object.entries(e)))}#s(){return this.#l()}#c(){this.#e&&=(c(this.#e),this.saveSnapshots().catch(()=>{}),null)}#l(){this.#e=s(()=>{this.saveSnapshots().catch(()=>{}),this.#a?this.#e?.refresh():this.#e=null},1e3)}destroy(){this.#c(),this.#e&&=(c(this.#e),null)}async close(){this.#r&&this.#n.size!==0&&await this.saveSnapshots(),this.destroy()}},formatRequestKey:_,createRequestHash:b,filterHeadersForMatching:v,filterHeadersForStorage:y,createHeaderFilters:m}})),Iw=q(((e,t)=>{var n=sw(),r=Nw(),{SnapshotRecorder:i}=Fw(),{InvalidArgumentError:a,UndiciError:o}=Q(),s=$(),{validateSnapshotMode:c}=Pw(),l=Symbol(`kSnapshotRecorder`),u=Symbol(`kSnapshotMode`),d=Symbol(`kSnapshotPath`),f=Symbol(`kSnapshotLoaded`),p=Symbol(`kRealAgent`),m=!1;t.exports=class extends r{constructor(e={}){m||=(process.emitWarning(`SnapshotAgent is experimental and subject to change`,`ExperimentalWarning`),!0);let{mode:t=`record`,snapshotPath:r=null,...o}=e;if(super(o),c(t),(t===`playback`||t===`update`)&&!r)throw new a(`snapshotPath is required when mode is '${t}'`);this[u]=t,this[d]=r,this[l]=new i({snapshotPath:this[d],mode:this[u],maxSnapshots:e.maxSnapshots,autoFlush:e.autoFlush,flushInterval:e.flushInterval,matchHeaders:e.matchHeaders,ignoreHeaders:e.ignoreHeaders,excludeHeaders:e.excludeHeaders,matchBody:e.matchBody,normalizeBody:e.normalizeBody,matchQuery:e.matchQuery,normalizeQuery:e.normalizeQuery,caseSensitive:e.caseSensitive,shouldRecord:e.shouldRecord,shouldPlayback:e.shouldPlayback,excludeUrls:e.excludeUrls}),this[f]=!1,(this[u]===`record`||this[u]===`update`||this[u]===`playback`&&e.excludeUrls&&e.excludeUrls.length>0)&&(this[p]=new n(e)),(this[u]===`playback`||this[u]===`update`)&&this[d]&&this.loadSnapshots().catch(()=>{})}dispatch(e,t){let n=this[u];if(this[l].isUrlExcluded(e))return this[p].dispatch(e,t);if(n===`playback`||n===`update`){if(!this[f])return this.#e(e,t);let r=this[l].findSnapshot(e);if(r)return this.#n(r,t);if(n===`update`)return this.#t(e,t);{let n=new o(`No snapshot found for ${e.method||`GET`} ${e.path}`);if(t.onResponseError){t.onResponseError(null,n);return}throw n}}if(n===`record`)return this.#t(e,t)}async#e(e,t){return await this.loadSnapshots(),this.dispatch(e,t)}#t(e,t){let n={statusCode:null,headers:{},trailers:{},body:[]},r=this;return this[p].dispatch(e,{onRequestStart(e,n){return t.onRequestStart(e,{...n,history:this.history})},onRequestUpgrade(e,n,r,i){return t.onRequestUpgrade(e,n,r,i)},onResponseStart(e,r,i,a){return n.statusCode=r,n.headers=i,t.onResponseStart(e,r,i,a)},onResponseData(e,r){return n.body.push(r),t.onResponseData(e,r)},onResponseEnd(i,a){n.trailers=a;let o=Buffer.concat(n.body);r[l].record(e,{statusCode:n.statusCode,headers:n.headers,body:o,trailers:n.trailers}).then(()=>t.onResponseEnd(i,a)).catch(e=>t.onResponseError(i,e))},onResponseError(e,n){return t.onResponseError(e,n)}})}#n(e,t){try{let{response:n}=e,r={rawHeaders:n.headers?s.toRawHeaders(n.headers):[],rawTrailers:n.trailers?s.toRawHeaders(n.trailers):[],pause(){},resume(){},abort(e){this.aborted=!0,this.reason=e},aborted:!1,paused:!1};t.onRequestStart(r),t.onResponseStart(r,n.statusCode,n.headers,n.statusMessage);let i=Buffer.from(n.body,`base64`);t.onResponseData(r,i),t.onResponseEnd(r,n.trailers)}catch(e){t.onResponseError?.(null,e)}}async loadSnapshots(e){await this[l].loadSnapshots(e||this[d]),this[f]=!0,this[u]===`playback`&&this.#r()}async saveSnapshots(e){return this[l].saveSnapshots(e||this[d])}#r(){for(let e of this[l].getSnapshots()){let{request:t,responses:n,response:r}=e,i=new URL(t.url),a=this.get(i.origin),o=n?n[0]:r;o&&a.intercept({path:i.pathname+i.search,method:t.method,headers:t.headers,body:t.body}).reply(o.statusCode,o.body,{headers:o.headers,trailers:o.trailers}).persist()}}getRecorder(){return this[l]}getMode(){return this[u]}clearSnapshots(){this[l].clear()}resetCallCounts(){this[l].resetCallCounts()}deleteSnapshot(e){return this[l].deleteSnapshot(e)}getSnapshotInfo(e){return this[l].getSnapshotInfo(e)}replaceSnapshots(e){this[l].replaceSnapshots(e)}async close(){this[u]===`playback`?this[l].destroy():await this[l].close(),await this[p]?.close(),await super.close()}}})),Lw=q(((e,t)=>{var n=Symbol.for(`undici.globalDispatcher.2`),r=Symbol.for(`undici.globalDispatcher.1`),{InvalidArgumentError:i}=Q(),a=sw(),o=cw(),s;l()===void 0&&c(new a);function c(e){if(!e||typeof e.dispatch!=`function`)throw new i(`Argument agent must implement Agent`);try{Object.defineProperty(globalThis,n,{value:e,writable:!0,enumerable:!1,configurable:!1})}catch(t){if(t instanceof TypeError){s=e;return}throw t}try{let t=e instanceof o?e:new o(e);Object.defineProperty(globalThis,r,{value:t,writable:!0,enumerable:!1,configurable:!1})}catch(e){if(!(e instanceof TypeError))throw e}}function l(){return globalThis[n]??s}t.exports={setGlobalDispatcher:c,getGlobalDispatcher:l,installedExports:[`fetch`,`Headers`,`Response`,`Request`,`FormData`,`WebSocket`,`CloseEvent`,`ErrorEvent`,`MessageEvent`,`EventSource`]}})),Rw=q(((e,t)=>{var n=J(`node:assert`);t.exports=class{#e;#t=!1;#n=!1;#r=!1;constructor(e){if(typeof e!=`object`||!e)throw TypeError(`handler must be an object`);this.#e=e}onRequestStart(...e){this.#e.onRequestStart?.(...e)}onRequestUpgrade(...e){return n(!this.#t),n(!this.#n),this.#e.onRequestUpgrade?.(...e)}onResponseStart(...e){return n(!this.#t),n(!this.#n),n(!this.#r),this.#r=!0,this.#e.onResponseStart?.(...e)}onResponseData(...e){return n(!this.#t),n(!this.#n),this.#e.onResponseData?.(...e)}onResponseEnd(...e){return n(!this.#t),n(!this.#n),this.#t=!0,this.#e.onResponseEnd?.(...e)}onResponseError(...e){return this.#n=!0,this.#e.onResponseError?.(...e)}onBodySent(...e){return this.#e.onBodySent?.(...e)}onRequestSent(...e){return this.#e.onRequestSent?.(...e)}}})),zw=q(((e,t)=>{var n=$(),r=J(`node:assert`),{InvalidArgumentError:i}=Q(),{kRequestOrigin:a}=OC(),o=[300,301,302,303,307,308],s=()=>{},c=class e{static buildDispatch(t,n){if(n!=null&&(!Number.isInteger(n)||n<0))throw new i(`maxRedirections must be a positive number`);let r=t.dispatch.bind(t);return(t,i)=>r(t,new e(r,n,t,i))}constructor(e,t,r,a){if(t!=null&&(!Number.isInteger(t)||t<0))throw new i(`maxRedirections must be a positive number`);if(r.throwOnMaxRedirect!=null&&typeof r.throwOnMaxRedirect!=`boolean`)throw new i(`throwOnMaxRedirect must be a boolean`);this.dispatch=e,this.location=null;let{maxRedirections:o,stripHeadersOnRedirect:s,stripHeadersOnCrossOriginRedirect:c,...l}=r;this.opts=l,this.opts.body=n.wrapRequestBody(this.opts.body),this.stripHeadersOnRedirect=u(s,`stripHeadersOnRedirect`),this.stripHeadersOnCrossOriginRedirect=u(c,`stripHeadersOnCrossOriginRedirect`),this.maxRedirections=t,this.handler=a,this.history=[]}onRequestStart(e,t){this.handler.onRequestStart?.(e,{...t,history:this.history})}onBodySent(e){this.handler.onBodySent?.(e)}onRequestSent(){this.handler.onRequestSent?.()}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,r,c){if(t<200){this.handler.onResponseStart?.(e,t,r,c);return}if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error(`max redirects`);let l=t===303;(t===301||t===302)&&this.opts.method===`POST`&&(this.opts.method=`GET`,n.isStream(this.opts.body)&&n.destroy(this.opts.body.on(`error`,s)),this.opts.body=null,l=!0),t===303&&this.opts.method!==`HEAD`&&(this.opts.method=`GET`,n.isStream(this.opts.body)&&n.destroy(this.opts.body.on(`error`,s)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||n.isDisturbed(this.opts.body)||o.indexOf(t)===-1?null:r.location;let u=this.opts[a]===void 0?this.opts.origin:this.opts[a];if(u&&this.history.push(new URL(this.opts.path,u)),!this.location){this.handler.onResponseStart?.(e,t,r,c);return}let f=u?new URL(this.opts.path,u):void 0,{origin:p,pathname:m,search:h}=n.parseURL(new URL(this.location,f)),g=h?`${m}${h}`:m,_=`${p}${g}`;for(let e of this.history)if(e.toString()===_)throw new i(`Redirect loop detected. Cannot redirect to ${p}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=d(this.opts.headers,l,u!==p,this.stripHeadersOnRedirect,this.stripHeadersOnCrossOriginRedirect),this.opts.path=g,this.opts.origin=p,this.opts[a]=p,this.opts.query=null}onResponseData(e,t){this.location||this.handler.onResponseData?.(e,t)}onResponseEnd(e,t){this.location?this.dispatch(this.opts,this):this.handler.onResponseEnd(e,t)}onResponseError(e,t){this.handler.onResponseError?.(e,t)}};function l(e,t,r,i,a){let o=n.headerNameToString(e);return o===`host`||i?.has(o)||r&&a?.has(o)||t&&o.startsWith(`content-`)?!0:r?o===`authorization`||o===`cookie`||o===`proxy-authorization`:!1}function u(e,t){if(e==null)return null;if(!Array.isArray(e))throw new i(`${t} must be an array`);let r=new Set;for(let a of e){if(typeof a!=`string`)throw new i(`${t} must contain header names`);r.add(n.headerNameToString(a))}return r}function d(e,t,i,a,o){let s=[];if(Array.isArray(e))for(let n=0;n<e.length;n+=2)l(e[n],t,i,a,o)||s.push(e[n],e[n+1]);else if(e&&typeof e==`object`){let r=n.hasSafeIterator(e)?e:Object.entries(e);for(let[e,n]of r)l(e,t,i,a,o)||s.push(e,n)}else r(e==null,`headers must be an object or an array`);return s}t.exports=c})),Bw=q(((e,t)=>{var n=zw();function r({maxRedirections:e,throwOnMaxRedirect:t,stripHeadersOnRedirect:r,stripHeadersOnCrossOriginRedirect:i}={}){return a=>function(o,s){let{maxRedirections:c=e,throwOnMaxRedirect:l=t,stripHeadersOnRedirect:u=r,stripHeadersOnCrossOriginRedirect:d=i,...f}=o;if(c==null||c===0)return a(o,s);let p={...f,throwOnMaxRedirect:l,stripHeadersOnRedirect:u,stripHeadersOnCrossOriginRedirect:d};return a(p,new n(a,c,p,s))}}t.exports=r})),Vw=q(((e,t)=>{var n=Rw(),{ResponseError:r}=Q(),i=class extends n{#e;#t;#n;#r;#i;constructor(e,{handler:t}){super(t)}#a(e){return(this.#t??``).indexOf(e)===0}onRequestStart(e,t){return this.#e=0,this.#t=null,this.#n=null,this.#r=null,this.#i=``,super.onRequestStart(e,t)}onResponseStart(e,t,n,r){if(this.#e=t,this.#r=n,this.#t=n[`content-type`],this.#e<400)return super.onResponseStart(e,t,n,r);(this.#a(`application/json`)||this.#a(`text/plain`))&&(this.#n=new TextDecoder(`utf-8`))}onResponseData(e,t){if(this.#e<400)return super.onResponseData(e,t);this.#i+=this.#n?.decode(t,{stream:!0})??``}onResponseEnd(e,t){if(this.#e>=400){if(this.#i+=this.#n?.decode(void 0,{stream:!1})??``,this.#a(`application/json`))try{this.#i=JSON.parse(this.#i)}catch{}let t,n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{t=new r(`Response Error`,this.#e,{body:this.#i,headers:this.#r})}finally{Error.stackTraceLimit=n}super.onResponseError(e,t)}else super.onResponseEnd(e,t)}onResponseError(e,t){super.onResponseError(e,t)}};t.exports=()=>e=>function(t,n){return e(t,new i(t,{handler:n}))}})),Hw=q(((e,t)=>{var n=mw();t.exports=e=>t=>function(r,i){return t(r,new n({...r,retryOptions:{...e,...r.retryOptions}},{handler:i,dispatch:t}))}})),Uw=q(((e,t)=>{var{InvalidArgumentError:n,RequestAbortedError:r}=Q(),i=Rw(),a=class extends i{#e=1048576;#t=!1;#n=0;aborted=!1;reason=!1;constructor({maxSize:e,signal:t},r){if(e!=null&&(!Number.isFinite(e)||e<1))throw new n(`maxSize must be a number greater than 0`);super(r),this.#e=e??this.#e}#r(e){this.aborted=!0,this.reason=e}onRequestStart(e,t){return e.abort=this.#r.bind(this),super.onRequestStart(e,t)}onResponseStart(e,t,n,i){let a=n[`content-length`];if(a!=null&&a>this.#e)throw new r(`Response size (${a}) larger than maxSize (${this.#e})`);return this.aborted===!0||super.onResponseStart(e,t,n,i)}onResponseError(e,t){super.onResponseError(e,this.aborted===!0?this.reason:t)}onResponseData(e,t){if(this.#n+=t.length,this.#n>this.#e)throw new r(`Response size (${this.#n}) larger than maxSize (${this.#e})`);return this.#n===this.#e&&(this.#t=!0),!0}onResponseEnd(e,t){if(this.aborted===!0){super.onResponseError(e,this.reason);return}super.onResponseEnd(e,this.#t?{}:t)}};function o({maxSize:e}={maxSize:1048576}){return t=>function(n,r){let{dumpMaxSize:i=e}=n;return t(n,new a({maxSize:i,signal:n.signal},r))}}t.exports=o})),Ww=q(((e,t)=>{var{isIP:n}=J(`node:net`),{lookup:r}=J(`node:dns`),i=Rw(),{InvalidArgumentError:a,InformationalError:o}=Q(),{kRequestOrigin:s}=OC(),c=2**31-1;function l(e){let t=Object.getPrototypeOf(e);return Object.hasOwn(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function u(e){return typeof e==`string`&&e.toLowerCase()===`host`}function d(e){if(e==null)return null;if(Array.isArray(e)){if(e.length===0||!Array.isArray(e[0]))return e;let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}if(typeof e==`object`&&l(e)){let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}return e}function f(e){if(e==null)return!1;if(Array.isArray(e)){if(e.length===0)return!1;for(let t=0;t<e.length;t+=2)if(u(e[t]))return!0;return!1}if(typeof e==`object`){for(let t in e)if(u(t))return!0}return!1}function p(e,t){let n=d(t);return f(n)?n:Array.isArray(n)?[`host`,e,...n]:n&&typeof n==`object`?{host:e,...n}:{host:e}}var m=class{#e=0;#t=new Map;constructor(e){this.#e=e.maxItems}get size(){return this.#t.size}get(e){return this.#t.get(e)??null}set(e,t){this.#t.set(e,t)}delete(e){this.#t.delete(e)}full(){return this.size>=this.#e}},h=class{#e=0;#t=0;dualStack=!0;affinity=null;lookup=null;pick=null;storage=null;constructor(e){this.#e=e.maxTTL,this.#t=e.maxItems,this.dualStack=e.dualStack,this.affinity=e.affinity,this.lookup=e.lookup??this.#n,this.pick=e.pick??this.#r,this.storage=e.storage??new m(e)}runLookup(e,t,n){let r=this.storage.get(e.hostname);if(r==null&&this.storage.full()){n(null,e);return}let i={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...t.dns,maxTTL:this.#e,maxItems:this.#t};if(r==null)this.lookup(e,i,(t,r)=>{if(t||r==null||r.length===0){n(t??new o(`No DNS entries found`));return}this.setRecords(e,r);let a=this.storage.get(e.hostname),s=this.pick(e,a,i.affinity),c;c=typeof s.port==`number`?`:${s.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${s.family===6?`[${s.address}]`:s.address}${c}`))});else{let a=this.pick(e,r,i.affinity);if(a==null){this.storage.delete(e.hostname),this.runLookup(e,t,n);return}let o;o=typeof a.port==`number`?`:${a.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${o}`))}}#n(e,t,n){r(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:`ipv4first`},(e,t)=>{if(e)return n(e);let r=new Map;for(let e of t)r.set(`${e.address}:${e.family}`,e);n(null,r.values())})}#r(e,t,n){let r=null,{records:i,offset:a}=t,o;if(this.dualStack?(n??(a==null||a===c?(t.offset=0,n=4):(t.offset++,n=(t.offset&1)==1?6:4)),o=i[n]!=null&&i[n].ips.length>0?i[n]:i[n===4?6:4]):o=i[n],o==null||o.ips.length===0)return r;o.offset==null||o.offset===c?o.offset=0:o.offset++;let s=o.offset%o.ips.length;return r=o.ips[s]??null,r==null?r:Date.now()-r.timestamp>r.ttl?(o.ips.splice(s,1),this.pick(e,t,n)):r}pickFamily(e,t){let n=this.storage.get(e.hostname)?.records;if(!n)return null;let r=n[t];if(!r)return null;r.offset==null||r.offset===c?r.offset=0:r.offset++;let i=r.offset%r.ips.length,a=r.ips[i]??null;return a==null||Date.now()-a.timestamp>a.ttl&&r.ips.splice(i,1),a}setRecords(e,t){let n=Date.now(),r={records:{4:null,6:null}},i=this.#e;for(let e of t){e.timestamp=n,typeof e.ttl==`number`?(e.ttl=Math.min(e.ttl,this.#e),i=Math.min(i,e.ttl)):e.ttl=this.#e;let t=r.records[e.family]??{ips:[]};t.ips.push(e),r.records[e.family]=t}this.storage.set(e.hostname,r,{ttl:i})}deleteRecords(e){this.storage.delete(e.hostname)}getHandler(e,t){return new g(this,e,t)}},g=class extends i{#e=null;#t=null;#n=null;#r=null;#i=null;#a=!0;constructor(e,{origin:t,handler:n,dispatch:r,newOrigin:i},a){super(n),this.#r=t,this.#i=i,this.#t={...a},this.#e=e,this.#n=r}onResponseError(e,t){switch(t.code){case`ETIMEDOUT`:case`ECONNREFUSED`:if(this.#e.dualStack){if(!this.#a){super.onResponseError(e,t);return}this.#a=!1;let n=this.#i.hostname[0]===`[`?4:6,r=this.#e.pickFamily(this.#r,n);if(r==null){super.onResponseError(e,t);return}let i;i=typeof r.port==`number`?`:${r.port}`:this.#r.port===``?``:`:${this.#r.port}`;let a={...this.#t,origin:`${this.#r.protocol}//${r.family===6?`[${r.address}]`:r.address}${i}`,[s]:this.#t[s]===void 0?this.#r:this.#t[s],headers:p(this.#r.host,this.#t.headers)};this.#n(a,this);return}super.onResponseError(e,t);break;case`ENOTFOUND`:this.#e.deleteRecords(this.#r),super.onResponseError(e,t);break;default:super.onResponseError(e,t)}}};t.exports=e=>{if(e?.maxTTL!=null&&(typeof e?.maxTTL!=`number`||e?.maxTTL<0))throw new a(`Invalid maxTTL. Must be a positive number`);if(e?.maxItems!=null&&(typeof e?.maxItems!=`number`||e?.maxItems<1))throw new a(`Invalid maxItems. Must be a positive number and greater than zero`);if(e?.affinity!=null&&e?.affinity!==4&&e?.affinity!==6)throw new a(`Invalid affinity. Must be either 4 or 6`);if(e?.dualStack!=null&&typeof e?.dualStack!=`boolean`)throw new a(`Invalid dualStack. Must be a boolean`);if(e?.lookup!=null&&typeof e?.lookup!=`function`)throw new a(`Invalid lookup. Must be a function`);if(e?.pick!=null&&typeof e?.pick!=`function`)throw new a(`Invalid pick. Must be a function`);if(e?.storage!=null&&(typeof e?.storage?.get!=`function`||typeof e?.storage?.set!=`function`||typeof e?.storage?.full!=`function`||typeof e?.storage?.delete!=`function`))throw new a(`Invalid storage. Must be a object with methods: { get, set, full, delete }`);let t=e?.dualStack??!0,r;r=t?e?.affinity??null:e?.affinity??4;let i=new h({maxTTL:e?.maxTTL??1e4,lookup:e?.lookup??null,pick:e?.pick??null,dualStack:t,affinity:r,maxItems:e?.maxItems??1/0,storage:e?.storage});return e=>function(t,r){if(t.origin==null)return e(t,r);let a=t.origin.constructor===URL?t.origin:new URL(t.origin);return n(a.hostname)===0?(i.runLookup(a,t,(n,o)=>{if(n)return r.onResponseError(null,n);e({...t,servername:a.hostname,origin:o.origin,[s]:t[s]===void 0?a:t[s],headers:p(a.host,t.headers)},i.getHandler({origin:a,dispatch:e,handler:r,newOrigin:o},t))}),!0):e(t,r)}}})),Gw=q(((e,t)=>{var{safeHTTPMethods:n,pathHasQueryOrFragment:r,hasSafeIterator:i,isValidHTTPToken:a}=$(),{serializePathWithQuery:o}=$(),{kRequestOrigin:s}=OC(),c=2147483647,l=[`no-store`,`private`,`no-cache`],u=Symbol(`invalid cache-control directives`);function d(e){return e.replace(/^[\t ]+|[\t ]+$/g,``)}function f(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function p(e){return e.replace(/^[\t ]+/,``)}function m(e){return e.replace(/[\t ]+$/,``)}function h(e,t){let n=!1;for(let r=t;r<e.length;r++)if(n)n=!1;else if(e[r]===`\\`)n=!0;else if(e[r]===`"`)return r;return-1}function g(e){let t=[],n=0,r=-1,i=!1,a=!1;for(let o=0;o<e.length;o++)i?a?a=!1:e[o]===`\\`?a=!0:e[o]===`"`&&(i=!1,r=-1):e[o]===`"`?(i=!0,r=o):e[o]===`,`&&(t.push({value:e.substring(n,o),fromMalformedQuote:!1}),n=o+1);if(!i)return t.push({value:e.substring(n),fromMalformedQuote:!1}),t;let o=e.substring(n),s=r-n,c=0;for(let e=0;e<o.length;e++)o[e]===`,`&&(t.push({value:o.substring(c,e),fromMalformedQuote:c>s}),c=e+1);return t.push({value:o.substring(c),fromMalformedQuote:c>s}),t}function _(e,t){let n=e[u];n===void 0&&(n=new Set,Object.defineProperty(e,u,{value:n})),n.add(t)}function v(e,t){return e[u]?.has(t)===!0}function y(e){for(let t of l)if(e.startsWith(t)&&e.length>t.length&&!a(e[t.length]))return t;let t=``,n=!1;for(let r=0;r<e.length;r++)a(e[r])?t+=e[r]:n=!0;if(n&&f(l,t))return t}function b(e){let t=e[s]===void 0?e.origin:e[s];return typeof t==`string`||t instanceof URL?t:null}function x(e,t){let n=b(e);if(t===void 0)return n;if(t===null)return null;if(n)try{if(new URL(n).origin!==t)return null}catch{return t}return t}function S(e,t=b(e)){if(!t)throw Error(`opts.origin is undefined`);let n=e.path||`/`;return e.query&&!r(n)&&(n=o(n,e.query)),{origin:t.toString(),method:e.method,path:n,headers:e.headers}}function C(e,t,n){let r=t.toLowerCase(),i=e[r],a=Array.isArray(n)?n:[n];i===void 0?e[r]=Array.isArray(n)?n.slice():n:Array.isArray(i)?i.push(...a):e[r]=[i,...a]}function w(e){let t;if(e.headers==null)t={};else if(typeof e.headers==`object`){if(t={},i(e.headers)){if(Array.isArray(e.headers)){let n=e.headers[0];if(Array.isArray(n))for(let n of e.headers){if(!Array.isArray(n))throw Error(`opts.headers is not a valid header map`);let[e,r]=n;if(typeof e!=`string`||typeof r!=`string`)throw Error(`opts.headers is not a valid header map`);C(t,e,r)}else{let n=e.headers.length;if(n%2!=0)throw Error(`opts.headers is not a valid header map`);for(let r=0;r<n;r+=2){let n=e.headers[r],i=e.headers[r+1];if(typeof n!=`string`||typeof i!=`string`&&!Array.isArray(i))throw Error(`opts.headers is not a valid header map`);if(typeof i==`string`)C(t,n,i);else{let e=[];for(let t=0;t<i.length;t++){let n=i[t];e.push(typeof n==`string`?n:n.toString(`latin1`))}C(t,n,e)}}}}else for(let n of e.headers){if(!Array.isArray(n))throw Error(`opts.headers is not a valid header map`);let[e,r]=n;if(typeof e!=`string`||typeof r!=`string`)throw Error(`opts.headers is not a valid header map`);C(t,e,r)}}else for(let n of Object.keys(e.headers))C(t,n,e.headers[n])}else throw Error(`opts.headers is not an object`);return t}function T(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);for(let t of[`origin`,`method`,`path`])if(typeof e[t]!=`string`)throw TypeError(`expected key.${t} to be string, got ${typeof e[t]}`);if(e.headers!==void 0&&typeof e.headers!=`object`)throw TypeError(`expected headers to be object, got ${typeof e}`)}function E(e){if(typeof e!=`object`)throw TypeError(`expected value to be object, got ${typeof e}`);for(let t of[`statusCode`,`cachedAt`,`staleAt`,`deleteAt`])if(typeof e[t]!=`number`)throw TypeError(`expected value.${t} to be number, got ${typeof e[t]}`);if(typeof e.statusMessage!=`string`)throw TypeError(`expected value.statusMessage to be string, got ${typeof e.statusMessage}`);if(e.headers!=null&&typeof e.headers!=`object`)throw TypeError(`expected value.rawHeaders to be object, got ${typeof e.headers}`);if(e.vary!==void 0&&typeof e.vary!=`object`)throw TypeError(`expected value.vary to be object, got ${typeof e.vary}`);if(e.etag!==void 0&&typeof e.etag!=`string`)throw TypeError(`expected value.etag to be string, got ${typeof e.etag}`)}function D(e){let t={},n=new Set,r=new Set,i=g(Array.isArray(e)?e.join(`,`):e);for(let e=0;e<i.length;e++){let o=i[e],s=o.value.toLowerCase(),l=o.fromMalformedQuote,u=s.indexOf(`=`),f,g,v=!1,b=!1;if(u!==-1){let e=s.substring(0,u),t=s.substring(u+1);v=m(e)!==e,b=p(t)!==t,f=d(e),g=p(t)}else f=d(s);let x=y(f);if(x!==void 0){t[x]=!0;continue}switch(f){case`min-fresh`:case`max-stale`:case`max-age`:case`s-maxage`:case`stale-while-revalidate`:case`stale-if-error`:{if(l||n.has(f))continue;if(g===void 0||v||b){delete t[f],n.add(f),_(t,f);continue}if(g.length>=2&&g[0]===`"`&&g[g.length-1]===`"`&&(g=g.substring(1,g.length-1)),!/^[0-9]+$/.test(g)){delete t[f],n.add(f),_(t,f);continue}let e=Math.min(parseInt(g,10),c);f===`min-fresh`?(!(f in t)||t[f]<e)&&(t[f]=e):(!(f in t)||t[f]>e)&&(t[f]=e);break}case`private`:case`no-cache`:if(l){t[f]=!0;break}if(g!==void 0&&g.length===0){t[f]=!0;break}if(g){if(g[0]===`"`){g=m(g);let n=``,r=e,o=!1,s=h(g,1);if(s!==-1)n=g.substring(1,s),o=!0;else{let t=[g.substring(1)];for(let n=e+1;n<i.length;n++){let e=d(i[n].value),a=h(e,0);if(r=n,a!==-1){t.push(e.substring(0,a)),o=!0;break}t.push(e)}n=t.join(`,`)}if(!o){t[f]=!0;break}e=r;let c=n.split(`,`),l=!0;for(let e=0;e<c.length;e++)c[e]=d(c[e]),a(c[e])||(l=!1);l?t[f]!==!0&&(f in t?t[f]=t[f].concat(c):t[f]=c):t[f]=!0}else{let e=d(g);a(e)?t[f]!==!0&&(f in t?t[f]=t[f].concat(e):t[f]=[e]):t[f]=!0}break}case`public`:case`must-revalidate`:case`proxy-revalidate`:case`immutable`:case`no-transform`:case`must-understand`:case`only-if-cached`:if(l||r.has(f))continue;if(g!==void 0){delete t[f],r.add(f);continue}t[f]=!0;break;case`no-store`:t[f]=!0;break;default:continue}}return t}function O(e){let t=Array.isArray(e)?e:[e],n=[];for(let e=0;e<t.length;e++){let r=t[e].split(`,`);for(let e=0;e<r.length;e++)n.push(r[e])}return n}function k(e){let t=O(e);for(let e=0;e<t.length;e++)if(d(t[e]).indexOf(`*`)!==-1)return!0;return!1}function A(e,t){if(k(e))return t;let n={},r=O(e);for(let e of r){let r=d(e).toLowerCase();if(r.length===0)continue;if(!a(r))return;let i=t[r];n[r]=Array.isArray(i)?i.slice():i??null}return n}function j(e){return k(e)||A(e,{})===void 0}function M(e){return e.length<=2?!1:e[0]===`"`&&e[e.length-1]===`"`?!(e[1]===`"`||e.startsWith(`"W/`)):e.startsWith(`W/"`)&&e[e.length-1]===`"`?e.length!==4:!1}function N(e,t=`CacheStore`){if(typeof e!=`object`||!e)throw TypeError(`expected type of ${t} to be a CacheStore, got ${e===null?`null`:typeof e}`);for(let n of[`get`,`createWriteStream`,`delete`])if(typeof e[n]!=`function`)throw TypeError(`${t} needs to have a \`${n}()\` function`)}function P(e,t=`CacheMethods`){if(!Array.isArray(e))throw TypeError(`expected type of ${t} needs to be an array, got ${e===null?`null`:typeof e}`);if(e.length===0)throw TypeError(`${t} needs to have at least one method`);for(let r of e)if(!f(n,r))throw TypeError(`element of ${t}-array needs to be one of following values: ${n.join(`, `)}, got ${r}`)}function F(e,t){let n={};if(e.headers){let r=Object.keys(e.headers).sort();for(let i of r)t?.has(i.toLowerCase())||(n[i]=e.headers[i])}return JSON.stringify([e.origin,e.method,e.path,n])}t.exports={getInterceptorOrigin:x,getRequestOrigin:b,makeCacheKey:S,normalizeHeaders:w,assertCacheKey:T,assertCacheValue:E,parseCacheControlHeader:D,hasInvalidCacheControlDirective:v,parseVaryHeader:A,hasVaryStar:k,isInvalidOrWildcardVaryHeader:j,isEtagUsable:M,assertCacheMethods:P,assertCacheStore:N,makeDeduplicationKey:F}})),Kw=q(((e,t)=>{function n(e){switch(e[3]){case`,`:return i(e);case` `:return a(e);default:return o(e)}}function r(e,t,n,r,i,a,o){let s=new Date(Date.UTC(e,t,n,r,i,a));return e>=0&&e<=99&&s.setUTCFullYear(e),s.getUTCFullYear()===e&&s.getUTCMonth()===t&&s.getUTCDate()===n&&s.getUTCHours()===r&&s.getUTCMinutes()===i&&s.getUTCSeconds()===a&&s.getUTCDay()===o?s:void 0}function i(e){if(e.length!==29||e[4]!==` `||e[7]!==` `||e[11]!==` `||e[16]!==` `||e[19]!==`:`||e[22]!==`:`||e[25]!==` `||e[26]!==`G`||e[27]!==`M`||e[28]!==`T`)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=0;if(e[5]===`0`){let t=e.charCodeAt(6);if(t<49||t>57)return;n=t-48}else{let t=e.charCodeAt(5);if(t<49||t>51)return;let r=e.charCodeAt(6);if(r<48||r>57)return;n=(t-48)*10+(r-48)}let i=-1;if(e[8]===`J`&&e[9]===`a`&&e[10]===`n`)i=0;else if(e[8]===`F`&&e[9]===`e`&&e[10]===`b`)i=1;else if(e[8]===`M`&&e[9]===`a`){if(e[10]===`r`)i=2;else if(e[10]===`y`)i=4;else return}else if(e[8]===`J`){if(e[9]===`a`&&e[10]===`n`)i=0;else if(e[9]===`u`){if(e[10]===`n`)i=5;else if(e[10]===`l`)i=6;else return}else return}else if(e[8]===`A`){if(e[9]===`p`&&e[10]===`r`)i=3;else if(e[9]===`u`&&e[10]===`g`)i=7;else return}else if(e[8]===`S`&&e[9]===`e`&&e[10]===`p`)i=8;else if(e[8]===`O`&&e[9]===`c`&&e[10]===`t`)i=9;else if(e[8]===`N`&&e[9]===`o`&&e[10]===`v`)i=10;else if(e[8]===`D`&&e[9]===`e`&&e[10]===`c`)i=11;else return;let a=e.charCodeAt(12);if(a<48||a>57)return;let o=e.charCodeAt(13);if(o<48||o>57)return;let s=e.charCodeAt(14);if(s<48||s>57)return;let c=e.charCodeAt(15);if(c<48||c>57)return;let l=(a-48)*1e3+(o-48)*100+(s-48)*10+(c-48),u=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;u=t-48}else{let t=e.charCodeAt(17);if(t<48||t>50)return;let n=e.charCodeAt(18);if(n<48||n>57||t===50&&n>51)return;u=(t-48)*10+(n-48)}let d=0;if(e[20]===`0`){let t=e.charCodeAt(21);if(t<48||t>57)return;d=t-48}else{let t=e.charCodeAt(20);if(t<48||t>53)return;let n=e.charCodeAt(21);if(n<48||n>57)return;d=(t-48)*10+(n-48)}let f=0;if(e[23]===`0`){let t=e.charCodeAt(24);if(t<48||t>57)return;f=t-48}else{let t=e.charCodeAt(23);if(t<48||t>53)return;let n=e.charCodeAt(24);if(n<48||n>57)return;f=(t-48)*10+(n-48)}return r(l,i,n,u,d,f,t)}function a(e){if(e.length!==24||e[7]!==` `||e[10]!==` `||e[19]!==` `)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=-1;if(e[4]===`J`&&e[5]===`a`&&e[6]===`n`)n=0;else if(e[4]===`F`&&e[5]===`e`&&e[6]===`b`)n=1;else if(e[4]===`M`&&e[5]===`a`){if(e[6]===`r`)n=2;else if(e[6]===`y`)n=4;else return}else if(e[4]===`J`){if(e[5]===`a`&&e[6]===`n`)n=0;else if(e[5]===`u`){if(e[6]===`n`)n=5;else if(e[6]===`l`)n=6;else return}else return}else if(e[4]===`A`){if(e[5]===`p`&&e[6]===`r`)n=3;else if(e[5]===`u`&&e[6]===`g`)n=7;else return}else if(e[4]===`S`&&e[5]===`e`&&e[6]===`p`)n=8;else if(e[4]===`O`&&e[5]===`c`&&e[6]===`t`)n=9;else if(e[4]===`N`&&e[5]===`o`&&e[6]===`v`)n=10;else if(e[4]===`D`&&e[5]===`e`&&e[6]===`c`)n=11;else return;let i=0;if(e[8]===` `){let t=e.charCodeAt(9);if(t<49||t>57)return;i=t-48}else{let t=e.charCodeAt(8);if(t<49||t>51)return;let n=e.charCodeAt(9);if(n<48||n>57)return;i=(t-48)*10+(n-48)}let a=0;if(e[11]===`0`){let t=e.charCodeAt(12);if(t<48||t>57)return;a=t-48}else{let t=e.charCodeAt(11);if(t<48||t>50)return;let n=e.charCodeAt(12);if(n<48||n>57||t===50&&n>51)return;a=(t-48)*10+(n-48)}let o=0;if(e[14]===`0`){let t=e.charCodeAt(15);if(t<48||t>57)return;o=t-48}else{let t=e.charCodeAt(14);if(t<48||t>53)return;let n=e.charCodeAt(15);if(n<48||n>57)return;o=(t-48)*10+(n-48)}let s=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;s=t-48}else{let t=e.charCodeAt(17);if(t<48||t>53)return;let n=e.charCodeAt(18);if(n<48||n>57)return;s=(t-48)*10+(n-48)}let c=e.charCodeAt(20);if(c<48||c>57)return;let l=e.charCodeAt(21);if(l<48||l>57)return;let u=e.charCodeAt(22);if(u<48||u>57)return;let d=e.charCodeAt(23);if(!(d<48||d>57))return r((c-48)*1e3+(l-48)*100+(u-48)*10+(d-48),n,i,a,o,s,t)}function o(e){let t=-1,n=-1;if(e[0]===`S`)e[1]===`u`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`?(n=0,t=6):e[1]===`a`&&e[2]===`t`&&e[3]===`u`&&e[4]===`r`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=6,t=8);else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=1,t=6;else if(e[0]===`T`)e[1]===`u`&&e[2]===`e`&&e[3]===`s`&&e[4]===`d`&&e[5]===`a`&&e[6]===`y`?(n=2,t=7):e[1]===`h`&&e[2]===`u`&&e[3]===`r`&&e[4]===`s`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=4,t=8);else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`&&e[3]===`n`&&e[4]===`e`&&e[5]===`s`&&e[6]===`d`&&e[7]===`a`&&e[8]===`y`)n=3,t=9;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=5,t=6;else return;if(e[t]!==`,`||e.length-t-1!=23||e[t+1]!==` `||e[t+4]!==`-`||e[t+8]!==`-`||e[t+11]!==` `||e[t+14]!==`:`||e[t+17]!==`:`||e[t+20]!==` `||e[t+21]!==`G`||e[t+22]!==`M`||e[t+23]!==`T`)return;let i=0;if(e[t+2]===`0`){let n=e.charCodeAt(t+3);if(n<49||n>57)return;i=n-48}else{let n=e.charCodeAt(t+2);if(n<49||n>51)return;let r=e.charCodeAt(t+3);if(r<48||r>57)return;i=(n-48)*10+(r-48)}let a=-1;if(e[t+5]===`J`&&e[t+6]===`a`&&e[t+7]===`n`)a=0;else if(e[t+5]===`F`&&e[t+6]===`e`&&e[t+7]===`b`)a=1;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`r`)a=2;else if(e[t+5]===`A`&&e[t+6]===`p`&&e[t+7]===`r`)a=3;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`y`)a=4;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`n`)a=5;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`l`)a=6;else if(e[t+5]===`A`&&e[t+6]===`u`&&e[t+7]===`g`)a=7;else if(e[t+5]===`S`&&e[t+6]===`e`&&e[t+7]===`p`)a=8;else if(e[t+5]===`O`&&e[t+6]===`c`&&e[t+7]===`t`)a=9;else if(e[t+5]===`N`&&e[t+6]===`o`&&e[t+7]===`v`)a=10;else if(e[t+5]===`D`&&e[t+6]===`e`&&e[t+7]===`c`)a=11;else return;let o=e.charCodeAt(t+9);if(o<48||o>57)return;let s=e.charCodeAt(t+10);if(s<48||s>57)return;let c=(o-48)*10+(s-48);c+=c<70?2e3:1900;let l=0;if(e[t+12]===`0`){let n=e.charCodeAt(t+13);if(n<48||n>57)return;l=n-48}else{let n=e.charCodeAt(t+12);if(n<48||n>50)return;let r=e.charCodeAt(t+13);if(r<48||r>57||n===50&&r>51)return;l=(n-48)*10+(r-48)}let u=0;if(e[t+15]===`0`){let n=e.charCodeAt(t+16);if(n<48||n>57)return;u=n-48}else{let n=e.charCodeAt(t+15);if(n<48||n>53)return;let r=e.charCodeAt(t+16);if(r<48||r>57)return;u=(n-48)*10+(r-48)}let d=0;if(e[t+18]===`0`){let n=e.charCodeAt(t+19);if(n<48||n>57)return;d=n-48}else{let n=e.charCodeAt(t+18);if(n<48||n>53)return;let r=e.charCodeAt(t+19);if(r<48||r>57)return;d=(n-48)*10+(r-48)}return r(c,a,i,l,u,d,n)}t.exports={parseHttpDate:n}})),qw=q(((e,t)=>{var n=$(),{parseCacheControlHeader:r,hasInvalidCacheControlDirective:i,parseVaryHeader:a,hasVaryStar:o,isInvalidOrWildcardVaryHeader:s,isEtagUsable:c}=Gw(),{parseHttpDate:l}=Kw();function u(){}var d=[200,203,204,206,300,301,308,404,405,410,414,501],f=[206],p=2147483647e3,m=864e5;function h(e){return e.replace(/^[\t ]+|[\t ]+$/g,``)}function g(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function _(e,t){let n=Array.isArray(t)?t:[t];for(let t=0;t<n.length;t++){let r=n[t].split(`,`);for(let t=0;t<r.length;t++)e.push(h(r[t]).toLowerCase())}}function v(e,t){if(typeof t!=`string`)return;let n,r,i;try{n=new URL(e.origin),r=new URL(e.path,n),i=new URL(t,r)}catch{return}if(i.origin===n.origin)return i.pathname+i.search}function y(e,t,r){C(e,{...t,path:r});for(let i=0;i<n.safeHTTPMethods.length;i++){let a=n.safeHTTPMethods[i];a!==t.method&&C(e,{...t,method:a,path:r})}}function b(e,t,n){if(n===void 0)return;let r=Array.isArray(n)?n:[n];for(let n=0;n<r.length;n++){let i=v(t,r[n]);i!==void 0&&y(e,t,i)}}function x(e,t,n){y(e,t,t.path),b(e,t,n.location),b(e,t,n[`content-location`])}var S=class{#e;#t;#n;#r;#i;#a;constructor({store:e,type:t,cacheByDefault:n},r,i){this.#r=e,this.#t=t,this.#n=n,this.#e=r,this.#i=i}onRequestStart(e,t){this.#a?.destroy(),this.#a=void 0,this.#i.onRequestStart?.(e,t)}onBodySent(e){this.#i.onBodySent?.(e)}onRequestSent(){this.#i.onRequestSent?.()}onRequestUpgrade(e,t,n,r){this.#i.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,i,o){let l=()=>this.#i.onResponseStart?.(e,t,i,o),u=this;if(!g(n.safeHTTPMethods,this.#e.method)&&t>=200&&t<=399)return x(this.#r,this.#e,i),l();let f=i[`cache-control`],m=f?r(f):{};if(T(this.#t,i,m))return C(this.#r,this.#e),l();let h=i[`last-modified`]&&g(d,t);if(!f&&!i.expires&&!h&&!this.#n)return t===304&&i.vary&&s(i.vary)&&C(this.#r,this.#e),l();if(!E(this.#t,this.#e.method,t,i,m,this.#e.headers))return t===304&&(f||T(this.#t,i,m))&&C(this.#r,this.#e),l();let _=Date.now(),v=Object.hasOwn(i,`age`)?O(i.age):void 0;if(v!==void 0&&v>=p)return w(t,this.#r,this.#e),l();let y=Object.hasOwn(i,`date`)?D(i.date):void 0;if(y===null)return w(t,this.#r,this.#e),l();let b=y?Math.max(0,_-y.getTime()):0,S=Math.max(b,v??0),M=typeof i.etag==`string`&&c(i.etag)||typeof i[`last-modified`]==`string`,N=k(this.#t,_,v,i,y,m,M)??this.#n,P=N===0&&M;if(N===void 0||S>=N&&!P)return(f||N!==void 0)&&w(t,this.#r,this.#e),l();let F=_-S,I=N+F;if(_>=I&&!P)return w(t,this.#r,this.#e),l();let L;if(this.#e.headers&&i.vary&&(L=a(i.vary,this.#e.headers),!L))return l();let R=F,ee=A(F,_,m,I),te=j(i,m),ne={statusCode:t,statusMessage:o,headers:te,vary:L,cacheControlDirectives:m,cachedAt:R,staleAt:I,deleteAt:ee};if(t===304){let t=t=>{if(!t)return l();if(ne.statusCode=t.statusCode,ne.statusMessage=t.statusMessage,ne.etag=t.etag,ne.vary=L??t.vary,ne.headers={...t.headers,...te},l(),this.#a=this.#r.createWriteStream(this.#e,ne),this.#a&&t?.body){if(typeof t.body.values==`function`){let n=t.body.values(),r=()=>{for(let t of n){let n=this.#a.write(t)===!1;if(this.#i.onResponseData?.(e,t),n)break}};this.#a.on(`error`,function(){u.#a=void 0,u.#r.delete(u.#e)}).on(`drain`,()=>{r()}).on(`close`,function(){u.#a===this&&(u.#a=void 0)}),r()}else typeof t.body.on==`function`&&(t.body.on(`data`,t=>{this.#a.write(t),this.#i.onResponseData?.(e,t)}).on(`end`,()=>{this.#a.end()}).on(`error`,()=>{this.#a=void 0,this.#r.delete(this.#e)}),this.#a.on(`error`,function(){u.#a=void 0,u.#r.delete(u.#e)}).on(`close`,function(){u.#a===this&&(u.#a=void 0)}))}},n=this.#r.get(this.#e);n&&typeof n.then==`function`?n.then(t):t(n)}else{if(typeof i.etag==`string`&&c(i.etag)&&(ne.etag=i.etag),this.#a=this.#r.createWriteStream(this.#e,ne),!this.#a)return l();this.#a.on(`drain`,()=>e.resume()).on(`error`,function(){u.#a=void 0,u.#r.delete(u.#e)}).on(`close`,function(){u.#a===this&&(u.#a=void 0),e.resume()}),l()}}onResponseData(e,t){this.#a?.write(t)===!1&&e.pause(),this.#i.onResponseData?.(e,t)}onResponseEnd(e,t){this.#a?.end(),this.#i.onResponseEnd?.(e,t)}onResponseError(e,t){this.#a?.destroy(t),this.#a=void 0,this.#i.onResponseError?.(e,t)}};function C(e,t){try{e.delete(t)?.catch?.(u)}catch{}}function w(e,t,n){e===304&&C(t,n)}function T(e,t,n){return n[`no-store`]===!0||e===`shared`&&(n.private===!0||Object.hasOwn(t,`set-cookie`))||(t.vary?s(t.vary):!1)}function E(e,t,r,i,a,s){return!(!g(n.safeHTTPMethods,t)||r<200||g(f,r)||!g(d,r)&&!i.expires&&!a.public&&a[`max-age`]===void 0&&!(a.private&&e===`private`)&&(a[`s-maxage`]===void 0||e!==`shared`)||a[`no-store`]||e===`shared`&&(a.private===!0||Object.hasOwn(i,`set-cookie`))||i.vary&&o(i.vary)||s!=null&&Object.hasOwn(s,`authorization`)&&(!a.public&&!a[`s-maxage`]&&!a[`must-revalidate`]||typeof s.authorization!=`string`||Array.isArray(a[`no-cache`])&&g(a[`no-cache`],`authorization`)||Array.isArray(a.private)&&g(a.private,`authorization`)))}function D(e){let t=e;if(Array.isArray(t)){if(t.length!==1)return null;t=t[0]}return typeof t==`string`?l(t):null}function O(e){let t=e;if(Array.isArray(t)){if(t.length!==1)return p;t=t[0]}if(typeof t!=`string`||!/^[\t ]*[0-9]+[\t ]*$/.test(t))return p;let n=BigInt(t.replace(/^[\t ]+|[\t ]+$/g,``));return n>=BigInt(p/1e3)?p:Number(n)*1e3}function k(e,t,n,r,a,o,s){if(e===`shared`){if(i(o,`s-maxage`))return 0;let e=o[`s-maxage`];if(e!==void 0)return e>0?e*1e3:0}if(i(o,`max-age`))return 0;let c=o[`max-age`];if(c!==void 0)return c>0?c*1e3:0;if(Object.hasOwn(r,`expires`)){if(typeof r.expires!=`string`)return 0;let e=l(r.expires);if(!e||t>=e.getTime())return 0;if(a){if(a>=e)return 0;let t=e.getTime()-a.getTime();return n!==void 0&&n>=t?0:t}return e.getTime()-t}if(typeof r[`last-modified`]==`string`){let e=l(r[`last-modified`]);if(e)return e.getTime()>=t?void 0:(t-e.getTime())*.1}if(o.immutable)return 31536e6;if(o[`no-cache`]===!0&&s)return 0}function A(e,t,n,r){let i=-1/0,a=-1/0,o=-1/0;if(n[`stale-while-revalidate`]&&(i=r+n[`stale-while-revalidate`]*1e3),n[`stale-if-error`]&&(a=r+n[`stale-if-error`]*1e3),n.immutable&&i===-1/0&&a===-1/0&&(o=t+31536e6),i===-1/0&&a===-1/0&&o===-1/0){let n=r-e;if(n<=0)return t+m;let i=Math.min(Math.max(t-e,0),1e3);return r+n+i}return Math.max(r,i,a,o)}function j(e,t){let n=[`connection`,`proxy-authenticate`,`proxy-authentication-info`,`proxy-authorization`,`proxy-connection`,`te`,`transfer-encoding`,`upgrade`,`age`];e.connection&&_(n,e.connection),Array.isArray(t[`no-cache`])&&n.push(...t[`no-cache`]),Array.isArray(t.private)&&n.push(...t.private);let r;for(let t of n)Object.hasOwn(e,t)&&(r??={...e},delete r[t]);return r??e}t.exports=S})),Jw=q(((e,t)=>{var{Writable:n}=J(`node:stream`),{EventEmitter:r}=J(`node:events`),{assertCacheKey:i,assertCacheValue:a}=Gw(),o=class extends r{#e=1024;#t=104857600;#n=5242880;#r=0;#i=0;#a=new Map;#o=!1;constructor(e){if(super(),e){if(typeof e!=`object`)throw TypeError(`MemoryCacheStore options must be an object`);if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`MemoryCacheStore options.maxCount must be a non-negative integer`);this.#e=e.maxCount}if(e.maxSize!==void 0){if(typeof e.maxSize!=`number`||!Number.isInteger(e.maxSize)||e.maxSize<0)throw TypeError(`MemoryCacheStore options.maxSize must be a non-negative integer`);this.#t=e.maxSize}if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`MemoryCacheStore options.maxEntrySize must be a non-negative integer`);this.#n=e.maxEntrySize}}}get size(){return this.#r}isFull(){return this.#r>=this.#t||this.#i>=this.#e}get(e){i(e);let t=`${e.origin}:${e.path}`,n=Date.now(),r=this.#a.get(t),a=r?s(e,r,n):null;return a==null?void 0:{statusMessage:a.statusMessage,statusCode:a.statusCode,headers:a.headers,body:a.body,vary:a.vary?a.vary:void 0,etag:a.etag,cacheControlDirectives:a.cacheControlDirectives,cachedAt:a.cachedAt,staleAt:a.staleAt,deleteAt:a.deleteAt}}createWriteStream(e,t){i(e),a(t);let r=`${e.origin}:${e.path}`,o=this,c={...e,...t,body:[],size:0};return new n({write(e,t,n){typeof e==`string`&&(e=Buffer.from(e,t)),c.size+=e.byteLength,c.size>o.#n?this.destroy():c.body.push(e),n(null)},final(t){let n=o.#a.get(r);n||(n=[],o.#a.set(r,n));let i=s(e,n,Date.now());if(i){let e=n.indexOf(i);n.splice(e,1,c),o.#r-=i.size}else n.push(c),o.#i+=1;if(o.#r+=c.size,o.#r>o.#t||o.#i>o.#e){o.#o||=(o.emit(`maxSizeExceeded`,{size:o.#r,maxSize:o.#t,count:o.#i,maxCount:o.#e}),!0);for(let[e,t]of o.#a){for(let e of t.splice(0,Math.ceil(t.length/2)))o.#r-=e.size,--o.#i;t.length===0&&o.#a.delete(e)}o.#r<o.#t&&o.#i<o.#e&&(o.#o=!1)}t(null)}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);let t=`${e.origin}:${e.path}`;for(let e of this.#a.get(t)??[])this.#r-=e.size,--this.#i;this.#a.delete(t)}};function s(e,t,n){for(let r=0;r<t.length;r++){let i=t[r];if(i.deleteAt>n&&i.method===e.method&&c(e,i))return i}}function c(e,t){if(t.vary==null)return!0;for(let n in t.vary)if(Object.hasOwn(t.vary,n)&&!l(e.headers?.[n],t.vary[n]))return!1;return!0}function l(e,t){if(e==null&&t==null)return!0;if(e==null&&t!=null||e!=null&&t==null)return!1;if(Array.isArray(e)&&Array.isArray(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}return e===t}t.exports=o})),Yw=q(((e,t)=>{var n=J(`node:assert`);t.exports=class{#e=!1;#t;#n;#r;#i;constructor(e,t,n){if(typeof e!=`function`)throw TypeError(`callback must be a function`);this.#t=e,this.#n=t,this.#i=n}onRequestStart(e,t){this.#e=!1,this.#r=t}onRequestUpgrade(e,t,n,r){this.#n.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,r,i){if(n(this.#t!=null),this.#e=t===304||this.#i&&t>=500&&t<=504,this.#t(this.#e,this.#r,t,r),this.#t=null,this.#e)return!0;this.#n.onRequestStart?.(e,this.#r),this.#n.onResponseStart?.(e,t,r,i)}onResponseData(e,t){if(!this.#e)return this.#n.onResponseData?.(e,t)}onResponseEnd(e,t){this.#e||this.#n.onResponseEnd?.(e,t)}onResponseError(e,t){if(!this.#e){if(this.#t){if(this.#i){this.#e=!0,this.#t(!0,this.#r),this.#t=null;return}this.#t(!1),this.#t=null}if(typeof this.#n.onResponseError==`function`)this.#n.onResponseError(e,t);else throw t}}}})),Xw=q(((e,t)=>{var n=J(`node:assert`),{Readable:r}=J(`node:stream`),i=$(),a=qw(),o=Jw(),s=Yw(),{assertCacheStore:c,assertCacheMethods:l,getInterceptorOrigin:u,makeCacheKey:d,normalizeHeaders:f,parseCacheControlHeader:p,isInvalidOrWildcardVaryHeader:m,parseVaryHeader:h}=Gw(),{AbortError:g}=Q(),{parseHttpDate:_}=Kw();function v(e,t){if(e!==void 0){if(!Array.isArray(e))throw TypeError(`expected ${t} to be an array or undefined, got ${typeof e}`);for(let n=0;n<e.length;n++){let r=e[n];if(typeof r!=`string`&&!(r instanceof RegExp))throw TypeError(`expected ${t}[${n}] to be a string or RegExp, got ${typeof r}`)}}}var y=()=>{};function b(e){return e.replace(/^[\t ]+|[\t ]+$/g,``)}function x(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function S(e){let t=e?.pragma;if(!t)return!1;let n=Array.isArray(t)?t:[t];for(let e=0;e<n.length;e++){let t=n[e];if(typeof t!=`string`)continue;let r=t.split(`,`);for(let e=0;e<r.length;e++)if(b(r[e]).toLowerCase()===`no-cache`)return!0}return!1}function C(e,t,{headers:n={}}){return!!(t?.[`no-cache`]||e.cacheControlDirectives?.[`no-cache`]&&!Array.isArray(e.cacheControlDirectives[`no-cache`])||n[`if-modified-since`]||n[`if-none-match`])}function w(e,t){return e.cacheControlDirectives?.[`must-revalidate`]===!0||t===`shared`&&(e.cacheControlDirectives?.[`proxy-revalidate`]===!0||e.cacheControlDirectives?.[`s-maxage`]!==void 0)}function T(e,t){if(t.vary&&m(t.vary)||e===`shared`&&Object.hasOwn(t,`set-cookie`))return!0;let n=t[`cache-control`];if(!n)return!1;let r=p(n);return r[`no-store`]===!0||e===`shared`&&r.private===!0}function E(e){return e[`cache-control`]!==void 0}function D(e,t){if(!t)return!1;for(let n in t)if(e.vary==null||!Object.hasOwn(e.vary,n))return!0;return!1}function O(e,t){try{e.delete(t)?.catch?.(y)}catch{}}function k(e){let t=e?.[`last-modified`];if(typeof t==`string`&&_(t))return t}function A(e,t){let n={...e.headers,"if-modified-since":k(t.headers)??new Date(t.cachedAt).toUTCString()};if(t.etag&&(n[`if-none-match`]=t.etag),t.vary)for(let e in t.vary)t.vary[e]!=null&&(n[e]=t.vary[e]);return n}function j(e,t,n){let r=Date.now();return r>e.staleAt?!w(e,n)&&t?.[`max-stale`]?r>e.staleAt+t[`max-stale`]*1e3:!0:t?.[`min-fresh`]?e.staleAt-r<=t[`min-fresh`]*1e3:!1}function M(e,t){let n=e.cacheControlDirectives?.[`stale-while-revalidate`];return!n||w(e,t)?!1:Date.now()<=e.staleAt+n*1e3}function N(e,t,n,r,i,o){if(o?.[`only-if-cached`]){let e=!1,t={paused:!1,rawHeaders:[],rawTrailers:[],pause(){this.paused=!0},resume(){this.paused=!1},abort:n=>{e=!0,r.onResponseError?.(t,n??new g)}};try{if(r.onRequestStart?.(t,null),e||(r.onResponseStart?.(t,504,{},`Gateway Timeout`),e))return;r.onResponseEnd?.(t,{})}catch(e){typeof r.onResponseError==`function`&&r.onResponseError(t,e)}return!0}return e(i,new a(t,n,r))}function P(e,t,a,o,s,c){let l=i.isStream(a.body)?a.body:r.from(a.body??[]);n(!l.destroyed,`stream should not be destroyed`),n(!l.readableDidRead,`stream should not be readableDidRead`);let u=!1,d={rawHeaders:[],rawTrailers:[],resume(){l.resume()},pause(){l.pause()},get paused(){return l.isPaused()},get aborted(){return u},get reason(){return l.errored},abort(e){u=!0,l.destroy(e??new g)}};if(l.on(`error`,function(t){if(!this.readableEnded){if(typeof e.onResponseError==`function`)e.onResponseError(d,t);else throw t}}).on(`close`,function(){this.errored||e.onResponseEnd?.(d,{})}),e.onRequestStart?.(d,s),l.destroyed)return;let f={...a.headers,age:String(o)};c&&(f.warning=`110 - "response is stale"`),d.rawHeaders=i.toRawHeaders(f),e.onResponseStart?.(d,a.statusCode,f,a.statusMessage),t.method===`HEAD`?l.destroy():l.on(`data`,function(t){e.onResponseData?.(d,t)})}function F(e,t,n,r,o,c,l){if(!l)return N(e,t,n,r,o,c);if(t.type===`shared`&&Object.hasOwn(l.headers,`set-cookie`))return i.isStream(l.body)&&l.body.on(`error`,y).destroy(),O(t.store,n),N(e,t,n,r,o,c);let u=Date.now();if(u>l.deleteAt)return e(o,new a(t,n,r));let d=Math.round((u-l.cachedAt)/1e3),f=c?.[`max-age`]!==void 0&&d>=c[`max-age`],p=f||j(l,c,t.type),m=f||C(l,c,o);if(p||m){if(i.isStream(o.body)&&i.bodyLength(o.body)!==0)return e(o,new a(t,n,r));if(!m&&M(l,t.type))return P(r,o,l,d,null,!0),queueMicrotask(()=>{let r=A(o,l);e({...o,headers:r},new a(t,n,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let f=!1;if(!w(l,t.type)){let e=l.cacheControlDirectives[`stale-if-error`]??c?.[`stale-if-error`];e&&(f=u<l.staleAt+e*1e3)}let g=A(o,l);return e({...o,headers:g},new s((s,c,u,f)=>{if(s){if(u===304){if(T(t.type,f))return i.isStream(l.body)&&l.body.on(`error`,y).destroy(),O(t.store,n),e(o,new a(t,n,r));if(E(f))O(t.store,n);else if(D(l,f.vary?h(f.vary,o.headers):void 0))return i.isStream(l.body)&&l.body.on(`error`,y).destroy(),O(t.store,n),e(o,new a(t,n,r))}P(r,o,l,d,c,p)}else i.isStream(l.body)&&l.body.on(`error`,y).destroy()},new a(t,n,r),f))}i.isStream(o.body)&&o.body.on(`error`,y).destroy(),P(r,o,l,d,null,!1)}t.exports=(e={})=>{let{store:t=new o,methods:n=[`GET`],cacheByDefault:r=void 0,type:s=`shared`,origins:m=void 0}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(c(t,`opts.store`),l(n,`opts.methods`),v(m,`opts.origins`),r!==void 0&&typeof r!=`number`)throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof r}`);if(s!==void 0&&s!==`shared`&&s!==`private`)throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof s}`);let h={store:t,methods:n,cacheByDefault:r,type:s},g=[];for(let e=0;e<i.safeHTTPMethods.length;e++){let t=i.safeHTTPMethods[e];x(n,t)||g.push(t)}return(e,n)=>(r,o)=>{let s=u(r,n);if(!s||x(g,r.method))return e(r,o);if(m!==void 0){let t=s.toString().toLowerCase(),n=!1;for(let e=0;e<m.length;e++){let r=m[e];if(typeof r==`string`){if(r.toLowerCase()===t){n=!0;break}}else if(r.test(t)){n=!0;break}}if(!n)return e(r,o)}r={...r,headers:f(r)};let c=r.headers?.[`cache-control`]?p(r.headers[`cache-control`]):S(r.headers)?{"no-cache":!0}:void 0;if(c?.[`no-store`])return e(r,o);let l=d(r,s);if(!x(i.safeHTTPMethods,r.method))return e(r,new a(h,l,o));let _=t.get(l);return _&&typeof _.then==`function`?_.then(t=>F(e,h,l,o,r,c,t)):F(e,h,l,o,r,c,_)}}})),Zw=q(((e,t)=>{var{createInflate:n,createGunzip:r,createBrotliDecompress:i,createZstdDecompress:a}=J(`node:zlib`),{pipeline:o,Transform:s}=J(`node:stream`),{InvalidArgumentError:c,ResponseExceededMaxSizeError:l}=Q(),u=Rw(),d=class{#e;#t;#n;#r=!1;constructor(e,t,n){this.#e=e,this.#t=t,this.#n=n,this.target=null}pause(){this.#r||(this.#r=!0,this.#e())}resume(){this.#r&&(this.#r=!1,this.#t())}abort(e){this.target?.abort(e),this.#n(e)}get paused(){return this.#r}get aborted(){return this.target?.aborted??!1}get reason(){return this.target?.reason??null}get rawHeaders(){return this.target?.rawHeaders??null}set rawHeaders(e){this.target&&(this.target.rawHeaders=e)}get rawTrailers(){return this.target?.rawTrailers??null}set rawTrailers(e){this.target&&(this.target.rawTrailers=e)}},f={__proto__:null,gzip:r,"x-gzip":r,br:i,deflate:n,compress:n,"x-compress":n,zstd:a},p=[204,304],m=0;function h(e){let t=0;return new s({transform(n,r,i){let a=t+n.length;if(a>e){i(new l(`Decompressed response size (${a}) exceeded maxSize (${e})`));return}t=a,i(null,n)}})}var g=!1,_=class extends u{#e=[];#t;#n;#r;#i;#a=0;#o=!1;#s=!1;#c=!1;#l=!1;#u=!1;#d=!1;#f=!1;#p;#m;constructor(e,{skipStatusCodes:t=p,skipErrorResponses:n=!0,maxSize:r=m}={}){if(!Number.isSafeInteger(r)||r<0)throw new c(`maxSize must be a non-negative integer`);super(e),this.#n=t,this.#r=n,this.#i=r,this.#m=new d(()=>this.#h(),()=>this.#g(),e=>{this.#s&&!this.#o&&this.onResponseError(this.#m,e)})}#h(){this.#_()}#g(){let e=this.#u;this.#y(),e||(this.#v(),this.#b())}#_(){!this.#l&&!this.#o&&(this.#l=!0,this.#m.target?.pause())}#v(){this.#l&&!this.#m.paused&&!this.#c&&(this.#l=!1,this.#s||this.#m.target?.resume())}#y(){if(!(this.#o||this.#m.paused||!this.#p)){if(this.#u){this.#d=!0;return}this.#u=!0;try{do{this.#d=!1;let e;for(;!this.#o&&!this.#m.paused&&(e=this.#p.read())!==null;){if(this.#i>0){let t=this.#a+e.length;if(t>this.#i){this.#w(new l(`Decompressed response size (${t}) exceeded maxSize (${this.#i})`));return}this.#a=t}super.onResponseData(this.#m,e)===!1&&!this.#m.paused&&this.#m.pause()}}while(this.#d&&!this.#o&&!this.#m.paused)}finally{this.#u=!1}this.#v(),this.#b()}}#b(){this.#o||!this.#f||this.#m.paused||this.#u||(this.#o=!0,this.#k(),super.onResponseEnd(this.#m,this.#t))}#x(){this.#o||(this.#f=!0,this.#y(),this.#b())}#S(e,t){return!!(!e||t<200||this.#n.includes(t)||this.#r&&t>=400)}#C(e){let t=e.split(`,`);if(t.length>5)throw Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`);let n=[];for(let e=t.length-1;e>=0;e--){let r=t[e].trim();if(r){if(!f[r])return n.length=0,n;n.push(f[r]())}}if(n.length<2)return n;let r=[];for(let e=0;e<n.length;e++)r.push(n[e]),e<n.length-1&&this.#i>0&&r.push(h(this.#i));return r}#w(e){this.#o||(this.#s?this.onResponseError(this.#m,e):this.#m.abort(e))}#T(e){this.#p=e,e.on(`readable`,()=>this.#y()),e.on(`error`,e=>this.#w(e))}#E(){let e=this.#e[0];this.#T(e),e.on(`end`,()=>this.#x())}#D(){let e=this.#e[this.#e.length-1];this.#T(e),o(this.#e,e=>{if(!this.#o){if(e){this.#w(e);return}this.#x()}})}#O(){this.#e[0].on(`drain`,()=>{this.#o||(this.#c=!1,this.#m.paused||(this.#y(),this.#v()))})}#k(){this.#e.length=0,this.#p=void 0}onRequestStart(e,t){return this.#m.target=e,super.onRequestStart(this.#m,t)}onRequestUpgrade(e,t,n,r){return super.onRequestUpgrade(this.#m,t,n,r)}onResponseStart(e,t,n,r){let i=n[`content-encoding`],a=Array.isArray(i)?i.join(`,`):i;if(this.#S(a,t))return super.onResponseStart(this.#m,t,n,r);let o=this.#C(a.toLowerCase());if(o.length===0)return this.#k(),super.onResponseStart(this.#m,t,n,r);this.#e=o;let{"content-encoding":s,"content-length":c,...l}=n;if(this.#m.rawHeaders){let e=this.#m.rawHeaders;if(Array.isArray(e)){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=(Buffer.isBuffer(r)?r.toString(`latin1`):`${r}`).toLowerCase();i!==`content-encoding`&&i!==`content-length`&&t.push(e[n],e[n+1])}e.splice(0,e.length,...t)}else if(typeof e==`object`)for(let t of Object.keys(e)){let n=t.toLowerCase();(n===`content-encoding`||n===`content-length`)&&delete e[t]}}return this.#O(),this.#e.length===1?this.#E():this.#D(),super.onResponseStart(this.#m,t,l,r)}onResponseData(e,t){if(this.#e.length>0){this.#e[0].write(t)||(this.#c=!0,this.#_());return}return super.onResponseData(this.#m,t)}onResponseEnd(e,t){if(this.#e.length>0){this.#s=!0,this.#t=t,this.#e[0].end();return}return super.onResponseEnd(this.#m,t)}onResponseError(e,t){if(!this.#o){this.#o=!0;for(let e of this.#e)e.destroy();this.#k(),super.onResponseError(this.#m,t)}}};function v(e={}){return g||=(process.emitWarning(`DecompressInterceptor is experimental and subject to change`,`ExperimentalWarning`),!0),t=>(n,r)=>n.method===`HEAD`?t(n,r):t(n,new _(r,e))}t.exports=v})),Qw=q(((e,t)=>{var{RequestAbortedError:n}=Q(),r=5242880;t.exports=class{#e;#t=[];#n=r;#r=0;#i={};#a=``;#o=!1;#s=!1;#c=!1;#l=!1;#u=null;#d=null;constructor(e,t,n=r){this.#e=e,this.#d=t,this.#n=n}addWaitingHandler(e){if(this.#l||this.#c)return!1;let t=this.#p(e),n=t.controller;try{if(e.onRequestStart?.(n,null),n.aborted)return t.done=!0,!0;this.#s&&e.onResponseStart?.(n,this.#r,this.#i,this.#a)}catch{return t.done=!0,!0}return n.aborted||this.#t.push(t),!0}onRequestStart(e,t){this.#u=e,this.#e.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.#e.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,r){this.#s=!0,this.#r=t,this.#i=n,this.#a=r,this.#e.onResponseStart?.(e,t,n,r);for(let e of this.#t){let{handler:i,controller:a}=e;if(e.done||a.aborted){e.done=!0;continue}try{i.onResponseStart?.(a,t,n,r)}catch{}a.aborted&&(e.done=!0)}this.#_()}onResponseData(e,t){if(!(this.#o||this.#l)){this.#c=!0,this.#e.onResponseData?.(e,t);for(let e of this.#t){let{handler:n,controller:r}=e;if(e.done||r.aborted){e.done=!0;continue}if(r.paused){this.#m(e,t);continue}try{n.onResponseData?.(r,t)}catch{}r.aborted&&(e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0)}this.#_()}}onResponseEnd(e,t){if(!(this.#o||this.#l)){this.#f(),this.#e.onResponseEnd?.(e,t),this.#l=!0;for(let e of this.#t){if(e.done||e.controller.aborted){e.done=!0;continue}if(this.#h(e),e.done||e.controller.aborted){e.done=!0;continue}if(e.controller.paused){e.pendingTrailers=t;continue}try{e.handler.onResponseEnd?.(e.controller,t)}catch(t){this.#g(e,t)}e.done=!0}this.#_()}}onResponseError(e,t){if(!this.#l){this.#o=!0,this.#l=!0,this.#f(),this.#e.onResponseError?.(e,t);for(let e of this.#t)this.#g(e,t);this.#t=[]}}#f(){let e=this.#d;this.#d=null,e?.()}#p(e){let t={handler:e,controller:null,bufferedChunks:[],bufferedBytes:0,pendingTrailers:null,done:!1},r={aborted:!1,paused:!1,reason:null};return t.controller={resume:()=>{if(!r.aborted){if(r.paused=!1,this.#h(t),this.#l&&t.pendingTrailers&&t.bufferedChunks.length===0&&!r.paused&&!r.aborted){try{t.handler.onResponseEnd?.(t.controller,t.pendingTrailers)}catch(e){this.#g(t,e)}t.pendingTrailers=null,t.done=!0}this.#_()}},pause:()=>{r.aborted||(r.paused=!0)},get paused(){return r.paused},get aborted(){return r.aborted},get reason(){return r.reason},abort:i=>{if(!r.aborted){r.aborted=!0,r.reason=i??null,t.done=!0,t.pendingTrailers=null,t.bufferedChunks=[],t.bufferedBytes=0;try{e.onResponseError?.(t.controller,r.reason??new n)}catch{}}}},t}#m(e,t){if(e.done||e.controller.aborted){e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0;return}let r=Buffer.from(t);if(e.bufferedChunks.push(r),e.bufferedBytes+=r.length,e.bufferedBytes>this.#n){let t=new n(`Deduplicated waiting handler exceeded maxBufferSize (${this.#n} bytes) while paused`);e.controller.abort(t)}}#h(e){let{handler:t,controller:n}=e;for(;!e.done&&!n.aborted&&!n.paused&&e.bufferedChunks.length>0;){let r=e.bufferedChunks.shift();e.bufferedBytes-=r.length;try{t.onResponseData?.(n,r)}catch{}if(n.aborted){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;break}}}#g(e,t){if(!e.done){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;try{e.handler.onResponseError?.(e.controller,t)}catch{}}}#_(){this.#t=this.#t.filter(e=>e.done===!1)}}})),$w=q(((e,t)=>{var n=J(`node:diagnostics_channel`),r=$(),i=Qw(),{getInterceptorOrigin:a,normalizeHeaders:o,makeCacheKey:s,makeDeduplicationKey:c}=Gw(),l=n.channel(`undici:request:pending-requests`);t.exports=(e={})=>{let{methods:t=[`GET`],skipHeaderNames:n=[],excludeHeaderNames:u=[],maxBufferSize:d=5242880}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(!Array.isArray(t))throw TypeError(`expected opts.methods to be an array, got ${typeof t}`);for(let e of t)if(!r.safeHTTPMethods.includes(e))throw TypeError(`expected opts.methods to only contain safe HTTP methods, got ${e}`);if(!Array.isArray(n))throw TypeError(`expected opts.skipHeaderNames to be an array, got ${typeof n}`);if(!Array.isArray(u))throw TypeError(`expected opts.excludeHeaderNames to be an array, got ${typeof u}`);if(!Number.isFinite(d)||d<=0)throw TypeError(`expected opts.maxBufferSize to be a positive finite number, got ${d}`);let f=new Set(n.map(e=>e.toLowerCase())),p=new Set(u.map(e=>e.toLowerCase())),m=new Map;return(e,n)=>(r,u)=>{let h=a(r,n);if(!h||r.upgrade||t.includes(r.method)===!1)return e(r,u);if(r={...r,headers:o(r)},f.size>0){for(let t of Object.keys(r.headers))if(f.has(t.toLowerCase()))return e(r,u)}let g=c(s(r,h),p),_=m.get(g);if(_)return _.addWaitingHandler(u)?!0:e(r,u);let v=new i(u,()=>{m.delete(g),l.hasSubscribers&&l.publish({size:m.size,key:g,type:`removed`})},d);return m.set(g,v),l.hasSubscribers&&l.publish({size:m.size,key:g,type:`added`}),e(r,v)}}})),eT=q(((e,t)=>{var{Writable:n}=J(`node:stream`),{assertCacheKey:r,assertCacheValue:i}=Gw(),a,o=3,s=2e9;t.exports=class{#e=s;#t=1/0;#n;#r;#i;#a;#o;#s;#c;#l;constructor(e){if(e){if(typeof e!=`object`)throw TypeError(`SqliteCacheStore options must be an object`);if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`SqliteCacheStore options.maxEntrySize must be a non-negative integer`);if(e.maxEntrySize>s)throw TypeError(`SqliteCacheStore options.maxEntrySize must be less than 2gb`);this.#e=e.maxEntrySize}if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`SqliteCacheStore options.maxCount must be a non-negative integer`);this.#t=e.maxCount}}a||=J(`node:sqlite`).DatabaseSync,this.#n=new a(e?.location??`:memory:`),this.#n.exec(`
61
+ `,`latin1`),t!==null&&r!==t){if(n[ne])throw new o;process.emitWarning(new o)}e[b].timeout&&e[b].timeoutType===ye&&e[b].timeout.refresh&&e[b].timeout.refresh(),n[oe]()}}destroy(e){let{socket:t,client:r,abort:i}=this;t[T]=!1,e&&(n(r[S]<=1,`pipeline should only contain this request`),i(e))}};t.exports=we})),nw=q(((e,t)=>{var n=J(`node:assert`),{pipeline:r}=J(`node:stream`),i=$(),{RequestContentLengthMismatchError:a,ResponseContentLengthMismatchError:o,RequestAbortedError:s,SocketError:c,InformationalError:l,InvalidArgumentError:u,HeadersTimeoutError:d,BodyTimeoutError:f,ResponseExceededMaxSizeError:p}=Q(),{kUrl:m,kReset:h,kClient:g,kRunning:_,kPending:v,kQueue:y,kPendingIdx:b,kRunningIdx:x,kError:S,kSocket:C,kStrictContentLength:w,kOnError:T,kMaxConcurrentStreams:E,kHTTP2Session:D,kHostAuthority:O,kResume:k,kSize:A,kHTTPContext:j,kClosed:M,kKeepAliveDefaultTimeout:N,kHeadersTimeout:P,kBodyTimeout:F,kEnableConnectProtocol:I,kRemoteSettings:L,kHTTP2Stream:R,kHTTP2SessionState:ee,kHTTP2Options:te,kMaxResponseSize:ne}=AC(),{channels:re}=FC(),z=Symbol(`open streams`),ie=Symbol(`request stream id`),ae=Symbol(`request stream`),oe=Symbol(`request stream cleanup`),B=Symbol(`request stream state`),V=Symbol(`received goaway`),H=Symbol(`goaway replay attempts`),se=Symbol(`refused stream retry`),ce=1,le,U;try{U=J(`node:http2`)}catch{U={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:W,HTTP2_HEADER_METHOD:ue,HTTP2_HEADER_PATH:de,HTTP2_HEADER_SCHEME:fe,HTTP2_HEADER_CONTENT_LENGTH:pe,HTTP2_HEADER_EXPECT:me,HTTP2_HEADER_STATUS:G,HTTP2_HEADER_PROTOCOL:he,NGHTTP2_NO_ERROR:ge,NGHTTP2_REFUSED_STREAM:_e}}=U;function ve(e,t){return e[S]||(t===ge?new l(`HTTP/2: "GOAWAY" frame received with code ${t}`):new c(`HTTP/2: "GOAWAY" frame received with code ${t}`,i.getSocketInfo(e[C])))}function K(e,t){let n=e[g],r=e[C];if(n[D]===e&&(n[C]=null,n[j]=null,n[D]=null),r!=null&&r[S]==null&&(r[S]=t),!e.closed&&!e.destroyed)try{e.destroy(t)}catch{}i.destroy(r,t)}function ye(e,t){let n=Number.isInteger(t)?t:2**53-1;for(let t=e[x];t<e[b];t++){let r=e[y][t];if(r!=null&&(typeof r[ie]!=`number`||r[ie]>n))return t}return e[b]}function be(e){e[ie]=null,e[ae]=null,e[oe]=null}function xe(e,t,n){let r=e[oe],i=e[ae];be(e),r?.(i),e[ie]=t.id,e[ae]=t,e[oe]=n}function Se(e){let t=e[oe],n=e[ae];be(e),t?.(n)}function Ce(e,t){e[y].splice(e[b]+1,0,t)}function we(e,t,n=!1){let r=e[y],i=e[x];if(i<e[b]&&r[i]===t){r[i]=null,e[x]=i+1;return}let a=r.indexOf(t,i);a===-1||a>=e[b]||(r.splice(a,1),e[b]--,n&&e[b]<e[x]&&(e[b]=e[x]))}function Te(e){let{body:t}=e;return t==null||i.isBuffer(t)||i.isBlobLike(t)}function Ee(e){return e[ae]?.[B]?.responseReceived===!0}function De(e){let t=(e[H]??0)+1;return e[H]=t,t<=ce}function Oe(e,t=_e){if(e!=null&&!e.destroyed&&!e.closed)try{e.close(t)}catch{}}function ke(e){let t=e[ae];return Se(e),Ae(t),t}function Ae(e){e!=null&&e[B]!=null&&(e[B]=null,e.off(`close`,$e),e.off(`close`,Qe),e[D]!=null&&Ze(e),!e.destroyed&&!e.closed&&e.once(`error`,Xe))}function q(e,t){e[C]=t;let n=e[te].sessionOptions?.initialWindowSize,r=e[te].connectionWindowSize,a=U.connect(e[m],{createConnection:()=>t,peerMaxConcurrentStreams:e[te].maxConcurrentStreams,settings:{enablePush:!1,...n==null?null:{initialWindowSize:n}}});return e[C]=t,a[z]=0,a[g]=e,a[C]=t,a[ee]={idleTimeout:null,noStreamsTimeout:null,refed:!0,ping:{interval:e[te].pingInterval===0?null:setInterval(He,e[te].pingInterval,a).unref()}},a[V]=!1,a[I]=!1,a[L]=!1,r&&i.addListener(a,`connect`,Be.bind(a,r)),i.addListener(a,`error`,Ue),i.addListener(a,`frameError`,We),i.addListener(a,`goaway`,Ge),i.addListener(a,`close`,Ke),i.addListener(a,`remoteSettings`,Ve),Me(a),e[D]=a,t[D]=a,i.addListener(t,`error`,Je),i.addListener(t,`end`,Ye),i.addListener(t,`close`,qe),t[M]=!1,t.on(`close`,Y),{version:`h2`,defaultPipelining:1/0,write(t){return ft(e,t)},resume(){Ne(e)},destroy(e,n){t[M]?queueMicrotask(n):t.destroy(e).on(`close`,n)},get destroyed(){return t.destroyed},busy(t){if(a[L]===!1&&e[_]>0||e[_]>=e[E])return!0;if(t!=null){if(e[_]>0){if((t.upgrade===`websocket`||t.method===`CONNECT`)&&a[L]===!1)return!0}else return(t.upgrade===`websocket`||t.method===`CONNECT`)&&a[L]===!1}return!1}}}function je(e){let t=e[ee];t.refed===!1&&(t.refed=!0,e.ref())}function Me(e){let t=e[ee];t.refed===!0&&(t.refed=!1,e.unref())}function Ne(e){let t=e[C],n=e[D];t?.destroyed===!1&&(n[z]===0&&e[A]===0?Me(n):je(n),e[A]===0&&n[z]===0?Re(n):Le(n),e[E]===0&&e[_]===0&&e[v]>0?Fe(n):Pe(n))}function Pe(e){let t=e[ee];t?.noStreamsTimeout!=null&&(clearTimeout(t.noStreamsTimeout),t.noStreamsTimeout=null)}function Fe(e){let t=e[g],n=e[ee],r=t[P];r&&n.noStreamsTimeout==null&&(n.noStreamsTimeout=setTimeout(Ie,r,e).unref())}function Ie(e){let t=e[g],n=e[ee];if(n.noStreamsTimeout=null,t[D]!==e||t[E]!==0||t[_]!==0||t[v]===0)return;let r=new d(`HTTP/2: server did not accept a new stream within ${t[P]}`),a=t[y].splice(t[b]);for(let e=0;e<a.length;e++)a[e]!=null&&i.errorRequest(t,a[e],r);e[S]=r,K(e,r)}function Le(e){let t=e[ee];t?.idleTimeout!=null&&(clearTimeout(t.idleTimeout),t.idleTimeout=null)}function Re(e){let t=e[g];if(t[D]!==e||e.closed||e.destroyed)return;if(e[z]!==0||t[A]!==0){Le(e);return}let n=e[ee];n.idleTimeout??=setTimeout(ze,t[N],e).unref()}function ze(e){let t=e[g],n=e[C],r=e[ee];if(r.idleTimeout=null,t[D]!==e||e[z]!==0||t[A]!==0||e.closed||e.destroyed)return;let a=new l(`socket idle timeout`);n[S]=a,i.destroy(n,a)}function Be(e){try{typeof this.setLocalWindowSize==`function`&&this.setLocalWindowSize(e)}catch{}}function Ve(e){if(this[g][E]=e.maxConcurrentStreams??this[g][E],this[L]===!0&&this[I]===!0&&e.enableConnectProtocol===!1){let e=new l(`HTTP/2: Server disabled extended CONNECT protocol against RFC-8441`);this[C][S]=e,this[g][T](e);return}this[I]=e.enableConnectProtocol??this[I],this[L]=!0,this[g][k]()}function He(e){let t=e[ee];if((e.closed||e.destroyed)&&t.ping.interval!=null){clearInterval(t.ping.interval),t.ping.interval=null;return}e.ping(n.bind(e));function n(e,t){let n=this[g],r=this[C];if(e!=null){let t=new l(`HTTP/2: "PING" errored - type ${e.message}`);r[S]=t,n[T](t)}else n.emit(`ping`,t)}}function Ue(e){n(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[C][S]=e,!this[V]&&this[g][T](e)}function We(e,t,n){if(n===0){if(this[V])return;let n=new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[C][S]=n,this[g][T](n)}}function Ge(e,t){if(this[V])return;this[V]=!0;let n=ve(this,e),r=this[g],a=r[b],o=ye(r,t),s=[],c=[];for(let e=o;e<a;e++){let t=r[y][e];if(t!=null){let e=Ee(t);c.push(ke(t)),!e&&Te(t)&&De(t)?s.push(t):i.errorRequest(r,t,n)}}for(let e=0;e<c.length;e++)Oe(c[e]);if(o!==a){let e=r[y].slice(a);r[y].length=o,r[y].push(...s,...e)}r[D]===this&&(r[C]=null,r[j]=null,r[D]=null),Le(this),Pe(this),!this.closed&&!this.destroyed&&this.close(),r[b]=o,r.emit(`disconnect`,r[m],[r],n),r[k]()}function Ke(){let{[g]:e,[ee]:t,[C]:r}=this,a=r[S]||this[S]||new c(`closed`,i.getSocketInfo(r));if(e[D]===this&&(e[C]=null,e[j]=null,e[D]=null),Le(this),Pe(this),t.ping.interval!=null&&(clearInterval(t.ping.interval),t.ping.interval=null),e.destroyed){n(e[v]===0);let t=e[y].splice(e[x]);for(let n=0;n<t.length;n++){let r=t[n];r!=null&&i.errorRequest(e,r,a)}}}function qe(){let e=this[S]||new c(`closed`,i.getSocketInfo(this)),t=this[D],r=t[g];r[C]!==this&&(t[V]||r[D]!=null&&r[D]!==t)||(r[C]=null,r[j]=null,r[D]===t&&(r[D]=null),t.destroy(e),r[b]=r[x],n(r[_]===0),r.emit(`disconnect`,r[m],[r],e),r[k]())}function Je(e){n(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[S]=e,!this[D]?.[V]&&this[D]?.[g]?.[T](e)}function Ye(){i.destroy(this,new c(`other side closed`,i.getSocketInfo(this)))}function Y(){this[M]=!0}function Xe(){}function Ze(e){let t=e[D],n=t[g];e[D]=null,--t[z],t[z]===0&&(n[A]===0||t[V])&&(Me(t),Re(t))}function Qe(){this.off(`error`,Xe);let e=this[B];this[B]=null,it(e,new l(`HTTP/2: stream closed before response headers`)),Ze(this)}function $e(){let e=this[B];e!=null&&(mt(this),e.pendingEnd&&!e.request.aborted&&!e.request.completed?e.request.onResponseEnd(e.trailers||{}):!e.request.aborted&&!e.request.completed&&i.errorRequest(e.client,e.request,new l(`HTTP/2: stream closed before the response was complete`)),ut(e),Ze(this),this[B]=null)}function et(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function tt(e){let t={};for(let n=0;n<e.length;n+=2){let r=e[n+0],i=e[n+1],a=t[r];if(r===`cookie`){t[r]=a==null?i:Array.isArray(a)?(a.push(i),a):[a,i];continue}if(typeof i==`string`){t[r]=a?`${a}, ${i}`:i;continue}for(let e=0;e<i.length;e++)t[r]=t[r]?`${t[r]}, ${i[e]}`:i[e]}return t}function nt(e){e.off(`response`,ct),e.off(`error`,at),e.off(`end`,ot),e.off(`timeout`,st),e.off(`error`,Xe)}function rt(e){if(e==null)return;let t=e[B];if(t==null)return;let{request:n}=t;n[ae]===e&&be(n),nt(e),!e.destroyed&&!e.closed&&e.once(`error`,Xe)}function it(e,t){if(e==null)return;let{request:n}=e;e.responseReceived||n.aborted||n.completed||(rt(e.stream),e.abort(t,!0))}function at(){let e=this[B];typeof this.rstCode==`number`&&this.rstCode!==0?it(e,new l(`HTTP/2: "stream error" received - code ${this.rstCode}`)):it(e,new l(`HTTP/2: stream errored before response headers`))}function ot(){it(this[B],new l(`HTTP/2: stream half-closed (remote)`))}function st(){let e=this[B];it(e,new l(`HTTP/2: "stream timeout after ${e.headersTimeout}"`))}function ct(e,t){let n=this,r=n[B],{request:i}=r;r.responseReceived=!0;let a=e[G];delete e[G];try{i.onRequestUpgrade(a,e,n)}catch(e){r.abort(e);return}i.aborted||(nt(n),be(i),ut(r))}function lt(e,t){let{request:n,headersTimeout:r,session:i}=t;e[R]=!0,e[D]=i,e[B]=t,t.stream=e,xe(n,e,rt),e.once(`response`,ct),e.on(`error`,at),e.once(`end`,ot),e.on(`timeout`,st),e.once(`close`,Qe),Le(i),++i[z],e.setTimeout(r)}function ut(e,t=!1){e.requestFinalized||(e.requestFinalized=!0,we(e.client,e.request,t),e.client[k]())}function dt(e,t,n,r,a,o){try{return n.request(a,o)}catch(a){if(a?.code===`ERR_HTTP2_INVALID_SESSION`||a?.code===`ERR_HTTP2_GOAWAY_SESSION`){let r=new c(a.message,i.getSocketInfo(n[C]));return r.cause=a,n[S]=r,K(n,r),Ce(e,t),null}let o=new l(a.message,{cause:a});return n[S]=o,n[C][S]=o,n.destroy(o),i.destroy(n[C],o),r(o),null}}function ft(e,t){let r=t.headersTimeout??e[P],o=t.bodyTimeout??e[F],c=e[D],{method:d,path:f,host:p,upgrade:m,expectContinue:h,signal:g,protocol:_,headers:v}=t;if(m!=null&&m!==`websocket`)return i.errorRequest(e,t,new u(`Custom upgrade "${m}" not supported over HTTP/2`)),!1;let y=tt(v);y[W]=p||e[O],y[ue]=d;let b={abort:null,body:t.body,bytesRead:0,client:e,contentLength:null,expectsPayload:!1,maxResponseSize:e[ne],request:t,headersTimeout:r,bodyTimeout:o,requestFinalized:!1,responseContentLength:null,responseReceived:!1,bodySent:!1,pendingEnd:!1,trailers:null,session:c,stream:null},x=(n,r=!1)=>{if(!(t.aborted||t.completed)){if(n||=new s,i.errorRequest(e,t,n),b.stream!=null){Se(t);let a=b.stream;a.close(),a.destroyed||i.destroy(a),e[T](n),ut(b,r)}i.destroy(b.body,n)}};b.abort=x;let S=null;try{t.onRequestStart(x,null)}catch(n){i.errorRequest(e,t,n)}if(t.aborted)return!1;if(m||d===`CONNECT`)return je(c),m===`websocket`?c[I]===!1?(i.errorRequest(e,t,new l(`HTTP/2: Extended CONNECT protocol not supported by server`)),Me(c),!1):(y[ue]=`CONNECT`,y[he]=`websocket`,y[de]=f,y[fe]=_===`ws:`||_===`wss:`?_===`ws:`?`http`:`https`:_===`http:`?`http`:`https`,S=dt(e,t,c,x,y,{endStream:!1,signal:g}),S==null?(Me(c),!1):(lt(S,b),!0)):(S=dt(e,t,c,x,y,{endStream:!1,signal:g}),S==null?(Me(c),!1):(lt(S,b),!0));y[de]=f,y[fe]=_===`http:`?`http`:`https`;let E=d===`PUT`||d===`POST`||d===`PATCH`||d===`QUERY`||d===`PROPFIND`||d===`PROPPATCH`,k=b.body;k&&typeof k.read==`function`&&k.read(0);let A=i.bodyLength(k);if(i.isFormDataLike(k)){le??=ew().extractBody;let[e,t]=le(k);y[`content-type`]=t,k=e.stream,A=e.length}if(A??=t.contentLength,A===0&&!E&&(A=null),et(d)&&A>0&&t.contentLength!=null&&t.contentLength!==A){if(e[w])return i.errorRequest(e,t,new a),!1;process.emitWarning(new a)}if(A!=null&&(n(k||A===0,`no body must not have content length`),y[pe]=`${A}`),je(c),re.sendHeaders.hasSubscribers){let e=``;for(let t in y)e+=`${t}: ${y[t]}\r\n`;re.sendHeaders.publish({request:t,headers:e,socket:c[C]})}let j=k===null||A===0;return b.body=k,b.contentLength=A,b.expectsPayload=E,h&&(y[me]=`100-continue`),S=dt(e,t,c,x,y,{endStream:j,signal:g}),S!=null&&(S[R]=!0,S[B]=b,b.stream=S,Le(c),++c[z],r&&S.setTimeout(r),S[D]=c,S.on(`close`,$e),xe(t,S,mt),h&&S.once(`continue`,Tt),S.on(`response`,_t),S.on(`headers`,gt),S.on(`end`,vt),S.on(`error`,bt),S.on(`frameError`,xt),S.on(`aborted`,St),(r||o)&&S.on(`timeout`,Ct),S.on(`trailers`,wt),h||Tt.call(S),!0)}function pt(e){e.off(`error`,Xe),e.off(`continue`,Tt),e.off(`response`,_t),e.off(`headers`,gt),e.off(`end`,vt),e.off(`error`,bt),e.off(`frameError`,xt),e.off(`aborted`,St),e.off(`timeout`,Ct),e.off(`trailers`,wt),e.off(`data`,ht)}function mt(e){if(e==null)return;let t=e[B];if(t==null)return;let{request:n}=t;n[ae]===e&&be(n),!e.destroyed&&!e.closed&&(pt(e),e.once(`error`,Xe))}function ht(e){let t=this,n=t[B];if(n==null)return;let{request:r,maxResponseSize:i,responseContentLength:a}=n;if(!(r.aborted||r.completed)){if(a!=null&&n.bytesRead+e.length>a){n.abort(new o);return}if(i>-1&&n.bytesRead+e.length>i){n.abort(new p);return}n.bytesRead+=e.length,r.onResponseData(e)===!1&&t.pause()}}function gt(e){let t=this[B];if(t==null)return;let{request:n}=t;if(n.aborted||n.completed)return;let r=e[G];delete e[G],n.onResponseStart(Number(r),e,Xe,``)}function _t(e){let t=this,n=t[B];if(n==null)return;let{request:r}=n;t.off(`response`,_t),n.body!=null&&!n.bodySent&&!t.writableEnded&&(t.removeListener(`continue`,Tt),t.end());let i=Number(e[G]);if(delete e[G],r.onResponseStarted(),n.responseReceived=!0,r.method!==`HEAD`&&i!==304){let t=e[pe];n.responseContentLength=t==null?null:Number(t)}if((n.headersTimeout||n.bodyTimeout)&&t.setTimeout(n.bodyTimeout),r.aborted||r.completed){mt(t);return}r.onResponseStart(i,e,t.resume.bind(t),``)===!1&&t.pause(),t.on(`data`,ht)}function vt(){let e=this,t=e[B];if(t==null)return;let{request:n}=t;if(e.off(`end`,vt),t.responseReceived){if(!n.aborted&&!n.completed){if(t.responseContentLength!=null&&t.bytesRead!==t.responseContentLength){t.abort(new o);return}t.pendingEnd=!0,$e.call(e)}}else t.abort(new l(`HTTP/2: stream half-closed (remote)`),!0)}function yt(e,t){let{client:n,request:r}=t;return t.responseReceived||r.aborted||r.completed||r[se]||!Te(r)?!1:(r[se]=!0,ke(r),t.stream=null,t.requestFinalized=!0,we(n,r),n[y].splice(n[b],0,r),n[k](),!0)}function bt(e){let t=this,n=t[B];n!=null&&(t.off(`error`,bt),n.responseContentLength!=null&&n.bytesRead!==n.responseContentLength&&(e=new o),typeof t.rstCode==`number`&&t.rstCode!==ge&&(e.http2ErrorCode=t.rstCode),!(t.rstCode===_e&&yt(t,n))&&n.abort(e))}function xt(e,t){let n=this,r=n[B];r!=null&&(n.off(`frameError`,xt),r.abort(new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`)))}function St(){this.off(`data`,ht)}function Ct(){let e=this,t=e[B];if(t==null)return;e.off(`timeout`,Ct);let n=t.responseReceived?new f(`HTTP/2: "stream timeout after ${t.bodyTimeout}"`):new d(`HTTP/2: "headers timeout after ${t.headersTimeout}"`);t.abort(n)}function wt(e){let t=this,n=t[B];if(n==null)return;let{request:r}=n;t.off(`trailers`,wt),t.off(`data`,ht),!(r.aborted||r.completed)&&(n.trailers=e)}function Tt(){let e=this,t=e[B];t.bodySent=!0;let{abort:r,body:a,client:o,contentLength:s,expectsPayload:c,request:l}=t;!a||s===0?Et(r,e,null,o,l,o[C],s,c):i.isBuffer(a)?Et(r,e,a,o,l,o[C],s,c):i.isBlobLike(a)?typeof a.stream==`function`?kt(r,e,a.stream(),o,l,o[C],s,c):Ot(r,e,a,o,l,o[C],s,c):i.isStream(a)?Dt(r,o[C],c,e,a,o,l,s):i.isIterable(a)?kt(r,e,a,o,l,o[C],s,c):n(!1)}function Et(e,t,r,a,o,s,c,l){try{r!=null&&i.isBuffer(r)&&(n(c===r.byteLength,`buffer body must have content length`),t.cork(),t.write(r),t.uncork(),t.end(),o.onBodySent(r)),l||(s[h]=!0),o.onRequestSent(),a[k]()}catch(t){e(t)}}function Dt(e,t,a,o,s,c,l,u){n(u!==0||c[_]===0,`stream body cannot be pipelined`);let d=r(s,o,n=>{n?(i.destroy(d,n),e(n)):(i.removeAllListeners(d),l.onRequestSent(),a||(t[h]=!0),c[k]())});i.addListener(d,`data`,f);function f(e){l.onBodySent(e)}}async function Ot(e,t,n,r,i,o,s,c){try{if(s!=null&&s!==n.size)throw new a;let e=Buffer.from(await n.arrayBuffer());t.cork(),t.write(e),t.uncork(),t.end(),i.onBodySent(e),i.onRequestSent(),c||(o[h]=!0),r[k]()}catch(t){e(t)}}async function kt(e,t,r,i,a,o,s,c){n(s!==0||i[_]===0,`iterator body cannot be pipelined`);let l=null;function u(){if(l){let e=l;l=null,e()}}let d=()=>new Promise((e,t)=>{n(l===null),o[S]?t(o[S]):l=e});t.on(`close`,u).on(`drain`,u);try{for await(let e of r){if(o[S])throw o[S];let n=t.write(e);a.onBodySent(e),n||await d()}t.end(),a.onRequestSent(),c||(o[h]=!0),i[k]()}catch(t){e(t)}finally{t.off(`close`,u).off(`drain`,u)}}t.exports=q})),rw=q(((e,t)=>{var n=J(`node:assert`),r=J(`node:net`),i=J(`node:http`),a=$(),{ClientStats:o}=PC(),{channels:s}=FC(),c=IC(),l=RC(),{InvalidArgumentError:u,InformationalError:d,ClientDestroyedError:f}=Q(),p=zC(),{kUrl:m,kServerName:h,kClient:g,kBusy:_,kConnect:v,kResuming:y,kRunning:b,kPending:x,kSize:S,kQueue:C,kConnected:w,kConnecting:T,kNeedDrain:E,kKeepAliveDefaultTimeout:D,kHostHeader:O,kPendingIdx:k,kRunningIdx:A,kError:j,kPipelining:M,kKeepAliveTimeoutValue:N,kMaxHeadersSize:P,kKeepAliveMaxTimeout:F,kKeepAliveTimeoutThreshold:I,kHeadersTimeout:L,kBodyTimeout:R,kStrictContentLength:ee,kConnector:te,kMaxRequests:ne,kCounter:re,kClose:z,kDestroy:ie,kDispatch:ae,kLocalAddress:oe,kMaxResponseSize:B,kOnError:V,kHTTPContext:H,kMaxConcurrentStreams:se,kHostAuthority:ce,kResume:le,kHTTP2Options:U}=AC(),W=tw(),ue=nw(),de=Symbol(`kClosedResolve`),fe=i&&i.maxHeaderSize&&Number.isInteger(i.maxHeaderSize)&&i.maxHeaderSize>0?()=>i.maxHeaderSize:()=>{throw new u(`http module not available or http.maxHeaderSize invalid`)},pe=()=>{};function me(e){return e[M]??e[H]?.defaultPipelining??1}var G=!1;function he(e){G!==!0&&(process.emitWarning(`Use h2Options.${e} instead. ${e} for H2 will be deprecated in future major.`,{code:`UNDICI-H2-OPTIONS`}),G=!0)}function ge(e){return e[H]?.version===`h2`?e[se]:me(e)}var _e=class extends l{constructor(e,{maxHeaderSize:t,headersTimeout:n,socketTimeout:i,requestTimeout:o,connectTimeout:s,bodyTimeout:c,idleTimeout:l,keepAlive:d,keepAliveTimeout:f,maxKeepAliveTimeout:g,keepAliveMaxTimeout:_,keepAliveTimeoutThreshold:v,socketPath:b,pipelining:x,tls:S,strictContentLength:w,maxCachedSessions:T,connect:j,maxRequestsPerClient:re,localAddress:z,maxResponseSize:ie,autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:se,maxConcurrentStreams:W,allowH2:ue,useH2c:pe,initialWindowSize:me,connectionWindowSize:G,pingInterval:ge,webSocket:_e,h2Options:K,eventSource:ye}={}){if(d!==void 0)throw new u(`unsupported keepAlive, use pipelining=0 instead`);if(i!==void 0)throw new u(`unsupported socketTimeout, use headersTimeout & bodyTimeout instead`);if(o!==void 0)throw new u(`unsupported requestTimeout, use headersTimeout & bodyTimeout instead`);if(l!==void 0)throw new u(`unsupported idleTimeout, use keepAliveTimeout instead`);if(g!==void 0)throw new u(`unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead`);if(t!=null){if(!Number.isInteger(t)||t<1)throw new u(`invalid maxHeaderSize`)}else t=fe();if(b!=null&&typeof b!=`string`)throw new u(`invalid socketPath`);if(s!=null&&(!Number.isFinite(s)||s<0))throw new u(`invalid connectTimeout`);if(f!=null&&(!Number.isFinite(f)||f<=0))throw new u(`invalid keepAliveTimeout`);if(_!=null&&(!Number.isFinite(_)||_<=0))throw new u(`invalid keepAliveMaxTimeout`);if(v!=null&&!Number.isFinite(v))throw new u(`invalid keepAliveTimeoutThreshold`);if(n!=null&&(!Number.isInteger(n)||n<0))throw new u(`headersTimeout must be a positive integer or zero`);if(c!=null&&(!Number.isInteger(c)||c<0))throw new u(`bodyTimeout must be a positive integer or zero`);if(j!=null&&typeof j!=`function`&&typeof j!=`object`)throw new u(`connect must be a function or an object`);if(re!=null&&(!Number.isInteger(re)||re<0))throw new u(`maxRequestsPerClient must be a positive number`);if(z!=null&&(typeof z!=`string`||r.isIP(z)===0))throw new u(`localAddress must be valid string IP address`);if(ie!=null&&(!Number.isInteger(ie)||ie<-1))throw new u(`maxResponseSize must be a positive number`);if(se!=null&&(!Number.isInteger(se)||se<-1))throw new u(`autoSelectFamilyAttemptTimeout must be a positive number`);if(ue!=null&&typeof ue!=`boolean`)throw new u(`allowH2 must be a valid boolean value`);if(ue!==!1){if(K!=null){if(K.useH2c!=null&&typeof K.useH2c!=`boolean`)throw new u(`h2Options.useH2c must be a valid boolean value`);if(K.settings?.initialWindowSize!=null&&(!Number.isInteger(K.settings.initialWindowSize)||K.settings.initialWindowSize<1))throw new u(`h2Options.settings.initialWindowSize must be a positive integer, greater than 0`);if(K.maxConcurrentStreams!=null&&(!Number.isInteger(K.maxConcurrentStreams)||K.maxConcurrentStreams<1))throw new u(`h2Options.maxConcurrentStreams must be a positive integer, greater than 0`);if(K.connectionWindowSize!=null&&(!Number.isInteger(K.connectionWindowSize)||K.connectionWindowSize<1))throw new u(`h2Options.connectionWindowSize must be a positive integer, greater than 0`);if(K.pingInterval!=null&&(typeof K.pingInterval!=`number`||!Number.isInteger(K.pingInterval)||K.pingInterval<0))throw new u(`h2Options.pingInterval must be a positive integer, greater or equal to 0`)}else{if(pe!=null&&typeof pe!=`boolean`)throw he(`useH2c`),new u(`useH2c must be a valid boolean value`);if(W!=null&&(typeof W!=`number`||W<1))throw he(`maxConcurrentStreams`),new u(`maxConcurrentStreams must be a positive integer, greater than 0`);if(me!=null&&(!Number.isInteger(me)||me<1))throw he(`initialWindowSize`),new u(`initialWindowSize must be a positive integer, greater than 0`);if(G!=null&&(!Number.isInteger(G)||G<1))throw he(`connectionWindowSize`),new u(`connectionWindowSize must be a positive integer, greater than 0`);if(ge!=null&&(typeof ge!=`number`||!Number.isInteger(ge)||ge<0))throw he(`pingInterval`),new u(`pingInterval must be a positive integer, greater or equal to 0`)}}if(super({webSocket:_e,eventSource:ye}),typeof j!=`function`)j=p({...S,maxCachedSessions:T,allowH2:ue,socketPath:b,useH2c:K?.useH2c??pe,timeout:s,...typeof ae==`boolean`?{autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:se}:void 0,...j});else{let e=j;j=(t,n)=>e({...t,...b==null?null:{socketPath:b},...ue==null?null:{allowH2:ue}},n)}this[m]=a.parseOrigin(e),this[ce]=`${this[m].hostname}${this[m].port?`:${this[m].port}`:``}`,this[te]=j,this[M]=x??1,this[P]=t,this[D]=f??4e3,this[F]=_??6e5,this[I]=v??2e3,this[N]=this[D],this[h]=null,this[oe]=z??null,this[y]=0,this[E]=0,this[O]=`host: ${this[ce]}\r\n`,this[R]=c??3e5,this[L]=n??3e5,this[ee]=w??!0,this[ne]=re,this[de]=null,this[B]=ie>-1?ie:-1,this[H]=null,this[U]={pingInterval:K?.pingInterval??ge??6e4,connectionWindowSize:K?.connectionWindowSize??G??524288,maxConcurrentStreams:K?.maxConcurrentStreams??W??100,sessionOptions:{initialWindowSize:K?.initialWindowSize??me??262144}},this[C]=[],this[A]=0,this[k]=0,this[le]=e=>xe(this,e),this[V]=e=>ve(this,e)}get pipelining(){return this[M]}set pipelining(e){this[M]=e,this[le](!0)}get stats(){return new o(this)}get[x](){return this[C].length-this[k]}get[b](){return this[k]-this[A]}get[S](){return this[C].length-this[A]}get[w](){return!!this[H]&&!this[T]&&!this[H].destroyed}get[_](){let e=this[H]?.version===`h2`;return!!(this[H]?.busy(null)||this[S]>=(ge(this)||1)||this[x]>0&&!e)}[v](e){K(this),this.once(`connect`,e)}[ae](e,t){let n=new c(this[m].origin,e,t);return this[C].push(n),this[y]||(a.bodyLength(n.body)==null&&a.isIterable(n.body)?(this[y]=1,queueMicrotask(()=>xe(this))):this[le](!0)),this[y]&&this[E]!==2&&this[_]&&(this[E]=2),this[E]<2}[z](){return new Promise(e=>{this[S]?this[de]=e:e(null)})}[ie](e){return new Promise(t=>{let n=this[C].splice(this[k]);for(let t=0;t<n.length;t++){let r=n[t];r!=null&&a.errorRequest(this,r,e)}let r=()=>{this[de]&&(this[de](),this[de]=null),t(null)};this[H]?(this[H].destroy(e,r),this[H]=null):queueMicrotask(r),this[le]()})}};function ve(e,t){if(e[b]===0&&t.code!==`UND_ERR_INFO`&&t.code!==`UND_ERR_SOCKET`){n(e[k]===e[A]);let r=e[C].splice(e[A]);for(let n=0;n<r.length;n++){let i=r[n];i!=null&&a.errorRequest(e,i,t)}n(e[S]===0)}}function K(e){n(!e[T]),n(!e[H]);let{host:t,hostname:i,protocol:o,port:c}=e[m];if(i[0]===`[`){let e=i.indexOf(`]`);n(e!==-1);let t=i.substring(1,e);n(r.isIPv6(t)),i=t}e[T]=!0,s.beforeConnect.hasSubscribers&&s.beforeConnect.publish({connectParams:{host:t,hostname:i,protocol:o,port:c,version:e[H]?.version,servername:e[h],localAddress:e[oe]},connector:e[te]});try{e[te]({host:t,hostname:i,protocol:o,port:c,servername:e[h],localAddress:e[oe]},(r,l)=>{if(r){ye(e,r,{host:t,hostname:i,protocol:o,port:c}),e[le]();return}if(e.destroyed){a.destroy(l.on(`error`,pe),new f),e[le]();return}n(l);try{e[H]=l.alpnProtocol===`h2`?ue(e,l):W(e,l)}catch(n){l.destroy().on(`error`,pe),ye(e,n,{host:t,hostname:i,protocol:o,port:c}),e[le]();return}e[T]=!1,l[re]=0,l[ne]=e[ne],l[g]=e,l[j]=null,s.connected.hasSubscribers&&s.connected.publish({connectParams:{host:t,hostname:i,protocol:o,port:c,version:e[H]?.version,servername:e[h],localAddress:e[oe]},connector:e[te],socket:l}),e.emit(`connect`,e[m],[e]),e[le]()})}catch(n){ye(e,n,{host:t,hostname:i,protocol:o,port:c}),e[le]()}}function ye(e,t,{host:n,hostname:r,protocol:i,port:o}){if(!e.destroyed){if(e[T]=!1,s.connectError.hasSubscribers&&s.connectError.publish({connectParams:{host:n,hostname:r,protocol:i,port:o,version:e[H]?.version,servername:e[h],localAddress:e[oe]},connector:e[te],error:t}),t.code===`ERR_TLS_CERT_ALTNAME_INVALID`){let n=e[C].splice(e[A],e[b]);e[k]=e[A];for(let r=0;r<n.length;r++)a.errorRequest(e,n[r],t);for(;e[x]>0&&e[C][e[k]].servername===e[h];){let n=e[C].splice(e[k],1)[0];a.errorRequest(e,n,t)}}else ve(e,t);e.emit(`connectionError`,e[m],[e],t)}}function be(e){e[E]=0,e.emit(`drain`,e[m],[e])}function xe(e,t){e[y]!==2&&(e[y]=2,Se(e,t),e[y]=0,e[A]>256&&(e[C].splice(0,e[A]),e[k]-=e[A],e[A]=0))}function Se(e,t){for(;;){if(e.destroyed){n(e[x]===0);return}if(e[de]&&!e[S]){e[de](),e[de]=null;return}if(e[H]&&e[H].resume(),e[_])e[E]=2;else if(e[E]===2){t?(e[E]=1,queueMicrotask(()=>be(e))):be(e);continue}if(e[x]===0||e[b]>=(ge(e)||1))return;let r=e[C][e[k]];if(r===null)return;if(r.aborted){e[C].splice(e[k],1);continue}if(e[m].protocol===`https:`&&e[h]!==r.servername){if(e[b]>0)return;e[h]=r.servername,e[H]?.destroy(new d(`servername changed`),()=>{e[H]=null,xe(e)})}if(e[T])return;if(!e[H]){e[h]=r.servername,K(e);return}if(e[H].destroyed||e[H].busy(r))return;!r.aborted&&e[H].write(r)?e[k]++:e[C].splice(e[k],1)}}t.exports=_e})),iw=q(((e,t)=>{var n=2048,r=2047,i=class{bottom=0;top=0;list=Array(n).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&r)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&r}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&r,e)}};t.exports=class{constructor(){this.head=this.tail=new i}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new i),this.head.push(e)}shift(){let e=this.tail,t=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next,e.next=null),t}}})),aw=q(((e,t)=>{var{PoolStats:n}=PC(),r=RC(),i=iw(),{kConnected:a,kSize:o,kRunning:s,kPending:c,kQueued:l,kBusy:u,kFree:d,kUrl:f,kClose:p,kDestroy:m,kDispatch:h}=AC(),g=Symbol(`clients`),_=Symbol(`needDrain`),v=Symbol(`queue`),y=Symbol(`closed resolve`),b=Symbol(`onDrain`),x=Symbol(`onConnect`),S=Symbol(`onDisconnect`),C=Symbol(`onConnectionError`),w=Symbol(`on client busy`),T=Symbol(`on client drain`),E=Symbol(`drain queue`),D=Symbol(`get dispatcher`),O=Symbol(`has dispatcher`),k=Symbol(`add client`),A=Symbol(`remove client`);t.exports={PoolBase:class extends r{[v]=new i;[l]=0;[g]=[];[_]=!1;[b](e,t,n){if(e.closed||e.destroyed)return;let r=this[v],i=!1;for(this[T](e);!i;){let t=r.shift();if(!t)break;this[l]--,i=!e.dispatch(t.opts,t.handler)}if(e[_]=i,i&&this[w](e),!i&&this[_]&&(this[_]=!1,this.emit(`drain`,t,[this,...n])),this[y]&&r.isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e).then(this[y])}}[w](){}[T](){}[E](e,t){let n=this[v],r=!0;for(;!n.isEmpty();){let e=this[D]();if(!e){r=!1;break}let t=n.shift();if(this[l]--,!e.dispatch(t.opts,t.handler)&&(e[_]=!0,this[w](e),r=this[O](),!r))break}if(r&&this[_]&&(this[_]=!1,this.emit(`drain`,e,[this,...t])),this[y]&&n.isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e).then(this[y])}}[x]=(e,t)=>{this.emit(`connect`,e,[this,...t])};[S]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)};[C]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)};get[u](){return this[_]}get[a](){let e=0;for(let{[a]:t}of this[g])e+=t;return e}get[d](){let e=0;for(let{[a]:t,[_]:n}of this[g])e+=t&&!n;return e}get[c](){let e=this[l];for(let{[c]:t}of this[g])e+=t;return e}get[s](){let e=0;for(let{[s]:t}of this[g])e+=t;return e}get[o](){let e=this[l];for(let{[o]:t}of this[g])e+=t;return e}get stats(){return new n(this)}[p](){if(this[v].isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e)}return new Promise(e=>{this[y]=e})}[m](e){for(;;){let t=this[v].shift();if(!t)break;t.handler.onResponseError(null,e)}let t=Array(this[g].length);for(let n=0;n<this[g].length;n++)t[n]=this[g][n].destroy(e);return Promise.all(t)}[h](e,t){let n=this[D]();return n?n.dispatch(e,t)||(n[_]=!0,this[w](n),this[_]=!this[O]()):(this[_]=!0,this[v].push({opts:e,handler:t}),this[l]++),!this[_]}[O](){for(let e=0;e<this[g].length;e++){let t=this[g][e];if(!t[_]&&t.closed!==!0&&t.destroyed!==!0)return!0}return!1}[k](e){return e.on(`drain`,this[b].bind(this,e)).on(`connect`,this[x]).on(`disconnect`,this[S]).on(`connectionError`,this[C]),this[g].push(e),this[_]&&queueMicrotask(()=>{this[_]&&!e[_]&&this[b](e,e[f],[e,this])}),this}[A](e){let t=this[g].indexOf(e);t!==-1&&this[g].splice(t,1),e.close(()=>{}),this[_]=!this[g].some(e=>!e[_]&&e.closed!==!0&&e.destroyed!==!0)}},kClients:g,kNeedDrain:_,kAddClient:k,kRemoveClient:A,kDrainQueue:E,kOnClientBusy:w,kOnClientDrain:T,kGetDispatcher:D,kHasDispatcher:O}})),ow=q(((e,t)=>{var{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kDrainQueue:o,kOnClientBusy:s,kOnClientDrain:c,kGetDispatcher:l,kHasDispatcher:u,kRemoveClient:d}=aw(),f=rw(),{InvalidArgumentError:p}=Q(),m=$(),{kConnecting:h,kHTTPContext:g,kUrl:_}=AC(),v=zC(),y=Symbol(`options`),b=Symbol(`connections`),x=Symbol(`factory`),S=Symbol(`protocol`),C=Symbol(`protocol probe`);function w(e,t){return new f(e,t)}function T(e,t){return t instanceof f&&e[S]!==`h1`&&(e[y].useH2c===!0||e[_].protocol===`https:`&&e[y].allowH2!==!1)}function E(e){let t=e[x](e[_],e[y]);return T(e,t)&&(e[C]=t),e[a](t),t}t.exports=class extends n{constructor(e,{connections:t,factory:n=w,connect:i,connectTimeout:a,tls:s,maxCachedSessions:c,socketPath:l,autoSelectFamily:u,autoSelectFamilyAttemptTimeout:d,allowH2:h,useH2c:T,clientTtl:E,...D}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new p(`invalid connections`);if(typeof n!=`function`)throw new p(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new p(`connect must be a function or an object`);typeof i!=`function`&&(i=v({...s,maxCachedSessions:c,allowH2:h,useH2c:T,socketPath:l,timeout:a,...typeof u==`boolean`?{autoSelectFamily:u,autoSelectFamilyAttemptTimeout:d}:void 0,...i})),super(D),this[b]=t||null,this[_]=m.parseOrigin(e),this[y]={...m.deepClone(D),connect:i,allowH2:h,useH2c:T,clientTtl:E,socketPath:l},this[x]=n,this[S]=null,this[C]=null,this.on(`connect`,(e,t)=>{if(E!=null&&E>0)for(let e of t)Object.assign(e,{ttl:Date.now()});let n=t[t.length-1];n instanceof f&&(this[S]=n[g]?.version),n===this[C]&&this[S]!==`h2`&&(this[C]=null,this[o](e,t.slice(1)))}),this.on(`disconnect`,(e,t)=>{t.includes(this[C])&&(this[C]=null,this[o](e,t.slice(1)))}),this.on(`connectionError`,(e,t)=>{let n=!1;for(let e of t){e===this[C]&&(this[C]=null,n=!0);let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}n&&this[o](e,t.slice(1))})}[s](e){this[C]===null&&e[h]&&T(this,e)&&(this[C]=e)}[c](e){e===this[C]&&(this[C]=null)}[l](){let e=this[y].clientTtl;for(let t=0;t<this[r].length;t++){let n=this[r][t];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e)this[d](n),t--;else if(!n[i])return n}if(this[C]===null&&(!this[b]||this[r].length<this[b]))return E(this)}[u](){let e=this[y].clientTtl;for(let t=0;t<this[r].length;t++){let n=this[r][t];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e)this[d](n),t--;else if(!n[i])return!0}return this[C]===null&&(!this[b]||this[r].length<this[b])&&(E(this),!0)}}})),sw=q(((e,t)=>{var{BalancedPoolMissingUpstreamError:n,InvalidArgumentError:r}=Q(),{PoolBase:i,kClients:a,kNeedDrain:o,kAddClient:s,kRemoveClient:c,kGetDispatcher:l}=aw(),u=ow(),{kOriginless:d,kUrl:f}=AC(),p=$(),m=Symbol(`factory`),h=Symbol(`options`),g=Symbol(`kGreatestCommonDivisor`),_=Symbol(`kCurrentWeight`),v=Symbol(`kIndex`),y=Symbol(`kWeight`),b=Symbol(`kMaxWeightPerServer`),x=Symbol(`kErrorPenalty`);function S(e,t){if(e===0)return t;for(;t!==0;){let n=t;t=e%t,e=n}return e}function C(e,t){return new u(e,t)}t.exports=class extends i{constructor(e=[],{factory:t=C,connect:n,tls:i,...a}={}){if(typeof t!=`function`)throw new r(`factory must be a function.`);super(a),this[d]=!0,n&&typeof n!=`function`&&(n={...n}),i&&typeof i!=`function`&&(i={...i}),this[h]={...p.deepClone(a),connect:n,tls:i},this[v]=-1,this[_]=0,this[b]=this[h].maxWeightPerServer||100,this[x]=this[h].errorPenalty||15,Array.isArray(e)||(e=[e]),this[m]=t;for(let t of e)this.addUpstream(t);this._updateBalancedPoolStats()}addUpstream(e){let t=p.parseOrigin(e).origin;if(this[a].find(e=>e[f].origin===t&&e.closed!==!0&&e.destroyed!==!0))return this;let n=this[m](t,this[h]);this[s](n),n.on(`connect`,()=>{n[y]=Math.min(this[b],n[y]+this[x])}),n.on(`connectionError`,()=>{n[y]=Math.max(1,n[y]-this[x]),this._updateBalancedPoolStats()}),n.on(`disconnect`,(...e)=>{let t=e[2];t&&t.code===`UND_ERR_SOCKET`&&(n[y]=Math.max(1,n[y]-this[x]),this._updateBalancedPoolStats())});for(let e of this[a])e[y]=this[b];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let t=0;t<this[a].length;t++)e=S(this[a][t][y],e);this[g]=e}removeUpstream(e){let t=p.parseOrigin(e).origin,n=this[a].find(e=>e[f].origin===t&&e.closed!==!0&&e.destroyed!==!0);return n&&this[c](n),this}getUpstream(e){let t=p.parseOrigin(e).origin;return this[a].find(e=>e[f].origin===t&&e.closed!==!0&&e.destroyed!==!0)}get upstreams(){return this[a].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[f].origin)}[l](){if(this[a].length===0)throw new n;let e=0,t=-1;for(;e++<this[a].length;){this[v]=(this[v]+1)%this[a].length;let e=this[a][this[v]];if(this[v]===0&&(this[_]=this[_]-this[g],this[_]<=0&&(this[_]=this[b])),!(e[o]||e.closed===!0||e.destroyed===!0)&&((t===-1||e[y]>this[a][t][y])&&(t=this[v]),e[y]>=this[_]))return e}if(t!==-1)return this[_]=this[a][t][y],this[v]=t,this[a][t]}}})),cw=q(((e,t)=>{var{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kGetDispatcher:o,kHasDispatcher:s,kRemoveClient:c}=aw(),l=rw(),{InvalidArgumentError:u}=Q(),d=$(),{kUrl:f}=AC(),p=zC(),m=Symbol(`options`),h=Symbol(`connections`),g=Symbol(`factory`),_=Symbol(`index`);function v(e,t){return new l(e,t)}t.exports=class extends n{constructor(e,{connections:t,factory:n=v,connect:i,connectTimeout:a,tls:o,maxCachedSessions:s,socketPath:c,autoSelectFamily:l,autoSelectFamilyAttemptTimeout:y,allowH2:b,clientTtl:x,...S}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new u(`invalid connections`);if(typeof n!=`function`)throw new u(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new u(`connect must be a function or an object`);typeof i!=`function`&&(i=p({...o,maxCachedSessions:s,allowH2:b,socketPath:c,timeout:a,...typeof l==`boolean`?{autoSelectFamily:l,autoSelectFamilyAttemptTimeout:y}:void 0,...i})),super(S),this[h]=t||null,this[f]=d.parseOrigin(e),this[m]={...d.deepClone(S),connect:i,allowH2:b,clientTtl:x,socketPath:c},this[g]=n,this[_]=-1,this.on(`connect`,(e,t)=>{if(x!=null&&x>0)for(let e of t)Object.assign(e,{ttl:Date.now()})}),this.on(`connectionError`,(e,t,n)=>{for(let e of t){let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}})}[o](){let e=this[m].clientTtl;if(this[r].length===0){let e=this[g](this[f],this[m]);return this[a](e),e}let t=0;for(;t<this[r].length;){this[_]=(this[_]+1)%this[r].length;let n=this[r][this[_]];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e){this[c](n),this[_]--;continue}if(!n[i])return n;t++}if(!this[h]||this[r].length<this[h]){let e=this[g](this[f],this[m]);return this[a](e),e}}[s](){let e=this[m].clientTtl;for(let t=0;t<this[r].length;t++){let n=this[r][t];if(e!=null&&e>0&&n.ttl&&Date.now()-n.ttl>e)this[c](n),t<=this[_]&&this[_]--,t--;else if(!n[i])return!0}if(!this[h]||this[r].length<this[h]){let e=this[g](this[f],this[m]);return this[a](e),!0}return!1}}})),lw=q(((e,t)=>{var{InvalidArgumentError:n,MaxOriginsReachedError:r}=Q(),{kBusy:i,kClients:a,kConnected:o,kRunning:s,kPending:c,kClose:l,kDestroy:u,kDispatch:d,kUrl:f}=AC(),p=RC(),m=ow(),h=rw(),g=$(),_=Symbol(`onConnect`),v=Symbol(`onDisconnect`),y=Symbol(`onConnectionError`),b=Symbol(`onDrain`),x=Symbol(`factory`),S=Symbol(`options`),C=Symbol(`origins`);function w(e,t){return t&&t.connections===1?new h(e,t):new m(e,t)}t.exports=class extends p{constructor({factory:e=w,maxOrigins:t=1/0,connect:r,...i}={}){if(typeof e!=`function`)throw new n(`factory must be a function.`);if(r!=null&&typeof r!=`function`&&typeof r!=`object`)throw new n(`connect must be a function or an object`);if(typeof t!=`number`||Number.isNaN(t)||t<=0)throw new n(`maxOrigins must be a number greater than 0`);super(i),r&&typeof r!=`function`&&(r={...r}),this[S]={...g.deepClone(i),maxOrigins:t,connect:r},this[x]=e,this[a]=new Map,this[C]=new Set,this[b]=(e,t)=>{this.emit(`drain`,e,[this,...t])},this[_]=(e,t)=>{this.emit(`connect`,e,[this,...t])},this[v]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)},this[y]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)}}get[s](){let e=0;for(let t of this[a].values())e+=t[s];return e}[d](e,t){let s;if(e.origin&&(typeof e.origin==`string`||e.origin instanceof URL))s=String(e.origin);else throw new n(`opts.origin must be a non-empty string or URL.`);let l=e.allowH2??this[S].allowH2,u=l===!1?`${s}#http1-only`:s;if(this[C].size>=this[S].maxOrigins&&!this[C].has(s))throw new r;let d=this[a].get(u);if(!d){d=this[x](e.origin,l===!1?{...this[S],allowH2:!1}:this[S]);let t=()=>{if(this[a].get(u)!==d||d[o]>0||d[i]||d[c]>0)return;this[a].delete(u),d.destroyed||d.close();let e=!1;for(let t of this[a].keys())if(t===s||t===`${s}#http1-only`){e=!0;break}e||this[C].delete(s)};d.on(`drain`,this[b]).on(`connect`,this[_]).on(`disconnect`,(e,n,r)=>{t(),this[v](e,n,r)}).on(`connectionError`,(e,n,r)=>{t(),this[y](e,n,r)}),this[a].set(u,d),this[C].add(s)}return d.dispatch(e,t)}[l](){let e=[];for(let t of this[a].values())e.push(t.close());return this[a].clear(),Promise.all(e)}[u](e){let t=[];for(let n of this[a].values())t.push(n.destroy(e));return this[a].clear(),Promise.all(t)}get stats(){let e={};for(let t of this[a].values())t.stats&&(e[t[f].origin]=t.stats);return e}}})),uw=q(((e,t)=>{var n=LC(),{InvalidArgumentError:r}=Q(),{toRawHeaders:i}=$(),{kOriginless:a,kUrl:o}=AC(),s=class{#e;constructor(e){this.#e=e}onRequestStart(e,t){this.#e.onConnect?.(t=>e.abort(t),t)}onRequestUpgrade(e,t,n,r){let a=e?.rawHeaders??i(n??{});this.#e.onUpgrade?.(t,a,r)}onResponseStart(e,t,n,r){let a=e?.rawHeaders??i(n??{});this.#e.onHeaders?.(t,a,()=>e.resume(),r)===!1&&e.pause()}onResponseData(e,t){this.#e.onData?.(t)===!1&&e.pause()}onResponseEnd(e,t){let n=e?.rawTrailers??i(t??{});this.#e.onComplete?.(n)}onResponseError(e,t){if(!this.#e.onError)throw t;this.#e.onError(t)}onBodySent(e){this.#e.onBodySent?.(e)}onRequestSent(){this.#e.onRequestSent?.()}onResponseStarted(){this.#e.onResponseStarted?.()}};t.exports=class e extends n{#e;constructor(e){if(super(),!e||typeof e.dispatch!=`function`)throw new r(`Argument dispatcher must implement dispatch`);this.#e=e,this[o]=e[o],this[a]=e[a]}static wrapHandler(e){if(!e||typeof e!=`object`)throw new r(`handler must be an object`);return typeof e.onRequestStart==`function`?e:new s(e)}dispatch(t,n){return t.allowH2!==!1&&(t={...t,allowH2:!1}),this.#e.dispatch(t,e.wrapHandler(n))}close(...e){return this.#e.close(...e)}destroy(...e){return this.#e.destroy(...e)}}})),dw=q(((e,t)=>{var{Buffer:n}=J(`node:buffer`),r=J(`node:net`),{InvalidArgumentError:i}=Q();function a(e){if(r.isIPv4(e)){let t=e.split(`.`).map(Number);return{type:1,buffer:n.from(t)}}if(r.isIPv6(e))return{type:4,buffer:o(e)};let t=n.from(e,`utf8`);if(t.length>255)throw new i(`Domain name too long (max 255 bytes)`);return{type:3,buffer:n.concat([n.from([t.length]),t])}}function o(e){let t=n.alloc(16),i=e;if(e.includes(`.`)){let t=e.lastIndexOf(`:`),n=e.slice(t+1);if(r.isIPv4(n)){let r=n.split(`.`).map(Number),a=(r[0]<<8|r[1]).toString(16),o=(r[2]<<8|r[3]).toString(16);i=`${e.slice(0,t)}:${a}:${o}`}}let a=i.indexOf(`::`);if(a!==-1){let e=i.slice(0,a),n=i.slice(a+2),r=e===``?[]:e.split(`:`),o=n===``?[]:n.split(`:`),s=0;for(let e of r)t.writeUInt16BE(parseInt(e,16),s),s+=2;s=16-o.length*2;for(let e of o)t.writeUInt16BE(parseInt(e,16),s),s+=2}else{let e=i.split(`:`);for(let n=0;n<e.length;n++)t.writeUInt16BE(parseInt(e[n],16),n*2)}return t}function s(e,t,r){let i=n.allocUnsafe(2);return i.writeUInt16BE(r,0),n.concat([n.from([e]),t,i])}function c(e,t=0){if(e.length<t+1)throw new i(`Buffer too small to contain address type`);let n=e[t],r,a=t+1;switch(n){case 1:if(e.length<a+6)throw new i(`Buffer too small for IPv4 address`);r=Array.from(e.subarray(a,a+4)).join(`.`),a+=4;break;case 3:{if(e.length<a+1)throw new i(`Buffer too small for domain length`);let t=e[a];if(a+=1,e.length<a+t+2)throw new i(`Buffer too small for domain address`);r=e.subarray(a,a+t).toString(`utf8`),a+=t;break}case 4:{if(e.length<a+18)throw new i(`Buffer too small for IPv6 address`);let t=[];for(let n=0;n<8;n++){let r=e.readUInt16BE(a+n*2);t.push(r.toString(16))}r=t.join(`:`),a+=16;break}default:throw new i(`Invalid address type: ${n}`)}if(e.length<a+2)throw new i(`Buffer too small for port`);let o=e.readUInt16BE(a);return a+=2,{address:r,port:o,bytesRead:a-t}}function l(e){let t={1:`General SOCKS server failure`,2:`Connection not allowed by ruleset`,3:`Network unreachable`,4:`Host unreachable`,5:`Connection refused`,6:`TTL expired`,7:`Command not supported`,8:`Address type not supported`}[e]||`Unknown SOCKS5 error code: ${e}`,n=Error(t);return n.code=`SOCKS5_${e}`,n}t.exports={parseAddress:a,parseIPv6:o,buildAddressBuffer:s,parseResponseAddress:c,createReplyError:l}})),fw=q(((e,t)=>{var{EventEmitter:n}=J(`node:events`),{Buffer:r}=J(`node:buffer`),{InvalidArgumentError:i,Socks5ProxyError:a}=Q(),{debuglog:o}=J(`node:util`),{parseAddress:s}=dw(),c=o(`undici:socks5`),l=r.alloc(0),u=5,d={NO_AUTH:0,GSSAPI:1,USERNAME_PASSWORD:2,NO_ACCEPTABLE:255},f={CONNECT:1,BIND:2,UDP_ASSOCIATE:3},p={IPV4:1,DOMAIN:3,IPV6:4},m={SUCCEEDED:0,GENERAL_FAILURE:1,CONNECTION_NOT_ALLOWED:2,NETWORK_UNREACHABLE:3,HOST_UNREACHABLE:4,CONNECTION_REFUSED:5,TTL_EXPIRED:6,COMMAND_NOT_SUPPORTED:7,ADDRESS_TYPE_NOT_SUPPORTED:8},h={INITIAL:`initial`,HANDSHAKING:`handshaking`,AUTHENTICATING:`authenticating`,AUTHENTICATED:`authenticated`,CONNECTING:`connecting`,CONNECTED:`connected`,ERROR:`error`,CLOSED:`closed`};t.exports={Socks5Client:class extends n{constructor(e,t={}){if(super(),!e)throw new i(`socket is required`);this.socket=e,this.options=t,this.state=h.INITIAL,this.buffer=l,this.onSocketData=this.onData.bind(this),this.onSocketError=this.onError.bind(this),this.onSocketClose=this.onClose.bind(this),this.authMethods=[],t.username&&t.password&&this.authMethods.push(d.USERNAME_PASSWORD),this.authMethods.push(d.NO_AUTH),this.socket.on(`data`,this.onSocketData),this.socket.on(`error`,this.onSocketError),this.socket.on(`close`,this.onSocketClose)}onData(e){c(`received data`,e.length,`bytes in state`,this.state),this.buffer=r.concat([this.buffer,e]);try{switch(this.state){case h.HANDSHAKING:this.handleHandshakeResponse();break;case h.AUTHENTICATING:this.handleAuthResponse();break;case h.CONNECTING:this.handleConnectResponse()}}catch(e){this.onError(e)}}onError(e){c(`socket error`,e),this.state=h.ERROR,this.emit(`error`,e),this.destroy()}onClose(){c(`socket closed`),this.state=h.CLOSED,this.emit(`close`)}destroy(){this.socket&&!this.socket.destroyed&&this.socket.destroy()}markAuthenticated(){this.state=h.AUTHENTICATED,this.emit(`authenticated`)}handshake(){if(this.state!==h.INITIAL)throw new i(`Handshake already started`);c(`starting handshake with`,this.authMethods.length,`auth methods`),this.state=h.HANDSHAKING;let e=r.alloc(2+this.authMethods.length);e[0]=u,e[1]=this.authMethods.length,this.authMethods.forEach((t,n)=>{e[2+n]=t}),this.socket.write(e)}handleHandshakeResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==u)throw new a(`Invalid SOCKS version: ${e}`,`UND_ERR_SOCKS5_VERSION`);if(t===d.NO_ACCEPTABLE)throw new a(`No acceptable authentication method`,`UND_ERR_SOCKS5_AUTH_REJECTED`);if(this.buffer=this.buffer.subarray(2),c(`server selected auth method`,t),t===d.NO_AUTH)this.markAuthenticated();else if(t===d.USERNAME_PASSWORD)this.state=h.AUTHENTICATING,this.sendAuthRequest();else throw new a(`Unsupported authentication method: ${t}`,`UND_ERR_SOCKS5_AUTH_METHOD`)}sendAuthRequest(){let{username:e,password:t}=this.options;if(!e||!t)throw new i(`Username and password required for authentication`);c(`sending username/password auth`);let n=r.from(e),a=r.from(t);if(n.length>255||a.length>255)throw new i(`Username or password too long`);let o=r.alloc(3+n.length+a.length);o[0]=1,o[1]=n.length,n.copy(o,2),o[2+n.length]=a.length,a.copy(o,3+n.length),this.socket.write(o)}handleAuthResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==1)throw new a(`Invalid auth sub-negotiation version: ${e}`,`UND_ERR_SOCKS5_AUTH_VERSION`);if(t!==0)throw new a(`Authentication failed`,`UND_ERR_SOCKS5_AUTH_FAILED`);this.buffer=this.buffer.subarray(2),c(`authentication successful`),this.markAuthenticated()}connect(e,t){if(this.state===h.CONNECTING||this.state===h.CONNECTED)throw new i(`Connection already in progress`);if(this.state!==h.AUTHENTICATED)throw new i(`Client must be authenticated before CONNECT`);c(`connecting to`,e,t),this.state=h.CONNECTING;let n=this.buildConnectRequest(f.CONNECT,e,t);this.socket.write(n)}buildConnectRequest(e,t,n){let{type:i,buffer:a}=s(t),o=r.alloc(4+a.length+2);return o[0]=u,o[1]=e,o[2]=0,o[3]=i,a.copy(o,4),o.writeUInt16BE(n,4+a.length),o}handleConnectResponse(){if(this.buffer.length<4)return;let e=this.buffer[0],t=this.buffer[1],n=this.buffer[3];if(e!==u)throw new a(`Invalid SOCKS version in reply: ${e}`,`UND_ERR_SOCKS5_REPLY_VERSION`);let r=4;if(n===p.IPV4)r+=6;else if(n===p.DOMAIN){if(this.buffer.length<5)return;r+=1+this.buffer[4]+2}else if(n===p.IPV6)r+=18;else throw new a(`Invalid address type in reply: ${n}`,`UND_ERR_SOCKS5_ADDR_TYPE`);if(this.buffer.length<r)return;if(t!==m.SUCCEEDED)throw new a(`SOCKS5 connection failed: ${this.getReplyErrorMessage(t)}`,`UND_ERR_SOCKS5_REPLY_${t}`);let i,o=4;if(n===p.IPV4)i=Array.from(this.buffer.subarray(o,o+4)).join(`.`),o+=4;else if(n===p.DOMAIN){let e=this.buffer[o];o+=1,i=this.buffer.subarray(o,o+e).toString(),o+=e}else if(n===p.IPV6){let e=[];for(let t=0;t<8;t++){let n=this.buffer.readUInt16BE(o+t*2);e.push(n.toString(16))}i=e.join(`:`),o+=16}let s=this.buffer.readUInt16BE(o);this.buffer=l,this.state=h.CONNECTED,this.socket.removeListener(`data`,this.onSocketData),c(`connected, bound address:`,i,`port:`,s),this.emit(`connected`,{address:i,port:s})}getReplyErrorMessage(e){switch(e){case m.GENERAL_FAILURE:return`General SOCKS server failure`;case m.CONNECTION_NOT_ALLOWED:return`Connection not allowed by ruleset`;case m.NETWORK_UNREACHABLE:return`Network unreachable`;case m.HOST_UNREACHABLE:return`Host unreachable`;case m.CONNECTION_REFUSED:return`Connection refused`;case m.TTL_EXPIRED:return`TTL expired`;case m.COMMAND_NOT_SUPPORTED:return`Command not supported`;case m.ADDRESS_TYPE_NOT_SUPPORTED:return`Address type not supported`;default:return`Unknown error code: ${e}`}}},AUTH_METHODS:d,COMMANDS:f,ADDRESS_TYPES:p,REPLY_CODES:m,STATES:h}})),pw=q(((e,t)=>{var{URL:n}=J(`node:url`),r,i=RC(),{ConnectTimeoutError:a,InvalidArgumentError:o}=Q(),{Socks5Client:s,STATES:c}=fw(),{kBusy:l,kConnected:u,kDispatch:d,kClose:f,kDestroy:p}=AC(),m=ow(),h=zC(),{setupConnectTimeout:g}=$(),{debuglog:_}=J(`node:util`),v=_(`undici:socks5-proxy`),y=5e3,b=Symbol(`proxy url`),x=Symbol(`proxy headers`),S=Symbol(`proxy auth`),C=Symbol(`proxy protocol`),w=Symbol(`pools`),T=Symbol(`connector`),E=Symbol(`connect timeout`),D=Symbol(`request tls settings`),O=Symbol(`request tls timeout`);function k(e,t,n){return new a(`Connect Timeout Error (attempted address: ${e}:${t}, timeout: ${n}ms)`)}var A=!1;t.exports=class extends i{constructor(e,t={}){if(super(t),A||=(process.emitWarning(`SOCKS5 proxy support is experimental and subject to change`,`ExperimentalWarning`),!0),!e)throw new o(`Proxy URL is mandatory`);let r=typeof e==`string`?new n(e):e;if(r.protocol!==`socks5:`&&r.protocol!==`socks:`)throw new o(`Proxy URL must use socks5:// or socks:// protocol`);this[b]=r,this[x]=t.headers||{},this[C]=t.proxyTls?`https:`:`http:`;let i=t.connectTimeout??y;if(!Number.isFinite(i)||i<0)throw new o(`invalid connectTimeout`);this[E]=i;let{timeout:a,...s}=t.requestTls||{},c=a??i;if(!Number.isFinite(c)||c<0)throw new o(`invalid requestTls.timeout`);this[D]=s,this[O]=c,this[S]={username:t.username||(r.username?decodeURIComponent(r.username):null),password:t.password||(r.password?decodeURIComponent(r.password):null)};let l=t.proxyTls?.timeout??i;if(!Number.isFinite(l)||l<0)throw new o(`invalid proxyTls.timeout`);this[T]=t.connect||h({...t.proxyTls,timeout:l,servername:t.proxyTls?.servername||r.hostname}),this[w]=new Map}async createSocks5Connection(e,t){let n=this[b].hostname,r=parseInt(this[b].port)||1080;v(`creating SOCKS5 connection to`,n,r);let i=Promise.withResolvers();this[T]({hostname:n,host:n,port:r,protocol:this[C]},(e,t)=>{e?i.reject(e):i.resolve(t)});let a=await i.promise,o=new s(a,this[S]);o.on(`error`,e=>{v(`SOCKS5 error:`,e),a.destroy()}),await o.handshake();let l=Promise.withResolvers(),u=this[E]===0?null:setTimeout(()=>{d(),o.destroy(),l.reject(k(n,r,this[E]))},this[E]),d=()=>{clearTimeout(u),o.removeListener(`authenticated`,f),o.removeListener(`error`,p)},f=()=>{d(),l.resolve()},p=e=>{d(),l.reject(e)};o.state===c.AUTHENTICATED?(clearTimeout(u),l.resolve()):(o.once(`authenticated`,f),o.once(`error`,p)),await l.promise,await o.connect(e,t);let m=Promise.withResolvers(),h=this[E]===0?null:setTimeout(()=>{g(),o.destroy(),m.reject(k(e,t,this[E]))},this[E]),g=()=>{clearTimeout(h),o.removeListener(`connected`,_),o.removeListener(`error`,y)},_=n=>{v(`SOCKS5 tunnel established to`,e,t,`via`,n),g(),m.resolve()},y=e=>{g(),m.reject(e)};return o.once(`connected`,_),o.once(`error`,y),await m.promise,a}[d](e,t){let{origin:i}=e;v(`dispatching request to`,i,`via SOCKS5`);try{let a=String(i),o=this[w].get(a);if(!o||o.destroyed||o.closed){o=new m(i,{pipelining:e.pipelining,connections:e.connections,connect:async(e,t)=>{try{let e=new n(i),a=e.hostname,o=parseInt(e.port)||(e.protocol===`https:`?443:80);v(`establishing SOCKS5 connection to`,a,o);let s=await this.createSocks5Connection(a,o),c=s;if(e.protocol===`https:`){r||=J(`node:tls`),v(`upgrading to TLS`),c=r.connect({...this[D],socket:s,servername:this[D]?.servername||a});let e=Promise.withResolvers(),t=()=>{queueMicrotask(l),c.removeListener(`secureConnect`,n),c.removeListener(`error`,i)},n=()=>{t(),e.resolve()},i=n=>{t(),e.reject(n)},l=g(new WeakRef(c),{timeout:this[O],hostname:a,port:o});c.once(`secureConnect`,n),c.once(`error`,i),await e.promise}t(null,c)}catch(e){v(`SOCKS5 connection error:`,e),t(e)}}}),this[w].set(a,o);let t=()=>{this[w].get(a)!==o||o[u]>0||o[l]||(this[w].delete(a),o.destroyed||o.close())};o.on(`disconnect`,t),o.on(`connectionError`,t)}return o[d](e,t)}catch(e){if(v(`dispatch error:`,e),typeof t.onResponseError==`function`)return t.onResponseError(null,e),!1;if(typeof t.onError==`function`)return t.onError(e),!1;throw e}}async[f](){let e=[];for(let t of this[w].values())e.push(t.close());this[w].clear(),await Promise.all(e)}async[p](e){let t=[];for(let n of this[w].values())t.push(n.destroy(e));this[w].clear(),await Promise.all(t)}}})),mw=q(((e,t)=>{var{kProxy:n,kClose:r,kDestroy:i,kDispatch:a}=AC(),o=lw(),s=ow(),c=RC(),{InvalidArgumentError:l,RequestAbortedError:u,SecureProxyConnectionError:d,ProxyConnectionError:f}=Q(),p=zC(),m=rw(),{channels:h}=FC(),g=pw(),{hasSafeIterator:_}=$(),v=Symbol(`proxy agent`),y=Symbol(`proxy client`),b=Symbol(`proxy headers`),x=Symbol(`request tls settings`),S=Symbol(`proxy tls settings`),C=Symbol(`connect endpoint function`),w=Symbol(`connect endpoint function (http/1.1 only)`),T=Symbol(`tunnel proxy`),E=`proxy-authorization`;function D(e){return e===`https:`?443:80}function O(e,t){return new s(e,t)}var k=()=>{};function A(e,t){return t.connections===1?new m(e,t):new s(e,t)}function j(e,t){return t===!0||e!==`http:`}var M=class extends c{#e;#t;constructor(e,{headers:t={},connect:n,factory:r,proxyServername:i}){if(!e)throw new l(`Proxy URL is mandatory`);super(),this[b]=t,this.#t=i,this.#e=r?r(e,{connect:n}):new m(e,{connect:n})}[a](e,t){let n=t.onResponseStart;t.onResponseStart=function(e,r,i,a){if(r===407){typeof t.onResponseError==`function`&&t.onResponseError(e,new l(`Proxy Authentication Required (407)`));return}n&&n.call(this,e,r,i,a)};let{origin:r,path:i=`/`,headers:o={}}=e;if(e.path=r+i,!(`host`in o)&&!(`Host`in o)){let{host:e}=new URL(r);o.host=e}return e.headers={...this[b],...o},this.#t!=null&&(e.servername=this.#t),this.#e[a](e,t)}[r](){return this.#e.close()}[i](e){return this.#e.destroy(e)}},N=class extends c{constructor(e){if(!e||typeof e==`object`&&!(e instanceof URL)&&!e.uri)throw new l(`Proxy uri is mandatory`);let{clientFactory:t=O}=e;if(typeof t!=`function`)throw new l(`Proxy opts.clientFactory must be a function.`);let{proxyTunnel:r,connectTimeout:i}=e;super(e);let a=this.#e(e),{href:s,origin:c,port:m,protocol:_,username:E,password:N,hostname:P}=a;if(this[n]={uri:s,protocol:_},this[x]=e.requestTls,this[S]=e.proxyTls,this[b]=e.headers||{},this[T]=r,e.auth&&e.token)throw new l(`opts.auth cannot be used in combination with opts.token`);e.auth?this[b][`proxy-authorization`]=`Basic ${e.auth}`:e.token?this[b][`proxy-authorization`]=e.token:E&&N?this[b][`proxy-authorization`]=`Basic ${Buffer.from(`${decodeURIComponent(E)}:${decodeURIComponent(N)}`).toString(`base64`)}`:E&&(this[b][`proxy-authorization`]=`Basic ${Buffer.from(`${decodeURIComponent(E)}:`).toString(`base64`)}`);let F=p({timeout:i,...e.proxyTls}),I=p({timeout:i,...e.proxyTls,allowH2:!1});this[C]=p({timeout:i,...e.requestTls}),this[w]=p({timeout:i,...e.requestTls,allowH2:!1});let L=e.factory||A,R=(t,r)=>{let{protocol:a}=new URL(t);if(this[n].protocol===`socks5:`||this[n].protocol===`socks:`)return new g(this[n].uri,{headers:this[b],connect:F,factory:L,username:e.username||E,password:e.password||N,connectTimeout:i,proxyTls:e.proxyTls,requestTls:e.requestTls});if(!j(a,this[T])){let e=this[n].protocol===`https:`?(e,t)=>I(e,(e,n)=>{e&&e.code===`ERR_TLS_CERT_ALTNAME_INVALID`?t(new d(e)):t(e,n)}):I;return new M(this[n].uri,{headers:this[b],connect:e,factory:L,proxyServername:this[n].protocol===`https:`?this[S]?.servername||P:void 0})}return L(t,r)};this[y]=_===`socks5:`||_===`socks:`?null:t(a,{connect:F}),this[v]=new o({...e,factory:R,connect:async(e,t)=>{if(!this[y]){t(new l(`Cannot establish tunnel connection without a proxy client`));return}let n=e.host;e.port||(n+=`:${D(e.protocol)}`);try{let r={origin:c,port:m,path:n,signal:e.signal,headers:{...this[b],host:e.host,...e.connections==null||e.connections>0?{"proxy-connection":`keep-alive`}:{}},servername:this[S]?.servername||P},{socket:i,statusCode:a}=await this[y].connect(r);if(a!==200){i.on(`error`,k).destroy(),t(new u(`Proxy response (${a}) !== 200 when HTTP Tunneling`));return}if(h.proxyConnected.hasSubscribers&&h.proxyConnected.publish({socket:i,connectParams:r}),e.protocol!==`https:`){t(null,i);return}let o;o=this[x]?this[x].servername:e.servername,(e.allowH2===!1?this[w]:this[C])({...e,servername:o,httpSocket:i},t)}catch(e){e.code===`ERR_TLS_CERT_ALTNAME_INVALID`?t(new d(e)):e.code===`UND_ERR_SOCKET`?t(new f(e)):t(e)}}})}dispatch(e,t){let n=P(e.headers);if(F(n),n&&!(`host`in n)&&!(`Host`in n)){let{host:t}=new URL(e.origin);n.host=t}return this[v].dispatch({...e,headers:n},t)}#e(e){return typeof e==`string`?new URL(e):e instanceof URL?e:new URL(e.uri)}[r](){let e=[this[v].close()];return this[y]&&e.push(this[y].close()),Promise.all(e)}[i](){let e=[this[v].destroy()];return this[y]&&e.push(this[y].destroy()),Promise.all(e)}};function P(e){if(Array.isArray(e)){let t={};for(let n=0;n<e.length;n+=2)I(e[n])&&L(),t[e[n]]=e[n+1];return t}if(e&&typeof e==`object`&&_(e)){let t={};for(let[n,r]of e){if(!Object.hasOwn(t,n)){t[n]=r;continue}let e=t[n],i=[];e!==void 0&&i.push(...Array.isArray(e)?e:[e]),r!==void 0&&i.push(...Array.isArray(r)?r:[r]),t[n]=i.length>1?i:i[0]}return t}return e}function F(e){for(let t in e)I(t)&&L()}function I(e){return e.length===19&&e.toLowerCase()===E}function L(){throw new l(`Proxy-Authorization should be sent in ProxyAgent constructor`)}t.exports=N})),hw=q(((e,t)=>{var n=RC(),{kClose:r,kDestroy:i,kClosed:a,kDestroyed:o,kDispatch:s,kNoProxyAgent:c,kHttpProxyAgent:l,kHttpsProxyAgent:u}=AC(),d=mw(),f=lw(),p={"http:":80,"https:":443};t.exports=class extends n{#e=null;#t=null;#n=null;constructor(e={}){super(e),this.#n=e;let{httpProxy:t,httpsProxy:n,noProxy:r,...i}=e;this[c]=new f(i);let a=t??process.env.http_proxy??process.env.HTTP_PROXY;this[l]=a?new d({...i,uri:a}):this[c];let o=n??process.env.https_proxy??process.env.HTTPS_PROXY;this[u]=o?new d({...i,uri:o}):this[l],this.#a()}[s](e,t){let n=new URL(e.origin);return this.#r(n).dispatch(e,t)}[r](){return Promise.all([this[c].close(),!this[l][a]&&this[l].close(),!this[u][a]&&this[u].close()])}[i](e){return Promise.all([this[c].destroy(e),!this[l][o]&&this[l].destroy(e),!this[u][o]&&this[u].destroy(e)])}#r(e){let{protocol:t,host:n,port:r}=e;return n=n.replace(/:\d*$/,``).replace(/^\[(.+)\]$/,`$1`).toLowerCase(),n.length>1&&n.charCodeAt(n.length-1)===46&&(n=n.slice(0,-1)),r=Number.parseInt(r,10)||p[t]||0,this.#i(n,r)?t===`https:`?this[u]:this[l]:this[c]}#i(e,t){if(this.#o&&this.#a(),this.#t.length===0)return!0;for(let n=0;n<this.#t.length;n++){let r=this.#t[n];if(r.hostname===`*`){if(r.port&&r.port!==t)continue;return!1}if(!(r.port&&r.port!==t)&&(!r.wildcard&&e===r.hostname||e.slice(-(r.hostname.length+1))===`.${r.hostname}`))return!1}return!0}#a(){let e=this.#n.noProxy??this.#s,t=e.split(/[,\s]/),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!r)continue;let i,a,o=r.match(/^\[(.+)\]:(\d+)$/);if(o)i=o[1],a=Number.parseInt(o[2],10);else{let e=r.replace(/^\[(.+)\]$/,`$1`),t=(e.match(/:/g)||[]).length===1&&e.match(/^(.+):(\d+)$/);i=t?t[1]:e,a=t?Number.parseInt(t[2],10):0}let s=r.charCodeAt(0)===42;n.push({hostname:i.replace(/^\*?\./,``).replace(/^(.+)\.$/,`$1`).toLowerCase(),port:a,wildcard:s})}this.#e=e,this.#t=n}get#o(){return this.#n.noProxy===void 0&&this.#e!==this.#s}get#s(){return process.env.no_proxy??process.env.NO_PROXY??``}}})),gw=q(((e,t)=>{var n=J(`node:assert`),{kRetryHandlerDefaultRetry:r}=AC(),{RequestRetryError:i,RequestAbortedError:a}=Q(),{isDisturbed:o,parseRangeHeader:s,wrapRequestBody:c}=$();function l(e){let t=new Date(e).getTime();return isNaN(t)?null:t-Date.now()}function u(e,t,n,r){let a=e[`content-length`];if(a==null||!Number.isFinite(t.start)||!Number.isFinite(t.end))return;let o=Number(a),s=t.end-t.start+1;if(!Number.isFinite(o)||o!==s)throw new i(`Content-Length mismatch`,n,{headers:e,data:{count:r}})}var d=class{#e;#t=!1;#n=null;constructor(e){this.#e=e}set target(e){this.#n=e,this.#t&&e?.pause()}get target(){return this.#n}pause(){this.#t=!0,this.#n?.pause()}resume(){this.#t=!1,this.#n?.resume()}abort(e){this.#n?.abort(e),this.#e(e)}get paused(){return this.#t||(this.#n?.paused??!1)}get aborted(){return this.#n?.aborted??!1}get reason(){return this.#n?.reason??null}get rawHeaders(){return this.#n?.rawHeaders??null}set rawHeaders(e){this.#n&&(this.#n.rawHeaders=e)}get rawTrailers(){return this.#n?.rawTrailers??null}set rawTrailers(e){this.#n&&(this.#n.rawTrailers=e)}};t.exports=class e{constructor(t,{dispatch:n,handler:i}){let{retryOptions:a,...o}=t,{retry:s,maxRetries:l,maxTimeout:u,minTimeout:f,timeoutFactor:p,methods:m,errorCodes:h,retryAfter:g,statusCodes:_,throwOnError:v}=a??{};this.error=null,this.dispatch=n,this.handler=i,this.opts={...o,body:c(t.body)},this.retryOpts={throwOnError:v??!0,retry:s??e[r],retryAfter:g??!0,maxTimeout:u??3e4,minTimeout:f??500,timeoutFactor:p??2,maxRetries:l??5,methods:m??[`GET`,`HEAD`,`OPTIONS`,`PUT`,`DELETE`,`TRACE`,`QUERY`],statusCodes:_??[500,502,503,504,429],errorCodes:h??[`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`UND_ERR_SOCKET`]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null,this.statusCode=null,this.headers=null,this.controllerProxy=new d(e=>this.#e(e)),this.retryPending=!1,this.retryTimer=null,this.pendingResponseData=null,this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,this.aborted=!1}onResponseStartWithRetry(e,t,n,r,i){if(this.retryOpts.throwOnError){this.retryOpts.statusCodes.includes(t)===!1?this.headersSent?this.handler.onResponseError?.(this.controllerProxy,i):(this.headersSent=!0,this.checkpointResponseEnd(n),this.handler.onResponseStart?.(this.controllerProxy,t,n,r)):this.error=i;return}if(o(this.opts.body)){this.headersSent=!0,this.checkpointResponseEnd(n),this.handler.onResponseStart?.(this.controllerProxy,t,n,r);return}function a(a){if(this.aborted)return;this.retryPending=!1,this.retryTimer=null;let o=this.pendingResponseData,s=this.pendingResponseTrailers,c=this.pendingResponseEnded;if(this.pendingResponseData=null,this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,a){if(this.headersSent)this.handler.onResponseError?.(this.controllerProxy,a);else{if(this.headersSent=!0,this.checkpointResponseEnd(n),this.handler.onResponseStart?.(this.controllerProxy,t,n,r),e.resume(),c){for(let t of o)this.onResponseData(e,t);this.onResponseEnd(e,s)}return}e.resume();return}this.error=i,e.resume(),c&&this.onResponseEnd(e,s)}e.pause(),this.retryPending=!0,this.pendingResponseData=[],this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,this.retryTimer=this.retryOpts.retry(i,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},a.bind(this))??null}checkpointResponseEnd(e){if(this.end==null&&this.opts.method!==`HEAD`){let t=e[`content-length`];this.end=t==null?null:Number(t)-1,n(this.end==null||Number.isFinite(this.end),`invalid content-length`),this.resume=this.end!=null}}onRequestStart(e,t){this.controllerProxy.target=e,this.headersSent||this.handler.onRequestStart?.(this.controllerProxy,t)}onBodySent(e){this.handler.onBodySent?.(e)}onRequestSent(){this.handler.onRequestSent?.()}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(this.controllerProxy,t,n,r)}static[r](e,{state:t,opts:n},r){let{statusCode:i,code:a,headers:o}=e,{method:s,retryOptions:c}=n,{maxRetries:u,minTimeout:d,maxTimeout:f,timeoutFactor:p,statusCodes:m,errorCodes:h,methods:g,retryAfter:_}=c,{counter:v}=t;if(a&&a!==`UND_ERR_REQ_RETRY`&&!h.includes(a)){r(e);return}if(Array.isArray(g)&&!g.includes(s)){r(e);return}if(i!=null&&Array.isArray(m)&&!m.includes(i)){r(e);return}if(v>u){r(e);return}let y=_===!1?void 0:o?.[`retry-after`];y&&=(y=Number(y),Number.isNaN(y)?l(o[`retry-after`]):y*1e3);let b=y===0?0:Math.min(y>0?y:d*p**(v-1),f);return setTimeout(()=>r(null),b)}onResponseStart(e,t,r,a){if(t<200){this.handler.onResponseStart?.(this.controllerProxy,t,r,a);return}if(this.error=null,this.retryCount+=1,this.statusCode=t,this.headers=r,this.headersSent){if(t!==206&&(this.start>0||t!==200))throw new i(`server does not support the range header and the payload was partially consumed`,t,{headers:r,data:{count:this.retryCount}});let e=s(r[`content-range`]);if(!e)throw new i(`Content-Range mismatch`,t,{headers:r,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==r.etag)throw new i(`ETag mismatch`,t,{headers:r,data:{count:this.retryCount}});u(r,e,t,this.retryCount);let{start:n,size:a,end:o=a?a-1:null}=e;if(this.start!==n||this.end!=null&&this.end!==o)throw new i(`Content-Range mismatch`,t,{headers:r,data:{count:this.retryCount}});return}if(t>=300){let n=new i(`Request failed`,t,{headers:r,data:{count:this.retryCount}});this.onResponseStartWithRetry(e,t,r,a,n);return}if(this.end==null){if(t===206){let e=s(r[`content-range`]);if(e==null||e.end==null){this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,t,r,a);return}u(r,e,t,this.retryCount);let{start:i,size:o,end:c=o?o-1:null}=e;n(i!=null&&Number.isFinite(i),`content-range mismatch`),n(c!=null&&Number.isFinite(c),`invalid content-length`),this.start=i,this.end=c}if(this.end==null&&this.opts.method!==`HEAD`){let e=r[`content-length`];this.end=e==null?null:Number(e)-1}n(Number.isFinite(this.start)),n(this.end==null||Number.isFinite(this.end),`invalid content-length`),this.resume=!0,this.etag=r.etag==null?null:r.etag,this.etag!=null&&this.etag[0]===`W`&&this.etag[1]===`/`&&(this.etag=null),this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,t,r,a)}else throw new i(`Request failed`,t,{headers:r,data:{count:this.retryCount}})}onResponseData(e,t){if(this.pendingResponseData!==null){this.pendingResponseData.push(t);return}this.error||(this.start+=t.length,this.handler.onResponseData?.(this.controllerProxy,t))}onResponseEnd(e,t){if(this.pendingResponseData!==null){this.pendingResponseTrailers=t,this.pendingResponseEnded=!0;return}if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error){if(this.end!=null&&Number.isFinite(this.end)&&this.start!==this.end+1)throw new i(`Content-Range mismatch`,this.statusCode,{headers:this.headers,data:{count:this.retryCount}});return this.retryCount=0,this.handler.onResponseEnd?.(this.controllerProxy,t)}this.retry()}retry(){if(this.start!==0){let e={range:`bytes=${this.start}-${this.end??``}`};this.etag!=null&&(e[`if-match`]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...e}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(e){this.handler.onResponseError?.(this.controllerProxy,e)}}onResponseError(e,t){if(this.aborted)return;if(e?.aborted||o(this.opts.body)||this.headersSent&&!this.resume){this.handler.onResponseError?.(this.controllerProxy,t);return}function n(e){if(!this.aborted){if(this.retryPending=!1,this.retryTimer=null,!e){this.retry();return}this.handler?.onResponseError?.(this.controllerProxy,e)}}this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryPending=!0,this.retryTimer=this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},n.bind(this))??null}#e(e){this.retryPending&&(this.aborted=!0,this.retryPending=!1,clearTimeout(this.retryTimer),this.retryTimer=null,this.pendingResponseData=null,this.pendingResponseTrailers=null,this.pendingResponseEnded=!1,this.handler.onResponseError?.(this.controllerProxy,e??new a))}}})),_w=q(((e,t)=>{var n=LC(),r=gw(),{kOriginless:i,kUrl:a}=AC();t.exports=class extends n{#e=null;#t=null;constructor(e,t={}){super(t),this.#e=e,this.#t=t,this[a]=e[a],this[i]=e[i]}dispatch(e,t){let n=new r({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:t});return this.#e.dispatch(e,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}}})),vw=q(((e,t)=>{var{InvalidArgumentError:n}=Q(),r=rw();t.exports=class extends r{constructor(e,t){if(typeof e==`string`&&(e=new URL(e)),e.protocol!==`http:`)throw new n(`h2c-client: Only h2c protocol is supported`);let{maxConcurrentStreams:r,pipelining:i,...a}=t??{},o=r??100,s=100;if(r!=null&&(!Number.isInteger(r)||r<1))throw new n(`maxConcurrentStreams must be a positive integer, greater than 0`);if(i!=null&&Number.isInteger(i)&&i>0&&(s=i),s>o)throw new n(`h2c-client: pipelining cannot be greater than maxConcurrentStreams`);super(e,{...a,maxConcurrentStreams:o,pipelining:s,allowH2:!0,useH2c:!0})}}})),yw=q(((e,t)=>{var n=J(`node:assert`),{addAbortListener:r}=J(`node:events`),{Readable:i}=J(`node:stream`),{RequestAbortedError:a,NotSupportedError:o,InvalidArgumentError:s,AbortError:c}=Q(),l=$(),u=Symbol(`kConsume`),d=Symbol(`kReading`),f=Symbol(`kBody`),p=Symbol(`kAbort`),m=Symbol(`kContentType`),h=Symbol(`kContentLength`),g=Symbol(`kUsed`),_=Symbol(`kBytesRead`),v=()=>{},y=class extends i{constructor({resume:e,abort:t,contentType:n=``,contentLength:r,highWaterMark:i=65536}){super({autoDestroy:!0,read:e,highWaterMark:i}),this._readableState.dataEmitted=!1,this[p]=t,this[u]=null,this[_]=0,this[f]=null,this[g]=!1,this[m]=n,this[h]=Number.isFinite(r)?r:null,this[d]=!1}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new a),e&&this[p](),this[g]?t(e):setImmediate(t,e)}on(e,t){return(e===`data`||e===`readable`)&&(this[d]=!0,this[g]=!0),super.on(e,t)}addListener(e,t){return this.on(e,t)}off(e,t){let n=super.off(e,t);return(e===`data`||e===`readable`)&&(this[d]=this.listenerCount(`data`)>0||this.listenerCount(`readable`)>0),n}removeListener(e,t){return this.off(e,t)}push(e){return e&&(this[_]+=e.length,this[u])?(D(this[u],e),!this[d]||super.push(e)):super.push(e)}text(){return S(this,`text`)}json(){return S(this,`json`)}blob(){return S(this,`blob`)}bytes(){return S(this,`bytes`)}arrayBuffer(){return S(this,`arrayBuffer`)}async formData(){throw new o}get bodyUsed(){return l.isDisturbed(this)}get body(){return this[f]||(this[f]=ReadableStream.from(this),this[u]&&(this[f].getReader(),n(this[f].locked))),this[f]}dump(e){let t=e?.signal;if(t!=null&&(typeof t!=`object`||!(`aborted`in t)))return Promise.reject(new s(`signal must be an AbortSignal`));let n=e?.limit&&Number.isFinite(e.limit)?e.limit:131072;return t?.aborted?Promise.reject(t.reason??new c):this._readableState.closeEmitted?Promise.resolve(null):new Promise((e,i)=>{if((this[h]&&this[h]>n||this[_]>n)&&this.destroy(new c),t){let n=r(t,()=>{this.destroy(t.reason??new c)});this.on(`close`,function(){n[Symbol.dispose](),t.aborted?i(t.reason??new c):e(null)})}else this.on(`close`,e);this.on(`error`,v).on(`data`,()=>{this[_]>n&&this.destroy()}).resume()})}setEncoding(e){return Buffer.isEncoding(e)&&super.setEncoding(e),this}};function b(e){return e[f]?.locked===!0||e[u]!==null}function x(e){return l.isDisturbed(e)||b(e)}function S(e,t){return n(!e[u]),new Promise((n,r)=>{if(x(e)){let t=e._readableState;t.destroyed&&t.closeEmitted===!1?e.on(`error`,r).on(`close`,()=>{r(TypeError(`unusable`))}):r(t.errored??TypeError(`unusable`))}else queueMicrotask(()=>{e[u]={type:t,stream:e,resolve:n,reject:r,length:0,body:[]},e.on(`error`,function(e){O(this[u],e)}).on(`close`,function(){this[u].body!==null&&O(this[u],new a)}),C(e[u])})})}function C(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let n=t.bufferIndex,r=t.buffer.length;for(let i=n;i<r;i++)D(e,t.buffer[i])}else for(let n of t.buffer)D(e,n);let n=t.decoder;if(n!=null&&n.lastNeed>0&&D(e,Buffer.from(n.lastChar.subarray(0,n.lastTotal-n.lastNeed))),t.endEmitted){E(e,t.encoding);return}for(e.stream.on(`end`,function(){E(this[u],this._readableState.encoding)}),e.stream.resume();e.stream.read()!=null;);}function w(e,t,n){if(e.length===0||t===0)return``;let r=e.length===1?e[0]:Buffer.concat(e,t),i=r.length,a=i>2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return!n||n===`utf8`||n===`utf-8`?r.utf8Slice(a,i):r.subarray(a,i).toString(n)}function T(e,t){if(e.length===0||t===0)return new Uint8Array;if(e.length===1)return new Uint8Array(e[0]);let n=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),r=0;for(let t=0;t<e.length;++t){let i=e[t];n.set(i,r),r+=i.length}return n}function E(e,t){let{type:n,body:r,resolve:i,stream:a,length:o}=e;try{n===`text`?i(w(r,o,t)):n===`json`?i(JSON.parse(w(r,o,t))):n===`arrayBuffer`?i(T(r,o).buffer):n===`blob`?i(new Blob(r,{type:a[m]})):n===`bytes`&&i(T(r,o)),O(e)}catch(e){a.destroy(e)}}function D(e,t){e.body!==null&&(typeof t==`string`&&(t=Buffer.from(t,e.stream._readableState.encoding)),e.length+=t.length,e.body.push(t))}function O(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}t.exports={Readable:y,chunksDecode:w}})),bw=q(((e,t)=>{var n=J(`node:assert`),{AsyncResource:r}=J(`node:async_hooks`),{Readable:i}=yw(),{InvalidArgumentError:a,RequestAbortedError:o}=Q(),s=$();function c(){}var l=class extends r{constructor(e,t){if(!e||typeof e!=`object`)throw new a(`invalid opts`);let{signal:n,method:r,opaque:i,body:l,onInfo:u,responseHeaders:d,highWaterMark:f}=e;try{if(typeof t!=`function`)throw new a(`invalid callback`);if(f!=null&&(!Number.isFinite(f)||f<0))throw new a(`invalid highWaterMark`);if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new a(`signal must be an EventEmitter or EventTarget`);if(r===`CONNECT`)throw new a(`invalid method`);if(u&&typeof u!=`function`)throw new a(`invalid onInfo callback`);super(`UNDICI_REQUEST`)}catch(e){throw s.isStream(l)&&s.destroy(l.on(`error`,c),e),e}this.method=r,this.responseHeaders=d||null,this.opaque=i||null,this.callback=t,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.controller=null,this.onInfo=u||null,this.highWaterMark=f,this.reason=null,this.removeAbortListener=null,n?.aborted?this.reason=n.reason??new o:n&&(this.removeAbortListener=s.addAbortListener(n,()=>{if(this.reason=n.reason??new o,this.res){let e=this.res;this.res=null,s.destroy(e.on(`error`,c),this.reason)}else this.abort&&this.abort(this.reason)}))}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}n(this.callback),this.controller=e,this.abort=t=>e.abort(t),this.context=t}onResponseStart(e,t,n,r){let{callback:a,opaque:o,context:l,responseHeaders:u,highWaterMark:d}=this,f=e?.rawHeaders,p=u===`raw`?s.parseRawHeaders(f):n;if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:p});return}let m=n,h=m?.[`content-type`],g=m?.[`content-length`],_=new i({resume:()=>e.resume(),abort:t=>e.abort(t),contentType:h,contentLength:this.method!==`HEAD`&&g?Number(g):null,highWaterMark:d});if(this.removeAbortListener&&=(_.on(`close`,this.removeAbortListener),null),this.callback=null,this.res=_,a!==null)try{this.runInAsyncScope(a,null,null,{statusCode:t,statusText:r,headers:p,trailers:this.trailers,opaque:o,body:_,context:l})}catch(e){this.res=null,s.destroy(_.on(`error`,c),e),queueMicrotask(()=>{throw e})}}onResponseData(e,t){this.res&&this.res.push(t)===!1&&e.pause()}onResponseEnd(e,t){if(t&&typeof t==`object`)for(let e of Object.keys(t))e===`__proto__`?Object.defineProperty(this.trailers,e,{value:t[e],enumerable:!0,configurable:!0,writable:!0}):this.trailers[e]=t[e];this.res?.push(null)}onResponseError(e,t){let{res:n,callback:r,body:i,opaque:a}=this;r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:a})})),n&&(this.res=null,queueMicrotask(()=>{s.destroy(n.on(`error`,c),t)})),i&&(this.body=null,s.isStream(i)&&(i.on(`error`,c),s.destroy(i,t))),this.removeAbortListener&&=(this.removeAbortListener(),null)}};function u(e,t){if(t===void 0)return new Promise((t,n)=>{u.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new l(e,t);this.dispatch(e,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}t.exports=u,t.exports.RequestHandler=l})),xw=q(((e,t)=>{var{addAbortListener:n}=$(),{RequestAbortedError:r}=Q(),i=Symbol(`kListener`),a=Symbol(`kSignal`);function o(e){e.abort?e.abort(e[a]?.reason):e.reason=e[a]?.reason??new r,c(e)}function s(e,t){if(e.reason=null,e[a]=null,e[i]=null,t){if(t.aborted){o(e);return}e[a]=t,e[i]=()=>{o(e)},n(e[a],e[i])}}function c(e){e[a]&&(`removeEventListener`in e[a]?e[a].removeEventListener(`abort`,e[i]):e[a].removeListener(`abort`,e[i]),e[a]=null,e[i]=null)}t.exports={addSignal:s,removeSignal:c}})),Sw=q(((e,t)=>{var n=J(`node:assert`),{AsyncResource:r}=J(`node:async_hooks`),{InvalidArgumentError:i,InvalidReturnValueError:a}=Q(),o=$(),{addSignal:s,removeSignal:c}=xw();function l(){}function u(e){return e.errored??e.writableErrored??e._writableState?.errored}function d(){let e=Error(`Premature close`);return e.code=`ERR_STREAM_PREMATURE_CLOSE`,e}function f(e,t){let n=!1,r=()=>{e.removeListener(`close`,a),e.removeListener(`error`,o),e.removeListener(`finish`,s)},i=(e,i=!1)=>{n||(n=!0,r(),t(e,i))},a=()=>{let t=u(e);i(t??(e.writableFinished?void 0:d()))},o=e=>i(e,!0),s=()=>i();e.on(`close`,a),e.on(`error`,o),e.on(`finish`,s),e.closed?process.nextTick(a):e.writableFinished&&process.nextTick(s)}var p=class extends r{constructor(e,t,n){if(!e||typeof e!=`object`)throw new i(`invalid opts`);let{signal:r,method:a,opaque:c,body:u,onInfo:d,responseHeaders:f}=e;try{if(typeof n!=`function`)throw new i(`invalid callback`);if(typeof t!=`function`)throw new i(`invalid factory`);if(r&&typeof r.on!=`function`&&typeof r.addEventListener!=`function`)throw new i(`signal must be an EventEmitter or EventTarget`);if(a===`CONNECT`)throw new i(`invalid method`);if(d&&typeof d!=`function`)throw new i(`invalid onInfo callback`);super(`UNDICI_STREAM`)}catch(e){throw o.isStream(u)&&o.destroy(u.on(`error`,l),e),e}this.responseHeaders=f||null,this.opaque=c||null,this.factory=t,this.callback=n,this.res=null,this.abort=null,this.context=null,this.controller=null,this.trailers=null,this.body=u,this.onInfo=d||null,o.isStream(u)&&u.on(`error`,e=>{this.onResponseError(this.controller,e)}),s(this,r)}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}n(this.callback),this.controller=e,this.abort=t=>e.abort(t),this.context=t}onResponseStart(e,t,n,r){let{factory:i,opaque:s,context:c,responseHeaders:l}=this,u=e?.rawHeaders,d=l===`raw`?o.parseRawHeaders(u):n;if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:d});return}if(this.factory=null,i===null)return;let p=this.runInAsyncScope(i,null,{statusCode:t,headers:d,opaque:s,context:c});if(!p||typeof p.write!=`function`||typeof p.end!=`function`||typeof p.on!=`function`)throw new a(`expected Writable`);f(p,(e,t)=>{let{callback:n,res:r,opaque:i,trailers:a,abort:s}=this;this.res=null,(e||!r?.readable)&&o.destroy(r,t?void 0:e),this.callback=null,this.runInAsyncScope(n,null,e||null,{opaque:i,trailers:a}),e&&s(e)}),p.on(`drain`,()=>e.resume()),this.res=p,(p.writableNeedDrain===void 0?p._writableState?.needDrain:p.writableNeedDrain)===!0&&e.pause()}onResponseData(e,t){let{res:n}=this;n&&n.write(t)===!1&&e.pause()}onResponseEnd(e,t){let{res:n}=this;c(this),n&&(t&&typeof t==`object`&&(this.trailers=t),n.end())}onResponseError(e,t){let{res:n,callback:r,opaque:i,body:a}=this;c(this),this.factory=null,n?(this.res=null,o.destroy(n,t)):r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:i})})),a&&(this.body=null,o.destroy(a,t))}};function m(e,t,n){if(n===void 0)return new Promise((n,r)=>{m.call(this,e,t,(e,t)=>e?r(e):n(t))});try{let r=new p(e,t,n);this.dispatch(e,r)}catch(t){if(typeof n!=`function`)throw t;let r=e?.opaque;queueMicrotask(()=>n(t,{opaque:r}))}}t.exports=m})),Cw=q(((e,t)=>{var{Readable:n,Duplex:r,PassThrough:i}=J(`node:stream`),a=J(`node:assert`),{AsyncResource:o}=J(`node:async_hooks`),{InvalidArgumentError:s,InvalidReturnValueError:c,RequestAbortedError:l}=Q(),u=$(),{kBodyUsed:d}=AC(),{addSignal:f,removeSignal:p}=xw();function m(){}var h=Symbol(`resume`),g=class extends n{constructor(){super({autoDestroy:!0}),this[h]=null,this[d]=!0}_read(){let{[h]:e}=this;e&&(this[h]=null,e())}_destroy(e,t){this._read(),t(e)}},_=class extends n{constructor(e){super({autoDestroy:!0}),this[h]=e}_read(){this[h]()}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new l),t(e)}},v=class extends o{constructor(e,t){if(!e||typeof e!=`object`)throw new s(`invalid opts`);if(typeof t!=`function`)throw new s(`invalid handler`);let{signal:n,method:i,opaque:a,onInfo:o,responseHeaders:c}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new s(`signal must be an EventEmitter or EventTarget`);if(i===`CONNECT`)throw new s(`invalid method`);if(o&&typeof o!=`function`)throw new s(`invalid onInfo callback`);super(`UNDICI_PIPELINE`),this.opaque=a||null,this.responseHeaders=c||null,this.handler=t,this.abort=null,this.context=null,this.onInfo=o||null,this.req=new g().on(`error`,m),this.ret=new r({readableObjectMode:e.objectMode,autoDestroy:!0,read:()=>{let{body:e}=this;e?.resume&&e.resume()},write:(e,t,n)=>{let{req:r}=this;r.push(e,t)||r._readableState.destroyed?n():r[h]=n},destroy:(e,t)=>{let{body:n,req:r,res:i,ret:a,abort:o}=this;!e&&!a._readableState.endEmitted&&(e=new l),o&&e&&o(),u.destroy(n,e),u.destroy(r,e),u.destroy(i,e),p(this),t(e)}}).on(`prefinish`,()=>{let{req:e}=this;e.push(null)}),this.res=null,f(this,n)}onRequestStart(e,t){let{res:n}=this;if(this.reason){e.abort(this.reason);return}a(!n,`pipeline cannot be retried`),this.abort=t=>e.abort(t),this.context=t}onResponseStart(e,t,n,r){let{opaque:i,handler:a,context:o}=this;if(t<200){if(this.onInfo){let r=e?.rawHeaders,i=this.responseHeaders===`raw`?u.parseRawHeaders(r):n;this.onInfo({statusCode:t,headers:i})}return}this.res=new _(()=>e.resume());let s;try{this.handler=null;let r=e?.rawHeaders,c=this.responseHeaders===`raw`?u.parseRawHeaders(r):n;s=this.runInAsyncScope(a,null,{statusCode:t,headers:c,opaque:i,body:this.res,context:o})}catch(e){throw this.res.on(`error`,m),e}if(!s||typeof s.on!=`function`)throw new c(`expected Readable`);s.on(`data`,e=>{let{ret:t,body:n}=this;!t.push(e)&&n.pause&&n.pause()}).on(`error`,e=>{let{ret:t}=this;u.destroy(t,e)}).on(`end`,()=>{let{ret:e}=this;e.push(null)}).on(`close`,()=>{let{ret:e}=this;e._readableState.ended||u.destroy(e,new l)}),this.body=s}onResponseData(e,t){let{res:n}=this;n.push(t)===!1&&e.pause()}onResponseEnd(e,t){let{res:n}=this;n.push(null)}onResponseError(e,t){let{ret:n}=this;this.handler=null,u.destroy(n,t)}};function y(e,t){try{let n=new v(e,t);return this.dispatch({...e,body:n.req},n),n.ret}catch(e){return new i().destroy(e)}}t.exports=y})),ww=q(((e,t)=>{var{InvalidArgumentError:n,SocketError:r}=Q(),{AsyncResource:i}=J(`node:async_hooks`),a=J(`node:assert`),o=$(),{kHTTP2Stream:s}=AC(),{addSignal:c,removeSignal:l}=xw(),u=class extends i{constructor(e,t){if(!e||typeof e!=`object`)throw new n(`invalid opts`);if(typeof t!=`function`)throw new n(`invalid callback`);let{signal:r,opaque:i,responseHeaders:a}=e;if(r&&typeof r.on!=`function`&&typeof r.addEventListener!=`function`)throw new n(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_UPGRADE`),this.responseHeaders=a||null,this.opaque=i||null,this.callback=t,this.abort=null,this.context=null,c(this,r)}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}a(this.callback),this.abort=t=>e.abort(t),this.context=t}onResponseStart(){throw new r(`bad upgrade`,null)}onRequestUpgrade(e,t,n,i){if(t!==(i[s]===!0?200:101)){let t=i[s]===!0?null:o.getSocketInfo(i);e.abort(new r(`bad upgrade`,t));return}let{callback:a,opaque:c,context:u}=this;l(this),this.callback=null;let d=e?.rawHeaders,f=this.responseHeaders===`raw`?o.parseRawHeaders(d):n;this.runInAsyncScope(a,null,null,{headers:f,socket:i,opaque:c,context:u})}onResponseError(e,t){let{callback:n,opaque:r}=this;l(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:r})}))}};function d(e,t){if(t===void 0)return new Promise((t,n)=>{d.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new u(e,t),r={...e,method:e.method||`GET`,upgrade:e.protocol||`Websocket`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}t.exports=d})),Tw=q(((e,t)=>{var n=J(`node:assert`),{AsyncResource:r}=J(`node:async_hooks`),{InvalidArgumentError:i,SocketError:a}=Q(),o=$(),{addSignal:s,removeSignal:c}=xw(),l=class extends r{constructor(e,t){if(!e||typeof e!=`object`)throw new i(`invalid opts`);if(typeof t!=`function`)throw new i(`invalid callback`);let{signal:n,opaque:r,responseHeaders:a}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new i(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_CONNECT`),this.opaque=r||null,this.responseHeaders=a||null,this.callback=t,this.abort=null,s(this,n)}onRequestStart(e,t){if(this.reason){e.abort(this.reason);return}n(this.callback),this.abort=t=>e.abort(t),this.context=t}onResponseStart(){throw new a(`bad connect`,null)}onRequestUpgrade(e,t,n,r){let{callback:i,opaque:a,context:s}=this;c(this),this.callback=null;let l=n,u=e?.rawHeaders;l!=null&&(l=this.responseHeaders===`raw`?o.parseRawHeaders(u):n),this.runInAsyncScope(i,null,null,{statusCode:t,headers:l,socket:r,opaque:a,context:s})}onResponseError(e,t){let{callback:n,opaque:r}=this;c(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:r})}))}};function u(e,t){if(t===void 0)return new Promise((t,n)=>{u.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new l(e,t),r={...e,method:`CONNECT`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}t.exports=u})),Ew=q(((e,t)=>{t.exports.request=bw(),t.exports.stream=Sw(),t.exports.pipeline=Cw(),t.exports.upgrade=ww(),t.exports.connect=Tw()})),Dw=q(((e,t)=>{var{UndiciError:n}=Q(),r=Symbol.for(`undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED`);t.exports={MockNotMatchedError:class extends n{constructor(e){super(e),this.name=`MockNotMatchedError`,this.message=e||`The request does not match any registered mock dispatches`,this.code=`UND_MOCK_ERR_MOCK_NOT_MATCHED`}static[Symbol.hasInstance](e){return e&&e[r]===!0}get[r](){return!0}}}})),Ow=q(((e,t)=>{t.exports={kAgent:Symbol(`agent`),kOptions:Symbol(`options`),kFactory:Symbol(`factory`),kDispatches:Symbol(`dispatches`),kDispatchKey:Symbol(`dispatch key`),kDefaultHeaders:Symbol(`default headers`),kDefaultTrailers:Symbol(`default trailers`),kContentLength:Symbol(`content length`),kMockAgent:Symbol(`mock agent`),kMockAgentSet:Symbol(`mock agent set`),kMockAgentGet:Symbol(`mock agent get`),kMockDispatch:Symbol(`mock dispatch`),kClose:Symbol(`close`),kOriginalClose:Symbol(`original agent close`),kOriginalDispatch:Symbol(`original dispatch`),kOrigin:Symbol(`origin`),kIsMockActive:Symbol(`is mock active`),kNetConnect:Symbol(`net connect`),kGetNetConnect:Symbol(`get net connect`),kConnected:Symbol(`connected`),kIgnoreTrailingSlash:Symbol(`ignore trailing slash`),kMockAgentMockCallHistoryInstance:Symbol(`mock agent mock call history name`),kMockAgentRegisterCallHistory:Symbol(`mock agent register mock call history`),kMockAgentAddCallHistoryLog:Symbol(`mock agent add call history log`),kMockAgentIsCallHistoryEnabled:Symbol(`mock agent is call history enabled`),kMockAgentAcceptsNonStandardSearchParameters:Symbol(`mock agent accepts non standard search parameters`),kMockCallHistoryAddLog:Symbol(`mock call history add log`),kTotalDispatchCount:Symbol(`total dispatch count`)}})),kw=q(((e,t)=>{var{MockNotMatchedError:n}=Dw(),{kDispatches:r,kMockAgent:i,kOriginalDispatch:a,kOrigin:o,kGetNetConnect:s,kTotalDispatchCount:c}=Ow(),{serializePathWithQuery:l,parseHeaders:u}=$(),{STATUS_CODES:d}=J(`node:http`),{types:{isPromise:f}}=J(`node:util`),{InvalidArgumentError:p}=Q(),m=Symbol(`request aborted`);function h(e,t){return typeof e==`string`?e===t:e instanceof RegExp?e.test(t):typeof e==`function`&&e(t)===!0}function g(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLocaleLowerCase(),t]))}function _(e,t){if(Array.isArray(e)){for(let n=0;n<e.length;n+=2)if(e[n].toLocaleLowerCase()===t.toLocaleLowerCase())return e[n+1];return}return typeof e.get==`function`?e.get(t):g(e)[t.toLocaleLowerCase()]}function v(e){let t=e.slice(),n=[];for(let e=0;e<t.length;e+=2)n.push([t[e],t[e+1]]);return Object.fromEntries(n)}function y(e,t){if(typeof e.headers==`function`)return Array.isArray(t)&&(t=v(t)),e.headers(t?g(t):{});if(e.headers===void 0)return!0;if(typeof t!=`object`||typeof e.headers!=`object`)return!1;for(let[n,r]of Object.entries(e.headers))if(!h(r,_(t,n)))return!1;return!0}function b(e){if(typeof e!=`string`)return e;let t=new URLSearchParams(e),n=new URLSearchParams;for(let[e,r]of t.entries()){if(e=e.replace(`[]`,``),/^(['"]).*\1$/.test(r)){n.append(e,r);continue}if(r.includes(`,`)){let t=r.split(`,`);for(let r of t)n.append(e,r);continue}n.append(e,r)}return n}function x(e){if(typeof e!=`string`)return e;let t=e.split(`?`,3);if(t.length!==2)return e;let n=new URLSearchParams(t.pop());return n.sort(),[...t,n.toString()].join(`?`)}function S(e,{path:t,method:n,body:r,headers:i}){let a=h(e.path,t),o=h(e.method,n),s=e.body===void 0||h(e.body,r),c=y(e,i);return a&&o&&s&&c}function C(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):typeof e==`object`?JSON.stringify(e):e?e.toString():``}function w(e,t){let r=t.query?l(t.path,t.query):t.path,i=typeof r==`string`?x(r):r,a=D(i),o=e.filter(({consumed:e})=>!e).filter(({path:e,ignoreTrailingSlash:t})=>t?h(D(x(e)),a):h(x(e),i));if(o.length===0)throw new n(`Mock dispatch not matched for path '${i}'`);if(o=o.filter(({method:e})=>h(e,t.method)),o.length===0)throw new n(`Mock dispatch not matched for method '${t.method}' on path '${i}'`);if(o=o.filter(({body:e})=>e===void 0||h(e,t.body)),o.length===0)throw new n(`Mock dispatch not matched for body '${t.body}' on path '${i}'`);if(o=o.filter(e=>y(e,t.headers)),o.length===0)throw new n(`Mock dispatch not matched for headers '${typeof t.headers==`object`?JSON.stringify(t.headers):t.headers}' on path '${i}'`);return o[0]}function T(e,t,n,r){let i={timesInvoked:0,times:1,persist:!1,consumed:!1,...r},a=typeof n==`function`?{callback:n}:{...n},o={...i,...t,pending:!0,data:{error:null,...a}};return e.push(o),e[c]=(e[c]||0)+1,o}function E(e,t){let n=e.findIndex(e=>e.consumed?S(e,t):!1);n!==-1&&e.splice(n,1)}function D(e){if(typeof e!=`string`)return e;for(;e.endsWith(`/`);)e=e.slice(0,-1);return e.length===0&&(e=`/`),e}function O(e){let{path:t,method:n,body:r,headers:i,query:a}=e;return{path:t,method:n,body:r,headers:i,query:a}}function k(e){let t=Object.keys(e),n=[];for(let r=0;r<t.length;++r){let i=t[r],a=e[i],o=Buffer.from(`${i}`);if(Array.isArray(a))for(let e=0;e<a.length;++e)n.push(o,Buffer.from(`${a[e]}`));else n.push(o,Buffer.from(`${a}`))}return n}function A(e){return d[e]||`unknown`}async function j(e){let t=[];for await(let n of e)t.push(n);return Buffer.concat(t).toString(`utf8`)}function M(e,t){let n=O(e),i=w(this[r],n),a=this[r];i.timesInvoked++;let{timesInvoked:o,times:s}=i;i.consumed=!i.persist&&o>=s,i.pending=o<s;let c=typeof t.onBodySent==`function`||typeof t.onRequestSent==`function`;if(i.data.callback&&(!c||e.body==null)){let{callback:r,...o}=i.data,s=r(e);if(f(s))return s.then(r=>{if(typeof r!=`object`||!r){t.onResponseError(null,new p(`reply options callback must return an object`));return}N(a,i,n,e,t,{...o,...r})},e=>{t.onResponseError(null,e)}),!0;if(typeof s!=`object`||!s)throw new p(`reply options callback must return an object`);return N(a,i,n,e,t,{...o,...s})}return N(a,i,n,e,t)}function N(e,t,n,r,i,a){let{data:o,delay:s}=t,c=a??o;if(c.error!==null)return E(e,n),i.onResponseError(null,c.error),!0;let l=!1,d=null,h={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:e=>{l||(l=!0,d!==null&&(clearTimeout(d),d=null),i.onResponseError?.(h,e))}},g=r,_=e;if(i.onRequestStart?.(h,null),l)return!0;let y=P(r.body,i,h,()=>l);if(f(y))return y.then(e=>{e!==m&&(e!==r.body&&(g={...r,body:e}),b())},e=>h.abort(e)),!0;if(y===m)return!0;y!==r.body&&(g={...r,body:y}),b();function b(){if(c.callback){let{callback:t,...r}=c,a;try{a=t(g)}catch(t){E(e,n),i.onResponseError(null,t);return}if(f(a)){a.then(e=>{if(typeof e!=`object`||!e){i.onResponseError(null,new p(`reply options callback must return an object`));return}x(_,{...r,...e})},e=>{i.onResponseError(null,e)});return}if(typeof a!=`object`||!a)throw new p(`reply options callback must return an object`);x(_,{...r,...a});return}typeof s==`number`&&s>0?d=setTimeout(()=>{d=null,x(_)},s):x(_)}function x(e,t=c){if(l)return;let{statusCode:a,data:o,headers:s,trailers:d}=t,p=Array.isArray(r.headers)?v(r.headers):r.headers,m=typeof o==`function`?o({...g,headers:p}):o;if(f(m))return m.then(n=>x(e,{...t,data:n}));if(l)return;let _=C(m),y=k(s??{}),b=k(d??{});h.rawHeaders=y,h.rawTrailers=b,i.onResponseStart?.(h,a,u(y),A(a)),i.onResponseData?.(h,Buffer.from(_)),i.onResponseEnd?.(h,u(b)),E(e,n)}return!0}function P(e,t,n,r){if(typeof t.onBodySent!=`function`&&typeof t.onRequestSent!=`function`)return e;if(e==null)return L(t,n,r)?e:m;if(e&&typeof e[Symbol.asyncIterator]==`function`)return F(e,t,n,r);if(R(e)){let i=[];for(let a of e)if(r()||(i.push(a),!I(t,n,a)||r()))return m;return L(t,n,r)?i:m}return r()||!I(t,n,e)?m:L(t,n,r)?e:m}async function F(e,t,n,r){let i=[];for await(let a of e)if(r()||(i.push(a),!I(t,n,a)||r()))return m;return L(t,n,r)?{async*[Symbol.asyncIterator](){yield*i}}:m}function I(e,t,n){try{return e.onBodySent?.(n),!0}catch(e){return t.abort(e),!1}}function L(e,t,n){try{return e.onRequestSent?.(),!n()}catch(e){return t.abort(e),!1}}function R(e){return typeof e!=`string`&&!Buffer.isBuffer(e)&&!ArrayBuffer.isView(e)&&typeof e[Symbol.iterator]==`function`}function ee(){let e=this[i],t=this[o],l=this[a];return function(i,a){if(e.isMockActive)try{M.call(this,i,a)}catch(o){if(o.code===`UND_MOCK_ERR_MOCK_NOT_MATCHED`){let u=e[s](),d=this[r][c]||this[r].length,f=`, ${this[r].filter(({consumed:e})=>!e).length} interceptor(s) remaining out of ${d} defined`;if(u===!1)throw new n(`${o.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)${f}`);if(te(u,t))l.call(this,`__mockAgentBodyForDispatch`in i?{...i,body:i.__mockAgentBodyForDispatch}:i,a);else throw new n(`${o.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)${f}`)}else throw o}else l.call(this,i,a)}}function te(e,t){let n=new URL(t);return!!(e===!0||Array.isArray(e)&&e.some(e=>h(e,n.host)))}function ne(e){return typeof e!=`string`&&!(e instanceof URL)?e:e instanceof URL?e.origin:e.toLowerCase()}function re(e){let{agent:t,...n}=e;if(`enableCallHistory`in n&&typeof n.enableCallHistory!=`boolean`)throw new p(`options.enableCallHistory must to be a boolean`);if(`acceptNonStandardSearchParameters`in n&&typeof n.acceptNonStandardSearchParameters!=`boolean`)throw new p(`options.acceptNonStandardSearchParameters must to be a boolean`);if(`ignoreTrailingSlash`in n&&typeof n.ignoreTrailingSlash!=`boolean`)throw new p(`options.ignoreTrailingSlash must to be a boolean`);return n}t.exports={getResponseData:C,getMockDispatch:w,addMockDispatch:T,deleteMockDispatch:E,buildKey:O,generateKeyValues:k,matchValue:h,getResponse:j,getStatusText:A,mockDispatch:M,buildMockDispatch:ee,checkNetConnect:te,buildAndValidateMockOptions:re,getHeaderByName:_,buildHeadersFromArray:v,normalizeSearchParams:b,normalizeOrigin:ne}})),Aw=q(((e,t)=>{var{getResponseData:n,buildKey:r,addMockDispatch:i}=kw(),{kDispatches:a,kDispatchKey:o,kDefaultHeaders:s,kDefaultTrailers:c,kContentLength:l,kMockDispatch:u,kIgnoreTrailingSlash:d}=Ow(),{InvalidArgumentError:f}=Q(),{serializePathWithQuery:p}=$(),{types:{isPromise:m}}=J(`node:util`),h=class{constructor(e){this[u]=e}delay(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`waitInMs must be a valid integer > 0`);return this[u].delay=e,this}persist(){return this[u].persist=!0,this}times(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`repeatTimes must be a valid integer > 0`);return this[u].times=e,this}},g=class{constructor(e,t){if(typeof e!=`object`)throw new f(`opts must be an object`);if(e.path===void 0)throw new f(`opts.path must be defined`);if(e.method===void 0&&(e.method=`GET`),typeof e.path==`string`){if(e.query)e.path=p(e.path,e.query);else{let t=new URL(e.path,`data://`);e.path=t.pathname+t.search}}typeof e.method==`string`&&(e.method=e.method.toUpperCase()),this[o]=r(e),this[a]=t,this[d]=e.ignoreTrailingSlash??!1,this[s]={},this[c]={},this[l]=!1}createMockScopeDispatchData({statusCode:e,data:t,responseOptions:r}){let i=n(t),a=this[l]?{"content-length":i.length}:{};return{statusCode:e,data:t,headers:{...this[s],...a,...r.headers},trailers:{...this[c],...r.trailers}}}validateReplyParameters(e){if(e.statusCode===void 0)throw new f(`statusCode must be defined`);if(typeof e.responseOptions!=`object`||e.responseOptions===null)throw new f(`responseOptions must be an object`)}reply(e){if(typeof e==`function`){let t=e=>{if(typeof e!=`object`||!e)throw new f(`reply options callback must return an object`);let t={data:``,responseOptions:{},...e};return this.validateReplyParameters(t),{...this.createMockScopeDispatchData(t)}};return new h(i(this[a],this[o],n=>{let r=e(n);return m(r)?r.then(t):t(r)},{ignoreTrailingSlash:this[d]}))}let t={statusCode:e,data:arguments[1]===void 0?``:arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(t);let n=this.createMockScopeDispatchData(t);return new h(i(this[a],this[o],n,{ignoreTrailingSlash:this[d]}))}replyWithError(e){if(e===void 0)throw new f(`error must be defined`);return new h(i(this[a],this[o],{error:e},{ignoreTrailingSlash:this[d]}))}defaultReplyHeaders(e){if(e===void 0)throw new f(`headers must be defined`);return this[s]=e,this}defaultReplyTrailers(e){if(e===void 0)throw new f(`trailers must be defined`);return this[c]=e,this}replyContentLength(){return this[l]=!0,this}};t.exports.MockInterceptor=g,t.exports.MockScope=h})),jw=q(((e,t)=>{var{promisify:n}=J(`node:util`),r=rw(),{buildMockDispatch:i}=kw(),{kDispatches:a,kMockAgent:o,kClose:s,kOriginalClose:c,kOrigin:l,kOriginalDispatch:u,kConnected:d,kIgnoreTrailingSlash:f}=Ow(),{MockInterceptor:p}=Aw(),m=AC(),{InvalidArgumentError:h}=Q();t.exports=class extends r{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new h(`Argument opts.agent must implement Agent`);super(e,t),this[o]=t.agent,this[l]=e,this[f]=t.ignoreTrailingSlash??!1,this[a]=[],this[d]=1,this[u]=this.dispatch,this[c]=this.close.bind(this),this.dispatch=i.call(this),this.close=this[s]}get[m.kConnected](){return this[d]}intercept(e){return new p(e&&{ignoreTrailingSlash:this[f],...e},this[a])}cleanMocks(){this[a]=[]}async[s](){await n(this[c])(),this[d]=0,this[o][m.kClients].delete(this[l])}}})),Mw=q(((e,t)=>{var{kMockCallHistoryAddLog:n}=Ow(),{InvalidArgumentError:r}=Q();function i(e,t,n,i,a){switch(t.operator){case`OR`:return i.push(...n(e,a)),i;case`AND`:return n(e,i);default:throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`)}}function a(e={}){let t={};if(`operator`in e){if(typeof e.operator!=`string`||e.operator.toUpperCase()!==`OR`&&e.operator.toUpperCase()!==`AND`)throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`);return{...t,operator:e.operator.toUpperCase()}}return t}function o(e){return(t,n=this.logs)=>{if(typeof t==`string`||t==null)return n.filter(n=>n[e]===t);if(t instanceof RegExp)return n.filter(n=>t.test(n[e]));throw new r(`${e} parameter should be one of string, regexp, undefined or null`)}}function s(e){try{let t=new URL(e.path,e.origin);return t.search.length===0&&(t.search=new URLSearchParams(e.query).toString()),t}catch(e){throw new r(`An error occurred when computing MockCallHistoryLog.url`,{cause:e})}}var c=class{constructor(e={}){this.body=e.body,this.headers=e.headers,this.method=e.method;let t=s(e);this.fullUrl=t.toString(),this.origin=t.origin,this.path=t.pathname,this.searchParams=Object.fromEntries(t.searchParams),this.protocol=t.protocol,this.host=t.host,this.port=t.port,this.hash=t.hash}toMap(){return new Map([[`protocol`,this.protocol],[`host`,this.host],[`port`,this.port],[`origin`,this.origin],[`path`,this.path],[`hash`,this.hash],[`searchParams`,this.searchParams],[`fullUrl`,this.fullUrl],[`method`,this.method],[`body`,this.body],[`headers`,this.headers]])}toString(){let e={betweenKeyValueSeparator:`->`,betweenPairSeparator:`|`},t=``;return this.toMap().forEach((n,r)=>{(typeof n==`string`||n==null)&&(t=`${t}${r}${e.betweenKeyValueSeparator}${n}${e.betweenPairSeparator}`),(typeof n==`object`&&n||Array.isArray(n))&&(t=`${t}${r}${e.betweenKeyValueSeparator}${JSON.stringify(n)}${e.betweenPairSeparator}`)}),t.slice(0,-1)}},l=class{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(e){if(typeof e!=`number`)throw new r(`nthCall must be called with a number`);if(!Number.isInteger(e))throw new r(`nthCall must be called with an integer`);if(Math.sign(e)!==1)throw new r(`nthCall must be called with a positive value. use firstCall or lastCall instead`);return this.logs.at(e-1)}filterCalls(e,t){if(this.logs.length===0)return this.logs;if(typeof e==`function`)return this.logs.filter(e);if(e instanceof RegExp)return this.logs.filter(t=>e.test(t.toString()));if(typeof e==`object`&&e){if(Object.keys(e).length===0)return this.logs;let n={operator:`OR`,...a(t)},r=n.operator===`AND`?this.logs:[];return`protocol`in e&&(r=i(e.protocol,n,this.filterCallsByProtocol,r,this.logs)),`host`in e&&(r=i(e.host,n,this.filterCallsByHost,r,this.logs)),`port`in e&&(r=i(e.port,n,this.filterCallsByPort,r,this.logs)),`origin`in e&&(r=i(e.origin,n,this.filterCallsByOrigin,r,this.logs)),`path`in e&&(r=i(e.path,n,this.filterCallsByPath,r,this.logs)),`hash`in e&&(r=i(e.hash,n,this.filterCallsByHash,r,this.logs)),`fullUrl`in e&&(r=i(e.fullUrl,n,this.filterCallsByFullUrl,r,this.logs)),`method`in e&&(r=i(e.method,n,this.filterCallsByMethod,r,this.logs)),[...new Set(r)]}throw new r(`criteria parameter should be one of function, regexp, or object`)}filterCallsByProtocol=o.call(this,`protocol`);filterCallsByHost=o.call(this,`host`);filterCallsByPort=o.call(this,`port`);filterCallsByOrigin=o.call(this,`origin`);filterCallsByPath=o.call(this,`path`);filterCallsByHash=o.call(this,`hash`);filterCallsByFullUrl=o.call(this,`fullUrl`);filterCallsByMethod=o.call(this,`method`);clear(){this.logs=[]}[n](e){let t=new c(e);return this.logs.push(t),t}*[Symbol.iterator](){for(let e of this.calls())yield e}};t.exports.MockCallHistory=l,t.exports.MockCallHistoryLog=c})),Nw=q(((e,t)=>{var{promisify:n}=J(`node:util`),r=ow(),{buildMockDispatch:i}=kw(),{kDispatches:a,kMockAgent:o,kClose:s,kOriginalClose:c,kOrigin:l,kOriginalDispatch:u,kConnected:d,kIgnoreTrailingSlash:f}=Ow(),{MockInterceptor:p}=Aw(),m=AC(),{InvalidArgumentError:h}=Q();t.exports=class extends r{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new h(`Argument opts.agent must implement Agent`);super(e,t),this[o]=t.agent,this[l]=e,this[f]=t.ignoreTrailingSlash??!1,this[a]=[],this[d]=1,this[u]=this.dispatch,this[c]=this.close.bind(this),this.dispatch=i.call(this),this.close=this[s]}get[m.kConnected](){return this[d]}intercept(e){return new p(e&&{ignoreTrailingSlash:this[f],...e},this[a])}cleanMocks(){this[a]=[]}async[s](){await n(this[c])(),this[d]=0,this[o][m.kClients].delete(this[l])}}})),Pw=q(((e,t)=>{var{Transform:n}=J(`node:stream`),{Console:r}=J(`node:console`),i=process.versions.icu?`✅`:`Y `,a=process.versions.icu?`❌`:`N `;t.exports=class{constructor({disableColors:e}={}){this.transform=new n({transform(e,t,n){n(null,e)}}),this.logger=new r({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let t=e.map(({method:e,path:t,data:{statusCode:n},persist:r,times:o,timesInvoked:s,origin:c})=>({Method:e,Origin:c,Path:t,"Status code":n,Persistent:r?i:a,Invocations:s,Remaining:r?1/0:o-s}));return this.logger.table(t),this.transform.read().toString()}}})),Fw=q(((e,t)=>{var{kClients:n}=AC(),r=lw(),{kAgent:i,kMockAgentSet:a,kMockAgentGet:o,kDispatches:s,kIsMockActive:c,kNetConnect:l,kGetNetConnect:u,kOptions:d,kFactory:f,kMockAgentRegisterCallHistory:p,kMockAgentIsCallHistoryEnabled:m,kMockAgentAddCallHistoryLog:h,kMockAgentMockCallHistoryInstance:g,kMockAgentAcceptsNonStandardSearchParameters:_,kMockCallHistoryAddLog:v,kIgnoreTrailingSlash:y}=Ow(),b=jw(),x=Nw(),{matchValue:S,normalizeSearchParams:C,buildAndValidateMockOptions:w,normalizeOrigin:T}=kw(),{InvalidArgumentError:E,UndiciError:D}=Q(),O=LC(),k=Pw(),{MockCallHistory:A}=Mw();t.exports=class extends O{constructor(e={}){super(e);let t=w(e);if(this[l]=!0,this[c]=!0,this[m]=t.enableCallHistory??!1,this[_]=t.acceptNonStandardSearchParameters??!1,this[y]=t.ignoreTrailingSlash??!1,e?.agent&&typeof e.agent.dispatch!=`function`)throw new E(`Argument opts.agent must implement Agent`);let a=e?.agent?e.agent:new r(e);this[i]=a,this[n]=a[n],this[d]=t,this[m]&&this[p]()}get(e){let t=T(e),n=this[y]?t.replace(/\/$/,``):t,r=this[o](n);return r||(r=this[f](n),this[a](n,r)),r}dispatch(e,t){e.origin=T(e.origin);let r=this.get(e.origin);this[h](e);let o=this[_],c={...e};if(c.allowH2===!1){let e=`${c.origin}#http1-only`;if(!this[n].has(e)){let t=this[f](c.origin);t[s]=r[s],this[a](e,t)}}if(o&&c.path){let[e,t]=c.path.split(`?`);c.path=`${e}?${C(t,o)}`}return this[i].dispatch(c,t)}async close(){this.clearCallHistory(),await this[i].close(),this[n].clear()}deactivate(){this[c]=!1}activate(){this[c]=!0}enableNetConnect(e){if(typeof e==`string`||typeof e==`function`||e instanceof RegExp)Array.isArray(this[l])?this[l].push(e):this[l]=[e];else if(e===void 0)this[l]=!0;else throw new E(`Unsupported matcher. Must be one of String|Function|RegExp.`)}disableNetConnect(){this[l]=!1}enableCallHistory(){return this[m]=!0,this}disableCallHistory(){return this[m]=!1,this}getCallHistory(){return this[g]}clearCallHistory(){this[g]!==void 0&&this[g].clear()}get isMockActive(){return this[c]}[p](){this[g]===void 0&&(this[g]=new A)}[h](e){this[m]&&(this[p](),this[g][v](e))}[a](e,t){this[n].set(e,t)}[f](e){let t=Object.assign({agent:this},this[d]);return this[d]&&this[d].connections===1?new b(e,t):new x(e,t)}[o](e){let t=this[n].get(e);if(t)return t;if(typeof e!=`string`){let t=this[f](`http://localhost:9999`);return this[a](e,t),t}for(let[t,r]of Array.from(this[n]))if(r&&typeof t!=`string`&&S(t,e)){let t=this[f](e);return this[a](e,t),t[s]=r[s],t}}[u](){return this[l]}pendingInterceptors(){let e=this[n];return Array.from(e.entries()).flatMap(([e,t])=>t[s].map(t=>({...t,origin:e}))).filter(({pending:e})=>e)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new k}={}){let t=this.pendingInterceptors();if(t.length!==0)throw new D(t.length===1?`1 interceptor is pending:\n\n${e.format(t)}`.trim():`${t.length} interceptors are pending:\n\n${e.format(t)}`.trim())}}})),Iw=q(((e,t)=>{var{InvalidArgumentError:n}=Q(),{runtimeFeatures:r}=ZC();function i(e={}){let{ignoreHeaders:t=[],excludeHeaders:n=[],matchHeaders:r=[],caseSensitive:i=!1}=e;return{ignore:new Set(t.map(e=>i?e:e.toLowerCase())),exclude:new Set(n.map(e=>i?e:e.toLowerCase())),match:new Set(r.map(e=>i?e:e.toLowerCase()))}}var a=r.has(`crypto`)?J(`node:crypto`):null,o=a?.hash?e=>a.hash(`sha256`,e,`base64url`):e=>Buffer.from(e).toString(`base64url`);function s(e){return Array.isArray(e)&&!(e.length&1)}function c(e=[]){return e.length===0?()=>!1:function(t){let n;for(let r of e)if(typeof r==`string`){if(n||=t.toLowerCase(),n.includes(r.toLowerCase()))return!0}else if(r instanceof RegExp&&r.test(t))return!0;return!1}}function l(e){let t={};if(!e)return t;if(s(e)){for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];if(r&&i!==void 0){let e=Buffer.isBuffer(r)?r.toString():r,n=Buffer.isBuffer(i)?i.toString():i;t[e.toLowerCase()]=n}}return t}if(e&&typeof e==`object`)for(let[n,r]of Object.entries(e))n&&typeof n==`string`&&(t[n.toLowerCase()]=Array.isArray(r)?r.join(`, `):String(r));return t}var u=[`record`,`playback`,`update`];function d(e){if(!u.includes(e))throw new n(`Invalid snapshot mode: ${e}. Must be one of: ${u.join(`, `)}`)}t.exports={createHeaderFilters:i,hashId:o,isUndiciHeaders:s,normalizeHeaders:l,isUrlExcludedFactory:c,validateSnapshotMode:d}})),Lw=q(((e,t)=>{var{writeFile:n,readFile:r,mkdir:i}=J(`node:fs/promises`),{dirname:a,resolve:o}=J(`node:path`),{setTimeout:s,clearTimeout:c}=J(`node:timers`),{InvalidArgumentError:l,UndiciError:u}=Q(),{hashId:d,isUrlExcludedFactory:f,normalizeHeaders:p,createHeaderFilters:m}=Iw();function h(e,t,n){if(t===!1)return`${e.origin}${e.pathname}`;if(n){let t=String(n(e.searchParams)??``);return t?`${e.origin}${e.pathname}?${t}`:`${e.origin}${e.pathname}`}return e.toString()}function g(e,t,n){return t===!1?``:n?String(n(e)??``):e?String(e):``}function _(e,t,n={}){let r=new URL(e.path,e.origin),i=e._normalizedHeaders||p(e.headers);return e._normalizedHeaders||=i,{method:e.method||`GET`,url:h(r,n.matchQuery,n.normalizeQuery),headers:v(i,t,n),body:g(e.body,n.matchBody,n.normalizeBody)}}function v(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{ignore:a,exclude:o,match:s}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();o.has(e)||a.has(e)||(s.size===0||s.has(e))&&(i[e]=n)}return i}function y(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{exclude:a}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();a.has(e)||(i[e]=n)}return i}function b(e){let t=[e.method,e.url];if(e.headers&&typeof e.headers==`object`){let n=Object.keys(e.headers).sort();for(let r of n){let n=Array.isArray(e.headers[r])?e.headers[r]:[e.headers[r]];t.push(r);for(let e of n.sort())t.push(String(e))}}return t.push(e.body),d(t.join(`|`))}t.exports={SnapshotRecorder:class{#e;#t;#n=new Map;#r;#i=1/0;#a=!1;#o;constructor(e={}){this.#r=e.snapshotPath,this.#i=e.maxSnapshots||1/0,this.#a=e.autoFlush||!1,this.flushInterval=e.flushInterval||3e4,this._flushTimer=null,this.matchOptions={matchHeaders:e.matchHeaders||[],ignoreHeaders:e.ignoreHeaders||[],excludeHeaders:e.excludeHeaders||[],matchBody:e.matchBody!==!1,normalizeBody:e.normalizeBody||void 0,matchQuery:e.matchQuery!==!1,normalizeQuery:e.normalizeQuery||void 0,caseSensitive:e.caseSensitive||!1},this.#o=m(this.matchOptions),this.shouldRecord=e.shouldRecord||(()=>!0),this.shouldPlayback=e.shouldPlayback||(()=>!0),this.#t=f(e.excludeUrls),this.#a&&this.#r&&this.#s()}async record(e,t){if(!this.shouldRecord(e)||this.isUrlExcluded(e))return;let n=_(e,this.#o,this.matchOptions),r=b(n),i=p(t.headers),a={statusCode:t.statusCode,headers:y(i,this.#o,this.matchOptions),body:Buffer.isBuffer(t.body)?t.body.toString(`base64`):Buffer.from(String(t.body||``)).toString(`base64`),trailers:t.trailers};if(this.#n.size>=this.#i&&!this.#n.has(r)){let e=this.#n.keys().next().value;this.#n.delete(e)}let o=this.#n.get(r);o&&o.responses?(o.responses.push(a),o.timestamp=new Date().toISOString()):this.#n.set(r,{request:n,responses:[a],callCount:0,timestamp:new Date().toISOString()}),this.#a&&this.#r&&this.#l()}isUrlExcluded(e){let t=new URL(e.path,e.origin).toString();return this.#t(t)}findSnapshot(e){if(!this.shouldPlayback(e)||this.isUrlExcluded(e))return;let t=b(_(e,this.#o,this.matchOptions)),n=this.#n.get(t);if(!n)return;let r=n.callCount||0,i=Math.min(r,n.responses.length-1);return n.callCount=r+1,{...n,response:n.responses[i]}}async loadSnapshots(e){let t=e||this.#r;if(!t)throw new l(`Snapshot path is required`);try{let e=await r(o(t),`utf8`),n=JSON.parse(e);if(Array.isArray(n)){this.#n.clear();for(let{hash:e,snapshot:t}of n)this.#n.set(e,t)}else this.#n=new Map(Object.entries(n))}catch(e){if(e.code===`ENOENT`)this.#n.clear();else throw new u(`Failed to load snapshots from ${t}`,{cause:e})}}async saveSnapshots(e){let t=e||this.#r;if(!t)throw new l(`Snapshot path is required`);let r=o(t);await i(a(r),{recursive:!0});let s=Array.from(this.#n.entries()).map(([e,t])=>({hash:e,snapshot:t}));await n(r,JSON.stringify(s,null,2),{flush:!0})}clear(){this.#n.clear()}getSnapshots(){return Array.from(this.#n.values())}size(){return this.#n.size}resetCallCounts(){for(let e of this.#n.values())e.callCount=0}deleteSnapshot(e){let t=b(_(e,this.#o,this.matchOptions));return this.#n.delete(t)}getSnapshotInfo(e){let t=b(_(e,this.#o,this.matchOptions)),n=this.#n.get(t);return n?{hash:t,request:n.request,responseCount:n.responses?n.responses.length:+!!n.response,callCount:n.callCount||0,timestamp:n.timestamp}:null}replaceSnapshots(e){if(this.#n.clear(),Array.isArray(e))for(let{hash:t,snapshot:n}of e)this.#n.set(t,n);else e&&typeof e==`object`&&(this.#n=new Map(Object.entries(e)))}#s(){return this.#l()}#c(){this.#e&&=(c(this.#e),this.saveSnapshots().catch(()=>{}),null)}#l(){this.#e=s(()=>{this.saveSnapshots().catch(()=>{}),this.#a?this.#e?.refresh():this.#e=null},1e3)}destroy(){this.#c(),this.#e&&=(c(this.#e),null)}async close(){this.#r&&this.#n.size!==0&&await this.saveSnapshots(),this.destroy()}},formatRequestKey:_,createRequestHash:b,filterHeadersForMatching:v,filterHeadersForStorage:y,createHeaderFilters:m}})),Rw=q(((e,t)=>{var n=lw(),r=Fw(),{SnapshotRecorder:i}=Lw(),{InvalidArgumentError:a,UndiciError:o}=Q(),s=$(),{validateSnapshotMode:c}=Iw(),l=Symbol(`kSnapshotRecorder`),u=Symbol(`kSnapshotMode`),d=Symbol(`kSnapshotPath`),f=Symbol(`kSnapshotLoaded`),p=Symbol(`kRealAgent`),m=!1;t.exports=class extends r{constructor(e={}){m||=(process.emitWarning(`SnapshotAgent is experimental and subject to change`,`ExperimentalWarning`),!0);let{mode:t=`record`,snapshotPath:r=null,...o}=e;if(super(o),c(t),(t===`playback`||t===`update`)&&!r)throw new a(`snapshotPath is required when mode is '${t}'`);this[u]=t,this[d]=r,this[l]=new i({snapshotPath:this[d],mode:this[u],maxSnapshots:e.maxSnapshots,autoFlush:e.autoFlush,flushInterval:e.flushInterval,matchHeaders:e.matchHeaders,ignoreHeaders:e.ignoreHeaders,excludeHeaders:e.excludeHeaders,matchBody:e.matchBody,normalizeBody:e.normalizeBody,matchQuery:e.matchQuery,normalizeQuery:e.normalizeQuery,caseSensitive:e.caseSensitive,shouldRecord:e.shouldRecord,shouldPlayback:e.shouldPlayback,excludeUrls:e.excludeUrls}),this[f]=!1,(this[u]===`record`||this[u]===`update`||this[u]===`playback`&&e.excludeUrls&&e.excludeUrls.length>0)&&(this[p]=new n(e)),(this[u]===`playback`||this[u]===`update`)&&this[d]&&this.loadSnapshots().catch(()=>{})}dispatch(e,t){let n=this[u];if(this[l].isUrlExcluded(e))return this[p].dispatch(e,t);if(n===`playback`||n===`update`){if(!this[f])return this.#e(e,t);let r=this[l].findSnapshot(e);if(r)return this.#n(r,t);if(n===`update`)return this.#t(e,t);{let n=new o(`No snapshot found for ${e.method||`GET`} ${e.path}`);if(t.onResponseError){t.onResponseError(null,n);return}throw n}}if(n===`record`)return this.#t(e,t)}async#e(e,t){return await this.loadSnapshots(),this.dispatch(e,t)}#t(e,t){let n={statusCode:null,headers:{},trailers:{},body:[]},r=this;return this[p].dispatch(e,{onRequestStart(e,n){return t.onRequestStart(e,{...n,history:this.history})},onRequestUpgrade(e,n,r,i){return t.onRequestUpgrade(e,n,r,i)},onResponseStart(e,r,i,a){return n.statusCode=r,n.headers=i,t.onResponseStart(e,r,i,a)},onResponseData(e,r){return n.body.push(r),t.onResponseData(e,r)},onResponseEnd(i,a){n.trailers=a;let o=Buffer.concat(n.body);r[l].record(e,{statusCode:n.statusCode,headers:n.headers,body:o,trailers:n.trailers}).then(()=>t.onResponseEnd(i,a)).catch(e=>t.onResponseError(i,e))},onResponseError(e,n){return t.onResponseError(e,n)}})}#n(e,t){try{let{response:n}=e,r={rawHeaders:n.headers?s.toRawHeaders(n.headers):[],rawTrailers:n.trailers?s.toRawHeaders(n.trailers):[],pause(){},resume(){},abort(e){this.aborted=!0,this.reason=e},aborted:!1,paused:!1};t.onRequestStart(r),t.onResponseStart(r,n.statusCode,n.headers,n.statusMessage);let i=Buffer.from(n.body,`base64`);t.onResponseData(r,i),t.onResponseEnd(r,n.trailers)}catch(e){t.onResponseError?.(null,e)}}async loadSnapshots(e){await this[l].loadSnapshots(e||this[d]),this[f]=!0,this[u]===`playback`&&this.#r()}async saveSnapshots(e){return this[l].saveSnapshots(e||this[d])}#r(){for(let e of this[l].getSnapshots()){let{request:t,responses:n,response:r}=e,i=new URL(t.url),a=this.get(i.origin),o=n?n[0]:r;o&&a.intercept({path:i.pathname+i.search,method:t.method,headers:t.headers,body:t.body}).reply(o.statusCode,o.body,{headers:o.headers,trailers:o.trailers}).persist()}}getRecorder(){return this[l]}getMode(){return this[u]}clearSnapshots(){this[l].clear()}resetCallCounts(){this[l].resetCallCounts()}deleteSnapshot(e){return this[l].deleteSnapshot(e)}getSnapshotInfo(e){return this[l].getSnapshotInfo(e)}replaceSnapshots(e){this[l].replaceSnapshots(e)}async close(){this[u]===`playback`?this[l].destroy():await this[l].close(),await this[p]?.close(),await super.close()}}})),zw=q(((e,t)=>{var n=Symbol.for(`undici.globalDispatcher.2`),r=Symbol.for(`undici.globalDispatcher.1`),{InvalidArgumentError:i}=Q(),a=lw(),o=uw(),s;l()===void 0&&c(new a);function c(e){if(!e||typeof e.dispatch!=`function`)throw new i(`Argument agent must implement Agent`);try{Object.defineProperty(globalThis,n,{value:e,writable:!0,enumerable:!1,configurable:!1})}catch(t){if(t instanceof TypeError){s=e;return}throw t}try{let t=e instanceof o?e:new o(e);Object.defineProperty(globalThis,r,{value:t,writable:!0,enumerable:!1,configurable:!1})}catch(e){if(!(e instanceof TypeError))throw e}}function l(){return globalThis[n]??s}t.exports={setGlobalDispatcher:c,getGlobalDispatcher:l,installedExports:[`fetch`,`Headers`,`Response`,`Request`,`FormData`,`WebSocket`,`CloseEvent`,`ErrorEvent`,`MessageEvent`,`EventSource`]}})),Bw=q(((e,t)=>{var n=J(`node:assert`);t.exports=class{#e;#t=!1;#n=!1;#r=!1;constructor(e){if(typeof e!=`object`||!e)throw TypeError(`handler must be an object`);this.#e=e}onRequestStart(...e){this.#e.onRequestStart?.(...e)}onRequestUpgrade(...e){return n(!this.#t),n(!this.#n),this.#e.onRequestUpgrade?.(...e)}onResponseStart(...e){return n(!this.#t),n(!this.#n),n(!this.#r),this.#r=!0,this.#e.onResponseStart?.(...e)}onResponseData(...e){return n(!this.#t),n(!this.#n),this.#e.onResponseData?.(...e)}onResponseEnd(...e){return n(!this.#t),n(!this.#n),this.#t=!0,this.#e.onResponseEnd?.(...e)}onResponseError(...e){return this.#n=!0,this.#e.onResponseError?.(...e)}onBodySent(...e){return this.#e.onBodySent?.(...e)}onRequestSent(...e){return this.#e.onRequestSent?.(...e)}}})),Vw=q(((e,t)=>{var n=$(),r=J(`node:assert`),{InvalidArgumentError:i}=Q(),{kRequestOrigin:a}=AC(),o=[300,301,302,303,307,308],s=()=>{},c=class e{static buildDispatch(t,n){if(n!=null&&(!Number.isInteger(n)||n<0))throw new i(`maxRedirections must be a positive number`);let r=t.dispatch.bind(t);return(t,i)=>r(t,new e(r,n,t,i))}constructor(e,t,r,a){if(t!=null&&(!Number.isInteger(t)||t<0))throw new i(`maxRedirections must be a positive number`);if(r.throwOnMaxRedirect!=null&&typeof r.throwOnMaxRedirect!=`boolean`)throw new i(`throwOnMaxRedirect must be a boolean`);this.dispatch=e,this.location=null;let{maxRedirections:o,stripHeadersOnRedirect:s,stripHeadersOnCrossOriginRedirect:c,...l}=r;this.opts=l,this.opts.body=n.wrapRequestBody(this.opts.body),this.stripHeadersOnRedirect=u(s,`stripHeadersOnRedirect`),this.stripHeadersOnCrossOriginRedirect=u(c,`stripHeadersOnCrossOriginRedirect`),this.maxRedirections=t,this.handler=a,this.history=[]}onRequestStart(e,t){this.handler.onRequestStart?.(e,{...t,history:this.history})}onBodySent(e){this.handler.onBodySent?.(e)}onRequestSent(){this.handler.onRequestSent?.()}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,r,c){if(t<200){this.handler.onResponseStart?.(e,t,r,c);return}if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error(`max redirects`);let l=t===303;(t===301||t===302)&&this.opts.method===`POST`&&(this.opts.method=`GET`,n.isStream(this.opts.body)&&n.destroy(this.opts.body.on(`error`,s)),this.opts.body=null,l=!0),t===303&&this.opts.method!==`HEAD`&&(this.opts.method=`GET`,n.isStream(this.opts.body)&&n.destroy(this.opts.body.on(`error`,s)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||n.isDisturbed(this.opts.body)||o.indexOf(t)===-1?null:r.location;let u=this.opts[a]===void 0?this.opts.origin:this.opts[a];if(u&&this.history.push(new URL(this.opts.path,u)),!this.location){this.handler.onResponseStart?.(e,t,r,c);return}let f=u?new URL(this.opts.path,u):void 0,{origin:p,pathname:m,search:h}=n.parseURL(new URL(this.location,f)),g=h?`${m}${h}`:m,_=`${p}${g}`;for(let e of this.history)if(e.toString()===_)throw new i(`Redirect loop detected. Cannot redirect to ${p}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=d(this.opts.headers,l,u!==p,this.stripHeadersOnRedirect,this.stripHeadersOnCrossOriginRedirect),this.opts.path=g,this.opts.origin=p,this.opts[a]=p,this.opts.query=null}onResponseData(e,t){this.location||this.handler.onResponseData?.(e,t)}onResponseEnd(e,t){this.location?this.dispatch(this.opts,this):this.handler.onResponseEnd(e,t)}onResponseError(e,t){this.handler.onResponseError?.(e,t)}};function l(e,t,r,i,a){let o=n.headerNameToString(e);return o===`host`||i?.has(o)||r&&a?.has(o)||t&&o.startsWith(`content-`)?!0:r?o===`authorization`||o===`cookie`||o===`proxy-authorization`:!1}function u(e,t){if(e==null)return null;if(!Array.isArray(e))throw new i(`${t} must be an array`);let r=new Set;for(let a of e){if(typeof a!=`string`)throw new i(`${t} must contain header names`);r.add(n.headerNameToString(a))}return r}function d(e,t,i,a,o){let s=[];if(Array.isArray(e))for(let n=0;n<e.length;n+=2)l(e[n],t,i,a,o)||s.push(e[n],e[n+1]);else if(e&&typeof e==`object`){let r=n.hasSafeIterator(e)?e:Object.entries(e);for(let[e,n]of r)l(e,t,i,a,o)||s.push(e,n)}else r(e==null,`headers must be an object or an array`);return s}t.exports=c})),Hw=q(((e,t)=>{var n=Vw();function r({maxRedirections:e,throwOnMaxRedirect:t,stripHeadersOnRedirect:r,stripHeadersOnCrossOriginRedirect:i}={}){return a=>function(o,s){let{maxRedirections:c=e,throwOnMaxRedirect:l=t,stripHeadersOnRedirect:u=r,stripHeadersOnCrossOriginRedirect:d=i,...f}=o;if(c==null||c===0)return a(o,s);let p={...f,throwOnMaxRedirect:l,stripHeadersOnRedirect:u,stripHeadersOnCrossOriginRedirect:d};return a(p,new n(a,c,p,s))}}t.exports=r})),Uw=q(((e,t)=>{var n=Bw(),{ResponseError:r}=Q(),i=class extends n{#e;#t;#n;#r;#i;constructor(e,{handler:t}){super(t)}#a(e){return(this.#t??``).indexOf(e)===0}onRequestStart(e,t){return this.#e=0,this.#t=null,this.#n=null,this.#r=null,this.#i=``,super.onRequestStart(e,t)}onResponseStart(e,t,n,r){if(this.#e=t,this.#r=n,this.#t=n[`content-type`],this.#e<400)return super.onResponseStart(e,t,n,r);(this.#a(`application/json`)||this.#a(`text/plain`))&&(this.#n=new TextDecoder(`utf-8`))}onResponseData(e,t){if(this.#e<400)return super.onResponseData(e,t);this.#i+=this.#n?.decode(t,{stream:!0})??``}onResponseEnd(e,t){if(this.#e>=400){if(this.#i+=this.#n?.decode(void 0,{stream:!1})??``,this.#a(`application/json`))try{this.#i=JSON.parse(this.#i)}catch{}let t,n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{t=new r(`Response Error`,this.#e,{body:this.#i,headers:this.#r})}finally{Error.stackTraceLimit=n}super.onResponseError(e,t)}else super.onResponseEnd(e,t)}onResponseError(e,t){super.onResponseError(e,t)}};t.exports=()=>e=>function(t,n){return e(t,new i(t,{handler:n}))}})),Ww=q(((e,t)=>{var n=gw();t.exports=e=>t=>function(r,i){return t(r,new n({...r,retryOptions:{...e,...r.retryOptions}},{handler:i,dispatch:t}))}})),Gw=q(((e,t)=>{var{InvalidArgumentError:n,RequestAbortedError:r}=Q(),i=Bw(),a=class extends i{#e=1048576;#t=!1;#n=0;aborted=!1;reason=!1;constructor({maxSize:e,signal:t},r){if(e!=null&&(!Number.isFinite(e)||e<1))throw new n(`maxSize must be a number greater than 0`);super(r),this.#e=e??this.#e}#r(e){this.aborted=!0,this.reason=e}onRequestStart(e,t){return e.abort=this.#r.bind(this),super.onRequestStart(e,t)}onResponseStart(e,t,n,i){let a=n[`content-length`];if(a!=null&&a>this.#e)throw new r(`Response size (${a}) larger than maxSize (${this.#e})`);return this.aborted===!0||super.onResponseStart(e,t,n,i)}onResponseError(e,t){super.onResponseError(e,this.aborted===!0?this.reason:t)}onResponseData(e,t){if(this.#n+=t.length,this.#n>this.#e)throw new r(`Response size (${this.#n}) larger than maxSize (${this.#e})`);return this.#n===this.#e&&(this.#t=!0),!0}onResponseEnd(e,t){if(this.aborted===!0){super.onResponseError(e,this.reason);return}super.onResponseEnd(e,this.#t?{}:t)}};function o({maxSize:e}={maxSize:1048576}){return t=>function(n,r){let{dumpMaxSize:i=e}=n;return t(n,new a({maxSize:i,signal:n.signal},r))}}t.exports=o})),Kw=q(((e,t)=>{var{isIP:n}=J(`node:net`),{lookup:r}=J(`node:dns`),i=Bw(),{InvalidArgumentError:a,InformationalError:o}=Q(),{kRequestOrigin:s}=AC(),c=2**31-1;function l(e){let t=Object.getPrototypeOf(e);return Object.hasOwn(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function u(e){return typeof e==`string`&&e.toLowerCase()===`host`}function d(e){if(e==null)return null;if(Array.isArray(e)){if(e.length===0||!Array.isArray(e[0]))return e;let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}if(typeof e==`object`&&l(e)){let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}return e}function f(e){if(e==null)return!1;if(Array.isArray(e)){if(e.length===0)return!1;for(let t=0;t<e.length;t+=2)if(u(e[t]))return!0;return!1}if(typeof e==`object`){for(let t in e)if(u(t))return!0}return!1}function p(e,t){let n=d(t);return f(n)?n:Array.isArray(n)?[`host`,e,...n]:n&&typeof n==`object`?{host:e,...n}:{host:e}}var m=class{#e=0;#t=new Map;constructor(e){this.#e=e.maxItems}get size(){return this.#t.size}get(e){return this.#t.get(e)??null}set(e,t){this.#t.set(e,t)}delete(e){this.#t.delete(e)}full(){return this.size>=this.#e}},h=class{#e=0;#t=0;dualStack=!0;affinity=null;lookup=null;pick=null;storage=null;constructor(e){this.#e=e.maxTTL,this.#t=e.maxItems,this.dualStack=e.dualStack,this.affinity=e.affinity,this.lookup=e.lookup??this.#n,this.pick=e.pick??this.#r,this.storage=e.storage??new m(e)}runLookup(e,t,n){let r=this.storage.get(e.hostname);if(r==null&&this.storage.full()){n(null,e);return}let i={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...t.dns,maxTTL:this.#e,maxItems:this.#t};if(r==null)this.lookup(e,i,(t,r)=>{if(t||r==null||r.length===0){n(t??new o(`No DNS entries found`));return}this.setRecords(e,r);let a=this.storage.get(e.hostname),s=this.pick(e,a,i.affinity),c;c=typeof s.port==`number`?`:${s.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${s.family===6?`[${s.address}]`:s.address}${c}`))});else{let a=this.pick(e,r,i.affinity);if(a==null){this.storage.delete(e.hostname),this.runLookup(e,t,n);return}let o;o=typeof a.port==`number`?`:${a.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${o}`))}}#n(e,t,n){r(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:`ipv4first`},(e,t)=>{if(e)return n(e);let r=new Map;for(let e of t)r.set(`${e.address}:${e.family}`,e);n(null,r.values())})}#r(e,t,n){let r=null,{records:i,offset:a}=t,o;if(this.dualStack?(n??(a==null||a===c?(t.offset=0,n=4):(t.offset++,n=(t.offset&1)==1?6:4)),o=i[n]!=null&&i[n].ips.length>0?i[n]:i[n===4?6:4]):o=i[n],o==null||o.ips.length===0)return r;o.offset==null||o.offset===c?o.offset=0:o.offset++;let s=o.offset%o.ips.length;return r=o.ips[s]??null,r==null?r:Date.now()-r.timestamp>r.ttl?(o.ips.splice(s,1),this.pick(e,t,n)):r}pickFamily(e,t){let n=this.storage.get(e.hostname)?.records;if(!n)return null;let r=n[t];if(!r)return null;r.offset==null||r.offset===c?r.offset=0:r.offset++;let i=r.offset%r.ips.length,a=r.ips[i]??null;return a==null||Date.now()-a.timestamp>a.ttl&&r.ips.splice(i,1),a}setRecords(e,t){let n=Date.now(),r={records:{4:null,6:null}},i=this.#e;for(let e of t){e.timestamp=n,typeof e.ttl==`number`?(e.ttl=Math.min(e.ttl,this.#e),i=Math.min(i,e.ttl)):e.ttl=this.#e;let t=r.records[e.family]??{ips:[]};t.ips.push(e),r.records[e.family]=t}this.storage.set(e.hostname,r,{ttl:i})}deleteRecords(e){this.storage.delete(e.hostname)}getHandler(e,t){return new g(this,e,t)}},g=class extends i{#e=null;#t=null;#n=null;#r=null;#i=null;#a=!0;constructor(e,{origin:t,handler:n,dispatch:r,newOrigin:i},a){super(n),this.#r=t,this.#i=i,this.#t={...a},this.#e=e,this.#n=r}onResponseError(e,t){switch(t.code){case`ETIMEDOUT`:case`ECONNREFUSED`:if(this.#e.dualStack){if(!this.#a){super.onResponseError(e,t);return}this.#a=!1;let n=this.#i.hostname[0]===`[`?4:6,r=this.#e.pickFamily(this.#r,n);if(r==null){super.onResponseError(e,t);return}let i;i=typeof r.port==`number`?`:${r.port}`:this.#r.port===``?``:`:${this.#r.port}`;let a={...this.#t,origin:`${this.#r.protocol}//${r.family===6?`[${r.address}]`:r.address}${i}`,[s]:this.#t[s]===void 0?this.#r:this.#t[s],headers:p(this.#r.host,this.#t.headers)};this.#n(a,this);return}super.onResponseError(e,t);break;case`ENOTFOUND`:this.#e.deleteRecords(this.#r),super.onResponseError(e,t);break;default:super.onResponseError(e,t)}}};t.exports=e=>{if(e?.maxTTL!=null&&(typeof e?.maxTTL!=`number`||e?.maxTTL<0))throw new a(`Invalid maxTTL. Must be a positive number`);if(e?.maxItems!=null&&(typeof e?.maxItems!=`number`||e?.maxItems<1))throw new a(`Invalid maxItems. Must be a positive number and greater than zero`);if(e?.affinity!=null&&e?.affinity!==4&&e?.affinity!==6)throw new a(`Invalid affinity. Must be either 4 or 6`);if(e?.dualStack!=null&&typeof e?.dualStack!=`boolean`)throw new a(`Invalid dualStack. Must be a boolean`);if(e?.lookup!=null&&typeof e?.lookup!=`function`)throw new a(`Invalid lookup. Must be a function`);if(e?.pick!=null&&typeof e?.pick!=`function`)throw new a(`Invalid pick. Must be a function`);if(e?.storage!=null&&(typeof e?.storage?.get!=`function`||typeof e?.storage?.set!=`function`||typeof e?.storage?.full!=`function`||typeof e?.storage?.delete!=`function`))throw new a(`Invalid storage. Must be a object with methods: { get, set, full, delete }`);let t=e?.dualStack??!0,r;r=t?e?.affinity??null:e?.affinity??4;let i=new h({maxTTL:e?.maxTTL??1e4,lookup:e?.lookup??null,pick:e?.pick??null,dualStack:t,affinity:r,maxItems:e?.maxItems??1/0,storage:e?.storage});return e=>function(t,r){if(t.origin==null)return e(t,r);let a=t.origin.constructor===URL?t.origin:new URL(t.origin);return n(a.hostname)===0?(i.runLookup(a,t,(n,o)=>{if(n)return r.onResponseError(null,n);e({...t,servername:a.hostname,origin:o.origin,[s]:t[s]===void 0?a:t[s],headers:p(a.host,t.headers)},i.getHandler({origin:a,dispatch:e,handler:r,newOrigin:o},t))}),!0):e(t,r)}}})),qw=q(((e,t)=>{var{safeHTTPMethods:n,pathHasQueryOrFragment:r,hasSafeIterator:i,isValidHTTPToken:a}=$(),{serializePathWithQuery:o}=$(),{kRequestOrigin:s}=AC(),c=2147483647,l=[`no-store`,`private`,`no-cache`],u=Symbol(`invalid cache-control directives`);function d(e){return e.replace(/^[\t ]+|[\t ]+$/g,``)}function f(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function p(e){return e.replace(/^[\t ]+/,``)}function m(e){return e.replace(/[\t ]+$/,``)}function h(e,t){let n=!1;for(let r=t;r<e.length;r++)if(n)n=!1;else if(e[r]===`\\`)n=!0;else if(e[r]===`"`)return r;return-1}function g(e){let t=[],n=0,r=-1,i=!1,a=!1;for(let o=0;o<e.length;o++)i?a?a=!1:e[o]===`\\`?a=!0:e[o]===`"`&&(i=!1,r=-1):e[o]===`"`?(i=!0,r=o):e[o]===`,`&&(t.push({value:e.substring(n,o),fromMalformedQuote:!1}),n=o+1);if(!i)return t.push({value:e.substring(n),fromMalformedQuote:!1}),t;let o=e.substring(n),s=r-n,c=0;for(let e=0;e<o.length;e++)o[e]===`,`&&(t.push({value:o.substring(c,e),fromMalformedQuote:c>s}),c=e+1);return t.push({value:o.substring(c),fromMalformedQuote:c>s}),t}function _(e,t){let n=e[u];n===void 0&&(n=new Set,Object.defineProperty(e,u,{value:n})),n.add(t)}function v(e,t){return e[u]?.has(t)===!0}function y(e){for(let t of l)if(e.startsWith(t)&&e.length>t.length&&!a(e[t.length]))return t;let t=``,n=!1;for(let r=0;r<e.length;r++)a(e[r])?t+=e[r]:n=!0;if(n&&f(l,t))return t}function b(e){let t=e[s]===void 0?e.origin:e[s];return typeof t==`string`||t instanceof URL?t:null}function x(e,t){let n=b(e);if(t===void 0)return n;if(t===null)return null;if(n)try{if(new URL(n).origin!==t)return null}catch{return t}return t}function S(e,t=b(e)){if(!t)throw Error(`opts.origin is undefined`);let n=e.path||`/`;return e.query&&!r(n)&&(n=o(n,e.query)),{origin:t.toString(),method:e.method,path:n,headers:e.headers}}function C(e,t,n){let r=t.toLowerCase(),i=e[r],a=Array.isArray(n)?n:[n];i===void 0?e[r]=Array.isArray(n)?n.slice():n:Array.isArray(i)?i.push(...a):e[r]=[i,...a]}function w(e){let t;if(e.headers==null)t={};else if(typeof e.headers==`object`){if(t={},i(e.headers)){if(Array.isArray(e.headers)){let n=e.headers[0];if(Array.isArray(n))for(let n of e.headers){if(!Array.isArray(n))throw Error(`opts.headers is not a valid header map`);let[e,r]=n;if(typeof e!=`string`||typeof r!=`string`)throw Error(`opts.headers is not a valid header map`);C(t,e,r)}else{let n=e.headers.length;if(n%2!=0)throw Error(`opts.headers is not a valid header map`);for(let r=0;r<n;r+=2){let n=e.headers[r],i=e.headers[r+1];if(typeof n!=`string`||typeof i!=`string`&&!Array.isArray(i))throw Error(`opts.headers is not a valid header map`);if(typeof i==`string`)C(t,n,i);else{let e=[];for(let t=0;t<i.length;t++){let n=i[t];e.push(typeof n==`string`?n:n.toString(`latin1`))}C(t,n,e)}}}}else for(let n of e.headers){if(!Array.isArray(n))throw Error(`opts.headers is not a valid header map`);let[e,r]=n;if(typeof e!=`string`||typeof r!=`string`)throw Error(`opts.headers is not a valid header map`);C(t,e,r)}}else for(let n of Object.keys(e.headers))C(t,n,e.headers[n])}else throw Error(`opts.headers is not an object`);return t}function T(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);for(let t of[`origin`,`method`,`path`])if(typeof e[t]!=`string`)throw TypeError(`expected key.${t} to be string, got ${typeof e[t]}`);if(e.headers!==void 0&&typeof e.headers!=`object`)throw TypeError(`expected headers to be object, got ${typeof e}`)}function E(e){if(typeof e!=`object`)throw TypeError(`expected value to be object, got ${typeof e}`);for(let t of[`statusCode`,`cachedAt`,`staleAt`,`deleteAt`])if(typeof e[t]!=`number`)throw TypeError(`expected value.${t} to be number, got ${typeof e[t]}`);if(typeof e.statusMessage!=`string`)throw TypeError(`expected value.statusMessage to be string, got ${typeof e.statusMessage}`);if(e.headers!=null&&typeof e.headers!=`object`)throw TypeError(`expected value.rawHeaders to be object, got ${typeof e.headers}`);if(e.vary!==void 0&&typeof e.vary!=`object`)throw TypeError(`expected value.vary to be object, got ${typeof e.vary}`);if(e.etag!==void 0&&typeof e.etag!=`string`)throw TypeError(`expected value.etag to be string, got ${typeof e.etag}`)}function D(e){let t={},n=new Set,r=new Set,i=g(Array.isArray(e)?e.join(`,`):e);for(let e=0;e<i.length;e++){let o=i[e],s=o.value.toLowerCase(),l=o.fromMalformedQuote,u=s.indexOf(`=`),f,g,v=!1,b=!1;if(u!==-1){let e=s.substring(0,u),t=s.substring(u+1);v=m(e)!==e,b=p(t)!==t,f=d(e),g=p(t)}else f=d(s);let x=y(f);if(x!==void 0){t[x]=!0;continue}switch(f){case`min-fresh`:case`max-stale`:case`max-age`:case`s-maxage`:case`stale-while-revalidate`:case`stale-if-error`:{if(l||n.has(f))continue;if(g===void 0||v||b){delete t[f],n.add(f),_(t,f);continue}if(g.length>=2&&g[0]===`"`&&g[g.length-1]===`"`&&(g=g.substring(1,g.length-1)),!/^[0-9]+$/.test(g)){delete t[f],n.add(f),_(t,f);continue}let e=Math.min(parseInt(g,10),c);f===`min-fresh`?(!(f in t)||t[f]<e)&&(t[f]=e):(!(f in t)||t[f]>e)&&(t[f]=e);break}case`private`:case`no-cache`:if(l){t[f]=!0;break}if(g!==void 0&&g.length===0){t[f]=!0;break}if(g){if(g[0]===`"`){g=m(g);let n=``,r=e,o=!1,s=h(g,1);if(s!==-1)n=g.substring(1,s),o=!0;else{let t=[g.substring(1)];for(let n=e+1;n<i.length;n++){let e=d(i[n].value),a=h(e,0);if(r=n,a!==-1){t.push(e.substring(0,a)),o=!0;break}t.push(e)}n=t.join(`,`)}if(!o){t[f]=!0;break}e=r;let c=n.split(`,`),l=!0;for(let e=0;e<c.length;e++)c[e]=d(c[e]),a(c[e])||(l=!1);l?t[f]!==!0&&(f in t?t[f]=t[f].concat(c):t[f]=c):t[f]=!0}else{let e=d(g);a(e)?t[f]!==!0&&(f in t?t[f]=t[f].concat(e):t[f]=[e]):t[f]=!0}break}case`public`:case`must-revalidate`:case`proxy-revalidate`:case`immutable`:case`no-transform`:case`must-understand`:case`only-if-cached`:if(l||r.has(f))continue;if(g!==void 0){delete t[f],r.add(f);continue}t[f]=!0;break;case`no-store`:t[f]=!0;break;default:continue}}return t}function O(e){let t=Array.isArray(e)?e:[e],n=[];for(let e=0;e<t.length;e++){let r=t[e].split(`,`);for(let e=0;e<r.length;e++)n.push(r[e])}return n}function k(e){let t=O(e);for(let e=0;e<t.length;e++)if(d(t[e]).indexOf(`*`)!==-1)return!0;return!1}function A(e,t){if(k(e))return t;let n={},r=O(e);for(let e of r){let r=d(e).toLowerCase();if(r.length===0)continue;if(!a(r))return;let i=t[r];n[r]=Array.isArray(i)?i.slice():i??null}return n}function j(e){return k(e)||A(e,{})===void 0}function M(e){return e.length<=2?!1:e[0]===`"`&&e[e.length-1]===`"`?!(e[1]===`"`||e.startsWith(`"W/`)):e.startsWith(`W/"`)&&e[e.length-1]===`"`?e.length!==4:!1}function N(e,t=`CacheStore`){if(typeof e!=`object`||!e)throw TypeError(`expected type of ${t} to be a CacheStore, got ${e===null?`null`:typeof e}`);for(let n of[`get`,`createWriteStream`,`delete`])if(typeof e[n]!=`function`)throw TypeError(`${t} needs to have a \`${n}()\` function`)}function P(e,t=`CacheMethods`){if(!Array.isArray(e))throw TypeError(`expected type of ${t} needs to be an array, got ${e===null?`null`:typeof e}`);if(e.length===0)throw TypeError(`${t} needs to have at least one method`);for(let r of e)if(!f(n,r))throw TypeError(`element of ${t}-array needs to be one of following values: ${n.join(`, `)}, got ${r}`)}function F(e,t){let n={};if(e.headers){let r=Object.keys(e.headers).sort();for(let i of r)t?.has(i.toLowerCase())||(n[i]=e.headers[i])}return JSON.stringify([e.origin,e.method,e.path,n])}t.exports={getInterceptorOrigin:x,getRequestOrigin:b,makeCacheKey:S,normalizeHeaders:w,assertCacheKey:T,assertCacheValue:E,parseCacheControlHeader:D,hasInvalidCacheControlDirective:v,parseVaryHeader:A,hasVaryStar:k,isInvalidOrWildcardVaryHeader:j,isEtagUsable:M,assertCacheMethods:P,assertCacheStore:N,makeDeduplicationKey:F}})),Jw=q(((e,t)=>{function n(e){switch(e[3]){case`,`:return i(e);case` `:return a(e);default:return o(e)}}function r(e,t,n,r,i,a,o){let s=new Date(Date.UTC(e,t,n,r,i,a));return e>=0&&e<=99&&s.setUTCFullYear(e),s.getUTCFullYear()===e&&s.getUTCMonth()===t&&s.getUTCDate()===n&&s.getUTCHours()===r&&s.getUTCMinutes()===i&&s.getUTCSeconds()===a&&s.getUTCDay()===o?s:void 0}function i(e){if(e.length!==29||e[4]!==` `||e[7]!==` `||e[11]!==` `||e[16]!==` `||e[19]!==`:`||e[22]!==`:`||e[25]!==` `||e[26]!==`G`||e[27]!==`M`||e[28]!==`T`)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=0;if(e[5]===`0`){let t=e.charCodeAt(6);if(t<49||t>57)return;n=t-48}else{let t=e.charCodeAt(5);if(t<49||t>51)return;let r=e.charCodeAt(6);if(r<48||r>57)return;n=(t-48)*10+(r-48)}let i=-1;if(e[8]===`J`&&e[9]===`a`&&e[10]===`n`)i=0;else if(e[8]===`F`&&e[9]===`e`&&e[10]===`b`)i=1;else if(e[8]===`M`&&e[9]===`a`){if(e[10]===`r`)i=2;else if(e[10]===`y`)i=4;else return}else if(e[8]===`J`){if(e[9]===`a`&&e[10]===`n`)i=0;else if(e[9]===`u`){if(e[10]===`n`)i=5;else if(e[10]===`l`)i=6;else return}else return}else if(e[8]===`A`){if(e[9]===`p`&&e[10]===`r`)i=3;else if(e[9]===`u`&&e[10]===`g`)i=7;else return}else if(e[8]===`S`&&e[9]===`e`&&e[10]===`p`)i=8;else if(e[8]===`O`&&e[9]===`c`&&e[10]===`t`)i=9;else if(e[8]===`N`&&e[9]===`o`&&e[10]===`v`)i=10;else if(e[8]===`D`&&e[9]===`e`&&e[10]===`c`)i=11;else return;let a=e.charCodeAt(12);if(a<48||a>57)return;let o=e.charCodeAt(13);if(o<48||o>57)return;let s=e.charCodeAt(14);if(s<48||s>57)return;let c=e.charCodeAt(15);if(c<48||c>57)return;let l=(a-48)*1e3+(o-48)*100+(s-48)*10+(c-48),u=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;u=t-48}else{let t=e.charCodeAt(17);if(t<48||t>50)return;let n=e.charCodeAt(18);if(n<48||n>57||t===50&&n>51)return;u=(t-48)*10+(n-48)}let d=0;if(e[20]===`0`){let t=e.charCodeAt(21);if(t<48||t>57)return;d=t-48}else{let t=e.charCodeAt(20);if(t<48||t>53)return;let n=e.charCodeAt(21);if(n<48||n>57)return;d=(t-48)*10+(n-48)}let f=0;if(e[23]===`0`){let t=e.charCodeAt(24);if(t<48||t>57)return;f=t-48}else{let t=e.charCodeAt(23);if(t<48||t>53)return;let n=e.charCodeAt(24);if(n<48||n>57)return;f=(t-48)*10+(n-48)}return r(l,i,n,u,d,f,t)}function a(e){if(e.length!==24||e[7]!==` `||e[10]!==` `||e[19]!==` `)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=-1;if(e[4]===`J`&&e[5]===`a`&&e[6]===`n`)n=0;else if(e[4]===`F`&&e[5]===`e`&&e[6]===`b`)n=1;else if(e[4]===`M`&&e[5]===`a`){if(e[6]===`r`)n=2;else if(e[6]===`y`)n=4;else return}else if(e[4]===`J`){if(e[5]===`a`&&e[6]===`n`)n=0;else if(e[5]===`u`){if(e[6]===`n`)n=5;else if(e[6]===`l`)n=6;else return}else return}else if(e[4]===`A`){if(e[5]===`p`&&e[6]===`r`)n=3;else if(e[5]===`u`&&e[6]===`g`)n=7;else return}else if(e[4]===`S`&&e[5]===`e`&&e[6]===`p`)n=8;else if(e[4]===`O`&&e[5]===`c`&&e[6]===`t`)n=9;else if(e[4]===`N`&&e[5]===`o`&&e[6]===`v`)n=10;else if(e[4]===`D`&&e[5]===`e`&&e[6]===`c`)n=11;else return;let i=0;if(e[8]===` `){let t=e.charCodeAt(9);if(t<49||t>57)return;i=t-48}else{let t=e.charCodeAt(8);if(t<49||t>51)return;let n=e.charCodeAt(9);if(n<48||n>57)return;i=(t-48)*10+(n-48)}let a=0;if(e[11]===`0`){let t=e.charCodeAt(12);if(t<48||t>57)return;a=t-48}else{let t=e.charCodeAt(11);if(t<48||t>50)return;let n=e.charCodeAt(12);if(n<48||n>57||t===50&&n>51)return;a=(t-48)*10+(n-48)}let o=0;if(e[14]===`0`){let t=e.charCodeAt(15);if(t<48||t>57)return;o=t-48}else{let t=e.charCodeAt(14);if(t<48||t>53)return;let n=e.charCodeAt(15);if(n<48||n>57)return;o=(t-48)*10+(n-48)}let s=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;s=t-48}else{let t=e.charCodeAt(17);if(t<48||t>53)return;let n=e.charCodeAt(18);if(n<48||n>57)return;s=(t-48)*10+(n-48)}let c=e.charCodeAt(20);if(c<48||c>57)return;let l=e.charCodeAt(21);if(l<48||l>57)return;let u=e.charCodeAt(22);if(u<48||u>57)return;let d=e.charCodeAt(23);if(!(d<48||d>57))return r((c-48)*1e3+(l-48)*100+(u-48)*10+(d-48),n,i,a,o,s,t)}function o(e){let t=-1,n=-1;if(e[0]===`S`)e[1]===`u`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`?(n=0,t=6):e[1]===`a`&&e[2]===`t`&&e[3]===`u`&&e[4]===`r`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=6,t=8);else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=1,t=6;else if(e[0]===`T`)e[1]===`u`&&e[2]===`e`&&e[3]===`s`&&e[4]===`d`&&e[5]===`a`&&e[6]===`y`?(n=2,t=7):e[1]===`h`&&e[2]===`u`&&e[3]===`r`&&e[4]===`s`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=4,t=8);else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`&&e[3]===`n`&&e[4]===`e`&&e[5]===`s`&&e[6]===`d`&&e[7]===`a`&&e[8]===`y`)n=3,t=9;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=5,t=6;else return;if(e[t]!==`,`||e.length-t-1!=23||e[t+1]!==` `||e[t+4]!==`-`||e[t+8]!==`-`||e[t+11]!==` `||e[t+14]!==`:`||e[t+17]!==`:`||e[t+20]!==` `||e[t+21]!==`G`||e[t+22]!==`M`||e[t+23]!==`T`)return;let i=0;if(e[t+2]===`0`){let n=e.charCodeAt(t+3);if(n<49||n>57)return;i=n-48}else{let n=e.charCodeAt(t+2);if(n<49||n>51)return;let r=e.charCodeAt(t+3);if(r<48||r>57)return;i=(n-48)*10+(r-48)}let a=-1;if(e[t+5]===`J`&&e[t+6]===`a`&&e[t+7]===`n`)a=0;else if(e[t+5]===`F`&&e[t+6]===`e`&&e[t+7]===`b`)a=1;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`r`)a=2;else if(e[t+5]===`A`&&e[t+6]===`p`&&e[t+7]===`r`)a=3;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`y`)a=4;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`n`)a=5;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`l`)a=6;else if(e[t+5]===`A`&&e[t+6]===`u`&&e[t+7]===`g`)a=7;else if(e[t+5]===`S`&&e[t+6]===`e`&&e[t+7]===`p`)a=8;else if(e[t+5]===`O`&&e[t+6]===`c`&&e[t+7]===`t`)a=9;else if(e[t+5]===`N`&&e[t+6]===`o`&&e[t+7]===`v`)a=10;else if(e[t+5]===`D`&&e[t+6]===`e`&&e[t+7]===`c`)a=11;else return;let o=e.charCodeAt(t+9);if(o<48||o>57)return;let s=e.charCodeAt(t+10);if(s<48||s>57)return;let c=(o-48)*10+(s-48);c+=c<70?2e3:1900;let l=0;if(e[t+12]===`0`){let n=e.charCodeAt(t+13);if(n<48||n>57)return;l=n-48}else{let n=e.charCodeAt(t+12);if(n<48||n>50)return;let r=e.charCodeAt(t+13);if(r<48||r>57||n===50&&r>51)return;l=(n-48)*10+(r-48)}let u=0;if(e[t+15]===`0`){let n=e.charCodeAt(t+16);if(n<48||n>57)return;u=n-48}else{let n=e.charCodeAt(t+15);if(n<48||n>53)return;let r=e.charCodeAt(t+16);if(r<48||r>57)return;u=(n-48)*10+(r-48)}let d=0;if(e[t+18]===`0`){let n=e.charCodeAt(t+19);if(n<48||n>57)return;d=n-48}else{let n=e.charCodeAt(t+18);if(n<48||n>53)return;let r=e.charCodeAt(t+19);if(r<48||r>57)return;d=(n-48)*10+(r-48)}return r(c,a,i,l,u,d,n)}t.exports={parseHttpDate:n}})),Yw=q(((e,t)=>{var n=$(),{parseCacheControlHeader:r,hasInvalidCacheControlDirective:i,parseVaryHeader:a,hasVaryStar:o,isInvalidOrWildcardVaryHeader:s,isEtagUsable:c}=qw(),{parseHttpDate:l}=Jw();function u(){}var d=[200,203,204,206,300,301,308,404,405,410,414,501],f=[206],p=2147483647e3,m=864e5;function h(e){return e.replace(/^[\t ]+|[\t ]+$/g,``)}function g(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function _(e,t){let n=Array.isArray(t)?t:[t];for(let t=0;t<n.length;t++){let r=n[t].split(`,`);for(let t=0;t<r.length;t++)e.push(h(r[t]).toLowerCase())}}function v(e,t){if(typeof t!=`string`)return;let n,r,i;try{n=new URL(e.origin),r=new URL(e.path,n),i=new URL(t,r)}catch{return}if(i.origin===n.origin)return i.pathname+i.search}function y(e,t,r){C(e,{...t,path:r});for(let i=0;i<n.safeHTTPMethods.length;i++){let a=n.safeHTTPMethods[i];a!==t.method&&C(e,{...t,method:a,path:r})}}function b(e,t,n){if(n===void 0)return;let r=Array.isArray(n)?n:[n];for(let n=0;n<r.length;n++){let i=v(t,r[n]);i!==void 0&&y(e,t,i)}}function x(e,t,n){y(e,t,t.path),b(e,t,n.location),b(e,t,n[`content-location`])}var S=class{#e;#t;#n;#r;#i;#a;constructor({store:e,type:t,cacheByDefault:n},r,i){this.#r=e,this.#t=t,this.#n=n,this.#e=r,this.#i=i}onRequestStart(e,t){this.#a?.destroy(),this.#a=void 0,this.#i.onRequestStart?.(e,t)}onBodySent(e){this.#i.onBodySent?.(e)}onRequestSent(){this.#i.onRequestSent?.()}onRequestUpgrade(e,t,n,r){this.#i.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,i,o){let l=()=>this.#i.onResponseStart?.(e,t,i,o),u=this;if(!g(n.safeHTTPMethods,this.#e.method)&&t>=200&&t<=399)return x(this.#r,this.#e,i),l();let f=i[`cache-control`],m=f?r(f):{};if(T(this.#t,i,m))return C(this.#r,this.#e),l();let h=i[`last-modified`]&&g(d,t);if(!f&&!i.expires&&!h&&!this.#n)return t===304&&i.vary&&s(i.vary)&&C(this.#r,this.#e),l();if(!E(this.#t,this.#e.method,t,i,m,this.#e.headers))return t===304&&(f||T(this.#t,i,m))&&C(this.#r,this.#e),l();let _=Date.now(),v=Object.hasOwn(i,`age`)?O(i.age):void 0;if(v!==void 0&&v>=p)return w(t,this.#r,this.#e),l();let y=Object.hasOwn(i,`date`)?D(i.date):void 0;if(y===null)return w(t,this.#r,this.#e),l();let b=y?Math.max(0,_-y.getTime()):0,S=Math.max(b,v??0),M=typeof i.etag==`string`&&c(i.etag)||typeof i[`last-modified`]==`string`,N=k(this.#t,_,v,i,y,m,M)??this.#n,P=N===0&&M;if(N===void 0||S>=N&&!P)return(f||N!==void 0)&&w(t,this.#r,this.#e),l();let F=_-S,I=N+F;if(_>=I&&!P)return w(t,this.#r,this.#e),l();let L;if(this.#e.headers&&i.vary&&(L=a(i.vary,this.#e.headers),!L))return l();let R=F,ee=A(F,_,m,I),te=j(i,m),ne={statusCode:t,statusMessage:o,headers:te,vary:L,cacheControlDirectives:m,cachedAt:R,staleAt:I,deleteAt:ee};if(t===304){let t=t=>{if(!t)return l();if(ne.statusCode=t.statusCode,ne.statusMessage=t.statusMessage,ne.etag=t.etag,ne.vary=L??t.vary,ne.headers={...t.headers,...te},l(),this.#a=this.#r.createWriteStream(this.#e,ne),this.#a&&t?.body){if(typeof t.body.values==`function`){let n=t.body.values(),r=()=>{for(let t of n){let n=this.#a.write(t)===!1;if(this.#i.onResponseData?.(e,t),n)break}};this.#a.on(`error`,function(){u.#a=void 0,u.#r.delete(u.#e)}).on(`drain`,()=>{r()}).on(`close`,function(){u.#a===this&&(u.#a=void 0)}),r()}else typeof t.body.on==`function`&&(t.body.on(`data`,t=>{this.#a.write(t),this.#i.onResponseData?.(e,t)}).on(`end`,()=>{this.#a.end()}).on(`error`,()=>{this.#a=void 0,this.#r.delete(this.#e)}),this.#a.on(`error`,function(){u.#a=void 0,u.#r.delete(u.#e)}).on(`close`,function(){u.#a===this&&(u.#a=void 0)}))}},n=this.#r.get(this.#e);n&&typeof n.then==`function`?n.then(t):t(n)}else{if(typeof i.etag==`string`&&c(i.etag)&&(ne.etag=i.etag),this.#a=this.#r.createWriteStream(this.#e,ne),!this.#a)return l();this.#a.on(`drain`,()=>e.resume()).on(`error`,function(){u.#a=void 0,u.#r.delete(u.#e)}).on(`close`,function(){u.#a===this&&(u.#a=void 0),e.resume()}),l()}}onResponseData(e,t){this.#a?.write(t)===!1&&e.pause(),this.#i.onResponseData?.(e,t)}onResponseEnd(e,t){this.#a?.end(),this.#i.onResponseEnd?.(e,t)}onResponseError(e,t){this.#a?.destroy(t),this.#a=void 0,this.#i.onResponseError?.(e,t)}};function C(e,t){try{e.delete(t)?.catch?.(u)}catch{}}function w(e,t,n){e===304&&C(t,n)}function T(e,t,n){return n[`no-store`]===!0||e===`shared`&&(n.private===!0||Object.hasOwn(t,`set-cookie`))||(t.vary?s(t.vary):!1)}function E(e,t,r,i,a,s){return!(!g(n.safeHTTPMethods,t)||r<200||g(f,r)||!g(d,r)&&!i.expires&&!a.public&&a[`max-age`]===void 0&&!(a.private&&e===`private`)&&(a[`s-maxage`]===void 0||e!==`shared`)||a[`no-store`]||e===`shared`&&(a.private===!0||Object.hasOwn(i,`set-cookie`))||i.vary&&o(i.vary)||s!=null&&Object.hasOwn(s,`authorization`)&&(!a.public&&!a[`s-maxage`]&&!a[`must-revalidate`]||typeof s.authorization!=`string`||Array.isArray(a[`no-cache`])&&g(a[`no-cache`],`authorization`)||Array.isArray(a.private)&&g(a.private,`authorization`)))}function D(e){let t=e;if(Array.isArray(t)){if(t.length!==1)return null;t=t[0]}return typeof t==`string`?l(t):null}function O(e){let t=e;if(Array.isArray(t)){if(t.length!==1)return p;t=t[0]}if(typeof t!=`string`||!/^[\t ]*[0-9]+[\t ]*$/.test(t))return p;let n=BigInt(t.replace(/^[\t ]+|[\t ]+$/g,``));return n>=BigInt(p/1e3)?p:Number(n)*1e3}function k(e,t,n,r,a,o,s){if(e===`shared`){if(i(o,`s-maxage`))return 0;let e=o[`s-maxage`];if(e!==void 0)return e>0?e*1e3:0}if(i(o,`max-age`))return 0;let c=o[`max-age`];if(c!==void 0)return c>0?c*1e3:0;if(Object.hasOwn(r,`expires`)){if(typeof r.expires!=`string`)return 0;let e=l(r.expires);if(!e||t>=e.getTime())return 0;if(a){if(a>=e)return 0;let t=e.getTime()-a.getTime();return n!==void 0&&n>=t?0:t}return e.getTime()-t}if(typeof r[`last-modified`]==`string`){let e=l(r[`last-modified`]);if(e)return e.getTime()>=t?void 0:(t-e.getTime())*.1}if(o.immutable)return 31536e6;if(o[`no-cache`]===!0&&s)return 0}function A(e,t,n,r){let i=-1/0,a=-1/0,o=-1/0;if(n[`stale-while-revalidate`]&&(i=r+n[`stale-while-revalidate`]*1e3),n[`stale-if-error`]&&(a=r+n[`stale-if-error`]*1e3),n.immutable&&i===-1/0&&a===-1/0&&(o=t+31536e6),i===-1/0&&a===-1/0&&o===-1/0){let n=r-e;if(n<=0)return t+m;let i=Math.min(Math.max(t-e,0),1e3);return r+n+i}return Math.max(r,i,a,o)}function j(e,t){let n=[`connection`,`proxy-authenticate`,`proxy-authentication-info`,`proxy-authorization`,`proxy-connection`,`te`,`transfer-encoding`,`upgrade`,`age`];e.connection&&_(n,e.connection),Array.isArray(t[`no-cache`])&&n.push(...t[`no-cache`]),Array.isArray(t.private)&&n.push(...t.private);let r;for(let t of n)Object.hasOwn(e,t)&&(r??={...e},delete r[t]);return r??e}t.exports=S})),Xw=q(((e,t)=>{var{Writable:n}=J(`node:stream`),{EventEmitter:r}=J(`node:events`),{assertCacheKey:i,assertCacheValue:a}=qw(),o=class extends r{#e=1024;#t=104857600;#n=5242880;#r=0;#i=0;#a=new Map;#o=!1;constructor(e){if(super(),e){if(typeof e!=`object`)throw TypeError(`MemoryCacheStore options must be an object`);if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`MemoryCacheStore options.maxCount must be a non-negative integer`);this.#e=e.maxCount}if(e.maxSize!==void 0){if(typeof e.maxSize!=`number`||!Number.isInteger(e.maxSize)||e.maxSize<0)throw TypeError(`MemoryCacheStore options.maxSize must be a non-negative integer`);this.#t=e.maxSize}if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`MemoryCacheStore options.maxEntrySize must be a non-negative integer`);this.#n=e.maxEntrySize}}}get size(){return this.#r}isFull(){return this.#r>=this.#t||this.#i>=this.#e}get(e){i(e);let t=`${e.origin}:${e.path}`,n=Date.now(),r=this.#a.get(t),a=r?s(e,r,n):null;return a==null?void 0:{statusMessage:a.statusMessage,statusCode:a.statusCode,headers:a.headers,body:a.body,vary:a.vary?a.vary:void 0,etag:a.etag,cacheControlDirectives:a.cacheControlDirectives,cachedAt:a.cachedAt,staleAt:a.staleAt,deleteAt:a.deleteAt}}createWriteStream(e,t){i(e),a(t);let r=`${e.origin}:${e.path}`,o=this,c={...e,...t,body:[],size:0};return new n({write(e,t,n){typeof e==`string`&&(e=Buffer.from(e,t)),c.size+=e.byteLength,c.size>o.#n?this.destroy():c.body.push(e),n(null)},final(t){let n=o.#a.get(r);n||(n=[],o.#a.set(r,n));let i=s(e,n,Date.now());if(i){let e=n.indexOf(i);n.splice(e,1,c),o.#r-=i.size}else n.push(c),o.#i+=1;if(o.#r+=c.size,o.#r>o.#t||o.#i>o.#e){o.#o||=(o.emit(`maxSizeExceeded`,{size:o.#r,maxSize:o.#t,count:o.#i,maxCount:o.#e}),!0);for(let[e,t]of o.#a){for(let e of t.splice(0,Math.ceil(t.length/2)))o.#r-=e.size,--o.#i;t.length===0&&o.#a.delete(e)}o.#r<o.#t&&o.#i<o.#e&&(o.#o=!1)}t(null)}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);let t=`${e.origin}:${e.path}`;for(let e of this.#a.get(t)??[])this.#r-=e.size,--this.#i;this.#a.delete(t)}};function s(e,t,n){for(let r=0;r<t.length;r++){let i=t[r];if(i.deleteAt>n&&i.method===e.method&&c(e,i))return i}}function c(e,t){if(t.vary==null)return!0;for(let n in t.vary)if(Object.hasOwn(t.vary,n)&&!l(e.headers?.[n],t.vary[n]))return!1;return!0}function l(e,t){if(e==null&&t==null)return!0;if(e==null&&t!=null||e!=null&&t==null)return!1;if(Array.isArray(e)&&Array.isArray(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}return e===t}t.exports=o})),Zw=q(((e,t)=>{var n=J(`node:assert`);t.exports=class{#e=!1;#t;#n;#r;#i;constructor(e,t,n){if(typeof e!=`function`)throw TypeError(`callback must be a function`);this.#t=e,this.#n=t,this.#i=n}onRequestStart(e,t){this.#e=!1,this.#r=t}onRequestUpgrade(e,t,n,r){this.#n.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,r,i){if(n(this.#t!=null),this.#e=t===304||this.#i&&t>=500&&t<=504,this.#t(this.#e,this.#r,t,r),this.#t=null,this.#e)return!0;this.#n.onRequestStart?.(e,this.#r),this.#n.onResponseStart?.(e,t,r,i)}onResponseData(e,t){if(!this.#e)return this.#n.onResponseData?.(e,t)}onResponseEnd(e,t){this.#e||this.#n.onResponseEnd?.(e,t)}onResponseError(e,t){if(!this.#e){if(this.#t){if(this.#i){this.#e=!0,this.#t(!0,this.#r),this.#t=null;return}this.#t(!1),this.#t=null}if(typeof this.#n.onResponseError==`function`)this.#n.onResponseError(e,t);else throw t}}}})),Qw=q(((e,t)=>{var n=J(`node:assert`),{Readable:r}=J(`node:stream`),i=$(),a=Yw(),o=Xw(),s=Zw(),{assertCacheStore:c,assertCacheMethods:l,getInterceptorOrigin:u,makeCacheKey:d,normalizeHeaders:f,parseCacheControlHeader:p,isInvalidOrWildcardVaryHeader:m,parseVaryHeader:h}=qw(),{AbortError:g}=Q(),{parseHttpDate:_}=Jw();function v(e,t){if(e!==void 0){if(!Array.isArray(e))throw TypeError(`expected ${t} to be an array or undefined, got ${typeof e}`);for(let n=0;n<e.length;n++){let r=e[n];if(typeof r!=`string`&&!(r instanceof RegExp))throw TypeError(`expected ${t}[${n}] to be a string or RegExp, got ${typeof r}`)}}}var y=()=>{};function b(e){return e.replace(/^[\t ]+|[\t ]+$/g,``)}function x(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function S(e){let t=e?.pragma;if(!t)return!1;let n=Array.isArray(t)?t:[t];for(let e=0;e<n.length;e++){let t=n[e];if(typeof t!=`string`)continue;let r=t.split(`,`);for(let e=0;e<r.length;e++)if(b(r[e]).toLowerCase()===`no-cache`)return!0}return!1}function C(e,t,{headers:n={}}){return!!(t?.[`no-cache`]||e.cacheControlDirectives?.[`no-cache`]&&!Array.isArray(e.cacheControlDirectives[`no-cache`])||n[`if-modified-since`]||n[`if-none-match`])}function w(e,t){return e.cacheControlDirectives?.[`must-revalidate`]===!0||t===`shared`&&(e.cacheControlDirectives?.[`proxy-revalidate`]===!0||e.cacheControlDirectives?.[`s-maxage`]!==void 0)}function T(e,t){if(t.vary&&m(t.vary)||e===`shared`&&Object.hasOwn(t,`set-cookie`))return!0;let n=t[`cache-control`];if(!n)return!1;let r=p(n);return r[`no-store`]===!0||e===`shared`&&r.private===!0}function E(e){return e[`cache-control`]!==void 0}function D(e,t){if(!t)return!1;for(let n in t)if(e.vary==null||!Object.hasOwn(e.vary,n))return!0;return!1}function O(e,t){try{e.delete(t)?.catch?.(y)}catch{}}function k(e){let t=e?.[`last-modified`];if(typeof t==`string`&&_(t))return t}function A(e,t){let n={...e.headers,"if-modified-since":k(t.headers)??new Date(t.cachedAt).toUTCString()};if(t.etag&&(n[`if-none-match`]=t.etag),t.vary)for(let e in t.vary)t.vary[e]!=null&&(n[e]=t.vary[e]);return n}function j(e,t,n){let r=Date.now();return r>e.staleAt?!w(e,n)&&t?.[`max-stale`]?r>e.staleAt+t[`max-stale`]*1e3:!0:t?.[`min-fresh`]?e.staleAt-r<=t[`min-fresh`]*1e3:!1}function M(e,t){let n=e.cacheControlDirectives?.[`stale-while-revalidate`];return!n||w(e,t)?!1:Date.now()<=e.staleAt+n*1e3}function N(e,t,n,r,i,o){if(o?.[`only-if-cached`]){let e=!1,t={paused:!1,rawHeaders:[],rawTrailers:[],pause(){this.paused=!0},resume(){this.paused=!1},abort:n=>{e=!0,r.onResponseError?.(t,n??new g)}};try{if(r.onRequestStart?.(t,null),e||(r.onResponseStart?.(t,504,{},`Gateway Timeout`),e))return;r.onResponseEnd?.(t,{})}catch(e){typeof r.onResponseError==`function`&&r.onResponseError(t,e)}return!0}return e(i,new a(t,n,r))}function P(e,t,a,o,s,c){let l=i.isStream(a.body)?a.body:r.from(a.body??[]);n(!l.destroyed,`stream should not be destroyed`),n(!l.readableDidRead,`stream should not be readableDidRead`);let u=!1,d={rawHeaders:[],rawTrailers:[],resume(){l.resume()},pause(){l.pause()},get paused(){return l.isPaused()},get aborted(){return u},get reason(){return l.errored},abort(e){u=!0,l.destroy(e??new g)}};if(l.on(`error`,function(t){if(!this.readableEnded){if(typeof e.onResponseError==`function`)e.onResponseError(d,t);else throw t}}).on(`close`,function(){this.errored||e.onResponseEnd?.(d,{})}),e.onRequestStart?.(d,s),l.destroyed)return;let f={...a.headers,age:String(o)};c&&(f.warning=`110 - "response is stale"`),d.rawHeaders=i.toRawHeaders(f),e.onResponseStart?.(d,a.statusCode,f,a.statusMessage),t.method===`HEAD`?l.destroy():l.on(`data`,function(t){e.onResponseData?.(d,t)})}function F(e,t,n,r,o,c,l){if(!l)return N(e,t,n,r,o,c);if(t.type===`shared`&&Object.hasOwn(l.headers,`set-cookie`))return i.isStream(l.body)&&l.body.on(`error`,y).destroy(),O(t.store,n),N(e,t,n,r,o,c);let u=Date.now();if(u>l.deleteAt)return e(o,new a(t,n,r));let d=Math.round((u-l.cachedAt)/1e3),f=c?.[`max-age`]!==void 0&&d>=c[`max-age`],p=f||j(l,c,t.type),m=f||C(l,c,o);if(p||m){if(i.isStream(o.body)&&i.bodyLength(o.body)!==0)return e(o,new a(t,n,r));if(!m&&M(l,t.type))return P(r,o,l,d,null,!0),queueMicrotask(()=>{let r=A(o,l);e({...o,headers:r},new a(t,n,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let f=!1;if(!w(l,t.type)){let e=l.cacheControlDirectives[`stale-if-error`]??c?.[`stale-if-error`];e&&(f=u<l.staleAt+e*1e3)}let g=A(o,l);return e({...o,headers:g},new s((s,c,u,f)=>{if(s){if(u===304){if(T(t.type,f))return i.isStream(l.body)&&l.body.on(`error`,y).destroy(),O(t.store,n),e(o,new a(t,n,r));if(E(f))O(t.store,n);else if(D(l,f.vary?h(f.vary,o.headers):void 0))return i.isStream(l.body)&&l.body.on(`error`,y).destroy(),O(t.store,n),e(o,new a(t,n,r))}P(r,o,l,d,c,p)}else i.isStream(l.body)&&l.body.on(`error`,y).destroy()},new a(t,n,r),f))}i.isStream(o.body)&&o.body.on(`error`,y).destroy(),P(r,o,l,d,null,!1)}t.exports=(e={})=>{let{store:t=new o,methods:n=[`GET`],cacheByDefault:r=void 0,type:s=`shared`,origins:m=void 0}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(c(t,`opts.store`),l(n,`opts.methods`),v(m,`opts.origins`),r!==void 0&&typeof r!=`number`)throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof r}`);if(s!==void 0&&s!==`shared`&&s!==`private`)throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof s}`);let h={store:t,methods:n,cacheByDefault:r,type:s},g=[];for(let e=0;e<i.safeHTTPMethods.length;e++){let t=i.safeHTTPMethods[e];x(n,t)||g.push(t)}return(e,n)=>(r,o)=>{let s=u(r,n);if(!s||x(g,r.method))return e(r,o);if(m!==void 0){let t=s.toString().toLowerCase(),n=!1;for(let e=0;e<m.length;e++){let r=m[e];if(typeof r==`string`){if(r.toLowerCase()===t){n=!0;break}}else if(r.test(t)){n=!0;break}}if(!n)return e(r,o)}r={...r,headers:f(r)};let c=r.headers?.[`cache-control`]?p(r.headers[`cache-control`]):S(r.headers)?{"no-cache":!0}:void 0;if(c?.[`no-store`])return e(r,o);let l=d(r,s);if(!x(i.safeHTTPMethods,r.method))return e(r,new a(h,l,o));let _=t.get(l);return _&&typeof _.then==`function`?_.then(t=>F(e,h,l,o,r,c,t)):F(e,h,l,o,r,c,_)}}})),$w=q(((e,t)=>{var{createInflate:n,createGunzip:r,createBrotliDecompress:i,createZstdDecompress:a}=J(`node:zlib`),{pipeline:o,Transform:s}=J(`node:stream`),{InvalidArgumentError:c,ResponseExceededMaxSizeError:l}=Q(),u=Bw(),d=class{#e;#t;#n;#r=!1;constructor(e,t,n){this.#e=e,this.#t=t,this.#n=n,this.target=null}pause(){this.#r||(this.#r=!0,this.#e())}resume(){this.#r&&(this.#r=!1,this.#t())}abort(e){this.target?.abort(e),this.#n(e)}get paused(){return this.#r}get aborted(){return this.target?.aborted??!1}get reason(){return this.target?.reason??null}get rawHeaders(){return this.target?.rawHeaders??null}set rawHeaders(e){this.target&&(this.target.rawHeaders=e)}get rawTrailers(){return this.target?.rawTrailers??null}set rawTrailers(e){this.target&&(this.target.rawTrailers=e)}},f={__proto__:null,gzip:r,"x-gzip":r,br:i,deflate:n,compress:n,"x-compress":n,zstd:a},p=[204,304],m=0;function h(e){let t=0;return new s({transform(n,r,i){let a=t+n.length;if(a>e){i(new l(`Decompressed response size (${a}) exceeded maxSize (${e})`));return}t=a,i(null,n)}})}var g=!1,_=class extends u{#e=[];#t;#n;#r;#i;#a=0;#o=!1;#s=!1;#c=!1;#l=!1;#u=!1;#d=!1;#f=!1;#p;#m;constructor(e,{skipStatusCodes:t=p,skipErrorResponses:n=!0,maxSize:r=m}={}){if(!Number.isSafeInteger(r)||r<0)throw new c(`maxSize must be a non-negative integer`);super(e),this.#n=t,this.#r=n,this.#i=r,this.#m=new d(()=>this.#h(),()=>this.#g(),e=>{this.#s&&!this.#o&&this.onResponseError(this.#m,e)})}#h(){this.#_()}#g(){let e=this.#u;this.#y(),e||(this.#v(),this.#b())}#_(){!this.#l&&!this.#o&&(this.#l=!0,this.#m.target?.pause())}#v(){this.#l&&!this.#m.paused&&!this.#c&&(this.#l=!1,this.#s||this.#m.target?.resume())}#y(){if(!(this.#o||this.#m.paused||!this.#p)){if(this.#u){this.#d=!0;return}this.#u=!0;try{do{this.#d=!1;let e;for(;!this.#o&&!this.#m.paused&&(e=this.#p.read())!==null;){if(this.#i>0){let t=this.#a+e.length;if(t>this.#i){this.#w(new l(`Decompressed response size (${t}) exceeded maxSize (${this.#i})`));return}this.#a=t}super.onResponseData(this.#m,e)===!1&&!this.#m.paused&&this.#m.pause()}}while(this.#d&&!this.#o&&!this.#m.paused)}finally{this.#u=!1}this.#v(),this.#b()}}#b(){this.#o||!this.#f||this.#m.paused||this.#u||(this.#o=!0,this.#k(),super.onResponseEnd(this.#m,this.#t))}#x(){this.#o||(this.#f=!0,this.#y(),this.#b())}#S(e,t){return!!(!e||t<200||this.#n.includes(t)||this.#r&&t>=400)}#C(e){let t=e.split(`,`);if(t.length>5)throw Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`);let n=[];for(let e=t.length-1;e>=0;e--){let r=t[e].trim();if(r){if(!f[r])return n.length=0,n;n.push(f[r]())}}if(n.length<2)return n;let r=[];for(let e=0;e<n.length;e++)r.push(n[e]),e<n.length-1&&this.#i>0&&r.push(h(this.#i));return r}#w(e){this.#o||(this.#s?this.onResponseError(this.#m,e):this.#m.abort(e))}#T(e){this.#p=e,e.on(`readable`,()=>this.#y()),e.on(`error`,e=>this.#w(e))}#E(){let e=this.#e[0];this.#T(e),e.on(`end`,()=>this.#x())}#D(){let e=this.#e[this.#e.length-1];this.#T(e),o(this.#e,e=>{if(!this.#o){if(e){this.#w(e);return}this.#x()}})}#O(){this.#e[0].on(`drain`,()=>{this.#o||(this.#c=!1,this.#m.paused||(this.#y(),this.#v()))})}#k(){this.#e.length=0,this.#p=void 0}onRequestStart(e,t){return this.#m.target=e,super.onRequestStart(this.#m,t)}onRequestUpgrade(e,t,n,r){return super.onRequestUpgrade(this.#m,t,n,r)}onResponseStart(e,t,n,r){let i=n[`content-encoding`],a=Array.isArray(i)?i.join(`,`):i;if(this.#S(a,t))return super.onResponseStart(this.#m,t,n,r);let o=this.#C(a.toLowerCase());if(o.length===0)return this.#k(),super.onResponseStart(this.#m,t,n,r);this.#e=o;let{"content-encoding":s,"content-length":c,...l}=n;if(this.#m.rawHeaders){let e=this.#m.rawHeaders;if(Array.isArray(e)){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=(Buffer.isBuffer(r)?r.toString(`latin1`):`${r}`).toLowerCase();i!==`content-encoding`&&i!==`content-length`&&t.push(e[n],e[n+1])}e.splice(0,e.length,...t)}else if(typeof e==`object`)for(let t of Object.keys(e)){let n=t.toLowerCase();(n===`content-encoding`||n===`content-length`)&&delete e[t]}}return this.#O(),this.#e.length===1?this.#E():this.#D(),super.onResponseStart(this.#m,t,l,r)}onResponseData(e,t){if(this.#e.length>0){this.#e[0].write(t)||(this.#c=!0,this.#_());return}return super.onResponseData(this.#m,t)}onResponseEnd(e,t){if(this.#e.length>0){this.#s=!0,this.#t=t,this.#e[0].end();return}return super.onResponseEnd(this.#m,t)}onResponseError(e,t){if(!this.#o){this.#o=!0;for(let e of this.#e)e.destroy();this.#k(),super.onResponseError(this.#m,t)}}};function v(e={}){return g||=(process.emitWarning(`DecompressInterceptor is experimental and subject to change`,`ExperimentalWarning`),!0),t=>(n,r)=>n.method===`HEAD`?t(n,r):t(n,new _(r,e))}t.exports=v})),eT=q(((e,t)=>{var{RequestAbortedError:n}=Q(),r=5242880;t.exports=class{#e;#t=[];#n=r;#r=0;#i={};#a=``;#o=!1;#s=!1;#c=!1;#l=!1;#u=null;#d=null;constructor(e,t,n=r){this.#e=e,this.#d=t,this.#n=n}addWaitingHandler(e){if(this.#l||this.#c)return!1;let t=this.#p(e),n=t.controller;try{if(e.onRequestStart?.(n,null),n.aborted)return t.done=!0,!0;this.#s&&e.onResponseStart?.(n,this.#r,this.#i,this.#a)}catch{return t.done=!0,!0}return n.aborted||this.#t.push(t),!0}onRequestStart(e,t){this.#u=e,this.#e.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.#e.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,r){this.#s=!0,this.#r=t,this.#i=n,this.#a=r,this.#e.onResponseStart?.(e,t,n,r);for(let e of this.#t){let{handler:i,controller:a}=e;if(e.done||a.aborted){e.done=!0;continue}try{i.onResponseStart?.(a,t,n,r)}catch{}a.aborted&&(e.done=!0)}this.#_()}onResponseData(e,t){if(!(this.#o||this.#l)){this.#c=!0,this.#e.onResponseData?.(e,t);for(let e of this.#t){let{handler:n,controller:r}=e;if(e.done||r.aborted){e.done=!0;continue}if(r.paused){this.#m(e,t);continue}try{n.onResponseData?.(r,t)}catch{}r.aborted&&(e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0)}this.#_()}}onResponseEnd(e,t){if(!(this.#o||this.#l)){this.#f(),this.#e.onResponseEnd?.(e,t),this.#l=!0;for(let e of this.#t){if(e.done||e.controller.aborted){e.done=!0;continue}if(this.#h(e),e.done||e.controller.aborted){e.done=!0;continue}if(e.controller.paused){e.pendingTrailers=t;continue}try{e.handler.onResponseEnd?.(e.controller,t)}catch(t){this.#g(e,t)}e.done=!0}this.#_()}}onResponseError(e,t){if(!this.#l){this.#o=!0,this.#l=!0,this.#f(),this.#e.onResponseError?.(e,t);for(let e of this.#t)this.#g(e,t);this.#t=[]}}#f(){let e=this.#d;this.#d=null,e?.()}#p(e){let t={handler:e,controller:null,bufferedChunks:[],bufferedBytes:0,pendingTrailers:null,done:!1},r={aborted:!1,paused:!1,reason:null};return t.controller={resume:()=>{if(!r.aborted){if(r.paused=!1,this.#h(t),this.#l&&t.pendingTrailers&&t.bufferedChunks.length===0&&!r.paused&&!r.aborted){try{t.handler.onResponseEnd?.(t.controller,t.pendingTrailers)}catch(e){this.#g(t,e)}t.pendingTrailers=null,t.done=!0}this.#_()}},pause:()=>{r.aborted||(r.paused=!0)},get paused(){return r.paused},get aborted(){return r.aborted},get reason(){return r.reason},abort:i=>{if(!r.aborted){r.aborted=!0,r.reason=i??null,t.done=!0,t.pendingTrailers=null,t.bufferedChunks=[],t.bufferedBytes=0;try{e.onResponseError?.(t.controller,r.reason??new n)}catch{}}}},t}#m(e,t){if(e.done||e.controller.aborted){e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0;return}let r=Buffer.from(t);if(e.bufferedChunks.push(r),e.bufferedBytes+=r.length,e.bufferedBytes>this.#n){let t=new n(`Deduplicated waiting handler exceeded maxBufferSize (${this.#n} bytes) while paused`);e.controller.abort(t)}}#h(e){let{handler:t,controller:n}=e;for(;!e.done&&!n.aborted&&!n.paused&&e.bufferedChunks.length>0;){let r=e.bufferedChunks.shift();e.bufferedBytes-=r.length;try{t.onResponseData?.(n,r)}catch{}if(n.aborted){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;break}}}#g(e,t){if(!e.done){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;try{e.handler.onResponseError?.(e.controller,t)}catch{}}}#_(){this.#t=this.#t.filter(e=>e.done===!1)}}})),tT=q(((e,t)=>{var n=J(`node:diagnostics_channel`),r=$(),i=eT(),{getInterceptorOrigin:a,normalizeHeaders:o,makeCacheKey:s,makeDeduplicationKey:c}=qw(),l=n.channel(`undici:request:pending-requests`);t.exports=(e={})=>{let{methods:t=[`GET`],skipHeaderNames:n=[],excludeHeaderNames:u=[],maxBufferSize:d=5242880}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(!Array.isArray(t))throw TypeError(`expected opts.methods to be an array, got ${typeof t}`);for(let e of t)if(!r.safeHTTPMethods.includes(e))throw TypeError(`expected opts.methods to only contain safe HTTP methods, got ${e}`);if(!Array.isArray(n))throw TypeError(`expected opts.skipHeaderNames to be an array, got ${typeof n}`);if(!Array.isArray(u))throw TypeError(`expected opts.excludeHeaderNames to be an array, got ${typeof u}`);if(!Number.isFinite(d)||d<=0)throw TypeError(`expected opts.maxBufferSize to be a positive finite number, got ${d}`);let f=new Set(n.map(e=>e.toLowerCase())),p=new Set(u.map(e=>e.toLowerCase())),m=new Map;return(e,n)=>(r,u)=>{let h=a(r,n);if(!h||r.upgrade||t.includes(r.method)===!1)return e(r,u);if(r={...r,headers:o(r)},f.size>0){for(let t of Object.keys(r.headers))if(f.has(t.toLowerCase()))return e(r,u)}let g=c(s(r,h),p),_=m.get(g);if(_)return _.addWaitingHandler(u)?!0:e(r,u);let v=new i(u,()=>{m.delete(g),l.hasSubscribers&&l.publish({size:m.size,key:g,type:`removed`})},d);return m.set(g,v),l.hasSubscribers&&l.publish({size:m.size,key:g,type:`added`}),e(r,v)}}})),nT=q(((e,t)=>{var{Writable:n}=J(`node:stream`),{assertCacheKey:r,assertCacheValue:i}=qw(),a,o=3,s=2e9;t.exports=class{#e=s;#t=1/0;#n;#r;#i;#a;#o;#s;#c;#l;constructor(e){if(e){if(typeof e!=`object`)throw TypeError(`SqliteCacheStore options must be an object`);if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`SqliteCacheStore options.maxEntrySize must be a non-negative integer`);if(e.maxEntrySize>s)throw TypeError(`SqliteCacheStore options.maxEntrySize must be less than 2gb`);this.#e=e.maxEntrySize}if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`SqliteCacheStore options.maxCount must be a non-negative integer`);this.#t=e.maxCount}}a||=J(`node:sqlite`).DatabaseSync,this.#n=new a(e?.location??`:memory:`),this.#n.exec(`
62
62
  PRAGMA journal_mode = WAL;
63
63
  PRAGMA synchronous = NORMAL;
64
64
  PRAGMA temp_store = memory;
@@ -142,7 +142,7 @@ Content-Type: ${o.type||`application/octet-stream`}\r\n\r\n`);a.push(e,o,l),type
142
142
  ORDER BY cachedAt ASC
143
143
  LIMIT ?
144
144
  )
145
- `)}close(){this.#n.close()}get(e){r(e);let t=this.#f(e);return t?{body:t.body?Buffer.from(t.body.buffer,t.body.byteOffset,t.body.byteLength):void 0,statusCode:t.statusCode,statusMessage:t.statusMessage,headers:t.headers?JSON.parse(t.headers):void 0,etag:t.etag?t.etag:void 0,vary:t.vary?JSON.parse(t.vary):void 0,cacheControlDirectives:t.cacheControlDirectives?JSON.parse(t.cacheControlDirectives):void 0,cachedAt:t.cachedAt,staleAt:t.staleAt,deleteAt:t.deleteAt}:void 0}set(e,t){r(e);let n=this.#d(e),i=Array.isArray(t.body)?Buffer.concat(t.body):t.body,a=i?.byteLength;if(a&&a>this.#e)return;let o=this.#f(e,!0);o?this.#i.run(i,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.vary?JSON.stringify(t.vary):null,t.cachedAt,t.staleAt,o.id):(this.#a.run(n,e.method,i,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.vary?JSON.stringify(t.vary):null,t.cachedAt,t.staleAt),this.#u())}createWriteStream(e,t){r(e),i(t);let a=0,o=[],s=this;return new n({decodeStrings:!0,write(e,t,n){a+=e.byteLength,a<=s.#e?o.push(e):this.destroy(),n()},final(n){s.set(e,{...t,body:o}),n()}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);this.#s.run(this.#d(e))}#u(){if(Number.isFinite(this.#t)&&this.size<=this.#t)return 0;{let e=this.#o.run(Date.now()).changes;if(e)return e}{let e=this.#l?.run(Math.max(Math.floor(this.#t*.1),1)).changes;if(e)return e}return 0}get size(){let{total:e}=this.#c.get();return e}#d(e){return`${e.origin}/${e.path}`}#f(e,t=!1){let n=this.#d(e),{headers:r,method:i}=e,a=this.#r.all(n,i);if(a.length===0)return;let o=Date.now();for(let e of a){if(o>=e.deleteAt&&!t)continue;let n=!0;if(e.vary){let t=JSON.parse(e.vary);for(let e in t)if(!c(r[e],t[e])){n=!1;break}}if(n)return e}}};function c(e,t){if(e==null&&t==null)return!0;if(e==null&&t!=null||e!=null&&t==null)return!1;if(Array.isArray(e)&&Array.isArray(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}return e===t}})),tT=q(((e,t)=>{var{kConstruct:n}=OC(),{kEnumerableProperty:r}=$(),{iteratorMixin:i,isValidHeaderName:a,isValidHeaderValue:o}=JC(),{webidl:s}=qC(),c=J(`node:assert`),l=J(`node:util`);function u(e){return e===10||e===13||e===9||e===32}function d(e){let t=0,n=e.length;for(;n>t&&u(e.charCodeAt(n-1));)--n;for(;n>t&&u(e.charCodeAt(t));)++t;return t===0&&n===e.length?e:e.substring(t,n)}function f(e,t){if(Array.isArray(t))for(let n=0;n<t.length;++n){let r=t[n];if(r.length!==2)throw s.errors.exception({header:`Headers constructor`,message:`expected name/value pair to be length 2, found ${r.length}.`});p(e,r[0],r[1])}else if(typeof t==`object`&&t){let n=Object.keys(t);for(let r=0;r<n.length;++r)p(e,n[r],t[n[r]])}else throw s.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})}function p(e,t,n){if(n=d(n),!a(t))throw s.errors.invalidArgument({prefix:`Headers.append`,value:t,type:`header name`});if(!o(n))throw s.errors.invalidArgument({prefix:`Headers.append`,value:n,type:`header value`});if(_(e)===`immutable`)throw TypeError(`immutable`);return y(e).append(t,n,!1)}function m(e){let t=y(e);if(!t)return[];if(t.sortedMap)return t.sortedMap;let n=[],r=t.toSortedArray(),i=t.cookies;if(i===null||i.length===1)return t.sortedMap=r;for(let e=0;e<r.length;++e){let{0:t,1:a}=r[e];if(t===`set-cookie`)for(let e=0;e<i.length;++e)n.push([t,i[e]]);else n.push([t,a])}return t.sortedMap=n}function h(e,t){return e[0]<t[0]?-1:1}var g=class e{cookies=null;sortedMap;headersMap;constructor(t){t instanceof e?(this.headersMap=new Map(t.headersMap),this.sortedMap=t.sortedMap,this.cookies=t.cookies===null?null:[...t.cookies]):(this.headersMap=new Map(t),this.sortedMap=null)}contains(e,t){return this.headersMap.has(t?e:e.toLowerCase())}clear(){this.headersMap.clear(),this.sortedMap=null,this.cookies=null}append(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase(),i=this.headersMap.get(r);if(i){let e=r===`cookie`?`; `:`, `;this.headersMap.set(r,{name:i.name,value:`${i.value}${e}${t}`})}else this.headersMap.set(r,{name:e,value:t});r===`set-cookie`&&(this.cookies??=[]).push(t)}set(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase();r===`set-cookie`&&(this.cookies=[t]),this.headersMap.set(r,{name:e,value:t})}delete(e,t){this.sortedMap=null,t||(e=e.toLowerCase()),e===`set-cookie`&&(this.cookies=null),this.headersMap.delete(e)}get(e,t){return this.headersMap.get(t?e:e.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:e,1:{value:t}}of this.headersMap)yield[e,t]}get entries(){let e={};if(this.headersMap.size!==0)for(let{name:t,value:n}of this.headersMap.values())e[t]=n;return e}rawValues(){return this.headersMap.values()}get entriesList(){let e=[];if(this.headersMap.size!==0)for(let{0:t,1:{name:n,value:r}}of this.headersMap)if(t===`set-cookie`)for(let t of this.cookies)e.push([n,t]);else e.push([n,r]);return e}toSortedArray(){let e=this.headersMap.size,t=Array(e);if(e<=32){if(e===0)return t;let n=this.headersMap[Symbol.iterator](),r=n.next().value;t[0]=[r[0],r[1].value],c(r[1].value!==null);for(let r=1,i=0,a=0,o=0,s=0,l,u;r<e;++r){for(u=n.next().value,l=t[r]=[u[0],u[1].value],c(l[1]!==null),o=0,a=r;o<a;)s=o+(a-o>>1),t[s][0]<=l[0]?o=s+1:a=s;if(r!==s){for(i=r;i>o;)t[i]=t[--i];t[o]=l}}if(!n.next().done)throw TypeError(`Unreachable`);return t}{let e=0;for(let{0:n,1:{value:r}}of this.headersMap)t[e++]=[n,r],c(r!==null);return t.sort(h)}}},_,v,y,b,x=class{#e;#t;constructor(e=void 0){s.util.markAsUncloneable(this),e!==n&&(this.#t=new g,this.#e=`none`,e!==void 0&&(e=s.converters.HeadersInit(e,`Headers constructor`,`init`),f(this,e)))}append(e,t){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,2,`Headers.append`);let n=`Headers.append`;return e=s.converters.ByteString(e,n,`name`),t=s.converters.ByteString(t,n,`value`),p(this,e,t)}delete(e){if(s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,1,`Headers.delete`),e=s.converters.ByteString(e,`Headers.delete`,`name`),!a(e))throw s.errors.invalidArgument({prefix:`Headers.delete`,value:e,type:`header name`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.contains(e,!1)&&this.#t.delete(e,!1)}get(e){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,1,`Headers.get`);let t=`Headers.get`;if(e=s.converters.ByteString(e,t,`name`),!a(e))throw s.errors.invalidArgument({prefix:t,value:e,type:`header name`});return this.#t.get(e,!1)}has(e){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,1,`Headers.has`);let t=`Headers.has`;if(e=s.converters.ByteString(e,t,`name`),!a(e))throw s.errors.invalidArgument({prefix:t,value:e,type:`header name`});return this.#t.contains(e,!1)}set(e,t){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,2,`Headers.set`);let n=`Headers.set`;if(e=s.converters.ByteString(e,n,`name`),t=s.converters.ByteString(t,n,`value`),t=d(t),!a(e))throw s.errors.invalidArgument({prefix:n,value:e,type:`header name`});if(!o(t))throw s.errors.invalidArgument({prefix:n,value:t,type:`header value`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.set(e,t,!1)}getSetCookie(){s.brandCheck(this,s.is.Headers);let e=this.#t.cookies;return e?[...e]:[]}[l.inspect.custom](e,t){return t.depth??=e,`Headers ${l.formatWithOptions(t,this.#t.entries)}`}static{_=e=>e.#e,v=(e,t)=>{e.#e=t},y=e=>e.#t,b=(e,t)=>{e.#t=t},s.is.Headers=e=>typeof e==`object`&&!!e&&#e in e}};i(`Headers`,x,m,0,1,s.is.Headers),Object.defineProperties(x.prototype,{append:r,delete:r,get:r,has:r,set:r,getSetCookie:r,[Symbol.toStringTag]:{value:`Headers`,configurable:!0},[l.inspect.custom]:{enumerable:!1}}),s.converters.HeadersInit=function(e,t,n){if(s.util.Type(e)===s.util.Types.OBJECT){let r=Reflect.get(e,Symbol.iterator);if(!l.types.isProxy(e)&&r===x.prototype.entries)try{return y(e).entriesList}catch{}return typeof r==`function`?s.converters[`sequence<sequence<ByteString>>`](e,t,n,r.bind(e)):s.converters[`record<ByteString, ByteString>`](e,t,n)}throw s.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})},t.exports={fill:f,compareHeaderName:h,Headers:x,HeadersList:g,getHeadersGuard:_,setHeadersGuard:v,setHeadersList:b,getHeadersList:y}})),nT=q(((e,t)=>{var{Headers:n,HeadersList:r,fill:i,getHeadersGuard:a,setHeadersGuard:o,setHeadersList:s}=tT(),{extractBody:c,cloneBody:l,mixinBody:u,streamRegistry:d,bodyUnusable:f}=QC(),p=$(),m=J(`node:util`),{kEnumerableProperty:h}=p,{isValidReasonPhrase:g,isCancelled:_,isAborted:v,isErrorLike:y,environmentSettingsObject:b}=JC(),{redirectStatusSet:x,nullBodyStatus:S}=HC(),{webidl:C}=qC(),{URLSerializer:w}=KC(),{kConstruct:T}=OC(),E=J(`node:assert`),{isomorphicEncode:D,serializeJavascriptValueToJSONString:O}=GC(),k=new TextEncoder(`utf-8`),A,j,M,N,P=class{#e;#t;static error(){return z(L(),`immutable`)}static json(e,t=void 0){C.argumentLengthCheck(arguments,1,`Response.json`),t=C.converters.ResponseInit(t);let n=c(k.encode(O(e))),r=z(I({}),`response`);return re(r,t,{body:n[0],type:`application/json`}),r}static redirect(e,t=302){C.argumentLengthCheck(arguments,1,`Response.redirect`),e=C.converters.USVString(e),t=C.converters[`unsigned short`](t);let n;try{n=new URL(e,b.settingsObject.baseUrl)}catch(t){throw TypeError(`Failed to parse URL from ${e}`,{cause:t})}if(!x.has(t))throw RangeError(`Invalid status code ${t}`);let r=z(I({}),`immutable`);r.#t.status=t;let i=D(w(n));return r.#t.headersList.append(`location`,i,!0),r}constructor(e=null,t=void 0){if(C.util.markAsUncloneable(this),e===T)return;e!==null&&(e=C.converters.BodyInit(e,`Response`,`body`)),t=C.converters.ResponseInit(t),this.#t=I({}),this.#e=new n(T),o(this.#e,`response`),s(this.#e,this.#t.headersList);let r=null;if(e!=null){let[t,n]=c(e);r={body:t,type:n}}re(this,t,r)}get type(){return C.brandCheck(this,C.is.Response),this.#t.type}get url(){C.brandCheck(this,C.is.Response);let e=this.#t.urlList,t=e[e.length-1]??null;return t===null?``:w(t,!0)}get redirected(){return C.brandCheck(this,C.is.Response),this.#t.urlList.length>1}get status(){return C.brandCheck(this,C.is.Response),this.#t.status}get ok(){return C.brandCheck(this,C.is.Response),this.#t.status>=200&&this.#t.status<=299}get statusText(){return C.brandCheck(this,C.is.Response),this.#t.statusText}get headers(){return C.brandCheck(this,C.is.Response),this.#e}get body(){return C.brandCheck(this,C.is.Response),this.#t.body?this.#t.body.stream:null}get bodyUsed(){return C.brandCheck(this,C.is.Response),!!this.#t.body&&p.isDisturbed(this.#t.body.stream)}clone(){if(C.brandCheck(this,C.is.Response),f(this.#t))throw C.errors.exception({header:`Response.clone`,message:`Body has already been consumed.`});let e=F(this.#t);return this.#t.urlList.length!==0&&this.#t.body?.stream&&d.register(this,new WeakRef(this.#t.body.stream)),z(e,a(this.#e))}[m.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${m.formatWithOptions(t,n)}`}static{A=e=>e.#e,j=(e,t)=>{e.#e=t},M=e=>e.#t,N=(e,t)=>{e.#t=t},C.is.Response=e=>typeof e==`object`&&!!e&&#t in e}};u(P,M,C.is.Response),Object.defineProperties(P.prototype,{type:h,url:h,status:h,ok:h,redirected:h,statusText:h,headers:h,clone:h,body:h,bodyUsed:h,[Symbol.toStringTag]:{value:`Response`,configurable:!0}}),Object.defineProperties(P,{json:h,redirect:h,error:h});function F(e){if(e.internalResponse)return te(F(e.internalResponse),e.type);let t=I({...e,body:null});return e.body!=null&&(t.body=l(e.body)),t}function I(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:`default`,status:200,timingInfo:null,cacheState:``,statusText:``,...e,headersList:e?.headersList?new r(e?.headersList):new r,urlList:e?.urlList?[...e.urlList]:[]}}function L(e){return I({type:`error`,status:0,error:y(e)?e:Error(e&&String(e)),aborted:e&&e.name===`AbortError`})}function R(e){return e.type===`error`&&e.status===0}function ee(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(e,n){return n in t?t[n]:e[n]},set(e,n,r){return E(!(n in t)),e[n]=r,!0}})}function te(e,t){if(t===`basic`)return ee(e,{type:`basic`,headersList:e.headersList});if(t===`cors`)return ee(e,{type:`cors`,headersList:e.headersList});if(t===`opaque`)return ee(e,{type:`opaque`,urlList:[],status:0,statusText:``,body:null});if(t===`opaqueredirect`)return ee(e,{type:`opaqueredirect`,status:0,statusText:``,headersList:[],body:null});E(!1)}function ne(e,t=null){return E(_(e)),v(e)?L(Object.assign(new DOMException(`The operation was aborted.`,`AbortError`),{cause:t})):L(Object.assign(new DOMException(`Request was cancelled.`),{cause:t}))}function re(e,t,n){if(t.status!==null&&(t.status<200||t.status>599))throw RangeError(`init["status"] must be in the range of 200 to 599, inclusive.`);if(`statusText`in t&&t.statusText!=null&&!g(String(t.statusText)))throw TypeError(`Invalid statusText`);if(`status`in t&&t.status!=null&&(M(e).status=t.status),`statusText`in t&&t.statusText!=null&&(M(e).statusText=t.statusText),`headers`in t&&t.headers!=null&&i(A(e),t.headers),n){if(S.includes(e.status))throw C.errors.exception({header:`Response constructor`,message:`Invalid response status code ${e.status}`});M(e).body=n.body,n.type!=null&&!M(e).headersList.contains(`content-type`,!0)&&M(e).headersList.append(`content-type`,n.type,!0)}}function z(e,t){let r=new P(T);N(r,e);let i=new n(T);return j(r,i),s(i,e.headersList),o(i,t),e.urlList.length!==0&&e.body?.stream&&d.register(r,new WeakRef(e.body.stream)),r}C.converters.XMLHttpRequestBodyInit=function(e,t,n){return typeof e==`string`?C.converters.USVString(e,t,n):C.is.Blob(e)||C.is.BufferSource(e)||C.is.FormData(e)||C.is.URLSearchParams(e)?e:C.converters.DOMString(e,t,n)},C.converters.BodyInit=function(e,t,n){return C.is.ReadableStream(e)||e?.[Symbol.asyncIterator]?e:C.converters.XMLHttpRequestBodyInit(e,t,n)},C.converters.ResponseInit=C.dictionaryConverter([{key:`status`,converter:C.converters[`unsigned short`],defaultValue:()=>200},{key:`statusText`,converter:C.converters.ByteString,defaultValue:()=>``},{key:`headers`,converter:C.converters.HeadersInit}]),t.exports={isNetworkError:R,makeNetworkError:L,makeResponse:I,makeAppropriateNetworkError:ne,filterResponse:te,Response:P,cloneResponse:F,fromInnerResponse:z,getResponseState:M}})),rT=q(((e,t)=>{var{extractBody:n,mixinBody:r,cloneBody:i,bodyUnusable:a}=QC(),{Headers:o,fill:s,HeadersList:c,setHeadersGuard:l,getHeadersGuard:u,setHeadersList:d,getHeadersList:f}=tT(),p=$(),m=J(`node:util`),{isValidHTTPToken:h,sameOrigin:g,environmentSettingsObject:_}=JC(),{forbiddenMethodsSet:v,corsSafeListedMethodsSet:y,referrerPolicy:b,requestRedirect:x,requestMode:S,requestCredentials:C,requestCache:w,requestDuplex:T}=HC(),{kEnumerableProperty:E,normalizedMethodRecordsBase:D,normalizedMethodRecords:O}=p,{webidl:k}=qC(),{URLSerializer:A}=KC(),{kConstruct:j}=OC(),M=J(`node:assert`),{getMaxListeners:N,setMaxListeners:P,defaultMaxListeners:F}=J(`node:events`),I=Symbol(`abortController`),L=new FinalizationRegistry(({signal:e,abort:t})=>{e.removeEventListener(`abort`,t)}),R=new WeakMap,ee;try{ee=N(new AbortController().signal)>0}catch{ee=!1}function te(e){return t;function t(){let n=e.deref();if(n!==void 0){L.unregister(t),this.removeEventListener(`abort`,t),n.abort(this.reason);let e=R.get(n.signal);if(e!==void 0){if(e.size!==0){for(let t of e){let e=t.deref();e!==void 0&&e.abort(this.reason)}e.clear()}R.delete(n.signal)}}}}var ne=!1,re,z,ie,ae,oe,B,V,H=class{#e;#t;#n;#r;#i=null;constructor(e,t=void 0){if(k.util.markAsUncloneable(this),e===j)return;k.argumentLengthCheck(arguments,1,`Request constructor`),e=k.converters.RequestInfo(e),t=k.converters.RequestInit(t);let r=null,i=null,u=_.settingsObject.baseUrl,m=null;if(typeof e==`string`){this.#t=t.dispatcher;let n;try{n=new URL(e,u)}catch(t){throw TypeError(`Failed to parse URL from `+e,{cause:t})}if(n.username||n.password)throw TypeError(`Request cannot be constructed from a URL that includes credentials: `+e);r=se({urlList:[n]}),i=`cors`}else M(k.is.Request(e)),r=e.#r,m=e.#e,this.#t=t.dispatcher||e.#t;let b=_.settingsObject.origin,x=`client`;if(r.window?.constructor?.name===`EnvironmentSettingsObject`&&g(r.window,b)&&(x=r.window),t.window!=null)throw TypeError(`'window' option '${x}' must be null`);`window`in t&&(x=`no-window`),r=se({method:r.method,headersList:r.headersList,unsafeRequest:r.unsafeRequest,client:_.settingsObject,window:x,priority:r.priority,origin:r.origin,referrer:r.referrer,referrerPolicy:r.referrerPolicy,mode:r.mode,credentials:r.credentials,cache:r.cache,redirect:r.redirect,integrity:r.integrity,keepalive:r.keepalive,reloadNavigation:r.reloadNavigation,historyNavigation:r.historyNavigation,urlList:[...r.urlList]});let S=Object.keys(t).length!==0;if(S&&(r.mode===`navigate`&&(r.mode=`same-origin`),r.reloadNavigation=!1,r.historyNavigation=!1,r.origin=`client`,r.referrer=`client`,r.referrerPolicy=``,r.url=r.urlList[r.urlList.length-1],r.urlList=[r.url]),t.referrer!==void 0){let e=t.referrer;if(e===``)r.referrer=`no-referrer`;else{let t;try{t=new URL(e,u)}catch(t){throw TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}t.protocol===`about:`&&t.hostname===`client`||b&&!g(t,_.settingsObject.baseUrl)?r.referrer=`client`:r.referrer=t}}t.referrerPolicy!==void 0&&(r.referrerPolicy=t.referrerPolicy);let C;if(C=t.mode===void 0?i:t.mode,C===`navigate`)throw k.errors.exception({header:`Request constructor`,message:`invalid request mode navigate.`});if(C!=null&&(r.mode=C),t.credentials!==void 0&&(r.credentials=t.credentials),t.cache!==void 0&&(r.cache=t.cache),r.cache===`only-if-cached`&&r.mode!==`same-origin`)throw TypeError(`'only-if-cached' can be set only with 'same-origin' mode`);if(t.redirect!==void 0&&(r.redirect=t.redirect),t.integrity!=null&&(r.integrity=String(t.integrity)),t.keepalive!==void 0&&(r.keepalive=!!t.keepalive),t.method!==void 0){let e=t.method,n=O[e];if(n!==void 0)r.method=n;else{if(!h(e))throw TypeError(`'${e}' is not a valid HTTP method.`);let t=e.toUpperCase();if(v.has(t))throw TypeError(`'${e}' HTTP method is unsupported.`);e=D[t]??e,r.method=e}!ne&&r.method===`patch`&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:`UNDICI-FETCH-patch`}),ne=!0)}t.signal!==void 0&&(m=t.signal),this.#r=r;let w=new AbortController;if(this.#e=w.signal,m!=null){if(m.aborted)w.abort(m.reason);else{this[I]=w;let e=te(new WeakRef(w));ee&&N(m)===F&&P(1500,m);let t=p.addAbortListener(m,e);L.register(w,{signal:m,abort:e},e),this.#i=()=>{L.unregister(e),t(),this.#i=null}}}if(this.#n=new o(j),d(this.#n,r.headersList),l(this.#n,`request`),C===`no-cors`){if(!y.has(r.method))throw TypeError(`'${r.method} is unsupported in no-cors mode.`);l(this.#n,`request-no-cors`)}if(S){let e=f(this.#n),n=t.headers===void 0?new c(e):t.headers;if(e.clear(),n instanceof c){for(let{name:t,value:r}of n.rawValues())e.append(t,r,!1);e.cookies=n.cookies}else s(this.#n,n)}let T=k.is.Request(e)?e.#r.body:null;if((t.body!=null||T!=null)&&(r.method===`GET`||r.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);let E=null;if(t.body!=null){let[e,i]=n(t.body,r.keepalive);E=e,i&&!f(this.#n).contains(`content-type`,!0)&&this.#n.append(`content-type`,i,!0)}let A=E??T;if(A!=null&&A.source==null){if(E!=null&&t.duplex==null)throw TypeError(`RequestInit: duplex option is required when sending a body.`);if(r.mode!==`same-origin`&&r.mode!==`cors`)throw TypeError(`If request is made from ReadableStream, mode should be "same-origin" or "cors"`);r.useCORSPreflightFlag=!0}let R=A;if(E==null&&T!=null){if(a(e.#r))throw TypeError(`Cannot construct a Request with a Request object that has already been used.`);let t=new TransformStream;T.stream.pipeThrough(t),R={source:T.source,length:T.length,stream:t.readable}}this.#r.body=R}get method(){return k.brandCheck(this,k.is.Request),this.#r.method}get url(){return k.brandCheck(this,k.is.Request),A(this.#r.url)}get headers(){return k.brandCheck(this,k.is.Request),this.#n}get destination(){return k.brandCheck(this,k.is.Request),this.#r.destination}get referrer(){return k.brandCheck(this,k.is.Request),this.#r.referrer===`no-referrer`?``:this.#r.referrer===`client`?`about:client`:this.#r.referrer.toString()}get referrerPolicy(){return k.brandCheck(this,k.is.Request),this.#r.referrerPolicy}get mode(){return k.brandCheck(this,k.is.Request),this.#r.mode}get credentials(){return k.brandCheck(this,k.is.Request),this.#r.credentials}get cache(){return k.brandCheck(this,k.is.Request),this.#r.cache}get redirect(){return k.brandCheck(this,k.is.Request),this.#r.redirect}get integrity(){return k.brandCheck(this,k.is.Request),this.#r.integrity}get keepalive(){return k.brandCheck(this,k.is.Request),this.#r.keepalive}get isReloadNavigation(){return k.brandCheck(this,k.is.Request),this.#r.reloadNavigation}get isHistoryNavigation(){return k.brandCheck(this,k.is.Request),this.#r.historyNavigation}get signal(){return k.brandCheck(this,k.is.Request),this.#e}get body(){return k.brandCheck(this,k.is.Request),this.#r.body?this.#r.body.stream:null}get bodyUsed(){return k.brandCheck(this,k.is.Request),!!this.#r.body&&p.isDisturbed(this.#r.body.stream)}get duplex(){return k.brandCheck(this,k.is.Request),`half`}clone(){if(k.brandCheck(this,k.is.Request),a(this.#r))throw TypeError(`unusable`);let e=ce(this.#r),t=new AbortController;if(this.signal.aborted)t.abort(this.signal.reason);else{let e=R.get(this.signal);e===void 0&&(e=new Set,R.set(this.signal,e));let n=new WeakRef(t);e.add(n),p.addAbortListener(t.signal,te(n))}return le(e,this.#t,t.signal,u(this.#n))}[m.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${m.formatWithOptions(t,n)}`}static{re=(e,t)=>{e.#e=t},z=e=>e.#t,ie=(e,t)=>{e.#t=t},ae=(e,t)=>{e.#n=t},oe=e=>e.#r,B=(e,t)=>{e.#r=t},V=e=>{e.#i?.()},k.is.Request=e=>typeof e==`object`&&!!e&&#r in e}};r(H,oe,k.is.Request);function se(e){return{method:e.method??`GET`,localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??``,window:e.window??`client`,keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??`all`,initiator:e.initiator??``,destination:e.destination??``,priority:e.priority??`auto`,origin:e.origin??`client`,policyContainer:e.policyContainer??`client`,referrer:e.referrer??`client`,referrerPolicy:e.referrerPolicy??``,mode:e.mode??`no-cors`,useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??`same-origin`,useCredentials:e.useCredentials??!1,cache:e.cache??`default`,redirect:e.redirect??`follow`,integrity:e.integrity??``,cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??``,parserMetadata:e.parserMetadata??``,reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??`basic`,preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,useURLCredentials:e.useURLCredentials??void 0,traversableForUserPrompts:e.traversableForUserPrompts??`client`,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new c(e.headersList):new c}}function ce(e){let t=se({...e,body:null});return e.body!=null&&(t.body=i(e.body)),t}function le(e,t,n,r){let i=new H(j);B(i,e),ie(i,t),re(i,n);let a=new o(j);return ae(i,a),d(a,e.headersList),l(a,r),i}Object.defineProperties(H.prototype,{method:E,url:E,headers:E,redirect:E,clone:E,signal:E,duplex:E,destination:E,body:E,bodyUsed:E,isHistoryNavigation:E,isReloadNavigation:E,keepalive:E,integrity:E,cache:E,credentials:E,attribute:E,referrerPolicy:E,referrer:E,mode:E,[Symbol.toStringTag]:{value:`Request`,configurable:!0}}),k.converters.RequestInfo=function(e){return typeof e==`string`?k.converters.USVString(e):k.is.Request(e)?e:k.converters.USVString(e)},k.converters.RequestInit=k.dictionaryConverter([{key:`method`,converter:k.converters.ByteString},{key:`headers`,converter:k.converters.HeadersInit},{key:`body`,converter:k.nullableConverter(k.converters.BodyInit)},{key:`referrer`,converter:k.converters.USVString},{key:`referrerPolicy`,converter:k.converters.DOMString,allowedValues:b},{key:`mode`,converter:k.converters.DOMString,allowedValues:S},{key:`credentials`,converter:k.converters.DOMString,allowedValues:C},{key:`cache`,converter:k.converters.DOMString,allowedValues:w},{key:`redirect`,converter:k.converters.DOMString,allowedValues:x},{key:`integrity`,converter:k.converters.DOMString},{key:`keepalive`,converter:k.converters.boolean},{key:`signal`,converter:k.nullableConverter(e=>k.converters.AbortSignal(e,`RequestInit`,`signal`))},{key:`window`,converter:k.converters.any},{key:`duplex`,converter:k.converters.DOMString,allowedValues:T},{key:`dispatcher`,converter:k.converters.any},{key:`priority`,converter:k.converters.DOMString,allowedValues:[`high`,`low`,`auto`]}]),t.exports={Request:H,makeRequest:se,fromInnerRequest:le,cloneRequest:ce,getRequestDispatcher:z,getRequestState:oe,removeRequestAbortListener:V}})),iT=q(((e,t)=>{var n=J(`node:assert`),{runtimeFeatures:r}=YC(),i=new Map([[`sha256`,0],[`sha384`,1],[`sha512`,2]]),a;if(r.has(`crypto`)){a=J(`node:crypto`);let e=a.getHashes();e.length===0&&i.clear();for(let t of i.keys())e.includes(t)===!1&&i.delete(t)}else i.clear();var o=Map.prototype.get.bind(i),s=Map.prototype.has.bind(i),c=r.has(`crypto`)===!1||i.size===0?()=>!0:(e,t)=>{let n=u(t);if(n.length===0)return!0;let r=l(n);for(let t of r){let n=t.alg,r=t.val;if(f(d(n,e),r))return!0}return!1};function l(e){let t=[],r=null;for(let i of e){if(n(s(i.alg),`Invalid SRI hash algorithm token`),t.length===0){t.push(i),r=i;continue}let e=r.alg,a=o(e),c=i.alg,l=o(c);l<a||(l>a?(r=i,t[0]=i,t.length=1):t.push(i))}return t}function u(e){let t=[];for(let n of e.split(` `)){let e=n.split(`?`,1)[0],r=``,i=[e.slice(0,6),e.slice(7)],a=i[0];if(!s(a))continue;i[1]&&(r=i[1]);let o={alg:a,val:r};t.push(o)}return t}var d=(e,t)=>a.hash(e,t,`base64`);function f(e,t){let n=e.length;n!==0&&e[n-1]===`=`&&--n,n!==0&&e[n-1]===`=`&&--n;let r=t.length;if(r!==0&&t[r-1]===`=`&&--r,r!==0&&t[r-1]===`=`&&--r,n!==r)return!1;for(let r=0;r<n;++r)if(!(e[r]===t[r]||e[r]===`+`&&t[r]===`-`||e[r]===`/`&&t[r]===`_`))return!1;return!0}t.exports={applyAlgorithmToBytes:d,bytesMatch:c,caseSensitiveMatch:f,isValidSRIHashAlgorithm:s,getStrongestMetadata:l,parseMetadata:u}})),aT=q(((e,t)=>{var{makeNetworkError:n,makeAppropriateNetworkError:r,filterResponse:i,makeResponse:a,fromInnerResponse:o,getResponseState:s}=nT(),{HeadersList:c}=tT(),{Request:l,cloneRequest:u,getRequestDispatcher:d,getRequestState:f,removeRequestAbortListener:p}=rT(),m=J(`node:zlib`),{makePolicyContainer:h,clonePolicyContainer:g,requestBadPort:_,TAOCheck:v,appendRequestOriginHeader:y,responseLocationURL:b,requestCurrentURL:x,setRequestReferrerPolicyOnRedirect:S,tryUpgradeRequestToAPotentiallyTrustworthyURL:C,createOpaqueTimingInfo:w,appendFetchMetadata:T,corsCheck:E,crossOriginResourcePolicyCheck:D,determineRequestsReferrer:O,coarsenedSharedCurrentTime:k,sameOrigin:A,isCancelled:j,isAborted:M,isErrorLike:N,fullyReadBody:P,readableStreamClose:F,urlIsLocal:I,urlIsHttpHttpsScheme:L,urlHasHttpsScheme:R,clampAndCoarsenConnectionTimingInfo:ee,simpleRangeHeaderValue:te,buildContentRange:ne,createInflate:re,extractMimeType:z,hasAuthenticationEntry:ie,includesCredentials:ae,isTraversableNavigable:oe}=JC(),B=J(`node:assert`),{safelyExtractBody:V,extractBody:H}=QC(),{redirectStatusSet:se,nullBodyStatus:ce,safeMethodsSet:le,requestBodyHeader:U,subresourceSet:W}=HC(),ue=J(`node:events`),{Readable:de,pipeline:fe,finished:pe,isErrored:me,isReadable:G}=J(`node:stream`),{addAbortListener:he,bufferToLowerCasedHeaderName:ge}=$(),{SocketError:_e}=Q(),{dataURLProcessor:ve,serializeAMimeType:K,minimizeSupportedMimeType:ye}=KC(),{getGlobalDispatcher:be}=Lw(),{webidl:xe}=qC(),{STATUS_CODES:Se}=J(`node:http`),{bytesMatch:Ce}=iT(),{isomorphicEncode:we}=GC(),Te=[`GET`,`HEAD`],Ee=typeof __UNDICI_IS_NODE__<`u`||typeof esbuildDetection<`u`?`node`:`undici`,De;function Oe(e,t,n){if(Array.isArray(n)){for(let t=0;t<n.length;t+=2){let r=ge(n[t]),i=n[t+1];if(Array.isArray(i)&&!Buffer.isBuffer(i))for(let t of i)e.append(r,t.toString(`latin1`),!0);else e.append(r,i.toString(`latin1`),!0)}return}for(let[n,r]of Object.entries(t??{}))if(Array.isArray(r))for(let t of r)e.append(n,`${t}`,!0);else e.append(n,`${r}`,!0)}var ke=class extends ue{constructor(e){super(),this.dispatcher=e,this.connection=null,this.dump=!1,this.state=`ongoing`}terminate(e){this.state===`ongoing`&&(this.state=`terminated`,this.connection?.destroy(e),this.emit(`terminated`,e))}abort(e){this.state===`ongoing`&&(this.state=`aborted`,e||=new DOMException(`The operation was aborted.`,`AbortError`),this.serializedAbortReason=e,this.connection?.destroy(e),this.emit(`terminated`,e))}};function Ae(e){je(e,`fetch`)}function q(e,t=void 0){xe.argumentLengthCheck(arguments,1,`globalThis.fetch`);let n=Promise.withResolvers(),r;try{r=new l(e,t)}catch(e){return n.reject(e),n.promise}let i=f(r);if(r.signal.aborted)return Ne(n,i,null,r.signal.reason,null),n.promise;i.client.globalObject?.constructor?.name===`ServiceWorkerGlobalScope`&&(i.serviceWorkers=`none`);let a=null,s=!1,c=null,u=he(r.signal,()=>{s=!0,B(c!=null),c.abort(r.signal.reason);let e=a?.deref();Ne(n,i,e,r.signal.reason,c.controller)}),m=()=>{u(),p(r)};return c=Pe({request:i,processResponseEndOfBody:e=>{Ae(e),m()},processResponse:e=>{if(!s){if(e.aborted){Ne(n,i,a,c.serializedAbortReason,c.controller),m();return}if(e.type===`error`){n.reject(TypeError(`fetch failed`,{cause:e.error})),m();return}a=new WeakRef(o(e,`immutable`)),n.resolve(a.deref()),n=null}},dispatcher:d(r),requestObject:r}),n.promise}function je(e,t=`other`){if(e.type===`error`&&e.aborted||!e.urlList?.length)return;let n=e.urlList[0],r=e.timingInfo,i=e.cacheState;L(n)&&r!==null&&(e.timingAllowPassed||(r=w({startTime:r.startTime}),i=``),r.endTime=k(),e.timingInfo=r,Me(r,n.href,t,globalThis,i,``,e.status))}var Me=performance.markResourceTiming;function Ne(e,t,n,r,i){if(e&&e.reject(r),t.body?.stream!=null&&G(t.body.stream)&&t.body.stream.cancel(r).catch(e=>{if(e.code!==`ERR_INVALID_STATE`)throw e}),n==null)return;let a=s(n);a.body?.stream!=null&&G(a.body.stream)&&i.error(r)}function Pe({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseEndOfBody:i,processResponseConsumeBody:a,useParallelQueue:o=!1,dispatcher:s=be(),requestObject:c=null}){B(s);let l=null,u=!1;e.client!=null&&(l=e.client.globalObject,u=e.client.crossOriginIsolatedCapability);let d=w({startTime:k(u)}),f={controller:new ke(s),request:e,timingInfo:d,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseConsumeBody:a,processResponseEndOfBody:i,taskDestination:l,crossOriginIsolatedCapability:u,requestObject:c};return B(!e.body||e.body.stream),e.window===`client`&&(e.window=e.client?.globalObject?.constructor?.name===`Window`?e.client:`no-window`),e.origin===`client`&&(e.origin=e.client.origin),e.policyContainer===`client`&&(e.policyContainer=e.client==null?h():g(e.client.policyContainer)),e.headersList.contains(`accept`,!0)||e.headersList.append(`accept`,`*/*`,!0),e.headersList.contains(`accept-language`,!0)||e.headersList.append(`accept-language`,`*`,!0),e.priority,W.has(e.destination),Fe(f,!1),f.controller}async function Fe(e,t){try{let r=e.request,a=null;if(r.localURLsOnly&&!I(x(r))&&(a=n(`local URLs only`)),C(r),_(r)===`blocked`&&(a=n(`bad port`)),r.referrerPolicy===``&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!==`no-referrer`&&(r.referrer=O(r)),a===null){let t=x(r);A(t,r.url)&&r.responseTainting===`basic`||t.protocol===`data:`||r.mode===`navigate`||r.mode===`websocket`?(r.responseTainting=`basic`,a=await Ie(e)):r.mode===`same-origin`?a=n(`request mode cannot be "same-origin"`):r.mode===`no-cors`?r.redirect===`follow`?(r.responseTainting=`opaque`,a=await Ie(e)):a=n(`redirect mode cannot be "follow" for "no-cors" request`):L(x(r))?(r.responseTainting=`cors`,a=await ze(e)):a=n(`URL scheme must be a HTTP(S) scheme`)}if(t)return a;a.status!==0&&!a.internalResponse&&(r.responseTainting,r.responseTainting===`basic`?a=i(a,`basic`):r.responseTainting===`cors`?a=i(a,`cors`):r.responseTainting===`opaque`?a=i(a,`opaque`):B(!1));let o=a.status===0?a:a.internalResponse;if(o.urlList.length===0&&o.urlList.push(...r.urlList),r.timingAllowFailed||(a.timingAllowPassed=!0),a.type===`opaque`&&o.status===206&&o.rangeRequested&&!r.headers.contains(`range`,!0)&&(a=o=n()),a.status!==0&&(r.method===`HEAD`||r.method===`CONNECT`||ce.includes(o.status))&&(o.body=null,e.controller.dump=!0),r.integrity){let t=t=>Re(e,n(t));if(r.responseTainting===`opaque`||a.body==null){t(a.error);return}P(a.body,n=>{if(!Ce(n,r.integrity)){t(`integrity mismatch`);return}a.body=V(n)[0],Re(e,a)},t)}else Re(e,a)}catch(t){e.controller.terminate(t)}}function Ie(e){if(j(e))return Promise.resolve(r(e));let{request:t}=e,{protocol:i}=x(t);switch(i){case`about:`:return Promise.resolve(n(`about scheme is not supported`));case`blob:`:{De||=J(`node:buffer`).resolveObjectURL;let e=x(t);if(e.search.length!==0)return Promise.resolve(n(`NetworkError when attempting to fetch resource.`));let r=De(e.toString());if(t.method!==`GET`||!xe.is.Blob(r))return Promise.resolve(n(`invalid method`));let i=a(),o=r.size,s=we(`${o}`),c=r.type;if(t.headersList.contains(`range`,!0)){i.rangeRequested=!0;let e=te(t.headersList.get(`range`,!0),!0);if(e===`failure`)return Promise.resolve(n(`failed to fetch the data URL`));let{rangeStartValue:a,rangeEndValue:s}=e;if(a===null)a=o-s,s=a+s-1;else{if(a>=o)return Promise.resolve(n(`Range start is greater than the blob's size.`));(s===null||s>=o)&&(s=o-1)}let l=r.slice(a,s+1,c);i.body=H(l)[0];let u=we(`${l.size}`),d=ne(a,s,o);i.status=206,i.statusText=`Partial Content`,i.headersList.set(`content-length`,u,!0),i.headersList.set(`content-type`,c,!0),i.headersList.set(`content-range`,d,!0)}else{let e=H(r);i.statusText=`OK`,i.body=e[0],i.headersList.set(`content-length`,s,!0),i.headersList.set(`content-type`,c,!0)}return Promise.resolve(i)}case`data:`:{let e=ve(x(t));if(e===`failure`)return Promise.resolve(n(`failed to fetch the data URL`));let r=K(e.mimeType);return Promise.resolve(a({statusText:`OK`,headersList:[[`content-type`,{name:`Content-Type`,value:r}]],body:V(e.body)[0]}))}case`file:`:return Promise.resolve(n(`not implemented... yet...`));case`http:`:case`https:`:return ze(e).catch(e=>n(e));default:return Promise.resolve(n(`unknown scheme`))}}function Le(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Re(e,t){let n=e.timingInfo;e.request.destination===`document`&&(e.controller.fullTimingInfo=n);let r=()=>{let r=Date.now();e.controller.reportTimingSteps=()=>{if(!L(e.request.url))return;n.endTime=r;let i=t.cacheState,a=t.bodyInfo;t.timingAllowPassed||(n=w(n),i=``);let o=0;if(e.request.mode!==`navigate`||!t.hasCrossOriginRedirects){o=t.status;let e=z(t.headersList);e!==`failure`&&(a.contentType=ye(e))}e.request.initiatorType!=null&&Me(n,e.request.url.href,e.request.initiatorType,globalThis,i,a,o)};let i=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>i())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let i=t.type===`error`?t:t.internalResponse??t;if(i.body==null?r():pe(i.body.stream,()=>{r()}),e.processResponseConsumeBody!=null){let n=n=>e.processResponseConsumeBody(t,n);i.body==null?queueMicrotask(()=>n(null)):P(i.body,n,()=>e.processResponseConsumeBody(t,`failure`))}}async function ze(e){let t=e.request,r=null,i=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect===`follow`&&(t.serviceWorkers=`none`),i=r=await Ve(e),t.responseTainting===`cors`&&E(t,r)===`failure`)return n(`cors failure`);v(t,r)===`failure`&&(t.timingAllowFailed=!0)}return(t.responseTainting===`opaque`||r.type===`opaque`)&&D(t.origin,t.client,t.destination,i)===`blocked`?n(`blocked`):(se.has(i.status)&&(t.redirect!==`manual`&&e.controller.connection.destroy(),t.redirect===`error`?r=n(`unexpected redirect`):t.redirect===`manual`?r=i:t.redirect===`follow`?r=await Be(e,r):B(!1)),r.timingInfo=a,r)}function Be(e,t){let r=e.request,i=t.internalResponse?t.internalResponse:t,a;try{if(a=b(i,x(r).hash),a==null)return t}catch(e){return Promise.resolve(n(e))}if(!L(a))return Promise.resolve(n(`URL scheme must be a HTTP(S) scheme`));if(r.redirectCount===20)return Promise.resolve(n(`redirect count exceeded`));if(r.redirectCount+=1,r.mode===`cors`&&(a.username||a.password)&&!A(r,a))return Promise.resolve(n(`cross origin not allowed for request mode "cors"`));if(r.responseTainting===`cors`&&(a.username||a.password))return Promise.resolve(n(`URL cannot contain credentials for request mode "cors"`));if(i.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(n());if([301,302].includes(i.status)&&r.method===`POST`||i.status===303&&!Te.includes(r.method)){r.method=`GET`,r.body=null;for(let e of U)r.headersList.delete(e)}A(x(r),a)||(r.headersList.delete(`authorization`,!0),r.headersList.delete(`proxy-authorization`,!0),r.headersList.delete(`cookie`,!0),r.headersList.delete(`host`,!0)),r.body!=null&&(B(r.body.source!=null),r.body=V(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=k(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),S(r,i),Fe(e,!0)}async function Ve(e,t=!1,i=!1){let a=e.request,o=null,s=null,c=null;a.window===`no-window`&&a.redirect===`error`?(o=e,s=a):(a.body?.source==null?(s=u({...a,body:null}),s.body=a.body):s=u(a),o={...e},o.request=s);let l=a.credentials===`include`||a.credentials===`same-origin`&&a.responseTainting===`basic`,d=s.body?s.body.length:null,f=null;if(s.body==null&&[`POST`,`PUT`].includes(s.method)&&(f=`0`),d!=null&&(f=we(`${d}`)),f!=null&&!s.headersList.contains(`content-length`,!0)&&s.headersList.append(`content-length`,f,!0),d!=null&&s.keepalive,xe.is.URL(s.referrer)&&s.headersList.append(`referer`,we(s.referrer.href),!0),y(s),T(s),s.headersList.contains(`user-agent`,!0)||s.headersList.append(`user-agent`,Ee,!0),s.cache==="default"&&(s.headersList.contains(`if-modified-since`,!0)||s.headersList.contains(`if-none-match`,!0)||s.headersList.contains(`if-unmodified-since`,!0)||s.headersList.contains(`if-match`,!0)||s.headersList.contains(`if-range`,!0))&&(s.cache=`no-store`),s.cache===`no-cache`&&!s.preventNoCacheCacheControlHeaderModification&&!s.headersList.contains(`cache-control`,!0)&&s.headersList.append(`cache-control`,`max-age=0`,!0),(s.cache===`no-store`||s.cache===`reload`)&&(s.headersList.contains(`pragma`,!0)||s.headersList.append(`pragma`,`no-cache`,!0),s.headersList.contains(`cache-control`,!0)||s.headersList.append(`cache-control`,`no-cache`,!0)),s.headersList.contains(`range`,!0)&&s.headersList.append(`accept-encoding`,`identity`,!0),s.headersList.contains(`accept-encoding`,!0)||(R(x(s))?s.headersList.append(`accept-encoding`,`br, gzip, deflate, zstd`,!0):s.headersList.append(`accept-encoding`,`gzip, deflate`,!0)),s.headersList.delete(`host`,!0),l&&!s.headersList.contains(`authorization`,!0)){let e=null;if((!ie(s)||s.useURLCredentials!==void 0&&ae(x(s)))&&ae(x(s))&&t){let{username:t,password:n}=x(s);e=`Basic ${Buffer.from(`${t}:${n}`).toString(`base64`)}`}e!==null&&s.headersList.append(`Authorization`,e,!1)}if(s.cache=`no-store`,s.cache!==`no-store`&&s.cache,c==null){if(s.cache===`only-if-cached`)return n(`only if cached`);let e=await He(o,l,i);!le.has(s.method)&&e.status>=200&&e.status,c??=e}if(c.urlList=[...s.urlList],s.headersList.contains(`range`,!0)&&(c.rangeRequested=!0),c.requestIncludesCredentials=l,c.status===401&&s.responseTainting!==`cors`&&l&&(a.useURLCredentials!==void 0||oe(a.traversableForUserPrompts))){if(a.body!=null){if(a.body.source==null)return c;a.body=V(a.body.source)[0]}if(a.useURLCredentials===void 0||t)return j(e)?r(e):c;e.controller.connection.destroy(),c=await Ve(e,!0)}if(c.status===407)return a.window===`no-window`?n():j(e)?r(e):n(`proxy authentication required`);if(c.status===421&&!i&&(a.body==null||a.body.source!=null)){if(j(e))return r(e);e.controller.connection.destroy(),c=await Ve(e,t,!0)}return c}async function He(e,t=!1,i=!1){B(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(e){this.destroyed||(this.destroyed=!0,this.abort?.(e??new DOMException(`The operation was aborted.`,`AbortError`)))}};let o=e.request,s=null,l=e.timingInfo;o.cache=`no-store`,o.mode;let u=null;if(o.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(o.body!=null){let t=async function*(t){j(e)||(yield t,e.processRequestBodyChunkLength?.(t.byteLength))},n=()=>{j(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},r=t=>{j(e)||(t.name===`AbortError`?e.controller.abort():e.controller.terminate(t))};u=(async function*(){try{for await(let e of o.body.stream)yield*t(e);n()}catch(e){r(e)}})()}try{let{body:t,status:n,statusText:r,headersList:i,socket:o}=await p({body:u});if(o)s=a({status:n,statusText:r,headersList:i,socket:o});else{let o=t[Symbol.asyncIterator]();e.controller.next=()=>o.next(),s=a({status:n,statusText:r,headersList:i})}}catch(t){return t.name===`AbortError`?(e.controller.connection.destroy(),r(e,t)):n(t)}let d=new ReadableStream({start(t){e.controller.controller=t},pull:()=>e.controller.resume(),cancel:t=>{j(e)||e.controller.abort(t)},type:`bytes`});s.body={stream:d,source:null,length:null},e.controller.resume||e.controller.on(`terminated`,f),e.controller.resume=async()=>{for(;;){let t,n;try{let{done:n,value:r}=await e.controller.next();if(M(e))break;t=n?void 0:r}catch(r){e.controller.ended&&!l.encodedBodySize?t=void 0:(t=r,n=!0)}if(t===void 0){F(e.controller.controller),Le(e,s);return}if(l.decodedBodySize+=t?.byteLength??0,n){e.controller.terminate(t);return}let r=new Uint8Array(t);if(r.byteLength&&e.controller.controller.enqueue(r),me(d)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function f(t){M(e)?(s.aborted=!0,G(d)&&e.controller.controller.error(e.controller.serializedAbortReason)):G(d)&&e.controller.controller.error(TypeError(`terminated`,{cause:N(t)?t:void 0})),e.controller.connection.destroy()}return s;function p({body:t}){let n=x(o),r=e.controller.dispatcher,i=n.pathname+n.search,a=n.search.length===0&&n.href[n.href.length-n.hash.length-1]===`?`;return s(t);function s(t,u){return new Promise((d,f)=>r.dispatch({path:a?`${i}?`:i,origin:n.origin,method:o.method,body:r.isMockActive?o.body&&(o.body.source||o.body.stream):t,__mockAgentBodyForDispatch:t,headers:o.headersList.entries,maxRedirections:0,upgrade:o.mode===`websocket`?`websocket`:void 0,...u===!1?{allowH2:u}:null},{body:null,abort:null,onRequestStart(t){let{connection:n}=e.controller;l.finalConnectionTimingInfo=ee(void 0,l.postRedirectStartTime,e.crossOriginIsolatedCapability);let r=e=>t.abort(e);n.destroyed?r(new DOMException(`The operation was aborted.`,`AbortError`)):(e.controller.on(`terminated`,r),this.abort=n.abort=r),l.finalNetworkRequestStartTime=k(e.crossOriginIsolatedCapability)},onResponseStarted(){l.finalNetworkResponseStartTime=k(e.crossOriginIsolatedCapability)},onResponseStart(e,t,n,r){if(t<200)return;let i=e?.rawHeaders??[],a=new c;Oe(a,n,i);let s=a.get(`location`,!0);this.body=new de({read:()=>e.resume()});let l=s&&o.redirect===`follow`&&se.has(t),u=[];if(o.method!==`HEAD`&&o.method!==`CONNECT`&&!ce.includes(t)&&!l){let e=a.get(`content-encoding`,!0),t=e?e.toLowerCase().split(`,`):[];if(t.length>5){f(Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`));return}for(let e=t.length-1;e>=0;--e){let n=t[e].trim();if(n===`x-gzip`||n===`gzip`)u.push(m.createGunzip({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`deflate`)u.push(re({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`br`)u.push(m.createBrotliDecompress({flush:m.constants.BROTLI_OPERATION_FLUSH,finishFlush:m.constants.BROTLI_OPERATION_FLUSH}));else if(n===`zstd`)u.push(m.createZstdDecompress({flush:m.constants.ZSTD_e_continue,finishFlush:m.constants.ZSTD_e_end}));else{u.length=0;break}}}let p=t=>this.onResponseError(e,t);d({status:t,statusText:r,headersList:a,body:u.length?fe(this.body,...u,t=>{t&&this.onResponseError(e,t)}).on(`error`,p):this.body.on(`error`,p)})},onResponseData(t,n){if(e.controller.dump)return;let r=n;l.encodedBodySize+=r.byteLength,this.body.push(r)===!1&&t.pause()},onResponseEnd(){this.abort&&e.controller.off(`terminated`,this.abort),e.controller.ended=!0,this.body?.push(null)},onResponseError(n,r){if(this.abort&&e.controller.off(`terminated`,this.abort),o.mode===`websocket`&&u!==!1&&r?.code===`UND_ERR_INFO`&&r?.message===`HTTP/2: Extended CONNECT protocol not supported by server`){d(s(t,!1));return}this.body?.destroy(r),n?.aborted||e.controller.terminate(r),f(r)},onRequestUpgrade(e,t,n,r){if(r.session!=null&&t!==200||r.session==null&&t!==101)return r.session!=null&&e.abort(new _e(`bad upgrade`,null)),!1;let i=e?.rawHeaders??[],a=new c;return Oe(a,n,i),d({status:t,statusText:Se[t],headersList:a,socket:r}),!0}}))}}}t.exports={fetch:q,Fetch:ke,fetching:Pe,finalizeAndReportTiming:je}})),oT=q(((e,t)=>{var n=J(`node:assert`),{URLSerializer:r}=KC(),{isValidHeaderName:i}=JC();function a(e,t,n=!1){return r(e,n)===r(t,n)}function o(e){n(e!==null);let t=[];for(let n of e.split(`,`))n=n.trim(),i(n)&&t.push(n);return t}t.exports={urlEquals:a,getFieldValues:o}})),sT=q(((e,t)=>{var n=J(`node:assert`),{kConstruct:r}=OC(),{urlEquals:i,getFieldValues:a}=oT(),{kEnumerableProperty:o,isDisturbed:s}=$(),{webidl:c}=qC(),{cloneResponse:l,fromInnerResponse:u,getResponseState:d}=nT(),{Request:f,fromInnerRequest:p,getRequestState:m}=rT(),{fetching:h}=aT(),{urlIsHttpHttpsScheme:g,readAllBytes:_}=JC(),v=class{#e;constructor(){arguments[0]!==r&&c.illegalConstructor(),c.util.markAsUncloneable(this),this.#e=arguments[1]}async match(e,t={}){c.brandCheck(this,c.is.Cache);let n=`Cache.match`;c.argumentLengthCheck(arguments,1,n),e=c.converters.RequestInfo(e),t=c.converters.CacheQueryOptions(t,n,`options`);let r=this.#i(e,t,1);if(r.length!==0)return r[0]}async matchAll(e=void 0,t={}){return c.brandCheck(this,c.is.Cache),e!==void 0&&(e=c.converters.RequestInfo(e)),t=c.converters.CacheQueryOptions(t,`Cache.matchAll`,`options`),this.#i(e,t)}async add(e){c.brandCheck(this,c.is.Cache),c.argumentLengthCheck(arguments,1,`Cache.add`),e=c.converters.RequestInfo(e);let t=[e];return await this.addAll(t)}async addAll(e){c.brandCheck(this,c.is.Cache);let t=`Cache.addAll`;c.argumentLengthCheck(arguments,1,t);let n=[],r=[];for(let n of e){if(n===void 0)throw c.errors.conversionFailed({prefix:t,argument:`Argument 1`,types:[`undefined is not allowed`]});if(n=c.converters.RequestInfo(n),typeof n==`string`)continue;let e=m(n);if(!g(e.url)||e.method!==`GET`)throw c.errors.exception({header:t,message:`Expected http/s scheme when method is not GET.`})}let i=[];for(let o of e){let e=m(new f(o));if(!g(e.url))throw c.errors.exception({header:t,message:`Expected http/s scheme.`});e.initiator=`fetch`,e.destination=`subresource`,r.push(e);let s=Promise.withResolvers();i.push(h({request:e,processResponse(e){if(e.type===`error`||e.status===206||e.status<200||e.status>299)s.reject(c.errors.exception({header:`Cache.addAll`,message:`Received an invalid status code or the request failed.`}));else if(e.headersList.contains(`vary`)){let t=a(e.headersList.get(`vary`));for(let e of t)if(e===`*`){s.reject(c.errors.exception({header:`Cache.addAll`,message:`invalid vary field value`}));for(let e of i)e.abort();return}}},processResponseConsumeBody(e){if(e.aborted){s.reject(new DOMException(`aborted`,`AbortError`));return}s.resolve(e)}})),n.push(s.promise)}let o=await Promise.all(n),s=[],l=0;for(let e of o){let t={type:`put`,request:r[l],response:e};s.push(t),l++}let u=Promise.withResolvers(),d=null;try{this.#t(s)}catch(e){d=e}return queueMicrotask(()=>{d===null?u.resolve(void 0):u.reject(d)}),u.promise}async put(e,t){c.brandCheck(this,c.is.Cache);let n=`Cache.put`;c.argumentLengthCheck(arguments,2,n),e=c.converters.RequestInfo(e),t=c.converters.Response(t,n,`response`);let r=null;if(r=c.is.Request(e)?m(e):m(new f(e)),!g(r.url)||r.method!==`GET`)throw c.errors.exception({header:n,message:`Expected an http/s scheme when method is not GET`});let i=d(t);if(i.status===206)throw c.errors.exception({header:n,message:`Got 206 status`});if(i.headersList.contains(`vary`)){let e=a(i.headersList.get(`vary`));for(let t of e)if(t===`*`)throw c.errors.exception({header:n,message:`Got * vary field value`})}if(i.body&&(s(i.body.stream)||i.body.stream.locked))throw c.errors.exception({header:n,message:`Response body is locked or disturbed`});let o=l(i),u=Promise.withResolvers();i.body==null?u.resolve(void 0):_(i.body.stream.getReader(),u.resolve,u.reject);let p=[],h={type:`put`,request:r,response:o};p.push(h);let v=await u.promise;o.body!=null&&(o.body.source=v);let y=Promise.withResolvers(),b=null;try{this.#t(p)}catch(e){b=e}return queueMicrotask(()=>{b===null?y.resolve():y.reject(b)}),y.promise}async delete(e,t={}){c.brandCheck(this,c.is.Cache);let r=`Cache.delete`;c.argumentLengthCheck(arguments,1,r),e=c.converters.RequestInfo(e),t=c.converters.CacheQueryOptions(t,r,`options`);let i=null;if(c.is.Request(e)){if(i=m(e),i.method!==`GET`&&!t.ignoreMethod)return!1}else n(typeof e==`string`),i=m(new f(e));let a=[],o={type:`delete`,request:i,options:t};a.push(o);let s=Promise.withResolvers(),l=null,u;try{u=this.#t(a)}catch(e){l=e}return queueMicrotask(()=>{l===null?s.resolve(!!u?.length):s.reject(l)}),s.promise}async keys(e=void 0,t={}){c.brandCheck(this,c.is.Cache),e!==void 0&&(e=c.converters.RequestInfo(e)),t=c.converters.CacheQueryOptions(t,`Cache.keys`,`options`);let n=null;if(e!==void 0){if(c.is.Request(e)){if(n=m(e),n.method!==`GET`&&!t.ignoreMethod)return[]}else typeof e==`string`&&(n=m(new f(e)))}let r=Promise.withResolvers(),i=[];if(e===void 0)for(let e of this.#e)i.push(e[0]);else{let e=this.#n(n,t);for(let t of e)i.push(t[0])}return queueMicrotask(()=>{let e=[];for(let t of i){let n=p(t,void 0,new AbortController().signal,`immutable`);e.push(n)}r.resolve(Object.freeze(e))}),r.promise}#t(e){let t=this.#e,r=[...t],i=[],a=[];try{for(let r of e){if(r.type!==`delete`&&r.type!==`put`)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`operation type does not match "delete" or "put"`});if(r.type===`delete`&&r.response!=null)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`delete operation should not have an associated response`});if(this.#n(r.request,r.options,i).length)throw new DOMException(`???`,`InvalidStateError`);let e;if(r.type===`delete`){if(e=this.#n(r.request,r.options),e.length===0)return[];for(let r of e){let e=t.indexOf(r);n(e!==-1),t.splice(e,1)}}else if(r.type===`put`){if(r.response==null)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`put operation should have an associated response`});let a=r.request;if(!g(a.url))throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`expected http or https scheme`});if(a.method!==`GET`)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`not get method`});if(r.options!=null)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`options must not be defined`});e=this.#n(r.request);for(let r of e){let e=t.indexOf(r);n(e!==-1),t.splice(e,1)}t.push([r.request,r.response]),i.push([r.request,r.response])}a.push([r.request,r.response])}return a}catch(e){throw this.#e.length=0,this.#e=r,e}}#n(e,t,n){let r=[],i=n??this.#e;for(let n of i){let[i,a]=n;this.#r(e,i,a,t)&&r.push(n)}return r}#r(e,t,n=null,r){let o=new URL(e.url),s=new URL(t.url);if(r?.ignoreSearch&&(s.search=``,o.search=``),!i(o,s,!0))return!1;if(n==null||r?.ignoreVary||!n.headersList.contains(`vary`))return!0;let c=a(n.headersList.get(`vary`));for(let n of c)if(n===`*`||t.headersList.get(n)!==e.headersList.get(n))return!1;return!0}#i(e,t,n=1/0){let r=null;if(e!==void 0){if(c.is.Request(e)){if(r=m(e),r.method!==`GET`&&!t.ignoreMethod)return[]}else typeof e==`string`&&(r=m(new f(e)))}let i=[];if(e===void 0)for(let e of this.#e)i.push(e[1]);else{let e=this.#n(r,t);for(let t of e)i.push(t[1])}let a=[];for(let e of i){let t=u(l(e),`immutable`);if(a.push(t),a.length>=n)break}return Object.freeze(a)}static{c.is.Cache=e=>typeof e==`object`&&!!e&&#e in e}};Object.defineProperties(v.prototype,{[Symbol.toStringTag]:{value:`Cache`,configurable:!0},match:o,matchAll:o,add:o,addAll:o,put:o,delete:o,keys:o});var y=[{key:`ignoreSearch`,converter:c.converters.boolean,defaultValue:()=>!1},{key:`ignoreMethod`,converter:c.converters.boolean,defaultValue:()=>!1},{key:`ignoreVary`,converter:c.converters.boolean,defaultValue:()=>!1}];c.converters.CacheQueryOptions=c.dictionaryConverter(y),c.converters.MultiCacheQueryOptions=c.dictionaryConverter([...y,{key:`cacheName`,converter:c.converters.DOMString}]),c.converters.Response=c.interfaceConverter(c.is.Response,`Response`),c.converters[`sequence<RequestInfo>`]=c.sequenceConverter(c.converters.RequestInfo),t.exports={Cache:v}})),cT=q(((e,t)=>{var{Cache:n}=sT(),{webidl:r}=qC(),{kEnumerableProperty:i}=$(),{kConstruct:a}=OC(),o=class{#e=new Map;constructor(){arguments[0]!==a&&r.illegalConstructor(),r.util.markAsUncloneable(this)}async match(e,t={}){if(r.brandCheck(this,r.is.CacheStorage),r.argumentLengthCheck(arguments,1,`CacheStorage.match`),e=r.converters.RequestInfo(e),t=r.converters.MultiCacheQueryOptions(t),t.cacheName!=null){if(this.#e.has(t.cacheName))return await new n(a,this.#e.get(t.cacheName)).match(e,t)}else for(let r of this.#e.values()){let i=await new n(a,r).match(e,t);if(i!==void 0)return i}}async has(e){r.brandCheck(this,r.is.CacheStorage);let t=`CacheStorage.has`;return r.argumentLengthCheck(arguments,1,t),e=r.converters.DOMString(e,t,`cacheName`),this.#e.has(e)}async open(e){r.brandCheck(this,r.is.CacheStorage);let t=`CacheStorage.open`;if(r.argumentLengthCheck(arguments,1,t),e=r.converters.DOMString(e,t,`cacheName`),this.#e.has(e))return new n(a,this.#e.get(e));let i=[];return this.#e.set(e,i),new n(a,i)}async delete(e){r.brandCheck(this,r.is.CacheStorage);let t=`CacheStorage.delete`;return r.argumentLengthCheck(arguments,1,t),e=r.converters.DOMString(e,t,`cacheName`),this.#e.delete(e)}async keys(){return r.brandCheck(this,r.is.CacheStorage),[...this.#e.keys()]}static{r.is.CacheStorage=e=>typeof e==`object`&&!!e&&#e in e}};Object.defineProperties(o.prototype,{[Symbol.toStringTag]:{value:`CacheStorage`,configurable:!0},match:i,has:i,open:i,delete:i,keys:i}),t.exports={CacheStorage:o}})),lT=q(((e,t)=>{t.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}})),uT=q(((e,t)=>{function n(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>=0&&n<=8||n>=10&&n<=31||n===127)return!0}return!1}function r(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===60||n===62||n===64||n===44||n===59||n===58||n===92||n===47||n===91||n===93||n===63||n===61||n===123||n===125)throw Error(`Invalid cookie name`)}}function i(e){let t=e.length,n=0;if(e[0]===`"`){if(t===1||e[t-1]!==`"`)throw Error(`Invalid cookie value`);--t,++n}for(;n<t;){let t=e.charCodeAt(n++);if(t<33||t>126||t===34||t===44||t===59||t===92)throw Error(`Invalid cookie value`)}}function a(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<32||n>126||n===59)throw Error(`Invalid cookie path`)}}function o(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122}function s(e){if(e===` `)return;if(e.length>255)throw Error(`Invalid cookie domain`);let t=0;for(let n=0;n<e.length;++n){let r=e.charCodeAt(n);if(r===46){if(t===0||e.charCodeAt(n-1)===45)throw Error(`Invalid cookie domain`);t=0;continue}if(t===0&&!o(r)||!o(r)&&r!==45||++t>63)throw Error(`Invalid cookie domain`)}if(t===0||e.charCodeAt(e.length-1)===45)throw Error(`Invalid cookie domain`)}var c=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],l=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],u=Array(61).fill(0).map((e,t)=>t.toString().padStart(2,`0`));function d(e){return typeof e==`number`&&(e=new Date(e)),`${c[e.getUTCDay()]}, ${u[e.getUTCDate()]} ${l[e.getUTCMonth()]} ${e.getUTCFullYear()} ${u[e.getUTCHours()]}:${u[e.getUTCMinutes()]}:${u[e.getUTCSeconds()]} GMT`}function f(e){if(e<0)throw Error(`Invalid cookie max-age`)}function p(e){if(e.name.length===0)return null;r(e.name),i(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith(`__Secure-`)&&(e.secure=!0),e.name.startsWith(`__Host-`)&&(e.secure=!0,e.domain=null,e.path=`/`),e.secure&&t.push(`Secure`),e.httpOnly&&t.push(`HttpOnly`),typeof e.maxAge==`number`&&(f(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(s(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(a(e.path),t.push(`Path=${e.path}`)),e.expires!=null&&e.expires.toString()!==`Invalid Date`&&t.push(`Expires=${d(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let n of e.unparsed){if(!n.includes(`=`))throw Error(`Invalid unparsed`);let[e,...a]=n.split(`=`),o=e.trim(),s=a.join(`=`);r(o),i(s),t.push(`${o}=${s}`)}return t.join(`; `)}t.exports={isCTLExcludingHtab:n,validateCookieName:r,validateCookiePath:a,validateCookieValue:i,toIMFDate:d,stringify:p}})),dT=q(((e,t)=>{var{collectASequenceOfCodePointsFast:n}=GC(),{maxNameValuePairSize:r,maxAttributeValueSize:i}=lT(),{isCTLExcludingHtab:a}=uT(),o=J(`node:assert`);function s(e){if(a(e))return null;let t=``,i=``,o=``,s=``;if(e.includes(`;`)){let r={position:0};t=n(`;`,e,r),i=e.slice(r.position)}else t=e;if(!t.includes(`=`))s=t;else{let e={position:0};o=n(`=`,t,e),s=t.slice(e.position+1)}return o=o.trim(),s=s.trim(),o.length+s.length>r?null:{name:o,value:s,...c(i)}}function c(e,t={}){for(;;){if(e.length===0)return t;o(e[0]===`;`),e=e.slice(1);let r=``;e.includes(`;`)?(r=n(`;`,e,{position:0}),e=e.slice(r.length)):(r=e,e=``);let a=``,s=``;if(r.includes(`=`)){let e={position:0};a=n(`=`,r,e),s=r.slice(e.position+1)}else a=r;if(a=a.trim(),s=s.trim(),s.length>i)continue;let c=a.toLowerCase();if(c===`expires`){let e=new Date(s);Number.isNaN(e.getTime())||(t.expires=e)}else if(c===`max-age`){let e=s.charCodeAt(0),n=e>=48&&e<=57,r=s[0]===`-`&&s.length>1;if(!n&&!r||/[^\d]/.test(s.slice(1)))continue;t.maxAge=Number(s)}else if(c===`domain`){let e=s;e[0]===`.`&&(e=e.slice(1)),e=e.toLowerCase(),t.domain=e}else if(c===`path`){let e=``;e=s.length===0||s[0]!==`/`?`/`:s,t.path=e}else if(c===`secure`)t.secure=!0;else if(c===`httponly`)t.httpOnly=!0;else if(c===`samesite`){let e=s.toLowerCase();e===`none`?t.sameSite=`None`:e===`strict`?t.sameSite=`Strict`:e===`lax`&&(t.sameSite=`Lax`)}else t.unparsed??=[],t.unparsed.push(`${a}=${s}`)}}t.exports={parseSetCookie:s,parseUnparsedAttributes:c}})),fT=q(((e,t)=>{var{parseSetCookie:n}=dT(),{stringify:r}=uT(),{webidl:i}=qC(),a=e=>i.brandCheck(e,i.util.MakeTypeAssertion(globalThis.Headers)),o=e=>i.brandCheck(e,i.is.Headers);function s(e){try{o(e);return}catch{}a(e)}function c(e){i.argumentLengthCheck(arguments,1,`getCookies`),s(e);let t=e.get(`cookie`),n={__proto__:null};if(!t)return n;for(let e of t.split(`;`)){let[t,...r]=e.split(`=`);n[t.trim()]=r.join(`=`)}return n}function l(e,t,n){s(e);let r=`deleteCookie`;i.argumentLengthCheck(arguments,2,r),t=i.converters.DOMString(t,r,`name`),n=i.converters.DeleteCookieAttributes(n),f(e,{name:t,value:``,expires:new Date(0),...n})}function u(e){i.argumentLengthCheck(arguments,1,`getSetCookies`),s(e);let t=e.getSetCookie();return t?t.map(e=>n(e)):[]}function d(e){return e=i.converters.DOMString(e),n(e)}function f(e,t){i.argumentLengthCheck(arguments,2,`setCookie`),s(e),t=i.converters.Cookie(t);let n=r(t);n&&e.append(`set-cookie`,n,!0)}i.converters.DeleteCookieAttributes=i.dictionaryConverter([{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null}]),i.converters.Cookie=i.dictionaryConverter([{converter:i.converters.DOMString,key:`name`},{converter:i.converters.DOMString,key:`value`},{converter:i.nullableConverter(e=>typeof e==`number`?i.converters[`unsigned long long`](e):new Date(e)),key:`expires`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters[`long long`]),key:`maxAge`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`secure`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`httpOnly`,defaultValue:()=>null},{converter:i.converters.USVString,key:`sameSite`,allowedValues:[`Strict`,`Lax`,`None`]},{converter:i.sequenceConverter(i.converters.DOMString),key:`unparsed`,defaultValue:()=>[]}]),t.exports={getCookies:c,deleteCookie:l,getSetCookies:u,setCookie:f,parseCookie:d}})),pT=q(((e,t)=>{var{webidl:n}=qC(),{kEnumerableProperty:r}=$(),{kConstruct:i}=OC(),a,o=class e extends Event{#e;constructor(e,t={}){if(e===i){super(arguments[1],arguments[2]),n.util.markAsUncloneable(this);return}let r=`MessageEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.MessageEventInit(t,r,`eventInitDict`),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get data(){return n.brandCheck(this,n.is.MessageEvent),this.#e.data}get origin(){return n.brandCheck(this,n.is.MessageEvent),this.#e.origin}get lastEventId(){return n.brandCheck(this,n.is.MessageEvent),this.#e.lastEventId}get source(){return n.brandCheck(this,n.is.MessageEvent),this.#e.source}get ports(){return n.brandCheck(this,n.is.MessageEvent),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,i=!1,a=null,o=``,s=``,c=null,l=[]){return n.brandCheck(this,n.is.MessageEvent),n.argumentLengthCheck(arguments,1,`MessageEvent.initMessageEvent`),new e(t,{bubbles:r,cancelable:i,data:a,origin:o,lastEventId:s,source:c,ports:l})}static{a=(t,n)=>{let r=new e(i,t,n);return r.#e=n,r.#e.data??=null,r.#e.origin??=``,r.#e.lastEventId??=``,r.#e.source??=null,r.#e.ports??=[],r},n.is.MessageEvent=e=>typeof e==`object`&&!!e&&#e in e}},s=class extends Event{#e;constructor(e,t={}){let r=`CloseEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.CloseEventInit(t),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get wasClean(){return n.brandCheck(this,n.is.CloseEvent),this.#e.wasClean}get code(){return n.brandCheck(this,n.is.CloseEvent),this.#e.code}get reason(){return n.brandCheck(this,n.is.CloseEvent),this.#e.reason}static{n.is.CloseEvent=e=>typeof e==`object`&&!!e&&#e in e}},c=class extends Event{#e;constructor(e,t){let r=`ErrorEvent constructor`;n.argumentLengthCheck(arguments,1,r),super(e,t),n.util.markAsUncloneable(this),e=n.converters.DOMString(e,r,`type`),t=n.converters.ErrorEventInit(t??{}),this.#e=t}get message(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.message}get filename(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.filename}get lineno(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.lineno}get colno(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.colno}get error(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.error}static{n.is.ErrorEvent=e=>typeof e==`object`&&!!e&&#e in e}};Object.defineProperties(o.prototype,{[Symbol.toStringTag]:{value:`MessageEvent`,configurable:!0},data:r,origin:r,lastEventId:r,source:r,ports:r,initMessageEvent:r}),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{value:`CloseEvent`,configurable:!0},reason:r,code:r,wasClean:r}),Object.defineProperties(c.prototype,{[Symbol.toStringTag]:{value:`ErrorEvent`,configurable:!0},message:r,filename:r,lineno:r,colno:r,error:r}),n.converters.MessagePort=n.interfaceConverter(n.is.MessagePort,`MessagePort`),n.converters[`sequence<MessagePort>`]=n.sequenceConverter(n.converters.MessagePort);var l=[{key:`bubbles`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`cancelable`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`composed`,converter:n.converters.boolean,defaultValue:()=>!1}];n.converters.MessageEventInit=n.dictionaryConverter([...l,{key:`data`,converter:n.converters.any,defaultValue:()=>null},{key:`origin`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lastEventId`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`source`,converter:n.nullableConverter(n.converters.MessagePort),defaultValue:()=>null},{key:`ports`,converter:n.converters[`sequence<MessagePort>`],defaultValue:()=>[]}]),n.converters.CloseEventInit=n.dictionaryConverter([...l,{key:`wasClean`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`code`,converter:n.converters[`unsigned short`],defaultValue:()=>0},{key:`reason`,converter:n.converters.USVString,defaultValue:()=>``}]),n.converters.ErrorEventInit=n.dictionaryConverter([...l,{key:`message`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`filename`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lineno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`colno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`error`,converter:n.converters.any}]),t.exports={MessageEvent:o,CloseEvent:s,ErrorEvent:c,createFastMessageEvent:a}})),mT=q(((e,t)=>{t.exports={uid:`258EAFA5-E914-47DA-95CA-C5AB0DC85B11`,sentCloseFrameState:{SENT:1,RECEIVED:2},staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:Buffer.allocUnsafe(0),sendHints:{text:1,typedArray:2,arrayBuffer:3,blob:4}}})),hT=q(((e,t)=>{var{states:n,opcodes:r}=mT(),{isUtf8:i}=J(`node:buffer`),{removeHTTPWhitespace:a}=KC(),{collectASequenceOfCodePointsFast:o}=GC();function s(e){return e===n.CONNECTING}function c(e){return e===n.OPEN}function l(e){return e===n.CLOSING}function u(e){return e===n.CLOSED}function d(e,t,n=(e,t)=>new Event(e,t),r={}){let i=n(e,r);t.dispatchEvent(i)}function f(e,t,n){e.onMessage(t,n)}function p(e){return e.byteLength===e.buffer.byteLength?e.buffer:new Uint8Array(e).buffer}function m(e){if(e.length===0)return!1;for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===44||n===47||n===58||n===59||n===60||n===61||n===62||n===63||n===64||n===91||n===92||n===93||n===123||n===125)return!1}return!0}function h(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function g(e){return e===r.CLOSE||e===r.PING||e===r.PONG}function _(e){return e===r.CONTINUATION}function v(e){return e===r.TEXT||e===r.BINARY}function y(e){return v(e)||_(e)||g(e)}function b(e){let t={position:0},n=new Map;for(;t.position<e.length;){let[r,i=``]=o(`;`,e,t).split(`=`,2);n.set(a(r,!0,!1),a(i,!1,!0)),t.position++}return n}function x(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}let t=Number.parseInt(e,10);return t>=8&&t<=15}function S(e,t){let n;try{n=new URL(e,t)}catch(e){throw new DOMException(e,`SyntaxError`)}if(n.protocol===`http:`?n.protocol=`ws:`:n.protocol===`https:`&&(n.protocol=`wss:`),n.protocol!==`ws:`&&n.protocol!==`wss:`)throw new DOMException(`expected a ws: or wss: url`,`SyntaxError`);if(n.hash.length||n.href.endsWith(`#`))throw new DOMException(`hash`,`SyntaxError`);return n}function C(e,t){if(e!==null&&e!==1e3&&(e<3e3||e>4999))throw new DOMException(`invalid code`,`InvalidAccessError`);if(t!==null){let e=Buffer.byteLength(t);if(e>123)throw new DOMException(`Reason must be less than 123 bytes; received ${e}`,`SyntaxError`)}}t.exports={isConnecting:s,isEstablished:c,isClosing:l,isClosed:u,fireEvent:d,isValidSubprotocol:m,isValidStatusCode:h,websocketMessageReceived:f,utf8Decode:(()=>{if(typeof process.versions.icu==`string`){let e=new TextDecoder(`utf-8`,{fatal:!0});return e.decode.bind(e)}return function(e){if(i(e))return e.toString(`utf-8`);throw TypeError(`Invalid utf-8 received.`)}})(),isControlFrame:g,isContinuationFrame:_,isTextBinaryFrame:v,isValidOpcode:y,parseExtensions:b,isValidClientWindowBits:x,toArrayBuffer:p,getURLRecord:S,validateCloseCodeAndReason:C}})),gT=q(((e,t)=>{var{runtimeFeatures:n}=YC(),{maxUnsigned16Bit:r,opcodes:i}=mT(),a=8192,o=null,s=a,c=n.has(`crypto`)?J(`node:crypto`).randomFillSync:null;function l(){return s===a&&(s=0,c(o??=Buffer.allocUnsafeSlow(a),0,a)),[o[s++],o[s++],o[s++],o[s++]]}t.exports={WebsocketFrameSend:class{constructor(e){this.frameData=e}createFrame(e){let t=this.frameData,n=l(),i=t?.byteLength??0,a=i,o=6;i>r?(o+=8,a=127):i>125&&(o+=2,a=126);let s=Buffer.allocUnsafe(i+o);s[0]=s[1]=0,s[0]|=128,s[0]=(s[0]&240)+e,s[o-4]=n[0],s[o-3]=n[1],s[o-2]=n[2],s[o-1]=n[3],s[1]=a,a===126?s.writeUInt16BE(i,2):a===127&&(s[2]=s[3]=0,s.writeUIntBE(i,4,6)),s[1]|=128;for(let e=0;e<i;++e)s[o+e]=t[e]^n[e&3];return s}static createFastTextFrame(e){let t=l(),n=e.length;for(let r=0;r<n;++r)e[r]^=t[r&3];let a=n,o=6;n>r?(o+=8,a=127):n>125&&(o+=2,a=126);let s=Buffer.allocUnsafeSlow(o);return s[0]=128|i.TEXT,s[1]=a|128,s[o-4]=t[0],s[o-3]=t[1],s[o-2]=t[2],s[o-1]=t[3],a===126?s.writeUInt16BE(n,2):a===127&&(s[2]=s[3]=0,s.writeUIntBE(n,4,6)),[s,e]}},generateMask:l}})),_T=q(((e,t)=>{var{uid:n,states:r,sentCloseFrameState:i,emptyBuffer:a,opcodes:o}=mT(),{parseExtensions:s,isClosed:c,isClosing:l,isEstablished:u,isConnecting:d,validateCloseCodeAndReason:f}=hT(),{makeRequest:p}=rT(),{fetching:m}=aT(),{Headers:h,getHeadersList:g}=tT(),{getDecodeSplit:_}=JC(),{WebsocketFrameSend:v}=gT(),y=J(`node:assert`),{runtimeFeatures:b}=YC(),x=b.has(`crypto`)?J(`node:crypto`):null,S=!1;function C(e,t,r,i,a){let o=e;o.protocol=e.protocol===`ws:`?`http:`:`https:`;let c=p({urlList:[o],client:r,serviceWorkers:`none`,referrer:`no-referrer`,mode:`websocket`,credentials:`include`,cache:`no-store`,redirect:`error`,useURLCredentials:!0});a.headers&&(c.headersList=g(new h(a.headers)));let l=x.randomBytes(16).toString(`base64`);c.headersList.append(`sec-websocket-key`,l,!0),c.headersList.append(`sec-websocket-version`,`13`,!0);for(let e of t)c.headersList.append(`sec-websocket-protocol`,e,!0);return c.headersList.append(`sec-websocket-extensions`,`permessage-deflate; client_max_window_bits`,!0),m({request:c,useParallelQueue:!0,dispatcher:a.dispatcher,processResponse(e){if(e.type===`error`||e.status!==101){if(e.socket?.session==null){T(i,e,1002,`Received network error or non-101 status code.`,e.error);return}if(e.status!==200){T(i,e,1002,`Received network error or non-200 status code.`,e.error);return}}if(S===!1&&e.socket?.session!=null&&(process.emitWarning(`WebSocket over HTTP2 is experimental, and subject to change.`,`ExperimentalWarning`),S=!0),t.length!==0&&!e.headersList.get(`Sec-WebSocket-Protocol`)){T(i,e,1002,`Server did not respond with sent protocols.`);return}if(e.socket.session==null&&e.headersList.get(`Upgrade`)?.toLowerCase()!==`websocket`){T(i,e,1002,`Server did not set Upgrade header to "websocket".`);return}if(e.socket.session==null&&e.headersList.get(`Connection`)?.toLowerCase()!==`upgrade`){T(i,e,1002,`Server did not set Connection header to "upgrade".`);return}if(e.socket.session==null&&e.headersList.get(`Sec-WebSocket-Accept`)!==x.hash(`sha1`,l+n,`base64`)){T(i,e,1002,`Incorrect hash received in Sec-WebSocket-Accept header.`);return}let r=e.headersList.get(`Sec-WebSocket-Extensions`),a;if(r!==null&&(a=s(r),!a.has(`permessage-deflate`))){T(i,e,1002,`Sec-WebSocket-Extensions header does not match.`);return}let o=e.headersList.get(`Sec-WebSocket-Protocol`);if(o!==null){let t=_(`sec-websocket-protocol`,c.headersList);if(t===null||!t.includes(o)){T(i,e,1002,`Protocol was not set in the opening handshake.`);return}}e.socket.session!=null&&(e.socket.allowHalfOpen=!1),e.socket.on(`data`,i.onSocketData),e.socket.on(`close`,i.onSocketClose),e.socket.on(`error`,i.onSocketError),i.wasEverConnected=!0,i.onConnectionEstablished(e,a)}})}function w(e,t,n,s=!1){if(t??=null,n??=``,s&&f(t,n),!(c(e.readyState)||l(e.readyState))){if(!u(e.readyState))E(e),e.readyState=r.CLOSING;else if(!e.closeState.has(i.SENT)&&!e.closeState.has(i.RECEIVED)){let s=new v;n.length!==0&&t===null&&(t=1e3),y(t===null||Number.isInteger(t)),t===null&&n.length===0?s.frameData=a:t!==null&&n===null?(s.frameData=Buffer.allocUnsafe(2),s.frameData.writeUInt16BE(t,0)):t!==null&&n!==null?(s.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(n)),s.frameData.writeUInt16BE(t,0),s.frameData.write(n,2,`utf-8`)):s.frameData=a,e.socket.write(s.createFrame(o.CLOSE)),e.closeState.add(i.SENT),e.readyState=r.CLOSING}else e.readyState=r.CLOSING}}function T(e,t,n,r,i){t.socket?.session!=null&&!t.socket.destroyed&&t.socket.destroy(),E(e,n,r,i)}function E(e,t,n,r){u(e.readyState)&&w(e,t,n,!1),e.controller.abort(),d(e.readyState)?e.onSocketClose():e.socket?.destroyed===!1&&e.socket.destroy()}t.exports={establishWebSocketConnection:C,failWebsocketConnection:E,closeWebSocketConnection:w}})),vT=q(((e,t)=>{var{createInflateRaw:n,Z_DEFAULT_WINDOWBITS:r}=J(`node:zlib`),{isValidClientWindowBits:i}=hT(),{MessageSizeExceededError:a}=Q(),o=Buffer.from([0,0,255,255]),s=Symbol(`kBuffer`),c=Symbol(`kLength`);t.exports={PerMessageDeflate:class{#e;#t={};#n=0;constructor(e,t){this.#t.serverNoContextTakeover=e.has(`server_no_context_takeover`),this.#t.serverMaxWindowBits=e.get(`server_max_window_bits`),this.#n=t.maxPayloadSize}decompress(e,t,l){if(!this.#e){let e=r;if(this.#t.serverMaxWindowBits){if(!i(this.#t.serverMaxWindowBits)){l(Error(`Invalid server_max_window_bits`));return}e=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=n({windowBits:e})}catch(e){l(e);return}this.#e[s]=[],this.#e[c]=0,this.#e.on(`data`,e=>{if(this.#e[c]+=e.length,this.#n>0&&this.#e[c]>this.#n){l(new a),this.#e.removeAllListeners(),this.#e.destroy(),this.#e=null;return}this.#e[s].push(e)}),this.#e.on(`error`,e=>{this.#e=null,l(e)})}this.#e.write(e),t&&this.#e.write(o),this.#e.flush(()=>{if(!this.#e)return;let e=Buffer.concat(this.#e[s],this.#e[c]);this.#e[s].length=0,this.#e[c]=0,l(null,e)})}}}})),yT=q(((e,t)=>{var{Writable:n}=J(`node:stream`),r=J(`node:assert`),{parserStates:i,opcodes:a,states:o,emptyBuffer:s,sentCloseFrameState:c}=mT(),{isValidStatusCode:l,isValidOpcode:u,websocketMessageReceived:d,utf8Decode:f,isControlFrame:p,isTextBinaryFrame:m,isContinuationFrame:h}=hT(),{failWebsocketConnection:g}=_T(),{WebsocketFrameSend:_}=gT(),{PerMessageDeflate:v}=vT(),{MessageSizeExceededError:y}=Q();t.exports={ByteParser:class extends n{#e=[];#t=0;#n=0;#r=!1;#i=i.INFO;#a={};#o=[];#s;#c;#l;#u;constructor(e,t,n={}){super(),this.#c=e,this.#s=t??new Map,this.#l=n.maxFragments??0,this.#u=n.maxPayloadSize??0,this.#s.has(`permessage-deflate`)&&this.#s.set(`permessage-deflate`,new v(t,n))}_write(e,t,n){this.#e.push(e),this.#n+=e.length,this.#r=!0,this.run(n)}#d(){return this.#u>0&&!p(this.#a.opcode)&&this.#a.payloadLength+this.#t>this.#u?(g(this.#c,1009,`Payload size exceeds maximum allowed size`),!1):!0}run(e){for(;this.#r;)if(this.#i===i.INFO){if(this.#n<2)return e();let t=this.consume(2),n=!!(t[0]&128),r=t[0]&15,o=(t[1]&128)==128,s=!n&&r!==a.CONTINUATION,c=t[1]&127,l=t[0]&64,d=t[0]&32,f=t[0]&16;if(!u(r))return g(this.#c,1002,`Invalid opcode received`),e();if(o)return g(this.#c,1002,`Frame cannot be masked`),e();if(l!==0&&!this.#s.has(`permessage-deflate`)){g(this.#c,1002,`Expected RSV1 to be clear.`);return}if(d!==0||f!==0){g(this.#c,1002,`RSV1, RSV2, RSV3 must be clear`);return}if(s&&!m(r)){g(this.#c,1002,`Invalid frame type was fragmented.`);return}if(m(r)&&this.#o.length>0){g(this.#c,1002,`Expected continuation frame`);return}if(this.#a.fragmented&&s){g(this.#c,1002,`Fragmented frame exceeded 125 bytes.`);return}if((c>125||s)&&p(r)){g(this.#c,1002,`Control frame either too large or fragmented`);return}if(h(r)&&this.#o.length===0&&!this.#a.compressed){g(this.#c,1002,`Unexpected continuation frame`);return}if(c<=125){if(this.#a.payloadLength=c,this.#i=i.READ_DATA,!this.#d())return}else c===126?this.#i=i.PAYLOADLENGTH_16:c===127&&(this.#i=i.PAYLOADLENGTH_64);m(r)&&(this.#a.binaryType=r,this.#a.compressed=l!==0),this.#a.opcode=r,this.#a.masked=o,this.#a.fin=n,this.#a.fragmented=s}else if(this.#i===i.PAYLOADLENGTH_16){if(this.#n<2)return e();let t=this.consume(2);if(this.#a.payloadLength=t.readUInt16BE(0),this.#i=i.READ_DATA,!this.#d())return}else if(this.#i===i.PAYLOADLENGTH_64){if(this.#n<8)return e();let t=this.consume(8),n=t.readUInt32BE(0),r=t.readUInt32BE(4);if(n!==0||r>2**31-1){g(this.#c,1009,`Received payload length > 2^31 bytes.`);return}if(this.#a.payloadLength=r,this.#i=i.READ_DATA,!this.#d())return}else if(this.#i===i.READ_DATA){if(this.#n<this.#a.payloadLength)return e();let t=this.consume(this.#a.payloadLength);if(p(this.#a.opcode))this.#r=this.parseControlFrame(t),this.#i=i.INFO;else if(this.#a.compressed){this.#s.get(`permessage-deflate`).decompress(t,this.#a.fin,(t,n)=>{if(t){let e=t instanceof y?1009:1007;g(this.#c,e,t.message);return}if(this.writeFragments(n)){if(this.#u>0&&this.#t>this.#u){g(this.#c,1009,new y().message);return}if(!this.#a.fin){this.#i=i.INFO,this.#r=!0,this.run(e);return}d(this.#c,this.#a.binaryType,this.consumeFragments()),this.#r=!0,this.#i=i.INFO,this.run(e)}},this.#t),this.#r=!1;break}else{if(!this.writeFragments(t))return;!this.#a.fragmented&&this.#a.fin&&d(this.#c,this.#a.binaryType,this.consumeFragments()),this.#i=i.INFO}}}consume(e){if(e>this.#n)throw Error(`Called consume() before buffers satiated.`);if(e===0)return s;this.#n-=e;let t=this.#e[0];if(t.length>e)return this.#e[0]=t.subarray(e,t.length),t.subarray(0,e);if(t.length===e)return this.#e.shift();{let t=0,n=Buffer.allocUnsafeSlow(e);for(;t!==e;){let r=this.#e[0],i=r.length;if(i+t===e){n.set(this.#e.shift(),t);break}if(i+t>e){n.set(r.subarray(0,e-t),t),this.#e[0]=r.subarray(e-t);break}n.set(this.#e.shift(),t),t+=i}return n}}writeFragments(e){return this.#l>0&&this.#o.length===this.#l?(g(this.#c,1008,`Too many message fragments`),!1):(this.#t+=e.length,this.#o.push(e),!0)}consumeFragments(){let e=this.#o;if(this.#a.compressed=!1,e.length===1)return this.#t=0,e.shift();let t=0,n=Buffer.allocUnsafeSlow(this.#t);for(let r=0;r<e.length;++r){let i=e[r];n.set(i,t),t+=i.length}return this.#o=[],this.#t=0,n}parseCloseBody(e){r(e.length!==1);let t;if(e.length>=2&&(t=e.readUInt16BE(0)),t!==void 0&&!l(t))return{code:1002,reason:`Invalid status code`,error:!0};let n=e.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=f(n)}catch{return{code:1007,reason:`Invalid UTF-8`,error:!0}}return{code:t,reason:n,error:!1}}parseControlFrame(e){let{opcode:t,payloadLength:n}=this.#a;if(t===a.CLOSE){if(n===1)return g(this.#c,1002,`Received close frame with a 1-byte body.`),!1;if(this.#a.closeInfo=this.parseCloseBody(e),this.#a.closeInfo.error){let{code:e,reason:t}=this.#a.closeInfo;return g(this.#c,e,t),!1}if(!this.#c.closeState.has(c.SENT)&&!this.#c.closeState.has(c.RECEIVED)){let e=s;this.#a.closeInfo.code&&(e=Buffer.allocUnsafe(2),e.writeUInt16BE(this.#a.closeInfo.code,0));let t=new _(e);this.#c.socket.write(t.createFrame(a.CLOSE)),this.#c.closeState.add(c.SENT)}return this.#c.readyState=o.CLOSING,this.#c.closeState.add(c.RECEIVED),!1}if(t===a.PING){if(!this.#c.closeState.has(c.RECEIVED)){let t=new _(e);this.#c.socket.write(t.createFrame(a.PONG)),this.#c.onPing(e)}}else t===a.PONG&&this.#c.onPong(e);return!0}get closingInfo(){return this.#a.closeInfo}}}})),bT=q(((e,t)=>{var{WebsocketFrameSend:n}=gT(),{opcodes:r,sendHints:i}=mT(),a=nw(),o=class{#e=new a;#t=!1;#n;constructor(e){this.#n=e}add(e,t,r){if(r!==i.blob){if(this.#t){let n={promise:null,callback:t,frame:s(e,r)};this.#e.push(n)}else if(r===i.text){let{0:r,1:i}=n.createFastTextFrame(e);this.#n.cork(),this.#n.write(r),this.#n.write(i,t),this.#n.uncork()}else this.#n.write(s(e,r),t);return}let a={promise:e.arrayBuffer().then(e=>{a.promise=null,a.frame=s(e,r)}),callback:t,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let t=e.shift();t.promise!==null&&await t.promise,this.#n.write(t.frame,t.callback),t.callback=t.frame=null}this.#t=!1}};function s(e,t){return new n(c(e,t)).createFrame(t===i.text?r.TEXT:r.BINARY)}function c(e,t){switch(t){case i.text:case i.typedArray:return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);case i.arrayBuffer:case i.blob:return new Uint8Array(e)}}t.exports={SendQueue:o}})),xT=q(((e,t)=>{var{isArrayBuffer:n}=J(`node:util/types`),{webidl:r}=qC(),{URLSerializer:i}=KC(),{environmentSettingsObject:a}=JC(),{staticPropertyDescriptors:o,states:s,sentCloseFrameState:c,sendHints:l,opcodes:u}=mT(),{isConnecting:d,isEstablished:f,isClosing:p,isClosed:m,isValidSubprotocol:h,fireEvent:g,utf8Decode:_,toArrayBuffer:v,getURLRecord:y}=hT(),{establishWebSocketConnection:b,closeWebSocketConnection:x,failWebsocketConnection:S}=_T(),{ByteParser:C}=yT(),{kEnumerableProperty:w}=$(),{getGlobalDispatcher:T}=Lw(),{ErrorEvent:E,CloseEvent:D,createFastMessageEvent:O}=pT(),{SendQueue:k}=bT(),{WebsocketFrameSend:A}=gT(),{channels:j}=NC(),M=Symbol.for(`nodejs.ref`),N=Symbol.for(`nodejs.unref`),P;function F(e){return typeof e?.address==`function`?e.address():typeof e?.session?.socket?.address==`function`?e.session.socket.address():null}var I=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n=``;#r=``;#i=!0;#a;#o={onConnectionEstablished:(e,t)=>this.#u(e,t),onMessage:(e,t)=>this.#d(e,t),onParserError:e=>S(this.#o,null,e.message),onParserDrain:()=>this.#f(),onSocketData:e=>{this.#l.write(e)||this.#o.socket.pause()},onSocketError:e=>{this.#o.readyState=s.CLOSING,j.socketError.hasSubscribers&&j.socketError.publish(e),this.#o.socket.destroy()},onSocketClose:()=>this.#p(),onPing:e=>{j.ping.hasSubscribers&&j.ping.publish({payload:e,websocket:this})},onPong:e=>{j.pong.hasSubscribers&&j.pong.publish({payload:e,websocket:this})},readyState:s.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#s;#c;#l;constructor(t,n=[]){super(),r.util.markAsUncloneable(this);let i=`WebSocket constructor`;r.argumentLengthCheck(arguments,1,i);let o=r.converters[`DOMString or sequence<DOMString> or WebSocketInit`](n,i,`options`);t=r.converters.USVString(t),n=o.protocols;let s=a.settingsObject.baseUrl,c=y(t,s);if(typeof n==`string`&&(n=[n]),n.length!==new Set(n.map(e=>e.toLowerCase())).size||n.length>0&&!n.every(e=>h(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);this.#s=new URL(c.href);let l=a.settingsObject;this.#o.controller=b(c,n,l,this.#o,o),this.#o.readyState=e.CONNECTING,this.#c=`blob`}[M](){this.#i=!0,this.#o.socket?.ref?.()}[N](){this.#i=!1,this.#o.socket?.unref?.()}close(e=void 0,t=void 0){r.brandCheck(this,r.is.WebSocket),e!==void 0&&(e=r.converters[`unsigned short`](e,`WebSocket.close`,`code`,r.attributes.Clamp)),t!==void 0&&(t=r.converters.USVString(t)),e??=null,t??=``,x(this.#o,e,t,!0)}send(e){r.brandCheck(this,r.is.WebSocket);let t=`WebSocket.send`;if(r.argumentLengthCheck(arguments,1,t),e=r.converters.WebSocketSendData(e,t,`data`),d(this.#o.readyState))throw new DOMException(`Sent before connected.`,`InvalidStateError`);if(f(this.#o.readyState)&&!p(this.#o.readyState)){if(typeof e==`string`){let t=Buffer.from(e);this.#t+=t.byteLength,this.#a.add(t,()=>{this.#t-=t.byteLength},l.text)}else n(e)?(this.#t+=e.byteLength,this.#a.add(e,()=>{this.#t-=e.byteLength},l.arrayBuffer)):ArrayBuffer.isView(e)?(this.#t+=e.byteLength,this.#a.add(e,()=>{this.#t-=e.byteLength},l.typedArray)):r.is.Blob(e)&&(this.#t+=e.size,this.#a.add(e,()=>{this.#t-=e.size},l.blob))}}get readyState(){return r.brandCheck(this,r.is.WebSocket),this.#o.readyState}get bufferedAmount(){return r.brandCheck(this,r.is.WebSocket),this.#t}get url(){return r.brandCheck(this,r.is.WebSocket),i(this.#s)}get extensions(){return r.brandCheck(this,r.is.WebSocket),this.#r}get protocol(){return r.brandCheck(this,r.is.WebSocket),this.#n}get onopen(){return r.brandCheck(this,r.is.WebSocket),this.#e.open}set onopen(e){r.brandCheck(this,r.is.WebSocket),this.#e.open&&this.removeEventListener(`open`,this.#e.open);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.open=null:(this.addEventListener(`open`,t),this.#e.open=e)}get onerror(){return r.brandCheck(this,r.is.WebSocket),this.#e.error}set onerror(e){r.brandCheck(this,r.is.WebSocket),this.#e.error&&this.removeEventListener(`error`,this.#e.error);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.error=null:(this.addEventListener(`error`,t),this.#e.error=e)}get onclose(){return r.brandCheck(this,r.is.WebSocket),this.#e.close}set onclose(e){r.brandCheck(this,r.is.WebSocket),this.#e.close&&this.removeEventListener(`close`,this.#e.close);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.close=null:(this.addEventListener(`close`,t),this.#e.close=e)}get onmessage(){return r.brandCheck(this,r.is.WebSocket),this.#e.message}set onmessage(e){r.brandCheck(this,r.is.WebSocket),this.#e.message&&this.removeEventListener(`message`,this.#e.message);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.message=null:(this.addEventListener(`message`,t),this.#e.message=e)}get binaryType(){return r.brandCheck(this,r.is.WebSocket),this.#c}set binaryType(e){r.brandCheck(this,r.is.WebSocket),this.#c=e!==`blob`&&e!==`arraybuffer`?`blob`:e}#u(e,t){this.#o.socket=e.socket,this.#i||this.#o.socket.unref?.();let n=this.#o.controller.dispatcher?.webSocketOptions?.maxFragments,r=this.#o.controller.dispatcher?.webSocketOptions?.maxPayloadSize,i=new C(this.#o,t,{maxFragments:n,maxPayloadSize:r});i.on(`drain`,()=>this.#o.onParserDrain()),i.on(`error`,e=>this.#o.onParserError(e)),this.#l=i,this.#a=new k(e.socket),this.#o.readyState=s.OPEN;let a=e.headersList.get(`sec-websocket-extensions`);a!==null&&(this.#r=a);let o=e.headersList.get(`sec-websocket-protocol`);if(o!==null&&(this.#n=o),g(`open`,this),j.open.hasSubscribers){let t=e.headersList.entries;j.open.publish({address:F(e.socket),protocol:this.#n,extensions:this.#r,websocket:this,handshakeResponse:{status:e.status,statusText:e.statusText,headers:t}})}}#d(e,t){if(this.#o.readyState!==s.OPEN)return;let n;if(e===u.TEXT)try{n=_(t)}catch{S(this.#o,1007,`Received invalid UTF-8 in text frame.`);return}else e===u.BINARY&&(n=this.#c===`blob`?new Blob([t]):v(t));g(`message`,this,O,{origin:this.#s.origin,data:n})}#f(){this.#o.socket.resume()}#p(){let e=this.#o.closeState.has(c.SENT)&&this.#o.closeState.has(c.RECEIVED),t=1005,n=``,r=this.#l?.closingInfo;r&&!r.error&&(t=r.code??1005,n=r.reason),this.#o.readyState=s.CLOSED,this.#o.closeState.has(c.RECEIVED)||(t=1006,g(`error`,this,(e,t)=>new E(e,t),{error:TypeError(n)})),g(`close`,this,(e,t)=>new D(e,t),{wasClean:e,code:t,reason:n}),j.close.hasSubscribers&&j.close.publish({websocket:this,code:t,reason:n})}static{P=(e,t)=>{if(Buffer.isBuffer(t)){if(t.length>125)throw TypeError(`A PING frame cannot have a body larger than 125 bytes.`)}else if(t!==void 0)throw TypeError(`Expected buffer payload`);let n=e.#o.readyState;if(f(n)&&!p(n)&&!m(n)){let n=new A(t);e.#o.socket.write(n.createFrame(u.PING))}},r.is.WebSocket=e=>typeof e==`object`&&!!e&&#o in e}};I.CONNECTING=I.prototype.CONNECTING=s.CONNECTING,I.OPEN=I.prototype.OPEN=s.OPEN,I.CLOSING=I.prototype.CLOSING=s.CLOSING,I.CLOSED=I.prototype.CLOSED=s.CLOSED,Object.defineProperties(I.prototype,{CONNECTING:o,OPEN:o,CLOSING:o,CLOSED:o,url:w,readyState:w,bufferedAmount:w,onopen:w,onerror:w,onclose:w,close:w,onmessage:w,binaryType:w,send:w,extensions:w,protocol:w,[Symbol.toStringTag]:{value:`WebSocket`,writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(I,{CONNECTING:o,OPEN:o,CLOSING:o,CLOSED:o}),r.converters[`sequence<DOMString>`]=r.sequenceConverter(r.converters.DOMString),r.converters[`DOMString or sequence<DOMString>`]=function(e,t,n){return r.util.Type(e)===r.util.Types.OBJECT&&Symbol.iterator in e?r.converters[`sequence<DOMString>`](e):r.converters.DOMString(e,t,n)},r.converters.WebSocketInit=r.dictionaryConverter([{key:`protocols`,converter:r.converters[`DOMString or sequence<DOMString>`],defaultValue:()=>[]},{key:`dispatcher`,converter:r.converters.any,defaultValue:()=>T()},{key:`headers`,converter:r.nullableConverter(r.converters.HeadersInit)}]),r.converters[`DOMString or sequence<DOMString> or WebSocketInit`]=function(e){return r.util.Type(e)===r.util.Types.OBJECT&&!(Symbol.iterator in e)?r.converters.WebSocketInit(e):{protocols:r.converters[`DOMString or sequence<DOMString>`](e)}},r.converters.WebSocketSendData=function(e){return r.util.Type(e)===r.util.Types.OBJECT&&(r.is.Blob(e)||r.is.BufferSource(e))?e:r.converters.USVString(e)},t.exports={WebSocket:I,ping:P}})),ST=q(((e,t)=>{var{webidl:n}=qC(),{validateCloseCodeAndReason:r}=hT(),{kConstruct:i}=OC(),{kEnumerableProperty:a}=$();function o(){class e extends DOMException{get reason(){return``}}return new e().reason===void 0?new Proxy(DOMException,{construct(e,t,n){let r=Reflect.construct(e,t,e);return Object.setPrototypeOf(r,n.prototype),r}}):DOMException}var s,c=class e extends o(){#e;#t;constructor(e=``,t=void 0){if(e=n.converters.DOMString(e,`WebSocketError`,`message`),super(e,`WebSocketError`),t===i)return;t!==null&&(t=n.converters.WebSocketCloseInfo(t));let a=t.closeCode??null,o=t.reason??``;r(a,o),o.length!==0&&a===null&&(a=1e3),this.#e=a,this.#t=o}get closeCode(){return this.#e}get reason(){return this.#t}static{s=(t,n,r)=>{let a=new e(t,i);return a.#e=n,a.#t=r,a},n.is.WebSocketError=e=>typeof e==`object`&&!!e&&#t in e}};Object.defineProperties(c.prototype,{closeCode:a,reason:a,[Symbol.toStringTag]:{value:`WebSocketError`,writable:!1,enumerable:!1,configurable:!0}}),t.exports={WebSocketError:c,createUnvalidatedWebSocketError:s}})),CT=q(((e,t)=>{var{addAbortListener:n}=J(`node:events`),{environmentSettingsObject:r,readableStreamClose:i}=JC(),{states:a,opcodes:o,sentCloseFrameState:s}=mT(),{webidl:c}=qC(),{getURLRecord:l,isValidSubprotocol:u,isEstablished:d,utf8Decode:f}=hT(),{establishWebSocketConnection:p,failWebsocketConnection:m,closeWebSocketConnection:h}=_T(),{channels:g}=NC(),{WebsocketFrameSend:_}=gT(),{ByteParser:v}=yT(),{WebSocketError:y,createUnvalidatedWebSocketError:b}=ST(),{kEnumerableProperty:x}=$(),{utf8DecodeBytes:S}=WC(),C=!1,w=class{#e;#t;#n;#r;#i;#a;#o=!1;#s={onConnectionEstablished:(e,t)=>this.#u(e,t),onMessage:(e,t)=>this.#d(e,t),onParserError:e=>m(this.#s,null,e.message),onParserDrain:()=>this.#s.socket.resume(),onSocketData:e=>{this.#c.write(e)||this.#s.socket.pause()},onSocketError:e=>{this.#s.readyState=a.CLOSING,g.socketError.hasSubscribers&&g.socketError.publish(e),this.#s.socket.destroy()},onSocketClose:()=>queueMicrotask(()=>this.#f()),onPing:()=>{},onPong:()=>{},readyState:a.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#c;constructor(e,t=void 0){C||=(process.emitWarning(`WebSocketStream is experimental! Expect it to change at any time.`,{code:`UNDICI-WSS`}),!0),c.argumentLengthCheck(arguments,1,`WebSocket`),e=c.converters.USVString(e),t!==null&&(t=c.converters.WebSocketStreamOptions(t));let i=r.settingsObject.baseUrl,o=l(e,i),s=t.protocols;if(s.length!==new Set(s.map(e=>e.toLowerCase())).size||s.length>0&&!s.every(e=>u(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);if(this.#e=o.toString(),this.#t=Promise.withResolvers(),this.#n=Promise.withResolvers(),t.signal!=null){let e=t.signal;if(e.aborted){this.#t.reject(e.reason),this.#n.reject(e.reason);return}n(e,()=>{d(this.#s.readyState)||(m(this.#s),this.#s.readyState=a.CLOSING,this.#t.reject(e.reason),this.#n.reject(e.reason),this.#o=!0)})}let f=r.settingsObject;this.#s.controller=p(o,s,f,this.#s,t)}get url(){return this.#e.toString()}get opened(){return this.#t.promise}get closed(){return this.#n.promise}close(e=void 0){e!==null&&(e=c.converters.WebSocketCloseInfo(e));let t=e.closeCode??null,n=e.reason;h(this.#s,t,n,!0)}#l(e){e=c.converters.WebSocketStreamWrite(e);let t=Promise.withResolvers(),n=null,r=null;if(c.is.BufferSource(e))n=new Uint8Array(ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e.slice()),r=o.BINARY;else{let i;try{i=c.converters.DOMString(e)}catch(e){return t.reject(e),t.promise}n=new TextEncoder().encode(i),r=o.TEXT}if(!this.#s.closeState.has(s.SENT)&&!this.#s.closeState.has(s.RECEIVED)){let e=new _(n);this.#s.socket.write(e.createFrame(r),()=>{t.resolve(void 0)})}else t.resolve(void 0);return t.promise}#u(e,t){this.#s.socket=e.socket;let n=this.#s.controller.dispatcher?.webSocketOptions?.maxFragments,r=this.#s.controller.dispatcher?.webSocketOptions?.maxPayloadSize,i=new v(this.#s,t,{maxFragments:n,maxPayloadSize:r});i.on(`drain`,()=>this.#s.onParserDrain()),i.on(`error`,e=>this.#s.onParserError(e)),this.#c=i,this.#s.readyState=a.OPEN;let o=e.headersList.get(`sec-websocket-extensions`)??``,s=e.headersList.get(`sec-websocket-protocol`)??``,c=new ReadableStream({start:e=>{this.#i=e},pull:()=>this.#m(),cancel:e=>this.#h(e)}),l=new WritableStream({start:e=>{this.#a=e},write:e=>this.#l(e),close:()=>h(this.#s,null,null),abort:e=>this.#p(e)});this.#r=c,this.#t.resolve({extensions:o,protocol:s,readable:c,writable:l})}#d(e,t){if(this.#s.readyState!==a.OPEN)return;let n;if(e===o.TEXT)try{n=f(t)}catch{m(this.#s,1007,`Received invalid UTF-8 in text frame.`);return}else e===o.BINARY&&(n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength));this.#i.enqueue(n),this.#i.desiredSize<=0&&this.#s.socket.pause()}#f(){let e=this.#s.closeState.has(s.SENT)&&this.#s.closeState.has(s.RECEIVED);if(this.#s.readyState=a.CLOSED,this.#o)return;this.#s.wasEverConnected||this.#t.reject(new y(`Socket never opened`));let t=this.#c?.closingInfo,n=t?.code??1005;this.#s.closeState.has(s.RECEIVED)||(n=1006);let r=t?.reason==null?``:S(Buffer.from(t.reason));if(e)i(this.#i),this.#a.error(new DOMException(`A closed WebSocketStream cannot be written to`,`InvalidStateError`)),this.#n.resolve({closeCode:n,reason:r});else{let e=b(`unclean close`,n,r);this.#i?.error(e),this.#a?.error(e),this.#n.reject(e)}}#p(e){let t=null,n=``;c.is.WebSocketError(e)&&(t=e.closeCode,n=e.reason),h(this.#s,t,n)}#m(){this.#s.socket.resume()}#h(e){this.#p(e)}};Object.defineProperties(w.prototype,{url:x,opened:x,closed:x,close:x,[Symbol.toStringTag]:{value:`WebSocketStream`,writable:!1,enumerable:!1,configurable:!0}}),c.converters.WebSocketStreamOptions=c.dictionaryConverter([{key:`protocols`,converter:c.sequenceConverter(c.converters.USVString),defaultValue:()=>[]},{key:`signal`,converter:c.nullableConverter(c.converters.AbortSignal),defaultValue:()=>null}]),c.converters.WebSocketCloseInfo=c.dictionaryConverter([{key:`closeCode`,converter:e=>c.converters[`unsigned short`](e,c.attributes.EnforceRange)},{key:`reason`,converter:c.converters.USVString,defaultValue:()=>``}]),c.converters.WebSocketStreamWrite=function(e){return typeof e==`string`?c.converters.USVString(e):c.converters.BufferSource(e)},t.exports={WebSocketStream:w}})),wT=q(((e,t)=>{var{makeRequest:n}=rT();function r(e){return e.indexOf(`\0`)===-1}function i(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)<48||e.charCodeAt(t)>57)return!1;return!0}function a(e,t,r,i){let a=r===`no cors`?`no-cors`:`cors`;i&&a===`no-cors`&&(a=`same-origin`);let o=`include`;return r===`anonymous`&&(o=`same-origin`),n({urlList:[e],destination:t,mode:a,credentials:o,useURLCredentials:!0})}t.exports={isValidLastEventId:r,isASCIINumber:i,createPotentialCORSRequest:a}})),TT=q(((e,t)=>{var n=J(`node:buffer`),{Transform:r}=J(`node:stream`),{isASCIINumber:i,isValidLastEventId:a}=wT(),o=[239,187,191],s=10,c=13,l=58,u=32,d=n.kStringMaxLength,f=Buffer.from(`data`),p=Buffer.from(`event`),m=Buffer.from(`id`),h=Buffer.from(`retry`);function g(e,t){if(t>=e.length)return!1;for(let n=t;n<e.length;n++)if(e[n]<48||e[n]>57)return!1;return!0}function _(e,t){for(let n=t;n<e.length;n++)if(e[n]===0)return!1;return!0}function v(e,t,n){if(t!==n.length)return!1;for(let r=0;r<t;r++)if(e[r]!==n[r])return!1;return!0}function y(){let e=Error(`EventSource message size exceeded`);return e.aborted=!1,e}t.exports={EventSourceStream:class extends r{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;eventDataSize=0;maxEventSize;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},this.maxEventSize=e.maxEventSize??d,e.push&&(this.push=e.push)}_transform(e,t,n){if(e.length===0){n();return}if(this.chunks.push(e),this.checkBOM&&this.handleBOM()){n();return}for(;this.hasCurrentByte();){let e=this.currentByte();if(this.eventEndCheck){if(this.crlfCheck){if(e===s){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(e===s||e===c){e===c&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(e===s||e===c){e===c&&(this.crlfCheck=!0);try{this.parseLine(this.readLine(),this.event)}catch(e){n(e);return}this.consumeCurrentByte(),this.eventEndCheck=!0;continue}this.advanceCursor()}n()}parseLine(e,t){if(e.length===0)return;let n=e.indexOf(l);if(n===0)return;let r=e.length,i=e.length;if(n!==-1&&(r=n,i=n+1,e[i]===u&&++i),v(e,r,f)){let n=e.length-i,r=this.eventDataSize+(t.data===void 0?0:1)+n;if(this.maxEventSize>0&&r>this.maxEventSize)throw y();let a=e.toString(`utf8`,i);t.data===void 0?t.data=a:t.data+=`\n${a}`,this.eventDataSize=r;return}if(v(e,r,h)){g(e,i)&&(t.retry=e.toString(`utf8`,i));return}if(v(e,r,m)){_(e,i)&&(t.id=e.toString(`utf8`,i));return}if(v(e,r,p)){let n=e.toString(`utf8`,i);n.length>0&&(t.event=n)}}processEvent(e){e.retry&&i(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id!==void 0&&a(e.id)&&(this.state.lastEventId=e.id),e.data!==void 0&&this.push({type:e.event||`message`,options:{data:e.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event.data=void 0,this.event.event=void 0,this.event.id=void 0,this.event.retry=void 0,this.eventDataSize=0}hasPendingEvent(){return this.event.data!==void 0||this.event.event!==void 0||this.event.id!==void 0||this.event.retry!==void 0}hasCurrentByte(){return this.chunkIndex<this.chunks.length&&this.pos<this.chunks[this.chunkIndex].length}currentByte(){return this.chunks[this.chunkIndex][this.pos]}consumeCurrentByte(){this.advanceCursor(),this.syncLineStartToCursor()}advanceCursor(){for(this.pos++;this.chunkIndex<this.chunks.length&&this.pos>=this.chunks[this.chunkIndex].length;)this.chunkIndex++,this.pos=0}syncLineStartToCursor(){this.lineChunkIndex=this.chunkIndex,this.linePos=this.pos,this.dropConsumedChunks()}dropConsumedChunks(){for(;this.lineChunkIndex>0;)this.chunks.shift(),this.lineChunkIndex--,this.chunkIndex--;this.chunkIndex===this.chunks.length&&(this.chunks.length=0,this.chunkIndex=0,this.pos=0,this.lineChunkIndex=0,this.linePos=0)}readLine(){if(this.lineChunkIndex===this.chunkIndex)return this.chunks[this.chunkIndex].subarray(this.linePos,this.pos);let e=[],t=0;for(let n=this.lineChunkIndex;n<=this.chunkIndex;n++){let r=this.chunks[n],i=n===this.lineChunkIndex?this.linePos:0,a=n===this.chunkIndex?this.pos:r.length,o=r.subarray(i,a);t+=o.length,e.push(o)}return Buffer.concat(e,t)}peekBufferedByte(e){let t=this.lineChunkIndex,n=this.linePos;for(;t<this.chunks.length;){let r=this.chunks[t],i=r.length-n;if(e<i)return r[n+e];e-=i,t++,n=0}}discardLeadingBytes(e){for(;e>0&&this.lineChunkIndex<this.chunks.length;){let t=this.chunks[this.lineChunkIndex].length-this.linePos;e<t?(this.linePos+=e,e=0):(e-=t,this.lineChunkIndex++,this.linePos=0)}this.chunkIndex=this.lineChunkIndex,this.pos=this.linePos,this.dropConsumedChunks()}handleBOM(){let e=this.peekBufferedByte(0),t=this.peekBufferedByte(1),n=this.peekBufferedByte(2);return t===void 0?(e===o[0]||(this.checkBOM=!1),!0):n===void 0?e===o[0]&&t===o[1]||(this.checkBOM=!1,!1):(e===o[0]&&t===o[1]&&n===o[2]&&this.discardLeadingBytes(3),this.checkBOM=!1,!this.hasCurrentByte())}}}})),ET=q(((e,t)=>{var{pipeline:n}=J(`node:stream`),{fetching:r}=aT(),{webidl:i}=qC(),{EventSourceStream:a}=TT(),{parseMIMEType:o}=KC(),{createFastMessageEvent:s}=pT(),{isNetworkError:c}=nT(),{isValidHeaderValue:l,kEnumerableProperty:u}=$(),{environmentSettingsObject:d}=JC(),{createPotentialCORSRequest:f}=wT(),{getGlobalDispatcher:p}=Lw(),{isomorphicDecode:m}=GC(),h=new TextEncoder,g=!1,_=3e3,v=0,y=1,b=2,x=`anonymous`,S=`use-credentials`,C=class extends EventTarget{#e={open:null,error:null,message:null};#t;#n=!1;#r=v;#i=null;#a=null;#o;#s;constructor(e,t={}){super(),i.util.markAsUncloneable(this);let n=`EventSource constructor`;i.argumentLengthCheck(arguments,1,n),g||(g=!0,process.emitWarning(`EventSource is experimental, expect them to change at any time.`,{code:`UNDICI-ES`})),e=i.converters.USVString(e),t=i.converters.EventSourceInitDict(t,n,`eventSourceInitDict`),this.#o=t.node.dispatcher||t.dispatcher,this.#s={lastEventId:``,reconnectionTime:t.node.reconnectionTime};let r=d,a;try{a=new URL(e,r.settingsObject.baseUrl),this.#s.origin=a.origin}catch(e){throw new DOMException(e,`SyntaxError`)}this.#t=a.href;let o=x;t.withCredentials===!0&&(o=S,this.#n=!0);let s=f(a,``,o);s.client=d.settingsObject,s.headersList.set(`Accept`,`text/event-stream`),s.cache=`no-store`,s.initiator=`other`,this.#i=s,this.#c()}get readyState(){return i.brandCheck(this,i.is.EventSource),this.#r}get url(){return i.brandCheck(this,i.is.EventSource),this.#t}get withCredentials(){return i.brandCheck(this,i.is.EventSource),this.#n}#c(){if(this.#r===b)return;this.#r=v;let e={request:this.#i,dispatcher:this.#o};e.processResponseEndOfBody=e=>{if(!c(e))return this.#l()},e.processResponse=e=>{if(c(e)){if(e.aborted){this.close(),this.dispatchEvent(new Event(`error`));return}this.#l();return}let t=e.headersList.get(`content-type`,!0),r=t===null?`failure`:o(t),i=r!==`failure`&&r.essence===`text/event-stream`;if(e.status!==200||i===!1){this.close(),this.dispatchEvent(new Event(`error`));return}this.#r=y,this.dispatchEvent(new Event(`open`)),this.#s.origin=e.urlList[e.urlList.length-1].origin;let l=new a({eventSourceSettings:this.#s,maxEventSize:this.#o.eventSourceOptions?.maxEventSize,push:e=>{this.dispatchEvent(s(e.type,e.options))}});n(e.body.stream,l,e=>{e?.aborted===!1&&(this.close(),this.dispatchEvent(new Event(`error`)))})},this.#a=r(e)}#l(){this.#r!==b&&(this.#r=v,this.dispatchEvent(new Event(`error`)),setTimeout(()=>{if(this.#r===v){if(this.#i.headersList.delete(`last-event-id`,!0),this.#s.lastEventId.length){let e=m(h.encode(this.#s.lastEventId));l(e)&&this.#i.headersList.set(`last-event-id`,e,!0)}this.#c()}},this.#s.reconnectionTime)?.unref())}close(){i.brandCheck(this,i.is.EventSource),this.#r!==b&&(this.#r=b,this.#a.abort(),this.#i=null)}get onopen(){return i.brandCheck(this,i.is.EventSource),this.#e.open}set onopen(e){i.brandCheck(this,i.is.EventSource),this.#e.open&&this.removeEventListener(`open`,this.#e.open);let t=i.converters.EventHandlerNonNull(e);t===null?this.#e.open=null:(this.addEventListener(`open`,t),this.#e.open=e)}get onmessage(){return i.brandCheck(this,i.is.EventSource),this.#e.message}set onmessage(e){i.brandCheck(this,i.is.EventSource),this.#e.message&&this.removeEventListener(`message`,this.#e.message);let t=i.converters.EventHandlerNonNull(e);t===null?this.#e.message=null:(this.addEventListener(`message`,t),this.#e.message=e)}get onerror(){return i.brandCheck(this,i.is.EventSource),this.#e.error}set onerror(e){i.brandCheck(this,i.is.EventSource),this.#e.error&&this.removeEventListener(`error`,this.#e.error);let t=i.converters.EventHandlerNonNull(e);t===null?this.#e.error=null:(this.addEventListener(`error`,t),this.#e.error=e)}static{i.is.EventSource=e=>typeof e==`object`&&!!e&&#e in e}},w={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:v,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:y,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:b,writable:!1}};Object.defineProperties(C,w),Object.defineProperties(C.prototype,w),Object.defineProperties(C.prototype,{close:u,onerror:u,onmessage:u,onopen:u,readyState:u,url:u,withCredentials:u}),i.converters.EventSourceInitDict=i.dictionaryConverter([{key:`withCredentials`,converter:i.converters.boolean,defaultValue:()=>!1},{key:`dispatcher`,converter:i.converters.any,defaultValue:()=>p()},{key:`node`,converter:i.dictionaryConverter([{key:`reconnectionTime`,converter:i.converters[`unsigned long`],defaultValue:()=>_},{key:`dispatcher`,converter:i.converters.any}]),defaultValue:()=>({})}]),t.exports={EventSource:C,defaultReconnectionTime:_}})),DT=q(((e,t)=>{var n=tw(),r=FC(),i=iw(),a=aw(),o=ow(),s=sw(),c=cw(),l=fw(),u=dw(),d=pw(),f=hw(),p=gw(),m=Q(),h=$(),{InvalidArgumentError:g}=m,_=ww(),v=LC(),y=kw(),{MockCallHistory:b,MockCallHistoryLog:x}=Aw(),S=Nw(),C=jw(),w=Iw(),T=Tw(),E=mw(),{getGlobalDispatcher:D,setGlobalDispatcher:O}=Lw(),k=Rw(),A=zw();Object.assign(r.prototype,_),t.exports.Dispatcher=r,t.exports.Client=n,t.exports.Pool=i,t.exports.BalancedPool=a,t.exports.RoundRobinPool=o,t.exports.Agent=s,t.exports.Dispatcher1Wrapper=c,t.exports.ProxyAgent=l,t.exports.Socks5ProxyAgent=u,t.exports.EnvHttpProxyAgent=d,t.exports.RetryAgent=f,t.exports.H2CClient=p,t.exports.RetryHandler=E,t.exports.DecoratorHandler=k,t.exports.RedirectHandler=A,t.exports.interceptors={redirect:Bw(),responseError:Vw(),retry:Hw(),dump:Uw(),dns:Ww(),cache:Xw(),decompress:Zw(),deduplicate:$w()},t.exports.cacheStores={MemoryCacheStore:Jw()};var j=eT();t.exports.cacheStores.SqliteCacheStore=j,t.exports.buildConnector=v,t.exports.errors=m,t.exports.util={parseHeaders:h.parseHeaders,headerNameToString:h.headerNameToString};function M(e){return(t,n,r)=>{if(typeof n==`function`&&(r=n,n=null),!t||typeof t!=`string`&&typeof t!=`object`&&!(t instanceof URL))throw new g(`invalid url`);if(n!=null&&typeof n!=`object`)throw new g(`invalid opts`);if(n&&n.path!=null){if(typeof n.path!=`string`)throw new g(`invalid opts.path`);let e=n.path;n.path.startsWith(`/`)||(e=`/${e}`),t=new URL(h.parseOrigin(t).origin+e)}else n||=typeof t==`object`?t:{},t=h.parseURL(t);let{agent:i,dispatcher:a=D(),...o}=n;if(i)throw new g(`unsupported opts.agent. Did you mean opts.client?`);return e.call(a,{...o,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:n.method||(n.body?`PUT`:`GET`)},r)}}t.exports.setGlobalDispatcher=O,t.exports.getGlobalDispatcher=D;var N=aT().fetch,P=typeof __filename<`u`?__filename:void 0;function F(e,t){if(!e||typeof e!=`object`)return;let n=typeof e.stack==`string`?e.stack:``,r=t.replace(/\\/g,`/`);if(n&&(n.includes(t)||n.includes(r)))return;let i={};if(Error.captureStackTrace(i,F),!i.stack)return;let a=i.stack.split(`
145
+ `)}close(){this.#n.close()}get(e){r(e);let t=this.#f(e);return t?{body:t.body?Buffer.from(t.body.buffer,t.body.byteOffset,t.body.byteLength):void 0,statusCode:t.statusCode,statusMessage:t.statusMessage,headers:t.headers?JSON.parse(t.headers):void 0,etag:t.etag?t.etag:void 0,vary:t.vary?JSON.parse(t.vary):void 0,cacheControlDirectives:t.cacheControlDirectives?JSON.parse(t.cacheControlDirectives):void 0,cachedAt:t.cachedAt,staleAt:t.staleAt,deleteAt:t.deleteAt}:void 0}set(e,t){r(e);let n=this.#d(e),i=Array.isArray(t.body)?Buffer.concat(t.body):t.body,a=i?.byteLength;if(a&&a>this.#e)return;let o=this.#f(e,!0);o?this.#i.run(i,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.vary?JSON.stringify(t.vary):null,t.cachedAt,t.staleAt,o.id):(this.#a.run(n,e.method,i,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.vary?JSON.stringify(t.vary):null,t.cachedAt,t.staleAt),this.#u())}createWriteStream(e,t){r(e),i(t);let a=0,o=[],s=this;return new n({decodeStrings:!0,write(e,t,n){a+=e.byteLength,a<=s.#e?o.push(e):this.destroy(),n()},final(n){s.set(e,{...t,body:o}),n()}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);this.#s.run(this.#d(e))}#u(){if(Number.isFinite(this.#t)&&this.size<=this.#t)return 0;{let e=this.#o.run(Date.now()).changes;if(e)return e}{let e=this.#l?.run(Math.max(Math.floor(this.#t*.1),1)).changes;if(e)return e}return 0}get size(){let{total:e}=this.#c.get();return e}#d(e){return`${e.origin}/${e.path}`}#f(e,t=!1){let n=this.#d(e),{headers:r,method:i}=e,a=this.#r.all(n,i);if(a.length===0)return;let o=Date.now();for(let e of a){if(o>=e.deleteAt&&!t)continue;let n=!0;if(e.vary){let t=JSON.parse(e.vary);for(let e in t)if(!c(r[e],t[e])){n=!1;break}}if(n)return e}}};function c(e,t){if(e==null&&t==null)return!0;if(e==null&&t!=null||e!=null&&t==null)return!1;if(Array.isArray(e)&&Array.isArray(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}return e===t}})),rT=q(((e,t)=>{var{kConstruct:n}=AC(),{kEnumerableProperty:r}=$(),{iteratorMixin:i,isValidHeaderName:a,isValidHeaderValue:o}=XC(),{webidl:s}=YC(),c=J(`node:assert`),l=J(`node:util`);function u(e){return e===10||e===13||e===9||e===32}function d(e){let t=0,n=e.length;for(;n>t&&u(e.charCodeAt(n-1));)--n;for(;n>t&&u(e.charCodeAt(t));)++t;return t===0&&n===e.length?e:e.substring(t,n)}function f(e,t){if(Array.isArray(t))for(let n=0;n<t.length;++n){let r=t[n];if(r.length!==2)throw s.errors.exception({header:`Headers constructor`,message:`expected name/value pair to be length 2, found ${r.length}.`});p(e,r[0],r[1])}else if(typeof t==`object`&&t){let n=Object.keys(t);for(let r=0;r<n.length;++r)p(e,n[r],t[n[r]])}else throw s.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})}function p(e,t,n){if(n=d(n),!a(t))throw s.errors.invalidArgument({prefix:`Headers.append`,value:t,type:`header name`});if(!o(n))throw s.errors.invalidArgument({prefix:`Headers.append`,value:n,type:`header value`});if(_(e)===`immutable`)throw TypeError(`immutable`);return y(e).append(t,n,!1)}function m(e){let t=y(e);if(!t)return[];if(t.sortedMap)return t.sortedMap;let n=[],r=t.toSortedArray(),i=t.cookies;if(i===null||i.length===1)return t.sortedMap=r;for(let e=0;e<r.length;++e){let{0:t,1:a}=r[e];if(t===`set-cookie`)for(let e=0;e<i.length;++e)n.push([t,i[e]]);else n.push([t,a])}return t.sortedMap=n}function h(e,t){return e[0]<t[0]?-1:1}var g=class e{cookies=null;sortedMap;headersMap;constructor(t){t instanceof e?(this.headersMap=new Map(t.headersMap),this.sortedMap=t.sortedMap,this.cookies=t.cookies===null?null:[...t.cookies]):(this.headersMap=new Map(t),this.sortedMap=null)}contains(e,t){return this.headersMap.has(t?e:e.toLowerCase())}clear(){this.headersMap.clear(),this.sortedMap=null,this.cookies=null}append(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase(),i=this.headersMap.get(r);if(i){let e=r===`cookie`?`; `:`, `;this.headersMap.set(r,{name:i.name,value:`${i.value}${e}${t}`})}else this.headersMap.set(r,{name:e,value:t});r===`set-cookie`&&(this.cookies??=[]).push(t)}set(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase();r===`set-cookie`&&(this.cookies=[t]),this.headersMap.set(r,{name:e,value:t})}delete(e,t){this.sortedMap=null,t||(e=e.toLowerCase()),e===`set-cookie`&&(this.cookies=null),this.headersMap.delete(e)}get(e,t){return this.headersMap.get(t?e:e.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:e,1:{value:t}}of this.headersMap)yield[e,t]}get entries(){let e={};if(this.headersMap.size!==0)for(let{name:t,value:n}of this.headersMap.values())e[t]=n;return e}rawValues(){return this.headersMap.values()}get entriesList(){let e=[];if(this.headersMap.size!==0)for(let{0:t,1:{name:n,value:r}}of this.headersMap)if(t===`set-cookie`)for(let t of this.cookies)e.push([n,t]);else e.push([n,r]);return e}toSortedArray(){let e=this.headersMap.size,t=Array(e);if(e<=32){if(e===0)return t;let n=this.headersMap[Symbol.iterator](),r=n.next().value;t[0]=[r[0],r[1].value],c(r[1].value!==null);for(let r=1,i=0,a=0,o=0,s=0,l,u;r<e;++r){for(u=n.next().value,l=t[r]=[u[0],u[1].value],c(l[1]!==null),o=0,a=r;o<a;)s=o+(a-o>>1),t[s][0]<=l[0]?o=s+1:a=s;if(r!==s){for(i=r;i>o;)t[i]=t[--i];t[o]=l}}if(!n.next().done)throw TypeError(`Unreachable`);return t}{let e=0;for(let{0:n,1:{value:r}}of this.headersMap)t[e++]=[n,r],c(r!==null);return t.sort(h)}}},_,v,y,b,x=class{#e;#t;constructor(e=void 0){s.util.markAsUncloneable(this),e!==n&&(this.#t=new g,this.#e=`none`,e!==void 0&&(e=s.converters.HeadersInit(e,`Headers constructor`,`init`),f(this,e)))}append(e,t){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,2,`Headers.append`);let n=`Headers.append`;return e=s.converters.ByteString(e,n,`name`),t=s.converters.ByteString(t,n,`value`),p(this,e,t)}delete(e){if(s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,1,`Headers.delete`),e=s.converters.ByteString(e,`Headers.delete`,`name`),!a(e))throw s.errors.invalidArgument({prefix:`Headers.delete`,value:e,type:`header name`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.contains(e,!1)&&this.#t.delete(e,!1)}get(e){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,1,`Headers.get`);let t=`Headers.get`;if(e=s.converters.ByteString(e,t,`name`),!a(e))throw s.errors.invalidArgument({prefix:t,value:e,type:`header name`});return this.#t.get(e,!1)}has(e){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,1,`Headers.has`);let t=`Headers.has`;if(e=s.converters.ByteString(e,t,`name`),!a(e))throw s.errors.invalidArgument({prefix:t,value:e,type:`header name`});return this.#t.contains(e,!1)}set(e,t){s.brandCheck(this,s.is.Headers),s.argumentLengthCheck(arguments,2,`Headers.set`);let n=`Headers.set`;if(e=s.converters.ByteString(e,n,`name`),t=s.converters.ByteString(t,n,`value`),t=d(t),!a(e))throw s.errors.invalidArgument({prefix:n,value:e,type:`header name`});if(!o(t))throw s.errors.invalidArgument({prefix:n,value:t,type:`header value`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.set(e,t,!1)}getSetCookie(){s.brandCheck(this,s.is.Headers);let e=this.#t.cookies;return e?[...e]:[]}[l.inspect.custom](e,t){return t.depth??=e,`Headers ${l.formatWithOptions(t,this.#t.entries)}`}static{_=e=>e.#e,v=(e,t)=>{e.#e=t},y=e=>e.#t,b=(e,t)=>{e.#t=t},s.is.Headers=e=>typeof e==`object`&&!!e&&#e in e}};i(`Headers`,x,m,0,1,s.is.Headers),Object.defineProperties(x.prototype,{append:r,delete:r,get:r,has:r,set:r,getSetCookie:r,[Symbol.toStringTag]:{value:`Headers`,configurable:!0},[l.inspect.custom]:{enumerable:!1}}),s.converters.HeadersInit=function(e,t,n){if(s.util.Type(e)===s.util.Types.OBJECT){let r=Reflect.get(e,Symbol.iterator);if(!l.types.isProxy(e)&&r===x.prototype.entries)try{return y(e).entriesList}catch{}return typeof r==`function`?s.converters[`sequence<sequence<ByteString>>`](e,t,n,r.bind(e)):s.converters[`record<ByteString, ByteString>`](e,t,n)}throw s.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})},t.exports={fill:f,compareHeaderName:h,Headers:x,HeadersList:g,getHeadersGuard:_,setHeadersGuard:v,setHeadersList:b,getHeadersList:y}})),iT=q(((e,t)=>{var{Headers:n,HeadersList:r,fill:i,getHeadersGuard:a,setHeadersGuard:o,setHeadersList:s}=rT(),{extractBody:c,cloneBody:l,mixinBody:u,streamRegistry:d,bodyUnusable:f}=ew(),p=$(),m=J(`node:util`),{kEnumerableProperty:h}=p,{isValidReasonPhrase:g,isCancelled:_,isAborted:v,isErrorLike:y,environmentSettingsObject:b}=XC(),{redirectStatusSet:x,nullBodyStatus:S}=WC(),{webidl:C}=YC(),{URLSerializer:w}=JC(),{kConstruct:T}=AC(),E=J(`node:assert`),{isomorphicEncode:D,serializeJavascriptValueToJSONString:O}=qC(),k=new TextEncoder(`utf-8`),A,j,M,N,P=class{#e;#t;static error(){return z(L(),`immutable`)}static json(e,t=void 0){C.argumentLengthCheck(arguments,1,`Response.json`),t=C.converters.ResponseInit(t);let n=c(k.encode(O(e))),r=z(I({}),`response`);return re(r,t,{body:n[0],type:`application/json`}),r}static redirect(e,t=302){C.argumentLengthCheck(arguments,1,`Response.redirect`),e=C.converters.USVString(e),t=C.converters[`unsigned short`](t);let n;try{n=new URL(e,b.settingsObject.baseUrl)}catch(t){throw TypeError(`Failed to parse URL from ${e}`,{cause:t})}if(!x.has(t))throw RangeError(`Invalid status code ${t}`);let r=z(I({}),`immutable`);r.#t.status=t;let i=D(w(n));return r.#t.headersList.append(`location`,i,!0),r}constructor(e=null,t=void 0){if(C.util.markAsUncloneable(this),e===T)return;e!==null&&(e=C.converters.BodyInit(e,`Response`,`body`)),t=C.converters.ResponseInit(t),this.#t=I({}),this.#e=new n(T),o(this.#e,`response`),s(this.#e,this.#t.headersList);let r=null;if(e!=null){let[t,n]=c(e);r={body:t,type:n}}re(this,t,r)}get type(){return C.brandCheck(this,C.is.Response),this.#t.type}get url(){C.brandCheck(this,C.is.Response);let e=this.#t.urlList,t=e[e.length-1]??null;return t===null?``:w(t,!0)}get redirected(){return C.brandCheck(this,C.is.Response),this.#t.urlList.length>1}get status(){return C.brandCheck(this,C.is.Response),this.#t.status}get ok(){return C.brandCheck(this,C.is.Response),this.#t.status>=200&&this.#t.status<=299}get statusText(){return C.brandCheck(this,C.is.Response),this.#t.statusText}get headers(){return C.brandCheck(this,C.is.Response),this.#e}get body(){return C.brandCheck(this,C.is.Response),this.#t.body?this.#t.body.stream:null}get bodyUsed(){return C.brandCheck(this,C.is.Response),!!this.#t.body&&p.isDisturbed(this.#t.body.stream)}clone(){if(C.brandCheck(this,C.is.Response),f(this.#t))throw C.errors.exception({header:`Response.clone`,message:`Body has already been consumed.`});let e=F(this.#t);return this.#t.urlList.length!==0&&this.#t.body?.stream&&d.register(this,new WeakRef(this.#t.body.stream)),z(e,a(this.#e))}[m.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${m.formatWithOptions(t,n)}`}static{A=e=>e.#e,j=(e,t)=>{e.#e=t},M=e=>e.#t,N=(e,t)=>{e.#t=t},C.is.Response=e=>typeof e==`object`&&!!e&&#t in e}};u(P,M,C.is.Response),Object.defineProperties(P.prototype,{type:h,url:h,status:h,ok:h,redirected:h,statusText:h,headers:h,clone:h,body:h,bodyUsed:h,[Symbol.toStringTag]:{value:`Response`,configurable:!0}}),Object.defineProperties(P,{json:h,redirect:h,error:h});function F(e){if(e.internalResponse)return te(F(e.internalResponse),e.type);let t=I({...e,body:null});return e.body!=null&&(t.body=l(e.body)),t}function I(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:`default`,status:200,timingInfo:null,cacheState:``,statusText:``,...e,headersList:e?.headersList?new r(e?.headersList):new r,urlList:e?.urlList?[...e.urlList]:[]}}function L(e){return I({type:`error`,status:0,error:y(e)?e:Error(e&&String(e)),aborted:e&&e.name===`AbortError`})}function R(e){return e.type===`error`&&e.status===0}function ee(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(e,n){return n in t?t[n]:e[n]},set(e,n,r){return E(!(n in t)),e[n]=r,!0}})}function te(e,t){if(t===`basic`)return ee(e,{type:`basic`,headersList:e.headersList});if(t===`cors`)return ee(e,{type:`cors`,headersList:e.headersList});if(t===`opaque`)return ee(e,{type:`opaque`,urlList:[],status:0,statusText:``,body:null});if(t===`opaqueredirect`)return ee(e,{type:`opaqueredirect`,status:0,statusText:``,headersList:[],body:null});E(!1)}function ne(e,t=null){return E(_(e)),v(e)?L(Object.assign(new DOMException(`The operation was aborted.`,`AbortError`),{cause:t})):L(Object.assign(new DOMException(`Request was cancelled.`),{cause:t}))}function re(e,t,n){if(t.status!==null&&(t.status<200||t.status>599))throw RangeError(`init["status"] must be in the range of 200 to 599, inclusive.`);if(`statusText`in t&&t.statusText!=null&&!g(String(t.statusText)))throw TypeError(`Invalid statusText`);if(`status`in t&&t.status!=null&&(M(e).status=t.status),`statusText`in t&&t.statusText!=null&&(M(e).statusText=t.statusText),`headers`in t&&t.headers!=null&&i(A(e),t.headers),n){if(S.includes(e.status))throw C.errors.exception({header:`Response constructor`,message:`Invalid response status code ${e.status}`});M(e).body=n.body,n.type!=null&&!M(e).headersList.contains(`content-type`,!0)&&M(e).headersList.append(`content-type`,n.type,!0)}}function z(e,t){let r=new P(T);N(r,e);let i=new n(T);return j(r,i),s(i,e.headersList),o(i,t),e.urlList.length!==0&&e.body?.stream&&d.register(r,new WeakRef(e.body.stream)),r}C.converters.XMLHttpRequestBodyInit=function(e,t,n){return typeof e==`string`?C.converters.USVString(e,t,n):C.is.Blob(e)||C.is.BufferSource(e)||C.is.FormData(e)||C.is.URLSearchParams(e)?e:C.converters.DOMString(e,t,n)},C.converters.BodyInit=function(e,t,n){return C.is.ReadableStream(e)||e?.[Symbol.asyncIterator]?e:C.converters.XMLHttpRequestBodyInit(e,t,n)},C.converters.ResponseInit=C.dictionaryConverter([{key:`status`,converter:C.converters[`unsigned short`],defaultValue:()=>200},{key:`statusText`,converter:C.converters.ByteString,defaultValue:()=>``},{key:`headers`,converter:C.converters.HeadersInit}]),t.exports={isNetworkError:R,makeNetworkError:L,makeResponse:I,makeAppropriateNetworkError:ne,filterResponse:te,Response:P,cloneResponse:F,fromInnerResponse:z,getResponseState:M}})),aT=q(((e,t)=>{var{extractBody:n,mixinBody:r,cloneBody:i,bodyUnusable:a}=ew(),{Headers:o,fill:s,HeadersList:c,setHeadersGuard:l,getHeadersGuard:u,setHeadersList:d,getHeadersList:f}=rT(),p=$(),m=J(`node:util`),{isValidHTTPToken:h,sameOrigin:g,environmentSettingsObject:_}=XC(),{forbiddenMethodsSet:v,corsSafeListedMethodsSet:y,referrerPolicy:b,requestRedirect:x,requestMode:S,requestCredentials:C,requestCache:w,requestDuplex:T}=WC(),{kEnumerableProperty:E,normalizedMethodRecordsBase:D,normalizedMethodRecords:O}=p,{webidl:k}=YC(),{URLSerializer:A}=JC(),{kConstruct:j}=AC(),M=J(`node:assert`),{getMaxListeners:N,setMaxListeners:P,defaultMaxListeners:F}=J(`node:events`),I=Symbol(`abortController`),L=new FinalizationRegistry(({signal:e,abort:t})=>{e.removeEventListener(`abort`,t)}),R=new WeakMap,ee;try{ee=N(new AbortController().signal)>0}catch{ee=!1}function te(e){return t;function t(){let n=e.deref();if(n!==void 0){L.unregister(t),this.removeEventListener(`abort`,t),n.abort(this.reason);let e=R.get(n.signal);if(e!==void 0){if(e.size!==0){for(let t of e){let e=t.deref();e!==void 0&&e.abort(this.reason)}e.clear()}R.delete(n.signal)}}}}var ne=!1,re,z,ie,ae,oe,B,V,H=class{#e;#t;#n;#r;#i=null;constructor(e,t=void 0){if(k.util.markAsUncloneable(this),e===j)return;k.argumentLengthCheck(arguments,1,`Request constructor`),e=k.converters.RequestInfo(e),t=k.converters.RequestInit(t);let r=null,i=null,u=_.settingsObject.baseUrl,m=null;if(typeof e==`string`){this.#t=t.dispatcher;let n;try{n=new URL(e,u)}catch(t){throw TypeError(`Failed to parse URL from `+e,{cause:t})}if(n.username||n.password)throw TypeError(`Request cannot be constructed from a URL that includes credentials: `+e);r=se({urlList:[n]}),i=`cors`}else M(k.is.Request(e)),r=e.#r,m=e.#e,this.#t=t.dispatcher||e.#t;let b=_.settingsObject.origin,x=`client`;if(r.window?.constructor?.name===`EnvironmentSettingsObject`&&g(r.window,b)&&(x=r.window),t.window!=null)throw TypeError(`'window' option '${x}' must be null`);`window`in t&&(x=`no-window`),r=se({method:r.method,headersList:r.headersList,unsafeRequest:r.unsafeRequest,client:_.settingsObject,window:x,priority:r.priority,origin:r.origin,referrer:r.referrer,referrerPolicy:r.referrerPolicy,mode:r.mode,credentials:r.credentials,cache:r.cache,redirect:r.redirect,integrity:r.integrity,keepalive:r.keepalive,reloadNavigation:r.reloadNavigation,historyNavigation:r.historyNavigation,urlList:[...r.urlList]});let S=Object.keys(t).length!==0;if(S&&(r.mode===`navigate`&&(r.mode=`same-origin`),r.reloadNavigation=!1,r.historyNavigation=!1,r.origin=`client`,r.referrer=`client`,r.referrerPolicy=``,r.url=r.urlList[r.urlList.length-1],r.urlList=[r.url]),t.referrer!==void 0){let e=t.referrer;if(e===``)r.referrer=`no-referrer`;else{let t;try{t=new URL(e,u)}catch(t){throw TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}t.protocol===`about:`&&t.hostname===`client`||b&&!g(t,_.settingsObject.baseUrl)?r.referrer=`client`:r.referrer=t}}t.referrerPolicy!==void 0&&(r.referrerPolicy=t.referrerPolicy);let C;if(C=t.mode===void 0?i:t.mode,C===`navigate`)throw k.errors.exception({header:`Request constructor`,message:`invalid request mode navigate.`});if(C!=null&&(r.mode=C),t.credentials!==void 0&&(r.credentials=t.credentials),t.cache!==void 0&&(r.cache=t.cache),r.cache===`only-if-cached`&&r.mode!==`same-origin`)throw TypeError(`'only-if-cached' can be set only with 'same-origin' mode`);if(t.redirect!==void 0&&(r.redirect=t.redirect),t.integrity!=null&&(r.integrity=String(t.integrity)),t.keepalive!==void 0&&(r.keepalive=!!t.keepalive),t.method!==void 0){let e=t.method,n=O[e];if(n!==void 0)r.method=n;else{if(!h(e))throw TypeError(`'${e}' is not a valid HTTP method.`);let t=e.toUpperCase();if(v.has(t))throw TypeError(`'${e}' HTTP method is unsupported.`);e=D[t]??e,r.method=e}!ne&&r.method===`patch`&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:`UNDICI-FETCH-patch`}),ne=!0)}t.signal!==void 0&&(m=t.signal),this.#r=r;let w=new AbortController;if(this.#e=w.signal,m!=null){if(m.aborted)w.abort(m.reason);else{this[I]=w;let e=te(new WeakRef(w));ee&&N(m)===F&&P(1500,m);let t=p.addAbortListener(m,e);L.register(w,{signal:m,abort:e},e),this.#i=()=>{L.unregister(e),t(),this.#i=null}}}if(this.#n=new o(j),d(this.#n,r.headersList),l(this.#n,`request`),C===`no-cors`){if(!y.has(r.method))throw TypeError(`'${r.method} is unsupported in no-cors mode.`);l(this.#n,`request-no-cors`)}if(S){let e=f(this.#n),n=t.headers===void 0?new c(e):t.headers;if(e.clear(),n instanceof c){for(let{name:t,value:r}of n.rawValues())e.append(t,r,!1);e.cookies=n.cookies}else s(this.#n,n)}let T=k.is.Request(e)?e.#r.body:null;if((t.body!=null||T!=null)&&(r.method===`GET`||r.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);let E=null;if(t.body!=null){let[e,i]=n(t.body,r.keepalive);E=e,i&&!f(this.#n).contains(`content-type`,!0)&&this.#n.append(`content-type`,i,!0)}let A=E??T;if(A!=null&&A.source==null){if(E!=null&&t.duplex==null)throw TypeError(`RequestInit: duplex option is required when sending a body.`);if(r.mode!==`same-origin`&&r.mode!==`cors`)throw TypeError(`If request is made from ReadableStream, mode should be "same-origin" or "cors"`);r.useCORSPreflightFlag=!0}let R=A;if(E==null&&T!=null){if(a(e.#r))throw TypeError(`Cannot construct a Request with a Request object that has already been used.`);let t=new TransformStream;T.stream.pipeThrough(t),R={source:T.source,length:T.length,stream:t.readable}}this.#r.body=R}get method(){return k.brandCheck(this,k.is.Request),this.#r.method}get url(){return k.brandCheck(this,k.is.Request),A(this.#r.url)}get headers(){return k.brandCheck(this,k.is.Request),this.#n}get destination(){return k.brandCheck(this,k.is.Request),this.#r.destination}get referrer(){return k.brandCheck(this,k.is.Request),this.#r.referrer===`no-referrer`?``:this.#r.referrer===`client`?`about:client`:this.#r.referrer.toString()}get referrerPolicy(){return k.brandCheck(this,k.is.Request),this.#r.referrerPolicy}get mode(){return k.brandCheck(this,k.is.Request),this.#r.mode}get credentials(){return k.brandCheck(this,k.is.Request),this.#r.credentials}get cache(){return k.brandCheck(this,k.is.Request),this.#r.cache}get redirect(){return k.brandCheck(this,k.is.Request),this.#r.redirect}get integrity(){return k.brandCheck(this,k.is.Request),this.#r.integrity}get keepalive(){return k.brandCheck(this,k.is.Request),this.#r.keepalive}get isReloadNavigation(){return k.brandCheck(this,k.is.Request),this.#r.reloadNavigation}get isHistoryNavigation(){return k.brandCheck(this,k.is.Request),this.#r.historyNavigation}get signal(){return k.brandCheck(this,k.is.Request),this.#e}get body(){return k.brandCheck(this,k.is.Request),this.#r.body?this.#r.body.stream:null}get bodyUsed(){return k.brandCheck(this,k.is.Request),!!this.#r.body&&p.isDisturbed(this.#r.body.stream)}get duplex(){return k.brandCheck(this,k.is.Request),`half`}clone(){if(k.brandCheck(this,k.is.Request),a(this.#r))throw TypeError(`unusable`);let e=ce(this.#r),t=new AbortController;if(this.signal.aborted)t.abort(this.signal.reason);else{let e=R.get(this.signal);e===void 0&&(e=new Set,R.set(this.signal,e));let n=new WeakRef(t);e.add(n),p.addAbortListener(t.signal,te(n))}return le(e,this.#t,t.signal,u(this.#n))}[m.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${m.formatWithOptions(t,n)}`}static{re=(e,t)=>{e.#e=t},z=e=>e.#t,ie=(e,t)=>{e.#t=t},ae=(e,t)=>{e.#n=t},oe=e=>e.#r,B=(e,t)=>{e.#r=t},V=e=>{e.#i?.()},k.is.Request=e=>typeof e==`object`&&!!e&&#r in e}};r(H,oe,k.is.Request);function se(e){return{method:e.method??`GET`,localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??``,window:e.window??`client`,keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??`all`,initiator:e.initiator??``,destination:e.destination??``,priority:e.priority??`auto`,origin:e.origin??`client`,policyContainer:e.policyContainer??`client`,referrer:e.referrer??`client`,referrerPolicy:e.referrerPolicy??``,mode:e.mode??`no-cors`,useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??`same-origin`,useCredentials:e.useCredentials??!1,cache:e.cache??`default`,redirect:e.redirect??`follow`,integrity:e.integrity??``,cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??``,parserMetadata:e.parserMetadata??``,reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??`basic`,preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,useURLCredentials:e.useURLCredentials??void 0,traversableForUserPrompts:e.traversableForUserPrompts??`client`,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new c(e.headersList):new c}}function ce(e){let t=se({...e,body:null});return e.body!=null&&(t.body=i(e.body)),t}function le(e,t,n,r){let i=new H(j);B(i,e),ie(i,t),re(i,n);let a=new o(j);return ae(i,a),d(a,e.headersList),l(a,r),i}Object.defineProperties(H.prototype,{method:E,url:E,headers:E,redirect:E,clone:E,signal:E,duplex:E,destination:E,body:E,bodyUsed:E,isHistoryNavigation:E,isReloadNavigation:E,keepalive:E,integrity:E,cache:E,credentials:E,attribute:E,referrerPolicy:E,referrer:E,mode:E,[Symbol.toStringTag]:{value:`Request`,configurable:!0}}),k.converters.RequestInfo=function(e){return typeof e==`string`?k.converters.USVString(e):k.is.Request(e)?e:k.converters.USVString(e)},k.converters.RequestInit=k.dictionaryConverter([{key:`method`,converter:k.converters.ByteString},{key:`headers`,converter:k.converters.HeadersInit},{key:`body`,converter:k.nullableConverter(k.converters.BodyInit)},{key:`referrer`,converter:k.converters.USVString},{key:`referrerPolicy`,converter:k.converters.DOMString,allowedValues:b},{key:`mode`,converter:k.converters.DOMString,allowedValues:S},{key:`credentials`,converter:k.converters.DOMString,allowedValues:C},{key:`cache`,converter:k.converters.DOMString,allowedValues:w},{key:`redirect`,converter:k.converters.DOMString,allowedValues:x},{key:`integrity`,converter:k.converters.DOMString},{key:`keepalive`,converter:k.converters.boolean},{key:`signal`,converter:k.nullableConverter(e=>k.converters.AbortSignal(e,`RequestInit`,`signal`))},{key:`window`,converter:k.converters.any},{key:`duplex`,converter:k.converters.DOMString,allowedValues:T},{key:`dispatcher`,converter:k.converters.any},{key:`priority`,converter:k.converters.DOMString,allowedValues:[`high`,`low`,`auto`]}]),t.exports={Request:H,makeRequest:se,fromInnerRequest:le,cloneRequest:ce,getRequestDispatcher:z,getRequestState:oe,removeRequestAbortListener:V}})),oT=q(((e,t)=>{var n=J(`node:assert`),{runtimeFeatures:r}=ZC(),i=new Map([[`sha256`,0],[`sha384`,1],[`sha512`,2]]),a;if(r.has(`crypto`)){a=J(`node:crypto`);let e=a.getHashes();e.length===0&&i.clear();for(let t of i.keys())e.includes(t)===!1&&i.delete(t)}else i.clear();var o=Map.prototype.get.bind(i),s=Map.prototype.has.bind(i),c=r.has(`crypto`)===!1||i.size===0?()=>!0:(e,t)=>{let n=u(t);if(n.length===0)return!0;let r=l(n);for(let t of r){let n=t.alg,r=t.val;if(f(d(n,e),r))return!0}return!1};function l(e){let t=[],r=null;for(let i of e){if(n(s(i.alg),`Invalid SRI hash algorithm token`),t.length===0){t.push(i),r=i;continue}let e=r.alg,a=o(e),c=i.alg,l=o(c);l<a||(l>a?(r=i,t[0]=i,t.length=1):t.push(i))}return t}function u(e){let t=[];for(let n of e.split(` `)){let e=n.split(`?`,1)[0],r=``,i=[e.slice(0,6),e.slice(7)],a=i[0];if(!s(a))continue;i[1]&&(r=i[1]);let o={alg:a,val:r};t.push(o)}return t}var d=(e,t)=>a.hash(e,t,`base64`);function f(e,t){let n=e.length;n!==0&&e[n-1]===`=`&&--n,n!==0&&e[n-1]===`=`&&--n;let r=t.length;if(r!==0&&t[r-1]===`=`&&--r,r!==0&&t[r-1]===`=`&&--r,n!==r)return!1;for(let r=0;r<n;++r)if(!(e[r]===t[r]||e[r]===`+`&&t[r]===`-`||e[r]===`/`&&t[r]===`_`))return!1;return!0}t.exports={applyAlgorithmToBytes:d,bytesMatch:c,caseSensitiveMatch:f,isValidSRIHashAlgorithm:s,getStrongestMetadata:l,parseMetadata:u}})),sT=q(((e,t)=>{var{makeNetworkError:n,makeAppropriateNetworkError:r,filterResponse:i,makeResponse:a,fromInnerResponse:o,getResponseState:s}=iT(),{HeadersList:c}=rT(),{Request:l,cloneRequest:u,getRequestDispatcher:d,getRequestState:f,removeRequestAbortListener:p}=aT(),m=J(`node:zlib`),{makePolicyContainer:h,clonePolicyContainer:g,requestBadPort:_,TAOCheck:v,appendRequestOriginHeader:y,responseLocationURL:b,requestCurrentURL:x,setRequestReferrerPolicyOnRedirect:S,tryUpgradeRequestToAPotentiallyTrustworthyURL:C,createOpaqueTimingInfo:w,appendFetchMetadata:T,corsCheck:E,crossOriginResourcePolicyCheck:D,determineRequestsReferrer:O,coarsenedSharedCurrentTime:k,sameOrigin:A,isCancelled:j,isAborted:M,isErrorLike:N,fullyReadBody:P,readableStreamClose:F,urlIsLocal:I,urlIsHttpHttpsScheme:L,urlHasHttpsScheme:R,clampAndCoarsenConnectionTimingInfo:ee,simpleRangeHeaderValue:te,buildContentRange:ne,createInflate:re,extractMimeType:z,hasAuthenticationEntry:ie,includesCredentials:ae,isTraversableNavigable:oe}=XC(),B=J(`node:assert`),{safelyExtractBody:V,extractBody:H}=ew(),{redirectStatusSet:se,nullBodyStatus:ce,safeMethodsSet:le,requestBodyHeader:U,subresourceSet:W}=WC(),ue=J(`node:events`),{Readable:de,pipeline:fe,finished:pe,isErrored:me,isReadable:G}=J(`node:stream`),{addAbortListener:he,bufferToLowerCasedHeaderName:ge}=$(),{SocketError:_e}=Q(),{dataURLProcessor:ve,serializeAMimeType:K,minimizeSupportedMimeType:ye}=JC(),{getGlobalDispatcher:be}=zw(),{webidl:xe}=YC(),{STATUS_CODES:Se}=J(`node:http`),{bytesMatch:Ce}=oT(),{isomorphicEncode:we}=qC(),Te=[`GET`,`HEAD`],Ee=typeof __UNDICI_IS_NODE__<`u`||typeof esbuildDetection<`u`?`node`:`undici`,De;function Oe(e,t,n){if(Array.isArray(n)){for(let t=0;t<n.length;t+=2){let r=ge(n[t]),i=n[t+1];if(Array.isArray(i)&&!Buffer.isBuffer(i))for(let t of i)e.append(r,t.toString(`latin1`),!0);else e.append(r,i.toString(`latin1`),!0)}return}for(let[n,r]of Object.entries(t??{}))if(Array.isArray(r))for(let t of r)e.append(n,`${t}`,!0);else e.append(n,`${r}`,!0)}var ke=class extends ue{constructor(e){super(),this.dispatcher=e,this.connection=null,this.dump=!1,this.state=`ongoing`}terminate(e){this.state===`ongoing`&&(this.state=`terminated`,this.connection?.destroy(e),this.emit(`terminated`,e))}abort(e){this.state===`ongoing`&&(this.state=`aborted`,e||=new DOMException(`The operation was aborted.`,`AbortError`),this.serializedAbortReason=e,this.connection?.destroy(e),this.emit(`terminated`,e))}};function Ae(e){je(e,`fetch`)}function q(e,t=void 0){xe.argumentLengthCheck(arguments,1,`globalThis.fetch`);let n=Promise.withResolvers(),r;try{r=new l(e,t)}catch(e){return n.reject(e),n.promise}let i=f(r);if(r.signal.aborted)return Ne(n,i,null,r.signal.reason,null),n.promise;i.client.globalObject?.constructor?.name===`ServiceWorkerGlobalScope`&&(i.serviceWorkers=`none`);let a=null,s=!1,c=null,u=he(r.signal,()=>{s=!0,B(c!=null),c.abort(r.signal.reason);let e=a?.deref();Ne(n,i,e,r.signal.reason,c.controller)}),m=()=>{u(),p(r)};return c=Pe({request:i,processResponseEndOfBody:e=>{Ae(e),m()},processResponse:e=>{if(!s){if(e.aborted){Ne(n,i,a,c.serializedAbortReason,c.controller),m();return}if(e.type===`error`){n.reject(TypeError(`fetch failed`,{cause:e.error})),m();return}a=new WeakRef(o(e,`immutable`)),n.resolve(a.deref()),n=null}},dispatcher:d(r),requestObject:r}),n.promise}function je(e,t=`other`){if(e.type===`error`&&e.aborted||!e.urlList?.length)return;let n=e.urlList[0],r=e.timingInfo,i=e.cacheState;L(n)&&r!==null&&(e.timingAllowPassed||(r=w({startTime:r.startTime}),i=``),r.endTime=k(),e.timingInfo=r,Me(r,n.href,t,globalThis,i,``,e.status))}var Me=performance.markResourceTiming;function Ne(e,t,n,r,i){if(e&&e.reject(r),t.body?.stream!=null&&G(t.body.stream)&&t.body.stream.cancel(r).catch(e=>{if(e.code!==`ERR_INVALID_STATE`)throw e}),n==null)return;let a=s(n);a.body?.stream!=null&&G(a.body.stream)&&i.error(r)}function Pe({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseEndOfBody:i,processResponseConsumeBody:a,useParallelQueue:o=!1,dispatcher:s=be(),requestObject:c=null}){B(s);let l=null,u=!1;e.client!=null&&(l=e.client.globalObject,u=e.client.crossOriginIsolatedCapability);let d=w({startTime:k(u)}),f={controller:new ke(s),request:e,timingInfo:d,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseConsumeBody:a,processResponseEndOfBody:i,taskDestination:l,crossOriginIsolatedCapability:u,requestObject:c};return B(!e.body||e.body.stream),e.window===`client`&&(e.window=e.client?.globalObject?.constructor?.name===`Window`?e.client:`no-window`),e.origin===`client`&&(e.origin=e.client.origin),e.policyContainer===`client`&&(e.policyContainer=e.client==null?h():g(e.client.policyContainer)),e.headersList.contains(`accept`,!0)||e.headersList.append(`accept`,`*/*`,!0),e.headersList.contains(`accept-language`,!0)||e.headersList.append(`accept-language`,`*`,!0),e.priority,W.has(e.destination),Fe(f,!1),f.controller}async function Fe(e,t){try{let r=e.request,a=null;if(r.localURLsOnly&&!I(x(r))&&(a=n(`local URLs only`)),C(r),_(r)===`blocked`&&(a=n(`bad port`)),r.referrerPolicy===``&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!==`no-referrer`&&(r.referrer=O(r)),a===null){let t=x(r);A(t,r.url)&&r.responseTainting===`basic`||t.protocol===`data:`||r.mode===`navigate`||r.mode===`websocket`?(r.responseTainting=`basic`,a=await Ie(e)):r.mode===`same-origin`?a=n(`request mode cannot be "same-origin"`):r.mode===`no-cors`?r.redirect===`follow`?(r.responseTainting=`opaque`,a=await Ie(e)):a=n(`redirect mode cannot be "follow" for "no-cors" request`):L(x(r))?(r.responseTainting=`cors`,a=await ze(e)):a=n(`URL scheme must be a HTTP(S) scheme`)}if(t)return a;a.status!==0&&!a.internalResponse&&(r.responseTainting,r.responseTainting===`basic`?a=i(a,`basic`):r.responseTainting===`cors`?a=i(a,`cors`):r.responseTainting===`opaque`?a=i(a,`opaque`):B(!1));let o=a.status===0?a:a.internalResponse;if(o.urlList.length===0&&o.urlList.push(...r.urlList),r.timingAllowFailed||(a.timingAllowPassed=!0),a.type===`opaque`&&o.status===206&&o.rangeRequested&&!r.headers.contains(`range`,!0)&&(a=o=n()),a.status!==0&&(r.method===`HEAD`||r.method===`CONNECT`||ce.includes(o.status))&&(o.body=null,e.controller.dump=!0),r.integrity){let t=t=>Re(e,n(t));if(r.responseTainting===`opaque`||a.body==null){t(a.error);return}P(a.body,n=>{if(!Ce(n,r.integrity)){t(`integrity mismatch`);return}a.body=V(n)[0],Re(e,a)},t)}else Re(e,a)}catch(t){e.controller.terminate(t)}}function Ie(e){if(j(e))return Promise.resolve(r(e));let{request:t}=e,{protocol:i}=x(t);switch(i){case`about:`:return Promise.resolve(n(`about scheme is not supported`));case`blob:`:{De||=J(`node:buffer`).resolveObjectURL;let e=x(t);if(e.search.length!==0)return Promise.resolve(n(`NetworkError when attempting to fetch resource.`));let r=De(e.toString());if(t.method!==`GET`||!xe.is.Blob(r))return Promise.resolve(n(`invalid method`));let i=a(),o=r.size,s=we(`${o}`),c=r.type;if(t.headersList.contains(`range`,!0)){i.rangeRequested=!0;let e=te(t.headersList.get(`range`,!0),!0);if(e===`failure`)return Promise.resolve(n(`failed to fetch the data URL`));let{rangeStartValue:a,rangeEndValue:s}=e;if(a===null)a=o-s,s=a+s-1;else{if(a>=o)return Promise.resolve(n(`Range start is greater than the blob's size.`));(s===null||s>=o)&&(s=o-1)}let l=r.slice(a,s+1,c);i.body=H(l)[0];let u=we(`${l.size}`),d=ne(a,s,o);i.status=206,i.statusText=`Partial Content`,i.headersList.set(`content-length`,u,!0),i.headersList.set(`content-type`,c,!0),i.headersList.set(`content-range`,d,!0)}else{let e=H(r);i.statusText=`OK`,i.body=e[0],i.headersList.set(`content-length`,s,!0),i.headersList.set(`content-type`,c,!0)}return Promise.resolve(i)}case`data:`:{let e=ve(x(t));if(e===`failure`)return Promise.resolve(n(`failed to fetch the data URL`));let r=K(e.mimeType);return Promise.resolve(a({statusText:`OK`,headersList:[[`content-type`,{name:`Content-Type`,value:r}]],body:V(e.body)[0]}))}case`file:`:return Promise.resolve(n(`not implemented... yet...`));case`http:`:case`https:`:return ze(e).catch(e=>n(e));default:return Promise.resolve(n(`unknown scheme`))}}function Le(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Re(e,t){let n=e.timingInfo;e.request.destination===`document`&&(e.controller.fullTimingInfo=n);let r=()=>{let r=Date.now();e.controller.reportTimingSteps=()=>{if(!L(e.request.url))return;n.endTime=r;let i=t.cacheState,a=t.bodyInfo;t.timingAllowPassed||(n=w(n),i=``);let o=0;if(e.request.mode!==`navigate`||!t.hasCrossOriginRedirects){o=t.status;let e=z(t.headersList);e!==`failure`&&(a.contentType=ye(e))}e.request.initiatorType!=null&&Me(n,e.request.url.href,e.request.initiatorType,globalThis,i,a,o)};let i=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>i())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let i=t.type===`error`?t:t.internalResponse??t;if(i.body==null?r():pe(i.body.stream,()=>{r()}),e.processResponseConsumeBody!=null){let n=n=>e.processResponseConsumeBody(t,n);i.body==null?queueMicrotask(()=>n(null)):P(i.body,n,()=>e.processResponseConsumeBody(t,`failure`))}}async function ze(e){let t=e.request,r=null,i=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect===`follow`&&(t.serviceWorkers=`none`),i=r=await Ve(e),t.responseTainting===`cors`&&E(t,r)===`failure`)return n(`cors failure`);v(t,r)===`failure`&&(t.timingAllowFailed=!0)}return(t.responseTainting===`opaque`||r.type===`opaque`)&&D(t.origin,t.client,t.destination,i)===`blocked`?n(`blocked`):(se.has(i.status)&&(t.redirect!==`manual`&&e.controller.connection.destroy(),t.redirect===`error`?r=n(`unexpected redirect`):t.redirect===`manual`?r=i:t.redirect===`follow`?r=await Be(e,r):B(!1)),r.timingInfo=a,r)}function Be(e,t){let r=e.request,i=t.internalResponse?t.internalResponse:t,a;try{if(a=b(i,x(r).hash),a==null)return t}catch(e){return Promise.resolve(n(e))}if(!L(a))return Promise.resolve(n(`URL scheme must be a HTTP(S) scheme`));if(r.redirectCount===20)return Promise.resolve(n(`redirect count exceeded`));if(r.redirectCount+=1,r.mode===`cors`&&(a.username||a.password)&&!A(r,a))return Promise.resolve(n(`cross origin not allowed for request mode "cors"`));if(r.responseTainting===`cors`&&(a.username||a.password))return Promise.resolve(n(`URL cannot contain credentials for request mode "cors"`));if(i.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(n());if([301,302].includes(i.status)&&r.method===`POST`||i.status===303&&!Te.includes(r.method)){r.method=`GET`,r.body=null;for(let e of U)r.headersList.delete(e)}A(x(r),a)||(r.headersList.delete(`authorization`,!0),r.headersList.delete(`proxy-authorization`,!0),r.headersList.delete(`cookie`,!0),r.headersList.delete(`host`,!0)),r.body!=null&&(B(r.body.source!=null),r.body=V(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=k(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),S(r,i),Fe(e,!0)}async function Ve(e,t=!1,i=!1){let a=e.request,o=null,s=null,c=null;a.window===`no-window`&&a.redirect===`error`?(o=e,s=a):(a.body?.source==null?(s=u({...a,body:null}),s.body=a.body):s=u(a),o={...e},o.request=s);let l=a.credentials===`include`||a.credentials===`same-origin`&&a.responseTainting===`basic`,d=s.body?s.body.length:null,f=null;if(s.body==null&&[`POST`,`PUT`].includes(s.method)&&(f=`0`),d!=null&&(f=we(`${d}`)),f!=null&&!s.headersList.contains(`content-length`,!0)&&s.headersList.append(`content-length`,f,!0),d!=null&&s.keepalive,xe.is.URL(s.referrer)&&s.headersList.append(`referer`,we(s.referrer.href),!0),y(s),T(s),s.headersList.contains(`user-agent`,!0)||s.headersList.append(`user-agent`,Ee,!0),s.cache==="default"&&(s.headersList.contains(`if-modified-since`,!0)||s.headersList.contains(`if-none-match`,!0)||s.headersList.contains(`if-unmodified-since`,!0)||s.headersList.contains(`if-match`,!0)||s.headersList.contains(`if-range`,!0))&&(s.cache=`no-store`),s.cache===`no-cache`&&!s.preventNoCacheCacheControlHeaderModification&&!s.headersList.contains(`cache-control`,!0)&&s.headersList.append(`cache-control`,`max-age=0`,!0),(s.cache===`no-store`||s.cache===`reload`)&&(s.headersList.contains(`pragma`,!0)||s.headersList.append(`pragma`,`no-cache`,!0),s.headersList.contains(`cache-control`,!0)||s.headersList.append(`cache-control`,`no-cache`,!0)),s.headersList.contains(`range`,!0)&&s.headersList.append(`accept-encoding`,`identity`,!0),s.headersList.contains(`accept-encoding`,!0)||(R(x(s))?s.headersList.append(`accept-encoding`,`br, gzip, deflate, zstd`,!0):s.headersList.append(`accept-encoding`,`gzip, deflate`,!0)),s.headersList.delete(`host`,!0),l&&!s.headersList.contains(`authorization`,!0)){let e=null;if((!ie(s)||s.useURLCredentials!==void 0&&ae(x(s)))&&ae(x(s))&&t){let{username:t,password:n}=x(s);e=`Basic ${Buffer.from(`${t}:${n}`).toString(`base64`)}`}e!==null&&s.headersList.append(`Authorization`,e,!1)}if(s.cache=`no-store`,s.cache!==`no-store`&&s.cache,c==null){if(s.cache===`only-if-cached`)return n(`only if cached`);let e=await He(o,l,i);!le.has(s.method)&&e.status>=200&&e.status,c??=e}if(c.urlList=[...s.urlList],s.headersList.contains(`range`,!0)&&(c.rangeRequested=!0),c.requestIncludesCredentials=l,c.status===401&&s.responseTainting!==`cors`&&l&&(a.useURLCredentials!==void 0||oe(a.traversableForUserPrompts))){if(a.body!=null){if(a.body.source==null)return c;a.body=V(a.body.source)[0]}if(a.useURLCredentials===void 0||t)return j(e)?r(e):c;e.controller.connection.destroy(),c=await Ve(e,!0)}if(c.status===407)return a.window===`no-window`?n():j(e)?r(e):n(`proxy authentication required`);if(c.status===421&&!i&&(a.body==null||a.body.source!=null)){if(j(e))return r(e);e.controller.connection.destroy(),c=await Ve(e,t,!0)}return c}async function He(e,t=!1,i=!1){B(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(e){this.destroyed||(this.destroyed=!0,this.abort?.(e??new DOMException(`The operation was aborted.`,`AbortError`)))}};let o=e.request,s=null,l=e.timingInfo;o.cache=`no-store`,o.mode;let u=null;if(o.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(o.body!=null){let t=async function*(t){j(e)||(yield t,e.processRequestBodyChunkLength?.(t.byteLength))},n=()=>{j(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},r=t=>{j(e)||(t.name===`AbortError`?e.controller.abort():e.controller.terminate(t))};u=(async function*(){try{for await(let e of o.body.stream)yield*t(e);n()}catch(e){r(e)}})()}try{let{body:t,status:n,statusText:r,headersList:i,socket:o}=await p({body:u});if(o)s=a({status:n,statusText:r,headersList:i,socket:o});else{let o=t[Symbol.asyncIterator]();e.controller.next=()=>o.next(),s=a({status:n,statusText:r,headersList:i})}}catch(t){return t.name===`AbortError`?(e.controller.connection.destroy(),r(e,t)):n(t)}let d=new ReadableStream({start(t){e.controller.controller=t},pull:()=>e.controller.resume(),cancel:t=>{j(e)||e.controller.abort(t)},type:`bytes`});s.body={stream:d,source:null,length:null},e.controller.resume||e.controller.on(`terminated`,f),e.controller.resume=async()=>{for(;;){let t,n;try{let{done:n,value:r}=await e.controller.next();if(M(e))break;t=n?void 0:r}catch(r){e.controller.ended&&!l.encodedBodySize?t=void 0:(t=r,n=!0)}if(t===void 0){F(e.controller.controller),Le(e,s);return}if(l.decodedBodySize+=t?.byteLength??0,n){e.controller.terminate(t);return}let r=new Uint8Array(t);if(r.byteLength&&e.controller.controller.enqueue(r),me(d)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function f(t){M(e)?(s.aborted=!0,G(d)&&e.controller.controller.error(e.controller.serializedAbortReason)):G(d)&&e.controller.controller.error(TypeError(`terminated`,{cause:N(t)?t:void 0})),e.controller.connection.destroy()}return s;function p({body:t}){let n=x(o),r=e.controller.dispatcher,i=n.pathname+n.search,a=n.search.length===0&&n.href[n.href.length-n.hash.length-1]===`?`;return s(t);function s(t,u){return new Promise((d,f)=>r.dispatch({path:a?`${i}?`:i,origin:n.origin,method:o.method,body:r.isMockActive?o.body&&(o.body.source||o.body.stream):t,__mockAgentBodyForDispatch:t,headers:o.headersList.entries,maxRedirections:0,upgrade:o.mode===`websocket`?`websocket`:void 0,...u===!1?{allowH2:u}:null},{body:null,abort:null,onRequestStart(t){let{connection:n}=e.controller;l.finalConnectionTimingInfo=ee(void 0,l.postRedirectStartTime,e.crossOriginIsolatedCapability);let r=e=>t.abort(e);n.destroyed?r(new DOMException(`The operation was aborted.`,`AbortError`)):(e.controller.on(`terminated`,r),this.abort=n.abort=r),l.finalNetworkRequestStartTime=k(e.crossOriginIsolatedCapability)},onResponseStarted(){l.finalNetworkResponseStartTime=k(e.crossOriginIsolatedCapability)},onResponseStart(e,t,n,r){if(t<200)return;let i=e?.rawHeaders??[],a=new c;Oe(a,n,i);let s=a.get(`location`,!0);this.body=new de({read:()=>e.resume()});let l=s&&o.redirect===`follow`&&se.has(t),u=[];if(o.method!==`HEAD`&&o.method!==`CONNECT`&&!ce.includes(t)&&!l){let e=a.get(`content-encoding`,!0),t=e?e.toLowerCase().split(`,`):[];if(t.length>5){f(Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`));return}for(let e=t.length-1;e>=0;--e){let n=t[e].trim();if(n===`x-gzip`||n===`gzip`)u.push(m.createGunzip({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`deflate`)u.push(re({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`br`)u.push(m.createBrotliDecompress({flush:m.constants.BROTLI_OPERATION_FLUSH,finishFlush:m.constants.BROTLI_OPERATION_FLUSH}));else if(n===`zstd`)u.push(m.createZstdDecompress({flush:m.constants.ZSTD_e_continue,finishFlush:m.constants.ZSTD_e_end}));else{u.length=0;break}}}let p=t=>this.onResponseError(e,t);d({status:t,statusText:r,headersList:a,body:u.length?fe(this.body,...u,t=>{t&&this.onResponseError(e,t)}).on(`error`,p):this.body.on(`error`,p)})},onResponseData(t,n){if(e.controller.dump)return;let r=n;l.encodedBodySize+=r.byteLength,this.body.push(r)===!1&&t.pause()},onResponseEnd(){this.abort&&e.controller.off(`terminated`,this.abort),e.controller.ended=!0,this.body?.push(null)},onResponseError(n,r){if(this.abort&&e.controller.off(`terminated`,this.abort),o.mode===`websocket`&&u!==!1&&r?.code===`UND_ERR_INFO`&&r?.message===`HTTP/2: Extended CONNECT protocol not supported by server`){d(s(t,!1));return}this.body?.destroy(r),n?.aborted||e.controller.terminate(r),f(r)},onRequestUpgrade(e,t,n,r){if(r.session!=null&&t!==200||r.session==null&&t!==101)return r.session!=null&&e.abort(new _e(`bad upgrade`,null)),!1;let i=e?.rawHeaders??[],a=new c;return Oe(a,n,i),d({status:t,statusText:Se[t],headersList:a,socket:r}),!0}}))}}}t.exports={fetch:q,Fetch:ke,fetching:Pe,finalizeAndReportTiming:je}})),cT=q(((e,t)=>{var n=J(`node:assert`),{URLSerializer:r}=JC(),{isValidHeaderName:i}=XC();function a(e,t,n=!1){return r(e,n)===r(t,n)}function o(e){n(e!==null);let t=[];for(let n of e.split(`,`))n=n.trim(),i(n)&&t.push(n);return t}t.exports={urlEquals:a,getFieldValues:o}})),lT=q(((e,t)=>{var n=J(`node:assert`),{kConstruct:r}=AC(),{urlEquals:i,getFieldValues:a}=cT(),{kEnumerableProperty:o,isDisturbed:s}=$(),{webidl:c}=YC(),{cloneResponse:l,fromInnerResponse:u,getResponseState:d}=iT(),{Request:f,fromInnerRequest:p,getRequestState:m}=aT(),{fetching:h}=sT(),{urlIsHttpHttpsScheme:g,readAllBytes:_}=XC(),v=class{#e;constructor(){arguments[0]!==r&&c.illegalConstructor(),c.util.markAsUncloneable(this),this.#e=arguments[1]}async match(e,t={}){c.brandCheck(this,c.is.Cache);let n=`Cache.match`;c.argumentLengthCheck(arguments,1,n),e=c.converters.RequestInfo(e),t=c.converters.CacheQueryOptions(t,n,`options`);let r=this.#i(e,t,1);if(r.length!==0)return r[0]}async matchAll(e=void 0,t={}){return c.brandCheck(this,c.is.Cache),e!==void 0&&(e=c.converters.RequestInfo(e)),t=c.converters.CacheQueryOptions(t,`Cache.matchAll`,`options`),this.#i(e,t)}async add(e){c.brandCheck(this,c.is.Cache),c.argumentLengthCheck(arguments,1,`Cache.add`),e=c.converters.RequestInfo(e);let t=[e];return await this.addAll(t)}async addAll(e){c.brandCheck(this,c.is.Cache);let t=`Cache.addAll`;c.argumentLengthCheck(arguments,1,t);let n=[],r=[];for(let n of e){if(n===void 0)throw c.errors.conversionFailed({prefix:t,argument:`Argument 1`,types:[`undefined is not allowed`]});if(n=c.converters.RequestInfo(n),typeof n==`string`)continue;let e=m(n);if(!g(e.url)||e.method!==`GET`)throw c.errors.exception({header:t,message:`Expected http/s scheme when method is not GET.`})}let i=[];for(let o of e){let e=m(new f(o));if(!g(e.url))throw c.errors.exception({header:t,message:`Expected http/s scheme.`});e.initiator=`fetch`,e.destination=`subresource`,r.push(e);let s=Promise.withResolvers();i.push(h({request:e,processResponse(e){if(e.type===`error`||e.status===206||e.status<200||e.status>299)s.reject(c.errors.exception({header:`Cache.addAll`,message:`Received an invalid status code or the request failed.`}));else if(e.headersList.contains(`vary`)){let t=a(e.headersList.get(`vary`));for(let e of t)if(e===`*`){s.reject(c.errors.exception({header:`Cache.addAll`,message:`invalid vary field value`}));for(let e of i)e.abort();return}}},processResponseConsumeBody(e){if(e.aborted){s.reject(new DOMException(`aborted`,`AbortError`));return}s.resolve(e)}})),n.push(s.promise)}let o=await Promise.all(n),s=[],l=0;for(let e of o){let t={type:`put`,request:r[l],response:e};s.push(t),l++}let u=Promise.withResolvers(),d=null;try{this.#t(s)}catch(e){d=e}return queueMicrotask(()=>{d===null?u.resolve(void 0):u.reject(d)}),u.promise}async put(e,t){c.brandCheck(this,c.is.Cache);let n=`Cache.put`;c.argumentLengthCheck(arguments,2,n),e=c.converters.RequestInfo(e),t=c.converters.Response(t,n,`response`);let r=null;if(r=c.is.Request(e)?m(e):m(new f(e)),!g(r.url)||r.method!==`GET`)throw c.errors.exception({header:n,message:`Expected an http/s scheme when method is not GET`});let i=d(t);if(i.status===206)throw c.errors.exception({header:n,message:`Got 206 status`});if(i.headersList.contains(`vary`)){let e=a(i.headersList.get(`vary`));for(let t of e)if(t===`*`)throw c.errors.exception({header:n,message:`Got * vary field value`})}if(i.body&&(s(i.body.stream)||i.body.stream.locked))throw c.errors.exception({header:n,message:`Response body is locked or disturbed`});let o=l(i),u=Promise.withResolvers();i.body==null?u.resolve(void 0):_(i.body.stream.getReader(),u.resolve,u.reject);let p=[],h={type:`put`,request:r,response:o};p.push(h);let v=await u.promise;o.body!=null&&(o.body.source=v);let y=Promise.withResolvers(),b=null;try{this.#t(p)}catch(e){b=e}return queueMicrotask(()=>{b===null?y.resolve():y.reject(b)}),y.promise}async delete(e,t={}){c.brandCheck(this,c.is.Cache);let r=`Cache.delete`;c.argumentLengthCheck(arguments,1,r),e=c.converters.RequestInfo(e),t=c.converters.CacheQueryOptions(t,r,`options`);let i=null;if(c.is.Request(e)){if(i=m(e),i.method!==`GET`&&!t.ignoreMethod)return!1}else n(typeof e==`string`),i=m(new f(e));let a=[],o={type:`delete`,request:i,options:t};a.push(o);let s=Promise.withResolvers(),l=null,u;try{u=this.#t(a)}catch(e){l=e}return queueMicrotask(()=>{l===null?s.resolve(!!u?.length):s.reject(l)}),s.promise}async keys(e=void 0,t={}){c.brandCheck(this,c.is.Cache),e!==void 0&&(e=c.converters.RequestInfo(e)),t=c.converters.CacheQueryOptions(t,`Cache.keys`,`options`);let n=null;if(e!==void 0){if(c.is.Request(e)){if(n=m(e),n.method!==`GET`&&!t.ignoreMethod)return[]}else typeof e==`string`&&(n=m(new f(e)))}let r=Promise.withResolvers(),i=[];if(e===void 0)for(let e of this.#e)i.push(e[0]);else{let e=this.#n(n,t);for(let t of e)i.push(t[0])}return queueMicrotask(()=>{let e=[];for(let t of i){let n=p(t,void 0,new AbortController().signal,`immutable`);e.push(n)}r.resolve(Object.freeze(e))}),r.promise}#t(e){let t=this.#e,r=[...t],i=[],a=[];try{for(let r of e){if(r.type!==`delete`&&r.type!==`put`)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`operation type does not match "delete" or "put"`});if(r.type===`delete`&&r.response!=null)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`delete operation should not have an associated response`});if(this.#n(r.request,r.options,i).length)throw new DOMException(`???`,`InvalidStateError`);let e;if(r.type===`delete`){if(e=this.#n(r.request,r.options),e.length===0)return[];for(let r of e){let e=t.indexOf(r);n(e!==-1),t.splice(e,1)}}else if(r.type===`put`){if(r.response==null)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`put operation should have an associated response`});let a=r.request;if(!g(a.url))throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`expected http or https scheme`});if(a.method!==`GET`)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`not get method`});if(r.options!=null)throw c.errors.exception({header:`Cache.#batchCacheOperations`,message:`options must not be defined`});e=this.#n(r.request);for(let r of e){let e=t.indexOf(r);n(e!==-1),t.splice(e,1)}t.push([r.request,r.response]),i.push([r.request,r.response])}a.push([r.request,r.response])}return a}catch(e){throw this.#e.length=0,this.#e=r,e}}#n(e,t,n){let r=[],i=n??this.#e;for(let n of i){let[i,a]=n;this.#r(e,i,a,t)&&r.push(n)}return r}#r(e,t,n=null,r){let o=new URL(e.url),s=new URL(t.url);if(r?.ignoreSearch&&(s.search=``,o.search=``),!i(o,s,!0))return!1;if(n==null||r?.ignoreVary||!n.headersList.contains(`vary`))return!0;let c=a(n.headersList.get(`vary`));for(let n of c)if(n===`*`||t.headersList.get(n)!==e.headersList.get(n))return!1;return!0}#i(e,t,n=1/0){let r=null;if(e!==void 0){if(c.is.Request(e)){if(r=m(e),r.method!==`GET`&&!t.ignoreMethod)return[]}else typeof e==`string`&&(r=m(new f(e)))}let i=[];if(e===void 0)for(let e of this.#e)i.push(e[1]);else{let e=this.#n(r,t);for(let t of e)i.push(t[1])}let a=[];for(let e of i){let t=u(l(e),`immutable`);if(a.push(t),a.length>=n)break}return Object.freeze(a)}static{c.is.Cache=e=>typeof e==`object`&&!!e&&#e in e}};Object.defineProperties(v.prototype,{[Symbol.toStringTag]:{value:`Cache`,configurable:!0},match:o,matchAll:o,add:o,addAll:o,put:o,delete:o,keys:o});var y=[{key:`ignoreSearch`,converter:c.converters.boolean,defaultValue:()=>!1},{key:`ignoreMethod`,converter:c.converters.boolean,defaultValue:()=>!1},{key:`ignoreVary`,converter:c.converters.boolean,defaultValue:()=>!1}];c.converters.CacheQueryOptions=c.dictionaryConverter(y),c.converters.MultiCacheQueryOptions=c.dictionaryConverter([...y,{key:`cacheName`,converter:c.converters.DOMString}]),c.converters.Response=c.interfaceConverter(c.is.Response,`Response`),c.converters[`sequence<RequestInfo>`]=c.sequenceConverter(c.converters.RequestInfo),t.exports={Cache:v}})),uT=q(((e,t)=>{var{Cache:n}=lT(),{webidl:r}=YC(),{kEnumerableProperty:i}=$(),{kConstruct:a}=AC(),o=class{#e=new Map;constructor(){arguments[0]!==a&&r.illegalConstructor(),r.util.markAsUncloneable(this)}async match(e,t={}){if(r.brandCheck(this,r.is.CacheStorage),r.argumentLengthCheck(arguments,1,`CacheStorage.match`),e=r.converters.RequestInfo(e),t=r.converters.MultiCacheQueryOptions(t),t.cacheName!=null){if(this.#e.has(t.cacheName))return await new n(a,this.#e.get(t.cacheName)).match(e,t)}else for(let r of this.#e.values()){let i=await new n(a,r).match(e,t);if(i!==void 0)return i}}async has(e){r.brandCheck(this,r.is.CacheStorage);let t=`CacheStorage.has`;return r.argumentLengthCheck(arguments,1,t),e=r.converters.DOMString(e,t,`cacheName`),this.#e.has(e)}async open(e){r.brandCheck(this,r.is.CacheStorage);let t=`CacheStorage.open`;if(r.argumentLengthCheck(arguments,1,t),e=r.converters.DOMString(e,t,`cacheName`),this.#e.has(e))return new n(a,this.#e.get(e));let i=[];return this.#e.set(e,i),new n(a,i)}async delete(e){r.brandCheck(this,r.is.CacheStorage);let t=`CacheStorage.delete`;return r.argumentLengthCheck(arguments,1,t),e=r.converters.DOMString(e,t,`cacheName`),this.#e.delete(e)}async keys(){return r.brandCheck(this,r.is.CacheStorage),[...this.#e.keys()]}static{r.is.CacheStorage=e=>typeof e==`object`&&!!e&&#e in e}};Object.defineProperties(o.prototype,{[Symbol.toStringTag]:{value:`CacheStorage`,configurable:!0},match:i,has:i,open:i,delete:i,keys:i}),t.exports={CacheStorage:o}})),dT=q(((e,t)=>{t.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}})),fT=q(((e,t)=>{function n(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>=0&&n<=8||n>=10&&n<=31||n===127)return!0}return!1}function r(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===60||n===62||n===64||n===44||n===59||n===58||n===92||n===47||n===91||n===93||n===63||n===61||n===123||n===125)throw Error(`Invalid cookie name`)}}function i(e){let t=e.length,n=0;if(e[0]===`"`){if(t===1||e[t-1]!==`"`)throw Error(`Invalid cookie value`);--t,++n}for(;n<t;){let t=e.charCodeAt(n++);if(t<33||t>126||t===34||t===44||t===59||t===92)throw Error(`Invalid cookie value`)}}function a(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<32||n>126||n===59)throw Error(`Invalid cookie path`)}}function o(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122}function s(e){if(e===` `)return;if(e.length>255)throw Error(`Invalid cookie domain`);let t=0;for(let n=0;n<e.length;++n){let r=e.charCodeAt(n);if(r===46){if(t===0||e.charCodeAt(n-1)===45)throw Error(`Invalid cookie domain`);t=0;continue}if(t===0&&!o(r)||!o(r)&&r!==45||++t>63)throw Error(`Invalid cookie domain`)}if(t===0||e.charCodeAt(e.length-1)===45)throw Error(`Invalid cookie domain`)}var c=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],l=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],u=Array(61).fill(0).map((e,t)=>t.toString().padStart(2,`0`));function d(e){return typeof e==`number`&&(e=new Date(e)),`${c[e.getUTCDay()]}, ${u[e.getUTCDate()]} ${l[e.getUTCMonth()]} ${e.getUTCFullYear()} ${u[e.getUTCHours()]}:${u[e.getUTCMinutes()]}:${u[e.getUTCSeconds()]} GMT`}function f(e){if(e<0)throw Error(`Invalid cookie max-age`)}function p(e){if(e.name.length===0)return null;r(e.name),i(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith(`__Secure-`)&&(e.secure=!0),e.name.startsWith(`__Host-`)&&(e.secure=!0,e.domain=null,e.path=`/`),e.secure&&t.push(`Secure`),e.httpOnly&&t.push(`HttpOnly`),typeof e.maxAge==`number`&&(f(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(s(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(a(e.path),t.push(`Path=${e.path}`)),e.expires!=null&&e.expires.toString()!==`Invalid Date`&&t.push(`Expires=${d(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let n of e.unparsed){if(!n.includes(`=`))throw Error(`Invalid unparsed`);let[e,...a]=n.split(`=`),o=e.trim(),s=a.join(`=`);r(o),i(s),t.push(`${o}=${s}`)}return t.join(`; `)}t.exports={isCTLExcludingHtab:n,validateCookieName:r,validateCookiePath:a,validateCookieValue:i,toIMFDate:d,stringify:p}})),pT=q(((e,t)=>{var{collectASequenceOfCodePointsFast:n}=qC(),{maxNameValuePairSize:r,maxAttributeValueSize:i}=dT(),{isCTLExcludingHtab:a}=fT(),o=J(`node:assert`);function s(e){if(a(e))return null;let t=``,i=``,o=``,s=``;if(e.includes(`;`)){let r={position:0};t=n(`;`,e,r),i=e.slice(r.position)}else t=e;if(!t.includes(`=`))s=t;else{let e={position:0};o=n(`=`,t,e),s=t.slice(e.position+1)}return o=o.trim(),s=s.trim(),o.length+s.length>r?null:{name:o,value:s,...c(i)}}function c(e,t={}){for(;;){if(e.length===0)return t;o(e[0]===`;`),e=e.slice(1);let r=``;e.includes(`;`)?(r=n(`;`,e,{position:0}),e=e.slice(r.length)):(r=e,e=``);let a=``,s=``;if(r.includes(`=`)){let e={position:0};a=n(`=`,r,e),s=r.slice(e.position+1)}else a=r;if(a=a.trim(),s=s.trim(),s.length>i)continue;let c=a.toLowerCase();if(c===`expires`){let e=new Date(s);Number.isNaN(e.getTime())||(t.expires=e)}else if(c===`max-age`){let e=s.charCodeAt(0),n=e>=48&&e<=57,r=s[0]===`-`&&s.length>1;if(!n&&!r||/[^\d]/.test(s.slice(1)))continue;t.maxAge=Number(s)}else if(c===`domain`){let e=s;e[0]===`.`&&(e=e.slice(1)),e=e.toLowerCase(),t.domain=e}else if(c===`path`){let e=``;e=s.length===0||s[0]!==`/`?`/`:s,t.path=e}else if(c===`secure`)t.secure=!0;else if(c===`httponly`)t.httpOnly=!0;else if(c===`samesite`){let e=s.toLowerCase();e===`none`?t.sameSite=`None`:e===`strict`?t.sameSite=`Strict`:e===`lax`&&(t.sameSite=`Lax`)}else t.unparsed??=[],t.unparsed.push(`${a}=${s}`)}}t.exports={parseSetCookie:s,parseUnparsedAttributes:c}})),mT=q(((e,t)=>{var{parseSetCookie:n}=pT(),{stringify:r}=fT(),{webidl:i}=YC(),a=e=>i.brandCheck(e,i.util.MakeTypeAssertion(globalThis.Headers)),o=e=>i.brandCheck(e,i.is.Headers);function s(e){try{o(e);return}catch{}a(e)}function c(e){i.argumentLengthCheck(arguments,1,`getCookies`),s(e);let t=e.get(`cookie`),n={__proto__:null};if(!t)return n;for(let e of t.split(`;`)){let[t,...r]=e.split(`=`);n[t.trim()]=r.join(`=`)}return n}function l(e,t,n){s(e);let r=`deleteCookie`;i.argumentLengthCheck(arguments,2,r),t=i.converters.DOMString(t,r,`name`),n=i.converters.DeleteCookieAttributes(n),f(e,{name:t,value:``,expires:new Date(0),...n})}function u(e){i.argumentLengthCheck(arguments,1,`getSetCookies`),s(e);let t=e.getSetCookie();return t?t.map(e=>n(e)):[]}function d(e){return e=i.converters.DOMString(e),n(e)}function f(e,t){i.argumentLengthCheck(arguments,2,`setCookie`),s(e),t=i.converters.Cookie(t);let n=r(t);n&&e.append(`set-cookie`,n,!0)}i.converters.DeleteCookieAttributes=i.dictionaryConverter([{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null}]),i.converters.Cookie=i.dictionaryConverter([{converter:i.converters.DOMString,key:`name`},{converter:i.converters.DOMString,key:`value`},{converter:i.nullableConverter(e=>typeof e==`number`?i.converters[`unsigned long long`](e):new Date(e)),key:`expires`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters[`long long`]),key:`maxAge`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`secure`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`httpOnly`,defaultValue:()=>null},{converter:i.converters.USVString,key:`sameSite`,allowedValues:[`Strict`,`Lax`,`None`]},{converter:i.sequenceConverter(i.converters.DOMString),key:`unparsed`,defaultValue:()=>[]}]),t.exports={getCookies:c,deleteCookie:l,getSetCookies:u,setCookie:f,parseCookie:d}})),hT=q(((e,t)=>{var{webidl:n}=YC(),{kEnumerableProperty:r}=$(),{kConstruct:i}=AC(),a,o=class e extends Event{#e;constructor(e,t={}){if(e===i){super(arguments[1],arguments[2]),n.util.markAsUncloneable(this);return}let r=`MessageEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.MessageEventInit(t,r,`eventInitDict`),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get data(){return n.brandCheck(this,n.is.MessageEvent),this.#e.data}get origin(){return n.brandCheck(this,n.is.MessageEvent),this.#e.origin}get lastEventId(){return n.brandCheck(this,n.is.MessageEvent),this.#e.lastEventId}get source(){return n.brandCheck(this,n.is.MessageEvent),this.#e.source}get ports(){return n.brandCheck(this,n.is.MessageEvent),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,i=!1,a=null,o=``,s=``,c=null,l=[]){return n.brandCheck(this,n.is.MessageEvent),n.argumentLengthCheck(arguments,1,`MessageEvent.initMessageEvent`),new e(t,{bubbles:r,cancelable:i,data:a,origin:o,lastEventId:s,source:c,ports:l})}static{a=(t,n)=>{let r=new e(i,t,n);return r.#e=n,r.#e.data??=null,r.#e.origin??=``,r.#e.lastEventId??=``,r.#e.source??=null,r.#e.ports??=[],r},n.is.MessageEvent=e=>typeof e==`object`&&!!e&&#e in e}},s=class extends Event{#e;constructor(e,t={}){let r=`CloseEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.CloseEventInit(t),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get wasClean(){return n.brandCheck(this,n.is.CloseEvent),this.#e.wasClean}get code(){return n.brandCheck(this,n.is.CloseEvent),this.#e.code}get reason(){return n.brandCheck(this,n.is.CloseEvent),this.#e.reason}static{n.is.CloseEvent=e=>typeof e==`object`&&!!e&&#e in e}},c=class extends Event{#e;constructor(e,t){let r=`ErrorEvent constructor`;n.argumentLengthCheck(arguments,1,r),super(e,t),n.util.markAsUncloneable(this),e=n.converters.DOMString(e,r,`type`),t=n.converters.ErrorEventInit(t??{}),this.#e=t}get message(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.message}get filename(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.filename}get lineno(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.lineno}get colno(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.colno}get error(){return n.brandCheck(this,n.is.ErrorEvent),this.#e.error}static{n.is.ErrorEvent=e=>typeof e==`object`&&!!e&&#e in e}};Object.defineProperties(o.prototype,{[Symbol.toStringTag]:{value:`MessageEvent`,configurable:!0},data:r,origin:r,lastEventId:r,source:r,ports:r,initMessageEvent:r}),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{value:`CloseEvent`,configurable:!0},reason:r,code:r,wasClean:r}),Object.defineProperties(c.prototype,{[Symbol.toStringTag]:{value:`ErrorEvent`,configurable:!0},message:r,filename:r,lineno:r,colno:r,error:r}),n.converters.MessagePort=n.interfaceConverter(n.is.MessagePort,`MessagePort`),n.converters[`sequence<MessagePort>`]=n.sequenceConverter(n.converters.MessagePort);var l=[{key:`bubbles`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`cancelable`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`composed`,converter:n.converters.boolean,defaultValue:()=>!1}];n.converters.MessageEventInit=n.dictionaryConverter([...l,{key:`data`,converter:n.converters.any,defaultValue:()=>null},{key:`origin`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lastEventId`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`source`,converter:n.nullableConverter(n.converters.MessagePort),defaultValue:()=>null},{key:`ports`,converter:n.converters[`sequence<MessagePort>`],defaultValue:()=>[]}]),n.converters.CloseEventInit=n.dictionaryConverter([...l,{key:`wasClean`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`code`,converter:n.converters[`unsigned short`],defaultValue:()=>0},{key:`reason`,converter:n.converters.USVString,defaultValue:()=>``}]),n.converters.ErrorEventInit=n.dictionaryConverter([...l,{key:`message`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`filename`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lineno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`colno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`error`,converter:n.converters.any}]),t.exports={MessageEvent:o,CloseEvent:s,ErrorEvent:c,createFastMessageEvent:a}})),gT=q(((e,t)=>{t.exports={uid:`258EAFA5-E914-47DA-95CA-C5AB0DC85B11`,sentCloseFrameState:{SENT:1,RECEIVED:2},staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:Buffer.allocUnsafe(0),sendHints:{text:1,typedArray:2,arrayBuffer:3,blob:4}}})),_T=q(((e,t)=>{var{states:n,opcodes:r}=gT(),{isUtf8:i}=J(`node:buffer`),{removeHTTPWhitespace:a}=JC(),{collectASequenceOfCodePointsFast:o}=qC();function s(e){return e===n.CONNECTING}function c(e){return e===n.OPEN}function l(e){return e===n.CLOSING}function u(e){return e===n.CLOSED}function d(e,t,n=(e,t)=>new Event(e,t),r={}){let i=n(e,r);t.dispatchEvent(i)}function f(e,t,n){e.onMessage(t,n)}function p(e){return e.byteLength===e.buffer.byteLength?e.buffer:new Uint8Array(e).buffer}function m(e){if(e.length===0)return!1;for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===44||n===47||n===58||n===59||n===60||n===61||n===62||n===63||n===64||n===91||n===92||n===93||n===123||n===125)return!1}return!0}function h(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function g(e){return e===r.CLOSE||e===r.PING||e===r.PONG}function _(e){return e===r.CONTINUATION}function v(e){return e===r.TEXT||e===r.BINARY}function y(e){return v(e)||_(e)||g(e)}function b(e){let t={position:0},n=new Map;for(;t.position<e.length;){let[r,i=``]=o(`;`,e,t).split(`=`,2);n.set(a(r,!0,!1),a(i,!1,!0)),t.position++}return n}function x(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}let t=Number.parseInt(e,10);return t>=8&&t<=15}function S(e,t){let n;try{n=new URL(e,t)}catch(e){throw new DOMException(e,`SyntaxError`)}if(n.protocol===`http:`?n.protocol=`ws:`:n.protocol===`https:`&&(n.protocol=`wss:`),n.protocol!==`ws:`&&n.protocol!==`wss:`)throw new DOMException(`expected a ws: or wss: url`,`SyntaxError`);if(n.hash.length||n.href.endsWith(`#`))throw new DOMException(`hash`,`SyntaxError`);return n}function C(e,t){if(e!==null&&e!==1e3&&(e<3e3||e>4999))throw new DOMException(`invalid code`,`InvalidAccessError`);if(t!==null){let e=Buffer.byteLength(t);if(e>123)throw new DOMException(`Reason must be less than 123 bytes; received ${e}`,`SyntaxError`)}}t.exports={isConnecting:s,isEstablished:c,isClosing:l,isClosed:u,fireEvent:d,isValidSubprotocol:m,isValidStatusCode:h,websocketMessageReceived:f,utf8Decode:(()=>{if(typeof process.versions.icu==`string`){let e=new TextDecoder(`utf-8`,{fatal:!0});return e.decode.bind(e)}return function(e){if(i(e))return e.toString(`utf-8`);throw TypeError(`Invalid utf-8 received.`)}})(),isControlFrame:g,isContinuationFrame:_,isTextBinaryFrame:v,isValidOpcode:y,parseExtensions:b,isValidClientWindowBits:x,toArrayBuffer:p,getURLRecord:S,validateCloseCodeAndReason:C}})),vT=q(((e,t)=>{var{runtimeFeatures:n}=ZC(),{maxUnsigned16Bit:r,opcodes:i}=gT(),a=8192,o=null,s=a,c=n.has(`crypto`)?J(`node:crypto`).randomFillSync:null;function l(){return s===a&&(s=0,c(o??=Buffer.allocUnsafeSlow(a),0,a)),[o[s++],o[s++],o[s++],o[s++]]}t.exports={WebsocketFrameSend:class{constructor(e){this.frameData=e}createFrame(e){let t=this.frameData,n=l(),i=t?.byteLength??0,a=i,o=6;i>r?(o+=8,a=127):i>125&&(o+=2,a=126);let s=Buffer.allocUnsafe(i+o);s[0]=s[1]=0,s[0]|=128,s[0]=(s[0]&240)+e,s[o-4]=n[0],s[o-3]=n[1],s[o-2]=n[2],s[o-1]=n[3],s[1]=a,a===126?s.writeUInt16BE(i,2):a===127&&(s[2]=s[3]=0,s.writeUIntBE(i,4,6)),s[1]|=128;for(let e=0;e<i;++e)s[o+e]=t[e]^n[e&3];return s}static createFastTextFrame(e){let t=l(),n=e.length;for(let r=0;r<n;++r)e[r]^=t[r&3];let a=n,o=6;n>r?(o+=8,a=127):n>125&&(o+=2,a=126);let s=Buffer.allocUnsafeSlow(o);return s[0]=128|i.TEXT,s[1]=a|128,s[o-4]=t[0],s[o-3]=t[1],s[o-2]=t[2],s[o-1]=t[3],a===126?s.writeUInt16BE(n,2):a===127&&(s[2]=s[3]=0,s.writeUIntBE(n,4,6)),[s,e]}},generateMask:l}})),yT=q(((e,t)=>{var{uid:n,states:r,sentCloseFrameState:i,emptyBuffer:a,opcodes:o}=gT(),{parseExtensions:s,isClosed:c,isClosing:l,isEstablished:u,isConnecting:d,validateCloseCodeAndReason:f}=_T(),{makeRequest:p}=aT(),{fetching:m}=sT(),{Headers:h,getHeadersList:g}=rT(),{getDecodeSplit:_}=XC(),{WebsocketFrameSend:v}=vT(),y=J(`node:assert`),{runtimeFeatures:b}=ZC(),x=b.has(`crypto`)?J(`node:crypto`):null,S=!1;function C(e,t,r,i,a){let o=e;o.protocol=e.protocol===`ws:`?`http:`:`https:`;let c=p({urlList:[o],client:r,serviceWorkers:`none`,referrer:`no-referrer`,mode:`websocket`,credentials:`include`,cache:`no-store`,redirect:`error`,useURLCredentials:!0});a.headers&&(c.headersList=g(new h(a.headers)));let l=x.randomBytes(16).toString(`base64`);c.headersList.append(`sec-websocket-key`,l,!0),c.headersList.append(`sec-websocket-version`,`13`,!0);for(let e of t)c.headersList.append(`sec-websocket-protocol`,e,!0);return c.headersList.append(`sec-websocket-extensions`,`permessage-deflate; client_max_window_bits`,!0),m({request:c,useParallelQueue:!0,dispatcher:a.dispatcher,processResponse(e){if(e.type===`error`||e.status!==101){if(e.socket?.session==null){T(i,e,1002,`Received network error or non-101 status code.`,e.error);return}if(e.status!==200){T(i,e,1002,`Received network error or non-200 status code.`,e.error);return}}if(S===!1&&e.socket?.session!=null&&(process.emitWarning(`WebSocket over HTTP2 is experimental, and subject to change.`,`ExperimentalWarning`),S=!0),t.length!==0&&!e.headersList.get(`Sec-WebSocket-Protocol`)){T(i,e,1002,`Server did not respond with sent protocols.`);return}if(e.socket.session==null&&e.headersList.get(`Upgrade`)?.toLowerCase()!==`websocket`){T(i,e,1002,`Server did not set Upgrade header to "websocket".`);return}if(e.socket.session==null&&e.headersList.get(`Connection`)?.toLowerCase()!==`upgrade`){T(i,e,1002,`Server did not set Connection header to "upgrade".`);return}if(e.socket.session==null&&e.headersList.get(`Sec-WebSocket-Accept`)!==x.hash(`sha1`,l+n,`base64`)){T(i,e,1002,`Incorrect hash received in Sec-WebSocket-Accept header.`);return}let r=e.headersList.get(`Sec-WebSocket-Extensions`),a;if(r!==null&&(a=s(r),!a.has(`permessage-deflate`))){T(i,e,1002,`Sec-WebSocket-Extensions header does not match.`);return}let o=e.headersList.get(`Sec-WebSocket-Protocol`);if(o!==null){let t=_(`sec-websocket-protocol`,c.headersList);if(t===null||!t.includes(o)){T(i,e,1002,`Protocol was not set in the opening handshake.`);return}}e.socket.session!=null&&(e.socket.allowHalfOpen=!1),e.socket.on(`data`,i.onSocketData),e.socket.on(`close`,i.onSocketClose),e.socket.on(`error`,i.onSocketError),i.wasEverConnected=!0,i.onConnectionEstablished(e,a)}})}function w(e,t,n,s=!1){if(t??=null,n??=``,s&&f(t,n),!(c(e.readyState)||l(e.readyState))){if(!u(e.readyState))E(e),e.readyState=r.CLOSING;else if(!e.closeState.has(i.SENT)&&!e.closeState.has(i.RECEIVED)){let s=new v;n.length!==0&&t===null&&(t=1e3),y(t===null||Number.isInteger(t)),t===null&&n.length===0?s.frameData=a:t!==null&&n===null?(s.frameData=Buffer.allocUnsafe(2),s.frameData.writeUInt16BE(t,0)):t!==null&&n!==null?(s.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(n)),s.frameData.writeUInt16BE(t,0),s.frameData.write(n,2,`utf-8`)):s.frameData=a,e.socket.write(s.createFrame(o.CLOSE)),e.closeState.add(i.SENT),e.readyState=r.CLOSING}else e.readyState=r.CLOSING}}function T(e,t,n,r,i){t.socket?.session!=null&&!t.socket.destroyed&&t.socket.destroy(),E(e,n,r,i)}function E(e,t,n,r){u(e.readyState)&&w(e,t,n,!1),e.controller.abort(),d(e.readyState)?e.onSocketClose():e.socket?.destroyed===!1&&e.socket.destroy()}t.exports={establishWebSocketConnection:C,failWebsocketConnection:E,closeWebSocketConnection:w}})),bT=q(((e,t)=>{var{createInflateRaw:n,Z_DEFAULT_WINDOWBITS:r}=J(`node:zlib`),{isValidClientWindowBits:i}=_T(),{MessageSizeExceededError:a}=Q(),o=Buffer.from([0,0,255,255]),s=Symbol(`kBuffer`),c=Symbol(`kLength`);t.exports={PerMessageDeflate:class{#e;#t={};#n=0;constructor(e,t){this.#t.serverNoContextTakeover=e.has(`server_no_context_takeover`),this.#t.serverMaxWindowBits=e.get(`server_max_window_bits`),this.#n=t.maxPayloadSize}decompress(e,t,l){if(!this.#e){let e=r;if(this.#t.serverMaxWindowBits){if(!i(this.#t.serverMaxWindowBits)){l(Error(`Invalid server_max_window_bits`));return}e=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=n({windowBits:e})}catch(e){l(e);return}this.#e[s]=[],this.#e[c]=0,this.#e.on(`data`,e=>{if(this.#e[c]+=e.length,this.#n>0&&this.#e[c]>this.#n){l(new a),this.#e.removeAllListeners(),this.#e.destroy(),this.#e=null;return}this.#e[s].push(e)}),this.#e.on(`error`,e=>{this.#e=null,l(e)})}this.#e.write(e),t&&this.#e.write(o),this.#e.flush(()=>{if(!this.#e)return;let e=Buffer.concat(this.#e[s],this.#e[c]);this.#e[s].length=0,this.#e[c]=0,l(null,e)})}}}})),xT=q(((e,t)=>{var{Writable:n}=J(`node:stream`),r=J(`node:assert`),{parserStates:i,opcodes:a,states:o,emptyBuffer:s,sentCloseFrameState:c}=gT(),{isValidStatusCode:l,isValidOpcode:u,websocketMessageReceived:d,utf8Decode:f,isControlFrame:p,isTextBinaryFrame:m,isContinuationFrame:h}=_T(),{failWebsocketConnection:g}=yT(),{WebsocketFrameSend:_}=vT(),{PerMessageDeflate:v}=bT(),{MessageSizeExceededError:y}=Q();t.exports={ByteParser:class extends n{#e=[];#t=0;#n=0;#r=!1;#i=i.INFO;#a={};#o=[];#s;#c;#l;#u;constructor(e,t,n={}){super(),this.#c=e,this.#s=t??new Map,this.#l=n.maxFragments??0,this.#u=n.maxPayloadSize??0,this.#s.has(`permessage-deflate`)&&this.#s.set(`permessage-deflate`,new v(t,n))}_write(e,t,n){this.#e.push(e),this.#n+=e.length,this.#r=!0,this.run(n)}#d(){return this.#u>0&&!p(this.#a.opcode)&&this.#a.payloadLength+this.#t>this.#u?(g(this.#c,1009,`Payload size exceeds maximum allowed size`),!1):!0}run(e){for(;this.#r;)if(this.#i===i.INFO){if(this.#n<2)return e();let t=this.consume(2),n=!!(t[0]&128),r=t[0]&15,o=(t[1]&128)==128,s=!n&&r!==a.CONTINUATION,c=t[1]&127,l=t[0]&64,d=t[0]&32,f=t[0]&16;if(!u(r))return g(this.#c,1002,`Invalid opcode received`),e();if(o)return g(this.#c,1002,`Frame cannot be masked`),e();if(l!==0&&!this.#s.has(`permessage-deflate`)){g(this.#c,1002,`Expected RSV1 to be clear.`);return}if(d!==0||f!==0){g(this.#c,1002,`RSV1, RSV2, RSV3 must be clear`);return}if(s&&!m(r)){g(this.#c,1002,`Invalid frame type was fragmented.`);return}if(m(r)&&this.#o.length>0){g(this.#c,1002,`Expected continuation frame`);return}if(this.#a.fragmented&&s){g(this.#c,1002,`Fragmented frame exceeded 125 bytes.`);return}if((c>125||s)&&p(r)){g(this.#c,1002,`Control frame either too large or fragmented`);return}if(h(r)&&this.#o.length===0&&!this.#a.compressed){g(this.#c,1002,`Unexpected continuation frame`);return}if(c<=125){if(this.#a.payloadLength=c,this.#i=i.READ_DATA,!this.#d())return}else c===126?this.#i=i.PAYLOADLENGTH_16:c===127&&(this.#i=i.PAYLOADLENGTH_64);m(r)&&(this.#a.binaryType=r,this.#a.compressed=l!==0),this.#a.opcode=r,this.#a.masked=o,this.#a.fin=n,this.#a.fragmented=s}else if(this.#i===i.PAYLOADLENGTH_16){if(this.#n<2)return e();let t=this.consume(2);if(this.#a.payloadLength=t.readUInt16BE(0),this.#i=i.READ_DATA,!this.#d())return}else if(this.#i===i.PAYLOADLENGTH_64){if(this.#n<8)return e();let t=this.consume(8),n=t.readUInt32BE(0),r=t.readUInt32BE(4);if(n!==0||r>2**31-1){g(this.#c,1009,`Received payload length > 2^31 bytes.`);return}if(this.#a.payloadLength=r,this.#i=i.READ_DATA,!this.#d())return}else if(this.#i===i.READ_DATA){if(this.#n<this.#a.payloadLength)return e();let t=this.consume(this.#a.payloadLength);if(p(this.#a.opcode))this.#r=this.parseControlFrame(t),this.#i=i.INFO;else if(this.#a.compressed){this.#s.get(`permessage-deflate`).decompress(t,this.#a.fin,(t,n)=>{if(t){let e=t instanceof y?1009:1007;g(this.#c,e,t.message);return}if(this.writeFragments(n)){if(this.#u>0&&this.#t>this.#u){g(this.#c,1009,new y().message);return}if(!this.#a.fin){this.#i=i.INFO,this.#r=!0,this.run(e);return}d(this.#c,this.#a.binaryType,this.consumeFragments()),this.#r=!0,this.#i=i.INFO,this.run(e)}},this.#t),this.#r=!1;break}else{if(!this.writeFragments(t))return;!this.#a.fragmented&&this.#a.fin&&d(this.#c,this.#a.binaryType,this.consumeFragments()),this.#i=i.INFO}}}consume(e){if(e>this.#n)throw Error(`Called consume() before buffers satiated.`);if(e===0)return s;this.#n-=e;let t=this.#e[0];if(t.length>e)return this.#e[0]=t.subarray(e,t.length),t.subarray(0,e);if(t.length===e)return this.#e.shift();{let t=0,n=Buffer.allocUnsafeSlow(e);for(;t!==e;){let r=this.#e[0],i=r.length;if(i+t===e){n.set(this.#e.shift(),t);break}if(i+t>e){n.set(r.subarray(0,e-t),t),this.#e[0]=r.subarray(e-t);break}n.set(this.#e.shift(),t),t+=i}return n}}writeFragments(e){return this.#l>0&&this.#o.length===this.#l?(g(this.#c,1008,`Too many message fragments`),!1):(this.#t+=e.length,this.#o.push(e),!0)}consumeFragments(){let e=this.#o;if(this.#a.compressed=!1,e.length===1)return this.#t=0,e.shift();let t=0,n=Buffer.allocUnsafeSlow(this.#t);for(let r=0;r<e.length;++r){let i=e[r];n.set(i,t),t+=i.length}return this.#o=[],this.#t=0,n}parseCloseBody(e){r(e.length!==1);let t;if(e.length>=2&&(t=e.readUInt16BE(0)),t!==void 0&&!l(t))return{code:1002,reason:`Invalid status code`,error:!0};let n=e.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=f(n)}catch{return{code:1007,reason:`Invalid UTF-8`,error:!0}}return{code:t,reason:n,error:!1}}parseControlFrame(e){let{opcode:t,payloadLength:n}=this.#a;if(t===a.CLOSE){if(n===1)return g(this.#c,1002,`Received close frame with a 1-byte body.`),!1;if(this.#a.closeInfo=this.parseCloseBody(e),this.#a.closeInfo.error){let{code:e,reason:t}=this.#a.closeInfo;return g(this.#c,e,t),!1}if(!this.#c.closeState.has(c.SENT)&&!this.#c.closeState.has(c.RECEIVED)){let e=s;this.#a.closeInfo.code&&(e=Buffer.allocUnsafe(2),e.writeUInt16BE(this.#a.closeInfo.code,0));let t=new _(e);this.#c.socket.write(t.createFrame(a.CLOSE)),this.#c.closeState.add(c.SENT)}return this.#c.readyState=o.CLOSING,this.#c.closeState.add(c.RECEIVED),!1}if(t===a.PING){if(!this.#c.closeState.has(c.RECEIVED)){let t=new _(e);this.#c.socket.write(t.createFrame(a.PONG)),this.#c.onPing(e)}}else t===a.PONG&&this.#c.onPong(e);return!0}get closingInfo(){return this.#a.closeInfo}}}})),ST=q(((e,t)=>{var{WebsocketFrameSend:n}=vT(),{opcodes:r,sendHints:i}=gT(),a=iw(),o=class{#e=new a;#t=!1;#n;constructor(e){this.#n=e}add(e,t,r){if(r!==i.blob){if(this.#t){let n={promise:null,callback:t,frame:s(e,r)};this.#e.push(n)}else if(r===i.text){let{0:r,1:i}=n.createFastTextFrame(e);this.#n.cork(),this.#n.write(r),this.#n.write(i,t),this.#n.uncork()}else this.#n.write(s(e,r),t);return}let a={promise:e.arrayBuffer().then(e=>{a.promise=null,a.frame=s(e,r)}),callback:t,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let t=e.shift();t.promise!==null&&await t.promise,this.#n.write(t.frame,t.callback),t.callback=t.frame=null}this.#t=!1}};function s(e,t){return new n(c(e,t)).createFrame(t===i.text?r.TEXT:r.BINARY)}function c(e,t){switch(t){case i.text:case i.typedArray:return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);case i.arrayBuffer:case i.blob:return new Uint8Array(e)}}t.exports={SendQueue:o}})),CT=q(((e,t)=>{var{isArrayBuffer:n}=J(`node:util/types`),{webidl:r}=YC(),{URLSerializer:i}=JC(),{environmentSettingsObject:a}=XC(),{staticPropertyDescriptors:o,states:s,sentCloseFrameState:c,sendHints:l,opcodes:u}=gT(),{isConnecting:d,isEstablished:f,isClosing:p,isClosed:m,isValidSubprotocol:h,fireEvent:g,utf8Decode:_,toArrayBuffer:v,getURLRecord:y}=_T(),{establishWebSocketConnection:b,closeWebSocketConnection:x,failWebsocketConnection:S}=yT(),{ByteParser:C}=xT(),{kEnumerableProperty:w}=$(),{getGlobalDispatcher:T}=zw(),{ErrorEvent:E,CloseEvent:D,createFastMessageEvent:O}=hT(),{SendQueue:k}=ST(),{WebsocketFrameSend:A}=vT(),{channels:j}=FC(),M=Symbol.for(`nodejs.ref`),N=Symbol.for(`nodejs.unref`),P;function F(e){return typeof e?.address==`function`?e.address():typeof e?.session?.socket?.address==`function`?e.session.socket.address():null}var I=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n=``;#r=``;#i=!0;#a;#o={onConnectionEstablished:(e,t)=>this.#u(e,t),onMessage:(e,t)=>this.#d(e,t),onParserError:e=>S(this.#o,null,e.message),onParserDrain:()=>this.#f(),onSocketData:e=>{this.#l.write(e)||this.#o.socket.pause()},onSocketError:e=>{this.#o.readyState=s.CLOSING,j.socketError.hasSubscribers&&j.socketError.publish(e),this.#o.socket.destroy()},onSocketClose:()=>this.#p(),onPing:e=>{j.ping.hasSubscribers&&j.ping.publish({payload:e,websocket:this})},onPong:e=>{j.pong.hasSubscribers&&j.pong.publish({payload:e,websocket:this})},readyState:s.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#s;#c;#l;constructor(t,n=[]){super(),r.util.markAsUncloneable(this);let i=`WebSocket constructor`;r.argumentLengthCheck(arguments,1,i);let o=r.converters[`DOMString or sequence<DOMString> or WebSocketInit`](n,i,`options`);t=r.converters.USVString(t),n=o.protocols;let s=a.settingsObject.baseUrl,c=y(t,s);if(typeof n==`string`&&(n=[n]),n.length!==new Set(n.map(e=>e.toLowerCase())).size||n.length>0&&!n.every(e=>h(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);this.#s=new URL(c.href);let l=a.settingsObject;this.#o.controller=b(c,n,l,this.#o,o),this.#o.readyState=e.CONNECTING,this.#c=`blob`}[M](){this.#i=!0,this.#o.socket?.ref?.()}[N](){this.#i=!1,this.#o.socket?.unref?.()}close(e=void 0,t=void 0){r.brandCheck(this,r.is.WebSocket),e!==void 0&&(e=r.converters[`unsigned short`](e,`WebSocket.close`,`code`,r.attributes.Clamp)),t!==void 0&&(t=r.converters.USVString(t)),e??=null,t??=``,x(this.#o,e,t,!0)}send(e){r.brandCheck(this,r.is.WebSocket);let t=`WebSocket.send`;if(r.argumentLengthCheck(arguments,1,t),e=r.converters.WebSocketSendData(e,t,`data`),d(this.#o.readyState))throw new DOMException(`Sent before connected.`,`InvalidStateError`);if(f(this.#o.readyState)&&!p(this.#o.readyState)){if(typeof e==`string`){let t=Buffer.from(e);this.#t+=t.byteLength,this.#a.add(t,()=>{this.#t-=t.byteLength},l.text)}else n(e)?(this.#t+=e.byteLength,this.#a.add(e,()=>{this.#t-=e.byteLength},l.arrayBuffer)):ArrayBuffer.isView(e)?(this.#t+=e.byteLength,this.#a.add(e,()=>{this.#t-=e.byteLength},l.typedArray)):r.is.Blob(e)&&(this.#t+=e.size,this.#a.add(e,()=>{this.#t-=e.size},l.blob))}}get readyState(){return r.brandCheck(this,r.is.WebSocket),this.#o.readyState}get bufferedAmount(){return r.brandCheck(this,r.is.WebSocket),this.#t}get url(){return r.brandCheck(this,r.is.WebSocket),i(this.#s)}get extensions(){return r.brandCheck(this,r.is.WebSocket),this.#r}get protocol(){return r.brandCheck(this,r.is.WebSocket),this.#n}get onopen(){return r.brandCheck(this,r.is.WebSocket),this.#e.open}set onopen(e){r.brandCheck(this,r.is.WebSocket),this.#e.open&&this.removeEventListener(`open`,this.#e.open);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.open=null:(this.addEventListener(`open`,t),this.#e.open=e)}get onerror(){return r.brandCheck(this,r.is.WebSocket),this.#e.error}set onerror(e){r.brandCheck(this,r.is.WebSocket),this.#e.error&&this.removeEventListener(`error`,this.#e.error);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.error=null:(this.addEventListener(`error`,t),this.#e.error=e)}get onclose(){return r.brandCheck(this,r.is.WebSocket),this.#e.close}set onclose(e){r.brandCheck(this,r.is.WebSocket),this.#e.close&&this.removeEventListener(`close`,this.#e.close);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.close=null:(this.addEventListener(`close`,t),this.#e.close=e)}get onmessage(){return r.brandCheck(this,r.is.WebSocket),this.#e.message}set onmessage(e){r.brandCheck(this,r.is.WebSocket),this.#e.message&&this.removeEventListener(`message`,this.#e.message);let t=r.converters.EventHandlerNonNull(e);t===null?this.#e.message=null:(this.addEventListener(`message`,t),this.#e.message=e)}get binaryType(){return r.brandCheck(this,r.is.WebSocket),this.#c}set binaryType(e){r.brandCheck(this,r.is.WebSocket),this.#c=e!==`blob`&&e!==`arraybuffer`?`blob`:e}#u(e,t){this.#o.socket=e.socket,this.#i||this.#o.socket.unref?.();let n=this.#o.controller.dispatcher?.webSocketOptions?.maxFragments,r=this.#o.controller.dispatcher?.webSocketOptions?.maxPayloadSize,i=new C(this.#o,t,{maxFragments:n,maxPayloadSize:r});i.on(`drain`,()=>this.#o.onParserDrain()),i.on(`error`,e=>this.#o.onParserError(e)),this.#l=i,this.#a=new k(e.socket),this.#o.readyState=s.OPEN;let a=e.headersList.get(`sec-websocket-extensions`);a!==null&&(this.#r=a);let o=e.headersList.get(`sec-websocket-protocol`);if(o!==null&&(this.#n=o),g(`open`,this),j.open.hasSubscribers){let t=e.headersList.entries;j.open.publish({address:F(e.socket),protocol:this.#n,extensions:this.#r,websocket:this,handshakeResponse:{status:e.status,statusText:e.statusText,headers:t}})}}#d(e,t){if(this.#o.readyState!==s.OPEN)return;let n;if(e===u.TEXT)try{n=_(t)}catch{S(this.#o,1007,`Received invalid UTF-8 in text frame.`);return}else e===u.BINARY&&(n=this.#c===`blob`?new Blob([t]):v(t));g(`message`,this,O,{origin:this.#s.origin,data:n})}#f(){this.#o.socket.resume()}#p(){let e=this.#o.closeState.has(c.SENT)&&this.#o.closeState.has(c.RECEIVED),t=1005,n=``,r=this.#l?.closingInfo;r&&!r.error&&(t=r.code??1005,n=r.reason),this.#o.readyState=s.CLOSED,this.#o.closeState.has(c.RECEIVED)||(t=1006,g(`error`,this,(e,t)=>new E(e,t),{error:TypeError(n)})),g(`close`,this,(e,t)=>new D(e,t),{wasClean:e,code:t,reason:n}),j.close.hasSubscribers&&j.close.publish({websocket:this,code:t,reason:n})}static{P=(e,t)=>{if(Buffer.isBuffer(t)){if(t.length>125)throw TypeError(`A PING frame cannot have a body larger than 125 bytes.`)}else if(t!==void 0)throw TypeError(`Expected buffer payload`);let n=e.#o.readyState;if(f(n)&&!p(n)&&!m(n)){let n=new A(t);e.#o.socket.write(n.createFrame(u.PING))}},r.is.WebSocket=e=>typeof e==`object`&&!!e&&#o in e}};I.CONNECTING=I.prototype.CONNECTING=s.CONNECTING,I.OPEN=I.prototype.OPEN=s.OPEN,I.CLOSING=I.prototype.CLOSING=s.CLOSING,I.CLOSED=I.prototype.CLOSED=s.CLOSED,Object.defineProperties(I.prototype,{CONNECTING:o,OPEN:o,CLOSING:o,CLOSED:o,url:w,readyState:w,bufferedAmount:w,onopen:w,onerror:w,onclose:w,close:w,onmessage:w,binaryType:w,send:w,extensions:w,protocol:w,[Symbol.toStringTag]:{value:`WebSocket`,writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(I,{CONNECTING:o,OPEN:o,CLOSING:o,CLOSED:o}),r.converters[`sequence<DOMString>`]=r.sequenceConverter(r.converters.DOMString),r.converters[`DOMString or sequence<DOMString>`]=function(e,t,n){return r.util.Type(e)===r.util.Types.OBJECT&&Symbol.iterator in e?r.converters[`sequence<DOMString>`](e):r.converters.DOMString(e,t,n)},r.converters.WebSocketInit=r.dictionaryConverter([{key:`protocols`,converter:r.converters[`DOMString or sequence<DOMString>`],defaultValue:()=>[]},{key:`dispatcher`,converter:r.converters.any,defaultValue:()=>T()},{key:`headers`,converter:r.nullableConverter(r.converters.HeadersInit)}]),r.converters[`DOMString or sequence<DOMString> or WebSocketInit`]=function(e){return r.util.Type(e)===r.util.Types.OBJECT&&!(Symbol.iterator in e)?r.converters.WebSocketInit(e):{protocols:r.converters[`DOMString or sequence<DOMString>`](e)}},r.converters.WebSocketSendData=function(e){return r.util.Type(e)===r.util.Types.OBJECT&&(r.is.Blob(e)||r.is.BufferSource(e))?e:r.converters.USVString(e)},t.exports={WebSocket:I,ping:P}})),wT=q(((e,t)=>{var{webidl:n}=YC(),{validateCloseCodeAndReason:r}=_T(),{kConstruct:i}=AC(),{kEnumerableProperty:a}=$();function o(){class e extends DOMException{get reason(){return``}}return new e().reason===void 0?new Proxy(DOMException,{construct(e,t,n){let r=Reflect.construct(e,t,e);return Object.setPrototypeOf(r,n.prototype),r}}):DOMException}var s,c=class e extends o(){#e;#t;constructor(e=``,t=void 0){if(e=n.converters.DOMString(e,`WebSocketError`,`message`),super(e,`WebSocketError`),t===i)return;t!==null&&(t=n.converters.WebSocketCloseInfo(t));let a=t.closeCode??null,o=t.reason??``;r(a,o),o.length!==0&&a===null&&(a=1e3),this.#e=a,this.#t=o}get closeCode(){return this.#e}get reason(){return this.#t}static{s=(t,n,r)=>{let a=new e(t,i);return a.#e=n,a.#t=r,a},n.is.WebSocketError=e=>typeof e==`object`&&!!e&&#t in e}};Object.defineProperties(c.prototype,{closeCode:a,reason:a,[Symbol.toStringTag]:{value:`WebSocketError`,writable:!1,enumerable:!1,configurable:!0}}),t.exports={WebSocketError:c,createUnvalidatedWebSocketError:s}})),TT=q(((e,t)=>{var{addAbortListener:n}=J(`node:events`),{environmentSettingsObject:r,readableStreamClose:i}=XC(),{states:a,opcodes:o,sentCloseFrameState:s}=gT(),{webidl:c}=YC(),{getURLRecord:l,isValidSubprotocol:u,isEstablished:d,utf8Decode:f}=_T(),{establishWebSocketConnection:p,failWebsocketConnection:m,closeWebSocketConnection:h}=yT(),{channels:g}=FC(),{WebsocketFrameSend:_}=vT(),{ByteParser:v}=xT(),{WebSocketError:y,createUnvalidatedWebSocketError:b}=wT(),{kEnumerableProperty:x}=$(),{utf8DecodeBytes:S}=KC(),C=!1,w=class{#e;#t;#n;#r;#i;#a;#o=!1;#s={onConnectionEstablished:(e,t)=>this.#u(e,t),onMessage:(e,t)=>this.#d(e,t),onParserError:e=>m(this.#s,null,e.message),onParserDrain:()=>this.#s.socket.resume(),onSocketData:e=>{this.#c.write(e)||this.#s.socket.pause()},onSocketError:e=>{this.#s.readyState=a.CLOSING,g.socketError.hasSubscribers&&g.socketError.publish(e),this.#s.socket.destroy()},onSocketClose:()=>queueMicrotask(()=>this.#f()),onPing:()=>{},onPong:()=>{},readyState:a.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#c;constructor(e,t=void 0){C||=(process.emitWarning(`WebSocketStream is experimental! Expect it to change at any time.`,{code:`UNDICI-WSS`}),!0),c.argumentLengthCheck(arguments,1,`WebSocket`),e=c.converters.USVString(e),t!==null&&(t=c.converters.WebSocketStreamOptions(t));let i=r.settingsObject.baseUrl,o=l(e,i),s=t.protocols;if(s.length!==new Set(s.map(e=>e.toLowerCase())).size||s.length>0&&!s.every(e=>u(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);if(this.#e=o.toString(),this.#t=Promise.withResolvers(),this.#n=Promise.withResolvers(),t.signal!=null){let e=t.signal;if(e.aborted){this.#t.reject(e.reason),this.#n.reject(e.reason);return}n(e,()=>{d(this.#s.readyState)||(m(this.#s),this.#s.readyState=a.CLOSING,this.#t.reject(e.reason),this.#n.reject(e.reason),this.#o=!0)})}let f=r.settingsObject;this.#s.controller=p(o,s,f,this.#s,t)}get url(){return this.#e.toString()}get opened(){return this.#t.promise}get closed(){return this.#n.promise}close(e=void 0){e!==null&&(e=c.converters.WebSocketCloseInfo(e));let t=e.closeCode??null,n=e.reason;h(this.#s,t,n,!0)}#l(e){e=c.converters.WebSocketStreamWrite(e);let t=Promise.withResolvers(),n=null,r=null;if(c.is.BufferSource(e))n=new Uint8Array(ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e.slice()),r=o.BINARY;else{let i;try{i=c.converters.DOMString(e)}catch(e){return t.reject(e),t.promise}n=new TextEncoder().encode(i),r=o.TEXT}if(!this.#s.closeState.has(s.SENT)&&!this.#s.closeState.has(s.RECEIVED)){let e=new _(n);this.#s.socket.write(e.createFrame(r),()=>{t.resolve(void 0)})}else t.resolve(void 0);return t.promise}#u(e,t){this.#s.socket=e.socket;let n=this.#s.controller.dispatcher?.webSocketOptions?.maxFragments,r=this.#s.controller.dispatcher?.webSocketOptions?.maxPayloadSize,i=new v(this.#s,t,{maxFragments:n,maxPayloadSize:r});i.on(`drain`,()=>this.#s.onParserDrain()),i.on(`error`,e=>this.#s.onParserError(e)),this.#c=i,this.#s.readyState=a.OPEN;let o=e.headersList.get(`sec-websocket-extensions`)??``,s=e.headersList.get(`sec-websocket-protocol`)??``,c=new ReadableStream({start:e=>{this.#i=e},pull:()=>this.#m(),cancel:e=>this.#h(e)}),l=new WritableStream({start:e=>{this.#a=e},write:e=>this.#l(e),close:()=>h(this.#s,null,null),abort:e=>this.#p(e)});this.#r=c,this.#t.resolve({extensions:o,protocol:s,readable:c,writable:l})}#d(e,t){if(this.#s.readyState!==a.OPEN)return;let n;if(e===o.TEXT)try{n=f(t)}catch{m(this.#s,1007,`Received invalid UTF-8 in text frame.`);return}else e===o.BINARY&&(n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength));this.#i.enqueue(n),this.#i.desiredSize<=0&&this.#s.socket.pause()}#f(){let e=this.#s.closeState.has(s.SENT)&&this.#s.closeState.has(s.RECEIVED);if(this.#s.readyState=a.CLOSED,this.#o)return;this.#s.wasEverConnected||this.#t.reject(new y(`Socket never opened`));let t=this.#c?.closingInfo,n=t?.code??1005;this.#s.closeState.has(s.RECEIVED)||(n=1006);let r=t?.reason==null?``:S(Buffer.from(t.reason));if(e)i(this.#i),this.#a.error(new DOMException(`A closed WebSocketStream cannot be written to`,`InvalidStateError`)),this.#n.resolve({closeCode:n,reason:r});else{let e=b(`unclean close`,n,r);this.#i?.error(e),this.#a?.error(e),this.#n.reject(e)}}#p(e){let t=null,n=``;c.is.WebSocketError(e)&&(t=e.closeCode,n=e.reason),h(this.#s,t,n)}#m(){this.#s.socket.resume()}#h(e){this.#p(e)}};Object.defineProperties(w.prototype,{url:x,opened:x,closed:x,close:x,[Symbol.toStringTag]:{value:`WebSocketStream`,writable:!1,enumerable:!1,configurable:!0}}),c.converters.WebSocketStreamOptions=c.dictionaryConverter([{key:`protocols`,converter:c.sequenceConverter(c.converters.USVString),defaultValue:()=>[]},{key:`signal`,converter:c.nullableConverter(c.converters.AbortSignal),defaultValue:()=>null}]),c.converters.WebSocketCloseInfo=c.dictionaryConverter([{key:`closeCode`,converter:e=>c.converters[`unsigned short`](e,c.attributes.EnforceRange)},{key:`reason`,converter:c.converters.USVString,defaultValue:()=>``}]),c.converters.WebSocketStreamWrite=function(e){return typeof e==`string`?c.converters.USVString(e):c.converters.BufferSource(e)},t.exports={WebSocketStream:w}})),ET=q(((e,t)=>{var{makeRequest:n}=aT();function r(e){return e.indexOf(`\0`)===-1}function i(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)<48||e.charCodeAt(t)>57)return!1;return!0}function a(e,t,r,i){let a=r===`no cors`?`no-cors`:`cors`;i&&a===`no-cors`&&(a=`same-origin`);let o=`include`;return r===`anonymous`&&(o=`same-origin`),n({urlList:[e],destination:t,mode:a,credentials:o,useURLCredentials:!0})}t.exports={isValidLastEventId:r,isASCIINumber:i,createPotentialCORSRequest:a}})),DT=q(((e,t)=>{var n=J(`node:buffer`),{Transform:r}=J(`node:stream`),{isASCIINumber:i,isValidLastEventId:a}=ET(),o=[239,187,191],s=10,c=13,l=58,u=32,d=n.kStringMaxLength,f=Buffer.from(`data`),p=Buffer.from(`event`),m=Buffer.from(`id`),h=Buffer.from(`retry`);function g(e,t){if(t>=e.length)return!1;for(let n=t;n<e.length;n++)if(e[n]<48||e[n]>57)return!1;return!0}function _(e,t){for(let n=t;n<e.length;n++)if(e[n]===0)return!1;return!0}function v(e,t,n){if(t!==n.length)return!1;for(let r=0;r<t;r++)if(e[r]!==n[r])return!1;return!0}function y(){let e=Error(`EventSource message size exceeded`);return e.aborted=!1,e}t.exports={EventSourceStream:class extends r{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;eventDataSize=0;maxEventSize;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},this.maxEventSize=e.maxEventSize??d,e.push&&(this.push=e.push)}_transform(e,t,n){if(e.length===0){n();return}if(this.chunks.push(e),this.checkBOM&&this.handleBOM()){n();return}for(;this.hasCurrentByte();){let e=this.currentByte();if(this.eventEndCheck){if(this.crlfCheck){if(e===s){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(e===s||e===c){e===c&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(e===s||e===c){e===c&&(this.crlfCheck=!0);try{this.parseLine(this.readLine(),this.event)}catch(e){n(e);return}this.consumeCurrentByte(),this.eventEndCheck=!0;continue}this.advanceCursor()}n()}parseLine(e,t){if(e.length===0)return;let n=e.indexOf(l);if(n===0)return;let r=e.length,i=e.length;if(n!==-1&&(r=n,i=n+1,e[i]===u&&++i),v(e,r,f)){let n=e.length-i,r=this.eventDataSize+(t.data===void 0?0:1)+n;if(this.maxEventSize>0&&r>this.maxEventSize)throw y();let a=e.toString(`utf8`,i);t.data===void 0?t.data=a:t.data+=`\n${a}`,this.eventDataSize=r;return}if(v(e,r,h)){g(e,i)&&(t.retry=e.toString(`utf8`,i));return}if(v(e,r,m)){_(e,i)&&(t.id=e.toString(`utf8`,i));return}if(v(e,r,p)){let n=e.toString(`utf8`,i);n.length>0&&(t.event=n)}}processEvent(e){e.retry&&i(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id!==void 0&&a(e.id)&&(this.state.lastEventId=e.id),e.data!==void 0&&this.push({type:e.event||`message`,options:{data:e.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event.data=void 0,this.event.event=void 0,this.event.id=void 0,this.event.retry=void 0,this.eventDataSize=0}hasPendingEvent(){return this.event.data!==void 0||this.event.event!==void 0||this.event.id!==void 0||this.event.retry!==void 0}hasCurrentByte(){return this.chunkIndex<this.chunks.length&&this.pos<this.chunks[this.chunkIndex].length}currentByte(){return this.chunks[this.chunkIndex][this.pos]}consumeCurrentByte(){this.advanceCursor(),this.syncLineStartToCursor()}advanceCursor(){for(this.pos++;this.chunkIndex<this.chunks.length&&this.pos>=this.chunks[this.chunkIndex].length;)this.chunkIndex++,this.pos=0}syncLineStartToCursor(){this.lineChunkIndex=this.chunkIndex,this.linePos=this.pos,this.dropConsumedChunks()}dropConsumedChunks(){for(;this.lineChunkIndex>0;)this.chunks.shift(),this.lineChunkIndex--,this.chunkIndex--;this.chunkIndex===this.chunks.length&&(this.chunks.length=0,this.chunkIndex=0,this.pos=0,this.lineChunkIndex=0,this.linePos=0)}readLine(){if(this.lineChunkIndex===this.chunkIndex)return this.chunks[this.chunkIndex].subarray(this.linePos,this.pos);let e=[],t=0;for(let n=this.lineChunkIndex;n<=this.chunkIndex;n++){let r=this.chunks[n],i=n===this.lineChunkIndex?this.linePos:0,a=n===this.chunkIndex?this.pos:r.length,o=r.subarray(i,a);t+=o.length,e.push(o)}return Buffer.concat(e,t)}peekBufferedByte(e){let t=this.lineChunkIndex,n=this.linePos;for(;t<this.chunks.length;){let r=this.chunks[t],i=r.length-n;if(e<i)return r[n+e];e-=i,t++,n=0}}discardLeadingBytes(e){for(;e>0&&this.lineChunkIndex<this.chunks.length;){let t=this.chunks[this.lineChunkIndex].length-this.linePos;e<t?(this.linePos+=e,e=0):(e-=t,this.lineChunkIndex++,this.linePos=0)}this.chunkIndex=this.lineChunkIndex,this.pos=this.linePos,this.dropConsumedChunks()}handleBOM(){let e=this.peekBufferedByte(0),t=this.peekBufferedByte(1),n=this.peekBufferedByte(2);return t===void 0?(e===o[0]||(this.checkBOM=!1),!0):n===void 0?e===o[0]&&t===o[1]||(this.checkBOM=!1,!1):(e===o[0]&&t===o[1]&&n===o[2]&&this.discardLeadingBytes(3),this.checkBOM=!1,!this.hasCurrentByte())}}}})),OT=q(((e,t)=>{var{pipeline:n}=J(`node:stream`),{fetching:r}=sT(),{webidl:i}=YC(),{EventSourceStream:a}=DT(),{parseMIMEType:o}=JC(),{createFastMessageEvent:s}=hT(),{isNetworkError:c}=iT(),{isValidHeaderValue:l,kEnumerableProperty:u}=$(),{environmentSettingsObject:d}=XC(),{createPotentialCORSRequest:f}=ET(),{getGlobalDispatcher:p}=zw(),{isomorphicDecode:m}=qC(),h=new TextEncoder,g=!1,_=3e3,v=0,y=1,b=2,x=`anonymous`,S=`use-credentials`,C=class extends EventTarget{#e={open:null,error:null,message:null};#t;#n=!1;#r=v;#i=null;#a=null;#o;#s;constructor(e,t={}){super(),i.util.markAsUncloneable(this);let n=`EventSource constructor`;i.argumentLengthCheck(arguments,1,n),g||(g=!0,process.emitWarning(`EventSource is experimental, expect them to change at any time.`,{code:`UNDICI-ES`})),e=i.converters.USVString(e),t=i.converters.EventSourceInitDict(t,n,`eventSourceInitDict`),this.#o=t.node.dispatcher||t.dispatcher,this.#s={lastEventId:``,reconnectionTime:t.node.reconnectionTime};let r=d,a;try{a=new URL(e,r.settingsObject.baseUrl),this.#s.origin=a.origin}catch(e){throw new DOMException(e,`SyntaxError`)}this.#t=a.href;let o=x;t.withCredentials===!0&&(o=S,this.#n=!0);let s=f(a,``,o);s.client=d.settingsObject,s.headersList.set(`Accept`,`text/event-stream`),s.cache=`no-store`,s.initiator=`other`,this.#i=s,this.#c()}get readyState(){return i.brandCheck(this,i.is.EventSource),this.#r}get url(){return i.brandCheck(this,i.is.EventSource),this.#t}get withCredentials(){return i.brandCheck(this,i.is.EventSource),this.#n}#c(){if(this.#r===b)return;this.#r=v;let e={request:this.#i,dispatcher:this.#o};e.processResponseEndOfBody=e=>{if(!c(e))return this.#l()},e.processResponse=e=>{if(c(e)){if(e.aborted){this.close(),this.dispatchEvent(new Event(`error`));return}this.#l();return}let t=e.headersList.get(`content-type`,!0),r=t===null?`failure`:o(t),i=r!==`failure`&&r.essence===`text/event-stream`;if(e.status!==200||i===!1){this.close(),this.dispatchEvent(new Event(`error`));return}this.#r=y,this.dispatchEvent(new Event(`open`)),this.#s.origin=e.urlList[e.urlList.length-1].origin;let l=new a({eventSourceSettings:this.#s,maxEventSize:this.#o.eventSourceOptions?.maxEventSize,push:e=>{this.dispatchEvent(s(e.type,e.options))}});n(e.body.stream,l,e=>{e?.aborted===!1&&(this.close(),this.dispatchEvent(new Event(`error`)))})},this.#a=r(e)}#l(){this.#r!==b&&(this.#r=v,this.dispatchEvent(new Event(`error`)),setTimeout(()=>{if(this.#r===v){if(this.#i.headersList.delete(`last-event-id`,!0),this.#s.lastEventId.length){let e=m(h.encode(this.#s.lastEventId));l(e)&&this.#i.headersList.set(`last-event-id`,e,!0)}this.#c()}},this.#s.reconnectionTime)?.unref())}close(){i.brandCheck(this,i.is.EventSource),this.#r!==b&&(this.#r=b,this.#a.abort(),this.#i=null)}get onopen(){return i.brandCheck(this,i.is.EventSource),this.#e.open}set onopen(e){i.brandCheck(this,i.is.EventSource),this.#e.open&&this.removeEventListener(`open`,this.#e.open);let t=i.converters.EventHandlerNonNull(e);t===null?this.#e.open=null:(this.addEventListener(`open`,t),this.#e.open=e)}get onmessage(){return i.brandCheck(this,i.is.EventSource),this.#e.message}set onmessage(e){i.brandCheck(this,i.is.EventSource),this.#e.message&&this.removeEventListener(`message`,this.#e.message);let t=i.converters.EventHandlerNonNull(e);t===null?this.#e.message=null:(this.addEventListener(`message`,t),this.#e.message=e)}get onerror(){return i.brandCheck(this,i.is.EventSource),this.#e.error}set onerror(e){i.brandCheck(this,i.is.EventSource),this.#e.error&&this.removeEventListener(`error`,this.#e.error);let t=i.converters.EventHandlerNonNull(e);t===null?this.#e.error=null:(this.addEventListener(`error`,t),this.#e.error=e)}static{i.is.EventSource=e=>typeof e==`object`&&!!e&&#e in e}},w={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:v,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:y,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:b,writable:!1}};Object.defineProperties(C,w),Object.defineProperties(C.prototype,w),Object.defineProperties(C.prototype,{close:u,onerror:u,onmessage:u,onopen:u,readyState:u,url:u,withCredentials:u}),i.converters.EventSourceInitDict=i.dictionaryConverter([{key:`withCredentials`,converter:i.converters.boolean,defaultValue:()=>!1},{key:`dispatcher`,converter:i.converters.any,defaultValue:()=>p()},{key:`node`,converter:i.dictionaryConverter([{key:`reconnectionTime`,converter:i.converters[`unsigned long`],defaultValue:()=>_},{key:`dispatcher`,converter:i.converters.any}]),defaultValue:()=>({})}]),t.exports={EventSource:C,defaultReconnectionTime:_}})),kT=q(((e,t)=>{var n=rw(),r=LC(),i=ow(),a=sw(),o=cw(),s=lw(),c=uw(),l=mw(),u=pw(),d=hw(),f=_w(),p=vw(),m=Q(),h=$(),{InvalidArgumentError:g}=m,_=Ew(),v=zC(),y=jw(),{MockCallHistory:b,MockCallHistoryLog:x}=Mw(),S=Fw(),C=Nw(),w=Rw(),T=Dw(),E=gw(),{getGlobalDispatcher:D,setGlobalDispatcher:O}=zw(),k=Bw(),A=Vw();Object.assign(r.prototype,_),t.exports.Dispatcher=r,t.exports.Client=n,t.exports.Pool=i,t.exports.BalancedPool=a,t.exports.RoundRobinPool=o,t.exports.Agent=s,t.exports.Dispatcher1Wrapper=c,t.exports.ProxyAgent=l,t.exports.Socks5ProxyAgent=u,t.exports.EnvHttpProxyAgent=d,t.exports.RetryAgent=f,t.exports.H2CClient=p,t.exports.RetryHandler=E,t.exports.DecoratorHandler=k,t.exports.RedirectHandler=A,t.exports.interceptors={redirect:Hw(),responseError:Uw(),retry:Ww(),dump:Gw(),dns:Kw(),cache:Qw(),decompress:$w(),deduplicate:tT()},t.exports.cacheStores={MemoryCacheStore:Xw()};var j=nT();t.exports.cacheStores.SqliteCacheStore=j,t.exports.buildConnector=v,t.exports.errors=m,t.exports.util={parseHeaders:h.parseHeaders,headerNameToString:h.headerNameToString};function M(e){return(t,n,r)=>{if(typeof n==`function`&&(r=n,n=null),!t||typeof t!=`string`&&typeof t!=`object`&&!(t instanceof URL))throw new g(`invalid url`);if(n!=null&&typeof n!=`object`)throw new g(`invalid opts`);if(n&&n.path!=null){if(typeof n.path!=`string`)throw new g(`invalid opts.path`);let e=n.path;n.path.startsWith(`/`)||(e=`/${e}`),t=new URL(h.parseOrigin(t).origin+e)}else n||=typeof t==`object`?t:{},t=h.parseURL(t);let{agent:i,dispatcher:a=D(),...o}=n;if(i)throw new g(`unsupported opts.agent. Did you mean opts.client?`);return e.call(a,{...o,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:n.method||(n.body?`PUT`:`GET`)},r)}}t.exports.setGlobalDispatcher=O,t.exports.getGlobalDispatcher=D;var N=sT().fetch,P=typeof __filename<`u`?__filename:void 0;function F(e,t){if(!e||typeof e!=`object`)return;let n=typeof e.stack==`string`?e.stack:``,r=t.replace(/\\/g,`/`);if(n&&(n.includes(t)||n.includes(r)))return;let i={};if(Error.captureStackTrace(i,F),!i.stack)return;let a=i.stack.split(`
146
146
  `).slice(1).join(`
147
- `);e.stack=n?`${n}\n${a}`:i.stack}t.exports.fetch=function(e,n=void 0){return N(e,n).catch(e=>{throw P?F(e,P):e&&typeof e==`object`&&Error.captureStackTrace(e,t.exports.fetch),e})},t.exports.Headers=tT().Headers,t.exports.Response=nT().Response,t.exports.Request=rT().Request,t.exports.FormData=XC().FormData;var{setGlobalOrigin:I,getGlobalOrigin:L}=UC();t.exports.setGlobalOrigin=I,t.exports.getGlobalOrigin=L;var{CacheStorage:R}=cT(),{kConstruct:ee}=OC();t.exports.caches=new R(ee);var{deleteCookie:te,getCookies:ne,getSetCookies:re,setCookie:z,parseCookie:ie}=fT();t.exports.deleteCookie=te,t.exports.getCookies=ne,t.exports.getSetCookies=re,t.exports.setCookie=z,t.exports.parseCookie=ie;var{parseMIMEType:ae,serializeAMimeType:oe}=KC();t.exports.parseMIMEType=ae,t.exports.serializeAMimeType=oe;var{CloseEvent:B,ErrorEvent:V,MessageEvent:H}=pT(),{WebSocket:se,ping:ce}=xT();t.exports.WebSocket=se,t.exports.CloseEvent=B,t.exports.ErrorEvent=V,t.exports.MessageEvent=H,t.exports.ping=ce,t.exports.WebSocketStream=CT().WebSocketStream,t.exports.WebSocketError=ST().WebSocketError,t.exports.request=M(_.request),t.exports.stream=M(_.stream),t.exports.pipeline=M(_.pipeline),t.exports.connect=M(_.connect),t.exports.upgrade=M(_.upgrade),t.exports.MockClient=y,t.exports.MockCallHistory=b,t.exports.MockCallHistoryLog=x,t.exports.MockPool=C,t.exports.MockAgent=S,t.exports.SnapshotAgent=w,t.exports.mockErrors=T;var{EventSource:le}=ET();t.exports.EventSource=le;function U(){globalThis.fetch=t.exports.fetch,globalThis.Headers=t.exports.Headers,globalThis.Response=t.exports.Response,globalThis.Request=t.exports.Request,globalThis.FormData=t.exports.FormData,globalThis.WebSocket=t.exports.WebSocket,globalThis.CloseEvent=t.exports.CloseEvent,globalThis.ErrorEvent=t.exports.ErrorEvent,globalThis.MessageEvent=t.exports.MessageEvent,globalThis.EventSource=t.exports.EventSource}t.exports.install=U})),OT=je({default:()=>AT}),kT=Pe(DT(),1);Ne(OT,Pe(DT(),1));var AT=kT.default,jT=e=>me.fromChannel(MT(e)),MT=e=>ge.fromTransform((t,n)=>PT({scope:n,readable:e.evaluate(),onError:e.onError??IT,chunkSize:e.chunkSize,closeOnDone:e.closeOnDone})),NT=e=>V.map(V.context(),t=>new FT(t,e)),PT=e=>{let t=e.readable,n=e.closeOnDone??!0,r=e.exit??ye.make(void 0),i=e.latch??K.makeUnsafe(!1);function a(){i.openUnsafe()}function o(t){r.current=_e.fail(e.onError(t)),i.openUnsafe()}function s(){r.current=_e.fail(he.Done()),i.openUnsafe()}t.on(`readable`,a),t.once(`error`,o),t.once(`end`,s);let c=V.suspend(function n(){let a=e.readable.read(e.chunkSize);if(a===null)return r.current?r.current:t.readableEnded?V.fail(he.Done()):(i.closeUnsafe(),V.flatMap(i.await,n));let o=G.of(a);for(;a=e.readable.read(e.chunkSize),a!==null;)o.push(a);return V.succeed(o)});return V.as(be.addFinalizer(e.scope,V.sync(()=>{t.off(`readable`,a),t.off(`error`,o),t.off(`end`,s),n&&`closed`in e.readable&&!e.readable.closed&&e.readable.destroy()})),c)},FT=class extends ie{readLatch;fiber=void 0;constructor(e,t){super({}),this.readLatch=K.makeUnsafe(!1),this.fiber=me.runForEachArray(t,e=>this.readLatch.whenOpen(V.sync(()=>{this.readLatch.closeUnsafe();for(let t=0;t<e.length;t++){let n=e[t];typeof n==`string`?this.push(n,`utf8`):this.push(n)}}))).pipe(this.readLatch.whenOpen,V.provideContext(e),V.runFork),this.fiber.addObserver(e=>{this.fiber=void 0,_e.isSuccess(e)?this.push(null):this.destroy(he.squash(e.cause))})}_read(e){this.readLatch.openUnsafe()}_destroy(e,t){if(!this.fiber)return t(e);V.runFork(ve.interrupt(this.fiber)).addObserver(n=>{t(n._tag===`Failure`?he.squash(n.cause):e)})}},IT=e=>new he.UnknownError(e);de.Class,W.TypeId;var LT=class extends B.Service()(`@effect/platform-node/NodeHttpClient/Dispatcher`){},RT=B.Reference(`@effect/platform-node/NodeHttpClient/UndiciOptions`,{defaultValue:()=>({})}),zT=V.gen(function*(){let e=yield*LT;return ce.make((t,n,r,i)=>BT(t.body).pipe(V.flatMap(a=>V.tryPromise({try:()=>e.request({...i.getRef(RT),signal:r,method:t.method,headers:t.headers,origin:n.origin,path:n.pathname+n.search,body:a,headersTimeout:36e5,bodyTimeout:0}),catch:e=>new le.HttpClientError({reason:new le.TransportError({request:t,cause:e})})})),V.map(e=>new HT(t,e,n.href.split(`#`)[0]))))});function BT(e){switch(e._tag){case`Empty`:return V.succeed(null);case`Uint8Array`:case`Raw`:return V.succeed(e.body);case`FormData`:return V.succeed(e.formData);case`Stream`:return NT(e.stream)}}function VT(e){}var HT=class extends de.Class{[W.TypeId];[U.TypeId];request;source;url;constructor(e,t,n){super(),this[W.TypeId]=W.TypeId,this[U.TypeId]=U.TypeId,this.request=e,this.source=t,this.url=n,t.body.on(`error`,VT)}get status(){return this.source.statusCode}get statusText(){}get headers(){return se.fromInput(this.source.headers)}cachedCookies;get cookies(){if(this.cachedCookies!==void 0)return this.cachedCookies;let e=this.source.headers[`set-cookie`];return this.cachedCookies=e?H.fromSetCookie(e):H.empty}get remoteAddress(){return fe.none()}get stream(){return jT({evaluate:()=>this.source.body,onError:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})})}get json(){return V.flatMap(this.text,e=>V.try({try:()=>e===``?null:JSON.parse(e),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})}))}textBody;get text(){return this.textBody||=V.map(this.arrayBuffer,e=>new TextDecoder().decode(e)),this.textBody}get urlParamsBody(){return V.flatMap(this.text,e=>V.try({try:()=>ue.fromInput(new URLSearchParams(e)),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})}))}formDataBody;get formData(){return this.formDataBody??=V.flatMap(this.arrayBuffer,e=>V.tryPromise({try:()=>new globalThis.Response(e,{headers:this.headers}).formData(),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})})).pipe(V.cached,V.runSync)}arrayBufferBody;get arrayBuffer(){return this.arrayBufferBody?this.arrayBufferBody:(this.arrayBufferBody=V.tryPromise({try:()=>this.source.body.arrayBuffer(),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})}).pipe(V.cached,V.runSync),this.textBody=V.map(this.arrayBufferBody,e=>new TextDecoder().decode(e)),this.arrayBufferBody)}toJSON(){return W.inspect(this,{_id:`effect/http/HttpClientResponse`,request:this.request.toJSON(),status:this.status})}pipe(){return pe(this,arguments)}},UT=ce.layerMergedContext(zT);U.TypeId;var WT=class extends OT.Dispatcher{constructor(e){super(),this.retired=new Map,this.retiredFailures=[],this.current=this.createDispatcher(e),this.revision=e.revision}dispatch(e,t){return this.current.dispatch(e,t)}configure(e){if(e.revision===this.revision)return this.revision;let t=this.createDispatcher(e),n=this.current;this.current=t,this.revision=e.revision;let r=n.close();return this.retired.set(n,r),r.then(()=>this.retired.delete(n),e=>{this.retired.delete(n),this.retiredFailures.push(e)}),this.revision}async close(){let e=[...this.retired.entries()],t=await Promise.allSettled([this.current.destroy(),...e.map(([e])=>e.destroy())]);await Promise.allSettled(e.map(([,e])=>e));let n=t.filter(e=>e.status===`rejected`).map(e=>e.reason);if(n.push(...this.retiredFailures),n.length>0)throw n.length===1?n[0]:AggregateError(n,`Executor proxy dispatchers failed to close`)}createDispatcher(e){return e.mode===`direct`||e.httpProxyUrl===void 0&&e.httpsProxyUrl===void 0?new OT.Agent:new OT.EnvHttpProxyAgent({httpProxy:e.httpProxyUrl??``,httpsProxy:e.httpsProxyUrl??``,noProxy:e.noProxy.join(`,`)})}},GT=`harness.executor.runtime`,KT=16,qT=`effect.log.level`,JT=new Set([`close`,`dispatch`,`initialize`,`readiness`,`reconcile`,`refresh`,`release`,`remove`,`resolve`,`update`,`upsert`]),YT=new Set([`connection`,`integration`,`policy`,`registration`,`tool_catalog`]);function XT(e,t){try{e?.(t)}catch{}}function ZT(e){let t={},n=e instanceof Map?e.entries():Object.entries(e);for(let[e,r]of n)(e===`component`&&r===`executor`||e===`runtime.role`&&r===`executor`||e===`resource`&&typeof r==`string`&&YT.has(r)||e===`operation`&&typeof r==`string`&&JT.has(r)||e===`outcome`&&(r===`cancelled`||r===`error`||r===`success`||r===`timeout`))&&(t[e]=r);return Object.freeze(t)}function QT(e,t){return/^[0-9a-f]{32}$/.test(e)&&e!==`00000000000000000000000000000000`&&/^[0-9a-f]{16}$/.test(t)&&t!==`0000000000000000`?{spanId:t,traceId:e}:void 0}function $T(e,t){let n=t>=e?t-e:0n,r=Number(n)/1e6;return Number.isFinite(r)?Math.round(r*1e3)/1e3:0}function eE(e,t,n){let r=[];for(let[i,a,o]of e){if(r.length>=KT)break;let e=o[qT];if(i!==GT||e!==`error`&&e!==`info`&&e!==`warn`)continue;let s=a<t?t:a>n?n:a;r.push(Object.freeze({annotations:ZT(o),level:e,name:GT,offsetMs:$T(t,s)}))}return Object.freeze(r)}function tE(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function nE(e){return tE(e)&&e._tag===`ExecutorRuntimeFailure`&&typeof e.upstreamCode==`string`?e.upstreamCode.slice(0,128):tE(e)&&typeof e._tag==`string`?e._tag.slice(0,128):e instanceof Error&&e.name?e.name.slice(0,128):`mcp_unavailable`}function rE(e,t,n,r){return{error:{code:nE(r),message:`MCP server is unavailable`,retryable:!0},generation:n,registrationId:t,runtimeEpoch:e,status:`unavailable`,tools:[]}}function iE(e){return tE(e)?e:void 0}function aE(e){if(!tE(e)||!tE(e.mcp)||!tE(e.mcp.upstream))return;let t=e.mcp.upstream,n={...typeof t.destructiveHint==`boolean`?{destructiveHint:t.destructiveHint}:{},...typeof t.idempotentHint==`boolean`?{idempotentHint:t.idempotentHint}:{},...typeof t.openWorldHint==`boolean`?{openWorldHint:t.openWorldHint}:{},...typeof t.readOnlyHint==`boolean`?{readOnlyHint:t.readOnlyHint}:{},...typeof t.title==`string`?{title:t.title}:{}};return Object.keys(n).length>0?n:void 0}function oE(e){let t=iE(iE(iE(e)?.mcp)?._meta);if(t!==void 0)try{let e=JSON.stringify(t);return e===void 0||new TextEncoder().encode(e).byteLength>s?void 0:structuredClone(t)}catch{return}}function sE(e){let t=iE(iE(e.annotations)?.mcp);return typeof t?.toolName==`string`?t.toolName:String(e.name)}function cE(e){if(tE(e)&&Array.isArray(e.required)&&e.required.includes(`structuredContent`))return iE(iE(e.properties)?.structuredContent)}function lE(e){let t=cE(e.outputSchema),n=oE(e.annotations);return{...n===void 0?{}:{_meta:n},...aE(e.annotations)===void 0?{}:{annotations:aE(e.annotations)},...e.description?{description:e.description}:{},executorAddress:String(e.address),inputSchema:iE(e.inputSchema)??{additionalProperties:!0,type:`object`},...t===void 0?{}:{outputSchema:t},upstreamToolName:sE(e)}}function uE(e){return[{text:e,type:`text`}]}function dE(e,t=!1){if(!tE(e))return{content:uE(JSON.stringify(e)??String(e)),...t?{isError:!0}:{}};let n=Array.isArray(e.content)?e.content:uE(JSON.stringify(e)),r=iE(e.structuredContent),i=iE(e._meta);return{...i===void 0?{}:{_meta:i},content:n,...t||e.isError===!0?{isError:!0}:{},...r===void 0?{}:{structuredContent:r}}}function fE(e){if(!du(e))return dE(e);if(e.ok)return dE(e.data);let t=iE(e.error.details)?.content;return{content:Array.isArray(t)?t:uE(e.error.message),isError:!0}}function pE(e){return e.request._tag===`FormElicitation`?{message:e.request.message,mode:`form`,requestedSchema:e.request.requestedSchema}:{elicitationId:String(e.request.elicitationId),message:e.request.message,mode:`url`,url:e.request.url}}function mE(e){return{action:e.action,...e.content===void 0?{}:{content:e.content}}}var hE=class{constructor(){this.key=tt.make(`agent-harness-ephemeral`),this.values=O.makeUnsafe(new Map),this.provider={delete:e=>this.deleteValue(String(e)),get:e=>O.get(this.values).pipe(_.map(t=>t.get(String(e))??null)),has:e=>O.get(this.values).pipe(_.map(t=>t.has(String(e)))),key:this.key,list:()=>O.get(this.values).pipe(_.map(e=>[...e.keys()].map(e=>({id:nt.make(e),name:e})))),set:(e,t)=>this.setValue(String(e),t),writable:!0}}clear(){return O.set(this.values,new Map)}deleteValue(e){return O.update(this.values,t=>{if(!t.has(e))return t;let n=new Map(t);return n.delete(e),n})}setValue(e,t){return O.update(this.values,n=>{let r=new Map(n);return r.set(e,t),r})}},gE=class extends Error{constructor(e,t,n=`Executor operation failed at ${e}`){super(n),this.stage=e,this.upstreamCode=t,this._tag=`ExecutorRuntimeFailure`,this.name=this._tag}},_E=class extends Error{constructor(){super(`Executor runtime is closed`),this._tag=`ExecutorRuntimeClosed`,this.name=this._tag}},vE=class extends Error{constructor(e){super(`Duplicate Executor invocation id "${e}"`),this.invocationId=e,this._tag=`ExecutorInvocationConflict`,this.name=this._tag}},yE=class extends Error{constructor(e){super(`Unknown Executor registration "${e}"`),this.registrationId=e,this._tag=`ExecutorRegistrationNotFound`,this.name=this._tag}},bE=class extends Error{constructor(){super(`Executor tool address is not present in the registration`),this._tag=`ExecutorToolAddressNotFound`,this.name=this._tag}},xE=class extends Error{constructor(){super(`Executor invocation was interrupted`),this._tag=`ExecutorInvocationInterrupted`,this.name=this._tag}},SE=class extends Error{constructor(){super(`Private Executor runtime encountered a fatal defect`),this._tag=`ExecutorRuntimeDefect`,this.name=this._tag}};function CE(e,t){return new gE(e,nE(t))}function wE(e){if(d.hasDies(e))return new SE;let t=d.findErrorOption(e),n=E.isSome(t)?t.value:d.squash(e);return n instanceof vE||n instanceof xE||n instanceof yE||n instanceof _E||n instanceof gE||n instanceof bE?n:d.hasInterrupts(e)?new xE:CE(`runtime.boundary`,n)}var TE=class{constructor(e,t,n,r,i,a){this.executor=e,this.credentials=t,this.options=n,this.proxyDispatcher=r,this.registrationSemaphore=i,this.state=a}configureProxy(e){return DE(_.try({catch:e=>CE(`runtime.proxy`,e),try:()=>this.proxyDispatcher.configure(e)}),`policy`,`update`)}upsertRegistration(e){let t=this;return this.runRegistrationOperation(e.registrationId,_.gen(function*(){let n=(yield*t.openState()).registrations.get(e.registrationId);if(n)return yield*t.refreshRegistrationLocked(n);let r={allowedAddresses:new Set,connectionRef:{integration:Y.make(e.executorSlug),name:Qe.make(e.connectionName),owner:`org`},credentialIds:new Set,generation:0,spec:e};return yield*t.insertRegistration(r),yield*t.refreshRegistrationLocked(r)}))}refreshRegistration(e){let t=this;return this.runRegistrationOperation(e,_.gen(function*(){let n=yield*t.requireRegistration(e);return yield*t.refreshRegistrationLocked(n)}))}removeRegistration(e){let t=this;return this.registrationSemaphore.withPermit(_.gen(function*(){let n=yield*F.modify(t.state,t=>{if(t.closed)return[{_tag:`closed`},t];let n=t.registrations.get(e);if(!n)return[{_tag:`missing`},t];let r=new Map(t.registrations);return r.delete(e),[{_tag:`removed`,integrationStillUsed:[...r.values()].some(e=>e.spec.executorSlug===n.spec.executorSlug),registration:n},{...t,registrations:r}]});if(n._tag===`closed`)return yield*_.fail(new _E);n._tag!==`missing`&&(yield*t.executor.connections.remove(n.registration.connectionRef).pipe(_.ignore),yield*_.all([...n.registration.credentialIds].map(e=>t.credentials.deleteValue(e)),{discard:!0}),n.integrationStillUsed||(yield*(n.registration.spec.transport.transport===`client`?t.executor.integrations.remove(Y.make(n.registration.spec.executorSlug)):t.executor.mcp.removeServer(n.registration.spec.executorSlug)).pipe(_.ignore)))}))}callTool(e,t,n,r){let i=this;return _.uninterruptibleMask(a=>_.gen(function*(){let o={},s=yield*F.modify(i.state,r=>{if(r.closed)return[{_tag:`closed`},r];if(r.inFlight.has(t))return[{_tag:`conflict`},r];let i=r.registrations.get(e);if(!i)return[{_tag:`missing`},r];if(!i.allowedAddresses.has(n))return[{_tag:`tool_missing`},r];let a={registrationId:e,token:o},s=new Map(r.inFlight);return s.set(t,a),[{_tag:`reserved`},{...r,inFlight:s}]});return s._tag===`closed`?yield*_.fail(new _E):s._tag===`conflict`?yield*_.fail(new vE(t)):s._tag===`missing`?yield*_.fail(new yE(e)):s._tag===`tool_missing`?yield*_.fail(new bE):yield*_.gen(function*(){let e,s=_.suspend(()=>i.executor.execute(it.make(n),r,{onElicitation:n=>_.tryPromise({catch:e=>CE(`tool.elicitation`,e),try:async()=>mE(await i.options.onElicitation(t,pE(n)))}).pipe(_.matchEffect({onFailure:t=>_.sync(()=>(e??=t,{action:`cancel`})),onSuccess:_.succeed}))})).pipe(_.mapError(e=>CE(`tool.call`,e))),c=yield*_.exit(s).pipe(_.flatMap(t=>e===void 0?v.isSuccess(t)?_.succeed(t.value):_.failCause(t.cause):_.fail(e))).pipe(_.forkChild({uninterruptible:!1}));return(yield*F.modify(i.state,e=>{let n=e.inFlight.get(t);if(e.closed||!n||n.token!==o)return[!1,e];let r=new Map(e.inFlight);return r.set(t,{...n,fiber:c}),[!0,{...e,inFlight:r}]}))?yield*a(y.join(c)).pipe(_.map(fE)):(yield*y.interrupt(c),yield*_.fail(new xE))}).pipe(_.ensuring(i.removeInvocation(t,o)))}))}cancelInvocation(e){let t=this;return _.gen(function*(){let n=yield*F.modify(t.state,t=>{let n=t.inFlight.get(e);if(!n)return[void 0,t];let r=new Map(t.inFlight);return r.delete(e),[n,{...t,inFlight:r}]});n&&n.fiber&&(yield*y.interrupt(n.fiber))})}shutdown(){let e=this;return _.gen(function*(){let t=yield*F.modify(e.state,e=>e.closed?[[],e]:[[...e.inFlight.values()],{...e,closed:!0,inFlight:new Map}]);yield*y.interruptAll(t.flatMap(e=>e.fiber?[e.fiber]:[])),yield*e.registrationSemaphore.withPermit(_.gen(function*(){let t=yield*F.modify(e.state,e=>[[...e.registrationGates.values()],{...e,registrationGates:new Map,registrations:new Map}]);yield*_.all(t.map(e=>h.fail(e,new _E)),{discard:!0}),yield*e.credentials.clear()}))})}runRegistrationOperation(e,t){let n=this;return _.uninterruptibleMask(r=>_.gen(function*(){let i=yield*h.make(),a=yield*F.modify(n.state,t=>{if(t.closed)return[{_tag:`closed`},t];let n=t.registrationGates.get(e);if(n)return[{_tag:`join`,gate:n},t];let r=new Map(t.registrationGates);return r.set(e,i),[{_tag:`owner`,gate:i},{...t,registrationGates:r}]});if(a._tag===`closed`)return yield*_.fail(new _E);if(a._tag===`join`)return yield*r(h.await(a.gate));let o=t=>_.gen(function*(){yield*h.done(a.gate,t),yield*n.removeRegistrationGate(e,a.gate)});return yield*r(n.registrationSemaphore.withPermit(t.pipe(_.onExit(o)))).pipe(_.onExit(o))}))}refreshRegistrationLocked(e){let t=this,n=e.spec.registrationId;return _.gen(function*(){let r={...e,generation:e.generation+1},i=yield*_.exit(_.gen(function*(){yield*t.assertOpen(),yield*DE(t.ensureIntegration(r.spec),`integration`,`resolve`);let e=yield*DE(t.ensureConnection(r),`connection`,`resolve`);r=e.registration,yield*DE(t.ensureApprovalPolicy(r),`policy`,`update`);let n=e.created,i;i=n?yield*DE(t.readMaterializedTools(r),`tool_catalog`,`resolve`):yield*DE(t.executor.connections.refresh(r.connectionRef),`tool_catalog`,`refresh`);let a=yield*DE(t.executor.connections.get(r.connectionRef),`connection`,`readiness`);return a===null||a.lastHealth!=null&&a.lastHealth.status!==`healthy`?yield*_.fail(CE(`registration.health`,{_tag:`McpConnectionUnavailable`})):i}));if(v.isFailure(i))return d.hasDies(i.cause)?yield*_.die(new SE):d.hasInterrupts(i.cause)?yield*_.interrupt:(r={...yield*t.requireRegistration(n),generation:r.generation},yield*t.replaceRegistration(r),rE(t.options.runtimeEpoch,n,r.generation,d.squash(i.cause)));let a={...r,allowedAddresses:new Set(i.value.map(e=>String(e.address)))};return yield*t.replaceRegistration(a),{generation:a.generation,registrationId:n,runtimeEpoch:t.options.runtimeEpoch,status:`available`,tools:i.value.map(lE)}})}readMaterializedTools(e){let t=this;return _.gen(function*(){let n=yield*t.executor.tools.list({connection:e.connectionRef.name,integration:e.connectionRef.integration,owner:e.connectionRef.owner});return yield*_.forEach(n,e=>_.gen(function*(){let n=yield*t.executor.tools.schema(e.address);return n===null?yield*_.fail(CE(`registration.catalog`,{_tag:`ExecutorToolSchemaUnavailable`})):{...e,...n.inputSchema===void 0?{}:{inputSchema:n.inputSchema},...n.outputSchema===void 0?{}:{outputSchema:n.outputSchema}}}))})}ensureIntegration(e){let t=this;return _.gen(function*(){if(yield*t.executor.integrations.get(Y.make(e.executorSlug)))return;if(e.transport.transport===`client`){yield*t.executor.clientMcp.register(Y.make(e.executorSlug),e.transport.sourceId);return}if(e.transport.transport===`remote`){let n={authenticationTemplate:e.transport.authentication.kind===`none`?[{kind:`none`,slug:`none`}]:[{headers:Object.fromEntries(Object.entries(e.transport.authentication.placements).map(([e,t])=>[e,[{name:t,type:`variable`}]])),label:`ACP session headers`,slug:`headers`,type:`apiKey`}],endpoint:e.transport.endpoint,name:e.executorSlug,remoteTransport:e.transport.remoteTransport,slug:e.executorSlug,transport:`remote`};yield*t.executor.mcp.addServer(n);return}if(!t.options.allowStdio)return yield*_.fail(CE(`registration.integration`,{_tag:`StdioMcpDisabled`}));let n={args:[...e.transport.args],command:e.transport.command,cwd:e.transport.cwd,envVars:Object.keys(e.transport.env),name:e.executorSlug,slug:e.executorSlug,spawnPerCall:!0,transport:`stdio`};yield*t.executor.mcp.addServer(n)})}ensureConnection(e){let t=this;return _.gen(function*(){if(yield*t.executor.connections.get(e.connectionRef))return{created:!1,registration:e};let n=e.spec.transport,r=n.transport===`client`?`none`:n.transport===`remote`?n.authentication.kind===`headers`?`headers`:`none`:Object.keys(n.env).length>0?`env`:`none`,i=n.transport===`client`?{}:n.transport===`remote`?n.headers:n.env,a=Object.entries(i),o=new Set(e.credentialIds),s=[];for(let[n,r]of a){let i=[`agent-harness`,e.spec.registrationId,s.length].join(`.`);yield*t.credentials.setValue(i,r),o.add(i),s.push([n,{from:{id:nt.make(i),provider:t.credentials.key}}])}let c={...e,credentialIds:o};yield*t.replaceRegistration(c);let l=s.length===0?{values:{}}:{inputs:Object.fromEntries(s)};return yield*t.executor.connections.create({...c.connectionRef,template:Xe.make(r),...l}),{created:!0,registration:c}})}ensureApprovalPolicy(e){let t=this;return _.gen(function*(){let n=[e.spec.executorSlug,e.connectionRef.owner,e.spec.connectionName,`*`].join(`.`);(yield*t.executor.policies.list()).some(e=>e.owner===`org`&&e.pattern===n&&e.action===`approve`)||(yield*t.executor.policies.create({action:`approve`,owner:`org`,pattern:n}))})}requireRegistration(e){let t=this;return _.gen(function*(){return(yield*t.openState()).registrations.get(e)||(yield*_.fail(new yE(e)))})}assertOpen(){return this.openState().pipe(_.asVoid)}openState(){return F.get(this.state).pipe(_.flatMap(e=>e.closed?_.fail(new _E):_.succeed(e)))}insertRegistration(e){return F.modify(this.state,t=>{if(t.closed)return[!1,t];let n=new Map(t.registrations);return n.set(e.spec.registrationId,e),[!0,{...t,registrations:n}]}).pipe(_.flatMap(e=>e?_.void:_.fail(new _E)))}replaceRegistration(e){let t=this;return _.gen(function*(){let n=yield*F.modify(t.state,t=>{if(t.closed)return[{_tag:`closed`},t];if(!t.registrations.has(e.spec.registrationId))return[{_tag:`missing`},t];let n=new Map(t.registrations);return n.set(e.spec.registrationId,e),[{_tag:`replaced`},{...t,registrations:n}]});if(n._tag===`closed`)return yield*_.fail(new _E);if(n._tag===`missing`)return yield*_.fail(new yE(e.spec.registrationId))})}removeRegistrationGate(e,t){return F.update(this.state,n=>{if(n.registrationGates.get(e)!==t)return n;let r=new Map(n.registrationGates);return r.delete(e),{...n,registrationGates:r}})}removeInvocation(e,t){return F.update(this.state,n=>{if(n.inFlight.get(e)?.token!==t)return n;let r=new Map(n.inFlight);return r.delete(e),{...n,inFlight:r}})}},EE=class extends p.Service()(`agent-harness/ExecutorChildService`){};function DE(e,t,n){let r={component:`executor`,operation:n,resource:t,"runtime.role":`executor`},i=e.pipe(_.tap(()=>_.logInfo(GT).pipe(_.annotateLogs({...r,outcome:`success`}))),_.tapError(()=>_.logWarning(GT).pipe(_.annotateLogs({...r,outcome:`error`}))));return _.withSpan(i,GT,{attributes:r,kind:`internal`})}function OE(e,t,n){let r=t===void 0?void 0:I.externalSpan({sampled:t.sampled,spanId:t.parentSpanId,traceId:t.traceId}),i={component:`executor`,operation:n,"runtime.role":`executor`},a=e.pipe(_.tap(()=>_.logInfo(GT).pipe(_.annotateLogs({...i,outcome:`success`}))),_.tapError(()=>_.logWarning(GT).pipe(_.annotateLogs({...i,outcome:`error`}))));return _.withSpan(a,GT,{attributes:{...i},kind:`server`,...r===void 0?{}:{parent:r}})}function kE(e){let t={effectErrors:0,effectLogs:0,effectSpans:0},n=new Map,r=p.make(T.MetricRegistry,n),i={"runtime.role":`executor`},a=T.counter(`agent_harness_effect_logs_total`,{description:`Allowlisted Effect log records emitted by the Executor`,incremental:!0}).pipe(T.withAttributes(i)),o=T.counter(`agent_harness_effect_errors_total`,{description:`Effect error signals observed by the Executor`,incremental:!0}).pipe(T.withAttributes(i)),s=T.counter(`agent_harness_effect_spans_total`,{description:`Completed Effect spans observed by the Executor`,incremental:!0}).pipe(T.withAttributes(i)),c=()=>XT(e,{kind:`metrics`,value:{...t}}),l=S.make(n=>{let r=Array.isArray(n.message)?n.message:[n.message];if(r.length!==1||r[0]!==GT)return;t.effectLogs+=1,a.updateUnsafe(1,n.fiber.context);let i=n.logLevel===`Error`||n.logLevel===`Fatal`?`error`:n.logLevel===`Warn`?`warn`:`info`;i===`error`&&(t.effectErrors+=1,o.updateUnsafe(1,n.fiber.context));let s=ZT(n.fiber.getRef(k.CurrentLogAnnotations)),l=p.getOrUndefined(n.fiber.context,I.ParentSpan);l?._tag===`Span`&&l instanceof I.NativeSpan&&l.events.length<KT&&l.event(GT,n.fiber.getRef(f.Clock).currentTimeNanosUnsafe(),{...s,[qT]:i});let u=l?._tag===`Span`?QT(l.traceId,l.spanId):void 0;XT(e,{kind:`log`,value:{annotations:s,level:i,message:GT,...l?._tag===`Span`&&u?{span:{name:GT,sampled:l.sampled,...u}}:{}}}),c()}),u=I.make({span(n){let i=new I.NativeSpan(n),a=i.end.bind(i);return i.end=(n,l)=>{if(a(n,l),i.name!==GT)return;t.effectSpans+=1,s.updateUnsafe(1,r),l._tag===`Failure`&&(t.effectErrors+=1,o.updateUnsafe(1,r));let u=QT(i.traceId,i.spanId);if(u){let t=eE(i.events,i.startTime,n),r=i.parent._tag===`Some`&&/^[0-9a-f]{16}$/.test(i.parent.value.spanId)&&i.parent.value.spanId!==`0000000000000000`?i.parent.value.spanId:void 0;XT(e,{kind:`span`,value:{attributes:ZT(i.attributes),durationMs:$T(i.startTime,n),...t.length===0?{}:{events:t},kind:i.kind,name:GT,outcome:l._tag===`Success`?`success`:`error`,...r===void 0?{}:{parentSpanId:r},sampled:i.sampled,...u}})}c()},i}});return x.mergeAll(S.layer([l]),x.succeed(I.Tracer,u),x.succeed(T.MetricRegistry,n))}function AE(e,t){return x.effect(EE,_.gen(function*(){let n=yield*_.acquireRelease(_.try({catch:e=>CE(`runtime.proxy`,e),try:()=>new WT(t.proxy)}),e=>_.promise(()=>e.close()).pipe(_.orDie)),r=UT.pipe(x.provide(x.succeed(LT,n))),i=mv({httpClientLayer:r,onElicitation:()=>_.succeed({action:`cancel`}),plugins:[TC({dangerouslyAllowStdioMCP:t.allowStdio,httpClientLayer:r},t.onCatalogStale),DC({request:t.onClientMcpRequest})],providers:[e.provider],tenant:lt.make(t.tenantId),toolsSyncTtlMs:null}).pipe(_.mapError(e=>CE(`runtime.initialize`,e)),_.map(e=>e));return new TE(yield*_.acquireRelease(i,e=>e.close().pipe(_.orDie)),e,t,n,yield*M.make(1),yield*F.make({closed:!1,inFlight:new Map,registrationGates:new Map,registrations:new Map}))}))}async function jE(e,t){let n=await e.runPromiseExit(t);if(v.isSuccess(n))return n.value;throw wE(n.cause)}var ME=class e{static async create(t,n){let r=new hE,i=C.make(x.merge(AE(r,t),kE(t.onTelemetry)));try{return await jE(i,OE(_.service(EE),n,`initialize`)),new e(i)}catch(e){throw await i.dispose().catch(()=>void 0),e}}constructor(e){this.managed=e}configureProxy(e,t){return this.runOpen(EE.use(t=>t.configureProxy(e)),t,`update`)}upsertRegistration(e,t){return this.runOpen(EE.use(t=>t.upsertRegistration(e)),t,`reconcile`)}refreshRegistration(e,t){return this.runOpen(EE.use(t=>t.refreshRegistration(e)),t,`refresh`)}removeRegistration(e,t){return this.runOpen(EE.use(t=>t.removeRegistration(e)),t,`release`)}callTool(e,t,n,r,i){return this.runOpen(EE.use(i=>i.callTool(e,t,n,r)),i,`dispatch`)}cancelInvocation(e,t){return this.closePromise?Promise.resolve():this.run(EE.use(t=>t.cancelInvocation(e)),t,`update`)}close(e){return this.closePromise||=this.closeOnce(e),this.closePromise}async closeOnce(e){let t;try{await this.run(EE.use(e=>e.shutdown()),e,`close`)}catch(e){t=e}try{let e=await _.runPromiseExit(this.managed.disposeEffect);v.isFailure(e)&&(t??=wE(e.cause))}catch(e){t??=CE(`runtime.close`,e)}if(t!==void 0)throw t}runOpen(e,t,n){return this.closePromise?Promise.reject(new _E):this.run(e,t,n)}run(e,t,n){return jE(this.managed,OE(e,t,n))}},NE=5e3,PE=250,FE=4096,IE=50,LE=`--agent-harness-private-stdio-group-anchor`;function RE(){return typeof AGENT_HARNESS_PACKAGE_TYPE==`string`&&AGENT_HARNESS_PACKAGE_TYPE===`binary`}function zE(e=process.env){return{AGENT_HARNESS_PRIVATE_STDIO_GROUP_ANCHOR:`1`,...e.ELECTRON_RUN_AS_NODE===`1`?{ELECTRON_RUN_AS_NODE:`1`}:{}}}var BE=class extends Error{constructor(){super(`stdio process-group anchor cleanup failed`),this._tag=`StdioProcessGroupAnchorCleanupError`,this.name=this._tag}};function VE(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function HE(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return Object.keys(t).length===4&&t.type===`ready`&&VE(t.anchorPid)&&VE(t.guardianPid)&&VE(t.targetProcessGroupId)}function UE(e,t,n,r){if(!e.stdout)return Promise.reject(Error(`stdio process-group anchor did not expose a ready pipe`));let i=e.stdout;return i.setEncoding(`utf8`),new Promise((a,o)=>{let s=``,c=!1,l=t=>{c||(c=!0,clearTimeout(p),e.removeListener(`error`,u),e.removeListener(`exit`,d),i.removeListener(`data`,f),t?o(t):(i.resume(),a()))},u=e=>l(e),d=()=>l(Error(`stdio process-group anchor exited before ready`)),f=r=>{if(s+=r,Buffer.byteLength(s,`utf8`)>FE){l(Error(`stdio process-group anchor handshake was oversized`));return}let i=s.indexOf(`
148
- `);if(!(i<0))try{let r=JSON.parse(s.slice(0,i));if(s.slice(i+1).trim()!==``||!HE(r)||r.anchorPid!==e.pid||r.guardianPid!==t||r.targetProcessGroupId!==n){l(Error(`stdio process-group anchor handshake was invalid`));return}l()}catch{l(Error(`stdio process-group anchor handshake was malformed`))}},p=setTimeout(()=>l(Error(`stdio process-group anchor ready handshake timed out`)),r);p.unref?.(),e.once(`error`,u),e.once(`exit`,d),i.on(`data`,f)})}function WE(e,t){return Number.isSafeInteger(e)&&e!==void 0&&e>0?e:t}function GE(e,t){return e.exitCode!==null||e.signalCode!==null?Promise.resolve(!0):new Promise(n=>{let r=!1,i=t=>{r||(r=!0,clearTimeout(o),e.removeListener(`exit`,a),n(t))},a=()=>i(!0),o=setTimeout(()=>i(!1),t);o.unref?.(),e.once(`exit`,a)})}function KE(e){let t=e=>{try{e()}catch{}};e.connected&&t(()=>e.disconnect?.()),t(()=>e.channel?.unref()),t(()=>e.stdin?.destroy()),t(()=>e.stdout?.destroy()),t(()=>e.stderr?.destroy()),t(()=>e.unref())}async function qE(e,t=PE){if(e.exitCode!==null||e.signalCode!==null)return;let n=GE(e,WE(t,PE));try{e.kill(`SIGKILL`)}catch{}if(!await n)throw KE(e),new BE}async function JE(e,t={}){if(process.platform===`win32`||!Number.isSafeInteger(e)||e<=0)throw Error(`stdio process-group anchor configuration is invalid`);let n=ae(new URL(`./stdio-group-anchor.mjs`,import.meta.url)),r=t.spawnAnchor??xe,i=t.standaloneBinary??RE(),a=r(process.execPath,[...i?[LE]:[n],String(e),String(process.pid),String(IE)],{detached:!1,env:zE(),stdio:[`ignore`,`pipe`,`ignore`],windowsHide:!0});a.stdout?.on(`error`,()=>void 0);try{return await UE(a,e,process.pid,WE(t.readyTimeoutMs,NE)),a}catch(e){throw await qE(a,WE(t.cleanupTimeoutMs,PE)),e}}var YE=250;function XE(e){try{let t=JSON.stringify(e),n=Buffer.byteLength(t,`utf8`);return n<=i?{bytes:n,message:e}:void 0}catch{return}}function ZE(e){let t=[],n=0,r=!0,i=!1,s,c,l,u=!1,d,f=()=>{i||(r=!1,i=!0,d!==void 0&&(clearImmediate(d),d=void 0),l!==void 0&&(clearTimeout(l),l=void 0),t.length=0,n=0,c?.(),c=void 0)},p=()=>{s!==void 0&&!u&&t.length===0&&f()},m=()=>{i||u||d!==void 0||t.length===0||e.isPriorityBusy()||(d=setImmediate(()=>{d=void 0,h()}))},h=()=>{if(i||u||t.length===0||e.isPriorityBusy())return;let r=t.shift();if(!r)return;n-=r.bytes,u=!0;let a=!1,o=()=>{a||(a=!0,u=!1,p(),m())};try{e.send(r.message,o)}catch{o()}};return{get bufferedBytes(){return n},get bufferedMessages(){return t.length},close(){f()},flushAndClose(e=YE){return i?s??Promise.resolve():s===void 0?(r=!1,s=new Promise(e=>{c=e}),l=setTimeout(f,Number.isFinite(e)?Math.max(0,Math.floor(e)):YE),l.unref(),p(),m(),s):s},notifyPriorityAvailable(){m()},offer(s){if(!r||i)return;let c=e.runtimeEpoch();if(!c)return;let l=XE({jsonrpc:`2.0`,method:`telemetry/effect`,params:{runtimeEpoch:c,signal:s}});if(l){if(s.kind===`metrics`){let e=t.findIndex(e=>e.message.params.signal.kind===`metrics`);if(e>=0){let[r]=t.splice(e,1);r&&(n-=r.bytes)}}t.length>=o||n+l.bytes>a||(t.push(l),n+=l.bytes,m())}}}}function QE({addonPath:t,platform:n=process.platform,loadBinding:r=e(import.meta.url)}){if(n!==`win32`||!oe.win32.isAbsolute(t))throw Error(`Windows no-orphans requires Windows and an absolute addon path`);let i=r(t);if(typeof i?.ensureKillOnCloseJob!=`function`||typeof i.isProcessInJob!=`function`||i.ensureKillOnCloseJob()!==!0||i.isProcessInJob(process.pid)!==!0)throw Error(`Windows no-orphans Job initialization failed`);return Object.freeze({addonPath:t,isProcessInJob:e=>i.isProcessInJob(e)===!0})}function $E(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function eD(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`Private Executor IPC payload must be JSON`);let n=Buffer.byteLength(t,`utf8`);if(n>r)throw RangeError(`Private Executor IPC payload exceeds ${r} bytes`);return n}var tD=0,nD=0,rD;function iD(e){return eD(e),tD+=1,new Promise((t,n)=>{if(!process.send||!process.connected){n(Error(`Private Executor IPC channel is closed`));return}process.send(e,e=>{e?n(e):t()})}).finally(()=>{--tD,rD?.notifyPriorityAvailable()})}function aD(e){return u(e)&&typeof e.id==`string`}function oD(e,t,n){return{error:{code:-32603,data:{code:$E(n)&&typeof n._tag==`string`?n._tag.slice(0,128):n instanceof Error?n.name.slice(0,128):`internal_error`,retryable:!0},message:`Private Executor operation failed`},id:e,jsonrpc:`2.0`,runtimeEpoch:t}}function sD(e,t){return{error:{code:-32603,data:{code:n,retryable:!1},message:`Private Executor encountered a fatal runtime defect`},id:e,jsonrpc:`2.0`,runtimeEpoch:t}}var cD=new Map,lD,uD=!1,dD=``,fD=!1,pD;rD=ZE({isPriorityBusy:()=>nD>0||tD>0,runtimeEpoch:()=>dD,send(e,t){if(!process.send||!process.connected){t(Error(`Private Executor IPC channel is closed`));return}process.send(e,t)}});var mD=`--no-orphans`;function hD({execArgv:e=process.execArgv,standaloneBinary:t=typeof AGENT_HARNESS_PACKAGE_TYPE==`string`&&AGENT_HARNESS_PACKAGE_TYPE===`binary`}={}){return!t||e.includes(mD)}async function gD(e,n){let r=`elicitation-${t()}`,i=new Promise((e,t)=>{cD.set(r,{reject:t,resolve:t=>e(t),method:`elicitation/create`})}),a=Se();return await iD({id:r,jsonrpc:`2.0`,method:`elicitation/create`,params:{invocationId:e,request:n,runtimeEpoch:dD},...a===void 0?{}:{trace:a}}),i}async function _D(e,n,r,i){i.throwIfAborted();let a=`client-mcp-${t()}`;return new Promise((t,o)=>{let s=()=>{cD.delete(a)&&(o(i.reason),iD({jsonrpc:`2.0`,method:`client-mcp/cancel`,params:{requestId:a,runtimeEpoch:dD}}).catch(()=>void 0))},c=()=>i.removeEventListener(`abort`,s);cD.set(a,{method:`client-mcp/request`,resolve:e=>{c(),t(e)},reject:e=>{c(),o(e)}}),i.addEventListener(`abort`,s,{once:!0}),iD({id:a,jsonrpc:`2.0`,method:`client-mcp/request`,params:{sourceId:e,method:n,params:r,runtimeEpoch:dD}}).catch(e=>{cD.get(a)?.reject(e),cD.delete(a)})})}async function vD(e,t,n){if(e===`runtime/initialize`){if(lD||uD)throw Error(`Private Executor runtime is already initialized`);uD=!0;let e=t,r;try{if(e.protocolVersion!==c||!e.runtimeEpoch||!e.tenantId)throw Error(`Private Executor initialize params are invalid`);if(dD=e.runtimeEpoch,process.platform===`win32`&&!hD())throw Error(`Private Executor runtime requires Bun --no-orphans process containment`);if(e.stdioContainment===`posix_guardian`){if(e.stdioGuardianPid===void 0)throw Error(`Private Executor stdio runtime requires a guardian PID`);r=await JE(e.stdioGuardianPid)}else if(e.stdioContainment===`windows_job_object`){if(process.platform!==`win32`)throw Error(`Private Executor stdio runtime requires Windows process containment`)}else if(e.stdioContainment===`windows_native_job_object`){if(e.windowsJobAddonPath===void 0)throw Error(`Private Executor native Job addon path is missing`);QE({addonPath:e.windowsJobAddonPath})}let t=await ME.create({allowStdio:e.allowStdio,onElicitation:gD,onClientMcpRequest:_D,onCatalogStale:(e,t)=>{iD({jsonrpc:`2.0`,method:`catalog/stale`,params:{integration:e,connection:t,runtimeEpoch:dD}}).catch(()=>void 0)},onTelemetry:e=>rD?.offer(e),proxy:e.proxy,runtimeEpoch:e.runtimeEpoch,tenantId:e.tenantId},n);return dD=e.runtimeEpoch,lD=t,pD=r,pD?.once(`exit`,()=>{if(!fD)try{process.kill(-process.pid,`SIGKILL`)}catch{process.exit(70)}}),{protocolVersion:c,proxyRevision:e.proxy.revision,runtimeEpoch:dD,...pD?.pid===void 0?{}:{stdioAnchorPid:pD.pid}}}catch(e){throw r&&await qE(r),e}finally{uD=!1}}if(!lD)throw Error(`Private Executor runtime is not initialized`);if(e===`runtime/health`){if(pD&&(pD.pid===void 0||pD.exitCode!==null||pD.signalCode!==null))throw Error(`stdio process-group anchor is unavailable`);return{runtimeEpoch:dD,status:`ready`,...pD?.pid===void 0?{}:{stdioAnchorPid:pD.pid}}}if(e===`runtime/proxy-configure`){let e=t;return{proxyRevision:await lD.configureProxy(e.proxy,n)}}if(e===`registration/upsert`){let e=t;return await lD.upsertRegistration(e.registration,n)}if(e===`registration/refresh`){let e=t;return await lD.refreshRegistration(e.registrationId,n)}if(e===`registration/remove`){let e=t;return await lD.removeRegistration(e.registrationId,n),{}}if(e===`tool/call`){let e=t;return await lD.callTool(e.registrationId,e.invocationId,e.executorAddress,e.args,n)}if(e===`tool/cancel`){let e=t;return await lD.cancelInvocation(e.invocationId,n),{}}if(e===`runtime/close`)return fD=!0,await lD.close(n),{};throw Error(`Unsupported private Executor method "${e}"`)}async function yD(e){nD+=1;let t=!1,n=!1;try{if(fD&&e.method!==`runtime/close`){await iD(oD(e.id,dD,Error(`Private Executor runtime is closing`)));return}let t=e.trace===void 0?void 0:Ce(e.trace),r=await we(t,()=>vD(e.method,e.params,t));await iD({id:e.id,jsonrpc:`2.0`,result:r,runtimeEpoch:dD}),e.method===`runtime/close`&&(n=!0)}catch(n){n instanceof SE?(fD=!0,t=!0,await iD(sD(e.id,dD)).catch(()=>void 0)):await iD(oD(e.id,dD,n)).catch(()=>void 0)}finally{--nD,rD?.notifyPriorityAvailable()}t&&(await rD?.flushAndClose(),process.exit(70)),n&&(await rD?.flushAndClose(),process.connected?process.disconnect():process.exit())}function bD(e){if(e.runtimeEpoch!==dD)return;let t=cD.get(e.id);if(t){if(cD.delete(e.id),`error`in e){t.reject(Error(`Harness rejected private elicitation`));return}if(t.method===`client-mcp/request`){t.resolve(e.result);return}if(!$E(e.result)||e.result.action!==`accept`&&e.result.action!==`cancel`&&e.result.action!==`decline`){t.reject(Error(`Harness returned invalid elicitation response`));return}t.resolve({action:e.result.action,...$E(e.result.content)?{content:e.result.content}:{}})}}process.on(`message`,e=>{try{eD(e)}catch{process.disconnect();return}if(aD(e)){bD(e);return}if(!l(e)){iD(oD(null,dD,Error(`Invalid private Executor request`))).finally(()=>process.disconnect());return}yD(e)});var xD;function SD(e){for(let t of cD.values())t.reject(e);cD.clear()}function CD(e){xD===void 0&&(fD=!0,SD(e),xD=(async()=>{await lD?.close().catch(()=>void 0),await rD?.flushAndClose()})().finally(()=>process.exit()))}process.once(`disconnect`,()=>{CD(Error(`Harness IPC channel disconnected`))}),process.once(`SIGTERM`,()=>{CD(Error(`Private Executor received SIGTERM`))});export{jv as a,Pe as c,kv as i,Nv as n,q as o,Av as r,J as s,Mv as t,hD as verifyAgentHarnessProcessContainment};
147
+ `);e.stack=n?`${n}\n${a}`:i.stack}t.exports.fetch=function(e,n=void 0){return N(e,n).catch(e=>{throw P?F(e,P):e&&typeof e==`object`&&Error.captureStackTrace(e,t.exports.fetch),e})},t.exports.Headers=rT().Headers,t.exports.Response=iT().Response,t.exports.Request=aT().Request,t.exports.FormData=QC().FormData;var{setGlobalOrigin:I,getGlobalOrigin:L}=GC();t.exports.setGlobalOrigin=I,t.exports.getGlobalOrigin=L;var{CacheStorage:R}=uT(),{kConstruct:ee}=AC();t.exports.caches=new R(ee);var{deleteCookie:te,getCookies:ne,getSetCookies:re,setCookie:z,parseCookie:ie}=mT();t.exports.deleteCookie=te,t.exports.getCookies=ne,t.exports.getSetCookies=re,t.exports.setCookie=z,t.exports.parseCookie=ie;var{parseMIMEType:ae,serializeAMimeType:oe}=JC();t.exports.parseMIMEType=ae,t.exports.serializeAMimeType=oe;var{CloseEvent:B,ErrorEvent:V,MessageEvent:H}=hT(),{WebSocket:se,ping:ce}=CT();t.exports.WebSocket=se,t.exports.CloseEvent=B,t.exports.ErrorEvent=V,t.exports.MessageEvent=H,t.exports.ping=ce,t.exports.WebSocketStream=TT().WebSocketStream,t.exports.WebSocketError=wT().WebSocketError,t.exports.request=M(_.request),t.exports.stream=M(_.stream),t.exports.pipeline=M(_.pipeline),t.exports.connect=M(_.connect),t.exports.upgrade=M(_.upgrade),t.exports.MockClient=y,t.exports.MockCallHistory=b,t.exports.MockCallHistoryLog=x,t.exports.MockPool=C,t.exports.MockAgent=S,t.exports.SnapshotAgent=w,t.exports.mockErrors=T;var{EventSource:le}=OT();t.exports.EventSource=le;function U(){globalThis.fetch=t.exports.fetch,globalThis.Headers=t.exports.Headers,globalThis.Response=t.exports.Response,globalThis.Request=t.exports.Request,globalThis.FormData=t.exports.FormData,globalThis.WebSocket=t.exports.WebSocket,globalThis.CloseEvent=t.exports.CloseEvent,globalThis.ErrorEvent=t.exports.ErrorEvent,globalThis.MessageEvent=t.exports.MessageEvent,globalThis.EventSource=t.exports.EventSource}t.exports.install=U})),AT=je({default:()=>MT}),jT=Pe(kT(),1);Ne(AT,Pe(kT(),1));var MT=jT.default,NT=e=>me.fromChannel(PT(e)),PT=e=>ge.fromTransform((t,n)=>IT({scope:n,readable:e.evaluate(),onError:e.onError??RT,chunkSize:e.chunkSize,closeOnDone:e.closeOnDone})),FT=e=>V.map(V.context(),t=>new LT(t,e)),IT=e=>{let t=e.readable,n=e.closeOnDone??!0,r=e.exit??ye.make(void 0),i=e.latch??K.makeUnsafe(!1);function a(){i.openUnsafe()}function o(t){r.current=_e.fail(e.onError(t)),i.openUnsafe()}function s(){r.current=_e.fail(he.Done()),i.openUnsafe()}t.on(`readable`,a),t.once(`error`,o),t.once(`end`,s);let c=V.suspend(function n(){let a=e.readable.read(e.chunkSize);if(a===null)return r.current?r.current:t.readableEnded?V.fail(he.Done()):(i.closeUnsafe(),V.flatMap(i.await,n));let o=G.of(a);for(;a=e.readable.read(e.chunkSize),a!==null;)o.push(a);return V.succeed(o)});return V.as(be.addFinalizer(e.scope,V.sync(()=>{t.off(`readable`,a),t.off(`error`,o),t.off(`end`,s),n&&`closed`in e.readable&&!e.readable.closed&&e.readable.destroy()})),c)},LT=class extends ie{readLatch;fiber=void 0;constructor(e,t){super({}),this.readLatch=K.makeUnsafe(!1),this.fiber=me.runForEachArray(t,e=>this.readLatch.whenOpen(V.sync(()=>{this.readLatch.closeUnsafe();for(let t=0;t<e.length;t++){let n=e[t];typeof n==`string`?this.push(n,`utf8`):this.push(n)}}))).pipe(this.readLatch.whenOpen,V.provideContext(e),V.runFork),this.fiber.addObserver(e=>{this.fiber=void 0,_e.isSuccess(e)?this.push(null):this.destroy(he.squash(e.cause))})}_read(e){this.readLatch.openUnsafe()}_destroy(e,t){if(!this.fiber)return t(e);V.runFork(ve.interrupt(this.fiber)).addObserver(n=>{t(n._tag===`Failure`?he.squash(n.cause):e)})}},RT=e=>new he.UnknownError(e);de.Class,W.TypeId;var zT=class extends B.Service()(`@effect/platform-node/NodeHttpClient/Dispatcher`){},BT=B.Reference(`@effect/platform-node/NodeHttpClient/UndiciOptions`,{defaultValue:()=>({})}),VT=V.gen(function*(){let e=yield*zT;return ce.make((t,n,r,i)=>HT(t.body).pipe(V.flatMap(a=>V.tryPromise({try:()=>e.request({...i.getRef(BT),signal:r,method:t.method,headers:t.headers,origin:n.origin,path:n.pathname+n.search,body:a,headersTimeout:36e5,bodyTimeout:0}),catch:e=>new le.HttpClientError({reason:new le.TransportError({request:t,cause:e})})})),V.map(e=>new WT(t,e,n.href.split(`#`)[0]))))});function HT(e){switch(e._tag){case`Empty`:return V.succeed(null);case`Uint8Array`:case`Raw`:return V.succeed(e.body);case`FormData`:return V.succeed(e.formData);case`Stream`:return FT(e.stream)}}function UT(e){}var WT=class extends de.Class{[W.TypeId];[U.TypeId];request;source;url;constructor(e,t,n){super(),this[W.TypeId]=W.TypeId,this[U.TypeId]=U.TypeId,this.request=e,this.source=t,this.url=n,t.body.on(`error`,UT)}get status(){return this.source.statusCode}get statusText(){}get headers(){return se.fromInput(this.source.headers)}cachedCookies;get cookies(){if(this.cachedCookies!==void 0)return this.cachedCookies;let e=this.source.headers[`set-cookie`];return this.cachedCookies=e?H.fromSetCookie(e):H.empty}get remoteAddress(){return fe.none()}get stream(){return NT({evaluate:()=>this.source.body,onError:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})})}get json(){return V.flatMap(this.text,e=>V.try({try:()=>e===``?null:JSON.parse(e),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})}))}textBody;get text(){return this.textBody||=V.map(this.arrayBuffer,e=>new TextDecoder().decode(e)),this.textBody}get urlParamsBody(){return V.flatMap(this.text,e=>V.try({try:()=>ue.fromInput(new URLSearchParams(e)),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})}))}formDataBody;get formData(){return this.formDataBody??=V.flatMap(this.arrayBuffer,e=>V.tryPromise({try:()=>new globalThis.Response(e,{headers:this.headers}).formData(),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})})).pipe(V.cached,V.runSync)}arrayBufferBody;get arrayBuffer(){return this.arrayBufferBody?this.arrayBufferBody:(this.arrayBufferBody=V.tryPromise({try:()=>this.source.body.arrayBuffer(),catch:e=>new le.HttpClientError({reason:new le.DecodeError({request:this.request,response:this,cause:e})})}).pipe(V.cached,V.runSync),this.textBody=V.map(this.arrayBufferBody,e=>new TextDecoder().decode(e)),this.arrayBufferBody)}toJSON(){return W.inspect(this,{_id:`effect/http/HttpClientResponse`,request:this.request.toJSON(),status:this.status})}pipe(){return pe(this,arguments)}},GT=ce.layerMergedContext(VT);U.TypeId;var KT=class extends AT.Dispatcher{constructor(e){super(),this.retired=new Map,this.retiredFailures=[],this.current=this.createDispatcher(e),this.revision=e.revision}dispatch(e,t){return this.current.dispatch(e,t)}configure(e){if(e.revision===this.revision)return this.revision;let t=this.createDispatcher(e),n=this.current;this.current=t,this.revision=e.revision;let r=n.close();return this.retired.set(n,r),r.then(()=>this.retired.delete(n),e=>{this.retired.delete(n),this.retiredFailures.push(e)}),this.revision}async close(){let e=[...this.retired.entries()],t=await Promise.allSettled([this.current.destroy(),...e.map(([e])=>e.destroy())]);await Promise.allSettled(e.map(([,e])=>e));let n=t.filter(e=>e.status===`rejected`).map(e=>e.reason);if(n.push(...this.retiredFailures),n.length>0)throw n.length===1?n[0]:AggregateError(n,`Executor proxy dispatchers failed to close`)}createDispatcher(e){return e.mode===`direct`||e.httpProxyUrl===void 0&&e.httpsProxyUrl===void 0?new AT.Agent:new AT.EnvHttpProxyAgent({httpProxy:e.httpProxyUrl??``,httpsProxy:e.httpsProxyUrl??``,noProxy:e.noProxy.join(`,`)})}},qT=`harness.executor.runtime`,JT=16,YT=`effect.log.level`,XT=new Set([`close`,`dispatch`,`initialize`,`readiness`,`reconcile`,`refresh`,`release`,`remove`,`resolve`,`update`,`upsert`]),ZT=new Set([`connection`,`integration`,`policy`,`registration`,`tool_catalog`]);function QT(e,t){try{e?.(t)}catch{}}function $T(e){let t={},n=e instanceof Map?e.entries():Object.entries(e);for(let[e,r]of n)(e===`component`&&r===`executor`||e===`runtime.role`&&r===`executor`||e===`resource`&&typeof r==`string`&&ZT.has(r)||e===`operation`&&typeof r==`string`&&XT.has(r)||e===`outcome`&&(r===`cancelled`||r===`error`||r===`success`||r===`timeout`))&&(t[e]=r);return Object.freeze(t)}function eE(e,t){return/^[0-9a-f]{32}$/.test(e)&&e!==`00000000000000000000000000000000`&&/^[0-9a-f]{16}$/.test(t)&&t!==`0000000000000000`?{spanId:t,traceId:e}:void 0}function tE(e,t){let n=t>=e?t-e:0n,r=Number(n)/1e6;return Number.isFinite(r)?Math.round(r*1e3)/1e3:0}function nE(e,t,n){let r=[];for(let[i,a,o]of e){if(r.length>=JT)break;let e=o[YT];if(i!==qT||e!==`error`&&e!==`info`&&e!==`warn`)continue;let s=a<t?t:a>n?n:a;r.push(Object.freeze({annotations:$T(o),level:e,name:qT,offsetMs:tE(t,s)}))}return Object.freeze(r)}function rE(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function iE(e){return rE(e)&&e._tag===`ExecutorRuntimeFailure`&&typeof e.upstreamCode==`string`?e.upstreamCode.slice(0,128):rE(e)&&typeof e._tag==`string`?e._tag.slice(0,128):e instanceof Error&&e.name?e.name.slice(0,128):`mcp_unavailable`}function aE(e,t,n,r){return{error:{code:iE(r),message:`MCP server is unavailable`,retryable:!0},generation:n,registrationId:t,runtimeEpoch:e,status:`unavailable`,tools:[]}}function oE(e){return rE(e)?e:void 0}function sE(e){if(!rE(e)||!rE(e.mcp)||!rE(e.mcp.upstream))return;let t=e.mcp.upstream,n={...typeof t.destructiveHint==`boolean`?{destructiveHint:t.destructiveHint}:{},...typeof t.idempotentHint==`boolean`?{idempotentHint:t.idempotentHint}:{},...typeof t.openWorldHint==`boolean`?{openWorldHint:t.openWorldHint}:{},...typeof t.readOnlyHint==`boolean`?{readOnlyHint:t.readOnlyHint}:{},...typeof t.title==`string`?{title:t.title}:{}};return Object.keys(n).length>0?n:void 0}function cE(e){let t=oE(oE(oE(e)?.mcp)?._meta);if(t!==void 0)try{let e=JSON.stringify(t);return e===void 0||new TextEncoder().encode(e).byteLength>s?void 0:structuredClone(t)}catch{return}}function lE(e){let t=oE(oE(e.annotations)?.mcp);return typeof t?.toolName==`string`?t.toolName:String(e.name)}function uE(e){if(rE(e)&&Array.isArray(e.required)&&e.required.includes(`structuredContent`))return oE(oE(e.properties)?.structuredContent)}function dE(e){let t=uE(e.outputSchema),n=cE(e.annotations);return{...n===void 0?{}:{_meta:n},...sE(e.annotations)===void 0?{}:{annotations:sE(e.annotations)},...e.description?{description:e.description}:{},executorAddress:String(e.address),inputSchema:oE(e.inputSchema)??{additionalProperties:!0,type:`object`},...t===void 0?{}:{outputSchema:t},upstreamToolName:lE(e)}}function fE(e){return[{text:e,type:`text`}]}function pE(e,t=!1){if(!rE(e))return{content:fE(JSON.stringify(e)??String(e)),...t?{isError:!0}:{}};let n=Array.isArray(e.content)?e.content:fE(JSON.stringify(e)),r=oE(e.structuredContent),i=oE(e._meta);return{...i===void 0?{}:{_meta:i},content:n,...t||e.isError===!0?{isError:!0}:{},...r===void 0?{}:{structuredContent:r}}}function mE(e){if(!du(e))return pE(e);if(e.ok)return pE(e.data);let t=oE(e.error.details)?.content;return{content:Array.isArray(t)?t:fE(e.error.message),isError:!0}}function hE(e){return e.request._tag===`FormElicitation`?{message:e.request.message,mode:`form`,requestedSchema:e.request.requestedSchema}:{elicitationId:String(e.request.elicitationId),message:e.request.message,mode:`url`,url:e.request.url}}function gE(e){return{action:e.action,...e.content===void 0?{}:{content:e.content}}}var _E=class{constructor(){this.key=tt.make(`agent-harness-ephemeral`),this.values=O.makeUnsafe(new Map),this.provider={delete:e=>this.deleteValue(String(e)),get:e=>O.get(this.values).pipe(_.map(t=>t.get(String(e))??null)),has:e=>O.get(this.values).pipe(_.map(t=>t.has(String(e)))),key:this.key,list:()=>O.get(this.values).pipe(_.map(e=>[...e.keys()].map(e=>({id:nt.make(e),name:e})))),set:(e,t)=>this.setValue(String(e),t),writable:!0}}clear(){return O.set(this.values,new Map)}deleteValue(e){return O.update(this.values,t=>{if(!t.has(e))return t;let n=new Map(t);return n.delete(e),n})}setValue(e,t){return O.update(this.values,n=>{let r=new Map(n);return r.set(e,t),r})}},vE=class extends Error{constructor(e,t,n=`Executor operation failed at ${e}`){super(n),this.stage=e,this.upstreamCode=t,this._tag=`ExecutorRuntimeFailure`,this.name=this._tag}},yE=class extends Error{constructor(){super(`Executor runtime is closed`),this._tag=`ExecutorRuntimeClosed`,this.name=this._tag}},bE=class extends Error{constructor(e){super(`Duplicate Executor invocation id "${e}"`),this.invocationId=e,this._tag=`ExecutorInvocationConflict`,this.name=this._tag}},xE=class extends Error{constructor(e){super(`Unknown Executor registration "${e}"`),this.registrationId=e,this._tag=`ExecutorRegistrationNotFound`,this.name=this._tag}},SE=class extends Error{constructor(){super(`Executor tool address is not present in the registration`),this._tag=`ExecutorToolAddressNotFound`,this.name=this._tag}},CE=class extends Error{constructor(){super(`Executor invocation was interrupted`),this._tag=`ExecutorInvocationInterrupted`,this.name=this._tag}},wE=class extends Error{constructor(){super(`Private Executor runtime encountered a fatal defect`),this._tag=`ExecutorRuntimeDefect`,this.name=this._tag}};function TE(e,t){return new vE(e,iE(t))}function EE(e){if(d.hasDies(e))return new wE;let t=d.findErrorOption(e),n=E.isSome(t)?t.value:d.squash(e);return n instanceof bE||n instanceof CE||n instanceof xE||n instanceof yE||n instanceof vE||n instanceof SE?n:d.hasInterrupts(e)?new CE:TE(`runtime.boundary`,n)}var DE=class{constructor(e,t,n,r,i,a){this.executor=e,this.credentials=t,this.options=n,this.proxyDispatcher=r,this.registrationSemaphore=i,this.state=a,this.oauth=new EC(this.executor)}configureProxy(e){return kE(_.try({catch:e=>TE(`runtime.proxy`,e),try:()=>this.proxyDispatcher.configure(e)}),`policy`,`update`)}upsertRegistration(e){let t=this;return this.runRegistrationOperation(e.registrationId,_.gen(function*(){let n=(yield*t.openState()).registrations.get(e.registrationId);if(n)return yield*t.refreshRegistrationLocked(n);let r={allowedAddresses:new Set,connectionRef:{integration:Y.make(e.executorSlug),name:Qe.make(e.connectionName),owner:`org`},credentialIds:new Set,generation:0,spec:e};return yield*t.insertRegistration(r),yield*t.refreshRegistrationLocked(r)}))}refreshRegistration(e){let t=this;return this.runRegistrationOperation(e,_.gen(function*(){let n=yield*t.requireRegistration(e);return yield*t.refreshRegistrationLocked(n)}))}startOAuth(e,t){let n=this;return this.registrationSemaphore.withPermit(_.gen(function*(){let r=yield*n.requireRegistration(e);return yield*n.oauth.start(r.spec,r.connectionRef,t).pipe(_.mapError(e=>TE(`oauth.start`,e)))}))}completeOAuth(e,t,n){let r=this;return this.registrationSemaphore.withPermit(_.gen(function*(){let i=yield*r.requireRegistration(e);return yield*r.oauth.complete(e,t,n).pipe(_.mapError(e=>TE(`oauth.complete`,e))),yield*r.refreshRegistrationLocked(i)}))}cancelOAuth(e,t){return this.registrationSemaphore.withPermit(t===void 0?this.oauth.release(e):this.oauth.cancel(e,t)).pipe(_.mapError(e=>TE(`oauth.cancel`,e)))}logoutOAuth(e){let t=this;return this.registrationSemaphore.withPermit(_.gen(function*(){let n=yield*t.requireRegistration(e);return n.spec.transport.transport!==`remote`||n.spec.transport.authentication.kind!==`none`?yield*_.fail(TE(`oauth.logout`,{_tag:`McpOAuthUnsupportedTransport`})):(yield*t.oauth.release(e).pipe(_.mapError(e=>TE(`oauth.cancel`,e))),yield*t.executor.connections.remove(n.connectionRef).pipe(_.mapError(e=>TE(`oauth.logout`,e))),yield*t.refreshRegistrationLocked(n))}))}removeRegistration(e){let t=this;return this.registrationSemaphore.withPermit(_.gen(function*(){let n=yield*F.modify(t.state,t=>{if(t.closed)return[{_tag:`closed`},t];let n=t.registrations.get(e);if(!n)return[{_tag:`missing`},t];let r=new Map(t.registrations);return r.delete(e),[{_tag:`removed`,integrationStillUsed:[...r.values()].some(e=>e.spec.executorSlug===n.spec.executorSlug),registration:n},{...t,registrations:r}]});if(n._tag===`closed`)return yield*_.fail(new yE);n._tag!==`missing`&&(yield*t.oauth.release(e).pipe(_.ignore),t.oauth.forget(e),yield*t.executor.connections.remove(n.registration.connectionRef).pipe(_.ignore),yield*_.all([...n.registration.credentialIds].map(e=>t.credentials.deleteValue(e)),{discard:!0}),n.integrationStillUsed||(yield*(n.registration.spec.transport.transport===`client`?t.executor.integrations.remove(Y.make(n.registration.spec.executorSlug)):t.executor.mcp.removeServer(n.registration.spec.executorSlug)).pipe(_.ignore)))}))}callTool(e,t,n,r){let i=this;return _.uninterruptibleMask(a=>_.gen(function*(){let o={},s=yield*F.modify(i.state,r=>{if(r.closed)return[{_tag:`closed`},r];if(r.inFlight.has(t))return[{_tag:`conflict`},r];let i=r.registrations.get(e);if(!i)return[{_tag:`missing`},r];if(!i.allowedAddresses.has(n))return[{_tag:`tool_missing`},r];let a={registrationId:e,token:o},s=new Map(r.inFlight);return s.set(t,a),[{_tag:`reserved`},{...r,inFlight:s}]});return s._tag===`closed`?yield*_.fail(new yE):s._tag===`conflict`?yield*_.fail(new bE(t)):s._tag===`missing`?yield*_.fail(new xE(e)):s._tag===`tool_missing`?yield*_.fail(new SE):yield*_.gen(function*(){let e,s=_.suspend(()=>i.executor.execute(it.make(n),r,{onElicitation:n=>_.tryPromise({catch:e=>TE(`tool.elicitation`,e),try:async()=>gE(await i.options.onElicitation(t,hE(n)))}).pipe(_.matchEffect({onFailure:t=>_.sync(()=>(e??=t,{action:`cancel`})),onSuccess:_.succeed}))})).pipe(_.mapError(e=>TE(`tool.call`,e))),c=yield*_.exit(s).pipe(_.flatMap(t=>e===void 0?v.isSuccess(t)?_.succeed(t.value):_.failCause(t.cause):_.fail(e))).pipe(_.forkChild({uninterruptible:!1}));return(yield*F.modify(i.state,e=>{let n=e.inFlight.get(t);if(e.closed||!n||n.token!==o)return[!1,e];let r=new Map(e.inFlight);return r.set(t,{...n,fiber:c}),[!0,{...e,inFlight:r}]}))?yield*a(y.join(c)).pipe(_.map(mE)):(yield*y.interrupt(c),yield*_.fail(new CE))}).pipe(_.ensuring(i.removeInvocation(t,o)))}))}cancelInvocation(e){let t=this;return _.gen(function*(){let n=yield*F.modify(t.state,t=>{let n=t.inFlight.get(e);if(!n)return[void 0,t];let r=new Map(t.inFlight);return r.delete(e),[n,{...t,inFlight:r}]});n&&n.fiber&&(yield*y.interrupt(n.fiber))})}shutdown(){let e=this;return _.gen(function*(){let t=yield*F.modify(e.state,e=>e.closed?[[],e]:[[...e.inFlight.values()],{...e,closed:!0,inFlight:new Map}]);yield*y.interruptAll(t.flatMap(e=>e.fiber?[e.fiber]:[])),yield*e.registrationSemaphore.withPermit(_.gen(function*(){let t=yield*F.modify(e.state,e=>[[...e.registrationGates.values()],{...e,registrationGates:new Map,registrations:new Map}]);yield*_.all(t.map(e=>h.fail(e,new yE)),{discard:!0}),yield*e.credentials.clear()}))})}runRegistrationOperation(e,t){let n=this;return _.uninterruptibleMask(r=>_.gen(function*(){let i=yield*h.make(),a=yield*F.modify(n.state,t=>{if(t.closed)return[{_tag:`closed`},t];let n=t.registrationGates.get(e);if(n)return[{_tag:`join`,gate:n},t];let r=new Map(t.registrationGates);return r.set(e,i),[{_tag:`owner`,gate:i},{...t,registrationGates:r}]});if(a._tag===`closed`)return yield*_.fail(new yE);if(a._tag===`join`)return yield*r(h.await(a.gate));let o=t=>_.gen(function*(){yield*h.done(a.gate,t),yield*n.removeRegistrationGate(e,a.gate)});return yield*r(n.registrationSemaphore.withPermit(t.pipe(_.onExit(o)))).pipe(_.onExit(o))}))}refreshRegistrationLocked(e){let t=this,n=e.spec.registrationId;return _.gen(function*(){let r={...e,generation:e.generation+1},i=yield*_.exit(_.gen(function*(){yield*t.assertOpen(),yield*kE(t.ensureIntegration(r.spec),`integration`,`resolve`);let e=yield*kE(t.ensureConnection(r),`connection`,`resolve`);r=e.registration,yield*kE(t.ensureApprovalPolicy(r),`policy`,`update`);let n=e.created,i;i=n?yield*kE(t.readMaterializedTools(r),`tool_catalog`,`resolve`):yield*kE(t.executor.connections.refresh(r.connectionRef),`tool_catalog`,`refresh`);let a=yield*kE(t.executor.connections.get(r.connectionRef),`connection`,`readiness`);return a===null||a.lastHealth!=null&&a.lastHealth.status!==`healthy`?yield*_.fail(TE(`registration.health`,{_tag:`McpConnectionUnavailable`})):i}));if(v.isFailure(i)){if(d.hasDies(i.cause))return yield*_.die(new wE);if(d.hasInterrupts(i.cause))return yield*_.interrupt;r={...yield*t.requireRegistration(n),allowedAddresses:new Set,generation:r.generation},yield*t.replaceRegistration(r);let e=yield*t.executor.connections.get(r.connectionRef).pipe(_.catch(()=>_.succeed(null)));return{...aE(t.options.runtimeEpoch,n,r.generation,d.squash(i.cause)),authStatus:t.oauth.status(r.spec,e)}}let a={...r,allowedAddresses:new Set(i.value.map(e=>String(e.address)))};yield*t.replaceRegistration(a);let o=yield*t.executor.connections.get(a.connectionRef).pipe(_.mapError(e=>TE(`registration.auth`,e)));return{authStatus:t.oauth.status(a.spec,o),generation:a.generation,registrationId:n,runtimeEpoch:t.options.runtimeEpoch,status:`available`,tools:i.value.map(dE)}})}readMaterializedTools(e){let t=this;return _.gen(function*(){let n=yield*t.executor.tools.list({connection:e.connectionRef.name,integration:e.connectionRef.integration,owner:e.connectionRef.owner});return yield*_.forEach(n,e=>_.gen(function*(){let n=yield*t.executor.tools.schema(e.address);return n===null?yield*_.fail(TE(`registration.catalog`,{_tag:`ExecutorToolSchemaUnavailable`})):{...e,...n.inputSchema===void 0?{}:{inputSchema:n.inputSchema},...n.outputSchema===void 0?{}:{outputSchema:n.outputSchema}}}))})}ensureIntegration(e){let t=this;return _.gen(function*(){if(yield*t.executor.integrations.get(Y.make(e.executorSlug)))return;if(e.transport.transport===`client`){yield*t.executor.clientMcp.register(Y.make(e.executorSlug),e.transport.sourceId);return}if(e.transport.transport===`remote`){let n={authenticationTemplate:e.transport.authentication.kind===`none`?[{kind:`none`,slug:`none`},{kind:`oauth2`,slug:`oauth2`}]:[{headers:Object.fromEntries(Object.entries(e.transport.authentication.placements).map(([e,t])=>[e,[{name:t,type:`variable`}]])),label:`ACP session headers`,slug:`headers`,type:`apiKey`}],endpoint:e.transport.endpoint,name:e.executorSlug,remoteTransport:e.transport.remoteTransport,slug:e.executorSlug,transport:`remote`};yield*t.executor.mcp.addServer(n);return}if(!t.options.allowStdio)return yield*_.fail(TE(`registration.integration`,{_tag:`StdioMcpDisabled`}));let n={args:[...e.transport.args],command:e.transport.command,cwd:e.transport.cwd,envVars:Object.keys(e.transport.env),name:e.executorSlug,slug:e.executorSlug,spawnPerCall:!0,transport:`stdio`};yield*t.executor.mcp.addServer(n)})}ensureConnection(e){let t=this;return _.gen(function*(){if(yield*t.executor.connections.get(e.connectionRef))return{created:!1,registration:e};let n=e.spec.transport,r=n.transport===`client`?`none`:n.transport===`remote`?n.authentication.kind===`headers`?`headers`:`none`:Object.keys(n.env).length>0?`env`:`none`,i=n.transport===`client`?{}:n.transport===`remote`?n.headers:n.env,a=Object.entries(i),o=new Set(e.credentialIds),s=[];for(let[n,r]of a){let i=[`agent-harness`,e.spec.registrationId,s.length].join(`.`);yield*t.credentials.setValue(i,r),o.add(i),s.push([n,{from:{id:nt.make(i),provider:t.credentials.key}}])}let c={...e,credentialIds:o};yield*t.replaceRegistration(c);let l=s.length===0?{values:{}}:{inputs:Object.fromEntries(s)};return yield*t.executor.connections.create({...c.connectionRef,template:Xe.make(r),...l}),{created:!0,registration:c}})}ensureApprovalPolicy(e){let t=this;return _.gen(function*(){let n=[e.spec.executorSlug,e.connectionRef.owner,e.spec.connectionName,`*`].join(`.`);(yield*t.executor.policies.list()).some(e=>e.owner===`org`&&e.pattern===n&&e.action===`approve`)||(yield*t.executor.policies.create({action:`approve`,owner:`org`,pattern:n}))})}requireRegistration(e){let t=this;return _.gen(function*(){return(yield*t.openState()).registrations.get(e)||(yield*_.fail(new xE(e)))})}assertOpen(){return this.openState().pipe(_.asVoid)}openState(){return F.get(this.state).pipe(_.flatMap(e=>e.closed?_.fail(new yE):_.succeed(e)))}insertRegistration(e){return F.modify(this.state,t=>{if(t.closed)return[!1,t];let n=new Map(t.registrations);return n.set(e.spec.registrationId,e),[!0,{...t,registrations:n}]}).pipe(_.flatMap(e=>e?_.void:_.fail(new yE)))}replaceRegistration(e){let t=this;return _.gen(function*(){let n=yield*F.modify(t.state,t=>{if(t.closed)return[{_tag:`closed`},t];if(!t.registrations.has(e.spec.registrationId))return[{_tag:`missing`},t];let n=new Map(t.registrations);return n.set(e.spec.registrationId,e),[{_tag:`replaced`},{...t,registrations:n}]});if(n._tag===`closed`)return yield*_.fail(new yE);if(n._tag===`missing`)return yield*_.fail(new xE(e.spec.registrationId))})}removeRegistrationGate(e,t){return F.update(this.state,n=>{if(n.registrationGates.get(e)!==t)return n;let r=new Map(n.registrationGates);return r.delete(e),{...n,registrationGates:r}})}removeInvocation(e,t){return F.update(this.state,n=>{if(n.inFlight.get(e)?.token!==t)return n;let r=new Map(n.inFlight);return r.delete(e),{...n,inFlight:r}})}},OE=class extends p.Service()(`agent-harness/ExecutorChildService`){};function kE(e,t,n){let r={component:`executor`,operation:n,resource:t,"runtime.role":`executor`},i=e.pipe(_.tap(()=>_.logInfo(qT).pipe(_.annotateLogs({...r,outcome:`success`}))),_.tapError(()=>_.logWarning(qT).pipe(_.annotateLogs({...r,outcome:`error`}))));return _.withSpan(i,qT,{attributes:r,kind:`internal`})}function AE(e,t,n){let r=t===void 0?void 0:I.externalSpan({sampled:t.sampled,spanId:t.parentSpanId,traceId:t.traceId}),i={component:`executor`,operation:n,"runtime.role":`executor`},a=e.pipe(_.tap(()=>_.logInfo(qT).pipe(_.annotateLogs({...i,outcome:`success`}))),_.tapError(()=>_.logWarning(qT).pipe(_.annotateLogs({...i,outcome:`error`}))));return _.withSpan(a,qT,{attributes:{...i},kind:`server`,...r===void 0?{}:{parent:r}})}function jE(e){let t={effectErrors:0,effectLogs:0,effectSpans:0},n=new Map,r=p.make(T.MetricRegistry,n),i={"runtime.role":`executor`},a=T.counter(`agent_harness_effect_logs_total`,{description:`Allowlisted Effect log records emitted by the Executor`,incremental:!0}).pipe(T.withAttributes(i)),o=T.counter(`agent_harness_effect_errors_total`,{description:`Effect error signals observed by the Executor`,incremental:!0}).pipe(T.withAttributes(i)),s=T.counter(`agent_harness_effect_spans_total`,{description:`Completed Effect spans observed by the Executor`,incremental:!0}).pipe(T.withAttributes(i)),c=()=>QT(e,{kind:`metrics`,value:{...t}}),l=S.make(n=>{let r=Array.isArray(n.message)?n.message:[n.message];if(r.length!==1||r[0]!==qT)return;t.effectLogs+=1,a.updateUnsafe(1,n.fiber.context);let i=n.logLevel===`Error`||n.logLevel===`Fatal`?`error`:n.logLevel===`Warn`?`warn`:`info`;i===`error`&&(t.effectErrors+=1,o.updateUnsafe(1,n.fiber.context));let s=$T(n.fiber.getRef(k.CurrentLogAnnotations)),l=p.getOrUndefined(n.fiber.context,I.ParentSpan);l?._tag===`Span`&&l instanceof I.NativeSpan&&l.events.length<JT&&l.event(qT,n.fiber.getRef(f.Clock).currentTimeNanosUnsafe(),{...s,[YT]:i});let u=l?._tag===`Span`?eE(l.traceId,l.spanId):void 0;QT(e,{kind:`log`,value:{annotations:s,level:i,message:qT,...l?._tag===`Span`&&u?{span:{name:qT,sampled:l.sampled,...u}}:{}}}),c()}),u=I.make({span(n){let i=new I.NativeSpan(n),a=i.end.bind(i);return i.end=(n,l)=>{if(a(n,l),i.name!==qT)return;t.effectSpans+=1,s.updateUnsafe(1,r),l._tag===`Failure`&&(t.effectErrors+=1,o.updateUnsafe(1,r));let u=eE(i.traceId,i.spanId);if(u){let t=nE(i.events,i.startTime,n),r=i.parent._tag===`Some`&&/^[0-9a-f]{16}$/.test(i.parent.value.spanId)&&i.parent.value.spanId!==`0000000000000000`?i.parent.value.spanId:void 0;QT(e,{kind:`span`,value:{attributes:$T(i.attributes),durationMs:tE(i.startTime,n),...t.length===0?{}:{events:t},kind:i.kind,name:qT,outcome:l._tag===`Success`?`success`:`error`,...r===void 0?{}:{parentSpanId:r},sampled:i.sampled,...u}})}c()},i}});return x.mergeAll(S.layer([l]),x.succeed(I.Tracer,u),x.succeed(T.MetricRegistry,n))}function ME(e,t){return x.effect(OE,_.gen(function*(){let n=yield*_.acquireRelease(_.try({catch:e=>TE(`runtime.proxy`,e),try:()=>new KT(t.proxy)}),e=>_.promise(()=>e.close()).pipe(_.orDie)),r=GT.pipe(x.provide(x.succeed(zT,n))),i=mv({httpClientLayer:r,onElicitation:()=>_.succeed({action:`cancel`}),plugins:[DC({dangerouslyAllowStdioMCP:t.allowStdio,httpClientLayer:r},t.onCatalogStale),kC({request:t.onClientMcpRequest})],providers:[e.provider],tenant:lt.make(t.tenantId),toolsSyncTtlMs:null}).pipe(_.mapError(e=>TE(`runtime.initialize`,e)),_.map(e=>e));return new DE(yield*_.acquireRelease(i,e=>e.close().pipe(_.orDie)),e,t,n,yield*M.make(1),yield*F.make({closed:!1,inFlight:new Map,registrationGates:new Map,registrations:new Map}))}))}async function NE(e,t){let n=await e.runPromiseExit(t);if(v.isSuccess(n))return n.value;throw EE(n.cause)}var PE=class e{static async create(t,n){let r=new _E,i=C.make(x.merge(ME(r,t),jE(t.onTelemetry)));try{return await NE(i,AE(_.service(OE),n,`initialize`)),new e(i)}catch(e){throw await i.dispose().catch(()=>void 0),e}}constructor(e){this.managed=e}configureProxy(e,t){return this.runOpen(OE.use(t=>t.configureProxy(e)),t,`update`)}upsertRegistration(e,t){return this.runOpen(OE.use(t=>t.upsertRegistration(e)),t,`reconcile`)}refreshRegistration(e,t){return this.runOpen(OE.use(t=>t.refreshRegistration(e)),t,`refresh`)}startOAuth(e,t,n){return this.runOpen(OE.use(n=>n.startOAuth(e,t)),n,`update`)}completeOAuth(e,t,n,r){return this.runOpen(OE.use(r=>r.completeOAuth(e,t,n)),r,`update`)}cancelOAuth(e,t,n){return this.runOpen(OE.use(n=>n.cancelOAuth(e,t)),n,`update`)}logoutOAuth(e,t){return this.runOpen(OE.use(t=>t.logoutOAuth(e)),t,`update`)}removeRegistration(e,t){return this.runOpen(OE.use(t=>t.removeRegistration(e)),t,`release`)}callTool(e,t,n,r,i){return this.runOpen(OE.use(i=>i.callTool(e,t,n,r)),i,`dispatch`)}cancelInvocation(e,t){return this.closePromise?Promise.resolve():this.run(OE.use(t=>t.cancelInvocation(e)),t,`update`)}close(e){return this.closePromise||=this.closeOnce(e),this.closePromise}async closeOnce(e){let t;try{await this.run(OE.use(e=>e.shutdown()),e,`close`)}catch(e){t=e}try{let e=await _.runPromiseExit(this.managed.disposeEffect);v.isFailure(e)&&(t??=EE(e.cause))}catch(e){t??=TE(`runtime.close`,e)}if(t!==void 0)throw t}runOpen(e,t,n){return this.closePromise?Promise.reject(new yE):this.run(e,t,n)}run(e,t,n){return NE(this.managed,AE(e,t,n))}},FE=5e3,IE=250,LE=4096,RE=50,zE=`--agent-harness-private-stdio-group-anchor`;function BE(){return typeof AGENT_HARNESS_PACKAGE_TYPE==`string`&&AGENT_HARNESS_PACKAGE_TYPE===`binary`}function VE(e=process.env){return{AGENT_HARNESS_PRIVATE_STDIO_GROUP_ANCHOR:`1`,...e.ELECTRON_RUN_AS_NODE===`1`?{ELECTRON_RUN_AS_NODE:`1`}:{}}}var HE=class extends Error{constructor(){super(`stdio process-group anchor cleanup failed`),this._tag=`StdioProcessGroupAnchorCleanupError`,this.name=this._tag}};function UE(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function WE(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return Object.keys(t).length===4&&t.type===`ready`&&UE(t.anchorPid)&&UE(t.guardianPid)&&UE(t.targetProcessGroupId)}function GE(e,t,n,r){if(!e.stdout)return Promise.reject(Error(`stdio process-group anchor did not expose a ready pipe`));let i=e.stdout;return i.setEncoding(`utf8`),new Promise((a,o)=>{let s=``,c=!1,l=t=>{c||(c=!0,clearTimeout(p),e.removeListener(`error`,u),e.removeListener(`exit`,d),i.removeListener(`data`,f),t?o(t):(i.resume(),a()))},u=e=>l(e),d=()=>l(Error(`stdio process-group anchor exited before ready`)),f=r=>{if(s+=r,Buffer.byteLength(s,`utf8`)>LE){l(Error(`stdio process-group anchor handshake was oversized`));return}let i=s.indexOf(`
148
+ `);if(!(i<0))try{let r=JSON.parse(s.slice(0,i));if(s.slice(i+1).trim()!==``||!WE(r)||r.anchorPid!==e.pid||r.guardianPid!==t||r.targetProcessGroupId!==n){l(Error(`stdio process-group anchor handshake was invalid`));return}l()}catch{l(Error(`stdio process-group anchor handshake was malformed`))}},p=setTimeout(()=>l(Error(`stdio process-group anchor ready handshake timed out`)),r);p.unref?.(),e.once(`error`,u),e.once(`exit`,d),i.on(`data`,f)})}function KE(e,t){return Number.isSafeInteger(e)&&e!==void 0&&e>0?e:t}function qE(e,t){return e.exitCode!==null||e.signalCode!==null?Promise.resolve(!0):new Promise(n=>{let r=!1,i=t=>{r||(r=!0,clearTimeout(o),e.removeListener(`exit`,a),n(t))},a=()=>i(!0),o=setTimeout(()=>i(!1),t);o.unref?.(),e.once(`exit`,a)})}function JE(e){let t=e=>{try{e()}catch{}};e.connected&&t(()=>e.disconnect?.()),t(()=>e.channel?.unref()),t(()=>e.stdin?.destroy()),t(()=>e.stdout?.destroy()),t(()=>e.stderr?.destroy()),t(()=>e.unref())}async function YE(e,t=IE){if(e.exitCode!==null||e.signalCode!==null)return;let n=qE(e,KE(t,IE));try{e.kill(`SIGKILL`)}catch{}if(!await n)throw JE(e),new HE}async function XE(e,t={}){if(process.platform===`win32`||!Number.isSafeInteger(e)||e<=0)throw Error(`stdio process-group anchor configuration is invalid`);let n=ae(new URL(`./stdio-group-anchor.mjs`,import.meta.url)),r=t.spawnAnchor??xe,i=t.standaloneBinary??BE(),a=r(process.execPath,[...i?[zE]:[n],String(e),String(process.pid),String(RE)],{detached:!1,env:VE(),stdio:[`ignore`,`pipe`,`ignore`],windowsHide:!0});a.stdout?.on(`error`,()=>void 0);try{return await GE(a,e,process.pid,KE(t.readyTimeoutMs,FE)),a}catch(e){throw await YE(a,KE(t.cleanupTimeoutMs,IE)),e}}var ZE=250;function QE(e){try{let t=JSON.stringify(e),n=Buffer.byteLength(t,`utf8`);return n<=i?{bytes:n,message:e}:void 0}catch{return}}function $E(e){let t=[],n=0,r=!0,i=!1,s,c,l,u=!1,d,f=()=>{i||(r=!1,i=!0,d!==void 0&&(clearImmediate(d),d=void 0),l!==void 0&&(clearTimeout(l),l=void 0),t.length=0,n=0,c?.(),c=void 0)},p=()=>{s!==void 0&&!u&&t.length===0&&f()},m=()=>{i||u||d!==void 0||t.length===0||e.isPriorityBusy()||(d=setImmediate(()=>{d=void 0,h()}))},h=()=>{if(i||u||t.length===0||e.isPriorityBusy())return;let r=t.shift();if(!r)return;n-=r.bytes,u=!0;let a=!1,o=()=>{a||(a=!0,u=!1,p(),m())};try{e.send(r.message,o)}catch{o()}};return{get bufferedBytes(){return n},get bufferedMessages(){return t.length},close(){f()},flushAndClose(e=ZE){return i?s??Promise.resolve():s===void 0?(r=!1,s=new Promise(e=>{c=e}),l=setTimeout(f,Number.isFinite(e)?Math.max(0,Math.floor(e)):ZE),l.unref(),p(),m(),s):s},notifyPriorityAvailable(){m()},offer(s){if(!r||i)return;let c=e.runtimeEpoch();if(!c)return;let l=QE({jsonrpc:`2.0`,method:`telemetry/effect`,params:{runtimeEpoch:c,signal:s}});if(l){if(s.kind===`metrics`){let e=t.findIndex(e=>e.message.params.signal.kind===`metrics`);if(e>=0){let[r]=t.splice(e,1);r&&(n-=r.bytes)}}t.length>=o||n+l.bytes>a||(t.push(l),n+=l.bytes,m())}}}}function eD({addonPath:t,platform:n=process.platform,loadBinding:r=e(import.meta.url)}){if(n!==`win32`||!oe.win32.isAbsolute(t))throw Error(`Windows no-orphans requires Windows and an absolute addon path`);let i=r(t);if(typeof i?.ensureKillOnCloseJob!=`function`||typeof i.isProcessInJob!=`function`||i.ensureKillOnCloseJob()!==!0||i.isProcessInJob(process.pid)!==!0)throw Error(`Windows no-orphans Job initialization failed`);return Object.freeze({addonPath:t,isProcessInJob:e=>i.isProcessInJob(e)===!0})}function tD(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function nD(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`Private Executor IPC payload must be JSON`);let n=Buffer.byteLength(t,`utf8`);if(n>r)throw RangeError(`Private Executor IPC payload exceeds ${r} bytes`);return n}var rD=0,iD=0,aD;function oD(e){return nD(e),rD+=1,new Promise((t,n)=>{if(!process.send||!process.connected){n(Error(`Private Executor IPC channel is closed`));return}process.send(e,e=>{e?n(e):t()})}).finally(()=>{--rD,aD?.notifyPriorityAvailable()})}function sD(e){return u(e)&&typeof e.id==`string`}function cD(e,t,n){return{error:{code:-32603,data:{code:(tD(n)&&n._tag===`ExecutorRuntimeFailure`&&typeof n.stage==`string`&&n.stage.startsWith(`oauth.`)&&typeof n.upstreamCode==`string`&&[`McpOAuthUnsupportedTransport`,`McpOAuthClientRequired`,`McpOAuthInvalidState`,`OAuthProbeError`,`OAuthRegisterDynamicError`,`OAuthStartError`,`OAuthCompleteError`].includes(n.upstreamCode)?n.upstreamCode:void 0)??(tD(n)&&typeof n._tag==`string`?n._tag.slice(0,128):n instanceof Error?n.name.slice(0,128):`internal_error`),retryable:!0},message:`Private Executor operation failed`},id:e,jsonrpc:`2.0`,runtimeEpoch:t}}function lD(e,t){return{error:{code:-32603,data:{code:n,retryable:!1},message:`Private Executor encountered a fatal runtime defect`},id:e,jsonrpc:`2.0`,runtimeEpoch:t}}var uD=new Map,dD,fD=!1,pD=``,mD=!1,hD;aD=$E({isPriorityBusy:()=>iD>0||rD>0,runtimeEpoch:()=>pD,send(e,t){if(!process.send||!process.connected){t(Error(`Private Executor IPC channel is closed`));return}process.send(e,t)}});var gD=`--no-orphans`;function _D({execArgv:e=process.execArgv,standaloneBinary:t=typeof AGENT_HARNESS_PACKAGE_TYPE==`string`&&AGENT_HARNESS_PACKAGE_TYPE===`binary`}={}){return!t||e.includes(gD)}async function vD(e,n){let r=`elicitation-${t()}`,i=new Promise((e,t)=>{uD.set(r,{reject:t,resolve:t=>e(t),method:`elicitation/create`})}),a=Se();return await oD({id:r,jsonrpc:`2.0`,method:`elicitation/create`,params:{invocationId:e,request:n,runtimeEpoch:pD},...a===void 0?{}:{trace:a}}),i}async function yD(e,n,r,i){i.throwIfAborted();let a=`client-mcp-${t()}`;return new Promise((t,o)=>{let s=()=>{uD.delete(a)&&(o(i.reason),oD({jsonrpc:`2.0`,method:`client-mcp/cancel`,params:{requestId:a,runtimeEpoch:pD}}).catch(()=>void 0))},c=()=>i.removeEventListener(`abort`,s);uD.set(a,{method:`client-mcp/request`,resolve:e=>{c(),t(e)},reject:e=>{c(),o(e)}}),i.addEventListener(`abort`,s,{once:!0}),oD({id:a,jsonrpc:`2.0`,method:`client-mcp/request`,params:{sourceId:e,method:n,params:r,runtimeEpoch:pD}}).catch(e=>{uD.get(a)?.reject(e),uD.delete(a)})})}async function bD(e,t,n){if(e===`runtime/initialize`){if(dD||fD)throw Error(`Private Executor runtime is already initialized`);fD=!0;let e=t,r;try{if(e.protocolVersion!==c||!e.runtimeEpoch||!e.tenantId)throw Error(`Private Executor initialize params are invalid`);if(pD=e.runtimeEpoch,process.platform===`win32`&&!_D())throw Error(`Private Executor runtime requires Bun --no-orphans process containment`);if(e.stdioContainment===`posix_guardian`){if(e.stdioGuardianPid===void 0)throw Error(`Private Executor stdio runtime requires a guardian PID`);r=await XE(e.stdioGuardianPid)}else if(e.stdioContainment===`windows_job_object`){if(process.platform!==`win32`)throw Error(`Private Executor stdio runtime requires Windows process containment`)}else if(e.stdioContainment===`windows_native_job_object`){if(e.windowsJobAddonPath===void 0)throw Error(`Private Executor native Job addon path is missing`);eD({addonPath:e.windowsJobAddonPath})}let t=await PE.create({allowStdio:e.allowStdio,onElicitation:vD,onClientMcpRequest:yD,onCatalogStale:(e,t)=>{oD({jsonrpc:`2.0`,method:`catalog/stale`,params:{integration:e,connection:t,runtimeEpoch:pD}}).catch(()=>void 0)},onTelemetry:e=>aD?.offer(e),proxy:e.proxy,runtimeEpoch:e.runtimeEpoch,tenantId:e.tenantId},n);return pD=e.runtimeEpoch,dD=t,hD=r,hD?.once(`exit`,()=>{if(!mD)try{process.kill(-process.pid,`SIGKILL`)}catch{process.exit(70)}}),{protocolVersion:c,proxyRevision:e.proxy.revision,runtimeEpoch:pD,...hD?.pid===void 0?{}:{stdioAnchorPid:hD.pid}}}catch(e){throw r&&await YE(r),e}finally{fD=!1}}if(!dD)throw Error(`Private Executor runtime is not initialized`);if(e===`oauth/start`){let e=t;return await dD.startOAuth(e.registrationId,e.input,n)}if(e===`oauth/complete`){let e=t;return await dD.completeOAuth(e.registrationId,e.state,e.code,n)}if(e===`oauth/cancel`){let e=t;return await dD.cancelOAuth(e.registrationId,e.state,n),{}}if(e===`oauth/logout`){let e=t;return await dD.logoutOAuth(e.registrationId,n)}if(e===`runtime/health`){if(hD&&(hD.pid===void 0||hD.exitCode!==null||hD.signalCode!==null))throw Error(`stdio process-group anchor is unavailable`);return{runtimeEpoch:pD,status:`ready`,...hD?.pid===void 0?{}:{stdioAnchorPid:hD.pid}}}if(e===`runtime/proxy-configure`){let e=t;return{proxyRevision:await dD.configureProxy(e.proxy,n)}}if(e===`registration/upsert`){let e=t;return await dD.upsertRegistration(e.registration,n)}if(e===`registration/refresh`){let e=t;return await dD.refreshRegistration(e.registrationId,n)}if(e===`registration/remove`){let e=t;return await dD.removeRegistration(e.registrationId,n),{}}if(e===`tool/call`){let e=t;return await dD.callTool(e.registrationId,e.invocationId,e.executorAddress,e.args,n)}if(e===`tool/cancel`){let e=t;return await dD.cancelInvocation(e.invocationId,n),{}}if(e===`runtime/close`)return mD=!0,await dD.close(n),{};throw Error(`Unsupported private Executor method "${e}"`)}async function xD(e){iD+=1;let t=!1,n=!1;try{if(mD&&e.method!==`runtime/close`){await oD(cD(e.id,pD,Error(`Private Executor runtime is closing`)));return}let t=e.trace===void 0?void 0:Ce(e.trace),r=await we(t,()=>bD(e.method,e.params,t));await oD({id:e.id,jsonrpc:`2.0`,result:r,runtimeEpoch:pD}),e.method===`runtime/close`&&(n=!0)}catch(n){n instanceof wE?(mD=!0,t=!0,await oD(lD(e.id,pD)).catch(()=>void 0)):await oD(cD(e.id,pD,n)).catch(()=>void 0)}finally{--iD,aD?.notifyPriorityAvailable()}t&&(await aD?.flushAndClose(),process.exit(70)),n&&(await aD?.flushAndClose(),process.connected?process.disconnect():process.exit())}function SD(e){if(e.runtimeEpoch!==pD)return;let t=uD.get(e.id);if(t){if(uD.delete(e.id),`error`in e){t.reject(Error(`Harness rejected private elicitation`));return}if(t.method===`client-mcp/request`){t.resolve(e.result);return}if(!tD(e.result)||e.result.action!==`accept`&&e.result.action!==`cancel`&&e.result.action!==`decline`){t.reject(Error(`Harness returned invalid elicitation response`));return}t.resolve({action:e.result.action,...tD(e.result.content)?{content:e.result.content}:{}})}}process.on(`message`,e=>{try{nD(e)}catch{process.disconnect();return}if(sD(e)){SD(e);return}if(!l(e)){oD(cD(null,pD,Error(`Invalid private Executor request`))).finally(()=>process.disconnect());return}xD(e)});var CD;function wD(e){for(let t of uD.values())t.reject(e);uD.clear()}function TD(e){CD===void 0&&(mD=!0,wD(e),CD=(async()=>{await dD?.close().catch(()=>void 0),await aD?.flushAndClose()})().finally(()=>process.exit()))}process.once(`disconnect`,()=>{TD(Error(`Harness IPC channel disconnected`))}),process.once(`SIGTERM`,()=>{TD(Error(`Private Executor received SIGTERM`))});export{jv as a,Pe as c,kv as i,Nv as n,q as o,Av as r,J as s,Mv as t,_D as verifyAgentHarnessProcessContainment};