@omnitron-dev/omnitron 0.3.3 → 0.4.6

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 (358) hide show
  1. package/README.md +296 -6
  2. package/bin/{pnpmfile-sdk.mjs → pnpmfile-sdk.js} +19 -1
  3. package/bin/sdk.d.ts +19 -0
  4. package/bin/sdk.js +932 -0
  5. package/dist/BUILD.json +2 -2
  6. package/dist/cli/omnitron.js +68 -20
  7. package/dist/cli/omnitron.js.map +1 -1
  8. package/dist/commands/infra.d.ts +8 -2
  9. package/dist/commands/infra.d.ts.map +1 -1
  10. package/dist/commands/infra.js +52 -59
  11. package/dist/commands/infra.js.map +1 -1
  12. package/dist/commands/node.d.ts.map +1 -1
  13. package/dist/commands/node.js +8 -1
  14. package/dist/commands/node.js.map +1 -1
  15. package/dist/commands/release-store.d.ts.map +1 -1
  16. package/dist/commands/release-store.js +6 -9
  17. package/dist/commands/release-store.js.map +1 -1
  18. package/dist/commands/release.d.ts +4 -1
  19. package/dist/commands/release.d.ts.map +1 -1
  20. package/dist/commands/release.js +125 -5
  21. package/dist/commands/release.js.map +1 -1
  22. package/dist/commands/stack.d.ts +3 -6
  23. package/dist/commands/stack.d.ts.map +1 -1
  24. package/dist/commands/stack.js +51 -9
  25. package/dist/commands/stack.js.map +1 -1
  26. package/dist/commands/status.d.ts.map +1 -1
  27. package/dist/commands/status.js +1 -0
  28. package/dist/commands/status.js.map +1 -1
  29. package/dist/config/saved.d.ts +3 -0
  30. package/dist/config/saved.d.ts.map +1 -1
  31. package/dist/config/saved.js +1 -0
  32. package/dist/config/saved.js.map +1 -1
  33. package/dist/config/types.d.ts +4 -0
  34. package/dist/config/types.d.ts.map +1 -1
  35. package/dist/daemon/daemon-client.d.ts +3 -15
  36. package/dist/daemon/daemon-client.d.ts.map +1 -1
  37. package/dist/daemon/daemon-client.js +4 -0
  38. package/dist/daemon/daemon-client.js.map +1 -1
  39. package/dist/daemon/daemon.d.ts +5 -11
  40. package/dist/daemon/daemon.d.ts.map +1 -1
  41. package/dist/daemon/daemon.js +58 -48
  42. package/dist/daemon/daemon.js.map +1 -1
  43. package/dist/daemon/daemon.rpc-service.d.ts +3 -41
  44. package/dist/daemon/daemon.rpc-service.d.ts.map +1 -1
  45. package/dist/daemon/daemon.rpc-service.js +50 -117
  46. package/dist/daemon/daemon.rpc-service.js.map +1 -1
  47. package/dist/daemon/darwin-owner-evidence.js +1 -1
  48. package/dist/daemon/darwin-owner-evidence.js.map +1 -1
  49. package/dist/daemon/execution-capabilities.d.ts +1 -1
  50. package/dist/daemon/execution-capabilities.d.ts.map +1 -1
  51. package/dist/daemon/execution-capabilities.js +3 -3
  52. package/dist/daemon/execution-capabilities.js.map +1 -1
  53. package/dist/daemon/execution-client.d.ts +5 -1
  54. package/dist/daemon/execution-client.d.ts.map +1 -1
  55. package/dist/daemon/execution-client.js +45 -19
  56. package/dist/daemon/execution-client.js.map +1 -1
  57. package/dist/daemon/execution-host.d.ts +4 -11
  58. package/dist/daemon/execution-host.d.ts.map +1 -1
  59. package/dist/daemon/execution-host.js +3 -9
  60. package/dist/daemon/execution-host.js.map +1 -1
  61. package/dist/daemon/execution-owner.d.ts.map +1 -1
  62. package/dist/daemon/execution-owner.js +2 -16
  63. package/dist/daemon/execution-owner.js.map +1 -1
  64. package/dist/daemon/execution-shutdown.d.ts +1 -1
  65. package/dist/daemon/execution-shutdown.d.ts.map +1 -1
  66. package/dist/daemon/managed-owner-build.d.ts +4 -0
  67. package/dist/daemon/managed-owner-build.d.ts.map +1 -1
  68. package/dist/daemon/managed-owner-build.js +14 -2
  69. package/dist/daemon/managed-owner-build.js.map +1 -1
  70. package/dist/daemon/managed-runtime.js +1 -1
  71. package/dist/daemon/managed-runtime.js.map +1 -1
  72. package/dist/daemon/owner-reconciliation.d.ts.map +1 -1
  73. package/dist/daemon/owner-reconciliation.js +1 -2
  74. package/dist/daemon/owner-reconciliation.js.map +1 -1
  75. package/dist/daemon/startup-config.d.ts +1 -0
  76. package/dist/daemon/startup-config.d.ts.map +1 -1
  77. package/dist/daemon/system-guardian-cgroup.js +1 -1
  78. package/dist/daemon/system-guardian-cgroup.js.map +1 -1
  79. package/dist/infrastructure/container-runtime.d.ts +8 -0
  80. package/dist/infrastructure/container-runtime.d.ts.map +1 -1
  81. package/dist/infrastructure/container-runtime.js +5 -0
  82. package/dist/infrastructure/container-runtime.js.map +1 -1
  83. package/dist/infrastructure/existing-containers.d.ts +25 -0
  84. package/dist/infrastructure/existing-containers.d.ts.map +1 -0
  85. package/dist/infrastructure/existing-containers.js +183 -0
  86. package/dist/infrastructure/existing-containers.js.map +1 -0
  87. package/dist/infrastructure/infrastructure.service.d.ts +19 -1
  88. package/dist/infrastructure/infrastructure.service.d.ts.map +1 -1
  89. package/dist/infrastructure/infrastructure.service.js +136 -17
  90. package/dist/infrastructure/infrastructure.service.js.map +1 -1
  91. package/dist/infrastructure/presets/postgres.js +1 -1
  92. package/dist/infrastructure/presets/postgres.js.map +1 -1
  93. package/dist/infrastructure/presets/registry.d.ts.map +1 -1
  94. package/dist/infrastructure/presets/registry.js +11 -19
  95. package/dist/infrastructure/presets/registry.js.map +1 -1
  96. package/dist/infrastructure/stack-infra-manager.d.ts +11 -1
  97. package/dist/infrastructure/stack-infra-manager.d.ts.map +1 -1
  98. package/dist/infrastructure/stack-infra-manager.js +79 -8
  99. package/dist/infrastructure/stack-infra-manager.js.map +1 -1
  100. package/dist/mcp/tool-groups/infra.tools.d.ts.map +1 -1
  101. package/dist/mcp/tool-groups/infra.tools.js +4 -1
  102. package/dist/mcp/tool-groups/infra.tools.js.map +1 -1
  103. package/dist/monitoring/log-journal.d.ts.map +1 -1
  104. package/dist/monitoring/log-journal.js +1 -2
  105. package/dist/monitoring/log-journal.js.map +1 -1
  106. package/dist/operations.d.ts +1 -0
  107. package/dist/operations.d.ts.map +1 -1
  108. package/dist/operations.js +1 -0
  109. package/dist/operations.js.map +1 -1
  110. package/dist/orchestrator/app-name.d.ts +33 -0
  111. package/dist/orchestrator/app-name.d.ts.map +1 -0
  112. package/dist/orchestrator/app-name.js +68 -0
  113. package/dist/orchestrator/app-name.js.map +1 -0
  114. package/dist/orchestrator/bootstrap-loader.d.ts +2 -0
  115. package/dist/orchestrator/bootstrap-loader.d.ts.map +1 -1
  116. package/dist/orchestrator/bootstrap-loader.js +2 -1
  117. package/dist/orchestrator/bootstrap-loader.js.map +1 -1
  118. package/dist/orchestrator/classic-launcher.d.ts.map +1 -1
  119. package/dist/orchestrator/classic-launcher.js +2 -1
  120. package/dist/orchestrator/classic-launcher.js.map +1 -1
  121. package/dist/orchestrator/execution-contract.d.ts +2 -3
  122. package/dist/orchestrator/execution-contract.d.ts.map +1 -1
  123. package/dist/orchestrator/file-watcher.d.ts +11 -23
  124. package/dist/orchestrator/file-watcher.d.ts.map +1 -1
  125. package/dist/orchestrator/file-watcher.js +57 -42
  126. package/dist/orchestrator/file-watcher.js.map +1 -1
  127. package/dist/orchestrator/orchestrator.service.d.ts +11 -31
  128. package/dist/orchestrator/orchestrator.service.d.ts.map +1 -1
  129. package/dist/orchestrator/orchestrator.service.js +127 -109
  130. package/dist/orchestrator/orchestrator.service.js.map +1 -1
  131. package/dist/project/bootstrap-metadata.d.ts +1 -1
  132. package/dist/project/bootstrap-metadata.d.ts.map +1 -1
  133. package/dist/project/bootstrap-metadata.js +3 -2
  134. package/dist/project/bootstrap-metadata.js.map +1 -1
  135. package/dist/project/node-stack-stop.d.ts +2 -1
  136. package/dist/project/node-stack-stop.d.ts.map +1 -1
  137. package/dist/project/node-stack-stop.js +5 -1
  138. package/dist/project/node-stack-stop.js.map +1 -1
  139. package/dist/project/stack-diagnosis.d.ts.map +1 -1
  140. package/dist/project/stack-diagnosis.js +2 -3
  141. package/dist/project/stack-diagnosis.js.map +1 -1
  142. package/dist/release/artifact-store.d.ts +42 -7
  143. package/dist/release/artifact-store.d.ts.map +1 -1
  144. package/dist/release/artifact-store.js +176 -62
  145. package/dist/release/artifact-store.js.map +1 -1
  146. package/dist/release/closure-library-path.d.ts +8 -2
  147. package/dist/release/closure-library-path.d.ts.map +1 -1
  148. package/dist/release/closure-library-path.js +72 -28
  149. package/dist/release/closure-library-path.js.map +1 -1
  150. package/dist/release/configured-store.d.ts +6 -0
  151. package/dist/release/configured-store.d.ts.map +1 -0
  152. package/dist/release/configured-store.js +54 -0
  153. package/dist/release/configured-store.js.map +1 -0
  154. package/dist/release/load.d.ts +3 -0
  155. package/dist/release/load.d.ts.map +1 -1
  156. package/dist/release/load.js +8 -2
  157. package/dist/release/load.js.map +1 -1
  158. package/dist/release/local-installation.d.ts +2 -0
  159. package/dist/release/local-installation.d.ts.map +1 -1
  160. package/dist/release/local-installation.js +1 -1
  161. package/dist/release/local-installation.js.map +1 -1
  162. package/dist/release/portable-archive.d.ts +3 -0
  163. package/dist/release/portable-archive.d.ts.map +1 -1
  164. package/dist/release/portable-archive.js +13 -7
  165. package/dist/release/portable-archive.js.map +1 -1
  166. package/dist/release/registry-framework.d.ts +25 -0
  167. package/dist/release/registry-framework.d.ts.map +1 -1
  168. package/dist/release/registry-framework.js +51 -3
  169. package/dist/release/registry-framework.js.map +1 -1
  170. package/dist/release/target-runtime.d.ts +4 -0
  171. package/dist/release/target-runtime.d.ts.map +1 -1
  172. package/dist/release/target-runtime.js +9 -0
  173. package/dist/release/target-runtime.js.map +1 -1
  174. package/dist/services/host-upgrade.d.ts +2 -0
  175. package/dist/services/host-upgrade.d.ts.map +1 -1
  176. package/dist/services/host-upgrade.js +6 -2
  177. package/dist/services/host-upgrade.js.map +1 -1
  178. package/dist/services/infrastructure.rpc-service.d.ts +14 -2
  179. package/dist/services/infrastructure.rpc-service.d.ts.map +1 -1
  180. package/dist/services/infrastructure.rpc-service.js +128 -17
  181. package/dist/services/infrastructure.rpc-service.js.map +1 -1
  182. package/dist/services/kernel-rollout.service.d.ts.map +1 -1
  183. package/dist/services/kernel-rollout.service.js +1 -2
  184. package/dist/services/kernel-rollout.service.js.map +1 -1
  185. package/dist/services/migration-process.d.ts +1 -0
  186. package/dist/services/migration-process.d.ts.map +1 -1
  187. package/dist/services/migration-process.js +4 -2
  188. package/dist/services/migration-process.js.map +1 -1
  189. package/dist/services/node-deploy-lease.d.ts +4 -1
  190. package/dist/services/node-deploy-lease.d.ts.map +1 -1
  191. package/dist/services/node-deploy-lease.js +29 -4
  192. package/dist/services/node-deploy-lease.js.map +1 -1
  193. package/dist/services/node-manager.service.d.ts +5 -25
  194. package/dist/services/node-manager.service.d.ts.map +1 -1
  195. package/dist/services/node-manager.service.js +150 -139
  196. package/dist/services/node-manager.service.js.map +1 -1
  197. package/dist/services/pipeline-definition.d.ts.map +1 -1
  198. package/dist/services/pipeline-definition.js +32 -6
  199. package/dist/services/pipeline-definition.js.map +1 -1
  200. package/dist/services/pipeline.service.d.ts +7 -1
  201. package/dist/services/pipeline.service.d.ts.map +1 -1
  202. package/dist/services/pipeline.service.js +106 -13
  203. package/dist/services/pipeline.service.js.map +1 -1
  204. package/dist/services/project.rpc-service.d.ts +6 -5
  205. package/dist/services/project.rpc-service.d.ts.map +1 -1
  206. package/dist/services/project.rpc-service.js +13 -0
  207. package/dist/services/project.rpc-service.js.map +1 -1
  208. package/dist/services/project.service.d.ts +30 -6
  209. package/dist/services/project.service.d.ts.map +1 -1
  210. package/dist/services/project.service.js +414 -66
  211. package/dist/services/project.service.js.map +1 -1
  212. package/dist/services/release.rpc-service.d.ts +2 -1
  213. package/dist/services/release.rpc-service.d.ts.map +1 -1
  214. package/dist/services/release.rpc-service.js +19 -3
  215. package/dist/services/release.rpc-service.js.map +1 -1
  216. package/dist/services/release.service.d.ts +24 -11
  217. package/dist/services/release.service.d.ts.map +1 -1
  218. package/dist/services/release.service.js +162 -39
  219. package/dist/services/release.service.js.map +1 -1
  220. package/dist/services/remote-deployer.service.d.ts +1 -1
  221. package/dist/services/remote-deployer.service.d.ts.map +1 -1
  222. package/dist/services/remote-deployer.service.js +3 -0
  223. package/dist/services/remote-deployer.service.js.map +1 -1
  224. package/dist/services/secrets.service.d.ts +6 -0
  225. package/dist/services/secrets.service.d.ts.map +1 -1
  226. package/dist/services/secrets.service.js +95 -51
  227. package/dist/services/secrets.service.js.map +1 -1
  228. package/dist/shared/dto/backend.d.ts +3 -0
  229. package/dist/shared/dto/backend.d.ts.map +1 -1
  230. package/dist/shared/dto/backend.js.map +1 -1
  231. package/dist/shared/dto/nodes.d.ts +2 -0
  232. package/dist/shared/dto/nodes.d.ts.map +1 -1
  233. package/dist/shared/dto/pipelines.d.ts +54 -5
  234. package/dist/shared/dto/pipelines.d.ts.map +1 -1
  235. package/dist/shared/dto/pipelines.js +0 -7
  236. package/dist/shared/dto/pipelines.js.map +1 -1
  237. package/dist/shared/dto/project.d.ts +61 -1
  238. package/dist/shared/dto/project.d.ts.map +1 -1
  239. package/dist/shared/dto/releases.d.ts +8 -1
  240. package/dist/shared/dto/releases.d.ts.map +1 -1
  241. package/dist/shared/dto/services.d.ts +44 -18
  242. package/dist/shared/dto/services.d.ts.map +1 -1
  243. package/dist/shared/dto/services.js.map +1 -1
  244. package/dist/shared/release-reading.d.ts +6 -0
  245. package/dist/shared/release-reading.d.ts.map +1 -1
  246. package/dist/shared/release-reading.js +42 -0
  247. package/dist/shared/release-reading.js.map +1 -1
  248. package/dist/workers/system-worker-manager.d.ts +1 -2
  249. package/dist/workers/system-worker-manager.d.ts.map +1 -1
  250. package/dist/workers/system-worker-manager.js +5 -3
  251. package/dist/workers/system-worker-manager.js.map +1 -1
  252. package/package.json +20 -19
  253. package/webapp/dist/BUILD.json +2 -2
  254. package/webapp/dist/assets/{access-jWkHxGc7.js → access-B2gXuoMG.js} +1 -1
  255. package/webapp/dist/assets/{access-48hkC2-P.js → access-I0f72P9m.js} +1 -1
  256. package/webapp/dist/assets/{admin-data-table-BKSDI8sU.js → admin-data-table-CAEL2f-m.js} +1 -1
  257. package/webapp/dist/assets/{alert-uBG6r9NW.js → alert-BdJ2uaY0.js} +1 -1
  258. package/webapp/dist/assets/{alerts-CuPQ9YQJ.js → alerts-DeVkMXWo.js} +1 -1
  259. package/webapp/dist/assets/{apps-Drio028B.js → apps-9SuDvyGQ.js} +1 -1
  260. package/webapp/dist/assets/{audit-npSFJECe.js → audit-DT8cY7Ys.js} +1 -1
  261. package/webapp/dist/assets/backend-status.store-BbBE9cn8.js +4 -0
  262. package/webapp/dist/assets/{card-DkH32gMY.js → card-DaUEmUI5.js} +1 -1
  263. package/webapp/dist/assets/{chart-BpGXlCJc.js → chart-BKXP2ter.js} +1 -1
  264. package/webapp/dist/assets/{client-DFnuv2z3.js → client-CgyTwq9g.js} +1 -1
  265. package/webapp/dist/assets/{code-editor-DK6Tmmxv.js → code-editor-JVuQ4m-z.js} +1 -1
  266. package/webapp/dist/assets/{comparison-bars-BtC0dHjF.js → comparison-bars-Ds5Dt1oj.js} +1 -1
  267. package/webapp/dist/assets/{confirm-dialog-BbGsAz7_.js → confirm-dialog-BayExVbF.js} +1 -1
  268. package/webapp/dist/assets/{console-keyboard-D3YCA0yU.js → console-keyboard-uSLt92dB.js} +1 -1
  269. package/webapp/dist/assets/{containers-Bl8gAyZX.js → containers-DkXTgcrY.js} +1 -1
  270. package/webapp/dist/assets/{controls-C5W8gHU4.js → controls-CqeGPnaF.js} +1 -1
  271. package/webapp/dist/assets/{dashboard-UHlet3H9.js → dashboard-By5yPuOf.js} +1 -1
  272. package/webapp/dist/assets/{dashboard-builder-67PZFqhE.js → dashboard-builder-C0hvBwkd.js} +1 -1
  273. package/webapp/dist/assets/deploy-progress-B39cvvCE.js +1 -0
  274. package/webapp/dist/assets/deploy-release-dialog-CnzaO_xL.js +1 -0
  275. package/webapp/dist/assets/deployments-BXP943hA.js +1 -0
  276. package/webapp/dist/assets/{detail-B4TiBfxU.js → detail-B84RgiOb.js} +1 -1
  277. package/webapp/dist/assets/{detail-CYS81K6Y.js → detail-CVXDks9-.js} +1 -1
  278. package/webapp/dist/assets/detail-D9DixtaK.js +2 -0
  279. package/webapp/dist/assets/{empty-content-7jOFhG4C.js → empty-content-eyDOuOVp.js} +1 -1
  280. package/webapp/dist/assets/{error-boundary-CLLI8PWw.js → error-boundary-CQmDr_HS.js} +1 -1
  281. package/webapp/dist/assets/{event-fields-CiyqrRO8.js → event-fields-C7p2a2HY.js} +1 -1
  282. package/webapp/dist/assets/{files-DigwXndm.js → files-BsfGT3t6.js} +2 -2
  283. package/webapp/dist/assets/{icons-OboZgWSt.js → icons-B9Ct8PJ9.js} +1 -1
  284. package/webapp/dist/assets/index-BEfv96EF.js +1 -0
  285. package/webapp/dist/assets/{label-B1SF0RTL.js → label-avMhe08g.js} +1 -1
  286. package/webapp/dist/assets/{log-level-filter-Bcn31D1F.js → log-level-filter-oaUGdbpk.js} +1 -1
  287. package/webapp/dist/assets/{logs-BqHOufk8.js → logs-iC1OEDv3.js} +1 -1
  288. package/webapp/dist/assets/{metric-chart-M-kI-XOt.js → metric-chart-CSa_qv4F.js} +1 -1
  289. package/webapp/dist/assets/{metrics-QIQaF7iS.js → metrics-CKCmcGKw.js} +1 -1
  290. package/webapp/dist/assets/{mui-Cd711nOk.js → mui-B3fJdIMc.js} +1 -1
  291. package/webapp/dist/assets/{mui-CdB_p2lt.js → mui-Bdr6Ks5j.js} +1 -1
  292. package/webapp/dist/assets/{mui-BIz4LSVs.js → mui-CADnFGCx.js} +1 -1
  293. package/webapp/dist/assets/{mui-AnEgAVjz.js → mui-CMWGTMXv.js} +1 -1
  294. package/webapp/dist/assets/{mui-DyT2n1lx.js → mui-CN3dT7bb.js} +1 -1
  295. package/webapp/dist/assets/{mui-BwsIrivo.js → mui-CPEkFAPo.js} +1 -1
  296. package/webapp/dist/assets/{mui-B1jrje6Z.js → mui-D3qAWvfZ.js} +1 -1
  297. package/webapp/dist/assets/{mui-C_hromOc.js → mui-D7tBU80e.js} +1 -1
  298. package/webapp/dist/assets/{mui-y44PQOfG.js → mui-DaJavAoc.js} +1 -1
  299. package/webapp/dist/assets/{mui-BXSXx9c9.js → mui-SNRRJ_vi.js} +1 -1
  300. package/webapp/dist/assets/{nodes-BJPk02vv.js → nodes-DtLyXH0V.js} +1 -1
  301. package/webapp/dist/assets/{operation-status-Bm1x1wTz.js → operation-status-DHyYOT7G.js} +1 -1
  302. package/webapp/dist/assets/{page-breadcrumbs-fR7Jmpp4.js → page-breadcrumbs-3R8RZ3nA.js} +1 -1
  303. package/webapp/dist/assets/pipelines-Do2NAAqK.js +3 -0
  304. package/webapp/dist/assets/project.store-D5IR3fo9.js +1 -0
  305. package/webapp/dist/assets/{projects-YoBzcQ24.js → projects-BqlGbzeG.js} +1 -1
  306. package/webapp/dist/assets/{realtime.store-CBDO4Abj.js → realtime.store-C8D235-B.js} +1 -1
  307. package/webapp/dist/assets/release-bits-IehuBssK.js +1 -0
  308. package/webapp/dist/assets/release-build-panel-C48hP_9w.js +1 -0
  309. package/webapp/dist/assets/release-deployment-state-BfmxZP4Y.js +1 -0
  310. package/webapp/dist/assets/releases-Cm0RV5Xu.js +2 -0
  311. package/webapp/dist/assets/{search-input-C0MHI8vO.js → search-input-SWD1dXxD.js} +1 -1
  312. package/webapp/dist/assets/settings-DwuEPQGg.js +1 -0
  313. package/webapp/dist/assets/sign-in-CQ-WeS5A.js +1 -0
  314. package/webapp/dist/assets/{skeleton-BmWDJWF9.js → skeleton-BnVxAoeX.js} +1 -1
  315. package/webapp/dist/assets/{snackbar-DSPmjMyi.js → snackbar-CRX6eqRT.js} +1 -1
  316. package/webapp/dist/assets/{stack-health-status-BIv2C10x.js → stack-health-status-DfErRNb1.js} +1 -1
  317. package/webapp/dist/assets/{stack-start-notice-BVnMOwRQ.js → stack-start-notice-NkYDjR-f.js} +1 -1
  318. package/webapp/dist/assets/{stacks-IZ1mfizi.js → stacks-BOGCfW90.js} +1 -1
  319. package/webapp/dist/assets/{store-bqUBn2A4.js → store-DtTtbc9H.js} +1 -1
  320. package/webapp/dist/assets/{system-info-BFKNM-hf.js → system-info-Cw-xywgI.js} +1 -1
  321. package/webapp/dist/assets/{table-BOWT6Y9d.js → table-D-so_B1p.js} +1 -1
  322. package/webapp/dist/assets/{table-viewport-Bp4pq-c_.js → table-viewport-DdZ1yAKm.js} +1 -1
  323. package/webapp/dist/assets/{tabs-k5NPGLnJ.js → tabs-DGqBkXh_.js} +1 -1
  324. package/webapp/dist/assets/{terminal-QWBau-Us.js → terminal-Bbl0XNeB.js} +1 -1
  325. package/webapp/dist/assets/{topology-CPey5dP6.js → topology-DmrRy7nN.js} +1 -1
  326. package/webapp/dist/assets/{topology-metadata-dialog-BivuU2y6.js → topology-metadata-dialog-Dpfp4YF1.js} +1 -1
  327. package/webapp/dist/assets/{traces-By0rdfDC.js → traces-CKHsOabJ.js} +1 -1
  328. package/webapp/dist/assets/{use-stack-context-UkBsF-l7.js → use-stack-context-BuraYaeY.js} +1 -1
  329. package/webapp/dist/assets/webapp-D8h_eabt.js +35 -0
  330. package/webapp/dist/console-version.json +1 -1
  331. package/webapp/dist/index.html +34 -34
  332. package/webapp/dist/logo.svg +1 -80
  333. package/bin/sdk.d.mts +0 -8
  334. package/bin/sdk.mjs +0 -576
  335. package/dist/monitoring/process-lifetime.d.ts +0 -11
  336. package/dist/monitoring/process-lifetime.d.ts.map +0 -1
  337. package/dist/monitoring/process-lifetime.js +0 -45
  338. package/dist/monitoring/process-lifetime.js.map +0 -1
  339. package/dist/shared/host-boot-identity.d.ts +0 -12
  340. package/dist/shared/host-boot-identity.d.ts.map +0 -1
  341. package/dist/shared/host-boot-identity.js +0 -89
  342. package/dist/shared/host-boot-identity.js.map +0 -1
  343. package/webapp/dist/assets/deploy-release-dialog-BOXcD5Wo.js +0 -1
  344. package/webapp/dist/assets/deployments-qV20Ak0P.js +0 -1
  345. package/webapp/dist/assets/detail-B85-Wees.js +0 -2
  346. package/webapp/dist/assets/index-uq8Dkk4c.js +0 -1
  347. package/webapp/dist/assets/omnitron-logo-koMCbsCv.js +0 -1
  348. package/webapp/dist/assets/pipelines-T6Ch9LTw.js +0 -3
  349. package/webapp/dist/assets/project.store--G5pIF-J.js +0 -1
  350. package/webapp/dist/assets/release-bits-B2a_wbft.js +0 -1
  351. package/webapp/dist/assets/release-build-panel-BQmIdKW9.js +0 -1
  352. package/webapp/dist/assets/release-deployment-state-DRrEI2pP.js +0 -1
  353. package/webapp/dist/assets/release-wire-f2VuBoBF.js +0 -1
  354. package/webapp/dist/assets/releases-Bp3CDgmo.js +0 -2
  355. package/webapp/dist/assets/settings-B3egRvbI.js +0 -1
  356. package/webapp/dist/assets/sign-in-9q-Nfy83.js +0 -1
  357. package/webapp/dist/assets/webapp-D-UhjFhS.js +0 -35
  358. package/webapp/dist/favicon.png +0 -0
@@ -1,3 +1,3 @@
1
1
  import{i as e,n as t,t as n}from"./rolldown-runtime-CNOWq4Kh.js";import{i as r}from"./react-BN8qLIAi.js";import{n as i,t as a}from"./services-BddvcFi8.js";function o(e,t){return t+e.replace(/\\/g,`/`)}function s(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function c(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return p(``,{pathname:r,search:i,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||`default`,n?{pathname:e.location.pathname,search:e.location.search,hash:e.location.hash}:void 0)}function n(e,t){return typeof t==`string`?t:m(t)}return g(t,n,null,e)}function l(e,t){if(e===!1||e==null)throw Error(t)}function u(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function d(){return Math.random().toString(36).substring(2,10)}function f(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function p(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?h(t):t,state:n,key:t&&t.key||r||d(),mask:i}}function m({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function h(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function g(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,c=`POP`,l=null,u=d();u??(u=0,o.replaceState({...o.state,idx:u},``));function d(){return(o.state||{idx:null}).idx}function m(){c=`POP`;let e=d(),t=e==null?null:e-u;u=e,l&&l({action:c,location:y.location,delta:t})}function h(e,t){c=`PUSH`;let r=s(e)?e:p(y.location,e,t);n&&n(r,e),u=d()+1;let m=f(r,u),h=y.createHref(r.mask||r);try{o.pushState(m,``,h)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(h)}a&&l&&l({action:c,location:y.location,delta:1})}function g(e,t){c=`REPLACE`;let r=s(e)?e:p(y.location,e,t);n&&n(r,e),u=d();let i=f(r,u),m=y.createHref(r.mask||r);o.replaceState(i,``,m),a&&l&&l({action:c,location:y.location,delta:0})}function v(e){return _(i,e)}let y={get action(){return c},get location(){return e(i,o)},listen(e){if(l)throw Error(`A history only accepts one active listener`);return i.addEventListener(Wt,m),l=e,()=>{i.removeEventListener(Wt,m),l=null}},createHref(e){return t(i,e)},createURL:v,encodeLocation(e){let t=v(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:h,replace:g,go(e){return o.go(e)}};return y}function _(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),l(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:m(t);return i=i.replace(/ $/,`%20`),!n&&Ut.test(i)&&(i=r+i),new URL(i,r)}function v(e,t,n=`/`){return y(e,t,n,!1)}function y(e,t,n,r,i){let a=x((typeof t==`string`?h(t):t).pathname||`/`,n);if(a==null)return null;let o=i??ee(e),s=null,c=le(a);for(let e=0;s==null&&e<o.length;++e)s=ae(o[e],c,r);return s}function ee(e){let t=b(e);return ne(t),t}function b(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;l(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let u=j([r,c.relativePath]),d=n.concat(c);e.children&&e.children.length>0&&(l(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${u}".`),b(e.children,t,d,u,o)),(e.path!=null||e.index)&&t.push({path:u,score:re(u,e.index),routesMeta:d.map((e,t)=>{let[n,r]=ce(e.relativePath,e.caseSensitive,t===d.length-1);return{...e,matcher:n,compiledParams:r}})})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of te(e.path))a(e,t,!0,n)}),t}function te(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=te(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function ne(e){e.sort((e,t)=>e.score===t.score?ie(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}function re(e,t){let n=e.split(`/`),r=n.length;return n.some(Zt)&&(r+=Xt),t&&(r+=qt),n.filter(e=>!Zt(e)).reduce((e,t)=>e+(Gt.test(t)?Kt:t===``?Jt:Yt),r)}function ie(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function ae(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u={path:s.relativePath,caseSensitive:s.caseSensitive,end:c},d=s.matcher&&s.compiledParams?se(u,l,s.matcher,s.compiledParams):oe(u,l),f=s.route;if(!d&&c&&n&&!r[r.length-1].route.index&&(d=oe({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!d)return null;Object.assign(i,d.params),o.push({params:i,pathname:j([a,d.pathname]),pathnameBase:$t(j([a,d.pathnameBase])),route:f}),d.pathnameBase!==`/`&&(a=j([a,d.pathnameBase]))}return o}function oe(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=ce(e.path,e.caseSensitive,e.end);return se(e,t,n,r)}function se(e,t,n,r){let i=t.match(n);if(!i)return null;let a=i[0],o=C(a,1),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=C(a.slice(0,a.length-e.length),1)}let i=s[r];return e[t]=n&&!i?void 0:(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function ce(e,t=!1,n=!0){u(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function le(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return u(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function x(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function ue(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?h(e):e,a;return n?(n=Qt(n),a=n.startsWith(`/`)||n.startsWith(`\\`)?de(n.substring(1),`/`):de(n,t)):a=t,{pathname:a,search:en(r),hash:tn(i)}}function de(e,t){let n=C(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function fe(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function pe(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function me(e){let t=pe(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function S(e,t,n,r=!1){let i;typeof e==`string`?i=h(e):(i={...e},l(!i.pathname||!i.pathname.includes(`?`),fe(`?`,`pathname`,`search`,i)),l(!i.pathname||!i.pathname.includes(`#`),fe(`#`,`pathname`,`hash`,i)),l(!i.search||!i.search.includes(`#`),fe(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=ue(i,s),u=o&&o!==`/`&&o.endsWith(`/`),d=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(u||d)&&(c.pathname+=`/`),c}function C(e,t=0){let n=e.length;for(;n>t&&e.charCodeAt(n-1)===47;)n--;return n===e.length?e:e.slice(0,n)}function he(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function ge(e){return j(e.map(e=>e.route.path).filter(Boolean))||`/`}function _e(e,t){let n=e;if(typeof n!=`string`||!Ht.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(rn)try{let e=new URL(window.location.href),r=Ut.test(n)?new URL(o(n,e.protocol)):new URL(n),a=x(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{u(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}function ve(e){if(e.createURL)return e.createURL(`/`);try{return new URL(e.createHref(`/`),an)}catch{return an}}function ye(e,t){return e.origin===t.origin&&(e.origin!==`null`||e.protocol===t.protocol&&e.host===t.host)}function be(e,t){if(e.startsWith(`//`))return!0;let n=t.protocol.toLowerCase();return e.toLowerCase().startsWith(n)?t.host===``||e.slice(n.length).startsWith(`//`):!1}function xe(e,t,n,r){let i=null;try{i=e==null?null:new URL(e,n)}catch{}let a=new URL(t,n),o=i!=null&&!ye(i,n),s=!ye(a,n);if(r===`reject`){if(o||s)throw Error(`External navigation is not allowed`)}else if(s&&(i==null||!be(e,i)||!ye(i,a)))throw Error(`External navigation is not allowed`)}function Se(e){try{return cn.includes(new URL(e).protocol)}catch{return!1}}function Ce(){return E.useContext(dn)}function we(e){if(e.startsWith(`${_n}:${vn}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function Te(e){if(e.startsWith(`${_n}:${yn}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new nn(t.status,t.statusText,t.data)}catch{}}function Ee(e,{relative:t}={}){l(De(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=D.useContext(M),{hash:i,pathname:a,search:o}=T(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:j([n,a])),r.createHref({pathname:s,search:o,hash:i})}function De(){return D.useContext(hn)!=null}function w(){return l(De(),`useLocation() may be used only in the context of a <Router> component.`),D.useContext(hn).location}function Oe(e){D.useContext(M).static||D.useLayoutEffect(e)}function ke(){let{isDataRoute:e}=D.useContext(N);return e?Ke():Ae()}function Ae(){l(De(),`useNavigate() may be used only in the context of a <Router> component.`);let e=D.useContext(ln),{basename:t,navigator:n}=D.useContext(M),{matches:r}=D.useContext(N),{pathname:i}=w(),a=JSON.stringify(me(r)),o=D.useRef(!1);return Oe(()=>{o.current=!0}),D.useCallback((r,s={})=>{if(u(o.current,bn),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=S(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:j([t,c.pathname])),xe(typeof r==`string`?r:m(r),n.createHref(c),ve(n),`reject`),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}function je(e){let t=D.useContext(N).outlet;return D.useMemo(()=>t&&D.createElement(xn.Provider,{value:e},t),[t,e])}function Me(){let{matches:e}=D.useContext(N);return e[e.length-1]?.params??{}}function T(e,{relative:t}={}){let{matches:n}=D.useContext(N),{pathname:r}=w(),i=JSON.stringify(me(n));return D.useMemo(()=>S(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function Ne(e,t){return Pe(e,t)}function Pe(e,t,n){l(De(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=D.useContext(M),{matches:i}=D.useContext(N),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,d=a&&a.route;{let e=d&&d.path||``;qe(s,!d||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
2
2
 
3
- Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let f=w(),p;if(t){let e=typeof t==`string`?h(t):t;l(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),p=e}else p=f;let m=p.pathname||`/`,g=m;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);g=`/`+m.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let _=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):v(e,{pathname:g});u(d||_!=null,`No routes matched location "${p.pathname}${p.search}${p.hash}" `),u(_==null||_[_.length-1].route.element!==void 0||_[_.length-1].route.Component!==void 0||_[_.length-1].route.lazy!==void 0,`Matched leaf route at location "${p.pathname}${p.search}${p.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let y=Re(_&&_.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:j([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:j([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&y?D.createElement(hn.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...p},navigationType:`POP`}},y):y}function Fe(){let e=Ge(),t=he(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=D.createElement(D.Fragment,null,D.createElement(`p`,null,`💿 Hey developer 👋`),D.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,D.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,D.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),D.createElement(D.Fragment,null,D.createElement(`h2`,null,`Unexpected Application Error!`),D.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?D.createElement(`pre`,{style:i},n):null,o)}function Ie({children:e,error:t}){let{basename:n,navigator:r}=D.useContext(M);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=we(t.digest);if(e){let i=wn.get(t);if(i)throw i;let a=_e(e.location,n),o=a.absoluteURL||a.to;if(xe(e.location,o,ve(r),`allow-explicit`),Se(o))throw Error(`Invalid redirect location`);if(rn&&!wn.get(t)){if(a.isExternal||e.reloadDocument)window.location.href=o;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw wn.set(t,n),n}}return D.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${o}`})}}return e}function Le({routeContext:e,match:t,children:n}){let r=D.useContext(ln);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),D.createElement(N.Provider,{value:e},n)}function Re(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);l(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,u=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},pattern:ge(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let l,d=!1,f=null,p=null;r&&(l=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||Sn,o&&(s<0&&c===0?(qe(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=l?f:d?p:n.route.Component?D.createElement(n.route.Component,null):n.route.element?n.route.element:e,D.createElement(Le,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?D.createElement(Cn,{location:r.location,revalidation:r.revalidation,component:f,error:l,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:u}):h()},null)}function ze(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Be(e){let t=D.useContext(ln);return l(t,ze(e)),t}function Ve(e){let t=D.useContext(un);return l(t,ze(e)),t}function He(e){let t=D.useContext(N);return l(t,ze(e)),t}function Ue(e){let t=He(e),n=t.matches[t.matches.length-1];return l(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function We(){return Ue(`useRouteId`)}function Ge(){let e=D.useContext(gn),t=Ve(`useRouteError`),n=Ue(`useRouteError`);return e===void 0?t.errors?.[n]:e}function Ke(){let{router:e}=Be(`useNavigate`),t=Ue(`useNavigate`),n=D.useRef(!1);return Oe(()=>{n.current=!0}),D.useCallback(async(r,i={})=>{u(n.current,bn),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}function qe(e,t,n){!t&&!Tn[e]&&(Tn[e]=!0,u(!1,n))}function Je({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return Pe(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function Ye({to:e,replace:t,state:n,relative:r}){l(De(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i,navigator:a}=O.useContext(M);u(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:o}=O.useContext(N),{pathname:s}=w(),c=ke(),d=S(e,me(o),s,r===`path`);xe(typeof e==`string`?e:m(e),a.createHref(d),ve(a),`reject`);let f=JSON.stringify(d);return O.useEffect(()=>{c(JSON.parse(f),{replace:t,state:n,relative:r})},[c,f,r,t,n]),null}function Xe(e){return je(e.context)}function Ze(e){l(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function Qe({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,useTransitions:o}){l(!De(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=O.useMemo(()=>({basename:s,navigator:i,static:a,useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=h(n));let{pathname:d=`/`,search:f=``,hash:p=``,state:m=null,key:g=`default`,mask:_}=n,v=O.useMemo(()=>{let e=x(d,s);return e==null?null:{location:{pathname:e,search:f,hash:p,state:m,key:g,mask:_},navigationType:r}},[s,d,f,p,m,g,r,_]);return u(v!=null,`<Router basename="${s}"> is not able to match the URL "${d}${f}${p}" because it does not start with the basename, so the <Router> won't render anything.`),v==null?null:O.createElement(M.Provider,{value:c},O.createElement(hn.Provider,{children:t,value:v}))}function $e({children:e,location:t}){return Ne(et(e),t)}function et(e,t=[]){let n=[];return O.Children.forEach(e,(e,r)=>{if(!O.isValidElement(e))return;let i=[...t,r];if(e.type===O.Fragment){n.push.apply(n,et(e.props.children,i));return}l(e.type===Ze,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),l(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=et(e.props.children,i)),n.push(a)}),n}function tt(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function nt(e){return tt(e)&&e.tagName.toLowerCase()===`button`}function rt(e){return tt(e)&&e.tagName.toLowerCase()===`form`}function it(e){return tt(e)&&e.tagName.toLowerCase()===`input`}function at(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function ot(e,t){return e.button===0&&(!t||t===`_self`)&&!at(e)}function st(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function ct(e,t){let n=st(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}function lt(){if(On===null)try{new FormData(document.createElement(`form`),0),On=!1}catch{On=!0}return On}function ut(e){return e!=null&&!kn.has(e)?(u(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Dn}"`),null):e}function dt(e,t){let n,r,i,a,o;if(rt(e)){let o=e.getAttribute(`action`);r=o?x(o,t):null,n=e.getAttribute(`method`)||En,i=ut(e.getAttribute(`enctype`))||Dn,a=new FormData(e)}else if(nt(e)||it(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?x(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||En,i=ut(e.getAttribute(`formenctype`))||ut(o.getAttribute(`enctype`))||Dn,a=new FormData(o,e),!lt()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(tt(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=En,r=null,i=Dn,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}function ft(e,t){if(e===!1||e==null)throw Error(t)}function pt(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return i.pathname=n?i.pathname.endsWith(`/`)?`${i.pathname}_.${r}`:`${i.pathname}.${r}`:i.pathname===`/`?`_root.${r}`:t&&x(i.pathname,t)===`/`?`${C(t)}/_root.${r}`:`${C(i.pathname)}.${r}`,i}async function mt(e,t){if(e.id in t)return t[e.id];try{let n=await import(e.module);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function ht(e){return e!=null&&typeof e.page==`string`}function gt(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function _t(e,t,n){return St((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await mt(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(gt).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function vt(e,t,n,r,i,a){let o=(e,t)=>!n[t]||e.route.id!==n[t].route.id,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function yt(e,t,{includeHydrateFallback:n}={}){return bt(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function bt(e){return[...new Set(e)]}function xt(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function St(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!ht(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(xt(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function Ct(){let e=k.useContext(ln);return ft(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function wt(){let e=k.useContext(un);return ft(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}function Tt(){let e=k.useContext(An);return ft(e,`You must render this element inside a <HydratedRouter> element`),e}function Et(e,t){let n=k.useContext(An),[r,i]=k.useState(!1),[a,o]=k.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=k.useRef(null);k.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),k.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:Dt(s,p),onBlur:Dt(c,m),onMouseEnter:Dt(l,p),onMouseLeave:Dt(u,m),onTouchStart:Dt(d,p)}]:[a,f,{}]:[!1,f,{}]}function Dt(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function Ot({page:e,...t}){let n=Ce(),{nonce:r}=Tt(),{router:i}=Ct(),a=k.useMemo(()=>v(i.routes,e,i.basename),[i.routes,e,i.basename]);return a?(t.nonce==null&&r&&(t={...t,nonce:r}),n?k.createElement(At,{page:e,matches:a,...t}):k.createElement(jt,{page:e,matches:a,...t})):null}function kt(e){let{manifest:t,routeModules:n}=Tt(),[r,i]=k.useState([]);return k.useEffect(()=>{let r=!1;return _t(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function At({page:e,matches:t,...n}){let r=w(),{future:i}=Tt(),{basename:a}=Ct(),o=k.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=pt(e,a,i.v8_trailingSlashAwareDataRequests,`rsc`),o=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?o=!0:s.push(e.route.id);return o&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[a,i.v8_trailingSlashAwareDataRequests,e,r,t]);return k.createElement(k.Fragment,null,o.map(e=>k.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function jt({page:e,matches:t,...n}){let r=w(),{future:i,manifest:a,routeModules:o}=Tt(),{basename:s}=Ct(),{loaderData:c,matches:l}=wt(),u=k.useMemo(()=>vt(e,t,l,a,r,`data`),[e,t,l,a,r]),d=k.useMemo(()=>vt(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=k.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];t&&t.hasLoader&&(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=pt(e,s,i.v8_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.v8_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=k.useMemo(()=>yt(d,a),[d,a]),m=kt(d);return k.createElement(k.Fragment,null,f.map(e=>k.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>k.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>k.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function Mt(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}function Nt({basename:e,children:t,useTransitions:n,window:r}){let i=A.useRef();i.current??=c({window:r,v5Compat:!0});let a=i.current,[o,s]=A.useState({action:a.action,location:a.location}),l=A.useCallback(e=>{n===!1?s(e):A.startTransition(()=>s(e))},[n]);return A.useLayoutEffect(()=>a.listen(l),[a,l]),A.createElement(Qe,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:a,useTransitions:n})}function Pt(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ft(e){let t=A.useContext(ln);return l(t,Pt(e)),t}function It(e,{target:t,replace:n,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c,useTransitions:l}={}){let u=ke(),d=w(),f=T(e,{relative:o});return A.useCallback(p=>{if(ot(p,t)){p.preventDefault();let t=n===void 0?m(d)===m(f):n,h=()=>u(e,{replace:t,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c});l?A.startTransition(()=>h()):h()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}function Lt(e){u(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=A.useRef(st(e)),n=A.useRef(!1),r=w(),i=A.useMemo(()=>ct(r.search,n.current?null:t.current),[r.search]),a=ke();return[i,A.useCallback((e,t)=>{let r=st(typeof e==`function`?e(new URLSearchParams(i)):e);n.current=!0,a(`?`+r,t)},[a,i])]}function Rt(){let{router:e}=Ft(`useSubmit`),{basename:t}=A.useContext(M),n=We(),r=e.fetch,i=e.navigate;return A.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=dt(e,t);if(a.navigate===!1){let e=a.fetcherKey||In();await r(e,n,a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync})}else await i(a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function zt(e,{relative:t}={}){let{basename:n}=A.useContext(M),r=A.useContext(N);l(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...T(e||`.`,{relative:t})},o=w();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:j([n,a.pathname])),m(a)}function Bt(e,{relative:t}={}){let n=A.useContext(fn);l(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Ft(`useViewTransitionState`),i=T(e,{relative:t});if(!n.isTransitioning)return!1;let a=x(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=x(n.nextLocation.pathname,r)||n.nextLocation.pathname;return oe(i.pathname,o)!=null||oe(i.pathname,a)!=null}var E,D,O,Vt,k,A,Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,j,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,M,hn,N,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn,Pn,Fn,In;function Ln(){return(Ln=t((()=>{E=e(r(),1),D=e(r(),1),O=e(r(),1),r(),Vt=e(r(),1),k=e(r(),1),r(),r(),r(),A=e(r(),1),r(),Ht=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,Ut=/^[\\/]{2}/,Wt=`popstate`,Gt=/^:[\w-]+$/,Kt=3,qt=2,Jt=1,Yt=10,Xt=-2,Zt=e=>e===`*`,Qt=e=>e.replace(/[\\/]{2,}/g,`/`),j=e=>Qt(e.join(`/`)),$t=e=>C(e).replace(/^\/*/,`/`),en=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,tn=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,nn=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}},rn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`),an=new URL(`http://localhost`),on=[`POST`,`PUT`,`PATCH`,`DELETE`],new Set(on),sn=[`GET`,...on],new Set(sn),cn=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`],ln=E.createContext(null),ln.displayName=`DataRouter`,un=E.createContext(null),un.displayName=`DataRouterState`,dn=E.createContext(!1),fn=E.createContext({isTransitioning:!1}),fn.displayName=`ViewTransition`,pn=E.createContext(new Map),pn.displayName=`Fetchers`,mn=E.createContext(null),mn.displayName=`Await`,M=E.createContext(null),M.displayName=`Navigation`,hn=E.createContext(null),hn.displayName=`Location`,N=E.createContext({outlet:null,matches:[],isDataRoute:!1}),N.displayName=`Route`,gn=E.createContext(null),gn.displayName=`RouteError`,_n=`REACT_ROUTER_ERROR`,vn=`REDIRECT`,yn=`ROUTE_ERROR_RESPONSE`,bn=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`,xn=D.createContext(null),Sn=D.createElement(Fe,null),Cn=class extends D.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=Te(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:D.createElement(N.Provider,{value:this.props.routeContext},D.createElement(gn.Provider,{value:e,children:this.props.component}));return this.context?D.createElement(Ie,{error:e},t):t}},Cn.contextType=dn,wn=new WeakMap,Tn={},O.memo(Je),O.Component,En=`get`,Dn=`application/x-www-form-urlencoded`,On=null,kn=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]),Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`),An=k.createContext(void 0),An.displayName=`FrameworkContext`,Vt.Component,jn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{jn&&(window.__reactRouterVersion=`7.18.5`)}catch{}Mn=A.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,useTransitions:_}=A.useContext(M),v=typeof l==`string`&&Ht.test(l),y=_e(l,h);l=y.to;let ee=Ee(l,{relative:r}),b=w(),te=null;if(o){let e=S(o,[],b.mask?b.mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:j([h,e.pathname])),te=g.createHref(e)}let[ne,re,ie]=Et(n,p),ae=It(l,{replace:a,mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,defaultShouldRevalidate:f,useTransitions:_});function oe(t){e&&e(t),t.defaultPrevented||ae(t)}let se=!(y.isExternal||i),ce=A.createElement(`a`,{...p,...ie,href:(se?te:void 0)||y.absoluteURL||ee,onClick:se?oe:e,ref:Mt(m,re),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return ne&&!v?A.createElement(A.Fragment,null,ce,A.createElement(Ot,{page:ee})):ce}),Mn.displayName=`Link`,Nn=A.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=T(a,{relative:c.relative}),d=w(),f=A.useContext(un),{navigator:p,basename:m}=A.useContext(M),h=f!=null&&Bt(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=x(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,ee=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,b=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),te={isActive:ee,isPending:b,isTransitioning:h},ne=ee?e:void 0,re;re=typeof n==`function`?n(te):[n,ee?`active`:null,b?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let ie=typeof i==`function`?i(te):i;return A.createElement(Mn,{...c,"aria-current":ne,className:re,ref:l,style:ie,to:a,viewTransition:o},typeof s==`function`?s(te):s)}),Nn.displayName=`NavLink`,Pn=A.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=En,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m)=>{let{useTransitions:h}=A.useContext(M),g=Rt(),_=zt(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&Ht.test(s);return A.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f});h&&n!==!1?A.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})}),Pn.displayName=`Form`,Fn=0,In=()=>`__${String(++Fn)}__`})))()}var Rn,zn;function Bn(){return(Bn=t((()=>{Rn=e(r()),zn=Rn.createContext(null)})))()}var Vn;function Hn(){return(Hn=t((()=>{Vn=2**53-1>>>0})))()}var Un;function Wn(){return(Wn=t((()=>{Hn(),Un=class{value=0;constructor(e=0){this.reset(e)}next(){return this.value=this.value===Vn?1:this.value+1,this.value}reset(e=0){this.value=e>>>0}}})))()}function Gn(){let e=new Uint8Array(2);return qn().getRandomValues(e),(e[0]<<8|e[1])&4095}function Kn(){let e=Date.now();e>Jn?(Jn=e,Yn=Gn()):(Yn++,Yn>4095&&(Jn++,Yn=Gn()));let t=Jn,n=Math.trunc(t/4294967296),r=t>>>0,i=new Uint8Array(8);return qn().getRandomValues(i),P[n>>>8&255]+P[n&255]+P[r>>>24&255]+P[r>>>16&255]+`-`+P[r>>>8&255]+P[r&255]+`-`+P[112|Yn>>>8&15]+P[Yn&255]+`-`+P[128|i[0]&63]+P[i[1]]+`-`+P[i[2]]+P[i[3]]+P[i[4]]+P[i[5]]+P[i[6]]+P[i[7]]}var P,qn,Jn,Yn;function Xn(){return(Xn=t((()=>{P=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),qn=()=>globalThis.crypto,Jn=0,Yn=0})))()}var Zn;function Qn(){return(Qn=t((()=>{Xn(),Zn=class{id;peerId;meta;parentId=``;constructor(e,t,n){this.id=e,this.peerId=t,this.meta=n}static nextId(){return Kn()}}})))()}var $n;function er(){return(er=t((()=>{$n=class{defId;constructor(e){if(this.defId=e,!e||typeof e!=`string`)throw Error(`Service definition ID must be a non-empty string`)}}})))()}function tr(e){return e>=200&&e<300?or.SUCCESS:e===401||e===407||e===403?or.AUTH:e===422?or.VALIDATION:e===429?or.RATE_LIMIT:e>=400&&e<500?or.CLIENT:e>=500&&e<600?or.SERVER:or.CUSTOM}function nr(e){return e>=100&&e<600?e:500}function rr(e){return sr[e]?.retryable===!0}function ir(e){return sr[e]?.name??`ERROR_${e}`}function ar(e){return sr[e]?.message??`Error ${e}`}var F,or,sr;function cr(){return(cr=t((()=>{(function(e){e[e.OK=200]=`OK`,e[e.CREATED=201]=`CREATED`,e[e.ACCEPTED=202]=`ACCEPTED`,e[e.NO_CONTENT=204]=`NO_CONTENT`,e[e.BAD_REQUEST=400]=`BAD_REQUEST`,e[e.UNAUTHORIZED=401]=`UNAUTHORIZED`,e[e.PAYMENT_REQUIRED=402]=`PAYMENT_REQUIRED`,e[e.FORBIDDEN=403]=`FORBIDDEN`,e[e.NOT_FOUND=404]=`NOT_FOUND`,e[e.METHOD_NOT_ALLOWED=405]=`METHOD_NOT_ALLOWED`,e[e.NOT_ACCEPTABLE=406]=`NOT_ACCEPTABLE`,e[e.PROXY_AUTHENTICATION_REQUIRED=407]=`PROXY_AUTHENTICATION_REQUIRED`,e[e.REQUEST_TIMEOUT=408]=`REQUEST_TIMEOUT`,e[e.CONFLICT=409]=`CONFLICT`,e[e.GONE=410]=`GONE`,e[e.LENGTH_REQUIRED=411]=`LENGTH_REQUIRED`,e[e.PRECONDITION_FAILED=412]=`PRECONDITION_FAILED`,e[e.PAYLOAD_TOO_LARGE=413]=`PAYLOAD_TOO_LARGE`,e[e.URI_TOO_LONG=414]=`URI_TOO_LONG`,e[e.UNSUPPORTED_MEDIA_TYPE=415]=`UNSUPPORTED_MEDIA_TYPE`,e[e.RANGE_NOT_SATISFIABLE=416]=`RANGE_NOT_SATISFIABLE`,e[e.EXPECTATION_FAILED=417]=`EXPECTATION_FAILED`,e[e.IM_A_TEAPOT=418]=`IM_A_TEAPOT`,e[e.MISDIRECTED_REQUEST=421]=`MISDIRECTED_REQUEST`,e[e.UNPROCESSABLE_ENTITY=422]=`UNPROCESSABLE_ENTITY`,e[e.LOCKED=423]=`LOCKED`,e[e.FAILED_DEPENDENCY=424]=`FAILED_DEPENDENCY`,e[e.TOO_EARLY=425]=`TOO_EARLY`,e[e.UPGRADE_REQUIRED=426]=`UPGRADE_REQUIRED`,e[e.PRECONDITION_REQUIRED=428]=`PRECONDITION_REQUIRED`,e[e.TOO_MANY_REQUESTS=429]=`TOO_MANY_REQUESTS`,e[e.REQUEST_HEADER_FIELDS_TOO_LARGE=431]=`REQUEST_HEADER_FIELDS_TOO_LARGE`,e[e.UNAVAILABLE_FOR_LEGAL_REASONS=451]=`UNAVAILABLE_FOR_LEGAL_REASONS`,e[e.INTERNAL_SERVER_ERROR=500]=`INTERNAL_SERVER_ERROR`,e[e.NOT_IMPLEMENTED=501]=`NOT_IMPLEMENTED`,e[e.BAD_GATEWAY=502]=`BAD_GATEWAY`,e[e.SERVICE_UNAVAILABLE=503]=`SERVICE_UNAVAILABLE`,e[e.GATEWAY_TIMEOUT=504]=`GATEWAY_TIMEOUT`,e[e.HTTP_VERSION_NOT_SUPPORTED=505]=`HTTP_VERSION_NOT_SUPPORTED`,e[e.VARIANT_ALSO_NEGOTIATES=506]=`VARIANT_ALSO_NEGOTIATES`,e[e.INSUFFICIENT_STORAGE=507]=`INSUFFICIENT_STORAGE`,e[e.LOOP_DETECTED=508]=`LOOP_DETECTED`,e[e.NOT_EXTENDED=510]=`NOT_EXTENDED`,e[e.NETWORK_AUTHENTICATION_REQUIRED=511]=`NETWORK_AUTHENTICATION_REQUIRED`,e[e.VALIDATION_ERROR=422]=`VALIDATION_ERROR`,e[e.INVALID_ARGUMENT=400]=`INVALID_ARGUMENT`,e[e.PERMISSION_DENIED=403]=`PERMISSION_DENIED`,e[e.INTERNAL_ERROR=500]=`INTERNAL_ERROR`,e[e.RATE_LIMITED=429]=`RATE_LIMITED`,e[e.MULTIPLE_ERRORS=600]=`MULTIPLE_ERRORS`,e[e.UNKNOWN_ERROR=601]=`UNKNOWN_ERROR`})(F||={}),(function(e){e.SUCCESS=`success`,e.CLIENT=`client`,e.SERVER=`server`,e.AUTH=`auth`,e.VALIDATION=`validation`,e.RATE_LIMIT=`rate_limit`,e.CUSTOM=`custom`})(or||={}),sr={200:{name:`OK`},201:{name:`CREATED`},204:{name:`NO_CONTENT`},400:{name:`BAD_REQUEST`,message:`The request is invalid`},401:{name:`UNAUTHORIZED`,message:`Authentication is required`},403:{name:`FORBIDDEN`,message:`You do not have permission to access this resource`},404:{name:`NOT_FOUND`,message:`The requested resource was not found`},405:{name:`METHOD_NOT_ALLOWED`,message:`The requested method is not allowed`},408:{name:`REQUEST_TIMEOUT`,message:`The request timed out`,retryable:!0},409:{name:`CONFLICT`,message:`A conflict occurred`},410:{name:`GONE`},413:{name:`PAYLOAD_TOO_LARGE`,message:`The request payload is too large`},414:{name:`URI_TOO_LONG`,message:`The request URI is too long`},415:{name:`UNSUPPORTED_MEDIA_TYPE`,message:`The media type is not supported`},418:{name:`IM_A_TEAPOT`,message:`I'm a teapot`},422:{name:`UNPROCESSABLE_ENTITY`,message:`The request could not be processed`},429:{name:`TOO_MANY_REQUESTS`,message:`Too many requests, please try again later`,retryable:!0},500:{name:`INTERNAL_SERVER_ERROR`,message:`An internal server error occurred`,retryable:!0},501:{name:`NOT_IMPLEMENTED`,message:`The requested functionality is not implemented`},502:{name:`BAD_GATEWAY`,message:`Bad gateway`,retryable:!0},503:{name:`SERVICE_UNAVAILABLE`,message:`The service is temporarily unavailable`,retryable:!0},504:{name:`GATEWAY_TIMEOUT`,message:`Gateway timeout`,retryable:!0},507:{name:`INSUFFICIENT_STORAGE`,retryable:!0},511:{retryable:!0},600:{name:`MULTIPLE_ERRORS`,message:`Multiple errors occurred`},601:{name:`UNKNOWN_ERROR`,message:`An unknown error occurred`}}})))()}var lr,ur,dr,fr,pr;function mr(){return(mr=t((()=>{cr(),lr=new Set(Object.values(F).filter(e=>typeof e==`number`)),ur=-1,dr=class e extends Error{code;category;httpStatus;details;context;timestamp;requestId;correlationId;spanId;traceId;static stats={totalErrors:0,byCode:{},byCategory:{},lastReset:Date.now()};static cache=new Map;static pools=new Map;constructor(t){let n=t.message||ar(t.code);super(n),this.name=`TitanError`,this.code=t.code,this.category=tr(t.code),this.httpStatus=nr(t.code),this.details=t.details||{},this.context=t.context||{},this.timestamp=Date.now(),this.requestId=t.requestId,this.correlationId=t.correlationId,this.spanId=t.spanId,this.traceId=t.traceId,t.cause&&(this.cause=t.cause),Object.setPrototypeOf(this,new.target.prototype);let r=Error;r.captureStackTrace&&r.captureStackTrace(this,new.target),t.cause instanceof Error&&t.cause.stack&&(this.stack=`${this.stack}\nCaused by: ${t.cause.stack}`),e.updateStatistics(this)}static isTitanError(t){return t instanceof e}static getCached(t){return this.cache.has(t)||this.cache.set(t,new e({code:t})),this.cache.get(t)}static createPool(e){let t=new pr(e.size);return e.name&&this.pools.set(e.name,t),t}static updateStatistics(e){this.stats.totalErrors++;let t=lr.has(e.code)?e.code:ur;this.stats.byCode[t]=(this.stats.byCode[t]||0)+1,this.stats.byCategory[e.category]=(this.stats.byCategory[e.category]||0)+1}static getStatistics(){return{...this.stats,byCode:{...this.stats.byCode},byCategory:{...this.stats.byCategory}}}static getMetrics(e){let t=Date.now()-this.stats.lastReset,n=this.stats.totalErrors/(t/1e3),r=Object.entries(this.stats.byCode).sort((e,t)=>t[1]-e[1]).slice(0,10).map(([e,t])=>({code:parseInt(e),name:ir(parseInt(e)),count:t}));return{rate:n,totalErrors:this.stats.totalErrors,topErrors:r,byCategory:{...this.stats.byCategory},window:e.window,elapsed:t}}static resetStatistics(){this.stats={totalErrors:0,byCode:{},byCategory:{},lastReset:Date.now()}}static aggregate(e,t){return new fr(e,t)}static fromJSON(t){return new e({code:t.code,message:t.message,details:t.details,context:t.context,requestId:t.requestId,correlationId:t.correlationId,spanId:t.spanId,traceId:t.traceId})}isRetryable(){return rr(this.code)}getRetryStrategy(){return this.isRetryable()?this.code===F.TOO_MANY_REQUESTS?{shouldRetry:!0,delay:(this.details?.retryAfter||60)*1e3,maxAttempts:3}:{shouldRetry:!0,delay:1e3,maxAttempts:3,backoffFactor:2}:{shouldRetry:!1,delay:0,maxAttempts:0}}toJSON(){return{name:this.name,code:this.code,category:this.category,message:this.message,details:this.details,context:this.context,timestamp:this.timestamp,requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId}}withContext(t){return new e({code:this.code,message:this.message,details:this.details,context:{...this.context,...t},requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId})}withDetails(t){return new e({code:this.code,message:this.message,details:{...this.details,...t},context:this.context,requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId})}},fr=class extends dr{errors;summary;constructor(e,t){let n=e;if(t?.deduplicate){let t=new Set;n=e.filter(e=>{let n=`${e.code}-${e.message}`;return!t.has(n)&&(t.add(n),!0)})}let r=`${n.length} errors occurred`;super({code:F.MULTIPLE_ERRORS,message:r,details:{errors:n.map(e=>e.toJSON()),count:n.length}}),this.name=`AggregateError`,this.errors=n,this.summary=r}},pr=class{pool=[];maxSize;constructor(e){this.maxSize=e;for(let t=0;t<e;t++)this.pool.push(new dr({code:F.INTERNAL_ERROR}))}get size(){return this.pool.length}acquire(e,t){let n=this.pool.pop();if(!n)n=new dr({code:e,message:t});else{let r=n;r.code=e,r.httpStatus=nr(e),r.message=t||ar(e),r.category=tr(e),r.details={},r.context={},r.timestamp=Date.now(),r.requestId=void 0,r.correlationId=void 0,r.spanId=void 0,r.traceId=void 0}return n}release(e){this.pool.length<this.maxSize&&this.pool.push(e)}}})))()}var hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr;function Tr(){return(Tr=t((()=>{Wn(),hr=6,gr=7,_r=15,vr=16,yr=32,br=64,xr=128,Sr=new Un,Cr=class{id;flags=0;data;streamId;streamIndex;constructor(e){this.id=e}setType(e){this.flags=this.flags&-16|e&_r}getType(){return this.flags&_r}setImpulse(e){this.flags=this.flags&-65|e<<hr}getImpulse(){return(this.flags&br)>>hr}setError(e){this.flags=this.flags&-129|e<<gr}getError(){return(this.flags&xr)>>gr}setStreamInfo(e,t,n,r){this.streamId=e,this.streamIndex=t,this.flags=this.flags&-49|(n?vr:0)|(r?yr:0)}isStreamChunk(){return(this.flags&_r)===5}isLastChunk(){return(this.flags&vr)!==0}isLive(){return(this.flags&yr)!==0}static nextId(){return Sr.next()}static resetId(){Sr.reset()}},wr=(e,t,n,r)=>{let i=new Cr(e);return i.setImpulse(t),i.setType(n),i.data=r,i}})))()}var Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr;function Fr(){return(Fr=t((()=>{Er=Object.prototype,{hasOwnProperty:Dr}=Er,{toString:Or}=Er,Function.prototype.toString.call(Object),Object.prototype.toString.call(typeof process<`u`?process:0),{isArray:kr}=Array,Ar=e=>e!=null&&(!!e.constructor&&typeof e.constructor.isBuffer==`function`&&e.constructor.isBuffer(e)||!!e._isBuffer),jr=e=>{if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t===null?!0:t!==Object.prototype&&Object.getPrototypeOf(t)!==null?!1:Er.toString.call(e)===`[object Object]`},Number.isNaN,{isFinite:Mr}=Number,{isInteger:Nr}=Number,{isSafeInteger:Pr}=Number})))()}function Ir(){return(Ir=t((()=>{Fr()})))()}function Lr(){return(Lr=t((()=>{Fr(),Object.getOwnPropertyNames(Object.getPrototypeOf({}))})))()}function Rr(){return(Rr=t((()=>{Lr(),Fr()})))()}function zr(e){Br(e);let t=new Vr,n=0,r=e,i=()=>{if(n<r&&t.size>0){n++;let e=t.dequeue();e&&e()}},a=()=>{n--,i()},o=async(e,t,n)=>{let r=(async()=>e(...n))();t(r);try{await r}catch{}a()},s=(e,a,s)=>{t.enqueue(()=>{o(e,a,s)}),(async()=>{await Promise.resolve(),n<r&&t.size>0&&i()})()},c=(e,...t)=>new Promise(n=>{s(e,n,t)});return Object.defineProperties(c,{activeCount:{get:()=>n},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}},concurrency:{get:()=>r,set:e=>{Br(e),r=e,(typeof queueMicrotask<`u`?queueMicrotask:e=>Promise.resolve().then(e))(()=>{for(;n<r&&t.size>0;)i()})}},map:{async value(e,t){let n=e.map((e,n)=>this(t,e,n));return Promise.all(n)}}}),c}function Br(e){if(!((Number.isInteger(e)||e===1/0)&&e>0))throw TypeError("Expected `concurrency` to be a number from 1 and up")}var Vr;function Hr(){return(Hr=t((()=>{Vr=class{constructor(){this._size=0}enqueue(e){let t={value:e,next:void 0};this.tail?(this.tail.next=t,this.tail=t):this.head=this.tail=t,this._size++}dequeue(){let e=this.head;if(e)return this.head=e.next,this.head||(this.tail=void 0),this._size--,e.value}clear(){this.head=this.tail=void 0,this._size=0}get size(){return this._size}}})))()}function Ur(){return(Ur=t((()=>{Ir(),Lr(),Rr(),Hr(),Fr()})))()}var Wr;function Gr(){return(Gr=t((()=>{Ur(),Wr=class{constructor(e){this._events=new Map,this._eventsCount=0,this.onceListeners=new WeakMap,this.hasOnceListener=new Map,e&&e>=1&&this.setConcurrency(e)}eventNames(){return Array.from(this._events.keys())}listeners(e){let t=this._events.get(e);return t?Array.isArray(t)?t.map(e=>e.fn):[t.fn]:[]}listenerCount(e){let t=this._events.get(e);return t?Array.isArray(t)?t.length:1:0}emit(e,...t){let n=this._events.get(e);if(!n)return!1;if(!Array.isArray(n))n.once&&this.removeListener(e,n.fn),n.fn.apply(n.context,t);else{let r=this.hasOnceListener.get(e)?n.slice():n;for(let n=0;n<r.length;n++){let i=r[n];i&&i.once&&this.removeListener(e,i.fn),i&&i.fn.apply(i.context,t)}}return!0}on(e,t,n){return this.addListener(e,t,n,!1)}addListener(e,t,n,r=!1){if(typeof t!=`function`)throw TypeError(`The listener must be a function`);let i={fn:t,context:n||this,once:r||!1};r&&this.hasOnceListener.set(e,!0);let a=this._events.get(e);return a?Array.isArray(a)?a.push(i):this._events.set(e,[a,i]):(this._events.set(e,i),this._eventsCount++),this}once(e,t,n){if(typeof t!=`function`)throw TypeError(`The listener must be a function`);let r=!1,i=(...a)=>{if(this.removeListener(e,i),!r)return r=!0,t.apply(n||this,a)};return this.on(e,i),this.onceListeners.set(t,i),this}removeListener(e,t){let n=this.onceListeners.get(t);n&&(this.onceListeners.delete(t),t=n);let r=this._events.get(e);if(!r)return this;if(!Array.isArray(r))r.fn===t&&(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e));else{let n=r.filter(e=>e.fn!==t);n.length===0?(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e)):n.length===1&&n[0]?(this._events.set(e,n[0]),n[0].once||this.hasOnceListener.delete(e)):(this._events.set(e,n),n.some(e=>e.once)||this.hasOnceListener.delete(e))}return this}off(e,t){return this.removeListener(e,t)}removeAllListeners(e){return e?this._events.has(e)&&(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e)):(this._events.clear(),this._eventsCount=0,this.hasOnceListener.clear()),this}setConcurrency(e){return e>=1&&(this.limiter=zr(e)),this}emitParallel(e,...t){let n=this.listeners(e).map(e=>this._executeListener(e,t));return Promise.all(n)}emitSerial(e,...t){return this.listeners(e).reduce((e,n)=>e.then(e=>this._executeListener(n,t).then(t=>(e.push(t),e))),Promise.resolve([]))}emitReduce(e,...t){return this._emitReduceRun(e,t)}emitReduceRight(e,...t){return this._emitReduceRun(e,t,!0)}subscribe(e,t,n=!1){return n?this.once(e,t):this.on(e,t),()=>{this.removeListener(e,t)}}_emitReduceRun(e,t,n=!1){return(n?this.listeners(e).reverse():this.listeners(e)).reduce((e,t)=>e.then(e=>{let n=Array.isArray(e)?e:[e];return this._executeListener(t,n)}),Promise.resolve(t))}_executeListener(e,t){try{return this.limiter?this.limiter(()=>e(...t)):Promise.resolve(e(...t))}catch(e){return Promise.reject(e)}}}})))()}function Kr(){return(Kr=t((()=>{Gr()})))()}function qr(){return(qr=t((()=>{Gr(),Kr()})))()}function Jr(){return(Jr=t((()=>{Gr(),qr(),Kr()})))()}function Yr(e,t=!1){return t?{h:Number(e&Zr),l:Number(e>>Qr&Zr)}:{h:Number(e>>Qr&Zr)|0,l:Number(e&Zr)|0}}function Xr(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=Yr(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}var Zr,Qr;function $r(){return($r=t((()=>{Zr=BigInt(2**32-1),Qr=BigInt(32)})))()}function ei(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1}function ti(e,t=``){if(typeof e!=`number`)throw TypeError(fi(t)+`expected number, got `+typeof e);if(!Number.isSafeInteger(e)||e<0)throw RangeError(fi(t)+`expected integer >= 0, got `+e);return e}function ni(e,t=``){if(typeof e!=`boolean`)throw TypeError(fi(t)+`expected boolean, got type=`+typeof e);return e}function ri(e,t,n=``){if(ei(e)&&(t===void 0||e.length===t))return e;t!==void 0&&ti(t,`length`);let r=ei(e),i=t===void 0?``:` of length ${t}`,a=r?`length=${e.length}`:`type=${typeof e}`,o=fi(n)+`expected Uint8Array`+i+`, got `+a;throw r?RangeError(o):TypeError(o)}function ii(e,t=!0){if(e.destroyed)throw Error(`hash was destroyed`);if(t&&e.finished)throw Error(`digest() was already called`)}function ai(e,t){ri(e,void 0,`output`);let n=t.outputLen;if(!(e.length>=n))throw RangeError(`"output" expected length >= `+n)}function oi(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function si(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function ci(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function li(e){for(let t=0;t<e.length;t++)e[t]=ci(e[t]);return e}function ui(e,t,n=`opts`){return mi(e,`defaults`),t!==void 0&&mi(t,n),Object.assign(Object.create(null),e,t)}function di(e,t={}){if(typeof e!=`function`)throw TypeError(`"hashCons" expected function, got type=`+typeof e);t=ui({},t,`info`);let n=(t,n)=>e(n).update(t).digest(),r=e(void 0);return n.outputLen=r.outputLen,n.blockLen=r.blockLen,n.canXOF=r.canXOF,n.create=t=>e(t),Object.assign(n,t),Object.freeze(n)}var fi,pi,mi,hi,gi,_i;function vi(){return(vi=t((()=>{fi=e=>e?`"${e}" `:``,pi=(e,t)=>{if(typeof e!=`object`||!e||Array.isArray(e))throw TypeError((t===`object`?``:`"${t}" `)+`expected object, got type=`+typeof e)},mi=(e,t)=>{pi(e,t);let n=Object.getPrototypeOf(e);if(n!==Object.prototype&&n!==null)throw TypeError(`"${t}" expected plain object`);if(Object.hasOwn(e,`__proto__`))throw TypeError(`"${t}.__proto__" is not allowed`)},hi=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,gi=hi?e=>e:li,_i=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])})})))()}function yi(e,t=24){if(!(e instanceof Uint32Array))throw TypeError(`"s" expected Uint32Array(50), got type=`+typeof e);if(e.length!==50)throw RangeError(`"s" expected Uint32Array(50), got length=`+e.length);if(ti(t,`rounds`),t<1||t>24)throw Error(`"rounds" expected integer 1..24`);for(let n=24-t;n<24;n++){for(let t=0;t<10;t++)Ri[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let n=(t+8)%10,r=(t+2)%10,i=Ri[r],a=Ri[r+1],o=Ii(i,a,1)^Ri[n],s=Li(i,a,1)^Ri[n+1];for(let n=0;n<50;n+=10)e[t+n]^=o,e[t+n+1]^=s}let t=e[2],r=e[3];for(let n=0;n<24;n++){let i=Di[n],a=Ii(t,r,i),o=Li(t,r,i),s=Ei[n];t=e[s],r=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){let n=e[t],r=e[t+1],i=e[t+2],a=e[t+3];e[t]^=~e[t+2]&e[t+4],e[t+1]^=~e[t+3]&e[t+5],e[t+2]^=~e[t+4]&e[t+6],e[t+3]^=~e[t+5]&e[t+7],e[t+4]^=~e[t+6]&e[t+8],e[t+5]^=~e[t+7]&e[t+9],e[t+6]^=~e[t+8]&n,e[t+7]^=~e[t+9]&r,e[t+8]^=~n&i,e[t+9]^=~r&a}e[0]^=Ai[n],e[1]^=ji[n]}si(Ri)}var bi,xi,Si,Ci,wi,Ti,Ei,Di,Oi,ki,Ai,ji,Mi,Ni,Pi,Fi,Ii,Li,Ri,zi,Bi,Vi;function Hi(){return(Hi=t((()=>{$r(),vi(),bi=BigInt(0),xi=BigInt(1),Si=BigInt(2),Ci=BigInt(7),wi=BigInt(256),Ti=BigInt(113),Ei=[],Di=[],Oi=[];for(let e=0,t=xi,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],Ei.push(2*(5*r+n)),Di.push((e+1)*(e+2)/2%64);let i=bi;for(let e=0;e<7;e++)t=(t<<xi^(t>>Ci)*Ti)%wi,t&Si&&(i^=xi<<(xi<<BigInt(e))-xi);Oi.push(i)}ki=Xr(Oi,!0),Ai=ki[0],ji=ki[1],Mi=(e,t,n)=>e<<n|t>>>32-n,Ni=(e,t,n)=>t<<n|e>>>32-n,Pi=(e,t,n)=>t<<n-32|e>>>64-n,Fi=(e,t,n)=>e<<n-32|t>>>64-n,Ii=(e,t,n)=>n>32?Pi(e,t,n):Mi(e,t,n),Li=(e,t,n)=>n>32?Fi(e,t,n):Ni(e,t,n),Ri=new Uint32Array(10),zi=class e{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;canXOF;enableXOF=!1;rounds;constructor(e,t,n,r=!1,i=24){if(ti(e,`blockLen`),ti(t,`suffix`),ti(i,`rounds`),ni(r,`enableXOF`),this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.canXOF=r,this.rounds=i,ti(n,`outputLen`),!(0<e&&e<200))throw Error(`"blockLen" must be 1..199`);this.state=new Uint8Array(200),this.state32=oi(this.state)}clone(){return this._cloneInto()}keccak(){gi(this.state32),yi(this.state32,this.rounds),gi(this.state32),this.posOut=0,this.pos=0}update(e){ii(this),ri(e);let{blockLen:t,state:n,state32:r}=this,i=e.length,a=t%4==0&&e.byteOffset%4==0,o=t/4,s=a&&i>=t?oi(e):void 0;for(let a=0;a<i;){if(s!==void 0&&this.pos===0&&a%4==0&&i-a>=t){for(let e=0,t=a/4;e<o;e++)r[e]^=s[t+e];a+=t,this.pos=t,this.keccak();continue}let c=Math.min(t-this.pos,i-a);for(let t=0;t<c;t++)n[this.pos++]^=e[a++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ii(this,!1),ri(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not enabled`);return this.writeInto(e)}xof(e){return ti(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(ai(e,this),this.finished)throw Error(`digest() was already called`);this.writeInto(e.length===this.outputLen?e:e.subarray(0,this.outputLen)),this.destroy()}digest(){let e=new Uint8Array(this.outputLen);return this.digestInto(e),e}destroy(){this.destroyed=!0,si(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.blockLen=n,t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.canXOF=this.canXOF,t.destroyed=this.destroyed,t}},Bi=(e,t,n,r={})=>di(()=>new zi(t,e,n),r),Vi=Bi(6,72,64,_i(10))})))()}var Ui,Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,I,Qi,$i,ea,ta,na;function ra(){return(ra=t((()=>{Hi(),Ui=`abcdefghijklmnopqrstuvwxyz`,Wi=26,Gi=`0123456789abcdefghijklmnopqrstuvwxyz`,Ki=476782367,qi=16,Ji=32,Yi=new TextEncoder,Xi=null,Zi=Math.floor(Math.random()*Ki),I=e=>Gi[e],Qi=e=>{let t=``;switch(e){case 4:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 8:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 16:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 24:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 32:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);default:for(let n=0;n<e;n++)t+=I(Math.random()*36|0);return t}},$i=e=>{let t=e.length;if(t===0)return 0n;let n=new DataView(e.buffer,e.byteOffset,e.byteLength);if(t===64){let e=n.getBigUint64(0,!1),t=n.getBigUint64(8,!1),r=n.getBigUint64(16,!1),i=n.getBigUint64(24,!1),a=n.getBigUint64(32,!1),o=n.getBigUint64(40,!1),s=n.getBigUint64(48,!1),c=n.getBigUint64(56,!1);return e<<448n|t<<384n|r<<320n|i<<256n|a<<192n|o<<128n|s<<64n|c}let r=0n,i=0,a=t>>3<<3;for(;i<a;)r=r<<64n|n.getBigUint64(i,!1),i+=8;for(;i<t;)r=r<<8n|BigInt(e[i]),i++;return r},ea=e=>{let t=Yi.encode(e),n=Vi(t);return $i(n).toString(36).slice(1)},ta=()=>{if(Xi)return Xi;let e=Object.keys(typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{}),t=e.length?e.join(``)+Qi(Ji):Qi(Ji);return Xi=ea(t).substring(0,Ji),Xi},na=()=>{let e=Ui[Math.random()*Wi|0],t=Date.now().toString(36),n=(++Zi).toString(36),r=`${t}${Qi(qi)}${n}${Xi}`;return e+$i(Vi(Yi.encode(r))).toString(36).substring(1,qi)},ta()})))()}function L(e,t,n){this.low=e|0,this.high=t|0,this.unsigned=!!n}function R(e){return(e&&e.__isLong__)===!0}function ia(e){var t=Math.clz32(e&-e);return e?31-t:t}function aa(e,t){var n,r,i;return t?(e>>>=0,(i=0<=e&&e<256)&&(r=ca[e],r)?r:(n=B(e,0,!0),i&&(ca[e]=n),n)):(e|=0,(i=-128<=e&&e<128)&&(r=sa[e],r)?r:(n=B(e,e<0?-1:0,!1),i&&(sa[e]=n),n))}function z(e,t){if(isNaN(e))return t?ga:U;if(t){if(e<0)return ga;if(e>=pa)return xa}else{if(e<=-ma)return W;if(e+1>=ma)return ba}return e<0?z(-e,t).neg():B(e%fa|0,e/fa|0,t)}function B(e,t,n){return new L(e,t,n)}function oa(e,t,n){if(e.length===0)throw Error(`empty string`);if(typeof t==`number`?(n=t,t=!1):t=!!t,e===`NaN`||e===`Infinity`||e===`+Infinity`||e===`-Infinity`)return t?ga:U;if(n||=10,n<2||36<n)throw RangeError(`radix`);var r;if((r=e.indexOf(`-`))>0)throw Error(`interior hyphen`);if(r===0)return oa(e.substring(1),t,n).neg();for(var i=z(la(n,8)),a=U,o=0;o<e.length;o+=8){var s=Math.min(8,e.length-o),c=parseInt(e.substring(o,o+s),n);if(s<8){var l=z(la(n,s));a=a.mul(l).add(z(c))}else a=a.mul(i),a=a.add(z(c))}return a.unsigned=t,a}function V(e,t){return typeof e==`number`?z(e,t):typeof e==`string`?oa(e,t):B(e.low,e.high,typeof t==`boolean`?t:e.unsigned)}var H,sa,ca,la,ua,da,fa,pa,ma,ha,U,ga,_a,va,ya,ba,xa,W,G;function Sa(){return(Sa=t((()=>{H=null;try{H=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}L.prototype.__isLong__,Object.defineProperty(L.prototype,"__isLong__",{value:!0}),L.isLong=R,sa={},ca={},L.fromInt=aa,L.fromNumber=z,L.fromBits=B,la=Math.pow,L.fromString=oa,L.fromValue=V,ua=65536,da=1<<24,fa=ua*ua,pa=fa*fa,ma=pa/2,ha=aa(da),U=aa(0),L.ZERO=U,ga=aa(0,!0),L.UZERO=ga,_a=aa(1),L.ONE=_a,va=aa(1,!0),L.UONE=va,ya=aa(-1),L.NEG_ONE=ya,ba=B(-1,2147483647,!1),L.MAX_VALUE=ba,xa=B(-1,-1,!0),L.MAX_UNSIGNED_VALUE=xa,W=B(0,-2147483648,!1),L.MIN_VALUE=W,G=L.prototype,G.toInt=function(){return this.unsigned?this.low>>>0:this.low},G.toNumber=function(){return this.unsigned?(this.high>>>0)*fa+(this.low>>>0):this.high*fa+(this.low>>>0)},G.toString=function(e){if(e||=10,e<2||36<e)throw RangeError(`radix`);if(this.isZero())return`0`;if(this.isNegative()){if(this.eq(W)){var t=z(e),n=this.div(t),r=n.mul(t).sub(this);return n.toString(e)+r.toInt().toString(e)}return`-`+this.neg().toString(e)}for(var i=z(la(e,6),this.unsigned),a=this,o=``;;){var s=a.div(i),c=(a.sub(s.mul(i)).toInt()>>>0).toString(e);if(a=s,a.isZero())return c+o;for(;c.length<6;)c=`0`+c;o=``+c+o}},G.getHighBits=function(){return this.high},G.getHighBitsUnsigned=function(){return this.high>>>0},G.getLowBits=function(){return this.low},G.getLowBitsUnsigned=function(){return this.low>>>0},G.getNumBitsAbs=function(){if(this.isNegative())return this.eq(W)?64:this.neg().getNumBitsAbs();for(var e=this.high==0?this.low:this.high,t=31;t>0&&!(e&1<<t);t--);return this.high==0?t+1:t+33},G.isSafeInteger=function(){var e=this.high>>21;return!e||!this.unsigned&&e===-1&&(this.low!==0||this.high!==-2097152)},G.isZero=function(){return this.high===0&&this.low===0},G.eqz=G.isZero,G.isNegative=function(){return!this.unsigned&&this.high<0},G.isPositive=function(){return this.unsigned||this.high>=0},G.isOdd=function(){return(this.low&1)==1},G.isEven=function(){return!(this.low&1)},G.equals=function(e){return R(e)||(e=V(e)),this.unsigned!==e.unsigned&&this.high>>>31==1&&e.high>>>31==1?!1:this.high===e.high&&this.low===e.low},G.eq=G.equals,G.notEquals=function(e){return!this.eq(e)},G.neq=G.notEquals,G.ne=G.notEquals,G.lessThan=function(e){return this.comp(e)<0},G.lt=G.lessThan,G.lessThanOrEqual=function(e){return this.comp(e)<=0},G.lte=G.lessThanOrEqual,G.le=G.lessThanOrEqual,G.greaterThan=function(e){return this.comp(e)>0},G.gt=G.greaterThan,G.greaterThanOrEqual=function(e){return this.comp(e)>=0},G.gte=G.greaterThanOrEqual,G.ge=G.greaterThanOrEqual,G.compare=function(e){if(R(e)||(e=V(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},G.comp=G.compare,G.negate=function(){return!this.unsigned&&this.eq(W)?W:this.not().add(_a)},G.neg=G.negate,G.add=function(e){R(e)||(e=V(e));var t=this.high>>>16,n=this.high&65535,r=this.low>>>16,i=this.low&65535,a=e.high>>>16,o=e.high&65535,s=e.low>>>16,c=e.low&65535,l=0,u=0,d=0,f=0;return f+=i+c,d+=f>>>16,f&=65535,d+=r+s,u+=d>>>16,d&=65535,u+=n+o,l+=u>>>16,u&=65535,l+=t+a,l&=65535,B(d<<16|f,l<<16|u,this.unsigned)},G.subtract=function(e){return R(e)||(e=V(e)),this.add(e.neg())},G.sub=G.subtract,G.multiply=function(e){if(this.isZero())return this;if(R(e)||(e=V(e)),H)return B(H.mul(this.low,this.high,e.low,e.high),H.get_high(),this.unsigned);if(e.isZero())return this.unsigned?ga:U;if(this.eq(W))return e.isOdd()?W:U;if(e.eq(W))return this.isOdd()?W:U;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(ha)&&e.lt(ha))return z(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=this.high&65535,r=this.low>>>16,i=this.low&65535,a=e.high>>>16,o=e.high&65535,s=e.low>>>16,c=e.low&65535,l=0,u=0,d=0,f=0;return f+=i*c,d+=f>>>16,f&=65535,d+=r*c,u+=d>>>16,d&=65535,d+=i*s,u+=d>>>16,d&=65535,u+=n*c,l+=u>>>16,u&=65535,u+=r*s,l+=u>>>16,u&=65535,u+=i*o,l+=u>>>16,u&=65535,l+=t*c+n*s+r*o+i*a,l&=65535,B(d<<16|f,l<<16|u,this.unsigned)},G.mul=G.multiply,G.divide=function(e){if(R(e)||(e=V(e)),e.isZero())throw Error(`division by zero`);if(H)return!this.unsigned&&this.high===-2147483648&&e.low===-1&&e.high===-1?this:B((this.unsigned?H.div_u:H.div_s)(this.low,this.high,e.low,e.high),H.get_high(),this.unsigned);if(this.isZero())return this.unsigned?ga:U;var t,n,r;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return ga;if(e.gt(this.shru(1)))return va;r=ga}else{if(this.eq(W))return e.eq(_a)||e.eq(ya)?W:e.eq(W)?_a:(t=this.shr(1).div(e).shl(1),t.eq(U)?e.isNegative()?_a:ya:(n=this.sub(e.mul(t)),r=t.add(n.div(e)),r));if(e.eq(W))return this.unsigned?ga:U;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();r=U}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),a=i<=48?1:la(2,i-48),o=z(t),s=o.mul(e);s.isNegative()||s.gt(n);)t-=a,o=z(t,this.unsigned),s=o.mul(e);o.isZero()&&(o=_a),r=r.add(o),n=n.sub(s)}return r},G.div=G.divide,G.modulo=function(e){return R(e)||(e=V(e)),H?B((this.unsigned?H.rem_u:H.rem_s)(this.low,this.high,e.low,e.high),H.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},G.mod=G.modulo,G.rem=G.modulo,G.not=function(){return B(~this.low,~this.high,this.unsigned)},G.countLeadingZeros=function(){return this.high?Math.clz32(this.high):Math.clz32(this.low)+32},G.clz=G.countLeadingZeros,G.countTrailingZeros=function(){return this.low?ia(this.low):ia(this.high)+32},G.ctz=G.countTrailingZeros,G.and=function(e){return R(e)||(e=V(e)),B(this.low&e.low,this.high&e.high,this.unsigned)},G.or=function(e){return R(e)||(e=V(e)),B(this.low|e.low,this.high|e.high,this.unsigned)},G.xor=function(e){return R(e)||(e=V(e)),B(this.low^e.low,this.high^e.high,this.unsigned)},G.shiftLeft=function(e){return R(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?B(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):B(0,this.low<<e-32,this.unsigned)},G.shl=G.shiftLeft,G.shiftRight=function(e){return R(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?B(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):B(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},G.shr=G.shiftRight,G.shiftRightUnsigned=function(e){return R(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?B(this.low>>>e|this.high<<32-e,this.high>>>e,this.unsigned):B(e===32?this.high:this.high>>>e-32,0,this.unsigned)},G.shru=G.shiftRightUnsigned,G.shr_u=G.shiftRightUnsigned,G.rotateLeft=function(e){var t;return R(e)&&(e=e.toInt()),(e&=63)==0?this:e===32?B(this.high,this.low,this.unsigned):e<32?(t=32-e,B(this.low<<e|this.high>>>t,this.high<<e|this.low>>>t,this.unsigned)):(e-=32,t=32-e,B(this.high<<e|this.low>>>t,this.low<<e|this.high>>>t,this.unsigned))},G.rotl=G.rotateLeft,G.rotateRight=function(e){var t;return R(e)&&(e=e.toInt()),(e&=63)==0?this:e===32?B(this.high,this.low,this.unsigned):e<32?(t=32-e,B(this.high<<t|this.low>>>e,this.low<<t|this.high>>>e,this.unsigned)):(e-=32,t=32-e,B(this.low<<t|this.high>>>e,this.high<<t|this.low>>>e,this.unsigned))},G.rotr=G.rotateRight,G.toSigned=function(){return this.unsigned?B(this.low,this.high,!1):this},G.toUnsigned=function(){return this.unsigned?this:B(this.low,this.high,!0)},G.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},G.toBytesLE=function(){var e=this.high,t=this.low;return[t&255,t>>>8&255,t>>>16&255,t>>>24,e&255,e>>>8&255,e>>>16&255,e>>>24]},G.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,e&255,t>>>24,t>>>16&255,t>>>8&255,t&255]},L.fromBytes=function(e,t,n){return n?L.fromBytesLE(e,t):L.fromBytesBE(e,t)},L.fromBytesLE=function(e,t){return new L(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},L.fromBytesBE=function(e,t){return new L(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)},typeof BigInt==`function`&&(L.fromBigInt=function(e,t){return B(Number(BigInt.asIntN(32,e)),Number(BigInt.asIntN(32,e>>BigInt(32))),t)},L.fromValue=function(e,t){return typeof e==`bigint`?L.fromBigInt(e,t):V(e,t)},G.toBigInt=function(){var e=BigInt(this.low>>>0);return BigInt(this.unsigned?this.high>>>0:this.high)<<BigInt(32)|e})})))()}var Ca=n((e=>{e.byteLength=c,e.toByteArray=u,e.fromByteArray=p;for(var t=[],n=[],r=typeof Uint8Array<`u`?Uint8Array:Array,i=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,a=0,o=i.length;a<o;++a)t[a]=i[a],n[i.charCodeAt(a)]=a;n[45]=62,n[95]=63;function s(e){var t=e.length;if(t%4>0)throw Error(`Invalid string. Length must be a multiple of 4`);var n=e.indexOf(`=`);n===-1&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function c(e){var t=s(e),n=t[0],r=t[1];return(n+r)*3/4-r}function l(e,t,n){return(t+n)*3/4-n}function u(e){for(var t,i=s(e),a=i[0],o=i[1],c=new r(l(e,a,o)),u=0,d=o>0?a-4:a,f=0;f<d;f+=4)t=n[e.charCodeAt(f)]<<18|n[e.charCodeAt(f+1)]<<12|n[e.charCodeAt(f+2)]<<6|n[e.charCodeAt(f+3)],c[u++]=t>>16&255,c[u++]=t>>8&255,c[u++]=t&255;return o===2&&(t=n[e.charCodeAt(f)]<<2|n[e.charCodeAt(f+1)]>>4,c[u++]=t&255),o===1&&(t=n[e.charCodeAt(f)]<<10|n[e.charCodeAt(f+1)]<<4|n[e.charCodeAt(f+2)]>>2,c[u++]=t>>8&255,c[u++]=t&255),c}function d(e){return t[e>>18&63]+t[e>>12&63]+t[e>>6&63]+t[e&63]}function f(e,t,n){for(var r,i=[],a=t;a<n;a+=3)r=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(e[a+2]&255),i.push(d(r));return i.join(``)}function p(e){for(var n,r=e.length,i=r%3,a=[],o=16383,s=0,c=r-i;s<c;s+=o)a.push(f(e,s,s+o>c?c:s+o));return i===1?(n=e[r-1],a.push(t[n>>2]+t[n<<4&63]+`==`)):i===2&&(n=(e[r-2]<<8)+e[r-1],a.push(t[n>>10]+t[n>>4&63]+t[n<<2&63]+`=`)),a.join(``)}})),wa=n((e=>{e.read=function(e,t,n,r,i){var a,o,s=i*8-r-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=a*256+e[t+d],d+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=o*256+e[t+d],d+=f,u-=8);if(a===0)a=1-l;else if(a===c)return o?NaN:(p?-1:1)*(1/0);else o+=2**r,a-=l;return(p?-1:1)*o*2**(a-r)},e.write=function(e,t,n,r,i,a){var o,s,c,l=a*8-i-1,u=(1<<l)-1,d=u>>1,f=i===23?2**-24-2**-77:0,p=r?0:a-1,m=r?1:-1,h=+(t<0||t===0&&1/t<0);for(t=Math.abs(t),isNaN(t)||t===1/0?(s=+!!isNaN(t),o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=2**-o)<1&&(o--,c*=2),o+d>=1?t+=f/c:t+=f*2**(1-d),t*c>=2&&(o++,c/=2),o+d>=u?(s=0,o=u):o+d>=1?(s=(t*c-1)*2**i,o+=d):(s=t*2**(d-1)*2**i,o=0));i>=8;e[n+p]=s&255,p+=m,s/=256,i-=8);for(o=o<<i|s,l+=i;l>0;e[n+p]=o&255,p+=m,o/=256,l-=8);e[n+p-m]|=h*128}})),Ta=n((e=>{var t=Ca(),n=wa(),r=typeof Symbol==`function`&&typeof Symbol.for==`function`?Symbol.for(`nodejs.util.inspect.custom`):null;e.Buffer=s,e.SlowBuffer=v,e.INSPECT_MAX_BYTES=50;var i=2147483647;e.kMaxLength=i,s.TYPED_ARRAY_SUPPORT=a(),!s.TYPED_ARRAY_SUPPORT&&typeof console<`u`&&typeof console.error==`function`&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function a(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(s.prototype,"parent",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.buffer}}),Object.defineProperty(s.prototype,"offset",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.byteOffset}});function o(e){if(e>i)throw RangeError(`The value "`+e+`" is invalid for option "size"`);let t=new Uint8Array(e);return Object.setPrototypeOf(t,s.prototype),t}function s(e,t,n){if(typeof e==`number`){if(typeof t==`string`)throw TypeError(`The "string" argument must be of type string. Received type number`);return d(e)}return c(e,t,n)}s.poolSize=8192;function c(e,t,n){if(typeof e==`string`)return f(e,t);if(ArrayBuffer.isView(e))return m(e);if(e==null)throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e);if(T(e,ArrayBuffer)||e&&T(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<`u`&&(T(e,SharedArrayBuffer)||e&&T(e.buffer,SharedArrayBuffer)))return h(e,t,n);if(typeof e==`number`)throw TypeError(`The "value" argument must not be of type number. Received type number`);let r=e.valueOf&&e.valueOf();if(r!=null&&r!==e)return s.from(r,t,n);let i=g(e);if(i)return i;if(typeof Symbol<`u`&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]==`function`)return s.from(e[Symbol.toPrimitive](`string`),t,n);throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e)}s.from=function(e,t,n){return c(e,t,n)},Object.setPrototypeOf(s.prototype,Uint8Array.prototype),Object.setPrototypeOf(s,Uint8Array);function l(e){if(typeof e!=`number`)throw TypeError(`"size" argument must be of type number`);if(e<0)throw RangeError(`The value "`+e+`" is invalid for option "size"`)}function u(e,t,n){return l(e),e<=0||t===void 0?o(e):typeof n==`string`?o(e).fill(t,n):o(e).fill(t)}s.alloc=function(e,t,n){return u(e,t,n)};function d(e){return l(e),o(e<0?0:_(e)|0)}s.allocUnsafe=function(e){return d(e)},s.allocUnsafeSlow=function(e){return d(e)};function f(e,t){if((typeof t!=`string`||t===``)&&(t=`utf8`),!s.isEncoding(t))throw TypeError(`Unknown encoding: `+t);let n=y(e,t)|0,r=o(n),i=r.write(e,t);return i!==n&&(r=r.slice(0,i)),r}function p(e){let t=e.length<0?0:_(e.length)|0,n=o(t);for(let r=0;r<t;r+=1)n[r]=e[r]&255;return n}function m(e){if(T(e,Uint8Array)){let t=new Uint8Array(e);return h(t.buffer,t.byteOffset,t.byteLength)}return p(e)}function h(e,t,n){if(t<0||e.byteLength<t)throw RangeError(`"offset" is outside of buffer bounds`);if(e.byteLength<t+(n||0))throw RangeError(`"length" is outside of buffer bounds`);let r;return r=t===void 0&&n===void 0?new Uint8Array(e):n===void 0?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,s.prototype),r}function g(e){if(s.isBuffer(e)){let t=_(e.length)|0,n=o(t);return n.length===0||e.copy(n,0,0,t),n}if(e.length!==void 0)return typeof e.length!=`number`||Ne(e.length)?o(0):p(e);if(e.type===`Buffer`&&Array.isArray(e.data))return p(e.data)}function _(e){if(e>=i)throw RangeError(`Attempt to allocate Buffer larger than maximum size: 0x`+i.toString(16)+` bytes`);return e|0}function v(e){return+e!=e&&(e=0),s.alloc(+e)}s.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==s.prototype},s.compare=function(e,t){if(T(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),T(t,Uint8Array)&&(t=s.from(t,t.offset,t.byteLength)),!s.isBuffer(e)||!s.isBuffer(t))throw TypeError(`The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array`);if(e===t)return 0;let n=e.length,r=t.length;for(let i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:+(r<n)},s.isEncoding=function(e){switch(String(e).toLowerCase()){case`hex`:case`utf8`:case`utf-8`:case`ascii`:case`latin1`:case`binary`:case`base64`:case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return!0;default:return!1}},s.concat=function(e,t){if(!Array.isArray(e))throw TypeError(`"list" argument must be an Array of Buffers`);if(e.length===0)return s.alloc(0);let n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;let r=s.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){let t=e[n];if(T(t,Uint8Array))i+t.length>r.length?(s.isBuffer(t)||(t=s.from(t)),t.copy(r,i)):Uint8Array.prototype.set.call(r,t,i);else if(s.isBuffer(t))t.copy(r,i);else throw TypeError(`"list" argument must be an Array of Buffers`);i+=t.length}return r};function y(e,t){if(s.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||T(e,ArrayBuffer))return e.byteLength;if(typeof e!=`string`)throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type `+typeof e);let n=e.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&n===0)return 0;let i=!1;for(;;)switch(t){case`ascii`:case`latin1`:case`binary`:return n;case`utf8`:case`utf-8`:return Oe(e).length;case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return n*2;case`hex`:return n>>>1;case`base64`:return je(e).length;default:if(i)return r?-1:Oe(e).length;t=(``+t).toLowerCase(),i=!0}}s.byteLength=y;function ee(e,t,n){let r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0,t>>>=0,n<=t))return``;for(e||=`utf8`;;)switch(e){case`hex`:return pe(this,t,n);case`utf8`:case`utf-8`:return le(this,t,n);case`ascii`:return de(this,t,n);case`latin1`:case`binary`:return fe(this,t,n);case`base64`:return ce(this,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return me(this,t,n);default:if(r)throw TypeError(`Unknown encoding: `+e);e=(e+``).toLowerCase(),r=!0}}s.prototype._isBuffer=!0;function b(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}s.prototype.swap16=function(){let e=this.length;if(e%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(let t=0;t<e;t+=2)b(this,t,t+1);return this},s.prototype.swap32=function(){let e=this.length;if(e%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(let t=0;t<e;t+=4)b(this,t,t+3),b(this,t+1,t+2);return this},s.prototype.swap64=function(){let e=this.length;if(e%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(let t=0;t<e;t+=8)b(this,t,t+7),b(this,t+1,t+6),b(this,t+2,t+5),b(this,t+3,t+4);return this},s.prototype.toString=function(){let e=this.length;return e===0?``:arguments.length===0?le(this,0,e):ee.apply(this,arguments)},s.prototype.toLocaleString=s.prototype.toString,s.prototype.equals=function(e){if(!s.isBuffer(e))throw TypeError(`Argument must be a Buffer`);return this===e||s.compare(this,e)===0},s.prototype.inspect=function(){let t=``,n=e.INSPECT_MAX_BYTES;return t=this.toString(`hex`,0,n).replace(/(.{2})/g,`$1 `).trim(),this.length>n&&(t+=` ... `),`<Buffer `+t+`>`},r&&(s.prototype[r]=s.prototype.inspect),s.prototype.compare=function(e,t,n,r,i){if(T(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),!s.isBuffer(e))throw TypeError(`The "target" argument must be one of type Buffer or Uint8Array. Received type `+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw RangeError(`out of range index`);if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;let a=i-r,o=n-t,c=Math.min(a,o),l=this.slice(r,i),u=e.slice(t,n);for(let e=0;e<c;++e)if(l[e]!==u[e]){a=l[e],o=u[e];break}return a<o?-1:+(o<a)};function te(e,t,n,r,i){if(e.length===0)return-1;if(typeof n==`string`?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,Ne(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(i)n=0;else return-1}if(typeof t==`string`&&(t=s.from(t,r)),s.isBuffer(t))return t.length===0?-1:ne(e,t,n,r,i);if(typeof t==`number`)return t&=255,typeof Uint8Array.prototype.indexOf==`function`?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):ne(e,[t],n,r,i);throw TypeError(`val must be string, number or Buffer`)}function ne(e,t,n,r,i){let a=1,o=e.length,s=t.length;if(r!==void 0&&(r=String(r).toLowerCase(),r===`ucs2`||r===`ucs-2`||r===`utf16le`||r===`utf-16le`)){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,n/=2}function c(e,t){return a===1?e[t]:e.readUInt16BE(t*a)}let l;if(i){let r=-1;for(l=n;l<o;l++)if(c(e,l)===c(t,r===-1?0:l-r)){if(r===-1&&(r=l),l-r+1===s)return r*a}else r!==-1&&(l-=l-r),r=-1}else for(n+s>o&&(n=o-s),l=n;l>=0;l--){let n=!0;for(let r=0;r<s;r++)if(c(e,l+r)!==c(t,r)){n=!1;break}if(n)return l}return-1}s.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1},s.prototype.indexOf=function(e,t,n){return te(this,e,t,n,!0)},s.prototype.lastIndexOf=function(e,t,n){return te(this,e,t,n,!1)};function re(e,t,n,r){n=Number(n)||0;let i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;let a=t.length;r>a/2&&(r=a/2);let o=0;for(;o<r;++o){let r=parseInt(t.substr(o*2,2),16);if(Ne(r))return o;e[n+o]=r}return o}function ie(e,t,n,r){return Me(Oe(t,e.length-n),e,n,r)}function ae(e,t,n,r){return Me(ke(t),e,n,r)}function oe(e,t,n,r){return Me(je(t),e,n,r)}function se(e,t,n,r){return Me(Ae(t,e.length-n),e,n,r)}s.prototype.write=function(e,t,n,r){if(t===void 0)r=`utf8`,n=this.length,t=0;else if(n===void 0&&typeof t==`string`)r=t,n=this.length,t=0;else if(isFinite(t))t>>>=0,isFinite(n)?(n>>>=0,r===void 0&&(r=`utf8`)):(r=n,n=void 0);else throw Error(`Buffer.write(string, encoding, offset[, length]) is no longer supported`);let i=this.length-t;if((n===void 0||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw RangeError(`Attempt to write outside buffer bounds`);r||=`utf8`;let a=!1;for(;;)switch(r){case`hex`:return re(this,e,t,n);case`utf8`:case`utf-8`:return ie(this,e,t,n);case`ascii`:case`latin1`:case`binary`:return ae(this,e,t,n);case`base64`:return oe(this,e,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return se(this,e,t,n);default:if(a)throw TypeError(`Unknown encoding: `+r);r=(``+r).toLowerCase(),a=!0}},s.prototype.toJSON=function(){return{type:`Buffer`,data:Array.prototype.slice.call(this._arr||this,0)}};function ce(e,n,r){return n===0&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(n,r))}function le(e,t,n){n=Math.min(e.length,n);let r=[],i=t;for(;i<n;){let t=e[i],a=null,o=t>239?4:t>223?3:t>191?2:1;if(i+o<=n){let n,r,s,c;switch(o){case 1:t<128&&(a=t);break;case 2:n=e[i+1],(n&192)==128&&(c=(t&31)<<6|n&63,c>127&&(a=c));break;case 3:n=e[i+1],r=e[i+2],(n&192)==128&&(r&192)==128&&(c=(t&15)<<12|(n&63)<<6|r&63,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:n=e[i+1],r=e[i+2],s=e[i+3],(n&192)==128&&(r&192)==128&&(s&192)==128&&(c=(t&15)<<18|(n&63)<<12|(r&63)<<6|s&63,c>65535&&c<1114112&&(a=c))}}a===null?(a=65533,o=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a),i+=o}return ue(r)}var x=4096;function ue(e){let t=e.length;if(t<=x)return String.fromCharCode.apply(String,e);let n=``,r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=x));return n}function de(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]&127);return r}function fe(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function pe(e,t,n){let r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);let i=``;for(let r=t;r<n;++r)i+=Pe[e[r]];return i}function me(e,t,n){let r=e.slice(t,n),i=``;for(let e=0;e<r.length-1;e+=2)i+=String.fromCharCode(r[e]+r[e+1]*256);return i}s.prototype.slice=function(e,t){let n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);let r=this.subarray(e,t);return Object.setPrototypeOf(r,s.prototype),r};function S(e,t,n){if(e%1!=0||e<0)throw RangeError(`offset is not uint`);if(e+t>n)throw RangeError(`Trying to access beyond buffer length`)}s.prototype.readUintLE=s.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return r},s.prototype.readUintBE=s.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=this[e+--t],i=1;for(;t>0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUint8=s.prototype.readUInt8=function(e,t){return e>>>=0,t||S(e,1,this.length),this[e]},s.prototype.readUint16LE=s.prototype.readUInt16LE=function(e,t){return e>>>=0,t||S(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUint16BE=s.prototype.readUInt16BE=function(e,t){return e>>>=0,t||S(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUint32LE=s.prototype.readUInt32LE=function(e,t){return e>>>=0,t||S(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},s.prototype.readUint32BE=s.prototype.readUInt32BE=function(e,t){return e>>>=0,t||S(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readBigUInt64LE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=t+this[++e]*256+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*256+this[++e]*2**16+n*2**24;return BigInt(r)+(BigInt(i)<<BigInt(32))}),s.prototype.readBigUInt64BE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=t*2**24+this[++e]*2**16+this[++e]*256+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*256+n;return(BigInt(r)<<BigInt(32))+BigInt(i)}),s.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return i*=128,r>=i&&(r-=2**(8*t)),r},s.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=t,i=1,a=this[e+--r];for(;r>0&&(i*=256);)a+=this[e+--r]*i;return i*=128,a>=i&&(a-=2**(8*t)),a},s.prototype.readInt8=function(e,t){return e>>>=0,t||S(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},s.prototype.readInt16LE=function(e,t){e>>>=0,t||S(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n},s.prototype.readInt16BE=function(e,t){e>>>=0,t||S(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n},s.prototype.readInt32LE=function(e,t){return e>>>=0,t||S(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return e>>>=0,t||S(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readBigInt64LE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=this[e+4]+this[e+5]*256+this[e+6]*2**16+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(t+this[++e]*256+this[++e]*2**16+this[++e]*2**24)}),s.prototype.readBigInt64BE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=(t<<24)+this[++e]*2**16+this[++e]*256+this[++e];return(BigInt(r)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*256+n)}),s.prototype.readFloatLE=function(e,t){return e>>>=0,t||S(e,4,this.length),n.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return e>>>=0,t||S(e,4,this.length),n.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return e>>>=0,t||S(e,8,this.length),n.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return e>>>=0,t||S(e,8,this.length),n.read(this,e,!1,52,8)};function C(e,t,n,r,i,a){if(!s.isBuffer(e))throw TypeError(`"buffer" argument must be a Buffer instance`);if(t>i||t<a)throw RangeError(`"value" argument is out of bounds`);if(n+r>e.length)throw RangeError(`Index out of range`)}s.prototype.writeUintLE=s.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;C(this,e,t,n,r,0)}let i=1,a=0;for(this[t]=e&255;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},s.prototype.writeUintBE=s.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;C(this,e,t,n,r,0)}let i=n-1,a=1;for(this[t+i]=e&255;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},s.prototype.writeUint8=s.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,1,255,0),this[t]=e&255,t+1},s.prototype.writeUint16LE=s.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeUint16BE=s.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeUint32LE=s.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4},s.prototype.writeUint32BE=s.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function he(e,t,n,r,i){we(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,n}function ge(e,t,n,r,i){we(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n+7]=a,a>>=8,e[n+6]=a,a>>=8,e[n+5]=a,a>>=8,e[n+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n+3]=o,o>>=8,e[n+2]=o,o>>=8,e[n+1]=o,o>>=8,e[n]=o,n+8}s.prototype.writeBigUInt64LE=Fe(function(e,t=0){return he(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeBigUInt64BE=Fe(function(e,t=0){return ge(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);C(this,e,t,n,r-1,-r)}let i=0,a=1,o=0;for(this[t]=e&255;++i<n&&(a*=256);)e<0&&o===0&&this[t+i-1]!==0&&(o=1),this[t+i]=(e/a|0)-o&255;return t+n},s.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);C(this,e,t,n,r-1,-r)}let i=n-1,a=1,o=0;for(this[t+i]=e&255;--i>=0&&(a*=256);)e<0&&o===0&&this[t+i+1]!==0&&(o=1),this[t+i]=(e/a|0)-o&255;return t+n},s.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1},s.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},s.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4},s.prototype.writeBigInt64LE=Fe(function(e,t=0){return he(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))}),s.prototype.writeBigInt64BE=Fe(function(e,t=0){return ge(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))});function _e(e,t,n,r,i,a){if(n+r>e.length||n<0)throw RangeError(`Index out of range`)}function ve(e,t,r,i,a){return t=+t,r>>>=0,a||_e(e,t,r,4,34028234663852886e22,-34028234663852886e22),n.write(e,t,r,i,23,4),r+4}s.prototype.writeFloatLE=function(e,t,n){return ve(this,e,t,!0,n)},s.prototype.writeFloatBE=function(e,t,n){return ve(this,e,t,!1,n)};function ye(e,t,r,i,a){return t=+t,r>>>=0,a||_e(e,t,r,8,17976931348623157e292,-17976931348623157e292),n.write(e,t,r,i,52,8),r+8}s.prototype.writeDoubleLE=function(e,t,n){return ye(this,e,t,!0,n)},s.prototype.writeDoubleBE=function(e,t,n){return ye(this,e,t,!1,n)},s.prototype.copy=function(e,t,n,r){if(!s.isBuffer(e))throw TypeError(`argument should be a Buffer`);if(n||=0,!r&&r!==0&&(r=this.length),t>=e.length&&(t=e.length),t||=0,r>0&&r<n&&(r=n),r===n||e.length===0||this.length===0)return 0;if(t<0)throw RangeError(`targetStart out of bounds`);if(n<0||n>=this.length)throw RangeError(`Index out of range`);if(r<0)throw RangeError(`sourceEnd out of bounds`);r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);let i=r-n;return this===e&&typeof Uint8Array.prototype.copyWithin==`function`?this.copyWithin(t,n,r):Uint8Array.prototype.set.call(e,this.subarray(n,r),t),i},s.prototype.fill=function(e,t,n,r){if(typeof e==`string`){if(typeof t==`string`?(r=t,t=0,n=this.length):typeof n==`string`&&(r=n,n=this.length),r!==void 0&&typeof r!=`string`)throw TypeError(`encoding must be a string`);if(typeof r==`string`&&!s.isEncoding(r))throw TypeError(`Unknown encoding: `+r);if(e.length===1){let t=e.charCodeAt(0);(r===`utf8`&&t<128||r===`latin1`)&&(e=t)}}else typeof e==`number`?e&=255:typeof e==`boolean`&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw RangeError(`Out of range index`);if(n<=t)return this;t>>>=0,n=n===void 0?this.length:n>>>0,e||=0;let i;if(typeof e==`number`)for(i=t;i<n;++i)this[i]=e;else{let a=s.isBuffer(e)?e:s.from(e,r),o=a.length;if(o===0)throw TypeError(`The value "`+e+`" is invalid for argument "value"`);for(i=0;i<n-t;++i)this[i+t]=a[i%o]}return this};var be={};function xe(e,t,n){be[e]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(e){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:e,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}xe(`ERR_BUFFER_OUT_OF_BOUNDS`,function(e){return e?`${e} is outside of buffer bounds`:`Attempt to access memory outside buffer bounds`},RangeError),xe(`ERR_INVALID_ARG_TYPE`,function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError),xe(`ERR_OUT_OF_RANGE`,function(e,t,n){let r=`The value of "${e}" is out of range.`,i=n;return Number.isInteger(n)&&Math.abs(n)>2**32?i=Se(String(n)):typeof n==`bigint`&&(i=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(i=Se(i)),i+=`n`),r+=` It must be ${t}. Received ${i}`,r},RangeError);function Se(e){let t=``,n=e.length,r=+(e[0]===`-`);for(;n>=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function Ce(e,t,n){Te(t,`offset`),(e[t]===void 0||e[t+n]===void 0)&&Ee(t,e.length-(n+1))}function we(e,t,n,r,i,a){if(e>n||e<t){let r=typeof t==`bigint`?`n`:``,i;throw i=a>3?t===0||t===BigInt(0)?`>= 0${r} and < 2${r} ** ${(a+1)*8}${r}`:`>= -(2${r} ** ${(a+1)*8-1}${r}) and < 2 ** ${(a+1)*8-1}${r}`:`>= ${t}${r} and <= ${n}${r}`,new be.ERR_OUT_OF_RANGE(`value`,i,e)}Ce(r,i,a)}function Te(e,t){if(typeof e!=`number`)throw new be.ERR_INVALID_ARG_TYPE(t,`number`,e)}function Ee(e,t,n){throw Math.floor(e)===e?t<0?new be.ERR_BUFFER_OUT_OF_BOUNDS:new be.ERR_OUT_OF_RANGE(n||`offset`,`>= ${+!!n} and <= ${t}`,e):(Te(e,n),new be.ERR_OUT_OF_RANGE(n||`offset`,`an integer`,e))}var De=/[^+/0-9A-Za-z-_]/g;function w(e){if(e=e.split(`=`)[0],e=e.trim().replace(De,``),e.length<2)return``;for(;e.length%4!=0;)e+=`=`;return e}function Oe(e,t){t||=1/0;let n,r=e.length,i=null,a=[];for(let o=0;o<r;++o){if(n=e.charCodeAt(o),n>55295&&n<57344){if(!i){if(n>56319||o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=(i-55296<<10|n-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if(--t<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,n&63|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw Error(`Invalid code point`)}return a}function ke(e){let t=[];for(let n=0;n<e.length;++n)t.push(e.charCodeAt(n)&255);return t}function Ae(e,t){let n,r,i,a=[];for(let o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,a.push(i),a.push(r);return a}function je(e){return t.toByteArray(w(e))}function Me(e,t,n,r){let i=0;for(;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function T(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function Ne(e){return e!==e}var Pe=(function(){let e=`0123456789abcdef`,t=Array(256);for(let n=0;n<16;++n){let r=n*16;for(let i=0;i<16;++i)t[r+i]=e[n]+e[i]}return t})();function Fe(e){return typeof BigInt>`u`?Ie:e}function Ie(){throw Error(`BigInt not supported`)}}));function K(e,t){let n=e.position+t;if(n>e.buffer.length){let t=Math.min(Math.max(e.buffer.length*2,n),Oa),r=Ea.Buffer.allocUnsafe(t);e.buffer.copy(r,0,0,e.position),e.buffer=r,e.view=new DataView(e.buffer.buffer,e.buffer.byteOffset,e.buffer.byteLength)}}var Ea,Da,Oa,ka,Aa,ja,Ma,Na,Pa,Fa;function Ia(){return(Ia=t((()=>{Ea=Ta(),Ur(),Da=8192,Oa=2147483647,ka=16,Aa=1048576,ja=typeof TextEncoder<`u`?new TextEncoder:null,Ma=e=>{if(e===null)return`null`;if(e===void 0)return`undefined`;let t=typeof e;if(t!==`object`)return t;let n=Object.prototype.toString.call(e).match(/\[object (\w+)\]/);return n?n[1].toLowerCase():`object`},Na=class{static{this.buffers=[]}static{this.positions=[]}static acquire(){if(this.buffers.length>0){let e=this.buffers.pop();return this.positions.pop()+7&4294967288,e.length-1024,e}return Ea.Buffer.allocUnsafe(Da)}static release(e,t){e.length<=Aa&&this.buffers.length<ka&&(this.buffers.push(e),this.positions.push(t))}static clear(){this.buffers=[],this.positions=[]}},Pa=class{constructor(){this.buffer=Na.acquire(),this.position=0,this.start=0,this.view=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength)}release(){Na.release(this.buffer,this.position)}},Fa=class{constructor(e){this.encodingTypes=e,this.encodeDepth=0,this.state=new Pa}encode(e){let t=this.encodeDepth>0;if(this.encodeDepth++,t){let t=this.state;this.state=new Pa,this._encode(e);let n=this.state.buffer.subarray(0,this.state.position),r=Ea.Buffer.allocUnsafe(n.length);return n.copy(r),this.state.release(),this.state=t,this.encodeDepth--,r}{this.state.position=0,this.state.start=0,this._encode(e);let t=this.state.buffer.subarray(0,this.state.position),n=Ea.Buffer.allocUnsafe(t.length);return t.copy(n),this.state.release(),this.state=new Pa,this.encodeDepth--,n}}_encode(e){let t=typeof e,n=this.state;switch(t){case`undefined`:K(n,3),n.buffer[n.position]=212,n.buffer[n.position+1]=0,n.buffer[n.position+2]=0,n.position+=3;return;case`boolean`:K(n,1),n.buffer[n.position++]=e?195:194;return;case`number`:this.encodeNumber(e);return;case`string`:this.encodeString(e);return;case`bigint`:this.encodeBigInt(e);return}e===null?(K(n,1),n.buffer[n.position++]=192):Ar(e)?this.encodeBuffer(e):Array.isArray(e)?this.encodeArray(e):jr(e)?this.encodeObject(e):this.encodeCustom(e)}encodeUndefined(){let e=this.state;K(e,3);let t=e.buffer,n=e.position;t[n]=212,t[n+1]=0,t[n+2]=0,e.position=n+3}encodeNull(){let e=this.state;K(e,1),e.buffer[e.position++]=192}encodeBoolean(e){let t=this.state;K(t,1),t.buffer[t.position++]=e?195:194}encodeNumber(e){let t=this.state,n=t.position;if(e>>>0===e){if(e<128)K(t,1),t.buffer[n++]=e;else if(e<256){K(t,2);let r=t.buffer;r[n++]=204,r[n++]=e}else e<65536?(K(t,3),t.buffer[n++]=205,t.view.setUint16(n,e,!1),n+=2):(K(t,5),t.buffer[n++]=206,t.view.setUint32(n,e,!1),n+=4)}else(e|0)===e?e>=-32?(K(t,1),t.buffer[n++]=256+e):e>=-128?(K(t,2),t.buffer[n++]=208,t.view.setInt8(n++,e)):e>=-32768?(K(t,3),t.buffer[n++]=209,t.view.setInt16(n,e,!1),n+=2):(K(t,5),t.buffer[n++]=210,t.view.setInt32(n,e,!1),n+=4):(K(t,9),t.buffer[n++]=203,t.view.setFloat64(n,e,!1),n+=8);t.position=n}encodeString(e){let t=this.state,n=e.length;if(n<64){let r=!0,i=n;for(let t=0;t<n;t++)if(e.charCodeAt(t)>=128){r=!1;break}if(r){if(i<32){K(t,1+i);let r=t.buffer,a=t.position;r[a]=160|i;for(let t=0;t<n;t++)r[a+1+t]=e.charCodeAt(t);t.position=a+1+i;return}{K(t,2+i);let r=t.buffer,a=t.position;r[a]=217,r[a+1]=i;for(let t=0;t<n;t++)r[a+2+t]=e.charCodeAt(t);t.position=a+2+i;return}}}let r=Ea.Buffer.byteLength(e,`utf8`),i;i=r<32?1:r<=255?2:r<=65535?3:5,K(t,i+r);let a=t.buffer,o=t.position;if(r<32?a[o++]=160|r:r<=255?(a[o++]=217,a[o++]=r):r<=65535?(a[o++]=218,t.view.setUint16(o,r,!1),o+=2):(a[o++]=219,t.view.setUint32(o,r,!1),o+=4),ja&&r>0){let t=new Uint8Array(a.buffer,a.byteOffset+o,r),n=ja.encodeInto(e,t);o+=n.written}else r>0&&(a.write(e,o,r,`utf8`),o+=r);t.position=o}encodeBuffer(e){let t=this.state,n=e.length;if(n<=255){K(t,2+n);let r=t.buffer,i=t.position;r[i]=196,r[i+1]=n,e.copy(r,i+2),t.position=i+2+n}else if(n<=65535){K(t,3+n);let r=t.buffer,i=t.position;r[i]=197,t.view.setUint16(i+1,n,!1),e.copy(r,i+3),t.position=i+3+n}else{K(t,5+n);let r=t.buffer,i=t.position;r[i]=198,t.view.setUint32(i+1,n,!1),e.copy(r,i+5),t.position=i+5+n}}encodeArray(e){let t=this.state,n=e.length,r=t.position;n<16?(K(t,1),t.buffer[r++]=144|n,t.position=r):n<65536?(K(t,3),t.buffer[r++]=220,t.view.setUint16(r,n,!1),t.position=r+2):(K(t,5),t.buffer[r++]=221,t.view.setUint32(r,n,!1),t.position=r+4);for(let t=0;t<n;t++)this._encode(e[t])}encodeObject(e){let t=this.state,n=Object.keys(e),r=n.length,i=t.position;r<16?(K(t,1),t.buffer[i++]=128|r,t.position=i):(K(t,3),t.buffer[i++]=222,t.view.setUint16(i,r,!1),t.position=i+2);for(let t=0;t<r;t++){let r=n[t];this.encodeString(r),this._encode(e[r])}}encodeBigInt(e){let t=this.encodingTypes.get(120);if(!t)throw Error(`BigInt encoder not registered`);let n=this.state.position,r=t.encode(e);this.state.position=n,this.encodeExtension(120,r)}encodeCustom(e){for(let[t,n]of this.encodingTypes.entries())if(n.check(e)){let r=n.encode(e);this.encodeExtension(t,r);return}throw Error(`Not supported: ${Ma(e)}`)}encodeExtension(e,t){let n=this.state,r=t.length;if(r===1){K(n,3);let r=n.buffer,i=n.position;r[i]=212,r[i+1]=e,r[i+2]=t[0],n.position=i+3}else if(r===2){K(n,4);let r=n.buffer,i=n.position;r[i]=213,r[i+1]=e,t.copy(r,i+2),n.position=i+4}else if(r===4){K(n,6);let r=n.buffer,i=n.position;r[i]=214,r[i+1]=e,t.copy(r,i+2),n.position=i+6}else if(r===8){K(n,10);let r=n.buffer,i=n.position;r[i]=215,r[i+1]=e,t.copy(r,i+2),n.position=i+10}else if(r===16){K(n,18);let r=n.buffer,i=n.position;r[i]=216,r[i+1]=e,t.copy(r,i+2),n.position=i+18}else if(r<256){K(n,3+r);let i=n.buffer,a=n.position;i[a]=199,i[a+1]=r,i[a+2]=e,t.copy(i,a+3),n.position=a+3+r}else if(r<65536){K(n,4+r);let i=n.buffer,a=n.position;i[a]=200,n.view.setUint16(a+1,r,!1),i[a+3]=e,t.copy(i,a+4),n.position=a+4+r}else{K(n,6+r);let i=n.buffer,a=n.position;i[a]=201,n.view.setUint32(a+1,r,!1),i[a+5]=e,t.copy(i,a+6),n.position=a+6+r}}}})))()}var La,Ra;function za(){return(za=t((()=>{La=Ta(),Sa(),Ra=class e{constructor(e=128){this._roffset=0,this.capacity=e,this.buffer=La.Buffer.allocUnsafe(e),this.position=0}static fromBuffer(t){let n=new e(0);return n.buffer=t,n.capacity=t.length,n.position=t.length,n._roffset=0,n}static wrap(t){let n=La.Buffer.isBuffer(t)?t:La.Buffer.from(t);return e.fromBuffer(n)}ensure(e){let t=this.position+e;if(t>this.capacity){let e=Math.max(this.capacity*2,t),n=La.Buffer.allocUnsafe(e);this.buffer.copy(n,0,0,this.position),this.buffer=n,this.capacity=e}}writeUInt8(e){this.ensure(1),this.buffer[this.position++]=e}writeInt8(e){this.ensure(1),this.buffer.writeInt8(e,this.position),this.position++}writeUInt16BE(e){this.ensure(2),this.buffer.writeUInt16BE(e,this.position),this.position+=2}writeInt16BE(e){this.ensure(2),this.buffer.writeInt16BE(e,this.position),this.position+=2}writeUInt32BE(e){this.ensure(4),this.buffer.writeUInt32BE(e,this.position),this.position+=4}writeInt32BE(e){this.ensure(4),this.buffer.writeInt32BE(e,this.position),this.position+=4}writeUInt64BE(e){if(this.ensure(8),typeof e==`number`){let t=Math.floor(e/4294967296),n=e>>>0;this.buffer.writeUInt32BE(t,this.position),this.buffer.writeUInt32BE(n,this.position+4)}else this.buffer.writeUInt32BE(e.high>>>0,this.position),this.buffer.writeUInt32BE(e.low>>>0,this.position+4);this.position+=8}writeInt64BE(e){if(this.ensure(8),typeof e==`number`){let t=Math.floor(e/4294967296),n=e>>>0;this.buffer.writeInt32BE(t,this.position),this.buffer.writeUInt32BE(n,this.position+4)}else this.buffer.writeInt32BE(e.high,this.position),this.buffer.writeUInt32BE(e.low>>>0,this.position+4);this.position+=8}writeDoubleBE(e){this.ensure(8),this.buffer.writeDoubleBE(e,this.position),this.position+=8}writeFloatBE(e){this.ensure(4),this.buffer.writeFloatBE(e,this.position),this.position+=4}write(e,t,n){if(typeof e==`string`){let r=n||La.Buffer.byteLength(e,t);this.ensure(r),this.buffer.write(e,this.position,r,t),this.position+=r}else{let t=n||e.length;this.ensure(t),e.copy(this.buffer,this.position,0,t),this.position+=t}return this}get roffset(){return this._roffset}set roffset(e){this._roffset=e}get woffset(){return this.position}set woffset(e){this.position=e}get length(){return this.position-this._roffset}readUInt8(e){let t=e===void 0?this._roffset:e;if(!(t>=this.position))return e===void 0&&this._roffset++,this.buffer[t]}readInt8(e){let t=e===void 0?this._roffset:e;return e===void 0&&this._roffset++,this.buffer.readInt8(t)}readUInt16BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt16BE(t);return e===void 0&&(this._roffset+=2),n}readInt16BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt16BE(t);return e===void 0&&(this._roffset+=2),n}readUInt32BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt32BE(t);return e===void 0&&(this._roffset+=4),n}readInt32BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt32BE(t);return e===void 0&&(this._roffset+=4),n}readUInt64BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt32BE(t),r=this.buffer.readUInt32BE(t+4);return e===void 0&&(this._roffset+=8),L.fromBits(r,n,!0)}readInt64BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt32BE(t),r=this.buffer.readUInt32BE(t+4);return e===void 0&&(this._roffset+=8),L.fromBits(r,n,!1)}readDoubleBE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readDoubleBE(t);return e===void 0&&(this._roffset+=8),n}readFloatBE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readFloatBE(t);return e===void 0&&(this._roffset+=4),n}toString(e,t,n){return this.buffer.toString(e,t,n)}slice(t,n){let r=new e(n-t);return this.buffer.copy(r.buffer,0,t,n),r.position=n-t,r}skipRead(e){this._roffset+=e}getRemainingBuffer(){return this.buffer.slice(this._roffset,this.position)}toBuffer(){return this.buffer.slice(0,this.position)}}})))()}var Ba;function Va(){return(Va=t((()=>{za(),Ba=class{constructor(e){this.decodingTypes=e,this.lastBytesConsumed=0,this.view=null}decode(e){if(e.length===0)throw this.lastBytesConsumed=0,Error(`Incomplete buffer`);let t=this.view;this.view=new DataView(e.buffer,e.byteOffset,e.byteLength);try{let t=this.tryDecode(e,0);if(t===void 0&&this.lastBytesConsumed===0)throw this.lastBytesConsumed=this.getMinHeaderSize(e[0]),this.lastBytesConsumed>e.length&&(this.lastBytesConsumed=e.length),Error(`Incomplete buffer`);return t}finally{this.view=t}}getLastBytesConsumed(e){return this.lastBytesConsumed}getMinHeaderSize(e){return e<128||e>=224||e>=160&&e<=191||e>=144&&e<=159||e>=128&&e<=143||e===192||e===194||e===195?1:e===196||e===199||e===204||e===208||e===212?2:e===197||e===200||e===205||e===209||e===213||e===217?3:e===210?4:e===202||e===198||e===201||e===206||e===214||e===218||e===220?5:e===211?6:e===203||e===215||e===219||e===221?9:e===216?10:e===217?18:1}tryDecode(e,t){let n=e.length;if(t>=n){this.lastBytesConsumed=0;return}let r=e[t],i=this.view;if(r<160){if(r<128)return this.lastBytesConsumed=1,r;if(r<144){let n=r&15;return this.decodeMap(e,t+1,n,1)}{let n=r&15;return this.decodeArray(e,t+1,n,1)}}if(r<192){let i=r&31;if(t+1+i>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=1+i,e.toString(`utf8`,t+1,t+1+i)}if(r>=224)return this.lastBytesConsumed=1,r-256;if(r===192)return this.lastBytesConsumed=1,null;if(r===194)return this.lastBytesConsumed=1,!1;if(r===195)return this.lastBytesConsumed=1,!0;if(r>=204&&r<=207){if(r===204){if(t+2>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2,e[t+1]}if(r===205){if(t+3>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3,i.getUint16(t+1,!1)}if(r===206){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getUint32(t+1,!1)}if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getUint32(t+1,!1)*4294967296+i.getUint32(t+5,!1)}if(r>=208&&r<=211){if(r===208){if(t+2>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2,i.getInt8(t+1)}if(r===209){if(t+3>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3,i.getInt16(t+1,!1)}if(r===210){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getInt32(t+1,!1)}if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getInt32(t+1,!1)*4294967296+i.getUint32(t+5,!1)}if(r===202){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getFloat32(t+1,!1)}if(r===203){if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getFloat64(t+1,!1)}if(r===217){if(t+2>n){this.lastBytesConsumed=0;return}let r=e[t+1];if(t+2+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2+r,e.toString(`utf8`,t+2,t+2+r)}if(r===218){if(t+3>n){this.lastBytesConsumed=0;return}let r=i.getUint16(t+1,!1);if(t+3+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3+r,e.toString(`utf8`,t+3,t+3+r)}if(r===219){if(t+5>n){this.lastBytesConsumed=0;return}let r=i.getUint32(t+1,!1);if(t+5+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5+r,e.toString(`utf8`,t+5,t+5+r)}let a;switch(r){case 196:if(t+2>n||(a=e[t+1],t+2+a>n)){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2+a,e.slice(t+2,t+2+a);case 197:if(t+3>n||(a=i.getUint16(t+1,!1),t+3+a>n)){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3+a,e.slice(t+3,t+3+a);case 198:if(t+5>n||(a=i.getUint32(t+1,!1),t+5+a>n)){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5+a,e.slice(t+5,t+5+a);case 220:if(t+3>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeArray(e,t+3,a,3);case 221:if(t+5>n){this.lastBytesConsumed=0;return}return a=i.getUint32(t+1,!1),this.decodeArray(e,t+5,a,5);case 222:if(t+3>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeMap(e,t+3,a,3);case 223:throw Error(`map too big to decode in JS`);case 212:return this.decodeFixExt(e,t,1,3);case 213:return this.decodeFixExt(e,t,2,4);case 214:return this.decodeFixExt(e,t,4,6);case 215:return this.decodeFixExt(e,t,8,10);case 216:return this.decodeFixExt(e,t,16,18);case 199:if(t+3>n){this.lastBytesConsumed=0;return}return a=e[t+1],this.decodeExt(e,t,a,3);case 200:if(t+4>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeExt(e,t,a,4);case 201:if(t+6>n){this.lastBytesConsumed=0;return}return a=i.getUint32(t+1,!1),this.decodeExt(e,t,a,6);default:throw Error(`Unknown MessagePack type: 0x${r.toString(16)}`)}}decodeArray(e,t,n,r){let i=[],a=0;for(let r=0;r<n;r++){let n=this.tryDecode(e,t+a);if(n===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}i.push(n),a+=this.lastBytesConsumed}return this.lastBytesConsumed=r+a,i}decodeMap(e,t,n,r){let i={},a=0;for(let r=0;r<n;r++){let n=this.tryDecode(e,t+a);if(n===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}a+=this.lastBytesConsumed;let r=this.tryDecode(e,t+a);if(r===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}a+=this.lastBytesConsumed,n===`__proto__`||n===`constructor`||n===`prototype`?Object.defineProperty(i,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):i[n]=r}return this.lastBytesConsumed=r+a,i}decodeFixExt(e,t,n,r){if(t+r>e.length){this.lastBytesConsumed=0;return}let i=e[t+1];return this.decodeExtData(e,t+2,i,n,r)}decodeExt(e,t,n,r){if(t+r+n>e.length){this.lastBytesConsumed=0;return}let i=e[t+r-1];return this.decodeExtData(e,t+r,i,n,r+n)}decodeExtData(e,t,n,r,i){let a=this.decodingTypes.get(n);if(a){let n=e.slice(t,t+r),o=a(Ra.fromBuffer(n));return this.lastBytesConsumed=i,o}if(n===0&&r===1&&e[t]===0)this.lastBytesConsumed=i;else throw Error(`Unable to find ext type ${n}`)}}})))()}var Ha,Ua;function Wa(){return(Wa=t((()=>{Ha=Ta(),Ia(),Va(),za(),Ua=class{constructor(e=64){this.initialCapacity=e,this.encodingTypes=new Map,this.decodingTypes=new Map,this.encoder=new Fa(this.encodingTypes),this.decoder=new Ba(this.decodingTypes)}registerEncoder(e,t,n){return this.encodingTypes.set(e,{check:t,encode:n}),this}registerDecoder(e,t){return this.decodingTypes.set(e,t),this}register(e,t,n,r){if(e<0||e>127)throw RangeError(`Bad type: 0 <= ${e} <= 127`);return this.registerEncoder(e,e=>e instanceof t,e=>{let t=new Ra(this.initialCapacity);return n(e,t),t.toBuffer()}),this.registerDecoder(e,r),this}encode(e,t){let n=this.encoder.encode(e);if(t)t.write(n);else{let e=n;e.toBuffer=function(){return this};let t=e.write;return e.write=function(e,n,r,i){return Ha.Buffer.isBuffer(e)?(this.copy(e,n||0),this.length):t.call(this,e,n,r,i)},e}}decode(e){if(e&&typeof e.getRemainingBuffer==`function`&&typeof e.skipRead==`function`){let t=e.getRemainingBuffer();try{return this.decoder.decode(t)}finally{let n=this.decoder.getLastBytesConsumed(t);e.skipRead(n)}}if(e&&typeof e.toBuffer==`function`&&typeof e.read==`function`&&typeof e.readUInt8==`function`){let t=e.roffset||0;try{return this.decoder.decode(e.toBuffer().slice(t))}finally{e.roffset=t+this.decoder.getLastBytesConsumed()}}return Ha.Buffer.isBuffer(e)?this.decoder.decode(e):e&&typeof e.toBuffer==`function`?this.decoder.decode(e.toBuffer()):this.decoder.decode(e)}}})))()}var Ga,Ka,qa,Ja,Ya,Xa,Za;function Qa(){return(Qa=t((()=>{Ga={},Ka={},qa=[],Ja={1:Error,2:SyntaxError,3:TypeError,4:ReferenceError,5:RangeError,6:EvalError,7:URIError},Ya=Object.keys(Ja).map(e=>+e);for(let e=0;e<Ya.length;e++){let t=Ya[e],n=Ja[t];Ga[n]=t,qa.push(n),Ka[n.name]=t}Xa=(e,t,n)=>{let r=new Ja[e](t);return r.stack=n,r},Za=e=>Ka[e.constructor.name]??Ka[Error.name]})))()}var $a,eo;function to(){return(to=t((()=>{Sa(),Wa(),Qa(),$a=e=>{e.register(126,Error,(t,n)=>{n.writeUInt16BE(Za(t)),e.encode(t.name,n),e.encode(t.stack,n),e.encode(t.message,n);let r=Object.keys(t).filter(e=>![`stack`,`message`,`name`].includes(e)&&t[e]!==void 0);n.writeUInt16BE(r.length);for(let i of r)e.encode(i,n),e.encode(t[i],n)},t=>{let n=t.readUInt16BE(),r=e.decode(t),i=e.decode(t),a=e.decode(t),o=Xa(n,a,i);o.name=r;let s=t.readUInt16BE();for(let n=0;n<s;n++){let n=e.decode(t);o[n]=e.decode(t)}return o}),e.register(125,Date,(e,t)=>{t.writeUInt64BE(e.getTime())},e=>new Date(e.readUInt64BE().toNumber())),e.register(124,Map,(t,n)=>{n.writeUInt32BE(t.size);for(let[r,i]of t.entries())e.encode(r,n),e.encode(i,n)},t=>{let n=new Map,r=t.readUInt32BE();for(let i=0;i<r;i++){let r=e.decode(t),i=e.decode(t);n.set(r,i)}return n}),e.register(123,Set,(t,n)=>{n.writeUInt32BE(t.size);for(let r of t.values())e.encode(r,n)},t=>{let n=new Set,r=t.readUInt32BE();for(let i=0;i<r;i++){let r=e.decode(t);n.add(r)}return n}),e.register(121,RegExp,(t,n)=>{e.encode(t.source,n),e.encode(t.flags,n)},t=>{let n=e.decode(t),r=e.decode(t);return new RegExp(n,r)}),e.register(120,BigInt,(t,n)=>{let r=t.toString();e.encode(r,n)},t=>{let n=e.decode(t);return BigInt(n)}),e.register(119,L,(e,t)=>{t.writeInt8(+!!e.unsigned),e.unsigned?t.writeUInt64BE(e):t.writeInt64BE(e)},e=>e.readInt8()?e.readUInt64BE():e.readInt64BE())},eo=new Ua,$a(eo)})))()}function no(){return na()}function ro(e,t,n,r){return{id:no(),service:e,method:t,input:n,context:r?.context,hints:r?.hints}}function io(e){return e.endsWith(`/`)?e.slice(0,-1):e}function ao(e){return e.replace(/^http/,`ws`)}function oo(e,t=1e3,n=3e4){let r=Math.max(1,t),i=Math.max(r,n),a=Math.min(r*2**Math.max(0,e-1),i),o=Math.max(0,a-r),s=r+Math.random()*o;return Math.floor(s)}function so(e,t){return t?(t.throwIfAborted(),new Promise((n,r)=>{let i=()=>t.removeEventListener(`abort`,a),a=()=>{i(),r(t.reason)};t.addEventListener(`abort`,a,{once:!0});try{e().then(e=>{i(),t.aborted?r(t.reason):n(e)},e=>{i(),r(t.aborted?t.reason:e)})}catch(e){i(),r(t.aborted?t.reason:e)}})):e()}function co(e,t,n){if(n?.throwIfAborted(),!Number.isFinite(e)||e<=0||e>2**31-1)throw RangeError(`Invocation timeout must be between 0 and 2147483647 milliseconds`);let r=new AbortController,i=()=>r.abort(n?.reason);n?.addEventListener(`abort`,i,{once:!0});let a=setTimeout(()=>r.abort(t),e);return{signal:r.signal,dispose(){clearTimeout(a),n?.removeEventListener(`abort`,i)}}}function lo(e,t){return t.throwIfAborted(),new Promise((n,r)=>{let i=()=>{clearTimeout(a),t.removeEventListener(`abort`,i),r(t.reason)},a=setTimeout(()=>{t.removeEventListener(`abort`,i),n()},e);t.addEventListener(`abort`,i,{once:!0})})}function uo(e){let t=Error(e.error?.message||`Method invocation failed`);return t.code=e.error?.code,e.error?.details!==void 0&&(t.details=e.error.details),e.httpStatus!==void 0&&(t.status=e.httpStatus),t}function fo(e,t){return new bs(e,t)}function po(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function mo(e){return po(e)&&typeof e.message==`string`&&(typeof e.code==`string`||typeof e.code==`number`&&Number.isFinite(e.code))}function ho(e,t,n){let r=n.ok?void 0:n.status;if(!n.ok&&po(e)&&e.error===!0&&mo(e))return{id:t,success:!1,error:e,httpStatus:r};if(e===void 0&&!n.ok)return{id:t,success:!1,error:{code:`HTTP_ERROR`,message:`HTTP ${n.status}: ${n.statusText}`},httpStatus:r};if(!po(e)||typeof e.success!=`boolean`||e.id!==t)throw fo(`Invalid RPC response envelope or mismatched request id`,r);if(e.success){if(!n.ok)throw fo(`Unsuccessful HTTP response cannot carry RPC success`,r);return{id:t,success:!0,data:e.data}}if(!mo(e.error))throw fo(`Invalid RPC error envelope`,r);return{id:t,success:!1,error:e.error,...r===void 0?{}:{httpStatus:r}}}function go(e){let t={},n=!1;for(let r of Object.keys(e)){if(ws.has(r))continue;let i=e[r];i!==void 0&&typeof i!=`function`&&(t[r]=i,n=!0)}return n?t:null}function _o(e){if(!e)return!1;let t=e.code,n=e.message??String(e);return typeof t==`string`&&(t===`NOT_FOUND`||t===`DEFINITION_NOT_FOUND`)?!0:typeof n==`string`&&n.length>0?/Definition.*not\s*found/i.test(n)||/Service.*not\s*found/i.test(n):!1}function vo(e){let t=new Js(e);return new Proxy(t,{get(e,t){if(t in e||typeof t==`symbol`){let n=e[t];return typeof n==`function`?n.bind(e):n}if(e.getBackendNames().includes(t))return new Proxy({},{get(n,r){if(typeof r!=`symbol`)return e.backend(t).service(r)}})}})}var yo,bo,xo,q,So,Co,wo,To,Eo,Do,Oo,ko,Ao,jo,Mo,No,Po,Fo,Io,Lo,Ro,zo,Bo,J,Vo,Ho,Uo,Wo,Y,Go,Ko,qo,Jo,Yo,Xo,Zo,X,Qo,$o,es,ts,ns,rs,is,as,Z,os,ss,cs,ls,us,ds,fs,ps,ms,hs,gs,_s,vs,ys,bs,xs,Ss,Q,Cs,ws,Ts,Es,Ds,Os,ks,As,js,Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs,Us,Ws,Gs,Ks,qs,Js;function Ys(){return(Ys=t((()=>{Wn(),Tr(),er(),Qn(),mr(),cr(),Jr(),ra(),to(),za(),yo=Ta(),bo=Object.defineProperty,xo=Object.getOwnPropertyNames,q=(e,t,n)=>function(){if(n)throw n[0];try{return e&&(t=(0,e[xo(e)[0]])(e=0)),t}catch(e){throw n=[e],e}},So=(e,t)=>{for(var n in t)bo(e,n,{get:t[n],enumerable:!0})},Co=q({"src/core/reference.ts"(){}}),wo=q({"src/errors/codes.ts"(){}}),To=q({"src/errors/core.ts"(){}}),Po=q({"src/errors/netron.ts"(){To(),wo(),Eo=class e extends dr{serviceId;methodName;peerId;constructor(t){super(t),this.name=`NetronError`,this.serviceId=t.serviceId,this.methodName=t.methodName,this.peerId=t.peerId,Object.setPrototypeOf(this,e.prototype)}toJSON(){return{...super.toJSON(),serviceId:this.serviceId,methodName:this.methodName,peerId:this.peerId}}},Do=class e extends Eo{constructor(t,n){super({code:F.NOT_FOUND,message:`Service not found: ${t}`,details:n,serviceId:t}),this.name=`ServiceNotFoundError`,Object.setPrototypeOf(this,e.prototype)}static create(t){return new e(t)}},Oo=class e extends Eo{constructor(t,n,r){super({code:F.NOT_FOUND,message:`Method not found: ${t}.${n}`,details:r,serviceId:t,methodName:n}),this.name=`MethodNotFoundError`,Object.setPrototypeOf(this,e.prototype)}static create(t,n){return new e(t,n)}},ko=class e extends Eo{transport;address;constructor(t){super(t),this.name=`TransportError`,this.transport=t.transport,this.address=t.address,Object.setPrototypeOf(this,e.prototype)}static connectionFailed(t,n,r){return new e({code:F.SERVICE_UNAVAILABLE,message:`Failed to connect to ${n} via ${t}`,transport:t,address:n,cause:r})}static connectionTimeout(t,n){return new e({code:F.REQUEST_TIMEOUT,message:`Connection timeout to ${n} via ${t}`,transport:t,address:n})}static connectionClosed(t,n){return new e({code:F.SERVICE_UNAVAILABLE,message:n||`Connection closed unexpectedly`,transport:t,details:{reason:n}})}toJSON(){return{...super.toJSON(),transport:this.transport,address:this.address}}},Ao=class e extends Eo{constructor(t){super(t),this.name=`PeerError`,Object.setPrototypeOf(this,e.prototype)}static notFound(t){return new e({code:F.NOT_FOUND,message:`Peer not found: ${t}`,peerId:t})}static disconnected(t,n){return new e({code:F.SERVICE_UNAVAILABLE,message:`Peer disconnected: ${t}${n?` (${n})`:``}`,peerId:t,details:{reason:n}})}static unauthorized(t){return new e({code:F.UNAUTHORIZED,message:`Peer not authorized: ${t}`,peerId:t})}},jo=class e extends Eo{rpcId;constructor(t){super(t),this.name=`RpcError`,this.rpcId=t.rpcId,Object.setPrototypeOf(this,e.prototype)}static timeout(t,n,r){return new e({code:F.REQUEST_TIMEOUT,message:`RPC call ${t}.${n} timed out after ${r}ms`,serviceId:t,methodName:n,details:{timeout:r}})}static invalidRequest(t,n){return new e({code:F.BAD_REQUEST,message:`Invalid RPC request: ${t}`,details:n})}static invalidResponse(t,n,r){return new e({code:F.INTERNAL_ERROR,message:`Invalid RPC response from ${t}.${n}`,serviceId:t,methodName:n,details:r})}toJSON(){return{...super.toJSON(),rpcId:this.rpcId}}},Mo=class e extends Eo{streamId;constructor(t){super(t),this.name=`StreamError`,this.streamId=t.streamId,Object.setPrototypeOf(this,e.prototype)}static closed(t,n){return new e({code:F.GONE,message:`Stream closed: ${t}${n?` (${n})`:``}`,streamId:t,details:{reason:n}})}static error(t,n){return new e({code:F.INTERNAL_ERROR,message:`Stream error: ${n.message}`,streamId:t,cause:n})}static backpressure(t,n){return new e({code:F.TOO_MANY_REQUESTS,message:`Stream backpressure: buffer size ${n}`,streamId:t,details:{bufferSize:n}})}toJSON(){return{...super.toJSON(),streamId:this.streamId}}},No=class e extends Eo{serializationType;constructor(t){super(t),this.name=`SerializationError`,this.serializationType=t.serializationType,Object.setPrototypeOf(this,e.prototype)}static encode(t,n){return new e({code:F.INTERNAL_ERROR,message:`Failed to encode value: ${typeof t}`,serializationType:`encode`,cause:n})}static decode(t,n){let r=n?.message??`Failed to decode data`;return new e({code:F.BAD_REQUEST,message:r,serializationType:`decode`,cause:n})}toJSON(){return{...super.toJSON(),serializationType:this.serializationType}}}}}),Fo=q({"src/errors/serialization.ts"(){To()}}),Lo=q({"src/errors/factories.ts"(){To(),wo(),Po(),Io={serviceNotFound(e){return Do.create(e)},methodNotFound(e,t){return Oo.create(e,t)},connectionFailed(e,t,n){return ko.connectionFailed(e,t,n)},connectionTimeout(e,t){return ko.connectionTimeout(e,t)},connectionClosed(e,t){return ko.connectionClosed(e,t)},peerNotFound(e){return Ao.notFound(e)},peerDisconnected(e,t){return Ao.disconnected(e,t)},peerUnauthorized(e){return Ao.unauthorized(e)},rpcTimeout(e,t,n){return jo.timeout(e,t,n)},invalidRequest(e,t){return jo.invalidRequest(e,t)},invalidResponse(e,t,n){return jo.invalidResponse(e,t,n)},streamClosed(e,t){return Mo.closed(e,t)},streamError(e,t){return Mo.error(e,t)},streamBackpressure(e,t){return Mo.backpressure(e,t)},serializeEncode(e,t){return No.encode(e,t)},serializeDecode(e,t){return No.decode(e,t)}}}}),Bo=q({"src/errors/legacy.ts"(){Po(),wo(),Ro=class extends Eo{constructor(e,t){super({code:F.SERVICE_UNAVAILABLE,message:e,details:t}),this.name=`ConnectionError`}},zo=class extends Eo{constructor(e,t){super({code:F.REQUEST_TIMEOUT,message:e,details:t}),this.name=`TimeoutError`}}}}),J=q({"src/errors/index.ts"(){wo(),To(),Po(),Fo(),Lo(),Bo(),wo(),To(),Po(),Lo()}}),qo=q({"src/core/readable-stream.ts"(){J(),Vo=1e4,Ho=16,Uo=1024,Wo=3e4,Y={IDLE:`IDLE`,ACTIVE:`ACTIVE`,PAUSED:`PAUSED`,CLOSING:`CLOSING`,CLOSED:`CLOSED`,ERROR:`ERROR`},Go={RECOVERABLE:`RECOVERABLE`,FATAL:`FATAL`},Ko=class e extends ReadableStream{peer;buffer=new Map;expectedIndex=0;timeout;id;isComplete=!1;isLive;events=new Wr;controller;state=Y.IDLE;highWaterMark;maxBufferSize;onErrorCallback;metrics={bytesReceived:0,packetsReceived:0,backpressureEvents:0,bufferPeakSize:0,currentBufferSize:0,estimatedMemoryUsage:0,state:Y.IDLE,isPaused:!1};cleanupInterval;constructor({peer:e,streamId:t,isLive:n=!1,highWaterMark:r=Ho,maxBufferSize:i=Vo,onError:a}){let o;super({start(e){o=e},pull(){},cancel(e){console.log(`Stream ${t} cancelled:`,e)}}),this.peer=e,this.id=t,this.isLive=n,this.highWaterMark=r,this.maxBufferSize=i,this.onErrorCallback=a,this.controller=o,this.peer.logger&&this.peer.logger.info({streamId:this.id,isLive:n,highWaterMark:r,maxBufferSize:i},`Creating readable stream`),this.peer.readableStreams.set(this.id,this),this.transitionState(Y.ACTIVE),this.isLive||(this.resetTimeout(),this.startBufferCleanup()),this.events.on(`close`,this.cleanup),this.events.on(`error`,this.handleError)}transitionState(e){let t=this.state;if(!{[Y.IDLE]:[Y.ACTIVE,Y.CLOSED,Y.ERROR],[Y.ACTIVE]:[Y.PAUSED,Y.CLOSING,Y.CLOSED,Y.ERROR],[Y.PAUSED]:[Y.ACTIVE,Y.CLOSING,Y.ERROR],[Y.CLOSING]:[Y.CLOSED,Y.ERROR],[Y.CLOSED]:[],[Y.ERROR]:[Y.CLOSED]}[t].includes(e)){let n=Error(`Invalid state transition: ${t} -> ${e} for stream ${this.id}`);this.peer.logger&&this.peer.logger.warn({streamId:this.id,oldState:t,newState:e},n.message)}this.state=e,this.metrics.state=e,this.metrics.isPaused=e===Y.PAUSED,this.peer.logger&&this.peer.logger.debug({streamId:this.id,oldState:t,newState:e},`Stream state transition`),this.events.emit(`stateChange`,{oldState:t,newState:e})}startBufferCleanup(){this.cleanupInterval=setInterval(()=>{this.performBufferCleanup()},Wo)}performBufferCleanup(){if(this.state!==Y.CLOSED&&this.state!==Y.ERROR&&this.buffer.size>0){this.peer.logger&&this.peer.logger.debug({streamId:this.id,bufferSize:this.buffer.size},`Performing buffer cleanup`);let e=[];for(let[t]of Array.from(this.buffer.entries()))t<this.expectedIndex-100&&e.push(t);for(let t of e)this.buffer.delete(t),this.peer.logger&&this.peer.logger.warn({streamId:this.id,index:t},`Removed stale packet from buffer`);this.updateBufferMetrics()}}onPacket(e){if(this.state===Y.CLOSED||this.state===Y.ERROR)this.peer.logger&&this.peer.logger.warn({streamId:this.id,state:this.state},`Received packet for closed/errored stream`);else{if(this.state===Y.PAUSED&&this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Received packet while paused`),this.resetTimeout(),this.metrics.packetsReceived++,e.data){let t=typeof e.data==`string`?e.data.length:e.data.byteLength??Uo;this.metrics.bytesReceived+=t}if(this.buffer.size>=this.maxBufferSize){this.peer.logger&&this.peer.logger.error({streamId:this.id,size:this.buffer.size},`Stream buffer overflow`);let e=Io.streamBackpressure(String(this.id),this.buffer.size);this.handleStreamError(e,Go.FATAL)}else{for(this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:e.streamIndex},`Processing packet`),e.isLastChunk()&&e.data===null||this.buffer.set(e.streamIndex,e.data),this.updateBufferMetrics(),this.checkBackpressure();this.buffer.has(this.expectedIndex);){let e=this.buffer.get(this.expectedIndex);this.buffer.delete(this.expectedIndex),this.expectedIndex++;try{this.controller?.enqueue(e)}catch{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Stream backpressure detected`),this.buffer.set(this.expectedIndex-1,e),this.expectedIndex--,this.handleStreamError(Error(`Failed to enqueue chunk`),Go.RECOVERABLE);break}}if(this.updateBufferMetrics(),e.isLastChunk()){this.peer.logger&&this.peer.logger.info({streamId:this.id},`Received last chunk`),this.isComplete=!0,this.transitionState(Y.CLOSING);try{this.controller?.close(),this.transitionState(Y.CLOSED)}catch{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Error closing stream`)}}}}}updateBufferMetrics(){this.metrics.currentBufferSize=this.buffer.size,this.buffer.size>this.metrics.bufferPeakSize&&(this.metrics.bufferPeakSize=this.buffer.size),this.metrics.estimatedMemoryUsage=this.buffer.size*Uo}checkBackpressure(){let e=this.buffer.size>=this.highWaterMark;e&&this.state===Y.ACTIVE?this.pause():!e&&this.state===Y.PAUSED&&this.resume()}pause(){this.state===Y.ACTIVE&&(this.peer.logger&&this.peer.logger.warn({streamId:this.id,bufferSize:this.buffer.size},`Pausing stream due to backpressure`),this.transitionState(Y.PAUSED),this.metrics.backpressureEvents++,this.events.emit(`backpressure`,{bufferSize:this.buffer.size,highWaterMark:this.highWaterMark}))}resume(){this.state===Y.PAUSED&&(this.peer.logger&&this.peer.logger.info({streamId:this.id},`Resuming stream after backpressure`),this.transitionState(Y.ACTIVE),this.events.emit(`resume`))}get desiredSize(){return this.highWaterMark-this.buffer.size}get isPaused(){return this.state===Y.PAUSED}getState(){return this.state}getMetrics(){return{...this.metrics}}handleStreamError(e,t){if(this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e,severity:t},`Stream error occurred`),this.onErrorCallback)try{this.onErrorCallback(e,t)}catch(e){this.peer.logger&&this.peer.logger.error({streamId:this.id,callbackError:e},`Error in onError callback`)}t===Go.FATAL?this.destroy(e):this.events.emit(`error`,e)}resetTimeout(){if(this.isLive)return;this.timeout&&clearTimeout(this.timeout);let e=this.peer.options?.streamTimeout??6e4;this.peer.logger&&this.peer.logger.debug({streamId:this.id,timeoutDuration:e},`Resetting stream timeout`),this.timeout=setTimeout(()=>{let t=`Stream ${this.id} inactive for ${e}ms, closing.`;this.peer.logger&&this.peer.logger.warn(t),this.buffer.clear(),this.updateBufferMetrics(),this.destroy(Io.streamClosed(String(this.id),t))},e)}closeStream(e=!1){if(this.state===Y.CLOSED)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close already closed stream`);else if(this.isLive&&!e)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close live stream`);else{this.peer.logger&&this.peer.logger.info({streamId:this.id,force:e},`Closing stream`),this.transitionState(Y.CLOSING);try{this.controller?.close(),this.transitionState(Y.CLOSED)}catch{this.transitionState(Y.CLOSED)}this.isLive&&e&&this.destroy()}}forceClose(e){if(this.state===Y.CLOSED)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to force close already closed stream`);else{this.peer.logger&&this.peer.logger.info({streamId:this.id,reason:e},`Force closing stream`),this.transitionState(Y.CLOSING),this.isComplete=!0;try{this.controller?.close(),this.transitionState(Y.CLOSED)}catch{this.transitionState(Y.CLOSED)}setTimeout(()=>{this.events.emit(`close`),this.cleanup()},0)}}cleanup=()=>{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Cleaning up stream resources`),this.timeout&&=(clearTimeout(this.timeout),void 0),this.cleanupInterval&&=(clearInterval(this.cleanupInterval),void 0),this.peer.readableStreams.delete(this.id),this.buffer.clear(),this.updateBufferMetrics()};handleError=e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Stream error occurred`),this.transitionState(Y.ERROR),this.cleanup()};destroy(e){if(this.state===Y.CLOSED)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to destroy already closed stream`);else{if(this.peer.logger&&this.peer.logger.info({streamId:this.id,error:e},`Destroying stream`),e){this.transitionState(Y.ERROR);try{this.controller?.error(e)}catch{}this.events.emit(`error`,e)}else{this.transitionState(Y.CLOSING);try{this.controller?.close()}catch{}}this.transitionState(Y.CLOSED),this.cleanup()}}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}static create(t,n,r=!1){return new e({peer:t,streamId:n,isLive:r})}}}}),Jo=q({"src/packet/uid.ts"(){}}),Yo=q({"src/packet/packet.ts"(){}}),Xo=q({"src/packet/types.ts"(){}}),$o=q({"src/core/writable-stream.ts"(){Jo(),Yo(),Xo(),J(),Zo=new Un,X={IDLE:`IDLE`,ACTIVE:`ACTIVE`,DRAINING:`DRAINING`,CLOSING:`CLOSING`,CLOSED:`CLOSED`,ERROR:`ERROR`},Qo=class e extends WritableStream{id;peer;index=0;isLive;state=X.IDLE;events=new Wr;writeBuffer=[];highWaterMark;retryConfig;errorHandler;metrics={bytesSent:0,packetsSent:0,retryCount:0,failedWrites:0,bufferSize:0,state:X.IDLE};isProcessing=!1;constructor({peer:e,streamId:t,isLive:n=!1,highWaterMark:r=16,retry:i,onError:a}){super({start:e=>{},write:async e=>this._write(e),close:async()=>this._final(),abort:e=>{this._abort(e)}}),this.peer=e,this.isLive=n,this.id=t??Zo.next(),this.highWaterMark=r,this.errorHandler=a,this.retryConfig={maxAttempts:i?.maxAttempts??3,initialDelay:i?.initialDelay??100,maxDelay:i?.maxDelay??5e3,backoffFactor:i?.backoffFactor??2},this.peer.logger&&this.peer.logger.info({streamId:this.id,isLive:n,highWaterMark:this.highWaterMark,retryConfig:this.retryConfig},`Creating writable stream`),this.peer.writableStreams.set(this.id,this),this.events.once(`close`,this.cleanup)}async pipeFrom(e){this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Starting pipe operation`);let t=this.getWriter();try{if(Symbol.asyncIterator in e)for await(let n of e)await t.write(n);else{let n=e.getReader();try{for(;;){let{done:e,value:r}=await n.read();if(e)break;await t.write(r)}}finally{n.releaseLock()}}await t.close(),this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Pipe operation completed`)}catch(e){throw this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Pipe operation failed`),await t.abort(e),e}finally{t.releaseLock()}}async _write(e){if(this.state===X.CLOSED||this.state===X.CLOSING){let e=Io.streamClosed(String(this.id),`Attempt to write to closed stream`);throw this.peer.logger&&this.peer.logger.warn({streamId:this.id,state:this.state},`Attempt to write to closed stream`),e}if(this.state===X.ERROR)throw Io.streamError(String(this.id),Error(`Stream is in error state`));this.transitionState(X.ACTIVE);let t=await this.enqueueWrite(e,this.index++);return this.isProcessing||this.processWriteBuffer().catch(e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Error processing write buffer`)}),t}enqueueWrite(e,t){return new Promise((n,r)=>{let i={chunk:e,index:t,resolve:n,reject:r,retryCount:0,timestamp:Date.now()};this.writeBuffer.push(i),this.metrics.bufferSize=this.writeBuffer.length,this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:t,bufferSize:this.writeBuffer.length},`Enqueued write to buffer`)})}async processWriteBuffer(){if(!this.isProcessing){this.isProcessing=!0;try{for(;this.writeBuffer.length>0;){let e=this.writeBuffer[0];if(!e)this.writeBuffer.shift();else try{await this.sendChunkWithRetry(e),this.writeBuffer.shift(),this.metrics.bufferSize=this.writeBuffer.length,e.resolve(),this.metrics.packetsSent++;let t=this.estimateChunkSize(e.chunk);this.metrics.bytesSent+=t,this.writeBuffer.length===this.highWaterMark-1&&(this.transitionState(X.DRAINING),this.events.emit(`drain`),this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Buffer draining below high water mark`))}catch(t){this.writeBuffer.shift(),this.metrics.bufferSize=this.writeBuffer.length,this.metrics.failedWrites++,this.transitionState(X.ERROR),this.errorHandler&&this.errorHandler(t);try{await this.peer.sendPacket(wr(Cr.nextId(),1,6,{streamId:this.id,message:t.message}))}catch(e){this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Failed to send stream error packet`)}e.reject(t);break}}this.writeBuffer.length===0&&this.state!==X.ERROR&&this.transitionState(X.IDLE)}finally{this.isProcessing=!1}}}async sendChunkWithRetry(e){let t,n=this.retryConfig.initialDelay;for(let r=0;r<=this.retryConfig.maxAttempts;r++)try{this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:e.index,attempt:r,retryCount:e.retryCount},`Sending chunk`),await this.peer.sendStreamChunk(this.id,e.chunk,e.index,!1,this.isLive);return}catch(i){t=i instanceof Error?i:Error(String(i));let a=this.isErrorRetryable(i);if(!a||r>=this.retryConfig.maxAttempts)throw this.peer.logger&&this.peer.logger.error({streamId:this.id,index:e.index,attempt:r,isRetryable:a},`Write failed, not retrying`),t;e.retryCount++,this.metrics.retryCount++,this.peer.logger&&this.peer.logger.warn({streamId:this.id,index:e.index,attempt:r,delay:n,error:i.message},`Write failed, retrying`),this.events.emit(`retry`,{index:e.index,attempt:r,error:t,delay:n}),await this.delay(n),n=Math.min(n*this.retryConfig.backoffFactor,this.retryConfig.maxDelay)}throw t}isErrorRetryable(e){if(e.code!==void 0){if(typeof e.code==`number`)return rr(e.code);if(e.code===`ECONNREFUSED`||e.code===`ECONNRESET`||e.code===`ETIMEDOUT`||e.code===`ENOTFOUND`||e.code===`ENETUNREACH`)return!0}return!(e instanceof TypeError||e instanceof ReferenceError)}estimateChunkSize(e){if(e==null)return 0;if(typeof e==`string`)return e.length*2;if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))return e.byteLength;try{return JSON.stringify(e).length*2}catch{return 0}}delay(e){return new Promise(t=>setTimeout(t,e))}async _final(){if(this.state===X.CLOSED)throw this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to finalize closed stream`),Io.streamClosed(String(this.id),`Attempt to finalize closed stream`);this.transitionState(X.CLOSING),this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:this.index},`Finalizing stream`);try{await this.flush(),this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:this.index},`Sending final chunk`),await this.peer.sendStreamChunk(this.id,null,this.index,!0,this.isLive)}catch(e){throw this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Error sending final chunk`),e}finally{this.closeStream()}}_abort(e){this.peer.logger&&this.peer.logger.info({streamId:this.id,reason:e},`Aborting stream`);let t=e instanceof Error?e:Error(String(e));this.destroy(t)}closeStream(){this.state===X.CLOSED?this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close already closed stream`):(this.peer.logger&&this.peer.logger.info({streamId:this.id,state:this.state},`Closing stream`),this.transitionState(X.CLOSED),this.clearPendingWrites(),this.cleanup())}destroy(e){if(this.state===X.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to destroy already closed stream`);return}this.peer.logger&&this.peer.logger.info({streamId:this.id,error:e,state:this.state},`Destroying stream`),e?this.transitionState(X.ERROR):this.transitionState(X.CLOSED),this.clearPendingWrites(e),this.cleanup(),e&&(this.events.emit(`error`,e),this.errorHandler&&this.errorHandler(e));let t=e?e.message:`Stream destroyed`;this.peer.sendPacket(wr(Cr.nextId(),1,7,{streamId:this.id,reason:t})).catch(e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Failed to send stream close packet`)})}cleanup=()=>{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Cleaning up stream resources`),this.peer.writableStreams.delete(this.id)};transitionState(e){let t=this.state;t!==e&&(this.state=e,this.metrics.state=e,this.peer.logger&&this.peer.logger.debug({streamId:this.id,oldState:t,newState:e},`Stream state transition`),this.events.emit(`state-change`,{oldState:t,newState:e}))}clearPendingWrites(e){let t=this.writeBuffer.length;if(t>0){let n=e||Error(`Stream closed with pending writes`);this.peer.logger&&this.peer.logger.warn({streamId:this.id,pendingCount:t},`Clearing pending writes`);for(let e of this.writeBuffer)e.reject(n);this.writeBuffer=[],this.metrics.bufferSize=0}}async flush(){this.writeBuffer.length!==0&&(this.peer.logger&&this.peer.logger.debug({streamId:this.id,pendingWrites:this.writeBuffer.length},`Flushing pending writes`),await new Promise((e,t)=>{let n=()=>{this.writeBuffer.length===0?e():this.state===X.ERROR?t(Error(`Stream in error state during flush`)):setTimeout(n,10)};n()}))}getMetrics(){return{...this.metrics}}getState(){return this.state}isWritable(){return this.state!==X.CLOSED&&this.state!==X.CLOSING&&this.state!==X.ERROR}isBufferFull(){return this.writeBuffer.length>=this.highWaterMark}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}static create(t,n,r=!1,i){let a=new e({peer:t,streamId:i,isLive:r});return n&&a.pipeFrom(n).catch(()=>void 0),a}}}}),ts=q({"src/core/stream-reference.ts"(){qo(),$o(),es=class e{constructor(e,t,n,r){this.streamId=e,this.type=t,this.isLive=n,this.peerId=r}streamId;type;isLive;peerId;static from(t){let n=t instanceof Ko?`readable`:`writable`;return new e(t.id,n,t.isLive,t.peer.id)}static to(e,t){if(e.type===`readable`){let n=t.writableStreams.get(e.streamId);return n||=new Qo({peer:t,streamId:e.streamId,isLive:e.isLive}),n}{let n=t.readableStreams.get(e.streamId);return n||=new Ko({peer:t,streamId:e.streamId,isLive:e.isLive}),n}}}}}),ns=q({"src/utils/lru-cache.ts"(){}}),rs=q({"src/core/definition.ts"(){}}),is=q({"src/utils/validation.ts"(){}}),as=q({"src/utils/index.ts"(){ns(),is()}}),os=q({"src/middleware/types.ts"(){Z={PRE_REQUEST:`pre-request`,POST_RESPONSE:`post-response`,ERROR:`error`}}}),cs=q({"src/middleware/pipeline.ts"(){os(),ss=class{globalMiddleware=new Map;serviceMiddleware=new Map;methodMiddleware=new Map;metrics={executions:0,avgTime:0,errors:0,skips:0,byMiddleware:new Map};constructor(){for(let e of Object.values(Z))this.globalMiddleware.set(e,[])}use(e,t,n=Z.PRE_REQUEST){let r={middleware:e,config:{name:t?.name||`anonymous`,priority:t?.priority??100,...t},stage:n},i=this.globalMiddleware.get(n)||[];i.push(r),i.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0)),this.globalMiddleware.set(n,i)}useForService(e,t,n,r=Z.PRE_REQUEST){this.serviceMiddleware.has(e)||this.serviceMiddleware.set(e,new Map);let i=this.serviceMiddleware.get(e);i.has(r)||i.set(r,[]);let a={middleware:t,config:{name:n?.name||`${e}-middleware`,priority:n?.priority??100,...n},stage:r},o=i.get(r);o.push(a),o.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0))}useForMethod(e,t,n,r,i=Z.PRE_REQUEST){let a=`${e}.${t}`;this.methodMiddleware.has(a)||this.methodMiddleware.set(a,new Map);let o=this.methodMiddleware.get(a);o.has(i)||o.set(i,[]);let s={middleware:n,config:{name:r?.name||`${a}-middleware`,priority:r?.priority??100,...r},stage:i},c=o.get(i);c.push(s),c.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0))}getMiddleware(e,t,n){let r=n?[n]:Object.values(Z),i=[];for(let n of r){let r=this.globalMiddleware.get(n)||[];if(i.push(...r),e){let t=this.serviceMiddleware.get(e);if(t){let e=t.get(n)||[];i.push(...e)}}if(e&&t){let r=`${e}.${t}`,a=this.methodMiddleware.get(r);if(a){let e=a.get(n)||[];i.push(...e)}}}return i.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0)),i}async execute(e,t){let n=performance.now();this.metrics.executions++;let r=this.getMiddleware(e.service,e.method,t).filter(t=>{if(t.config.condition&&!t.config.condition(e))return this.metrics.skips++,!1;if(t.config.services){if(Array.isArray(t.config.services)){if(!t.config.services.includes(e.service))return!1}else if(t.config.services instanceof RegExp&&!t.config.services.test(e.service))return!1}if(t.config.methods){if(Array.isArray(t.config.methods)){if(!t.config.methods.includes(e.method))return!1}else if(t.config.methods instanceof RegExp&&!t.config.methods.test(e.method))return!1}return!0}),i=0,a=async()=>{if(e.skipRemaining||i>=r.length)return;let t=r[i++];if(!t)return;let n=performance.now(),o=this.metrics.byMiddleware.get(t.config.name)||{executions:0,avgTime:0,errors:0};try{await t.middleware(e,a),o.executions++;let r=performance.now()-n;o.avgTime=(o.avgTime*(o.executions-1)+r)/o.executions,e.timing.middlewareTimes.set(t.config.name,r)}catch(n){throw o.errors++,this.metrics.errors++,t.config.onError&&t.config.onError(n,e),n}finally{this.metrics.byMiddleware.set(t.config.name,o)}};try{await a()}finally{let e=performance.now()-n;this.metrics.avgTime=(this.metrics.avgTime*(this.metrics.executions-1)+e)/this.metrics.executions}}clear(){this.globalMiddleware.clear(),this.serviceMiddleware.clear(),this.methodMiddleware.clear();for(let e of Object.values(Z))this.globalMiddleware.set(e,[]);this.metrics={executions:0,avgTime:0,errors:0,skips:0,byMiddleware:new Map}}getMetrics(){return{...this.metrics}}}}}),ls=q({"src/auth/client-token-transports/bearer.ts"(){}}),us=q({"src/middleware/built-in/auth.ts"(){ls()}}),ds=q({"src/middleware/built-in/auth-error-handler.ts"(){}}),fs=q({"src/middleware/built-in/logging.ts"(){}}),ps=q({"src/middleware/built-in/timing.ts"(){}}),ms=q({"src/middleware/built-in/error-transform.ts"(){}}),hs=q({"src/middleware/built-in/csrf.ts"(){}}),gs=q({"src/middleware/built-in/index.ts"(){us(),ds(),fs(),ps(),ms(),hs()}}),_s=q({"src/middleware/index.ts"(){os(),cs(),gs()}}),vs=q({"src/client/request-lifecycle.ts"(){}}),ys={},So(ys,{HttpClient:()=>xs}),Ss=q({"src/client/http-client.ts"(){as(),_s(),vs(),bs=class extends Error{constructor(e,t){super(e),this.status=t,this.name=`InvalidResponseError`}status;code=`INVALID_RESPONSE`},xs=class{baseUrl;timeout;headers;redirect;retry;maxRetries;auth;state=`disconnected`;middleware;metrics={requestsSent:0,responsesReceived:0,errors:0,avgLatency:0};constructor(e){this.baseUrl=io(e.url),this.timeout=e.timeout??3e4,this.headers=e.headers??{},this.redirect=e.redirect,this.retry=e.retry??!1,this.maxRetries=e.maxRetries??3,this.auth=e.auth,this.middleware=e.middleware||new ss}async connect(){this.state=`connecting`,this.state=`connected`}async invoke(e,t,n,r){r?.signal?.throwIfAborted();let i={service:e,method:t,args:n,request:{headers:{...this.headers},timeout:r?.timeout??r?.hints?.timeout??this.timeout,metadata:r?.context},timing:{start:performance.now(),middlewareTimes:new Map},metadata:new Map,transport:`http`};if(await so(()=>this.middleware.execute(i,Z.PRE_REQUEST),r?.signal),i.skipRemaining)return i.response?.data;let a=i.request?.timeout??this.timeout,o=co(a,Object.assign(Error(`Request timeout after ${a}ms`),{code:`TIMEOUT`}),r?.signal);try{for(let s=0;;s++)try{o.signal.throwIfAborted();let s=ro(e,t,n,{context:i.request?.metadata,hints:{...r?.hints,timeout:a}}),c=i.request?.credentials??this.auth?.getRequestCredentials(),l=await this.sendRequest(s,o.signal,r?.idempotent===!0,i.request?.headers,r?.skipAuth??!1,c);if(!l.success)throw uo(l);return i.response={data:l.data,headers:{},metadata:{}},await so(()=>this.middleware.execute(i,Z.POST_RESPONSE),o.signal),i.response.data}catch(e){o.signal.throwIfAborted(),i.error=e,i.metadata.delete(`auth:retry`);try{await so(()=>this.middleware.execute(i,Z.ERROR),o.signal)}catch{}if(o.signal.throwIfAborted(),s<1&&i.metadata.get(`auth:retry`)){i.metadata.delete(`auth:retry`),i.error=void 0;continue}throw e}}finally{o.dispose()}}async sendRequest(e,t,n,r,i=!1,a){let o=`${this.baseUrl}/netron/invoke`,s=new Headers({"Content-Type":`application/json`,Accept:`application/json`,...this.headers,...r});if(s.set(`X-Request-ID`,e.id),this.auth&&!i&&!s.has(`Authorization`))for(let[e,t]of Object.entries(this.auth.getAuthHeaders()))s.set(e,t);let c=JSON.stringify(e);for(let r=0;;r++){t.throwIfAborted();let i=performance.now();try{this.metrics.requestsSent++;let n=await so(()=>fetch(o,{method:`POST`,headers:s,body:c,signal:t,redirect:this.redirect,...a===void 0?{}:{credentials:a}}),t),r;try{r=await so(()=>n.json(),t)}catch{if(t.throwIfAborted(),n.ok)throw fo(`Response body is not valid JSON`);r=void 0}this.metrics.responsesReceived++,this.metrics.avgLatency+=(performance.now()-i-this.metrics.avgLatency)/this.metrics.responsesReceived;let l=ho(r,e.id,n);return l.success||this.metrics.errors++,l}catch(i){if(this.metrics.errors++,t.throwIfAborted(),i instanceof bs)throw i;if(this.retry&&n&&r<this.maxRetries){await lo(Math.min(2**r*1e3,3e4),t);continue}return{id:e.id,success:!1,error:{code:`NETWORK_ERROR`,message:i instanceof Error?i.message:String(i)}}}}}async disconnect(){this.state=`disconnected`}getState(){return this.state}getMetrics(){return{id:`http-client`,url:this.baseUrl,state:this.state,transport:`http`,requestsSent:this.metrics.requestsSent,responsesReceived:this.metrics.responsesReceived,errors:this.metrics.errors,avgLatency:this.metrics.responsesReceived?this.metrics.avgLatency:void 0}}getMiddleware(){return this.middleware}use(e,t,n){return this.middleware.use(e,t,n),this}}}}),Ts=q({"src/packet/serializer.ts"(){Co(),rs(),ts(),To(),Q=new Ua,Cs=!1,ws=new Set([`name`,`code`,`category`,`httpStatus`,`message`,`details`,`context`,`timestamp`,`requestId`,`correlationId`,`spanId`,`traceId`,`stack`,`cause`,`stats`]),Q.register(110,dr,(e,t)=>{if(t.write(Q.encode(e.name)),t.write(Q.encode(e.code)),t.write(Q.encode(e.message)),t.write(Q.encode(e.details)),t.write(Q.encode(e.context)),t.write(Q.encode(e.timestamp)),t.write(Q.encode(e.requestId)),t.write(Q.encode(e.correlationId)),t.write(Q.encode(e.spanId)),t.write(Q.encode(e.traceId)),t.write(Q.encode(Cs&&e.stack||null)),e.cause){let n=e.cause;n instanceof dr?t.write(Q.encode(n)):n instanceof Error?t.write(Q.encode({__errorType:`Error`,name:n.name,message:n.message,stack:Cs?n.stack:void 0})):t.write(Q.encode(null))}else t.write(Q.encode(null));t.write(Q.encode(go(e)))},e=>{let t=Q.decode(e),n=Q.decode(e),r=Q.decode(e),i=Q.decode(e),a=Q.decode(e),o=Q.decode(e),s=Q.decode(e),c=Q.decode(e),l=Q.decode(e),u=Q.decode(e),d=Q.decode(e),f=Q.decode(e),p=Q.decode(e),m;if(f){if(f instanceof dr)m=f;else if(f.__errorType===`Error`){let e=Error(f.message);e.name=f.name,e.stack=f.stack,m=e}}let h=new dr({code:n,message:r,details:i,context:a,requestId:s,correlationId:c,spanId:l,traceId:u,cause:m});return h.name=t,d&&(h.stack=d),h.timestamp=o,p&&typeof p==`object`&&Object.assign(h,p),h}),$a(Q),Q.register(109,Zn,(e,t)=>{t.write(Q.encode(e.id)),t.write(Q.encode(e.parentId)),t.write(Q.encode(e.peerId)),t.write(Q.encode(e.meta))},e=>{let t=Q.decode(e),n=Q.decode(e),r=Q.decode(e),i=Q.decode(e),a=new Zn(t,r,i);return a.parentId=n,a}).register(108,$n,(e,t)=>{t.write(Q.encode(e.defId))},e=>new $n(Q.decode(e))).register(107,es,(e,t)=>{Q.encode(e.streamId.toString(),t),t.writeUInt8(+(e.type===`writable`)),t.writeUInt8(+!!e.isLive),Q.encode(e.peerId,t)},e=>{let t=Number(Q.decode(e)),n=e.readUInt8()===1?`writable`:`readable`,r=e.readUInt8()===1,i=Q.decode(e);return new es(t,n,r,i)})}}),js=q({"src/packet/index.ts"(){Yo(),Ts(),Xo(),J(),Xo(),Yo(),Ts(),Es=e=>{let t=e.isStreamChunk()?8:0,n=e.getType(),r;switch(n){case 0:r=32;break;case 3:r=512;break;case 5:r=256;break;case 6:case 7:r=128;break;default:r=256}return 5+t+r},Ds=e=>{let t=new Ra(Es(e));return t.writeUInt32BE(e.id),t.writeUInt8(e.flags),Q.encode(e.data,t),e.isStreamChunk()&&(t.writeUInt32BE(e.streamId),t.writeUInt32BE(e.streamIndex)),t.toBuffer()},Os=16777216,ks=5,As=(e,t=Os)=>{let n=e instanceof Uint8Array?yo.Buffer.from(e):e;if(n.byteLength>t)throw No.decode(e,Error(`Packet exceeds maximum allowed size: ${n.byteLength} > ${t}`));if(n.byteLength<ks)throw No.decode(e,Error(`Packet too small: ${n.byteLength} bytes, minimum ${ks} bytes required`));let r=Ra.wrap(n),i=new Cr(r.readUInt32BE());i.flags=r.readUInt8();let a=i.getType();if(a<0||a>7)throw No.decode(e,Error(`Invalid packet type: 0x${a.toString(16)}. Expected 0x00-0x07`));try{i.data=Q.decode(r)}catch(t){throw No.decode(e,t instanceof Error?t:void 0)}if(i.isStreamChunk()){let t=r.length;if(t<8)throw No.decode(e,Error(`Incomplete stream metadata: ${t} bytes remaining, 8 bytes required`));i.streamId=r.readUInt32BE(),i.streamIndex=r.readUInt32BE()}return i}}}),Ms={},So(Ms,{WebSocketClient:()=>Is}),Ls=q({"src/client/ws-client.ts"(){as(),vs(),J(),_s(),js(),Ns=5e3,Ps=1012,Fs=[1e3,3e3],Is=class extends Wr{ws=null;wsUrl;protocols;timeout;reconnectEnabled;reconnectInterval;maxReconnectAttempts;reconnectAttempts=0;reconnectTimeout;restartAnnounced=!1;isManualDisconnect=!1;auth;authTransport;middleware;serviceDefinitions;enableServiceDiscovery;discoveredDefinitions=new Map;pendingDiscoveries=new Map;state=`disconnected`;pendingRequests=new Map;connectedAt;disconnectedAt;taskHandlers=new Map;handshakeComplete=!1;connectSettle;connecting;serverId=null;clientId;metrics={requestsSent:0,responsesReceived:0,errors:0,latencies:[]};constructor(e){super(),this.wsUrl=e.url.startsWith(`http`)?ao(e.url):e.url,this.protocols=e.protocols,this.timeout=e.timeout??3e4,this.reconnectEnabled=e.reconnect??!0,this.reconnectInterval=e.reconnectInterval??1e3,this.maxReconnectAttempts=e.maxReconnectAttempts??1/0,this.auth=e.auth,this.authTransport=e.authTransport,this.middleware=e.middleware||new ss,this.serviceDefinitions=e.serviceDefinitions,this.enableServiceDiscovery=e.enableServiceDiscovery===!0,this.clientId=crypto.randomUUID?.()||`browser-${Date.now()}-${Math.random().toString(36).slice(2)}`}async connect(){if(this.ws&&(this.ws.readyState===0||this.ws.readyState===1))this.connecting&&await this.connecting;else{this.reconnectTimeout&&=(clearTimeout(this.reconnectTimeout),void 0),this.connecting=new Promise((e,t)=>{try{this.isManualDisconnect=!1,this.handshakeComplete=!1,this.serverId=null,this.discoveredDefinitions.clear(),this.pendingDiscoveries.clear(),this.state=`connecting`,this.clientId=crypto.randomUUID?.()||`browser-${Date.now()}-${Math.random().toString(36).slice(2)}`;let n=typeof WebSocket<`u`?WebSocket:typeof globalThis<`u`&&globalThis.WebSocket?globalThis.WebSocket:null;if(!n)throw Error(`WebSocket is not available in this environment`);let r=this.wsUrl;if(this.authTransport){let e=this.auth?.getToken?.()??null;r=this.authTransport.prepareWebSocketUrl(this.wsUrl,e)}this.ws=new n(r,this.protocols),this.ws.binaryType=`arraybuffer`;let i=this.ws,a=!1,o=n=>{a||(a=!0,clearTimeout(s),this.connectSettle=void 0,n?t(n):e())},s=setTimeout(()=>{o(new Ro(`Netron handshake did not complete within ${this.timeout}ms`))},this.timeout);this.connectSettle=o,i.addEventListener(`open`,()=>{this.state=`connected`,this.connectedAt=Date.now(),this.emit(`connect`)}),i.addEventListener(`message`,e=>{this.handleMessage(e.data)}),i.addEventListener(`error`,e=>{let t=new Ro(`WebSocket error`);this.state=`failed`,this.emit(`error`,t),o(t)}),i.addEventListener(`close`,e=>{this.disconnectedAt=Date.now(),o(new Ro(`Connection closed before the Netron handshake completed`));for(let e of this.pendingRequests.values())e.reject(new Ro(`Connection closed`)),clearTimeout(e.timeout);this.pendingRequests.clear(),this.restartAnnounced=e.code===Ps,this.connectedAt!==void 0&&Date.now()-this.connectedAt>=Ns&&(this.reconnectAttempts=0),this.reconnectEnabled&&!this.isManualDisconnect?(this.state=`reconnecting`,this.emit(`disconnect`,e.reason),this.attemptReconnect()):(this.state=`disconnected`,this.emit(`disconnect`,e.reason))})}catch(e){this.state=`failed`,t(e instanceof Error?e:new Ro(String(e)))}});try{await this.connecting}finally{this.connecting=void 0}}}handleMessage(e){try{if(!this.handshakeComplete){let t=null;if(typeof e==`string`?t=e:e instanceof ArrayBuffer&&e.byteLength<512&&(t=new TextDecoder().decode(e)),t)try{let e=JSON.parse(t);if(e.type===`id`){this.serverId=e.id,this.ws?.send(JSON.stringify({type:`client-id`,id:this.clientId})),this.handshakeComplete=!0,this.connectSettle?.();return}}catch{}}let t=As(e instanceof ArrayBuffer?e:new TextEncoder().encode(e));this.emit(`packet`,t);let n=t.getImpulse()===1,r=t.getImpulse()===0,i=t.getError()===1;if(r||i&&!n){let e=this.pendingRequests.get(String(t.id));e&&(clearTimeout(e.timeout),this.pendingRequests.delete(String(t.id)),this.metrics.responsesReceived++,i?(this.metrics.errors++,e.reject(t.data)):e.resolve(t.data));return}if(n){let e=t.getType();(e===4||e===3)&&this.handleIncomingTask(t)}}catch(e){this.emit(`error`,e)}}async handleIncomingTask(e){let[t,...n]=Array.isArray(e.data)?e.data:[e.data],r=this.taskHandlers.get(t);if(r)try{let t=await r(...n);this.sendResponse(e.id,t??null,!1)}catch(t){this.sendResponse(e.id,{message:t?.message??`Task handler error`},!0)}else this.emit(`task`,t,...n),this.sendResponse(e.id,null,!1)}sendResponse(e,t,n){try{let r=new Cr(e);r.setImpulse(0),r.setType(3),n&&r.setError(1),r.data=t,this.sendPacket(r)}catch{}}async invoke(e,t,n,r){if(r?.signal?.throwIfAborted(),!this.isConnected())throw new Ro(`WebSocket is not connected`);let i={service:e,method:t,args:n,request:{headers:{},timeout:r?.timeout??r?.hints?.timeout??this.timeout,metadata:r?.context},timing:{start:performance.now(),middlewareTimes:new Map},metadata:new Map,transport:`websocket`};if(await so(()=>this.middleware.execute(i,Z.PRE_REQUEST),r?.signal),i.skipRemaining)return i.response?.data;let a=i.request?.timeout??this.timeout,o=co(a,new zo(`Request timeout after ${a}ms`),r?.signal);try{let r=await so(()=>this.resolveDefinitionId(e),o.signal),a=e=>{let r=new Cr(Cr.nextId());return r.setType(3),r.setImpulse(1),r.data=[e,t,...n],this.sendInvocation(r,o.signal)},s;try{s=await a(r)}catch(t){if(o.signal.throwIfAborted(),!(this.enableServiceDiscovery&&this.discoveredDefinitions.get(e)===r&&_o(t)&&!this.serviceDefinitions?.has(e)))throw t;this.discoveredDefinitions.delete(e),r=await so(()=>this.resolveDefinitionId(e),o.signal),s=await a(r)}return i.response={data:s,headers:{},metadata:{}},await so(()=>this.middleware.execute(i,Z.POST_RESPONSE),o.signal),i.response.data}catch(e){o.signal.throwIfAborted(),i.error=e;try{await so(()=>this.middleware.execute(i,Z.ERROR),o.signal)}catch{}throw o.signal.throwIfAborted(),e}finally{o.dispose()}}sendInvocation(e,t){return t.throwIfAborted(),new Promise((n,r)=>{let i=String(e.id),a=()=>{t.removeEventListener(`abort`,o),this.pendingRequests.delete(i)},o=()=>{a(),this.metrics.errors++,r(t.reason)};this.pendingRequests.set(i,{resolve:e=>{a(),n(e)},reject:e=>{a(),r(e)}}),t.addEventListener(`abort`,o,{once:!0});try{this.sendPacket(e),this.metrics.requestsSent++}catch(e){a(),r(e)}})}sendPacket(e){if(!this.ws||this.ws.readyState!==1)throw new Ro(`WebSocket is not connected`);let t=Ds(e);this.ws.send(t)}async runTask(e,...t){if(!this.isConnected())throw new Ro(`WebSocket is not connected`);let n=Cr.nextId(),r=new Cr(n);return r.setType(4),r.setImpulse(1),r.data=[e,...t],new Promise((t,i)=>{let a=setTimeout(()=>{this.pendingRequests.delete(String(n)),i(new zo(`runTask('${e}') timed out after ${this.timeout}ms`))},this.timeout);this.pendingRequests.set(String(n),{resolve:t,reject:i,timeout:a});try{this.sendPacket(r),this.metrics.requestsSent++}catch(e){clearTimeout(a),this.pendingRequests.delete(String(n)),i(e)}})}resolveDefinitionId(e){let t=this.serviceDefinitions?.get(e);if(t)return Promise.resolve(t);let n=this.discoveredDefinitions.get(e);if(n)return Promise.resolve(n);if(!this.enableServiceDiscovery)return Promise.resolve(e);let r=this.pendingDiscoveries.get(e);if(r)return r;let i=(async()=>{let t=await this.runTask(`query_interface`,e)??null;if(!t||typeof t.id!=`string`)throw new Ro(`query_interface('${e}') returned an unexpected payload \u2014 server did not yield a definition id.`);return this.discoveredDefinitions.set(e,t.id),t.id})().finally(()=>{this.pendingDiscoveries.delete(e)});return this.pendingDiscoveries.set(e,i),i}async discoverServices(e){let t=new Map;return await Promise.all(e.map(async e=>{if(this.serviceDefinitions?.has(e)){t.set(e,this.serviceDefinitions.get(e));return}let n=this.discoveredDefinitions.get(e);if(n){t.set(e,n);return}let r=await this.runTask(`query_interface`,e)??null;if(!r||typeof r.id!=`string`)throw new Ro(`query_interface('${e}') returned an unexpected payload \u2014 server did not yield a definition id.`);this.discoveredDefinitions.set(e,r.id),t.set(e,r.id)})),t}clearDiscoveryCache(){this.discoveredDefinitions.clear(),this.pendingDiscoveries.clear()}onTask(e,t){return this.taskHandlers.set(e,t),this}offTask(e){return this.taskHandlers.delete(e),this}async disconnect(){this.isManualDisconnect=!0,this.reconnectTimeout&&=(clearTimeout(this.reconnectTimeout),void 0),this.ws&&=((this.ws.readyState===1||this.ws.readyState===0)&&this.ws.close(1e3,`Manual disconnect`),null),this.state=`disconnected`,this.disconnectedAt=Date.now()}isConnected(){return this.ws!==null&&this.ws.readyState===1}getState(){return this.state}attemptReconnect(){if(this.reconnectAttempts>=this.maxReconnectAttempts){this.state=`failed`,this.emit(`reconnect-failed`);return}this.state=`reconnecting`,this.reconnectAttempts++;let e=this.restartAnnounced,[t,n]=Fs,r=e?t+Math.floor(Math.random()*(n-t)):oo(this.reconnectAttempts,this.reconnectInterval);this.emit(`reconnecting`,{attempt:this.reconnectAttempts,delay:r,maxAttempts:this.maxReconnectAttempts,announced:e}),this.reconnectTimeout=setTimeout(async()=>{try{await this.connect(),this.emit(`reconnect`,{attempt:this.reconnectAttempts})}catch{}},r)}getReconnectAttempts(){return this.state===`connected`?0:this.reconnectAttempts}setUrl(e){this.wsUrl=e.startsWith(`http`)?ao(e):e}getMetrics(){let e=this.metrics.latencies.length>0?this.metrics.latencies.reduce((e,t)=>e+t,0)/this.metrics.latencies.length:void 0;return{id:`ws-client`,url:this.wsUrl,state:this.state,transport:`websocket`,connectedAt:this.connectedAt,disconnectedAt:this.disconnectedAt,requestsSent:this.metrics.requestsSent,responsesReceived:this.metrics.responsesReceived,errors:this.metrics.errors,avgLatency:e}}getMiddleware(){return this.middleware}use(e,t,n){return this.middleware.use(e,t,n),this}}}}),Co(),ts(),qo(),$o(),J(),ns(),rs(),Co(),ts(),J(),Co(),rs(),ts(),Ss(),Ls(),Rs={DISCONNECTED:`disconnected`,CONNECTING:`connecting`,CONNECTED:`connected`,RECONNECTING:`reconnecting`,FAILED:`failed`},vs(),zs=[`connect`,`disconnect`,`reconnect`,`reconnecting`,`reconnect-failed`],Bs=class{name;config;baseUrl;fullUrl;transportType;client=null;auth;middleware;defaultTimeout;defaultHeaders;connected=!1;events=new Wr;constructor(e){this.name=e.name,this.config=e.config,this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.fullUrl=`${this.baseUrl}${e.config.path}`,this.transportType=e.config.transport||`http`,this.auth=e.auth,this.middleware=e.middleware,this.defaultTimeout=e.config.timeout||e.defaultTimeout||3e4,this.defaultHeaders={...e.defaultHeaders,...e.config.headers}}async initializeClient(){if(this.client)return this.client;let{HttpClient:e}=await Promise.resolve().then(()=>(Ss(),ys)),{WebSocketClient:t}=await Promise.resolve().then(()=>(Ls(),Ms));if(this.transportType===`websocket`){let e=this.auth?.getTransport();this.client=new t({url:this.fullUrl,protocols:this.config.websocket?.protocols,timeout:this.defaultTimeout,reconnect:this.config.websocket?.reconnect,reconnectInterval:this.config.websocket?.reconnectInterval,maxReconnectAttempts:this.config.websocket?.maxReconnectAttempts,auth:this.auth,...e?{authTransport:e}:{},middleware:this.middleware}),this.forwardTransportEvents(this.client)}else this.client=new e({url:this.fullUrl,timeout:this.defaultTimeout,headers:this.defaultHeaders,redirect:this.config.http?.redirect,retry:this.config.http?.retry,maxRetries:this.config.http?.maxRetries,auth:this.auth,middleware:this.middleware});return this.client}async connect(){await(await this.initializeClient()).connect(),this.connected=!0}on(e,t){return this.events.on(e,t),()=>{this.events.off(e,t)}}forwardTransportEvents(e){if(typeof e.on==`function`)for(let t of zs)e.on(t,(...e)=>this.events.emit(t,...e))}async disconnect(){this.client&&(await this.client.disconnect(),this.connected=!1)}service(e){return new Proxy({},{get:(t,n)=>{if(typeof n!=`symbol`)return async(...t)=>await this.invoke(e,n,t)}})}async invoke(e,t,n=[],r){r?.signal?.throwIfAborted();let i=await so(()=>this.initializeClient(),r?.signal);return r?.signal?.throwIfAborted(),await i.invoke(e,t,n,r)}getMetrics(){return this.client?{...this.client.getMetrics(),id:this.name}:{id:`${this.name}-not-connected`,url:this.fullUrl,state:Rs.DISCONNECTED,transport:this.transportType,requestsSent:0,responsesReceived:0,errors:0}}isConnected(){return this.client?`isConnected`in this.client&&typeof this.client.isConnected==`function`?this.client.isConnected():this.connected:!1}getPath(){return this.config.path}getTransportType(){return this.transportType}getName(){return this.name}getFullUrl(){return this.fullUrl}getClient(){return this.client}async destroy(){this.client&&=(await this.disconnect(),null)}},Vs=class{key;constructor(e=`netron_auth_token`){this.key=e}getToken(){try{return localStorage.getItem(this.key)}catch{return null}}setToken(e){try{localStorage.setItem(this.key,e)}catch{}}removeToken(){try{localStorage.removeItem(this.key)}catch{}}hasToken(){return this.getToken()!==null}getValue(e){try{return localStorage.getItem(e)}catch{return null}}setValue(e,t){try{localStorage.setItem(e,t)}catch{}}removeValue(e){try{localStorage.removeItem(e)}catch{}}},Hs=class{key;constructor(e=`netron_auth_token`){this.key=e}getToken(){try{return sessionStorage.getItem(this.key)}catch{return null}}setToken(e){try{sessionStorage.setItem(this.key,e)}catch{}}removeToken(){try{sessionStorage.removeItem(this.key)}catch{}}hasToken(){return this.getToken()!==null}getValue(e){try{return sessionStorage.getItem(e)}catch{return null}}setValue(e,t){try{sessionStorage.setItem(e,t)}catch{}}removeValue(e){try{sessionStorage.removeItem(e)}catch{}}},Us=class{token=null;values=new Map;getToken(){return this.token}setToken(e){this.token=e}removeToken(){this.token=null}hasToken(){return this.token!==null}getValue(e){return this.values.get(e)??null}setValue(e,t){this.values.set(e,t)}removeValue(e){this.values.delete(e)}},Ws={storage:new Us,storageKey:`netron_auth_token`,autoRefresh:!0,refreshThreshold:3e5,autoAttach:!0,inactivityConfig:{timeout:18e5,events:[`click`,`keypress`,`mousemove`]},crossTabSync:{enabled:!0,syncKey:`netron_auth_sync`}},Gs=class{options;state;refreshTimer;inactivityTimer;lastActivity=Date.now();eventHandlers=new Map;refreshPromise;storageListener;activityListener;transport;constructor(e={}){let t=e.storage||(e.storageKey?new Vs(e.storageKey):Ws.storage);this.options={storage:t,storageKey:e.storageKey??Ws.storageKey,autoRefresh:e.autoRefresh??Ws.autoRefresh,refreshThreshold:e.refreshThreshold??Ws.refreshThreshold,autoAttach:e.autoAttach??Ws.autoAttach,refreshConfig:e.refreshConfig,logoutConfig:e.logoutConfig,inactivityConfig:{timeout:e.inactivityConfig?.timeout??Ws.inactivityConfig.timeout,events:e.inactivityConfig?.events??Ws.inactivityConfig.events,onInactivity:e.inactivityConfig?.onInactivity},crossTabSync:{enabled:e.crossTabSync?.enabled??Ws.crossTabSync.enabled,syncKey:e.crossTabSync?.syncKey??Ws.crossTabSync.syncKey}},this.state={authenticated:!1},this.transport=e.transport,this.restoreFromStorage(),this.options.crossTabSync.enabled&&this.enableCrossTabSync(),this.options.inactivityConfig.timeout&&this.options.inactivityConfig.timeout>0&&this.setupInactivityTracking()}getState(){return{...this.state}}isAuthenticated(){return this.state.authenticated}getContext(){return this.state.context}getToken(){return this.state.token}getRefreshToken(){return this.state.refreshToken}getSessionMetadata(){return this.state.sessionMetadata}setAuth(e){if(!e.success||!e.context)return;let t=this.extractTokenValue(e),n=e.metadata?.refreshToken,r=this.state.sessionMetadata||{sessionId:this.generateSessionId(),loginTime:new Date,deviceInfo:{userAgent:typeof navigator<`u`?navigator.userAgent:void 0,platform:typeof navigator<`u`?navigator.platform:void 0,language:typeof navigator<`u`?navigator.language:void 0}};this.state={authenticated:!0,context:e.context,token:t,expiresAt:e.context.token?.expiresAt?new Date(e.context.token.expiresAt):void 0,refreshToken:n,refreshTokenExpiresAt:e.metadata?.refreshTokenExpiresAt?new Date(e.metadata.refreshTokenExpiresAt):void 0,sessionMetadata:r},this.persistToStorage(),this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh(),this.resetInactivityTimer(),this.emit(`authenticated`,{context:e.context}),this.notifyCrossTabSync(`authenticated`)}setRefreshToken(e,t){this.state.refreshToken=e,this.state.refreshTokenExpiresAt=t,this.persistToStorage()}clearAuth(){this.state={authenticated:!1},this.clearStorage(),this.cancelRefresh(),this.cancelInactivityTimer(),this.emit(`unauthenticated`,{}),this.notifyCrossTabSync(`unauthenticated`)}async logout(){let e=this.options.logoutConfig;if(e)try{let t={"Content-Type":`application/json`,...e.headers};e.includeToken!==!1&&this.state.token&&(t.Authorization=`Bearer ${this.state.token}`);let n=await fetch(e.endpoint,{method:e.method||`POST`,headers:t});if(!n.ok)throw Error(`Logout failed: ${n.statusText}`)}catch(e){throw this.emit(`error`,{error:e,context:`logout`}),e}this.clearAuth()}async refreshToken(e){let t=e||this.state.refreshToken;if(!t)return{success:!1,error:`No refresh token available`};if(!this.options.refreshConfig)return{success:!1,error:`Refresh configuration not provided`};if(this.refreshPromise)return this.refreshPromise;this.refreshPromise=this.performTokenRefresh(t);try{return await this.refreshPromise}finally{this.refreshPromise=void 0}}async performTokenRefresh(e){let t=this.options.refreshConfig;try{let n={"Content-Type":`application/json`,...t.headers},r;r=t.buildBody?t.buildBody(e):{refreshToken:e};let i=await fetch(t.endpoint,{method:t.method||`POST`,headers:n,body:JSON.stringify(r)});if(!i.ok){this.clearAuth();let e={success:!1,error:`Token refresh failed: ${i.statusText}`};return this.emit(`error`,{error:e.error,context:`refresh`}),e}let a=await i.json();return a.success&&a.context&&(this.setAuth(a),this.emit(`token-refreshed`,{context:a.context})),a}catch(e){this.clearAuth();let t={success:!1,error:e instanceof Error?e.message:`Unknown error during token refresh`};return this.emit(`error`,{error:e,context:`refresh`}),t}}setToken(e,t){e?(this.state={authenticated:!0,context:t,token:e,expiresAt:t?.token?.expiresAt,refreshToken:this.state.refreshToken,refreshTokenExpiresAt:this.state.refreshTokenExpiresAt,sessionMetadata:this.state.sessionMetadata||{sessionId:this.generateSessionId(),loginTime:new Date,deviceInfo:{userAgent:typeof navigator<`u`?navigator.userAgent:void 0,platform:typeof navigator<`u`?navigator.platform:void 0,language:typeof navigator<`u`?navigator.language:void 0}}},this.persistToStorage(),this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh(),this.resetInactivityTimer(),this.emit(`authenticated`,{context:t}),this.notifyCrossTabSync(`authenticated`)):this.clearAuth()}getAuthHeaders(){if(!this.options.autoAttach)return{};if(this.transport){let e={};return this.transport.prepareRequest({headers:e},this.state.token??null),e}return this.state.token?{Authorization:`Bearer ${this.state.token}`}:{}}getRequestCredentials(){if(!this.transport)return;let e={headers:{}};return this.transport.prepareRequest(e,this.state.token??null),e.credentials}getTransport(){return this.transport}isTokenExpired(){return this.state.expiresAt?Date.now()>=this.state.expiresAt.getTime():!1}isRefreshTokenExpired(){return this.state.refreshTokenExpiresAt?Date.now()>=this.state.refreshTokenExpiresAt.getTime():!1}needsRefresh(){return!this.state.expiresAt||!this.options.autoRefresh?!1:this.state.expiresAt.getTime()-Date.now()<=this.options.refreshThreshold}enableCrossTabSync(){typeof window>`u`||this.storageListener||(this.storageListener=e=>{if(e.key===this.options.crossTabSync.syncKey&&e.newValue)try{let t=JSON.parse(e.newValue);(t.type===`authenticated`||t.type===`unauthenticated`)&&(this.restoreFromStorage(),this.emit(`cross-tab-sync`,{type:t.type,timestamp:t.timestamp}))}catch(e){console.error(`Error processing cross-tab sync:`,e)}},window.addEventListener(`storage`,this.storageListener))}disableCrossTabSync(){typeof window<`u`&&this.storageListener&&(window.removeEventListener(`storage`,this.storageListener),this.storageListener=void 0)}setupInactivityTracking(){typeof window>`u`||this.activityListener||(this.activityListener=()=>{this.lastActivity=Date.now(),this.resetInactivityTimer()},(this.options.inactivityConfig.events||[`click`,`keypress`,`mousemove`]).forEach(e=>{window.addEventListener(e,this.activityListener,{passive:!0})}),this.resetInactivityTimer())}resetInactivityTimer(){this.cancelInactivityTimer(),this.state.authenticated&&this.options.inactivityConfig.timeout&&(this.inactivityTimer=setTimeout(()=>{this.handleInactivity()},this.options.inactivityConfig.timeout))}cancelInactivityTimer(){this.inactivityTimer!==void 0&&(clearTimeout(this.inactivityTimer),this.inactivityTimer=void 0)}handleInactivity(){this.emit(`inactivity`,{lastActivity:new Date(this.lastActivity)}),this.options.inactivityConfig.onInactivity&&this.options.inactivityConfig.onInactivity(),this.clearAuth()}on(e,t){this.eventHandlers.has(e)||this.eventHandlers.set(e,new Set),this.eventHandlers.get(e).add(t)}off(e,t){let n=this.eventHandlers.get(e);n&&n.delete(t)}emit(e,t){let n=this.eventHandlers.get(e);n&&n.forEach(n=>{try{n(t)}catch(t){console.error(`Error in ${e} handler:`,t)}})}extractTokenValue(e){return e.metadata?.accessToken??e.metadata?.token??e.context?.metadata?.token}restoreFromStorage(){try{let e=this.options.storage.getValue(`${this.options.storageKey}_context`);if(e){let t=JSON.parse(e);this.state={authenticated:t.authenticated,context:t.context,token:t.token,expiresAt:t.expiresAt?new Date(t.expiresAt):void 0,refreshToken:t.refreshToken,refreshTokenExpiresAt:t.refreshTokenExpiresAt?new Date(t.refreshTokenExpiresAt):void 0,sessionMetadata:t.sessionMetadata?{...t.sessionMetadata,loginTime:new Date(t.sessionMetadata.loginTime)}:void 0},this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh();return}}catch(e){console.error(`Error restoring auth context from storage:`,e)}let e=this.options.storage.getToken();e&&(this.state={authenticated:!0,token:e})}persistToStorage(){try{this.state.token&&this.options.storage.setToken(this.state.token);let e={authenticated:this.state.authenticated,context:this.state.context,token:this.state.token,expiresAt:this.state.expiresAt?.toISOString(),refreshToken:this.state.refreshToken,refreshTokenExpiresAt:this.state.refreshTokenExpiresAt?.toISOString(),sessionMetadata:this.state.sessionMetadata?{...this.state.sessionMetadata,loginTime:this.state.sessionMetadata.loginTime.toISOString()}:void 0};this.options.storage.setValue(`${this.options.storageKey}_context`,JSON.stringify(e))}catch(e){console.error(`Error persisting auth state to storage:`,e)}}clearStorage(){this.options.storage.removeToken(),this.options.storage.removeValue(`${this.options.storageKey}_context`)}notifyCrossTabSync(e){if(this.options.crossTabSync.enabled&&typeof window<`u`)try{let t={type:e,timestamp:Date.now()};this.options.storage.setValue(this.options.crossTabSync.syncKey,JSON.stringify(t))}catch(e){console.error(`Error notifying cross-tab sync:`,e)}}scheduleRefresh(){if(this.cancelRefresh(),!this.state.expiresAt)return;let e=Math.max(0,this.state.expiresAt.getTime()-Date.now()-this.options.refreshThreshold);this.refreshTimer=setTimeout(async()=>{this.state.refreshToken&&this.options.refreshConfig?await this.refreshToken():this.emit(`token-refreshed`,{needsRefresh:!0})},e)}cancelRefresh(){this.refreshTimer!==void 0&&(clearTimeout(this.refreshTimer),this.refreshTimer=void 0)}generateSessionId(){return`${Date.now()}-${Math.random().toString(36).slice(2,11)}`}destroy(){this.cancelRefresh(),this.cancelInactivityTimer(),this.disableCrossTabSync(),typeof window<`u`&&this.activityListener&&((this.options.inactivityConfig.events||[`click`,`keypress`,`mousemove`]).forEach(e=>{window.removeEventListener(e,this.activityListener)}),this.activityListener=void 0),this.eventHandlers.clear()}},Ks=class{baseUrl;backendConfigs;backendClients;poolEntries;auth;middleware;defaultTimeout;defaultHeaders;healthCheckInterval;healthCheckTimer;enableHealthChecks;constructor(e){this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.backendConfigs=new Map(Object.entries(e.backends)),this.backendClients=new Map,this.poolEntries=new Map,this.auth=e.auth,this.middleware=e.middleware,this.defaultTimeout=e.defaultTimeout||3e4,this.defaultHeaders=e.defaultHeaders||{},this.healthCheckInterval=e.healthCheckInterval||3e4,this.enableHealthChecks=e.enableHealthChecks||!1;for(let[e,t]of this.backendConfigs)this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0});this.enableHealthChecks&&this.startHealthChecks()}get(e){let t=this.backendClients.get(e);if(t)return t;let n=this.backendConfigs.get(e);if(!n)throw Error(`Backend '${e}' not found in pool`);let r;return n.auth&&(r=n.auth instanceof Gs?n.auth:new Gs(n.auth)),t=new Bs({name:e,config:n,baseUrl:this.baseUrl,auth:r||this.auth,middleware:this.middleware,defaultTimeout:this.defaultTimeout,defaultHeaders:this.defaultHeaders}),this.backendClients.set(e,t),t}has(e){return this.backendConfigs.has(e)}getNames(){return Array.from(this.backendConfigs.keys())}async connect(e){await this.get(e).connect();let t=this.poolEntries.get(e);t&&(t.connected=!0,t.healthy=!0)}async connectAll(){let e=Array.from(this.backendConfigs.keys()).map(e=>this.connect(e));await Promise.all(e)}async disconnect(e){let t=this.backendClients.get(e);if(t){await t.disconnect();let n=this.poolEntries.get(e);n&&(n.connected=!1)}}async disconnectAll(){let e=Array.from(this.backendClients.keys()).map(e=>this.disconnect(e));await Promise.all(e)}isConnected(e){return this.backendClients.get(e)?.isConnected()||!1}allConnected(){for(let e of this.backendConfigs.keys())if(!this.isConnected(e))return!1;return!0}getMetrics(e){let t=this.backendClients.get(e);if(t)return t.getMetrics();let n=this.backendConfigs.get(e);return{id:e,url:n?`${this.baseUrl}${n.path}`:this.baseUrl,state:Rs.DISCONNECTED,transport:n?.transport||`http`,requestsSent:0,responsesReceived:0,errors:0}}getAggregatedMetrics(){let e={},t=0,n=0,r=0,i=0,a=0;for(let o of this.backendConfigs.keys()){let s=this.getMetrics(o);e[o]=s,t+=s.requestsSent,n+=s.responsesReceived,r+=s.errors,s.avgLatency!==void 0&&(i+=s.avgLatency,a++)}return{backends:e,totalRequestsSent:t,totalResponsesReceived:n,totalErrors:r,avgLatency:a>0?i/a:0}}getPoolEntry(e){return this.poolEntries.get(e)}getAllPoolEntries(){return Array.from(this.poolEntries.values())}async checkHealth(e){let t=this.poolEntries.get(e);if(!t)return!1;try{let n=this.backendClients.get(e);if(!n)return t.healthy=!1,t.lastHealthCheck=Date.now(),!1;let r=n.isConnected();return t.healthy=r,t.lastHealthCheck=Date.now(),r}catch{return t.healthy=!1,t.lastHealthCheck=Date.now(),!1}}async checkAllHealth(){let e=new Map,t=Array.from(this.backendConfigs.keys()).map(async t=>{let n=await this.checkHealth(t);e.set(t,n)});return await Promise.all(t),e}getHealthyBackends(){return Array.from(this.poolEntries.values()).filter(e=>e.healthy).map(e=>e.name)}getUnhealthyBackends(){return Array.from(this.poolEntries.values()).filter(e=>!e.healthy).map(e=>e.name)}startHealthChecks(){this.healthCheckTimer||=setInterval(async()=>{await this.checkAllHealth()},this.healthCheckInterval)}stopHealthChecks(){this.healthCheckTimer&&=(clearInterval(this.healthCheckTimer),void 0)}addBackend(e,t){if(this.backendConfigs.has(e))throw Error(`Backend '${e}' already exists in pool`);this.backendConfigs.set(e,t),this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0})}async removeBackend(e){let t=this.backendClients.get(e);t&&(await t.destroy(),this.backendClients.delete(e)),this.backendConfigs.delete(e),this.poolEntries.delete(e)}async updateBackend(e,t){if(!this.backendConfigs.has(e))throw Error(`Backend '${e}' not found in pool`);let n=this.backendClients.get(e);n&&(await n.destroy(),this.backendClients.delete(e)),this.backendConfigs.set(e,t),this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0})}async destroy(){this.stopHealthChecks();let e=Array.from(this.backendClients.values()).map(e=>e.destroy());await Promise.all(e),this.backendClients.clear(),this.backendConfigs.clear(),this.poolEntries.clear()}},qs=class{config;defaultBackend;availableBackends;constructor(e,t,n){this.config=e,this.defaultBackend=t,this.availableBackends=new Set(n||[])}resolve(e){let t=this.parseServiceName(e);if(t.backend)return this.availableBackends.size>0&&!this.availableBackends.has(t.backend)?(console.warn(`ServiceRouter: Backend '${t.backend}' not found in available backends, using default backend '${this.defaultBackend}'`),this.defaultBackend):t.backend;let n=t.service;if(this.config.services?.[n])return this.config.services[n];if(this.config.patterns){for(let{pattern:e,backend:t}of this.config.patterns)if(this.matchPattern(n,e))return t}return this.defaultBackend}getServiceName(e){return this.parseServiceName(e).service}parseServiceName(e){let t=e.split(`.`);if(t.length>=2){let n=t[0];if((this.availableBackends.has(n)||this.config.services?.[e]===void 0)&&this.availableBackends.size>0&&this.availableBackends.has(n))return{backend:n,service:t.slice(1).join(`.`)}}return{service:e}}matchPattern(e,t){return t instanceof RegExp?t.test(e):e===t||e.startsWith(`${t}.`)||e.startsWith(t)}addServiceMapping(e,t){this.config.services||(this.config.services={}),this.config.services[e]=t}removeServiceMapping(e){return this.config.services?.[e]!==void 0&&(delete this.config.services[e],!0)}addPattern(e,t){this.config.patterns||(this.config.patterns=[]),this.config.patterns.push({pattern:e,backend:t})}getConfig(){return this.config}getDefaultBackend(){return this.defaultBackend}setDefaultBackend(e){this.defaultBackend=e}setAvailableBackends(e){this.availableBackends=new Set(e)}isBackendAvailable(e){return this.availableBackends.size===0||this.availableBackends.has(e)}},cs(),Js=class{baseUrl;pool;router;middleware;defaultBackend;backendNames;eventListeners=new Map;transportUnsubs=[];constructor(e){if(this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.backendNames=Object.keys(e.backends),this.defaultBackend=e.defaultBackend||this.backendNames[0]||``,this.defaultBackend&&!this.backendNames.includes(this.defaultBackend))throw Error(`Default backend '${this.defaultBackend}' not found in backends configuration`);if(this.middleware=new ss,e.shared?.middleware)for(let t of e.shared.middleware)this.middleware.use(t.middleware,t.config,t.stage);let t={baseUrl:this.baseUrl,backends:e.backends,auth:e.shared?.auth,middleware:this.middleware,defaultTimeout:e.shared?.timeout,defaultHeaders:e.shared?.headers};this.pool=new Ks(t),this.router=new qs(e.routing||{},this.defaultBackend,this.backendNames)}backend(e){return this.pool.get(e)}service(e){let t=this.router.resolve(e),n=this.router.getServiceName(e);return this.pool.get(t).service(n)}async invoke(e,t,n,r=[],i){return await this.pool.get(e).invoke(t,n,r,i)}getMetrics(){return this.pool.getAggregatedMetrics()}isConnected(e){return e?this.pool.isConnected(e):this.pool.allConnected()}async connect(e){e?await this.pool.connect(e):await this.pool.connectAll()}async disconnect(e){e?await this.pool.disconnect(e):await this.pool.disconnectAll()}getMiddleware(){return this.middleware}on(e,t){let n=this.eventListeners.get(e);return n||(n=new Set,this.eventListeners.set(e,n),this.wireTransportEvents()),n.add(t),()=>{this.eventListeners.get(e)?.delete(t)}}off(e,t){this.eventListeners.get(e)?.delete(t)}emitEvent(e,t){let n=this.eventListeners.get(e);if(n&&n.size!==0)for(let e of n)try{e(t)}catch{}}wireTransportEvents(){if(!(this.transportUnsubs.length>0))for(let e of this.backendNames){let t=this.pool.get(e);if(typeof t.on!=`function`)continue;let n=()=>this.emitEvent(`reconnect`,e),r=()=>this.emitEvent(`disconnect`,e),i=t.on(`reconnect`,n),a=t.on(`disconnect`,r);typeof i==`function`&&this.transportUnsubs.push(i),typeof a==`function`&&this.transportUnsubs.push(a)}}async destroy(){for(let e of this.transportUnsubs)try{e()}catch{}this.transportUnsubs.length=0,this.eventListeners.clear(),await this.pool.destroy(),this.middleware.clear()}getRouter(){return this.router}getPool(){return this.pool}getBackendNames(){return[...this.backendNames]}getDefaultBackend(){return this.defaultBackend}getBaseUrl(){return this.baseUrl}use(e,t,n){return this.middleware.use(e,t,n),this}async getHealth(){return await this.pool.checkAllHealth()}getHealthyBackends(){return this.pool.getHealthyBackends()}getUnhealthyBackends(){return this.pool.getUnhealthyBackends()}},as(),J(),js(),rs(),J(),js(),J(),Fo(),J(),Fo(),J(),J(),Fo(),_s(),as(),ls(),ls(),hs(),J(),_s()})))()}var Xs;function Zs(){return(Zs=t((()=>{Xs={PRE_REQUEST:`pre-request`,POST_RESPONSE:`post-response`,ERROR:`error`}})))()}function Qs(e){if(!e||typeof e!=`object`)return;let t=e,n=[t.status,t.statusCode,t.code,t.response?.status,t.data?.code,t.details?.error?.code,t.data?.error?.code];for(let e of n){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e==`string`&&/^\d{3}$/.test(e))return Number(e)}}function $s(e){let t=Qs(e);return t===408||t===504||e?.code===`TIMEOUT`||/\bRequest timeout after \d+ms\b|^HTTP (?:408|504)\b|^Gateway Time-?out\b/i.test(e?.message??``)}function ec(){return(ec=t((()=>{})))()}function tc(e,t){return $.invoke(`daemon`,`OmnitronProject`,e,[t],{timeout:a})}function nc(e,...t){let n=e===`signIn`||e===`validateToken`||e===`refreshSession`;return $.invoke(`daemon`,`OmnitronAuth`,e,t,n?{skipAuth:!0}:void 0)}function rc(e){try{let t=e.split(`.`);if(t.length!==3)return null;let n=atob(t[1].replace(/-/g,`+`).replace(/_/g,`/`));return JSON.parse(n)}catch{return null}}function ic(){let e=sessionStorage.getItem(cc);return e?rc(e)?.sid??null:null}function ac(e){lc.setToken(e)}function oc(){lc.clearAuth()}function sc(){return sessionStorage.getItem(cc)}var cc,lc,$,uc,dc,fc,pc,mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc,Tc,Ec,Dc;function Oc(){return(Oc=t((()=>{Ys(),Zs(),i(),cc=`omnitron_token`,lc=new Gs({storage:new Hs(cc),storageKey:cc,autoRefresh:!1,autoAttach:!0,crossTabSync:{enabled:!1},inactivityConfig:{timeout:0}}),$=vo({baseUrl:``,backends:{daemon:{path:``,auth:lc}},defaultBackend:`daemon`}),$.use(async(e,t)=>{if(await t(),Qs(e.error)!==401||typeof window>`u`||window.location.pathname.startsWith(`/auth/`))return;let n=encodeURIComponent(window.location.pathname+window.location.search+window.location.hash);window.location.href=`/auth/sign-in?returnTo=${n}`},{name:`session-expired-redirect`,priority:10},Xs.ERROR),uc=$.daemon.OmnitronDaemon,dc=$.daemon.OmnitronAuth,fc=$.daemon.OmnitronLogs,$.daemon.OmnitronFleet,pc=$.daemon.OmnitronAlerts,mc=$.daemon.OmnitronMetrics,hc=$.daemon.OmnitronInfra,gc=$.daemon.OmnitronDeploy,_c=$.daemon.OmnitronPipelines,vc=$.daemon.OmnitronTraces,$.daemon.OmnitronBackups,$.daemon.OmnitronKubernetes,$.daemon.OmnitronHealth,yc=$.daemon.OmnitronBackend,$.daemon.OmnitronDiscovery,$.daemon.OmnitronSecrets,bc=$.daemon.OmnitronAudit,xc=$.daemon.OmnitronProject,Sc=$.daemon.OmnitronSystemInfo,Cc=$.daemon.OmnitronNodes,wc=$.daemon.OmnitronTerminal,Tc=$.daemon.OmnitronAccess,Ec=$.daemon.OmnitronFiles,Dc=$.daemon.OmnitronRelease})))()}export{Ys as A,w as B,ac as C,ec as D,vc as E,Ye as F,Me as H,Xe as I,Ze as L,Bn as M,Nt as N,$s as O,Mn as P,$e as R,Dc as S,wc as T,Lt as U,ke as V,fc as _,nc as a,_c as b,uc as c,Ec as d,ic as f,tc as g,Oc as h,dc as i,zn as j,Is as k,$ as l,hc as m,pc as n,yc as o,sc as p,bc as r,oc as s,Tc as t,gc as u,mc as v,Sc as w,xc as x,Cc as y,Ln as z};
3
+ Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let f=w(),p;if(t){let e=typeof t==`string`?h(t):t;l(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),p=e}else p=f;let m=p.pathname||`/`,g=m;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);g=`/`+m.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let _=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):v(e,{pathname:g});u(d||_!=null,`No routes matched location "${p.pathname}${p.search}${p.hash}" `),u(_==null||_[_.length-1].route.element!==void 0||_[_.length-1].route.Component!==void 0||_[_.length-1].route.lazy!==void 0,`Matched leaf route at location "${p.pathname}${p.search}${p.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let y=Re(_&&_.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:j([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:j([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&y?D.createElement(hn.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...p},navigationType:`POP`}},y):y}function Fe(){let e=Ge(),t=he(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=D.createElement(D.Fragment,null,D.createElement(`p`,null,`💿 Hey developer 👋`),D.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,D.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,D.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),D.createElement(D.Fragment,null,D.createElement(`h2`,null,`Unexpected Application Error!`),D.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?D.createElement(`pre`,{style:i},n):null,o)}function Ie({children:e,error:t}){let{basename:n,navigator:r}=D.useContext(M);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=we(t.digest);if(e){let i=wn.get(t);if(i)throw i;let a=_e(e.location,n),o=a.absoluteURL||a.to;if(xe(e.location,o,ve(r),`allow-explicit`),Se(o))throw Error(`Invalid redirect location`);if(rn&&!wn.get(t)){if(a.isExternal||e.reloadDocument)window.location.href=o;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw wn.set(t,n),n}}return D.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${o}`})}}return e}function Le({routeContext:e,match:t,children:n}){let r=D.useContext(ln);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),D.createElement(N.Provider,{value:e},n)}function Re(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);l(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,u=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},pattern:ge(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let l,d=!1,f=null,p=null;r&&(l=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||Sn,o&&(s<0&&c===0?(qe(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=l?f:d?p:n.route.Component?D.createElement(n.route.Component,null):n.route.element?n.route.element:e,D.createElement(Le,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?D.createElement(Cn,{location:r.location,revalidation:r.revalidation,component:f,error:l,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:u}):h()},null)}function ze(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Be(e){let t=D.useContext(ln);return l(t,ze(e)),t}function Ve(e){let t=D.useContext(un);return l(t,ze(e)),t}function He(e){let t=D.useContext(N);return l(t,ze(e)),t}function Ue(e){let t=He(e),n=t.matches[t.matches.length-1];return l(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function We(){return Ue(`useRouteId`)}function Ge(){let e=D.useContext(gn),t=Ve(`useRouteError`),n=Ue(`useRouteError`);return e===void 0?t.errors?.[n]:e}function Ke(){let{router:e}=Be(`useNavigate`),t=Ue(`useNavigate`),n=D.useRef(!1);return Oe(()=>{n.current=!0}),D.useCallback(async(r,i={})=>{u(n.current,bn),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}function qe(e,t,n){!t&&!Tn[e]&&(Tn[e]=!0,u(!1,n))}function Je({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return Pe(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function Ye({to:e,replace:t,state:n,relative:r}){l(De(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i,navigator:a}=O.useContext(M);u(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:o}=O.useContext(N),{pathname:s}=w(),c=ke(),d=S(e,me(o),s,r===`path`);xe(typeof e==`string`?e:m(e),a.createHref(d),ve(a),`reject`);let f=JSON.stringify(d);return O.useEffect(()=>{c(JSON.parse(f),{replace:t,state:n,relative:r})},[c,f,r,t,n]),null}function Xe(e){return je(e.context)}function Ze(e){l(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function Qe({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,useTransitions:o}){l(!De(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=O.useMemo(()=>({basename:s,navigator:i,static:a,useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=h(n));let{pathname:d=`/`,search:f=``,hash:p=``,state:m=null,key:g=`default`,mask:_}=n,v=O.useMemo(()=>{let e=x(d,s);return e==null?null:{location:{pathname:e,search:f,hash:p,state:m,key:g,mask:_},navigationType:r}},[s,d,f,p,m,g,r,_]);return u(v!=null,`<Router basename="${s}"> is not able to match the URL "${d}${f}${p}" because it does not start with the basename, so the <Router> won't render anything.`),v==null?null:O.createElement(M.Provider,{value:c},O.createElement(hn.Provider,{children:t,value:v}))}function $e({children:e,location:t}){return Ne(et(e),t)}function et(e,t=[]){let n=[];return O.Children.forEach(e,(e,r)=>{if(!O.isValidElement(e))return;let i=[...t,r];if(e.type===O.Fragment){n.push.apply(n,et(e.props.children,i));return}l(e.type===Ze,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),l(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=et(e.props.children,i)),n.push(a)}),n}function tt(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function nt(e){return tt(e)&&e.tagName.toLowerCase()===`button`}function rt(e){return tt(e)&&e.tagName.toLowerCase()===`form`}function it(e){return tt(e)&&e.tagName.toLowerCase()===`input`}function at(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function ot(e,t){return e.button===0&&(!t||t===`_self`)&&!at(e)}function st(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function ct(e,t){let n=st(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}function lt(){if(On===null)try{new FormData(document.createElement(`form`),0),On=!1}catch{On=!0}return On}function ut(e){return e!=null&&!kn.has(e)?(u(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Dn}"`),null):e}function dt(e,t){let n,r,i,a,o;if(rt(e)){let o=e.getAttribute(`action`);r=o?x(o,t):null,n=e.getAttribute(`method`)||En,i=ut(e.getAttribute(`enctype`))||Dn,a=new FormData(e)}else if(nt(e)||it(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?x(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||En,i=ut(e.getAttribute(`formenctype`))||ut(o.getAttribute(`enctype`))||Dn,a=new FormData(o,e),!lt()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(tt(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=En,r=null,i=Dn,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}function ft(e,t){if(e===!1||e==null)throw Error(t)}function pt(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return i.pathname=n?i.pathname.endsWith(`/`)?`${i.pathname}_.${r}`:`${i.pathname}.${r}`:i.pathname===`/`?`_root.${r}`:t&&x(i.pathname,t)===`/`?`${C(t)}/_root.${r}`:`${C(i.pathname)}.${r}`,i}async function mt(e,t){if(e.id in t)return t[e.id];try{let n=await import(e.module);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function ht(e){return e!=null&&typeof e.page==`string`}function gt(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function _t(e,t,n){return St((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await mt(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(gt).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function vt(e,t,n,r,i,a){let o=(e,t)=>!n[t]||e.route.id!==n[t].route.id,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function yt(e,t,{includeHydrateFallback:n}={}){return bt(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function bt(e){return[...new Set(e)]}function xt(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function St(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!ht(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(xt(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function Ct(){let e=k.useContext(ln);return ft(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function wt(){let e=k.useContext(un);return ft(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}function Tt(){let e=k.useContext(An);return ft(e,`You must render this element inside a <HydratedRouter> element`),e}function Et(e,t){let n=k.useContext(An),[r,i]=k.useState(!1),[a,o]=k.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=k.useRef(null);k.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),k.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:Dt(s,p),onBlur:Dt(c,m),onMouseEnter:Dt(l,p),onMouseLeave:Dt(u,m),onTouchStart:Dt(d,p)}]:[a,f,{}]:[!1,f,{}]}function Dt(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function Ot({page:e,...t}){let n=Ce(),{nonce:r}=Tt(),{router:i}=Ct(),a=k.useMemo(()=>v(i.routes,e,i.basename),[i.routes,e,i.basename]);return a?(t.nonce==null&&r&&(t={...t,nonce:r}),n?k.createElement(At,{page:e,matches:a,...t}):k.createElement(jt,{page:e,matches:a,...t})):null}function kt(e){let{manifest:t,routeModules:n}=Tt(),[r,i]=k.useState([]);return k.useEffect(()=>{let r=!1;return _t(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function At({page:e,matches:t,...n}){let r=w(),{future:i}=Tt(),{basename:a}=Ct(),o=k.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=pt(e,a,i.v8_trailingSlashAwareDataRequests,`rsc`),o=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?o=!0:s.push(e.route.id);return o&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[a,i.v8_trailingSlashAwareDataRequests,e,r,t]);return k.createElement(k.Fragment,null,o.map(e=>k.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function jt({page:e,matches:t,...n}){let r=w(),{future:i,manifest:a,routeModules:o}=Tt(),{basename:s}=Ct(),{loaderData:c,matches:l}=wt(),u=k.useMemo(()=>vt(e,t,l,a,r,`data`),[e,t,l,a,r]),d=k.useMemo(()=>vt(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=k.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];t&&t.hasLoader&&(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=pt(e,s,i.v8_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.v8_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=k.useMemo(()=>yt(d,a),[d,a]),m=kt(d);return k.createElement(k.Fragment,null,f.map(e=>k.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>k.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>k.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function Mt(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}function Nt({basename:e,children:t,useTransitions:n,window:r}){let i=A.useRef();i.current??=c({window:r,v5Compat:!0});let a=i.current,[o,s]=A.useState({action:a.action,location:a.location}),l=A.useCallback(e=>{n===!1?s(e):A.startTransition(()=>s(e))},[n]);return A.useLayoutEffect(()=>a.listen(l),[a,l]),A.createElement(Qe,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:a,useTransitions:n})}function Pt(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ft(e){let t=A.useContext(ln);return l(t,Pt(e)),t}function It(e,{target:t,replace:n,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c,useTransitions:l}={}){let u=ke(),d=w(),f=T(e,{relative:o});return A.useCallback(p=>{if(ot(p,t)){p.preventDefault();let t=n===void 0?m(d)===m(f):n,h=()=>u(e,{replace:t,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c});l?A.startTransition(()=>h()):h()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}function Lt(e){u(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=A.useRef(st(e)),n=A.useRef(!1),r=w(),i=A.useMemo(()=>ct(r.search,n.current?null:t.current),[r.search]),a=ke();return[i,A.useCallback((e,t)=>{let r=st(typeof e==`function`?e(new URLSearchParams(i)):e);n.current=!0,a(`?`+r,t)},[a,i])]}function Rt(){let{router:e}=Ft(`useSubmit`),{basename:t}=A.useContext(M),n=We(),r=e.fetch,i=e.navigate;return A.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=dt(e,t);if(a.navigate===!1){let e=a.fetcherKey||In();await r(e,n,a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync})}else await i(a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function zt(e,{relative:t}={}){let{basename:n}=A.useContext(M),r=A.useContext(N);l(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...T(e||`.`,{relative:t})},o=w();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:j([n,a.pathname])),m(a)}function Bt(e,{relative:t}={}){let n=A.useContext(fn);l(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Ft(`useViewTransitionState`),i=T(e,{relative:t});if(!n.isTransitioning)return!1;let a=x(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=x(n.nextLocation.pathname,r)||n.nextLocation.pathname;return oe(i.pathname,o)!=null||oe(i.pathname,a)!=null}var E,D,O,Vt,k,A,Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,j,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,M,hn,N,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn,Pn,Fn,In;function Ln(){return(Ln=t((()=>{E=e(r(),1),D=e(r(),1),O=e(r(),1),r(),Vt=e(r(),1),k=e(r(),1),r(),r(),r(),A=e(r(),1),r(),Ht=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,Ut=/^[\\/]{2}/,Wt=`popstate`,Gt=/^:[\w-]+$/,Kt=3,qt=2,Jt=1,Yt=10,Xt=-2,Zt=e=>e===`*`,Qt=e=>e.replace(/[\\/]{2,}/g,`/`),j=e=>Qt(e.join(`/`)),$t=e=>C(e).replace(/^\/*/,`/`),en=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,tn=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,nn=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}},rn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`),an=new URL(`http://localhost`),on=[`POST`,`PUT`,`PATCH`,`DELETE`],new Set(on),sn=[`GET`,...on],new Set(sn),cn=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`],ln=E.createContext(null),ln.displayName=`DataRouter`,un=E.createContext(null),un.displayName=`DataRouterState`,dn=E.createContext(!1),fn=E.createContext({isTransitioning:!1}),fn.displayName=`ViewTransition`,pn=E.createContext(new Map),pn.displayName=`Fetchers`,mn=E.createContext(null),mn.displayName=`Await`,M=E.createContext(null),M.displayName=`Navigation`,hn=E.createContext(null),hn.displayName=`Location`,N=E.createContext({outlet:null,matches:[],isDataRoute:!1}),N.displayName=`Route`,gn=E.createContext(null),gn.displayName=`RouteError`,_n=`REACT_ROUTER_ERROR`,vn=`REDIRECT`,yn=`ROUTE_ERROR_RESPONSE`,bn=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`,xn=D.createContext(null),Sn=D.createElement(Fe,null),Cn=class extends D.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=Te(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:D.createElement(N.Provider,{value:this.props.routeContext},D.createElement(gn.Provider,{value:e,children:this.props.component}));return this.context?D.createElement(Ie,{error:e},t):t}},Cn.contextType=dn,wn=new WeakMap,Tn={},O.memo(Je),O.Component,En=`get`,Dn=`application/x-www-form-urlencoded`,On=null,kn=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]),Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`),An=k.createContext(void 0),An.displayName=`FrameworkContext`,Vt.Component,jn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{jn&&(window.__reactRouterVersion=`7.18.5`)}catch{}Mn=A.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,useTransitions:_}=A.useContext(M),v=typeof l==`string`&&Ht.test(l),y=_e(l,h);l=y.to;let ee=Ee(l,{relative:r}),b=w(),te=null;if(o){let e=S(o,[],b.mask?b.mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:j([h,e.pathname])),te=g.createHref(e)}let[ne,re,ie]=Et(n,p),ae=It(l,{replace:a,mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,defaultShouldRevalidate:f,useTransitions:_});function oe(t){e&&e(t),t.defaultPrevented||ae(t)}let se=!(y.isExternal||i),ce=A.createElement(`a`,{...p,...ie,href:(se?te:void 0)||y.absoluteURL||ee,onClick:se?oe:e,ref:Mt(m,re),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return ne&&!v?A.createElement(A.Fragment,null,ce,A.createElement(Ot,{page:ee})):ce}),Mn.displayName=`Link`,Nn=A.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=T(a,{relative:c.relative}),d=w(),f=A.useContext(un),{navigator:p,basename:m}=A.useContext(M),h=f!=null&&Bt(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=x(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,ee=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,b=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),te={isActive:ee,isPending:b,isTransitioning:h},ne=ee?e:void 0,re;re=typeof n==`function`?n(te):[n,ee?`active`:null,b?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let ie=typeof i==`function`?i(te):i;return A.createElement(Mn,{...c,"aria-current":ne,className:re,ref:l,style:ie,to:a,viewTransition:o},typeof s==`function`?s(te):s)}),Nn.displayName=`NavLink`,Pn=A.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=En,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m)=>{let{useTransitions:h}=A.useContext(M),g=Rt(),_=zt(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&Ht.test(s);return A.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f});h&&n!==!1?A.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})}),Pn.displayName=`Form`,Fn=0,In=()=>`__${String(++Fn)}__`})))()}var Rn,zn;function Bn(){return(Bn=t((()=>{Rn=e(r()),zn=Rn.createContext(null)})))()}var Vn;function Hn(){return(Hn=t((()=>{Vn=2**53-1>>>0})))()}var Un;function Wn(){return(Wn=t((()=>{Hn(),Un=class{value=0;constructor(e=0){this.reset(e)}next(){return this.value=this.value===Vn?1:this.value+1,this.value}reset(e=0){this.value=e>>>0}}})))()}function Gn(){let e=new Uint8Array(2);return qn().getRandomValues(e),(e[0]<<8|e[1])&4095}function Kn(){let e=Date.now();e>Jn?(Jn=e,Yn=Gn()):(Yn++,Yn>4095&&(Jn++,Yn=Gn()));let t=Jn,n=Math.trunc(t/4294967296),r=t>>>0,i=new Uint8Array(8);return qn().getRandomValues(i),P[n>>>8&255]+P[n&255]+P[r>>>24&255]+P[r>>>16&255]+`-`+P[r>>>8&255]+P[r&255]+`-`+P[112|Yn>>>8&15]+P[Yn&255]+`-`+P[128|i[0]&63]+P[i[1]]+`-`+P[i[2]]+P[i[3]]+P[i[4]]+P[i[5]]+P[i[6]]+P[i[7]]}var P,qn,Jn,Yn;function Xn(){return(Xn=t((()=>{P=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),qn=()=>globalThis.crypto,Jn=0,Yn=0})))()}var Zn;function Qn(){return(Qn=t((()=>{Xn(),Zn=class{id;peerId;meta;parentId=``;constructor(e,t,n){this.id=e,this.peerId=t,this.meta=n}static nextId(){return Kn()}}})))()}var $n;function er(){return(er=t((()=>{$n=class{defId;constructor(e){if(this.defId=e,!e||typeof e!=`string`)throw Error(`Service definition ID must be a non-empty string`)}}})))()}function tr(e){return e>=200&&e<300?or.SUCCESS:e===401||e===407||e===403?or.AUTH:e===422?or.VALIDATION:e===429?or.RATE_LIMIT:e>=400&&e<500?or.CLIENT:e>=500&&e<600?or.SERVER:or.CUSTOM}function nr(e){return e>=100&&e<600?e:500}function rr(e){return sr[e]?.retryable===!0}function ir(e){return sr[e]?.name??`ERROR_${e}`}function ar(e){return sr[e]?.message??`Error ${e}`}var F,or,sr;function cr(){return(cr=t((()=>{(function(e){e[e.OK=200]=`OK`,e[e.CREATED=201]=`CREATED`,e[e.ACCEPTED=202]=`ACCEPTED`,e[e.NO_CONTENT=204]=`NO_CONTENT`,e[e.BAD_REQUEST=400]=`BAD_REQUEST`,e[e.UNAUTHORIZED=401]=`UNAUTHORIZED`,e[e.PAYMENT_REQUIRED=402]=`PAYMENT_REQUIRED`,e[e.FORBIDDEN=403]=`FORBIDDEN`,e[e.NOT_FOUND=404]=`NOT_FOUND`,e[e.METHOD_NOT_ALLOWED=405]=`METHOD_NOT_ALLOWED`,e[e.NOT_ACCEPTABLE=406]=`NOT_ACCEPTABLE`,e[e.PROXY_AUTHENTICATION_REQUIRED=407]=`PROXY_AUTHENTICATION_REQUIRED`,e[e.REQUEST_TIMEOUT=408]=`REQUEST_TIMEOUT`,e[e.CONFLICT=409]=`CONFLICT`,e[e.GONE=410]=`GONE`,e[e.LENGTH_REQUIRED=411]=`LENGTH_REQUIRED`,e[e.PRECONDITION_FAILED=412]=`PRECONDITION_FAILED`,e[e.PAYLOAD_TOO_LARGE=413]=`PAYLOAD_TOO_LARGE`,e[e.URI_TOO_LONG=414]=`URI_TOO_LONG`,e[e.UNSUPPORTED_MEDIA_TYPE=415]=`UNSUPPORTED_MEDIA_TYPE`,e[e.RANGE_NOT_SATISFIABLE=416]=`RANGE_NOT_SATISFIABLE`,e[e.EXPECTATION_FAILED=417]=`EXPECTATION_FAILED`,e[e.IM_A_TEAPOT=418]=`IM_A_TEAPOT`,e[e.MISDIRECTED_REQUEST=421]=`MISDIRECTED_REQUEST`,e[e.UNPROCESSABLE_ENTITY=422]=`UNPROCESSABLE_ENTITY`,e[e.LOCKED=423]=`LOCKED`,e[e.FAILED_DEPENDENCY=424]=`FAILED_DEPENDENCY`,e[e.TOO_EARLY=425]=`TOO_EARLY`,e[e.UPGRADE_REQUIRED=426]=`UPGRADE_REQUIRED`,e[e.PRECONDITION_REQUIRED=428]=`PRECONDITION_REQUIRED`,e[e.TOO_MANY_REQUESTS=429]=`TOO_MANY_REQUESTS`,e[e.REQUEST_HEADER_FIELDS_TOO_LARGE=431]=`REQUEST_HEADER_FIELDS_TOO_LARGE`,e[e.UNAVAILABLE_FOR_LEGAL_REASONS=451]=`UNAVAILABLE_FOR_LEGAL_REASONS`,e[e.INTERNAL_SERVER_ERROR=500]=`INTERNAL_SERVER_ERROR`,e[e.NOT_IMPLEMENTED=501]=`NOT_IMPLEMENTED`,e[e.BAD_GATEWAY=502]=`BAD_GATEWAY`,e[e.SERVICE_UNAVAILABLE=503]=`SERVICE_UNAVAILABLE`,e[e.GATEWAY_TIMEOUT=504]=`GATEWAY_TIMEOUT`,e[e.HTTP_VERSION_NOT_SUPPORTED=505]=`HTTP_VERSION_NOT_SUPPORTED`,e[e.VARIANT_ALSO_NEGOTIATES=506]=`VARIANT_ALSO_NEGOTIATES`,e[e.INSUFFICIENT_STORAGE=507]=`INSUFFICIENT_STORAGE`,e[e.LOOP_DETECTED=508]=`LOOP_DETECTED`,e[e.NOT_EXTENDED=510]=`NOT_EXTENDED`,e[e.NETWORK_AUTHENTICATION_REQUIRED=511]=`NETWORK_AUTHENTICATION_REQUIRED`,e[e.VALIDATION_ERROR=422]=`VALIDATION_ERROR`,e[e.INVALID_ARGUMENT=400]=`INVALID_ARGUMENT`,e[e.PERMISSION_DENIED=403]=`PERMISSION_DENIED`,e[e.INTERNAL_ERROR=500]=`INTERNAL_ERROR`,e[e.RATE_LIMITED=429]=`RATE_LIMITED`,e[e.MULTIPLE_ERRORS=600]=`MULTIPLE_ERRORS`,e[e.UNKNOWN_ERROR=601]=`UNKNOWN_ERROR`})(F||={}),(function(e){e.SUCCESS=`success`,e.CLIENT=`client`,e.SERVER=`server`,e.AUTH=`auth`,e.VALIDATION=`validation`,e.RATE_LIMIT=`rate_limit`,e.CUSTOM=`custom`})(or||={}),sr={200:{name:`OK`},201:{name:`CREATED`},204:{name:`NO_CONTENT`},400:{name:`BAD_REQUEST`,message:`The request is invalid`},401:{name:`UNAUTHORIZED`,message:`Authentication is required`},403:{name:`FORBIDDEN`,message:`You do not have permission to access this resource`},404:{name:`NOT_FOUND`,message:`The requested resource was not found`},405:{name:`METHOD_NOT_ALLOWED`,message:`The requested method is not allowed`},408:{name:`REQUEST_TIMEOUT`,message:`The request timed out`,retryable:!0},409:{name:`CONFLICT`,message:`A conflict occurred`},410:{name:`GONE`},413:{name:`PAYLOAD_TOO_LARGE`,message:`The request payload is too large`},414:{name:`URI_TOO_LONG`,message:`The request URI is too long`},415:{name:`UNSUPPORTED_MEDIA_TYPE`,message:`The media type is not supported`},418:{name:`IM_A_TEAPOT`,message:`I'm a teapot`},422:{name:`UNPROCESSABLE_ENTITY`,message:`The request could not be processed`},429:{name:`TOO_MANY_REQUESTS`,message:`Too many requests, please try again later`,retryable:!0},500:{name:`INTERNAL_SERVER_ERROR`,message:`An internal server error occurred`,retryable:!0},501:{name:`NOT_IMPLEMENTED`,message:`The requested functionality is not implemented`},502:{name:`BAD_GATEWAY`,message:`Bad gateway`,retryable:!0},503:{name:`SERVICE_UNAVAILABLE`,message:`The service is temporarily unavailable`,retryable:!0},504:{name:`GATEWAY_TIMEOUT`,message:`Gateway timeout`,retryable:!0},507:{name:`INSUFFICIENT_STORAGE`,retryable:!0},511:{retryable:!0},600:{name:`MULTIPLE_ERRORS`,message:`Multiple errors occurred`},601:{name:`UNKNOWN_ERROR`,message:`An unknown error occurred`}}})))()}var lr,ur,dr,fr,pr;function mr(){return(mr=t((()=>{cr(),lr=new Set(Object.values(F).filter(e=>typeof e==`number`)),ur=-1,dr=class e extends Error{code;category;httpStatus;details;context;timestamp;requestId;correlationId;spanId;traceId;static stats={totalErrors:0,byCode:{},byCategory:{},lastReset:Date.now()};static cache=new Map;static pools=new Map;constructor(t){let n=t.message||ar(t.code);super(n),this.name=`TitanError`,this.code=t.code,this.category=tr(t.code),this.httpStatus=nr(t.code),this.details=t.details||{},this.context=t.context||{},this.timestamp=Date.now(),this.requestId=t.requestId,this.correlationId=t.correlationId,this.spanId=t.spanId,this.traceId=t.traceId,t.cause&&(this.cause=t.cause),Object.setPrototypeOf(this,new.target.prototype);let r=Error;r.captureStackTrace&&r.captureStackTrace(this,new.target),t.cause instanceof Error&&t.cause.stack&&(this.stack=`${this.stack}\nCaused by: ${t.cause.stack}`),e.updateStatistics(this)}static isTitanError(t){return t instanceof e}static getCached(t){return this.cache.has(t)||this.cache.set(t,new e({code:t})),this.cache.get(t)}static createPool(e){let t=new pr(e.size);return e.name&&this.pools.set(e.name,t),t}static updateStatistics(e){this.stats.totalErrors++;let t=lr.has(e.code)?e.code:ur;this.stats.byCode[t]=(this.stats.byCode[t]||0)+1,this.stats.byCategory[e.category]=(this.stats.byCategory[e.category]||0)+1}static getStatistics(){return{...this.stats,byCode:{...this.stats.byCode},byCategory:{...this.stats.byCategory}}}static getMetrics(e){let t=Date.now()-this.stats.lastReset,n=this.stats.totalErrors/(t/1e3),r=Object.entries(this.stats.byCode).sort((e,t)=>t[1]-e[1]).slice(0,10).map(([e,t])=>({code:parseInt(e),name:ir(parseInt(e)),count:t}));return{rate:n,totalErrors:this.stats.totalErrors,topErrors:r,byCategory:{...this.stats.byCategory},window:e.window,elapsed:t}}static resetStatistics(){this.stats={totalErrors:0,byCode:{},byCategory:{},lastReset:Date.now()}}static aggregate(e,t){return new fr(e,t)}static fromJSON(t){return new e({code:t.code,message:t.message,details:t.details,context:t.context,requestId:t.requestId,correlationId:t.correlationId,spanId:t.spanId,traceId:t.traceId})}isRetryable(){return rr(this.code)}getRetryStrategy(){return this.isRetryable()?this.code===F.TOO_MANY_REQUESTS?{shouldRetry:!0,delay:(this.details?.retryAfter||60)*1e3,maxAttempts:3}:{shouldRetry:!0,delay:1e3,maxAttempts:3,backoffFactor:2}:{shouldRetry:!1,delay:0,maxAttempts:0}}toJSON(){return{name:this.name,code:this.code,category:this.category,message:this.message,details:this.details,context:this.context,timestamp:this.timestamp,requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId}}withContext(t){return new e({code:this.code,message:this.message,details:this.details,context:{...this.context,...t},requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId})}withDetails(t){return new e({code:this.code,message:this.message,details:{...this.details,...t},context:this.context,requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId})}},fr=class extends dr{errors;summary;constructor(e,t){let n=e;if(t?.deduplicate){let t=new Set;n=e.filter(e=>{let n=`${e.code}-${e.message}`;return!t.has(n)&&(t.add(n),!0)})}let r=`${n.length} errors occurred`;super({code:F.MULTIPLE_ERRORS,message:r,details:{errors:n.map(e=>e.toJSON()),count:n.length}}),this.name=`AggregateError`,this.errors=n,this.summary=r}},pr=class{pool=[];maxSize;constructor(e){this.maxSize=e;for(let t=0;t<e;t++)this.pool.push(new dr({code:F.INTERNAL_ERROR}))}get size(){return this.pool.length}acquire(e,t){let n=this.pool.pop();if(!n)n=new dr({code:e,message:t});else{let r=n;r.code=e,r.httpStatus=nr(e),r.message=t||ar(e),r.category=tr(e),r.details={},r.context={},r.timestamp=Date.now(),r.requestId=void 0,r.correlationId=void 0,r.spanId=void 0,r.traceId=void 0}return n}release(e){this.pool.length<this.maxSize&&this.pool.push(e)}}})))()}var hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr;function Tr(){return(Tr=t((()=>{Wn(),hr=6,gr=7,_r=15,vr=16,yr=32,br=64,xr=128,Sr=new Un,Cr=class{id;flags=0;data;streamId;streamIndex;constructor(e){this.id=e}setType(e){this.flags=this.flags&-16|e&_r}getType(){return this.flags&_r}setImpulse(e){this.flags=this.flags&-65|e<<hr}getImpulse(){return(this.flags&br)>>hr}setError(e){this.flags=this.flags&-129|e<<gr}getError(){return(this.flags&xr)>>gr}setStreamInfo(e,t,n,r){this.streamId=e,this.streamIndex=t,this.flags=this.flags&-49|(n?vr:0)|(r?yr:0)}isStreamChunk(){return(this.flags&_r)===5}isLastChunk(){return(this.flags&vr)!==0}isLive(){return(this.flags&yr)!==0}static nextId(){return Sr.next()}static resetId(){Sr.reset()}},wr=(e,t,n,r)=>{let i=new Cr(e);return i.setImpulse(t),i.setType(n),i.data=r,i}})))()}var Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr;function Fr(){return(Fr=t((()=>{Er=Object.prototype,{hasOwnProperty:Dr}=Er,{toString:Or}=Er,Function.prototype.toString.call(Object),Object.prototype.toString.call(typeof process<`u`?process:0),{isArray:kr}=Array,Ar=e=>e!=null&&(!!e.constructor&&typeof e.constructor.isBuffer==`function`&&e.constructor.isBuffer(e)||!!e._isBuffer),jr=e=>{if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t===null?!0:t!==Object.prototype&&Object.getPrototypeOf(t)!==null?!1:Er.toString.call(e)===`[object Object]`},Number.isNaN,{isFinite:Mr}=Number,{isInteger:Nr}=Number,{isSafeInteger:Pr}=Number})))()}function Ir(){return(Ir=t((()=>{Fr()})))()}function Lr(){return(Lr=t((()=>{Fr(),Object.getOwnPropertyNames(Object.getPrototypeOf({}))})))()}function Rr(){return(Rr=t((()=>{Lr(),Fr()})))()}function zr(e){Br(e);let t=new Vr,n=0,r=e,i=()=>{if(n<r&&t.size>0){n++;let e=t.dequeue();e&&e()}},a=()=>{n--,i()},o=async(e,t,n)=>{let r=(async()=>e(...n))();t(r);try{await r}catch{}a()},s=(e,a,s)=>{t.enqueue(()=>{o(e,a,s)}),(async()=>{await Promise.resolve(),n<r&&t.size>0&&i()})()},c=(e,...t)=>new Promise(n=>{s(e,n,t)});return Object.defineProperties(c,{activeCount:{get:()=>n},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}},concurrency:{get:()=>r,set:e=>{Br(e),r=e,(typeof queueMicrotask<`u`?queueMicrotask:e=>Promise.resolve().then(e))(()=>{for(;n<r&&t.size>0;)i()})}},map:{async value(e,t){let n=e.map((e,n)=>this(t,e,n));return Promise.all(n)}}}),c}function Br(e){if(!((Number.isInteger(e)||e===1/0)&&e>0))throw TypeError("Expected `concurrency` to be a number from 1 and up")}var Vr;function Hr(){return(Hr=t((()=>{Vr=class{constructor(){this._size=0}enqueue(e){let t={value:e,next:void 0};this.tail?(this.tail.next=t,this.tail=t):this.head=this.tail=t,this._size++}dequeue(){let e=this.head;if(e)return this.head=e.next,this.head||(this.tail=void 0),this._size--,e.value}clear(){this.head=this.tail=void 0,this._size=0}get size(){return this._size}}})))()}function Ur(){return(Ur=t((()=>{Ir(),Lr(),Rr(),Hr(),Fr()})))()}var Wr;function Gr(){return(Gr=t((()=>{Ur(),Wr=class{constructor(e){this._events=new Map,this._eventsCount=0,this.onceListeners=new WeakMap,this.hasOnceListener=new Map,e&&e>=1&&this.setConcurrency(e)}eventNames(){return Array.from(this._events.keys())}listeners(e){let t=this._events.get(e);return t?Array.isArray(t)?t.map(e=>e.fn):[t.fn]:[]}listenerCount(e){let t=this._events.get(e);return t?Array.isArray(t)?t.length:1:0}emit(e,...t){let n=this._events.get(e);if(!n)return!1;if(!Array.isArray(n))n.once&&this.removeListener(e,n.fn),n.fn.apply(n.context,t);else{let r=this.hasOnceListener.get(e)?n.slice():n;for(let n=0;n<r.length;n++){let i=r[n];i&&i.once&&this.removeListener(e,i.fn),i&&i.fn.apply(i.context,t)}}return!0}on(e,t,n){return this.addListener(e,t,n,!1)}addListener(e,t,n,r=!1){if(typeof t!=`function`)throw TypeError(`The listener must be a function`);let i={fn:t,context:n||this,once:r||!1};r&&this.hasOnceListener.set(e,!0);let a=this._events.get(e);return a?Array.isArray(a)?a.push(i):this._events.set(e,[a,i]):(this._events.set(e,i),this._eventsCount++),this}once(e,t,n){if(typeof t!=`function`)throw TypeError(`The listener must be a function`);let r=!1,i=(...a)=>{if(this.removeListener(e,i),!r)return r=!0,t.apply(n||this,a)};return this.on(e,i),this.onceListeners.set(t,i),this}removeListener(e,t){let n=this.onceListeners.get(t);n&&(this.onceListeners.delete(t),t=n);let r=this._events.get(e);if(!r)return this;if(!Array.isArray(r))r.fn===t&&(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e));else{let n=r.filter(e=>e.fn!==t);n.length===0?(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e)):n.length===1&&n[0]?(this._events.set(e,n[0]),n[0].once||this.hasOnceListener.delete(e)):(this._events.set(e,n),n.some(e=>e.once)||this.hasOnceListener.delete(e))}return this}off(e,t){return this.removeListener(e,t)}removeAllListeners(e){return e?this._events.has(e)&&(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e)):(this._events.clear(),this._eventsCount=0,this.hasOnceListener.clear()),this}setConcurrency(e){return e>=1&&(this.limiter=zr(e)),this}emitParallel(e,...t){let n=this.listeners(e).map(e=>this._executeListener(e,t));return Promise.all(n)}emitSerial(e,...t){return this.listeners(e).reduce((e,n)=>e.then(e=>this._executeListener(n,t).then(t=>(e.push(t),e))),Promise.resolve([]))}emitReduce(e,...t){return this._emitReduceRun(e,t)}emitReduceRight(e,...t){return this._emitReduceRun(e,t,!0)}subscribe(e,t,n=!1){return n?this.once(e,t):this.on(e,t),()=>{this.removeListener(e,t)}}_emitReduceRun(e,t,n=!1){return(n?this.listeners(e).reverse():this.listeners(e)).reduce((e,t)=>e.then(e=>{let n=Array.isArray(e)?e:[e];return this._executeListener(t,n)}),Promise.resolve(t))}_executeListener(e,t){try{return this.limiter?this.limiter(()=>e(...t)):Promise.resolve(e(...t))}catch(e){return Promise.reject(e)}}}})))()}function Kr(){return(Kr=t((()=>{Gr()})))()}function qr(){return(qr=t((()=>{Gr(),Kr()})))()}function Jr(){return(Jr=t((()=>{Gr(),qr(),Kr()})))()}function Yr(e,t=!1){return t?{h:Number(e&Zr),l:Number(e>>Qr&Zr)}:{h:Number(e>>Qr&Zr)|0,l:Number(e&Zr)|0}}function Xr(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=Yr(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}var Zr,Qr;function $r(){return($r=t((()=>{Zr=BigInt(2**32-1),Qr=BigInt(32)})))()}function ei(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1}function ti(e,t=``){if(typeof e!=`number`)throw TypeError(fi(t)+`expected number, got `+typeof e);if(!Number.isSafeInteger(e)||e<0)throw RangeError(fi(t)+`expected integer >= 0, got `+e);return e}function ni(e,t=``){if(typeof e!=`boolean`)throw TypeError(fi(t)+`expected boolean, got type=`+typeof e);return e}function ri(e,t,n=``){if(ei(e)&&(t===void 0||e.length===t))return e;t!==void 0&&ti(t,`length`);let r=ei(e),i=t===void 0?``:` of length ${t}`,a=r?`length=${e.length}`:`type=${typeof e}`,o=fi(n)+`expected Uint8Array`+i+`, got `+a;throw r?RangeError(o):TypeError(o)}function ii(e,t=!0){if(e.destroyed)throw Error(`hash was destroyed`);if(t&&e.finished)throw Error(`digest() was already called`)}function ai(e,t){ri(e,void 0,`output`);let n=t.outputLen;if(!(e.length>=n))throw RangeError(`"output" expected length >= `+n)}function oi(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function si(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function ci(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function li(e){for(let t=0;t<e.length;t++)e[t]=ci(e[t]);return e}function ui(e,t,n=`opts`){return mi(e,`defaults`),t!==void 0&&mi(t,n),Object.assign(Object.create(null),e,t)}function di(e,t={}){if(typeof e!=`function`)throw TypeError(`"hashCons" expected function, got type=`+typeof e);t=ui({},t,`info`);let n=(t,n)=>e(n).update(t).digest(),r=e(void 0);return n.outputLen=r.outputLen,n.blockLen=r.blockLen,n.canXOF=r.canXOF,n.create=t=>e(t),Object.assign(n,t),Object.freeze(n)}var fi,pi,mi,hi,gi,_i;function vi(){return(vi=t((()=>{fi=e=>e?`"${e}" `:``,pi=(e,t)=>{if(typeof e!=`object`||!e||Array.isArray(e))throw TypeError((t===`object`?``:`"${t}" `)+`expected object, got type=`+typeof e)},mi=(e,t)=>{pi(e,t);let n=Object.getPrototypeOf(e);if(n!==Object.prototype&&n!==null)throw TypeError(`"${t}" expected plain object`);if(Object.hasOwn(e,`__proto__`))throw TypeError(`"${t}.__proto__" is not allowed`)},hi=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,gi=hi?e=>e:li,_i=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])})})))()}function yi(e,t=24){if(!(e instanceof Uint32Array))throw TypeError(`"s" expected Uint32Array(50), got type=`+typeof e);if(e.length!==50)throw RangeError(`"s" expected Uint32Array(50), got length=`+e.length);if(ti(t,`rounds`),t<1||t>24)throw Error(`"rounds" expected integer 1..24`);for(let n=24-t;n<24;n++){for(let t=0;t<10;t++)Ri[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let n=(t+8)%10,r=(t+2)%10,i=Ri[r],a=Ri[r+1],o=Ii(i,a,1)^Ri[n],s=Li(i,a,1)^Ri[n+1];for(let n=0;n<50;n+=10)e[t+n]^=o,e[t+n+1]^=s}let t=e[2],r=e[3];for(let n=0;n<24;n++){let i=Di[n],a=Ii(t,r,i),o=Li(t,r,i),s=Ei[n];t=e[s],r=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){let n=e[t],r=e[t+1],i=e[t+2],a=e[t+3];e[t]^=~e[t+2]&e[t+4],e[t+1]^=~e[t+3]&e[t+5],e[t+2]^=~e[t+4]&e[t+6],e[t+3]^=~e[t+5]&e[t+7],e[t+4]^=~e[t+6]&e[t+8],e[t+5]^=~e[t+7]&e[t+9],e[t+6]^=~e[t+8]&n,e[t+7]^=~e[t+9]&r,e[t+8]^=~n&i,e[t+9]^=~r&a}e[0]^=Ai[n],e[1]^=ji[n]}si(Ri)}var bi,xi,Si,Ci,wi,Ti,Ei,Di,Oi,ki,Ai,ji,Mi,Ni,Pi,Fi,Ii,Li,Ri,zi,Bi,Vi;function Hi(){return(Hi=t((()=>{$r(),vi(),bi=BigInt(0),xi=BigInt(1),Si=BigInt(2),Ci=BigInt(7),wi=BigInt(256),Ti=BigInt(113),Ei=[],Di=[],Oi=[];for(let e=0,t=xi,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],Ei.push(2*(5*r+n)),Di.push((e+1)*(e+2)/2%64);let i=bi;for(let e=0;e<7;e++)t=(t<<xi^(t>>Ci)*Ti)%wi,t&Si&&(i^=xi<<(xi<<BigInt(e))-xi);Oi.push(i)}ki=Xr(Oi,!0),Ai=ki[0],ji=ki[1],Mi=(e,t,n)=>e<<n|t>>>32-n,Ni=(e,t,n)=>t<<n|e>>>32-n,Pi=(e,t,n)=>t<<n-32|e>>>64-n,Fi=(e,t,n)=>e<<n-32|t>>>64-n,Ii=(e,t,n)=>n>32?Pi(e,t,n):Mi(e,t,n),Li=(e,t,n)=>n>32?Fi(e,t,n):Ni(e,t,n),Ri=new Uint32Array(10),zi=class e{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;canXOF;enableXOF=!1;rounds;constructor(e,t,n,r=!1,i=24){if(ti(e,`blockLen`),ti(t,`suffix`),ti(i,`rounds`),ni(r,`enableXOF`),this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.canXOF=r,this.rounds=i,ti(n,`outputLen`),!(0<e&&e<200))throw Error(`"blockLen" must be 1..199`);this.state=new Uint8Array(200),this.state32=oi(this.state)}clone(){return this._cloneInto()}keccak(){gi(this.state32),yi(this.state32,this.rounds),gi(this.state32),this.posOut=0,this.pos=0}update(e){ii(this),ri(e);let{blockLen:t,state:n,state32:r}=this,i=e.length,a=t%4==0&&e.byteOffset%4==0,o=t/4,s=a&&i>=t?oi(e):void 0;for(let a=0;a<i;){if(s!==void 0&&this.pos===0&&a%4==0&&i-a>=t){for(let e=0,t=a/4;e<o;e++)r[e]^=s[t+e];a+=t,this.pos=t,this.keccak();continue}let c=Math.min(t-this.pos,i-a);for(let t=0;t<c;t++)n[this.pos++]^=e[a++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ii(this,!1),ri(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not enabled`);return this.writeInto(e)}xof(e){return ti(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(ai(e,this),this.finished)throw Error(`digest() was already called`);this.writeInto(e.length===this.outputLen?e:e.subarray(0,this.outputLen)),this.destroy()}digest(){let e=new Uint8Array(this.outputLen);return this.digestInto(e),e}destroy(){this.destroyed=!0,si(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.blockLen=n,t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.canXOF=this.canXOF,t.destroyed=this.destroyed,t}},Bi=(e,t,n,r={})=>di(()=>new zi(t,e,n),r),Vi=Bi(6,72,64,_i(10))})))()}var Ui,Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,I,Qi,$i,ea,ta,na;function ra(){return(ra=t((()=>{Hi(),Ui=`abcdefghijklmnopqrstuvwxyz`,Wi=26,Gi=`0123456789abcdefghijklmnopqrstuvwxyz`,Ki=476782367,qi=16,Ji=32,Yi=new TextEncoder,Xi=null,Zi=Math.floor(Math.random()*Ki),I=e=>Gi[e],Qi=e=>{let t=``;switch(e){case 4:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 8:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 16:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 24:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);case 32:return I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0)+I(Math.random()*36|0);default:for(let n=0;n<e;n++)t+=I(Math.random()*36|0);return t}},$i=e=>{let t=e.length;if(t===0)return 0n;let n=new DataView(e.buffer,e.byteOffset,e.byteLength);if(t===64){let e=n.getBigUint64(0,!1),t=n.getBigUint64(8,!1),r=n.getBigUint64(16,!1),i=n.getBigUint64(24,!1),a=n.getBigUint64(32,!1),o=n.getBigUint64(40,!1),s=n.getBigUint64(48,!1),c=n.getBigUint64(56,!1);return e<<448n|t<<384n|r<<320n|i<<256n|a<<192n|o<<128n|s<<64n|c}let r=0n,i=0,a=t>>3<<3;for(;i<a;)r=r<<64n|n.getBigUint64(i,!1),i+=8;for(;i<t;)r=r<<8n|BigInt(e[i]),i++;return r},ea=e=>{let t=Yi.encode(e),n=Vi(t);return $i(n).toString(36).slice(1)},ta=()=>{if(Xi)return Xi;let e=Object.keys(typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{}),t=e.length?e.join(``)+Qi(Ji):Qi(Ji);return Xi=ea(t).substring(0,Ji),Xi},na=()=>{let e=Ui[Math.random()*Wi|0],t=Date.now().toString(36),n=(++Zi).toString(36),r=`${t}${Qi(qi)}${n}${Xi}`;return e+$i(Vi(Yi.encode(r))).toString(36).substring(1,qi)},ta()})))()}function L(e,t,n){this.low=e|0,this.high=t|0,this.unsigned=!!n}function R(e){return(e&&e.__isLong__)===!0}function ia(e){var t=Math.clz32(e&-e);return e?31-t:t}function aa(e,t){var n,r,i;return t?(e>>>=0,(i=0<=e&&e<256)&&(r=ca[e],r)?r:(n=B(e,0,!0),i&&(ca[e]=n),n)):(e|=0,(i=-128<=e&&e<128)&&(r=sa[e],r)?r:(n=B(e,e<0?-1:0,!1),i&&(sa[e]=n),n))}function z(e,t){if(isNaN(e))return t?ga:U;if(t){if(e<0)return ga;if(e>=pa)return xa}else{if(e<=-ma)return W;if(e+1>=ma)return ba}return e<0?z(-e,t).neg():B(e%fa|0,e/fa|0,t)}function B(e,t,n){return new L(e,t,n)}function oa(e,t,n){if(e.length===0)throw Error(`empty string`);if(typeof t==`number`?(n=t,t=!1):t=!!t,e===`NaN`||e===`Infinity`||e===`+Infinity`||e===`-Infinity`)return t?ga:U;if(n||=10,n<2||36<n)throw RangeError(`radix`);var r;if((r=e.indexOf(`-`))>0)throw Error(`interior hyphen`);if(r===0)return oa(e.substring(1),t,n).neg();for(var i=z(la(n,8)),a=U,o=0;o<e.length;o+=8){var s=Math.min(8,e.length-o),c=parseInt(e.substring(o,o+s),n);if(s<8){var l=z(la(n,s));a=a.mul(l).add(z(c))}else a=a.mul(i),a=a.add(z(c))}return a.unsigned=t,a}function V(e,t){return typeof e==`number`?z(e,t):typeof e==`string`?oa(e,t):B(e.low,e.high,typeof t==`boolean`?t:e.unsigned)}var H,sa,ca,la,ua,da,fa,pa,ma,ha,U,ga,_a,va,ya,ba,xa,W,G;function Sa(){return(Sa=t((()=>{H=null;try{H=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}L.prototype.__isLong__,Object.defineProperty(L.prototype,"__isLong__",{value:!0}),L.isLong=R,sa={},ca={},L.fromInt=aa,L.fromNumber=z,L.fromBits=B,la=Math.pow,L.fromString=oa,L.fromValue=V,ua=65536,da=1<<24,fa=ua*ua,pa=fa*fa,ma=pa/2,ha=aa(da),U=aa(0),L.ZERO=U,ga=aa(0,!0),L.UZERO=ga,_a=aa(1),L.ONE=_a,va=aa(1,!0),L.UONE=va,ya=aa(-1),L.NEG_ONE=ya,ba=B(-1,2147483647,!1),L.MAX_VALUE=ba,xa=B(-1,-1,!0),L.MAX_UNSIGNED_VALUE=xa,W=B(0,-2147483648,!1),L.MIN_VALUE=W,G=L.prototype,G.toInt=function(){return this.unsigned?this.low>>>0:this.low},G.toNumber=function(){return this.unsigned?(this.high>>>0)*fa+(this.low>>>0):this.high*fa+(this.low>>>0)},G.toString=function(e){if(e||=10,e<2||36<e)throw RangeError(`radix`);if(this.isZero())return`0`;if(this.isNegative()){if(this.eq(W)){var t=z(e),n=this.div(t),r=n.mul(t).sub(this);return n.toString(e)+r.toInt().toString(e)}return`-`+this.neg().toString(e)}for(var i=z(la(e,6),this.unsigned),a=this,o=``;;){var s=a.div(i),c=(a.sub(s.mul(i)).toInt()>>>0).toString(e);if(a=s,a.isZero())return c+o;for(;c.length<6;)c=`0`+c;o=``+c+o}},G.getHighBits=function(){return this.high},G.getHighBitsUnsigned=function(){return this.high>>>0},G.getLowBits=function(){return this.low},G.getLowBitsUnsigned=function(){return this.low>>>0},G.getNumBitsAbs=function(){if(this.isNegative())return this.eq(W)?64:this.neg().getNumBitsAbs();for(var e=this.high==0?this.low:this.high,t=31;t>0&&!(e&1<<t);t--);return this.high==0?t+1:t+33},G.isSafeInteger=function(){var e=this.high>>21;return!e||!this.unsigned&&e===-1&&(this.low!==0||this.high!==-2097152)},G.isZero=function(){return this.high===0&&this.low===0},G.eqz=G.isZero,G.isNegative=function(){return!this.unsigned&&this.high<0},G.isPositive=function(){return this.unsigned||this.high>=0},G.isOdd=function(){return(this.low&1)==1},G.isEven=function(){return!(this.low&1)},G.equals=function(e){return R(e)||(e=V(e)),this.unsigned!==e.unsigned&&this.high>>>31==1&&e.high>>>31==1?!1:this.high===e.high&&this.low===e.low},G.eq=G.equals,G.notEquals=function(e){return!this.eq(e)},G.neq=G.notEquals,G.ne=G.notEquals,G.lessThan=function(e){return this.comp(e)<0},G.lt=G.lessThan,G.lessThanOrEqual=function(e){return this.comp(e)<=0},G.lte=G.lessThanOrEqual,G.le=G.lessThanOrEqual,G.greaterThan=function(e){return this.comp(e)>0},G.gt=G.greaterThan,G.greaterThanOrEqual=function(e){return this.comp(e)>=0},G.gte=G.greaterThanOrEqual,G.ge=G.greaterThanOrEqual,G.compare=function(e){if(R(e)||(e=V(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},G.comp=G.compare,G.negate=function(){return!this.unsigned&&this.eq(W)?W:this.not().add(_a)},G.neg=G.negate,G.add=function(e){R(e)||(e=V(e));var t=this.high>>>16,n=this.high&65535,r=this.low>>>16,i=this.low&65535,a=e.high>>>16,o=e.high&65535,s=e.low>>>16,c=e.low&65535,l=0,u=0,d=0,f=0;return f+=i+c,d+=f>>>16,f&=65535,d+=r+s,u+=d>>>16,d&=65535,u+=n+o,l+=u>>>16,u&=65535,l+=t+a,l&=65535,B(d<<16|f,l<<16|u,this.unsigned)},G.subtract=function(e){return R(e)||(e=V(e)),this.add(e.neg())},G.sub=G.subtract,G.multiply=function(e){if(this.isZero())return this;if(R(e)||(e=V(e)),H)return B(H.mul(this.low,this.high,e.low,e.high),H.get_high(),this.unsigned);if(e.isZero())return this.unsigned?ga:U;if(this.eq(W))return e.isOdd()?W:U;if(e.eq(W))return this.isOdd()?W:U;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(ha)&&e.lt(ha))return z(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=this.high&65535,r=this.low>>>16,i=this.low&65535,a=e.high>>>16,o=e.high&65535,s=e.low>>>16,c=e.low&65535,l=0,u=0,d=0,f=0;return f+=i*c,d+=f>>>16,f&=65535,d+=r*c,u+=d>>>16,d&=65535,d+=i*s,u+=d>>>16,d&=65535,u+=n*c,l+=u>>>16,u&=65535,u+=r*s,l+=u>>>16,u&=65535,u+=i*o,l+=u>>>16,u&=65535,l+=t*c+n*s+r*o+i*a,l&=65535,B(d<<16|f,l<<16|u,this.unsigned)},G.mul=G.multiply,G.divide=function(e){if(R(e)||(e=V(e)),e.isZero())throw Error(`division by zero`);if(H)return!this.unsigned&&this.high===-2147483648&&e.low===-1&&e.high===-1?this:B((this.unsigned?H.div_u:H.div_s)(this.low,this.high,e.low,e.high),H.get_high(),this.unsigned);if(this.isZero())return this.unsigned?ga:U;var t,n,r;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return ga;if(e.gt(this.shru(1)))return va;r=ga}else{if(this.eq(W))return e.eq(_a)||e.eq(ya)?W:e.eq(W)?_a:(t=this.shr(1).div(e).shl(1),t.eq(U)?e.isNegative()?_a:ya:(n=this.sub(e.mul(t)),r=t.add(n.div(e)),r));if(e.eq(W))return this.unsigned?ga:U;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();r=U}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),a=i<=48?1:la(2,i-48),o=z(t),s=o.mul(e);s.isNegative()||s.gt(n);)t-=a,o=z(t,this.unsigned),s=o.mul(e);o.isZero()&&(o=_a),r=r.add(o),n=n.sub(s)}return r},G.div=G.divide,G.modulo=function(e){return R(e)||(e=V(e)),H?B((this.unsigned?H.rem_u:H.rem_s)(this.low,this.high,e.low,e.high),H.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},G.mod=G.modulo,G.rem=G.modulo,G.not=function(){return B(~this.low,~this.high,this.unsigned)},G.countLeadingZeros=function(){return this.high?Math.clz32(this.high):Math.clz32(this.low)+32},G.clz=G.countLeadingZeros,G.countTrailingZeros=function(){return this.low?ia(this.low):ia(this.high)+32},G.ctz=G.countTrailingZeros,G.and=function(e){return R(e)||(e=V(e)),B(this.low&e.low,this.high&e.high,this.unsigned)},G.or=function(e){return R(e)||(e=V(e)),B(this.low|e.low,this.high|e.high,this.unsigned)},G.xor=function(e){return R(e)||(e=V(e)),B(this.low^e.low,this.high^e.high,this.unsigned)},G.shiftLeft=function(e){return R(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?B(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):B(0,this.low<<e-32,this.unsigned)},G.shl=G.shiftLeft,G.shiftRight=function(e){return R(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?B(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):B(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},G.shr=G.shiftRight,G.shiftRightUnsigned=function(e){return R(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?B(this.low>>>e|this.high<<32-e,this.high>>>e,this.unsigned):B(e===32?this.high:this.high>>>e-32,0,this.unsigned)},G.shru=G.shiftRightUnsigned,G.shr_u=G.shiftRightUnsigned,G.rotateLeft=function(e){var t;return R(e)&&(e=e.toInt()),(e&=63)==0?this:e===32?B(this.high,this.low,this.unsigned):e<32?(t=32-e,B(this.low<<e|this.high>>>t,this.high<<e|this.low>>>t,this.unsigned)):(e-=32,t=32-e,B(this.high<<e|this.low>>>t,this.low<<e|this.high>>>t,this.unsigned))},G.rotl=G.rotateLeft,G.rotateRight=function(e){var t;return R(e)&&(e=e.toInt()),(e&=63)==0?this:e===32?B(this.high,this.low,this.unsigned):e<32?(t=32-e,B(this.high<<t|this.low>>>e,this.low<<t|this.high>>>e,this.unsigned)):(e-=32,t=32-e,B(this.low<<t|this.high>>>e,this.high<<t|this.low>>>e,this.unsigned))},G.rotr=G.rotateRight,G.toSigned=function(){return this.unsigned?B(this.low,this.high,!1):this},G.toUnsigned=function(){return this.unsigned?this:B(this.low,this.high,!0)},G.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},G.toBytesLE=function(){var e=this.high,t=this.low;return[t&255,t>>>8&255,t>>>16&255,t>>>24,e&255,e>>>8&255,e>>>16&255,e>>>24]},G.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,e&255,t>>>24,t>>>16&255,t>>>8&255,t&255]},L.fromBytes=function(e,t,n){return n?L.fromBytesLE(e,t):L.fromBytesBE(e,t)},L.fromBytesLE=function(e,t){return new L(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},L.fromBytesBE=function(e,t){return new L(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)},typeof BigInt==`function`&&(L.fromBigInt=function(e,t){return B(Number(BigInt.asIntN(32,e)),Number(BigInt.asIntN(32,e>>BigInt(32))),t)},L.fromValue=function(e,t){return typeof e==`bigint`?L.fromBigInt(e,t):V(e,t)},G.toBigInt=function(){var e=BigInt(this.low>>>0);return BigInt(this.unsigned?this.high>>>0:this.high)<<BigInt(32)|e})})))()}var Ca=n((e=>{e.byteLength=c,e.toByteArray=u,e.fromByteArray=p;for(var t=[],n=[],r=typeof Uint8Array<`u`?Uint8Array:Array,i=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,a=0,o=i.length;a<o;++a)t[a]=i[a],n[i.charCodeAt(a)]=a;n[45]=62,n[95]=63;function s(e){var t=e.length;if(t%4>0)throw Error(`Invalid string. Length must be a multiple of 4`);var n=e.indexOf(`=`);n===-1&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function c(e){var t=s(e),n=t[0],r=t[1];return(n+r)*3/4-r}function l(e,t,n){return(t+n)*3/4-n}function u(e){for(var t,i=s(e),a=i[0],o=i[1],c=new r(l(e,a,o)),u=0,d=o>0?a-4:a,f=0;f<d;f+=4)t=n[e.charCodeAt(f)]<<18|n[e.charCodeAt(f+1)]<<12|n[e.charCodeAt(f+2)]<<6|n[e.charCodeAt(f+3)],c[u++]=t>>16&255,c[u++]=t>>8&255,c[u++]=t&255;return o===2&&(t=n[e.charCodeAt(f)]<<2|n[e.charCodeAt(f+1)]>>4,c[u++]=t&255),o===1&&(t=n[e.charCodeAt(f)]<<10|n[e.charCodeAt(f+1)]<<4|n[e.charCodeAt(f+2)]>>2,c[u++]=t>>8&255,c[u++]=t&255),c}function d(e){return t[e>>18&63]+t[e>>12&63]+t[e>>6&63]+t[e&63]}function f(e,t,n){for(var r,i=[],a=t;a<n;a+=3)r=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(e[a+2]&255),i.push(d(r));return i.join(``)}function p(e){for(var n,r=e.length,i=r%3,a=[],o=16383,s=0,c=r-i;s<c;s+=o)a.push(f(e,s,s+o>c?c:s+o));return i===1?(n=e[r-1],a.push(t[n>>2]+t[n<<4&63]+`==`)):i===2&&(n=(e[r-2]<<8)+e[r-1],a.push(t[n>>10]+t[n>>4&63]+t[n<<2&63]+`=`)),a.join(``)}})),wa=n((e=>{e.read=function(e,t,n,r,i){var a,o,s=i*8-r-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=a*256+e[t+d],d+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=o*256+e[t+d],d+=f,u-=8);if(a===0)a=1-l;else if(a===c)return o?NaN:(p?-1:1)*(1/0);else o+=2**r,a-=l;return(p?-1:1)*o*2**(a-r)},e.write=function(e,t,n,r,i,a){var o,s,c,l=a*8-i-1,u=(1<<l)-1,d=u>>1,f=i===23?2**-24-2**-77:0,p=r?0:a-1,m=r?1:-1,h=+(t<0||t===0&&1/t<0);for(t=Math.abs(t),isNaN(t)||t===1/0?(s=+!!isNaN(t),o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=2**-o)<1&&(o--,c*=2),o+d>=1?t+=f/c:t+=f*2**(1-d),t*c>=2&&(o++,c/=2),o+d>=u?(s=0,o=u):o+d>=1?(s=(t*c-1)*2**i,o+=d):(s=t*2**(d-1)*2**i,o=0));i>=8;e[n+p]=s&255,p+=m,s/=256,i-=8);for(o=o<<i|s,l+=i;l>0;e[n+p]=o&255,p+=m,o/=256,l-=8);e[n+p-m]|=h*128}})),Ta=n((e=>{var t=Ca(),n=wa(),r=typeof Symbol==`function`&&typeof Symbol.for==`function`?Symbol.for(`nodejs.util.inspect.custom`):null;e.Buffer=s,e.SlowBuffer=v,e.INSPECT_MAX_BYTES=50;var i=2147483647;e.kMaxLength=i,s.TYPED_ARRAY_SUPPORT=a(),!s.TYPED_ARRAY_SUPPORT&&typeof console<`u`&&typeof console.error==`function`&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function a(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(s.prototype,"parent",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.buffer}}),Object.defineProperty(s.prototype,"offset",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.byteOffset}});function o(e){if(e>i)throw RangeError(`The value "`+e+`" is invalid for option "size"`);let t=new Uint8Array(e);return Object.setPrototypeOf(t,s.prototype),t}function s(e,t,n){if(typeof e==`number`){if(typeof t==`string`)throw TypeError(`The "string" argument must be of type string. Received type number`);return d(e)}return c(e,t,n)}s.poolSize=8192;function c(e,t,n){if(typeof e==`string`)return f(e,t);if(ArrayBuffer.isView(e))return m(e);if(e==null)throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e);if(T(e,ArrayBuffer)||e&&T(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<`u`&&(T(e,SharedArrayBuffer)||e&&T(e.buffer,SharedArrayBuffer)))return h(e,t,n);if(typeof e==`number`)throw TypeError(`The "value" argument must not be of type number. Received type number`);let r=e.valueOf&&e.valueOf();if(r!=null&&r!==e)return s.from(r,t,n);let i=g(e);if(i)return i;if(typeof Symbol<`u`&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]==`function`)return s.from(e[Symbol.toPrimitive](`string`),t,n);throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e)}s.from=function(e,t,n){return c(e,t,n)},Object.setPrototypeOf(s.prototype,Uint8Array.prototype),Object.setPrototypeOf(s,Uint8Array);function l(e){if(typeof e!=`number`)throw TypeError(`"size" argument must be of type number`);if(e<0)throw RangeError(`The value "`+e+`" is invalid for option "size"`)}function u(e,t,n){return l(e),e<=0||t===void 0?o(e):typeof n==`string`?o(e).fill(t,n):o(e).fill(t)}s.alloc=function(e,t,n){return u(e,t,n)};function d(e){return l(e),o(e<0?0:_(e)|0)}s.allocUnsafe=function(e){return d(e)},s.allocUnsafeSlow=function(e){return d(e)};function f(e,t){if((typeof t!=`string`||t===``)&&(t=`utf8`),!s.isEncoding(t))throw TypeError(`Unknown encoding: `+t);let n=y(e,t)|0,r=o(n),i=r.write(e,t);return i!==n&&(r=r.slice(0,i)),r}function p(e){let t=e.length<0?0:_(e.length)|0,n=o(t);for(let r=0;r<t;r+=1)n[r]=e[r]&255;return n}function m(e){if(T(e,Uint8Array)){let t=new Uint8Array(e);return h(t.buffer,t.byteOffset,t.byteLength)}return p(e)}function h(e,t,n){if(t<0||e.byteLength<t)throw RangeError(`"offset" is outside of buffer bounds`);if(e.byteLength<t+(n||0))throw RangeError(`"length" is outside of buffer bounds`);let r;return r=t===void 0&&n===void 0?new Uint8Array(e):n===void 0?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,s.prototype),r}function g(e){if(s.isBuffer(e)){let t=_(e.length)|0,n=o(t);return n.length===0||e.copy(n,0,0,t),n}if(e.length!==void 0)return typeof e.length!=`number`||Ne(e.length)?o(0):p(e);if(e.type===`Buffer`&&Array.isArray(e.data))return p(e.data)}function _(e){if(e>=i)throw RangeError(`Attempt to allocate Buffer larger than maximum size: 0x`+i.toString(16)+` bytes`);return e|0}function v(e){return+e!=e&&(e=0),s.alloc(+e)}s.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==s.prototype},s.compare=function(e,t){if(T(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),T(t,Uint8Array)&&(t=s.from(t,t.offset,t.byteLength)),!s.isBuffer(e)||!s.isBuffer(t))throw TypeError(`The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array`);if(e===t)return 0;let n=e.length,r=t.length;for(let i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:+(r<n)},s.isEncoding=function(e){switch(String(e).toLowerCase()){case`hex`:case`utf8`:case`utf-8`:case`ascii`:case`latin1`:case`binary`:case`base64`:case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return!0;default:return!1}},s.concat=function(e,t){if(!Array.isArray(e))throw TypeError(`"list" argument must be an Array of Buffers`);if(e.length===0)return s.alloc(0);let n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;let r=s.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){let t=e[n];if(T(t,Uint8Array))i+t.length>r.length?(s.isBuffer(t)||(t=s.from(t)),t.copy(r,i)):Uint8Array.prototype.set.call(r,t,i);else if(s.isBuffer(t))t.copy(r,i);else throw TypeError(`"list" argument must be an Array of Buffers`);i+=t.length}return r};function y(e,t){if(s.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||T(e,ArrayBuffer))return e.byteLength;if(typeof e!=`string`)throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type `+typeof e);let n=e.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&n===0)return 0;let i=!1;for(;;)switch(t){case`ascii`:case`latin1`:case`binary`:return n;case`utf8`:case`utf-8`:return Oe(e).length;case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return n*2;case`hex`:return n>>>1;case`base64`:return je(e).length;default:if(i)return r?-1:Oe(e).length;t=(``+t).toLowerCase(),i=!0}}s.byteLength=y;function ee(e,t,n){let r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0,t>>>=0,n<=t))return``;for(e||=`utf8`;;)switch(e){case`hex`:return pe(this,t,n);case`utf8`:case`utf-8`:return le(this,t,n);case`ascii`:return de(this,t,n);case`latin1`:case`binary`:return fe(this,t,n);case`base64`:return ce(this,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return me(this,t,n);default:if(r)throw TypeError(`Unknown encoding: `+e);e=(e+``).toLowerCase(),r=!0}}s.prototype._isBuffer=!0;function b(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}s.prototype.swap16=function(){let e=this.length;if(e%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(let t=0;t<e;t+=2)b(this,t,t+1);return this},s.prototype.swap32=function(){let e=this.length;if(e%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(let t=0;t<e;t+=4)b(this,t,t+3),b(this,t+1,t+2);return this},s.prototype.swap64=function(){let e=this.length;if(e%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(let t=0;t<e;t+=8)b(this,t,t+7),b(this,t+1,t+6),b(this,t+2,t+5),b(this,t+3,t+4);return this},s.prototype.toString=function(){let e=this.length;return e===0?``:arguments.length===0?le(this,0,e):ee.apply(this,arguments)},s.prototype.toLocaleString=s.prototype.toString,s.prototype.equals=function(e){if(!s.isBuffer(e))throw TypeError(`Argument must be a Buffer`);return this===e||s.compare(this,e)===0},s.prototype.inspect=function(){let t=``,n=e.INSPECT_MAX_BYTES;return t=this.toString(`hex`,0,n).replace(/(.{2})/g,`$1 `).trim(),this.length>n&&(t+=` ... `),`<Buffer `+t+`>`},r&&(s.prototype[r]=s.prototype.inspect),s.prototype.compare=function(e,t,n,r,i){if(T(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),!s.isBuffer(e))throw TypeError(`The "target" argument must be one of type Buffer or Uint8Array. Received type `+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw RangeError(`out of range index`);if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;let a=i-r,o=n-t,c=Math.min(a,o),l=this.slice(r,i),u=e.slice(t,n);for(let e=0;e<c;++e)if(l[e]!==u[e]){a=l[e],o=u[e];break}return a<o?-1:+(o<a)};function te(e,t,n,r,i){if(e.length===0)return-1;if(typeof n==`string`?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,Ne(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(i)n=0;else return-1}if(typeof t==`string`&&(t=s.from(t,r)),s.isBuffer(t))return t.length===0?-1:ne(e,t,n,r,i);if(typeof t==`number`)return t&=255,typeof Uint8Array.prototype.indexOf==`function`?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):ne(e,[t],n,r,i);throw TypeError(`val must be string, number or Buffer`)}function ne(e,t,n,r,i){let a=1,o=e.length,s=t.length;if(r!==void 0&&(r=String(r).toLowerCase(),r===`ucs2`||r===`ucs-2`||r===`utf16le`||r===`utf-16le`)){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,n/=2}function c(e,t){return a===1?e[t]:e.readUInt16BE(t*a)}let l;if(i){let r=-1;for(l=n;l<o;l++)if(c(e,l)===c(t,r===-1?0:l-r)){if(r===-1&&(r=l),l-r+1===s)return r*a}else r!==-1&&(l-=l-r),r=-1}else for(n+s>o&&(n=o-s),l=n;l>=0;l--){let n=!0;for(let r=0;r<s;r++)if(c(e,l+r)!==c(t,r)){n=!1;break}if(n)return l}return-1}s.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1},s.prototype.indexOf=function(e,t,n){return te(this,e,t,n,!0)},s.prototype.lastIndexOf=function(e,t,n){return te(this,e,t,n,!1)};function re(e,t,n,r){n=Number(n)||0;let i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;let a=t.length;r>a/2&&(r=a/2);let o=0;for(;o<r;++o){let r=parseInt(t.substr(o*2,2),16);if(Ne(r))return o;e[n+o]=r}return o}function ie(e,t,n,r){return Me(Oe(t,e.length-n),e,n,r)}function ae(e,t,n,r){return Me(ke(t),e,n,r)}function oe(e,t,n,r){return Me(je(t),e,n,r)}function se(e,t,n,r){return Me(Ae(t,e.length-n),e,n,r)}s.prototype.write=function(e,t,n,r){if(t===void 0)r=`utf8`,n=this.length,t=0;else if(n===void 0&&typeof t==`string`)r=t,n=this.length,t=0;else if(isFinite(t))t>>>=0,isFinite(n)?(n>>>=0,r===void 0&&(r=`utf8`)):(r=n,n=void 0);else throw Error(`Buffer.write(string, encoding, offset[, length]) is no longer supported`);let i=this.length-t;if((n===void 0||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw RangeError(`Attempt to write outside buffer bounds`);r||=`utf8`;let a=!1;for(;;)switch(r){case`hex`:return re(this,e,t,n);case`utf8`:case`utf-8`:return ie(this,e,t,n);case`ascii`:case`latin1`:case`binary`:return ae(this,e,t,n);case`base64`:return oe(this,e,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return se(this,e,t,n);default:if(a)throw TypeError(`Unknown encoding: `+r);r=(``+r).toLowerCase(),a=!0}},s.prototype.toJSON=function(){return{type:`Buffer`,data:Array.prototype.slice.call(this._arr||this,0)}};function ce(e,n,r){return n===0&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(n,r))}function le(e,t,n){n=Math.min(e.length,n);let r=[],i=t;for(;i<n;){let t=e[i],a=null,o=t>239?4:t>223?3:t>191?2:1;if(i+o<=n){let n,r,s,c;switch(o){case 1:t<128&&(a=t);break;case 2:n=e[i+1],(n&192)==128&&(c=(t&31)<<6|n&63,c>127&&(a=c));break;case 3:n=e[i+1],r=e[i+2],(n&192)==128&&(r&192)==128&&(c=(t&15)<<12|(n&63)<<6|r&63,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:n=e[i+1],r=e[i+2],s=e[i+3],(n&192)==128&&(r&192)==128&&(s&192)==128&&(c=(t&15)<<18|(n&63)<<12|(r&63)<<6|s&63,c>65535&&c<1114112&&(a=c))}}a===null?(a=65533,o=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a),i+=o}return ue(r)}var x=4096;function ue(e){let t=e.length;if(t<=x)return String.fromCharCode.apply(String,e);let n=``,r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=x));return n}function de(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]&127);return r}function fe(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function pe(e,t,n){let r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);let i=``;for(let r=t;r<n;++r)i+=Pe[e[r]];return i}function me(e,t,n){let r=e.slice(t,n),i=``;for(let e=0;e<r.length-1;e+=2)i+=String.fromCharCode(r[e]+r[e+1]*256);return i}s.prototype.slice=function(e,t){let n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);let r=this.subarray(e,t);return Object.setPrototypeOf(r,s.prototype),r};function S(e,t,n){if(e%1!=0||e<0)throw RangeError(`offset is not uint`);if(e+t>n)throw RangeError(`Trying to access beyond buffer length`)}s.prototype.readUintLE=s.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return r},s.prototype.readUintBE=s.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=this[e+--t],i=1;for(;t>0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUint8=s.prototype.readUInt8=function(e,t){return e>>>=0,t||S(e,1,this.length),this[e]},s.prototype.readUint16LE=s.prototype.readUInt16LE=function(e,t){return e>>>=0,t||S(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUint16BE=s.prototype.readUInt16BE=function(e,t){return e>>>=0,t||S(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUint32LE=s.prototype.readUInt32LE=function(e,t){return e>>>=0,t||S(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},s.prototype.readUint32BE=s.prototype.readUInt32BE=function(e,t){return e>>>=0,t||S(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readBigUInt64LE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=t+this[++e]*256+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*256+this[++e]*2**16+n*2**24;return BigInt(r)+(BigInt(i)<<BigInt(32))}),s.prototype.readBigUInt64BE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=t*2**24+this[++e]*2**16+this[++e]*256+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*256+n;return(BigInt(r)<<BigInt(32))+BigInt(i)}),s.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return i*=128,r>=i&&(r-=2**(8*t)),r},s.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||S(e,t,this.length);let r=t,i=1,a=this[e+--r];for(;r>0&&(i*=256);)a+=this[e+--r]*i;return i*=128,a>=i&&(a-=2**(8*t)),a},s.prototype.readInt8=function(e,t){return e>>>=0,t||S(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},s.prototype.readInt16LE=function(e,t){e>>>=0,t||S(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n},s.prototype.readInt16BE=function(e,t){e>>>=0,t||S(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n},s.prototype.readInt32LE=function(e,t){return e>>>=0,t||S(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return e>>>=0,t||S(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readBigInt64LE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=this[e+4]+this[e+5]*256+this[e+6]*2**16+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(t+this[++e]*256+this[++e]*2**16+this[++e]*2**24)}),s.prototype.readBigInt64BE=Fe(function(e){e>>>=0,Te(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Ee(e,this.length-8);let r=(t<<24)+this[++e]*2**16+this[++e]*256+this[++e];return(BigInt(r)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*256+n)}),s.prototype.readFloatLE=function(e,t){return e>>>=0,t||S(e,4,this.length),n.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return e>>>=0,t||S(e,4,this.length),n.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return e>>>=0,t||S(e,8,this.length),n.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return e>>>=0,t||S(e,8,this.length),n.read(this,e,!1,52,8)};function C(e,t,n,r,i,a){if(!s.isBuffer(e))throw TypeError(`"buffer" argument must be a Buffer instance`);if(t>i||t<a)throw RangeError(`"value" argument is out of bounds`);if(n+r>e.length)throw RangeError(`Index out of range`)}s.prototype.writeUintLE=s.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;C(this,e,t,n,r,0)}let i=1,a=0;for(this[t]=e&255;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},s.prototype.writeUintBE=s.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;C(this,e,t,n,r,0)}let i=n-1,a=1;for(this[t+i]=e&255;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},s.prototype.writeUint8=s.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,1,255,0),this[t]=e&255,t+1},s.prototype.writeUint16LE=s.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeUint16BE=s.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeUint32LE=s.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4},s.prototype.writeUint32BE=s.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function he(e,t,n,r,i){we(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,n}function ge(e,t,n,r,i){we(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n+7]=a,a>>=8,e[n+6]=a,a>>=8,e[n+5]=a,a>>=8,e[n+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n+3]=o,o>>=8,e[n+2]=o,o>>=8,e[n+1]=o,o>>=8,e[n]=o,n+8}s.prototype.writeBigUInt64LE=Fe(function(e,t=0){return he(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeBigUInt64BE=Fe(function(e,t=0){return ge(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);C(this,e,t,n,r-1,-r)}let i=0,a=1,o=0;for(this[t]=e&255;++i<n&&(a*=256);)e<0&&o===0&&this[t+i-1]!==0&&(o=1),this[t+i]=(e/a|0)-o&255;return t+n},s.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);C(this,e,t,n,r-1,-r)}let i=n-1,a=1,o=0;for(this[t+i]=e&255;--i>=0&&(a*=256);)e<0&&o===0&&this[t+i+1]!==0&&(o=1),this[t+i]=(e/a|0)-o&255;return t+n},s.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1},s.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},s.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4},s.prototype.writeBigInt64LE=Fe(function(e,t=0){return he(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))}),s.prototype.writeBigInt64BE=Fe(function(e,t=0){return ge(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))});function _e(e,t,n,r,i,a){if(n+r>e.length||n<0)throw RangeError(`Index out of range`)}function ve(e,t,r,i,a){return t=+t,r>>>=0,a||_e(e,t,r,4,34028234663852886e22,-34028234663852886e22),n.write(e,t,r,i,23,4),r+4}s.prototype.writeFloatLE=function(e,t,n){return ve(this,e,t,!0,n)},s.prototype.writeFloatBE=function(e,t,n){return ve(this,e,t,!1,n)};function ye(e,t,r,i,a){return t=+t,r>>>=0,a||_e(e,t,r,8,17976931348623157e292,-17976931348623157e292),n.write(e,t,r,i,52,8),r+8}s.prototype.writeDoubleLE=function(e,t,n){return ye(this,e,t,!0,n)},s.prototype.writeDoubleBE=function(e,t,n){return ye(this,e,t,!1,n)},s.prototype.copy=function(e,t,n,r){if(!s.isBuffer(e))throw TypeError(`argument should be a Buffer`);if(n||=0,!r&&r!==0&&(r=this.length),t>=e.length&&(t=e.length),t||=0,r>0&&r<n&&(r=n),r===n||e.length===0||this.length===0)return 0;if(t<0)throw RangeError(`targetStart out of bounds`);if(n<0||n>=this.length)throw RangeError(`Index out of range`);if(r<0)throw RangeError(`sourceEnd out of bounds`);r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);let i=r-n;return this===e&&typeof Uint8Array.prototype.copyWithin==`function`?this.copyWithin(t,n,r):Uint8Array.prototype.set.call(e,this.subarray(n,r),t),i},s.prototype.fill=function(e,t,n,r){if(typeof e==`string`){if(typeof t==`string`?(r=t,t=0,n=this.length):typeof n==`string`&&(r=n,n=this.length),r!==void 0&&typeof r!=`string`)throw TypeError(`encoding must be a string`);if(typeof r==`string`&&!s.isEncoding(r))throw TypeError(`Unknown encoding: `+r);if(e.length===1){let t=e.charCodeAt(0);(r===`utf8`&&t<128||r===`latin1`)&&(e=t)}}else typeof e==`number`?e&=255:typeof e==`boolean`&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw RangeError(`Out of range index`);if(n<=t)return this;t>>>=0,n=n===void 0?this.length:n>>>0,e||=0;let i;if(typeof e==`number`)for(i=t;i<n;++i)this[i]=e;else{let a=s.isBuffer(e)?e:s.from(e,r),o=a.length;if(o===0)throw TypeError(`The value "`+e+`" is invalid for argument "value"`);for(i=0;i<n-t;++i)this[i+t]=a[i%o]}return this};var be={};function xe(e,t,n){be[e]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(e){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:e,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}xe(`ERR_BUFFER_OUT_OF_BOUNDS`,function(e){return e?`${e} is outside of buffer bounds`:`Attempt to access memory outside buffer bounds`},RangeError),xe(`ERR_INVALID_ARG_TYPE`,function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError),xe(`ERR_OUT_OF_RANGE`,function(e,t,n){let r=`The value of "${e}" is out of range.`,i=n;return Number.isInteger(n)&&Math.abs(n)>2**32?i=Se(String(n)):typeof n==`bigint`&&(i=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(i=Se(i)),i+=`n`),r+=` It must be ${t}. Received ${i}`,r},RangeError);function Se(e){let t=``,n=e.length,r=+(e[0]===`-`);for(;n>=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function Ce(e,t,n){Te(t,`offset`),(e[t]===void 0||e[t+n]===void 0)&&Ee(t,e.length-(n+1))}function we(e,t,n,r,i,a){if(e>n||e<t){let r=typeof t==`bigint`?`n`:``,i;throw i=a>3?t===0||t===BigInt(0)?`>= 0${r} and < 2${r} ** ${(a+1)*8}${r}`:`>= -(2${r} ** ${(a+1)*8-1}${r}) and < 2 ** ${(a+1)*8-1}${r}`:`>= ${t}${r} and <= ${n}${r}`,new be.ERR_OUT_OF_RANGE(`value`,i,e)}Ce(r,i,a)}function Te(e,t){if(typeof e!=`number`)throw new be.ERR_INVALID_ARG_TYPE(t,`number`,e)}function Ee(e,t,n){throw Math.floor(e)===e?t<0?new be.ERR_BUFFER_OUT_OF_BOUNDS:new be.ERR_OUT_OF_RANGE(n||`offset`,`>= ${+!!n} and <= ${t}`,e):(Te(e,n),new be.ERR_OUT_OF_RANGE(n||`offset`,`an integer`,e))}var De=/[^+/0-9A-Za-z-_]/g;function w(e){if(e=e.split(`=`)[0],e=e.trim().replace(De,``),e.length<2)return``;for(;e.length%4!=0;)e+=`=`;return e}function Oe(e,t){t||=1/0;let n,r=e.length,i=null,a=[];for(let o=0;o<r;++o){if(n=e.charCodeAt(o),n>55295&&n<57344){if(!i){if(n>56319||o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=(i-55296<<10|n-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if(--t<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,n&63|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw Error(`Invalid code point`)}return a}function ke(e){let t=[];for(let n=0;n<e.length;++n)t.push(e.charCodeAt(n)&255);return t}function Ae(e,t){let n,r,i,a=[];for(let o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,a.push(i),a.push(r);return a}function je(e){return t.toByteArray(w(e))}function Me(e,t,n,r){let i=0;for(;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function T(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function Ne(e){return e!==e}var Pe=(function(){let e=`0123456789abcdef`,t=Array(256);for(let n=0;n<16;++n){let r=n*16;for(let i=0;i<16;++i)t[r+i]=e[n]+e[i]}return t})();function Fe(e){return typeof BigInt>`u`?Ie:e}function Ie(){throw Error(`BigInt not supported`)}}));function K(e,t){let n=e.position+t;if(n>e.buffer.length){let t=Math.min(Math.max(e.buffer.length*2,n),Oa),r=Ea.Buffer.allocUnsafe(t);e.buffer.copy(r,0,0,e.position),e.buffer=r,e.view=new DataView(e.buffer.buffer,e.buffer.byteOffset,e.buffer.byteLength)}}var Ea,Da,Oa,ka,Aa,ja,Ma,Na,Pa,Fa;function Ia(){return(Ia=t((()=>{Ea=Ta(),Ur(),Da=8192,Oa=2147483647,ka=16,Aa=1048576,ja=typeof TextEncoder<`u`?new TextEncoder:null,Ma=e=>{if(e===null)return`null`;if(e===void 0)return`undefined`;let t=typeof e;if(t!==`object`)return t;let n=Object.prototype.toString.call(e).match(/\[object (\w+)\]/);return n?n[1].toLowerCase():`object`},Na=class{static{this.buffers=[]}static{this.positions=[]}static acquire(){if(this.buffers.length>0){let e=this.buffers.pop();return this.positions.pop()+7&4294967288,e.length-1024,e}return Ea.Buffer.allocUnsafe(Da)}static release(e,t){e.length<=Aa&&this.buffers.length<ka&&(this.buffers.push(e),this.positions.push(t))}static clear(){this.buffers=[],this.positions=[]}},Pa=class{constructor(){this.buffer=Na.acquire(),this.position=0,this.start=0,this.view=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength)}release(){Na.release(this.buffer,this.position)}},Fa=class{constructor(e){this.encodingTypes=e,this.encodeDepth=0,this.state=new Pa}encode(e){let t=this.encodeDepth>0;if(this.encodeDepth++,t){let t=this.state;this.state=new Pa,this._encode(e);let n=this.state.buffer.subarray(0,this.state.position),r=Ea.Buffer.allocUnsafe(n.length);return n.copy(r),this.state.release(),this.state=t,this.encodeDepth--,r}{this.state.position=0,this.state.start=0,this._encode(e);let t=this.state.buffer.subarray(0,this.state.position),n=Ea.Buffer.allocUnsafe(t.length);return t.copy(n),this.state.release(),this.state=new Pa,this.encodeDepth--,n}}_encode(e){let t=typeof e,n=this.state;switch(t){case`undefined`:K(n,3),n.buffer[n.position]=212,n.buffer[n.position+1]=0,n.buffer[n.position+2]=0,n.position+=3;return;case`boolean`:K(n,1),n.buffer[n.position++]=e?195:194;return;case`number`:this.encodeNumber(e);return;case`string`:this.encodeString(e);return;case`bigint`:this.encodeBigInt(e);return}e===null?(K(n,1),n.buffer[n.position++]=192):Ar(e)?this.encodeBuffer(e):Array.isArray(e)?this.encodeArray(e):jr(e)?this.encodeObject(e):this.encodeCustom(e)}encodeUndefined(){let e=this.state;K(e,3);let t=e.buffer,n=e.position;t[n]=212,t[n+1]=0,t[n+2]=0,e.position=n+3}encodeNull(){let e=this.state;K(e,1),e.buffer[e.position++]=192}encodeBoolean(e){let t=this.state;K(t,1),t.buffer[t.position++]=e?195:194}encodeNumber(e){let t=this.state,n=t.position;if(e>>>0===e){if(e<128)K(t,1),t.buffer[n++]=e;else if(e<256){K(t,2);let r=t.buffer;r[n++]=204,r[n++]=e}else e<65536?(K(t,3),t.buffer[n++]=205,t.view.setUint16(n,e,!1),n+=2):(K(t,5),t.buffer[n++]=206,t.view.setUint32(n,e,!1),n+=4)}else(e|0)===e?e>=-32?(K(t,1),t.buffer[n++]=256+e):e>=-128?(K(t,2),t.buffer[n++]=208,t.view.setInt8(n++,e)):e>=-32768?(K(t,3),t.buffer[n++]=209,t.view.setInt16(n,e,!1),n+=2):(K(t,5),t.buffer[n++]=210,t.view.setInt32(n,e,!1),n+=4):(K(t,9),t.buffer[n++]=203,t.view.setFloat64(n,e,!1),n+=8);t.position=n}encodeString(e){let t=this.state,n=e.length;if(n<64){let r=!0,i=n;for(let t=0;t<n;t++)if(e.charCodeAt(t)>=128){r=!1;break}if(r){if(i<32){K(t,1+i);let r=t.buffer,a=t.position;r[a]=160|i;for(let t=0;t<n;t++)r[a+1+t]=e.charCodeAt(t);t.position=a+1+i;return}{K(t,2+i);let r=t.buffer,a=t.position;r[a]=217,r[a+1]=i;for(let t=0;t<n;t++)r[a+2+t]=e.charCodeAt(t);t.position=a+2+i;return}}}let r=Ea.Buffer.byteLength(e,`utf8`),i;i=r<32?1:r<=255?2:r<=65535?3:5,K(t,i+r);let a=t.buffer,o=t.position;if(r<32?a[o++]=160|r:r<=255?(a[o++]=217,a[o++]=r):r<=65535?(a[o++]=218,t.view.setUint16(o,r,!1),o+=2):(a[o++]=219,t.view.setUint32(o,r,!1),o+=4),ja&&r>0){let t=new Uint8Array(a.buffer,a.byteOffset+o,r),n=ja.encodeInto(e,t);o+=n.written}else r>0&&(a.write(e,o,r,`utf8`),o+=r);t.position=o}encodeBuffer(e){let t=this.state,n=e.length;if(n<=255){K(t,2+n);let r=t.buffer,i=t.position;r[i]=196,r[i+1]=n,e.copy(r,i+2),t.position=i+2+n}else if(n<=65535){K(t,3+n);let r=t.buffer,i=t.position;r[i]=197,t.view.setUint16(i+1,n,!1),e.copy(r,i+3),t.position=i+3+n}else{K(t,5+n);let r=t.buffer,i=t.position;r[i]=198,t.view.setUint32(i+1,n,!1),e.copy(r,i+5),t.position=i+5+n}}encodeArray(e){let t=this.state,n=e.length,r=t.position;n<16?(K(t,1),t.buffer[r++]=144|n,t.position=r):n<65536?(K(t,3),t.buffer[r++]=220,t.view.setUint16(r,n,!1),t.position=r+2):(K(t,5),t.buffer[r++]=221,t.view.setUint32(r,n,!1),t.position=r+4);for(let t=0;t<n;t++)this._encode(e[t])}encodeObject(e){let t=this.state,n=Object.keys(e),r=n.length,i=t.position;r<16?(K(t,1),t.buffer[i++]=128|r,t.position=i):(K(t,3),t.buffer[i++]=222,t.view.setUint16(i,r,!1),t.position=i+2);for(let t=0;t<r;t++){let r=n[t];this.encodeString(r),this._encode(e[r])}}encodeBigInt(e){let t=this.encodingTypes.get(120);if(!t)throw Error(`BigInt encoder not registered`);let n=this.state.position,r=t.encode(e);this.state.position=n,this.encodeExtension(120,r)}encodeCustom(e){for(let[t,n]of this.encodingTypes.entries())if(n.check(e)){let r=n.encode(e);this.encodeExtension(t,r);return}throw Error(`Not supported: ${Ma(e)}`)}encodeExtension(e,t){let n=this.state,r=t.length;if(r===1){K(n,3);let r=n.buffer,i=n.position;r[i]=212,r[i+1]=e,r[i+2]=t[0],n.position=i+3}else if(r===2){K(n,4);let r=n.buffer,i=n.position;r[i]=213,r[i+1]=e,t.copy(r,i+2),n.position=i+4}else if(r===4){K(n,6);let r=n.buffer,i=n.position;r[i]=214,r[i+1]=e,t.copy(r,i+2),n.position=i+6}else if(r===8){K(n,10);let r=n.buffer,i=n.position;r[i]=215,r[i+1]=e,t.copy(r,i+2),n.position=i+10}else if(r===16){K(n,18);let r=n.buffer,i=n.position;r[i]=216,r[i+1]=e,t.copy(r,i+2),n.position=i+18}else if(r<256){K(n,3+r);let i=n.buffer,a=n.position;i[a]=199,i[a+1]=r,i[a+2]=e,t.copy(i,a+3),n.position=a+3+r}else if(r<65536){K(n,4+r);let i=n.buffer,a=n.position;i[a]=200,n.view.setUint16(a+1,r,!1),i[a+3]=e,t.copy(i,a+4),n.position=a+4+r}else{K(n,6+r);let i=n.buffer,a=n.position;i[a]=201,n.view.setUint32(a+1,r,!1),i[a+5]=e,t.copy(i,a+6),n.position=a+6+r}}}})))()}var La,Ra;function za(){return(za=t((()=>{La=Ta(),Sa(),Ra=class e{constructor(e=128){this._roffset=0,this.capacity=e,this.buffer=La.Buffer.allocUnsafe(e),this.position=0}static fromBuffer(t){let n=new e(0);return n.buffer=t,n.capacity=t.length,n.position=t.length,n._roffset=0,n}static wrap(t){let n=La.Buffer.isBuffer(t)?t:La.Buffer.from(t);return e.fromBuffer(n)}ensure(e){let t=this.position+e;if(t>this.capacity){let e=Math.max(this.capacity*2,t),n=La.Buffer.allocUnsafe(e);this.buffer.copy(n,0,0,this.position),this.buffer=n,this.capacity=e}}writeUInt8(e){this.ensure(1),this.buffer[this.position++]=e}writeInt8(e){this.ensure(1),this.buffer.writeInt8(e,this.position),this.position++}writeUInt16BE(e){this.ensure(2),this.buffer.writeUInt16BE(e,this.position),this.position+=2}writeInt16BE(e){this.ensure(2),this.buffer.writeInt16BE(e,this.position),this.position+=2}writeUInt32BE(e){this.ensure(4),this.buffer.writeUInt32BE(e,this.position),this.position+=4}writeInt32BE(e){this.ensure(4),this.buffer.writeInt32BE(e,this.position),this.position+=4}writeUInt64BE(e){if(this.ensure(8),typeof e==`number`){let t=Math.floor(e/4294967296),n=e>>>0;this.buffer.writeUInt32BE(t,this.position),this.buffer.writeUInt32BE(n,this.position+4)}else this.buffer.writeUInt32BE(e.high>>>0,this.position),this.buffer.writeUInt32BE(e.low>>>0,this.position+4);this.position+=8}writeInt64BE(e){if(this.ensure(8),typeof e==`number`){let t=Math.floor(e/4294967296),n=e>>>0;this.buffer.writeInt32BE(t,this.position),this.buffer.writeUInt32BE(n,this.position+4)}else this.buffer.writeInt32BE(e.high,this.position),this.buffer.writeUInt32BE(e.low>>>0,this.position+4);this.position+=8}writeDoubleBE(e){this.ensure(8),this.buffer.writeDoubleBE(e,this.position),this.position+=8}writeFloatBE(e){this.ensure(4),this.buffer.writeFloatBE(e,this.position),this.position+=4}write(e,t,n){if(typeof e==`string`){let r=n||La.Buffer.byteLength(e,t);this.ensure(r),this.buffer.write(e,this.position,r,t),this.position+=r}else{let t=n||e.length;this.ensure(t),e.copy(this.buffer,this.position,0,t),this.position+=t}return this}get roffset(){return this._roffset}set roffset(e){this._roffset=e}get woffset(){return this.position}set woffset(e){this.position=e}get length(){return this.position-this._roffset}readUInt8(e){let t=e===void 0?this._roffset:e;if(!(t>=this.position))return e===void 0&&this._roffset++,this.buffer[t]}readInt8(e){let t=e===void 0?this._roffset:e;return e===void 0&&this._roffset++,this.buffer.readInt8(t)}readUInt16BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt16BE(t);return e===void 0&&(this._roffset+=2),n}readInt16BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt16BE(t);return e===void 0&&(this._roffset+=2),n}readUInt32BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt32BE(t);return e===void 0&&(this._roffset+=4),n}readInt32BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt32BE(t);return e===void 0&&(this._roffset+=4),n}readUInt64BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt32BE(t),r=this.buffer.readUInt32BE(t+4);return e===void 0&&(this._roffset+=8),L.fromBits(r,n,!0)}readInt64BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt32BE(t),r=this.buffer.readUInt32BE(t+4);return e===void 0&&(this._roffset+=8),L.fromBits(r,n,!1)}readDoubleBE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readDoubleBE(t);return e===void 0&&(this._roffset+=8),n}readFloatBE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readFloatBE(t);return e===void 0&&(this._roffset+=4),n}toString(e,t,n){return this.buffer.toString(e,t,n)}slice(t,n){let r=new e(n-t);return this.buffer.copy(r.buffer,0,t,n),r.position=n-t,r}skipRead(e){this._roffset+=e}getRemainingBuffer(){return this.buffer.slice(this._roffset,this.position)}toBuffer(){return this.buffer.slice(0,this.position)}}})))()}var Ba;function Va(){return(Va=t((()=>{za(),Ba=class{constructor(e){this.decodingTypes=e,this.lastBytesConsumed=0,this.view=null}decode(e){if(e.length===0)throw this.lastBytesConsumed=0,Error(`Incomplete buffer`);let t=this.view;this.view=new DataView(e.buffer,e.byteOffset,e.byteLength);try{let t=this.tryDecode(e,0);if(t===void 0&&this.lastBytesConsumed===0)throw this.lastBytesConsumed=this.getMinHeaderSize(e[0]),this.lastBytesConsumed>e.length&&(this.lastBytesConsumed=e.length),Error(`Incomplete buffer`);return t}finally{this.view=t}}getLastBytesConsumed(e){return this.lastBytesConsumed}getMinHeaderSize(e){return e<128||e>=224||e>=160&&e<=191||e>=144&&e<=159||e>=128&&e<=143||e===192||e===194||e===195?1:e===196||e===199||e===204||e===208||e===212?2:e===197||e===200||e===205||e===209||e===213||e===217?3:e===210?4:e===202||e===198||e===201||e===206||e===214||e===218||e===220?5:e===211?6:e===203||e===215||e===219||e===221?9:e===216?10:e===217?18:1}tryDecode(e,t){let n=e.length;if(t>=n){this.lastBytesConsumed=0;return}let r=e[t],i=this.view;if(r<160){if(r<128)return this.lastBytesConsumed=1,r;if(r<144){let n=r&15;return this.decodeMap(e,t+1,n,1)}{let n=r&15;return this.decodeArray(e,t+1,n,1)}}if(r<192){let i=r&31;if(t+1+i>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=1+i,e.toString(`utf8`,t+1,t+1+i)}if(r>=224)return this.lastBytesConsumed=1,r-256;if(r===192)return this.lastBytesConsumed=1,null;if(r===194)return this.lastBytesConsumed=1,!1;if(r===195)return this.lastBytesConsumed=1,!0;if(r>=204&&r<=207){if(r===204){if(t+2>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2,e[t+1]}if(r===205){if(t+3>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3,i.getUint16(t+1,!1)}if(r===206){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getUint32(t+1,!1)}if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getUint32(t+1,!1)*4294967296+i.getUint32(t+5,!1)}if(r>=208&&r<=211){if(r===208){if(t+2>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2,i.getInt8(t+1)}if(r===209){if(t+3>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3,i.getInt16(t+1,!1)}if(r===210){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getInt32(t+1,!1)}if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getInt32(t+1,!1)*4294967296+i.getUint32(t+5,!1)}if(r===202){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getFloat32(t+1,!1)}if(r===203){if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getFloat64(t+1,!1)}if(r===217){if(t+2>n){this.lastBytesConsumed=0;return}let r=e[t+1];if(t+2+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2+r,e.toString(`utf8`,t+2,t+2+r)}if(r===218){if(t+3>n){this.lastBytesConsumed=0;return}let r=i.getUint16(t+1,!1);if(t+3+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3+r,e.toString(`utf8`,t+3,t+3+r)}if(r===219){if(t+5>n){this.lastBytesConsumed=0;return}let r=i.getUint32(t+1,!1);if(t+5+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5+r,e.toString(`utf8`,t+5,t+5+r)}let a;switch(r){case 196:if(t+2>n||(a=e[t+1],t+2+a>n)){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2+a,e.slice(t+2,t+2+a);case 197:if(t+3>n||(a=i.getUint16(t+1,!1),t+3+a>n)){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3+a,e.slice(t+3,t+3+a);case 198:if(t+5>n||(a=i.getUint32(t+1,!1),t+5+a>n)){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5+a,e.slice(t+5,t+5+a);case 220:if(t+3>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeArray(e,t+3,a,3);case 221:if(t+5>n){this.lastBytesConsumed=0;return}return a=i.getUint32(t+1,!1),this.decodeArray(e,t+5,a,5);case 222:if(t+3>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeMap(e,t+3,a,3);case 223:throw Error(`map too big to decode in JS`);case 212:return this.decodeFixExt(e,t,1,3);case 213:return this.decodeFixExt(e,t,2,4);case 214:return this.decodeFixExt(e,t,4,6);case 215:return this.decodeFixExt(e,t,8,10);case 216:return this.decodeFixExt(e,t,16,18);case 199:if(t+3>n){this.lastBytesConsumed=0;return}return a=e[t+1],this.decodeExt(e,t,a,3);case 200:if(t+4>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeExt(e,t,a,4);case 201:if(t+6>n){this.lastBytesConsumed=0;return}return a=i.getUint32(t+1,!1),this.decodeExt(e,t,a,6);default:throw Error(`Unknown MessagePack type: 0x${r.toString(16)}`)}}decodeArray(e,t,n,r){let i=[],a=0;for(let r=0;r<n;r++){let n=this.tryDecode(e,t+a);if(n===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}i.push(n),a+=this.lastBytesConsumed}return this.lastBytesConsumed=r+a,i}decodeMap(e,t,n,r){let i={},a=0;for(let r=0;r<n;r++){let n=this.tryDecode(e,t+a);if(n===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}a+=this.lastBytesConsumed;let r=this.tryDecode(e,t+a);if(r===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}a+=this.lastBytesConsumed,n===`__proto__`||n===`constructor`||n===`prototype`?Object.defineProperty(i,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):i[n]=r}return this.lastBytesConsumed=r+a,i}decodeFixExt(e,t,n,r){if(t+r>e.length){this.lastBytesConsumed=0;return}let i=e[t+1];return this.decodeExtData(e,t+2,i,n,r)}decodeExt(e,t,n,r){if(t+r+n>e.length){this.lastBytesConsumed=0;return}let i=e[t+r-1];return this.decodeExtData(e,t+r,i,n,r+n)}decodeExtData(e,t,n,r,i){let a=this.decodingTypes.get(n);if(a){let n=e.slice(t,t+r),o=a(Ra.fromBuffer(n));return this.lastBytesConsumed=i,o}if(n===0&&r===1&&e[t]===0)this.lastBytesConsumed=i;else throw Error(`Unable to find ext type ${n}`)}}})))()}var Ha,Ua;function Wa(){return(Wa=t((()=>{Ha=Ta(),Ia(),Va(),za(),Ua=class{constructor(e=64){this.initialCapacity=e,this.encodingTypes=new Map,this.decodingTypes=new Map,this.encoder=new Fa(this.encodingTypes),this.decoder=new Ba(this.decodingTypes)}registerEncoder(e,t,n){return this.encodingTypes.set(e,{check:t,encode:n}),this}registerDecoder(e,t){return this.decodingTypes.set(e,t),this}register(e,t,n,r){if(e<0||e>127)throw RangeError(`Bad type: 0 <= ${e} <= 127`);return this.registerEncoder(e,e=>e instanceof t,e=>{let t=new Ra(this.initialCapacity);return n(e,t),t.toBuffer()}),this.registerDecoder(e,r),this}encode(e,t){let n=this.encoder.encode(e);if(t)t.write(n);else{let e=n;e.toBuffer=function(){return this};let t=e.write;return e.write=function(e,n,r,i){return Ha.Buffer.isBuffer(e)?(this.copy(e,n||0),this.length):t.call(this,e,n,r,i)},e}}decode(e){if(e&&typeof e.getRemainingBuffer==`function`&&typeof e.skipRead==`function`){let t=e.getRemainingBuffer();try{return this.decoder.decode(t)}finally{let n=this.decoder.getLastBytesConsumed(t);e.skipRead(n)}}if(e&&typeof e.toBuffer==`function`&&typeof e.read==`function`&&typeof e.readUInt8==`function`){let t=e.roffset||0;try{return this.decoder.decode(e.toBuffer().slice(t))}finally{e.roffset=t+this.decoder.getLastBytesConsumed()}}return Ha.Buffer.isBuffer(e)?this.decoder.decode(e):e&&typeof e.toBuffer==`function`?this.decoder.decode(e.toBuffer()):this.decoder.decode(e)}}})))()}var Ga,Ka,qa,Ja,Ya,Xa,Za;function Qa(){return(Qa=t((()=>{Ga={},Ka={},qa=[],Ja={1:Error,2:SyntaxError,3:TypeError,4:ReferenceError,5:RangeError,6:EvalError,7:URIError},Ya=Object.keys(Ja).map(e=>+e);for(let e=0;e<Ya.length;e++){let t=Ya[e],n=Ja[t];Ga[n]=t,qa.push(n),Ka[n.name]=t}Xa=(e,t,n)=>{let r=new Ja[e](t);return r.stack=n,r},Za=e=>Ka[e.constructor.name]??Ka[Error.name]})))()}var $a,eo;function to(){return(to=t((()=>{Sa(),Wa(),Qa(),$a=e=>{e.register(126,Error,(t,n)=>{n.writeUInt16BE(Za(t)),e.encode(t.name,n),e.encode(t.stack,n),e.encode(t.message,n);let r=Object.keys(t).filter(e=>![`stack`,`message`,`name`].includes(e)&&t[e]!==void 0);n.writeUInt16BE(r.length);for(let i of r)e.encode(i,n),e.encode(t[i],n)},t=>{let n=t.readUInt16BE(),r=e.decode(t),i=e.decode(t),a=e.decode(t),o=Xa(n,a,i);o.name=r;let s=t.readUInt16BE();for(let n=0;n<s;n++){let n=e.decode(t);o[n]=e.decode(t)}return o}),e.register(125,Date,(e,t)=>{t.writeUInt64BE(e.getTime())},e=>new Date(e.readUInt64BE().toNumber())),e.register(124,Map,(t,n)=>{n.writeUInt32BE(t.size);for(let[r,i]of t.entries())e.encode(r,n),e.encode(i,n)},t=>{let n=new Map,r=t.readUInt32BE();for(let i=0;i<r;i++){let r=e.decode(t),i=e.decode(t);n.set(r,i)}return n}),e.register(123,Set,(t,n)=>{n.writeUInt32BE(t.size);for(let r of t.values())e.encode(r,n)},t=>{let n=new Set,r=t.readUInt32BE();for(let i=0;i<r;i++){let r=e.decode(t);n.add(r)}return n}),e.register(121,RegExp,(t,n)=>{e.encode(t.source,n),e.encode(t.flags,n)},t=>{let n=e.decode(t),r=e.decode(t);return new RegExp(n,r)}),e.register(120,BigInt,(t,n)=>{let r=t.toString();e.encode(r,n)},t=>{let n=e.decode(t);return BigInt(n)}),e.register(119,L,(e,t)=>{t.writeInt8(+!!e.unsigned),e.unsigned?t.writeUInt64BE(e):t.writeInt64BE(e)},e=>e.readInt8()?e.readUInt64BE():e.readInt64BE())},eo=new Ua,$a(eo)})))()}function no(){return na()}function ro(e,t,n,r){return{id:no(),service:e,method:t,input:n,context:r?.context,hints:r?.hints}}function io(e){return e.endsWith(`/`)?e.slice(0,-1):e}function ao(e){return e.replace(/^http/,`ws`)}function oo(e,t=1e3,n=3e4){let r=Math.max(1,t),i=Math.max(r,n),a=Math.min(r*2**Math.max(0,e-1),i),o=Math.max(0,a-r),s=r+Math.random()*o;return Math.floor(s)}function so(e,t){return t?(t.throwIfAborted(),new Promise((n,r)=>{let i=()=>t.removeEventListener(`abort`,a),a=()=>{i(),r(t.reason)};t.addEventListener(`abort`,a,{once:!0});try{e().then(e=>{i(),t.aborted?r(t.reason):n(e)},e=>{i(),r(t.aborted?t.reason:e)})}catch(e){i(),r(t.aborted?t.reason:e)}})):e()}function co(e,t,n){if(n?.throwIfAborted(),!Number.isFinite(e)||e<=0||e>2**31-1)throw RangeError(`Invocation timeout must be between 0 and 2147483647 milliseconds`);let r=new AbortController,i=()=>r.abort(n?.reason);n?.addEventListener(`abort`,i,{once:!0});let a=setTimeout(()=>r.abort(t),e);return{signal:r.signal,dispose(){clearTimeout(a),n?.removeEventListener(`abort`,i)}}}function lo(e,t){return t.throwIfAborted(),new Promise((n,r)=>{let i=()=>{clearTimeout(a),t.removeEventListener(`abort`,i),r(t.reason)},a=setTimeout(()=>{t.removeEventListener(`abort`,i),n()},e);t.addEventListener(`abort`,i,{once:!0})})}function uo(e){let t=Error(e.error?.message||`Method invocation failed`);return t.code=e.error?.code,e.error?.details!==void 0&&(t.details=e.error.details),e.httpStatus!==void 0&&(t.status=e.httpStatus),t}function fo(e,t){return new xs(e,t)}function po(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function mo(e){return po(e)&&typeof e.message==`string`&&(typeof e.code==`string`||typeof e.code==`number`&&Number.isFinite(e.code))}function ho(e,t,n){let r=n.ok?void 0:n.status;if(!n.ok&&po(e)&&e.error===!0&&mo(e))return{id:t,success:!1,error:e,httpStatus:r};if(e===void 0&&!n.ok)return{id:t,success:!1,error:{code:`HTTP_ERROR`,message:`HTTP ${n.status}: ${n.statusText}`},httpStatus:r};if(!po(e)||typeof e.success!=`boolean`||e.id!==t)throw fo(`Invalid RPC response envelope or mismatched request id`,r);if(e.success){if(!n.ok)throw fo(`Unsuccessful HTTP response cannot carry RPC success`,r);return{id:t,success:!0,data:e.data}}if(!mo(e.error))throw fo(`Invalid RPC error envelope`,r);return{id:t,success:!1,error:e.error,...r===void 0?{}:{httpStatus:r}}}function go(e){let t={},n=!1;for(let r of Object.keys(e)){if(Ts.has(r))continue;let i=e[r];i!==void 0&&typeof i!=`function`&&(t[r]=i,n=!0)}return n?t:null}function _o(e){if(!e)return!1;let t=e.code,n=e.message??String(e);return typeof t==`string`&&(t===`NOT_FOUND`||t===`DEFINITION_NOT_FOUND`)?!0:typeof n==`string`&&n.length>0?/Definition.*not\s*found/i.test(n)||/Service.*not\s*found/i.test(n):!1}function vo(e,t){let n=!1,r=()=>Math.min(Gs,Math.max(0,t-Date.now())),i=setTimeout(a,r());function a(){n||(t>Date.now()?i=setTimeout(a,r()):(n=!0,e()))}return()=>{n=!0,clearTimeout(i)}}function yo(e){let t=new Xs(e);return new Proxy(t,{get(e,t){if(t in e||typeof t==`symbol`){let n=e[t];return typeof n==`function`?n.bind(e):n}if(e.getBackendNames().includes(t))return new Proxy({},{get(n,r){if(typeof r!=`symbol`)return e.backend(t).service(r)}})}})}var bo,xo,So,q,Co,wo,To,Eo,Do,Oo,ko,Ao,jo,Mo,No,Po,Fo,Io,Lo,Ro,zo,Bo,Vo,J,Ho,Uo,Wo,Go,Y,Ko,qo,Jo,Yo,Xo,Zo,Qo,X,$o,es,ts,ns,rs,is,as,os,Z,ss,cs,ls,us,ds,fs,ps,ms,hs,gs,_s,vs,ys,bs,xs,Ss,Cs,Q,ws,Ts,Es,Ds,Os,ks,As,js,Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs;function Zs(){return(Zs=t((()=>{Wn(),Tr(),er(),Qn(),mr(),cr(),Jr(),ra(),to(),za(),bo=Ta(),xo=Object.defineProperty,So=Object.getOwnPropertyNames,q=(e,t,n)=>function(){if(n)throw n[0];try{return e&&(t=(0,e[So(e)[0]])(e=0)),t}catch(e){throw n=[e],e}},Co=(e,t)=>{for(var n in t)xo(e,n,{get:t[n],enumerable:!0})},wo=q({"src/core/reference.ts"(){}}),To=q({"src/errors/codes.ts"(){}}),Eo=q({"src/errors/core.ts"(){}}),Fo=q({"src/errors/netron.ts"(){Eo(),To(),Do=class e extends dr{serviceId;methodName;peerId;constructor(t){super(t),this.name=`NetronError`,this.serviceId=t.serviceId,this.methodName=t.methodName,this.peerId=t.peerId,Object.setPrototypeOf(this,e.prototype)}toJSON(){return{...super.toJSON(),serviceId:this.serviceId,methodName:this.methodName,peerId:this.peerId}}},Oo=class e extends Do{constructor(t,n){super({code:F.NOT_FOUND,message:`Service not found: ${t}`,details:n,serviceId:t}),this.name=`ServiceNotFoundError`,Object.setPrototypeOf(this,e.prototype)}static create(t){return new e(t)}},ko=class e extends Do{constructor(t,n,r){super({code:F.NOT_FOUND,message:`Method not found: ${t}.${n}`,details:r,serviceId:t,methodName:n}),this.name=`MethodNotFoundError`,Object.setPrototypeOf(this,e.prototype)}static create(t,n){return new e(t,n)}},Ao=class e extends Do{transport;address;constructor(t){super(t),this.name=`TransportError`,this.transport=t.transport,this.address=t.address,Object.setPrototypeOf(this,e.prototype)}static connectionFailed(t,n,r){return new e({code:F.SERVICE_UNAVAILABLE,message:`Failed to connect to ${n} via ${t}`,transport:t,address:n,cause:r})}static connectionTimeout(t,n){return new e({code:F.REQUEST_TIMEOUT,message:`Connection timeout to ${n} via ${t}`,transport:t,address:n})}static connectionClosed(t,n){return new e({code:F.SERVICE_UNAVAILABLE,message:n||`Connection closed unexpectedly`,transport:t,details:{reason:n}})}toJSON(){return{...super.toJSON(),transport:this.transport,address:this.address}}},jo=class e extends Do{constructor(t){super(t),this.name=`PeerError`,Object.setPrototypeOf(this,e.prototype)}static notFound(t){return new e({code:F.NOT_FOUND,message:`Peer not found: ${t}`,peerId:t})}static disconnected(t,n){return new e({code:F.SERVICE_UNAVAILABLE,message:`Peer disconnected: ${t}${n?` (${n})`:``}`,peerId:t,details:{reason:n}})}static unauthorized(t){return new e({code:F.UNAUTHORIZED,message:`Peer not authorized: ${t}`,peerId:t})}},Mo=class e extends Do{rpcId;constructor(t){super(t),this.name=`RpcError`,this.rpcId=t.rpcId,Object.setPrototypeOf(this,e.prototype)}static timeout(t,n,r){return new e({code:F.REQUEST_TIMEOUT,message:`RPC call ${t}.${n} timed out after ${r}ms`,serviceId:t,methodName:n,details:{timeout:r}})}static invalidRequest(t,n){return new e({code:F.BAD_REQUEST,message:`Invalid RPC request: ${t}`,details:n})}static invalidResponse(t,n,r){return new e({code:F.INTERNAL_ERROR,message:`Invalid RPC response from ${t}.${n}`,serviceId:t,methodName:n,details:r})}toJSON(){return{...super.toJSON(),rpcId:this.rpcId}}},No=class e extends Do{streamId;constructor(t){super(t),this.name=`StreamError`,this.streamId=t.streamId,Object.setPrototypeOf(this,e.prototype)}static closed(t,n){return new e({code:F.GONE,message:`Stream closed: ${t}${n?` (${n})`:``}`,streamId:t,details:{reason:n}})}static error(t,n){return new e({code:F.INTERNAL_ERROR,message:`Stream error: ${n.message}`,streamId:t,cause:n})}static backpressure(t,n){return new e({code:F.TOO_MANY_REQUESTS,message:`Stream backpressure: buffer size ${n}`,streamId:t,details:{bufferSize:n}})}toJSON(){return{...super.toJSON(),streamId:this.streamId}}},Po=class e extends Do{serializationType;constructor(t){super(t),this.name=`SerializationError`,this.serializationType=t.serializationType,Object.setPrototypeOf(this,e.prototype)}static encode(t,n){return new e({code:F.INTERNAL_ERROR,message:`Failed to encode value: ${typeof t}`,serializationType:`encode`,cause:n})}static decode(t,n){let r=n?.message??`Failed to decode data`;return new e({code:F.BAD_REQUEST,message:r,serializationType:`decode`,cause:n})}toJSON(){return{...super.toJSON(),serializationType:this.serializationType}}}}}),Io=q({"src/errors/serialization.ts"(){Eo()}}),Ro=q({"src/errors/factories.ts"(){Eo(),To(),Fo(),Lo={serviceNotFound(e){return Oo.create(e)},methodNotFound(e,t){return ko.create(e,t)},connectionFailed(e,t,n){return Ao.connectionFailed(e,t,n)},connectionTimeout(e,t){return Ao.connectionTimeout(e,t)},connectionClosed(e,t){return Ao.connectionClosed(e,t)},peerNotFound(e){return jo.notFound(e)},peerDisconnected(e,t){return jo.disconnected(e,t)},peerUnauthorized(e){return jo.unauthorized(e)},rpcTimeout(e,t,n){return Mo.timeout(e,t,n)},invalidRequest(e,t){return Mo.invalidRequest(e,t)},invalidResponse(e,t,n){return Mo.invalidResponse(e,t,n)},streamClosed(e,t){return No.closed(e,t)},streamError(e,t){return No.error(e,t)},streamBackpressure(e,t){return No.backpressure(e,t)},serializeEncode(e,t){return Po.encode(e,t)},serializeDecode(e,t){return Po.decode(e,t)}}}}),Vo=q({"src/errors/legacy.ts"(){Fo(),To(),zo=class extends Do{constructor(e,t){super({code:F.SERVICE_UNAVAILABLE,message:e,details:t}),this.name=`ConnectionError`}},Bo=class extends Do{constructor(e,t){super({code:F.REQUEST_TIMEOUT,message:e,details:t}),this.name=`TimeoutError`}}}}),J=q({"src/errors/index.ts"(){To(),Eo(),Fo(),Io(),Ro(),Vo(),To(),Eo(),Fo(),Ro()}}),Jo=q({"src/core/readable-stream.ts"(){J(),Ho=1e4,Uo=16,Wo=1024,Go=3e4,Y={IDLE:`IDLE`,ACTIVE:`ACTIVE`,PAUSED:`PAUSED`,CLOSING:`CLOSING`,CLOSED:`CLOSED`,ERROR:`ERROR`},Ko={RECOVERABLE:`RECOVERABLE`,FATAL:`FATAL`},qo=class e extends ReadableStream{peer;buffer=new Map;expectedIndex=0;timeout;id;isComplete=!1;isLive;events=new Wr;controller;state=Y.IDLE;highWaterMark;maxBufferSize;onErrorCallback;metrics={bytesReceived:0,packetsReceived:0,backpressureEvents:0,bufferPeakSize:0,currentBufferSize:0,estimatedMemoryUsage:0,state:Y.IDLE,isPaused:!1};cleanupInterval;constructor({peer:e,streamId:t,isLive:n=!1,highWaterMark:r=Uo,maxBufferSize:i=Ho,onError:a}){let o;super({start(e){o=e},pull(){},cancel(e){console.log(`Stream ${t} cancelled:`,e)}}),this.peer=e,this.id=t,this.isLive=n,this.highWaterMark=r,this.maxBufferSize=i,this.onErrorCallback=a,this.controller=o,this.peer.logger&&this.peer.logger.info({streamId:this.id,isLive:n,highWaterMark:r,maxBufferSize:i},`Creating readable stream`),this.peer.readableStreams.set(this.id,this),this.transitionState(Y.ACTIVE),this.isLive||(this.resetTimeout(),this.startBufferCleanup()),this.events.on(`close`,this.cleanup),this.events.on(`error`,this.handleError)}transitionState(e){let t=this.state;if(!{[Y.IDLE]:[Y.ACTIVE,Y.CLOSED,Y.ERROR],[Y.ACTIVE]:[Y.PAUSED,Y.CLOSING,Y.CLOSED,Y.ERROR],[Y.PAUSED]:[Y.ACTIVE,Y.CLOSING,Y.ERROR],[Y.CLOSING]:[Y.CLOSED,Y.ERROR],[Y.CLOSED]:[],[Y.ERROR]:[Y.CLOSED]}[t].includes(e)){let n=Error(`Invalid state transition: ${t} -> ${e} for stream ${this.id}`);this.peer.logger&&this.peer.logger.warn({streamId:this.id,oldState:t,newState:e},n.message)}this.state=e,this.metrics.state=e,this.metrics.isPaused=e===Y.PAUSED,this.peer.logger&&this.peer.logger.debug({streamId:this.id,oldState:t,newState:e},`Stream state transition`),this.events.emit(`stateChange`,{oldState:t,newState:e})}startBufferCleanup(){this.cleanupInterval=setInterval(()=>{this.performBufferCleanup()},Go)}performBufferCleanup(){if(this.state!==Y.CLOSED&&this.state!==Y.ERROR&&this.buffer.size>0){this.peer.logger&&this.peer.logger.debug({streamId:this.id,bufferSize:this.buffer.size},`Performing buffer cleanup`);let e=[];for(let[t]of Array.from(this.buffer.entries()))t<this.expectedIndex-100&&e.push(t);for(let t of e)this.buffer.delete(t),this.peer.logger&&this.peer.logger.warn({streamId:this.id,index:t},`Removed stale packet from buffer`);this.updateBufferMetrics()}}onPacket(e){if(this.state===Y.CLOSED||this.state===Y.ERROR)this.peer.logger&&this.peer.logger.warn({streamId:this.id,state:this.state},`Received packet for closed/errored stream`);else{if(this.state===Y.PAUSED&&this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Received packet while paused`),this.resetTimeout(),this.metrics.packetsReceived++,e.data){let t=typeof e.data==`string`?e.data.length:e.data.byteLength??Wo;this.metrics.bytesReceived+=t}if(this.buffer.size>=this.maxBufferSize){this.peer.logger&&this.peer.logger.error({streamId:this.id,size:this.buffer.size},`Stream buffer overflow`);let e=Lo.streamBackpressure(String(this.id),this.buffer.size);this.handleStreamError(e,Ko.FATAL)}else{for(this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:e.streamIndex},`Processing packet`),e.isLastChunk()&&e.data===null||this.buffer.set(e.streamIndex,e.data),this.updateBufferMetrics(),this.checkBackpressure();this.buffer.has(this.expectedIndex);){let e=this.buffer.get(this.expectedIndex);this.buffer.delete(this.expectedIndex),this.expectedIndex++;try{this.controller?.enqueue(e)}catch{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Stream backpressure detected`),this.buffer.set(this.expectedIndex-1,e),this.expectedIndex--,this.handleStreamError(Error(`Failed to enqueue chunk`),Ko.RECOVERABLE);break}}if(this.updateBufferMetrics(),e.isLastChunk()){this.peer.logger&&this.peer.logger.info({streamId:this.id},`Received last chunk`),this.isComplete=!0,this.transitionState(Y.CLOSING);try{this.controller?.close(),this.transitionState(Y.CLOSED)}catch{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Error closing stream`)}}}}}updateBufferMetrics(){this.metrics.currentBufferSize=this.buffer.size,this.buffer.size>this.metrics.bufferPeakSize&&(this.metrics.bufferPeakSize=this.buffer.size),this.metrics.estimatedMemoryUsage=this.buffer.size*Wo}checkBackpressure(){let e=this.buffer.size>=this.highWaterMark;e&&this.state===Y.ACTIVE?this.pause():!e&&this.state===Y.PAUSED&&this.resume()}pause(){this.state===Y.ACTIVE&&(this.peer.logger&&this.peer.logger.warn({streamId:this.id,bufferSize:this.buffer.size},`Pausing stream due to backpressure`),this.transitionState(Y.PAUSED),this.metrics.backpressureEvents++,this.events.emit(`backpressure`,{bufferSize:this.buffer.size,highWaterMark:this.highWaterMark}))}resume(){this.state===Y.PAUSED&&(this.peer.logger&&this.peer.logger.info({streamId:this.id},`Resuming stream after backpressure`),this.transitionState(Y.ACTIVE),this.events.emit(`resume`))}get desiredSize(){return this.highWaterMark-this.buffer.size}get isPaused(){return this.state===Y.PAUSED}getState(){return this.state}getMetrics(){return{...this.metrics}}handleStreamError(e,t){if(this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e,severity:t},`Stream error occurred`),this.onErrorCallback)try{this.onErrorCallback(e,t)}catch(e){this.peer.logger&&this.peer.logger.error({streamId:this.id,callbackError:e},`Error in onError callback`)}t===Ko.FATAL?this.destroy(e):this.events.emit(`error`,e)}resetTimeout(){if(this.isLive)return;this.timeout&&clearTimeout(this.timeout);let e=this.peer.options?.streamTimeout??6e4;this.peer.logger&&this.peer.logger.debug({streamId:this.id,timeoutDuration:e},`Resetting stream timeout`),this.timeout=setTimeout(()=>{let t=`Stream ${this.id} inactive for ${e}ms, closing.`;this.peer.logger&&this.peer.logger.warn(t),this.buffer.clear(),this.updateBufferMetrics(),this.destroy(Lo.streamClosed(String(this.id),t))},e)}closeStream(e=!1){if(this.state===Y.CLOSED)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close already closed stream`);else if(this.isLive&&!e)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close live stream`);else{this.peer.logger&&this.peer.logger.info({streamId:this.id,force:e},`Closing stream`),this.transitionState(Y.CLOSING);try{this.controller?.close(),this.transitionState(Y.CLOSED)}catch{this.transitionState(Y.CLOSED)}this.isLive&&e&&this.destroy()}}forceClose(e){if(this.state===Y.CLOSED)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to force close already closed stream`);else{this.peer.logger&&this.peer.logger.info({streamId:this.id,reason:e},`Force closing stream`),this.transitionState(Y.CLOSING),this.isComplete=!0;try{this.controller?.close(),this.transitionState(Y.CLOSED)}catch{this.transitionState(Y.CLOSED)}setTimeout(()=>{this.events.emit(`close`),this.cleanup()},0)}}cleanup=()=>{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Cleaning up stream resources`),this.timeout&&=(clearTimeout(this.timeout),void 0),this.cleanupInterval&&=(clearInterval(this.cleanupInterval),void 0),this.peer.readableStreams.delete(this.id),this.buffer.clear(),this.updateBufferMetrics()};handleError=e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Stream error occurred`),this.transitionState(Y.ERROR),this.cleanup()};destroy(e){if(this.state===Y.CLOSED)this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to destroy already closed stream`);else{if(this.peer.logger&&this.peer.logger.info({streamId:this.id,error:e},`Destroying stream`),e){this.transitionState(Y.ERROR);try{this.controller?.error(e)}catch{}this.events.emit(`error`,e)}else{this.transitionState(Y.CLOSING);try{this.controller?.close()}catch{}}this.transitionState(Y.CLOSED),this.cleanup()}}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}static create(t,n,r=!1){return new e({peer:t,streamId:n,isLive:r})}}}}),Yo=q({"src/packet/uid.ts"(){}}),Xo=q({"src/packet/packet.ts"(){}}),Zo=q({"src/packet/types.ts"(){}}),es=q({"src/core/writable-stream.ts"(){Yo(),Xo(),Zo(),J(),Qo=new Un,X={IDLE:`IDLE`,ACTIVE:`ACTIVE`,DRAINING:`DRAINING`,CLOSING:`CLOSING`,CLOSED:`CLOSED`,ERROR:`ERROR`},$o=class e extends WritableStream{id;peer;index=0;isLive;state=X.IDLE;events=new Wr;writeBuffer=[];highWaterMark;retryConfig;errorHandler;metrics={bytesSent:0,packetsSent:0,retryCount:0,failedWrites:0,bufferSize:0,state:X.IDLE};isProcessing=!1;constructor({peer:e,streamId:t,isLive:n=!1,highWaterMark:r=16,retry:i,onError:a}){super({start:e=>{},write:async e=>this._write(e),close:async()=>this._final(),abort:e=>{this._abort(e)}}),this.peer=e,this.isLive=n,this.id=t??Qo.next(),this.highWaterMark=r,this.errorHandler=a,this.retryConfig={maxAttempts:i?.maxAttempts??3,initialDelay:i?.initialDelay??100,maxDelay:i?.maxDelay??5e3,backoffFactor:i?.backoffFactor??2},this.peer.logger&&this.peer.logger.info({streamId:this.id,isLive:n,highWaterMark:this.highWaterMark,retryConfig:this.retryConfig},`Creating writable stream`),this.peer.writableStreams.set(this.id,this),this.events.once(`close`,this.cleanup)}async pipeFrom(e){this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Starting pipe operation`);let t=this.getWriter();try{if(Symbol.asyncIterator in e)for await(let n of e)await t.write(n);else{let n=e.getReader();try{for(;;){let{done:e,value:r}=await n.read();if(e)break;await t.write(r)}}finally{n.releaseLock()}}await t.close(),this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Pipe operation completed`)}catch(e){throw this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Pipe operation failed`),await t.abort(e),e}finally{t.releaseLock()}}async _write(e){if(this.state===X.CLOSED||this.state===X.CLOSING){let e=Lo.streamClosed(String(this.id),`Attempt to write to closed stream`);throw this.peer.logger&&this.peer.logger.warn({streamId:this.id,state:this.state},`Attempt to write to closed stream`),e}if(this.state===X.ERROR)throw Lo.streamError(String(this.id),Error(`Stream is in error state`));this.transitionState(X.ACTIVE);let t=await this.enqueueWrite(e,this.index++);return this.isProcessing||this.processWriteBuffer().catch(e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Error processing write buffer`)}),t}enqueueWrite(e,t){return new Promise((n,r)=>{let i={chunk:e,index:t,resolve:n,reject:r,retryCount:0,timestamp:Date.now()};this.writeBuffer.push(i),this.metrics.bufferSize=this.writeBuffer.length,this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:t,bufferSize:this.writeBuffer.length},`Enqueued write to buffer`)})}async processWriteBuffer(){if(!this.isProcessing){this.isProcessing=!0;try{for(;this.writeBuffer.length>0;){let e=this.writeBuffer[0];if(!e)this.writeBuffer.shift();else try{await this.sendChunkWithRetry(e),this.writeBuffer.shift(),this.metrics.bufferSize=this.writeBuffer.length,e.resolve(),this.metrics.packetsSent++;let t=this.estimateChunkSize(e.chunk);this.metrics.bytesSent+=t,this.writeBuffer.length===this.highWaterMark-1&&(this.transitionState(X.DRAINING),this.events.emit(`drain`),this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Buffer draining below high water mark`))}catch(t){this.writeBuffer.shift(),this.metrics.bufferSize=this.writeBuffer.length,this.metrics.failedWrites++,this.transitionState(X.ERROR),this.errorHandler&&this.errorHandler(t);try{await this.peer.sendPacket(wr(Cr.nextId(),1,6,{streamId:this.id,message:t.message}))}catch(e){this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Failed to send stream error packet`)}e.reject(t);break}}this.writeBuffer.length===0&&this.state!==X.ERROR&&this.transitionState(X.IDLE)}finally{this.isProcessing=!1}}}async sendChunkWithRetry(e){let t,n=this.retryConfig.initialDelay;for(let r=0;r<=this.retryConfig.maxAttempts;r++)try{this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:e.index,attempt:r,retryCount:e.retryCount},`Sending chunk`),await this.peer.sendStreamChunk(this.id,e.chunk,e.index,!1,this.isLive);return}catch(i){t=i instanceof Error?i:Error(String(i));let a=this.isErrorRetryable(i);if(!a||r>=this.retryConfig.maxAttempts)throw this.peer.logger&&this.peer.logger.error({streamId:this.id,index:e.index,attempt:r,isRetryable:a},`Write failed, not retrying`),t;e.retryCount++,this.metrics.retryCount++,this.peer.logger&&this.peer.logger.warn({streamId:this.id,index:e.index,attempt:r,delay:n,error:i.message},`Write failed, retrying`),this.events.emit(`retry`,{index:e.index,attempt:r,error:t,delay:n}),await this.delay(n),n=Math.min(n*this.retryConfig.backoffFactor,this.retryConfig.maxDelay)}throw t}isErrorRetryable(e){if(e.code!==void 0){if(typeof e.code==`number`)return rr(e.code);if(e.code===`ECONNREFUSED`||e.code===`ECONNRESET`||e.code===`ETIMEDOUT`||e.code===`ENOTFOUND`||e.code===`ENETUNREACH`)return!0}return!(e instanceof TypeError||e instanceof ReferenceError)}estimateChunkSize(e){if(e==null)return 0;if(typeof e==`string`)return e.length*2;if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))return e.byteLength;try{return JSON.stringify(e).length*2}catch{return 0}}delay(e){return new Promise(t=>setTimeout(t,e))}async _final(){if(this.state===X.CLOSED)throw this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to finalize closed stream`),Lo.streamClosed(String(this.id),`Attempt to finalize closed stream`);this.transitionState(X.CLOSING),this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:this.index},`Finalizing stream`);try{await this.flush(),this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:this.index},`Sending final chunk`),await this.peer.sendStreamChunk(this.id,null,this.index,!0,this.isLive)}catch(e){throw this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Error sending final chunk`),e}finally{this.closeStream()}}_abort(e){this.peer.logger&&this.peer.logger.info({streamId:this.id,reason:e},`Aborting stream`);let t=e instanceof Error?e:Error(String(e));this.destroy(t)}closeStream(){this.state===X.CLOSED?this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close already closed stream`):(this.peer.logger&&this.peer.logger.info({streamId:this.id,state:this.state},`Closing stream`),this.transitionState(X.CLOSED),this.clearPendingWrites(),this.cleanup())}destroy(e){if(this.state===X.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to destroy already closed stream`);return}this.peer.logger&&this.peer.logger.info({streamId:this.id,error:e,state:this.state},`Destroying stream`),e?this.transitionState(X.ERROR):this.transitionState(X.CLOSED),this.clearPendingWrites(e),this.cleanup(),e&&(this.events.emit(`error`,e),this.errorHandler&&this.errorHandler(e));let t=e?e.message:`Stream destroyed`;this.peer.sendPacket(wr(Cr.nextId(),1,7,{streamId:this.id,reason:t})).catch(e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Failed to send stream close packet`)})}cleanup=()=>{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Cleaning up stream resources`),this.peer.writableStreams.delete(this.id)};transitionState(e){let t=this.state;t!==e&&(this.state=e,this.metrics.state=e,this.peer.logger&&this.peer.logger.debug({streamId:this.id,oldState:t,newState:e},`Stream state transition`),this.events.emit(`state-change`,{oldState:t,newState:e}))}clearPendingWrites(e){let t=this.writeBuffer.length;if(t>0){let n=e||Error(`Stream closed with pending writes`);this.peer.logger&&this.peer.logger.warn({streamId:this.id,pendingCount:t},`Clearing pending writes`);for(let e of this.writeBuffer)e.reject(n);this.writeBuffer=[],this.metrics.bufferSize=0}}async flush(){this.writeBuffer.length!==0&&(this.peer.logger&&this.peer.logger.debug({streamId:this.id,pendingWrites:this.writeBuffer.length},`Flushing pending writes`),await new Promise((e,t)=>{let n=()=>{this.writeBuffer.length===0?e():this.state===X.ERROR?t(Error(`Stream in error state during flush`)):setTimeout(n,10)};n()}))}getMetrics(){return{...this.metrics}}getState(){return this.state}isWritable(){return this.state!==X.CLOSED&&this.state!==X.CLOSING&&this.state!==X.ERROR}isBufferFull(){return this.writeBuffer.length>=this.highWaterMark}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}static create(t,n,r=!1,i){let a=new e({peer:t,streamId:i,isLive:r});return n&&a.pipeFrom(n).catch(()=>void 0),a}}}}),ns=q({"src/core/stream-reference.ts"(){Jo(),es(),ts=class e{constructor(e,t,n,r){this.streamId=e,this.type=t,this.isLive=n,this.peerId=r}streamId;type;isLive;peerId;static from(t){let n=t instanceof qo?`readable`:`writable`;return new e(t.id,n,t.isLive,t.peer.id)}static to(e,t){if(e.type===`readable`){let n=t.writableStreams.get(e.streamId);return n||=new $o({peer:t,streamId:e.streamId,isLive:e.isLive}),n}{let n=t.readableStreams.get(e.streamId);return n||=new qo({peer:t,streamId:e.streamId,isLive:e.isLive}),n}}}}}),rs=q({"src/utils/lru-cache.ts"(){}}),is=q({"src/core/definition.ts"(){}}),as=q({"src/utils/validation.ts"(){}}),os=q({"src/utils/index.ts"(){rs(),as()}}),ss=q({"src/middleware/types.ts"(){Z={PRE_REQUEST:`pre-request`,POST_RESPONSE:`post-response`,ERROR:`error`}}}),ls=q({"src/middleware/pipeline.ts"(){ss(),cs=class{globalMiddleware=new Map;serviceMiddleware=new Map;methodMiddleware=new Map;metrics={executions:0,avgTime:0,errors:0,skips:0,byMiddleware:new Map};constructor(){for(let e of Object.values(Z))this.globalMiddleware.set(e,[])}use(e,t,n=Z.PRE_REQUEST){let r={middleware:e,config:{name:t?.name||`anonymous`,priority:t?.priority??100,...t},stage:n},i=this.globalMiddleware.get(n)||[];i.push(r),i.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0)),this.globalMiddleware.set(n,i)}useForService(e,t,n,r=Z.PRE_REQUEST){this.serviceMiddleware.has(e)||this.serviceMiddleware.set(e,new Map);let i=this.serviceMiddleware.get(e);i.has(r)||i.set(r,[]);let a={middleware:t,config:{name:n?.name||`${e}-middleware`,priority:n?.priority??100,...n},stage:r},o=i.get(r);o.push(a),o.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0))}useForMethod(e,t,n,r,i=Z.PRE_REQUEST){let a=`${e}.${t}`;this.methodMiddleware.has(a)||this.methodMiddleware.set(a,new Map);let o=this.methodMiddleware.get(a);o.has(i)||o.set(i,[]);let s={middleware:n,config:{name:r?.name||`${a}-middleware`,priority:r?.priority??100,...r},stage:i},c=o.get(i);c.push(s),c.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0))}getMiddleware(e,t,n){let r=n?[n]:Object.values(Z),i=[];for(let n of r){let r=this.globalMiddleware.get(n)||[];if(i.push(...r),e){let t=this.serviceMiddleware.get(e);if(t){let e=t.get(n)||[];i.push(...e)}}if(e&&t){let r=`${e}.${t}`,a=this.methodMiddleware.get(r);if(a){let e=a.get(n)||[];i.push(...e)}}}return i.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0)),i}async execute(e,t){let n=performance.now();this.metrics.executions++;let r=this.getMiddleware(e.service,e.method,t).filter(t=>{if(t.config.condition&&!t.config.condition(e))return this.metrics.skips++,!1;if(t.config.services){if(Array.isArray(t.config.services)){if(!t.config.services.includes(e.service))return!1}else if(t.config.services instanceof RegExp&&!t.config.services.test(e.service))return!1}if(t.config.methods){if(Array.isArray(t.config.methods)){if(!t.config.methods.includes(e.method))return!1}else if(t.config.methods instanceof RegExp&&!t.config.methods.test(e.method))return!1}return!0}),i=0,a=async()=>{if(e.skipRemaining||i>=r.length)return;let t=r[i++];if(!t)return;let n=performance.now(),o=this.metrics.byMiddleware.get(t.config.name)||{executions:0,avgTime:0,errors:0};try{await t.middleware(e,a),o.executions++;let r=performance.now()-n;o.avgTime=(o.avgTime*(o.executions-1)+r)/o.executions,e.timing.middlewareTimes.set(t.config.name,r)}catch(n){throw o.errors++,this.metrics.errors++,t.config.onError&&t.config.onError(n,e),n}finally{this.metrics.byMiddleware.set(t.config.name,o)}};try{await a()}finally{let e=performance.now()-n;this.metrics.avgTime=(this.metrics.avgTime*(this.metrics.executions-1)+e)/this.metrics.executions}}clear(){this.globalMiddleware.clear(),this.serviceMiddleware.clear(),this.methodMiddleware.clear();for(let e of Object.values(Z))this.globalMiddleware.set(e,[]);this.metrics={executions:0,avgTime:0,errors:0,skips:0,byMiddleware:new Map}}getMetrics(){return{...this.metrics}}}}}),us=q({"src/auth/client-token-transports/bearer.ts"(){}}),ds=q({"src/middleware/built-in/auth.ts"(){us()}}),fs=q({"src/middleware/built-in/auth-error-handler.ts"(){}}),ps=q({"src/middleware/built-in/logging.ts"(){}}),ms=q({"src/middleware/built-in/timing.ts"(){}}),hs=q({"src/middleware/built-in/error-transform.ts"(){}}),gs=q({"src/middleware/built-in/csrf.ts"(){}}),_s=q({"src/middleware/built-in/index.ts"(){ds(),fs(),ps(),ms(),hs(),gs()}}),vs=q({"src/middleware/index.ts"(){ss(),ls(),_s()}}),ys=q({"src/client/request-lifecycle.ts"(){}}),bs={},Co(bs,{HttpClient:()=>Ss}),Cs=q({"src/client/http-client.ts"(){os(),vs(),ys(),xs=class extends Error{constructor(e,t){super(e),this.status=t,this.name=`InvalidResponseError`}status;code=`INVALID_RESPONSE`},Ss=class{baseUrl;timeout;headers;redirect;retry;maxRetries;auth;state=`disconnected`;middleware;metrics={requestsSent:0,responsesReceived:0,errors:0,avgLatency:0};constructor(e){this.baseUrl=io(e.url),this.timeout=e.timeout??3e4,this.headers=e.headers??{},this.redirect=e.redirect,this.retry=e.retry??!1,this.maxRetries=e.maxRetries??3,this.auth=e.auth,this.middleware=e.middleware||new cs}async connect(){this.state=`connecting`,this.state=`connected`}async invoke(e,t,n,r){r?.signal?.throwIfAborted();let i={service:e,method:t,args:n,request:{headers:{...this.headers},timeout:r?.timeout??r?.hints?.timeout??this.timeout,metadata:r?.context},timing:{start:performance.now(),middlewareTimes:new Map},metadata:new Map,transport:`http`};if(await so(()=>this.middleware.execute(i,Z.PRE_REQUEST),r?.signal),i.skipRemaining)return i.response?.data;let a=i.request?.timeout??this.timeout,o=co(a,Object.assign(Error(`Request timeout after ${a}ms`),{code:`TIMEOUT`}),r?.signal);try{for(let s=0;;s++)try{o.signal.throwIfAborted();let s=ro(e,t,n,{context:i.request?.metadata,hints:{...r?.hints,timeout:a}}),c=i.request?.credentials??this.auth?.getRequestCredentials(),l=await this.sendRequest(s,o.signal,r?.idempotent===!0,i.request?.headers,r?.skipAuth??!1,c);if(!l.success)throw uo(l);return i.response={data:l.data,headers:{},metadata:{}},await so(()=>this.middleware.execute(i,Z.POST_RESPONSE),o.signal),i.response.data}catch(e){o.signal.throwIfAborted(),i.error=e,i.metadata.delete(`auth:retry`);try{await so(()=>this.middleware.execute(i,Z.ERROR),o.signal)}catch{}if(o.signal.throwIfAborted(),s<1&&i.metadata.get(`auth:retry`)){i.metadata.delete(`auth:retry`),i.error=void 0;continue}throw e}}finally{o.dispose()}}async sendRequest(e,t,n,r,i=!1,a){let o=`${this.baseUrl}/netron/invoke`,s=new Headers({"Content-Type":`application/json`,Accept:`application/json`,...this.headers,...r});if(s.set(`X-Request-ID`,e.id),this.auth&&!i&&!s.has(`Authorization`))for(let[e,t]of Object.entries(this.auth.getAuthHeaders()))s.set(e,t);let c=JSON.stringify(e);for(let r=0;;r++){t.throwIfAborted();let i=performance.now();try{this.metrics.requestsSent++;let n=await so(()=>fetch(o,{method:`POST`,headers:s,body:c,signal:t,redirect:this.redirect,...a===void 0?{}:{credentials:a}}),t),r;try{r=await so(()=>n.json(),t)}catch{if(t.throwIfAborted(),n.ok)throw fo(`Response body is not valid JSON`);r=void 0}this.metrics.responsesReceived++,this.metrics.avgLatency+=(performance.now()-i-this.metrics.avgLatency)/this.metrics.responsesReceived;let l=ho(r,e.id,n);return l.success||this.metrics.errors++,l}catch(i){if(this.metrics.errors++,t.throwIfAborted(),i instanceof xs)throw i;if(this.retry&&n&&r<this.maxRetries){await lo(Math.min(2**r*1e3,3e4),t);continue}return{id:e.id,success:!1,error:{code:`NETWORK_ERROR`,message:i instanceof Error?i.message:String(i)}}}}}async disconnect(){this.state=`disconnected`}getState(){return this.state}getMetrics(){return{id:`http-client`,url:this.baseUrl,state:this.state,transport:`http`,requestsSent:this.metrics.requestsSent,responsesReceived:this.metrics.responsesReceived,errors:this.metrics.errors,avgLatency:this.metrics.responsesReceived?this.metrics.avgLatency:void 0}}getMiddleware(){return this.middleware}use(e,t,n){return this.middleware.use(e,t,n),this}}}}),Es=q({"src/packet/serializer.ts"(){wo(),is(),ns(),Eo(),Q=new Ua,ws=!1,Ts=new Set([`name`,`code`,`category`,`httpStatus`,`message`,`details`,`context`,`timestamp`,`requestId`,`correlationId`,`spanId`,`traceId`,`stack`,`cause`,`stats`]),Q.register(110,dr,(e,t)=>{if(t.write(Q.encode(e.name)),t.write(Q.encode(e.code)),t.write(Q.encode(e.message)),t.write(Q.encode(e.details)),t.write(Q.encode(e.context)),t.write(Q.encode(e.timestamp)),t.write(Q.encode(e.requestId)),t.write(Q.encode(e.correlationId)),t.write(Q.encode(e.spanId)),t.write(Q.encode(e.traceId)),t.write(Q.encode(ws&&e.stack||null)),e.cause){let n=e.cause;n instanceof dr?t.write(Q.encode(n)):n instanceof Error?t.write(Q.encode({__errorType:`Error`,name:n.name,message:n.message,stack:ws?n.stack:void 0})):t.write(Q.encode(null))}else t.write(Q.encode(null));t.write(Q.encode(go(e)))},e=>{let t=Q.decode(e),n=Q.decode(e),r=Q.decode(e),i=Q.decode(e),a=Q.decode(e),o=Q.decode(e),s=Q.decode(e),c=Q.decode(e),l=Q.decode(e),u=Q.decode(e),d=Q.decode(e),f=Q.decode(e),p=Q.decode(e),m;if(f){if(f instanceof dr)m=f;else if(f.__errorType===`Error`){let e=Error(f.message);e.name=f.name,e.stack=f.stack,m=e}}let h=new dr({code:n,message:r,details:i,context:a,requestId:s,correlationId:c,spanId:l,traceId:u,cause:m});return h.name=t,d&&(h.stack=d),h.timestamp=o,p&&typeof p==`object`&&Object.assign(h,p),h}),$a(Q),Q.register(109,Zn,(e,t)=>{t.write(Q.encode(e.id)),t.write(Q.encode(e.parentId)),t.write(Q.encode(e.peerId)),t.write(Q.encode(e.meta))},e=>{let t=Q.decode(e),n=Q.decode(e),r=Q.decode(e),i=Q.decode(e),a=new Zn(t,r,i);return a.parentId=n,a}).register(108,$n,(e,t)=>{t.write(Q.encode(e.defId))},e=>new $n(Q.decode(e))).register(107,ts,(e,t)=>{Q.encode(e.streamId.toString(),t),t.writeUInt8(+(e.type===`writable`)),t.writeUInt8(+!!e.isLive),Q.encode(e.peerId,t)},e=>{let t=Number(Q.decode(e)),n=e.readUInt8()===1?`writable`:`readable`,r=e.readUInt8()===1,i=Q.decode(e);return new ts(t,n,r,i)})}}),Ms=q({"src/packet/index.ts"(){Xo(),Es(),Zo(),J(),Zo(),Xo(),Es(),Ds=e=>{let t=e.isStreamChunk()?8:0,n=e.getType(),r;switch(n){case 0:r=32;break;case 3:r=512;break;case 5:r=256;break;case 6:case 7:r=128;break;default:r=256}return 5+t+r},Os=e=>{let t=new Ra(Ds(e));return t.writeUInt32BE(e.id),t.writeUInt8(e.flags),Q.encode(e.data,t),e.isStreamChunk()&&(t.writeUInt32BE(e.streamId),t.writeUInt32BE(e.streamIndex)),t.toBuffer()},ks=16777216,As=5,js=(e,t=ks)=>{let n=e instanceof Uint8Array?bo.Buffer.from(e):e;if(n.byteLength>t)throw Po.decode(e,Error(`Packet exceeds maximum allowed size: ${n.byteLength} > ${t}`));if(n.byteLength<As)throw Po.decode(e,Error(`Packet too small: ${n.byteLength} bytes, minimum ${As} bytes required`));let r=Ra.wrap(n),i=new Cr(r.readUInt32BE());i.flags=r.readUInt8();let a=i.getType();if(a<0||a>7)throw Po.decode(e,Error(`Invalid packet type: 0x${a.toString(16)}. Expected 0x00-0x07`));try{i.data=Q.decode(r)}catch(t){throw Po.decode(e,t instanceof Error?t:void 0)}if(i.isStreamChunk()){let t=r.length;if(t<8)throw Po.decode(e,Error(`Incomplete stream metadata: ${t} bytes remaining, 8 bytes required`));i.streamId=r.readUInt32BE(),i.streamIndex=r.readUInt32BE()}return i}}}),Ns={},Co(Ns,{WebSocketClient:()=>Ls}),Rs=q({"src/client/ws-client.ts"(){os(),ys(),J(),vs(),Ms(),Ps=5e3,Fs=1012,Is=[1e3,3e3],Ls=class extends Wr{ws=null;wsUrl;protocols;timeout;reconnectEnabled;reconnectInterval;maxReconnectAttempts;reconnectAttempts=0;reconnectTimeout;restartAnnounced=!1;isManualDisconnect=!1;auth;authTransport;middleware;serviceDefinitions;enableServiceDiscovery;discoveredDefinitions=new Map;pendingDiscoveries=new Map;state=`disconnected`;pendingRequests=new Map;connectedAt;disconnectedAt;taskHandlers=new Map;handshakeComplete=!1;connectSettle;connecting;serverId=null;clientId;metrics={requestsSent:0,responsesReceived:0,errors:0,latencies:[]};constructor(e){super(),this.wsUrl=e.url.startsWith(`http`)?ao(e.url):e.url,this.protocols=e.protocols,this.timeout=e.timeout??3e4,this.reconnectEnabled=e.reconnect??!0,this.reconnectInterval=e.reconnectInterval??1e3,this.maxReconnectAttempts=e.maxReconnectAttempts??1/0,this.auth=e.auth,this.authTransport=e.authTransport,this.middleware=e.middleware||new cs,this.serviceDefinitions=e.serviceDefinitions,this.enableServiceDiscovery=e.enableServiceDiscovery===!0,this.clientId=crypto.randomUUID?.()||`browser-${Date.now()}-${Math.random().toString(36).slice(2)}`}async connect(){if(this.ws&&(this.ws.readyState===0||this.ws.readyState===1))this.connecting&&await this.connecting;else{this.reconnectTimeout&&=(clearTimeout(this.reconnectTimeout),void 0),this.connecting=new Promise((e,t)=>{try{this.isManualDisconnect=!1,this.handshakeComplete=!1,this.serverId=null,this.discoveredDefinitions.clear(),this.pendingDiscoveries.clear(),this.state=`connecting`,this.clientId=crypto.randomUUID?.()||`browser-${Date.now()}-${Math.random().toString(36).slice(2)}`;let n=typeof WebSocket<`u`?WebSocket:typeof globalThis<`u`&&globalThis.WebSocket?globalThis.WebSocket:null;if(!n)throw Error(`WebSocket is not available in this environment`);let r=this.wsUrl;if(this.authTransport){let e=this.auth?.getToken?.()??null;r=this.authTransport.prepareWebSocketUrl(this.wsUrl,e)}this.ws=new n(r,this.protocols),this.ws.binaryType=`arraybuffer`;let i=this.ws,a=!1,o=n=>{a||(a=!0,clearTimeout(s),this.connectSettle=void 0,n?t(n):e())},s=setTimeout(()=>{o(new zo(`Netron handshake did not complete within ${this.timeout}ms`))},this.timeout);this.connectSettle=o,i.addEventListener(`open`,()=>{this.state=`connected`,this.connectedAt=Date.now(),this.emit(`connect`)}),i.addEventListener(`message`,e=>{this.handleMessage(e.data)}),i.addEventListener(`error`,e=>{let t=new zo(`WebSocket error`);this.state=`failed`,this.emit(`error`,t),o(t)}),i.addEventListener(`close`,e=>{this.disconnectedAt=Date.now(),o(new zo(`Connection closed before the Netron handshake completed`));for(let e of this.pendingRequests.values())e.reject(new zo(`Connection closed`)),clearTimeout(e.timeout);this.pendingRequests.clear(),this.restartAnnounced=e.code===Fs,this.connectedAt!==void 0&&Date.now()-this.connectedAt>=Ps&&(this.reconnectAttempts=0),this.reconnectEnabled&&!this.isManualDisconnect?(this.state=`reconnecting`,this.emit(`disconnect`,e.reason),this.attemptReconnect()):(this.state=`disconnected`,this.emit(`disconnect`,e.reason))})}catch(e){this.state=`failed`,t(e instanceof Error?e:new zo(String(e)))}});try{await this.connecting}finally{this.connecting=void 0}}}handleMessage(e){try{if(!this.handshakeComplete){let t=null;if(typeof e==`string`?t=e:e instanceof ArrayBuffer&&e.byteLength<512&&(t=new TextDecoder().decode(e)),t)try{let e=JSON.parse(t);if(e.type===`id`){this.serverId=e.id,this.ws?.send(JSON.stringify({type:`client-id`,id:this.clientId})),this.handshakeComplete=!0,this.connectSettle?.();return}}catch{}}let t=js(e instanceof ArrayBuffer?e:new TextEncoder().encode(e));this.emit(`packet`,t);let n=t.getImpulse()===1,r=t.getImpulse()===0,i=t.getError()===1;if(r||i&&!n){let e=this.pendingRequests.get(String(t.id));e&&(clearTimeout(e.timeout),this.pendingRequests.delete(String(t.id)),this.metrics.responsesReceived++,i?(this.metrics.errors++,e.reject(t.data)):e.resolve(t.data));return}if(n){let e=t.getType();(e===4||e===3)&&this.handleIncomingTask(t)}}catch(e){this.emit(`error`,e)}}async handleIncomingTask(e){let[t,...n]=Array.isArray(e.data)?e.data:[e.data],r=this.taskHandlers.get(t);if(r)try{let t=await r(...n);this.sendResponse(e.id,t??null,!1)}catch(t){this.sendResponse(e.id,{message:t?.message??`Task handler error`},!0)}else this.emit(`task`,t,...n),this.sendResponse(e.id,null,!1)}sendResponse(e,t,n){try{let r=new Cr(e);r.setImpulse(0),r.setType(3),n&&r.setError(1),r.data=t,this.sendPacket(r)}catch{}}async invoke(e,t,n,r){if(r?.signal?.throwIfAborted(),!this.isConnected())throw new zo(`WebSocket is not connected`);let i={service:e,method:t,args:n,request:{headers:{},timeout:r?.timeout??r?.hints?.timeout??this.timeout,metadata:r?.context},timing:{start:performance.now(),middlewareTimes:new Map},metadata:new Map,transport:`websocket`};if(await so(()=>this.middleware.execute(i,Z.PRE_REQUEST),r?.signal),i.skipRemaining)return i.response?.data;let a=i.request?.timeout??this.timeout,o=co(a,new Bo(`Request timeout after ${a}ms`),r?.signal);try{let r=await so(()=>this.resolveDefinitionId(e),o.signal),a=e=>{let r=new Cr(Cr.nextId());return r.setType(3),r.setImpulse(1),r.data=[e,t,...n],this.sendInvocation(r,o.signal)},s;try{s=await a(r)}catch(t){if(o.signal.throwIfAborted(),!(this.enableServiceDiscovery&&this.discoveredDefinitions.get(e)===r&&_o(t)&&!this.serviceDefinitions?.has(e)))throw t;this.discoveredDefinitions.delete(e),r=await so(()=>this.resolveDefinitionId(e),o.signal),s=await a(r)}return i.response={data:s,headers:{},metadata:{}},await so(()=>this.middleware.execute(i,Z.POST_RESPONSE),o.signal),i.response.data}catch(e){o.signal.throwIfAborted(),i.error=e;try{await so(()=>this.middleware.execute(i,Z.ERROR),o.signal)}catch{}throw o.signal.throwIfAborted(),e}finally{o.dispose()}}sendInvocation(e,t){return t.throwIfAborted(),new Promise((n,r)=>{let i=String(e.id),a=()=>{t.removeEventListener(`abort`,o),this.pendingRequests.delete(i)},o=()=>{a(),this.metrics.errors++,r(t.reason)};this.pendingRequests.set(i,{resolve:e=>{a(),n(e)},reject:e=>{a(),r(e)}}),t.addEventListener(`abort`,o,{once:!0});try{this.sendPacket(e),this.metrics.requestsSent++}catch(e){a(),r(e)}})}sendPacket(e){if(!this.ws||this.ws.readyState!==1)throw new zo(`WebSocket is not connected`);let t=Os(e);this.ws.send(t)}async runTask(e,...t){if(!this.isConnected())throw new zo(`WebSocket is not connected`);let n=Cr.nextId(),r=new Cr(n);return r.setType(4),r.setImpulse(1),r.data=[e,...t],new Promise((t,i)=>{let a=setTimeout(()=>{this.pendingRequests.delete(String(n)),i(new Bo(`runTask('${e}') timed out after ${this.timeout}ms`))},this.timeout);this.pendingRequests.set(String(n),{resolve:t,reject:i,timeout:a});try{this.sendPacket(r),this.metrics.requestsSent++}catch(e){clearTimeout(a),this.pendingRequests.delete(String(n)),i(e)}})}resolveDefinitionId(e){let t=this.serviceDefinitions?.get(e);if(t)return Promise.resolve(t);let n=this.discoveredDefinitions.get(e);if(n)return Promise.resolve(n);if(!this.enableServiceDiscovery)return Promise.resolve(e);let r=this.pendingDiscoveries.get(e);if(r)return r;let i=(async()=>{let t=await this.runTask(`query_interface`,e)??null;if(!t||typeof t.id!=`string`)throw new zo(`query_interface('${e}') returned an unexpected payload \u2014 server did not yield a definition id.`);return this.discoveredDefinitions.set(e,t.id),t.id})().finally(()=>{this.pendingDiscoveries.delete(e)});return this.pendingDiscoveries.set(e,i),i}async discoverServices(e){let t=new Map;return await Promise.all(e.map(async e=>{if(this.serviceDefinitions?.has(e)){t.set(e,this.serviceDefinitions.get(e));return}let n=this.discoveredDefinitions.get(e);if(n){t.set(e,n);return}let r=await this.runTask(`query_interface`,e)??null;if(!r||typeof r.id!=`string`)throw new zo(`query_interface('${e}') returned an unexpected payload \u2014 server did not yield a definition id.`);this.discoveredDefinitions.set(e,r.id),t.set(e,r.id)})),t}clearDiscoveryCache(){this.discoveredDefinitions.clear(),this.pendingDiscoveries.clear()}onTask(e,t){return this.taskHandlers.set(e,t),this}offTask(e){return this.taskHandlers.delete(e),this}async disconnect(){this.isManualDisconnect=!0,this.reconnectTimeout&&=(clearTimeout(this.reconnectTimeout),void 0),this.ws&&=((this.ws.readyState===1||this.ws.readyState===0)&&this.ws.close(1e3,`Manual disconnect`),null),this.state=`disconnected`,this.disconnectedAt=Date.now()}isConnected(){return this.ws!==null&&this.ws.readyState===1}getState(){return this.state}attemptReconnect(){if(this.reconnectAttempts>=this.maxReconnectAttempts){this.state=`failed`,this.emit(`reconnect-failed`);return}this.state=`reconnecting`,this.reconnectAttempts++;let e=this.restartAnnounced,[t,n]=Is,r=e?t+Math.floor(Math.random()*(n-t)):oo(this.reconnectAttempts,this.reconnectInterval);this.emit(`reconnecting`,{attempt:this.reconnectAttempts,delay:r,maxAttempts:this.maxReconnectAttempts,announced:e}),this.reconnectTimeout=setTimeout(async()=>{try{await this.connect(),this.emit(`reconnect`,{attempt:this.reconnectAttempts})}catch{}},r)}getReconnectAttempts(){return this.state===`connected`?0:this.reconnectAttempts}setUrl(e){this.wsUrl=e.startsWith(`http`)?ao(e):e}getMetrics(){let e=this.metrics.latencies.length>0?this.metrics.latencies.reduce((e,t)=>e+t,0)/this.metrics.latencies.length:void 0;return{id:`ws-client`,url:this.wsUrl,state:this.state,transport:`websocket`,connectedAt:this.connectedAt,disconnectedAt:this.disconnectedAt,requestsSent:this.metrics.requestsSent,responsesReceived:this.metrics.responsesReceived,errors:this.metrics.errors,avgLatency:e}}getMiddleware(){return this.middleware}use(e,t,n){return this.middleware.use(e,t,n),this}}}}),wo(),ns(),Jo(),es(),J(),rs(),is(),wo(),ns(),J(),wo(),is(),ns(),Cs(),Rs(),zs={DISCONNECTED:`disconnected`,CONNECTING:`connecting`,CONNECTED:`connected`,RECONNECTING:`reconnecting`,FAILED:`failed`},ys(),Bs=[`connect`,`disconnect`,`reconnect`,`reconnecting`,`reconnect-failed`],Vs=class{name;config;baseUrl;fullUrl;transportType;client=null;auth;middleware;defaultTimeout;defaultHeaders;connected=!1;events=new Wr;constructor(e){this.name=e.name,this.config=e.config,this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.fullUrl=`${this.baseUrl}${e.config.path}`,this.transportType=e.config.transport||`http`,this.auth=e.auth,this.middleware=e.middleware,this.defaultTimeout=e.config.timeout||e.defaultTimeout||3e4,this.defaultHeaders={...e.defaultHeaders,...e.config.headers}}async initializeClient(){if(this.client)return this.client;let{HttpClient:e}=await Promise.resolve().then(()=>(Cs(),bs)),{WebSocketClient:t}=await Promise.resolve().then(()=>(Rs(),Ns));if(this.transportType===`websocket`){let e=this.auth?.getTransport();this.client=new t({url:this.fullUrl,protocols:this.config.websocket?.protocols,timeout:this.defaultTimeout,reconnect:this.config.websocket?.reconnect,reconnectInterval:this.config.websocket?.reconnectInterval,maxReconnectAttempts:this.config.websocket?.maxReconnectAttempts,auth:this.auth,...e?{authTransport:e}:{},middleware:this.middleware}),this.forwardTransportEvents(this.client)}else this.client=new e({url:this.fullUrl,timeout:this.defaultTimeout,headers:this.defaultHeaders,redirect:this.config.http?.redirect,retry:this.config.http?.retry,maxRetries:this.config.http?.maxRetries,auth:this.auth,middleware:this.middleware});return this.client}async connect(){await(await this.initializeClient()).connect(),this.connected=!0}on(e,t){return this.events.on(e,t),()=>{this.events.off(e,t)}}forwardTransportEvents(e){if(typeof e.on==`function`)for(let t of Bs)e.on(t,(...e)=>this.events.emit(t,...e))}async disconnect(){this.client&&(await this.client.disconnect(),this.connected=!1)}service(e){let t=typeof e==`string`?e:e.qualifiedName;return new Proxy({},{get:(e,n)=>{if(typeof n!=`symbol`)return async(...e)=>await this.invoke(t,n,e)}})}async invoke(e,t,n=[],r){r?.signal?.throwIfAborted();let i=await so(()=>this.initializeClient(),r?.signal);return r?.signal?.throwIfAborted(),await i.invoke(e,t,n,r)}getMetrics(){return this.client?{...this.client.getMetrics(),id:this.name}:{id:`${this.name}-not-connected`,url:this.fullUrl,state:zs.DISCONNECTED,transport:this.transportType,requestsSent:0,responsesReceived:0,errors:0}}isConnected(){return this.client?`isConnected`in this.client&&typeof this.client.isConnected==`function`?this.client.isConnected():this.connected:!1}getPath(){return this.config.path}getTransportType(){return this.transportType}getName(){return this.name}getFullUrl(){return this.fullUrl}getClient(){return this.client}async destroy(){this.client&&=(await this.disconnect(),null)}},Hs=class{key;constructor(e=`netron_auth_token`){this.key=e}getToken(){try{return localStorage.getItem(this.key)}catch{return null}}setToken(e){try{localStorage.setItem(this.key,e)}catch{}}removeToken(){try{localStorage.removeItem(this.key)}catch{}}hasToken(){return this.getToken()!==null}getValue(e){try{return localStorage.getItem(e)}catch{return null}}setValue(e,t){try{localStorage.setItem(e,t)}catch{}}removeValue(e){try{localStorage.removeItem(e)}catch{}}},Us=class{key;constructor(e=`netron_auth_token`){this.key=e}getToken(){try{return sessionStorage.getItem(this.key)}catch{return null}}setToken(e){try{sessionStorage.setItem(this.key,e)}catch{}}removeToken(){try{sessionStorage.removeItem(this.key)}catch{}}hasToken(){return this.getToken()!==null}getValue(e){try{return sessionStorage.getItem(e)}catch{return null}}setValue(e,t){try{sessionStorage.setItem(e,t)}catch{}}removeValue(e){try{sessionStorage.removeItem(e)}catch{}}},Ws=class{token=null;values=new Map;getToken(){return this.token}setToken(e){this.token=e}removeToken(){this.token=null}hasToken(){return this.token!==null}getValue(e){return this.values.get(e)??null}setValue(e,t){this.values.set(e,t)}removeValue(e){this.values.delete(e)}},Gs=2147483647,Ks={storage:new Ws,storageKey:`netron_auth_token`,autoRefresh:!0,refreshThreshold:3e5,autoAttach:!0,inactivityConfig:{timeout:18e5,events:[`click`,`keypress`,`mousemove`]},crossTabSync:{enabled:!0,syncKey:`netron_auth_sync`}},qs=class{options;state;refreshTimer;inactivityTimer;lastActivity=Date.now();eventHandlers=new Map;refreshPromise;storageListener;activityListener;transport;constructor(e={}){let t=e.storage||(e.storageKey?new Hs(e.storageKey):Ks.storage);this.options={storage:t,storageKey:e.storageKey??Ks.storageKey,autoRefresh:e.autoRefresh??Ks.autoRefresh,refreshThreshold:e.refreshThreshold??Ks.refreshThreshold,autoAttach:e.autoAttach??Ks.autoAttach,refreshConfig:e.refreshConfig,logoutConfig:e.logoutConfig,inactivityConfig:{timeout:e.inactivityConfig?.timeout??Ks.inactivityConfig.timeout,events:e.inactivityConfig?.events??Ks.inactivityConfig.events,onInactivity:e.inactivityConfig?.onInactivity},crossTabSync:{enabled:e.crossTabSync?.enabled??Ks.crossTabSync.enabled,syncKey:e.crossTabSync?.syncKey??Ks.crossTabSync.syncKey}},this.state={authenticated:!1},this.transport=e.transport,this.restoreFromStorage(),this.options.crossTabSync.enabled&&this.enableCrossTabSync(),this.options.inactivityConfig.timeout&&this.options.inactivityConfig.timeout>0&&this.setupInactivityTracking()}getState(){return{...this.state}}isAuthenticated(){return this.state.authenticated}getContext(){return this.state.context}getToken(){return this.state.token}getRefreshToken(){return this.state.refreshToken}getSessionMetadata(){return this.state.sessionMetadata}setAuth(e){if(!e.success||!e.context)return;let t=this.extractTokenValue(e),n=e.metadata?.refreshToken,r=this.state.sessionMetadata||{sessionId:this.generateSessionId(),loginTime:new Date,deviceInfo:{userAgent:typeof navigator<`u`?navigator.userAgent:void 0,platform:typeof navigator<`u`?navigator.platform:void 0,language:typeof navigator<`u`?navigator.language:void 0}};this.state={authenticated:!0,context:e.context,token:t,expiresAt:e.context.token?.expiresAt?new Date(e.context.token.expiresAt):void 0,refreshToken:n,refreshTokenExpiresAt:e.metadata?.refreshTokenExpiresAt?new Date(e.metadata.refreshTokenExpiresAt):void 0,sessionMetadata:r},this.persistToStorage(),this.scheduleRefresh(),this.resetInactivityTimer(),this.emit(`authenticated`,{context:e.context}),this.notifyCrossTabSync(`authenticated`)}setRefreshToken(e,t){this.state.refreshToken=e,this.state.refreshTokenExpiresAt=t,this.persistToStorage()}clearAuth(){this.state={authenticated:!1},this.clearStorage(),this.cancelRefresh(),this.cancelInactivityTimer(),this.emit(`unauthenticated`,{}),this.notifyCrossTabSync(`unauthenticated`)}async logout(){let e=this.options.logoutConfig;if(e)try{let t={"Content-Type":`application/json`,...e.headers};e.includeToken!==!1&&this.state.token&&(t.Authorization=`Bearer ${this.state.token}`);let n=await fetch(e.endpoint,{method:e.method||`POST`,headers:t});if(!n.ok)throw Error(`Logout failed: ${n.statusText}`)}catch(e){throw this.emit(`error`,{error:e,context:`logout`}),e}this.clearAuth()}async refreshToken(e){let t=e||this.state.refreshToken;if(!t)return{success:!1,error:`No refresh token available`};if(!this.options.refreshConfig)return{success:!1,error:`Refresh configuration not provided`};if(this.refreshPromise)return this.refreshPromise;this.refreshPromise=this.performTokenRefresh(t);try{return await this.refreshPromise}finally{this.refreshPromise=void 0}}async performTokenRefresh(e){let t=this.options.refreshConfig;try{let n={"Content-Type":`application/json`,...t.headers},r;r=t.buildBody?t.buildBody(e):{refreshToken:e};let i=await fetch(t.endpoint,{method:t.method||`POST`,headers:n,body:JSON.stringify(r)});if(!i.ok){this.clearAuth();let e={success:!1,error:`Token refresh failed: ${i.statusText}`};return this.emit(`error`,{error:e.error,context:`refresh`}),e}let a=await i.json();return a.success&&a.context&&(this.setAuth(a),this.emit(`token-refreshed`,{context:a.context})),a}catch(e){this.clearAuth();let t={success:!1,error:e instanceof Error?e.message:`Unknown error during token refresh`};return this.emit(`error`,{error:e,context:`refresh`}),t}}setToken(e,t){e?(this.state={authenticated:!0,context:t,token:e,expiresAt:t?.token?.expiresAt,refreshToken:this.state.refreshToken,refreshTokenExpiresAt:this.state.refreshTokenExpiresAt,sessionMetadata:this.state.sessionMetadata||{sessionId:this.generateSessionId(),loginTime:new Date,deviceInfo:{userAgent:typeof navigator<`u`?navigator.userAgent:void 0,platform:typeof navigator<`u`?navigator.platform:void 0,language:typeof navigator<`u`?navigator.language:void 0}}},this.persistToStorage(),this.scheduleRefresh(),this.resetInactivityTimer(),this.emit(`authenticated`,{context:t}),this.notifyCrossTabSync(`authenticated`)):this.clearAuth()}getAuthHeaders(){if(!this.options.autoAttach)return{};if(this.transport){let e={};return this.transport.prepareRequest({headers:e},this.state.token??null),e}return this.state.token?{Authorization:`Bearer ${this.state.token}`}:{}}getRequestCredentials(){if(!this.transport)return;let e={headers:{}};return this.transport.prepareRequest(e,this.state.token??null),e.credentials}getTransport(){return this.transport}isTokenExpired(){return this.state.expiresAt?Date.now()>=this.state.expiresAt.getTime():!1}isRefreshTokenExpired(){return this.state.refreshTokenExpiresAt?Date.now()>=this.state.refreshTokenExpiresAt.getTime():!1}needsRefresh(){return!this.state.expiresAt||!this.options.autoRefresh?!1:this.state.expiresAt.getTime()-Date.now()<=this.options.refreshThreshold}enableCrossTabSync(){typeof window>`u`||this.storageListener||(this.storageListener=e=>{if(e.key===this.options.crossTabSync.syncKey&&e.newValue)try{let t=JSON.parse(e.newValue);(t.type===`authenticated`||t.type===`unauthenticated`)&&(this.restoreFromStorage(),this.emit(`cross-tab-sync`,{type:t.type,timestamp:t.timestamp}))}catch(e){console.error(`Error processing cross-tab sync:`,e)}},window.addEventListener(`storage`,this.storageListener))}disableCrossTabSync(){typeof window<`u`&&this.storageListener&&(window.removeEventListener(`storage`,this.storageListener),this.storageListener=void 0)}setupInactivityTracking(){typeof window>`u`||this.activityListener||(this.activityListener=()=>{this.lastActivity=Date.now(),this.resetInactivityTimer()},(this.options.inactivityConfig.events||[`click`,`keypress`,`mousemove`]).forEach(e=>{window.addEventListener(e,this.activityListener,{passive:!0})}),this.resetInactivityTimer())}resetInactivityTimer(){this.cancelInactivityTimer(),this.state.authenticated&&this.options.inactivityConfig.timeout&&(this.inactivityTimer=vo(()=>{this.inactivityTimer=void 0,this.handleInactivity()},Date.now()+this.options.inactivityConfig.timeout))}cancelInactivityTimer(){this.inactivityTimer!==void 0&&(this.inactivityTimer(),this.inactivityTimer=void 0)}handleInactivity(){this.emit(`inactivity`,{lastActivity:new Date(this.lastActivity)}),this.options.inactivityConfig.onInactivity&&this.options.inactivityConfig.onInactivity(),this.clearAuth()}on(e,t){this.eventHandlers.has(e)||this.eventHandlers.set(e,new Set),this.eventHandlers.get(e).add(t)}off(e,t){let n=this.eventHandlers.get(e);n&&n.delete(t)}emit(e,t){let n=this.eventHandlers.get(e);n&&n.forEach(n=>{try{n(t)}catch(t){console.error(`Error in ${e} handler:`,t)}})}extractTokenValue(e){return e.metadata?.accessToken??e.metadata?.token??e.context?.metadata?.token}restoreFromStorage(){this.cancelRefresh();try{let e=this.options.storage.getValue(`${this.options.storageKey}_context`);if(e){let t=JSON.parse(e);this.state={authenticated:t.authenticated,context:t.context,token:t.token,expiresAt:t.expiresAt?new Date(t.expiresAt):void 0,refreshToken:t.refreshToken,refreshTokenExpiresAt:t.refreshTokenExpiresAt?new Date(t.refreshTokenExpiresAt):void 0,sessionMetadata:t.sessionMetadata?{...t.sessionMetadata,loginTime:new Date(t.sessionMetadata.loginTime)}:void 0},this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh();return}}catch(e){console.error(`Error restoring auth context from storage:`,e)}let e=this.options.storage.getToken();e&&(this.state={authenticated:!0,token:e})}persistToStorage(){try{this.state.token&&this.options.storage.setToken(this.state.token);let e={authenticated:this.state.authenticated,context:this.state.context,token:this.state.token,expiresAt:this.state.expiresAt?.toISOString(),refreshToken:this.state.refreshToken,refreshTokenExpiresAt:this.state.refreshTokenExpiresAt?.toISOString(),sessionMetadata:this.state.sessionMetadata?{...this.state.sessionMetadata,loginTime:this.state.sessionMetadata.loginTime.toISOString()}:void 0};this.options.storage.setValue(`${this.options.storageKey}_context`,JSON.stringify(e))}catch(e){console.error(`Error persisting auth state to storage:`,e)}}clearStorage(){this.options.storage.removeToken(),this.options.storage.removeValue(`${this.options.storageKey}_context`)}notifyCrossTabSync(e){if(this.options.crossTabSync.enabled&&typeof window<`u`)try{let t={type:e,timestamp:Date.now()};this.options.storage.setValue(this.options.crossTabSync.syncKey,JSON.stringify(t))}catch(e){console.error(`Error notifying cross-tab sync:`,e)}}scheduleRefresh(){if(this.cancelRefresh(),!this.state.expiresAt||!this.options.autoRefresh)return;let e=this.state.expiresAt.getTime()-this.options.refreshThreshold;this.refreshTimer=vo(async()=>{this.refreshTimer=void 0,this.state.refreshToken&&this.options.refreshConfig?await this.refreshToken():this.emit(`token-refreshed`,{needsRefresh:!0})},e)}cancelRefresh(){this.refreshTimer!==void 0&&(this.refreshTimer(),this.refreshTimer=void 0)}generateSessionId(){return`${Date.now()}-${Math.random().toString(36).slice(2,11)}`}destroy(){this.cancelRefresh(),this.cancelInactivityTimer(),this.disableCrossTabSync(),typeof window<`u`&&this.activityListener&&((this.options.inactivityConfig.events||[`click`,`keypress`,`mousemove`]).forEach(e=>{window.removeEventListener(e,this.activityListener)}),this.activityListener=void 0),this.eventHandlers.clear()}},Js=class{baseUrl;backendConfigs;backendClients;poolEntries;auth;middleware;defaultTimeout;defaultHeaders;healthCheckInterval;healthCheckTimer;enableHealthChecks;constructor(e){this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.backendConfigs=new Map(Object.entries(e.backends)),this.backendClients=new Map,this.poolEntries=new Map,this.auth=e.auth,this.middleware=e.middleware,this.defaultTimeout=e.defaultTimeout||3e4,this.defaultHeaders=e.defaultHeaders||{},this.healthCheckInterval=e.healthCheckInterval||3e4,this.enableHealthChecks=e.enableHealthChecks||!1;for(let[e,t]of this.backendConfigs)this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0});this.enableHealthChecks&&this.startHealthChecks()}get(e){let t=this.backendClients.get(e);if(t)return t;let n=this.backendConfigs.get(e);if(!n)throw Error(`Backend '${e}' not found in pool`);let r;return n.auth&&(r=n.auth instanceof qs?n.auth:new qs(n.auth)),t=new Vs({name:e,config:n,baseUrl:this.baseUrl,auth:r||this.auth,middleware:this.middleware,defaultTimeout:this.defaultTimeout,defaultHeaders:this.defaultHeaders}),this.backendClients.set(e,t),t}has(e){return this.backendConfigs.has(e)}getNames(){return Array.from(this.backendConfigs.keys())}async connect(e){await this.get(e).connect();let t=this.poolEntries.get(e);t&&(t.connected=!0,t.healthy=!0)}async connectAll(){let e=Array.from(this.backendConfigs.keys()).map(e=>this.connect(e));await Promise.all(e)}async disconnect(e){let t=this.backendClients.get(e);if(t){await t.disconnect();let n=this.poolEntries.get(e);n&&(n.connected=!1)}}async disconnectAll(){let e=Array.from(this.backendClients.keys()).map(e=>this.disconnect(e));await Promise.all(e)}isConnected(e){return this.backendClients.get(e)?.isConnected()||!1}allConnected(){for(let e of this.backendConfigs.keys())if(!this.isConnected(e))return!1;return!0}getMetrics(e){let t=this.backendClients.get(e);if(t)return t.getMetrics();let n=this.backendConfigs.get(e);return{id:e,url:n?`${this.baseUrl}${n.path}`:this.baseUrl,state:zs.DISCONNECTED,transport:n?.transport||`http`,requestsSent:0,responsesReceived:0,errors:0}}getAggregatedMetrics(){let e={},t=0,n=0,r=0,i=0,a=0;for(let o of this.backendConfigs.keys()){let s=this.getMetrics(o);e[o]=s,t+=s.requestsSent,n+=s.responsesReceived,r+=s.errors,s.avgLatency!==void 0&&(i+=s.avgLatency,a++)}return{backends:e,totalRequestsSent:t,totalResponsesReceived:n,totalErrors:r,avgLatency:a>0?i/a:0}}getPoolEntry(e){return this.poolEntries.get(e)}getAllPoolEntries(){return Array.from(this.poolEntries.values())}async checkHealth(e){let t=this.poolEntries.get(e);if(!t)return!1;try{let n=this.backendClients.get(e);if(!n)return t.healthy=!1,t.lastHealthCheck=Date.now(),!1;let r=n.isConnected();return t.healthy=r,t.lastHealthCheck=Date.now(),r}catch{return t.healthy=!1,t.lastHealthCheck=Date.now(),!1}}async checkAllHealth(){let e=new Map,t=Array.from(this.backendConfigs.keys()).map(async t=>{let n=await this.checkHealth(t);e.set(t,n)});return await Promise.all(t),e}getHealthyBackends(){return Array.from(this.poolEntries.values()).filter(e=>e.healthy).map(e=>e.name)}getUnhealthyBackends(){return Array.from(this.poolEntries.values()).filter(e=>!e.healthy).map(e=>e.name)}startHealthChecks(){this.healthCheckTimer||=setInterval(async()=>{await this.checkAllHealth()},this.healthCheckInterval)}stopHealthChecks(){this.healthCheckTimer&&=(clearInterval(this.healthCheckTimer),void 0)}addBackend(e,t){if(this.backendConfigs.has(e))throw Error(`Backend '${e}' already exists in pool`);this.backendConfigs.set(e,t),this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0})}async removeBackend(e){let t=this.backendClients.get(e);t&&(await t.destroy(),this.backendClients.delete(e)),this.backendConfigs.delete(e),this.poolEntries.delete(e)}async updateBackend(e,t){if(!this.backendConfigs.has(e))throw Error(`Backend '${e}' not found in pool`);let n=this.backendClients.get(e);n&&(await n.destroy(),this.backendClients.delete(e)),this.backendConfigs.set(e,t),this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0})}async destroy(){this.stopHealthChecks();let e=Array.from(this.backendClients.values()).map(e=>e.destroy());await Promise.all(e),this.backendClients.clear(),this.backendConfigs.clear(),this.poolEntries.clear()}},Ys=class{config;defaultBackend;availableBackends;constructor(e,t,n){this.config=e,this.defaultBackend=t,this.availableBackends=new Set(n||[])}resolve(e){let t=this.parseServiceName(e);if(t.backend)return this.availableBackends.size>0&&!this.availableBackends.has(t.backend)?(console.warn(`ServiceRouter: Backend '${t.backend}' not found in available backends, using default backend '${this.defaultBackend}'`),this.defaultBackend):t.backend;let n=t.service;if(this.config.services?.[n])return this.config.services[n];if(this.config.patterns){for(let{pattern:e,backend:t}of this.config.patterns)if(this.matchPattern(n,e))return t}return this.defaultBackend}getServiceName(e){return this.parseServiceName(e).service}parseServiceName(e){let t=e.split(`.`);if(t.length>=2){let n=t[0];if((this.availableBackends.has(n)||this.config.services?.[e]===void 0)&&this.availableBackends.size>0&&this.availableBackends.has(n))return{backend:n,service:t.slice(1).join(`.`)}}return{service:e}}matchPattern(e,t){return t instanceof RegExp?t.test(e):e===t||e.startsWith(`${t}.`)||e.startsWith(t)}addServiceMapping(e,t){this.config.services||(this.config.services={}),this.config.services[e]=t}removeServiceMapping(e){return this.config.services?.[e]!==void 0&&(delete this.config.services[e],!0)}addPattern(e,t){this.config.patterns||(this.config.patterns=[]),this.config.patterns.push({pattern:e,backend:t})}getConfig(){return this.config}getDefaultBackend(){return this.defaultBackend}setDefaultBackend(e){this.defaultBackend=e}setAvailableBackends(e){this.availableBackends=new Set(e)}isBackendAvailable(e){return this.availableBackends.size===0||this.availableBackends.has(e)}},ls(),Xs=class{baseUrl;pool;router;middleware;defaultBackend;backendNames;eventListeners=new Map;transportUnsubs=[];constructor(e){if(this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.backendNames=Object.keys(e.backends),this.defaultBackend=e.defaultBackend||this.backendNames[0]||``,this.defaultBackend&&!this.backendNames.includes(this.defaultBackend))throw Error(`Default backend '${this.defaultBackend}' not found in backends configuration`);if(this.middleware=new cs,e.shared?.middleware)for(let t of e.shared.middleware)this.middleware.use(t.middleware,t.config,t.stage);let t={baseUrl:this.baseUrl,backends:e.backends,auth:e.shared?.auth,middleware:this.middleware,defaultTimeout:e.shared?.timeout,defaultHeaders:e.shared?.headers};this.pool=new Js(t),this.router=new Ys(e.routing||{},this.defaultBackend,this.backendNames)}backend(e){return this.pool.get(e)}service(e){let t=typeof e==`string`?e:e.qualifiedName,n=this.router.resolve(t),r=this.router.getServiceName(t);return this.pool.get(n).service(r)}async invoke(e,t,n,r=[],i){return await this.pool.get(e).invoke(t,n,r,i)}getMetrics(){return this.pool.getAggregatedMetrics()}isConnected(e){return e?this.pool.isConnected(e):this.pool.allConnected()}async connect(e){e?await this.pool.connect(e):await this.pool.connectAll()}async disconnect(e){e?await this.pool.disconnect(e):await this.pool.disconnectAll()}getMiddleware(){return this.middleware}on(e,t){let n=this.eventListeners.get(e);return n||(n=new Set,this.eventListeners.set(e,n),this.wireTransportEvents()),n.add(t),()=>{this.eventListeners.get(e)?.delete(t)}}off(e,t){this.eventListeners.get(e)?.delete(t)}emitEvent(e,t){let n=this.eventListeners.get(e);if(n&&n.size!==0)for(let e of n)try{e(t)}catch{}}wireTransportEvents(){if(!(this.transportUnsubs.length>0))for(let e of this.backendNames){let t=this.pool.get(e);if(typeof t.on!=`function`)continue;let n=()=>this.emitEvent(`reconnect`,e),r=()=>this.emitEvent(`disconnect`,e),i=t.on(`reconnect`,n),a=t.on(`disconnect`,r);typeof i==`function`&&this.transportUnsubs.push(i),typeof a==`function`&&this.transportUnsubs.push(a)}}async destroy(){for(let e of this.transportUnsubs)try{e()}catch{}this.transportUnsubs.length=0,this.eventListeners.clear(),await this.pool.destroy(),this.middleware.clear()}getRouter(){return this.router}getPool(){return this.pool}getBackendNames(){return[...this.backendNames]}getDefaultBackend(){return this.defaultBackend}getBaseUrl(){return this.baseUrl}use(e,t,n){return this.middleware.use(e,t,n),this}async getHealth(){return await this.pool.checkAllHealth()}getHealthyBackends(){return this.pool.getHealthyBackends()}getUnhealthyBackends(){return this.pool.getUnhealthyBackends()}},os(),J(),Ms(),is(),J(),Ms(),J(),Io(),J(),Io(),J(),J(),Io(),vs(),os(),us(),us(),gs(),J(),vs()})))()}var Qs;function $s(){return($s=t((()=>{Qs={PRE_REQUEST:`pre-request`,POST_RESPONSE:`post-response`,ERROR:`error`}})))()}function ec(e){if(!e||typeof e!=`object`)return;let t=e,n=[t.status,t.statusCode,t.code,t.response?.status,t.data?.code,t.details?.error?.code,t.data?.error?.code];for(let e of n){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e==`string`&&/^\d{3}$/.test(e))return Number(e)}}function tc(e){let t=ec(e);return t===408||t===504||e?.code===`TIMEOUT`||/\bRequest timeout after \d+ms\b|^HTTP (?:408|504)\b|^Gateway Time-?out\b/i.test(e?.message??``)}function nc(){return(nc=t((()=>{})))()}function rc(e,t){return $.invoke(`daemon`,`OmnitronProject`,e,[t],{timeout:a})}function ic(e,...t){let n=e===`signIn`||e===`validateToken`||e===`refreshSession`;return $.invoke(`daemon`,`OmnitronAuth`,e,t,n?{skipAuth:!0}:void 0)}function ac(e){try{let t=e.split(`.`);if(t.length!==3)return null;let n=atob(t[1].replace(/-/g,`+`).replace(/_/g,`/`));return JSON.parse(n)}catch{return null}}function oc(){let e=sessionStorage.getItem(uc);return e?ac(e)?.sid??null:null}function sc(e){dc.setToken(e)}function cc(){dc.clearAuth()}function lc(){return sessionStorage.getItem(uc)}var uc,dc,$,fc,pc,mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc,Tc,Ec,Dc,Oc,kc;function Ac(){return(Ac=t((()=>{Zs(),$s(),i(),uc=`omnitron_token`,dc=new qs({storage:new Us(uc),storageKey:uc,autoRefresh:!1,autoAttach:!0,crossTabSync:{enabled:!1},inactivityConfig:{timeout:0}}),$=yo({baseUrl:``,backends:{daemon:{path:``,auth:dc}},defaultBackend:`daemon`}),$.use(async(e,t)=>{if(await t(),ec(e.error)!==401||typeof window>`u`||window.location.pathname.startsWith(`/auth/`))return;let n=encodeURIComponent(window.location.pathname+window.location.search+window.location.hash);window.location.href=`/auth/sign-in?returnTo=${n}`},{name:`session-expired-redirect`,priority:10},Qs.ERROR),fc=$.daemon.OmnitronDaemon,pc=$.daemon.OmnitronAuth,mc=$.daemon.OmnitronLogs,$.daemon.OmnitronFleet,hc=$.daemon.OmnitronAlerts,gc=$.daemon.OmnitronMetrics,_c=$.daemon.OmnitronInfra,vc=$.daemon.OmnitronDeploy,yc=$.daemon.OmnitronPipelines,bc=$.daemon.OmnitronTraces,$.daemon.OmnitronBackups,$.daemon.OmnitronKubernetes,$.daemon.OmnitronHealth,xc=$.daemon.OmnitronBackend,$.daemon.OmnitronDiscovery,$.daemon.OmnitronSecrets,Sc=$.daemon.OmnitronAudit,Cc=$.daemon.OmnitronProject,wc=$.daemon.OmnitronSystemInfo,Tc=$.daemon.OmnitronNodes,Ec=$.daemon.OmnitronTerminal,Dc=$.daemon.OmnitronAccess,Oc=$.daemon.OmnitronFiles,kc=$.daemon.OmnitronRelease})))()}export{Zs as A,w as B,sc as C,nc as D,bc as E,Ye as F,Me as H,Xe as I,Ze as L,Bn as M,Nt as N,tc as O,Mn as P,$e as R,kc as S,Ec as T,Lt as U,ke as V,mc as _,ic as a,yc as b,fc as c,Oc as d,oc as f,rc as g,Ac as h,pc as i,zn as j,Ls as k,$ as l,_c as m,hc as n,xc as o,lc as p,Sc as r,cc as s,Dc as t,vc as u,gc as v,wc as w,Cc as x,Tc as y,Ln as z};