@nostrwatch/route66 0.0.1

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 (1522) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +346 -0
  3. package/adapters/cache/NostrSqliteAdapter/README.md +1 -0
  4. package/adapters/cache/NostrSqliteAdapter/build.js +64 -0
  5. package/adapters/cache/NostrSqliteAdapter/dist/browser/index.js +11789 -0
  6. package/adapters/cache/NostrSqliteAdapter/dist/browser/index.js.map +7 -0
  7. package/adapters/cache/NostrSqliteAdapter/dist/browser/workers/nostrsqlite.worker.js +9512 -0
  8. package/adapters/cache/NostrSqliteAdapter/dist/browser/workers/nostrsqlite.worker.js.map +7 -0
  9. package/adapters/cache/NostrSqliteAdapter/node_modules/.bin/esbuild +14 -0
  10. package/adapters/cache/NostrSqliteAdapter/node_modules/.bin/tsc +17 -0
  11. package/adapters/cache/NostrSqliteAdapter/node_modules/.bin/tsserver +17 -0
  12. package/adapters/cache/NostrSqliteAdapter/node_modules/.bin/vite +17 -0
  13. package/adapters/cache/NostrSqliteAdapter/package.json +49 -0
  14. package/adapters/cache/NostrSqliteAdapter/package.tgz +0 -0
  15. package/adapters/cache/NostrSqliteAdapter/src/NostrSqLiteMethods.ts +5 -0
  16. package/adapters/cache/NostrSqliteAdapter/src/NostrSqliteAdapter.ts +246 -0
  17. package/adapters/cache/NostrSqliteAdapter/src/NostrSqliteWorker.ts +113 -0
  18. package/adapters/cache/NostrSqliteAdapter/src/index.ts +1 -0
  19. package/adapters/cache/NostrSqliteAdapter/src/utils.ts +8 -0
  20. package/adapters/cache/NostrSqliteAdapter/src/workers/nostrsqlite.worker.ts +12 -0
  21. package/adapters/cache/NostrSqliteAdapter/tsconfig.json +26 -0
  22. package/adapters/websocket/NostrToolsAdapter/build.js +123 -0
  23. package/adapters/websocket/NostrToolsAdapter/dist/browser/index.js +1788 -0
  24. package/adapters/websocket/NostrToolsAdapter/dist/browser/index.js.map +7 -0
  25. package/adapters/websocket/NostrToolsAdapter/dist/node/index.js +1811 -0
  26. package/adapters/websocket/NostrToolsAdapter/dist/node/index.js.map +7 -0
  27. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/esbuild +14 -0
  28. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/eslint +17 -0
  29. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/jest +17 -0
  30. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/prettier +17 -0
  31. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/rollup +17 -0
  32. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/rollup-plugin-visualizer +17 -0
  33. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/tsc +17 -0
  34. package/adapters/websocket/NostrToolsAdapter/node_modules/.bin/tsserver +17 -0
  35. package/adapters/websocket/NostrToolsAdapter/node_modules/.cache/esbuild-plugin-inline-worker/nostrtools.worker.js +141 -0
  36. package/adapters/websocket/NostrToolsAdapter/package.json +79 -0
  37. package/adapters/websocket/NostrToolsAdapter/src/NostrToolsAdapter.ts +17 -0
  38. package/adapters/websocket/NostrToolsAdapter/src/NostrToolsWorker.ts +405 -0
  39. package/adapters/websocket/NostrToolsAdapter/src/index.ts +3 -0
  40. package/adapters/websocket/NostrToolsAdapter/src/shims/empty.js +1 -0
  41. package/adapters/websocket/NostrToolsAdapter/src/shims/node-module-shim.js +3 -0
  42. package/adapters/websocket/NostrToolsAdapter/src/workers/nostrtools.worker.ts +12 -0
  43. package/adapters/websocket/NostrToolsAdapter/tsconfig.json +28 -0
  44. package/build.js +72 -0
  45. package/dist/browser/_virtual/_commonjsHelpers.amd.js +2 -0
  46. package/dist/browser/_virtual/_commonjsHelpers.amd.js.map +1 -0
  47. package/dist/browser/_virtual/_commonjsHelpers.esm.js +2 -0
  48. package/dist/browser/_virtual/_commonjsHelpers.esm.js.map +1 -0
  49. package/dist/browser/_virtual/_tslib.amd.js +2 -0
  50. package/dist/browser/_virtual/_tslib.amd.js.map +1 -0
  51. package/dist/browser/_virtual/_tslib.esm.js +2 -0
  52. package/dist/browser/_virtual/_tslib.esm.js.map +1 -0
  53. package/dist/browser/_virtual/bake-collection.amd.js +2 -0
  54. package/dist/browser/_virtual/bake-collection.amd.js.map +1 -0
  55. package/dist/browser/_virtual/bake-collection.esm.js +2 -0
  56. package/dist/browser/_virtual/bake-collection.esm.js.map +1 -0
  57. package/dist/browser/_virtual/bolt11.amd.js +2 -0
  58. package/dist/browser/_virtual/bolt11.amd.js.map +1 -0
  59. package/dist/browser/_virtual/bolt11.esm.js +2 -0
  60. package/dist/browser/_virtual/bolt11.esm.js.map +1 -0
  61. package/dist/browser/_virtual/ee.amd.js +2 -0
  62. package/dist/browser/_virtual/ee.amd.js.map +1 -0
  63. package/dist/browser/_virtual/ee.esm.js +2 -0
  64. package/dist/browser/_virtual/ee.esm.js.map +1 -0
  65. package/dist/browser/_virtual/index.amd.js +2 -0
  66. package/dist/browser/_virtual/index.amd.js.map +1 -0
  67. package/dist/browser/_virtual/index.amd2.js +2 -0
  68. package/dist/browser/_virtual/index.amd2.js.map +1 -0
  69. package/dist/browser/_virtual/index.amd3.js +2 -0
  70. package/dist/browser/_virtual/index.amd3.js.map +1 -0
  71. package/dist/browser/_virtual/index.amd4.js +2 -0
  72. package/dist/browser/_virtual/index.amd4.js.map +1 -0
  73. package/dist/browser/_virtual/index.amd5.js +2 -0
  74. package/dist/browser/_virtual/index.amd5.js.map +1 -0
  75. package/dist/browser/_virtual/index.amd6.js +2 -0
  76. package/dist/browser/_virtual/index.amd6.js.map +1 -0
  77. package/dist/browser/_virtual/index.esm.js +2 -0
  78. package/dist/browser/_virtual/index.esm.js.map +1 -0
  79. package/dist/browser/_virtual/index.esm2.js +2 -0
  80. package/dist/browser/_virtual/index.esm2.js.map +1 -0
  81. package/dist/browser/_virtual/index.esm3.js +2 -0
  82. package/dist/browser/_virtual/index.esm3.js.map +1 -0
  83. package/dist/browser/_virtual/index.esm4.js +2 -0
  84. package/dist/browser/_virtual/index.esm4.js.map +1 -0
  85. package/dist/browser/_virtual/index.esm5.js +2 -0
  86. package/dist/browser/_virtual/index.esm5.js.map +1 -0
  87. package/dist/browser/_virtual/index.esm6.js +2 -0
  88. package/dist/browser/_virtual/index.esm6.js.map +1 -0
  89. package/dist/browser/_virtual/task-collection.amd.js +2 -0
  90. package/dist/browser/_virtual/task-collection.amd.js.map +1 -0
  91. package/dist/browser/_virtual/task-collection.esm.js +2 -0
  92. package/dist/browser/_virtual/task-collection.esm.js.map +1 -0
  93. package/dist/browser/_virtual/types.amd.js +2 -0
  94. package/dist/browser/_virtual/types.amd.js.map +1 -0
  95. package/dist/browser/_virtual/types.esm.js +2 -0
  96. package/dist/browser/_virtual/types.esm.js.map +1 -0
  97. package/dist/browser/_virtual/utils.amd.js +2 -0
  98. package/dist/browser/_virtual/utils.amd.js.map +1 -0
  99. package/dist/browser/_virtual/utils.amd2.js +2 -0
  100. package/dist/browser/_virtual/utils.amd2.js.map +1 -0
  101. package/dist/browser/_virtual/utils.esm.js +2 -0
  102. package/dist/browser/_virtual/utils.esm.js.map +1 -0
  103. package/dist/browser/_virtual/utils.esm2.js +2 -0
  104. package/dist/browser/_virtual/utils.esm2.js.map +1 -0
  105. package/dist/browser/core/Adapter.amd.js +2 -0
  106. package/dist/browser/core/Adapter.amd.js.map +1 -0
  107. package/dist/browser/core/Adapter.esm.js +2 -0
  108. package/dist/browser/core/Adapter.esm.js.map +1 -0
  109. package/dist/browser/core/AdapterCacheWorker.amd.js +2 -0
  110. package/dist/browser/core/AdapterCacheWorker.amd.js.map +1 -0
  111. package/dist/browser/core/AdapterCacheWorker.esm.js +2 -0
  112. package/dist/browser/core/AdapterCacheWorker.esm.js.map +1 -0
  113. package/dist/browser/core/AdapterWebsocketWorker.amd.js +2 -0
  114. package/dist/browser/core/AdapterWebsocketWorker.amd.js.map +1 -0
  115. package/dist/browser/core/AdapterWebsocketWorker.esm.js +2 -0
  116. package/dist/browser/core/AdapterWebsocketWorker.esm.js.map +1 -0
  117. package/dist/browser/core/AdapterWorker.amd.js +2 -0
  118. package/dist/browser/core/AdapterWorker.amd.js.map +1 -0
  119. package/dist/browser/core/AdapterWorker.esm.js +2 -0
  120. package/dist/browser/core/AdapterWorker.esm.js.map +1 -0
  121. package/dist/browser/core/Base.amd.js +2 -0
  122. package/dist/browser/core/Base.amd.js.map +1 -0
  123. package/dist/browser/core/Base.esm.js +2 -0
  124. package/dist/browser/core/Base.esm.js.map +1 -0
  125. package/dist/browser/core/Batcher.amd.js +2 -0
  126. package/dist/browser/core/Batcher.amd.js.map +1 -0
  127. package/dist/browser/core/Batcher.esm.js +2 -0
  128. package/dist/browser/core/Batcher.esm.js.map +1 -0
  129. package/dist/browser/core/CacheAdapter.amd.js +2 -0
  130. package/dist/browser/core/CacheAdapter.amd.js.map +1 -0
  131. package/dist/browser/core/CacheAdapter.esm.js +2 -0
  132. package/dist/browser/core/CacheAdapter.esm.js.map +1 -0
  133. package/dist/browser/core/LocalStorageWrapper.amd.js +2 -0
  134. package/dist/browser/core/LocalStorageWrapper.amd.js.map +1 -0
  135. package/dist/browser/core/LocalStorageWrapper.esm.js +2 -0
  136. package/dist/browser/core/LocalStorageWrapper.esm.js.map +1 -0
  137. package/dist/browser/core/Queue.amd.js +2 -0
  138. package/dist/browser/core/Queue.amd.js.map +1 -0
  139. package/dist/browser/core/Queue.esm.js +2 -0
  140. package/dist/browser/core/Queue.esm.js.map +1 -0
  141. package/dist/browser/core/WebsocketAdapter.amd.js +2 -0
  142. package/dist/browser/core/WebsocketAdapter.amd.js.map +1 -0
  143. package/dist/browser/core/WebsocketAdapter.esm.js +2 -0
  144. package/dist/browser/core/WebsocketAdapter.esm.js.map +1 -0
  145. package/dist/browser/core/Workers.amd.js +2 -0
  146. package/dist/browser/core/Workers.amd.js.map +1 -0
  147. package/dist/browser/core/Workers.esm.js +2 -0
  148. package/dist/browser/core/Workers.esm.js.map +1 -0
  149. package/dist/browser/core/index.amd.js +71 -0
  150. package/dist/browser/core/index.amd.js.map +1 -0
  151. package/dist/browser/core/index.esm.js +2 -0
  152. package/dist/browser/core/index.esm.js.map +1 -0
  153. package/dist/browser/factory/cache.shared.worker.amd.js +2 -0
  154. package/dist/browser/factory/cache.shared.worker.amd.js.map +1 -0
  155. package/dist/browser/factory/cache.shared.worker.esm.js +2 -0
  156. package/dist/browser/factory/cache.shared.worker.esm.js.map +1 -0
  157. package/dist/browser/factory/cache.worker.amd.js +2 -0
  158. package/dist/browser/factory/cache.worker.amd.js.map +1 -0
  159. package/dist/browser/factory/cache.worker.esm.js +2 -0
  160. package/dist/browser/factory/cache.worker.esm.js.map +1 -0
  161. package/dist/browser/factory/index.amd.js +71 -0
  162. package/dist/browser/factory/index.amd.js.map +1 -0
  163. package/dist/browser/factory/index.esm.js +2 -0
  164. package/dist/browser/factory/index.esm.js.map +1 -0
  165. package/dist/browser/index.amd.js +71 -0
  166. package/dist/browser/index.amd.js.map +1 -0
  167. package/dist/browser/index.esm.js +2 -0
  168. package/dist/browser/index.esm.js.map +1 -0
  169. package/dist/browser/interfaces/index.amd.js +71 -0
  170. package/dist/browser/interfaces/index.amd.js.map +1 -0
  171. package/dist/browser/interfaces/index.esm.js +2 -0
  172. package/dist/browser/interfaces/index.esm.js.map +1 -0
  173. package/dist/browser/internal/utils/dist/browser/_virtual/_tslib.esm.amd.js +2 -0
  174. package/dist/browser/internal/utils/dist/browser/_virtual/_tslib.esm.amd.js.map +1 -0
  175. package/dist/browser/internal/utils/dist/browser/_virtual/_tslib.esm.esm.js +2 -0
  176. package/dist/browser/internal/utils/dist/browser/_virtual/_tslib.esm.esm.js.map +1 -0
  177. package/dist/browser/internal/utils/dist/browser/config.esm.amd.js +2 -0
  178. package/dist/browser/internal/utils/dist/browser/config.esm.amd.js.map +1 -0
  179. package/dist/browser/internal/utils/dist/browser/config.esm.esm.js +2 -0
  180. package/dist/browser/internal/utils/dist/browser/config.esm.esm.js.map +1 -0
  181. package/dist/browser/internal/utils/dist/browser/controlflow.esm.amd.js +2 -0
  182. package/dist/browser/internal/utils/dist/browser/controlflow.esm.amd.js.map +1 -0
  183. package/dist/browser/internal/utils/dist/browser/controlflow.esm.esm.js +2 -0
  184. package/dist/browser/internal/utils/dist/browser/controlflow.esm.esm.js.map +1 -0
  185. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.amd.js +3 -0
  186. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.amd.js.map +1 -0
  187. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.esm.js +3 -0
  188. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.esm.js.map +1 -0
  189. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.amd.js +3 -0
  190. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.amd.js.map +1 -0
  191. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.esm.js +3 -0
  192. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.esm.js.map +1 -0
  193. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.amd.js +3 -0
  194. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.amd.js.map +1 -0
  195. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.esm.js +3 -0
  196. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.esm.js.map +1 -0
  197. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.amd.js +3 -0
  198. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.amd.js.map +1 -0
  199. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.esm.js +3 -0
  200. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.esm.js.map +1 -0
  201. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.amd.js +4 -0
  202. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.amd.js.map +1 -0
  203. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.esm.js +4 -0
  204. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.esm.js.map +1 -0
  205. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.amd.js +3 -0
  206. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.amd.js.map +1 -0
  207. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.esm.js +3 -0
  208. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.esm.js.map +1 -0
  209. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.amd.js +2 -0
  210. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.amd.js.map +1 -0
  211. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.esm.js +2 -0
  212. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.esm.js.map +1 -0
  213. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.amd.js +2 -0
  214. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.amd.js.map +1 -0
  215. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.esm.js +2 -0
  216. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.esm.js.map +1 -0
  217. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.amd.js +2 -0
  218. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.amd.js.map +1 -0
  219. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.esm.js +2 -0
  220. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.esm.js.map +1 -0
  221. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.amd.js +3 -0
  222. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.amd.js.map +1 -0
  223. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.esm.js +3 -0
  224. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.esm.js.map +1 -0
  225. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.amd.js +2 -0
  226. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.amd.js.map +1 -0
  227. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.esm.js +2 -0
  228. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.esm.js.map +1 -0
  229. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.amd.js +2 -0
  230. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.amd.js.map +1 -0
  231. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.esm.js +2 -0
  232. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.esm.js.map +1 -0
  233. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.amd.js +2 -0
  234. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.amd.js.map +1 -0
  235. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.esm.js +2 -0
  236. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.esm.js.map +1 -0
  237. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.amd.js +2 -0
  238. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.amd.js.map +1 -0
  239. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.esm.js +2 -0
  240. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.esm.js.map +1 -0
  241. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.amd.js +2 -0
  242. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.amd.js.map +1 -0
  243. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.esm.js +2 -0
  244. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.esm.js.map +1 -0
  245. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.amd.js +3 -0
  246. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.amd.js.map +1 -0
  247. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.esm.js +3 -0
  248. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.esm.js.map +1 -0
  249. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.amd.js +3 -0
  250. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.amd.js.map +1 -0
  251. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.esm.js +3 -0
  252. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.esm.js.map +1 -0
  253. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.amd.js +3 -0
  254. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.amd.js.map +1 -0
  255. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.esm.js +3 -0
  256. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.esm.js.map +1 -0
  257. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.amd.js +2 -0
  258. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.amd.js.map +1 -0
  259. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.esm.js +2 -0
  260. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.esm.js.map +1 -0
  261. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.amd.js +2 -0
  262. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.amd.js.map +1 -0
  263. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.esm.js +2 -0
  264. package/dist/browser/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.esm.js.map +1 -0
  265. package/dist/browser/managers/MonitorManager.amd.js +2 -0
  266. package/dist/browser/managers/MonitorManager.amd.js.map +1 -0
  267. package/dist/browser/managers/MonitorManager.esm.js +2 -0
  268. package/dist/browser/managers/MonitorManager.esm.js.map +1 -0
  269. package/dist/browser/managers/StateManager.amd.js +2 -0
  270. package/dist/browser/managers/StateManager.amd.js.map +1 -0
  271. package/dist/browser/managers/StateManager.esm.js +2 -0
  272. package/dist/browser/managers/StateManager.esm.js.map +1 -0
  273. package/dist/browser/managers/SyncStateManager.amd.js +2 -0
  274. package/dist/browser/managers/SyncStateManager.amd.js.map +1 -0
  275. package/dist/browser/managers/SyncStateManager.esm.js +2 -0
  276. package/dist/browser/managers/SyncStateManager.esm.js.map +1 -0
  277. package/dist/browser/models/DeltaEvent.amd.js +2 -0
  278. package/dist/browser/models/DeltaEvent.amd.js.map +1 -0
  279. package/dist/browser/models/DeltaEvent.esm.js +2 -0
  280. package/dist/browser/models/DeltaEvent.esm.js.map +1 -0
  281. package/dist/browser/models/Event.amd.js +2 -0
  282. package/dist/browser/models/Event.amd.js.map +1 -0
  283. package/dist/browser/models/Event.esm.js +2 -0
  284. package/dist/browser/models/Event.esm.js.map +1 -0
  285. package/dist/browser/models/Geocoded.amd.js +2 -0
  286. package/dist/browser/models/Geocoded.amd.js.map +1 -0
  287. package/dist/browser/models/Geocoded.esm.js +2 -0
  288. package/dist/browser/models/Geocoded.esm.js.map +1 -0
  289. package/dist/browser/models/Monitor.amd.js +2 -0
  290. package/dist/browser/models/Monitor.amd.js.map +1 -0
  291. package/dist/browser/models/Monitor.esm.js +2 -0
  292. package/dist/browser/models/Monitor.esm.js.map +1 -0
  293. package/dist/browser/models/MonitorRegistration.amd.js +2 -0
  294. package/dist/browser/models/MonitorRegistration.amd.js.map +1 -0
  295. package/dist/browser/models/MonitorRegistration.esm.js +2 -0
  296. package/dist/browser/models/MonitorRegistration.esm.js.map +1 -0
  297. package/dist/browser/models/Nip11.amd.js +2 -0
  298. package/dist/browser/models/Nip11.amd.js.map +1 -0
  299. package/dist/browser/models/Nip11.esm.js +2 -0
  300. package/dist/browser/models/Nip11.esm.js.map +1 -0
  301. package/dist/browser/models/Nip66CheckEvent.amd.js +2 -0
  302. package/dist/browser/models/Nip66CheckEvent.amd.js.map +1 -0
  303. package/dist/browser/models/Nip66CheckEvent.esm.js +2 -0
  304. package/dist/browser/models/Nip66CheckEvent.esm.js.map +1 -0
  305. package/dist/browser/models/PubkeyProfile.amd.js +2 -0
  306. package/dist/browser/models/PubkeyProfile.amd.js.map +1 -0
  307. package/dist/browser/models/PubkeyProfile.esm.js +2 -0
  308. package/dist/browser/models/PubkeyProfile.esm.js.map +1 -0
  309. package/dist/browser/models/PubkeyRelays.amd.js +2 -0
  310. package/dist/browser/models/PubkeyRelays.amd.js.map +1 -0
  311. package/dist/browser/models/PubkeyRelays.esm.js +2 -0
  312. package/dist/browser/models/PubkeyRelays.esm.js.map +1 -0
  313. package/dist/browser/models/RelayCheckAggregate.amd.js +2 -0
  314. package/dist/browser/models/RelayCheckAggregate.amd.js.map +1 -0
  315. package/dist/browser/models/RelayCheckAggregate.esm.js +2 -0
  316. package/dist/browser/models/RelayCheckAggregate.esm.js.map +1 -0
  317. package/dist/browser/models/_.amd.js +2 -0
  318. package/dist/browser/models/_.amd.js.map +1 -0
  319. package/dist/browser/models/_.esm.js +2 -0
  320. package/dist/browser/models/_.esm.js.map +1 -0
  321. package/dist/browser/models/index.amd.js +71 -0
  322. package/dist/browser/models/index.amd.js.map +1 -0
  323. package/dist/browser/models/index.esm.js +2 -0
  324. package/dist/browser/models/index.esm.js.map +1 -0
  325. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.amd.js +2 -0
  326. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.amd.js.map +1 -0
  327. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.esm.js +2 -0
  328. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.esm.js.map +1 -0
  329. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.amd.js +2 -0
  330. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.amd.js.map +1 -0
  331. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.esm.js +2 -0
  332. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.esm.js.map +1 -0
  333. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.amd.js +2 -0
  334. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.amd.js.map +1 -0
  335. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.esm.js +2 -0
  336. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.esm.js.map +1 -0
  337. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.amd.js +2 -0
  338. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.amd.js.map +1 -0
  339. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.esm.js +2 -0
  340. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.esm.js.map +1 -0
  341. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.amd.js +3 -0
  342. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.amd.js.map +1 -0
  343. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.esm.js +3 -0
  344. package/dist/browser/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.esm.js.map +1 -0
  345. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.amd.js +3 -0
  346. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.amd.js.map +1 -0
  347. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.js +4 -0
  348. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.js.map +1 -0
  349. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.amd.js +3 -0
  350. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.amd.js.map +1 -0
  351. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.js +4 -0
  352. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.js.map +1 -0
  353. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.amd.js +3 -0
  354. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.amd.js.map +1 -0
  355. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.js +4 -0
  356. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.js.map +1 -0
  357. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.amd.js +3 -0
  358. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.amd.js.map +1 -0
  359. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.js +3 -0
  360. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.js.map +1 -0
  361. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.amd.js +3 -0
  362. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.amd.js.map +1 -0
  363. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.js +4 -0
  364. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.js.map +1 -0
  365. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.amd.js +3 -0
  366. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.amd.js.map +1 -0
  367. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.js +3 -0
  368. package/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.js.map +1 -0
  369. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.amd.js +2 -0
  370. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.amd.js.map +1 -0
  371. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.js +2 -0
  372. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.js.map +1 -0
  373. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.amd.js +2 -0
  374. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.amd.js.map +1 -0
  375. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.js +2 -0
  376. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.js.map +1 -0
  377. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.amd.js +2 -0
  378. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.amd.js.map +1 -0
  379. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.esm.js +2 -0
  380. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.esm.js.map +1 -0
  381. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.amd.js +2 -0
  382. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.amd.js.map +1 -0
  383. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.esm.js +2 -0
  384. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.esm.js.map +1 -0
  385. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.amd.js +2 -0
  386. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.amd.js.map +1 -0
  387. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.esm.js +2 -0
  388. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.esm.js.map +1 -0
  389. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.amd.js +2 -0
  390. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.amd.js.map +1 -0
  391. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.js +2 -0
  392. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.js.map +1 -0
  393. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.amd.js +3 -0
  394. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.amd.js.map +1 -0
  395. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.js +4 -0
  396. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.js.map +1 -0
  397. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.amd.js +2 -0
  398. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.amd.js.map +1 -0
  399. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.js +2 -0
  400. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.js.map +1 -0
  401. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.amd.js +2 -0
  402. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.amd.js.map +1 -0
  403. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.js +2 -0
  404. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.js.map +1 -0
  405. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.amd.js +2 -0
  406. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.amd.js.map +1 -0
  407. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.js +2 -0
  408. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.js.map +1 -0
  409. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.amd.js +2 -0
  410. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.amd.js.map +1 -0
  411. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.js +2 -0
  412. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.js.map +1 -0
  413. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.amd.js +2 -0
  414. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.amd.js.map +1 -0
  415. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.js +2 -0
  416. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.js.map +1 -0
  417. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.amd.js +3 -0
  418. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.amd.js.map +1 -0
  419. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.js +4 -0
  420. package/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.js.map +1 -0
  421. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.amd.js +3 -0
  422. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.amd.js.map +1 -0
  423. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.js +3 -0
  424. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.js.map +1 -0
  425. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.amd.js +4 -0
  426. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.amd.js.map +1 -0
  427. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.esm.js +4 -0
  428. package/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.esm.js.map +1 -0
  429. package/dist/browser/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.amd.js +2 -0
  430. package/dist/browser/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.amd.js.map +1 -0
  431. package/dist/browser/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.esm.js +2 -0
  432. package/dist/browser/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.esm.js.map +1 -0
  433. package/dist/browser/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.amd.js +2 -0
  434. package/dist/browser/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.amd.js.map +1 -0
  435. package/dist/browser/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.esm.js +2 -0
  436. package/dist/browser/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.esm.js.map +1 -0
  437. package/dist/browser/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.amd.js +2 -0
  438. package/dist/browser/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.amd.js.map +1 -0
  439. package/dist/browser/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.esm.js +2 -0
  440. package/dist/browser/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.esm.js.map +1 -0
  441. package/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.amd.js +2 -0
  442. package/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.amd.js.map +1 -0
  443. package/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.esm.js +2 -0
  444. package/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.esm.js.map +1 -0
  445. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.amd.js +2 -0
  446. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.amd.js.map +1 -0
  447. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.esm.js +2 -0
  448. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.esm.js.map +1 -0
  449. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.amd.js +2 -0
  450. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.amd.js.map +1 -0
  451. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.esm.js +2 -0
  452. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.esm.js.map +1 -0
  453. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.amd.js +2 -0
  454. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.amd.js.map +1 -0
  455. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.esm.js +2 -0
  456. package/dist/browser/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.esm.js.map +1 -0
  457. package/dist/browser/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.amd.js +2 -0
  458. package/dist/browser/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.amd.js.map +1 -0
  459. package/dist/browser/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.esm.js +2 -0
  460. package/dist/browser/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.esm.js.map +1 -0
  461. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.amd.js +2 -0
  462. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.amd.js.map +1 -0
  463. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.esm.js +2 -0
  464. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.esm.js.map +1 -0
  465. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.amd.js +2 -0
  466. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.amd.js.map +1 -0
  467. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.esm.js +2 -0
  468. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.esm.js.map +1 -0
  469. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.amd.js +2 -0
  470. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.amd.js.map +1 -0
  471. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.esm.js +2 -0
  472. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.esm.js.map +1 -0
  473. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.amd.js +2 -0
  474. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.amd.js.map +1 -0
  475. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.esm.js +2 -0
  476. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.esm.js.map +1 -0
  477. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.amd.js +2 -0
  478. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.amd.js.map +1 -0
  479. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.esm.js +2 -0
  480. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.esm.js.map +1 -0
  481. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.amd.js +2 -0
  482. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.amd.js.map +1 -0
  483. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.esm.js +2 -0
  484. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.esm.js.map +1 -0
  485. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.amd.js +2 -0
  486. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.amd.js.map +1 -0
  487. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.esm.js +2 -0
  488. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.esm.js.map +1 -0
  489. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.amd.js +2 -0
  490. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.amd.js.map +1 -0
  491. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.esm.js +2 -0
  492. package/dist/browser/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.esm.js.map +1 -0
  493. package/dist/browser/services/AuditorService.amd.js +2 -0
  494. package/dist/browser/services/AuditorService.amd.js.map +1 -0
  495. package/dist/browser/services/AuditorService.esm.js +2 -0
  496. package/dist/browser/services/AuditorService.esm.js.map +1 -0
  497. package/dist/browser/services/ChronicleService.amd.js +2 -0
  498. package/dist/browser/services/ChronicleService.amd.js.map +1 -0
  499. package/dist/browser/services/ChronicleService.esm.js +2 -0
  500. package/dist/browser/services/ChronicleService.esm.js.map +1 -0
  501. package/dist/browser/services/MonitorService.amd.js +2 -0
  502. package/dist/browser/services/MonitorService.amd.js.map +1 -0
  503. package/dist/browser/services/MonitorService.esm.js +2 -0
  504. package/dist/browser/services/MonitorService.esm.js.map +1 -0
  505. package/dist/browser/services/RelayService.amd.js +2 -0
  506. package/dist/browser/services/RelayService.amd.js.map +1 -0
  507. package/dist/browser/services/RelayService.esm.js +2 -0
  508. package/dist/browser/services/RelayService.esm.js.map +1 -0
  509. package/dist/browser/services/Service.amd.js +2 -0
  510. package/dist/browser/services/Service.amd.js.map +1 -0
  511. package/dist/browser/services/Service.esm.js +2 -0
  512. package/dist/browser/services/Service.esm.js.map +1 -0
  513. package/dist/browser/services/index.amd.js +71 -0
  514. package/dist/browser/services/index.amd.js.map +1 -0
  515. package/dist/browser/services/index.esm.js +2 -0
  516. package/dist/browser/services/index.esm.js.map +1 -0
  517. package/dist/browser/transform/TransformCheck.amd.js +2 -0
  518. package/dist/browser/transform/TransformCheck.amd.js.map +1 -0
  519. package/dist/browser/transform/TransformCheck.esm.js +2 -0
  520. package/dist/browser/transform/TransformCheck.esm.js.map +1 -0
  521. package/dist/browser/transform/TransformEvent.amd.js +2 -0
  522. package/dist/browser/transform/TransformEvent.amd.js.map +1 -0
  523. package/dist/browser/transform/TransformEvent.esm.js +2 -0
  524. package/dist/browser/transform/TransformEvent.esm.js.map +1 -0
  525. package/dist/browser/transform/TransformMonitors.amd.js +2 -0
  526. package/dist/browser/transform/TransformMonitors.amd.js.map +1 -0
  527. package/dist/browser/transform/TransformMonitors.esm.js +2 -0
  528. package/dist/browser/transform/TransformMonitors.esm.js.map +1 -0
  529. package/dist/browser/transform/TransformRelays.amd.js +2 -0
  530. package/dist/browser/transform/TransformRelays.amd.js.map +1 -0
  531. package/dist/browser/transform/TransformRelays.esm.js +2 -0
  532. package/dist/browser/transform/TransformRelays.esm.js.map +1 -0
  533. package/dist/browser/transform/index.amd.js +71 -0
  534. package/dist/browser/transform/index.amd.js.map +1 -0
  535. package/dist/browser/transform/index.esm.js +2 -0
  536. package/dist/browser/transform/index.esm.js.map +1 -0
  537. package/dist/browser/utils/SyncKeys.amd.js +2 -0
  538. package/dist/browser/utils/SyncKeys.amd.js.map +1 -0
  539. package/dist/browser/utils/SyncKeys.esm.js +2 -0
  540. package/dist/browser/utils/SyncKeys.esm.js.map +1 -0
  541. package/dist/browser/utils/classes.amd.js +2 -0
  542. package/dist/browser/utils/classes.amd.js.map +1 -0
  543. package/dist/browser/utils/classes.esm.js +2 -0
  544. package/dist/browser/utils/classes.esm.js.map +1 -0
  545. package/dist/browser/utils/encoding.amd.js +2 -0
  546. package/dist/browser/utils/encoding.amd.js.map +1 -0
  547. package/dist/browser/utils/encoding.esm.js +2 -0
  548. package/dist/browser/utils/encoding.esm.js.map +1 -0
  549. package/dist/browser/utils/events.amd.js +2 -0
  550. package/dist/browser/utils/events.amd.js.map +1 -0
  551. package/dist/browser/utils/events.esm.js +2 -0
  552. package/dist/browser/utils/events.esm.js.map +1 -0
  553. package/dist/browser/utils/general.amd.js +2 -0
  554. package/dist/browser/utils/general.amd.js.map +1 -0
  555. package/dist/browser/utils/general.esm.js +2 -0
  556. package/dist/browser/utils/general.esm.js.map +1 -0
  557. package/dist/browser/utils/geo.amd.js +2 -0
  558. package/dist/browser/utils/geo.amd.js.map +1 -0
  559. package/dist/browser/utils/geo.esm.js +2 -0
  560. package/dist/browser/utils/geo.esm.js.map +1 -0
  561. package/dist/browser/utils/hash.amd.js +2 -0
  562. package/dist/browser/utils/hash.amd.js.map +1 -0
  563. package/dist/browser/utils/hash.esm.js +2 -0
  564. package/dist/browser/utils/hash.esm.js.map +1 -0
  565. package/dist/browser/utils/index.amd.js +71 -0
  566. package/dist/browser/utils/index.amd.js.map +1 -0
  567. package/dist/browser/utils/index.esm.js +2 -0
  568. package/dist/browser/utils/index.esm.js.map +1 -0
  569. package/dist/browser/utils/monitors.amd.js +2 -0
  570. package/dist/browser/utils/monitors.amd.js.map +1 -0
  571. package/dist/browser/utils/monitors.esm.js +2 -0
  572. package/dist/browser/utils/monitors.esm.js.map +1 -0
  573. package/dist/browser/utils/nostr.amd.js +2 -0
  574. package/dist/browser/utils/nostr.amd.js.map +1 -0
  575. package/dist/browser/utils/nostr.esm.js +2 -0
  576. package/dist/browser/utils/nostr.esm.js.map +1 -0
  577. package/dist/browser/utils/pfp.amd.js +2 -0
  578. package/dist/browser/utils/pfp.amd.js.map +1 -0
  579. package/dist/browser/utils/pfp.esm.js +2 -0
  580. package/dist/browser/utils/pfp.esm.js.map +1 -0
  581. package/dist/node/core/Adapter.js +205 -0
  582. package/dist/node/core/Adapter.js.map +1 -0
  583. package/dist/node/core/AdapterCacheWorker.js +170 -0
  584. package/dist/node/core/AdapterCacheWorker.js.map +1 -0
  585. package/dist/node/core/AdapterWebsocketQueue.js +27 -0
  586. package/dist/node/core/AdapterWebsocketQueue.js.map +1 -0
  587. package/dist/node/core/AdapterWebsocketWorker.js +374 -0
  588. package/dist/node/core/AdapterWebsocketWorker.js.map +1 -0
  589. package/dist/node/core/AdapterWorker.js +250 -0
  590. package/dist/node/core/AdapterWorker.js.map +1 -0
  591. package/dist/node/core/Base.js +359 -0
  592. package/dist/node/core/Base.js.map +1 -0
  593. package/dist/node/core/Batcher.js +63 -0
  594. package/dist/node/core/Batcher.js.map +1 -0
  595. package/dist/node/core/CacheAdapter.js +113 -0
  596. package/dist/node/core/CacheAdapter.js.map +1 -0
  597. package/dist/node/core/Checkpoints.js +52 -0
  598. package/dist/node/core/Checkpoints.js.map +1 -0
  599. package/dist/node/core/LocalStorageWrapper.js +109 -0
  600. package/dist/node/core/LocalStorageWrapper.js.map +1 -0
  601. package/dist/node/core/Loggerr.js +3 -0
  602. package/dist/node/core/Loggerr.js.map +1 -0
  603. package/dist/node/core/Memory.js +19 -0
  604. package/dist/node/core/Memory.js.map +1 -0
  605. package/dist/node/core/Queue.js +158 -0
  606. package/dist/node/core/Queue.js.map +1 -0
  607. package/dist/node/core/Routine.js +7 -0
  608. package/dist/node/core/Routine.js.map +1 -0
  609. package/dist/node/core/Subscriber.js +75 -0
  610. package/dist/node/core/Subscriber.js.map +1 -0
  611. package/dist/node/core/WebsocketAdapter.js +488 -0
  612. package/dist/node/core/WebsocketAdapter.js.map +1 -0
  613. package/dist/node/core/Workers.js +172 -0
  614. package/dist/node/core/Workers.js.map +1 -0
  615. package/dist/node/core/index.js +12 -0
  616. package/dist/node/core/index.js.map +1 -0
  617. package/dist/node/factory/cache.shared.worker.js +58 -0
  618. package/dist/node/factory/cache.shared.worker.js.map +1 -0
  619. package/dist/node/factory/cache.worker.js +4 -0
  620. package/dist/node/factory/cache.worker.js.map +1 -0
  621. package/dist/node/factory/index.js +3 -0
  622. package/dist/node/factory/index.js.map +1 -0
  623. package/dist/node/helpers/filters.js +7 -0
  624. package/dist/node/helpers/filters.js.map +1 -0
  625. package/dist/node/index.js +10 -0
  626. package/dist/node/index.js.map +1 -0
  627. package/dist/node/interfaces/IAdapterWorkerCommand.js +2 -0
  628. package/dist/node/interfaces/IAdapterWorkerCommand.js.map +1 -0
  629. package/dist/node/interfaces/IAdaptersArgument.js +2 -0
  630. package/dist/node/interfaces/IAdaptersArgument.js.map +1 -0
  631. package/dist/node/interfaces/ICacheAdapter.js +37 -0
  632. package/dist/node/interfaces/ICacheAdapter.js.map +1 -0
  633. package/dist/node/interfaces/ICacheAdapterSharedWorkerCommand.js +2 -0
  634. package/dist/node/interfaces/ICacheAdapterSharedWorkerCommand.js.map +1 -0
  635. package/dist/node/interfaces/INostrEvent.js +2 -0
  636. package/dist/node/interfaces/INostrEvent.js.map +1 -0
  637. package/dist/node/interfaces/ISharedWorkerGlobalScope.js +2 -0
  638. package/dist/node/interfaces/ISharedWorkerGlobalScope.js.map +1 -0
  639. package/dist/node/interfaces/IWorkerCommand.js +2 -0
  640. package/dist/node/interfaces/IWorkerCommand.js.map +1 -0
  641. package/dist/node/interfaces/IWorkerGlobalScope.js +2 -0
  642. package/dist/node/interfaces/IWorkerGlobalScope.js.map +1 -0
  643. package/dist/node/interfaces/TISO13166.js +2 -0
  644. package/dist/node/interfaces/TISO13166.js.map +1 -0
  645. package/dist/node/interfaces/index.js +2 -0
  646. package/dist/node/interfaces/index.js.map +1 -0
  647. package/dist/node/managers/MonitorManager.js +251 -0
  648. package/dist/node/managers/MonitorManager.js.map +1 -0
  649. package/dist/node/managers/StageManager.js +86 -0
  650. package/dist/node/managers/StageManager.js.map +1 -0
  651. package/dist/node/managers/StateManager.js +173 -0
  652. package/dist/node/managers/StateManager.js.map +1 -0
  653. package/dist/node/managers/SyncStateManager.js +56 -0
  654. package/dist/node/managers/SyncStateManager.js.map +1 -0
  655. package/dist/node/models/Check.js +2 -0
  656. package/dist/node/models/Check.js.map +1 -0
  657. package/dist/node/models/DeltaEvent.js +198 -0
  658. package/dist/node/models/DeltaEvent.js.map +1 -0
  659. package/dist/node/models/Event.js +209 -0
  660. package/dist/node/models/Event.js.map +1 -0
  661. package/dist/node/models/EventEncoded.js +2 -0
  662. package/dist/node/models/EventEncoded.js.map +1 -0
  663. package/dist/node/models/Geocode.js +2 -0
  664. package/dist/node/models/Geocode.js.map +1 -0
  665. package/dist/node/models/Geocoded.js +608 -0
  666. package/dist/node/models/Geocoded.js.map +1 -0
  667. package/dist/node/models/Geohash.js +2 -0
  668. package/dist/node/models/Geohash.js.map +1 -0
  669. package/dist/node/models/Monitor.js +493 -0
  670. package/dist/node/models/Monitor.js.map +1 -0
  671. package/dist/node/models/MonitorRegistration.js +54 -0
  672. package/dist/node/models/MonitorRegistration.js.map +1 -0
  673. package/dist/node/models/Nip11.js +352 -0
  674. package/dist/node/models/Nip11.js.map +1 -0
  675. package/dist/node/models/Nip66CheckEvent.js +532 -0
  676. package/dist/node/models/Nip66CheckEvent.js.map +1 -0
  677. package/dist/node/models/PubkeyProfile.js +121 -0
  678. package/dist/node/models/PubkeyProfile.js.map +1 -0
  679. package/dist/node/models/PubkeyRelays.js +32 -0
  680. package/dist/node/models/PubkeyRelays.js.map +1 -0
  681. package/dist/node/models/Relay.js +2 -0
  682. package/dist/node/models/Relay.js.map +1 -0
  683. package/dist/node/models/RelayCheckAggregate.js +220 -0
  684. package/dist/node/models/RelayCheckAggregate.js.map +1 -0
  685. package/dist/node/models/Ssl.js +2 -0
  686. package/dist/node/models/Ssl.js.map +1 -0
  687. package/dist/node/models/_.js +8 -0
  688. package/dist/node/models/_.js.map +1 -0
  689. package/dist/node/models/index.js +11 -0
  690. package/dist/node/models/index.js.map +1 -0
  691. package/dist/node/routines/PurgeInactiveMonitors.js +68 -0
  692. package/dist/node/routines/PurgeInactiveMonitors.js.map +1 -0
  693. package/dist/node/routines/PurgeOldChecks.js +68 -0
  694. package/dist/node/routines/PurgeOldChecks.js.map +1 -0
  695. package/dist/node/services/AuditorService.js +25 -0
  696. package/dist/node/services/AuditorService.js.map +1 -0
  697. package/dist/node/services/ChronicleService.js +788 -0
  698. package/dist/node/services/ChronicleService.js.map +1 -0
  699. package/dist/node/services/MonitorService.js +1020 -0
  700. package/dist/node/services/MonitorService.js.map +1 -0
  701. package/dist/node/services/RelayService.js +391 -0
  702. package/dist/node/services/RelayService.js.map +1 -0
  703. package/dist/node/services/Service.js +533 -0
  704. package/dist/node/services/Service.js.map +1 -0
  705. package/dist/node/services/index.js +6 -0
  706. package/dist/node/services/index.js.map +1 -0
  707. package/dist/node/transform/TransformCheck.js +51 -0
  708. package/dist/node/transform/TransformCheck.js.map +1 -0
  709. package/dist/node/transform/TransformEvent.js +33 -0
  710. package/dist/node/transform/TransformEvent.js.map +1 -0
  711. package/dist/node/transform/TransformMonitors.js +129 -0
  712. package/dist/node/transform/TransformMonitors.js.map +1 -0
  713. package/dist/node/transform/TransformRelays.js +339 -0
  714. package/dist/node/transform/TransformRelays.js.map +1 -0
  715. package/dist/node/transform/index.js +4 -0
  716. package/dist/node/transform/index.js.map +1 -0
  717. package/dist/node/utils/SyncKeys.js +17 -0
  718. package/dist/node/utils/SyncKeys.js.map +1 -0
  719. package/dist/node/utils/classes.js +41 -0
  720. package/dist/node/utils/classes.js.map +1 -0
  721. package/dist/node/utils/encoding.js +59 -0
  722. package/dist/node/utils/encoding.js.map +1 -0
  723. package/dist/node/utils/events.js +26 -0
  724. package/dist/node/utils/events.js.map +1 -0
  725. package/dist/node/utils/general.js +142 -0
  726. package/dist/node/utils/general.js.map +1 -0
  727. package/dist/node/utils/geo.js +14 -0
  728. package/dist/node/utils/geo.js.map +1 -0
  729. package/dist/node/utils/hash.js +103 -0
  730. package/dist/node/utils/hash.js.map +1 -0
  731. package/dist/node/utils/index.js +8 -0
  732. package/dist/node/utils/index.js.map +1 -0
  733. package/dist/node/utils/monitors.js +3 -0
  734. package/dist/node/utils/monitors.js.map +1 -0
  735. package/dist/node/utils/nostr.js +38 -0
  736. package/dist/node/utils/nostr.js.map +1 -0
  737. package/dist/node/utils/pfp.js +231 -0
  738. package/dist/node/utils/pfp.js.map +1 -0
  739. package/dist/node/workers/nocap.worker.js +2 -0
  740. package/dist/node/workers/nocap.worker.js.map +1 -0
  741. package/dist/server/_virtual/_commonjsHelpers.cjs.js +2 -0
  742. package/dist/server/_virtual/_commonjsHelpers.cjs.js.map +1 -0
  743. package/dist/server/_virtual/_commonjsHelpers.esm.js +2 -0
  744. package/dist/server/_virtual/_commonjsHelpers.esm.js.map +1 -0
  745. package/dist/server/_virtual/_tslib.cjs.js +2 -0
  746. package/dist/server/_virtual/_tslib.cjs.js.map +1 -0
  747. package/dist/server/_virtual/_tslib.esm.js +2 -0
  748. package/dist/server/_virtual/_tslib.esm.js.map +1 -0
  749. package/dist/server/_virtual/bake-collection.cjs.js +2 -0
  750. package/dist/server/_virtual/bake-collection.cjs.js.map +1 -0
  751. package/dist/server/_virtual/bake-collection.esm.js +2 -0
  752. package/dist/server/_virtual/bake-collection.esm.js.map +1 -0
  753. package/dist/server/_virtual/bolt11.cjs.js +2 -0
  754. package/dist/server/_virtual/bolt11.cjs.js.map +1 -0
  755. package/dist/server/_virtual/bolt11.esm.js +2 -0
  756. package/dist/server/_virtual/bolt11.esm.js.map +1 -0
  757. package/dist/server/_virtual/ee.cjs.js +2 -0
  758. package/dist/server/_virtual/ee.cjs.js.map +1 -0
  759. package/dist/server/_virtual/ee.esm.js +2 -0
  760. package/dist/server/_virtual/ee.esm.js.map +1 -0
  761. package/dist/server/_virtual/index.cjs.js +2 -0
  762. package/dist/server/_virtual/index.cjs.js.map +1 -0
  763. package/dist/server/_virtual/index.cjs2.js +2 -0
  764. package/dist/server/_virtual/index.cjs2.js.map +1 -0
  765. package/dist/server/_virtual/index.cjs3.js +2 -0
  766. package/dist/server/_virtual/index.cjs3.js.map +1 -0
  767. package/dist/server/_virtual/index.cjs4.js +2 -0
  768. package/dist/server/_virtual/index.cjs4.js.map +1 -0
  769. package/dist/server/_virtual/index.cjs5.js +2 -0
  770. package/dist/server/_virtual/index.cjs5.js.map +1 -0
  771. package/dist/server/_virtual/index.cjs6.js +2 -0
  772. package/dist/server/_virtual/index.cjs6.js.map +1 -0
  773. package/dist/server/_virtual/index.esm.js +2 -0
  774. package/dist/server/_virtual/index.esm.js.map +1 -0
  775. package/dist/server/_virtual/index.esm2.js +2 -0
  776. package/dist/server/_virtual/index.esm2.js.map +1 -0
  777. package/dist/server/_virtual/index.esm3.js +2 -0
  778. package/dist/server/_virtual/index.esm3.js.map +1 -0
  779. package/dist/server/_virtual/index.esm4.js +2 -0
  780. package/dist/server/_virtual/index.esm4.js.map +1 -0
  781. package/dist/server/_virtual/index.esm5.js +2 -0
  782. package/dist/server/_virtual/index.esm5.js.map +1 -0
  783. package/dist/server/_virtual/index.esm6.js +2 -0
  784. package/dist/server/_virtual/index.esm6.js.map +1 -0
  785. package/dist/server/_virtual/task-collection.cjs.js +2 -0
  786. package/dist/server/_virtual/task-collection.cjs.js.map +1 -0
  787. package/dist/server/_virtual/task-collection.esm.js +2 -0
  788. package/dist/server/_virtual/task-collection.esm.js.map +1 -0
  789. package/dist/server/_virtual/types.cjs.js +2 -0
  790. package/dist/server/_virtual/types.cjs.js.map +1 -0
  791. package/dist/server/_virtual/types.esm.js +2 -0
  792. package/dist/server/_virtual/types.esm.js.map +1 -0
  793. package/dist/server/_virtual/utils.cjs.js +2 -0
  794. package/dist/server/_virtual/utils.cjs.js.map +1 -0
  795. package/dist/server/_virtual/utils.cjs2.js +2 -0
  796. package/dist/server/_virtual/utils.cjs2.js.map +1 -0
  797. package/dist/server/_virtual/utils.esm.js +2 -0
  798. package/dist/server/_virtual/utils.esm.js.map +1 -0
  799. package/dist/server/_virtual/utils.esm2.js +2 -0
  800. package/dist/server/_virtual/utils.esm2.js.map +1 -0
  801. package/dist/server/core/Adapter.cjs.js +2 -0
  802. package/dist/server/core/Adapter.cjs.js.map +1 -0
  803. package/dist/server/core/Adapter.esm.js +2 -0
  804. package/dist/server/core/Adapter.esm.js.map +1 -0
  805. package/dist/server/core/AdapterCacheWorker.cjs.js +2 -0
  806. package/dist/server/core/AdapterCacheWorker.cjs.js.map +1 -0
  807. package/dist/server/core/AdapterCacheWorker.esm.js +2 -0
  808. package/dist/server/core/AdapterCacheWorker.esm.js.map +1 -0
  809. package/dist/server/core/AdapterWebsocketWorker.cjs.js +2 -0
  810. package/dist/server/core/AdapterWebsocketWorker.cjs.js.map +1 -0
  811. package/dist/server/core/AdapterWebsocketWorker.esm.js +2 -0
  812. package/dist/server/core/AdapterWebsocketWorker.esm.js.map +1 -0
  813. package/dist/server/core/AdapterWorker.cjs.js +2 -0
  814. package/dist/server/core/AdapterWorker.cjs.js.map +1 -0
  815. package/dist/server/core/AdapterWorker.esm.js +2 -0
  816. package/dist/server/core/AdapterWorker.esm.js.map +1 -0
  817. package/dist/server/core/Base.cjs.js +2 -0
  818. package/dist/server/core/Base.cjs.js.map +1 -0
  819. package/dist/server/core/Base.esm.js +2 -0
  820. package/dist/server/core/Base.esm.js.map +1 -0
  821. package/dist/server/core/Batcher.cjs.js +2 -0
  822. package/dist/server/core/Batcher.cjs.js.map +1 -0
  823. package/dist/server/core/Batcher.esm.js +2 -0
  824. package/dist/server/core/Batcher.esm.js.map +1 -0
  825. package/dist/server/core/CacheAdapter.cjs.js +2 -0
  826. package/dist/server/core/CacheAdapter.cjs.js.map +1 -0
  827. package/dist/server/core/CacheAdapter.esm.js +2 -0
  828. package/dist/server/core/CacheAdapter.esm.js.map +1 -0
  829. package/dist/server/core/LocalStorageWrapper.cjs.js +2 -0
  830. package/dist/server/core/LocalStorageWrapper.cjs.js.map +1 -0
  831. package/dist/server/core/LocalStorageWrapper.esm.js +2 -0
  832. package/dist/server/core/LocalStorageWrapper.esm.js.map +1 -0
  833. package/dist/server/core/Queue.cjs.js +2 -0
  834. package/dist/server/core/Queue.cjs.js.map +1 -0
  835. package/dist/server/core/Queue.esm.js +2 -0
  836. package/dist/server/core/Queue.esm.js.map +1 -0
  837. package/dist/server/core/WebsocketAdapter.cjs.js +2 -0
  838. package/dist/server/core/WebsocketAdapter.cjs.js.map +1 -0
  839. package/dist/server/core/WebsocketAdapter.esm.js +2 -0
  840. package/dist/server/core/WebsocketAdapter.esm.js.map +1 -0
  841. package/dist/server/core/Workers.cjs.js +2 -0
  842. package/dist/server/core/Workers.cjs.js.map +1 -0
  843. package/dist/server/core/Workers.esm.js +2 -0
  844. package/dist/server/core/Workers.esm.js.map +1 -0
  845. package/dist/server/core/index.cjs.js +2 -0
  846. package/dist/server/core/index.cjs.js.map +1 -0
  847. package/dist/server/core/index.esm.js +2 -0
  848. package/dist/server/core/index.esm.js.map +1 -0
  849. package/dist/server/factory/cache.shared.worker.cjs.js +2 -0
  850. package/dist/server/factory/cache.shared.worker.cjs.js.map +1 -0
  851. package/dist/server/factory/cache.shared.worker.esm.js +2 -0
  852. package/dist/server/factory/cache.shared.worker.esm.js.map +1 -0
  853. package/dist/server/factory/cache.worker.cjs.js +2 -0
  854. package/dist/server/factory/cache.worker.cjs.js.map +1 -0
  855. package/dist/server/factory/cache.worker.esm.js +2 -0
  856. package/dist/server/factory/cache.worker.esm.js.map +1 -0
  857. package/dist/server/factory/index.cjs.js +2 -0
  858. package/dist/server/factory/index.cjs.js.map +1 -0
  859. package/dist/server/factory/index.esm.js +2 -0
  860. package/dist/server/factory/index.esm.js.map +1 -0
  861. package/dist/server/index.cjs.js +2 -0
  862. package/dist/server/index.cjs.js.map +1 -0
  863. package/dist/server/index.esm.js +2 -0
  864. package/dist/server/index.esm.js.map +1 -0
  865. package/dist/server/interfaces/index.cjs.js +2 -0
  866. package/dist/server/interfaces/index.cjs.js.map +1 -0
  867. package/dist/server/interfaces/index.esm.js +2 -0
  868. package/dist/server/interfaces/index.esm.js.map +1 -0
  869. package/dist/server/internal/utils/dist/browser/_virtual/_tslib.esm.cjs.js +2 -0
  870. package/dist/server/internal/utils/dist/browser/_virtual/_tslib.esm.cjs.js.map +1 -0
  871. package/dist/server/internal/utils/dist/browser/_virtual/_tslib.esm.esm.js +2 -0
  872. package/dist/server/internal/utils/dist/browser/_virtual/_tslib.esm.esm.js.map +1 -0
  873. package/dist/server/internal/utils/dist/browser/config.esm.cjs.js +2 -0
  874. package/dist/server/internal/utils/dist/browser/config.esm.cjs.js.map +1 -0
  875. package/dist/server/internal/utils/dist/browser/config.esm.esm.js +2 -0
  876. package/dist/server/internal/utils/dist/browser/config.esm.esm.js.map +1 -0
  877. package/dist/server/internal/utils/dist/browser/controlflow.esm.cjs.js +2 -0
  878. package/dist/server/internal/utils/dist/browser/controlflow.esm.cjs.js.map +1 -0
  879. package/dist/server/internal/utils/dist/browser/controlflow.esm.esm.js +2 -0
  880. package/dist/server/internal/utils/dist/browser/controlflow.esm.esm.js.map +1 -0
  881. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.cjs.js +4 -0
  882. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.cjs.js.map +1 -0
  883. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.esm.js +3 -0
  884. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.esm.js.map +1 -0
  885. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.cjs.js +4 -0
  886. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.cjs.js.map +1 -0
  887. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.esm.js +3 -0
  888. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.esm.js.map +1 -0
  889. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.cjs.js +3 -0
  890. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.cjs.js.map +1 -0
  891. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.esm.js +3 -0
  892. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.esm.js.map +1 -0
  893. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.cjs.js +3 -0
  894. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.cjs.js.map +1 -0
  895. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.esm.js +3 -0
  896. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.esm.js.map +1 -0
  897. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.cjs.js +4 -0
  898. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.cjs.js.map +1 -0
  899. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.esm.js +4 -0
  900. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.esm.js.map +1 -0
  901. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.cjs.js +3 -0
  902. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.cjs.js.map +1 -0
  903. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.esm.js +3 -0
  904. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.esm.js.map +1 -0
  905. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.cjs.js +2 -0
  906. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.cjs.js.map +1 -0
  907. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.esm.js +2 -0
  908. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.esm.js.map +1 -0
  909. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.cjs.js +2 -0
  910. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.cjs.js.map +1 -0
  911. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.esm.js +2 -0
  912. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.esm.js.map +1 -0
  913. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.cjs.js +2 -0
  914. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.cjs.js.map +1 -0
  915. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.esm.js +2 -0
  916. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.esm.js.map +1 -0
  917. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.cjs.js +3 -0
  918. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.cjs.js.map +1 -0
  919. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.esm.js +3 -0
  920. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.esm.js.map +1 -0
  921. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.cjs.js +2 -0
  922. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.cjs.js.map +1 -0
  923. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.esm.js +2 -0
  924. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.esm.js.map +1 -0
  925. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.cjs.js +2 -0
  926. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.cjs.js.map +1 -0
  927. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.esm.js +2 -0
  928. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.esm.js.map +1 -0
  929. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.cjs.js +2 -0
  930. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.cjs.js.map +1 -0
  931. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.esm.js +2 -0
  932. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.esm.js.map +1 -0
  933. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.cjs.js +2 -0
  934. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.cjs.js.map +1 -0
  935. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.esm.js +2 -0
  936. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.esm.js.map +1 -0
  937. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.cjs.js +2 -0
  938. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.cjs.js.map +1 -0
  939. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.esm.js +2 -0
  940. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.esm.js.map +1 -0
  941. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.cjs.js +3 -0
  942. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.cjs.js.map +1 -0
  943. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.esm.js +3 -0
  944. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.esm.js.map +1 -0
  945. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.cjs.js +3 -0
  946. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.cjs.js.map +1 -0
  947. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.esm.js +3 -0
  948. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@noble_hashes@1.5.0/node_modules/@noble/hashes/esm/utils.esm.esm.js.map +1 -0
  949. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.cjs.js +3 -0
  950. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.cjs.js.map +1 -0
  951. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.esm.js +3 -0
  952. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.esm.js.map +1 -0
  953. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.cjs.js +2 -0
  954. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.cjs.js.map +1 -0
  955. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.esm.js +2 -0
  956. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/nip19.esm.esm.js.map +1 -0
  957. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.cjs.js +2 -0
  958. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.cjs.js.map +1 -0
  959. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.esm.js +2 -0
  960. package/dist/server/internal/utils/dist/browser/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/pure.esm.esm.js.map +1 -0
  961. package/dist/server/managers/MonitorManager.cjs.js +2 -0
  962. package/dist/server/managers/MonitorManager.cjs.js.map +1 -0
  963. package/dist/server/managers/MonitorManager.esm.js +2 -0
  964. package/dist/server/managers/MonitorManager.esm.js.map +1 -0
  965. package/dist/server/managers/StateManager.cjs.js +2 -0
  966. package/dist/server/managers/StateManager.cjs.js.map +1 -0
  967. package/dist/server/managers/StateManager.esm.js +2 -0
  968. package/dist/server/managers/StateManager.esm.js.map +1 -0
  969. package/dist/server/managers/SyncStateManager.cjs.js +2 -0
  970. package/dist/server/managers/SyncStateManager.cjs.js.map +1 -0
  971. package/dist/server/managers/SyncStateManager.esm.js +2 -0
  972. package/dist/server/managers/SyncStateManager.esm.js.map +1 -0
  973. package/dist/server/models/DeltaEvent.cjs.js +2 -0
  974. package/dist/server/models/DeltaEvent.cjs.js.map +1 -0
  975. package/dist/server/models/DeltaEvent.esm.js +2 -0
  976. package/dist/server/models/DeltaEvent.esm.js.map +1 -0
  977. package/dist/server/models/Event.cjs.js +2 -0
  978. package/dist/server/models/Event.cjs.js.map +1 -0
  979. package/dist/server/models/Event.esm.js +2 -0
  980. package/dist/server/models/Event.esm.js.map +1 -0
  981. package/dist/server/models/Geocoded.cjs.js +2 -0
  982. package/dist/server/models/Geocoded.cjs.js.map +1 -0
  983. package/dist/server/models/Geocoded.esm.js +2 -0
  984. package/dist/server/models/Geocoded.esm.js.map +1 -0
  985. package/dist/server/models/Monitor.cjs.js +2 -0
  986. package/dist/server/models/Monitor.cjs.js.map +1 -0
  987. package/dist/server/models/Monitor.esm.js +2 -0
  988. package/dist/server/models/Monitor.esm.js.map +1 -0
  989. package/dist/server/models/MonitorRegistration.cjs.js +2 -0
  990. package/dist/server/models/MonitorRegistration.cjs.js.map +1 -0
  991. package/dist/server/models/MonitorRegistration.esm.js +2 -0
  992. package/dist/server/models/MonitorRegistration.esm.js.map +1 -0
  993. package/dist/server/models/Nip11.cjs.js +2 -0
  994. package/dist/server/models/Nip11.cjs.js.map +1 -0
  995. package/dist/server/models/Nip11.esm.js +2 -0
  996. package/dist/server/models/Nip11.esm.js.map +1 -0
  997. package/dist/server/models/Nip66CheckEvent.cjs.js +2 -0
  998. package/dist/server/models/Nip66CheckEvent.cjs.js.map +1 -0
  999. package/dist/server/models/Nip66CheckEvent.esm.js +2 -0
  1000. package/dist/server/models/Nip66CheckEvent.esm.js.map +1 -0
  1001. package/dist/server/models/PubkeyProfile.cjs.js +2 -0
  1002. package/dist/server/models/PubkeyProfile.cjs.js.map +1 -0
  1003. package/dist/server/models/PubkeyProfile.esm.js +2 -0
  1004. package/dist/server/models/PubkeyProfile.esm.js.map +1 -0
  1005. package/dist/server/models/PubkeyRelays.cjs.js +2 -0
  1006. package/dist/server/models/PubkeyRelays.cjs.js.map +1 -0
  1007. package/dist/server/models/PubkeyRelays.esm.js +2 -0
  1008. package/dist/server/models/PubkeyRelays.esm.js.map +1 -0
  1009. package/dist/server/models/RelayCheckAggregate.cjs.js +2 -0
  1010. package/dist/server/models/RelayCheckAggregate.cjs.js.map +1 -0
  1011. package/dist/server/models/RelayCheckAggregate.esm.js +2 -0
  1012. package/dist/server/models/RelayCheckAggregate.esm.js.map +1 -0
  1013. package/dist/server/models/_.cjs.js +2 -0
  1014. package/dist/server/models/_.cjs.js.map +1 -0
  1015. package/dist/server/models/_.esm.js +2 -0
  1016. package/dist/server/models/_.esm.js.map +1 -0
  1017. package/dist/server/models/index.cjs.js +2 -0
  1018. package/dist/server/models/index.cjs.js.map +1 -0
  1019. package/dist/server/models/index.esm.js +2 -0
  1020. package/dist/server/models/index.esm.js.map +1 -0
  1021. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.cjs.js +2 -0
  1022. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.cjs.js.map +1 -0
  1023. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.esm.js +2 -0
  1024. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_arx.esm.js.map +1 -0
  1025. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.cjs.js +2 -0
  1026. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.cjs.js.map +1 -0
  1027. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.esm.js +2 -0
  1028. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/_assert.esm.js.map +1 -0
  1029. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.cjs.js +2 -0
  1030. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.cjs.js.map +1 -0
  1031. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.esm.js +2 -0
  1032. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/aes.esm.js.map +1 -0
  1033. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.cjs.js +2 -0
  1034. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.cjs.js.map +1 -0
  1035. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.esm.js +2 -0
  1036. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/chacha.esm.js.map +1 -0
  1037. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.cjs.js +3 -0
  1038. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.cjs.js.map +1 -0
  1039. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.esm.js +3 -0
  1040. package/dist/server/node_modules/.pnpm/@noble_ciphers@0.5.3/node_modules/@noble/ciphers/esm/utils.esm.js.map +1 -0
  1041. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.cjs.js +4 -0
  1042. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.cjs.js.map +1 -0
  1043. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.js +4 -0
  1044. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/_shortw_utils.esm.js.map +1 -0
  1045. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.cjs.js +4 -0
  1046. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.cjs.js.map +1 -0
  1047. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.js +4 -0
  1048. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/curve.esm.js.map +1 -0
  1049. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.cjs.js +3 -0
  1050. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.cjs.js.map +1 -0
  1051. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.js +4 -0
  1052. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/modular.esm.js.map +1 -0
  1053. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.cjs.js +3 -0
  1054. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.cjs.js.map +1 -0
  1055. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.js +3 -0
  1056. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/utils.esm.js.map +1 -0
  1057. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.cjs.js +4 -0
  1058. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.cjs.js.map +1 -0
  1059. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.js +4 -0
  1060. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/abstract/weierstrass.esm.js.map +1 -0
  1061. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.cjs.js +4 -0
  1062. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.cjs.js.map +1 -0
  1063. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.js +3 -0
  1064. package/dist/server/node_modules/.pnpm/@noble_curves@1.2.0/node_modules/@noble/curves/esm/secp256k1.esm.js.map +1 -0
  1065. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.cjs.js +2 -0
  1066. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.cjs.js.map +1 -0
  1067. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.js +2 -0
  1068. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_assert.esm.js.map +1 -0
  1069. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.cjs.js +2 -0
  1070. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.cjs.js.map +1 -0
  1071. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.js +2 -0
  1072. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/_sha2.esm.js.map +1 -0
  1073. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.cjs.js +2 -0
  1074. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.cjs.js.map +1 -0
  1075. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.esm.js +2 -0
  1076. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/crypto.esm.js.map +1 -0
  1077. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.cjs.js +2 -0
  1078. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.cjs.js.map +1 -0
  1079. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.esm.js +2 -0
  1080. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hkdf.esm.js.map +1 -0
  1081. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.cjs.js +2 -0
  1082. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.cjs.js.map +1 -0
  1083. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.esm.js +2 -0
  1084. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/hmac.esm.js.map +1 -0
  1085. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.cjs.js +2 -0
  1086. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.cjs.js.map +1 -0
  1087. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.js +2 -0
  1088. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/sha256.esm.js.map +1 -0
  1089. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.cjs.js +3 -0
  1090. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.cjs.js.map +1 -0
  1091. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.js +4 -0
  1092. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.1/node_modules/@noble/hashes/esm/utils.esm.js.map +1 -0
  1093. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.cjs.js +2 -0
  1094. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.cjs.js.map +1 -0
  1095. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.js +2 -0
  1096. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_assert.esm.js.map +1 -0
  1097. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.cjs.js +2 -0
  1098. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.cjs.js.map +1 -0
  1099. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.js +2 -0
  1100. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/_sha2.esm.js.map +1 -0
  1101. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.cjs.js +2 -0
  1102. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.cjs.js.map +1 -0
  1103. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.js +2 -0
  1104. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/crypto.esm.js.map +1 -0
  1105. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.cjs.js +2 -0
  1106. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.cjs.js.map +1 -0
  1107. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.js +2 -0
  1108. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/hmac.esm.js.map +1 -0
  1109. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.cjs.js +2 -0
  1110. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.cjs.js.map +1 -0
  1111. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.js +2 -0
  1112. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/sha256.esm.js.map +1 -0
  1113. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.cjs.js +3 -0
  1114. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.cjs.js.map +1 -0
  1115. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.js +4 -0
  1116. package/dist/server/node_modules/.pnpm/@noble_hashes@1.3.2/node_modules/@noble/hashes/esm/utils.esm.js.map +1 -0
  1117. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.cjs.js +3 -0
  1118. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.cjs.js.map +1 -0
  1119. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.js +3 -0
  1120. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/esm/index.esm.js.map +1 -0
  1121. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.cjs.js +4 -0
  1122. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.cjs.js.map +1 -0
  1123. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.esm.js +4 -0
  1124. package/dist/server/node_modules/.pnpm/@scure_base@1.1.1/node_modules/@scure/base/lib/index.esm.js.map +1 -0
  1125. package/dist/server/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.cjs.js +2 -0
  1126. package/dist/server/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.cjs.js.map +1 -0
  1127. package/dist/server/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.esm.js +2 -0
  1128. package/dist/server/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.esm.js.map +1 -0
  1129. package/dist/server/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.cjs.js +2 -0
  1130. package/dist/server/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.cjs.js.map +1 -0
  1131. package/dist/server/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.esm.js +2 -0
  1132. package/dist/server/node_modules/.pnpm/jsurl2@2.2.0/node_modules/jsurl2/dist/index.esm.js.map +1 -0
  1133. package/dist/server/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.cjs.js +2 -0
  1134. package/dist/server/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.cjs.js.map +1 -0
  1135. package/dist/server/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.esm.js +2 -0
  1136. package/dist/server/node_modules/.pnpm/light-bolt11-decoder@3.2.0/node_modules/light-bolt11-decoder/bolt11.esm.js.map +1 -0
  1137. package/dist/server/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.cjs.js +2 -0
  1138. package/dist/server/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.cjs.js.map +1 -0
  1139. package/dist/server/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.esm.js +2 -0
  1140. package/dist/server/node_modules/.pnpm/nostr-tools@2.11.0_typescript@5.8.3/node_modules/nostr-tools/lib/esm/index.esm.js.map +1 -0
  1141. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.cjs.js +2 -0
  1142. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.cjs.js.map +1 -0
  1143. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.esm.js +2 -0
  1144. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.esm.js.map +1 -0
  1145. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.cjs.js +2 -0
  1146. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.cjs.js.map +1 -0
  1147. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.esm.js +2 -0
  1148. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.esm.js.map +1 -0
  1149. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.cjs.js +2 -0
  1150. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.cjs.js.map +1 -0
  1151. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.esm.js +2 -0
  1152. package/dist/server/node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.esm.js.map +1 -0
  1153. package/dist/server/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.cjs.js +2 -0
  1154. package/dist/server/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.cjs.js.map +1 -0
  1155. package/dist/server/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.esm.js +2 -0
  1156. package/dist/server/node_modules/.pnpm/p-timeout@6.1.4/node_modules/p-timeout/index.esm.js.map +1 -0
  1157. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.cjs.js +2 -0
  1158. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.cjs.js.map +1 -0
  1159. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.esm.js +2 -0
  1160. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/ee.esm.js.map +1 -0
  1161. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.cjs.js +2 -0
  1162. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.cjs.js.map +1 -0
  1163. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.esm.js +2 -0
  1164. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/index.esm.js.map +1 -0
  1165. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.cjs.js +2 -0
  1166. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.cjs.js.map +1 -0
  1167. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.esm.js +2 -0
  1168. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/bake-collection.esm.js.map +1 -0
  1169. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.cjs.js +2 -0
  1170. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.cjs.js.map +1 -0
  1171. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.esm.js +2 -0
  1172. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/index.esm.js.map +1 -0
  1173. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.cjs.js +2 -0
  1174. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.cjs.js.map +1 -0
  1175. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.esm.js +2 -0
  1176. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/task-collection.esm.js.map +1 -0
  1177. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.cjs.js +2 -0
  1178. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.cjs.js.map +1 -0
  1179. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.esm.js +2 -0
  1180. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/task-collection/utils.esm.js.map +1 -0
  1181. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.cjs.js +2 -0
  1182. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.cjs.js.map +1 -0
  1183. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.esm.js +2 -0
  1184. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/types.esm.js.map +1 -0
  1185. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.cjs.js +2 -0
  1186. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.cjs.js.map +1 -0
  1187. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.esm.js +2 -0
  1188. package/dist/server/node_modules/.pnpm/tseep@1.3.1/node_modules/tseep/lib/utils.esm.js.map +1 -0
  1189. package/dist/server/services/AuditorService.cjs.js +2 -0
  1190. package/dist/server/services/AuditorService.cjs.js.map +1 -0
  1191. package/dist/server/services/AuditorService.esm.js +2 -0
  1192. package/dist/server/services/AuditorService.esm.js.map +1 -0
  1193. package/dist/server/services/ChronicleService.cjs.js +2 -0
  1194. package/dist/server/services/ChronicleService.cjs.js.map +1 -0
  1195. package/dist/server/services/ChronicleService.esm.js +2 -0
  1196. package/dist/server/services/ChronicleService.esm.js.map +1 -0
  1197. package/dist/server/services/MonitorService.cjs.js +2 -0
  1198. package/dist/server/services/MonitorService.cjs.js.map +1 -0
  1199. package/dist/server/services/MonitorService.esm.js +2 -0
  1200. package/dist/server/services/MonitorService.esm.js.map +1 -0
  1201. package/dist/server/services/RelayService.cjs.js +2 -0
  1202. package/dist/server/services/RelayService.cjs.js.map +1 -0
  1203. package/dist/server/services/RelayService.esm.js +2 -0
  1204. package/dist/server/services/RelayService.esm.js.map +1 -0
  1205. package/dist/server/services/Service.cjs.js +2 -0
  1206. package/dist/server/services/Service.cjs.js.map +1 -0
  1207. package/dist/server/services/Service.esm.js +2 -0
  1208. package/dist/server/services/Service.esm.js.map +1 -0
  1209. package/dist/server/services/index.cjs.js +2 -0
  1210. package/dist/server/services/index.cjs.js.map +1 -0
  1211. package/dist/server/services/index.esm.js +2 -0
  1212. package/dist/server/services/index.esm.js.map +1 -0
  1213. package/dist/server/transform/TransformCheck.cjs.js +2 -0
  1214. package/dist/server/transform/TransformCheck.cjs.js.map +1 -0
  1215. package/dist/server/transform/TransformCheck.esm.js +2 -0
  1216. package/dist/server/transform/TransformCheck.esm.js.map +1 -0
  1217. package/dist/server/transform/TransformEvent.cjs.js +2 -0
  1218. package/dist/server/transform/TransformEvent.cjs.js.map +1 -0
  1219. package/dist/server/transform/TransformEvent.esm.js +2 -0
  1220. package/dist/server/transform/TransformEvent.esm.js.map +1 -0
  1221. package/dist/server/transform/TransformMonitors.cjs.js +2 -0
  1222. package/dist/server/transform/TransformMonitors.cjs.js.map +1 -0
  1223. package/dist/server/transform/TransformMonitors.esm.js +2 -0
  1224. package/dist/server/transform/TransformMonitors.esm.js.map +1 -0
  1225. package/dist/server/transform/TransformRelays.cjs.js +2 -0
  1226. package/dist/server/transform/TransformRelays.cjs.js.map +1 -0
  1227. package/dist/server/transform/TransformRelays.esm.js +2 -0
  1228. package/dist/server/transform/TransformRelays.esm.js.map +1 -0
  1229. package/dist/server/transform/index.cjs.js +2 -0
  1230. package/dist/server/transform/index.cjs.js.map +1 -0
  1231. package/dist/server/transform/index.esm.js +2 -0
  1232. package/dist/server/transform/index.esm.js.map +1 -0
  1233. package/dist/server/utils/SyncKeys.cjs.js +2 -0
  1234. package/dist/server/utils/SyncKeys.cjs.js.map +1 -0
  1235. package/dist/server/utils/SyncKeys.esm.js +2 -0
  1236. package/dist/server/utils/SyncKeys.esm.js.map +1 -0
  1237. package/dist/server/utils/classes.cjs.js +2 -0
  1238. package/dist/server/utils/classes.cjs.js.map +1 -0
  1239. package/dist/server/utils/classes.esm.js +2 -0
  1240. package/dist/server/utils/classes.esm.js.map +1 -0
  1241. package/dist/server/utils/encoding.cjs.js +2 -0
  1242. package/dist/server/utils/encoding.cjs.js.map +1 -0
  1243. package/dist/server/utils/encoding.esm.js +2 -0
  1244. package/dist/server/utils/encoding.esm.js.map +1 -0
  1245. package/dist/server/utils/events.cjs.js +2 -0
  1246. package/dist/server/utils/events.cjs.js.map +1 -0
  1247. package/dist/server/utils/events.esm.js +2 -0
  1248. package/dist/server/utils/events.esm.js.map +1 -0
  1249. package/dist/server/utils/general.cjs.js +2 -0
  1250. package/dist/server/utils/general.cjs.js.map +1 -0
  1251. package/dist/server/utils/general.esm.js +2 -0
  1252. package/dist/server/utils/general.esm.js.map +1 -0
  1253. package/dist/server/utils/geo.cjs.js +2 -0
  1254. package/dist/server/utils/geo.cjs.js.map +1 -0
  1255. package/dist/server/utils/geo.esm.js +2 -0
  1256. package/dist/server/utils/geo.esm.js.map +1 -0
  1257. package/dist/server/utils/hash.cjs.js +2 -0
  1258. package/dist/server/utils/hash.cjs.js.map +1 -0
  1259. package/dist/server/utils/hash.esm.js +2 -0
  1260. package/dist/server/utils/hash.esm.js.map +1 -0
  1261. package/dist/server/utils/index.cjs.js +2 -0
  1262. package/dist/server/utils/index.cjs.js.map +1 -0
  1263. package/dist/server/utils/index.esm.js +2 -0
  1264. package/dist/server/utils/index.esm.js.map +1 -0
  1265. package/dist/server/utils/monitors.cjs.js +2 -0
  1266. package/dist/server/utils/monitors.cjs.js.map +1 -0
  1267. package/dist/server/utils/monitors.esm.js +2 -0
  1268. package/dist/server/utils/monitors.esm.js.map +1 -0
  1269. package/dist/server/utils/nostr.cjs.js +2 -0
  1270. package/dist/server/utils/nostr.cjs.js.map +1 -0
  1271. package/dist/server/utils/nostr.esm.js +2 -0
  1272. package/dist/server/utils/nostr.esm.js.map +1 -0
  1273. package/dist/server/utils/pfp.cjs.js +2 -0
  1274. package/dist/server/utils/pfp.cjs.js.map +1 -0
  1275. package/dist/server/utils/pfp.esm.js +2 -0
  1276. package/dist/server/utils/pfp.esm.js.map +1 -0
  1277. package/dist/types/core/Adapter.d.ts +58 -0
  1278. package/dist/types/core/Adapter.d.ts.map +1 -0
  1279. package/dist/types/core/AdapterCacheWorker.d.ts +28 -0
  1280. package/dist/types/core/AdapterCacheWorker.d.ts.map +1 -0
  1281. package/dist/types/core/AdapterWebsocketQueue.d.ts +7 -0
  1282. package/dist/types/core/AdapterWebsocketQueue.d.ts.map +1 -0
  1283. package/dist/types/core/AdapterWebsocketWorker.d.ts +78 -0
  1284. package/dist/types/core/AdapterWebsocketWorker.d.ts.map +1 -0
  1285. package/dist/types/core/AdapterWorker.d.ts +55 -0
  1286. package/dist/types/core/AdapterWorker.d.ts.map +1 -0
  1287. package/dist/types/core/Base.d.ts +53 -0
  1288. package/dist/types/core/Base.d.ts.map +1 -0
  1289. package/dist/types/core/Batcher.d.ts +19 -0
  1290. package/dist/types/core/Batcher.d.ts.map +1 -0
  1291. package/dist/types/core/CacheAdapter.d.ts +127 -0
  1292. package/dist/types/core/CacheAdapter.d.ts.map +1 -0
  1293. package/dist/types/core/Checkpoints.d.ts +8 -0
  1294. package/dist/types/core/Checkpoints.d.ts.map +1 -0
  1295. package/dist/types/core/LocalStorageWrapper.d.ts +19 -0
  1296. package/dist/types/core/LocalStorageWrapper.d.ts.map +1 -0
  1297. package/dist/types/core/Loggerr.d.ts +3 -0
  1298. package/dist/types/core/Loggerr.d.ts.map +1 -0
  1299. package/dist/types/core/Memory.d.ts +1 -0
  1300. package/dist/types/core/Memory.d.ts.map +1 -0
  1301. package/dist/types/core/Queue.d.ts +42 -0
  1302. package/dist/types/core/Queue.d.ts.map +1 -0
  1303. package/dist/types/core/Routine.d.ts +3 -0
  1304. package/dist/types/core/Routine.d.ts.map +1 -0
  1305. package/dist/types/core/Subscriber.d.ts +10 -0
  1306. package/dist/types/core/Subscriber.d.ts.map +1 -0
  1307. package/dist/types/core/WebsocketAdapter.d.ts +93 -0
  1308. package/dist/types/core/WebsocketAdapter.d.ts.map +1 -0
  1309. package/dist/types/core/Workers.d.ts +24 -0
  1310. package/dist/types/core/Workers.d.ts.map +1 -0
  1311. package/dist/types/core/index.d.ts +12 -0
  1312. package/dist/types/core/index.d.ts.map +1 -0
  1313. package/dist/types/factory/cache.shared.worker.d.ts +3 -0
  1314. package/dist/types/factory/cache.shared.worker.d.ts.map +1 -0
  1315. package/dist/types/factory/cache.worker.d.ts +11 -0
  1316. package/dist/types/factory/cache.worker.d.ts.map +1 -0
  1317. package/dist/types/factory/index.d.ts +3 -0
  1318. package/dist/types/factory/index.d.ts.map +1 -0
  1319. package/dist/types/helpers/filters.d.ts +4 -0
  1320. package/dist/types/helpers/filters.d.ts.map +1 -0
  1321. package/dist/types/index.d.ts +11 -0
  1322. package/dist/types/index.d.ts.map +1 -0
  1323. package/dist/types/interfaces/IAdapterWorkerCommand.d.ts +8 -0
  1324. package/dist/types/interfaces/IAdapterWorkerCommand.d.ts.map +1 -0
  1325. package/dist/types/interfaces/IAdaptersArgument.d.ts +7 -0
  1326. package/dist/types/interfaces/IAdaptersArgument.d.ts.map +1 -0
  1327. package/dist/types/interfaces/ICacheAdapter.d.ts +1 -0
  1328. package/dist/types/interfaces/ICacheAdapter.d.ts.map +1 -0
  1329. package/dist/types/interfaces/ICacheAdapterSharedWorkerCommand.d.ts +8 -0
  1330. package/dist/types/interfaces/ICacheAdapterSharedWorkerCommand.d.ts.map +1 -0
  1331. package/dist/types/interfaces/INostrEvent.d.ts +2 -0
  1332. package/dist/types/interfaces/INostrEvent.d.ts.map +1 -0
  1333. package/dist/types/interfaces/ISharedWorkerGlobalScope.d.ts +7 -0
  1334. package/dist/types/interfaces/ISharedWorkerGlobalScope.d.ts.map +1 -0
  1335. package/dist/types/interfaces/IWorkerCommand.d.ts +6 -0
  1336. package/dist/types/interfaces/IWorkerCommand.d.ts.map +1 -0
  1337. package/dist/types/interfaces/IWorkerGlobalScope.d.ts +7 -0
  1338. package/dist/types/interfaces/IWorkerGlobalScope.d.ts.map +1 -0
  1339. package/dist/types/interfaces/TISO13166.d.ts +15 -0
  1340. package/dist/types/interfaces/TISO13166.d.ts.map +1 -0
  1341. package/dist/types/interfaces/index.d.ts +8 -0
  1342. package/dist/types/interfaces/index.d.ts.map +1 -0
  1343. package/dist/types/managers/MonitorManager.d.ts +50 -0
  1344. package/dist/types/managers/MonitorManager.d.ts.map +1 -0
  1345. package/dist/types/managers/StageManager.d.ts +36 -0
  1346. package/dist/types/managers/StageManager.d.ts.map +1 -0
  1347. package/dist/types/managers/StateManager.d.ts +50 -0
  1348. package/dist/types/managers/StateManager.d.ts.map +1 -0
  1349. package/dist/types/managers/SyncStateManager.d.ts +22 -0
  1350. package/dist/types/managers/SyncStateManager.d.ts.map +1 -0
  1351. package/dist/types/models/Check.d.ts +28 -0
  1352. package/dist/types/models/Check.d.ts.map +1 -0
  1353. package/dist/types/models/DeltaEvent.d.ts +79 -0
  1354. package/dist/types/models/DeltaEvent.d.ts.map +1 -0
  1355. package/dist/types/models/Event.d.ts +61 -0
  1356. package/dist/types/models/Event.d.ts.map +1 -0
  1357. package/dist/types/models/EventEncoded.d.ts +8 -0
  1358. package/dist/types/models/EventEncoded.d.ts.map +1 -0
  1359. package/dist/types/models/Geocode.d.ts +7 -0
  1360. package/dist/types/models/Geocode.d.ts.map +1 -0
  1361. package/dist/types/models/Geocoded.d.ts +238 -0
  1362. package/dist/types/models/Geocoded.d.ts.map +1 -0
  1363. package/dist/types/models/Geohash.d.ts +6 -0
  1364. package/dist/types/models/Geohash.d.ts.map +1 -0
  1365. package/dist/types/models/Monitor.d.ts +96 -0
  1366. package/dist/types/models/Monitor.d.ts.map +1 -0
  1367. package/dist/types/models/MonitorRegistration.d.ts +8 -0
  1368. package/dist/types/models/MonitorRegistration.d.ts.map +1 -0
  1369. package/dist/types/models/Nip11.d.ts +155 -0
  1370. package/dist/types/models/Nip11.d.ts.map +1 -0
  1371. package/dist/types/models/Nip66CheckEvent.d.ts +63 -0
  1372. package/dist/types/models/Nip66CheckEvent.d.ts.map +1 -0
  1373. package/dist/types/models/PubkeyProfile.d.ts +19 -0
  1374. package/dist/types/models/PubkeyProfile.d.ts.map +1 -0
  1375. package/dist/types/models/PubkeyRelays.d.ts +5 -0
  1376. package/dist/types/models/PubkeyRelays.d.ts.map +1 -0
  1377. package/dist/types/models/Relay.d.ts +9 -0
  1378. package/dist/types/models/Relay.d.ts.map +1 -0
  1379. package/dist/types/models/RelayCheckAggregate.d.ts +92 -0
  1380. package/dist/types/models/RelayCheckAggregate.d.ts.map +1 -0
  1381. package/dist/types/models/Ssl.d.ts +9 -0
  1382. package/dist/types/models/Ssl.d.ts.map +1 -0
  1383. package/dist/types/models/_.d.ts +2 -0
  1384. package/dist/types/models/_.d.ts.map +1 -0
  1385. package/dist/types/models/index.d.ts +15 -0
  1386. package/dist/types/models/index.d.ts.map +1 -0
  1387. package/dist/types/routines/PurgeInactiveMonitors.d.ts +6 -0
  1388. package/dist/types/routines/PurgeInactiveMonitors.d.ts.map +1 -0
  1389. package/dist/types/routines/PurgeOldChecks.d.ts +6 -0
  1390. package/dist/types/routines/PurgeOldChecks.d.ts.map +1 -0
  1391. package/dist/types/services/AuditorService.d.ts +4 -0
  1392. package/dist/types/services/AuditorService.d.ts.map +1 -0
  1393. package/dist/types/services/ChronicleService.d.ts +177 -0
  1394. package/dist/types/services/ChronicleService.d.ts.map +1 -0
  1395. package/dist/types/services/MonitorService.d.ts +62 -0
  1396. package/dist/types/services/MonitorService.d.ts.map +1 -0
  1397. package/dist/types/services/RelayService.d.ts +39 -0
  1398. package/dist/types/services/RelayService.d.ts.map +1 -0
  1399. package/dist/types/services/Service.d.ts +56 -0
  1400. package/dist/types/services/Service.d.ts.map +1 -0
  1401. package/dist/types/services/index.d.ts +6 -0
  1402. package/dist/types/services/index.d.ts.map +1 -0
  1403. package/dist/types/transform/TransformCheck.d.ts +24 -0
  1404. package/dist/types/transform/TransformCheck.d.ts.map +1 -0
  1405. package/dist/types/transform/TransformEvent.d.ts +4 -0
  1406. package/dist/types/transform/TransformEvent.d.ts.map +1 -0
  1407. package/dist/types/transform/TransformMonitors.d.ts +10 -0
  1408. package/dist/types/transform/TransformMonitors.d.ts.map +1 -0
  1409. package/dist/types/transform/TransformRelays.d.ts +20 -0
  1410. package/dist/types/transform/TransformRelays.d.ts.map +1 -0
  1411. package/dist/types/transform/index.d.ts +4 -0
  1412. package/dist/types/transform/index.d.ts.map +1 -0
  1413. package/dist/types/utils/SyncKeys.d.ts +12 -0
  1414. package/dist/types/utils/SyncKeys.d.ts.map +1 -0
  1415. package/dist/types/utils/classes.d.ts +21 -0
  1416. package/dist/types/utils/classes.d.ts.map +1 -0
  1417. package/dist/types/utils/encoding.d.ts +4 -0
  1418. package/dist/types/utils/encoding.d.ts.map +1 -0
  1419. package/dist/types/utils/events.d.ts +7 -0
  1420. package/dist/types/utils/events.d.ts.map +1 -0
  1421. package/dist/types/utils/general.d.ts +8 -0
  1422. package/dist/types/utils/general.d.ts.map +1 -0
  1423. package/dist/types/utils/geo.d.ts +5 -0
  1424. package/dist/types/utils/geo.d.ts.map +1 -0
  1425. package/dist/types/utils/hash.d.ts +7 -0
  1426. package/dist/types/utils/hash.d.ts.map +1 -0
  1427. package/dist/types/utils/index.d.ts +8 -0
  1428. package/dist/types/utils/index.d.ts.map +1 -0
  1429. package/dist/types/utils/monitors.d.ts +2 -0
  1430. package/dist/types/utils/monitors.d.ts.map +1 -0
  1431. package/dist/types/utils/nostr.d.ts +9 -0
  1432. package/dist/types/utils/nostr.d.ts.map +1 -0
  1433. package/dist/types/utils/pfp.d.ts +17 -0
  1434. package/dist/types/utils/pfp.d.ts.map +1 -0
  1435. package/dist/types/workers/nocap.worker.d.ts +2 -0
  1436. package/dist/types/workers/nocap.worker.d.ts.map +1 -0
  1437. package/examples/basic.js +14 -0
  1438. package/package.json +133 -0
  1439. package/rollup.config.js +206 -0
  1440. package/src/core/Adapter.ts +182 -0
  1441. package/src/core/AdapterCacheWorker.ts +83 -0
  1442. package/src/core/AdapterWebsocketQueue.ts +20 -0
  1443. package/src/core/AdapterWebsocketWorker.ts +307 -0
  1444. package/src/core/AdapterWorker.ts +200 -0
  1445. package/src/core/Base.ts +212 -0
  1446. package/src/core/Batcher.ts +78 -0
  1447. package/src/core/CacheAdapter.ts +186 -0
  1448. package/src/core/Checkpoints.ts +11 -0
  1449. package/src/core/LocalStorageWrapper.ts +112 -0
  1450. package/src/core/Loggerr.ts +3 -0
  1451. package/src/core/Memory.ts +20 -0
  1452. package/src/core/Queue.ts +109 -0
  1453. package/src/core/Routine.ts +1 -0
  1454. package/src/core/Subscriber.ts +29 -0
  1455. package/src/core/WebsocketAdapter.ts +438 -0
  1456. package/src/core/Workers.ts +115 -0
  1457. package/src/core/index.ts +15 -0
  1458. package/src/factory/cache.shared.worker.ts +14 -0
  1459. package/src/factory/cache.worker.ts +13 -0
  1460. package/src/factory/index.ts +2 -0
  1461. package/src/helpers/filters.ts +9 -0
  1462. package/src/index.ts +13 -0
  1463. package/src/interfaces/IAdapterWorkerCommand.ts +8 -0
  1464. package/src/interfaces/IAdaptersArgument.ts +7 -0
  1465. package/src/interfaces/ICacheAdapter.ts +42 -0
  1466. package/src/interfaces/ICacheAdapterSharedWorkerCommand.ts +8 -0
  1467. package/src/interfaces/INostrEvent.ts +1 -0
  1468. package/src/interfaces/ISharedWorkerGlobalScope.ts +6 -0
  1469. package/src/interfaces/IWorkerCommand.ts +5 -0
  1470. package/src/interfaces/IWorkerGlobalScope.ts +6 -0
  1471. package/src/interfaces/TISO13166.ts +17 -0
  1472. package/src/interfaces/index.ts +7 -0
  1473. package/src/managers/MonitorManager.ts +232 -0
  1474. package/src/managers/StageManager.ts +83 -0
  1475. package/src/managers/StateManager.ts +176 -0
  1476. package/src/managers/SyncStateManager.ts +60 -0
  1477. package/src/models/Check.ts +34 -0
  1478. package/src/models/DeltaEvent.ts +152 -0
  1479. package/src/models/Event.ts +192 -0
  1480. package/src/models/EventEncoded.ts +7 -0
  1481. package/src/models/Geocode.ts +7 -0
  1482. package/src/models/Geocoded.ts +567 -0
  1483. package/src/models/Geohash.ts +6 -0
  1484. package/src/models/Monitor.ts +384 -0
  1485. package/src/models/MonitorRegistration.ts +25 -0
  1486. package/src/models/Nip11.ts +275 -0
  1487. package/src/models/Nip66CheckEvent.ts +316 -0
  1488. package/src/models/PubkeyProfile.ts +67 -0
  1489. package/src/models/PubkeyRelays.ts +9 -0
  1490. package/src/models/Relay.ts +8 -0
  1491. package/src/models/RelayCheckAggregate.ts +222 -0
  1492. package/src/models/Ssl.ts +8 -0
  1493. package/src/models/_.ts +7 -0
  1494. package/src/models/index.ts +14 -0
  1495. package/src/routines/PurgeInactiveMonitors.ts +10 -0
  1496. package/src/routines/PurgeOldChecks.ts +10 -0
  1497. package/src/services/AuditorService.ts +3 -0
  1498. package/src/services/ChronicleService.ts +722 -0
  1499. package/src/services/MonitorService.ts +719 -0
  1500. package/src/services/RelayService.ts +250 -0
  1501. package/src/services/Service.ts +370 -0
  1502. package/src/services/index.ts +5 -0
  1503. package/src/transform/TransformCheck.ts +62 -0
  1504. package/src/transform/TransformEvent.ts +26 -0
  1505. package/src/transform/TransformMonitors.ts +91 -0
  1506. package/src/transform/TransformRelays.ts +327 -0
  1507. package/src/transform/index.ts +3 -0
  1508. package/src/utils/SyncKeys.ts +12 -0
  1509. package/src/utils/classes.ts +48 -0
  1510. package/src/utils/encoding.ts +16 -0
  1511. package/src/utils/events.ts +29 -0
  1512. package/src/utils/general.ts +101 -0
  1513. package/src/utils/geo.ts +19 -0
  1514. package/src/utils/hash.ts +98 -0
  1515. package/src/utils/index.ts +7 -0
  1516. package/src/utils/monitors.ts +4 -0
  1517. package/src/utils/nostr.ts +45 -0
  1518. package/src/utils/pfp.ts +278 -0
  1519. package/src/workers/nocap.worker.ts +1 -0
  1520. package/tsconfig.browser.json +12 -0
  1521. package/tsconfig.json +35 -0
  1522. package/tsconfig.server.json +10 -0
@@ -0,0 +1,141 @@
1
+ var o1=Object.create;var qs=Object.defineProperty,i1=Object.defineProperties,s1=Object.getOwnPropertyDescriptor,a1=Object.getOwnPropertyDescriptors,c1=Object.getOwnPropertyNames,js=Object.getOwnPropertySymbols,u1=Object.getPrototypeOf,Au=Object.prototype.hasOwnProperty,rp=Object.prototype.propertyIsEnumerable;var lo=(r,e)=>(e=Symbol[r])?e:Symbol.for("Symbol."+r),_u=r=>{throw TypeError(r)};var ku=(r,e,t)=>e in r?qs(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,z=(r,e)=>{for(var t in e||(e={}))Au.call(e,t)&&ku(r,t,e[t]);if(js)for(var t of js(e))rp.call(e,t)&&ku(r,t,e[t]);return r},J=(r,e)=>i1(r,a1(e));var l1=(r=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(r,{get:(e,t)=>(typeof require!="undefined"?require:e)[t]}):r)(function(r){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var np=(r,e)=>{var t={};for(var n in r)Au.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&js)for(var n of js(r))e.indexOf(n)<0&&rp.call(r,n)&&(t[n]=r[n]);return t};var $=(r,e)=>()=>(r&&(e=r(r=0)),e);var f1=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),fo=(r,e)=>{for(var t in e)qs(r,t,{get:e[t],enumerable:!0})},h1=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of c1(e))!Au.call(r,o)&&o!==t&&qs(r,o,{get:()=>e[o],enumerable:!(n=s1(e,o))||n.enumerable});return r};var d1=(r,e,t)=>(t=r!=null?o1(u1(r)):{},h1(e||!r||!r.__esModule?qs(t,"default",{value:r,enumerable:!0}):t,r));var Z=(r,e,t)=>ku(r,typeof e!="symbol"?e+"":e,t),Su=(r,e,t)=>e.has(r)||_u("Cannot "+t);var k=(r,e,t)=>(Su(r,e,"read from private field"),t?t.call(r):e.get(r)),H=(r,e,t)=>e.has(r)?_u("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),F=(r,e,t,n)=>(Su(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),G=(r,e,t)=>(Su(r,e,"access private method"),t);var Tr=(r,e,t,n)=>({set _(o){F(r,e,o,t)},get _(){return k(r,e,n)}});var Ve=function(r,e){this[0]=r,this[1]=e},ct=(r,e,t)=>{var n=(s,a,c,u)=>{try{var f=t[s](a),l=(a=f.value)instanceof Ve,h=f.done;Promise.resolve(l?a[0]:a).then(g=>l?n(s==="return"?s:"next",a[1]?{done:g.done,value:g.value}:g,c,u):c({value:g,done:h})).catch(g=>n("throw",g,c,u))}catch(g){u(g)}},o=s=>i[s]=a=>new Promise((c,u)=>n(s,a,c,u)),i={};return t=t.apply(r,e),i[lo("asyncIterator")]=()=>i,o("next"),o("throw"),o("return"),i},ho=r=>{var e=r[lo("asyncIterator")],t=!1,n,o={};return e==null?(e=r[lo("iterator")](),n=i=>o[i]=s=>e[i](s)):(e=e.call(r),n=i=>o[i]=s=>{if(t){if(t=!1,i==="throw")throw s;return s}return t=!0,{done:!1,value:new Ve(new Promise(a=>{var c=e[i](s);c instanceof Object||_u("Object expected"),a(c)}),1)}}),o[lo("iterator")]=()=>o,n("next"),"throw"in e?n("throw"):o.throw=i=>{throw i},"return"in e&&n("return"),o},ut=(r,e,t)=>(e=r[lo("asyncIterator")])?e.call(r):(r=r[lo("iterator")](),e={},t=(n,o)=>(o=r[n])&&(e[n]=i=>new Promise((s,a,c)=>(i=o.call(r,i),c=i.done,Promise.resolve(i.value).then(u=>s({value:u,done:c}),a)))),t("next"),t("return"),e);var ap=f1((RS,Bu)=>{"use strict";var v1=Object.prototype.hasOwnProperty,Ge="~";function Pi(){}Object.create&&(Pi.prototype=Object.create(null),new Pi().__proto__||(Ge=!1));function E1(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function sp(r,e,t,n,o){if(typeof t!="function")throw new TypeError("The listener must be a function");var i=new E1(t,n||r,o),s=Ge?Ge+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],i]:r._events[s].push(i):(r._events[s]=i,r._eventsCount++),r}function $s(r,e){--r._eventsCount===0?r._events=new Pi:delete r._events[e]}function De(){this._events=new Pi,this._eventsCount=0}De.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)v1.call(t,n)&&e.push(Ge?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};De.prototype.listeners=function(e){var t=Ge?Ge+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var o=0,i=n.length,s=new Array(i);o<i;o++)s[o]=n[o].fn;return s};De.prototype.listenerCount=function(e){var t=Ge?Ge+e:e,n=this._events[t];return n?n.fn?1:n.length:0};De.prototype.emit=function(e,t,n,o,i,s){var a=Ge?Ge+e:e;if(!this._events[a])return!1;var c=this._events[a],u=arguments.length,f,l;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,o),!0;case 5:return c.fn.call(c.context,t,n,o,i),!0;case 6:return c.fn.call(c.context,t,n,o,i,s),!0}for(l=1,f=new Array(u-1);l<u;l++)f[l-1]=arguments[l];c.fn.apply(c.context,f)}else{var h=c.length,g;for(l=0;l<h;l++)switch(c[l].once&&this.removeListener(e,c[l].fn,void 0,!0),u){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,t);break;case 3:c[l].fn.call(c[l].context,t,n);break;case 4:c[l].fn.call(c[l].context,t,n,o);break;default:if(!f)for(g=1,f=new Array(u-1);g<u;g++)f[g-1]=arguments[g];c[l].fn.apply(c[l].context,f)}}return!0};De.prototype.on=function(e,t,n){return sp(this,e,t,n,!1)};De.prototype.once=function(e,t,n){return sp(this,e,t,n,!0)};De.prototype.removeListener=function(e,t,n,o){var i=Ge?Ge+e:e;if(!this._events[i])return this;if(!t)return $s(this,i),this;var s=this._events[i];if(s.fn)s.fn===t&&(!o||s.once)&&(!n||s.context===n)&&$s(this,i);else{for(var a=0,c=[],u=s.length;a<u;a++)(s[a].fn!==t||o&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[i]=c.length===1?c[0]:c:$s(this,i)}return this};De.prototype.removeAllListeners=function(e){var t;return e?(t=Ge?Ge+e:e,this._events[t]&&$s(this,t)):(this._events=new Pi,this._eventsCount=0),this};De.prototype.off=De.prototype.removeListener;De.prototype.addListener=De.prototype.on;De.prefixed=Ge;De.EventEmitter=De;typeof Bu!="undefined"&&(Bu.exports=De)});function he(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function t(){this.constructor=r}If(r,e),r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function j(r,e,t,n){return new(t||(t=Promise))((function(o,i){function s(u){try{c(n.next(u))}catch(f){i(f)}}function a(u){try{c(n.throw(u))}catch(f){i(f)}}function c(u){u.done?o(u.value):(function(l){return l instanceof t?l:new t((function(h){h(l)}))})(u.value).then(s,a)}c((n=n.apply(r,e||[])).next())}))}function U(r,e){var t,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(c){return function(u){return(function(l){if(t)throw new TypeError("Generator is already executing.");for(;s&&(s=0,l[0]&&(i=0)),i;)try{if(t=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(o=i.trys,!((o=o.length>0&&o[o.length-1])||l[0]!==6&&l[0]!==2)){i=0;continue}if(l[0]===3&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(l[0]===6&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=e.call(r,i)}catch(h){l=[6,h],n=0}finally{t=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}})([c,u])}}}function ue(r,e,t){if(t||arguments.length===2)for(var n,o=0,i=e.length;o<i;o++)!n&&o in e||(n||(n=Array.prototype.slice.call(e,0,o)),n[o]=e[o]);return r.concat(n||Array.prototype.slice.call(e))}var If,Y,le=$(()=>{"use strict";If=function(r,e){return If=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])},If(r,e)};Y=function(){return Y=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},Y.apply(this,arguments)}});var By={};fo(By,{Workers:()=>rn});var rn,ti=$(()=>{"use strict";le();rn=(function(){function r(e,t){t===void 0&&(t=!0),this.doSetup=t,this._channel=new MessageChannel,this._ready=!1,this.setupWorkers(e)}return Object.defineProperty(r.prototype,"ready",{get:function(){return this._ready},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"websocketWorkers",{get:function(){return{websocket:this.websocket,channel:this.channel}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"cacheWorkers",{get:function(){return{cache:this.cache,channel:this.channel}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"websocket",{get:function(){return this._websocket},set:function(e){this._websocket=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"cache",{get:function(){return this._cache},set:function(e){this._cache=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"channel",{get:function(){return this._channel},enumerable:!1,configurable:!0}),r.prototype.setupWorkers=function(e){return j(this,void 0,void 0,(function(){var t,n,o,i,s;return U(this,(function(a){switch(a.label){case 0:return t=this.channel.port2,n=this.channel.port1,e.cacheAdapter.useWorker?(o=this,[4,e.cacheAdapter.newWorker(t)]):[3,2];case 1:o.cache=a.sent(),a.label=2;case 2:return e.websocketAdapter.useWorker?(i=this,[4,e.websocketAdapter.newWorker(n)]):[3,4];case 3:i.websocket=a.sent(),a.label=4;case 4:return e.cacheAdapter.useWorker&&e.websocketAdapter.useWorker&&(!e.cacheAdapter.handleSetupInternally&&(this.cache instanceof Worker||this.cache instanceof SharedWorker)?(s={type:"setup",channelPort:t},this.cache instanceof Worker?this.cache.postMessage(s,[t]):this.cache instanceof SharedWorker&&this.cache.port.postMessage(s,[t])):console.warn("Cache Worker not defined"),!e.websocketAdapter.handleSetupInternally&&(this.websocket instanceof Worker||this.websocket instanceof SharedWorker)?(s={type:"setup",channelPort:n},this.websocket instanceof Worker?this.websocket.postMessage(s,[n]):this.websocket instanceof SharedWorker&&this.websocket.port.postMessage(s,[n])):console.warn("Websocket Worker not defined")),this._ready=!0,[2]}}))}))},r.encodeNostrEventArrayAsBuffer=function(e){if(e instanceof ArrayBuffer)return e;var t=JSON.stringify(e);return new TextEncoder().encode(t).buffer},r.decodeNostrEventArrayFromBuffer=function(e){if(!(e instanceof ArrayBuffer))return e;var t=new TextDecoder().decode(new Uint8Array(e));return JSON.parse(t)},r})()});var ri,Ja=$(()=>{"use strict";ri=(function(){function r(e){this._prefix="",this.prefix=e}return Object.defineProperty(r.prototype,"prefix",{get:function(){return this._prefix},set:function(e){this._prefix=this.arrToString(e)},enumerable:!1,configurable:!0}),r.prototype.formatKey=function(e){return"".concat(this.prefix,":").concat(this.arrToString(e))},r.prototype.arrToString=function(e){return Array.isArray(e)?e.join(":"):e},r.prototype.getTypeKey=function(){return"".concat(this.prefix).concat(r.TYPE_KEY_SUFFIX)},r.prototype.saveKeyType=function(e,t){var n=this.getTypeKey(),o=JSON.parse(localStorage.getItem(n)||"{}");o[e]=t,localStorage.setItem(n,JSON.stringify(o))},r.prototype.getKeyType=function(e){var t=this.getTypeKey();return JSON.parse(localStorage.getItem(t)||"{}")[e]||null},r.prototype.setItem=function(e,t){if(!localStorage)throw new Error("No localStorage found");var n=this.formatKey(e),o=t?typeof t:"null";t==null?(t=null,o="null"):o==="object"?t=JSON.stringify(t):o!=="boolean"&&o!=="number"||(t=t.toString()),this.saveKeyType(n,o),localStorage.setItem(n,t)},r.prototype.getItem=function(e,t){if(!localStorage)throw new Error("No localStorage found");var n=this.formatKey(e),o=localStorage.getItem(n);if(o===null||o==="")return t;switch(this.getKeyType(n)){case"number":return Number(o);case"boolean":return o==="true";case"object":try{return JSON.parse(o)}catch(i){return t}case"null":return null;default:return o}},r.prototype.removeItem=function(e){if(!localStorage)throw new Error("No localStorage found");var t=this.formatKey(e);localStorage.removeItem(t);var n=this.getTypeKey(),o=JSON.parse(localStorage.getItem(n)||"{}");delete o[t],localStorage.setItem(n,JSON.stringify(o))},r.prototype.clear=function(){if(!localStorage)throw new Error("No localStorage found");localStorage.clear()},r.prototype.length=function(){if(!localStorage)throw new Error("No localStorage found");return localStorage.length},r.prototype.key=function(e){if(!localStorage)throw new Error("No localStorage found");return localStorage.key(e)},r.TYPE_KEY_SUFFIX=":_types",r})()});var Gn,Oy=$(()=>{"use strict";Gn={}});var Tf,Iy=$(()=>{"use strict";Tf={}});function Ry(){return Ty||(Ty=1,Object.defineProperty(Tf,"__esModule",{value:!0})),Tf}var Ty,Ly=$(()=>{Iy()});var nn,Py=$(()=>{"use strict";nn={}});var Zn,Cy=$(()=>{"use strict";Zn={}});var on,Ny=$(()=>{"use strict";on={}});var ni,My=$(()=>{"use strict";ni={}});function Xa(){return Uy?ni:(Uy=1,Object.defineProperty(ni,"__esModule",{value:!0}),ni._fast_remove_single=void 0,ni._fast_remove_single=function(e,t){t!==-1&&(t===0?e.shift():t===e.length-1?e.length=e.length-1:e.splice(t,1))},ni)}var Uy,Rf=$(()=>{My()});var Lf,jy=$(()=>{"use strict";Lf={}});function $y(){return qy||(qy=1,(function(exports$1){Object.defineProperty(exports$1,"__esModule",{value:!0}),exports$1.bakeCollectionVariadic=exports$1.bakeCollectionAwait=exports$1.bakeCollection=exports$1.BAKED_EMPTY_FUNC=void 0,exports$1.BAKED_EMPTY_FUNC=function(){};var FORLOOP_FALLBACK=1500;function generateArgsDefCode(r){var e="";if(r===0)return e;for(var t=0;t<r-1;++t)e+="arg"+String(t)+", ";return e+="arg"+String(r-1)}function generateBodyPartsCode(r,e){for(var t="",n="",o=0;o<e;++o)t+="var f".concat(o," = collection[").concat(o,`];
2
+ `),n+="f".concat(o,"(").concat(r,`)
3
+ `);return{funcDefCode:t,funcCallCode:n}}function generateBodyPartsVariadicCode(r){for(var e="",t="",n=0;n<r;++n)e+="var f".concat(n," = collection[").concat(n,`];
4
+ `),t+="f".concat(n,`.apply(undefined, arguments)
5
+ `);return{funcDefCode:e,funcCallCode:t}}function bakeCollection(collection,fixedArgsNum){if(collection.length===0)return exports$1.BAKED_EMPTY_FUNC;if(collection.length===1)return collection[0];var funcFactoryCode;if(collection.length<FORLOOP_FALLBACK){var argsDefCode=generateArgsDefCode(fixedArgsNum),_a=generateBodyPartsCode(argsDefCode,collection.length),funcDefCode=_a.funcDefCode,funcCallCode=_a.funcCallCode;funcFactoryCode=`(function(collection) {
6
+ `.concat(funcDefCode,`
7
+ collection = undefined;
8
+ return (function(`).concat(argsDefCode,`) {
9
+ `).concat(funcCallCode,`
10
+ });
11
+ })`)}else{var argsDefCode=generateArgsDefCode(fixedArgsNum);funcFactoryCode=collection.length%10==0?`(function(collection) {
12
+ return (function(`.concat(argsDefCode,`) {
13
+ for (var i = 0; i < collection.length; i += 10) {
14
+ collection[i](`).concat(argsDefCode,`);
15
+ collection[i+1](`).concat(argsDefCode,`);
16
+ collection[i+2](`).concat(argsDefCode,`);
17
+ collection[i+3](`).concat(argsDefCode,`);
18
+ collection[i+4](`).concat(argsDefCode,`);
19
+ collection[i+5](`).concat(argsDefCode,`);
20
+ collection[i+6](`).concat(argsDefCode,`);
21
+ collection[i+7](`).concat(argsDefCode,`);
22
+ collection[i+8](`).concat(argsDefCode,`);
23
+ collection[i+9](`).concat(argsDefCode,`);
24
+ }
25
+ });
26
+ })`):collection.length%4==0?`(function(collection) {
27
+ return (function(`.concat(argsDefCode,`) {
28
+ for (var i = 0; i < collection.length; i += 4) {
29
+ collection[i](`).concat(argsDefCode,`);
30
+ collection[i+1](`).concat(argsDefCode,`);
31
+ collection[i+2](`).concat(argsDefCode,`);
32
+ collection[i+3](`).concat(argsDefCode,`);
33
+ }
34
+ });
35
+ })`):collection.length%3==0?`(function(collection) {
36
+ return (function(`.concat(argsDefCode,`) {
37
+ for (var i = 0; i < collection.length; i += 3) {
38
+ collection[i](`).concat(argsDefCode,`);
39
+ collection[i+1](`).concat(argsDefCode,`);
40
+ collection[i+2](`).concat(argsDefCode,`);
41
+ }
42
+ });
43
+ })`):`(function(collection) {
44
+ return (function(`.concat(argsDefCode,`) {
45
+ for (var i = 0; i < collection.length; ++i) {
46
+ collection[i](`).concat(argsDefCode,`);
47
+ }
48
+ });
49
+ })`)}var funcFactory=eval(funcFactoryCode);return funcFactory(collection)}function bakeCollectionAwait(collection,fixedArgsNum){if(collection.length===0)return exports$1.BAKED_EMPTY_FUNC;if(collection.length===1)return collection[0];var funcFactoryCode;if(collection.length<FORLOOP_FALLBACK){var argsDefCode=generateArgsDefCode(fixedArgsNum),_a=generateBodyPartsCode(argsDefCode,collection.length),funcDefCode=_a.funcDefCode,funcCallCode=_a.funcCallCode;funcFactoryCode=`(function(collection) {
50
+ `.concat(funcDefCode,`
51
+ collection = undefined;
52
+ return (function(`).concat(argsDefCode,`) {
53
+ return Promise.all([ `).concat(funcCallCode,` ]);
54
+ });
55
+ })`)}else{var argsDefCode=generateArgsDefCode(fixedArgsNum);funcFactoryCode=`(function(collection) {
56
+ return (function(`.concat(argsDefCode,`) {
57
+ var promises = Array(collection.length);
58
+ for (var i = 0; i < collection.length; ++i) {
59
+ promises[i] = collection[i](`).concat(argsDefCode,`);
60
+ }
61
+ return Promise.all(promises);
62
+ });
63
+ })`)}var funcFactory=eval(funcFactoryCode);return funcFactory(collection)}function bakeCollectionVariadic(collection){if(collection.length===0)return exports$1.BAKED_EMPTY_FUNC;if(collection.length===1)return collection[0];var funcFactoryCode;if(collection.length<FORLOOP_FALLBACK){var _a=generateBodyPartsVariadicCode(collection.length),funcDefCode=_a.funcDefCode,funcCallCode=_a.funcCallCode;funcFactoryCode=`(function(collection) {
64
+ `.concat(funcDefCode,`
65
+ collection = undefined;
66
+ return (function() {
67
+ `).concat(funcCallCode,`
68
+ });
69
+ })`)}else funcFactoryCode=`(function(collection) {
70
+ return (function() {
71
+ for (var i = 0; i < collection.length; ++i) {
72
+ collection[i].apply(undefined, arguments);
73
+ }
74
+ });
75
+ })`;var funcFactory=eval(funcFactoryCode);return funcFactory(collection)}exports$1.bakeCollection=bakeCollection,exports$1.bakeCollectionAwait=bakeCollectionAwait,exports$1.bakeCollectionVariadic=bakeCollectionVariadic})(Lf)),Lf}var qy,Wy=$(()=>{jy()});function Fy(){if(Hy)return on;Hy=1;var r=on&&on.__spreadArray||function(g,y,d){if(d||arguments.length===2)for(var p,b=0,m=y.length;b<m;b++)!p&&b in y||(p||(p=Array.prototype.slice.call(y,0,b)),p[b]=y[b]);return g.concat(p||Array.prototype.slice.call(y))};Object.defineProperty(on,"__esModule",{value:!0}),on.TaskCollection=void 0;var e=Xa(),t=$y();function n(g,y){var d,p=this.length;if(p>1)y?((d=this._tasks).push.apply(d,arguments),this.length+=arguments.length):(this._tasks.push(g),this.length++);else if(y){var b;p===1?((b=Array(1+arguments.length)).push(b),b.push.apply(b,arguments),this._tasks=b):((b=Array(arguments.length)).push.apply(b,arguments),this._tasks=b),this.length+=arguments.length}else this._tasks=p===1?[this._tasks,g]:g,this.length++}function o(g,y){var d,p=this.length;if(p>1)y?((d=this._tasks).push.apply(d,arguments),this.length+=arguments.length):(this._tasks.push(g),this.length++);else if(y){var b;p===1?((b=Array(1+arguments.length)).push(b),b.push.apply(b,arguments),this._tasks=b):((b=Array(arguments.length)).push.apply(b,arguments),this._tasks=b),this.length+=arguments.length}else this._tasks=p===1?[this._tasks,g]:g,this.length++;this.firstEmitBuildStrategy?this.call=l:this.rebuild()}function i(g){this.length!==0&&(this.length===1?this._tasks===g&&(this.length=0):((0,e._fast_remove_single)(this._tasks,this._tasks.lastIndexOf(g)),this._tasks.length===1?(this._tasks=this._tasks[0],this.length=1):this.length=this._tasks.length))}function s(g){if(this.length!==0){if(this.length===1)return this._tasks===g&&(this.length=0),this.firstEmitBuildStrategy?void(this.call=t.BAKED_EMPTY_FUNC):void this.rebuild();(0,e._fast_remove_single)(this._tasks,this._tasks.lastIndexOf(g)),this._tasks.length===1?(this._tasks=this._tasks[0],this.length=1):this.length=this._tasks.length,this.firstEmitBuildStrategy?this.call=l:this.rebuild()}}function a(g){for(var y,d=[],p=1;p<arguments.length;p++)d[p-1]=arguments[p];this.length===0?(this._tasks=d,this.length=1):this.length===1?(d.unshift(this._tasks),this._tasks=d,this.length=this._tasks.length):((y=this._tasks).splice.apply(y,r([g,0],d,!1)),this.length=this._tasks.length)}function c(g){for(var y,d=[],p=1;p<arguments.length;p++)d[p-1]=arguments[p];this.length===0?(this._tasks=d,this.length=1):this.length===1?(d.unshift(this._tasks),this._tasks=d,this.length=this._tasks.length):((y=this._tasks).splice.apply(y,r([g,0],d,!1)),this.length=this._tasks.length),this.firstEmitBuildStrategy?this.call=l:this.rebuild()}function u(){this.length===0?this.call=t.BAKED_EMPTY_FUNC:this.length===1?this.call=this._tasks:this.call=(0,t.bakeCollection)(this._tasks,this.argsNum)}function f(){this.length===0?this.call=t.BAKED_EMPTY_FUNC:this.length===1?this.call=this._tasks:this.call=(0,t.bakeCollectionAwait)(this._tasks,this.argsNum)}function l(){this.rebuild(),this.call.apply(void 0,arguments)}var h=function(y,d,p,b){d===void 0&&(d=!0),p===void 0&&(p=null),b===void 0&&(b=!1),this.awaitTasks=b,this.call=t.BAKED_EMPTY_FUNC,this.argsNum=y,this.firstEmitBuildStrategy=!0,this.rebuild=b?f.bind(this):u.bind(this),this.setAutoRebuild(d),p?typeof p=="function"?(this._tasks=p,this.length=1):(this._tasks=p,this.length=p.length):(this._tasks=null,this.length=0),d&&this.rebuild()};return on.TaskCollection=h,h.prototype.fastClear=function(){this._tasks=null,this.length=0,this.call=t.BAKED_EMPTY_FUNC},h.prototype.clear=function(){this._tasks=null,this.length=0,this.call=t.BAKED_EMPTY_FUNC},h.prototype.growArgsNum=function(y){this.argsNum<y&&(this.argsNum=y,this.firstEmitBuildStrategy?this.call=l:this.rebuild())},h.prototype.setAutoRebuild=function(y){y?(this.push=o.bind(this),this.insert=c.bind(this),this.removeLast=s.bind(this)):(this.push=n.bind(this),this.insert=a.bind(this),this.removeLast=i.bind(this))},h.prototype.tasksAsArray=function(){return this.length===0?[]:this.length===1?[this._tasks]:this._tasks},h.prototype.setTasks=function(y){y.length===0?(this.length=0,this.call=t.BAKED_EMPTY_FUNC):y.length===1?(this.length=1,this.call=y[0],this._tasks=y[0]):(this.length=y.length,this._tasks=y,this.firstEmitBuildStrategy?this.call=l:this.rebuild())},on}var Hy,Dy=$(()=>{Ny();Rf();Wy()});function Ky(){return zy||(zy=1,r=Zn,e=Zn&&Zn.__createBinding||(Object.create?function(n,o,i,s){s===void 0&&(s=i);var a=Object.getOwnPropertyDescriptor(o,i);a&&!("get"in a?!o.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return o[i]}}),Object.defineProperty(n,s,a)}:function(n,o,i,s){s===void 0&&(s=i),n[s]=o[i]}),t=Zn&&Zn.__exportStar||function(n,o){for(var i in n)i==="default"||Object.prototype.hasOwnProperty.call(o,i)||e(o,n,i)},Object.defineProperty(r,"__esModule",{value:!0}),t(Fy(),r)),Zn;var r,e,t}var zy,Vy=$(()=>{Cy();Dy()});var oi,Gy=$(()=>{"use strict";oi={}});function Yy(){return Zy?oi:(Zy=1,Object.defineProperty(oi,"__esModule",{value:!0}),oi.nullObj=void 0,oi.nullObj=function(){var e={__proto__:null};return e},oi)}var Zy,Jy=$(()=>{Gy()});function Qy(){if(Xy)return nn;Xy=1;var r=nn&&nn.__spreadArray||function(u,f,l){if(l||arguments.length===2)for(var h,g=0,y=f.length;g<y;g++)!h&&g in f||(h||(h=Array.prototype.slice.call(f,0,g)),h[g]=f[g]);return u.concat(h||Array.prototype.slice.call(f))};Object.defineProperty(nn,"__esModule",{value:!0}),nn.EventEmitter=void 0;var e=Ky(),t=Xa(),n=Yy();function o(u,f,l,h,g,y){var d=this.events[u];if(d){if(d.length===0)return!1;if(d.argsNum<6)d.call(f,l,h,g,y);else{for(var p=new Array(d.argsNum),b=0,m=p.length;b<m;++b)p[b]=arguments[b+1];d.call.apply(void 0,p)}return!0}return!1}function i(u,f,l,h,g,y){var d,p=this.events[u];if(p!==void 0){if(p.length===0)return!1;if(p.argsNum<6)p.call(f,l,h,g,y);else{for(var b=0,m=(d=new Array(p.argsNum)).length;b<m;++b)d[b]=arguments[b+1];p.call.apply(void 0,d)}}var x=this.onceEvents[u];if(x){if(typeof x=="function")if(this.onceEvents[u]=void 0,arguments.length<6)x(f,l,h,g,y);else{if(d===void 0)for(b=0,m=(d=new Array(arguments.length-1)).length;b<m;++b)d[b]=arguments[b+1];x.apply(void 0,d)}else{var S=x;if(this.onceEvents[u]=void 0,arguments.length<6)for(b=0;b<S.length;++b)S[b](f,l,h,g,y);else{if(d===void 0)for(b=0,m=(d=new Array(arguments.length-1)).length;b<m;++b)d[b]=arguments[b+1];for(b=0;b<S.length;++b)S[b].apply(void 0,d)}}return!0}return p!==void 0}var s=(function(){function u(){this.events=(0,n.nullObj)(),this.onceEvents=(0,n.nullObj)(),this._symbolKeys=new Set,this.maxListeners=1/0}return Object.defineProperty(u.prototype,"_eventsCount",{get:function(){return this.eventNames().length},enumerable:!1,configurable:!0}),u})();function a(u,f,l){if(l===void 0&&(l=f.length),typeof f!="function")throw new TypeError("The listener must be a function");var h=this.events[u];return h?(h.push(f),h.growArgsNum(l),this.maxListeners!==1/0&&this.maxListeners<=h.length&&console.warn('Maximum event listeners for "'.concat(String(u),'" event!'))):(this.events[u]=new e.TaskCollection(l,!0,f,!1),typeof u=="symbol"&&this._symbolKeys.add(u)),this}function c(u,f){var l=this.events[u];l&&l.removeLast(f);var h=this.onceEvents[u];return h&&(typeof h=="function"?this.onceEvents[u]=void 0:typeof h=="object"&&(h.length===1&&h[0]===f?this.onceEvents[u]=void 0:(0,t._fast_remove_single)(h,h.lastIndexOf(f)))),this}return nn.EventEmitter=s,s.prototype.emit=o,s.prototype.on=a,s.prototype.once=function(f,l){switch(this.emit===o&&(this.emit=i),typeof this.onceEvents[f]){case"undefined":this.onceEvents[f]=l,typeof f=="symbol"&&this._symbolKeys.add(f);break;case"function":this.onceEvents[f]=[this.onceEvents[f],l];break;case"object":this.onceEvents[f].push(l)}return this},s.prototype.addListener=a,s.prototype.removeListener=c,s.prototype.addListenerBound=function(f,l,h,g){h===void 0&&(h=this),g===void 0&&(g=l.length),this.boundFuncs||(this.boundFuncs=new Map);var y=l.bind(h);return this.boundFuncs.set(l,y),this.addListener(f,y,g)},s.prototype.removeListenerBound=function(f,l){var h,g,y=(h=this.boundFuncs)===null||h===void 0?void 0:h.get(l);return(g=this.boundFuncs)===null||g===void 0||g.delete(l),this.removeListener(f,y)},s.prototype.hasListeners=function(f){return this.events[f]&&!!this.events[f].length},s.prototype.prependListener=function(f,l,h){if(h===void 0&&(h=l.length),typeof l!="function")throw new TypeError("The listener must be a function");var g=this.events[f];return g&&g instanceof e.TaskCollection?(g.insert(0,l),g.growArgsNum(h),this.maxListeners!==1/0&&this.maxListeners<=g.length&&console.warn('Maximum event listeners for "'.concat(String(f),'" event!'))):(g=this.events[f]=new e.TaskCollection(h,!0,l,!1),typeof f=="symbol"&&this._symbolKeys.add(f)),this},s.prototype.prependOnceListener=function(f,l){this.emit===o&&(this.emit=i);var h=this.onceEvents[f];return h?typeof h!="object"?(this.onceEvents[f]=[l,h],typeof f=="symbol"&&this._symbolKeys.add(f)):(h.unshift(l),this.maxListeners!==1/0&&this.maxListeners<=h.length&&console.warn('Maximum event listeners for "'.concat(String(f),'" once event!'))):(this.onceEvents[f]=[l],typeof f=="symbol"&&this._symbolKeys.add(f)),this},s.prototype.off=c,s.prototype.removeAllListeners=function(f){return f===void 0?(this.events=(0,n.nullObj)(),this.onceEvents=(0,n.nullObj)(),this._symbolKeys=new Set):(this.events[f]=void 0,this.onceEvents[f]=void 0,typeof f=="symbol"&&this._symbolKeys.delete(f)),this},s.prototype.setMaxListeners=function(f){return this.maxListeners=f,this},s.prototype.getMaxListeners=function(){return this.maxListeners},s.prototype.listeners=function(f){return this.emit===o?this.events[f]?this.events[f].tasksAsArray().slice():[]:this.events[f]&&this.onceEvents[f]?r(r([],this.events[f].tasksAsArray(),!0),typeof this.onceEvents[f]=="function"?[this.onceEvents[f]]:this.onceEvents[f],!0):this.events[f]?this.events[f].tasksAsArray():this.onceEvents[f]?typeof this.onceEvents[f]=="function"?[this.onceEvents[f]]:this.onceEvents[f]:[]},s.prototype.eventNames=function(){var f=this;if(this.emit===o){var l=Object.keys(this.events);return r(r([],l,!0),Array.from(this._symbolKeys),!0).filter((function(g){return g in f.events&&f.events[g]&&f.events[g].length}))}l=Object.keys(this.events).filter((function(g){return f.events[g]&&f.events[g].length}));var h=Object.keys(this.onceEvents).filter((function(g){return f.onceEvents[g]&&f.onceEvents[g].length}));return r(r(r([],l,!0),h,!0),Array.from(this._symbolKeys).filter((function(g){return g in f.events&&f.events[g]&&f.events[g].length||g in f.onceEvents&&f.onceEvents[g]&&f.onceEvents[g].length})),!0)},s.prototype.listenerCount=function(f){return this.emit===o?this.events[f]&&this.events[f].length||0:(this.events[f]&&this.events[f].length||0)+(this.onceEvents[f]&&this.onceEvents[f].length||0)},nn}var Xy,eb=$(()=>{Py();Vy();Rf();Jy()});function rb(){return tb||(tb=1,r=Gn,e=Gn&&Gn.__createBinding||(Object.create?function(n,o,i,s){s===void 0&&(s=i);var a=Object.getOwnPropertyDescriptor(o,i);a&&!("get"in a?!o.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return o[i]}}),Object.defineProperty(n,s,a)}:function(n,o,i,s){s===void 0&&(s=i),n[s]=o[i]}),t=Gn&&Gn.__exportStar||function(n,o){for(var i in n)i==="default"||Object.prototype.hasOwnProperty.call(o,i)||e(o,n,i)},Object.defineProperty(r,"__esModule",{value:!0}),t(Ry(),r),t(Qy(),r)),Gn;var r,e,t}var tb,nb=$(()=>{Oy();Ly();eb()});var Qa,Pf=$(()=>{"use strict";nb();Qa=rb()});var ps,gs=$(()=>{"use strict";le();ti();Ja();Pf();ps=(function(){function r(e,t){this.slug="Adapter:unset",this._ready=!1,this.useWorker=!0,this.emitter=new Qa.EventEmitter,this.handleSetupInternally=!1,e instanceof Worker?this.overloadWorker=e:e instanceof URL&&(this.overloadWorker=t?new SharedWorker(e,{type:"module"}):new Worker(e,{type:"module"})),this._ls=new ri(["route66",this.slug])}return Object.defineProperty(r.prototype,"overloadWorker",{get:function(){return this._overloadWorker},set:function(e){this._overloadWorker=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"localStorage",{get:function(){return this._ls},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"workers",{get:function(){return this._workers},set:function(e){this._workers=e,this._bindWorkerHandlers()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"worker",{get:function(){},enumerable:!1,configurable:!0}),r.prototype.healthCheck=function(){return j(this,void 0,void 0,(function(){var e;return U(this,(function(t){switch(t.label){case 0:return!((e=this.workers)===null||e===void 0)&&e.cache&&this.ping(),[4,this.pong()];case 1:return[2,t.sent()]}}))}))},r.prototype.ping=function(){var e,t,n,o,i,s;((e=this.workers)===null||e===void 0?void 0:e.cache)instanceof Worker?(n=(t=this.workers)===null||t===void 0?void 0:t.cache)===null||n===void 0||n.postMessage({type:"ping"}):((o=this.workers)===null||o===void 0?void 0:o.cache)instanceof SharedWorker&&((s=(i=this.workers)===null||i===void 0?void 0:i.cache)===null||s===void 0||s.port.postMessage({type:"ping"}))},r.prototype.pong=function(){return j(this,void 0,void 0,(function(){var e=this;return U(this,(function(t){return[2,new Promise((function(n){var o=setTimeout((function(){n(!1)}),1e3);e.emitter.once("pong",(function(i){i.data.type=="pong"&&(clearTimeout(o),n(!0))}))}))]}))}))},r.prototype.shutdown=function(){return j(this,void 0,void 0,(function(){var e;return U(this,(function(t){return this!=null&&this.worker&&(this==null?void 0:this.worker)instanceof Worker&&((e=this.worker)===null||e===void 0||e.terminate()),[2]}))}))},r.prototype.newWorker=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){if(this!=null&&this.overloadWorker)return[2,this.overloadWorker];throw new Error("Method not implemented.")}))}))},r.prototype.ready=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){return this._ready=!0,[2]}))}))},Object.defineProperty(r.prototype,"isReady",{get:function(){return this._ready},enumerable:!1,configurable:!0}),r.prototype._bindWorkerHandlers=function(){this.bindWorkerHandlers()},r.prototype._onMessage=function(e){var t=e.data;this.onMessage(t)},r.prototype._onError=function(e){this.onError()},r.prototype.bindWorkerHandlers=function(){console.warn("bindWorkerHandlers is not implemented by class that extends Adapter")},r.prototype.onMessage=function(e){},r.prototype.onError=function(){},r.prototype.encode=function(e){return rn.encodeNostrEventArrayAsBuffer(e)},r.prototype.decode=function(e){return rn.decodeNostrEventArrayFromBuffer(e)},r})()});function ec(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Cf=$(()=>{"use strict"});var Nf,ob=$(()=>{"use strict";Nf={exports:{}}});function sb(){return ib||(ib=1,(function(r){var e=Object.prototype.hasOwnProperty,t="~";function n(){}function o(c,u,f){this.fn=c,this.context=u,this.once=f||!1}function i(c,u,f,l,h){if(typeof f!="function")throw new TypeError("The listener must be a function");var g=new o(f,l||c,h),y=t?t+u:u;return c._events[y]?c._events[y].fn?c._events[y]=[c._events[y],g]:c._events[y].push(g):(c._events[y]=g,c._eventsCount++),c}function s(c,u){--c._eventsCount==0?c._events=new n:delete c._events[u]}function a(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(t=!1)),a.prototype.eventNames=function(){var u,f,l=[];if(this._eventsCount===0)return l;for(f in u=this._events)e.call(u,f)&&l.push(t?f.slice(1):f);return Object.getOwnPropertySymbols?l.concat(Object.getOwnPropertySymbols(u)):l},a.prototype.listeners=function(u){var f=t?t+u:u,l=this._events[f];if(!l)return[];if(l.fn)return[l.fn];for(var h=0,g=l.length,y=new Array(g);h<g;h++)y[h]=l[h].fn;return y},a.prototype.listenerCount=function(u){var f=t?t+u:u,l=this._events[f];return l?l.fn?1:l.length:0},a.prototype.emit=function(u,f,l,h,g,y){var d=t?t+u:u;if(!this._events[d])return!1;var p,b,m=this._events[d],x=arguments.length;if(m.fn){switch(m.once&&this.removeListener(u,m.fn,void 0,!0),x){case 1:return m.fn.call(m.context),!0;case 2:return m.fn.call(m.context,f),!0;case 3:return m.fn.call(m.context,f,l),!0;case 4:return m.fn.call(m.context,f,l,h),!0;case 5:return m.fn.call(m.context,f,l,h,g),!0;case 6:return m.fn.call(m.context,f,l,h,g,y),!0}for(b=1,p=new Array(x-1);b<x;b++)p[b-1]=arguments[b];m.fn.apply(m.context,p)}else{var S,I=m.length;for(b=0;b<I;b++)switch(m[b].once&&this.removeListener(u,m[b].fn,void 0,!0),x){case 1:m[b].fn.call(m[b].context);break;case 2:m[b].fn.call(m[b].context,f);break;case 3:m[b].fn.call(m[b].context,f,l);break;case 4:m[b].fn.call(m[b].context,f,l,h);break;default:if(!p)for(S=1,p=new Array(x-1);S<x;S++)p[S-1]=arguments[S];m[b].fn.apply(m[b].context,p)}}return!0},a.prototype.on=function(u,f,l){return i(this,u,f,l,!1)},a.prototype.once=function(u,f,l){return i(this,u,f,l,!0)},a.prototype.removeListener=function(u,f,l,h){var g=t?t+u:u;if(!this._events[g])return this;if(!f)return s(this,g),this;var y=this._events[g];if(y.fn)y.fn!==f||h&&!y.once||l&&y.context!==l||s(this,g);else{for(var d=0,p=[],b=y.length;d<b;d++)(y[d].fn!==f||h&&!y[d].once||l&&y[d].context!==l)&&p.push(y[d]);p.length?this._events[g]=p.length===1?p[0]:p:s(this,g)}return this},a.prototype.removeAllListeners=function(u){var f;return u?(f=t?t+u:u,this._events[f]&&s(this,f)):(this._events=new n,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=t,a.EventEmitter=a,r.exports=a})(Nf)),Nf.exports}var ib,ab=$(()=>{ob()});var cb,ub=$(()=>{"use strict";Cf();ab();cb=ec(sb())});function hb(r,e){let{milliseconds:t,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout}}=e,s,a,c=new Promise(((u,f)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:h}=e;h.aborted&&f(fb(h)),a=()=>{f(fb(h))},h.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY)return void r.then(u,f);let l=new ys;s=i.setTimeout.call(void 0,(()=>{if(n)try{u(n())}catch(h){f(h)}else typeof r.cancel=="function"&&r.cancel(),o===!1?u():o instanceof Error?f(o):(l.message=o!=null?o:`Promise timed out after ${t} milliseconds`,f(l))}),t),(async()=>{try{u(await r)}catch(h){f(h)}})()})).finally((()=>{c.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)}));return c.clear=()=>{i.clearTimeout.call(void 0,s),s=void 0},c}var ys,Mf,lb,fb,db=$(()=>{ys=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Mf=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},lb=r=>globalThis.DOMException===void 0?new Mf(r):new DOMException(r),fb=r=>{let e=r.reason===void 0?lb("This operation was aborted."):r.reason;return e instanceof Error?e:lb(e)}});function pb(r,e,t){let n=0,o=r.length;for(;o>0;){let i=Math.trunc(o/2),s=n+i;t(r[s],e)<=0?(n=++s,o-=i+1):o=i}return n}var gb=$(()=>{});var er,tc,yb=$(()=>{gb();tc=class{constructor(){H(this,er,[])}enqueue(e,t){let n={priority:(t=z({priority:0},t)).priority,run:e};if(this.size&&k(this,er)[this.size-1].priority>=t.priority)return void k(this,er).push(n);let o=pb(k(this,er),n,((i,s)=>s.priority-i.priority));k(this,er).splice(o,0,n)}dequeue(){let e=k(this,er).shift();return e==null?void 0:e.run}filter(e){return k(this,er).filter((t=>t.priority===e.priority)).map((t=>t.run))}get size(){return k(this,er).length}};er=new WeakMap});var ii,si,sn,bs,ai,ms,wt,ci,tt,ws,vt,ui,br,vs,ae,bb,mb,wb,vb,Eb,rc,Uf,jf,nc,xb,oc,li,qf=$(()=>{ub();db();yb();li=class extends cb{constructor(t){var n,o,i,s;super();H(this,ae);H(this,ii);H(this,si);H(this,sn,0);H(this,bs);H(this,ai);H(this,ms,0);H(this,wt);H(this,ci);H(this,tt);H(this,ws);H(this,vt,0);H(this,ui);H(this,br);H(this,vs);Z(this,"timeout");if(!(typeof(t=z({carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:tc},t)).intervalCap=="number"&&t.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(o=(n=t.intervalCap)==null?void 0:n.toString())!=null?o:""}\` (${typeof t.intervalCap})`);if(t.interval===void 0||!(Number.isFinite(t.interval)&&t.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(s=(i=t.interval)==null?void 0:i.toString())!=null?s:""}\` (${typeof t.interval})`);F(this,ii,t.carryoverConcurrencyCount),F(this,si,t.intervalCap===Number.POSITIVE_INFINITY||t.interval===0),F(this,bs,t.intervalCap),F(this,ai,t.interval),F(this,tt,new t.queueClass),F(this,ws,t.queueClass),this.concurrency=t.concurrency,this.timeout=t.timeout,F(this,vs,t.throwOnTimeout===!0),F(this,br,t.autoStart===!1)}get concurrency(){return k(this,ui)}set concurrency(t){if(!(typeof t=="number"&&t>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${t}\` (${typeof t})`);F(this,ui,t),G(this,ae,nc).call(this)}async add(t,n={}){return n=z({timeout:this.timeout,throwOnTimeout:k(this,vs)},n),new Promise(((o,i)=>{k(this,tt).enqueue((async()=>{var s;Tr(this,vt)._++,Tr(this,sn)._++;try{(s=n.signal)==null||s.throwIfAborted();let a=t({signal:n.signal});n.timeout&&(a=hb(Promise.resolve(a),{milliseconds:n.timeout})),n.signal&&(a=Promise.race([a,G(this,ae,xb).call(this,n.signal)]));let c=await a;o(c),this.emit("completed",c)}catch(a){if(a instanceof ys&&!n.throwOnTimeout)return void o();i(a),this.emit("error",a)}finally{G(this,ae,wb).call(this)}}),n),this.emit("add"),G(this,ae,rc).call(this)}))}async addAll(t,n){return Promise.all(t.map((async o=>this.add(o,n))))}start(){return k(this,br)?(F(this,br,!1),G(this,ae,nc).call(this),this):this}pause(){F(this,br,!0)}clear(){F(this,tt,new(k(this,ws)))}async onEmpty(){k(this,tt).size!==0&&await G(this,ae,oc).call(this,"empty")}async onSizeLessThan(t){k(this,tt).size<t||await G(this,ae,oc).call(this,"next",(()=>k(this,tt).size<t))}async onIdle(){k(this,vt)===0&&k(this,tt).size===0||await G(this,ae,oc).call(this,"idle")}get size(){return k(this,tt).size}sizeBy(t){return k(this,tt).filter(t).length}get pending(){return k(this,vt)}get isPaused(){return k(this,br)}};ii=new WeakMap,si=new WeakMap,sn=new WeakMap,bs=new WeakMap,ai=new WeakMap,ms=new WeakMap,wt=new WeakMap,ci=new WeakMap,tt=new WeakMap,ws=new WeakMap,vt=new WeakMap,ui=new WeakMap,br=new WeakMap,vs=new WeakMap,ae=new WeakSet,bb=function(){return k(this,si)||k(this,sn)<k(this,bs)},mb=function(){return k(this,vt)<k(this,ui)},wb=function(){Tr(this,vt)._--,G(this,ae,rc).call(this),this.emit("next")},vb=function(){G(this,ae,jf).call(this),G(this,ae,Uf).call(this),F(this,ci,void 0)},Eb=function(){let t=Date.now();if(k(this,wt)===void 0){let n=k(this,ms)-t;if(!(n<0))return k(this,ci)===void 0&&F(this,ci,setTimeout((()=>{G(this,ae,vb).call(this)}),n)),!0;F(this,sn,k(this,ii)?k(this,vt):0)}return!1},rc=function(){if(k(this,tt).size===0)return k(this,wt)&&clearInterval(k(this,wt)),F(this,wt,void 0),this.emit("empty"),k(this,vt)===0&&this.emit("idle"),!1;if(!k(this,br)){let t=!k(this,ae,Eb);if(k(this,ae,bb)&&k(this,ae,mb)){let n=k(this,tt).dequeue();return!!n&&(this.emit("active"),n(),t&&G(this,ae,Uf).call(this),!0)}}return!1},Uf=function(){k(this,si)||k(this,wt)!==void 0||(F(this,wt,setInterval((()=>{G(this,ae,jf).call(this)}),k(this,ai))),F(this,ms,Date.now()+k(this,ai)))},jf=function(){k(this,sn)===0&&k(this,vt)===0&&k(this,wt)&&(clearInterval(k(this,wt)),F(this,wt,void 0)),F(this,sn,k(this,ii)?k(this,vt):0),G(this,ae,nc).call(this)},nc=function(){for(;G(this,ae,rc).call(this););},xb=async function(t){return new Promise(((n,o)=>{t.addEventListener("abort",(()=>{o(t.reason)}),{once:!0})}))},oc=async function(t,n){return new Promise((o=>{let i=()=>{n&&!n()||(this.off(t,i),o())};this.on(t,i)}))}});var $f,Wf,Es,xs=$(()=>{"use strict";le();ti();(function(r){r[r.MainThread=0]="MainThread",r[r.Worker=1]="Worker",r[r.DedicatedWorker=2]="DedicatedWorker"})($f||($f={})),(function(r){r.events="events",r.event="event",r.record="record",r.records="records"})(Wf||(Wf={}));Es=(function(){function r(e){e&&(this._mainThread=e==null?void 0:e.mainThread,this._channelPort=e==null?void 0:e.channelPort,this.setupHandlers())}return Object.defineProperty(r.prototype,"mainThread",{get:function(){return this._mainThread},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"channel",{get:function(){return this._channelPort},set:function(e){this._channelPort=e},enumerable:!1,configurable:!0}),r.prototype.setup=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return console.warn("".concat(this.constructor.name," setup() method not implemented")),[2]}))}))},r.prototype._setup=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return console.warn("".concat(this.constructor.name,": Adapter's Worker _setup() method not implemented")),[2]}))}))},r.prototype.__setup=function(e){return j(this,void 0,void 0,(function(){var t;return U(this,(function(n){switch(n.label){case 0:return(t=e.channelPort)&&(this.channel=t,this.setupChannelHandlers()),[4,this._setup(e)];case 1:return n.sent(),[2,this.setup(e)]}}))}))},r.prototype.setupChannelHandlers=function(){var e=this;if(!this.channel)return console.warn("channel not defined");this.channel.onmessage=function(t){var n=t.data;e.listenPingPong("channel",n),e.onChannelMessage(n)},this.channel.onmessageerror=this.onMessageError},r.prototype.setupHandlers=function(){var e=this;if(!(this!=null&&this.mainThread))return console.warn("mainThread not defined");var t=function(n){return j(e,void 0,void 0,(function(){var o;return U(this,(function(i){switch(i.label){case 0:return o=n.data,this.listenPingPong("mainthread",o),o.type!=="setup"?[3,2]:[4,this.__setup(o)];case 1:return i.sent(),[2];case 2:return this.onMainThreadMessage(o),[2]}}))}))};this.mainThread instanceof DedicatedWorkerGlobalScope?this.mainThread.onmessage=t:this.mainThread instanceof SharedWorkerGlobalScope&&(this.mainThread.port.onmessage=t)},r.prototype.command=function(e,t,n){var o={type:"result",resultType:t,result:n=this.encode(n)},i=n;if(e.includes("toChannel")){var s=t.charAt(0).toUpperCase()+t.slice(1);o.type=s,this.postMessageChannel(o,[i])}e.includes("toAdapter")&&this.postMessageAdapter(o,[i])},r.prototype.postMessageAdapter=function(e,t){if(!(this!=null&&this.mainThread))return console.warn("cannot send message to mainThread: undefined");this.mainThread.postMessage(e,t)},r.prototype.postMessageChannel=function(e,t){return this!=null&&this.channel?t?this.channel.postMessage(e,t):void this.channel.postMessage(e):console.warn("cannot send message through message channel: undefined")},r.prototype.onMainThreadMessage=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,console.warn("onMainThreadMessage not overloaded by adapter, so the following is going nowhere fast:",e)]}))}))},r.prototype.onChannelMessage=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,console.warn("onChannelMessage not overloaded by adapter, so the following is going nowhere fast:",e)]}))}))},r.prototype.onMessageError=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){return[2]}))}))},r.prototype.onError=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){return[2]}))}))},r.prototype.encode=function(e){return rn.encodeNostrEventArrayAsBuffer(e)},r.prototype.decode=function(e){return rn.decodeNostrEventArrayFromBuffer(e)},r.prototype.pingChannel=function(){this.postMessageChannel({type:"ping"})},r.prototype.pongMainThread=function(){this.postMessageAdapter({type:"pong"})},r.prototype.pongChannel=function(){this.postMessageChannel({type:"pong"})},r.prototype.listenPingPong=function(e,t){if(t.type==="ping")return e==="mainthread"&&(this.pingChannel(),this.pongMainThread()),void(e==="channel"&&this.pongChannel());t.type},r})()});var W8,Hf=$(()=>{"use strict";le();qf();xs();W8=(function(r){function e(t){var n=r.call(this,t)||this;return n.queue=new li({concurrency:20}),n}return he(e,r),e.prototype.setup=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return[2,void 0]}))}))},e.prototype.addEvent=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return[2,void 0]}))}))},e.prototype.addEvents=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return[2,void 0]}))}))},e.prototype.abort=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,!0]}))}))},e.prototype.shutdown=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,void 0]}))}))},e.prototype.addToQueue=function(t){return j(this,void 0,void 0,(function(){var n=this;return U(this,(function(o){return this.queue.add((function(){return j(n,void 0,void 0,(function(){var i,s;return U(this,(function(a){switch(a.label){case 0:return(i=t.result)?(s=this.decode(i))instanceof Array?[4,this.addEvents(s)]:[3,2]:[2,console.warn("result is not defined")];case 1:return a.sent(),[3,4];case 2:return[4,this.addEvent(s)];case 3:a.sent(),a.label=4;case 4:return[2]}}))}))}),{priority:10}),[2]}))}))},e.prototype.onMessage=function(t){return j(this,void 0,void 0,(function(){var n,o,i;return U(this,(function(s){switch(s.label){case 0:return n=t.type,o=t.result,n==="complete"?[2]:o?(i=this.decode(o))instanceof Array?[4,this.addEvents(i)]:[3,2]:[2,console.warn("result is not defined",t)];case 1:return s.sent(),[3,4];case 2:return[4,this.addEvent(i)];case 3:s.sent(),s.label=4;case 4:return[2]}}))}))},e.prototype.onMainThreadMessage=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return[2,void 0]}))}))},e.prototype.onChannelMessage=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return this.onMessage(t),[2]}))}))},e})(Es)});function H8(r){var e=new WeakSet;return(function t(n){var o=(function(f){return f===null?"null":Array.isArray(f)?"array":f instanceof Date?"date":f instanceof RegExp?"regexp":f instanceof Map?"map":f instanceof Set?"set":typeof f})(n);switch(o){case"undefined":return"undefined";case"null":return"null";case"boolean":case"number":case"bigint":case"symbol":return n.toString();case"string":return JSON.stringify(n);case"date":return"Date:".concat(n.toISOString());case"regexp":return"RegExp:".concat(n.toString());case"function":return"Function:".concat(n.toString());case"array":return"[".concat(n.map((function(u){return t(u)})).join(","),"]");case"map":var i=Array.from(n.entries()).sort((function(u,f){var l=u[0],h=f[0];return l<h?-1:l>h?1:0}));return"Map:{".concat(i.map((function(u){var f=u[0],l=u[1];return"".concat(t(f),"=>").concat(t(l))})).join(","),"}");case"set":var s=Array.from(n.values()).sort();return"Set:{".concat(s.map((function(u){return t(u)})).join(","),"}");case"object":if(e.has(n))throw new TypeError("Converting circular structure to string");e.add(n);var a=Object.keys(n).sort(),c="{".concat(a.map((function(u){return"".concat(JSON.stringify(u),":").concat(t(n[u]))})).join(","),"}");return e.delete(n),c;default:return""}})(r)}function Yn(r){return(function(t){for(var n=2166136261,o=0;o<t.length;o++)n=16777619*(n^=t.charCodeAt(o))>>>0;return("0000000"+n.toString(16)).slice(-8)})(H8(r))}var ic=$(()=>{"use strict"});var Q,fi=$(()=>{"use strict";le();Ja();Pf();Q=(function(){function r(){}return Object.defineProperty(r,"abortController",{get:function(){return this._abortController},enumerable:!1,configurable:!0}),Object.defineProperty(r,"abortSignal",{get:function(){return this._abortController.signal},enumerable:!1,configurable:!0}),r.abort=function(){this.incrementStat("ac:abort"),this.abortSignal.aborted||(this._abortController.abort(),this._emitter.emit("abort"))},r.aborted=function(){return this.abortSignal.aborted},r.resetAbort=function(){this.incrementStat("ac:reset-abort"),this._abortController=new AbortController,this._emitter.emit("reset-abort")},Object.defineProperty(r,"localStorage",{get:function(){return this._localStorage},enumerable:!1,configurable:!0}),r.set=function(e,t){this.incrementStat("ls:set"),this.localStorage.setItem(e,t)},r.get=function(e){return this.incrementStat("ls:get"),this.localStorage.getItem(e)},r.remove=function(e){this.incrementStat("ls:remove"),this.localStorage.removeItem(e)},r.clear=function(){this.incrementStat("ls:clear"),this.localStorage.clear()},r.size=function(){return this.incrementStat("ls:size"),this.localStorage.length()},r.key=function(e){return this.incrementStat("ls:key"),this.localStorage.key(e)},Object.defineProperty(r,"emitter",{get:function(){return this._emitter},enumerable:!1,configurable:!0}),r.emit=function(e){for(var t,n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];this.incrementStat("emitter:emit"),(t=this._emitter).emit.apply(t,ue([e],n,!1))},r.on=function(e,t){this.incrementStat("emitter:on"),this._emitter.on(e,t)},r.once=function(e,t){this.incrementStat("emitter:once"),this._emitter.once(e,t)},r.off=function(e,t){this.incrementStat("emitter:off"),t?this._emitter.off(e,t):this._emitter.removeAllListeners(e)},r.clearListeners=function(e){this.incrementStat("emitter:clear"),this._emitter.removeAllListeners(e)},Object.defineProperty(r,"stats",{get:function(){return this._stats},enumerable:!1,configurable:!0}),r.enableStats=function(){this._enableStats=!0},r.disableStats=function(){this._enableStats=!1},r.incrementStat=function(e){if(this._enableStats){var t=this.getStat(e);this.setStat(e,t+1)}},r.decrementStat=function(e){if(this._enableStats){var t=this.getStat(e);this.setStat(e,t-1)}},r.clearStats=function(){this._stats.clear()},r.setStat=function(e,t){this._enableStats&&this._stats.set(e,t)},r.getStat=function(e){return this._enableStats&&this._stats.get(e)||0},r._abortController=new AbortController,r._emitter=new Qa.EventEmitter,r._localStorage=new ri("state"),r._enableStats=!0,r._stats=new Map,r._user={},r})()});function kb(r,e,t,n){return new(t||(t=Promise))((function(o,i){function s(u){try{c(n.next(u))}catch(f){i(f)}}function a(u){try{c(n.throw(u))}catch(f){i(f)}}function c(u){u.done?o(u.value):(function(l){return l instanceof t?l:new t((function(h){h(l)}))})(u.value).then(s,a)}c((n=n.apply(r,[])).next())}))}function Ab(r,e){var t,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(c){return function(u){return(function(l){if(t)throw new TypeError("Generator is already executing.");for(;s&&(s=0,l[0]&&(i=0)),i;)try{if(t=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||l[0]!==6&&l[0]!==2)){i=0;continue}if(l[0]===3&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(l[0]===6&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=e.call(r,i)}catch(h){l=[6,h],n=0}finally{t=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}})([c,u])}}}var ks=$(()=>{"use strict"});var F8,Ff=$(()=>{"use strict";ks();F8={};if(typeof window=="undefined")try{(0,l1("module").createRequire)(F8.url)("js-yaml")}catch(r){}});var sc,Df=$(()=>{"use strict";ks();sc=function(r){return kb(void 0,void 0,void 0,(function(){return Ab(this,(function(e){return[2,new Promise((function(t){return setTimeout(t,r)}))]}))}))}});function As(r){if(!_b(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=z8[r[t]];return e}function K8(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function zf(r){if(typeof r=="string"&&(r=K8(r)),!_b(r))throw new Error("expected Uint8Array, got "+typeof r);return r}function Kf(r){let e=n=>r().update(zf(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}var _b,cc,Rt,D8,z8,ac,_s=$(()=>{_b=r=>r instanceof Uint8Array,cc=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Rt=(r,e)=>r<<32-e|r>>>e,D8=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!D8)throw new Error("Non little-endian hardware is not supported");z8=Array.from({length:256},((r,e)=>e.toString(16).padStart(2,"0")));ac=class{clone(){return this._cloneInto()}}});function hi(r){if(!Number.isSafeInteger(r))throw new Error(`Wrong integer: ${r}`)}function mr(...r){let e=(t,n)=>o=>t(n(o));return{encode:Array.from(r).reverse().reduce(((t,n)=>t?e(t,n.encode):n.encode),void 0),decode:r.reduce(((t,n)=>t?e(t,n.decode):n.decode),void 0)}}function wr(r){return{encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return e.map((t=>{if(hi(t),t<0||t>=r.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${r.length})`);return r[t]}))},decode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("alphabet.decode input should be array of strings");return e.map((t=>{if(typeof t!="string")throw new Error(`alphabet.decode: not string element=${t}`);let n=r.indexOf(t);if(n===-1)throw new Error(`Unknown letter: "${t}". Allowed: ${r}`);return n}))}}}function vr(r=""){if(typeof r!="string")throw new Error("join separator should be string");return{encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("join.encode input should be array of strings");for(let t of e)if(typeof t!="string")throw new Error(`join.encode: non-string input=${t}`);return e.join(r)},decode:e=>{if(typeof e!="string")throw new Error("join.decode input should be string");return e.split(r)}}}function lc(r,e="="){if(hi(r),typeof e!="string")throw new Error("padding chr should be string");return{encode(t){if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("padding.encode input should be array of strings");for(let n of t)if(typeof n!="string")throw new Error(`padding.encode: non-string input=${n}`);for(;t.length*r%8;)t.push(e);return t},decode(t){if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("padding.encode input should be array of strings");for(let o of t)if(typeof o!="string")throw new Error(`padding.decode: non-string input=${o}`);let n=t.length;if(n*r%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;n>0&&t[n-1]===e;n--)if(!((n-1)*r%8))throw new Error("Invalid padding: string has too much padding");return t.slice(0,n)}}}function Lb(r){if(typeof r!="function")throw new Error("normalize fn should be function");return{encode:e=>e,decode:e=>r(e)}}function Sb(r,e,t){if(e<2)throw new Error(`convertRadix: wrong from=${e}, base cannot be less than 2`);if(t<2)throw new Error(`convertRadix: wrong to=${t}, base cannot be less than 2`);if(!Array.isArray(r))throw new Error("convertRadix: data should be array");if(!r.length)return[];let n=0,o=[],i=Array.from(r);for(i.forEach((s=>{if(hi(s),s<0||s>=e)throw new Error(`Wrong integer: ${s}`)}));;){let s=0,a=!0;for(let c=n;c<i.length;c++){let u=i[c],f=e*s+u;if(!Number.isSafeInteger(f)||e*s/e!==s||f-u!=e*s)throw new Error("convertRadix: carry overflow");if(s=f%t,i[c]=Math.floor(f/t),!Number.isSafeInteger(i[c])||i[c]*t+s!==f)throw new Error("convertRadix: carry overflow");a&&(i[c]?a=!1:n=c)}if(o.push(s),a)break}for(let s=0;s<r.length-1&&r[s]===0;s++)o.push(0);return o.reverse()}function Vf(r,e,t,n){if(!Array.isArray(r))throw new Error("convertRadix2: data should be array");if(e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(t<=0||t>32)throw new Error(`convertRadix2: wrong to=${t}`);if(uc(e,t)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${t} carryBits=${uc(e,t)}`);let o=0,i=0,s=2**t-1,a=[];for(let c of r){if(hi(c),c>=2**e)throw new Error(`convertRadix2: invalid data word=${c} from=${e}`);if(o=o<<e|c,i+e>32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${e}`);for(i+=e;i>=t;i-=t)a.push((o>>i-t&s)>>>0);o&=2**i-1}if(o=o<<t-i&s,!n&&i>=e)throw new Error("Excess padding");if(!n&&o)throw new Error(`Non-zero padding: ${o}`);return n&&i>0&&a.push(o>>>0),a}function an(r,e=!1){if(hi(r),r<=0||r>32)throw new Error("radix2: bits should be in (0..32]");if(uc(8,r)>32||uc(r,8)>32)throw new Error("radix2: carry overflow");return{encode:t=>{if(!(t instanceof Uint8Array))throw new Error("radix2.encode input should be Uint8Array");return Vf(Array.from(t),8,r,!e)},decode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="number")throw new Error("radix2.decode input should be array of strings");return Uint8Array.from(Vf(t,r,8,e))}}}function Bb(r){if(typeof r!="function")throw new Error("unsafeWrapper fn should be function");return function(...e){try{return r.apply(null,e)}catch(t){}}}function Ss(r){let e=r>>25,t=(33554431&r)<<5;for(let n=0;n<Ib.length;n++)(e>>n&1)==1&&(t^=Ib[n]);return t}function Tb(r,e,t=1){let n=r.length,o=1;for(let i=0;i<n;i++){let s=r.charCodeAt(i);if(s<33||s>126)throw new Error(`Invalid prefix (${r})`);o=Ss(o)^s>>5}o=Ss(o);for(let i=0;i<n;i++)o=Ss(o)^31&r.charCodeAt(i);for(let i of e)o=Ss(o)^i;for(let i=0;i<6;i++)o=Ss(o);return o^=t,Yf.encode(Vf([o%2**30],30,5,!1))}function Rb(r){let e=r==="bech32"?1:734539939,t=an(5),n=t.decode,o=t.encode,i=Bb(n);function s(a,c=90){if(typeof a!="string")throw new Error("bech32.decode input should be string, not "+typeof a);if(a.length<8||c!==!1&&a.length>c)throw new TypeError(`Wrong string length: ${a.length} (${a}). Expected (8..${c})`);let u=a.toLowerCase();if(a!==u&&a!==a.toUpperCase())throw new Error("String must be lowercase or uppercase");let f=(a=u).lastIndexOf("1");if(f===0||f===-1)throw new Error('Letter "1" must be present between prefix and data only');let l=a.slice(0,f),h=a.slice(f+1);if(h.length<6)throw new Error("Data must be at least 6 characters long");let g=Yf.decode(h).slice(0,-6),y=Tb(l,g,e);if(!h.endsWith(y))throw new Error(`Invalid checksum in ${a}: expected "${y}"`);return{prefix:l,words:g}}return{encode:function(c,u,f=90){if(typeof c!="string")throw new Error("bech32.encode prefix should be string, not "+typeof c);if(!Array.isArray(u)||u.length&&typeof u[0]!="number")throw new Error("bech32.encode words should be array of numbers, not "+typeof u);let l=c.length+7+u.length;if(f!==!1&&l>f)throw new TypeError(`Length ${l} exceeds limit ${f}`);return`${c=c.toLowerCase()}1${Yf.encode(u)}${Tb(c,u,e)}`},decode:s,decodeToBytes:function(c){let{prefix:u,words:f}=s(c,!1);return{prefix:u,words:f,bytes:n(f)}},decodeUnsafe:Bb(s),fromWords:n,fromWordsUnsafe:i,toWords:o}}var Pb,uc,V8,G8,Z8,Y8,Gf,Zf,Ob,J8,Yf,Ib,X8,Q8,e4,Cb=$(()=>{Pb=(r,e)=>e?Pb(e,r%e):r,uc=(r,e)=>r+(e-Pb(r,e));V8=mr(an(4),wr("0123456789ABCDEF"),vr("")),G8=mr(an(5),wr("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),lc(5),vr(""));mr(an(5),wr("0123456789ABCDEFGHIJKLMNOPQRSTUV"),lc(5),vr("")),mr(an(5),wr("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),vr(""),Lb((r=>r.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))));Z8=mr(an(6),wr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),lc(6),vr("")),Y8=mr(an(6),wr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),lc(6),vr("")),Gf=r=>mr((function(t){return hi(t),{encode:n=>{if(!(n instanceof Uint8Array))throw new Error("radix.encode input should be Uint8Array");return Sb(Array.from(n),256,t)},decode:n=>{if(!Array.isArray(n)||n.length&&typeof n[0]!="number")throw new Error("radix.decode input should be array of strings");return Uint8Array.from(Sb(n,t,256))}}})(58),wr(r),vr("")),Zf=Gf("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");Gf("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),Gf("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz");Ob=[0,2,3,5,6,7,9,10,11],J8={encode(r){let e="";for(let t=0;t<r.length;t+=8){let n=r.subarray(t,t+8);e+=Zf.encode(n).padStart(Ob[n.length],"1")}return e},decode(r){let e=[];for(let t=0;t<r.length;t+=11){let n=r.slice(t,t+11),o=Ob.indexOf(n.length),i=Zf.decode(n);for(let s=0;s<i.length-o;s++)if(i[s]!==0)throw new Error("base58xmr: wrong padding");e=e.concat(Array.from(i.slice(i.length-o)))}return Uint8Array.from(e)}},Yf=mr(wr("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),vr("")),Ib=[996825010,642813549,513874426,1027748829,705979059];Rb("bech32"),Rb("bech32m");X8={encode:r=>new TextDecoder().decode(r),decode:r=>new TextEncoder().encode(r)},Q8=mr(an(4),wr("0123456789abcdef"),vr(""),Lb((r=>{if(typeof r!="string"||r.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof r} with length ${r.length}`);return r.toLowerCase()}))),e4={utf8:X8,hex:Q8,base16:V8,base32:G8,base64:Z8,base64url:Y8,base58:Zf,base58xmr:J8};Object.keys(e4).join(", ")});var Jf=$(()=>{_s();Cb();new TextDecoder("utf-8"),new TextEncoder});var Xf=$(()=>{new Uint8Array(new Uint32Array([287454020]).buffer)[0],Array.from({length:256},((r,e)=>e.toString(16).padStart(2,"0")))});function Nb(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function Qf(r,...e){if(!(r instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function Mb(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Nb(r.outputLen),Nb(r.blockLen)}function di(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function Ub(r,e){Qf(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var eh=$(()=>{});var fc,jb=$(()=>{fc=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0});function r4(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function Bs(r){if(typeof r=="string"&&(r=r4(r)),!qb(r))throw new Error("expected Uint8Array, got "+typeof r);return r}function $b(...r){let e=new Uint8Array(r.reduce(((n,o)=>n+o.length),0)),t=0;return r.forEach((n=>{if(!qb(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length})),e}function Wb(r){let e=n=>r().update(Bs(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function dc(r=32){if(fc&&typeof fc.getRandomValues=="function")return fc.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}var qb,hc,Lt,t4,pi,gi=$(()=>{jb();qb=r=>r instanceof Uint8Array,hc=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Lt=(r,e)=>r<<32-e|r>>>e,t4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!t4)throw new Error("Non little-endian hardware is not supported");pi=class{clone(){return this._cloneInto()}}});var pc,Hb=$(()=>{eh();gi();pc=class extends pi{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=hc(this.buffer)}update(e){di(this);let{view:t,buffer:n,blockLen:o}=this,i=(e=Bs(e)).length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a!==o)n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0);else{let c=hc(e);for(;o<=i-s;s+=o)this.process(c,s)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){di(this),Ub(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;(function(h,g,y,d){if(typeof h.setBigUint64=="function")return h.setBigUint64(g,y,d);let p=BigInt(32),b=BigInt(4294967295),m=Number(y>>p&b),x=Number(y&b),S=d?4:0,I=d?0:4;h.setUint32(g+S,m,d),h.setUint32(g+I,x,d)})(n,o-8,BigInt(8*this.length),i),this.process(n,0);let a=hc(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}}});var n4,o4,cn,un,th,gc,Fb=$(()=>{Hb();gi();n4=(r,e,t)=>r&e^r&t^e&t,o4=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),cn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),un=new Uint32Array(64),th=class extends pc{constructor(){super(64,32,8,!1),this.A=0|cn[0],this.B=0|cn[1],this.C=0|cn[2],this.D=0|cn[3],this.E=0|cn[4],this.F=0|cn[5],this.G=0|cn[6],this.H=0|cn[7]}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|o,this.E=0|i,this.F=0|s,this.G=0|a,this.H=0|c}process(e,t){for(let h=0;h<16;h++,t+=4)un[h]=e.getUint32(t,!1);for(let h=16;h<64;h++){let g=un[h-15],y=un[h-2],d=Lt(g,7)^Lt(g,18)^g>>>3,p=Lt(y,17)^Lt(y,19)^y>>>10;un[h]=p+un[h-7]+d+un[h-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:u,H:f}=this;for(let h=0;h<64;h++){let g=f+(Lt(a,6)^Lt(a,11)^Lt(a,25))+((l=a)&c^~l&u)+o4[h]+un[h]|0,y=(Lt(n,2)^Lt(n,13)^Lt(n,22))+n4(n,o,i)|0;f=u,u=c,c=a,a=s+g|0,s=i,i=o,o=n,n=g+y|0}var l;n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,o,i,s,a,c,u,f)}roundClean(){un.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},gc=Wb((()=>new th))});var ih={};fo(ih,{bitMask:()=>Os,bytesToHex:()=>Jn,bytesToNumberBE:()=>qe,bytesToNumberLE:()=>bc,concatBytes:()=>Er,createHmacDrbg:()=>oh,ensureBytes:()=>Re,hexToBytes:()=>yi,hexToNumber:()=>nh,numberToBytesBE:()=>Pt,numberToBytesLE:()=>mc,validateObject:()=>ln});function Jn(r){if(!yc(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=a4[r[t]];return e}function nh(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}function yi(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let t=new Uint8Array(e/2);for(let n=0;n<t.length;n++){let o=2*n,i=r.slice(o,o+2),s=Number.parseInt(i,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");t[n]=s}return t}function qe(r){return nh(Jn(r))}function bc(r){if(!yc(r))throw new Error("Uint8Array expected");return nh(Jn(Uint8Array.from(r).reverse()))}function Pt(r,e){return yi(r.toString(16).padStart(2*e,"0"))}function mc(r,e){return Pt(r,e).reverse()}function Re(r,e,t){let n;if(typeof e=="string")try{n=yi(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else{if(!yc(e))throw new Error(`${r} must be hex string or Uint8Array`);n=Uint8Array.from(e)}let o=n.length;if(typeof t=="number"&&o!==t)throw new Error(`${r} expected ${t} bytes, got ${o}`);return n}function Er(...r){let e=new Uint8Array(r.reduce(((n,o)=>n+o.length),0)),t=0;return r.forEach((n=>{if(!yc(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length})),e}function oh(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=rh(r),o=rh(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...f)=>t(o,n,...f),c=(f=rh())=>{o=a(Db([0]),f),n=a(),f.length!==0&&(o=a(Db([1]),f),n=a())},u=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,l=[];for(;f<e;){n=a();let h=n.slice();l.push(h),f+=n.length}return Er(...l)};return(f,l)=>{let h;for(s(),c(f);!(h=l(u()));)c();return s(),h}}function ln(r,e,t={}){let n=(o,i,s)=>{let a=c4[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=r[o];if(!(s&&c===void 0||a(c,r)))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(e))n(o,i,!1);for(let[o,i]of Object.entries(t))n(o,i,!0);return r}var i4,s4,yc,a4,Os,rh,Db,c4,bi=$(()=>{BigInt(0);i4=BigInt(1),s4=BigInt(2),yc=r=>r instanceof Uint8Array,a4=Array.from({length:256},((r,e)=>e.toString(16).padStart(2,"0")));Os=r=>(s4<<BigInt(r-1))-i4,rh=r=>new Uint8Array(r),Db=r=>Uint8Array.from(r);c4={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||r instanceof Uint8Array,isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)}});function Oe(r,e){let t=r%e;return t>=Le?t:e+t}function l4(r,e,t){if(t<=Le||e<Le)throw new Error("Expected power/modulo > 0");if(t===ve)return Le;let n=ve;for(;e>Le;)e&ve&&(n=n*r%t),r=r*r%t,e>>=ve;return n}function ot(r,e,t){let n=r;for(;e-- >Le;)n*=n,n%=t;return n}function wc(r,e){if(r===Le||e<=Le)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Oe(r,e),n=e,o=Le,i=ve;for(;t!==Le;){let s=n%t,a=o-i*(n/t);n=t,t=s,o=i,i=a}if(n!==ve)throw new Error("invert: does not exist");return Oe(o,e)}function f4(r){let e=(r-ve)/Xn,t,n,o;for(t=r-ve,n=0;t%Xn===Le;t/=Xn,n++);for(o=Xn;o<r&&l4(o,e,r)!==r-ve;o++);if(n===1){let s=(r+ve)/sh;return function(c,u){let f=c.pow(u,s);if(!c.eql(c.sqr(f),u))throw new Error("Cannot find square root");return f}}let i=(t+ve)/Xn;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,f=a.pow(a.mul(a.ONE,o),t),l=a.pow(c,i),h=a.pow(c,t);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let d=a.sqr(h);g<u&&!a.eql(d,a.ONE);g++)d=a.sqr(d);let y=a.pow(f,ve<<BigInt(u-g-1));f=a.sqr(y),l=a.mul(l,y),h=a.mul(h,f),u=g}return l}}function h4(r){if(r%sh===u4){let e=(r+ve)/sh;return function(n,o){let i=n.pow(o,e);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%Kb===zb){let e=(r-zb)/Kb;return function(n,o){let i=n.mul(o,Xn),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,Xn),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),o))throw new Error("Cannot find square root");return u}}return f4(r)}function Vb(r){let e=d4.reduce(((t,n)=>(t[n]="function",t)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"});return ln(r,e)}function p4(r,e,t){if(t<Le)throw new Error("Expected power > 0");if(t===Le)return r.ONE;if(t===ve)return e;let n=r.ONE,o=e;for(;t>Le;)t&ve&&(n=r.mul(n,o)),o=r.sqr(o),t>>=ve;return n}function g4(r,e){let t=new Array(e.length),n=e.reduce(((i,s,a)=>r.is0(s)?i:(t[a]=i,r.mul(i,s))),r.ONE),o=r.inv(n);return e.reduceRight(((i,s,a)=>r.is0(s)?i:(t[a]=r.mul(i,t[a]),r.mul(i,s))),o),t}function ah(r,e){let t=e!==void 0?e:r.toString(2).length;return{nBitLength:t,nByteLength:Math.ceil(t/8)}}function Gb(r,e,t=!1,n={}){if(r<=Le)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=ah(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=h4(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:Os(o),ZERO:Le,ONE:ve,create:c=>Oe(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error("Invalid field element: expected bigint, got "+typeof c);return Le<=c&&c<r},is0:c=>c===Le,isOdd:c=>(c&ve)===ve,neg:c=>Oe(-c,r),eql:(c,u)=>c===u,sqr:c=>Oe(c*c,r),add:(c,u)=>Oe(c+u,r),sub:(c,u)=>Oe(c-u,r),mul:(c,u)=>Oe(c*u,r),pow:(c,u)=>p4(a,c,u),div:(c,u)=>Oe(c*wc(u,r),r),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>wc(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>g4(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>t?mc(c,i):Pt(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?bc(c):qe(c)}});return Object.freeze(a)}function Zb(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function ch(r){let e=Zb(r);return e+Math.ceil(e/2)}function Yb(r,e,t=!1){let n=r.length,o=Zb(e),i=ch(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=Oe(t?qe(r):bc(r),e-ve)+ve;return t?mc(s,o):Pt(s,o)}var Le,ve,Xn,u4,sh,zb,Kb,d4,vc=$(()=>{bi();Le=BigInt(0),ve=BigInt(1),Xn=BigInt(2),u4=BigInt(3),sh=BigInt(4),zb=BigInt(5),Kb=BigInt(8);BigInt(9),BigInt(16);d4=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"]});var Ec,uh,Jb=$(()=>{eh();gi();Ec=class extends pi{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Mb(e);let n=Bs(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return di(this),this.iHash.update(e),this}digestInto(e){di(this),Qf(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return e.finished=o,e.destroyed=i,e.blockLen=s,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},uh=(r,e,t)=>new Ec(r,e).update(t).digest();uh.create=(r,e)=>new Ec(r,e)});function Xb(r,e){let t=(o,i)=>{let s=i.negate();return o?s:i},n=o=>({windows:Math.ceil(e/o)+1,windowSize:2**(o-1)});return{constTimeNegate:t,unsafeLadder(o,i){let s=r.ZERO,a=o;for(;i>y4;)i&lh&&(s=s.add(a)),a=a.double(),i>>=lh;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],u=o,f=u;for(let l=0;l<s;l++){f=u,c.push(f);for(let h=1;h<a;h++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),u=r.ZERO,f=r.BASE,l=BigInt(2**o-1),h=2**o,g=BigInt(o);for(let y=0;y<a;y++){let d=y*c,p=Number(s&l);s>>=g,p>c&&(p-=h,s+=lh);let b=d,m=d+Math.abs(p)-1,x=y%2!=0,S=p<0;p===0?f=f.add(t(x,i[b])):u=u.add(t(S,i[m]))}return{p:u,f}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,u=i.get(o);return u||(u=this.precomputeWindow(o,c),c!==1&&i.set(o,a(u))),this.wNAF(c,u,s)}}}function fh(r){return Vb(r.Fp),ln(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze(J(z(z({},ah(r.n,r.nBitLength)),r),{p:r.Fp.ORDER}))}var y4,lh,Qb=$(()=>{vc();bi();y4=BigInt(0),lh=BigInt(1)});function w4(r){let e=(function(d){let p=fh(d);ln(p,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:b,Fp:m,a:x}=p;if(b){if(!m.eql(x,m.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof b!="object"||typeof b.beta!="bigint"||typeof b.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze(z({},p))})(r),{Fp:t}=e,n=e.toBytes||((y,d,p)=>{let b=d.toAffine();return Er(Uint8Array.from([4]),t.toBytes(b.x),t.toBytes(b.y))}),o=e.fromBytes||(y=>{let d=y.subarray(1);return{x:t.fromBytes(d.subarray(0,t.BYTES)),y:t.fromBytes(d.subarray(t.BYTES,2*t.BYTES))}});function i(y){let{a:d,b:p}=e,b=t.sqr(y),m=t.mul(b,y);return t.add(t.add(m,t.mul(y,d)),p)}if(!t.eql(t.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(y){return typeof y=="bigint"&&xr<y&&y<e.n}function a(y){if(!s(y))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(y){let{allowedPrivateKeyLengths:d,nByteLength:p,wrapPrivateKey:b,n:m}=e;if(d&&typeof y!="bigint"){if(y instanceof Uint8Array&&(y=Jn(y)),typeof y!="string"||!d.includes(y.length))throw new Error("Invalid key");y=y.padStart(2*p,"0")}let x;try{x=typeof y=="bigint"?y:qe(Re("private key",y,p))}catch(S){throw new Error(`private key must be ${p} bytes, hex or bigint, not ${typeof y}`)}return b&&(x=Oe(x,m)),a(x),x}let u=new Map;function f(y){if(!(y instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(d,p,b){if(this.px=d,this.py=p,this.pz=b,d==null||!t.isValid(d))throw new Error("x required");if(p==null||!t.isValid(p))throw new Error("y required");if(b==null||!t.isValid(b))throw new Error("z required")}static fromAffine(d){let{x:p,y:b}=d||{};if(!d||!t.isValid(p)||!t.isValid(b))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let m=x=>t.eql(x,t.ZERO);return m(p)&&m(b)?l.ZERO:new l(p,b,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let p=t.invertBatch(d.map((b=>b.pz)));return d.map(((b,m)=>b.toAffine(p[m]))).map(l.fromAffine)}static fromHex(d){let p=l.fromAffine(o(Re("pointHex",d)));return p.assertValidity(),p}static fromPrivateKey(d){return l.BASE.multiply(c(d))}_setWindowSize(d){this._WINDOW_SIZE=d,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:p}=this.toAffine();if(!t.isValid(d)||!t.isValid(p))throw new Error("bad point: x or y not FE");let b=t.sqr(p),m=i(d);if(!t.eql(b,m))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(t.isOdd)return!t.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.eql(t.mul(p,I),t.mul(x,m)),O=t.eql(t.mul(b,I),t.mul(S,m));return _&&O}negate(){return new l(this.px,t.neg(this.py),this.pz)}double(){let{a:d,b:p}=e,b=t.mul(p,em),{px:m,py:x,pz:S}=this,I=t.ZERO,_=t.ZERO,O=t.ZERO,w=t.mul(m,m),E=t.mul(x,x),v=t.mul(S,S),A=t.mul(m,x);return A=t.add(A,A),O=t.mul(m,S),O=t.add(O,O),I=t.mul(d,O),_=t.mul(b,v),_=t.add(I,_),I=t.sub(E,_),_=t.add(E,_),_=t.mul(I,_),I=t.mul(A,I),O=t.mul(b,O),v=t.mul(d,v),A=t.sub(w,v),A=t.mul(d,A),A=t.add(A,O),O=t.add(w,w),w=t.add(O,w),w=t.add(w,v),w=t.mul(w,A),_=t.add(_,w),v=t.mul(x,S),v=t.add(v,v),w=t.mul(v,A),I=t.sub(I,w),O=t.mul(v,E),O=t.add(O,O),O=t.add(O,O),new l(I,_,O)}add(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.ZERO,O=t.ZERO,w=t.ZERO,E=e.a,v=t.mul(e.b,em),A=t.mul(p,x),R=t.mul(b,S),L=t.mul(m,I),P=t.add(p,b),B=t.add(x,S);P=t.mul(P,B),B=t.add(A,R),P=t.sub(P,B),B=t.add(p,m);let T=t.add(x,I);return B=t.mul(B,T),T=t.add(A,L),B=t.sub(B,T),T=t.add(b,m),_=t.add(S,I),T=t.mul(T,_),_=t.add(R,L),T=t.sub(T,_),w=t.mul(E,B),_=t.mul(v,L),w=t.add(_,w),_=t.sub(R,w),w=t.add(R,w),O=t.mul(_,w),R=t.add(A,A),R=t.add(R,A),L=t.mul(E,L),B=t.mul(v,B),R=t.add(R,L),L=t.sub(A,L),L=t.mul(E,L),B=t.add(B,L),A=t.mul(R,B),O=t.add(O,A),A=t.mul(T,B),_=t.mul(P,_),_=t.sub(_,A),A=t.mul(P,R),w=t.mul(T,w),w=t.add(w,A),new l(_,O,w)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return g.wNAFCached(this,u,d,(p=>{let b=t.invertBatch(p.map((m=>m.pz)));return p.map(((m,x)=>m.toAffine(b[x]))).map(l.fromAffine)}))}multiplyUnsafe(d){let p=l.ZERO;if(d===xr)return p;if(a(d),d===Et)return this;let{endo:b}=e;if(!b)return g.unsafeLadder(this,d);let{k1neg:m,k1:x,k2neg:S,k2:I}=b.splitScalar(d),_=p,O=p,w=this;for(;x>xr||I>xr;)x&Et&&(_=_.add(w)),I&Et&&(O=O.add(w)),w=w.double(),x>>=Et,I>>=Et;return m&&(_=_.negate()),S&&(O=O.negate()),O=new l(t.mul(O.px,b.beta),O.py,O.pz),_.add(O)}multiply(d){a(d);let p,b,m=d,{endo:x}=e;if(x){let{k1neg:S,k1:I,k2neg:_,k2:O}=x.splitScalar(m),{p:w,f:E}=this.wNAF(I),{p:v,f:A}=this.wNAF(O);w=g.constTimeNegate(S,w),v=g.constTimeNegate(_,v),v=new l(t.mul(v.px,x.beta),v.py,v.pz),p=w.add(v),b=E.add(A)}else{let{p:S,f:I}=this.wNAF(m);p=S,b=I}return l.normalizeZ([p,b])[0]}multiplyAndAddUnsafe(d,p,b){let m=l.BASE,x=(I,_)=>_!==xr&&_!==Et&&I.equals(m)?I.multiply(_):I.multiplyUnsafe(_),S=x(this,p).add(x(d,b));return S.is0()?void 0:S}toAffine(d){let{px:p,py:b,pz:m}=this,x=this.is0();d==null&&(d=x?t.ONE:t.inv(m));let S=t.mul(p,d),I=t.mul(b,d),_=t.mul(m,d);if(x)return{x:t.ZERO,y:t.ZERO};if(!t.eql(_,t.ONE))throw new Error("invZ was invalid");return{x:S,y:I}}isTorsionFree(){let{h:d,isTorsionFree:p}=e;if(d===Et)return!0;if(p)return p(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:p}=e;return d===Et?this:p?p(l,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(l,this,d)}toHex(d=!0){return Jn(this.toRawBytes(d))}}l.BASE=new l(e.Gx,e.Gy,t.ONE),l.ZERO=new l(t.ZERO,t.ONE,t.ZERO);let h=e.nBitLength,g=Xb(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function tm(r){let e=(function(E){let v=fh(E);return ln(v,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze(z({lowS:!0},v))})(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(w){return Oe(w,n)}function a(w){return wc(w,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:u,weierstrassEquation:f,isWithinCurveOrder:l}=w4(J(z({},e),{toBytes(w,E,v){let A=E.toAffine(),R=t.toBytes(A.x),L=Er;return v?L(Uint8Array.from([E.hasEvenY()?2:3]),R):L(Uint8Array.from([4]),R,t.toBytes(A.y))},fromBytes(w){let E=w.length,v=w[0],A=w.subarray(1);if(E!==o||v!==2&&v!==3){if(E===i&&v===4)return{x:t.fromBytes(A.subarray(0,t.BYTES)),y:t.fromBytes(A.subarray(t.BYTES,2*t.BYTES))};throw new Error(`Point of length ${E} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}{let R=qe(A);if(!(function(T){return xr<T&&T<t.ORDER})(R))throw new Error("Point is not on curve");let L=f(R),P=t.sqrt(L);return!(1&~v)!=((P&Et)===Et)&&(P=t.neg(P)),{x:R,y:P}}}})),h=w=>Jn(Pt(w,e.nByteLength));function g(w){return w>n>>Et}let y=(w,E,v)=>qe(w.slice(E,v));class d{constructor(E,v,A){this.r=E,this.s=v,this.recovery=A,this.assertValidity()}static fromCompact(E){let v=e.nByteLength;return E=Re("compactSignature",E,2*v),new d(y(E,0,v),y(E,v,2*v))}static fromDER(E){let{r:v,s:A}=Qn.toSig(Re("DER",E));return new d(v,A)}assertValidity(){if(!l(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!l(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(E){return new d(this.r,this.s,E)}recoverPublicKey(E){let{r:v,s:A,recovery:R}=this,L=x(Re("msgHash",E));if(R==null||![0,1,2,3].includes(R))throw new Error("recovery id invalid");let P=R===2||R===3?v+e.n:v;if(P>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let B=1&R?"03":"02",T=c.fromHex(B+h(P)),C=a(P),M=s(-L*C),N=s(A*C),W=c.BASE.multiplyAndAddUnsafe(T,M,N);if(!W)throw new Error("point at infinify");return W.assertValidity(),W}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new d(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return yi(this.toDERHex())}toDERHex(){return Qn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return yi(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}let p={isValidPrivateKey(w){try{return u(w),!0}catch(E){return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let w=ch(e.n);return Yb(e.randomBytes(w),e.n)},precompute:(w=8,E=c.BASE)=>(E._setWindowSize(w),E.multiply(BigInt(3)),E)};function b(w){let E=w instanceof Uint8Array,v=typeof w=="string",A=(E||v)&&w.length;return E?A===o||A===i:v?A===2*o||A===2*i:w instanceof c}let m=e.bits2int||function(w){let E=qe(w),v=8*w.length-e.nBitLength;return v>0?E>>BigInt(v):E},x=e.bits2int_modN||function(w){return s(m(w))},S=Os(e.nBitLength);function I(w){if(typeof w!="bigint")throw new Error("bigint expected");if(!(xr<=w&&w<S))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Pt(w,e.nByteLength)}let _={lowS:e.lowS,prehash:!1},O={lowS:e.lowS,prehash:!1};return c.BASE._setWindowSize(8),{CURVE:e,getPublicKey:function(E,v=!0){return c.fromPrivateKey(E).toRawBytes(v)},getSharedSecret:function(E,v,A=!0){if(b(E))throw new Error("first arg must be private key");if(!b(v))throw new Error("second arg must be public key");return c.fromHex(v).multiply(u(E)).toRawBytes(A)},sign:function(E,v,A=_){let{seed:R,k2sig:L}=(function(T,C,M=_){if(["recovered","canonical"].some((ce=>ce in M)))throw new Error("sign() legacy options not supported");let{hash:N,randomBytes:W}=e,{lowS:D,prehash:q,extraEntropy:K}=M;D==null&&(D=!0),T=Re("msgHash",T),q&&(T=Re("prehashed msgHash",N(T)));let X=x(T),oe=u(C),ne=[I(oe),I(X)];if(K!=null){let ce=K===!0?W(t.BYTES):K;ne.push(Re("extraEntropy",ce))}let ee=Er(...ne),pe=X;return{seed:ee,k2sig:function(Te){let at=m(Te);if(!l(at))return;let ge=a(at),ye=c.BASE.multiply(at).toAffine(),Fe=s(ye.x);if(Fe===xr)return;let $t=s(ge*s(pe+Fe*oe));if($t===xr)return;let Ir=(ye.x===Fe?0:2)|Number(ye.y&Et),tp=$t;return D&&g($t)&&(tp=(function(xu){return g(xu)?s(-xu):xu})($t),Ir^=1),new d(Fe,tp,Ir)}}})(E,v,A),P=e;return oh(P.hash.outputLen,P.nByteLength,P.hmac)(R,L)},verify:function(E,v,A,R=O){var oe;let L=E;if(v=Re("msgHash",v),A=Re("publicKey",A),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:B}=R,T,C;try{if(typeof L=="string"||L instanceof Uint8Array)try{T=d.fromDER(L)}catch(ne){if(!(ne instanceof Qn.Err))throw ne;T=d.fromCompact(L)}else{if(typeof L!="object"||typeof L.r!="bigint"||typeof L.s!="bigint")throw new Error("PARSE");{let{r:ne,s:ee}=L;T=new d(ne,ee)}}C=c.fromHex(A)}catch(ne){if(ne.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&T.hasHighS())return!1;B&&(v=e.hash(v));let{r:M,s:N}=T,W=x(v),D=a(N),q=s(W*D),K=s(M*D),X=(oe=c.BASE.multiplyAndAddUnsafe(C,q,K))==null?void 0:oe.toAffine();return!!X&&s(X.x)===M},ProjectivePoint:c,Signature:d,utils:p}}var b4,m4,Qn,xr,Et,em,rm=$(()=>{vc();bi();bi();Qb();({bytesToNumberBE:b4,hexToBytes:m4}=ih),Qn={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=Qn;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(128&n[0])throw new e("Invalid signature integer: negative");if(n[0]===0&&!(128&n[1]))throw new e("Invalid signature integer: unnecessary leading zero");return{d:b4(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=Qn,t=typeof r=="string"?m4(r):r;if(!(t instanceof Uint8Array))throw new Error("ui8a expected");let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:o,l:i}=Qn._parseInt(t.subarray(2)),{d:s,l:a}=Qn._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,s}},hexFromSig(r){let e=u=>8&Number.parseInt(u[0],16)?"00"+u:u,t=u=>{let f=u.toString(16);return 1&f.length?`0${f}`:f},n=e(t(r.s)),o=e(t(r.r)),i=n.length/2,s=o.length/2,a=t(i),c=t(s);return`30${t(s+i+4)}02${c}${o}02${a}${n}`}},xr=BigInt(0),Et=BigInt(1);BigInt(2);em=BigInt(3);BigInt(4)});function v4(r){return{hash:r,hmac:(e,...t)=>uh(r,e,$b(...t)),randomBytes:dc}}function nm(r,e){let t=n=>tm(z(z({},r),v4(n)));return Object.freeze(J(z({},t(e)),{create:t}))}var om=$(()=>{Jb();gi();rm();});function cm(r){let e=_c,t=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=r*r*r%e,f=u*u*r%e,l=ot(f,t,e)*f%e,h=ot(l,t,e)*f%e,g=ot(h,kc,e)*u%e,y=ot(g,o,e)*g%e,d=ot(y,i,e)*y%e,p=ot(d,a,e)*d%e,b=ot(p,c,e)*p%e,m=ot(b,a,e)*d%e,x=ot(m,t,e)*f%e,S=ot(x,s,e)*y%e,I=ot(S,n,e)*u%e,_=ot(I,kc,e);if(!dh.eql(dh.sqr(_),r))throw new Error("Cannot find square root");return _}function Ac(r,...e){let t=sm[r];if(t===void 0){let n=gc(Uint8Array.from(r,(o=>o.charCodeAt(0))));t=Er(n,n),sm[r]=t}return gc(Er(t,...e))}function gh(r){let e=yh.utils.normPrivateKeyToScalar(r),t=mh.fromPrivateKey(e);return{scalar:t.hasEvenY()?e:Is(-e),bytes:bh(t)}}function lm(r){if(!um(r))throw new Error("bad x: need 0 < x < p");let e=hh(r*r),t=cm(hh(e*r+BigInt(7)));t%kc!==Sc&&(t=hh(-t));let n=new mh(r,t,am);return n.assertValidity(),n}function fm(...r){return Is(qe(Ac("BIP0340/challenge",...r)))}function E4(r){return gh(r).bytes}function x4(r,e,t=dc(32)){let n=Re("message",r),{bytes:o,scalar:i}=gh(e),s=Re("auxRand",t,32),a=ph(i^qe(Ac("BIP0340/aux",s))),c=Ac("BIP0340/nonce",a,o,n),u=Is(qe(c));if(u===Sc)throw new Error("sign failed: k is zero");let{bytes:f,scalar:l}=gh(u),h=fm(f,o,n),g=new Uint8Array(64);if(g.set(f,0),g.set(ph(Is(l+h*i)),32),!hm(g,n,o))throw new Error("sign: Invalid signature produced");return g}function hm(r,e,t){let n=Re("signature",r,64),o=Re("message",e),i=Re("publicKey",t,32);try{let f=lm(qe(i)),l=qe(n.subarray(0,32));if(!um(l))return!1;let h=qe(n.subarray(32,64));if(!(typeof(u=h)=="bigint"&&Sc<u&&u<xc))return!1;let g=fm(ph(l),bh(f),o),y=(s=f,a=h,c=Is(-g),mh.BASE.multiplyAndAddUnsafe(s,a,c));return!(!y||!y.hasEvenY()||y.toAffine().x!==l)}catch(f){return!1}var s,a,c,u}var _c,xc,am,kc,im,dh,yh,Sc,um,sm,bh,ph,hh,Is,mh,mi,dm=$(()=>{Fb();gi();vc();bi();om();_c=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),xc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),am=BigInt(1),kc=BigInt(2),im=(r,e)=>(r+e/kc)/e;dh=Gb(_c,void 0,void 0,{sqrt:cm}),yh=nm({a:BigInt(0),b:BigInt(7),Fp:dh,n:xc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=xc,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-am*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=im(i*r,e),c=im(-n*r,e),u=Oe(r-a*t-c*o,e),f=Oe(-a*n-c*i,e),l=u>s,h=f>s;if(l&&(u=e-u),h&&(f=e-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},gc),Sc=BigInt(0),um=r=>typeof r=="bigint"&&Sc<r&&r<_c,sm={};bh=r=>r.toRawBytes(!0).slice(1),ph=r=>Pt(r,32),hh=r=>Oe(r,_c),Is=r=>Oe(r,xc),mh=yh.ProjectivePoint;mi={getPublicKey:E4,sign:x4,verify:hm,utils:{randomPrivateKey:yh.utils.randomPrivateKey,lift_x:lm,pointToBytes:bh,numberToBytesBE:Pt,bytesToNumberBE:qe,taggedHash:Ac,mod:Oe}}});function wh(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function k4(r){if(typeof r!="boolean")throw new Error(`Expected boolean, not ${r}`)}function pm(r,...e){if(!(r instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function A4(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");wh(r.outputLen),wh(r.blockLen)}function _4(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function S4(r,e){pm(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Bc,gm=$(()=>{Bc={number:wh,bool:k4,bytes:pm,hash:A4,exists:_4,output:S4}});var Oc,ym=$(()=>{gm();_s();Oc=class extends ac{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=cc(this.buffer)}update(e){Bc.exists(this);let{view:t,buffer:n,blockLen:o}=this,i=(e=zf(e)).length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a!==o)n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0);else{let c=cc(e);for(;o<=i-s;s+=o)this.process(c,s)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){Bc.exists(this),Bc.output(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;(function(h,g,y,d){if(typeof h.setBigUint64=="function")return h.setBigUint64(g,y,d);let p=BigInt(32),b=BigInt(4294967295),m=Number(y>>p&b),x=Number(y&b),S=d?4:0,I=d?0:4;h.setUint32(g+S,m,d),h.setUint32(g+I,x,d)})(n,o-8,BigInt(8*this.length),i),this.process(n,0);let a=cc(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}}});var B4,O4,fn,hn,Ic,vh,bm,mm=$(()=>{ym();_s();B4=(r,e,t)=>r&e^r&t^e&t,O4=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),fn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),hn=new Uint32Array(64),Ic=class extends Oc{constructor(){super(64,32,8,!1),this.A=0|fn[0],this.B=0|fn[1],this.C=0|fn[2],this.D=0|fn[3],this.E=0|fn[4],this.F=0|fn[5],this.G=0|fn[6],this.H=0|fn[7]}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|o,this.E=0|i,this.F=0|s,this.G=0|a,this.H=0|c}process(e,t){for(let h=0;h<16;h++,t+=4)hn[h]=e.getUint32(t,!1);for(let h=16;h<64;h++){let g=hn[h-15],y=hn[h-2],d=Rt(g,7)^Rt(g,18)^g>>>3,p=Rt(y,17)^Rt(y,19)^y>>>10;hn[h]=p+hn[h-7]+d+hn[h-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:u,H:f}=this;for(let h=0;h<64;h++){let g=f+(Rt(a,6)^Rt(a,11)^Rt(a,25))+((l=a)&c^~l&u)+O4[h]+hn[h]|0,y=(Rt(n,2)^Rt(n,13)^Rt(n,22))+B4(n,o,i)|0;f=u,u=c,c=a,a=s+g|0,s=i,i=o,o=n,n=g+y|0}var l;n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,o,i,s,a,c,u,f)}roundClean(){hn.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},vh=class extends Ic{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},bm=Kf((()=>new Ic));Kf((()=>new vh))});function I4(r){if(!(r instanceof Object)||typeof r.kind!="number"||typeof r.content!="string"||typeof r.created_at!="number"||typeof r.pubkey!="string"||!r.pubkey.match(/^[a-f0-9]{64}$/)||!Array.isArray(r.tags))return!1;for(let e=0;e<r.tags.length;e++){let t=r.tags[e];if(!Array.isArray(t))return!1;for(let n=0;n<t.length;n++)if(typeof t[n]=="object")return!1}return!0}function R4(r){if(!I4(r))throw new Error("can't serialize event with wrong or missing properties");return JSON.stringify([0,r.pubkey,r.created_at,r.kind,r.tags,r.content])}function Eh(r){let e=bm(T4.encode(R4(r)));return As(e)}var wi,T4,Tc,xh=$(()=>{dm();_s();mm();wi=Symbol("verified");new TextDecoder("utf-8");T4=new TextEncoder;Tc=new class{generateSecretKey(){return mi.utils.randomPrivateKey()}getPublicKey(r){return As(mi.getPublicKey(r))}finalizeEvent(r,e){let t=r;return t.pubkey=As(mi.getPublicKey(e)),t.id=Eh(t),t.sig=As(mi.sign(Eh(t),e)),t[wi]=!0,t}verifyEvent(r){if(typeof r[wi]=="boolean")return r[wi];let e=Eh(r);if(e!==r.id)return r[wi]=!1,!1;try{let t=mi.verify(r.sig,e,r.pubkey);return r[wi]=t,t}catch(t){return r[wi]=!1,!1}}};Tc.generateSecretKey,Tc.getPublicKey,Tc.finalizeEvent,Tc.verifyEvent});var We,wm,$e,Rc,L4,Ts=$(()=>{"use strict";le();gs();ic();fi();Ff();Df();Jf();Xf();xh();ks();We={keepAlive:!1,returnResults:!1,cache:!0,stream:!0},wm={adapter:"websocket",from:"worker",action:"fetch"},$e={filters:[],options:We,hash:"",relays:[]},Rc=Y(Y({},wm),{args:$e}),L4=(function(r){function e(t){var n=r.call(this,t)||this;return n.slug="WebsocketAdapter:unset",n._subscriptions=new Set,n._hashData={},n}return he(e,r),Object.defineProperty(e.prototype,"worker",{get:function(){var t;return(t=this.workers)===null||t===void 0?void 0:t.websocket},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"subscriptions",{get:function(){return this._subscriptions},enumerable:!1,configurable:!0}),e.prototype.connect=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2]}))}))},e.prototype.disconnect=function(){},e.prototype.terminate=function(){},e.prototype.publish=function(){return j(this,arguments,void 0,(function(t){var n;return t===void 0&&(t=$e),U(this,(function(o){return n=this.request({action:"publish",args:Y(Y({},$e),t)}),[2,this.response(n)]}))}))},e.prototype.unsubscribe=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){if(!t)return[2,!0];this.subscriptions.delete(t);try{delete this._hashData[t]}catch(o){}try{Q.emit(t,{type:"unsubscribed",result:!0,hash:t})}catch(o){}try{Q.off(t)}catch(o){}return this.request({action:"unsubscribe",args:Y(Y({},$e),{hash:t,options:Y(Y({},We),{returnResults:!1})})}),[2,!0]}))}))},e.prototype.unsubscribeAll=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s;return U(this,(function(a){for(n=ue([],Array.from(this.subscriptions),!0),o=0,i=n;o<i.length;o++)s=i[o],this.unsubscribe(s);return[2,!0]}))}))},e.prototype.shutdown=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return console.log("WebsocketAdapter:shutdown"),this.terminate(),console.log("WebsocketAdapter:shutdown:terminated"),[4,sc(100)];case 1:return t.sent(),[2]}}))}))},e.prototype.abort=function(){return j(this,void 0,void 0,(function(){var t;return U(this,(function(n){return t=this.request({action:"abort",args:Y(Y({},$e),{hash:"abort",options:Y(Y({},We),{returnResults:!0})})}),[2,this.response(t)]}))}))},e.prototype.newWorker=function(){throw new Error("Method not implemented.")},e.prototype.bindWorkerHandlers=function(){var t;if(!(!((t=this==null?void 0:this.workers)===null||t===void 0)&&t.websocket))return console.warn("[WebsocketAdapter] Error binding worker handlers: no worker found");this.workers.websocket instanceof Worker&&(this.workers.websocket.onmessage=this._onMessage.bind(this)),this.workers.websocket.onerror=this._onError.bind(this)},e.prototype.onMessage=function(t){var n=t.hash,o=t.type,i=t.result;console.log("[WebsocketAdapter] onMessage: type=".concat(o,", hash=").concat(n==null?void 0:n.slice(0,8),", result="),Array.isArray(i)?"".concat(i.length," items"):typeof i),Q.emit(n,t)},e.prototype.subscribe=function(){return j(this,arguments,void 0,(function(t,n){var o,i,s,a,c;return t===void 0&&(t=$e),U(this,(function(u){if(o=t.hash,console.log("[WebsocketAdapter] subscribe called: hash=".concat(o==null?void 0:o.slice(0,8),", hasWorker=").concat(!!this.worker)),(i=!!(n&&Object.keys(n).length>0))?(t.options.stream=!0,t.options.returnResults=!0):t.options.stream=!1,((a=t==null?void 0:t.options)===null||a===void 0?void 0:a.keepAlive)&&!i)throw new Error("WebsocketAdapter.subscribe: keepAlive requires callbacks");return console.log("[WebsocketAdapter] subscribe: calling request()"),s=this.request({action:"subscribe",args:t}),console.log("[WebsocketAdapter] subscribe: request() returned hash=".concat(s==null?void 0:s.slice(0,8))),o||(o=s),this.subscriptions.has(o)?(console.warn("[WebsocketAdapter] Already subscribed to ".concat(o)),[2,!0]):(this.subscriptions.add(o),!((c=t==null?void 0:t.options)===null||c===void 0)&&c.keepAlive?(this.listen(o,n),[2,!0]):(console.log("[WebsocketAdapter] subscribe: awaiting response()"),[2,this.response(o,n,{timeoutMs:e.DEFAULT_RESPONSE_TIMEOUT_MS})]))}))}))},e.prototype.fetch=function(){return j(this,arguments,void 0,(function(t,n){var o;return t===void 0&&(t=$e),U(this,(function(i){return n&&Object.keys(n).length>0?(t.options.stream=!0,t.options.returnResults=!0):t.options.stream=!1,o=this.request({action:"fetch",args:t}),this.subscriptions.has(o)?(console.warn("[WebsocketAdapter] Already subscribed to ".concat(o)),[2,!0]):(this.subscriptions.add(o),[2,this.response(o,n,{timeoutMs:e.DEFAULT_RESPONSE_TIMEOUT_MS})])}))}))},e.prototype.setHashData=function(t,n,o){this._hashData[t]||(this._hashData[t]={}),this._hashData[t][n]=o},e.prototype.request=function(t){var n,o,i;if(t===void 0&&(t=Rc),!(t!=null&&t.args))throw new Error("No args found in message");!((n=t==null?void 0:t.args)===null||n===void 0)&&n.hash||(t.args.hash=Yn((i=(o=t==null?void 0:t.args)===null||o===void 0?void 0:o.filters)!==null&&i!==void 0?i:{}));var s=t.args.hash;return console.log("[WebsocketAdapter] request: action=".concat(t==null?void 0:t.action,", hash=").concat(s==null?void 0:s.slice(0,8),", workerExists=").concat(!!(this!=null&&this.worker))),this!=null&&this.worker?(this.worker instanceof Worker?(console.log("[WebsocketAdapter] request: posting to Worker"),this.worker.postMessage(t)):this.worker instanceof SharedWorker&&(console.log("[WebsocketAdapter] request: posting to SharedWorker"),this.worker.port.postMessage(t)),s):(console.warn("[WebsocketAdapter] Error sending command: no worker found"),s)},e.prototype.listen=function(t,n){var o=this;Q.on(t,(function(i){var s,a,c,u,f,l=i.result,h=i.type;if(h==="events"){if(n!=null&&n.onevents)return void n.onevents(l);for(var g=0,y=l;g<y.length;g++){var d=y[g];(s=n==null?void 0:n.onevent)===null||s===void 0||s.call(n,d)}}else if(h==="event")(a=n==null?void 0:n.onevent)===null||a===void 0||a.call(n,l);else if(h==="complete"){(c=n==null?void 0:n.oneose)===null||c===void 0||c.call(n),o.subscriptions.delete(t);try{delete o._hashData[t]}catch(p){}Q.off(t),(u=n==null?void 0:n.onclose)===null||u===void 0||u.call(n,t)}else if(h==="unsubscribed"||h==="aborted"||h==="terminated"){o.subscriptions.delete(t);try{delete o._hashData[t]}catch(p){}Q.off(t),(f=n==null?void 0:n.onclose)===null||f===void 0||f.call(n,t)}else console.warn("[WebsocketAdapter] Unknown response type: ".concat(h))}))},e.prototype.response=function(t,n,o){return j(this,void 0,void 0,(function(){var i,s=this;return U(this,(function(a){return i=o==null?void 0:o.timeoutMs,[2,new Promise((function(c){var u=[],f=!1,l=null,h=function(d){f||(f=!0,l&&clearTimeout(l),y(),c(d))},g=function(d){var p,b,m=d.result,x=d.type;if(x==="unsubscribed"||x==="aborted"||x==="terminated")return(p=n==null?void 0:n.onclose)===null||p===void 0||p.call(n,t),h(!0);if(x==="events"){if(n!=null&&n.onevents)return void n.onevents(m);for(var S=0,I=m;S<I.length;S++){var _=I[S];n!=null&&n.onevent?n.onevent(_):u.push(_)}}else if(x==="event")n!=null&&n.onevent?n.onevent(m):u.push(m);else if(x=="complete"){if((b=n==null?void 0:n.oneose)===null||b===void 0||b.call(n),n==null?void 0:n.onevent)return h(!0);if(u)return h(u)}else console.warn("[WebsocketAdapter] Unknown response type: ".concat(x))},y=function(){s.subscriptions.delete(t);try{delete s._hashData[t]}catch(d){}try{Q.off(t,g)}catch(d){try{Q.off(t)}catch(p){}}};typeof i=="number"&&Number.isFinite(i)&&i>0&&(l=setTimeout((function(){n!=null&&n.onevent||n!=null&&n.onevents?h(!0):h(u)}),i)),Q.on(t,g)}))]}))}))},e.prototype.ping=function(){var t,n,o,i;this.worker instanceof Worker?(n=(t=this.workers)===null||t===void 0?void 0:t.websocket)===null||n===void 0||n.postMessage({type:"ping"}):this.worker instanceof SharedWorker&&((i=(o=this.workers)===null||o===void 0?void 0:o.websocket)===null||i===void 0||i.port.postMessage({type:"ping"}))},e.type="WebsocketAdapter",e.DEFAULT_RESPONSE_TIMEOUT_MS=12e4,e})(ps)});var kh,Lc=$(()=>{"use strict";kh=(function(){function r(e){this.options=e,this.batches=new Map,this.timeoutIds=new Map}return r.prototype.add=function(e,t,n){this.batches.has(t)||this.batches.set(t,{items:[],state:n,lastBatchTime:Date.now()});var o=this.batches.get(t);n!==void 0&&(o.state=n),o.items.push(e),o.items.length>=this.options.maxLength&&this.executeBatch(t),this.timeoutIds.has(t)||this.startTimeout(t)},r.prototype.executeBatch=function(e){var t=this.batches.get(e);t&&t.items.length!==0&&(this.options.callback(t.items,t.state,e),t.items=[],t.lastBatchTime=Date.now(),this.timeoutIds.has(e)&&(clearTimeout(this.timeoutIds.get(e)),this.timeoutIds.delete(e)))},r.prototype.startTimeout=function(e){var t=this,n=this.batches.get(e);if(n){var o=setTimeout((function(){Date.now()-n.lastBatchTime>=t.options.timeout&&t.executeBatch(e)}),this.options.timeout);this.timeoutIds.set(e,o)}},r.prototype.hasState=function(e){var t=this.batches.get(e);return(t==null?void 0:t.state)!==void 0},r.prototype.abort=function(){for(var e=0,t=Array.from(this.timeoutIds.values());e<t.length;e++){var n=t[e];clearTimeout(n)}this.batches.clear(),this.timeoutIds.clear()},r})()});var xt,vm,Ah,Em,_h,Sh=$(()=>{"use strict";le();xs();Ts();Lc();(function(r){r.event="event",r.events="events",r.complete="complete",r.error="error",r.unsubscribed="unsubscribed",r.aborted="aborted",r.terminated="terminated"})(xt||(xt={}));vm={to:"cache"},Ah={type:"event",result:null,hash:""},Em=Y(Y({},vm),{args:Ah}),_h=(function(r){function e(t){var n=r.call(this,t)||this;return n.relays=["wss://relaypag.es/","wss://relay.nostr.watch/"],n.batchQueue=[],n._controller=new AbortController,n._signal=n._controller.signal,n.batcher=new kh({maxLength:100,timeout:2e3,callback:n.batchResponse.bind(n)}),n}return he(e,r),Object.defineProperty(e.prototype,"signal",{get:function(){return this._signal},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"controller",{get:function(){return this._controller},enumerable:!1,configurable:!0}),e.prototype._setup=function(t){return j(this,void 0,void 0,(function(){var n,o;return U(this,(function(i){return(n=t.options)&&(o=n.connectToRelays),o&&(this.relays=o),this.relays.length||console.warn("AdapterWebsocketWorker: cannot connect to relays, length is 0"),[2]}))}))},e.prototype.onMainThreadMessage=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return this.onMessage(t),[2]}))}))},e.prototype.onChannelMessage=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return this.onMessage(t),[2]}))}))},e.prototype.onMessage=function(t){t===void 0&&(t=Rc);var n=t.action,o=t.args;return n==="publish"?this.publish(o):n==="subscribe"?this.subscribe(o):n==="fetch"?this.fetch(o):n==="unsubscribe"?this.unsubscribe(o):n==="abort"?this._abort():void console.warn("AdapterWebsocketWorker: onMessage: did not match any command",t)},e.prototype.send=function(t){t===void 0&&(t=Em);var n=t.to,o=t.args,i=!1;if(n==="adapter"){if(!(this!=null&&this.mainThread))return console.warn("AdapterWebsocketWorker: mainThread not found");this.mainThread.postMessage(o),i=!0}if(n==="cache"){if(!this.channel)return console.warn("AdapterWebsocketWorker: channel not found");this.channel.postMessage(o),i=!0}i||console.warn("AdapterWebsocketWorker: send: did not send to any destination")},e.prototype.publish=function(){return j(this,arguments,void 0,(function(t){var n,o;return t===void 0&&(t=$e),U(this,(function(i){switch(i.label){case 0:return this.signal.aborted&&this.abortControllerReset(),[4,this._publish(t)];case 1:return n=i.sent(),o=n?xt.complete:xt.error,n&&this.respond(o,t),[2]}}))}))},e.prototype._publish=function(){return j(this,arguments,void 0,(function(t){return U(this,(function(n){throw new Error("".concat(this.constructor.name,":_publish() not implemented!"))}))}))},e.prototype.subscribe=function(){return j(this,arguments,void 0,(function(t){var n,o,i,s;return t===void 0&&(t=$e),U(this,(function(a){switch(a.label){case 0:return this.signal.aborted&&this.abortControllerReset(),n=t.options,(o=(n!=null?n:We).stream)&&(i=this.requestCallbacks(t)),[4,this._subscribe(t,i)];case 1:return s=a.sent(),o||this.requestSyncResponse(t,s),n!=null&&n.keepAlive||this.respond(xt.complete,t),[2]}}))}))},e.prototype.unsubscribe=function(t){},e.prototype._subscribe=function(){return j(this,arguments,void 0,(function(t,n){return U(this,(function(o){throw new Error("".concat(this.constructor.name,":_subscribe() not implemented!"))}))}))},e.prototype.fetch=function(){return j(this,arguments,void 0,(function(t){var n,o,i,s,a;return t===void 0&&(t=$e),U(this,(function(c){switch(c.label){case 0:return this.signal.aborted&&this.abortControllerReset(),n=t.options,o=t.hash,i=(n!=null?n:We).stream,console.log("[Worker] fetch: hash=".concat(o==null?void 0:o.slice(0,8),", stream=").concat(i,", returnResults=").concat(n==null?void 0:n.returnResults)),i&&(s=this.requestCallbacks(t)),[4,this._fetch(t,s)];case 1:return a=c.sent(),console.log("[Worker] fetch: _fetch returned ".concat(Array.isArray(a)?a.length+" events":typeof a)),i||this.requestSyncResponse(t,a),this.respond(xt.complete,t),[2]}}))}))},e.prototype._fetch=function(){return j(this,arguments,void 0,(function(t,n){return U(this,(function(o){throw new Error("".concat(this.constructor.name,":_fetch() not implemented!"))}))}))},e.prototype._abort=function(){return this.batcher.abort(),this.abort(),this.send({to:"adapter",args:{type:xt.complete,result:null,hash:"abort"}})},e.prototype.abort=function(){},e.prototype.abortControllerReset=function(){this._controller=new AbortController,this._signal=this._controller.signal},e.prototype.respond=function(t,n,o){var i=n.hash,s=n.options,a=s.cache,c=s.returnResults;console.log("[Worker] respond: type=".concat(t,", hash=").concat(i==null?void 0:i.slice(0,8),", returnResults=").concat(c,", cache=").concat(a));var u={type:t,result:o,hash:i};a===!0&&this.send({to:"cache",args:u}),c===!0&&(console.log("[Worker] sending to adapter: type=".concat(t)),this.send({to:"adapter",args:u}))},e.prototype.batchResponse=function(t,n,o){if(!n)throw new Error("AdapterWebsocketWorker: batchResponse: state is undefined");this.respond(xt.events,n,t)},e.prototype.requestCallbacks=function(t){var n=this;t===void 0&&(t=$e);var o=t.options,i=t.hash,s=o.batch;return{onevent:function(a){if(typeof s=="number"){var c=n.batcher.hasState(i)?void 0:t;n.batcher.add(a,i,c)}else n.respond(xt.event,t,a)},oneose:function(){}}},e.prototype.requestSyncResponse=function(t,n){var o,i,s=t.hash,a=t.options,c=a.cache,u=a.returnResults;console.log("[Worker] requestSyncResponse: hash=".concat(s==null?void 0:s.slice(0,8),", events=").concat((o=n==null?void 0:n.length)!==null&&o!==void 0?o:0,", returnResults=").concat(u,", cache=").concat(c));var f={type:xt.events,result:n,hash:s};c===!0&&this.send({to:"cache",args:f}),u===!0&&(console.log("[Worker] requestSyncResponse: sending ".concat((i=n==null?void 0:n.length)!==null&&i!==void 0?i:0," events to adapter")),this.send({to:"adapter",args:f})),f=Y(Y({},Ah),{result:n.length>0,type:xt.complete,hash:s}),c===!0&&this.send({to:"cache",args:f}),this.send({to:"adapter",args:f})},e.prototype._getUniquePubkeys=function(t){return Array.from(new Set(t.map((function(n){return n.pubkey}))))},e})(Es)});var P4,Bh=$(()=>{"use strict";le();gs();P4=(function(r){function e(t){var n=r.call(this,t)||this;return n.slug="CacheAdapter:unset",n._ready=!1,n.init(),n}return he(e,r),Object.defineProperty(e.prototype,"worker",{get:function(){var t;return(t=this.workers)===null||t===void 0?void 0:t.cache},enumerable:!1,configurable:!0}),e.prototype.ready=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2]}))}))},e.prototype.init=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){return this._ready=!0,[2]}))}))},e.prototype.bindWorkerHandlers=function(){var t;if(!(!((t=this==null?void 0:this.workers)===null||t===void 0)&&t.cache))return console.warn("[CacheAdapter] Error binding worker handlers: no worker found");this.workers.cache instanceof Worker?this.workers.cache.onmessage=this._onMessage.bind(this):this.workers.cache instanceof SharedWorker&&(this.workers.cache.port.onmessage=this._onMessage.bind(this)),this.workers.cache.onerror=this._onError.bind(this)},e.prototype.ping=function(){var t,n,o,i,s,a;((t=this.workers)===null||t===void 0?void 0:t.cache)instanceof Worker?(o=(n=this.workers)===null||n===void 0?void 0:n.cache)===null||o===void 0||o.postMessage({type:"ping"}):((i=this.workers)===null||i===void 0?void 0:i.cache)instanceof SharedWorker&&((a=(s=this.workers)===null||s===void 0?void 0:s.cache)===null||a===void 0||a.port.postMessage({type:"ping"}))},e.type="CacheAdapter",e})(ps)});var C4,Oh=$(()=>{"use strict";le();qf();C4=(function(){function r(e,t){t===void 0&&(t=1);var n=this;this._taskWorker=e,this._queue=new li({concurrency:t}),this.queue.on("active",(function(){n.saturated()})),this.queue.on("idle",(function(){n.drain()})),this.queue.on("empty",(function(){n.empty()}))}return Object.defineProperty(r.prototype,"queue",{get:function(){return this._queue},enumerable:!1,configurable:!0}),r.prototype.add=function(e,t){return j(this,void 0,void 0,(function(){var n=this;return U(this,(function(o){switch(o.label){case 0:return[4,this.queue.add((function(){return n._taskWorker(e)}),t)];case 1:return o.sent(),[2]}}))}))},r.prototype.saturated=function(){},r.prototype.drain=function(){},r.prototype.empty=function(){},Object.defineProperty(r.prototype,"size",{get:function(){return this._queue.size},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"pending",{get:function(){return this._queue.pending},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"isPaused",{get:function(){return this._queue.isPaused},enumerable:!1,configurable:!0}),r.prototype.pause=function(){this._queue.pause()},r.prototype.start=function(){this._queue.start()},r.prototype.clear=function(){this._queue.clear()},r.prototype.on=function(e,t){this._queue.on(e,t)},r.prototype.onEmpty=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){return[2,this._queue.onEmpty()]}))}))},r.prototype.onIdle=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){return[2,this._queue.onIdle()]}))}))},r.prototype.waitUntilIdle=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){return[2,this._queue.onIdle()]}))}))},r})()});var Pc,Cc,Ih=$(()=>{"use strict";Pc=function(r){return r.kind>=3e4&&r.kind<4e4},Cc=function(r){return r.kind>=1e4&&r.kind<2e4||[0,3,41].includes(r.kind)}});var Th,xm=$(()=>{"use strict";Th={}});function Am(){return km||(km=1,(function(r){function e(w){if(!Number.isSafeInteger(w))throw new Error(`Wrong integer: ${w}`)}function t(...w){let E=(v,A)=>R=>v(A(R));return{encode:Array.from(w).reverse().reduce(((v,A)=>v?E(v,A.encode):A.encode),void 0),decode:w.reduce(((v,A)=>v?E(v,A.decode):A.decode),void 0)}}function n(w){return{encode:E=>{if(!Array.isArray(E)||E.length&&typeof E[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return E.map((v=>{if(e(v),v<0||v>=w.length)throw new Error(`Digit index outside alphabet: ${v} (alphabet: ${w.length})`);return w[v]}))},decode:E=>{if(!Array.isArray(E)||E.length&&typeof E[0]!="string")throw new Error("alphabet.decode input should be array of strings");return E.map((v=>{if(typeof v!="string")throw new Error(`alphabet.decode: not string element=${v}`);let A=w.indexOf(v);if(A===-1)throw new Error(`Unknown letter: "${v}". Allowed: ${w}`);return A}))}}}function o(w=""){if(typeof w!="string")throw new Error("join separator should be string");return{encode:E=>{if(!Array.isArray(E)||E.length&&typeof E[0]!="string")throw new Error("join.encode input should be array of strings");for(let v of E)if(typeof v!="string")throw new Error(`join.encode: non-string input=${v}`);return E.join(w)},decode:E=>{if(typeof E!="string")throw new Error("join.decode input should be string");return E.split(w)}}}function i(w,E="="){if(e(w),typeof E!="string")throw new Error("padding chr should be string");return{encode(v){if(!Array.isArray(v)||v.length&&typeof v[0]!="string")throw new Error("padding.encode input should be array of strings");for(let A of v)if(typeof A!="string")throw new Error(`padding.encode: non-string input=${A}`);for(;v.length*w%8;)v.push(E);return v},decode(v){if(!Array.isArray(v)||v.length&&typeof v[0]!="string")throw new Error("padding.encode input should be array of strings");for(let R of v)if(typeof R!="string")throw new Error(`padding.decode: non-string input=${R}`);let A=v.length;if(A*w%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;A>0&&v[A-1]===E;A--)if(!((A-1)*w%8))throw new Error("Invalid padding: string has too much padding");return v.slice(0,A)}}}function s(w){if(typeof w!="function")throw new Error("normalize fn should be function");return{encode:E=>E,decode:E=>w(E)}}function a(w,E,v){if(E<2)throw new Error(`convertRadix: wrong from=${E}, base cannot be less than 2`);if(v<2)throw new Error(`convertRadix: wrong to=${v}, base cannot be less than 2`);if(!Array.isArray(w))throw new Error("convertRadix: data should be array");if(!w.length)return[];let A=0,R=[],L=Array.from(w);for(L.forEach((P=>{if(e(P),P<0||P>=E)throw new Error(`Wrong integer: ${P}`)}));;){let P=0,B=!0;for(let T=A;T<L.length;T++){let C=L[T],M=E*P+C;if(!Number.isSafeInteger(M)||E*P/E!==P||M-C!=E*P)throw new Error("convertRadix: carry overflow");if(P=M%v,L[T]=Math.floor(M/v),!Number.isSafeInteger(L[T])||L[T]*v+P!==M)throw new Error("convertRadix: carry overflow");B&&(L[T]?B=!1:A=T)}if(R.push(P),B)break}for(let P=0;P<w.length-1&&w[P]===0;P++)R.push(0);return R.reverse()}Object.defineProperty(r,"__esModule",{value:!0}),r.bytes=r.stringToBytes=r.str=r.bytesToString=r.hex=r.utf8=r.bech32m=r.bech32=r.base58check=r.base58xmr=r.base58xrp=r.base58flickr=r.base58=r.base64url=r.base64=r.base32crockford=r.base32hex=r.base32=r.base16=r.utils=r.assertNumber=void 0,r.assertNumber=e;let c=(w,E)=>E?c(E,w%E):w,u=(w,E)=>w+(E-c(w,E));function f(w,E,v,A){if(!Array.isArray(w))throw new Error("convertRadix2: data should be array");if(E<=0||E>32)throw new Error(`convertRadix2: wrong from=${E}`);if(v<=0||v>32)throw new Error(`convertRadix2: wrong to=${v}`);if(u(E,v)>32)throw new Error(`convertRadix2: carry overflow from=${E} to=${v} carryBits=${u(E,v)}`);let R=0,L=0,P=2**v-1,B=[];for(let T of w){if(e(T),T>=2**E)throw new Error(`convertRadix2: invalid data word=${T} from=${E}`);if(R=R<<E|T,L+E>32)throw new Error(`convertRadix2: carry overflow pos=${L} from=${E}`);for(L+=E;L>=v;L-=v)B.push((R>>L-v&P)>>>0);R&=2**L-1}if(R=R<<v-L&P,!A&&L>=E)throw new Error("Excess padding");if(!A&&R)throw new Error(`Non-zero padding: ${R}`);return A&&L>0&&B.push(R>>>0),B}function l(w){return e(w),{encode:E=>{if(!(E instanceof Uint8Array))throw new Error("radix.encode input should be Uint8Array");return a(Array.from(E),256,w)},decode:E=>{if(!Array.isArray(E)||E.length&&typeof E[0]!="number")throw new Error("radix.decode input should be array of strings");return Uint8Array.from(a(E,w,256))}}}function h(w,E=!1){if(e(w),w<=0||w>32)throw new Error("radix2: bits should be in (0..32]");if(u(8,w)>32||u(w,8)>32)throw new Error("radix2: carry overflow");return{encode:v=>{if(!(v instanceof Uint8Array))throw new Error("radix2.encode input should be Uint8Array");return f(Array.from(v),8,w,!E)},decode:v=>{if(!Array.isArray(v)||v.length&&typeof v[0]!="number")throw new Error("radix2.decode input should be array of strings");return Uint8Array.from(f(v,w,8,E))}}}function g(w){if(typeof w!="function")throw new Error("unsafeWrapper fn should be function");return function(...E){try{return w.apply(null,E)}catch(v){}}}function y(w,E){if(e(w),typeof E!="function")throw new Error("checksum fn should be function");return{encode(v){if(!(v instanceof Uint8Array))throw new Error("checksum.encode: input should be Uint8Array");let A=E(v).slice(0,w),R=new Uint8Array(v.length+w);return R.set(v),R.set(A,v.length),R},decode(v){if(!(v instanceof Uint8Array))throw new Error("checksum.decode: input should be Uint8Array");let A=v.slice(0,-w),R=E(A).slice(0,w),L=v.slice(-w);for(let P=0;P<w;P++)if(R[P]!==L[P])throw new Error("Invalid checksum");return A}}}r.utils={alphabet:n,chain:t,checksum:y,radix:l,radix2:h,join:o,padding:i},r.base16=t(h(4),n("0123456789ABCDEF"),o("")),r.base32=t(h(5),n("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),i(5),o("")),r.base32hex=t(h(5),n("0123456789ABCDEFGHIJKLMNOPQRSTUV"),i(5),o("")),r.base32crockford=t(h(5),n("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),o(""),s((w=>w.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1")))),r.base64=t(h(6),n("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),i(6),o("")),r.base64url=t(h(6),n("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),i(6),o(""));let d=w=>t(l(58),n(w),o(""));r.base58=d("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),r.base58flickr=d("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),r.base58xrp=d("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz");let p=[0,2,3,5,6,7,9,10,11];r.base58xmr={encode(w){let E="";for(let v=0;v<w.length;v+=8){let A=w.subarray(v,v+8);E+=r.base58.encode(A).padStart(p[A.length],"1")}return E},decode(w){let E=[];for(let v=0;v<w.length;v+=11){let A=w.slice(v,v+11),R=p.indexOf(A.length),L=r.base58.decode(A);for(let P=0;P<L.length-R;P++)if(L[P]!==0)throw new Error("base58xmr: wrong padding");E=E.concat(Array.from(L.slice(L.length-R)))}return Uint8Array.from(E)}},r.base58check=w=>t(y(4,(E=>w(w(E)))),r.base58);let b=t(n("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),o("")),m=[996825010,642813549,513874426,1027748829,705979059];function x(w){let E=w>>25,v=(33554431&w)<<5;for(let A=0;A<m.length;A++)(E>>A&1)==1&&(v^=m[A]);return v}function S(w,E,v=1){let A=w.length,R=1;for(let L=0;L<A;L++){let P=w.charCodeAt(L);if(P<33||P>126)throw new Error(`Invalid prefix (${w})`);R=x(R)^P>>5}R=x(R);for(let L=0;L<A;L++)R=x(R)^31&w.charCodeAt(L);for(let L of E)R=x(R)^L;for(let L=0;L<6;L++)R=x(R);return R^=v,b.encode(f([R%2**30],30,5,!1))}function I(w){let E=w==="bech32"?1:734539939,v=h(5),A=v.decode,R=v.encode,L=g(A);function P(B,T=90){if(typeof B!="string")throw new Error("bech32.decode input should be string, not "+typeof B);if(B.length<8||T!==!1&&B.length>T)throw new TypeError(`Wrong string length: ${B.length} (${B}). Expected (8..${T})`);let C=B.toLowerCase();if(B!==C&&B!==B.toUpperCase())throw new Error("String must be lowercase or uppercase");let M=(B=C).lastIndexOf("1");if(M===0||M===-1)throw new Error('Letter "1" must be present between prefix and data only');let N=B.slice(0,M),W=B.slice(M+1);if(W.length<6)throw new Error("Data must be at least 6 characters long");let D=b.decode(W).slice(0,-6),q=S(N,D,E);if(!W.endsWith(q))throw new Error(`Invalid checksum in ${B}: expected "${q}"`);return{prefix:N,words:D}}return{encode:function(T,C,M=90){if(typeof T!="string")throw new Error("bech32.encode prefix should be string, not "+typeof T);if(!Array.isArray(C)||C.length&&typeof C[0]!="number")throw new Error("bech32.encode words should be array of numbers, not "+typeof C);let N=T.length+7+C.length;if(M!==!1&&N>M)throw new TypeError(`Length ${N} exceeds limit ${M}`);return`${T=T.toLowerCase()}1${b.encode(C)}${S(T,C,E)}`},decode:P,decodeToBytes:function(T){let{prefix:C,words:M}=P(T,!1);return{prefix:C,words:M,bytes:A(M)}},decodeUnsafe:g(P),fromWords:A,fromWordsUnsafe:L,toWords:R}}r.bech32=I("bech32"),r.bech32m=I("bech32m"),r.utf8={encode:w=>new TextDecoder().decode(w),decode:w=>new TextEncoder().encode(w)},r.hex=t(h(4),n("0123456789abcdef"),o(""),s((w=>{if(typeof w!="string"||w.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof w} with length ${w.length}`);return w.toLowerCase()})));let _={utf8:r.utf8,hex:r.hex,base16:r.base16,base32:r.base32,base64:r.base64,base64url:r.base64url,base58:r.base58,base58xmr:r.base58xmr},O=`Invalid encoding type. Available types: ${Object.keys(_).join(", ")}`;r.bytesToString=(w,E)=>{if(typeof w!="string"||!_.hasOwnProperty(w))throw new TypeError(O);if(!(E instanceof Uint8Array))throw new TypeError("bytesToString() expects Uint8Array");return _[w].encode(E)},r.str=r.bytesToString,r.stringToBytes=(w,E)=>{if(!_.hasOwnProperty(w))throw new TypeError(O);if(typeof E!="string")throw new TypeError("stringToBytes() expects string");return _[w].decode(E)},r.bytes=r.stringToBytes})(Th)),Th}var km,_m=$(()=>{xm()});function Om(){if(Bm)return Sm;Bm=1;let{bech32:r,hex:e,utf8:t}=Am(),n={bech32:"bc",pubKeyHash:0,scriptHash:5,validWitnessVersions:[0]},o={bech32:"tb",pubKeyHash:111,scriptHash:196,validWitnessVersions:[0]},i={bech32:"tbs",pubKeyHash:111,scriptHash:196,validWitnessVersions:[0]},s={bech32:"bcrt",pubKeyHash:111,scriptHash:196,validWitnessVersions:[0]},a={bech32:"sb",pubKeyHash:63,scriptHash:123,validWitnessVersions:[0]},c=["option_data_loss_protect","initial_routing_sync","option_upfront_shutdown_script","gossip_queries","var_onion_optin","gossip_queries_ex","option_static_remotekey","payment_secret","basic_mpp","option_support_large_channel"],u={m:BigInt(1e3),u:BigInt(1e6),n:BigInt(1e9),p:BigInt(1e12)},f=BigInt("2100000000000000000"),l=BigInt(1e11),h={payment_hash:1,payment_secret:16,description:13,payee:19,description_hash:23,expiry:6,min_final_cltv_expiry:24,fallback_address:9,route_hint:3,feature_bits:5,metadata:27},g={};for(let m=0,x=Object.keys(h);m<x.length;m++){let S=x[m],I=h[x[m]].toString();g[I]=S}let y={1:m=>e.encode(r.fromWordsUnsafe(m)),16:m=>e.encode(r.fromWordsUnsafe(m)),13:m=>t.encode(r.fromWordsUnsafe(m)),19:m=>e.encode(r.fromWordsUnsafe(m)),23:m=>e.encode(r.fromWordsUnsafe(m)),27:m=>e.encode(r.fromWordsUnsafe(m)),6:p,24:p,3:function(x){let S=[],I,_,O,w,E,v=r.fromWordsUnsafe(x);for(;v.length>0;)I=e.encode(v.slice(0,33)),_=e.encode(v.slice(33,41)),O=parseInt(e.encode(v.slice(41,45)),16),w=parseInt(e.encode(v.slice(45,49)),16),E=parseInt(e.encode(v.slice(49,51)),16),v=v.slice(51),S.push({pubkey:I,short_channel_id:_,fee_base_msat:O,fee_proportional_millionths:w,cltv_expiry_delta:E});return S},5:function(x){let S=x.slice().reverse().map((O=>[!!(1&O),!!(2&O),!!(4&O),!!(8&O),!!(16&O)])).reduce(((O,w)=>O.concat(w)),[]);for(;S.length<2*c.length;)S.push(!1);let I={};c.forEach(((O,w)=>{let E;E=S[2*w]?"required":S[2*w+1]?"supported":"unsupported",I[O]=E}));let _=S.slice(2*c.length);return I.extra_bits={start_bit:2*c.length,bits:_,has_required:_.reduce(((O,w,E)=>E%2!=0?O||!1:O||w),!1)},I}};function d(m){return x=>({tagCode:parseInt(m),words:r.encode("unknown",x,Number.MAX_SAFE_INTEGER)})}function p(m){return m.reverse().reduce(((x,S,I)=>x+S*Math.pow(32,I)),0)}function b(m,x){let S,I;if(m.slice(-1).match(/^[munp]$/))S=m.slice(-1),I=m.slice(0,-1);else{if(m.slice(-1).match(/^[^munp0-9]$/))throw new Error("Not a valid multiplier for the amount");I=m}if(!I.match(/^\d+$/))throw new Error("Not a valid human readable amount");let _=BigInt(I),O=S?_*l/u[S]:_*l;if(S==="p"&&_%BigInt(10)!==BigInt(0)||O>f)throw new Error("Amount is outside of valid range");return x?O.toString():O}return Sm={decode:function(x,S){if(typeof x!="string")throw new Error("Lightning Payment Request must be string");if(x.slice(0,2).toLowerCase()!=="ln")throw new Error("Not a proper lightning payment request");let I=[],_=r.decode(x,Number.MAX_SAFE_INTEGER);x=x.toLowerCase();let O=_.prefix,w=_.words,E=x.slice(O.length+1),v=w.slice(-104);w=w.slice(0,-104);let A=O.match(/^ln(\S+?)(\d*)([a-zA-Z]?)$/);if(A&&!A[2]&&(A=O.match(/^ln(\S+)$/)),!A)throw new Error("Not a proper lightning payment request");I.push({name:"lightning_network",letters:"ln"});let R=A[1],L;if(S){if(S.bech32===void 0||S.pubKeyHash===void 0||S.scriptHash===void 0||!Array.isArray(S.validWitnessVersions))throw new Error("Invalid network");L=S}else switch(R){case n.bech32:L=n;break;case o.bech32:L=o;break;case i.bech32:L=i;break;case s.bech32:L=s;break;case a.bech32:L=a}if(!L||L.bech32!==R)throw new Error("Unknown coin bech32 prefix");I.push({name:"coin_network",letters:R,value:L});let P=A[2],B;P?(B=b(P+A[3],!0),I.push({name:"amount",letters:A[2]+A[3],value:B})):B=null,I.push({name:"separator",letters:"1"});let T=p(w.slice(0,7)),C,M,N,W;for(w=w.slice(7),I.push({name:"timestamp",letters:E.slice(0,7),value:T}),E=E.slice(7);w.length>0;){let K=w[0].toString();C=g[K]||"unknown_tag",M=y[K]||d(K),w=w.slice(1),N=p(w.slice(0,2)),w=w.slice(2),W=w.slice(0,N),w=w.slice(N),I.push({name:C,tag:E[0],letters:E.slice(0,3+N),value:M(W)}),E=E.slice(3+N)}I.push({name:"signature",letters:E.slice(0,104),value:e.encode(r.fromWordsUnsafe(v))}),E=E.slice(104),I.push({name:"checksum",letters:E});let D={paymentRequest:x,sections:I,get expiry(){let K=I.find((X=>X.name==="expiry"));if(K)return q("timestamp")+K.value},get route_hints(){return I.filter((K=>K.name==="route_hint")).map((K=>K.value))}};for(let K in h)K!=="route_hint"&&Object.defineProperty(D,K,{get:()=>q(K)});return D;function q(K){let X=I.find((oe=>oe.name===K));return X?X.value:void 0}},hrpToMillisat:b}}var Sm,Bm,Im=$(()=>{_m()});var Tm,Rm=$(()=>{"use strict";Cf();Im();Tm=ec(Om())});var Lm,Rh,Pm,Lh,N4,Nc=$(()=>{"use strict";Rm();Lm=function(r){return/^[0-9a-fA-F]{64}$/.test(r)},Rh=function(r){var e=r.replace(/\/+$/,"");return[e,e+"/"]},Pm=function(r){return N4(Lh(r))},Lh=function(r){var e=r.map((function(t){var n,o=(n=t.tags.find((function(i){return i[0]==="bolt11"})))===null||n===void 0?void 0:n[1];return o?Tm.decode(o):null})).filter((function(t){return t!==null}));return Math.round(e.reduce((function(t,n){var o;return t+parseInt(((o=n.sections.find((function(i){return(i==null?void 0:i.name)==="amount"})))===null||o===void 0?void 0:o.value)||"0")}),0)/1e3)},N4=function(r){if(r===0)return"";if(r<1e3)return r.toString();var e=Math.floor(Math.log10(r)/3),t=e-1,n=r/Math.pow(1e3,e);return"".concat(n.toFixed(t+1)).concat(["","K","M","B","T","P","E"][e])}});function Cm(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function Ph(r,...e){if(!(r instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function Nm(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Cm(r.outputLen),Cm(r.blockLen)}function vi(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function Mm(r,e){Ph(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Ch=$(()=>{});var Mc,Um=$(()=>{Mc=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0});function U4(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function Rs(r){if(typeof r=="string"&&(r=U4(r)),!jm(r))throw new Error("expected Uint8Array, got "+typeof r);return r}function qm(...r){let e=new Uint8Array(r.reduce(((n,o)=>n+o.length),0)),t=0;return r.forEach((n=>{if(!jm(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length})),e}function $m(r){let e=n=>r().update(Rs(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function jc(r=32){if(Mc&&typeof Mc.getRandomValues=="function")return Mc.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}var jm,Uc,Ct,M4,Ei,xi=$(()=>{Um();jm=r=>r instanceof Uint8Array,Uc=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Ct=(r,e)=>r<<32-e|r>>>e,M4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!M4)throw new Error("Non little-endian hardware is not supported");Ei=class{clone(){return this._cloneInto()}}});var qc,Wm=$(()=>{Ch();xi();qc=class extends Ei{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Uc(this.buffer)}update(e){vi(this);let{view:t,buffer:n,blockLen:o}=this,i=(e=Rs(e)).length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a!==o)n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0);else{let c=Uc(e);for(;o<=i-s;s+=o)this.process(c,s)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){vi(this),Mm(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;(function(h,g,y,d){if(typeof h.setBigUint64=="function")return h.setBigUint64(g,y,d);let p=BigInt(32),b=BigInt(4294967295),m=Number(y>>p&b),x=Number(y&b),S=d?4:0,I=d?0:4;h.setUint32(g+S,m,d),h.setUint32(g+I,x,d)})(n,o-8,BigInt(8*this.length),i),this.process(n,0);let a=Uc(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}}});var j4,q4,dn,pn,Nh,$c,Hm=$(()=>{Wm();xi();j4=(r,e,t)=>r&e^r&t^e&t,q4=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),dn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),pn=new Uint32Array(64),Nh=class extends qc{constructor(){super(64,32,8,!1),this.A=0|dn[0],this.B=0|dn[1],this.C=0|dn[2],this.D=0|dn[3],this.E=0|dn[4],this.F=0|dn[5],this.G=0|dn[6],this.H=0|dn[7]}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|o,this.E=0|i,this.F=0|s,this.G=0|a,this.H=0|c}process(e,t){for(let h=0;h<16;h++,t+=4)pn[h]=e.getUint32(t,!1);for(let h=16;h<64;h++){let g=pn[h-15],y=pn[h-2],d=Ct(g,7)^Ct(g,18)^g>>>3,p=Ct(y,17)^Ct(y,19)^y>>>10;pn[h]=p+pn[h-7]+d+pn[h-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:u,H:f}=this;for(let h=0;h<64;h++){let g=f+(Ct(a,6)^Ct(a,11)^Ct(a,25))+((l=a)&c^~l&u)+q4[h]+pn[h]|0,y=(Ct(n,2)^Ct(n,13)^Ct(n,22))+j4(n,o,i)|0;f=u,u=c,c=a,a=s+g|0,s=i,i=o,o=n,n=g+y|0}var l;n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,o,i,s,a,c,u,f)}roundClean(){pn.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},$c=$m((()=>new Nh))});var qh={};fo(qh,{bitMask:()=>Ls,bytesToHex:()=>eo,bytesToNumberBE:()=>He,bytesToNumberLE:()=>Hc,concatBytes:()=>kr,createHmacDrbg:()=>jh,ensureBytes:()=>Pe,hexToBytes:()=>ki,hexToNumber:()=>Uh,numberToBytesBE:()=>Nt,numberToBytesLE:()=>Fc,validateObject:()=>gn});function eo(r){if(!Wc(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=H4[r[t]];return e}function Uh(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}function ki(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let t=new Uint8Array(e/2);for(let n=0;n<t.length;n++){let o=2*n,i=r.slice(o,o+2),s=Number.parseInt(i,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");t[n]=s}return t}function He(r){return Uh(eo(r))}function Hc(r){if(!Wc(r))throw new Error("Uint8Array expected");return Uh(eo(Uint8Array.from(r).reverse()))}function Nt(r,e){return ki(r.toString(16).padStart(2*e,"0"))}function Fc(r,e){return Nt(r,e).reverse()}function Pe(r,e,t){let n;if(typeof e=="string")try{n=ki(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else{if(!Wc(e))throw new Error(`${r} must be hex string or Uint8Array`);n=Uint8Array.from(e)}let o=n.length;if(typeof t=="number"&&o!==t)throw new Error(`${r} expected ${t} bytes, got ${o}`);return n}function kr(...r){let e=new Uint8Array(r.reduce(((n,o)=>n+o.length),0)),t=0;return r.forEach((n=>{if(!Wc(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length})),e}function jh(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=Mh(r),o=Mh(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...f)=>t(o,n,...f),c=(f=Mh())=>{o=a(Fm([0]),f),n=a(),f.length!==0&&(o=a(Fm([1]),f),n=a())},u=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,l=[];for(;f<e;){n=a();let h=n.slice();l.push(h),f+=n.length}return kr(...l)};return(f,l)=>{let h;for(s(),c(f);!(h=l(u()));)c();return s(),h}}function gn(r,e,t={}){let n=(o,i,s)=>{let a=F4[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=r[o];if(!(s&&c===void 0||a(c,r)))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(e))n(o,i,!1);for(let[o,i]of Object.entries(t))n(o,i,!0);return r}var $4,W4,Wc,H4,Ls,Mh,Fm,F4,Ai=$(()=>{BigInt(0);$4=BigInt(1),W4=BigInt(2),Wc=r=>r instanceof Uint8Array,H4=Array.from({length:256},((r,e)=>e.toString(16).padStart(2,"0")));Ls=r=>(W4<<BigInt(r-1))-$4,Mh=r=>new Uint8Array(r),Fm=r=>Uint8Array.from(r);F4={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||r instanceof Uint8Array,isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)}});function Ie(r,e){let t=r%e;return t>=Ce?t:e+t}function z4(r,e,t){if(t<=Ce||e<Ce)throw new Error("Expected power/modulo > 0");if(t===Ee)return Ce;let n=Ee;for(;e>Ce;)e&Ee&&(n=n*r%t),r=r*r%t,e>>=Ee;return n}function it(r,e,t){let n=r;for(;e-- >Ce;)n*=n,n%=t;return n}function Dc(r,e){if(r===Ce||e<=Ce)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Ie(r,e),n=e,o=Ce,i=Ee;for(;t!==Ce;){let s=n%t,a=o-i*(n/t);n=t,t=s,o=i,i=a}if(n!==Ee)throw new Error("invert: does not exist");return Ie(o,e)}function K4(r){let e=(r-Ee)/to,t,n,o;for(t=r-Ee,n=0;t%to===Ce;t/=to,n++);for(o=to;o<r&&z4(o,e,r)!==r-Ee;o++);if(n===1){let s=(r+Ee)/$h;return function(c,u){let f=c.pow(u,s);if(!c.eql(c.sqr(f),u))throw new Error("Cannot find square root");return f}}let i=(t+Ee)/to;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,f=a.pow(a.mul(a.ONE,o),t),l=a.pow(c,i),h=a.pow(c,t);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let d=a.sqr(h);g<u&&!a.eql(d,a.ONE);g++)d=a.sqr(d);let y=a.pow(f,Ee<<BigInt(u-g-1));f=a.sqr(y),l=a.mul(l,y),h=a.mul(h,f),u=g}return l}}function V4(r){if(r%$h===D4){let e=(r+Ee)/$h;return function(n,o){let i=n.pow(o,e);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%zm===Dm){let e=(r-Dm)/zm;return function(n,o){let i=n.mul(o,to),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,to),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),o))throw new Error("Cannot find square root");return u}}return K4(r)}function Km(r){let e=G4.reduce(((t,n)=>(t[n]="function",t)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"});return gn(r,e)}function Z4(r,e,t){if(t<Ce)throw new Error("Expected power > 0");if(t===Ce)return r.ONE;if(t===Ee)return e;let n=r.ONE,o=e;for(;t>Ce;)t&Ee&&(n=r.mul(n,o)),o=r.sqr(o),t>>=Ee;return n}function Y4(r,e){let t=new Array(e.length),n=e.reduce(((i,s,a)=>r.is0(s)?i:(t[a]=i,r.mul(i,s))),r.ONE),o=r.inv(n);return e.reduceRight(((i,s,a)=>r.is0(s)?i:(t[a]=r.mul(i,t[a]),r.mul(i,s))),o),t}function Wh(r,e){let t=e!==void 0?e:r.toString(2).length;return{nBitLength:t,nByteLength:Math.ceil(t/8)}}function Vm(r,e,t=!1,n={}){if(r<=Ce)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=Wh(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=V4(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:Ls(o),ZERO:Ce,ONE:Ee,create:c=>Ie(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error("Invalid field element: expected bigint, got "+typeof c);return Ce<=c&&c<r},is0:c=>c===Ce,isOdd:c=>(c&Ee)===Ee,neg:c=>Ie(-c,r),eql:(c,u)=>c===u,sqr:c=>Ie(c*c,r),add:(c,u)=>Ie(c+u,r),sub:(c,u)=>Ie(c-u,r),mul:(c,u)=>Ie(c*u,r),pow:(c,u)=>Z4(a,c,u),div:(c,u)=>Ie(c*Dc(u,r),r),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>Dc(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Y4(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>t?Fc(c,i):Nt(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?Hc(c):He(c)}});return Object.freeze(a)}function Gm(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function Hh(r){let e=Gm(r);return e+Math.ceil(e/2)}function Zm(r,e,t=!1){let n=r.length,o=Gm(e),i=Hh(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=Ie(t?He(r):Hc(r),e-Ee)+Ee;return t?Fc(s,o):Nt(s,o)}var Ce,Ee,to,D4,$h,Dm,zm,G4,zc=$(()=>{Ai();Ce=BigInt(0),Ee=BigInt(1),to=BigInt(2),D4=BigInt(3),$h=BigInt(4),Dm=BigInt(5),zm=BigInt(8);BigInt(9),BigInt(16);G4=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"]});var Kc,Fh,Ym=$(()=>{Ch();xi();Kc=class extends Ei{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Nm(e);let n=Rs(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return vi(this),this.iHash.update(e),this}digestInto(e){vi(this),Ph(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return e.finished=o,e.destroyed=i,e.blockLen=s,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Fh=(r,e,t)=>new Kc(r,e).update(t).digest();Fh.create=(r,e)=>new Kc(r,e)});function Jm(r,e){let t=(o,i)=>{let s=i.negate();return o?s:i},n=o=>({windows:Math.ceil(e/o)+1,windowSize:2**(o-1)});return{constTimeNegate:t,unsafeLadder(o,i){let s=r.ZERO,a=o;for(;i>J4;)i&Dh&&(s=s.add(a)),a=a.double(),i>>=Dh;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],u=o,f=u;for(let l=0;l<s;l++){f=u,c.push(f);for(let h=1;h<a;h++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),u=r.ZERO,f=r.BASE,l=BigInt(2**o-1),h=2**o,g=BigInt(o);for(let y=0;y<a;y++){let d=y*c,p=Number(s&l);s>>=g,p>c&&(p-=h,s+=Dh);let b=d,m=d+Math.abs(p)-1,x=y%2!=0,S=p<0;p===0?f=f.add(t(x,i[b])):u=u.add(t(S,i[m]))}return{p:u,f}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,u=i.get(o);return u||(u=this.precomputeWindow(o,c),c!==1&&i.set(o,a(u))),this.wNAF(c,u,s)}}}function zh(r){return Km(r.Fp),gn(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze(J(z(z({},Wh(r.n,r.nBitLength)),r),{p:r.Fp.ORDER}))}var J4,Dh,Xm=$(()=>{zc();Ai();J4=BigInt(0),Dh=BigInt(1)});function eA(r){let e=(function(d){let p=zh(d);gn(p,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:b,Fp:m,a:x}=p;if(b){if(!m.eql(x,m.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof b!="object"||typeof b.beta!="bigint"||typeof b.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze(z({},p))})(r),{Fp:t}=e,n=e.toBytes||((y,d,p)=>{let b=d.toAffine();return kr(Uint8Array.from([4]),t.toBytes(b.x),t.toBytes(b.y))}),o=e.fromBytes||(y=>{let d=y.subarray(1);return{x:t.fromBytes(d.subarray(0,t.BYTES)),y:t.fromBytes(d.subarray(t.BYTES,2*t.BYTES))}});function i(y){let{a:d,b:p}=e,b=t.sqr(y),m=t.mul(b,y);return t.add(t.add(m,t.mul(y,d)),p)}if(!t.eql(t.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(y){return typeof y=="bigint"&&Ar<y&&y<e.n}function a(y){if(!s(y))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(y){let{allowedPrivateKeyLengths:d,nByteLength:p,wrapPrivateKey:b,n:m}=e;if(d&&typeof y!="bigint"){if(y instanceof Uint8Array&&(y=eo(y)),typeof y!="string"||!d.includes(y.length))throw new Error("Invalid key");y=y.padStart(2*p,"0")}let x;try{x=typeof y=="bigint"?y:He(Pe("private key",y,p))}catch(S){throw new Error(`private key must be ${p} bytes, hex or bigint, not ${typeof y}`)}return b&&(x=Ie(x,m)),a(x),x}let u=new Map;function f(y){if(!(y instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(d,p,b){if(this.px=d,this.py=p,this.pz=b,d==null||!t.isValid(d))throw new Error("x required");if(p==null||!t.isValid(p))throw new Error("y required");if(b==null||!t.isValid(b))throw new Error("z required")}static fromAffine(d){let{x:p,y:b}=d||{};if(!d||!t.isValid(p)||!t.isValid(b))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let m=x=>t.eql(x,t.ZERO);return m(p)&&m(b)?l.ZERO:new l(p,b,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let p=t.invertBatch(d.map((b=>b.pz)));return d.map(((b,m)=>b.toAffine(p[m]))).map(l.fromAffine)}static fromHex(d){let p=l.fromAffine(o(Pe("pointHex",d)));return p.assertValidity(),p}static fromPrivateKey(d){return l.BASE.multiply(c(d))}_setWindowSize(d){this._WINDOW_SIZE=d,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:p}=this.toAffine();if(!t.isValid(d)||!t.isValid(p))throw new Error("bad point: x or y not FE");let b=t.sqr(p),m=i(d);if(!t.eql(b,m))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(t.isOdd)return!t.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.eql(t.mul(p,I),t.mul(x,m)),O=t.eql(t.mul(b,I),t.mul(S,m));return _&&O}negate(){return new l(this.px,t.neg(this.py),this.pz)}double(){let{a:d,b:p}=e,b=t.mul(p,Qm),{px:m,py:x,pz:S}=this,I=t.ZERO,_=t.ZERO,O=t.ZERO,w=t.mul(m,m),E=t.mul(x,x),v=t.mul(S,S),A=t.mul(m,x);return A=t.add(A,A),O=t.mul(m,S),O=t.add(O,O),I=t.mul(d,O),_=t.mul(b,v),_=t.add(I,_),I=t.sub(E,_),_=t.add(E,_),_=t.mul(I,_),I=t.mul(A,I),O=t.mul(b,O),v=t.mul(d,v),A=t.sub(w,v),A=t.mul(d,A),A=t.add(A,O),O=t.add(w,w),w=t.add(O,w),w=t.add(w,v),w=t.mul(w,A),_=t.add(_,w),v=t.mul(x,S),v=t.add(v,v),w=t.mul(v,A),I=t.sub(I,w),O=t.mul(v,E),O=t.add(O,O),O=t.add(O,O),new l(I,_,O)}add(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.ZERO,O=t.ZERO,w=t.ZERO,E=e.a,v=t.mul(e.b,Qm),A=t.mul(p,x),R=t.mul(b,S),L=t.mul(m,I),P=t.add(p,b),B=t.add(x,S);P=t.mul(P,B),B=t.add(A,R),P=t.sub(P,B),B=t.add(p,m);let T=t.add(x,I);return B=t.mul(B,T),T=t.add(A,L),B=t.sub(B,T),T=t.add(b,m),_=t.add(S,I),T=t.mul(T,_),_=t.add(R,L),T=t.sub(T,_),w=t.mul(E,B),_=t.mul(v,L),w=t.add(_,w),_=t.sub(R,w),w=t.add(R,w),O=t.mul(_,w),R=t.add(A,A),R=t.add(R,A),L=t.mul(E,L),B=t.mul(v,B),R=t.add(R,L),L=t.sub(A,L),L=t.mul(E,L),B=t.add(B,L),A=t.mul(R,B),O=t.add(O,A),A=t.mul(T,B),_=t.mul(P,_),_=t.sub(_,A),A=t.mul(P,R),w=t.mul(T,w),w=t.add(w,A),new l(_,O,w)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return g.wNAFCached(this,u,d,(p=>{let b=t.invertBatch(p.map((m=>m.pz)));return p.map(((m,x)=>m.toAffine(b[x]))).map(l.fromAffine)}))}multiplyUnsafe(d){let p=l.ZERO;if(d===Ar)return p;if(a(d),d===kt)return this;let{endo:b}=e;if(!b)return g.unsafeLadder(this,d);let{k1neg:m,k1:x,k2neg:S,k2:I}=b.splitScalar(d),_=p,O=p,w=this;for(;x>Ar||I>Ar;)x&kt&&(_=_.add(w)),I&kt&&(O=O.add(w)),w=w.double(),x>>=kt,I>>=kt;return m&&(_=_.negate()),S&&(O=O.negate()),O=new l(t.mul(O.px,b.beta),O.py,O.pz),_.add(O)}multiply(d){a(d);let p,b,m=d,{endo:x}=e;if(x){let{k1neg:S,k1:I,k2neg:_,k2:O}=x.splitScalar(m),{p:w,f:E}=this.wNAF(I),{p:v,f:A}=this.wNAF(O);w=g.constTimeNegate(S,w),v=g.constTimeNegate(_,v),v=new l(t.mul(v.px,x.beta),v.py,v.pz),p=w.add(v),b=E.add(A)}else{let{p:S,f:I}=this.wNAF(m);p=S,b=I}return l.normalizeZ([p,b])[0]}multiplyAndAddUnsafe(d,p,b){let m=l.BASE,x=(I,_)=>_!==Ar&&_!==kt&&I.equals(m)?I.multiply(_):I.multiplyUnsafe(_),S=x(this,p).add(x(d,b));return S.is0()?void 0:S}toAffine(d){let{px:p,py:b,pz:m}=this,x=this.is0();d==null&&(d=x?t.ONE:t.inv(m));let S=t.mul(p,d),I=t.mul(b,d),_=t.mul(m,d);if(x)return{x:t.ZERO,y:t.ZERO};if(!t.eql(_,t.ONE))throw new Error("invZ was invalid");return{x:S,y:I}}isTorsionFree(){let{h:d,isTorsionFree:p}=e;if(d===kt)return!0;if(p)return p(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:p}=e;return d===kt?this:p?p(l,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(l,this,d)}toHex(d=!0){return eo(this.toRawBytes(d))}}l.BASE=new l(e.Gx,e.Gy,t.ONE),l.ZERO=new l(t.ZERO,t.ONE,t.ZERO);let h=e.nBitLength,g=Jm(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function ew(r){let e=(function(v){let A=zh(v);return gn(A,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze(z({lowS:!0},A))})(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(E){return Ie(E,n)}function a(E){return Dc(E,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:u,weierstrassEquation:f,isWithinCurveOrder:l}=eA(J(z({},e),{toBytes(E,v,A){let R=v.toAffine(),L=t.toBytes(R.x),P=kr;return A?P(Uint8Array.from([v.hasEvenY()?2:3]),L):P(Uint8Array.from([4]),L,t.toBytes(R.y))},fromBytes(E){let v=E.length,A=E[0],R=E.subarray(1);if(v!==o||A!==2&&A!==3){if(v===i&&A===4)return{x:t.fromBytes(R.subarray(0,t.BYTES)),y:t.fromBytes(R.subarray(t.BYTES,2*t.BYTES))};throw new Error(`Point of length ${v} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}{let L=He(R);if(!(function(C){return Ar<C&&C<t.ORDER})(L))throw new Error("Point is not on curve");let P=f(L),B=t.sqrt(P);return!(1&~A)!=((B&kt)===kt)&&(B=t.neg(B)),{x:L,y:B}}}})),h=E=>eo(Nt(E,e.nByteLength));function g(E){return E>n>>kt}let y=(E,v,A)=>He(E.slice(v,A));class d{constructor(v,A,R){this.r=v,this.s=A,this.recovery=R,this.assertValidity()}static fromCompact(v){let A=e.nByteLength;return v=Pe("compactSignature",v,2*A),new d(y(v,0,A),y(v,A,2*A))}static fromDER(v){let{r:A,s:R}=ro.toSig(Pe("DER",v));return new d(A,R)}assertValidity(){if(!l(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!l(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(v){return new d(this.r,this.s,v)}recoverPublicKey(v){let{r:A,s:R,recovery:L}=this,P=x(Pe("msgHash",v));if(L==null||![0,1,2,3].includes(L))throw new Error("recovery id invalid");let B=L===2||L===3?A+e.n:A;if(B>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let T=1&L?"03":"02",C=c.fromHex(T+h(B)),M=a(B),N=s(-P*M),W=s(R*M),D=c.BASE.multiplyAndAddUnsafe(C,N,W);if(!D)throw new Error("point at infinify");return D.assertValidity(),D}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new d(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return ki(this.toDERHex())}toDERHex(){return ro.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return ki(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}let p={isValidPrivateKey(E){try{return u(E),!0}catch(v){return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let E=Hh(e.n);return Zm(e.randomBytes(E),e.n)},precompute:(E=8,v=c.BASE)=>(v._setWindowSize(E),v.multiply(BigInt(3)),v)};function b(E){let v=E instanceof Uint8Array,A=typeof E=="string",R=(v||A)&&E.length;return v?R===o||R===i:A?R===2*o||R===2*i:E instanceof c}let m=e.bits2int||function(E){let v=He(E),A=8*E.length-e.nBitLength;return A>0?v>>BigInt(A):v},x=e.bits2int_modN||function(E){return s(m(E))},S=Ls(e.nBitLength);function I(E){if(typeof E!="bigint")throw new Error("bigint expected");if(!(Ar<=E&&E<S))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Nt(E,e.nByteLength)}function _(E,v,A=O){if(["recovered","canonical"].some((q=>q in A)))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:L}=e,{lowS:P,prehash:B,extraEntropy:T}=A;P==null&&(P=!0),E=Pe("msgHash",E),B&&(E=Pe("prehashed msgHash",R(E)));let C=x(E),M=u(v),N=[I(M),I(C)];if(T!=null){let q=T===!0?L(t.BYTES):T;N.push(Pe("extraEntropy",q))}let W=kr(...N),D=C;return{seed:W,k2sig:function(K){let X=m(K);if(!l(X))return;let oe=a(X),ne=c.BASE.multiply(X).toAffine(),ee=s(ne.x);if(ee===Ar)return;let pe=s(oe*s(D+ee*M));if(pe===Ar)return;let ce=(ne.x===ee?0:2)|Number(ne.y&kt),Te=pe;return P&&g(pe)&&(Te=(function(ge){return g(ge)?s(-ge):ge})(pe),ce^=1),new d(ee,Te,ce)}}}let O={lowS:e.lowS,prehash:!1},w={lowS:e.lowS,prehash:!1};return c.BASE._setWindowSize(8),{CURVE:e,getPublicKey:function(v,A=!0){return c.fromPrivateKey(v).toRawBytes(A)},getSharedSecret:function(v,A,R=!0){if(b(v))throw new Error("first arg must be private key");if(!b(A))throw new Error("second arg must be public key");return c.fromHex(A).multiply(u(v)).toRawBytes(R)},sign:function(v,A,R=O){let{seed:L,k2sig:P}=_(v,A,R),B=e;return jh(B.hash.outputLen,B.nByteLength,B.hmac)(L,P)},verify:function(v,A,R,L=w){var ne;let P=v;if(A=Pe("msgHash",A),R=Pe("publicKey",R),"strict"in L)throw new Error("options.strict was renamed to lowS");let{lowS:B,prehash:T}=L,C,M;try{if(typeof P=="string"||P instanceof Uint8Array)try{C=d.fromDER(P)}catch(ee){if(!(ee instanceof ro.Err))throw ee;C=d.fromCompact(P)}else{if(typeof P!="object"||typeof P.r!="bigint"||typeof P.s!="bigint")throw new Error("PARSE");{let{r:ee,s:pe}=P;C=new d(ee,pe)}}M=c.fromHex(R)}catch(ee){if(ee.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(B&&C.hasHighS())return!1;T&&(A=e.hash(A));let{r:N,s:W}=C,D=x(A),q=a(W),K=s(D*q),X=s(N*q),oe=(ne=c.BASE.multiplyAndAddUnsafe(M,K,X))==null?void 0:ne.toAffine();return!!oe&&s(oe.x)===N},ProjectivePoint:c,Signature:d,utils:p}}var X4,Q4,ro,Ar,kt,Qm,tw=$(()=>{zc();Ai();Ai();Xm();({bytesToNumberBE:X4,hexToBytes:Q4}=qh),ro={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=ro;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(128&n[0])throw new e("Invalid signature integer: negative");if(n[0]===0&&!(128&n[1]))throw new e("Invalid signature integer: unnecessary leading zero");return{d:X4(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=ro,t=typeof r=="string"?Q4(r):r;if(!(t instanceof Uint8Array))throw new Error("ui8a expected");let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:o,l:i}=ro._parseInt(t.subarray(2)),{d:s,l:a}=ro._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,s}},hexFromSig(r){let e=u=>8&Number.parseInt(u[0],16)?"00"+u:u,t=u=>{let f=u.toString(16);return 1&f.length?`0${f}`:f},n=e(t(r.s)),o=e(t(r.r)),i=n.length/2,s=o.length/2,a=t(i),c=t(s);return`30${t(s+i+4)}02${c}${o}02${a}${n}`}},Ar=BigInt(0),kt=BigInt(1);BigInt(2);Qm=BigInt(3);BigInt(4)});function tA(r){return{hash:r,hmac:(e,...t)=>Fh(r,e,qm(...t)),randomBytes:jc}}function rw(r,e){let t=n=>ew(z(z({},r),tA(n)));return Object.freeze(J(z({},t(e)),{create:t}))}var nw=$(()=>{Ym();xi();tw();});function aw(r){let e=Yc,t=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=r*r*r%e,f=u*u*r%e,l=it(f,t,e)*f%e,h=it(l,t,e)*f%e,g=it(h,Gc,e)*u%e,y=it(g,o,e)*g%e,d=it(y,i,e)*y%e,p=it(d,a,e)*d%e,b=it(p,c,e)*p%e,m=it(b,a,e)*d%e,x=it(m,t,e)*f%e,S=it(x,s,e)*y%e,I=it(S,n,e)*u%e,_=it(I,Gc,e);if(!Vh.eql(Vh.sqr(_),r))throw new Error("Cannot find square root");return _}function Zc(r,...e){let t=iw[r];if(t===void 0){let n=$c(Uint8Array.from(r,(o=>o.charCodeAt(0))));t=kr(n,n),iw[r]=t}return $c(kr(t,...e))}function Zh(r){let e=no.utils.normPrivateKeyToScalar(r),t=Jh.fromPrivateKey(e);return{scalar:t.hasEvenY()?e:Ps(-e),bytes:Yh(t)}}function uw(r){if(!cw(r))throw new Error("bad x: need 0 < x < p");let e=Kh(r*r),t=aw(Kh(e*r+BigInt(7)));t%Gc!==Jc&&(t=Kh(-t));let n=new Jh(r,t,sw);return n.assertValidity(),n}function lw(...r){return Ps(He(Zc("BIP0340/challenge",...r)))}function rA(r){return Zh(r).bytes}function nA(r,e,t=jc(32)){let n=Pe("message",r),{bytes:o,scalar:i}=Zh(e),s=Pe("auxRand",t,32),a=Gh(i^He(Zc("BIP0340/aux",s))),c=Zc("BIP0340/nonce",a,o,n),u=Ps(He(c));if(u===Jc)throw new Error("sign failed: k is zero");let{bytes:f,scalar:l}=Zh(u),h=lw(f,o,n),g=new Uint8Array(64);if(g.set(f,0),g.set(Gh(Ps(l+h*i)),32),!fw(g,n,o))throw new Error("sign: Invalid signature produced");return g}function fw(r,e,t){let n=Pe("signature",r,64),o=Pe("message",e),i=Pe("publicKey",t,32);try{let f=uw(He(i)),l=He(n.subarray(0,32));if(!cw(l))return!1;let h=He(n.subarray(32,64));if(!(typeof(u=h)=="bigint"&&Jc<u&&u<Vc))return!1;let g=lw(Gh(l),Yh(f),o),y=(s=f,a=h,c=Ps(-g),Jh.BASE.multiplyAndAddUnsafe(s,a,c));return!(!y||!y.hasEvenY()||y.toAffine().x!==l)}catch(f){return!1}var s,a,c,u}var Yc,Vc,sw,Gc,ow,Vh,no,Jc,cw,iw,Yh,Gh,Kh,Ps,Jh,_i,hw=$(()=>{Hm();xi();zc();Ai();nw();Yc=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Vc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),sw=BigInt(1),Gc=BigInt(2),ow=(r,e)=>(r+e/Gc)/e;Vh=Vm(Yc,void 0,void 0,{sqrt:aw}),no=rw({a:BigInt(0),b:BigInt(7),Fp:Vh,n:Vc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=Vc,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-sw*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=ow(i*r,e),c=ow(-n*r,e),u=Ie(r-a*t-c*o,e),f=Ie(-a*n-c*i,e),l=u>s,h=f>s;if(l&&(u=e-u),h&&(f=e-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},$c),Jc=BigInt(0),cw=r=>typeof r=="bigint"&&Jc<r&&r<Yc,iw={};Yh=r=>r.toRawBytes(!0).slice(1),Gh=r=>Nt(r,32),Kh=r=>Ie(r,Yc),Ps=r=>Ie(r,Vc),Jh=no.ProjectivePoint;_i={getPublicKey:rA,sign:nA,verify:fw,utils:{randomPrivateKey:no.utils.randomPrivateKey,lift_x:uw,pointToBytes:Yh,numberToBytesBE:Nt,bytesToNumberBE:He,taggedHash:Zc,mod:Ie}}});var Xc,dw=$(()=>{Xc=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0});function Ke(r){if(!Xh(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=iA[r[t]];return e}function oo(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let t=new Uint8Array(e/2);for(let n=0;n<t.length;n++){let o=2*n,i=r.slice(o,o+2),s=Number.parseInt(i,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");t[n]=s}return t}function sA(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function yn(r){if(typeof r=="string"&&(r=sA(r)),!Xh(r))throw new Error("expected Uint8Array, got "+typeof r);return r}function Cs(...r){let e=new Uint8Array(r.reduce(((n,o)=>n+o.length),0)),t=0;return r.forEach((n=>{if(!Xh(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length})),e}function Qh(r){let e=n=>r().update(yn(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function ed(r=32){if(Xc&&typeof Xc.getRandomValues=="function")return Xc.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}var Xh,Qc,Mt,oA,iA,Si,Bi=$(()=>{dw();Xh=r=>r instanceof Uint8Array,Qc=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Mt=(r,e)=>r<<32-e|r>>>e,oA=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!oA)throw new Error("Non little-endian hardware is not supported");iA=Array.from({length:256},((r,e)=>e.toString(16).padStart(2,"0")));Si=class{clone(){return this._cloneInto()}}});function td(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function aA(r){if(typeof r!="boolean")throw new Error(`Expected boolean, not ${r}`)}function pw(r,...e){if(!(r instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function cA(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");td(r.outputLen),td(r.blockLen)}function uA(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function lA(r,e){pw(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var st,eu=$(()=>{st={number:td,bool:aA,bytes:pw,hash:cA,exists:uA,output:lA}});var tu,gw=$(()=>{eu();Bi();tu=class extends Si{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Qc(this.buffer)}update(e){st.exists(this);let{view:t,buffer:n,blockLen:o}=this,i=(e=yn(e)).length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a!==o)n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0);else{let c=Qc(e);for(;o<=i-s;s+=o)this.process(c,s)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){st.exists(this),st.output(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;(function(h,g,y,d){if(typeof h.setBigUint64=="function")return h.setBigUint64(g,y,d);let p=BigInt(32),b=BigInt(4294967295),m=Number(y>>p&b),x=Number(y&b),S=d?4:0,I=d?0:4;h.setUint32(g+S,m,d),h.setUint32(g+I,x,d)})(n,o-8,BigInt(8*this.length),i),this.process(n,0);let a=Qc(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}}});var fA,hA,bn,mn,ru,rd,io,yw=$(()=>{gw();Bi();fA=(r,e,t)=>r&e^r&t^e&t,hA=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),bn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),mn=new Uint32Array(64),ru=class extends tu{constructor(){super(64,32,8,!1),this.A=0|bn[0],this.B=0|bn[1],this.C=0|bn[2],this.D=0|bn[3],this.E=0|bn[4],this.F=0|bn[5],this.G=0|bn[6],this.H=0|bn[7]}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|o,this.E=0|i,this.F=0|s,this.G=0|a,this.H=0|c}process(e,t){for(let h=0;h<16;h++,t+=4)mn[h]=e.getUint32(t,!1);for(let h=16;h<64;h++){let g=mn[h-15],y=mn[h-2],d=Mt(g,7)^Mt(g,18)^g>>>3,p=Mt(y,17)^Mt(y,19)^y>>>10;mn[h]=p+mn[h-7]+d+mn[h-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:u,H:f}=this;for(let h=0;h<64;h++){let g=f+(Mt(a,6)^Mt(a,11)^Mt(a,25))+((l=a)&c^~l&u)+hA[h]+mn[h]|0,y=(Mt(n,2)^Mt(n,13)^Mt(n,22))+fA(n,o,i)|0;f=u,u=c,c=a,a=s+g|0,s=i,i=o,o=n,n=g+y|0}var l;n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,o,i,s,a,c,u,f)}roundClean(){mn.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},rd=class extends ru{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},io=Qh((()=>new ru));Qh((()=>new rd))});function Oi(r){if(!Number.isSafeInteger(r))throw new Error(`Wrong integer: ${r}`)}function _r(...r){let e=(t,n)=>o=>t(n(o));return{encode:Array.from(r).reverse().reduce(((t,n)=>t?e(t,n.encode):n.encode),void 0),decode:r.reduce(((t,n)=>t?e(t,n.decode):n.decode),void 0)}}function Sr(r){return{encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return e.map((t=>{if(Oi(t),t<0||t>=r.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${r.length})`);return r[t]}))},decode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("alphabet.decode input should be array of strings");return e.map((t=>{if(typeof t!="string")throw new Error(`alphabet.decode: not string element=${t}`);let n=r.indexOf(t);if(n===-1)throw new Error(`Unknown letter: "${t}". Allowed: ${r}`);return n}))}}}function Br(r=""){if(typeof r!="string")throw new Error("join separator should be string");return{encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("join.encode input should be array of strings");for(let t of e)if(typeof t!="string")throw new Error(`join.encode: non-string input=${t}`);return e.join(r)},decode:e=>{if(typeof e!="string")throw new Error("join.decode input should be string");return e.split(r)}}}function ou(r,e="="){if(Oi(r),typeof e!="string")throw new Error("padding chr should be string");return{encode(t){if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("padding.encode input should be array of strings");for(let n of t)if(typeof n!="string")throw new Error(`padding.encode: non-string input=${n}`);for(;t.length*r%8;)t.push(e);return t},decode(t){if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("padding.encode input should be array of strings");for(let o of t)if(typeof o!="string")throw new Error(`padding.decode: non-string input=${o}`);let n=t.length;if(n*r%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;n>0&&t[n-1]===e;n--)if(!((n-1)*r%8))throw new Error("Invalid padding: string has too much padding");return t.slice(0,n)}}}function xw(r){if(typeof r!="function")throw new Error("normalize fn should be function");return{encode:e=>e,decode:e=>r(e)}}function bw(r,e,t){if(e<2)throw new Error(`convertRadix: wrong from=${e}, base cannot be less than 2`);if(t<2)throw new Error(`convertRadix: wrong to=${t}, base cannot be less than 2`);if(!Array.isArray(r))throw new Error("convertRadix: data should be array");if(!r.length)return[];let n=0,o=[],i=Array.from(r);for(i.forEach((s=>{if(Oi(s),s<0||s>=e)throw new Error(`Wrong integer: ${s}`)}));;){let s=0,a=!0;for(let c=n;c<i.length;c++){let u=i[c],f=e*s+u;if(!Number.isSafeInteger(f)||e*s/e!==s||f-u!=e*s)throw new Error("convertRadix: carry overflow");if(s=f%t,i[c]=Math.floor(f/t),!Number.isSafeInteger(i[c])||i[c]*t+s!==f)throw new Error("convertRadix: carry overflow");a&&(i[c]?a=!1:n=c)}if(o.push(s),a)break}for(let s=0;s<r.length-1&&r[s]===0;s++)o.push(0);return o.reverse()}function nd(r,e,t,n){if(!Array.isArray(r))throw new Error("convertRadix2: data should be array");if(e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(t<=0||t>32)throw new Error(`convertRadix2: wrong to=${t}`);if(nu(e,t)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${t} carryBits=${nu(e,t)}`);let o=0,i=0,s=2**t-1,a=[];for(let c of r){if(Oi(c),c>=2**e)throw new Error(`convertRadix2: invalid data word=${c} from=${e}`);if(o=o<<e|c,i+e>32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${e}`);for(i+=e;i>=t;i-=t)a.push((o>>i-t&s)>>>0);o&=2**i-1}if(o=o<<t-i&s,!n&&i>=e)throw new Error("Excess padding");if(!n&&o)throw new Error(`Non-zero padding: ${o}`);return n&&i>0&&a.push(o>>>0),a}function wn(r,e=!1){if(Oi(r),r<=0||r>32)throw new Error("radix2: bits should be in (0..32]");if(nu(8,r)>32||nu(r,8)>32)throw new Error("radix2: carry overflow");return{encode:t=>{if(!(t instanceof Uint8Array))throw new Error("radix2.encode input should be Uint8Array");return nd(Array.from(t),8,r,!e)},decode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="number")throw new Error("radix2.decode input should be array of strings");return Uint8Array.from(nd(t,r,8,e))}}}function mw(r){if(typeof r!="function")throw new Error("unsafeWrapper fn should be function");return function(...e){try{return r.apply(null,e)}catch(t){}}}function Ns(r){let e=r>>25,t=(33554431&r)<<5;for(let n=0;n<vw.length;n++)(e>>n&1)==1&&(t^=vw[n]);return t}function Ew(r,e,t=1){let n=r.length,o=1;for(let i=0;i<n;i++){let s=r.charCodeAt(i);if(s<33||s>126)throw new Error(`Invalid prefix (${r})`);o=Ns(o)^s>>5}o=Ns(o);for(let i=0;i<n;i++)o=Ns(o)^31&r.charCodeAt(i);for(let i of e)o=Ns(o)^i;for(let i=0;i<6;i++)o=Ns(o);return o^=t,sd.encode(nd([o%2**30],30,5,!1))}function Aw(r){let e=r==="bech32"?1:734539939,t=wn(5),n=t.decode,o=t.encode,i=mw(n);function s(a,c=90){if(typeof a!="string")throw new Error("bech32.decode input should be string, not "+typeof a);if(a.length<8||c!==!1&&a.length>c)throw new TypeError(`Wrong string length: ${a.length} (${a}). Expected (8..${c})`);let u=a.toLowerCase();if(a!==u&&a!==a.toUpperCase())throw new Error("String must be lowercase or uppercase");let f=(a=u).lastIndexOf("1");if(f===0||f===-1)throw new Error('Letter "1" must be present between prefix and data only');let l=a.slice(0,f),h=a.slice(f+1);if(h.length<6)throw new Error("Data must be at least 6 characters long");let g=sd.decode(h).slice(0,-6),y=Ew(l,g,e);if(!h.endsWith(y))throw new Error(`Invalid checksum in ${a}: expected "${y}"`);return{prefix:l,words:g}}return{encode:function(c,u,f=90){if(typeof c!="string")throw new Error("bech32.encode prefix should be string, not "+typeof c);if(!Array.isArray(u)||u.length&&typeof u[0]!="number")throw new Error("bech32.encode words should be array of numbers, not "+typeof u);let l=c.length+7+u.length;if(f!==!1&&l>f)throw new TypeError(`Length ${l} exceeds limit ${f}`);return`${c=c.toLowerCase()}1${sd.encode(u)}${Ew(c,u,e)}`},decode:s,decodeToBytes:function(c){let{prefix:u,words:f}=s(c,!1);return{prefix:u,words:f,bytes:n(f)}},decodeUnsafe:mw(s),fromWords:n,fromWordsUnsafe:i,toWords:o}}var kw,nu,dA,pA,tr,gA,od,id,ww,yA,sd,vw,so,bA,mA,wA,_w=$(()=>{kw=(r,e)=>e?kw(e,r%e):r,nu=(r,e)=>r+(e-kw(r,e));dA=_r(wn(4),Sr("0123456789ABCDEF"),Br("")),pA=_r(wn(5),Sr("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),ou(5),Br(""));_r(wn(5),Sr("0123456789ABCDEFGHIJKLMNOPQRSTUV"),ou(5),Br("")),_r(wn(5),Sr("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),Br(""),xw((r=>r.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))));tr=_r(wn(6),Sr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),ou(6),Br("")),gA=_r(wn(6),Sr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),ou(6),Br("")),od=r=>_r((function(t){return Oi(t),{encode:n=>{if(!(n instanceof Uint8Array))throw new Error("radix.encode input should be Uint8Array");return bw(Array.from(n),256,t)},decode:n=>{if(!Array.isArray(n)||n.length&&typeof n[0]!="number")throw new Error("radix.decode input should be array of strings");return Uint8Array.from(bw(n,t,256))}}})(58),Sr(r),Br("")),id=od("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");od("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),od("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz");ww=[0,2,3,5,6,7,9,10,11],yA={encode(r){let e="";for(let t=0;t<r.length;t+=8){let n=r.subarray(t,t+8);e+=id.encode(n).padStart(ww[n.length],"1")}return e},decode(r){let e=[];for(let t=0;t<r.length;t+=11){let n=r.slice(t,t+11),o=ww.indexOf(n.length),i=id.decode(n);for(let s=0;s<i.length-o;s++)if(i[s]!==0)throw new Error("base58xmr: wrong padding");e=e.concat(Array.from(i.slice(i.length-o)))}return Uint8Array.from(e)}},sd=_r(Sr("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),Br("")),vw=[996825010,642813549,513874426,1027748829,705979059];so=Aw("bech32");Aw("bech32m");bA={encode:r=>new TextDecoder().decode(r),decode:r=>new TextEncoder().encode(r)},mA=_r(wn(4),Sr("0123456789abcdef"),Br(""),xw((r=>{if(typeof r!="string"||r.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof r} with length ${r.length}`);return r.toLowerCase()}))),wA={utf8:bA,hex:mA,base16:dA,base32:pA,base64:tr,base64url:gA,base58:id,base58xmr:yA};Object.keys(wA).join(", ")});function Sw(r,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(r,e)}function Bw(r,e){if(r.length!==e.length)return!1;let t=0;for(let n=0;n<r.length;n++)t|=r[n]^e[n];return t===0}var Ne,vA,Ow,iu=$(()=>{Ne=r=>new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4)),vA=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!vA)throw new Error("Non little-endian hardware is not supported");Ow=(r,e)=>(Object.assign(e,r),e)});function su(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function ad(r){if(typeof r!="boolean")throw new Error(`boolean expected, not ${r}`)}function EA(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Ut(r,...e){if(!EA(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}var cd=$(()=>{});function fd(r){return r<<1^283&-(r>>7)}function Ii(r,e){let t=0;for(;e>0;e>>=1)t^=r&-(1&e),r=fd(r);return t}function Rw(r,e){if(r.length!==256)throw new Error("Wrong sbox length");let t=new Uint32Array(256).map(((u,f)=>e(r[f]))),n=t.map(ud),o=n.map(ud),i=o.map(ud),s=new Uint32Array(65536),a=new Uint32Array(65536),c=new Uint16Array(65536);for(let u=0;u<256;u++)for(let f=0;f<256;f++){let l=256*u+f;s[l]=t[u]^n[f],a[l]=o[u]^i[f],c[l]=r[u]<<8|r[f]}return{sbox:r,sbox2:c,T0:t,T1:n,T2:o,T3:i,T01:s,T23:a}}function Pw(r){Ut(r);let e=r.length;if(![16,24,32].includes(e))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${e}`);let{sbox2:t}=hd,n=Ne(r),o=n.length,i=c=>rr(t,c,c,c,c),s=new Uint32Array(e+28);s.set(n);for(let c=o;c<s.length;c++){let u=s[c-1];c%o==0?u=i((a=u)<<24|a>>>8)^kA[c/o-1]:o>6&&c%o==4&&(u=i(u)),s[c]=s[c-o]^u}var a;return s}function AA(r){let e=Pw(r),t=e.slice(),n=e.length,{sbox2:o}=hd,{T0:i,T1:s,T2:a,T3:c}=Lw;for(let u=0;u<n;u+=4)for(let f=0;f<4;f++)t[u+f]=e[n-u-4+f];e.fill(0);for(let u=4;u<n-4;u++){let f=t[u],l=rr(o,f,f,f,f);t[u]=i[255&l]^s[l>>>8&255]^a[l>>>16&255]^c[l>>>24]}return t}function vn(r,e,t,n,o,i){return r[t<<8&65280|n>>>8&255]^e[o>>>8&65280|i>>>24&255]}function rr(r,e,t,n,o){return r[255&e|65280&t]|r[n>>>16&255|o>>>16&65280]<<16}function Iw(r,e,t,n,o){let{sbox2:i,T01:s,T23:a}=hd,c=0;e^=r[c++],t^=r[c++],n^=r[c++],o^=r[c++];let u=r.length/4-2;for(let f=0;f<u;f++){let l=r[c++]^vn(s,a,e,t,n,o),h=r[c++]^vn(s,a,t,n,o,e),g=r[c++]^vn(s,a,n,o,e,t),y=r[c++]^vn(s,a,o,e,t,n);e=l,t=h,n=g,o=y}return{s0:r[c++]^rr(i,e,t,n,o),s1:r[c++]^rr(i,t,n,o,e),s2:r[c++]^rr(i,n,o,e,t),s3:r[c++]^rr(i,o,e,t,n)}}function _A(r,e,t,n,o){let{sbox2:i,T01:s,T23:a}=Lw,c=0;e^=r[c++],t^=r[c++],n^=r[c++],o^=r[c++];let u=r.length/4-2;for(let f=0;f<u;f++){let l=r[c++]^vn(s,a,e,o,n,t),h=r[c++]^vn(s,a,t,e,o,n),g=r[c++]^vn(s,a,n,t,e,o),y=r[c++]^vn(s,a,o,n,t,e);e=l,t=h,n=g,o=y}return{s0:r[c++]^rr(i,e,o,n,t),s1:r[c++]^rr(i,t,e,o,n),s2:r[c++]^rr(i,n,t,e,o),s3:r[c++]^rr(i,o,n,t,e)}}function Tw(r,e){if(!e)return new Uint8Array(r);if(Ut(e),e.length<r)throw new Error(`aes: wrong destination length, expected at least ${r}, got: ${e.length}`);return e}var ao,ld,xA,ud,hd,Lw,kA,dd,Cw=$(()=>{iu();cd();ao=16;ld=(()=>{let r=new Uint8Array(256);for(let t=0,n=1;t<256;t++,n^=fd(n))r[t]=n;let e=new Uint8Array(256);e[0]=99;for(let t=0;t<255;t++){let n=r[255-t];n|=n<<8,e[r[t]]=255&(n^n>>4^n>>5^n>>6^n>>7^99)}return e})(),xA=ld.map(((r,e)=>ld.indexOf(e))),ud=r=>r<<8|r>>>24;hd=Rw(ld,(r=>Ii(r,3)<<24|r<<16|r<<8|Ii(r,2))),Lw=Rw(xA,(r=>Ii(r,11)<<24|Ii(r,13)<<16|Ii(r,9)<<8|Ii(r,14))),kA=(()=>{let r=new Uint8Array(16);for(let e=0,t=1;e<16;e++,t=fd(t))r[e]=t;return r})();dd=Ow({blockSize:16,nonceLength:16},(function(e,t,n={}){Ut(e),Ut(t,16);let o=!n.disablePadding;return{encrypt:(i,s)=>{let a=Pw(e),{b:c,o:u,out:f}=(function(m,x,S){let I=m.length,_=I%ao;if(!x&&_!==0)throw new Error("aec/(cbc-ecb): unpadded plaintext with disabled padding");let O=Ne(m);if(x){let E=ao-_;E||(E=ao),I+=E}let w=Tw(I,S);return{b:O,o:Ne(w),out:w}})(i,o,s),l=Ne(t),h=l[0],g=l[1],y=l[2],d=l[3],p=0;for(;p+4<=c.length;)h^=c[p+0],g^=c[p+1],y^=c[p+2],d^=c[p+3],{s0:h,s1:g,s2:y,s3:d}=Iw(a,h,g,y,d),u[p++]=h,u[p++]=g,u[p++]=y,u[p++]=d;if(o){let b=(function(x){let S=new Uint8Array(16),I=Ne(S);S.set(x);let _=ao-x.length;for(let O=ao-_;O<ao;O++)S[O]=_;return I})(i.subarray(4*p));h^=b[0],g^=b[1],y^=b[2],d^=b[3],{s0:h,s1:g,s2:y,s3:d}=Iw(a,h,g,y,d),u[p++]=h,u[p++]=g,u[p++]=y,u[p++]=d}return a.fill(0),f},decrypt:(i,s)=>{(function(b){if(Ut(b),b.length%ao!=0)throw new Error("aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size 16")})(i);let a=AA(e),c=Ne(t),u=Tw(i.length,s),f=Ne(i),l=Ne(u),h=c[0],g=c[1],y=c[2],d=c[3];for(let p=0;p+4<=f.length;){let b=h,m=g,x=y,S=d;h=f[p+0],g=f[p+1],y=f[p+2],d=f[p+3];let{s0:I,s1:_,s2:O,s3:w}=_A(a,h,g,y,d);l[p++]=I^b,l[p++]=_^m,l[p++]=O^x,l[p++]=w^S}return a.fill(0),(function(b,m){if(!m)return b;let x=b.length;if(!x)throw new Error("aes/pcks5: empty ciphertext not allowed");let S=b[x-1];if(S<=0||S>16)throw new Error(`aes/pcks5: wrong padding byte: ${S}`);let I=b.subarray(0,-S);for(let _=0;_<S;_++)if(b[x-_-1]!==S)throw new Error("aes/pcks5: wrong padding");return I})(u,o)}}}))});function ie(r,e){return r<<e|r>>>32-e}function pd(r){return r.byteOffset%4==0}function qw(r,e){let{allowShortKeys:t,extendNonceFn:n,counterLength:o,counterRight:i,rounds:s}=Sw({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof r!="function")throw new Error("core must be a function");return su(o),su(s),ad(i),ad(t),(a,c,u,f,l=0)=>{Ut(a),Ut(c),Ut(u);let h=u.length;if(f||(f=new Uint8Array(h)),Ut(f),su(l),l<0||l>=Nw)throw new Error("arx: counter overflow");if(f.length<h)throw new Error(`arx: output (${f.length}) is shorter than data (${h})`);let g=[],y,d,p=a.length;if(p===32)y=a.slice(),g.push(y),d=jw;else{if(p!==16||!t)throw new Error(`arx: invalid 32-byte key, got length=${p}`);y=new Uint8Array(32),y.set(a),y.set(a,16),d=OA,g.push(y)}pd(c)||(c=c.slice(),g.push(c));let b=Ne(y);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(d,b,Ne(c.subarray(0,16)),b),c=c.subarray(16)}let m=16-o;if(m!==c.length)throw new Error(`arx: nonce must be ${m} or 16 bytes`);if(m!==12){let S=new Uint8Array(12);S.set(c,i?0:12-c.length),c=S,g.push(c)}let x=Ne(c);for(!(function(I,_,O,w,E,v,A,R){let L=E.length,P=new Uint8Array(64),B=Ne(P),T=pd(E)&&pd(v),C=T?Ne(E):Mw,M=T?Ne(v):Mw;for(let N=0;N<L;A++){if(I(_,O,w,B,A,R),A>=Nw)throw new Error("arx: counter overflow");let W=Math.min(64,L-N);if(T&&W===64){let D=N/4;if(N%4!=0)throw new Error("arx: invalid block position");for(let q,K=0;K<16;K++)q=D+K,M[q]=C[q]^B[K];N+=64}else{for(let D,q=0;q<W;q++)D=N+q,v[D]=E[D]^P[q];N+=W}}})(r,d,b,x,u,f,l,s);g.length>0;)g.pop().fill(0);return f}}var Uw,SA,BA,OA,jw,Nw,Mw,$w=$(()=>{cd();iu();Uw=r=>Uint8Array.from(r.split("").map((e=>e.charCodeAt(0)))),SA=Uw("expand 16-byte k"),BA=Uw("expand 32-byte k"),OA=Ne(SA),jw=Ne(BA);jw.slice();Nw=2**32-1,Mw=new Uint32Array});function IA(r,e,t,n,o,i=20){let s=r[0],a=r[1],c=r[2],u=r[3],f=e[0],l=e[1],h=e[2],g=e[3],y=e[4],d=e[5],p=e[6],b=e[7],m=o,x=t[0],S=t[1],I=t[2],_=s,O=a,w=c,E=u,v=f,A=l,R=h,L=g,P=y,B=d,T=p,C=b,M=m,N=x,W=S,D=I;for(let K=0;K<i;K+=2)_=_+v|0,M=ie(M^_,16),P=P+M|0,v=ie(v^P,12),_=_+v|0,M=ie(M^_,8),P=P+M|0,v=ie(v^P,7),O=O+A|0,N=ie(N^O,16),B=B+N|0,A=ie(A^B,12),O=O+A|0,N=ie(N^O,8),B=B+N|0,A=ie(A^B,7),w=w+R|0,W=ie(W^w,16),T=T+W|0,R=ie(R^T,12),w=w+R|0,W=ie(W^w,8),T=T+W|0,R=ie(R^T,7),E=E+L|0,D=ie(D^E,16),C=C+D|0,L=ie(L^C,12),E=E+L|0,D=ie(D^E,8),C=C+D|0,L=ie(L^C,7),_=_+A|0,D=ie(D^_,16),T=T+D|0,A=ie(A^T,12),_=_+A|0,D=ie(D^_,8),T=T+D|0,A=ie(A^T,7),O=O+R|0,M=ie(M^O,16),C=C+M|0,R=ie(R^C,12),O=O+R|0,M=ie(M^O,8),C=C+M|0,R=ie(R^C,7),w=w+L|0,N=ie(N^w,16),P=P+N|0,L=ie(L^P,12),w=w+L|0,N=ie(N^w,8),P=P+N|0,L=ie(L^P,7),E=E+v|0,W=ie(W^E,16),B=B+W|0,v=ie(v^B,12),E=E+v|0,W=ie(W^E,8),B=B+W|0,v=ie(v^B,7);let q=0;n[q++]=s+_|0,n[q++]=a+O|0,n[q++]=c+w|0,n[q++]=u+E|0,n[q++]=f+v|0,n[q++]=l+A|0,n[q++]=h+R|0,n[q++]=g+L|0,n[q++]=y+P|0,n[q++]=d+B|0,n[q++]=p+T|0,n[q++]=b+C|0,n[q++]=m+M|0,n[q++]=x+N|0,n[q++]=S+W|0,n[q++]=I+D|0}var gd,Ww=$(()=>{$w();gd=qw(IA,{counterRight:!1,counterLength:4,allowShortKeys:!1})});var au,Ti,yd=$(()=>{eu();Bi();au=class extends Si{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,st.hash(e);let n=yn(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return st.exists(this),this.iHash.update(e),this}digestInto(e){st.exists(this),st.bytes(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return e.finished=o,e.destroyed=i,e.blockLen=s,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ti=(r,e,t)=>new au(r,e).update(t).digest();Ti.create=(r,e)=>new au(r,e)});function Fw(r,e,t){return st.hash(r),Ti(r,yn(t),yn(e))}function Dw(r,e,t,n=32){if(st.hash(r),st.number(n),n>255*r.outputLen)throw new Error("Length should be <= 255*HashLen");let o=Math.ceil(n/r.outputLen);t===void 0&&(t=Hw);let i=new Uint8Array(o*r.outputLen),s=Ti.create(r,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<o;u++)bd[0]=u+1,a.update(u===0?Hw:c).update(t).update(bd).digestInto(c),i.set(c,r.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),bd.fill(0),i.slice(0,n)}var bd,Hw,zw=$(()=>{eu();Bi();yd();bd=new Uint8Array([0]),Hw=new Uint8Array});function wd(r){if(!(r instanceof Object)||typeof r.kind!="number"||typeof r.content!="string"||typeof r.created_at!="number"||typeof r.pubkey!="string"||!r.pubkey.match(/^[a-f0-9]{64}$/)||!Array.isArray(r.tags))return!1;for(let e=0;e<r.tags.length;e++){let t=r.tags[e];if(!Array.isArray(t))return!1;for(let n=0;n<t.length;n++)if(typeof t[n]=="object")return!1}return!0}function LA(r){r.indexOf("://")===-1&&(r="wss://"+r);let e=new URL(r);return e.pathname=e.pathname.replace(/\/+/g,"/"),e.pathname.endsWith("/")&&(e.pathname=e.pathname.slice(0,-1)),(e.port==="80"&&e.protocol==="ws:"||e.port==="443"&&e.protocol==="wss:")&&(e.port=""),e.searchParams.sort(),e.hash="",e.toString()}function PA(r,e){let[t,n]=vd(r,(o=>e.id===o.id?0:e.created_at===o.created_at?-1:o.created_at-e.created_at));return n||r.splice(t,0,e),r}function CA(r,e){let[t,n]=vd(r,(o=>e.id===o.id?0:e.created_at===o.created_at?-1:e.created_at-o.created_at));return n||r.splice(t,0,e),r}function vd(r,e){let t=0,n=r.length-1;for(;t<=n;){let o=Math.floor((t+n)/2),i=e(r[o]);if(i===0)return[o,!0];i<0?n=o-1:t=o+1}return[t,!1]}function MA(r){if(!wd(r))throw new Error("can't serialize event with wrong or missing properties");return JSON.stringify([0,r.pubkey,r.created_at,r.kind,r.tags,r.content])}function cu(r){let e=io(jt.encode(MA(r)));return Ke(e)}function Zw(r){return 1e3<=r&&r<1e4||[1,2,4,5,6,7,8,16,40,41,42,43,44].includes(r)}function kd(r){return[0,3].includes(r)||1e4<=r&&r<2e4}function Yw(r){return 2e4<=r&&r<3e4}function fu(r){return 3e4<=r&&r<4e4}function $A(r){return Zw(r)?"regular":kd(r)?"replaceable":Yw(r)?"ephemeral":fu(r)?"parameterized":"unknown"}function WA(r,e){let t=e instanceof Array?e:[e];return wd(r)&&t.includes(r.kind)||!1}function Od(r,e){let t=e.length+3,n=r.indexOf(`"${e}":`)+t,o=r.slice(n).indexOf('"')+n+1;return r.slice(o,o+64)}function cv(r,e){let t=e.length,n=r.indexOf(`"${e}":`)+t+3,o=r.slice(n),i=Math.min(o.indexOf(","),o.indexOf("}"));return parseInt(o.slice(0,i),10)}function J6(r){let e=r.slice(0,22).indexOf('"EVENT"');if(e===-1)return null;let t=r.slice(e+7+1).indexOf('"');if(t===-1)return null;let n=e+7+1+t,o=r.slice(n+1,80).indexOf('"');if(o===-1)return null;let i=n+1+o;return r.slice(n+1,i)}function X6(r,e){return e===Od(r,"id")}function Q6(r,e){return e===Od(r,"pubkey")}function e_(r,e){return e===cv(r,"kind")}function r_(r,e){return{kind:sv,created_at:Math.floor(Date.now()/1e3),tags:[["relay",r],["challenge",e]],content:""}}function o_(r){try{return r.startsWith("nostr:")&&(r=r.substring(6)),hu(r)}catch(e){return{type:"invalid",data:null}}}function hu(r){var o,i,s,a,c,u,f;let{prefix:e,words:t}=so.decode(r,Id),n=new Uint8Array(so.fromWords(t));switch(e){case"nprofile":{let l=md(n);if(!((o=l[0])!=null&&o[0]))throw new Error("missing TLV 0 for nprofile");if(l[0][0].length!==32)throw new Error("TLV 0 should be 32 bytes");return{type:"nprofile",data:{pubkey:Ke(l[0][0]),relays:l[1]?l[1].map((h=>Or.decode(h))):[]}}}case"nevent":{let l=md(n);if(!((i=l[0])!=null&&i[0]))throw new Error("missing TLV 0 for nevent");if(l[0][0].length!==32)throw new Error("TLV 0 should be 32 bytes");if(l[2]&&l[2][0].length!==32)throw new Error("TLV 2 should be 32 bytes");if(l[3]&&l[3][0].length!==4)throw new Error("TLV 3 should be 4 bytes");return{type:"nevent",data:{id:Ke(l[0][0]),relays:l[1]?l[1].map((h=>Or.decode(h))):[],author:(s=l[2])!=null&&s[0]?Ke(l[2][0]):void 0,kind:(a=l[3])!=null&&a[0]?parseInt(Ke(l[3][0]),16):void 0}}}case"naddr":{let l=md(n);if(!((c=l[0])!=null&&c[0]))throw new Error("missing TLV 0 for naddr");if(!((u=l[2])!=null&&u[0]))throw new Error("missing TLV 2 for naddr");if(l[2][0].length!==32)throw new Error("TLV 2 should be 32 bytes");if(!((f=l[3])!=null&&f[0]))throw new Error("missing TLV 3 for naddr");if(l[3][0].length!==4)throw new Error("TLV 3 should be 4 bytes");return{type:"naddr",data:{identifier:Or.decode(l[0][0]),pubkey:Ke(l[2][0]),kind:parseInt(Ke(l[3][0]),16),relays:l[1]?l[1].map((h=>Or.decode(h))):[]}}}case"nsec":return{type:e,data:n};case"npub":case"note":return{type:e,data:Ke(n)};default:throw new Error(`unknown prefix ${e}`)}}function md(r){let e={},t=r;for(;t.length>0;){let n=t[0],o=t[1],i=t.slice(2,2+o);if(t=t.slice(2+o),i.length<o)throw new Error(`not enough data to read on TLV ${n}`);e[n]=e[n]||[],e[n].push(i)}return e}function i_(r){return pu("nsec",r)}function s_(r){return pu("npub",oo(r))}function a_(r){return pu("note",oo(r))}function du(r,e){let t=so.toWords(e);return so.encode(r,t,Id)}function pu(r,e){return du(r,e)}function c_(r){return du("nprofile",Td({0:[oo(r.pubkey)],1:(r.relays||[]).map((e=>jt.encode(e)))}))}function u_(r){let e;return r.kind!==void 0&&(e=(function(n){let o=new Uint8Array(4);return o[0]=n>>24&255,o[1]=n>>16&255,o[2]=n>>8&255,o[3]=255&n,o})(r.kind)),du("nevent",Td({0:[oo(r.id)],1:(r.relays||[]).map((t=>jt.encode(t))),2:r.author?[oo(r.author)]:[],3:e?[new Uint8Array(e)]:[]}))}function l_(r){let e=new ArrayBuffer(4);return new DataView(e).setUint32(0,r.kind,!1),du("naddr",Td({0:[jt.encode(r.identifier)],1:(r.relays||[]).map((t=>jt.encode(t))),2:[oo(r.pubkey)],3:[new Uint8Array(e)]}))}function Td(r){let e=[];return Object.entries(r).reverse().forEach((([t,n])=>{n.forEach((o=>{let i=new Uint8Array(o.length+2);i.set([parseInt(t)],0),i.set([o.length],1),i.set(o,2),e.push(i)}))})),Cs(...e)}async function lv(r,e,t){let n=r instanceof Uint8Array?Ke(r):r,o=fv(no.getSharedSecret(n,"02"+e)),i=Uint8Array.from(ed(16)),s=jt.encode(t),a=dd(o,i).encrypt(s);return`${tr.encode(new Uint8Array(a))}?iv=${tr.encode(new Uint8Array(i.buffer))}`}async function h_(r,e,t){let n=r instanceof Uint8Array?Ke(r):r,[o,i]=t.split("?iv="),s=fv(no.getSharedSecret(n,"02"+e)),a=tr.decode(i),c=tr.decode(o),u=dd(s,a).decrypt(c);return Or.decode(u)}function fv(r){return r.slice(1,33)}function g_(r){gu=r}async function y_(r,e=""){try{let t=`https://${r}/.well-known/nostr.json?name=${e}`,n=await gu(t,{redirect:"manual"});if(n.status!==200)throw Error("Wrong response code");return(await n.json()).names}catch(t){return{}}}async function hv(r){var o;let e=r.match(Rd);if(!e)return null;let[,t="_",n]=e;try{let i=`https://${n}/.well-known/nostr.json?name=${t}`,s=await gu(i,{redirect:"manual"});if(s.status!==200)throw Error("Wrong response code");let a=await s.json(),c=a.names[t];return c?{pubkey:c,relays:(o=a.relays)==null?void 0:o[c]}:null}catch(i){return null}}async function b_(r,e){let t=await hv(e);return!!t&&t.pubkey===r}function w_(r){let e={reply:void 0,root:void 0,mentions:[],profiles:[],quotes:[]},t,n;for(let o=r.tags.length-1;o>=0;o--){let i=r.tags[o];if(i[0]==="e"&&i[1]){let[s,a,c,u,f]=i,l={id:a,relays:c?[c]:[],author:f};if(u==="root"){e.root=l;continue}if(u==="reply"){e.reply=l;continue}if(u==="mention"){e.mentions.push(l);continue}t?n=l:t=l,e.mentions.push(l)}else{if(i[0]==="q"&&i[1]){let[s,a,c]=i;e.quotes.push({id:a,relays:c?[c]:[]})}i[0]==="p"&&i[1]&&e.profiles.push({pubkey:i[1],relays:i[2]?[i[2]]:[]})}}return e.root||(e.root=n||t||e.reply),e.reply||(e.reply=t||e.root),[e.reply,e.root].forEach((o=>{if(!o)return;let i=e.mentions.indexOf(o);if(i!==-1&&e.mentions.splice(i,1),o.author){let s=e.profiles.find((a=>a.pubkey===o.author));s&&s.relays&&(o.relays||(o.relays=[]),s.relays.forEach((a=>{var c;((c=o.relays)==null?void 0:c.indexOf(a))===-1&&o.relays.push(a)})),s.relays=o.relays)}})),e.mentions.forEach((o=>{if(o.author){let i=e.profiles.find((s=>s.pubkey===o.author));i&&i.relays&&(o.relays||(o.relays=[]),i.relays.forEach((s=>{o.relays.indexOf(s)===-1&&o.relays.push(s)})),i.relays=o.relays)}})),e}function E_(r){}async function x_(r){return await(await fetch(r.replace("ws://","http://").replace("wss://","https://"),{headers:{Accept:"application/nostr+json"}})).json()}function dv(r){let e=0;for(let t=0;t<64;t+=8){let n=parseInt(r.substring(t,t+8),16);if(n!==0){e+=Math.clz32(n);break}e+=32}return e}function A_(r,e){let t=0,n=r,o=["nonce",t.toString(),e.toString()];for(n.tags.push(o);;){let i=Math.floor(new Date().getTime()/1e3);if(i!==n.created_at&&(t=0,n.created_at=i),o[1]=(++t).toString(),n.id=pv(n),dv(n.id)>=e)break}return n}function pv(r){return Ke(io(jt.encode(JSON.stringify([0,r.pubkey,r.created_at,r.kind,r.tags,r.content]))))}function Ld(r,e){let t=no.getSharedSecret(r,"02"+e).subarray(1,33);return Fw(io,t,"nip44-v2")}function bv(r,e){let t=Dw(io,r,e,76);return{chacha_key:t.subarray(0,32),chacha_nonce:t.subarray(32,44),hmac_key:t.subarray(44,76)}}function Pd(r){if(!Number.isSafeInteger(r)||r<1)throw new Error("expected positive integer");if(r<=32)return 32;let e=1<<Math.floor(Math.log2(r-1))+1,t=e<=256?32:e/8;return t*(Math.floor((r-1)/t)+1)}function O_(r){let e=jt.encode(r),t=e.length,n=(function(s){if(!Number.isSafeInteger(s)||s<gv||s>yv)throw new Error("invalid plaintext size: must be between 1 and 65535 bytes");let a=new Uint8Array(2);return new DataView(a.buffer).setUint16(0,s,!1),a})(t),o=new Uint8Array(Pd(t)-t);return Cs(n,e,o)}function mv(r,e,t){if(t.length!==32)throw new Error("AAD associated data must be 32 bytes");let n=Cs(t,e);return Ti(io,r,n)}function Cd(r,e,t=ed(32)){let{chacha_key:n,chacha_nonce:o,hmac_key:i}=bv(e,t),s=O_(r),a=gd(n,o,s),c=mv(i,a,t);return tr.encode(Cs(new Uint8Array([2]),t,a,c))}function Nd(r,e){let{nonce:t,ciphertext:n,mac:o}=(function(f){if(typeof f!="string")throw new Error("payload must be a valid string");let l=f.length;if(l<132||l>87472)throw new Error("invalid payload length: "+l);if(f[0]==="#")throw new Error("unknown encryption version");let h;try{h=tr.decode(f)}catch(d){throw new Error("invalid base64: "+d.message)}let g=h.length;if(g<99||g>65603)throw new Error("invalid data length: "+g);let y=h[0];if(y!==2)throw new Error("unknown encryption version "+y);return{nonce:h.subarray(1,33),ciphertext:h.subarray(33,-32),mac:h.subarray(-32)}})(r),{chacha_key:i,chacha_nonce:s,hmac_key:a}=bv(e,t),c=mv(a,n,t);if(!Bw(c,o))throw new Error("invalid MAC");return(function(f){let l=new DataView(f.buffer).getUint16(0),h=f.subarray(2,2+l);if(l<gv||l>yv||h.length!==l||f.length!==2+Pd(l))throw new Error("invalid padding");return Or.decode(h)})(gd(i,s,n))}function kv(r,e){let t=J(z({created_at:wv(),content:"",tags:[]},r),{pubkey:Ed(e)});return t.id=cu(t),t}function Av(r,e,t){return nr({kind:Xw,content:xv(r,e,t),created_at:vv(),tags:[]},e)}function _v(r,e){let t=UA();return nr({kind:iv,content:xv(r,t,e),created_at:vv(),tags:[["p",e]]},t)}function uu(r,e,t){return _v(Av(kv(r,e),e,t),t)}function T_(r,e,t){if(!t||t.length===0)throw new Error("At least one recipient is required.");let n=Ed(e),o=[uu(r,e,n)];return t.forEach((i=>{o.push(uu(r,e,i))})),o}function Md(r,e){let t=Kw(r,e);return Kw(t,e)}function Sv(r,e){let t=[];return r.forEach((n=>{t.push(Md(n,e))})),t.sort(((n,o)=>n.created_at-o.created_at)),t}function Bv(r,e,t,n,o){let i=(function(a,c,u,f){let l={created_at:Math.ceil(Date.now()/1e3),kind:Qw,tags:[],content:c};return(Array.isArray(a)?a:[a]).forEach((({publicKey:h,relayUrl:g})=>{l.tags.push(g?["p",h,g]:["p",h])})),f&&l.tags.push(["e",f.eventId,f.relayUrl||"","reply"]),u&&l.tags.push(["subject",u]),l})(e,t,n,o);return uu(i,r,e.publicKey)}function R_(r,e,t,n,o){if(!e||e.length===0)throw new Error("At least one recipient is required.");return[{publicKey:Ed(r)},...e].map((i=>Bv(r,i,t,n,o)))}function N_(r,e,t,n){var s,a;let o,i=[...(s=r.tags)!=null?s:[],["e",e.id,t],["p",e.pubkey]];return e.kind===Jw?o=Ad:(o=Sd,i.push(["k",String(e.kind)])),nr({kind:o,tags:i,content:r.content===""||(a=e.tags)!=null&&a.find((c=>c[0]==="-"))?"":JSON.stringify(e),created_at:r.created_at},n)}function Ov(r){if(![Ad,Sd].includes(r.kind))return;let e,t;for(let n=r.tags.length-1;n>=0&&(e===void 0||t===void 0);n--){let o=r.tags[n];o.length>=2&&(o[0]==="e"&&e===void 0?e=o:o[0]==="p"&&t===void 0&&(t=o))}return e!==void 0?{id:e[1],relays:[e[2],t==null?void 0:t[2]].filter((n=>typeof n=="string")),author:t==null?void 0:t[1]}:void 0}function M_(r,{skipVerification:e}={}){let t=Ov(r);if(t===void 0||r.content==="")return;let n;try{n=JSON.parse(r.content)}catch(o){return}return n.id===t.id&&(e||xd(n))?n:void 0}function j_(r){return typeof r=="string"&&new RegExp(`^${Ud.source}$`).test(r)}function q_(r){let e=r.match(new RegExp(`^${Ud.source}$`));if(!e)throw new Error(`Invalid Nostr URI: ${r}`);return{uri:e[0],value:e[1],decoded:hu(e[1])}}function W_(r,e,t){var o,i;let n=e.tags.filter((s=>s.length>=2&&(s[0]==="e"||s[0]==="p")));return nr(J(z({},r),{kind:_d,tags:[...(o=r.tags)!=null?o:[],...n,["e",e.id],["p",e.pubkey]],content:(i=r.content)!=null?i:"+"}),t)}function H_(r){if(r.kind!==_d)return;let e,t;for(let n=r.tags.length-1;n>=0&&(e===void 0||t===void 0);n--){let o=r.tags[n];o.length>=2&&(o[0]==="e"&&e===void 0?e=o:o[0]==="p"&&t===void 0&&(t=o))}return e!==void 0&&t!==void 0?{id:e[1],relays:[e[2],t[2]].filter((n=>n!==void 0)),author:t[1]}:void 0}function*z_(r){let e=r.length,t=0,n=0;for(;n<e;){let o=r.indexOf(":",n);if(o===-1)break;if(r.substring(o-5,o)==="nostr"){let i=r.substring(o+60).match(D_),s=i?o+60+i.index:e;try{let a,{data:c,type:u}=hu(r.substring(o+1,s));switch(u){case"npub":a={pubkey:c};break;case"nsec":case"note":n=s+1;continue;default:a=c}t!==o-5&&(yield{type:"text",text:r.substring(t,o-5)}),yield{type:"reference",pointer:a},n=s,t=n;continue}catch(a){n=o+1;continue}}else if(r.substring(o-5,o)==="https"||r.substring(o-4,o)==="http"){let i=r.substring(o+4).match(Vw),s=i?o+4+i.index:e,a=r[o-1]==="s"?5:4;try{let c=new URL(r.substring(o-a,s));if(c.hostname.indexOf(".")===-1)throw new Error("invalid url");if(t!==o-a&&(yield{type:"text",text:r.substring(t,o-a)}),c.pathname.endsWith(".png")||c.pathname.endsWith(".jpg")||c.pathname.endsWith(".jpeg")||c.pathname.endsWith(".gif")||c.pathname.endsWith(".webp")){yield{type:"image",url:c.toString()},n=s,t=n;continue}if(c.pathname.endsWith(".mp4")||c.pathname.endsWith(".avi")||c.pathname.endsWith(".webm")||c.pathname.endsWith(".mkv")){yield{type:"video",url:c.toString()},n=s,t=n;continue}if(c.pathname.endsWith(".mp3")||c.pathname.endsWith(".aac")||c.pathname.endsWith(".ogg")||c.pathname.endsWith(".opus")){yield{type:"audio",url:c.toString()},n=s,t=n;continue}yield{type:"url",url:c.toString()},n=s,t=n;continue}catch(c){n=s+1;continue}}else{if(r.substring(o-3,o)!=="wss"&&r.substring(o-2,o)!=="ws"){n=o+1;continue}{let i=r.substring(o+4).match(Vw),s=i?o+4+i.index:e,a=r[o-1]==="s"?3:2;try{let c=new URL(r.substring(o-a,s));if(c.hostname.indexOf(".")===-1)throw new Error("invalid ws url");t!==o-a&&(yield{type:"text",text:r.substring(t,o-a)}),yield{type:"relay",url:c.toString()},n=s,t=n;continue}catch(c){n=s+1;continue}}}}t!==e&&(yield{type:"text",text:r.substring(t)})}function*Q_(r){let e=r.matchAll(jd());for(let t of e)try{let[n,o]=t;yield{shortcode:n,name:o,start:t.index,end:t.index+n.length}}catch(n){}}function eS(r,e){return r.replaceAll(jd(),((t,n)=>e({shortcode:t,name:n})))}function rS(r){qd=r}async function nS(r,e,t){try{return await(await qd(`https://gist.github.com/${e}/${t}/raw`)).text()===`Verifying that I control the following Nostr public key: ${r}`}catch(n){return!1}}function iS(r){let{pathname:e,searchParams:t}=new URL(r),n=e,o=t.get("relay"),i=t.get("secret");if(!n||!o||!i)throw new Error("invalid connection string");return{pubkey:n,relay:o,secret:i}}async function sS(r,e,t){let n={method:"pay_invoice",params:{invoice:t}},o=await lv(e,r,JSON.stringify(n)),i={kind:av,created_at:Math.round(Date.now()/1e3),content:o,tags:[["p",r]]};return nr(i,e)}function cS(r){return r=(r=r.trim().toLowerCase()).normalize("NFKC"),Array.from(r).map((e=>new RegExp("\\p{Letter}","u").test(e)||new RegExp("\\p{Number}","u").test(e)?e:"-")).join("")}function lS(r){$d=r}async function fS(r){try{let e="",{lud06:t,lud16:n}=JSON.parse(r.content);if(t){let{words:s}=so.decode(t,1e3),a=so.fromWords(s);e=Or.decode(a)}else{if(!n)return null;{let[s,a]=n.split("@");e=new URL(`/.well-known/lnurlp/${s}`,`https://${a}`).toString()}}let o=await $d(e),i=await o.json();if(i.allowsNostr&&i.nostrPubkey)return i.callback}catch(e){}return null}function hS({profile:r,event:e,amount:t,relays:n,comment:o=""}){if(!t)throw new Error("amount not given");if(!r)throw new Error("profile not given");let i={kind:9734,created_at:Math.round(Date.now()/1e3),content:o,tags:[["p",r],["amount",t.toString()],["relays",...n]]};if(e&&typeof e=="string"&&i.tags.push(["e",e]),e&&typeof e=="object"){if(kd(e.kind)){let s=["a",`${e.kind}:${e.pubkey}:`];i.tags.push(s)}else if(fu(e.kind)){let s=e.tags.find((([c,u])=>c==="d"&&u));if(!s)throw new Error("d tag not found or is empty");let a=["a",`${e.kind}:${e.pubkey}:${s[1]}`];i.tags.push(a)}}return i}function dS(r){let e;try{e=JSON.parse(r)}catch(o){return"Invalid zap request JSON."}if(!wd(e))return"Zap request is not a valid Nostr event.";if(!xd(e))return"Invalid signature on zap request.";let t=e.tags.find((([o,i])=>o==="p"&&i));if(!t)return"Zap request doesn't have a 'p' tag.";if(!t[1].match(/^[a-f0-9]{64}$/))return"Zap request 'p' tag is not valid hex.";let n=e.tags.find((([o,i])=>o==="e"&&i));return n&&!n[1].match(/^[a-f0-9]{64}$/)?"Zap request 'e' tag is not valid hex.":e.tags.find((([o,i])=>o==="relays"&&i))?null:"Zap request doesn't have a 'relays' tag."}function pS({zapRequest:r,preimage:e,bolt11:t,paidAt:n}){let o=JSON.parse(r),i=o.tags.filter((([a])=>a==="e"||a==="p"||a==="a")),s={kind:9735,created_at:Math.round(n.getTime()/1e3),content:"",tags:[...i,["P",o.pubkey],["bolt11",t],["description",r]]};return e&&s.tags.push(["preimage",e]),s}async function yS(r,e,t,n=!1,o){let i={kind:Bd,tags:[["u",r],["method",e]],created_at:Math.round(new Date().getTime()/1e3),content:""};o&&i.tags.push(["payload",Wd(o)]);let s=await t(i);return(n?Tv:"")+tr.encode(jt.encode(JSON.stringify(s)))}async function bS(r,e,t){let n=await Rv(r).catch((o=>{throw o}));return await Uv(n,e,t).catch((o=>{throw o}))}async function Rv(r){if(!r)throw new Error("Missing token");r=r.replace(Tv,"");let e=Or.decode(tr.decode(r));if(!e||e.length===0||!e.startsWith("{"))throw new Error("Invalid token");return JSON.parse(e)}function Lv(r){return!!r.created_at&&Math.round(new Date().getTime()/1e3)-r.created_at<60}function Pv(r){return r.kind===Bd}function Cv(r,e){let t=r.tags.find((n=>n[0]==="u"));return!!t&&t.length>0&&t[1]===e}function Nv(r,e){let t=r.tags.find((n=>n[0]==="method"));return!!t&&t.length>0&&t[1].toLowerCase()===e.toLowerCase()}function Wd(r){let e=io(jt.encode(JSON.stringify(r)));return Ke(e)}function Mv(r,e){let t=r.tags.find((o=>o[0]==="payload"));if(!t)return!1;let n=Wd(e);return t.length>0&&t[1]===n}async function Uv(r,e,t,n){if(!xd(r))throw new Error("Invalid nostr event, signature invalid");if(!Pv(r))throw new Error("Invalid nostr event, kind invalid");if(!Lv(r))throw new Error("Invalid nostr event, created_at timestamp invalid");if(!Cv(r,e))throw new Error("Invalid nostr event, url tag invalid");if(!Nv(r,t))throw new Error("Invalid nostr event, method tag invalid");if(n&&typeof n=="object"&&Object.keys(n).length>0&&!Mv(r,n))throw new Error("Invalid nostr event, payload tag does not match request body hash");return!0}var TA,de,Ri,RA,Or,jt,Gw,NA,lu,UA,Ed,nr,xd,jA,qA,HA,Jw,FA,DA,zA,KA,Ad,_d,VA,Xw,Qw,Sd,ev,tv,rv,nv,ov,GA,iv,ZA,YA,JA,XA,QA,e6,t6,r6,n6,o6,i6,s6,a6,c6,u6,l6,f6,h6,d6,p6,g6,y6,b6,m6,w6,v6,E6,x6,sv,av,k6,A6,Bd,_6,S6,B6,O6,I6,T6,R6,L6,P6,C6,N6,M6,U6,j6,q6,$6,W6,H6,F6,D6,z6,K6,V6,G6,Z6,Y6,t_,co,n_,Id,uv,f_,d_,gu,Rd,p_,m_,v_,k_,__,S_,B_,gv,yv,I_,wv,vv,Ev,xv,Kw,L_,P_,C_,U_,Ud,$_,F_,D_,Vw,K_,V_,G_,Z_,Y_,J_,X_,Iv,jd,qd,tS,oS,aS,$d,uS,gS,Tv,Hd=$(()=>{hw();Bi();yw();_w();Cw();Ww();iu();zw();yd();TA=Object.defineProperty,de=(r,e)=>{for(var t in e)TA(r,t,{get:e[t],enumerable:!0})},Ri=Symbol("verified");RA={};de(RA,{Queue:()=>NA,QueueNode:()=>Gw,binarySearch:()=>vd,insertEventIntoAscendingList:()=>CA,insertEventIntoDescendingList:()=>PA,normalizeURL:()=>LA,utf8Decoder:()=>Or,utf8Encoder:()=>jt});Or=new TextDecoder("utf-8"),jt=new TextEncoder;Gw=class{constructor(r){Z(this,"value");Z(this,"next",null);Z(this,"prev",null);this.value=r}},NA=class{constructor(){Z(this,"first");Z(this,"last");this.first=null,this.last=null}enqueue(r){let e=new Gw(r);return this.last?this.last===this.first?(this.last=e,this.last.prev=this.first,this.first.next=e):(e.prev=this.last,this.last.next=e,this.last=e):(this.first=e,this.last=e),!0}dequeue(){if(!this.first)return null;if(this.first===this.last){let e=this.first;return this.first=null,this.last=null,e.value}let r=this.first;return this.first=r.next,r.value}};lu=new class{generateSecretKey(){return _i.utils.randomPrivateKey()}getPublicKey(r){return Ke(_i.getPublicKey(r))}finalizeEvent(r,e){let t=r;return t.pubkey=Ke(_i.getPublicKey(e)),t.id=cu(t),t.sig=Ke(_i.sign(cu(t),e)),t[Ri]=!0,t}verifyEvent(r){if(typeof r[Ri]=="boolean")return r[Ri];let e=cu(r);if(e!==r.id)return r[Ri]=!1,!1;try{let t=_i.verify(r.sig,e,r.pubkey);return r[Ri]=t,t}catch(t){return r[Ri]=!1,!1}}},UA=lu.generateSecretKey,Ed=lu.getPublicKey,nr=lu.finalizeEvent,xd=lu.verifyEvent,jA={};de(jA,{Application:()=>j6,BadgeAward:()=>VA,BadgeDefinition:()=>R6,BlockedRelaysList:()=>g6,BookmarkList:()=>h6,Bookmarksets:()=>O6,Calendar:()=>z6,CalendarEventRSVP:()=>K6,ChannelCreation:()=>ev,ChannelHideMessage:()=>nv,ChannelMessage:()=>rv,ChannelMetadata:()=>tv,ChannelMuteUser:()=>ov,ClassifiedListing:()=>W6,ClientAuth:()=>sv,CommunitiesList:()=>d6,CommunityDefinition:()=>Z6,CommunityPostApproval:()=>t6,Contacts:()=>DA,CreateOrUpdateProduct:()=>C6,CreateOrUpdateStall:()=>P6,Curationsets:()=>I6,Date:()=>F6,DirectMessageRelaysList:()=>w6,DraftClassifiedListing:()=>H6,DraftLong:()=>M6,Emojisets:()=>U6,EncryptedDirectMessage:()=>zA,EventDeletion:()=>KA,FileMetadata:()=>ZA,FileServerPreference:()=>v6,Followsets:()=>_6,GenericRepost:()=>Sd,Genericlists:()=>S6,GiftWrap:()=>iv,HTTPAuth:()=>Bd,Handlerinformation:()=>G6,Handlerrecommendation:()=>V6,Highlights:()=>c6,InterestsList:()=>b6,Interestsets:()=>L6,JobFeedback:()=>o6,JobRequest:()=>r6,JobResult:()=>n6,Label:()=>e6,LightningPubRPC:()=>x6,LiveChatMessage:()=>YA,LiveEvent:()=>q6,LongFormArticle:()=>N6,Metadata:()=>HA,Mutelist:()=>u6,NWCWalletInfo:()=>E6,NWCWalletRequest:()=>av,NWCWalletResponse:()=>k6,NostrConnect:()=>A6,OpenTimestamps:()=>GA,Pinlist:()=>l6,PrivateDirectMessage:()=>Qw,ProblemTracker:()=>JA,ProfileBadges:()=>T6,PublicChatsList:()=>p6,Reaction:()=>_d,RecommendRelay:()=>FA,RelayList:()=>f6,Relaysets:()=>B6,Report:()=>XA,Reporting:()=>QA,Repost:()=>Ad,Seal:()=>Xw,SearchRelaysList:()=>y6,ShortTextNote:()=>Jw,Time:()=>D6,UserEmojiList:()=>m6,UserStatuses:()=>$6,Zap:()=>a6,ZapGoal:()=>i6,ZapRequest:()=>s6,classifyKind:()=>$A,isAddressableKind:()=>fu,isEphemeralKind:()=>Yw,isKind:()=>WA,isParameterizedReplaceableKind:()=>qA,isRegularKind:()=>Zw,isReplaceableKind:()=>kd});qA=fu;HA=0,Jw=1,FA=2,DA=3,zA=4,KA=5,Ad=6,_d=7,VA=8,Xw=13,Qw=14,Sd=16,ev=40,tv=41,rv=42,nv=43,ov=44,GA=1040,iv=1059,ZA=1063,YA=1311,JA=1971,XA=1984,QA=1984,e6=1985,t6=4550,r6=5999,n6=6999,o6=7e3,i6=9041,s6=9734,a6=9735,c6=9802,u6=1e4,l6=10001,f6=10002,h6=10003,d6=10004,p6=10005,g6=10006,y6=10007,b6=10015,m6=10030,w6=10050,v6=10096,E6=13194,x6=21e3,sv=22242,av=23194,k6=23195,A6=24133,Bd=27235,_6=3e4,S6=30001,B6=30002,O6=30003,I6=30004,T6=30008,R6=30009,L6=30015,P6=30017,C6=30018,N6=30023,M6=30024,U6=30030,j6=30078,q6=30311,$6=30315,W6=30402,H6=30403,F6=31922,D6=31923,z6=31924,K6=31925,V6=31989,G6=31990,Z6=34550,Y6={};de(Y6,{getHex64:()=>Od,getInt:()=>cv,getSubscriptionId:()=>J6,matchEventId:()=>X6,matchEventKind:()=>e_,matchEventPubkey:()=>Q6});t_={};de(t_,{makeAuthEvent:()=>r_});co={};de(co,{BECH32_REGEX:()=>uv,Bech32MaxSize:()=>Id,NostrTypeGuard:()=>n_,decode:()=>hu,decodeNostrURI:()=>o_,encodeBytes:()=>pu,naddrEncode:()=>l_,neventEncode:()=>u_,noteEncode:()=>a_,nprofileEncode:()=>c_,npubEncode:()=>s_,nsecEncode:()=>i_});n_={isNProfile:r=>/^nprofile1[a-z\d]+$/.test(r||""),isNEvent:r=>/^nevent1[a-z\d]+$/.test(r||""),isNAddr:r=>/^naddr1[a-z\d]+$/.test(r||""),isNSec:r=>/^nsec1[a-z\d]{58}$/.test(r||""),isNPub:r=>/^npub1[a-z\d]{58}$/.test(r||""),isNote:r=>/^note1[a-z\d]+$/.test(r||""),isNcryptsec:r=>/^ncryptsec1[a-z\d]+$/.test(r||"")},Id=5e3,uv=/[\x21-\x7E]{1,83}1[023456789acdefghjklmnpqrstuvwxyz]{6,}/;f_={};de(f_,{decrypt:()=>h_,encrypt:()=>lv});d_={};de(d_,{NIP05_REGEX:()=>Rd,isNip05:()=>p_,isValid:()=>b_,queryProfile:()=>hv,searchDomain:()=>y_,useFetchImplementation:()=>g_});Rd=/^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/,p_=r=>Rd.test(r||"");try{gu=fetch}catch(r){}m_={};de(m_,{parse:()=>w_});v_={};de(v_,{fetchRelayInformation:()=>x_,useFetchImplementation:()=>E_});k_={};de(k_,{fastEventHash:()=>pv,getPow:()=>dv,minePow:()=>A_});__={};de(__,{unwrapEvent:()=>L_,unwrapManyEvents:()=>P_,wrapEvent:()=>Bv,wrapManyEvents:()=>R_});S_={};de(S_,{createRumor:()=>kv,createSeal:()=>Av,createWrap:()=>_v,unwrapEvent:()=>Md,unwrapManyEvents:()=>Sv,wrapEvent:()=>uu,wrapManyEvents:()=>T_});B_={};de(B_,{decrypt:()=>Nd,encrypt:()=>Cd,getConversationKey:()=>Ld,v2:()=>I_});gv=1,yv=65535;I_={utils:{getConversationKey:Ld,calcPaddedLen:Pd},encrypt:Cd,decrypt:Nd},wv=()=>Math.round(Date.now()/1e3),vv=()=>Math.round(wv()-172800*Math.random()),Ev=(r,e)=>Ld(r,e),xv=(r,e,t)=>Cd(JSON.stringify(r),Ev(e,t)),Kw=(r,e)=>JSON.parse(Nd(r.content,Ev(e,r.pubkey)));L_=Md,P_=Sv,C_={};de(C_,{finishRepostEvent:()=>N_,getRepostedEvent:()=>M_,getRepostedEventPointer:()=>Ov});U_={};de(U_,{NOSTR_URI_REGEX:()=>Ud,parse:()=>q_,test:()=>j_});Ud=new RegExp(`nostr:(${uv.source})`);$_={};de($_,{finishReactionEvent:()=>W_,getReactedEventPointer:()=>H_});F_={};de(F_,{parse:()=>z_});D_=/\W/m,Vw=/\W |\W$|$|,| /m;K_={};de(K_,{channelCreateEvent:()=>V_,channelHideMessageEvent:()=>Y_,channelMessageEvent:()=>Z_,channelMetadataEvent:()=>G_,channelMuteUserEvent:()=>J_});V_=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else{if(typeof r.content!="string")return;t=r.content}return nr({kind:ev,tags:[...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},G_=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else{if(typeof r.content!="string")return;t=r.content}return nr({kind:tv,tags:[["e",r.channel_create_event_id],...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},Z_=(r,e)=>{var n;let t=[["e",r.channel_create_event_id,r.relay_url,"root"]];return r.reply_to_channel_message_event_id&&t.push(["e",r.reply_to_channel_message_event_id,r.relay_url,"reply"]),nr({kind:rv,tags:[...t,...(n=r.tags)!=null?n:[]],content:r.content,created_at:r.created_at},e)},Y_=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else{if(typeof r.content!="string")return;t=r.content}return nr({kind:nv,tags:[["e",r.channel_message_event_id],...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},J_=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else{if(typeof r.content!="string")return;t=r.content}return nr({kind:ov,tags:[["p",r.pubkey_to_mute],...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},X_={};de(X_,{EMOJI_SHORTCODE_REGEX:()=>Iv,matchAll:()=>Q_,regex:()=>jd,replaceAll:()=>eS});Iv=/:(\w+):/,jd=()=>new RegExp(`\\B${Iv.source}\\B`,"g");tS={};de(tS,{useFetchImplementation:()=>rS,validateGithub:()=>nS});try{qd=fetch}catch(r){}oS={};de(oS,{makeNwcRequestEvent:()=>sS,parseConnectionString:()=>iS});aS={};de(aS,{normalizeIdentifier:()=>cS});uS={};de(uS,{getZapEndpoint:()=>fS,makeZapReceipt:()=>pS,makeZapRequest:()=>hS,useFetchImplementation:()=>lS,validateZapRequest:()=>dS});try{$d=fetch}catch(r){}gS={};de(gS,{getToken:()=>yS,hashPayload:()=>Wd,unpackEventFromToken:()=>Rv,validateEvent:()=>Uv,validateEventKind:()=>Pv,validateEventMethodTag:()=>Nv,validateEventPayloadTag:()=>Mv,validateEventTimestamp:()=>Lv,validateEventUrlTag:()=>Cv,validateToken:()=>bS});Tv="Nostr "});var jv,yu,mS,En,uo=$(()=>{"use strict";le();Ih();Nc();Hd();(function(r){r[r.Note=1]="Note",r[r.Comment=1111]="Comment",r[r.Reaction=7]="Reaction",r[r.ReactionUri=17]="ReactionUri",r[r.ZapReciept=9725]="ZapReciept",r[r.RelayCheck=30166]="RelayCheck",r[r.RelayMonitorRegistration=10166]="RelayMonitorRegistration",r[r.RelayCheckDelta=1066]="RelayCheckDelta",r[r.Wiki=30818]="Wiki"})(jv||(jv={}));yu=Symbol("SOURCE"),mS={relays:[]},En=(function(){function r(e,t){this._relatives={zaps:[],comments:[],reactions:[]},this._json=e,this._options=t||mS}return Object.defineProperty(r.prototype,"isComment",{get:function(){return this.kind===1&&this.tags.some((function(e){return e[0]==="e"}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"id",{get:function(){return this.json.id},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"pubkey",{get:function(){return this.json.pubkey},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"kind",{get:function(){return this.json.kind},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"tags",{get:function(){return this.json.tags},set:function(e){this.json.tags=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"content",{get:function(){return this.json.content},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"signature",{get:function(){return this.json.signature},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"created_at",{get:function(){return this.json.created_at},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"json",{get:function(){return this._json},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"relays",{get:function(){return this._options.relays},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"reference",{get:function(){return Pc(this.json)||Cc(this.json)?this.naddr:this.nevent},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"naddr",{get:function(){var e,t=this,n=t.pubkey,o=t.kind,i=t.relays,s=(e=this.tags.find((function(c){return c[0]==="d"})))===null||e===void 0?void 0:e[1];if(!s)throw new Error("No identifier found in event tags");var a={identifier:s,pubkey:n,kind:o,relays:i};return co.naddrEncode(a)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"nevent",{get:function(){var e={id:this.id,relays:this.relays,author:this.pubkey,kind:this.kind};return co.neventEncode(e)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"nnote",{get:function(){return co.noteEncode(this.id)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"zaps",{get:function(){return this._relatives.zaps},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"comments",{get:function(){return this._relatives.comments},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"commentsCount",{get:function(){return this._relatives.comments.length},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"reactions",{get:function(){return this._relatives.reactions},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"reactionsCount",{get:function(){return this._relatives.reactions.length},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"zapSum",{get:function(){return Pm(this.zaps)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"zapSumNum",{get:function(){return Lh(this.zaps)},enumerable:!1,configurable:!0}),r})()});var bu,Fd=$(()=>{"use strict";le();gs();Hf();Sh();xs();Dd();Lc();Bh();ti();Oh();Ts();Ih();ic();fi();uo();bu=(function(){function r(e){this._groupedRelays={},this._ready=!1,this._subscriptions=new Set,this.cacheAdapter=e.cacheAdapter,this.websocketAdapter=e.websocketAdapter}return Object.defineProperty(r.prototype,"adapter",{get:function(){return{cache:this.cacheAdapter,websocket:this.websocketAdapter}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"nip66Relays",{get:function(){var e;return((e=this._groupedRelays)===null||e===void 0?void 0:e.route66)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"userMetaRelays",{get:function(){var e;return((e=this._groupedRelays)===null||e===void 0?void 0:e.userMeta)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"subscriptions",{get:function(){return this._subscriptions},enumerable:!1,configurable:!0}),r.prototype.ready=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return this._ready?[3,2]:[4,new Promise((function(t){return setTimeout(t,100)}))];case 1:return e.sent(),[3,0];case 2:return[2]}}))}))},r.prototype.modifyCacheFilters=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return console.warn("modifyCacheFilters not implemented"),[2,e]}))}))},r.prototype.modifyWebsocketFilters=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return console.warn("modifyWebsocketFilters not implemented"),[2,e]}))}))},r.prototype.publish=function(e){return j(this,void 0,void 0,(function(){var t,n,o;return U(this,(function(i){switch(i.label){case 0:return[4,this.ready()];case 1:return i.sent(),t=e.hash,n=e.note,o=e.relays,n?(t||(t=n.id.slice(0,21)),this.subscriptions.add(t),[4,this.websocketAdapter.publish({note:n,relays:o,hash:t})]):[2,!1];case 2:return i.sent(),this.subscriptions.delete(t),[2,!1]}}))}))},r.prototype.subscribe=function(e,t){return j(this,arguments,void 0,(function(n,o,i){var s,a,c,u,f,l,h,g,y,d,p,b,m,x,S,I,_=this;return i===void 0&&(i=!1),U(this,(function(O){switch(O.label){case 0:return[4,this.ready()];case 1:return O.sent(),s=n.filters,n.relays,a=n.options,(c=n.hash)||(c=Yn(n)),n.hash=c,this.subscriptions.add(c),console.log("[Service] subscribe: hash=".concat(c==null?void 0:c.slice(0,8),", nocache=").concat(i,", stream=").concat(a==null?void 0:a.stream,", keepAlive=").concat(a==null?void 0:a.keepAlive,", adapterType=").concat((S=(x=this.websocketAdapter)===null||x===void 0?void 0:x.constructor)===null||S===void 0?void 0:S.name)),u=[],f=!!(o&&Object.keys(o).length>0),console.log("[Service] subscribe: hasCallbacks=".concat(f)),!s||i?[3,4]:o?(l=this.addSymbolToCallbacks(o,"cache"),this.fetchFromCache(s,l),[3,4]):[3,2];case 2:return h=this.addSymbolToEvents,[4,this.fetchFromCache(s)];case 3:u=h.apply(this,[O.sent(),"cache"]),O.label=4;case 4:return g=void 0,f&&o&&(y=o.onclose,d=Y(Y({},o),{onclose:function(w){_.subscriptions.delete(w),y==null||y(w)}}),g=this.addSymbolToCallbacks(d,"ws")),p=!!((a==null?void 0:a.stream)===!0&&f),console.log("[Service] subscribe: shouldStream=".concat(p)),p?(console.log("[Service] subscribe: calling websocketAdapter.subscribe, subscribeIsFn=".concat(typeof((I=this.websocketAdapter)===null||I===void 0?void 0:I.subscribe)=="function")),a!=null&&a.keepAlive?(this.websocketAdapter.subscribe(n,g),[3,8]):[3,5]):[3,9];case 5:return O.trys.push([5,7,,8]),[4,this.websocketAdapter.subscribe(n,g)];case 6:return O.sent(),[3,8];case 7:throw b=O.sent(),console.error("[Service] subscribe error:",b),b;case 8:return console.log("[Service] subscribe: websocketAdapter.subscribe returned"),[3,11];case 9:return console.log("[Service] subscribe: using _fetch instead of websocket subscribe"),n.options=Y(Y(Y({},We),a!=null?a:{}),{stream:!1}),m=this.addSymbolToEvents,[4,this._fetch(n,g)];case 10:u=m.apply(this,[O.sent(),"ws"]),O.label=11;case 11:return a!=null&&a.keepAlive||this.subscriptions.delete(c),[2,p?[]:u]}}))}))},r.prototype.subscribeRelatives=function(e,t,n){var o=e.id,i={filters:[{kinds:[9735,9321],"#e":[o]},{kinds:[1,7,1111],"#e":[o]},{kinds:[1111],"#E":[o]}],relays:t=ue(ue([],t||[],!0),["wss://relay.damus.io"],!1),options:{cache:!0,stream:!0,returnResults:!0,keepAlive:!1},priority:5};return this.subscribe(i,n)},r.prototype.addSymbolToCallbacks=function(e,t){var n=Y({},e);return n.onevent=function(o){var i;o[yu]=t,(i=e.onevent)===null||i===void 0||i.call(e,o)},n.onevents=function(o){var i;o=o.map((function(s){return s[yu]=t,s})),(i=e.onevents)===null||i===void 0||i.call(e,o)},n},r.prototype.addSymbolToEvents=function(e,t){return e.map((function(n){return n[yu]=t,n}))},r.prototype.unsubscribe=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return[4,this.ready()];case 1:return t.sent(),this.websocketAdapter.unsubscribe(e),[2]}}))}))},r.prototype.unsubscribeMany=function(e){return j(this,void 0,void 0,(function(){var t=this;return U(this,(function(n){switch(n.label){case 0:return[4,this.ready()];case 1:return n.sent(),e.forEach((function(o){t.unsubscribe(o)})),[2]}}))}))},r.prototype.unsubscribeAllActive=function(){return j(this,void 0,void 0,(function(){var e=this;return U(this,(function(t){switch(t.label){case 0:return[4,this.ready()];case 1:return t.sent(),this.subscriptions.forEach((function(n){e.unsubscribe(n)})),[2]}}))}))},r.prototype.unsubscribeAll=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return[4,this.ready()];case 1:return e.sent(),this.websocketAdapter.unsubscribeAll(),[2]}}))}))},r.prototype.fetch=function(e,t){return j(this,void 0,void 0,(function(){var n;return U(this,(function(o){switch(o.label){case 0:return[4,this.ready()];case 1:return o.sent(),e.hash||(e.hash=Yn(e)),this.subscriptions.add(e.hash),[4,this._fetch(e,t)];case 2:return n=o.sent(),this.subscriptions.delete(e.hash),[2,n]}}))}))},r.prototype.countFromCache=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return[4,this.ready()];case 1:return t.sent(),[2,this.cacheAdapter.COUNT(e)]}}))}))},r.prototype.fetchFromCache=function(e,t){return j(this,void 0,void 0,(function(){var n;return U(this,(function(o){switch(o.label){case 0:return[4,this.ready()];case 1:return o.sent(),n=[],[4,this.cacheAdapter.REQ(e)];case 2:return(n=o.sent())!=null&&n.length&&(t!=null&&t.onevents&&t.onevents(n),t!=null&&t.onevent&&n.forEach((function(i){var s;(s=t.onevent)===null||s===void 0||s.call(t,i)}))),[2,n!=null&&n.length?n:[]]}}))}))},r.prototype.fetchFromWebsocket=function(e,t){return j(this,void 0,void 0,(function(){var n,o,i,s,a;return U(this,(function(c){switch(c.label){case 0:return[4,this.ready()];case 1:return c.sent(),n=e.relays,o=e.filters,i=e.options,s=e.hash,[4,this.websocketAdapter.fetch({relays:n||[],filters:o,options:i||We,hash:s},t)];case 2:return(a=c.sent())instanceof Array&&Q.emit("events",a),[2,a instanceof Array?a:[]]}}))}))},r.prototype._fetch=function(e,t){return j(this,void 0,void 0,(function(){var n,o,i,s,a,c,u,f,l;return U(this,(function(h){switch(h.label){case 0:return[4,this.ready()];case 1:return h.sent(),e.relays,n=e.options,o=e.filters,n.returnResults,o=o!=null?o:[],i=new Map,s=function(g){var y;if(Pc(g)){var d=(y=g.tags.find((function(p){return p[0]==="d"})))===null||y===void 0?void 0:y[1];return d?"".concat(g.pubkey,":").concat(g.kind,":").concat(d):void 0}return Cc(g)?"".concat(g.pubkey,":").concat(g.kind):g.id},a=function(g){var y=s(g);return!(!y||i.has(y))&&(i.set(y,g),!0)},[4,this.fetchFromCache(o,t)];case 2:return(c=h.sent()).length>0&&c.forEach(a),u={},t!=null&&t.onevent&&(u.onevent=function(g){a(g)&&t.onevent(g)}),t!=null&&t.onevents&&(Q.emit("events",c),u.onevents=function(g){for(var y=[],d=0,p=g;d<p.length;d++){var b=p[d];a(b)&&y.push(b)}y.length>0&&t.onevents(y)}),[4,this.fetchFromWebsocket(e,u)];case 3:return(f=h.sent()).forEach(a),Object.keys(u).length===0&&Q.emit("events",f),l=Array.from(i.values()),[2,this.modifyReturnedEvents(l)]}}))}))},r.prototype.modifyReturnedEvents=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return console.warn("modifyReturnedEvents not implemented"),[2,e]}))}))},r.prototype.addRelay=function(e,t){var n,o;!((n=this._groupedRelays)===null||n===void 0)&&n[e]||(this._groupedRelays[e]=[]),(o=this._groupedRelays)===null||o===void 0||o[e].push(t)},r.prototype.removeRelay=function(e,t){var n;!((n=this._groupedRelays)===null||n===void 0)&&n[e]&&(this._groupedRelays[e]=this._groupedRelays[e].filter((function(o){return o!==t})))},r.prototype.setRelays=function(e,t){t&&t.length!==0?this._groupedRelays[e]=ue([],t,!0):console.warn("setRelays called with empty array for group '".concat(e,"', ignoring"))},r.prototype.clearRelays=function(e){this._groupedRelays[e]=[]},r})()});var qv,$v=$(()=>{"use strict";qv=function(r){var e,t,n,o,i,s,a,c,u,f,l=r.id,h=r.tags.find((function(v){return v[0]==="d"})),g=h?new URL(h[1]).toString():null,y=r.pubkey,d=r.created_at,p=((e=r.tags.find((function(v){return v[0]==="n"})))===null||e===void 0?void 0:e[1])||null,b=parseInt((t=r.tags.find((function(v){return v[0]==="rtt-open"})))===null||t===void 0?void 0:t[1])||null,m=parseInt((n=r.tags.find((function(v){return v[0]==="rtt-write"})))===null||n===void 0?void 0:n[1])||null,x=b||m||null,S=((o=r.tags.find((function(v){return v[0]==="p"})))===null||o===void 0?void 0:o[1])||null,I=r.tags.filter((function(v){return v[0]==="N"})).map((function(v){return parseInt(v[1])}))||null,_=((i=r.tags.find((function(v){return v[0]==="s"})))===null||i===void 0?void 0:i[1])||null,O=((s=r.tags.find((function(v){return v[0]==="l"&&v[2]==="nip11.version"})))===null||s===void 0?void 0:s[1])||null,w=!!r.tags.some((function(v){return v[0]==="R"&&v[1]==="payment"})),E=!!r.tags.some((function(v){return v[0]==="R"&&v[1]==="auth"}));return r.tags.some((function(v){return v[0]==="R"&&v[1]==="auth"})),{nid:l,relay:g,monitorPubkey:y,created_at:d,networks:p,rtt:x,operatorPubkey:S,supportedNips:I,software:_,version:O,paymentRequired:w,authRequired:E,geohash:r.tags.filter((function(v){return v[0]==="g"})).map((function(v){return v[1]}))||null,geocode:((a=r.tags.find((function(v){return v[0]==="l"&&v[2]==="countryCode"&&v[1].length===2})))===null||a===void 0?void 0:a[1])||null,isp:((c=r.tags.find((function(v){return v[0]==="l"&&v[2].includes("isp")})))===null||c===void 0?void 0:c[1])||null,as:((u=r.tags.find((function(v){return v[0]==="l"&&v[2]==="host.as"})))===null||u===void 0?void 0:u[1])||null,asname:((f=r.tags.find((function(v){return v[0]==="l"&&v[2]==="host.asn"})))===null||f===void 0?void 0:f[1])||null,ipv4:r.tags.filter((function(v){return v[0]==="l"&&v[2].includes("ipv4")})).map((function(v){return v[1]}))||null,ipv6:null,sslValidTo:null,sslIssuer:null}}});var mu,wS,wu=$(()=>{"use strict";le();uo();mu=(function(r){function e(t){return r.call(this,t)||this}return he(e,r),e.sortGeohashesFn=function(t,n){return n.length-t.length},e.generateFilterableGeohash=function(t){for(var n=new Set,o=String(t),i=String(t).length;i>0;i--){var s=o.substring(0,i);n.add(s)}return Array.from(n)},Object.defineProperty(e.prototype,"dd",{get:function(){return this.lat!==void 0&&this.lon!==void 0?{lat:this.lat,lon:this.lon}:typeof this.geohash=="string"?(this.dd=this.geohash,this.dd):void 0},set:function(t){if(t)if(typeof t=="string"){this.geohash=t;var n=e.decodeGeohash(t),o=n.lat,i=n.lon;this.lat=o,this.lon=i}else"lat"in t&&"lon"in t&&(this.lat=t.lat,this.lon=t.lon,this.geohash=e.encodeGeohash(t))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geohash",{get:function(){var t;return(t=this.geohashes)===null||t===void 0?void 0:t[0]},set:function(t){if(e.isGeohash(t)){var n=e.generateFilterableGeohash(String(t)).sort(e.sortGeohashesFn);this._updateGeohashTags(n)}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geohashes",{get:function(){var t=this.tags.filter(e.geohashFilterFn).map((function(n){return n[1]})).sort(e.sortGeohashesFn);if(t.length)return t},set:function(t){t=t.filter(e.isGeohash),this._removeGeoHashes(),this._updateGeohashTags(Array.from(new Set(t)))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"countryCode",{get:function(){return this.tagValuesByMarker("l","countryCode")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"countryName",{get:function(){return this.tagValueByMarker("l","countryName")},set:function(t){this._setGeoTag("countryName",t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"regionCode",{get:function(){return this.tagValueByMarker("l","regionCode")},set:function(t){this._setGeoTag("regionCode",t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"regionName",{get:function(){return this.tagValueByMarker("l","regionName")},set:function(t){this._setGeoTag("regionName",t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"continentName",{get:function(){return this.tagValueByMarker("l","continentName")},set:function(t){this._setGeoTag("continentName",t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geocode",{get:function(){var t;return((t=this.geocodes.find((function(n){return n.format==="alpha"&&n.length===2})))===null||t===void 0?void 0:t.code)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geocodeAlpha2",{get:function(){return this.geocode},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geocodeAlpha3",{get:function(){var t;return((t=this.geocodes.find((function(n){return n.format==="alpha"&&n.length===3})))===null||t===void 0?void 0:t.code)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geocodeNumeric",{get:function(){var t;return((t=this.geocodes.find((function(n){return n.format==="numeric"})))===null||t===void 0?void 0:t.code)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"geocodes",{get:function(){var t=this.tags.filter((function(n){return n[0]==="l"&&n[2].toLowerCase().includes("countrycode")})).map((function(n){return n[1]}));return t.length?wS(t):[]},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lat",{get:function(){var t;return(t=this._dd)===null||t===void 0?void 0:t.lat},set:function(t){this._dd||(this._dd={lat:0,lon:0}),this._dd.lat=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lon",{get:function(){var t;return(t=this._dd)===null||t===void 0?void 0:t.lon},set:function(t){this._dd||(this._dd={lat:0,lon:0}),this._dd.lon=t},enumerable:!1,configurable:!0}),e.prototype.geoObject=function(){var t={};return this.lat&&(t.lat=this.lat),this.lon&&(t.lon=this.lon),this.geohash&&(t.geohash=this.geohash),this.geohashes&&(t._geohashes=this.geohashes),this.countryCode&&(t.countryCode=this.countryCode),this.countryName&&(t.countryName=this.countryName),this.regionCode&&(t.regionCode=this.regionCode),t},e.encodeGeohash=function(t,n){n===void 0&&(n=this.GEOHASH_PRECISION);for(var o=e.parseCoords(t),i=o.lat,s=o.lon,a=!0,c=[-90,90],u=[-180,180],f=0,l=0,h="";h.length<n;){var g=void 0;a?s>(g=(u[0]+u[1])/2)?(l|=1<<4-f,u[0]=g):u[1]=g:i>(g=(c[0]+c[1])/2)?(l|=1<<4-f,c[0]=g):c[1]=g,a=!a,f<4?f++:(h+=e.BASE32.charAt(l),f=0,l=0)}return h},e.decodeGeohash=function(t){for(var n=!0,o=[-90,90],i=[-180,180],s=0;s<t.length;s++)for(var a=t.charAt(s).toLowerCase(),c=e.BASE32.indexOf(a),u=0;u<5;u++){var f=1<<4-u;n?e.decodeIntRefine(i,c,f):e.decodeIntRefine(o,c,f),n=!n}return{lat:(o[0]+o[1])/2,lon:(i[0]+i[1])/2}},e.isGeohash=function(t){if(!t||t==="")return!1;t=t.toLowerCase();for(var n=0;n<t.length;n++)if(e.BASE32.indexOf(t.charAt(n))===-1)return!1;return!0},e.distance=function(t,n){var o=e.parseCoords(t),i=o.lat,s=o.lon,a=e.parseCoords(n),c=a.lat,u=a.lon,f=this.EARTH_RADIUS,l=e.toRadians(c-i),h=e.toRadians(u-s),g=Math.sin(l/2)*Math.sin(l/2)+Math.cos(e.toRadians(i))*Math.cos(e.toRadians(c))*Math.sin(h/2)*Math.sin(h/2);return 2*f*Math.atan2(Math.sqrt(g),Math.sqrt(1-g))},e.toRadians=function(t){return t*(Math.PI/180)},e.decodeIntRefine=function(t,n,o){var i=(t[0]+t[1])/2;(n&o)>0?t[0]=i:t[1]=i},e.prototype.removeTagByKeyValue=function(t,n){this.tags=this.tags.filter((function(o){return n!==void 0?o[0]!==n&&o[1]!==t:o[1]!==t}))},e.prototype.removeTagByMarker=function(t,n){this.tags=this.tags.filter((function(o){return!(o[0]===t&&o[o.length-1]===n)}))},e.prototype.tagValueByMarker=function(t,n){var o=this.tags.find((function(i){return i[0]===t&&i[i.length-1]===n}));return o?o[1]:void 0},e.prototype.tagValuesByMarker=function(t,n){var o=this.tags.filter((function(i){return i[0]===t&&i[i.length-1]===n})).map((function(i){return i[1]})).flat();return o!=null&&o.length?o:void 0},Object.defineProperty(e.prototype,"indexedTags",{get:function(){return this.tags.filter((function(t){return t[0].length===1}))},enumerable:!1,configurable:!0}),e.prototype._setGeoTag=function(t,n){this.removeTagByKeyValue(t),this.removeTagByMarker("g",t),this.tags.push(["G",t]),this.tags.push(["g",n,t])},e.prototype._removeGeoHashes=function(){this.removeTagByKeyValue("gh","G"),this.tags=this.tags.filter((function(t){return!e.geohashFilterFn(t)}))},e.prototype._updateGeohashTags=function(t){var n=this;this._removeGeoHashes(),this.tags.push(["G","gh"]),t.forEach((function(o){n.tags.push(["g",o,"gh"])}))},e.EARTH_RADIUS=6371,e.GEOHASH_PRECISION=12,e.BASE32="0123456789bcdefghjkmnpqrstuvwxyz",e.geohashFilterFn=function(t){return t[0]==="g"&&(t.length===2||t[2]==="gh"||t[2]==="geohash")},e.sortGeospatial=function(t,n,o){o===void 0&&(o=!0);var i=Array.from(n),s=e.parseCoords(t),a=s.lat,c=s.lon;if(isNaN(a)||isNaN(c)||!isFinite(a)||!isFinite(c))throw new Error("(lat) and (lon), respectively, must be numbers and finite.");return i.sort((function(u,f){if(!(u!=null&&u.lat&&(u!=null&&u.lon)&&(f!=null&&f.lat)&&(f!=null&&f.lon)))return 0;var l=e.distance({lat:a,lon:c},{lat:u.lat,lon:u.lon}),h=e.distance({lat:a,lon:c},{lat:f.lat,lon:f.lon});return o?l-h:h-l})),new Set(i)},e.parseCoords=function(t){return typeof t=="string"?e.decodeGeohash(t):t},e})(En),wS=function(r){for(var e=[],t=0,n=r;t<n.length;t++){var o=n[t],i=!isNaN(Number(o))&&o!=="";e.push({code:o,type:"ISO-3166-1",format:i?"numeric":"alpha",length:i?void 0:o.length})}return e}});var Ms,zd=$(()=>{"use strict";le();ic();Ms=(function(){function r(e){typeof e=="string"&&(e=JSON.parse(e)),this._json=e,this._hash=Yn(this._json)}return Object.defineProperty(r.prototype,"name",{get:function(){return this.json.name},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"pubkey",{get:function(){var e;return(e=this.json)===null||e===void 0?void 0:e.pubkey},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"description",{get:function(){return this.json.description},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"icon",{get:function(){return this.json.icon},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"banner",{get:function(){return this.json.banner},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"contact",{get:function(){return this.json.contact},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"software",{get:function(){return this.json.software},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"version",{get:function(){return this.json.version},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"limitation",{get:function(){return this.json.limitation},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"restrictedWrites",{get:function(){var e,t,n;return typeof((t=(e=this.json)===null||e===void 0?void 0:e.limitation)===null||t===void 0?void 0:t.restricted_writes)=="boolean"&&((n=this.json.limitation)===null||n===void 0?void 0:n.restricted_writes)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"paymentRequired",{get:function(){var e,t,n;return typeof((t=(e=this.json)===null||e===void 0?void 0:e.limitation)===null||t===void 0?void 0:t.payment_required)=="boolean"&&((n=this.json.limitation)===null||n===void 0?void 0:n.payment_required)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"authRequired",{get:function(){var e,t,n;return typeof((t=(e=this.json)===null||e===void 0?void 0:e.limitation)===null||t===void 0?void 0:t.auth_required)=="boolean"&&((n=this.json.limitation)===null||n===void 0?void 0:n.auth_required)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"powRequired",{get:function(){return typeof this.minPowDifficulty=="number"&&this.minPowDifficulty>0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"minPowDifficulty",{get:function(){var e,t,n;return typeof((t=(e=this.json)===null||e===void 0?void 0:e.limitation)===null||t===void 0?void 0:t.min_pow_difficulty)=="number"?(n=this.json.limitation)===null||n===void 0?void 0:n.min_pow_difficulty:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"hash",{get:function(){var e;return(e=this._hash)!==null&&e!==void 0?e:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"supportedNips",{get:function(){var e,t,n,o;return Array.isArray((e=this.json)===null||e===void 0?void 0:e.supported_nips)?(o=this.json)===null||o===void 0?void 0:o.supported_nips:typeof((t=this.json)===null||t===void 0?void 0:t.supported_nips)=="number"?[(n=this.json)===null||n===void 0?void 0:n.supported_nips]:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"paymentsUrl",{get:function(){var e;return((e=this.json)===null||e===void 0?void 0:e.payments_url)||void 0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"fees",{get:function(){return this.json.fees},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxMessageLength",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_message_length},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxMessageTags",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_event_tags},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxSubscriptions",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_subscriptions},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxFilters",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_filters},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxLimit",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_limit},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxSubidLength",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_subid_length},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxEventTags",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_event_tags},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"maxContentLength",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.max_content_length},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"createdAtLowerLimit",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.created_at_lower_limit},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"createdAtUpperLimit",{get:function(){var e;return(e=this.limitation)===null||e===void 0?void 0:e.created_at_upper_limit},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"retention",{get:function(){var e;return(e=this.json)===null||e===void 0?void 0:e.retention},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"hasRetention",{get:function(){return!!this.retention},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"json",{get:function(){return this._json},enumerable:!1,configurable:!0}),r})()});var vu,Kd=$(()=>{"use strict";le();$v();wu();zd();Nc();vu=(function(r){function e(t){var n=r.call(this,t)||this;return n.nip11=n.content,n}return he(e,r),Object.defineProperty(e.prototype,"nip11",{get:function(){if(this._nip11!==!1)return this._nip11 instanceof Ms?this._nip11:void 0},set:function(t){if(typeof t=="string"&&t.length>2)try{var n=JSON.parse(t);Object.keys(t).length>0?this._nip11=new Ms(n):this._nip11=!1}catch(o){this._nip11=!1}else typeof t=="object"&&Object.keys(t).length>0&&(this._nip11=new Ms(t))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasNip11",{get:function(){var t;return this._nip11 instanceof Ms&&((t=Object.keys(this._nip11))===null||t===void 0?void 0:t.length)>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"nip11Hash",{get:function(){var t;if(this.hasNip11)return(t=this._nip11)===null||t===void 0?void 0:t.hash},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"operatorPubkey",{get:function(){var t,n,o=(t=this.nip11)===null||t===void 0?void 0:t.pubkey;return o||((n=this.tags.find((function(i){return i[0]==="p"})))===null||n===void 0?void 0:n[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"operatorPubkeyValid",{get:function(){if(this.operatorPubkey)return Lm(this.operatorPubkey)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"relay",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="d"})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){return this.relay},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"monitorPubkey",{get:function(){return this.pubkey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"created_at",{get:function(){return this.json.created_at},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"networks",{get:function(){return this.tags.filter((function(t){return t[0]==="n"})).map((function(t){return t[1]}))||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rtt",{get:function(){var t,n=(t=this.tags.find((function(o){return o[0]==="rtt-open"})))===null||t===void 0?void 0:t[1];return n?parseInt(n):null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"supportedNips",{get:function(){var t,n,o,i;return this.nip11?(!((n=(t=this.nip11)===null||t===void 0?void 0:t.supportedNips)===null||n===void 0)&&n.map((function(s){return s.toString()})),Array.from(new Set(((i=(o=this.nip11)===null||o===void 0?void 0:o.supportedNips)===null||i===void 0?void 0:i.map((function(s){return s.toString()})))||[]))):null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.name)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"software",{get:function(){var t,n;return((n=(t=this.nip11)===null||t===void 0?void 0:t.software)===null||n===void 0?void 0:n.toLowerCase())||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.version)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"description",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.description)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"contact",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.contact)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasLimitations",{get:function(){var t;return!!(!((t=this.nip11)===null||t===void 0)&&t.limitation)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"retentionPolicy",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.retention)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasRetentionPolicy",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.hasRetention)||!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxMessageLength",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxMessageLength)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxMessageTags",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxMessageTags)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"paymentsUrl",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.paymentsUrl)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"fees",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.fees)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"subscriptionFee",{get:function(){var t;return((t=this.fees)===null||t===void 0?void 0:t.subscription)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"publicationFee",{get:function(){var t;return((t=this.fees)===null||t===void 0?void 0:t.publication)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"admissionFee",{get:function(){var t;return((t=this.fees)===null||t===void 0?void 0:t.admission)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isp",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="l"&&n[2].includes("isp")})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"as",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="l"&&n[2]==="host.as"})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"asname",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="l"&&n[2]==="host.asn"})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"ipv4",{get:function(){return this.tags.filter((function(t){return t[0]==="l"&&t[2].includes("ipv4")})).map((function(t){return t[1]}))||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"ipv6",{get:function(){return this.tags.filter((function(t){return t[0]==="l"&&t[2].includes("ipv6")})).map((function(t){return t[1]}))||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"sslValidTo",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="l"&&n[2]==="ssl.validTo"})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"sslIssuer",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="l"&&n[2]==="ssl.issuer"})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"check",{get:function(){return qv(this.json)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.icon)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasIcon",{get:function(){return!!this.icon},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"banner",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.banner)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasBanner",{get:function(){return!!this.banner},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxSubscriptions",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxSubscriptions)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxFilters",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxFilters)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLimit",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxLimit)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxSubidLength",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxSubidLength)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxEventTags",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxEventTags)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxContentLength",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.maxContentLength)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"createdAtLowerLimit",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.createdAtLowerLimit)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"createdAtUpperLimit",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.createdAtUpperLimit)||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"paymentRequired",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.paymentRequired)||!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"authRequired",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.authRequired)||!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"powRequired",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.powRequired)||!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"minPowDifficulty",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.minPowDifficulty)||!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"restrictedWrites",{get:function(){var t;return((t=this.nip11)===null||t===void 0?void 0:t.restrictedWrites)||!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hostname",{get:function(){return this.url?new URL(this.url).hostname:null},enumerable:!1,configurable:!0}),e.keys=["id","relay","monitorPubkey","created_at","networks","rtt","operatorPubkey","operatorPubkeyValid","name","description","supportedNips","software","icon","hasIcon","banner","hasBanner","version","hasNip11","nip11Hash","hasRetention","retentionPolicy","hasLimitations","paymentRequired","authRequired","powRequired","minPowDifficulty","restrictedWrites","maxSubscriptions","maxFilters","maxLimit","maxSubidLength","maxEventTags","maxContentLength","createdAtLowerLimit","createdAtUpperLimit","dd","geohash","geocode","isp","as","asname","ipv4","ipv6","sslValidTo","sslIssuer","fees","subscriptionFee","publicationFee","admissionFee"],e})(mu)});var qP,Wv=$(()=>{"use strict";le();uo();qP=(function(r){function e(t){var n=r.call(this,t)||this;return t.kind!==e.KIND&&console.warn("[DeltaEvent] Expected kind ".concat(e.KIND,", got ").concat(t.kind)),n}return he(e,r),Object.defineProperty(e.prototype,"relay",{get:function(){var t;return((t=this.tags.find((function(n){return n[0]==="r"})))===null||t===void 0?void 0:t[1])||null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){return this.relay},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"monitorPubkey",{get:function(){return this.pubkey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"operationalStatus",{get:function(){var t,n=(t=this.tags.find((function(o){return o[0]==="status"||o[0]==="O"})))===null||t===void 0?void 0:t[1];return n==="init"||n==="up"||n==="down"?n:null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rtt",{get:function(){var t,n=(t=this.tags.find((function(o){return o[0]==="rtt-open"})))===null||t===void 0?void 0:t[1];return n?parseInt(n,10):null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"retryCount",{get:function(){var t,n=(t=this.tags.find((function(o){return o[0]==="retry-count"})))===null||t===void 0?void 0:t[1];return n?parseInt(n,10):null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"periods",{get:function(){return this.tags.filter((function(t){return t[0]==="T"})).map((function(t){return t[1]}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"online",{get:function(){var t=this.operationalStatus;return t==="up"||t==="init"||t!=="down"&&this.rtt!==null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isStatusTransition",{get:function(){return this.operationalStatus!==null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"deltas",{get:function(){for(var t=[],n=0,o=this.tags;n<o.length;n++){var i=o[n];i[0]==="+"&&i.length>=3?t.push({key:i[1],value:i[2],type:"add"}):i[0]==="-"&&i.length>=2?t.push({key:i[1],value:i[2]||"",type:"remove"}):i[0]==="~"&&i.length>=3&&t.push({key:i[1],value:i[2],type:"change"})}return t},enumerable:!1,configurable:!0}),e.KIND=1066,e.keys=["id","relay","monitorPubkey","created_at","operationalStatus","rtt","retryCount","periods","online"],e})(En)});var vS,FP,Hv=$(()=>{"use strict";le();Kd();vS=(function(){function r(e){this.checks=e}return r.prototype.getValue=function(e){switch(e){case"seenTimes":return this.checks.length;case"rtt":var t=this.checks.map((function(g){return g.rtt})).filter((function(g){return typeof g=="number"}));return t.length>0?t.reduce((function(g,y){return g+y}),0)/t.length:null;case"rttNormalized":var n=this.getValue("rtt");if(n===null||!this.normalizationContext)return null;var o=this.normalizationContext,i=o.globalMin,s=o.range;return Math.round((n-i)/s*1e4)/1e4;case"seenBy":return this.checks.reduce((function(g,y){return y.monitorPubkey!==null&&y.monitorPubkey!==void 0&&g.push(y.monitorPubkey),g}),[]);case"lastSeen":for(var a=null,c=0,u=this.checks;c<u.length;c++){var f=u[c].created_at;f!=null&&(a===null||f>a)&&(a=f)}return a;default:for(var l=this.checks.length-1;l>=0;l--){var h=this.checks[l][e];if(h!=null)return h}return null}},Object.defineProperty(r.prototype,"aggregate",{get:function(){for(var e={},t=0,n=ue(ue([],vu.keys,!0),["seenTimes","rtt","rttNormalized","seenBy","lastSeen"],!1);t<n.length;t++){var o=n[t];e[o]=this.getValue(o)}return e},enumerable:!1,configurable:!0}),r})(),FP=(function(){function r(e){this._aggregates={},this.groupChecks(e),this.updateNormalizationContext()}return r.prototype.groupChecks=function(e){for(var t=0,n=e;t<n.length;t++){var o=n[t];this.addCheck(o,!1)}},r.prototype.addCheck=function(e,t){t===void 0&&(t=!0);var n=e.relay;if(n&&!e.tags.find((function(i){var s;return i[0]==="a"&&((s=i[1])===null||s===void 0?void 0:s.startsWith("30166:"))}))){var o;try{o=new URL(n).toString()}catch(i){return void console.warn("Could not normalize relay:",n)}this._aggregates[o]||(this._aggregates[o]=new vS([])),this._aggregates[o].checks.push(e),t&&this.updateNormalizationContext()}},r.prototype.updateNormalizationContext=function(){var e=[];for(var t in this._aggregates){var n=this._aggregates[t].getValue("rtt");n!==null&&e.push(n)}var o=e.length>0?Math.min.apply(Math,e):0,i={globalMin:o,range:(e.length>0?Math.max.apply(Math,e):0)-o||1};for(var t in this._aggregates)this._aggregates[t].normalizationContext=i},r.prototype.getAggregates=function(){return this._aggregates},r})()});var Fv,Dv=$(()=>{"use strict";Fv=(function(){function r(e){this.pubkey=e}return r.prototype.generateKey=function(e,t,n){return"".concat(this.pubkey,":").concat(t,":").concat(e,":").concat(n)},r})()});var Li,zv=$(()=>{"use strict";Ja();Dv();Li=(function(){function r(e){this.pubkey=e,this.localStorage=new ri("monitor"),this.keyHelper=new Fv(e)}return Object.defineProperty(r.prototype,"lastSyncSince",{set:function(e){this.setLastSync(e.kind,"since",e.value)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"lastSyncUntil",{set:function(e){this.setLastSync(e.kind,"until",e.value)},enumerable:!1,configurable:!0}),r.prototype.setLastSync=function(e,t,n){var o=this.keyHelper.generateKey("lastSync",e,t);this.localStorage.setItem(o,n.toString())},r.prototype.getLastSync=function(e){var t=this.getLastSyncSince(e),n=this.getLastSyncUntil(e);if(t||n)return{since:t,until:n}},r.prototype.getLastSyncSince=function(e){return this.getLastSyncValue(e,"since")},r.prototype.getLastSyncUntil=function(e){return this.getLastSyncValue(e,"until")},r.prototype.getLastSyncValue=function(e,t){var n=this.keyHelper.generateKey("lastSync",e,t),o=this.localStorage.getItem(n);if(o)return parseInt(o)},r})()});var Kv,Vv=$(()=>{"use strict";le();wu();Kv=(function(r){function e(){return r!==null&&r.apply(this,arguments)||this}return he(e,r),e.prototype.keys=function(t){return["pubkey","checks","frequency"]},Object.defineProperty(e.prototype,"networks",{get:function(){return this.tags.filter((function(t){return t[0]==="n"})).map((function(t){return t[1]}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"frequency",{get:function(){var t;return parseInt(((t=this.tags.find((function(n){return n[0]==="frequency"})))===null||t===void 0?void 0:t[1])||"0")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"checks",{get:function(){return this.tags.filter((function(t){return t[0]==="c"})).map((function(t){return t[1]}))},enumerable:!1,configurable:!0}),e})(mu)});var Gv,Vd=$(()=>{"use strict";le();Hd();uo();Gv=(function(r){function e(t){var n=r.call(this,t)||this;try{n.parsed=JSON.parse(n.content)}catch(o){n.parsed={}}return n}return he(e,r),Object.defineProperty(e.prototype,"name",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.name},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"photo",{get:function(){var t,n;return((t=this.parsed)===null||t===void 0?void 0:t.photo)||((n=this.parsed)===null||n===void 0?void 0:n.picture)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"picture",{get:function(){return this.photo},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"about",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.about},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"website",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.website},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"banner",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.banner},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lud06",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.lud06},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lud16",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.lud16},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"nip05",{get:function(){var t;return(t=this.parsed)===null||t===void 0?void 0:t.nip05},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parsed",{get:function(){return this._parsed},set:function(t){this._parsed=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"npub",{get:function(){return co.npubEncode(this.pubkey)},enumerable:!1,configurable:!0}),e})(En)});var Gd,Zd=$(()=>{"use strict";le();uo();Gd=(function(r){function e(){return r!==null&&r.apply(this,arguments)||this}return he(e,r),Object.defineProperty(e.prototype,"relays",{get:function(){return this.json.tags.filter((function(t){return t[0]==="r"})).map((function(t){return t[1]}))},enumerable:!1,configurable:!0}),e})(En)});var Zv,Yv=$(()=>{"use strict";Zv=(function(){function r(e){e===void 0&&(e=256),this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=e,this.ctx=this.canvas.getContext("2d")}return r.generate=function(e){return this.instance||(this.instance=new r),this.instance.create(e)},r.prototype.create=function(e){var t=this.prng(e),n=this.ctx,o=this.canvas.width;n.clearRect(0,0,o,o);var i=this.generatePalette(t);switch(n.fillStyle=i.background,n.fillRect(0,0,o,o),Math.floor(3*t())){case 0:this.drawSymmetricalPattern(t,i,o);break;case 1:this.drawFractalPattern(t,i,o);break;case 2:this.drawSpiralPattern(t,i,o)}return this.canvas.toDataURL()},r.prototype.drawFractalPattern=function(e,t,n){var o=this.ctx,i=1+1.5*e(),s=e()*n-n*(i-1)/2,a=e()*n-n*(i-1)/2,c=5+Math.floor(3*e()),u=n/2*i*.8,f=Math.floor(3*e());f===0?this.drawTreeFractal(e,o,s,a,-Math.PI/2,u,c,t):f===1?this.drawCircleFractal(e,o,s,a,u,c,t):this.drawPolygonFractal(e,o,s,a,u,c,t)},r.prototype.drawTreeFractal=function(e,t,n,o,i,s,a,c){if(!(a===0||s<2)){var u=n+Math.cos(i)*s,f=o+Math.sin(i)*s;t.strokeStyle=c.colors[a%c.colors.length],t.lineWidth=a,t.beginPath(),t.moveTo(n,o),t.lineTo(u,f),t.stroke();for(var l=2+Math.floor(2*e()),h=0;h<l;h++){var g=i+(e()-.5)*Math.PI/2,y=s*(.5+.3*e());this.drawTreeFractal(e,t,u,f,g,y,a-1,c)}}},r.prototype.drawCircleFractal=function(e,t,n,o,i,s,a){if(!(s===0||i<2)){t.fillStyle=a.colors[s%a.colors.length],t.beginPath(),t.arc(n,o,i,0,2*Math.PI),t.fill();for(var c=3+Math.floor(3*e()),u=0;u<c;u++){var f=u/c*Math.PI*2+e()*Math.PI/c,l=n+Math.cos(f)*i,h=o+Math.sin(f)*i,g=.5*i;this.drawCircleFractal(e,t,l,h,g,s-1,a)}}},r.prototype.drawPolygonFractal=function(e,t,n,o,i,s,a){if(!(s===0||i<3)){var c=3+s%5,u=e()*Math.PI*2;t.save(),t.translate(n,o),t.rotate(u),t.beginPath();for(var f=0;f<=c;f++){var l=f/c*Math.PI*2,h=Math.cos(l)*i,g=Math.sin(l)*i;t.lineTo(h,g)}for(t.closePath(),t.fillStyle=a.colors[s%a.colors.length],t.fill(),t.restore(),f=0;f<c;f++){l=f/c*Math.PI*2+u;var y=n+Math.cos(l)*i,d=o+Math.sin(l)*i,p=.5*i;this.drawPolygonFractal(e,t,y,d,p,s-1,a)}}},r.prototype.drawSymmetricalPattern=function(e,t,n){for(var o=this.ctx,i=1+1.5*e(),s=e()*n-n*(i-1)/2,a=e()*n-n*(i-1)/2,c=3+Math.floor(3*e()),u=0;u<c;u++){var f=n/2*i*((c-u)/c),l=5+Math.floor(4*e()),h=e()*Math.PI*2;o.save(),o.translate(s,a),o.rotate(h),o.beginPath();for(var g=0;g<=l;g++){var y=g/l*Math.PI*2,d=Math.cos(y)*f,p=Math.sin(y)*f;o.lineTo(d,p)}o.closePath(),o.fillStyle=t.colors[u%t.colors.length],o.fill(),o.restore()}},r.prototype.drawSpiralPattern=function(e,t,n){var o=this.ctx,i=1+1.5*e(),s=e()*n-n*(i-1)/2,a=e()*n-n*(i-1)/2,c=n/2*i*1.2,u=3+Math.floor(3*e()),f=2+6*e();o.lineWidth=f,o.beginPath();for(var l=0;l<=100*u;l++){var h=(b=l/(100*u))*Math.PI*2*u,g=b*c,y=s+Math.cos(h)*g,d=a+Math.sin(h)*g;o.lineTo(y,d)}o.strokeStyle=t.colors[0],o.stroke();var p=10+Math.floor(10*e());for(l=0;l<p;l++){h=(b=l/p)*Math.PI*2*u,g=b*c,y=s+Math.cos(h)*g,d=a+Math.sin(h)*g;var b,m=n/20*i+e()*n/20*i,x=3+Math.floor(5*e()),S=e()*Math.PI*2;o.save(),o.translate(y,d),o.rotate(S),o.beginPath();for(var I=0;I<=x;I++){var _=I/x*Math.PI*2,O=Math.cos(_)*m,w=Math.sin(_)*m;o.lineTo(O,w)}o.closePath(),o.fillStyle=t.colors[(l+1)%t.colors.length],o.fill(),o.restore()}},r.prototype.generatePalette=function(e){var t=360*e();e();var n=["hsl(".concat(t,", 70%, 50%)"),"hsl(".concat((t+120)%360,", 70%, 50%)"),"hsl(".concat((t+240)%360,", 70%, 50%)")],o=Math.floor(e()*n.length);return{background:n.splice(o,1)[0],colors:n}},r.prototype.prng=function(e){for(var t=2166136261,n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return function(){return t+=t<<13,t^=t>>>7,t+=t<<3,t^=t>>>17,((t+=t<<5)>>>0)/4294967295}},r})()});var Us,Yd,Jd=$(()=>{"use strict";le();fi();zv();Vv();Vd();Zd();Yv();(function(r){r.Online="ONLINE",r.Offline="OFFLINE",r.Dead="DEAD"})(Us||(Us={}));Yd=(function(){function r(e){if(this.enabled=!1,this.priority=-1,this.reportedOnline=0,this.deadThreshold=2592e3,this._lastActive=-1,this._frequencyMutiplier=1.5,this._minFrequencySeconds=3600,this._maxFrequencySeconds=86400,e.kind!==10166)throw new Error("Monitor must be created from a 10166 event");this.addRegistration(e),this.state=new Li(this.pubkey)}return r.fromCache=function(e){var t,n,o;if(e!=null&&e.registration){var i=new r(e.registration);return e!=null&&e.profile&&i.addProfile(e.profile),e!=null&&e.relays&&i.addRelays(e.relays),i.enabled=(t=e.enabled)!==null&&t!==void 0&&t,i.priority=(n=e==null?void 0:e.priority)!==null&&n!==void 0?n:0,i.lastActive=(o=e==null?void 0:e.lastActive)!==null&&o!==void 0?o:-1,i}console.warn("Monitor.fromCache() called without valid registration event")},r.prototype.toCache=function(){var e,t,n;return{pubkey:this.pubkey,registration:(e=this.registration)===null||e===void 0?void 0:e.json,profile:(t=this.profile)===null||t===void 0?void 0:t.json,relays:(n=this._relays)===null||n===void 0?void 0:n.json,enabled:this.enabled,priority:this.priority,lastActive:this.lastActive}},Object.defineProperty(r.prototype,"events",{get:function(){var e,t,n,o,i,s;return[(t=(e=this==null?void 0:this.profile)===null||e===void 0?void 0:e.json)!==null&&t!==void 0?t:void 0,(o=(n=this.registration)===null||n===void 0?void 0:n.json)!==null&&o!==void 0?o:void 0,(s=(i=this._relays)===null||i===void 0?void 0:i.json)!==null&&s!==void 0?s:void 0].filter(Boolean)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"active",{get:function(){return!(this.lastActive<0)&&Math.round(Date.now()/1e3)-this.frequency<this.lastActive},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"registration",{get:function(){return this._registration},set:function(e){this._registration=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"profile",{get:function(){return this._profile},set:function(e){this._profile=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"relays",{get:function(){var e;return((e=this._relays)===null||e===void 0?void 0:e.relays)||[]},set:function(e){this._relays=new Gd(e)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"name",{get:function(){var e;return((e=this.profile)===null||e===void 0?void 0:e.name)||""},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"pfp",{get:function(){return this._pfp||(this._pfp=Zv.generate(this.pubkey)),this._pfp},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"photo",{get:function(){var e;return((e=this.profile)===null||e===void 0?void 0:e.photo)||this.pfp},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"image",{get:function(){return this.photo},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"picture",{get:function(){return this.photo},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"banner",{get:function(){var e;return(e=this.profile)===null||e===void 0?void 0:e.banner},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"checks",{get:function(){var e;return((e=this.registration)===null||e===void 0?void 0:e.checks)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"lastActive",{get:function(){return this._lastActive},set:function(e){(!this.lastActive||e>this.lastActive)&&(this._lastActive=e,this.emitUpdate("lastActive",e))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"pubkey",{get:function(){var e;return(e=this.registration)===null||e===void 0?void 0:e.pubkey},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"networks",{get:function(){var e;return((e=this.registration)===null||e===void 0?void 0:e.networks)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"eventId",{get:function(){var e;return(e=this.registration)===null||e===void 0?void 0:e.id},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"frequencyMultiplier",{get:function(){return this._frequencyMutiplier},set:function(e){this.emitUpdate(),this._frequencyMutiplier=e},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"frequency",{get:function(){var e,t=(e=this.registration)===null||e===void 0?void 0:e.frequency,n=(t&&t>0?t:43200)*this.frequencyMultiplier,o=Math.min(this._maxFrequencySeconds,Math.max(this._minFrequencySeconds,n));return Math.round(o)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"geocode",{get:function(){var e;return((e=this.registration)===null||e===void 0?void 0:e.geocode)||null},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"checkFilter",{get:function(){var e=Math.round(Date.now()/1e3);return{kinds:[30166],since:e-(this==null?void 0:this.frequency),until:e,authors:[this.pubkey]}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"checkFilterSync",{get:function(){return{kinds:[30166],since:this.getLastSyncSince(30166)||Math.round(Date.now()/1e3)-(this==null?void 0:this.frequency),authors:[this.pubkey]}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"checkFilterDead",{get:function(){return{kinds:[30166],since:0,until:this.isDeadBefore,authors:[this.pubkey]}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"checkFilterOffline",{get:function(){return{kinds:[30166],since:this.isOfflineBetween[0],until:this.isOfflineBetween[1],authors:[this.pubkey]}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"checkFilterNotOnline",{get:function(){return{kinds:[30166],since:0,until:this.isOnlineAfter-1,authors:[this.pubkey]}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"isDeadBefore",{get:function(){return Math.round(Date.now()/1e3)-this.deadThreshold},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"isOnlineAfter",{get:function(){return Math.round(Date.now()/1e3)-this.frequency},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"isOfflineBetween",{get:function(){return[this.isDeadBefore,this.isOnlineAfter]},enumerable:!1,configurable:!0}),r.prototype.enable=function(){this.enabled=!0,this.emitUpdate()},r.prototype.disable=function(){this.enabled=!1,this.emitUpdate()},r.prototype.relayIs=function(e){return this.relayIsOnline(e)?Us.Online:this.relayIsDead(e)?Us.Dead:Us.Offline},r.prototype.relayIsOffline=function(e,t){t===void 0&&(t=!1);var n=e.created_at;return n<this.isOnlineAfter&&(!t||n>=this.isDeadBefore)},r.prototype.relayIsOnline=function(e){return e.created_at>=this.isOnlineAfter},r.prototype.relayIsDead=function(e){return e.created_at<this.isDeadBefore},r.prototype.returnOnlineRelays=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,e.filter(this.relayIsOnline.bind(this))]}))}))},r.prototype.returnOfflineRelays=function(e){return j(this,void 0,void 0,(function(){var t=this;return U(this,(function(n){return[2,e.filter((function(o){return t.relayIsOffline(o)}))]}))}))},r.prototype.returnDeadRelays=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,e.filter(this.relayIsDead.bind(this))]}))}))},r.prototype.relaysByLiveness=function(e){return j(this,void 0,void 0,(function(){var t,n=this;return U(this,(function(o){return t={online:[],offline:[],dead:[]},this!=null&&this.frequency?(e.forEach((function(i){n.relayIsOnline(i)?t.online.push(i):n.relayIsOffline(i)?t.offline.push(i):n.relayIsDead(i)&&t.dead.push(i)})),[2,t]):(t.online=e,[2,t])}))}))},r.prototype.maybeUpdateLastActive=function(e){return e.kind===30166&&!!(e!=null&&e.created_at)&&e.created_at>this.lastActive&&(this.lastActive=e.created_at,!0)},r.prototype.getLastSyncSince=function(e){return this!=null&&this.state||(this.state=new Li(this.pubkey)),this.state.getLastSyncSince(e)},r.prototype.getLastSyncUntil=function(e){return this!=null&&this.state||(this.state=new Li(this.pubkey)),this.state.getLastSyncUntil(e)},r.prototype.getLastSync=function(e){return this!=null&&this.state||(this.state=new Li(this.pubkey)),this.state.getLastSync(e)},r.prototype.setLastSync=function(e,t,n){this!=null&&this.state||(this.state=new Li(this.pubkey)),this.state.setLastSync(e,t,n)},r.prototype.addRegistration=function(e){this._registration=new Kv(e),this.emitUpdate("registration",this.registration)},r.prototype.addProfile=function(e){this._profile=new Gv(e),this.emitUpdate("profile",this.profile)},r.prototype.addRelays=function(e){this._relays=new Gd(e),this.emitUpdate("relays",this.relays)},r.prototype.emitUpdate=function(e,t){e&&t&&Q.emit("monitor:update:".concat(e),{pubkey:this.pubkey,value:t}),Q.emit("monitor:update",this)},r})()});var qt,Jv,Xv=$(()=>{"use strict";le();Jd();(function(r){r.Follows="FOLLOWS",r.Wot="WOT",r.Checks="CHECKS",r.LoadSpeed="LOADSPEED",r.Geohash="GEOHASH",r.Country="COUNTRY",r.Network="NETWORK"})(qt||(qt={})),qt.Network,qt.Checks,qt.Geohash,qt.Follows,qt.Wot,qt.Checks;Jv=(function(){function r(){this.monitors=new Map}return r.getInstance=function(){return r.instance||(r.instance=new r),r.instance},Object.defineProperty(r.prototype,"monitorsMap",{get:function(){return this.monitors},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"array",{get:function(){return Array.from(this.monitors.values())},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"activeMonitors",{get:function(){return this.array.filter((function(e){return e.active}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"enabledMonitors",{get:function(){return this.sortedMonitors.filter((function(e){return e.enabled}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"enabledActiveMonitors",{get:function(){return this.enabledMonitors.filter((function(e){return e.active}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"disabledMonitors",{get:function(){return this.sortedMonitors.filter((function(e){return!e.enabled}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"disabledActiveMonitors",{get:function(){return this.disabledMonitors.filter((function(e){return e.active}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"disabledInactiveMonitors",{get:function(){return this.disabledMonitors.filter((function(e){return!e.active}))},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"sortedMonitors",{get:function(){return this.sortMonitors()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"qualified",{get:function(){return this.array.filter((function(e){var t,n;return!!(e!=null&&e.lastActive)&&!!(!((n=(t=e==null?void 0:e.registration)===null||t===void 0?void 0:t.checks)===null||n===void 0)&&n.length)&&!!(e!=null&&e.profile)&&!!(e!=null&&e.relays)&&e.lastActive>0}))},enumerable:!1,configurable:!0}),r.prototype.isRelayOnline=function(e){return this.array.some((function(t){return t.relayIsOnline(e)}))},r.prototype.isRelayOffline=function(e){return this.array.every((function(t){return t.relayIsOffline(e)||t.relayIsDead(e)}))},r.prototype.isRelayDead=function(e){return this.array.every((function(t){return t.relayIsDead(e)}))},r.prototype.loadMonitors=function(e){var t=this;e.forEach((function(n){n!=null&&n.registration&&t.monitors.set(n.pubkey,Yd.fromCache(n))}))},r.prototype.handleEvent=function(e){var t=e.kind,n=e.pubkey;if([0,10002,10166].includes(t)){var o=this.monitors.get(n);if(o||t!==10166){if(!o)return void console.warn("Monitor not found for pubkey: ".concat(n))}else o=new Yd(e),this.monitors.set(n,o);t===10166?o.addRegistration(e):t===0?o.addProfile(e):t===10002&&o.addRelays(e),this.monitors.set(n,o)}},r.prototype.updateMonitor=function(e){this.monitors.set(e.pubkey,e)},r.prototype.maybeUpdateLastActive=function(e){var t=this.monitors.get(e.pubkey);return!!t&&t.maybeUpdateLastActive(e)},r.prototype.sortMonitors=function(e,t){switch(e===void 0&&(e=qt.Checks),e){case qt.LoadSpeed:return this.sort("ASC");case qt.Checks:default:return this.sort()}},r.prototype.sort=function(e){e===void 0&&(e="DESC");var t=ue([],this.array,!0),n={};return t.forEach((function(o){var i,s;if(!((i=o==null?void 0:o.registration)===null||i===void 0)&&i.pubkey){var a=0;o.registration&&a++,!((s=o.registration.checks)===null||s===void 0)&&s.length&&(a+=new Set(o.registration.checks).size),o.profile&&a++,o.relays&&a++,o.active||(a=0),n[o.registration.pubkey]=a}})),t.sort((function(o,i){var s,a,c,u,f,l;if(o.active&&!i.active)return-1;if(!o.active&&i.active)return 1;if(o.enabled&&!i.enabled)return-1;if(!o.enabled&&i.enabled)return 1;var h=((a=(s=o.registration)===null||s===void 0?void 0:s.checks)===null||a===void 0?void 0:a.length)||0,g=((u=(c=i.registration)===null||c===void 0?void 0:c.checks)===null||u===void 0?void 0:u.length)||0;if(h!==g)return g-h;var y=o.reportedOnline||0,d=i.reportedOnline||0;if(y!==d)return d-y;var p=o.lastActive||0,b=i.lastActive||0;if(p!==b)return b-p;var m=n[((f=o.registration)===null||f===void 0?void 0:f.pubkey)||""]||0,x=n[((l=i.registration)===null||l===void 0?void 0:l.pubkey)||""]||0;return e==="ASC"?m-x:x-m})),t},r})()});var Qv={};fo(Qv,{MonitorService:()=>Xd});var Xd,Qd=$(()=>{"use strict";le();Ts();Xv();Fd();fi();Xd=(function(r){function e(t){var n=r.call(this,t)||this;return n.DEFAULT_ENABLED_MONITORS=3,n._manager=Jv.getInstance(),n.addRelay("route66","wss://relay.nostr.watch"),n.addRelay("route66","wss://relaypag.es"),n.addRelay("route66","wss://monitorlizard.nostr1.com/"),n.addRelay("userMeta","wss://purplepag.es"),n.addRelay("userMeta","wss://user.kindpag.es"),n.addRelay("userMeta","wss://relay.nostr.band"),n.init(),n}return he(e,r),e.prototype.init=function(){return j(this,void 0,void 0,(function(){var t;return U(this,(function(n){switch(n.label){case 0:return[4,(t=this==null?void 0:this.cacheAdapter)===null||t===void 0?void 0:t.ready()];case 1:return n.sent(),this._ready=!0,[2]}}))}))},e.prototype.ready=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return this._ready?[3,2]:[4,new Promise((function(n){return setTimeout(n,100)}))];case 1:return t.sent(),[3,0];case 2:return[2]}}))}))},Object.defineProperty(e.prototype,"manager",{get:function(){return this._manager},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"monitors",{get:function(){return this.manager.monitorsMap},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"array",{get:function(){return this.manager.array},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"map",{get:function(){return this.manager.monitorsMap},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"sortedMonitors",{get:function(){return this.manager.sortedMonitors},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"enabledMonitors",{get:function(){return this.manager.enabledMonitors},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeEnabledMonitors",{get:function(){return this.manager.enabledActiveMonitors},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabledMonitors",{get:function(){return this.manager.disabledMonitors},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabledActiveMonitors",{get:function(){return this.manager.disabledActiveMonitors},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabledInactiveMonitors",{get:function(){return this.manager.disabledInactiveMonitors},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeMonitors",{get:function(){return this.manager.activeMonitors},enumerable:!1,configurable:!0}),e.prototype.loadMonitors=function(t){this.manager.loadMonitors(t)},e.prototype.fetch=function(t,n){return j(this,void 0,void 0,(function(){var o,i,s,a;return U(this,(function(c){return o=t.filters,i=t.relays,s=t.options,a={filters:o,relays:i,options:s},[2,this._fetch(a,n)]}))}))},e.prototype.fetchOperatorRelaysNotOnline=function(t,n,o){return j(this,void 0,void 0,(function(){var i,s,a;return U(this,(function(c){return i=[],this.activeMonitors.forEach((function(u){i.push(Y(Y({},u.checkFilterNotOnline),{"#p":[t]}))})),s=(n==null?void 0:n.relays)||this.nip66Relays,a={stream:!1,cache:!0,returnResults:!0,keepAlive:!1},[2,this.subscribe({filters:i,relays:s,options:a},o)]}))}))},e.prototype.fetchOperatorRelaysDead=function(t,n,o){return j(this,void 0,void 0,(function(){var i,s,a;return U(this,(function(c){return i=[],this.activeMonitors.forEach((function(u){i.push(Y(Y({},u.checkFilterDead),{"#p":[t]}))})),s=(n==null?void 0:n.relays)||this.nip66Relays,a={stream:!1,cache:!0,returnResults:!0,keepAlive:!1},[2,this.fetch({filters:i,relays:s,options:a},o)]}))}))},e.prototype.sync=function(t,n){return j(this,void 0,void 0,(function(){var o,i,s,a,c,u,f,l=this;return U(this,(function(h){switch(h.label){case 0:return console.log("sync"),o=0,i=new Map,s=function(g){for(var y=0,d=g;y<d.length;y++){var p=d[y],b=p.pubkey,m=p.kind,x="".concat(b,":").concat(m),S=i.get(x)||0;i.set(x,S+1)}},a=function(g){var y;console.log("onevent",g),s([g]),(y=n==null?void 0:n.onevent)===null||y===void 0||y.call(n,g)},c=function(g){var y;console.log("onevents",g.length),s(g),(y=n==null?void 0:n.onevents)===null||y===void 0||y.call(n,g)},u=function(){var g;console.log("oneose"),l.updateCheckpoint(t==null?void 0:t.filters[o],i),o++,(g=n==null?void 0:n.oneose)===null||g===void 0||g.call(n)},console.log("sync: args",t),[4,this._fetch(t,{onevents:c,oneose:u,onevent:a})];case 1:return f=h.sent(),this.updateCheckpoints((t==null?void 0:t.filters)||[],i),[2,f]}}))}))},e.prototype.updateCheckpoint=function(t,n){for(var o=t.authors,i=t.kinds,s=t.since,a=t.until,c=0,u=o||[];c<u.length;c++){var f=u[c],l=this.monitors.get(f);if(l)for(var h=0,g=i||[];h<g.length;h++){var y=g[h],d="".concat(f,":").concat(y);(n.get(d)||0)>0&&(s&&l.setLastSync(y,"since",s),a&&l.setLastSync(y,"until",a))}else console.error("Monitor not found for pubkey: ".concat(f))}},e.prototype.updateCheckpoints=function(t,n){for(var o=0,i=Array.from(t);o<i.length;o++){var s=i[o];this.updateCheckpoint(s,n)}},e.prototype.modifyCacheFilters=function(t){return j(this,void 0,void 0,(function(){var n=this;return U(this,(function(o){return[2,t.map((function(i){var s=i.authors,a=i.kinds,c=i.since;i.until;for(var u=0,f=s||[];u<f.length;u++)for(var l=f[u],h=n.monitors.get(l),g=0,y=a||[];g<y.length;g++){var d=y[g],p=h==null?void 0:h.getLastSync(d);p!=null&&p.since&&c&&p.since<c&&(i.since=p.since)}return i}))]}))}))},e.prototype.modifyWebsocketFilters=function(t){return j(this,void 0,void 0,(function(){var n=this;return U(this,(function(o){return[2,t.map((function(i){var s=i.authors,a=i.kinds,c=i.since;i.until;for(var u=0,f=s||[];u<f.length;u++)for(var l=f[u],h=n.monitors.get(l),g=0,y=a||[];g<y.length;g++){var d=y[g],p=h==null?void 0:h.getLastSync(d);p!=null&&p.until&&c&&p.until>c&&(i.since=p.until)}return i}))]}))}))},e.prototype.bootstrapMonitors=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return console.log("bootstrapMonitors"),[4,this.fetchMonitorRegistrations()];case 1:return t.sent(),[4,this.fetchMonitorMeta()];case 2:return t.sent(),[4,this.ensureMonitorsActive()];case 3:return t.sent(),this.maybeEnableMonitors(),[2]}}))}))},e.prototype.bootstrap=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return[4,this.bootstrapMonitors()];case 1:return t.sent(),[4,this.bootstrapMonitorsChecks()];case 2:return t.sent(),[2]}}))}))},e.prototype.bootstrapMonitorsChecks=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s,a=this;return U(this,(function(c){switch(c.label){case 0:return console.log("bootstrapMonitorsChecks"),Q.emit("activity","monitors/bootstrap/checks","begin"),n=0,o=function(u){a.manager.handleEvent(u),n++,Q.emit("activity","monitors/bootstrap/checks","update",{value:n})},i=function(u){u!=null&&u.length?(u.forEach(o),Q.emit("activity","monitors/bootstrap/checks","update",{value:n})):console.warn("bootstrapMonitorsChecks: no events found")},[4,this.syncMonitorsChecks(t,!0,{onevent:o,onevents:i})];case 1:return s=c.sent(),Q.emit("activity","monitors/bootstrap/checks","finish",s),[2,s]}}))}))},e.prototype.fetchDisabledMonitorsChecks=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){return[2,this.syncMonitorsChecks({cache:!0,returnResults:!0,keepAlive:!1,stream:!1,batch:20},!1)]}))}))},e.prototype.countMonitorChecksInCache=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s,a,c,u,f,l;return U(this,(function(h){switch(h.label){case 0:for(n=this.getMonitorCheckFilters(t),o=new Map,i=[],s=function(g){var y=(l=g.authors)===null||l===void 0?void 0:l[0];if(!y)return"continue";i.push(a.cacheAdapter.COUNT([g]).then((function(d){o.set(y,d)})))},a=this,c=0,u=n;c<u.length;c++)f=u[c],s(f);return[4,Promise.allSettled(i)];case 1:return h.sent(),[2,o]}}))}))},e.prototype.fetchMonitorRegistrations=function(){return j(this,void 0,void 0,(function(){var t,n,o,i,s=this;return U(this,(function(a){switch(a.label){case 0:return console.log("fetchMonitorRegistrations"),Q.emit("activity","monitors/bootstrap/registrations","begin"),t=0,n=function(c){c.kind===10166&&(s.manager.handleEvent(c),t++,Q.emit("activity","monitors/bootstrap/registrations","update",{value:t}))},o={filters:[{kinds:[10166]}],relays:this.nip66Relays,options:{cache:!0,returnResults:!0,keepAlive:!1,stream:!0}},console.log("fetchMonitorRegistrations: args",o),[4,this.subscribe(o,{onevent:n})];case 1:return i=a.sent(),Q.emit("activity","monitors/bootstrap/registrations","finish",i),[2]}}))}))},e.prototype.fetchMonitorMeta=function(){return j(this,void 0,void 0,(function(){var t,n,o,i,s,a,c,u=this;return U(this,(function(f){switch(f.label){case 0:return Q.emit("activity","monitors/bootstrap/meta","begin"),t=ue([],this.array.map((function(l){return l.registration})),!0).filter((function(l){return l!==void 0})),n=t.map((function(l){return l.pubkey})),o=0,i=function(l){u.manager.handleEvent(l),o++,Q.emit("activity","monitors/bootstrap/meta","update",{value:o})},s=function(l){l.forEach(i),o+=l.length,Q.emit("activity","monitors/bootstrap/meta","update",{value:o})},a=n.map((function(l){return{authors:[l],kinds:[0,10002]}})),c={filters:a,relays:this.userMetaRelays,options:{cache:!0,returnResults:!0,keepAlive:!1,stream:!0}},[4,this.subscribe(c,{onevent:i,onevents:s})];case 1:return f.sent(),this.array.forEach((function(l){l.relays.forEach((function(h){return u.addRelay("route66",h)}))})),Q.emit("activity","monitors/bootstrap/meta","finish"),[2]}}))}))},e.prototype.isMonitorActive=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s,a,c;return U(this,(function(u){switch(u.label){case 0:return(n=this.monitors.get(t))?(o=Y(Y({},n.checkFilter),{limit:1}),i=[o],s=We,a=this.nip66Relays,[4,this.subscribe({filters:i,relays:a,options:s})]):[2,!1];case 1:return[2,(c=u.sent())instanceof Array?c.length>0:c]}}))}))},e.prototype.syncMonitorsChecks=function(t,n,o){return j(this,void 0,void 0,(function(){var i,s,a,c,u;return U(this,(function(f){switch(f.label){case 0:return console.log("syncMonitorsChecks"),i=this.getMonitorCheckFilters(n),console.log("syncMonitorsChecks: filters",i),s={cache:!0,returnResults:!0,keepAlive:!1,stream:!0,batch:100},a=function(l){var h;(h=o==null?void 0:o.onevent)===null||h===void 0||h.call(o,l),Q.emit("event",l)},c=function(l){var h;l.length,(h=o==null?void 0:o.onevents)===null||h===void 0||h.call(o,l),Q.emit("events",l)},u=this.nip66Relays,t=t?Y(Y({},s),t):Y({},s),console.log("syncMonitorsChecks: options",t),[4,this.fetch({relays:u,filters:i,options:t},{onevent:a,onevents:c})];case 1:return[2,f.sent()]}}))}))},e.prototype.countMonitorChecksFromCache=function(t,n){return j(this,void 0,void 0,(function(){var o,i,s;return U(this,(function(a){return(o=this.monitors.get(t))?(i=Y({},o.checkFilter),s=[i],[2,this.countFromCache(s)]):[2,0]}))}))},e.prototype.fetchMonitorChecksFromCache=function(t,n){return j(this,void 0,void 0,(function(){return U(this,(function(o){return[2,this.fetchMonitorChecks(t,n,"cache")]}))}))},e.prototype.fetchMonitorChecksFromWebsocket=function(t,n){return j(this,void 0,void 0,(function(){return U(this,(function(o){return[2,this.fetchMonitorChecks(t,n,"websocket")]}))}))},e.prototype.fetchMonitorChecks=function(t,n,o){return j(this,arguments,void 0,(function(i,s,a,c){var u,f,l,h,g;return U(this,(function(y){switch(y.label){case 0:if(!(u=this.monitors.get(i)))return[2,[]];switch(f=Y({},u.checkFilter),l=[f],h=s?Y(Y(Y({},We),s),{stream:!1}):We,g=this.nip66Relays,a){case"cache":return[3,1];case"websocket":return[3,2]}return[3,4];case 1:return[2,this.fetchFromCache(l)];case 2:return[4,this.fetchFromWebsocket({filters:l,relays:g,options:h})];case 3:return[2,y.sent()];case 4:return[2,this.fetch({filters:l,relays:g,options:h})]}}))}))},e.prototype.beginLiveSync=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s,a,c=this;return U(this,(function(u){return n=Math.round(Date.now()/1e3),o=[],this.enabledMonitors.forEach((function(f){var l,h=(l=f.getLastSync(30166))===null||l===void 0?void 0:l.until;o.push({kinds:[30166],authors:[f.pubkey],since:h})})),i=this.nip66Relays,s={cache:!0,keepAlive:!0,returnResults:!0,stream:!0,batch:10},a=function(f){var l,h=Math.round(Date.now()/1e3),g=n;f.forEach((function(y){var d=y.pubkey,p=y.created_at,b=p===void 0?0:p,m=c.monitors.get(d);m&&b>(m.getLastSyncUntil(30166)||0)&&(m.setLastSync(30166,"since",h-m.frequency),m.setLastSync(30166,"until",b)),b>g&&(g=b)})),g>n&&Q.set("lastCompleteSync",h),(l=t==null?void 0:t.onevents)===null||l===void 0||l.call(t,f)},[2,this.subscribe({filters:o,relays:i,options:s,hash:"liveSyncMonitorsChecks"},{onevents:a})]}))}))},e.prototype.stopLiveSync=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return[4,this.unsubscribe("liveSyncMonitorsChecks")];case 1:return t.sent(),[2]}}))}))},e.prototype.ensureMonitorsActive=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s,a,c,u,f,l,h,g,y,d,p,b,m,x;return U(this,(function(S){switch(S.label){case 0:console.log("ensureMonitorsActive"),Q.emit("activity","monitors/bootstrap/ensureActive","begin"),n=ue([],this.array,!0),t&&(typeof t=="string"&&(t=[t]),n=n.filter((function(I){return t.includes(I.pubkey)}))),o=[],i=[],s=Math.round(Date.now()/1e3),n.forEach((function(I){o.push(Y(Y({},I.checkFilter),{until:s,limit:1}))})),a=(function(I,_){for(var O=[],w=0;w<I.length;w+=_)O.push(I.slice(w,w+_));return O})(o,10),c=new Set,u={onevent:function(I){i.push(I),c.add(I.pubkey),Q.emit("activity","monitors/bootstrap/ensureActive","update",{value:c.size})}},f=this.nip66Relays,l=0,h=a,S.label=1;case 1:return l<h.length?(g=h[l],[4,this.websocketAdapter.subscribe({relays:f,filters:g,options:{cache:!1,returnResults:!0,keepAlive:!1,stream:!1}},u)]):[3,4];case 2:S.sent(),S.label=3;case 3:return l++,[3,1];case 4:for(y=0,d=i;y<d.length;y++)p=d[y],b=p.pubkey,m=p.created_at,(x=this.monitors.get(b))!=null&&x.registration&&m&&(x.lastActive=m);return Q.emit("activity","monitors/bootstrap/ensureActive","finish"),[2]}}))}))},e.prototype.maybeEnableMonitors=function(){if(!this.enabledMonitors.length)for(var t=Array.from(this.monitors.values()).filter((function(o){var i,s;return(s=(i=o==null?void 0:o.registration)===null||i===void 0?void 0:i.checks)===null||s===void 0?void 0:s.length})).sort((function(o,i){var s,a,c,u,f,l;if(o.active&&!i.active)return-1;if(!o.active&&i.active)return 1;var h=(c=(a=(s=o.registration)===null||s===void 0?void 0:s.checks)===null||a===void 0?void 0:a.length)!==null&&c!==void 0?c:0;return((l=(f=(u=i.registration)===null||u===void 0?void 0:u.checks)===null||f===void 0?void 0:f.length)!==null&&l!==void 0?l:0)-h})),n=0;n<this.DEFAULT_ENABLED_MONITORS&&n<t.length;n++)try{t[n].enable()}catch(o){t[n].enabled=!0}},e.prototype.optimizeFilters=function(t){for(var n,o,i,s=new Map,a=0,c=t;a<c.length;a++){var u=c[a],f=JSON.stringify({since:(n=u.since)!==null&&n!==void 0?n:null,until:(o=u.until)!==null&&o!==void 0?o:null,kinds:(i=u.kinds)!==null&&i!==void 0?i:null});if(s.has(f)){var l=s.get(f);l.authors=ue([],Array.from(new Set(ue(ue([],l.authors||[],!0),u.authors||[],!0))),!0)}else s.set(f,Y(Y({},u),{authors:ue([],u.authors||[],!0)}))}return Array.from(s.values())},e.prototype.getMonitorCheckFilters=function(t){var n=[];t===void 0?n=this.enabledMonitors:typeof t=="boolean"&&(n=t?this.enabledMonitors:this.disabledActiveMonitors);var o=[],i=Math.round(Date.now()/1e3);return n.forEach((function(s){o.push(Y(Y({},s.checkFilter),{until:i}))})),o},e.prototype.modifyReturnedEvents=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return[2,t]}))}))},e.prototype.removeStaleChecks=function(t){return j(this,void 0,void 0,(function(){var n,o,i,s,a,c,u,f;return U(this,(function(l){switch(l.label){case 0:n=Array.from(this.monitors.values()),o=[],i=[],s=function(h){var g,y,d;return U(this,(function(p){switch(p.label){case 0:return g=h.pubkey,h.frequency?(y=h.isOnlineAfter,o.push({authors:[g],until:y}),a.cacheAdapter.DELETE(o),[4,h.returnOnlineRelays(t.filter((function(b){return b.pubkey===h.pubkey})))]):[2,"continue"];case 1:return d=p.sent(),i=ue(ue([],i,!0),d,!0),[2]}}))},a=this,c=0,u=n,l.label=1;case 1:return c<u.length?(f=u[c],[5,s(f)]):[3,4];case 2:l.sent(),l.label=3;case 3:return c++,[3,1];case 4:return[2,i]}}))}))},e.prototype.getMonitor=function(t){return j(this,void 0,void 0,(function(){return U(this,(function(n){return this.monitors.has(t)||ue(ue(ue([],this.nip66Relays,!0),this.userMetaRelays,!0),this.getMonitorRelays(t),!0),[2,this.monitors.get(t)]}))}))},e.prototype.getMonitorRelays=function(t){var n;return((n=this.monitors.get(t))===null||n===void 0?void 0:n.relays)||[]},e.prototype.getMonitorPubkeys=function(){return this.sortedMonitors.length?this.sortedMonitors.map((function(t){return t.pubkey})):(console.warn("MonitorService getMonitorPubkeys: no monitors"),[])},e})(bu)});var e1={};fo(e1,{RelayService:()=>ES});var ES,t1=$(()=>{"use strict";le();Fd();uo();Kd();Wv();Hv();wu();Jd();zd();Vd();Zd();Qd();Nc();ES=(function(r){function e(t,n){var o=r.call(this,t)||this;return o._relay="",o._ready=!1,o.monitors=n!=null?n:new Xd(t),o.addRelay("route66","wss://relay.nostr.watch"),o.addRelay("route66","wss://relaypag.es"),o.addRelay("route66","wss://monitorlizard.nostr1.com/"),o.addRelay("userMeta","wss://purplepag.es"),o.addRelay("userMeta","wss://user.kindpag.es"),o.addRelay("userMeta","wss://relay.nostr.band"),o.init(),o}return he(e,r),e.prototype.init=function(){return j(this,void 0,void 0,(function(){var t,n;return U(this,(function(o){switch(o.label){case 0:return[4,(t=this==null?void 0:this.cacheAdapter)===null||t===void 0?void 0:t.ready()];case 1:return o.sent(),[4,(n=this==null?void 0:this.monitors)===null||n===void 0?void 0:n.ready()];case 2:return o.sent(),this._ready=!0,[2]}}))}))},e.prototype.ready=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return this._ready?[3,2]:[4,new Promise((function(n){return setTimeout(n,100)}))];case 1:return t.sent(),[3,0];case 2:return[2]}}))}))},e.prototype.relayFilters=function(t,n){n===void 0&&(n="online");var o=[];if(this.monitors.activeMonitors.length===0)return[{kinds:[30166],"#d":[t]}];var i=n==="online"?this.monitors.activeMonitors:this.monitors.array,s={"#d":Rh(t),kinds:[30166]};return n==="dead"?[s]:(i.forEach((function(a){var c;switch(n){case"offline":c=Y(Y({},a.checkFilterOffline),s);break;case"online":c=Y(Y({},a.checkFilter),s)}c&&o.push(c)})),o)},e.prototype.deltaFilters=function(t,n){var o={kinds:[1066],"#r":Rh(t)};return n!=null&&n.since&&(o.since=n.since),n!=null&&n.until&&(o.until=n.until),n!=null&&n.limit&&(o.limit=n.limit),[o]},e.prototype.getRelayData=function(t){return j(this,arguments,void 0,(function(n,o){var i,s;return o===void 0&&(o="online"),U(this,(function(a){switch(a.label){case 0:return[4,this.ready()];case 1:return a.sent(),[4,this.monitors.ready()];case 2:return a.sent(),[4,this.fetchRelayChecks(n,o)];case 3:return(i=a.sent())&&(i!=null&&i.length)?[4,this.monitorInstancesFromChecks(i)]:[2];case 4:return(s=a.sent())?(o==="online"&&(i=i.filter((function(c){var u=s.get(c.pubkey);return!(!u||!u.relayIsOnline(c))}))),o==="offline"&&(i=i.filter((function(c){var u=s.get(c.pubkey);return!(!u||!u.relayIsOffline(c,!0))}))),o==="dead"&&(i=i.filter((function(c){var u=s.get(c.pubkey);return!(!u||!u.relayIsDead(c))}))),[2,[i,s]]):[2]}}))}))},e.prototype.fetchRelayChecks=function(t){return j(this,arguments,void 0,(function(n,o){var i,s,a,c,u;return o===void 0&&(o="online"),U(this,(function(f){switch(f.label){case 0:return(i=e.formatRelay(n))?(s=this.relayFilters(i,o),a=this.nip66Relays,c={cache:!0,returnResults:!0,keepAlive:!1,stream:!1},[4,this.fetch({relays:a,filters:s,options:c,hash:"relay:".concat(Math.random()),priority:100})]):[2];case 1:return(u=f.sent())?[2,u.map((function(l){return new vu(l)}))]:[2]}}))}))},e.prototype.fetchOperatorMeta=function(t,n){return j(this,arguments,void 0,(function(o,i,s){var a,c;return s===void 0&&(s=[]),U(this,(function(u){return a=[{kinds:[0,10002],authors:[o]}],s=ue(ue([],this.userMetaRelays,!0),s,!0),c={cache:!0,returnResults:!0,keepAlive:!1,stream:!0,batch:1},[2,this.subscribe({relays:s,filters:a,priority:1e3,options:c},i)]}))}))},e.prototype.monitorInstancesFromChecks=function(t){return j(this,arguments,void 0,(function(n,o){var i,s,a,c,u,f,l,h,g,y=this;return o===void 0&&(o="map"),U(this,(function(d){switch(d.label){case 0:for(i=[],s=[],a=0,c=n;a<c.length;a++)u=c[a],i.push({authors:[u.pubkey],kinds:[10166]});return f=ue([],this.nip66Relays,!0),l={cache:!0,returnResults:!0,keepAlive:!1,stream:!0,batch:1},h=new Set,g=function(p){if(y.monitors.manager.handleEvent(p),p.kind===10166){if(h.has(p.pubkey))return;s.push(y.monitors.fetch({relays:ue([],y.userMetaRelays,!0),filters:[{authors:[p.pubkey],kinds:[0,10002]}],options:l},{onevent:g})),h.add(p.pubkey)}},[4,this.monitors.subscribe({relays:f,filters:i,options:l},{onevent:g})];case 1:return d.sent(),[4,Promise.allSettled(s)];case 2:return d.sent(),[2,o==="map"?this.monitors.map:this.monitors.array]}}))}))},e.formatRelay=function(t){try{return new URL(t).toString()}catch(n){return console.warn("[RelayService] Invalid relay URL: ".concat(t)),""}},e.removeOldChecks=function(t,n){return n.filter((function(o){var i=t.get(o.pubkey);return!(!i||!i.relayIsOnline(o))}))},e.prototype.beginLiveSync=function(t,n){return j(this,void 0,void 0,(function(){var o,i,s,a;return U(this,(function(c){return o=[],this.monitors.enabledMonitors.forEach((function(u){var f,l=(f=u.getLastSync(30166))===null||f===void 0?void 0:f.until;o.push({kinds:[30166],authors:[u.pubkey],since:l,"#d":[t]})})),i=this.nip66Relays,s={cache:!0,keepAlive:!0,returnResults:!0,stream:!0,batch:2},a=function(u){var f;(f=n==null?void 0:n.onevents)===null||f===void 0||f.call(n,u)},[2,this.subscribe({filters:o,relays:i,options:s,hash:"liveSyncMonitorsChecksForRelay"},{onevents:a})]}))}))},e.prototype.stopLiveSync=function(){return j(this,void 0,void 0,(function(){return U(this,(function(t){switch(t.label){case 0:return[4,this.unsubscribe("liveSyncMonitorsChecksForRelay")];case 1:return t.sent(),[2]}}))}))},e})(bu)});var xS,Dd=$(()=>{"use strict";le();fi();Ff();Df();Jf();Xf();xh();ks();xS=(function(){function r(e){this._adapters=e,this._initialized=!1,console.log("Route66 Core Initialized"),e!=null&&e.websocketAdapter&&this.useAdapter(e.websocketAdapter),e!=null&&e.cacheAdapter&&this.useAdapter(e.cacheAdapter)}return Object.defineProperty(r.prototype,"adapters",{get:function(){return this._adapters},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"services",{get:function(){return{monitors:this.monitorService,relay:this.relayService}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"monitors",{get:function(){return this.monitorService},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"relays",{get:function(){return this.relayService},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"initialized",{get:function(){return this._initialized},set:function(e){this._initialized=e},enumerable:!1,configurable:!0}),r.prototype.ready=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return this.initialized?[3,2]:[4,new Promise((function(t){return setTimeout(t,100)}))];case 1:return e.sent(),[3,0];case 2:return[2,this]}}))}))},r.prototype.on=function(e,t){Q.on(e,t)},r.prototype.once=function(e,t){Q.once(e,t)},r.prototype.off=function(e,t){Q.off(e,t)},r.prototype.destroy=function(){Q.emit("destroy")},r.prototype.boot=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return this.init(),[4,this.ready()];case 1:return e.sent(),[2]}}))}))},r.prototype.shutdown=function(){return j(this,void 0,void 0,(function(){var e,t,n,o;return U(this,(function(i){switch(i.label){case 0:return this.destroy(),(t=(e=this.adapters)===null||e===void 0?void 0:e.cacheAdapter)===null||t===void 0||t.shutdown(),[4,(o=(n=this.adapters)===null||n===void 0?void 0:n.websocketAdapter)===null||o===void 0?void 0:o.shutdown()];case 1:return i.sent(),[2]}}))}))},r.prototype.restart=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return[4,this.shutdown()];case 1:return e.sent(),[4,sc(1e3)];case 2:return e.sent(),[4,this.boot()];case 3:return e.sent(),[2]}}))}))},r.prototype.useAdapter=function(e){return j(this,void 0,void 0,(function(){return U(this,(function(t){return e?typeof e=="function"?[2,console.warn("Adapter should be an instantiated CacheAdapter or WebsocketAdapter")]:this.isCacheAdapter(e)&&!(this!=null&&this.cacheAdapter)?(this.cacheAdapter=e,[2]):this.isWebsocketAdapter(e)&&!(this!=null&&this.websocketAdapter)?(this.websocketAdapter=e,[2]):(console.warn("Adapter not recognized: ".concat(e.constructor.name," [should be instance of WebsocketAdapter or CacheAdapter]")),[2]):[2,console.warn("No adapter provided")]}))}))},r.prototype.isCacheAdapter=function(e){return e.constructor.type==="CacheAdapter"},r.prototype.isWebsocketAdapter=function(e){return e.constructor.type==="WebsocketAdapter"},r.prototype.init=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return[4,this.setupWorkers()];case 1:return e.sent(),[4,this.setupServices()];case 2:return e.sent(),[4,this.adaptersReady()];case 3:return e.sent(),this.initialized=!0,[2]}}))}))},r.prototype.adaptersReady=function(){return j(this,void 0,void 0,(function(){return U(this,(function(e){switch(e.label){case 0:return this!=null&&this.cacheAdapter?[4,this==null?void 0:this.cacheAdapter.ready()]:[3,2];case 1:e.sent(),e.label=2;case 2:return this!=null&&this.websocketAdapter?[4,this==null?void 0:this.websocketAdapter.ready()]:[3,4];case 3:e.sent(),e.label=4;case 4:return[2]}}))}))},r.prototype.setupWorkers=function(){return j(this,void 0,void 0,(function(){var e,t,n,o;return U(this,(function(i){switch(i.label){case 0:return[4,Promise.resolve().then(()=>(ti(),By))];case 1:e=i.sent().Workers,t=new e(this.adapters),i.label=2;case 2:return t.ready?[3,4]:[4,new Promise((function(s){return setTimeout(s,100)}))];case 3:return i.sent(),[3,2];case 4:return!((n=this==null?void 0:this.adapters)===null||n===void 0)&&n.cacheAdapter&&(this.adapters.cacheAdapter.workers=t),!((o=this==null?void 0:this.adapters)===null||o===void 0)&&o.websocketAdapter&&(this.adapters.websocketAdapter.workers=t),[2]}}))}))},r.prototype.setupServices=function(){return j(this,void 0,void 0,(function(){var e,t,n,o,i;return U(this,(function(s){switch(s.label){case 0:return this!=null&&this.websocketAdapter&&(this!=null&&this.cacheAdapter)?(t=(e=this).cacheAdapter,n=e.websocketAdapter,[4,Promise.resolve().then(()=>(t1(),e1))]):[2];case 1:return o=s.sent().RelayService,[4,Promise.resolve().then(()=>(Qd(),Qv))];case 2:return i=s.sent().MonitorService,this.monitorService=new i({cacheAdapter:t,websocketAdapter:n}),this.relayService=new o({cacheAdapter:t,websocketAdapter:n},this.monitorService),[4,this.monitorService.ready()];case 3:return s.sent(),[4,this.relayService.ready()];case 4:return s.sent(),[2]}}))}))},Object.defineProperty(r.prototype,"state",{get:function(){return Q},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"cache",{get:function(){return this.cacheAdapter},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"websocket",{get:function(){return this.websocketAdapter},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"wsWorker",{get:function(){var e,t;return(t=(e=this==null?void 0:this.websocketAdapter)===null||e===void 0?void 0:e.workers)===null||t===void 0?void 0:t.websocket},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"cacheWorker",{get:function(){var e,t;return(t=(e=this==null?void 0:this.cacheAdapter)===null||e===void 0?void 0:e.workers)===null||t===void 0?void 0:t.cache},enumerable:!1,configurable:!0}),r.prototype.ping=function(){var e,t;(e=this.cacheAdapter)===null||e===void 0||e.ping(),(t=this.websocketAdapter)===null||t===void 0||t.ping()},r.prototype.subscribe=function(e,t){return j(this,void 0,void 0,(function(){var n,o;return U(this,(function(i){return[2,(o=(n=this.websocketAdapter)===null||n===void 0?void 0:n.subscribe(e,t))!==null&&o!==void 0&&o]}))}))},r.prototype.fetch=function(e,t){return j(this,void 0,void 0,(function(){var n,o;return U(this,(function(i){return[2,(o=(n=this.websocketAdapter)===null||n===void 0?void 0:n.fetch(e,t))!==null&&o!==void 0&&o]}))}))},r.prototype.REQ=function(e){return j(this,void 0,void 0,(function(){var t;return U(this,(function(n){return[2,(t=this.cacheAdapter)===null||t===void 0?void 0:t.REQ(e)]}))}))},r})()});var p1={chrome:"Google Chrome",brave:"Brave",crios:"Google Chrome",edge:"Microsoft Edge",edg:"Microsoft Edge",edgios:"Microsoft Edge",fennec:"Mozilla Firefox",jsdom:"JsDOM",mozilla:"Mozilla Firefox",fxios:"Mozilla Firefox",msie:"Microsoft Internet Explorer",opera:"Opera",opios:"Opera",opr:"Opera",opt:"Opera",rv:"Microsoft Internet Explorer",safari:"Safari",samsungbrowser:"Samsung Browser",electron:"Electron"},g1={android:"Android",androidTablet:"Android Tablet",cros:"Chrome OS",fennec:"Android Tablet",ipad:"IPad",ipod:"IPod",iphone:"IPhone",jsdom:"JsDOM",linux:"Linux",mac:"Macintosh",tablet:"Android Tablet",win:"Windows","windows phone":"Windows Phone",xbox:"Microsoft Xbox"},y1=(r,e=-1)=>{let t=new RegExp(`^-?\\d+(?:.\\d{0,${e}})?`),n=Number(r).toString().match(t);return n?n[0]:null},b1={toFixed:y1},m1="4.1.0",op=()=>typeof window<"u"?window.navigator:null,w1=class{constructor(r){Z(this,"userAgent");var e;this.userAgent=r||((e=op())==null?void 0:e.userAgent)||null}static get VERSION(){return m1}parseUserAgent(r){var I,_,O;let e={},t=r||this.userAgent||"",n=t.toLowerCase().replace(/\s\s+/g," "),o=/(edge)\/([\w.]+)/.exec(n)||/(edg)[/]([\w.]+)/.exec(n)||/(opr)[/]([\w.]+)/.exec(n)||/(opt)[/]([\w.]+)/.exec(n)||/(fxios)[/]([\w.]+)/.exec(n)||/(edgios)[/]([\w.]+)/.exec(n)||/(jsdom)[/]([\w.]+)/.exec(n)||/(samsungbrowser)[/]([\w.]+)/.exec(n)||/(electron)[/]([\w.]+)/.exec(n)||/(chrome)[/]([\w.]+)/.exec(n)||/(crios)[/]([\w.]+)/.exec(n)||/(opios)[/]([\w.]+)/.exec(n)||/(version)(applewebkit)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(n)||/(webkit)[/]([\w.]+).*(version)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(n)||/(applewebkit)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(n)||/(webkit)[/]([\w.]+)/.exec(n)||/(opera)(?:.*version|)[/]([\w.]+)/.exec(n)||/(msie) ([\w.]+)/.exec(n)||/(fennec)[/]([\w.]+)/.exec(n)||n.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(n)||n.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(n)||[],i=/(ipad)/.exec(n)||/(ipod)/.exec(n)||/(iphone)/.exec(n)||/(jsdom)/.exec(n)||/(windows phone)/.exec(n)||/(xbox)/.exec(n)||/(win)/.exec(n)||/(tablet)/.exec(n)||/(android)/.test(n)&&/(mobile)/.test(n)===!1&&["androidTablet"]||/(android)/.exec(n)||/(mac)/.exec(n)||/(linux)/.exec(n)||/(cros)/.exec(n)||[],s=o[5]||o[3]||o[1]||null,a=i[0]||null,c=o[4]||o[2]||null,u=op();s==="chrome"&&typeof((I=u==null?void 0:u.brave)==null?void 0:I.isBrave)=="function"&&(s="brave"),s&&(e[s]=!0),a&&(e[a]=!0);let f=!!(e.tablet||e.android||e.androidTablet),l=!!(e.ipad||e.tablet||e.androidTablet),h=!!(e.android||e.androidTablet||e.tablet||e.ipad||e.ipod||e.iphone||e["windows phone"]),g=!!(e.cros||e.mac||e.linux||e.win),y=!!(e.brave||e.chrome||e.crios||e.opr||e.safari||e.edg||e.electron),d=!!(e.msie||e.rv),p=!!(e.chrome||e.crios),b=!!(e.fxios||e.fennec||e.mozilla),m=!!e.safari,x=!!(e.opera||e.opios||e.opr||e.opt),S=!!(e.edg||e.edge||e.edgios);return{name:(_=p1[s])!=null?_:null,platform:(O=g1[a])!=null?O:null,userAgent:t,version:c,shortVersion:c?b1.toFixed(parseFloat(c),2):null,isAndroid:f,isTablet:l,isMobile:h,isDesktop:g,isWebkit:y,isIE:d,isChrome:p,isFireFox:b,isSafari:m,isOpera:x,isEdge:S}}getBrowserInfo(){let r=this.parseUserAgent();return{name:r.name,platform:r.platform,userAgent:r.userAgent,version:r.version,shortVersion:r.shortVersion}}},ip=w1;var Ou=d1(ap(),1);var Ci=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Iu=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},cp=r=>globalThis.DOMException===void 0?new Iu(r):new DOMException(r),up=r=>{let e=r.reason===void 0?cp("This operation was aborted."):r.reason;return e instanceof Error?e:cp(e)};function Tu(r,e){let{milliseconds:t,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout}}=e,s,a,u=new Promise((f,l)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:g}=e;g.aborted&&l(up(g)),a=()=>{l(up(g))},g.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let h=new Ci;s=i.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(g){l(g)}return}typeof r.cancel=="function"&&r.cancel(),o===!1?f():o instanceof Error?l(o):(h.message=o!=null?o:`Promise timed out after ${t} milliseconds`,l(h))},t),(async()=>{try{f(await r)}catch(g){l(g)}})()}).finally(()=>{u.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return u.clear=()=>{i.clearTimeout.call(void 0,s),s=void 0},u}function Ru(r,e,t){let n=0,o=r.length;for(;o>0;){let i=Math.trunc(o/2),s=n+i;t(r[s],e)<=0?(n=++s,o-=i+1):o=i}return n}var Wt,Ni=class{constructor(){H(this,Wt,[])}enqueue(e,t){t=z({priority:0},t);let n={priority:t.priority,run:e};if(this.size&&k(this,Wt)[this.size-1].priority>=t.priority){k(this,Wt).push(n);return}let o=Ru(k(this,Wt),n,(i,s)=>s.priority-i.priority);k(this,Wt).splice(o,0,n)}dequeue(){let e=k(this,Wt).shift();return e==null?void 0:e.run}filter(e){return k(this,Wt).filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return k(this,Wt).length}};Wt=new WeakMap;var po,go,Rr,Ui,yo,ji,lt,bo,Ye,qi,ft,mo,or,$i,se,lp,fp,hp,dp,pp,Ws,Lu,Pu,Hs,gp,Fs,Mi=class extends Ou.default{constructor(t){var n,o,i,s;super();H(this,se);H(this,po);H(this,go);H(this,Rr,0);H(this,Ui);H(this,yo);H(this,ji,0);H(this,lt);H(this,bo);H(this,Ye);H(this,qi);H(this,ft,0);H(this,mo);H(this,or);H(this,$i);Z(this,"timeout");if(t=z({carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Ni},t),!(typeof t.intervalCap=="number"&&t.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(o=(n=t.intervalCap)==null?void 0:n.toString())!=null?o:""}\` (${typeof t.intervalCap})`);if(t.interval===void 0||!(Number.isFinite(t.interval)&&t.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(s=(i=t.interval)==null?void 0:i.toString())!=null?s:""}\` (${typeof t.interval})`);F(this,po,t.carryoverConcurrencyCount),F(this,go,t.intervalCap===Number.POSITIVE_INFINITY||t.interval===0),F(this,Ui,t.intervalCap),F(this,yo,t.interval),F(this,Ye,new t.queueClass),F(this,qi,t.queueClass),this.concurrency=t.concurrency,this.timeout=t.timeout,F(this,$i,t.throwOnTimeout===!0),F(this,or,t.autoStart===!1)}get concurrency(){return k(this,mo)}set concurrency(t){if(!(typeof t=="number"&&t>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${t}\` (${typeof t})`);F(this,mo,t),G(this,se,Hs).call(this)}async add(t,n={}){return n=z({timeout:this.timeout,throwOnTimeout:k(this,$i)},n),new Promise((o,i)=>{k(this,Ye).enqueue(async()=>{var s;Tr(this,ft)._++,Tr(this,Rr)._++;try{(s=n.signal)==null||s.throwIfAborted();let a=t({signal:n.signal});n.timeout&&(a=Tu(Promise.resolve(a),{milliseconds:n.timeout})),n.signal&&(a=Promise.race([a,G(this,se,gp).call(this,n.signal)]));let c=await a;o(c),this.emit("completed",c)}catch(a){if(a instanceof Ci&&!n.throwOnTimeout){o();return}i(a),this.emit("error",a)}finally{G(this,se,hp).call(this)}},n),this.emit("add"),G(this,se,Ws).call(this)})}async addAll(t,n){return Promise.all(t.map(async o=>this.add(o,n)))}start(){return k(this,or)?(F(this,or,!1),G(this,se,Hs).call(this),this):this}pause(){F(this,or,!0)}clear(){F(this,Ye,new(k(this,qi)))}async onEmpty(){k(this,Ye).size!==0&&await G(this,se,Fs).call(this,"empty")}async onSizeLessThan(t){k(this,Ye).size<t||await G(this,se,Fs).call(this,"next",()=>k(this,Ye).size<t)}async onIdle(){k(this,ft)===0&&k(this,Ye).size===0||await G(this,se,Fs).call(this,"idle")}get size(){return k(this,Ye).size}sizeBy(t){return k(this,Ye).filter(t).length}get pending(){return k(this,ft)}get isPaused(){return k(this,or)}};po=new WeakMap,go=new WeakMap,Rr=new WeakMap,Ui=new WeakMap,yo=new WeakMap,ji=new WeakMap,lt=new WeakMap,bo=new WeakMap,Ye=new WeakMap,qi=new WeakMap,ft=new WeakMap,mo=new WeakMap,or=new WeakMap,$i=new WeakMap,se=new WeakSet,lp=function(){return k(this,go)||k(this,Rr)<k(this,Ui)},fp=function(){return k(this,ft)<k(this,mo)},hp=function(){Tr(this,ft)._--,G(this,se,Ws).call(this),this.emit("next")},dp=function(){G(this,se,Pu).call(this),G(this,se,Lu).call(this),F(this,bo,void 0)},pp=function(){let t=Date.now();if(k(this,lt)===void 0){let n=k(this,ji)-t;if(n<0)F(this,Rr,k(this,po)?k(this,ft):0);else return k(this,bo)===void 0&&F(this,bo,setTimeout(()=>{G(this,se,dp).call(this)},n)),!0}return!1},Ws=function(){if(k(this,Ye).size===0)return k(this,lt)&&clearInterval(k(this,lt)),F(this,lt,void 0),this.emit("empty"),k(this,ft)===0&&this.emit("idle"),!1;if(!k(this,or)){let t=!k(this,se,pp);if(k(this,se,lp)&&k(this,se,fp)){let n=k(this,Ye).dequeue();return n?(this.emit("active"),n(),t&&G(this,se,Lu).call(this),!0):!1}}return!1},Lu=function(){k(this,go)||k(this,lt)!==void 0||(F(this,lt,setInterval(()=>{G(this,se,Pu).call(this)},k(this,yo))),F(this,ji,Date.now()+k(this,yo)))},Pu=function(){k(this,Rr)===0&&k(this,ft)===0&&k(this,lt)&&(clearInterval(k(this,lt)),F(this,lt,void 0)),F(this,Rr,k(this,po)?k(this,ft):0),G(this,se,Hs).call(this)},Hs=function(){for(;G(this,se,Ws).call(this););},gp=async function(t){return new Promise((n,o)=>{t.addEventListener("abort",()=>{o(t.reason)},{once:!0})})},Fs=async function(t,n){return new Promise(o=>{let i=()=>{n&&!n()||(this.off(t,i),o())};this.on(t,i)})};var x1=Object.defineProperty,k1=(r,e)=>{for(var t in e)x1(r,t,{get:e[t],enumerable:!0})},Zs=class{constructor(){Z(this,"promise");this.promise=new Promise((r,e)=>{this.resolve=t=>{r(t)},this.reject=t=>{e(t)}})}},yp=class extends Error{constructor(){super("channel closed")}},At,Je,Cr,zi,Eo,Ft,xo,Ks=(xo=class{constructor({highWaterMark:e=void 0}){H(this,At,[]);H(this,Je);H(this,Cr,!1);H(this,zi,!1);H(this,Eo);H(this,Ft);F(this,Eo,e!=null?e:Number.POSITIVE_INFINITY)}static make(e){let t=new xo(e!=null?e:{});return[t,t]}send(e){if(k(this,Je)!==void 0){k(this,Je).resolve(e),F(this,Je,void 0);return}k(this,Cr)||k(this,At).push(()=>Promise.resolve(e))}error(e){if(k(this,Je)!==void 0){k(this,Je).reject(e),F(this,Je,void 0);return}k(this,Cr)||k(this,At).push(()=>Promise.reject(e))}close(){k(this,Cr)||(F(this,Cr,!0),k(this,Je)!==void 0&&(k(this,Je).reject(new yp),F(this,Je,void 0)))}waitUntilDrained(){return k(this,Ft)!==void 0?k(this,Ft).promise:k(this,At).length<=k(this,Eo)?Promise.resolve():(F(this,Ft,new Zs),k(this,Ft).promise)}numBufferedItems(){return k(this,At).length}get isCompleted(){return k(this,Cr)&&k(this,At).length===0}recv(){if(k(this,At).length>0){let t=k(this,At).shift();return k(this,Ft)!==void 0&&k(this,At).length<=k(this,Eo)&&(k(this,Ft).resolve(),F(this,Ft,void 0)),t}if(k(this,Je)!==void 0)return()=>Promise.reject(Error("Double receive is not allowed"));let e=new Zs;return F(this,Je,e),()=>e.promise}[Symbol.asyncIterator](){return ct(this,null,function*(){if(k(this,zi))throw Error("Iterating a single channel in multiple location is not allowed");for(F(this,zi,!0);;)try{if(this.isCompleted)break;yield yield new Ve(this.recv()())}catch(e){if(e instanceof yp)break;throw e}})}},At=new WeakMap,Je=new WeakMap,Cr=new WeakMap,zi=new WeakMap,Eo=new WeakMap,Ft=new WeakMap,xo);function bp(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function A1(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function ns(r,...e){if(!A1(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}function _1(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");bp(r.outputLen),bp(r.blockLen)}function Ys(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function S1(r,e){ns(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Cu=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0,Nu=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Ht=(r,e)=>r<<32-e|r>>>e,FS=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,B1=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function O1(r){ns(r);let e="";for(let t=0;t<r.length;t++)e+=B1[r[t]];return e}function I1(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function rl(r){return typeof r=="string"&&(r=I1(r)),ns(r),r}function T1(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];ns(o),e+=o.length}let t=new Uint8Array(e);for(let n=0,o=0;n<r.length;n++){let i=r[n];t.set(i,o),o+=i.length}return t}var zp=class{clone(){return this._cloneInto()}},DS={}.toString;function R1(r){let e=n=>r().update(rl(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Kp(r=32){if(Cu&&typeof Cu.getRandomValues=="function")return Cu.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function L1(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(t>>o&i),a=Number(t&i),c=n?4:0,u=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+u,a,n)}var P1=(r,e,t)=>r&e^~r&t,C1=(r,e,t)=>r&e^r&t^e&t,N1=class extends zp{constructor(r,e,t,n){super(),this.blockLen=r,this.outputLen=e,this.padOffset=t,this.isLE=n,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(r),this.view=Nu(this.buffer)}update(r){Ys(this);let{view:e,buffer:t,blockLen:n}=this;r=rl(r);let o=r.length;for(let i=0;i<o;){let s=Math.min(n-this.pos,o-i);if(s===n){let a=Nu(r);for(;n<=o-i;i+=n)this.process(a,i);continue}t.set(r.subarray(i,i+s),this.pos),this.pos+=s,i+=s,this.pos===n&&(this.process(e,0),this.pos=0)}return this.length+=r.length,this.roundClean(),this}digestInto(r){Ys(this),S1(r,this),this.finished=!0;let{buffer:e,view:t,blockLen:n,isLE:o}=this,{pos:i}=this;e[i++]=128,this.buffer.subarray(i).fill(0),this.padOffset>n-i&&(this.process(t,0),i=0);for(let f=i;f<n;f++)e[f]=0;L1(t,n-8,BigInt(this.length*8),o),this.process(t,0);let s=Nu(r),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let c=a/4,u=this.get();if(c>u.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<c;f++)s.setUint32(4*f,u[f],o)}digest(){let{buffer:r,outputLen:e}=this;this.digestInto(r);let t=r.slice(0,e);return this.destroy(),t}_cloneInto(r){r||(r=new this.constructor),r.set(...this.get());let{blockLen:e,buffer:t,length:n,finished:o,destroyed:i,pos:s}=this;return r.length=n,r.pos=s,r.finished=o,r.destroyed=i,n%e&&r.buffer.set(t),r}},M1=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Lr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Pr=new Uint32Array(64),U1=class extends N1{constructor(){super(64,32,8,!1),this.A=Lr[0]|0,this.B=Lr[1]|0,this.C=Lr[2]|0,this.D=Lr[3]|0,this.E=Lr[4]|0,this.F=Lr[5]|0,this.G=Lr[6]|0,this.H=Lr[7]|0}get(){let{A:r,B:e,C:t,D:n,E:o,F:i,G:s,H:a}=this;return[r,e,t,n,o,i,s,a]}set(r,e,t,n,o,i,s,a){this.A=r|0,this.B=e|0,this.C=t|0,this.D=n|0,this.E=o|0,this.F=i|0,this.G=s|0,this.H=a|0}process(r,e){for(let f=0;f<16;f++,e+=4)Pr[f]=r.getUint32(e,!1);for(let f=16;f<64;f++){let l=Pr[f-15],h=Pr[f-2],g=Ht(l,7)^Ht(l,18)^l>>>3,y=Ht(h,17)^Ht(h,19)^h>>>10;Pr[f]=y+Pr[f-7]+g+Pr[f-16]|0}let{A:t,B:n,C:o,D:i,E:s,F:a,G:c,H:u}=this;for(let f=0;f<64;f++){let l=Ht(s,6)^Ht(s,11)^Ht(s,25),h=u+l+P1(s,a,c)+M1[f]+Pr[f]|0,g=(Ht(t,2)^Ht(t,13)^Ht(t,22))+C1(t,n,o)|0;u=c,c=a,a=s,s=i+h|0,i=o,o=n,n=t,t=h+g|0}t=t+this.A|0,n=n+this.B|0,o=o+this.C|0,i=i+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,u=u+this.H|0,this.set(t,n,o,i,s,a,c,u)}roundClean(){Pr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},Js=R1(()=>new U1),Vp={};k1(Vp,{abytes:()=>os,bitGet:()=>D1,bitLen:()=>F1,bitMask:()=>sl,bitSet:()=>z1,bytesToHex:()=>Mo,bytesToNumberBE:()=>Qe,bytesToNumberLE:()=>ol,concatBytes:()=>Nn,createHmacDrbg:()=>Yp,ensureBytes:()=>ze,equalBytes:()=>W1,hexToBytes:()=>Uo,hexToNumber:()=>nl,isBytes:()=>Cn,numberToBytesBE:()=>$r,numberToBytesLE:()=>il,numberToHexUnpadded:()=>Zp,numberToVarBytesBE:()=>$1,utf8ToBytes:()=>H1,validateObject:()=>is});var Gp=BigInt(0),na=BigInt(1),j1=BigInt(2);function Cn(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function os(r){if(!Cn(r))throw new Error("Uint8Array expected")}var q1=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function Mo(r){os(r);let e="";for(let t=0;t<r.length;t++)e+=q1[r[t]];return e}function Zp(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function nl(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var ir={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function mp(r){if(r>=ir._0&&r<=ir._9)return r-ir._0;if(r>=ir._A&&r<=ir._F)return r-(ir._A-10);if(r>=ir._a&&r<=ir._f)return r-(ir._a-10)}function Uo(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(t);for(let o=0,i=0;o<t;o++,i+=2){let s=mp(r.charCodeAt(i)),a=mp(r.charCodeAt(i+1));if(s===void 0||a===void 0){let c=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}n[o]=s*16+a}return n}function Qe(r){return nl(Mo(r))}function ol(r){return os(r),nl(Mo(Uint8Array.from(r).reverse()))}function $r(r,e){return Uo(r.toString(16).padStart(e*2,"0"))}function il(r,e){return $r(r,e).reverse()}function $1(r){return Uo(Zp(r))}function ze(r,e,t){let n;if(typeof e=="string")try{n=Uo(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else if(Cn(e))n=Uint8Array.from(e);else throw new Error(`${r} must be hex string or Uint8Array`);let o=n.length;if(typeof t=="number"&&o!==t)throw new Error(`${r} expected ${t} bytes, got ${o}`);return n}function Nn(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];os(o),e+=o.length}let t=new Uint8Array(e);for(let n=0,o=0;n<r.length;n++){let i=r[n];t.set(i,o),o+=i.length}return t}function W1(r,e){if(r.length!==e.length)return!1;let t=0;for(let n=0;n<r.length;n++)t|=r[n]^e[n];return t===0}function H1(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function F1(r){let e;for(e=0;r>Gp;r>>=na,e+=1);return e}function D1(r,e){return r>>BigInt(e)&na}function z1(r,e,t){return r|(t?na:Gp)<<BigInt(e)}var sl=r=>(j1<<BigInt(r-1))-na,Mu=r=>new Uint8Array(r),wp=r=>Uint8Array.from(r);function Yp(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=Mu(r),o=Mu(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...f)=>t(o,n,...f),c=(f=Mu())=>{o=a(wp([0]),f),n=a(),f.length!==0&&(o=a(wp([1]),f),n=a())},u=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,l=[];for(;f<e;){n=a();let h=n.slice();l.push(h),f+=n.length}return Nn(...l)};return(f,l)=>{s(),c(f);let h;for(;!(h=l(u()));)c();return s(),h}}var K1={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||Cn(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function is(r,e,t={}){let n=(o,i,s)=>{let a=K1[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=r[o];if(!(s&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(e))n(o,i,!1);for(let[o,i]of Object.entries(t))n(o,i,!0);return r}var Ae=BigInt(0),be=BigInt(1),xn=BigInt(2),V1=BigInt(3),Ku=BigInt(4),vp=BigInt(5),Ep=BigInt(8),zS=BigInt(9),G1=BigInt(16);function Me(r,e){let t=r%e;return t>=Ae?t:e+t}function Z1(r,e,t){if(t<=Ae||e<Ae)throw new Error("Expected power/modulo > 0");if(t===be)return Ae;let n=be;for(;e>Ae;)e&be&&(n=n*r%t),r=r*r%t,e>>=be;return n}function ht(r,e,t){let n=r;for(;e-- >Ae;)n*=n,n%=t;return n}function Vu(r,e){if(r===Ae||e<=Ae)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Me(r,e),n=e,o=Ae,i=be,s=be,a=Ae;for(;t!==Ae;){let c=n/t,u=n%t,f=o-s*c,l=i-a*c;n=t,t=u,o=s,i=a,s=f,a=l}if(n!==be)throw new Error("invert: does not exist");return Me(o,e)}function Y1(r){let e=(r-be)/xn,t,n,o;for(t=r-be,n=0;t%xn===Ae;t/=xn,n++);for(o=xn;o<r&&Z1(o,e,r)!==r-be;o++);if(n===1){let s=(r+be)/Ku;return function(a,c){let u=a.pow(c,s);if(!a.eql(a.sqr(u),c))throw new Error("Cannot find square root");return u}}let i=(t+be)/xn;return function(s,a){if(s.pow(a,e)===s.neg(s.ONE))throw new Error("Cannot find square root");let c=n,u=s.pow(s.mul(s.ONE,o),t),f=s.pow(a,i),l=s.pow(a,t);for(;!s.eql(l,s.ONE);){if(s.eql(l,s.ZERO))return s.ZERO;let h=1;for(let y=s.sqr(l);h<c&&!s.eql(y,s.ONE);h++)y=s.sqr(y);let g=s.pow(u,be<<BigInt(c-h-1));u=s.sqr(g),f=s.mul(f,g),l=s.mul(l,u),c=h}return f}}function J1(r){if(r%Ku===V1){let e=(r+be)/Ku;return function(t,n){let o=t.pow(n,e);if(!t.eql(t.sqr(o),n))throw new Error("Cannot find square root");return o}}if(r%Ep===vp){let e=(r-vp)/Ep;return function(t,n){let o=t.mul(n,xn),i=t.pow(o,e),s=t.mul(n,i),a=t.mul(t.mul(s,xn),i),c=t.mul(s,t.sub(a,t.ONE));if(!t.eql(t.sqr(c),n))throw new Error("Cannot find square root");return c}}return r%G1,Y1(r)}var X1=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Q1(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=X1.reduce((n,o)=>(n[o]="function",n),e);return is(r,t)}function e2(r,e,t){if(t<Ae)throw new Error("Expected power > 0");if(t===Ae)return r.ONE;if(t===be)return e;let n=r.ONE,o=e;for(;t>Ae;)t&be&&(n=r.mul(n,o)),o=r.sqr(o),t>>=be;return n}function t2(r,e){let t=new Array(e.length),n=e.reduce((i,s,a)=>r.is0(s)?i:(t[a]=i,r.mul(i,s)),r.ONE),o=r.inv(n);return e.reduceRight((i,s,a)=>r.is0(s)?i:(t[a]=r.mul(i,t[a]),r.mul(i,s)),o),t}function Jp(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function r2(r,e,t=!1,n={}){if(r<=Ae)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=Jp(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=J1(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:sl(o),ZERO:Ae,ONE:be,create:c=>Me(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ae<=c&&c<r},is0:c=>c===Ae,isOdd:c=>(c&be)===be,neg:c=>Me(-c,r),eql:(c,u)=>c===u,sqr:c=>Me(c*c,r),add:(c,u)=>Me(c+u,r),sub:(c,u)=>Me(c-u,r),mul:(c,u)=>Me(c*u,r),pow:(c,u)=>e2(a,c,u),div:(c,u)=>Me(c*Vu(u,r),r),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>Vu(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>t2(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>t?il(c,i):$r(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?ol(c):Qe(c)}});return Object.freeze(a)}function Xp(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function Qp(r){let e=Xp(r);return e+Math.ceil(e/2)}function n2(r,e,t=!1){let n=r.length,o=Xp(e),i=Qp(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=t?Qe(r):ol(r),a=Me(s,e-be)+be;return t?il(a,o):$r(a,o)}var o2=BigInt(0),Uu=BigInt(1);function i2(r,e){let t=(o,i)=>{let s=i.negate();return o?s:i},n=o=>{let i=Math.ceil(e/o)+1,s=2**(o-1);return{windows:i,windowSize:s}};return{constTimeNegate:t,unsafeLadder(o,i){let s=r.ZERO,a=o;for(;i>o2;)i&Uu&&(s=s.add(a)),a=a.double(),i>>=Uu;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],u=o,f=u;for(let l=0;l<s;l++){f=u,c.push(f);for(let h=1;h<a;h++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),u=r.ZERO,f=r.BASE,l=BigInt(2**o-1),h=2**o,g=BigInt(o);for(let y=0;y<a;y++){let d=y*c,p=Number(s&l);s>>=g,p>c&&(p-=h,s+=Uu);let b=d,m=d+Math.abs(p)-1,x=y%2!==0,S=p<0;p===0?f=f.add(t(x,i[b])):u=u.add(t(S,i[m]))}return{p:u,f}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,u=i.get(o);return u||(u=this.precomputeWindow(o,c),c!==1&&i.set(o,a(u))),this.wNAF(c,u,s)}}}function e0(r){return Q1(r.Fp),is(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze(J(z(z({},Jp(r.n,r.nBitLength)),r),{p:r.Fp.ORDER}))}function s2(r){let e=e0(r);is(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:n,a:o}=e;if(t){if(!n.eql(o,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze(z({},e))}var{bytesToNumberBE:a2,hexToBytes:c2}=Vp,kn={Err:class extends Error{constructor(r=""){super(r)}},_parseInt(r){let{Err:e}=kn;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:a2(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=kn,t=typeof r=="string"?c2(r):r;os(t);let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:o,l:i}=kn._parseInt(t.subarray(2)),{d:s,l:a}=kn._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,s}},hexFromSig(r){let e=u=>Number.parseInt(u[0],16)&8?"00"+u:u,t=u=>{let f=u.toString(16);return f.length&1?`0${f}`:f},n=e(t(r.s)),o=e(t(r.r)),i=n.length/2,s=o.length/2,a=t(i),c=t(s);return`30${t(s+i+4)}02${c}${o}02${a}${n}`}},ur=BigInt(0),pt=BigInt(1),KS=BigInt(2),xp=BigInt(3),VS=BigInt(4);function u2(r){let e=s2(r),{Fp:t}=e,n=e.toBytes||((y,d,p)=>{let b=d.toAffine();return Nn(Uint8Array.from([4]),t.toBytes(b.x),t.toBytes(b.y))}),o=e.fromBytes||(y=>{let d=y.subarray(1),p=t.fromBytes(d.subarray(0,t.BYTES)),b=t.fromBytes(d.subarray(t.BYTES,2*t.BYTES));return{x:p,y:b}});function i(y){let{a:d,b:p}=e,b=t.sqr(y),m=t.mul(b,y);return t.add(t.add(m,t.mul(y,d)),p)}if(!t.eql(t.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(y){return typeof y=="bigint"&&ur<y&&y<e.n}function a(y){if(!s(y))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(y){let{allowedPrivateKeyLengths:d,nByteLength:p,wrapPrivateKey:b,n:m}=e;if(d&&typeof y!="bigint"){if(Cn(y)&&(y=Mo(y)),typeof y!="string"||!d.includes(y.length))throw new Error("Invalid key");y=y.padStart(p*2,"0")}let x;try{x=typeof y=="bigint"?y:Qe(ze("private key",y,p))}catch(S){throw new Error(`private key must be ${p} bytes, hex or bigint, not ${typeof y}`)}return b&&(x=Me(x,m)),a(x),x}let u=new Map;function f(y){if(!(y instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(d,p,b){if(this.px=d,this.py=p,this.pz=b,d==null||!t.isValid(d))throw new Error("x required");if(p==null||!t.isValid(p))throw new Error("y required");if(b==null||!t.isValid(b))throw new Error("z required")}static fromAffine(d){let{x:p,y:b}=d||{};if(!d||!t.isValid(p)||!t.isValid(b))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let m=x=>t.eql(x,t.ZERO);return m(p)&&m(b)?l.ZERO:new l(p,b,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let p=t.invertBatch(d.map(b=>b.pz));return d.map((b,m)=>b.toAffine(p[m])).map(l.fromAffine)}static fromHex(d){let p=l.fromAffine(o(ze("pointHex",d)));return p.assertValidity(),p}static fromPrivateKey(d){return l.BASE.multiply(c(d))}_setWindowSize(d){this._WINDOW_SIZE=d,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:p}=this.toAffine();if(!t.isValid(d)||!t.isValid(p))throw new Error("bad point: x or y not FE");let b=t.sqr(p),m=i(d);if(!t.eql(b,m))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(t.isOdd)return!t.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.eql(t.mul(p,I),t.mul(x,m)),O=t.eql(t.mul(b,I),t.mul(S,m));return _&&O}negate(){return new l(this.px,t.neg(this.py),this.pz)}double(){let{a:d,b:p}=e,b=t.mul(p,xp),{px:m,py:x,pz:S}=this,I=t.ZERO,_=t.ZERO,O=t.ZERO,w=t.mul(m,m),E=t.mul(x,x),v=t.mul(S,S),A=t.mul(m,x);return A=t.add(A,A),O=t.mul(m,S),O=t.add(O,O),I=t.mul(d,O),_=t.mul(b,v),_=t.add(I,_),I=t.sub(E,_),_=t.add(E,_),_=t.mul(I,_),I=t.mul(A,I),O=t.mul(b,O),v=t.mul(d,v),A=t.sub(w,v),A=t.mul(d,A),A=t.add(A,O),O=t.add(w,w),w=t.add(O,w),w=t.add(w,v),w=t.mul(w,A),_=t.add(_,w),v=t.mul(x,S),v=t.add(v,v),w=t.mul(v,A),I=t.sub(I,w),O=t.mul(v,E),O=t.add(O,O),O=t.add(O,O),new l(I,_,O)}add(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.ZERO,O=t.ZERO,w=t.ZERO,E=e.a,v=t.mul(e.b,xp),A=t.mul(p,x),R=t.mul(b,S),L=t.mul(m,I),P=t.add(p,b),B=t.add(x,S);P=t.mul(P,B),B=t.add(A,R),P=t.sub(P,B),B=t.add(p,m);let T=t.add(x,I);return B=t.mul(B,T),T=t.add(A,L),B=t.sub(B,T),T=t.add(b,m),_=t.add(S,I),T=t.mul(T,_),_=t.add(R,L),T=t.sub(T,_),w=t.mul(E,B),_=t.mul(v,L),w=t.add(_,w),_=t.sub(R,w),w=t.add(R,w),O=t.mul(_,w),R=t.add(A,A),R=t.add(R,A),L=t.mul(E,L),B=t.mul(v,B),R=t.add(R,L),L=t.sub(A,L),L=t.mul(E,L),B=t.add(B,L),A=t.mul(R,B),O=t.add(O,A),A=t.mul(T,B),_=t.mul(P,_),_=t.sub(_,A),A=t.mul(P,R),w=t.mul(T,w),w=t.add(w,A),new l(_,O,w)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return g.wNAFCached(this,u,d,p=>{let b=t.invertBatch(p.map(m=>m.pz));return p.map((m,x)=>m.toAffine(b[x])).map(l.fromAffine)})}multiplyUnsafe(d){let p=l.ZERO;if(d===ur)return p;if(a(d),d===pt)return this;let{endo:b}=e;if(!b)return g.unsafeLadder(this,d);let{k1neg:m,k1:x,k2neg:S,k2:I}=b.splitScalar(d),_=p,O=p,w=this;for(;x>ur||I>ur;)x&pt&&(_=_.add(w)),I&pt&&(O=O.add(w)),w=w.double(),x>>=pt,I>>=pt;return m&&(_=_.negate()),S&&(O=O.negate()),O=new l(t.mul(O.px,b.beta),O.py,O.pz),_.add(O)}multiply(d){a(d);let p=d,b,m,{endo:x}=e;if(x){let{k1neg:S,k1:I,k2neg:_,k2:O}=x.splitScalar(p),{p:w,f:E}=this.wNAF(I),{p:v,f:A}=this.wNAF(O);w=g.constTimeNegate(S,w),v=g.constTimeNegate(_,v),v=new l(t.mul(v.px,x.beta),v.py,v.pz),b=w.add(v),m=E.add(A)}else{let{p:S,f:I}=this.wNAF(p);b=S,m=I}return l.normalizeZ([b,m])[0]}multiplyAndAddUnsafe(d,p,b){let m=l.BASE,x=(I,_)=>_===ur||_===pt||!I.equals(m)?I.multiplyUnsafe(_):I.multiply(_),S=x(this,p).add(x(d,b));return S.is0()?void 0:S}toAffine(d){let{px:p,py:b,pz:m}=this,x=this.is0();d==null&&(d=x?t.ONE:t.inv(m));let S=t.mul(p,d),I=t.mul(b,d),_=t.mul(m,d);if(x)return{x:t.ZERO,y:t.ZERO};if(!t.eql(_,t.ONE))throw new Error("invZ was invalid");return{x:S,y:I}}isTorsionFree(){let{h:d,isTorsionFree:p}=e;if(d===pt)return!0;if(p)return p(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:p}=e;return d===pt?this:p?p(l,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(l,this,d)}toHex(d=!0){return Mo(this.toRawBytes(d))}}l.BASE=new l(e.Gx,e.Gy,t.ONE),l.ZERO=new l(t.ZERO,t.ONE,t.ZERO);let h=e.nBitLength,g=i2(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function l2(r){let e=e0(r);return is(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze(z({lowS:!0},e))}function f2(r){let e=l2(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(B){return ur<B&&B<t.ORDER}function a(B){return Me(B,n)}function c(B){return Vu(B,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=u2(J(z({},e),{toBytes(B,T,C){let M=T.toAffine(),N=t.toBytes(M.x),W=Nn;return C?W(Uint8Array.from([T.hasEvenY()?2:3]),N):W(Uint8Array.from([4]),N,t.toBytes(M.y))},fromBytes(B){let T=B.length,C=B[0],M=B.subarray(1);if(T===o&&(C===2||C===3)){let N=Qe(M);if(!s(N))throw new Error("Point is not on curve");let W=l(N),D;try{D=t.sqrt(W)}catch(K){let X=K instanceof Error?": "+K.message:"";throw new Error("Point is not on curve"+X)}let q=(D&pt)===pt;return(C&1)===1!==q&&(D=t.neg(D)),{x:N,y:D}}else if(T===i&&C===4){let N=t.fromBytes(M.subarray(0,t.BYTES)),W=t.fromBytes(M.subarray(t.BYTES,2*t.BYTES));return{x:N,y:W}}else throw new Error(`Point of length ${T} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}})),g=B=>Mo($r(B,e.nByteLength));function y(B){let T=n>>pt;return B>T}function d(B){return y(B)?a(-B):B}let p=(B,T,C)=>Qe(B.slice(T,C));class b{constructor(T,C,M){this.r=T,this.s=C,this.recovery=M,this.assertValidity()}static fromCompact(T){let C=e.nByteLength;return T=ze("compactSignature",T,C*2),new b(p(T,0,C),p(T,C,2*C))}static fromDER(T){let{r:C,s:M}=kn.toSig(ze("DER",T));return new b(C,M)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(T){return new b(this.r,this.s,T)}recoverPublicKey(T){let{r:C,s:M,recovery:N}=this,W=O(ze("msgHash",T));if(N==null||![0,1,2,3].includes(N))throw new Error("recovery id invalid");let D=N===2||N===3?C+e.n:C;if(D>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=N&1?"03":"02",K=u.fromHex(q+g(D)),X=c(D),oe=a(-W*X),ne=a(M*X),ee=u.BASE.multiplyAndAddUnsafe(K,oe,ne);if(!ee)throw new Error("point at infinify");return ee.assertValidity(),ee}hasHighS(){return y(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Uo(this.toDERHex())}toDERHex(){return kn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Uo(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let m={isValidPrivateKey(B){try{return f(B),!0}catch(T){return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let B=Qp(e.n);return n2(e.randomBytes(B),e.n)},precompute(B=8,T=u.BASE){return T._setWindowSize(B),T.multiply(BigInt(3)),T}};function x(B,T=!0){return u.fromPrivateKey(B).toRawBytes(T)}function S(B){let T=Cn(B),C=typeof B=="string",M=(T||C)&&B.length;return T?M===o||M===i:C?M===2*o||M===2*i:B instanceof u}function I(B,T,C=!0){if(S(B))throw new Error("first arg must be private key");if(!S(T))throw new Error("second arg must be public key");return u.fromHex(T).multiply(f(B)).toRawBytes(C)}let _=e.bits2int||function(B){let T=Qe(B),C=B.length*8-e.nBitLength;return C>0?T>>BigInt(C):T},O=e.bits2int_modN||function(B){return a(_(B))},w=sl(e.nBitLength);function E(B){if(typeof B!="bigint")throw new Error("bigint expected");if(!(ur<=B&&B<w))throw new Error(`bigint expected < 2^${e.nBitLength}`);return $r(B,e.nByteLength)}function v(B,T,C=A){if(["recovered","canonical"].some(ce=>ce in C))throw new Error("sign() legacy options not supported");let{hash:M,randomBytes:N}=e,{lowS:W,prehash:D,extraEntropy:q}=C;W==null&&(W=!0),B=ze("msgHash",B),D&&(B=ze("prehashed msgHash",M(B)));let K=O(B),X=f(T),oe=[E(X),E(K)];if(q!=null&&q!==!1){let ce=q===!0?N(t.BYTES):q;oe.push(ze("extraEntropy",ce))}let ne=Nn(...oe),ee=K;function pe(ce){let Te=_(ce);if(!h(Te))return;let at=c(Te),ge=u.BASE.multiply(Te).toAffine(),ye=a(ge.x);if(ye===ur)return;let Fe=a(at*a(ee+ye*X));if(Fe===ur)return;let $t=(ge.x===ye?0:2)|Number(ge.y&pt),Ir=Fe;return W&&y(Fe)&&(Ir=d(Fe),$t^=1),new b(ye,Ir,$t)}return{seed:ne,k2sig:pe}}let A={lowS:e.lowS,prehash:!1},R={lowS:e.lowS,prehash:!1};function L(B,T,C=A){let{seed:M,k2sig:N}=v(B,T,C),W=e;return Yp(W.hash.outputLen,W.nByteLength,W.hmac)(M,N)}u.BASE._setWindowSize(8);function P(B,T,C,M=R){var at;let N=B;if(T=ze("msgHash",T),C=ze("publicKey",C),"strict"in M)throw new Error("options.strict was renamed to lowS");let{lowS:W,prehash:D}=M,q,K;try{if(typeof N=="string"||Cn(N))try{q=b.fromDER(N)}catch(ge){if(!(ge instanceof kn.Err))throw ge;q=b.fromCompact(N)}else if(typeof N=="object"&&typeof N.r=="bigint"&&typeof N.s=="bigint"){let{r:ge,s:ye}=N;q=new b(ge,ye)}else throw new Error("PARSE");K=u.fromHex(C)}catch(ge){if(ge.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(W&&q.hasHighS())return!1;D&&(T=e.hash(T));let{r:X,s:oe}=q,ne=O(T),ee=c(oe),pe=a(ne*ee),ce=a(X*ee),Te=(at=u.BASE.multiplyAndAddUnsafe(K,pe,ce))==null?void 0:at.toAffine();return Te?a(Te.x)===X:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:I,sign:L,verify:P,ProjectivePoint:u,Signature:b,utils:m}}var t0=class extends zp{constructor(r,e){super(),this.finished=!1,this.destroyed=!1,_1(r);let t=rl(e);if(this.iHash=r.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let n=this.blockLen,o=new Uint8Array(n);o.set(t.length>n?r.create().update(t).digest():t);for(let i=0;i<o.length;i++)o[i]^=54;this.iHash.update(o),this.oHash=r.create();for(let i=0;i<o.length;i++)o[i]^=106;this.oHash.update(o),o.fill(0)}update(r){return Ys(this),this.iHash.update(r),this}digestInto(r){Ys(this),ns(r,this.outputLen),this.finished=!0,this.iHash.digestInto(r),this.oHash.update(r),this.oHash.digestInto(r),this.destroy()}digest(){let r=new Uint8Array(this.oHash.outputLen);return this.digestInto(r),r}_cloneInto(r){r||(r=Object.create(Object.getPrototypeOf(this),{}));let{oHash:e,iHash:t,finished:n,destroyed:o,blockLen:i,outputLen:s}=this;return r=r,r.finished=n,r.destroyed=o,r.blockLen=i,r.outputLen=s,r.oHash=e._cloneInto(r.oHash),r.iHash=t._cloneInto(r.iHash),r}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},r0=(r,e,t)=>new t0(r,e).update(t).digest();r0.create=(r,e)=>new t0(r,e);function h2(r){return{hash:r,hmac:(e,...t)=>r0(r,e,T1(...t)),randomBytes:Kp}}function d2(r,e){let t=n=>f2(z(z({},r),h2(n)));return Object.freeze(J(z({},t(e)),{create:t}))}var oa=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Xs=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),n0=BigInt(1),Qs=BigInt(2),kp=(r,e)=>(r+e/Qs)/e;function o0(r){let e=oa,t=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=r*r*r%e,f=u*u*r%e,l=ht(f,t,e)*f%e,h=ht(l,t,e)*f%e,g=ht(h,Qs,e)*u%e,y=ht(g,o,e)*g%e,d=ht(y,i,e)*y%e,p=ht(d,a,e)*d%e,b=ht(p,c,e)*p%e,m=ht(b,a,e)*d%e,x=ht(m,t,e)*f%e,S=ht(x,s,e)*y%e,I=ht(S,n,e)*u%e,_=ht(I,Qs,e);if(!Gu.eql(Gu.sqr(_),r))throw new Error("Cannot find square root");return _}var Gu=r2(oa,void 0,void 0,{sqrt:o0}),al=d2({a:BigInt(0),b:BigInt(7),Fp:Gu,n:Xs,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=Xs,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-n0*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=kp(i*r,e),c=kp(-n*r,e),u=Me(r-a*t-c*o,e),f=Me(-a*n-c*i,e),l=u>s,h=f>s;if(l&&(u=e-u),h&&(f=e-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},Js),ia=BigInt(0),i0=r=>typeof r=="bigint"&&ia<r&&r<oa,p2=r=>typeof r=="bigint"&&ia<r&&r<Xs,Ap={};function ea(r,...e){let t=Ap[r];if(t===void 0){let n=Js(Uint8Array.from(r,o=>o.charCodeAt(0)));t=Nn(n,n),Ap[r]=t}return Js(Nn(t,...e))}var cl=r=>r.toRawBytes(!0).slice(1),Zu=r=>$r(r,32),ju=r=>Me(r,oa),Di=r=>Me(r,Xs),ul=al.ProjectivePoint,g2=(r,e,t)=>ul.BASE.multiplyAndAddUnsafe(r,e,t);function Yu(r){let e=al.utils.normPrivateKeyToScalar(r),t=ul.fromPrivateKey(e);return{scalar:t.hasEvenY()?e:Di(-e),bytes:cl(t)}}function s0(r){if(!i0(r))throw new Error("bad x: need 0 < x < p");let e=ju(r*r),t=ju(e*r+BigInt(7)),n=o0(t);n%Qs!==ia&&(n=ju(-n));let o=new ul(r,n,n0);return o.assertValidity(),o}function a0(...r){return Di(Qe(ea("BIP0340/challenge",...r)))}function y2(r){return Yu(r).bytes}function b2(r,e,t=Kp(32)){let n=ze("message",r),{bytes:o,scalar:i}=Yu(e),s=ze("auxRand",t,32),a=Zu(i^Qe(ea("BIP0340/aux",s))),c=ea("BIP0340/nonce",a,o,n),u=Di(Qe(c));if(u===ia)throw new Error("sign failed: k is zero");let{bytes:f,scalar:l}=Yu(u),h=a0(f,o,n),g=new Uint8Array(64);if(g.set(f,0),g.set(Zu(Di(l+h*i)),32),!c0(g,n,o))throw new Error("sign: Invalid signature produced");return g}function c0(r,e,t){let n=ze("signature",r,64),o=ze("message",e),i=ze("publicKey",t,32);try{let s=s0(Qe(i)),a=Qe(n.subarray(0,32));if(!i0(a))return!1;let c=Qe(n.subarray(32,64));if(!p2(c))return!1;let u=a0(Zu(a),cl(s),o),f=g2(s,c,Di(-u));return!(!f||!f.hasEvenY()||f.toAffine().x!==a)}catch(s){return!1}}var m2={getPublicKey:y2,sign:b2,verify:c0,utils:{randomPrivateKey:al.utils.randomPrivateKey,lift_x:s0,pointToBytes:cl,numberToBytesBE:$r,bytesToNumberBE:Qe,taggedHash:ea,mod:Me}},w2=new TextEncoder,v2=r=>{let e=JSON.stringify([0,r.pubkey,r.created_at,r.kind,r.tags,r.content]),t=O1(Js(w2.encode(e)));return r.id!==t?!1:m2.verify(r.sig,t,r.pubkey)},_p={all:0,verbose:10,info:20,warn:30,error:40,none:50},Sp={verbose:console.debug,info:console.info,warn:console.warn,error:console.error},An,ko,Ao,Ln,sa=(Ln=class{constructor(e,t){H(this,An);H(this,ko);H(this,Ao);F(this,An,e),F(this,ko,t!=null?t:""),F(this,Ao,t?`[${t}]`:"")}subLogger(e){return k(this,ko)?new Ln(k(this,An),`${k(this,ko)}:${e}`):new Ln(k(this,An),e)}log(e,t,...n){_p[e]<_p[k(this,An)]||(k(this,Ao)?Sp[e](`${k(this,Ao)} ${t}`,...n):Sp[e](t,...n))}},An=new WeakMap,ko=new WeakMap,Ao=new WeakMap,Ln),_o,Wi=(_o=class extends Error{},_o.prototype.name="FetchTillEoseFailedSignal",_o),So,qu=(So=class extends Error{},So.prototype.name="FetchTillEoseAbortedSignal",So),$u=r=>r instanceof Error&&r.name==="FetchTillEoseFailedSignal",Wu=r=>r instanceof Error&&r.name==="FetchTillEoseAbortedSignal",Bp={minLogLevel:"warn"};var E2=r=>65<=r&&r<=90||97<=r&&r<=122,x2=r=>r.length===1&&E2(r.charCodeAt(0)),u0=r=>r.startsWith("#")&&x2(r.substring(1)),k2=["EVENT","EOSE","CLOSED","NOTICE"],A2=r=>k2.includes(r),_2=r=>{let e;try{e=JSON.parse(r)}catch(n){console.error("failed to parse R2C message as JSON:",n);return}if(!Array.isArray(e)||e.length===0||typeof e[0]!="string"){console.error("malformed R2C message");return}let t=e[0];if(!A2(t)){console.error("unsupported R2C message type:",e[0]);return}switch(t){case"EVENT":{if(e.length!==3){console.error("malformed R2C EVENT");return}let[,n,o]=e;if(typeof n!="string"||typeof o!="object"||o===null){console.error("malformed R2C EVENT");return}if(!S2(o)){console.error("malformed event in R2C EVENT");return}return e}case"EOSE":{if(e.length!==2||typeof e[1]!="string"){console.error("malformed R2C EOSE");return}return e}case"CLOSED":{if(e.length!==3||typeof e[1]!="string"||typeof e[2]!="string"){console.error("malformed R2C CLOSED");return}return e}case"NOTICE":{if(e.length!==2){console.error("malformed R2C NOTICE");return}return e}default:return}},S2=r=>!(!("id"in r)||typeof r.id!="string"||!Op(r.id)||!("pubkey"in r)||typeof r.pubkey!="string"||!Op(r.pubkey)||!("created_at"in r)||typeof r.created_at!="number"||!("kind"in r)||typeof r.kind!="number"||!("tags"in r)||!Array.isArray(r.tags)||r.tags.some(e=>!Array.isArray(e)||e.some(t=>typeof t!="string"))||!("content"in r)||typeof r.content!="string"||!("sig"in r)||typeof r.sig!="string"||!B2(r.sig)),Op=r=>/^[a-f0-9]{64}$/.test(r),B2=r=>/^[a-f0-9]{128}$/.test(r);var O2=r=>{var i;let e=r.ids?new Set(r.ids):void 0,t=r.kinds?new Set(r.kinds):void 0,n=r.authors?new Set(r.authors):void 0,o=[];for(let s of Object.keys(r))s.startsWith("#")&&s.length===2&&o.push([s.charAt(1),new Set((i=r[s])!=null?i:[])]);return{ids:e,kinds:t,authors:n,tags:o,since:r.since,until:r.until}},I2=(r,e)=>r.tags.filter(t=>t[0]===e).map(t=>{var n;return(n=t[1])!=null?n:""}),T2=(r,e)=>r.ids!==void 0&&!r.ids.has(e.id)||r.kinds!==void 0&&!r.kinds.has(e.kind)||r.authors!==void 0&&!r.authors.has(e.pubkey)||r.since!==void 0&&e.created_at<r.since||r.until!==void 0&&e.created_at>r.until?!1:r.tags.every(([t,n])=>{let o=I2(e,t);return o.length===0?!1:o.some(i=>n.has(i))}),Ki,Cp,R2=(Cp=class{constructor(r){H(this,Ki);F(this,Ki,r.map(O2))}match(r){return k(this,Ki).some(e=>T2(e,r))}},Ki=new WeakMap,Cp),L2=async r=>{try{let e=P2(r),t=await fetch(e,{headers:{Accept:"application/nostr+json"},signal:AbortSignal.timeout(5e3)});if(!t.ok)return console.error("relay information response is not ok"),new Set;let n=await t.json();return C2(n)?new Set(n.supported_nips):(console.error("relay information document doesn't have proper 'supported_nips' property"),new Set)}catch(e){return console.error(e),new Set}},P2=r=>{let e=new URL(r);switch(e.protocol){case"wss:":e.protocol="https:";break;case"ws:":e.protocol="http:";break}return e.toString()},C2=r=>typeof r=="object"&&r!==null&&"supported_nips"in r&&Array.isArray(r.supported_nips)&&(r.supported_nips.length===0||r.supported_nips.every(e=>typeof e=="number")),N2=()=>Date.now().toString()+Math.random().toString(32).substring(2,4),M2=[/^too many concurrent REQs$/i,/^Subscription rejected/i,/^invalid:(.*)must (contain|be) less than or equal to/i,/^message too large$/i,/^Maximum concurrent subscription count reached$/i],U2=r=>M2.some(e=>e.test(r)),Ju=(r=new Date)=>r.getTime(),Hu=(r=new Date)=>Math.floor(Ju(r)/1e3),l0=r=>{let e=new URL(r);return e.pathname=e.pathname.replace(/\/+/g,"/"),e.pathname.endsWith("/")&&(e.pathname=e.pathname.slice(0,-1)),(e.port==="80"&&e.protocol==="ws:"||e.port==="443"&&e.protocol==="wss:")&&(e.port=""),e.searchParams.sort(),e.hash="",e.toString()},j2=r=>Array.from(new Set(r)),ll=r=>j2(r.filter(e=>{try{return new URL(e),!0}catch(t){return!1}}).map(e=>l0(e))),q2=(r,e)=>{if(r.length<=e*2||e<=0)return r;let t=r.length;return`${r.slice(0,e)}:${r.slice(t-e)}`},$2=(r,e)=>new W2(r,e),_n,Dt,Bo,sr,Sn,Bn,On,Np,W2=(Np=class{constructor(r,e){H(this,_n);H(this,Dt);H(this,Bo);H(this,sr,{connect:new Set,disconnect:new Set,notice:new Set,error:new Set});H(this,Sn,new Map);H(this,Bn,[]);H(this,On);F(this,_n,r),F(this,Bo,e)}get url(){return k(this,_n)}get wsReadyState(){var r,e;return(e=(r=k(this,Dt))==null?void 0:r.readyState)!=null?e:0}async forwardToSubAsync(r,e){let t=k(this,Sn).get(r);t!==void 0&&await e(t)}async forwardToSub(r,e){let t=k(this,Sn).get(r);t!==void 0&&e(t)}async handleMsgs(){if(k(this,Bn).length===0){clearInterval(k(this,On)),F(this,On,void 0);return}let r=performance.now();for(;k(this,Bn).length>0&&performance.now()-r<5;){let e=k(this,Bn).shift(),t=_2(e);if(t!==void 0)switch(t[0]){case"EVENT":{let[,n,o]=t;await this.forwardToSubAsync(n,i=>i._forwardEvent(o));break}case"EOSE":{let[,n]=t;this.forwardToSub(n,o=>o._forwardEose());break}case"CLOSED":{let[,n,o]=t;this.forwardToSub(n,i=>i._forwardClosed(o));break}case"NOTICE":{let[,n]=t;k(this,sr).notice.forEach(o=>o(n));break}}}}async connect(){return new Promise((r,e)=>{let t=!1,n=setTimeout(()=>{t=!0,e(Error(`attempt to connect to the relay '${k(this,_n)}' timed out`))},k(this,Bo).connectTimeoutMs),o=()=>{e(Error("WebSocket error")),clearTimeout(n)},i=new(k(this,Bo)).webSocketConstructor(k(this,_n));i.addEventListener("open",()=>{t||(k(this,sr).connect.forEach(s=>s()),F(this,Dt,i),i.removeEventListener("error",o),i.addEventListener("error",()=>{k(this,sr).error.forEach(s=>s())}),r(this),clearTimeout(n))}),i.addEventListener("error",o),i.addEventListener("close",s=>{let a={code:s.code,reason:s.reason,wasClean:s.wasClean};k(this,sr).disconnect.forEach(c=>c(a))}),i.addEventListener("message",s=>{k(this,Bn).push(s.data),k(this,On)===void 0&&F(this,On,setInterval(()=>this.handleMsgs(),0))})})}close(){k(this,Dt)!==void 0&&k(this,Dt).close()}prepareSub(r,e){var o;let t=(o=e.subId)!=null?o:N2(),n=new H2(this,t,r,e);return k(this,Sn).set(t,n),n}_removeSub(r){k(this,Sn).delete(r)}on(r,e){k(this,sr)[r].add(e)}off(r,e){k(this,sr)[r].delete(e)}_sendC2RMessage(r){if(k(this,Dt)===void 0||k(this,Dt).readyState!==1)throw Error("not connected to the relay");k(this,Dt).send(JSON.stringify(r))}},_n=new WeakMap,Dt=new WeakMap,Bo=new WeakMap,sr=new WeakMap,Sn=new WeakMap,Bn=new WeakMap,On=new WeakMap,Np),Nr,ar,Vi,Gi,Mr,zt,_t,Wr,Xu,Qu,Mp,H2=(Mp=class{constructor(r,e,t,n){H(this,Wr);H(this,Nr);H(this,ar);H(this,Vi);H(this,Gi);H(this,Mr);H(this,zt,{event:new Set,eose:new Set,closed:new Set});H(this,_t);F(this,Nr,r),F(this,ar,e),F(this,Vi,t),F(this,Gi,new R2(t)),F(this,Mr,n)}get subId(){return k(this,ar)}req(){k(this,Nr)._sendC2RMessage(["REQ",k(this,ar),...k(this,Vi)]),G(this,Wr,Qu).call(this)}close(){G(this,Wr,Xu).call(this),k(this,Nr)._removeSub(k(this,ar)),k(this,Nr)._sendC2RMessage(["CLOSE",k(this,ar)])}on(r,e){k(this,zt)[r].add(e)}off(r,e){k(this,zt)[r].delete(e)}async _forwardEvent(r){G(this,Wr,Qu).call(this),!(!k(this,Mr).skipVerification&&!await k(this,Mr).eventVerifier(r))&&(!k(this,Mr).skipFilterMatching&&!k(this,Gi).match(r)||k(this,zt).event.forEach(e=>e(r)))}_forwardEose(){k(this,_t)!==void 0&&clearTimeout(k(this,_t)),k(this,zt).eose.forEach(r=>r({aborted:!1}))}_forwardClosed(r){k(this,zt).closed.forEach(e=>e(r)),G(this,Wr,Xu).call(this),k(this,Nr)._removeSub(k(this,ar))}},Nr=new WeakMap,ar=new WeakMap,Vi=new WeakMap,Gi=new WeakMap,Mr=new WeakMap,zt=new WeakMap,_t=new WeakMap,Wr=new WeakSet,Xu=function(){for(let r of Object.values(k(this,zt)))r.clear();k(this,_t)!==void 0&&clearTimeout(k(this,_t))},Qu=function(){k(this,_t)!==void 0&&(clearTimeout(k(this,_t)),F(this,_t,void 0)),F(this,_t,setTimeout(()=>{k(this,zt).eose.forEach(r=>r({aborted:!0}))},k(this,Mr).abortSubBeforeEoseTimeoutMs))},Mp),F2=r=>new K2(r),D2=30*1e3,z2=10*1e3,Xe,Zi,In,ta,f0,Up,K2=(Up=class{constructor(r){H(this,ta);H(this,Xe,new Map);H(this,Zi);H(this,In);r.minLogLevel!=="none"&&F(this,In,new sa(r.minLogLevel)),F(this,Zi,setInterval(()=>{var t;(t=k(this,In))==null||t.log("info","watchdog started");let e=Array.from(k(this,Xe).keys());this.addRelays(e,{connectTimeoutMs:z2,webSocketConstructor:r.webSocketConstructor}).then(()=>{var n;(n=k(this,In))==null||n.log("info","watchdog completed")})},D2))}async addRelays(r,e){let t=[],n=[];for(let o of r){let i=k(this,Xe).get(o);i===void 0||G(this,ta,f0).call(this,i)?t.push(o):i.state==="connecting"&&n.push(i.wait)}await Promise.all([...t.map(async o=>{var a;let i=(a=k(this,In))==null?void 0:a.subLogger(o),s=new Zs;try{k(this,Xe).set(o,{state:"connecting",relayUrl:o,wait:s.promise});let c=$2(o,e);c.on("connect",()=>i==null?void 0:i.log("info","connected")),c.on("disconnect",u=>{i==null||i.log("info",`disconnected: ${JSON.stringify(u)}`),k(this,Xe).set(c.url,{state:"disconnected",relayUrl:c.url})}),c.on("error",()=>{i==null||i.log("error","WebSocket error"),k(this,Xe).set(c.url,{state:"disconnected",relayUrl:c.url})}),c.on("notice",u=>i==null?void 0:i.log("warn",`NOTICE: ${u}`)),await c.connect(),k(this,Xe).set(o,{state:"alive",relayUrl:o,relay:c})}catch(c){i==null||i.log("error","failed to connect to the relay"),k(this,Xe).set(o,{state:"connectFailed",relayUrl:o,failedAt:Ju()})}finally{s.resolve()}}),...n])}async ensureRelays(r,e){let t=ll(r);await this.addRelays(t,e);let n=[];for(let o of t){let i=k(this,Xe).get(o);i!==void 0&&i.state==="alive"&&n.push(i.relay.url)}return n}async ensureSingleRelay(r,e){let t=l0(r);await this.addRelays([t],e);let n=k(this,Xe).get(t);if(n!==void 0&&n.state==="alive")return n.relay}shutdown(){clearInterval(k(this,Zi));for(let[,r]of k(this,Xe))r.state==="alive"&&r.relay.close();k(this,Xe).clear()}},Xe=new WeakMap,Zi=new WeakMap,In=new WeakMap,ta=new WeakSet,f0=function(r){return r.state==="connectFailed"&&Ju()-r.failedAt>30*1e3||r.state==="disconnected"||r.state==="alive"&&r.relay.wsReadyState===3},Up),V2={webSocketConstructor:globalThis.WebSocket},Tn,Oo,Yi,jp,G2=(jp=class{constructor(r){H(this,Tn);H(this,Oo);H(this,Yi);F(this,Tn,F2(r)),F(this,Oo,r.webSocketConstructor),r.minLogLevel!=="none"&&F(this,Yi,new sa(r.minLogLevel))}async ensureRelays(r,e){return k(this,Tn).ensureRelays(r,J(z({},e),{webSocketConstructor:k(this,Oo)}))}shutdown(){k(this,Tn).shutdown()}fetchTillEose(r,e,t){return ct(this,null,function*(){var h,g,y,d;let n=(h=k(this,Yi))==null?void 0:h.subLogger(r),o=yield new Ve(k(this,Tn).ensureSingleRelay(r,{connectTimeoutMs:t.connectTimeoutMs,webSocketConstructor:k(this,Oo)}));if(o===void 0)throw new Wi("failed to ensure connection to the relay");let[i,s]=Ks.make(),a=p=>{if(U2(p)){try{f.close()}catch(b){n==null||n.log("error",`failed to close subscription (id: ${f.subId}): ${b}`)}u(),i.error(new Wi(`NOTICE: ${p}`))}},c=()=>{u(),i.error(new Wi("WebSocket error"))},u=()=>{o.off("notice",a),o.off("error",c)};o.on("notice",a),o.on("error",c);let f=o.prepareSub([e],t);f.on("event",p=>{i.send(p)}),f.on("eose",({aborted:p})=>{l(),p?i.error(new qu(`subscription (id: ${f.subId}) aborted before EOSE due to timeout`)):i.close()}),f.on("closed",p=>{i.error(new Wi(`subscription (id: ${f.subId}) closed by relay: ${p}`))});let l=()=>{var p;try{f.close()}catch(b){n==null||n.log("error",`failed to close subscription (id: ${f.subId}): ${b}`)}u(),n==null||n.log("verbose",`CLOSE: subId=${(p=t.subId)!=null?p:"<auto>"}`)};n==null||n.log("verbose",`REQ: subId=${(g=t.subId)!=null?g:"<auto>"}, filter=%O`,e);try{f.req()}catch(p){i.error(new Wi("failed to send REQ",{cause:p})),u()}(y=t.signal)!=null&&y.aborted&&(l(),i.error(new qu(`subscription (id: ${f.subId}) aborted by AbortController`))),(d=t.signal)==null||d.addEventListener("abort",()=>{l(),i.error(new qu(`subscription (id: ${f.subId}) aborted by AbortController`))}),yield*ho(s)})}},Tn=new WeakMap,Oo=new WeakMap,Yi=new WeakMap,jp),Io,h0=(Io=class extends Error{},Io.prototype.name="NostrFetchError",Io),wo=(r,e,t)=>{let n=[];for(let o of e){let i=o(r);switch(i.severity){case"error":t==null||t.log("error",`assertion error: ${i.msg}`),n.push(i.msg);break;case"warn":t==null||t.log("warn",`warning: ${i.msg}`);break}}if(n.length>0){let o=n.map(i=>`- ${i}`).join(`
76
+ `);throw new h0(`Invalid request!
77
+ ${o}`)}};function Hi(r,e,t){return n=>r(n)?{severity:"none"}:{severity:e,msg:t}}function vo(r,e,t){return n=>r(n).length!==0?{severity:"none"}:{severity:e,msg:t}}function Ip(r,e){return t=>{let{since:n,until:o}=r(t);return n===void 0||o===void 0?{severity:"none"}:n<=o?{severity:"none"}:{severity:e,msg:"Invalid time range (since > until)"}}}function Ds(r,e){return t=>{let n=Object.keys(r(t)).filter(o=>o.startsWith("#")&&!u0(o));return n.length>0?{severity:e,msg:`Filter has invalid tag queries: ${n.join(", ")}`}:{severity:"none"}}}var Fu=(r,e)=>r.created_at!==e.created_at?e.created_at-r.created_at:r.id<e.id?-1:r.id>e.id?1:0,Z2=(r,e)=>{switch(r){case"ids":return[e.id];case"authors":return[e.pubkey];case"kinds":return[e.kind]}let t=e.tags.filter(n=>n[0]===r.charAt(1)).map(n=>{var o;return(o=n[1])!=null?o:""});return[...new Set(t)]},Rn,Ur,qp,Y2=(qp=class{constructor(r,e){H(this,Rn);H(this,Ur);F(this,Rn,new Map(r.map(t=>[t,[]]))),F(this,Ur,e)}getBucket(r){return k(this,Rn).get(r)}add(r,e){let t=k(this,Rn).get(r);return t===void 0?(console.error(`bucket not found for key: ${r}`),{state:"dropped"}):t.length>=k(this,Ur)?{state:"dropped"}:(t.push(e),t.length===k(this,Ur)?{state:"fulfilled",events:t}:{state:"open"})}calcKeysAndLimitForNextReq(){return[...k(this,Rn).entries()].reduce(({keys:r,limit:e},[t,n])=>{let o=n.length;return{keys:o<k(this,Ur)?[...r,t]:r,limit:e+(k(this,Ur)-o)}},{keys:[],limit:0})}},Rn=new WeakMap,Ur=new WeakMap,qp),To,Ro,Ji,el,$p,J2=($p=class{constructor(r,e){H(this,Ji);H(this,To);H(this,Ro);var n;F(this,To,new Map);let t=[...new Set([...r.values()].flat())];F(this,Ro,new Map(t.map(o=>[o,[]])));for(let[o,i]of r)for(let s of i){let a=e();k(this,To).set(G(this,Ji,el).call(this,s,o),a),(n=k(this,Ro).get(s))==null||n.push(a)}}get(r,e){return k(this,To).get(G(this,Ji,el).call(this,r,e))}itemsByKey(r){return k(this,Ro).get(r)}},To=new WeakMap,Ro=new WeakMap,Ji=new WeakSet,el=function(r,e){return`${r}|${e}`},$p),Tp=r=>{let e=new AbortController;if(r===void 0)return[e.signal,()=>e.abort()];if(AbortSignal.any!==void 0)return[AbortSignal.any([r,e.signal]),()=>e.abort()];let t=()=>{e.abort()};return r.addEventListener("abort",t,{once:!0}),e.signal.addEventListener("abort",()=>{r.removeEventListener("abort",t)}),[e.signal,()=>e.abort()]},Xi,Qi,Wp,X2=(Wp=class{constructor(r){H(this,Xi,new Map);H(this,Qi);r.minLogLevel!=="none"&&F(this,Qi,new sa(r.minLogLevel))}async relaySupportsNips(r,e){var i;let t=(i=k(this,Qi))==null?void 0:i.subLogger(r);if(e.length===0)return!0;let n=k(this,Xi).get(r);if(n!==void 0)return e.every(s=>n.has(s));let o=await L2(r);return t==null||t.log("info",`supported NIPs: ${o}`),k(this,Xi).set(r,o),e.every(s=>o.has(s))}},Xi=new WeakMap,Qi=new WeakMap,Wp),Rp=r=>new X2(r),Du=r=>r?new Q2:new eE,Lo,Hp,Q2=(Hp=class{constructor(){H(this,Lo,new Map)}report(r,e){let t=k(this,Lo).get(r.id);return t!==void 0?{hasSeen:!0,seenOn:[...t.add(e)]}:(k(this,Lo).set(r.id,new Set([e])),{hasSeen:!1,seenOn:[e]})}getSeenOn(r){var e;return[...(e=k(this,Lo).get(r))!=null?e:[]]}},Lo=new WeakMap,Hp),es,Fp,eE=(Fp=class{constructor(){H(this,es,new Set)}report(r,e){return k(this,es).has(r.id)?{hasSeen:!0,seenOn:void 0}:(k(this,es).add(r.id),{hasSeen:!1,seenOn:void 0})}getSeenOn(r){return[]}},es=new WeakMap,Fp),dt,ra,jr,Po,Co,ts,tl,No,zu=(No=class{constructor(e,t){H(this,ts);H(this,dt,{progress:{max:1,current:0},counts:{fetchedEvents:0,bufferedEvents:0,openedSubs:0,runningSubs:0}});H(this,ra,performance.now());H(this,jr,new Map);H(this,Po);H(this,Co);F(this,Po,e),F(this,Co,setInterval(()=>{k(this,Po).call(this,G(this,ts,tl).call(this))},t))}static init(e,t){return e!==void 0?new No(e,t):void 0}setProgressMax(e){k(this,dt).progress.max=Math.max(e,1)}addProgress(e){k(this,dt).progress.current+=e}setCurrentProgress(e){k(this,dt).progress.current=e}eventFetched(e){k(this,dt).counts.fetchedEvents++;let t=k(this,jr).get(e);t!==void 0&&t.numFetchedEvents++}setNumBufferedEvents(e){k(this,dt).counts.bufferedEvents=e}subOpened(){k(this,dt).counts.openedSubs++,k(this,dt).counts.runningSubs++}subClosed(){k(this,dt).counts.runningSubs--}initRelayStats(e,t,n){let o=new Set(t),i=ll(e).filter(c=>!o.has(c));console.log(e,t,i);let s=t.map(c=>[c,{status:"fetching",numFetchedEvents:0,frontier:n}]),a=i.map(c=>[c,{status:"connection-failed",numFetchedEvents:0,frontier:0}]);F(this,jr,new Map([...s,...a]))}setRelayStatus(e,t){let n=k(this,jr).get(e);n!==void 0&&(n.status=t)}setRelayFrontier(e,t){let n=k(this,jr).get(e);n!==void 0&&(n.frontier=t)}stop(){k(this,Co)!==void 0&&clearInterval(k(this,Co)),k(this,Po).call(this,G(this,ts,tl).call(this))}},dt=new WeakMap,ra=new WeakMap,jr=new WeakMap,Po=new WeakMap,Co=new WeakMap,ts=new WeakSet,tl=function(){return J(z({},k(this,dt)),{elapsedTimeMs:performance.now()-k(this,ra),relays:Object.fromEntries(k(this,jr))})},No),qr,Dp,Lp=(Dp=class{constructor(r){H(this,qr);F(this,qr,new Map(r.map(e=>[e,0])))}addProgress(r,e){var n;let t=(n=k(this,qr).get(r))!=null?n:0;k(this,qr).set(r,t+e)}setProgress(r,e){k(this,qr).set(r,e)}calcTotalProgress(){return[...k(this,qr).values()].reduce((r,e)=>r+e)}},qr=new WeakMap,Dp),Vs=5e3,tE=500,rE=5e3,fl={eventVerifier:v2,skipVerification:!1,skipFilterMatching:!1,withSeenOn:!1,statsListener:void 0,statsNotifIntervalMs:1e3,connectTimeoutMs:5e3,signal:void 0,abortSignal:void 0,abortSubBeforeEoseTimeoutMs:1e4,limitPerReq:Vs},nE=J(z({},fl),{enableBackpressure:!1}),oE=J(z({},fl),{sort:!1}),zs=J(z({},fl),{asOf:void 0,reduceVerification:!1}),iE=r=>"relayUrls"in r&&"keys"in r,sE=r=>Symbol.iterator in Object(r),aE=r=>"relayUrls"in r&&"authors"in r,cE=r=>Symbol.iterator in Object(r),Pp=r=>{if(aE(r))return{keys:r.authors,relayUrls:r.relayUrls};if(cE(r))return r;throw Error("adaptAuthorsAndRelays: unreachable")},cr,rs,xe,we,Fi,Gs,d0,p0,g0,y0,b0,Pn,aa=(Pn=class{constructor(e,t,n){H(this,we);H(this,cr);H(this,rs);H(this,xe);F(this,cr,e),F(this,rs,t),n.minLogLevel!=="none"&&F(this,xe,new sa(n.minLogLevel))}static init(e={},t=Rp){let n=z(z(z({},Bp),V2),e);if(n.webSocketConstructor===void 0)throw Error("No WebSocket implementation found. Please explicitly set a custom `WebSocket` constructor to the `webSocketConstructor` option.");let o=new G2(n),i=t(n);return new Pn(o,i,n)}static withCustomPool(e,t={},n=Rp){let o=z(z({},Bp),t),i=n(o);return new Pn(e(o),i,o)}allEventsIterator(e,t,n,o={}){var a,c;wo({relayUrls:e,filter:t,timeRangeFilter:n},[vo(u=>u.relayUrls,"warn","Specify at least 1 relay URL"),Ds(u=>u.filter,"error"),Ip(u=>u.timeRangeFilter,"error")],k(this,xe));let i=z(z({},nE),o),s=J(z({},i),{signal:(a=i.signal)!=null?a:i.abortSignal,limitPerReq:i.enableBackpressure?Math.min(i.limitPerReq,tE):i.limitPerReq});return(c=k(this,xe))==null||c.log("verbose","finalOpts=%O",s),G(this,we,d0).call(this,e,t,n,s)}async fetchAllEvents(e,t,n,o={}){wo({relayUrls:e,filter:t,timeRangeFilter:n},[vo(c=>c.relayUrls,"warn","Specify at least 1 relay URL"),Ds(c=>c.filter,"error"),Ip(c=>c.timeRangeFilter,"error")],k(this,xe));let i=z(z({},oE),o),s=this.allEventsIterator(e,t,n,J(z({},i),{enableBackpressure:!1})),a=await(async()=>{if(i.withSeenOn){let b=new Map;try{for(var u=ut(s),f,l,h;f=!(l=await u.next()).done;f=!1){let m=l.value;b.set(m.id,m)}}catch(l){h=[l]}finally{try{f&&(l=u.return)&&await l.call(u)}finally{if(h)throw h[0]}}return[...b.values()]}let c=[];try{for(var g=ut(s),y,d,p;y=!(d=await g.next()).done;y=!1){let b=d.value;c.push(b)}}catch(d){p=[d]}finally{try{y&&(d=g.return)&&await d.call(g)}finally{if(p)throw p[0]}}return c})();return i.sort&&a.sort(Fu),a}async fetchLatestEvents(e,t,n,o={}){var b,m,x;wo({relayUrls:e,filter:t,limit:n},[vo(w=>w.relayUrls,"warn","Specify at least 1 relay URL"),Ds(w=>w.filter,"error"),Hi(w=>w.limit>0,"error",'"limit" should be positive number')],k(this,xe));let i=J(z(z({},zs),o),{signal:(b=o.signal)!=null?b:o.abortSignal});(m=k(this,xe))==null||m.log("verbose","finalOpts=%O",i);let s=J(z({},i),{skipVerification:i.skipVerification||i.reduceVerification}),a=zu.init(i.statsListener,i.statsNotifIntervalMs),c=G(this,we,Gs).call(this,t),u=await G(this,we,Fi).call(this,e,i,c),[f,l]=Ks.make(),h=Du(i.withSeenOn),g=(x=i.asOf)!=null?x:Hu(),y=new Lp(u);a==null||a.setProgressMax(u.length*n),a==null||a.initRelayStats(e,u,g),Promise.all(u.map(async w=>{var L,M;let E=(L=k(this,xe))==null?void 0:L.subLogger(w),v=g,A=n,R=new Set;for(;;){let N=J(z({},t),{until:v,limit:Math.min(A,Vs)});E==null||E.log("verbose","refinedFilter=%O",N);let W=0,D=Number.MAX_SAFE_INTEGER,q=!1;try{a==null||a.subOpened();try{for(var P=ut(k(this,cr).fetchTillEose(w,N,s)),B,T,C;B=!(T=await P.next()).done;B=!1){let K=T.value;if(!R.has(K.id)){W++,R.add(K.id),K.created_at<D&&(D=K.created_at);let{hasSeen:X}=h.report(K,w);X||f.send(K),a==null||a.eventFetched(w),a==null||a.setNumBufferedEvents(f.numBufferedItems())}}}catch(T){C=[T]}finally{try{B&&(T=P.return)&&await T.call(P)}finally{if(C)throw C[0]}}}catch(K){if($u(K)){E==null||E.log("error",K),a==null||a.setRelayStatus(w,"failed");break}if(Wu(K))E==null||E.log("info",K.message),q=!0;else{E==null||E.log("error","unexpected error:",K),a==null||a.setRelayStatus(w,"failed");break}}finally{a==null||a.subClosed()}if(y.addProgress(w,Math.min(W,A)),a==null||a.setCurrentProgress(y.calcTotalProgress()),A-=W,W===0||A<=0){E==null||E.log("info",`got ${R.size} events`),a==null||a.setRelayStatus(w,q?"aborted":"completed");break}if((M=i.signal)!=null&&M.aborted){E==null||E.log("info","aborted"),a==null||a.setRelayStatus(w,"aborted");break}v=D,a==null||a.setRelayFrontier(w,D)}y.setProgress(w,n),a==null||a.setCurrentProgress(y.calcTotalProgress())})).then(()=>{f.close(),a==null||a.stop()});let d=[];try{for(var S=ut(l),I,_,O;I=!(_=await S.next()).done;I=!1){let w=_.value;d.push(w)}}catch(_){O=[_]}finally{try{I&&(_=S.return)&&await _.call(S)}finally{if(O)throw O[0]}}d.sort(Fu);let p=(async()=>{if(i.skipVerification||!i.reduceVerification)return d.slice(0,n);let w=[];for(let E of d)if(await i.eventVerifier(E)&&(w.push(E),w.length>=n))break;return w})();return i.withSeenOn?(await p).map(w=>J(z({},w),{seenOn:h.getSeenOn(w.id)})):await p}async fetchLastEvent(e,t,n={}){let o=z(J(z({},zs),{abortSubBeforeEoseTimeoutMs:1e3}),n);return(await this.fetchLatestEvents(e,t,1,o))[0]}fetchLatestEventsPerKey(e,t,n,o,i={}){var c,u;wo({limit:o,keyName:e,otherFilter:n},[Hi(f=>f.limit>0,"error",'"limit" should be positive number'),Hi(f=>!f.keyName.startsWith("#")||u0(f.keyName),"error",`Specified key '${e}' is invalid tag query key`),Ds(f=>f.otherFilter,"error"),Hi(({keyName:f,otherFilter:l})=>!(f in l),"warn",`'${e}' field in "otherFilter" will be ignored because it is specified as main key`)],k(this,xe));let s=z(z({},zs),i);(c=k(this,xe))==null||c.log("verbose","finalOpts=%O",s);let a=J(z({},s),{skipVerification:s.skipVerification||s.reduceVerification,signal:(u=s.signal)!=null?u:s.abortSignal});return G(this,we,y0).call(this,e,t,n,o,a)}fetchLastEventPerKey(i,s,a){return ct(this,arguments,function*(e,t,n,o={}){let c=z(J(z({},zs),{abortSubBeforeEoseTimeoutMs:1e3}),o),u=this.fetchLatestEventsPerKey(e,t,n,1,c);try{for(var f=ut(u),l,h,g;l=!(h=yield new Ve(f.next())).done;l=!1){let{key:y,events:d}=h.value;yield{key:y,event:d[0]}}}catch(h){g=[h]}finally{try{l&&(h=f.return)&&(yield new Ve(h.call(f)))}finally{if(g)throw g[0]}}})}fetchLatestEventsPerAuthor(i,s,a){return ct(this,arguments,function*(e,t,n,o={}){try{for(var c=ut(this.fetchLatestEventsPerKey("authors",Pp(e),t,n,o)),u,f,l;u=!(f=yield new Ve(c.next())).done;u=!1){let{key:h,events:g}=f.value;yield{author:h,events:g}}}catch(f){l=[f]}finally{try{u&&(f=c.return)&&(yield new Ve(f.call(c)))}finally{if(l)throw l[0]}}})}fetchLastEventPerAuthor(o,i){return ct(this,arguments,function*(e,t,n={}){try{for(var s=ut(this.fetchLastEventPerKey("authors",Pp(e),t,n)),a,c,u;a=!(c=yield new Ve(s.next())).done;a=!1){let{key:f,event:l}=c.value;yield{author:f,event:l}}}catch(c){u=[c]}finally{try{a&&(c=s.return)&&(yield new Ve(c.call(s)))}finally{if(u)throw u[0]}}})}shutdown(){k(this,cr).shutdown()}[Symbol.dispose](){this.shutdown()}},cr=new WeakMap,rs=new WeakMap,xe=new WeakMap,we=new WeakSet,Fi=async function(e,t,n){var s,a;let o=await k(this,cr).ensureRelays(e,t);if(n.length===0)return o;(s=k(this,xe))==null||s.log("info",`required NIPs: ${n}`);let i=[];return await Promise.all(o.map(async c=>{await k(this,rs).relaySupportsNips(c,n)&&i.push(c)})),(a=k(this,xe))==null||a.log("info",`eligible relays: ${i}`),i},Gs=function(e){let t=[];return"search"in e&&t.push(50),t},d0=function(e,t,n,o){return ct(this,null,function*(){let[i,s]=Tp(o.signal);try{yield*ho(G(this,we,p0).call(this,e,t,n,J(z({},o),{signal:i})))}finally{s()}})},p0=function(e,t,n,o){return ct(this,null,function*(){var d;let i=zu.init(o.statsListener,o.statsNotifIntervalMs),s=G(this,we,Gs).call(this,t),a=yield new Ve(G(this,we,Fi).call(this,e,o,s)),c=o.enableBackpressure?Math.max(o.limitPerReq*a.length,rE):void 0,[u,f]=Ks.make({highWaterMark:c}),l=Du(o.withSeenOn),h=(d=n.until)!=null?d:Hu(),g=n.since!==void 0?Math.max(h-n.since+1,1):void 0,y=new Lp(a);i==null||i.setProgressMax(a.length),i==null||i.initRelayStats(e,a,h),Promise.all(a.map(async p=>{var S,E;let b=(S=k(this,xe))==null?void 0:S.subLogger(p),m=h,x=new Set;for(;;){let v=J(z(z({},n),t),{until:m,limit:Math.min(o.limitPerReq,Vs)});b==null||b.log("verbose","refinedFilter=%O",v);let A=!1,R=Number.MAX_SAFE_INTEGER,L=!1;try{i==null||i.subOpened();try{for(var I=ut(k(this,cr).fetchTillEose(p,v,o)),_,O,w;_=!(O=await I.next()).done;_=!1){let P=O.value;if(!x.has(P.id)){A=!0,x.add(P.id),P.created_at<R&&(R=P.created_at);let{hasSeen:B,seenOn:T}=l.report(P,p);(o.withSeenOn||!B)&&u.send(J(z({},P),{seenOn:T})),i==null||i.eventFetched(p),i==null||i.setNumBufferedEvents(u.numBufferedItems())}}}catch(O){w=[O]}finally{try{_&&(O=I.return)&&await O.call(I)}finally{if(w)throw w[0]}}}catch(P){if($u(P)){b==null||b.log("error",P),i==null||i.setRelayStatus(p,"failed");break}if(Wu(P))b==null||b.log("info",P.message),L=!0;else{b==null||b.log("error","unexpected error:",P),i==null||i.setRelayStatus(p,"failed");break}}finally{i==null||i.subClosed()}if(!A){b==null||b.log("info",`got ${x.size} events`),i==null||i.setRelayStatus(p,L?"aborted":"completed");break}if(m=R,i==null||i.setRelayFrontier(p,R),g!==void 0&&(y.setProgress(p,(h-R)/g),i==null||i.setCurrentProgress(y.calcTotalProgress())),(E=o.signal)==null?void 0:E.aborted){b==null||b.log("info","aborted"),i==null||i.setRelayStatus(p,"aborted");break}await u.waitUntilDrained()}y.setProgress(p,1),i==null||i.setCurrentProgress(y.calcTotalProgress())})).then(()=>{u.close(),i==null||i.stop()}),yield*ho(f)})},g0=async function(e,t,n){if(iE(e)){wo(e,[vo(s=>s.relayUrls,"warn","Specify at least 1 relay URL"),vo(s=>s.keys,"warn","Specify at least 1 key")],k(this,xe));let o=[...new Set(e.keys)],i=await G(this,we,Fi).call(this,e.relayUrls,t,n);return[new Map(i.map(s=>[s,o])),o,i]}if(sE(e)){let o=[...e];wo(o,[vo(u=>u,"warn","Specify at least 1 key"),Hi(u=>u.every(([,f])=>f.length>0),"warn","Specify at least 1 relay URL for all keys")],k(this,xe));let i=[...new Set(o.map(([u])=>u))],s=new Map;for(let[u,f]of o){let l=ll(f);for(let h of l){let g=s.get(h);s.set(h,g?g.add(u):new Set([u]))}}let a=[...s.keys()],c=await G(this,we,Fi).call(this,a,t,n);return[new Map(c.map(u=>[u,[...s.get(u)]])),i,c]}throw new h0("malformed first argument for fetchLatestEventsPerKey/fetchLastEventPerKey")},y0=function(e,t,n,o,i){return ct(this,null,function*(){let[s,a]=Tp(i.signal);try{yield*ho(G(this,we,b0).call(this,e,t,n,o,J(z({},i),{signal:s})))}finally{a()}})},b0=function(e,t,n,o,i){return ct(this,null,function*(){var p,b;let s=zu.init(i.statsListener,i.statsNotifIntervalMs),a=G(this,we,Gs).call(this,n),[c,u,f]=yield new Ve(G(this,we,g0).call(this,t,i,a));(p=k(this,xe))==null||p.log("verbose","relayToKeys=%O",c);let[l,h]=Ks.make(),g=Du(i.withSeenOn),y=(b=i.asOf)!=null?b:Hu();s==null||s.setProgressMax(u.length),s==null||s.initRelayStats(f,[...c.keys()],y);let d=new J2(c,()=>new Zs);Promise.all([...c].map(async([m,x])=>{var E,v,B;let S=(E=k(this,xe))==null?void 0:E.subLogger(m),I=y,_=new Y2(x,o),O=new Set,w=()=>{var T,C;S==null||S.log("verbose","resolving bucket on early return");for(let M of x)(C=d.get(M,m))==null||C.resolve((T=_.getBucket(M))!=null?T:[])};for(;;){let{keys:T,limit:C}=_.calcKeysAndLimitForNextReq();if(T.length===0){S==null||S.log("verbose","fulfilled buckets for all keys"),s==null||s.setRelayStatus(m,"completed");break}let M=J(z({},n),{[e]:T,until:I,limit:Math.min(C,Vs)});S==null||S.log("verbose","refinedFilter=%O",M);let N=!1,W=Number.MAX_SAFE_INTEGER,D=!1;try{s==null||s.subOpened();try{for(var A=ut(k(this,cr).fetchTillEose(m,M,i)),R,L,P;R=!(L=await A.next()).done;R=!1){let q=L.value;if(!O.has(q.id)){N=!0,O.add(q.id),q.created_at<W&&(W=q.created_at),g.report(q,m);for(let K of Z2(e,q)){let X=_.add(K,q);X.state==="fulfilled"&&((v=d.get(K,m))==null||v.resolve(X.events),S==null||S.log("verbose",`fulfilled a bucket for key=${K}`))}s==null||s.eventFetched(m),s==null||s.setNumBufferedEvents(l.numBufferedItems())}}}catch(L){P=[L]}finally{try{R&&(L=A.return)&&await L.call(A)}finally{if(P)throw P[0]}}}catch(q){if($u(q)){S==null||S.log("error",q),s==null||s.setRelayStatus(m,"failed"),w();break}if(Wu(q))S==null||S.log("info",q.message),D=!0;else{S==null||S.log("error","unexpected error:",q),s==null||s.setRelayStatus(m,"failed"),w();break}}finally{s==null||s.subClosed()}if(!N){S==null||S.log("info",`got ${O.size} events`),s==null||s.setRelayStatus(m,D?"aborted":"completed"),w();break}if((B=i.signal)!=null&&B.aborted){S==null||S.log("info","aborted"),s==null||s.setRelayStatus(m,D?"aborted":"completed"),w();break}I=W,s==null||s.setRelayFrontier(m,W)}})),Promise.all(u.map(async m=>{var O,w,E;let x=(O=k(this,xe))==null?void 0:O.subLogger(q2(String(m),6)),S=await Promise.all((E=(w=d.itemsByKey(m))==null?void 0:w.map(v=>v.promise))!=null?E:[]);x==null||x.log("verbose","fulfilled all buckets for this key");let I=(()=>{let v=[],A=new Set;for(let R of S)for(let L of R)A.has(L.id)||(v.push(L),A.add(L.id));return v})();I.sort(Fu);let _=(async()=>{if(i.skipVerification||!i.reduceVerification)return I.slice(0,o);let v=[];for(let A of I)if(await i.eventVerifier(A)&&(v.push(A),v.length>=o))break;return v})();i.withSeenOn?l.send({key:m,events:(await _).map(v=>J(z({},v),{seenOn:g.getSeenOn(v.id)}))}):l.send({key:m,events:await _}),s==null||s.addProgress(1)})).then(()=>{l.close(),s==null||s.stop()}),yield*ho(h)})},Pn);var jo,hl=(jo=class extends Error{},jo.prototype.name="FetchTillEoseFailedSignal",jo),qo,dl=(qo=class extends Error{},qo.prototype.name="FetchTillEoseAbortedSignal",qo),uE=(r,e,t)=>{var s,a;let n,o=()=>{n!==void 0&&(clearTimeout(n),n=void 0)},i=()=>{o(),n=setTimeout(()=>{r(),e.error(new dl("subscription aborted before EOSE due to timeout"))},t.abortSubBeforeEoseTimeoutMs)};return i(),(s=t.signal)!=null&&s.aborted&&(r(),o(),e.error(new dl("subscription aborted by AbortController"))),(a=t.signal)==null||a.addEventListener("abort",()=>{r(),o(),e.error(new dl("subscription aborted by AbortController"))}),i},m0=class{constructor(){Z(this,"promise");this.promise=new Promise((r,e)=>{this.resolve=t=>{r(t)},this.reject=t=>{e(t)}})}},w0=class extends Error{constructor(){super("channel closed")}},St,et,Hr,ss,$o,Kt,Wo,lE=(Wo=class{constructor({highWaterMark:e=void 0}){H(this,St,[]);H(this,et);H(this,Hr,!1);H(this,ss,!1);H(this,$o);H(this,Kt);F(this,$o,e!=null?e:Number.POSITIVE_INFINITY)}static make(e){let t=new Wo(e!=null?e:{});return[t,t]}send(e){if(k(this,et)!==void 0){k(this,et).resolve(e),F(this,et,void 0);return}k(this,Hr)||k(this,St).push(()=>Promise.resolve(e))}error(e){if(k(this,et)!==void 0){k(this,et).reject(e),F(this,et,void 0);return}k(this,Hr)||k(this,St).push(()=>Promise.reject(e))}close(){k(this,Hr)||(F(this,Hr,!0),k(this,et)!==void 0&&(k(this,et).reject(new w0),F(this,et,void 0)))}waitUntilDrained(){return k(this,Kt)!==void 0?k(this,Kt).promise:k(this,St).length<=k(this,$o)?Promise.resolve():(F(this,Kt,new m0),k(this,Kt).promise)}numBufferedItems(){return k(this,St).length}get isCompleted(){return k(this,Hr)&&k(this,St).length===0}recv(){if(k(this,St).length>0){let t=k(this,St).shift();return k(this,Kt)!==void 0&&k(this,St).length<=k(this,$o)&&(k(this,Kt).resolve(),F(this,Kt,void 0)),t}if(k(this,et)!==void 0)return()=>Promise.reject(Error("Double receive is not allowed"));let e=new m0;return F(this,et,e),()=>e.promise}[Symbol.asyncIterator](){return ct(this,null,function*(){if(k(this,ss))throw Error("Iterating a single channel in multiple location is not allowed");for(F(this,ss,!0);;)try{if(this.isCompleted)break;yield yield new Ve(this.recv()())}catch(e){if(e instanceof w0)break;throw e}})}},St=new WeakMap,et=new WeakMap,Hr=new WeakMap,ss=new WeakMap,$o=new WeakMap,Kt=new WeakMap,Wo),v0={all:0,verbose:10,info:20,warn:30,error:40,none:50},E0={verbose:console.debug,info:console.info,warn:console.warn,error:console.error},Mn,Ho,Fo,qn,fE=(qn=class{constructor(e,t){H(this,Mn);H(this,Ho);H(this,Fo);F(this,Mn,e),F(this,Ho,t!=null?t:""),F(this,Fo,t?`[${t}]`:"")}subLogger(e){return k(this,Ho)?new qn(k(this,Mn),`${k(this,Ho)}:${e}`):new qn(k(this,Mn),e)}log(e,t,...n){v0[e]<v0[k(this,Mn)]||(k(this,Fo)?E0[e](`${k(this,Fo)} ${t}`,...n):E0[e](t,...n))}},Mn=new WeakMap,Ho=new WeakMap,Fo=new WeakMap,qn),hE=[/^too many concurrent REQs$/i,/^Subscription rejected/i,/^invalid:(.*)must (contain|be) less than or equal to/i,/^message too large$/i,/^Maximum concurrent subscription count reached$/i],dE=r=>hE.some(e=>e.test(r)),ca=r=>{let e=new URL(r);return e.pathname=e.pathname.replace(/\/+/g,"/"),e.pathname.endsWith("/")&&(e.pathname=e.pathname.slice(0,-1)),(e.port==="80"&&e.protocol==="ws:"||e.port==="443"&&e.protocol==="wss:")&&(e.port=""),e.searchParams.sort(),e.hash="",e.toString()},pE=r=>Array.from(new Set(r)),gE=r=>pE(r.filter(e=>{try{return new URL(e),!0}catch(t){return!1}}).map(e=>ca(e))),yE=async(r,e,t)=>{let n,o=new Promise((i,s)=>{n=setTimeout(()=>s(Error(t)),e)});return Promise.race([r.finally(()=>clearTimeout(n)),o])},as,Un,jn,Do,Vt,pl,gl,k0,x0,bE=(x0=class{constructor(r,e){H(this,Vt);H(this,as);H(this,Un,new Map);H(this,jn,{notice:new Map,close:new Map});H(this,Do);F(this,as,r),e.minLogLevel!=="none"&&F(this,Do,new fE(e.minLogLevel))}async ensureRelays(r,{connectTimeoutMs:e}){let t=gE(r),n=async i=>{var c;let s=(c=k(this,Do))==null?void 0:c.subLogger(i),a=await k(this,as).ensureRelay(i);return a.onclose=()=>{var u;s==null||s.log("info","closed"),(u=k(this,jn).close.get(i))==null||u()},a.onnotice=u=>{var f;s==null||s.log("warn",`NOTICE: ${u}`),(f=k(this,jn).notice.get(i))==null||f(u)},a},o=[];return await Promise.all(t.map(async i=>{var s;try{let a=await yE(n(i),e,`attempt to connect to the relay ${i} timed out`);o.push(i),k(this,Un).set(i,a)}catch(a){(s=k(this,Do))==null||s.log("error",a),k(this,Un).delete(i)}})),o}fetchTillEose(r,e,t){let n=G(this,Vt,k0).call(this,r);if(n===void 0)throw new hl("failed to ensure connection to the relay");let[o,i]=lE.make(),s=n.prepareSubscription([e],z({onevent:h=>{o.send(h),c()},oneose:()=>{a(),o.close()}},t.subId!==void 0?{id:t.subId}:{})),a=()=>{u(),s.close()},c=uE(a,o,t),u=()=>{G(this,Vt,gl).call(this,r,"notice"),G(this,Vt,gl).call(this,r,"close")},f=h=>{dE(h)&&(a(),o.error(new hl(`NOTICE: ${JSON.stringify(h)}`)))},l=()=>{u(),o.error(new hl("WebSocket error"))};return G(this,Vt,pl).call(this,r,"notice",f),G(this,Vt,pl).call(this,r,"close",l),s.fire(),i}shutdown(){k(this,Un).clear()}},as=new WeakMap,Un=new WeakMap,jn=new WeakMap,Do=new WeakMap,Vt=new WeakSet,pl=function(r,e,t){k(this,jn)[e].set(ca(r),t)},gl=function(r,e){k(this,jn)[e].delete(ca(r))},k0=function(r){return k(this,Un).get(ca(r))},x0),yl=r=>e=>new bE(r,e);function A0(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function bl(r,...e){if(!(r instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function _0(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");A0(r.outputLen),A0(r.blockLen)}function zo(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function S0(r,e){bl(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var ua=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var B0=r=>r instanceof Uint8Array;var la=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Bt=(r,e)=>r<<32-e|r>>>e,mE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!mE)throw new Error("Non little-endian hardware is not supported");function wE(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function cs(r){if(typeof r=="string"&&(r=wE(r)),!B0(r))throw new Error(`expected Uint8Array, got ${typeof r}`);return r}function O0(...r){let e=new Uint8Array(r.reduce((n,o)=>n+o.length,0)),t=0;return r.forEach(n=>{if(!B0(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length}),e}var Ko=class{clone(){return this._cloneInto()}},x5={}.toString;function I0(r){let e=n=>r().update(cs(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function fa(r=32){if(ua&&typeof ua.getRandomValues=="function")return ua.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function vE(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(t>>o&i),a=Number(t&i),c=n?4:0,u=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+u,a,n)}var ha=class extends Ko{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=la(this.buffer)}update(e){zo(this);let{view:t,buffer:n,blockLen:o}=this;e=cs(e);let i=e.length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a===o){let c=la(e);for(;o<=i-s;s+=o)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){zo(this),S0(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;vE(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=la(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}};var EE=(r,e,t)=>r&e^~r&t,xE=(r,e,t)=>r&e^r&t^e&t,kE=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Fr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Dr=new Uint32Array(64),ml=class extends ha{constructor(){super(64,32,8,!1),this.A=Fr[0]|0,this.B=Fr[1]|0,this.C=Fr[2]|0,this.D=Fr[3]|0,this.E=Fr[4]|0,this.F=Fr[5]|0,this.G=Fr[6]|0,this.H=Fr[7]|0}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=o|0,this.E=i|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,t){for(let l=0;l<16;l++,t+=4)Dr[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let h=Dr[l-15],g=Dr[l-2],y=Bt(h,7)^Bt(h,18)^h>>>3,d=Bt(g,17)^Bt(g,19)^g>>>10;Dr[l]=d+Dr[l-7]+y+Dr[l-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:u,H:f}=this;for(let l=0;l<64;l++){let h=Bt(a,6)^Bt(a,11)^Bt(a,25),g=f+h+EE(a,c,u)+kE[l]+Dr[l]|0,d=(Bt(n,2)^Bt(n,13)^Bt(n,22))+xE(n,o,i)|0;f=u,u=c,c=a,a=s+g|0,s=i,i=o,o=n,n=g+d|0}n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,o,i,s,a,c,u,f)}roundClean(){Dr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var da=I0(()=>new ml);var xl={};fo(xl,{bitGet:()=>TE,bitLen:()=>IE,bitMask:()=>us,bitSet:()=>RE,bytesToHex:()=>$n,bytesToNumberBE:()=>Ue,bytesToNumberLE:()=>ya,concatBytes:()=>lr,createHmacDrbg:()=>El,ensureBytes:()=>_e,equalBytes:()=>BE,hexToBytes:()=>Wn,hexToNumber:()=>vl,numberToBytesBE:()=>Ot,numberToBytesLE:()=>ba,numberToHexUnpadded:()=>L0,numberToVarBytesBE:()=>SE,utf8ToBytes:()=>OE,validateObject:()=>zr});var R0=BigInt(0),pa=BigInt(1),AE=BigInt(2),ga=r=>r instanceof Uint8Array,_E=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function $n(r){if(!ga(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=_E[r[t]];return e}function L0(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function vl(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}function Wn(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let t=new Uint8Array(e/2);for(let n=0;n<t.length;n++){let o=n*2,i=r.slice(o,o+2),s=Number.parseInt(i,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");t[n]=s}return t}function Ue(r){return vl($n(r))}function ya(r){if(!ga(r))throw new Error("Uint8Array expected");return vl($n(Uint8Array.from(r).reverse()))}function Ot(r,e){return Wn(r.toString(16).padStart(e*2,"0"))}function ba(r,e){return Ot(r,e).reverse()}function SE(r){return Wn(L0(r))}function _e(r,e,t){let n;if(typeof e=="string")try{n=Wn(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else if(ga(e))n=Uint8Array.from(e);else throw new Error(`${r} must be hex string or Uint8Array`);let o=n.length;if(typeof t=="number"&&o!==t)throw new Error(`${r} expected ${t} bytes, got ${o}`);return n}function lr(...r){let e=new Uint8Array(r.reduce((n,o)=>n+o.length,0)),t=0;return r.forEach(n=>{if(!ga(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length}),e}function BE(r,e){if(r.length!==e.length)return!1;for(let t=0;t<r.length;t++)if(r[t]!==e[t])return!1;return!0}function OE(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function IE(r){let e;for(e=0;r>R0;r>>=pa,e+=1);return e}function TE(r,e){return r>>BigInt(e)&pa}var RE=(r,e,t)=>r|(t?pa:R0)<<BigInt(e),us=r=>(AE<<BigInt(r-1))-pa,wl=r=>new Uint8Array(r),T0=r=>Uint8Array.from(r);function El(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=wl(r),o=wl(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...l)=>t(o,n,...l),c=(l=wl())=>{o=a(T0([0]),l),n=a(),l.length!==0&&(o=a(T0([1]),l),n=a())},u=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let g=n.slice();h.push(g),l+=n.length}return lr(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(u()));)c();return s(),g}}var LE={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||r instanceof Uint8Array,isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function zr(r,e,t={}){let n=(o,i,s)=>{let a=LE[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=r[o];if(!(s&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(e))n(o,i,!1);for(let[o,i]of Object.entries(t))n(o,i,!0);return r}var Be=BigInt(0),me=BigInt(1),Hn=BigInt(2),PE=BigInt(3),kl=BigInt(4),P0=BigInt(5),C0=BigInt(8),CE=BigInt(9),NE=BigInt(16);function Se(r,e){let t=r%e;return t>=Be?t:e+t}function ME(r,e,t){if(t<=Be||e<Be)throw new Error("Expected power/modulo > 0");if(t===me)return Be;let n=me;for(;e>Be;)e&me&&(n=n*r%t),r=r*r%t,e>>=me;return n}function rt(r,e,t){let n=r;for(;e-- >Be;)n*=n,n%=t;return n}function ma(r,e){if(r===Be||e<=Be)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Se(r,e),n=e,o=Be,i=me,s=me,a=Be;for(;t!==Be;){let u=n/t,f=n%t,l=o-s*u,h=i-a*u;n=t,t=f,o=s,i=a,s=l,a=h}if(n!==me)throw new Error("invert: does not exist");return Se(o,e)}function UE(r){let e=(r-me)/Hn,t,n,o;for(t=r-me,n=0;t%Hn===Be;t/=Hn,n++);for(o=Hn;o<r&&ME(o,e,r)!==r-me;o++);if(n===1){let s=(r+me)/kl;return function(c,u){let f=c.pow(u,s);if(!c.eql(c.sqr(f),u))throw new Error("Cannot find square root");return f}}let i=(t+me)/Hn;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,f=a.pow(a.mul(a.ONE,o),t),l=a.pow(c,i),h=a.pow(c,t);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let d=a.sqr(h);g<u&&!a.eql(d,a.ONE);g++)d=a.sqr(d);let y=a.pow(f,me<<BigInt(u-g-1));f=a.sqr(y),l=a.mul(l,y),h=a.mul(h,f),u=g}return l}}function jE(r){if(r%kl===PE){let e=(r+me)/kl;return function(n,o){let i=n.pow(o,e);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%C0===P0){let e=(r-P0)/C0;return function(n,o){let i=n.mul(o,Hn),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,Hn),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),o))throw new Error("Cannot find square root");return u}}return r%NE,UE(r)}var qE=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Al(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=qE.reduce((n,o)=>(n[o]="function",n),e);return zr(r,t)}function $E(r,e,t){if(t<Be)throw new Error("Expected power > 0");if(t===Be)return r.ONE;if(t===me)return e;let n=r.ONE,o=e;for(;t>Be;)t&me&&(n=r.mul(n,o)),o=r.sqr(o),t>>=me;return n}function WE(r,e){let t=new Array(e.length),n=e.reduce((i,s,a)=>r.is0(s)?i:(t[a]=i,r.mul(i,s)),r.ONE),o=r.inv(n);return e.reduceRight((i,s,a)=>r.is0(s)?i:(t[a]=r.mul(i,t[a]),r.mul(i,s)),o),t}function _l(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function N0(r,e,t=!1,n={}){if(r<=Be)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=_l(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=jE(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:us(o),ZERO:Be,ONE:me,create:c=>Se(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Be<=c&&c<r},is0:c=>c===Be,isOdd:c=>(c&me)===me,neg:c=>Se(-c,r),eql:(c,u)=>c===u,sqr:c=>Se(c*c,r),add:(c,u)=>Se(c+u,r),sub:(c,u)=>Se(c-u,r),mul:(c,u)=>Se(c*u,r),pow:(c,u)=>$E(a,c,u),div:(c,u)=>Se(c*ma(u,r),r),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>ma(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>WE(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>t?ba(c,i):Ot(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?ya(c):Ue(c)}});return Object.freeze(a)}function M0(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function Sl(r){let e=M0(r);return e+Math.ceil(e/2)}function U0(r,e,t=!1){let n=r.length,o=M0(e),i=Sl(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=t?Ue(r):ya(r),a=Se(s,e-me)+me;return t?ba(a,o):Ot(a,o)}var FE=BigInt(0),Bl=BigInt(1);function j0(r,e){let t=(o,i)=>{let s=i.negate();return o?s:i},n=o=>{let i=Math.ceil(e/o)+1,s=2**(o-1);return{windows:i,windowSize:s}};return{constTimeNegate:t,unsafeLadder(o,i){let s=r.ZERO,a=o;for(;i>FE;)i&Bl&&(s=s.add(a)),a=a.double(),i>>=Bl;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],u=o,f=u;for(let l=0;l<s;l++){f=u,c.push(f);for(let h=1;h<a;h++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),u=r.ZERO,f=r.BASE,l=BigInt(2**o-1),h=2**o,g=BigInt(o);for(let y=0;y<a;y++){let d=y*c,p=Number(s&l);s>>=g,p>c&&(p-=h,s+=Bl);let b=d,m=d+Math.abs(p)-1,x=y%2!==0,S=p<0;p===0?f=f.add(t(x,i[b])):u=u.add(t(S,i[m]))}return{p:u,f}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,u=i.get(o);return u||(u=this.precomputeWindow(o,c),c!==1&&i.set(o,a(u))),this.wNAF(c,u,s)}}}function Ol(r){return Al(r.Fp),zr(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze(J(z(z({},_l(r.n,r.nBitLength)),r),{p:r.Fp.ORDER}))}function DE(r){let e=Ol(r);zr(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:n,a:o}=e;if(t){if(!n.eql(o,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze(z({},e))}var{bytesToNumberBE:zE,hexToBytes:KE}=xl,Fn={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=Fn;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:zE(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=Fn,t=typeof r=="string"?KE(r):r;if(!(t instanceof Uint8Array))throw new Error("ui8a expected");let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:o,l:i}=Fn._parseInt(t.subarray(2)),{d:s,l:a}=Fn._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,s}},hexFromSig(r){let e=u=>Number.parseInt(u[0],16)&8?"00"+u:u,t=u=>{let f=u.toString(16);return f.length&1?`0${f}`:f},n=e(t(r.s)),o=e(t(r.r)),i=n.length/2,s=o.length/2,a=t(i),c=t(s);return`30${t(s+i+4)}02${c}${o}02${a}${n}`}},fr=BigInt(0),gt=BigInt(1),j5=BigInt(2),q0=BigInt(3),q5=BigInt(4);function VE(r){let e=DE(r),{Fp:t}=e,n=e.toBytes||((y,d,p)=>{let b=d.toAffine();return lr(Uint8Array.from([4]),t.toBytes(b.x),t.toBytes(b.y))}),o=e.fromBytes||(y=>{let d=y.subarray(1),p=t.fromBytes(d.subarray(0,t.BYTES)),b=t.fromBytes(d.subarray(t.BYTES,2*t.BYTES));return{x:p,y:b}});function i(y){let{a:d,b:p}=e,b=t.sqr(y),m=t.mul(b,y);return t.add(t.add(m,t.mul(y,d)),p)}if(!t.eql(t.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(y){return typeof y=="bigint"&&fr<y&&y<e.n}function a(y){if(!s(y))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(y){let{allowedPrivateKeyLengths:d,nByteLength:p,wrapPrivateKey:b,n:m}=e;if(d&&typeof y!="bigint"){if(y instanceof Uint8Array&&(y=$n(y)),typeof y!="string"||!d.includes(y.length))throw new Error("Invalid key");y=y.padStart(p*2,"0")}let x;try{x=typeof y=="bigint"?y:Ue(_e("private key",y,p))}catch(S){throw new Error(`private key must be ${p} bytes, hex or bigint, not ${typeof y}`)}return b&&(x=Se(x,m)),a(x),x}let u=new Map;function f(y){if(!(y instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(d,p,b){if(this.px=d,this.py=p,this.pz=b,d==null||!t.isValid(d))throw new Error("x required");if(p==null||!t.isValid(p))throw new Error("y required");if(b==null||!t.isValid(b))throw new Error("z required")}static fromAffine(d){let{x:p,y:b}=d||{};if(!d||!t.isValid(p)||!t.isValid(b))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let m=x=>t.eql(x,t.ZERO);return m(p)&&m(b)?l.ZERO:new l(p,b,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let p=t.invertBatch(d.map(b=>b.pz));return d.map((b,m)=>b.toAffine(p[m])).map(l.fromAffine)}static fromHex(d){let p=l.fromAffine(o(_e("pointHex",d)));return p.assertValidity(),p}static fromPrivateKey(d){return l.BASE.multiply(c(d))}_setWindowSize(d){this._WINDOW_SIZE=d,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:p}=this.toAffine();if(!t.isValid(d)||!t.isValid(p))throw new Error("bad point: x or y not FE");let b=t.sqr(p),m=i(d);if(!t.eql(b,m))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(t.isOdd)return!t.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.eql(t.mul(p,I),t.mul(x,m)),O=t.eql(t.mul(b,I),t.mul(S,m));return _&&O}negate(){return new l(this.px,t.neg(this.py),this.pz)}double(){let{a:d,b:p}=e,b=t.mul(p,q0),{px:m,py:x,pz:S}=this,I=t.ZERO,_=t.ZERO,O=t.ZERO,w=t.mul(m,m),E=t.mul(x,x),v=t.mul(S,S),A=t.mul(m,x);return A=t.add(A,A),O=t.mul(m,S),O=t.add(O,O),I=t.mul(d,O),_=t.mul(b,v),_=t.add(I,_),I=t.sub(E,_),_=t.add(E,_),_=t.mul(I,_),I=t.mul(A,I),O=t.mul(b,O),v=t.mul(d,v),A=t.sub(w,v),A=t.mul(d,A),A=t.add(A,O),O=t.add(w,w),w=t.add(O,w),w=t.add(w,v),w=t.mul(w,A),_=t.add(_,w),v=t.mul(x,S),v=t.add(v,v),w=t.mul(v,A),I=t.sub(I,w),O=t.mul(v,E),O=t.add(O,O),O=t.add(O,O),new l(I,_,O)}add(d){f(d);let{px:p,py:b,pz:m}=this,{px:x,py:S,pz:I}=d,_=t.ZERO,O=t.ZERO,w=t.ZERO,E=e.a,v=t.mul(e.b,q0),A=t.mul(p,x),R=t.mul(b,S),L=t.mul(m,I),P=t.add(p,b),B=t.add(x,S);P=t.mul(P,B),B=t.add(A,R),P=t.sub(P,B),B=t.add(p,m);let T=t.add(x,I);return B=t.mul(B,T),T=t.add(A,L),B=t.sub(B,T),T=t.add(b,m),_=t.add(S,I),T=t.mul(T,_),_=t.add(R,L),T=t.sub(T,_),w=t.mul(E,B),_=t.mul(v,L),w=t.add(_,w),_=t.sub(R,w),w=t.add(R,w),O=t.mul(_,w),R=t.add(A,A),R=t.add(R,A),L=t.mul(E,L),B=t.mul(v,B),R=t.add(R,L),L=t.sub(A,L),L=t.mul(E,L),B=t.add(B,L),A=t.mul(R,B),O=t.add(O,A),A=t.mul(T,B),_=t.mul(P,_),_=t.sub(_,A),A=t.mul(P,R),w=t.mul(T,w),w=t.add(w,A),new l(_,O,w)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return g.wNAFCached(this,u,d,p=>{let b=t.invertBatch(p.map(m=>m.pz));return p.map((m,x)=>m.toAffine(b[x])).map(l.fromAffine)})}multiplyUnsafe(d){let p=l.ZERO;if(d===fr)return p;if(a(d),d===gt)return this;let{endo:b}=e;if(!b)return g.unsafeLadder(this,d);let{k1neg:m,k1:x,k2neg:S,k2:I}=b.splitScalar(d),_=p,O=p,w=this;for(;x>fr||I>fr;)x&gt&&(_=_.add(w)),I&gt&&(O=O.add(w)),w=w.double(),x>>=gt,I>>=gt;return m&&(_=_.negate()),S&&(O=O.negate()),O=new l(t.mul(O.px,b.beta),O.py,O.pz),_.add(O)}multiply(d){a(d);let p=d,b,m,{endo:x}=e;if(x){let{k1neg:S,k1:I,k2neg:_,k2:O}=x.splitScalar(p),{p:w,f:E}=this.wNAF(I),{p:v,f:A}=this.wNAF(O);w=g.constTimeNegate(S,w),v=g.constTimeNegate(_,v),v=new l(t.mul(v.px,x.beta),v.py,v.pz),b=w.add(v),m=E.add(A)}else{let{p:S,f:I}=this.wNAF(p);b=S,m=I}return l.normalizeZ([b,m])[0]}multiplyAndAddUnsafe(d,p,b){let m=l.BASE,x=(I,_)=>_===fr||_===gt||!I.equals(m)?I.multiplyUnsafe(_):I.multiply(_),S=x(this,p).add(x(d,b));return S.is0()?void 0:S}toAffine(d){let{px:p,py:b,pz:m}=this,x=this.is0();d==null&&(d=x?t.ONE:t.inv(m));let S=t.mul(p,d),I=t.mul(b,d),_=t.mul(m,d);if(x)return{x:t.ZERO,y:t.ZERO};if(!t.eql(_,t.ONE))throw new Error("invZ was invalid");return{x:S,y:I}}isTorsionFree(){let{h:d,isTorsionFree:p}=e;if(d===gt)return!0;if(p)return p(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:p}=e;return d===gt?this:p?p(l,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(l,this,d)}toHex(d=!0){return $n(this.toRawBytes(d))}}l.BASE=new l(e.Gx,e.Gy,t.ONE),l.ZERO=new l(t.ZERO,t.ONE,t.ZERO);let h=e.nBitLength,g=j0(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function GE(r){let e=Ol(r);return zr(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze(z({lowS:!0},e))}function $0(r){let e=GE(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(B){return fr<B&&B<t.ORDER}function a(B){return Se(B,n)}function c(B){return ma(B,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=VE(J(z({},e),{toBytes(B,T,C){let M=T.toAffine(),N=t.toBytes(M.x),W=lr;return C?W(Uint8Array.from([T.hasEvenY()?2:3]),N):W(Uint8Array.from([4]),N,t.toBytes(M.y))},fromBytes(B){let T=B.length,C=B[0],M=B.subarray(1);if(T===o&&(C===2||C===3)){let N=Ue(M);if(!s(N))throw new Error("Point is not on curve");let W=l(N),D=t.sqrt(W),q=(D&gt)===gt;return(C&1)===1!==q&&(D=t.neg(D)),{x:N,y:D}}else if(T===i&&C===4){let N=t.fromBytes(M.subarray(0,t.BYTES)),W=t.fromBytes(M.subarray(t.BYTES,2*t.BYTES));return{x:N,y:W}}else throw new Error(`Point of length ${T} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}})),g=B=>$n(Ot(B,e.nByteLength));function y(B){let T=n>>gt;return B>T}function d(B){return y(B)?a(-B):B}let p=(B,T,C)=>Ue(B.slice(T,C));class b{constructor(T,C,M){this.r=T,this.s=C,this.recovery=M,this.assertValidity()}static fromCompact(T){let C=e.nByteLength;return T=_e("compactSignature",T,C*2),new b(p(T,0,C),p(T,C,2*C))}static fromDER(T){let{r:C,s:M}=Fn.toSig(_e("DER",T));return new b(C,M)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(T){return new b(this.r,this.s,T)}recoverPublicKey(T){let{r:C,s:M,recovery:N}=this,W=O(_e("msgHash",T));if(N==null||![0,1,2,3].includes(N))throw new Error("recovery id invalid");let D=N===2||N===3?C+e.n:C;if(D>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=(N&1)===0?"02":"03",K=u.fromHex(q+g(D)),X=c(D),oe=a(-W*X),ne=a(M*X),ee=u.BASE.multiplyAndAddUnsafe(K,oe,ne);if(!ee)throw new Error("point at infinify");return ee.assertValidity(),ee}hasHighS(){return y(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Wn(this.toDERHex())}toDERHex(){return Fn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Wn(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let m={isValidPrivateKey(B){try{return f(B),!0}catch(T){return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let B=Sl(e.n);return U0(e.randomBytes(B),e.n)},precompute(B=8,T=u.BASE){return T._setWindowSize(B),T.multiply(BigInt(3)),T}};function x(B,T=!0){return u.fromPrivateKey(B).toRawBytes(T)}function S(B){let T=B instanceof Uint8Array,C=typeof B=="string",M=(T||C)&&B.length;return T?M===o||M===i:C?M===2*o||M===2*i:B instanceof u}function I(B,T,C=!0){if(S(B))throw new Error("first arg must be private key");if(!S(T))throw new Error("second arg must be public key");return u.fromHex(T).multiply(f(B)).toRawBytes(C)}let _=e.bits2int||function(B){let T=Ue(B),C=B.length*8-e.nBitLength;return C>0?T>>BigInt(C):T},O=e.bits2int_modN||function(B){return a(_(B))},w=us(e.nBitLength);function E(B){if(typeof B!="bigint")throw new Error("bigint expected");if(!(fr<=B&&B<w))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Ot(B,e.nByteLength)}function v(B,T,C=A){if(["recovered","canonical"].some(ce=>ce in C))throw new Error("sign() legacy options not supported");let{hash:M,randomBytes:N}=e,{lowS:W,prehash:D,extraEntropy:q}=C;W==null&&(W=!0),B=_e("msgHash",B),D&&(B=_e("prehashed msgHash",M(B)));let K=O(B),X=f(T),oe=[E(X),E(K)];if(q!=null){let ce=q===!0?N(t.BYTES):q;oe.push(_e("extraEntropy",ce))}let ne=lr(...oe),ee=K;function pe(ce){let Te=_(ce);if(!h(Te))return;let at=c(Te),ge=u.BASE.multiply(Te).toAffine(),ye=a(ge.x);if(ye===fr)return;let Fe=a(at*a(ee+ye*X));if(Fe===fr)return;let $t=(ge.x===ye?0:2)|Number(ge.y&gt),Ir=Fe;return W&&y(Fe)&&(Ir=d(Fe),$t^=1),new b(ye,Ir,$t)}return{seed:ne,k2sig:pe}}let A={lowS:e.lowS,prehash:!1},R={lowS:e.lowS,prehash:!1};function L(B,T,C=A){let{seed:M,k2sig:N}=v(B,T,C),W=e;return El(W.hash.outputLen,W.nByteLength,W.hmac)(M,N)}u.BASE._setWindowSize(8);function P(B,T,C,M=R){var ge;let N=B;if(T=_e("msgHash",T),C=_e("publicKey",C),"strict"in M)throw new Error("options.strict was renamed to lowS");let{lowS:W,prehash:D}=M,q,K;try{if(typeof N=="string"||N instanceof Uint8Array)try{q=b.fromDER(N)}catch(ye){if(!(ye instanceof Fn.Err))throw ye;q=b.fromCompact(N)}else if(typeof N=="object"&&typeof N.r=="bigint"&&typeof N.s=="bigint"){let{r:ye,s:Fe}=N;q=new b(ye,Fe)}else throw new Error("PARSE");K=u.fromHex(C)}catch(ye){if(ye.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(W&&q.hasHighS())return!1;D&&(T=e.hash(T));let{r:X,s:oe}=q,ne=O(T),ee=c(oe),pe=a(ne*ee),ce=a(X*ee),Te=(ge=u.BASE.multiplyAndAddUnsafe(K,pe,ce))==null?void 0:ge.toAffine();return Te?a(Te.x)===X:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:I,sign:L,verify:P,ProjectivePoint:u,Signature:b,utils:m}}var wa=class extends Ko{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,_0(e);let n=cs(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return zo(this),this.iHash.update(e),this}digestInto(e){zo(this),bl(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return e=e,e.finished=o,e.destroyed=i,e.blockLen=s,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Il=(r,e,t)=>new wa(r,e).update(t).digest();Il.create=(r,e)=>new wa(r,e);function ZE(r){return{hash:r,hmac:(e,...t)=>Il(r,e,O0(...t)),randomBytes:fa}}function W0(r,e){let t=n=>$0(z(z({},r),ZE(n)));return Object.freeze(J(z({},t(e)),{create:t}))}var ka=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),va=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),D0=BigInt(1),Ea=BigInt(2),H0=(r,e)=>(r+e/Ea)/e;function z0(r){let e=ka,t=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=r*r*r%e,f=u*u*r%e,l=rt(f,t,e)*f%e,h=rt(l,t,e)*f%e,g=rt(h,Ea,e)*u%e,y=rt(g,o,e)*g%e,d=rt(y,i,e)*y%e,p=rt(d,a,e)*d%e,b=rt(p,c,e)*p%e,m=rt(b,a,e)*d%e,x=rt(m,t,e)*f%e,S=rt(x,s,e)*y%e,I=rt(S,n,e)*u%e,_=rt(I,Ea,e);if(!Rl.eql(Rl.sqr(_),r))throw new Error("Cannot find square root");return _}var Rl=N0(ka,void 0,void 0,{sqrt:z0}),Kr=W0({a:BigInt(0),b:BigInt(7),Fp:Rl,n:va,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=va,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-D0*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=H0(i*r,e),c=H0(-n*r,e),u=Se(r-a*t-c*o,e),f=Se(-a*n-c*i,e),l=u>s,h=f>s;if(l&&(u=e-u),h&&(f=e-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},da),Aa=BigInt(0),K0=r=>typeof r=="bigint"&&Aa<r&&r<ka,YE=r=>typeof r=="bigint"&&Aa<r&&r<va,F0={};function xa(r,...e){let t=F0[r];if(t===void 0){let n=da(Uint8Array.from(r,o=>o.charCodeAt(0)));t=lr(n,n),F0[r]=t}return da(lr(t,...e))}var Cl=r=>r.toRawBytes(!0).slice(1),Ll=r=>Ot(r,32),Tl=r=>Se(r,ka),ls=r=>Se(r,va),Nl=Kr.ProjectivePoint,JE=(r,e,t)=>Nl.BASE.multiplyAndAddUnsafe(r,e,t);function Pl(r){let e=Kr.utils.normPrivateKeyToScalar(r),t=Nl.fromPrivateKey(e);return{scalar:t.hasEvenY()?e:ls(-e),bytes:Cl(t)}}function V0(r){if(!K0(r))throw new Error("bad x: need 0 < x < p");let e=Tl(r*r),t=Tl(e*r+BigInt(7)),n=z0(t);n%Ea!==Aa&&(n=Tl(-n));let o=new Nl(r,n,D0);return o.assertValidity(),o}function G0(...r){return ls(Ue(xa("BIP0340/challenge",...r)))}function XE(r){return Pl(r).bytes}function QE(r,e,t=fa(32)){let n=_e("message",r),{bytes:o,scalar:i}=Pl(e),s=_e("auxRand",t,32),a=Ll(i^Ue(xa("BIP0340/aux",s))),c=xa("BIP0340/nonce",a,o,n),u=ls(Ue(c));if(u===Aa)throw new Error("sign failed: k is zero");let{bytes:f,scalar:l}=Pl(u),h=G0(f,o,n),g=new Uint8Array(64);if(g.set(f,0),g.set(Ll(ls(l+h*i)),32),!Z0(g,n,o))throw new Error("sign: Invalid signature produced");return g}function Z0(r,e,t){let n=_e("signature",r,64),o=_e("message",e),i=_e("publicKey",t,32);try{let s=V0(Ue(i)),a=Ue(n.subarray(0,32));if(!K0(a))return!1;let c=Ue(n.subarray(32,64));if(!YE(c))return!1;let u=G0(Ll(a),Cl(s),o),f=JE(s,c,ls(-u));return!(!f||!f.hasEvenY()||f.toAffine().x!==a)}catch(s){return!1}}var Vo={getPublicKey:XE,sign:QE,verify:Z0,utils:{randomPrivateKey:Kr.utils.randomPrivateKey,lift_x:V0,pointToBytes:Cl,numberToBytesBE:Ot,bytesToNumberBE:Ue,taggedHash:xa,mod:Se}};var Sa=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Ml=r=>r instanceof Uint8Array;var Ba=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),It=(r,e)=>r<<32-e|r>>>e,ex=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ex)throw new Error("Non little-endian hardware is not supported");var tx=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function ke(r){if(!Ml(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=tx[r[t]];return e}function Dn(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let t=new Uint8Array(e/2);for(let n=0;n<t.length;n++){let o=n*2,i=r.slice(o,o+2),s=Number.parseInt(i,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");t[n]=s}return t}function rx(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Vr(r){if(typeof r=="string"&&(r=rx(r)),!Ml(r))throw new Error(`expected Uint8Array, got ${typeof r}`);return r}function Zo(...r){let e=new Uint8Array(r.reduce((n,o)=>n+o.length,0)),t=0;return r.forEach(n=>{if(!Ml(n))throw new Error("Uint8Array expected");e.set(n,t),t+=n.length}),e}var Go=class{clone(){return this._cloneInto()}};function Ul(r){let e=n=>r().update(Vr(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Oa(r=32){if(Sa&&typeof Sa.getRandomValues=="function")return Sa.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function jl(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function nx(r){if(typeof r!="boolean")throw new Error(`Expected boolean, not ${r}`)}function Y0(r,...e){if(!(r instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function ox(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");jl(r.outputLen),jl(r.blockLen)}function ix(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function sx(r,e){Y0(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var ax={number:jl,bool:nx,bytes:Y0,hash:ox,exists:ix,output:sx},nt=ax;function cx(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(t>>o&i),a=Number(t&i),c=n?4:0,u=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+u,a,n)}var Ia=class extends Go{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Ba(this.buffer)}update(e){nt.exists(this);let{view:t,buffer:n,blockLen:o}=this;e=Vr(e);let i=e.length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a===o){let c=Ba(e);for(;o<=i-s;s+=o)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){nt.exists(this),nt.output(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;cx(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=Ba(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}};var ux=(r,e,t)=>r&e^~r&t,lx=(r,e,t)=>r&e^r&t^e&t,fx=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Gr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Zr=new Uint32Array(64),Ta=class extends Ia{constructor(){super(64,32,8,!1),this.A=Gr[0]|0,this.B=Gr[1]|0,this.C=Gr[2]|0,this.D=Gr[3]|0,this.E=Gr[4]|0,this.F=Gr[5]|0,this.G=Gr[6]|0,this.H=Gr[7]|0}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=o|0,this.E=i|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,t){for(let l=0;l<16;l++,t+=4)Zr[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let h=Zr[l-15],g=Zr[l-2],y=It(h,7)^It(h,18)^h>>>3,d=It(g,17)^It(g,19)^g>>>10;Zr[l]=d+Zr[l-7]+y+Zr[l-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:u,H:f}=this;for(let l=0;l<64;l++){let h=It(a,6)^It(a,11)^It(a,25),g=f+h+ux(a,c,u)+fx[l]+Zr[l]|0,d=(It(n,2)^It(n,13)^It(n,22))+lx(n,o,i)|0;f=u,u=c,c=a,a=s+g|0,s=i,i=o,o=n,n=g+d|0}n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,o,i,s,a,c,u,f)}roundClean(){Zr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},ql=class extends Ta{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},Gt=Ul(()=>new Ta),fB=Ul(()=>new ql);function Yo(r){if(!Number.isSafeInteger(r))throw new Error(`Wrong integer: ${r}`)}function hr(...r){let e=(o,i)=>s=>o(i(s)),t=Array.from(r).reverse().reduce((o,i)=>o?e(o,i.encode):i.encode,void 0),n=r.reduce((o,i)=>o?e(o,i.decode):i.decode,void 0);return{encode:t,decode:n}}function dr(r){return{encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return e.map(t=>{if(Yo(t),t<0||t>=r.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${r.length})`);return r[t]})},decode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("alphabet.decode input should be array of strings");return e.map(t=>{if(typeof t!="string")throw new Error(`alphabet.decode: not string element=${t}`);let n=r.indexOf(t);if(n===-1)throw new Error(`Unknown letter: "${t}". Allowed: ${r}`);return n})}}}function pr(r=""){if(typeof r!="string")throw new Error("join separator should be string");return{encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("join.encode input should be array of strings");for(let t of e)if(typeof t!="string")throw new Error(`join.encode: non-string input=${t}`);return e.join(r)},decode:e=>{if(typeof e!="string")throw new Error("join.decode input should be string");return e.split(r)}}}function La(r,e="="){if(Yo(r),typeof e!="string")throw new Error("padding chr should be string");return{encode(t){if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("padding.encode input should be array of strings");for(let n of t)if(typeof n!="string")throw new Error(`padding.encode: non-string input=${n}`);for(;t.length*r%8;)t.push(e);return t},decode(t){if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("padding.encode input should be array of strings");for(let o of t)if(typeof o!="string")throw new Error(`padding.decode: non-string input=${o}`);let n=t.length;if(n*r%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;n>0&&t[n-1]===e;n--)if(!((n-1)*r%8))throw new Error("Invalid padding: string has too much padding");return t.slice(0,n)}}}function rg(r){if(typeof r!="function")throw new Error("normalize fn should be function");return{encode:e=>e,decode:e=>r(e)}}function J0(r,e,t){if(e<2)throw new Error(`convertRadix: wrong from=${e}, base cannot be less than 2`);if(t<2)throw new Error(`convertRadix: wrong to=${t}, base cannot be less than 2`);if(!Array.isArray(r))throw new Error("convertRadix: data should be array");if(!r.length)return[];let n=0,o=[],i=Array.from(r);for(i.forEach(s=>{if(Yo(s),s<0||s>=e)throw new Error(`Wrong integer: ${s}`)});;){let s=0,a=!0;for(let c=n;c<i.length;c++){let u=i[c],f=e*s+u;if(!Number.isSafeInteger(f)||e*s/e!==s||f-u!==e*s)throw new Error("convertRadix: carry overflow");if(s=f%t,i[c]=Math.floor(f/t),!Number.isSafeInteger(i[c])||i[c]*t+s!==f)throw new Error("convertRadix: carry overflow");if(a)i[c]?a=!1:n=c;else continue}if(o.push(s),a)break}for(let s=0;s<r.length-1&&r[s]===0;s++)o.push(0);return o.reverse()}var ng=(r,e)=>e?ng(e,r%e):r,Ra=(r,e)=>r+(e-ng(r,e));function $l(r,e,t,n){if(!Array.isArray(r))throw new Error("convertRadix2: data should be array");if(e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(t<=0||t>32)throw new Error(`convertRadix2: wrong to=${t}`);if(Ra(e,t)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${t} carryBits=${Ra(e,t)}`);let o=0,i=0,s=2**t-1,a=[];for(let c of r){if(Yo(c),c>=2**e)throw new Error(`convertRadix2: invalid data word=${c} from=${e}`);if(o=o<<e|c,i+e>32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${e}`);for(i+=e;i>=t;i-=t)a.push((o>>i-t&s)>>>0);o&=2**i-1}if(o=o<<t-i&s,!n&&i>=e)throw new Error("Excess padding");if(!n&&o)throw new Error(`Non-zero padding: ${o}`);return n&&i>0&&a.push(o>>>0),a}function hx(r){return Yo(r),{encode:e=>{if(!(e instanceof Uint8Array))throw new Error("radix.encode input should be Uint8Array");return J0(Array.from(e),2**8,r)},decode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="number")throw new Error("radix.decode input should be array of strings");return Uint8Array.from(J0(e,r,2**8))}}}function Yr(r,e=!1){if(Yo(r),r<=0||r>32)throw new Error("radix2: bits should be in (0..32]");if(Ra(8,r)>32||Ra(r,8)>32)throw new Error("radix2: carry overflow");return{encode:t=>{if(!(t instanceof Uint8Array))throw new Error("radix2.encode input should be Uint8Array");return $l(Array.from(t),8,r,!e)},decode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="number")throw new Error("radix2.decode input should be array of strings");return Uint8Array.from($l(t,r,8,e))}}}function X0(r){if(typeof r!="function")throw new Error("unsafeWrapper fn should be function");return function(...e){try{return r.apply(null,e)}catch(t){}}}var dx=hr(Yr(4),dr("0123456789ABCDEF"),pr("")),px=hr(Yr(5),dr("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),La(5),pr("")),dB=hr(Yr(5),dr("0123456789ABCDEFGHIJKLMNOPQRSTUV"),La(5),pr("")),pB=hr(Yr(5),dr("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),pr(""),rg(r=>r.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),yt=hr(Yr(6),dr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),La(6),pr("")),gx=hr(Yr(6),dr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),La(6),pr("")),Fl=r=>hr(hx(58),dr(r),pr("")),Wl=Fl("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),gB=Fl("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),yB=Fl("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"),Q0=[0,2,3,5,6,7,9,10,11],yx={encode(r){let e="";for(let t=0;t<r.length;t+=8){let n=r.subarray(t,t+8);e+=Wl.encode(n).padStart(Q0[n.length],"1")}return e},decode(r){let e=[];for(let t=0;t<r.length;t+=11){let n=r.slice(t,t+11),o=Q0.indexOf(n.length),i=Wl.decode(n);for(let s=0;s<i.length-o;s++)if(i[s]!==0)throw new Error("base58xmr: wrong padding");e=e.concat(Array.from(i.slice(i.length-o)))}return Uint8Array.from(e)}};var Hl=hr(dr("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),pr("")),eg=[996825010,642813549,513874426,1027748829,705979059];function fs(r){let e=r>>25,t=(r&33554431)<<5;for(let n=0;n<eg.length;n++)(e>>n&1)===1&&(t^=eg[n]);return t}function tg(r,e,t=1){let n=r.length,o=1;for(let i=0;i<n;i++){let s=r.charCodeAt(i);if(s<33||s>126)throw new Error(`Invalid prefix (${r})`);o=fs(o)^s>>5}o=fs(o);for(let i=0;i<n;i++)o=fs(o)^r.charCodeAt(i)&31;for(let i of e)o=fs(o)^i;for(let i=0;i<6;i++)o=fs(o);return o^=t,Hl.encode($l([o%2**30],30,5,!1))}function og(r){let e=r==="bech32"?1:734539939,t=Yr(5),n=t.decode,o=t.encode,i=X0(n);function s(f,l,h=90){if(typeof f!="string")throw new Error(`bech32.encode prefix should be string, not ${typeof f}`);if(!Array.isArray(l)||l.length&&typeof l[0]!="number")throw new Error(`bech32.encode words should be array of numbers, not ${typeof l}`);let g=f.length+7+l.length;if(h!==!1&&g>h)throw new TypeError(`Length ${g} exceeds limit ${h}`);return f=f.toLowerCase(),`${f}1${Hl.encode(l)}${tg(f,l,e)}`}function a(f,l=90){if(typeof f!="string")throw new Error(`bech32.decode input should be string, not ${typeof f}`);if(f.length<8||l!==!1&&f.length>l)throw new TypeError(`Wrong string length: ${f.length} (${f}). Expected (8..${l})`);let h=f.toLowerCase();if(f!==h&&f!==f.toUpperCase())throw new Error("String must be lowercase or uppercase");f=h;let g=f.lastIndexOf("1");if(g===0||g===-1)throw new Error('Letter "1" must be present between prefix and data only');let y=f.slice(0,g),d=f.slice(g+1);if(d.length<6)throw new Error("Data must be at least 6 characters long");let p=Hl.decode(d).slice(0,-6),b=tg(y,p,e);if(!d.endsWith(b))throw new Error(`Invalid checksum in ${f}: expected "${b}"`);return{prefix:y,words:p}}let c=X0(a);function u(f){let{prefix:l,words:h}=a(f,!1);return{prefix:l,words:h,bytes:n(h)}}return{encode:s,decode:a,decodeToBytes:u,decodeUnsafe:c,fromWords:n,fromWordsUnsafe:i,toWords:o}}var Jr=og("bech32"),bB=og("bech32m"),bx={encode:r=>new TextDecoder().decode(r),decode:r=>new TextEncoder().encode(r)},mx=hr(Yr(4),dr("0123456789abcdef"),pr(""),rg(r=>{if(typeof r!="string"||r.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof r} with length ${r.length}`);return r.toLowerCase()})),wx={utf8:bx,hex:mx,base16:dx,base32:px,base64:yt,base64url:gx,base58:Wl,base58xmr:yx},mB=`Invalid encoding type. Available types: ${Object.keys(wx).join(", ")}`;function Pa(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function Dl(r){if(typeof r!="boolean")throw new Error(`boolean expected, not ${r}`)}function zl(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function te(r,...e){if(!zl(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}function Xr(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function hs(r,e){te(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Ca=r=>new Uint8Array(r.buffer,r.byteOffset,r.byteLength);var re=r=>new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4)),Qr=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),vx=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!vx)throw new Error("Non little-endian hardware is not supported");function Ex(r){if(typeof r!="string")throw new Error(`string expected, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Zt(r){if(typeof r=="string")r=Ex(r);else if(zl(r))r=r.slice();else throw new Error(`Uint8Array expected, got ${typeof r}`);return r}function ig(r,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(r,e)}function zn(r,e){if(r.length!==e.length)return!1;let t=0;for(let n=0;n<r.length;n++)t|=r[n]^e[n];return t===0}var Yt=(r,e)=>(Object.assign(e,r),e);function Kn(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(t>>o&i),a=Number(t&i),c=n?4:0,u=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+u,a,n)}var gr=16,Vl=new Uint8Array(16),Jt=re(Vl),xx=225,kx=(r,e,t,n)=>{let o=n&1;return{s3:t<<31|n>>>1,s2:e<<31|t>>>1,s1:r<<31|e>>>1,s0:r>>>1^xx<<24&-(o&1)}},bt=r=>(r>>>0&255)<<24|(r>>>8&255)<<16|(r>>>16&255)<<8|r>>>24&255|0;function Ax(r){r.reverse();let e=r[15]&1,t=0;for(let n=0;n<r.length;n++){let o=r[n];r[n]=o>>>1|t,t=(o&1)<<7}return r[0]^=-e&225,r}var _x=r=>r>64*1024?8:r>1024?4:2,Na=class{constructor(e,t){this.blockLen=gr,this.outputLen=gr,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,e=Zt(e),te(e,16);let n=Qr(e),o=n.getUint32(0,!1),i=n.getUint32(4,!1),s=n.getUint32(8,!1),a=n.getUint32(12,!1),c=[];for(let y=0;y<128;y++)c.push({s0:bt(o),s1:bt(i),s2:bt(s),s3:bt(a)}),{s0:o,s1:i,s2:s,s3:a}=kx(o,i,s,a);let u=_x(t||1024);if(![1,2,4,8].includes(u))throw new Error(`ghash: wrong window size=${u}, should be 2, 4 or 8`);this.W=u;let l=128/u,h=this.windowSize=2**u,g=[];for(let y=0;y<l;y++)for(let d=0;d<h;d++){let p=0,b=0,m=0,x=0;for(let S=0;S<u;S++){if(!(d>>>u-S-1&1))continue;let{s0:_,s1:O,s2:w,s3:E}=c[u*y+S];p^=_,b^=O,m^=w,x^=E}g.push({s0:p,s1:b,s2:m,s3:x})}this.t=g}_updateBlock(e,t,n,o){e^=this.s0,t^=this.s1,n^=this.s2,o^=this.s3;let{W:i,t:s,windowSize:a}=this,c=0,u=0,f=0,l=0,h=(1<<i)-1,g=0;for(let y of[e,t,n,o])for(let d=0;d<4;d++){let p=y>>>8*d&255;for(let b=8/i-1;b>=0;b--){let m=p>>>i*b&h,{s0:x,s1:S,s2:I,s3:_}=s[g*a+m];c^=x,u^=S,f^=I,l^=_,g+=1}}this.s0=c,this.s1=u,this.s2=f,this.s3=l}update(e){e=Zt(e),Xr(this);let t=re(e),n=Math.floor(e.length/gr),o=e.length%gr;for(let i=0;i<n;i++)this._updateBlock(t[i*4+0],t[i*4+1],t[i*4+2],t[i*4+3]);return o&&(Vl.set(e.subarray(n*gr)),this._updateBlock(Jt[0],Jt[1],Jt[2],Jt[3]),Jt.fill(0)),this}destroy(){let{t:e}=this;for(let t of e)t.s0=0,t.s1=0,t.s2=0,t.s3=0}digestInto(e){Xr(this),hs(e,this),this.finished=!0;let{s0:t,s1:n,s2:o,s3:i}=this,s=re(e);return s[0]=t,s[1]=n,s[2]=o,s[3]=i,e}digest(){let e=new Uint8Array(gr);return this.digestInto(e),this.destroy(),e}},Kl=class extends Na{constructor(e,t){e=Zt(e);let n=Ax(e.slice());super(n,t),n.fill(0)}update(e){e=Zt(e),Xr(this);let t=re(e),n=e.length%gr,o=Math.floor(e.length/gr);for(let i=0;i<o;i++)this._updateBlock(bt(t[i*4+3]),bt(t[i*4+2]),bt(t[i*4+1]),bt(t[i*4+0]));return n&&(Vl.set(e.subarray(o*gr)),this._updateBlock(bt(Jt[3]),bt(Jt[2]),bt(Jt[1]),bt(Jt[0])),Jt.fill(0)),this}digestInto(e){Xr(this),hs(e,this),this.finished=!0;let{s0:t,s1:n,s2:o,s3:i}=this,s=re(e);return s[0]=t,s[1]=n,s[2]=o,s[3]=i,e.reverse()}};function sg(r){let e=(n,o)=>r(o,n.length).update(Zt(n)).digest(),t=r(new Uint8Array(16),0);return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=(n,o)=>r(n,o),e}var Gl=sg((r,e)=>new Na(r,e)),ag=sg((r,e)=>new Kl(r,e));var Ze=16,Jl=4,Ma=new Uint8Array(Ze),Sx=283;function Xl(r){return r<<1^Sx&-(r>>7)}function Jo(r,e){let t=0;for(;e>0;e>>=1)t^=r&-(e&1),r=Xl(r);return t}var Yl=(()=>{let r=new Uint8Array(256);for(let t=0,n=1;t<256;t++,n^=Xl(n))r[t]=n;let e=new Uint8Array(256);e[0]=99;for(let t=0;t<255;t++){let n=r[255-t];n|=n<<8,e[r[t]]=(n^n>>4^n>>5^n>>6^n>>7^99)&255}return e})(),Bx=Yl.map((r,e)=>Yl.indexOf(e)),Ox=r=>r<<24|r>>>8,Zl=r=>r<<8|r>>>24;function cg(r,e){if(r.length!==256)throw new Error("Wrong sbox length");let t=new Uint32Array(256).map((u,f)=>e(r[f])),n=t.map(Zl),o=n.map(Zl),i=o.map(Zl),s=new Uint32Array(256*256),a=new Uint32Array(256*256),c=new Uint16Array(256*256);for(let u=0;u<256;u++)for(let f=0;f<256;f++){let l=u*256+f;s[l]=t[u]^n[f],a[l]=o[u]^i[f],c[l]=r[u]<<8|r[f]}return{sbox:r,sbox2:c,T0:t,T1:n,T2:o,T3:i,T01:s,T23:a}}var Ql=cg(Yl,r=>Jo(r,3)<<24|r<<16|r<<8|Jo(r,2)),ug=cg(Bx,r=>Jo(r,11)<<24|Jo(r,13)<<16|Jo(r,9)<<8|Jo(r,14)),Ix=(()=>{let r=new Uint8Array(16);for(let e=0,t=1;e<16;e++,t=Xl(t))r[e]=t;return r})();function tn(r){te(r);let e=r.length;if(![16,24,32].includes(e))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${e}`);let{sbox2:t}=Ql,n=re(r),o=n.length,i=a=>Xt(t,a,a,a,a),s=new Uint32Array(e+28);s.set(n);for(let a=o;a<s.length;a++){let c=s[a-1];a%o===0?c=i(Ox(c))^Ix[a/o-1]:o>6&&a%o===4&&(c=i(c)),s[a]=s[a-o]^c}return s}function lg(r){let e=tn(r),t=e.slice(),n=e.length,{sbox2:o}=Ql,{T0:i,T1:s,T2:a,T3:c}=ug;for(let u=0;u<n;u+=4)for(let f=0;f<4;f++)t[u+f]=e[n-u-4+f];e.fill(0);for(let u=4;u<n-4;u++){let f=t[u],l=Xt(o,f,f,f,f);t[u]=i[l&255]^s[l>>>8&255]^a[l>>>16&255]^c[l>>>24]}return t}function en(r,e,t,n,o,i){return r[t<<8&65280|n>>>8&255]^e[o>>>8&65280|i>>>24&255]}function Xt(r,e,t,n,o){return r[e&255|t&65280]|r[n>>>16&255|o>>>16&65280]<<16}function mt(r,e,t,n,o){let{sbox2:i,T01:s,T23:a}=Ql,c=0;e^=r[c++],t^=r[c++],n^=r[c++],o^=r[c++];let u=r.length/4-2;for(let y=0;y<u;y++){let d=r[c++]^en(s,a,e,t,n,o),p=r[c++]^en(s,a,t,n,o,e),b=r[c++]^en(s,a,n,o,e,t),m=r[c++]^en(s,a,o,e,t,n);e=d,t=p,n=b,o=m}let f=r[c++]^Xt(i,e,t,n,o),l=r[c++]^Xt(i,t,n,o,e),h=r[c++]^Xt(i,n,o,e,t),g=r[c++]^Xt(i,o,e,t,n);return{s0:f,s1:l,s2:h,s3:g}}function fg(r,e,t,n,o){let{sbox2:i,T01:s,T23:a}=ug,c=0;e^=r[c++],t^=r[c++],n^=r[c++],o^=r[c++];let u=r.length/4-2;for(let y=0;y<u;y++){let d=r[c++]^en(s,a,e,o,n,t),p=r[c++]^en(s,a,t,e,o,n),b=r[c++]^en(s,a,n,t,e,o),m=r[c++]^en(s,a,o,n,t,e);e=d,t=p,n=b,o=m}let f=r[c++]^Xt(i,e,o,n,t),l=r[c++]^Xt(i,t,e,o,n),h=r[c++]^Xt(i,n,t,e,o),g=r[c++]^Xt(i,o,n,t,e);return{s0:f,s1:l,s2:h,s3:g}}function Xo(r,e){if(!e)return new Uint8Array(r);if(te(e),e.length<r)throw new Error(`aes: wrong destination length, expected at least ${r}, got: ${e.length}`);return e}function Tx(r,e,t,n){te(e,Ze),te(t);let o=t.length;n=Xo(o,n);let i=e,s=re(i),{s0:a,s1:c,s2:u,s3:f}=mt(r,s[0],s[1],s[2],s[3]),l=re(t),h=re(n);for(let y=0;y+4<=l.length;y+=4){h[y+0]=l[y+0]^a,h[y+1]=l[y+1]^c,h[y+2]=l[y+2]^u,h[y+3]=l[y+3]^f;let d=1;for(let p=i.length-1;p>=0;p--)d=d+(i[p]&255)|0,i[p]=d&255,d>>>=8;({s0:a,s1:c,s2:u,s3:f}=mt(r,s[0],s[1],s[2],s[3]))}let g=Ze*Math.floor(l.length/Jl);if(g<o){let y=new Uint32Array([a,c,u,f]),d=Ca(y);for(let p=g,b=0;p<o;p++,b++)n[p]=t[p]^d[b]}return n}function ds(r,e,t,n,o){te(t,Ze),te(n),o=Xo(n.length,o);let i=t,s=re(i),a=Qr(i),c=re(n),u=re(o),f=e?0:12,l=n.length,h=a.getUint32(f,e),{s0:g,s1:y,s2:d,s3:p}=mt(r,s[0],s[1],s[2],s[3]);for(let m=0;m+4<=c.length;m+=4)u[m+0]=c[m+0]^g,u[m+1]=c[m+1]^y,u[m+2]=c[m+2]^d,u[m+3]=c[m+3]^p,h=h+1>>>0,a.setUint32(f,h,e),{s0:g,s1:y,s2:d,s3:p}=mt(r,s[0],s[1],s[2],s[3]);let b=Ze*Math.floor(c.length/Jl);if(b<l){let m=new Uint32Array([g,y,d,p]),x=Ca(m);for(let S=b,I=0;S<l;S++,I++)o[S]=n[S]^x[I]}return o}var IB=Yt({blockSize:16,nonceLength:16},function(e,t){te(e),te(t,Ze);function n(o,i){let s=tn(e),a=t.slice(),c=Tx(s,a,o,i);return s.fill(0),a.fill(0),c}return{encrypt:(o,i)=>n(o,i),decrypt:(o,i)=>n(o,i)}});function hg(r){if(te(r),r.length%Ze!==0)throw new Error(`aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size ${Ze}`)}function dg(r,e,t){let n=r.length,o=n%Ze;if(!e&&o!==0)throw new Error("aec/(cbc-ecb): unpadded plaintext with disabled padding");let i=re(r);if(e){let c=Ze-o;c||(c=Ze),n=n+c}let s=Xo(n,t),a=re(s);return{b:i,o:a,out:s}}function pg(r,e){if(!e)return r;let t=r.length;if(!t)throw new Error("aes/pcks5: empty ciphertext not allowed");let n=r[t-1];if(n<=0||n>16)throw new Error(`aes/pcks5: wrong padding byte: ${n}`);let o=r.subarray(0,-n);for(let i=0;i<n;i++)if(r[t-i-1]!==n)throw new Error("aes/pcks5: wrong padding");return o}function gg(r){let e=new Uint8Array(16),t=re(e);e.set(r);let n=Ze-r.length;for(let o=Ze-n;o<Ze;o++)e[o]=n;return t}var TB=Yt({blockSize:16},function(e,t={}){te(e);let n=!t.disablePadding;return{encrypt:(o,i)=>{te(o);let{b:s,o:a,out:c}=dg(o,n,i),u=tn(e),f=0;for(;f+4<=s.length;){let{s0:l,s1:h,s2:g,s3:y}=mt(u,s[f+0],s[f+1],s[f+2],s[f+3]);a[f++]=l,a[f++]=h,a[f++]=g,a[f++]=y}if(n){let l=gg(o.subarray(f*4)),{s0:h,s1:g,s2:y,s3:d}=mt(u,l[0],l[1],l[2],l[3]);a[f++]=h,a[f++]=g,a[f++]=y,a[f++]=d}return u.fill(0),c},decrypt:(o,i)=>{hg(o);let s=lg(e),a=Xo(o.length,i),c=re(o),u=re(a);for(let f=0;f+4<=c.length;){let{s0:l,s1:h,s2:g,s3:y}=fg(s,c[f+0],c[f+1],c[f+2],c[f+3]);u[f++]=l,u[f++]=h,u[f++]=g,u[f++]=y}return s.fill(0),pg(a,n)}}}),ef=Yt({blockSize:16,nonceLength:16},function(e,t,n={}){te(e),te(t,16);let o=!n.disablePadding;return{encrypt:(i,s)=>{let a=tn(e),{b:c,o:u,out:f}=dg(i,o,s),l=re(t),h=l[0],g=l[1],y=l[2],d=l[3],p=0;for(;p+4<=c.length;)h^=c[p+0],g^=c[p+1],y^=c[p+2],d^=c[p+3],{s0:h,s1:g,s2:y,s3:d}=mt(a,h,g,y,d),u[p++]=h,u[p++]=g,u[p++]=y,u[p++]=d;if(o){let b=gg(i.subarray(p*4));h^=b[0],g^=b[1],y^=b[2],d^=b[3],{s0:h,s1:g,s2:y,s3:d}=mt(a,h,g,y,d),u[p++]=h,u[p++]=g,u[p++]=y,u[p++]=d}return a.fill(0),f},decrypt:(i,s)=>{hg(i);let a=lg(e),c=re(t),u=Xo(i.length,s),f=re(i),l=re(u),h=c[0],g=c[1],y=c[2],d=c[3];for(let p=0;p+4<=f.length;){let b=h,m=g,x=y,S=d;h=f[p+0],g=f[p+1],y=f[p+2],d=f[p+3];let{s0:I,s1:_,s2:O,s3:w}=fg(a,h,g,y,d);l[p++]=I^b,l[p++]=_^m,l[p++]=O^x,l[p++]=w^S}return a.fill(0),pg(u,o)}}}),RB=Yt({blockSize:16,nonceLength:16},function(e,t){te(e),te(t,16);function n(o,i,s){let a=tn(e),c=o.length;s=Xo(c,s);let u=re(o),f=re(s),l=i?f:u,h=re(t),g=h[0],y=h[1],d=h[2],p=h[3];for(let m=0;m+4<=u.length;){let{s0:x,s1:S,s2:I,s3:_}=mt(a,g,y,d,p);f[m+0]=u[m+0]^x,f[m+1]=u[m+1]^S,f[m+2]=u[m+2]^I,f[m+3]=u[m+3]^_,g=l[m++],y=l[m++],d=l[m++],p=l[m++]}let b=Ze*Math.floor(u.length/Jl);if(b<c){({s0:g,s1:y,s2:d,s3:p}=mt(a,g,y,d,p));let m=Ca(new Uint32Array([g,y,d,p]));for(let x=b,S=0;x<c;x++,S++)s[x]=o[x]^m[S];m.fill(0)}return a.fill(0),s}return{encrypt:(o,i)=>n(o,!0,i),decrypt:(o,i)=>n(o,!1,i)}});function yg(r,e,t,n,o){let i=r.create(t,n.length+((o==null?void 0:o.length)||0));o&&i.update(o),i.update(n);let s=new Uint8Array(16),a=Qr(s);return o&&Kn(a,0,BigInt(o.length*8),e),Kn(a,8,BigInt(n.length*8),e),i.update(s),i.digest()}var LB=Yt({blockSize:16,nonceLength:12,tagLength:16},function(e,t,n){if(te(t),t.length===0)throw new Error("aes/gcm: empty nonce");let o=16;function i(a,c,u){let f=yg(Gl,!1,a,u,n);for(let l=0;l<c.length;l++)f[l]^=c[l];return f}function s(){let a=tn(e),c=Ma.slice(),u=Ma.slice();if(ds(a,!1,u,u,c),t.length===12)u.set(t);else{let l=Ma.slice(),h=Qr(l);Kn(h,8,BigInt(t.length*8),!1),Gl.create(c).update(t).update(l).digestInto(u)}let f=ds(a,!1,u,Ma);return{xk:a,authKey:c,counter:u,tagMask:f}}return{encrypt:a=>{te(a);let{xk:c,authKey:u,counter:f,tagMask:l}=s(),h=new Uint8Array(a.length+o);ds(c,!1,f,a,h);let g=i(u,l,h.subarray(0,h.length-o));return h.set(g,a.length),c.fill(0),h},decrypt:a=>{if(te(a),a.length<o)throw new Error(`aes/gcm: ciphertext less than tagLen (${o})`);let{xk:c,authKey:u,counter:f,tagMask:l}=s(),h=a.subarray(0,-o),g=a.subarray(-o),y=i(u,l,h);if(!zn(y,g))throw new Error("aes/gcm: invalid ghash tag");let d=ds(c,!1,f,h);return u.fill(0),l.fill(0),c.fill(0),d}}}),Ua=(r,e,t)=>n=>{if(!Number.isSafeInteger(n)||e>n||n>t)throw new Error(`${r}: invalid value=${n}, must be [${e}..${t}]`)},PB=Yt({blockSize:16,nonceLength:12,tagLength:16},function(e,t,n){let i=Ua("AAD",0,68719476736),s=Ua("plaintext",0,2**36),a=Ua("nonce",12,12),c=Ua("ciphertext",16,2**36+16);te(t),a(t.length),n&&(te(n),i(n.length));function u(){let h=e.length;if(h!==16&&h!==24&&h!==32)throw new Error(`key length must be 16, 24 or 32 bytes, got: ${h} bytes`);let g=tn(e),y=new Uint8Array(h),d=new Uint8Array(16),p=re(t),b=0,m=p[0],x=p[1],S=p[2],I=0;for(let _ of[d,y].map(re)){let O=re(_);for(let w=0;w<O.length;w+=2){let{s0:E,s1:v}=mt(g,b,m,x,S);O[w+0]=E,O[w+1]=v,b=++I}}return g.fill(0),{authKey:d,encKey:tn(y)}}function f(h,g,y){let d=yg(ag,!0,g,y,n);for(let I=0;I<12;I++)d[I]^=t[I];d[15]&=127;let p=re(d),b=p[0],m=p[1],x=p[2],S=p[3];return{s0:b,s1:m,s2:x,s3:S}=mt(h,b,m,x,S),p[0]=b,p[1]=m,p[2]=x,p[3]=S,d}function l(h,g,y){let d=g.slice();return d[15]|=128,ds(h,!0,d,y)}return{encrypt:h=>{te(h),s(h.length);let{encKey:g,authKey:y}=u(),d=f(g,y,h),p=new Uint8Array(h.length+16);return p.set(d,h.length),p.set(l(g,d,h)),g.fill(0),y.fill(0),p},decrypt:h=>{te(h),c(h.length);let g=h.subarray(-16),{encKey:y,authKey:d}=u(),p=l(y,g,h.subarray(0,-16)),b=f(y,d,p);if(y.fill(0),d.fill(0),!zn(g,b))throw new Error("invalid polyval tag");return p}}});var je=(r,e)=>r[e++]&255|(r[e++]&255)<<8,tf=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=Zt(e),te(e,32);let t=je(e,0),n=je(e,2),o=je(e,4),i=je(e,6),s=je(e,8),a=je(e,10),c=je(e,12),u=je(e,14);this.r[0]=t&8191,this.r[1]=(t>>>13|n<<3)&8191,this.r[2]=(n>>>10|o<<6)&7939,this.r[3]=(o>>>7|i<<9)&8191,this.r[4]=(i>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|u<<8)&8191,this.r[9]=u>>>5&127;for(let f=0;f<8;f++)this.pad[f]=je(e,16+2*f)}process(e,t,n=!1){let o=n?0:2048,{h:i,r:s}=this,a=s[0],c=s[1],u=s[2],f=s[3],l=s[4],h=s[5],g=s[6],y=s[7],d=s[8],p=s[9],b=je(e,t+0),m=je(e,t+2),x=je(e,t+4),S=je(e,t+6),I=je(e,t+8),_=je(e,t+10),O=je(e,t+12),w=je(e,t+14),E=i[0]+(b&8191),v=i[1]+((b>>>13|m<<3)&8191),A=i[2]+((m>>>10|x<<6)&8191),R=i[3]+((x>>>7|S<<9)&8191),L=i[4]+((S>>>4|I<<12)&8191),P=i[5]+(I>>>1&8191),B=i[6]+((I>>>14|_<<2)&8191),T=i[7]+((_>>>11|O<<5)&8191),C=i[8]+((O>>>8|w<<8)&8191),M=i[9]+(w>>>5|o),N=0,W=N+E*a+v*(5*p)+A*(5*d)+R*(5*y)+L*(5*g);N=W>>>13,W&=8191,W+=P*(5*h)+B*(5*l)+T*(5*f)+C*(5*u)+M*(5*c),N+=W>>>13,W&=8191;let D=N+E*c+v*a+A*(5*p)+R*(5*d)+L*(5*y);N=D>>>13,D&=8191,D+=P*(5*g)+B*(5*h)+T*(5*l)+C*(5*f)+M*(5*u),N+=D>>>13,D&=8191;let q=N+E*u+v*c+A*a+R*(5*p)+L*(5*d);N=q>>>13,q&=8191,q+=P*(5*y)+B*(5*g)+T*(5*h)+C*(5*l)+M*(5*f),N+=q>>>13,q&=8191;let K=N+E*f+v*u+A*c+R*a+L*(5*p);N=K>>>13,K&=8191,K+=P*(5*d)+B*(5*y)+T*(5*g)+C*(5*h)+M*(5*l),N+=K>>>13,K&=8191;let X=N+E*l+v*f+A*u+R*c+L*a;N=X>>>13,X&=8191,X+=P*(5*p)+B*(5*d)+T*(5*y)+C*(5*g)+M*(5*h),N+=X>>>13,X&=8191;let oe=N+E*h+v*l+A*f+R*u+L*c;N=oe>>>13,oe&=8191,oe+=P*a+B*(5*p)+T*(5*d)+C*(5*y)+M*(5*g),N+=oe>>>13,oe&=8191;let ne=N+E*g+v*h+A*l+R*f+L*u;N=ne>>>13,ne&=8191,ne+=P*c+B*a+T*(5*p)+C*(5*d)+M*(5*y),N+=ne>>>13,ne&=8191;let ee=N+E*y+v*g+A*h+R*l+L*f;N=ee>>>13,ee&=8191,ee+=P*u+B*c+T*a+C*(5*p)+M*(5*d),N+=ee>>>13,ee&=8191;let pe=N+E*d+v*y+A*g+R*h+L*l;N=pe>>>13,pe&=8191,pe+=P*f+B*u+T*c+C*a+M*(5*p),N+=pe>>>13,pe&=8191;let ce=N+E*p+v*d+A*y+R*g+L*h;N=ce>>>13,ce&=8191,ce+=P*l+B*f+T*u+C*c+M*a,N+=ce>>>13,ce&=8191,N=(N<<2)+N|0,N=N+W|0,W=N&8191,N=N>>>13,D+=N,i[0]=W,i[1]=D,i[2]=q,i[3]=K,i[4]=X,i[5]=oe,i[6]=ne,i[7]=ee,i[8]=pe,i[9]=ce}finalize(){let{h:e,pad:t}=this,n=new Uint16Array(10),o=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=o,o=e[a]>>>13,e[a]&=8191;e[0]+=o*5,o=e[0]>>>13,e[0]&=8191,e[1]+=o,o=e[1]>>>13,e[1]&=8191,e[2]+=o,n[0]=e[0]+5,o=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+o,o=n[a]>>>13,n[a]&=8191;n[9]-=8192;let i=(o^1)-1;for(let a=0;a<10;a++)n[a]&=i;i=~i;for(let a=0;a<10;a++)e[a]=e[a]&i|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+t[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+t[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Xr(this);let{buffer:t,blockLen:n}=this;e=Zt(e);let o=e.length;for(let i=0;i<o;){let s=Math.min(n-this.pos,o-i);if(s===n){for(;n<=o-i;i+=n)this.process(e,i);continue}t.set(e.subarray(i,i+s),this.pos),this.pos+=s,i+=s,this.pos===n&&(this.process(t,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Xr(this),hs(e,this),this.finished=!0;let{buffer:t,h:n}=this,{pos:o}=this;if(o){for(t[o++]=1;o<16;o++)t[o]=0;this.process(t,0,!0)}this.finalize();let i=0;for(let s=0;s<8;s++)e[i++]=n[s]>>>0,e[i++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}};function Rx(r){let e=(n,o)=>r(o).update(Zt(n)).digest(),t=r(new Uint8Array(32));return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=n=>r(n),e}var bg=Rx(r=>new tf(r));var wg=r=>Uint8Array.from(r.split("").map(e=>e.charCodeAt(0))),Lx=wg("expand 16-byte k"),Px=wg("expand 32-byte k"),Cx=re(Lx),vg=re(Px),$B=vg.slice();function V(r,e){return r<<e|r>>>32-e}function rf(r){return r.byteOffset%4===0}var ja=64,Nx=16,Eg=2**32-1,mg=new Uint32Array;function Mx(r,e,t,n,o,i,s,a){let c=o.length,u=new Uint8Array(ja),f=re(u),l=rf(o)&&rf(i),h=l?re(o):mg,g=l?re(i):mg;for(let y=0;y<c;s++){if(r(e,t,n,f,s,a),s>=Eg)throw new Error("arx: counter overflow");let d=Math.min(ja,c-y);if(l&&d===ja){let p=y/4;if(y%4!==0)throw new Error("arx: invalid block position");for(let b=0,m;b<Nx;b++)m=p+b,g[m]=h[m]^f[b];y+=ja;continue}for(let p=0,b;p<d;p++)b=y+p,i[b]=o[b]^u[p];y+=d}}function nf(r,e){let{allowShortKeys:t,extendNonceFn:n,counterLength:o,counterRight:i,rounds:s}=ig({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof r!="function")throw new Error("core must be a function");return Pa(o),Pa(s),Dl(i),Dl(t),(a,c,u,f,l=0)=>{te(a),te(c),te(u);let h=u.length;if(f||(f=new Uint8Array(h)),te(f),Pa(l),l<0||l>=Eg)throw new Error("arx: counter overflow");if(f.length<h)throw new Error(`arx: output (${f.length}) is shorter than data (${h})`);let g=[],y=a.length,d,p;if(y===32)d=a.slice(),g.push(d),p=vg;else if(y===16&&t)d=new Uint8Array(32),d.set(a),d.set(a,16),p=Cx,g.push(d);else throw new Error(`arx: invalid 32-byte key, got length=${y}`);rf(c)||(c=c.slice(),g.push(c));let b=re(d);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(p,b,re(c.subarray(0,16)),b),c=c.subarray(16)}let m=16-o;if(m!==c.length)throw new Error(`arx: nonce must be ${m} or 16 bytes`);if(m!==12){let S=new Uint8Array(12);S.set(c,i?0:12-c.length),c=S,g.push(c)}let x=re(c);for(Mx(r,p,b,x,u,f,l,s);g.length>0;)g.pop().fill(0);return f}}function Ag(r,e,t,n,o,i=20){let s=r[0],a=r[1],c=r[2],u=r[3],f=e[0],l=e[1],h=e[2],g=e[3],y=e[4],d=e[5],p=e[6],b=e[7],m=o,x=t[0],S=t[1],I=t[2],_=s,O=a,w=c,E=u,v=f,A=l,R=h,L=g,P=y,B=d,T=p,C=b,M=m,N=x,W=S,D=I;for(let K=0;K<i;K+=2)_=_+v|0,M=V(M^_,16),P=P+M|0,v=V(v^P,12),_=_+v|0,M=V(M^_,8),P=P+M|0,v=V(v^P,7),O=O+A|0,N=V(N^O,16),B=B+N|0,A=V(A^B,12),O=O+A|0,N=V(N^O,8),B=B+N|0,A=V(A^B,7),w=w+R|0,W=V(W^w,16),T=T+W|0,R=V(R^T,12),w=w+R|0,W=V(W^w,8),T=T+W|0,R=V(R^T,7),E=E+L|0,D=V(D^E,16),C=C+D|0,L=V(L^C,12),E=E+L|0,D=V(D^E,8),C=C+D|0,L=V(L^C,7),_=_+A|0,D=V(D^_,16),T=T+D|0,A=V(A^T,12),_=_+A|0,D=V(D^_,8),T=T+D|0,A=V(A^T,7),O=O+R|0,M=V(M^O,16),C=C+M|0,R=V(R^C,12),O=O+R|0,M=V(M^O,8),C=C+M|0,R=V(R^C,7),w=w+L|0,N=V(N^w,16),P=P+N|0,L=V(L^P,12),w=w+L|0,N=V(N^w,8),P=P+N|0,L=V(L^P,7),E=E+v|0,W=V(W^E,16),B=B+W|0,v=V(v^B,12),E=E+v|0,W=V(W^E,8),B=B+W|0,v=V(v^B,7);let q=0;n[q++]=s+_|0,n[q++]=a+O|0,n[q++]=c+w|0,n[q++]=u+E|0,n[q++]=f+v|0,n[q++]=l+A|0,n[q++]=h+R|0,n[q++]=g+L|0,n[q++]=y+P|0,n[q++]=d+B|0,n[q++]=p+T|0,n[q++]=b+C|0,n[q++]=m+M|0,n[q++]=x+N|0,n[q++]=S+W|0,n[q++]=I+D|0}function Ux(r,e,t,n){let o=r[0],i=r[1],s=r[2],a=r[3],c=e[0],u=e[1],f=e[2],l=e[3],h=e[4],g=e[5],y=e[6],d=e[7],p=t[0],b=t[1],m=t[2],x=t[3];for(let I=0;I<20;I+=2)o=o+c|0,p=V(p^o,16),h=h+p|0,c=V(c^h,12),o=o+c|0,p=V(p^o,8),h=h+p|0,c=V(c^h,7),i=i+u|0,b=V(b^i,16),g=g+b|0,u=V(u^g,12),i=i+u|0,b=V(b^i,8),g=g+b|0,u=V(u^g,7),s=s+f|0,m=V(m^s,16),y=y+m|0,f=V(f^y,12),s=s+f|0,m=V(m^s,8),y=y+m|0,f=V(f^y,7),a=a+l|0,x=V(x^a,16),d=d+x|0,l=V(l^d,12),a=a+l|0,x=V(x^a,8),d=d+x|0,l=V(l^d,7),o=o+u|0,x=V(x^o,16),y=y+x|0,u=V(u^y,12),o=o+u|0,x=V(x^o,8),y=y+x|0,u=V(u^y,7),i=i+f|0,p=V(p^i,16),d=d+p|0,f=V(f^d,12),i=i+f|0,p=V(p^i,8),d=d+p|0,f=V(f^d,7),s=s+l|0,b=V(b^s,16),h=h+b|0,l=V(l^h,12),s=s+l|0,b=V(b^s,8),h=h+b|0,l=V(l^h,7),a=a+c|0,m=V(m^a,16),g=g+m|0,c=V(c^g,12),a=a+c|0,m=V(m^a,8),g=g+m|0,c=V(c^g,7);let S=0;n[S++]=o,n[S++]=i,n[S++]=s,n[S++]=a,n[S++]=p,n[S++]=b,n[S++]=m,n[S++]=x}var qa=nf(Ag,{counterRight:!1,counterLength:4,allowShortKeys:!1}),jx=nf(Ag,{counterRight:!1,counterLength:8,extendNonceFn:Ux,allowShortKeys:!1});var qx=new Uint8Array(16),xg=(r,e)=>{r.update(e);let t=e.length%16;t&&r.update(qx.subarray(t))},$x=new Uint8Array(32);function kg(r,e,t,n,o){let i=r(e,t,$x),s=bg.create(i);o&&xg(s,o),xg(s,n);let a=new Uint8Array(16),c=Qr(a);Kn(c,0,BigInt(o?o.length:0),!0),Kn(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return i.fill(0),u}var _g=r=>(e,t,n)=>(te(e,32),te(t),{encrypt:(i,s)=>{let a=i.length,c=a+16;s?te(s,c):s=new Uint8Array(c),r(e,t,i,s,1);let u=kg(r,e,t,s.subarray(0,-16),n);return s.set(u,a),s},decrypt:(i,s)=>{let a=i.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?te(s,c):s=new Uint8Array(c);let u=i.subarray(0,-16),f=i.subarray(-16),l=kg(r,e,t,u,n);if(!zn(f,l))throw new Error("invalid tag");return r(e,t,u,s,1),s}}),KB=Yt({blockSize:64,nonceLength:12,tagLength:16},_g(qa)),VB=Yt({blockSize:64,nonceLength:24,tagLength:16},_g(jx));var $a=class extends Go{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,nt.hash(e);let n=Vr(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return nt.exists(this),this.iHash.update(e),this}digestInto(e){nt.exists(this),nt.bytes(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return e=e,e.finished=o,e.destroyed=i,e.blockLen=s,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Qo=(r,e,t)=>new $a(r,e).update(t).digest();Qo.create=(r,e)=>new $a(r,e);function Bg(r,e,t){return nt.hash(r),t===void 0&&(t=new Uint8Array(r.outputLen)),Qo(r,Vr(t),Vr(e))}var of=new Uint8Array([0]),Sg=new Uint8Array;function Og(r,e,t,n=32){if(nt.hash(r),nt.number(n),n>255*r.outputLen)throw new Error("Length should be <= 255*HashLen");let o=Math.ceil(n/r.outputLen);t===void 0&&(t=Sg);let i=new Uint8Array(o*r.outputLen),s=Qo.create(r,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<o;u++)of[0]=u+1,a.update(u===0?Sg:c).update(t).update(of).digestInto(c),i.set(c,r.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),of.fill(0),i.slice(0,n)}var Wx=Object.defineProperty,fe=(r,e)=>{for(var t in e)Wx(r,t,{get:e[t],enumerable:!0})},Vn=Symbol("verified"),Hx=r=>r instanceof Object;function af(r){if(!Hx(r)||typeof r.kind!="number"||typeof r.content!="string"||typeof r.created_at!="number"||typeof r.pubkey!="string"||!r.pubkey.match(/^[a-f0-9]{64}$/)||!Array.isArray(r.tags))return!1;for(let e=0;e<r.tags.length;e++){let t=r.tags[e];if(!Array.isArray(t))return!1;for(let n=0;n<t.length;n++)if(typeof t[n]=="object")return!1}return!0}var Fx={};fe(Fx,{Queue:()=>Lg,QueueNode:()=>Rg,binarySearch:()=>cf,insertEventIntoAscendingList:()=>zx,insertEventIntoDescendingList:()=>Dx,normalizeURL:()=>ei,utf8Decoder:()=>yr,utf8Encoder:()=>Tt});var yr=new TextDecoder("utf-8"),Tt=new TextEncoder;function ei(r){r.indexOf("://")===-1&&(r="wss://"+r);let e=new URL(r);return e.pathname=e.pathname.replace(/\/+/g,"/"),e.pathname.endsWith("/")&&(e.pathname=e.pathname.slice(0,-1)),(e.port==="80"&&e.protocol==="ws:"||e.port==="443"&&e.protocol==="wss:")&&(e.port=""),e.searchParams.sort(),e.hash="",e.toString()}function Dx(r,e){let[t,n]=cf(r,o=>e.id===o.id?0:e.created_at===o.created_at?-1:o.created_at-e.created_at);return n||r.splice(t,0,e),r}function zx(r,e){let[t,n]=cf(r,o=>e.id===o.id?0:e.created_at===o.created_at?-1:e.created_at-o.created_at);return n||r.splice(t,0,e),r}function cf(r,e){let t=0,n=r.length-1;for(;t<=n;){let o=Math.floor((t+n)/2),i=e(r[o]);if(i===0)return[o,!0];i<0?n=o-1:t=o+1}return[t,!1]}var Rg=class{constructor(r){Z(this,"value");Z(this,"next",null);Z(this,"prev",null);this.value=r}},Lg=class{constructor(){Z(this,"first");Z(this,"last");this.first=null,this.last=null}enqueue(r){let e=new Rg(r);return this.last?this.last===this.first?(this.last=e,this.last.prev=this.first,this.first.next=e):(e.prev=this.last,this.last.next=e,this.last=e):(this.first=e,this.last=e),!0}dequeue(){if(!this.first)return null;if(this.first===this.last){let e=this.first;return this.first=null,this.last=null,e.value}let r=this.first;return this.first=r.next,r.value}},Kx=class{generateSecretKey(){return Vo.utils.randomPrivateKey()}getPublicKey(r){return ke(Vo.getPublicKey(r))}finalizeEvent(r,e){let t=r;return t.pubkey=ke(Vo.getPublicKey(e)),t.id=Wa(t),t.sig=ke(Vo.sign(Wa(t),e)),t[Vn]=!0,t}verifyEvent(r){if(typeof r[Vn]=="boolean")return r[Vn];let e=Wa(r);if(e!==r.id)return r[Vn]=!1,!1;try{let t=Vo.verify(r.sig,e,r.pubkey);return r[Vn]=t,t}catch(t){return r[Vn]=!1,!1}}};function Vx(r){if(!af(r))throw new Error("can't serialize event with wrong or missing properties");return JSON.stringify([0,r.pubkey,r.created_at,r.kind,r.tags,r.content])}function Wa(r){let e=Gt(Tt.encode(Vx(r)));return ke(e)}var Fa=new Kx,Gx=Fa.generateSecretKey,uf=Fa.getPublicKey,Qt=Fa.finalizeEvent,Da=Fa.verifyEvent,Zx={};fe(Zx,{Application:()=>Z3,BadgeAward:()=>o3,BadgeDefinition:()=>H3,BlockedRelaysList:()=>S3,BookmarkList:()=>k3,Bookmarksets:()=>q3,Calendar:()=>rk,CalendarEventRSVP:()=>nk,ChannelCreation:()=>jg,ChannelHideMessage:()=>Wg,ChannelMessage:()=>$g,ChannelMetadata:()=>qg,ChannelMuteUser:()=>Hg,ClassifiedListing:()=>X3,ClientAuth:()=>Dg,CommunitiesList:()=>A3,CommunityDefinition:()=>sk,CommunityPostApproval:()=>h3,Contacts:()=>t3,CreateOrUpdateProduct:()=>z3,CreateOrUpdateStall:()=>D3,Curationsets:()=>$3,Date:()=>ek,DirectMessageRelaysList:()=>T3,DraftClassifiedListing:()=>Q3,DraftLong:()=>V3,Emojisets:()=>G3,EncryptedDirectMessage:()=>r3,EventDeletion:()=>n3,FileMetadata:()=>s3,FileServerPreference:()=>R3,Followsets:()=>M3,GenericRepost:()=>df,Genericlists:()=>U3,GiftWrap:()=>Fg,HTTPAuth:()=>pf,Handlerinformation:()=>ik,Handlerrecommendation:()=>ok,Highlights:()=>w3,InterestsList:()=>O3,Interestsets:()=>F3,JobFeedback:()=>g3,JobRequest:()=>d3,JobResult:()=>p3,Label:()=>f3,LightningPubRPC:()=>P3,LiveChatMessage:()=>a3,LiveEvent:()=>Y3,LongFormArticle:()=>K3,Metadata:()=>Qx,Mutelist:()=>v3,NWCWalletInfo:()=>L3,NWCWalletRequest:()=>zg,NWCWalletResponse:()=>C3,NostrConnect:()=>N3,OpenTimestamps:()=>i3,Pinlist:()=>E3,PrivateDirectMessage:()=>Ug,ProblemTracker:()=>c3,ProfileBadges:()=>W3,PublicChatsList:()=>_3,Reaction:()=>hf,RecommendRelay:()=>e3,RelayList:()=>x3,Relaysets:()=>j3,Report:()=>u3,Reporting:()=>l3,Repost:()=>ff,Seal:()=>Mg,SearchRelaysList:()=>B3,ShortTextNote:()=>Ng,Time:()=>tk,UserEmojiList:()=>I3,UserStatuses:()=>J3,Zap:()=>m3,ZapGoal:()=>y3,ZapRequest:()=>b3,classifyKind:()=>Jx,isAddressableKind:()=>za,isEphemeralKind:()=>Cg,isKind:()=>Xx,isParameterizedReplaceableKind:()=>Yx,isRegularKind:()=>Pg,isReplaceableKind:()=>lf});function Pg(r){return 1e3<=r&&r<1e4||[1,2,4,5,6,7,8,16,40,41,42,43,44].includes(r)}function lf(r){return[0,3].includes(r)||1e4<=r&&r<2e4}function Cg(r){return 2e4<=r&&r<3e4}function za(r){return 3e4<=r&&r<4e4}var Yx=za;function Jx(r){return Pg(r)?"regular":lf(r)?"replaceable":Cg(r)?"ephemeral":za(r)?"parameterized":"unknown"}function Xx(r,e){let t=e instanceof Array?e:[e];return af(r)&&t.includes(r.kind)||!1}var Qx=0,Ng=1,e3=2,t3=3,r3=4,n3=5,ff=6,hf=7,o3=8,Mg=13,Ug=14,df=16,jg=40,qg=41,$g=42,Wg=43,Hg=44,i3=1040,Fg=1059,s3=1063,a3=1311,c3=1971,u3=1984,l3=1984,f3=1985,h3=4550,d3=5999,p3=6999,g3=7e3,y3=9041,b3=9734,m3=9735,w3=9802,v3=1e4,E3=10001,x3=10002,k3=10003,A3=10004,_3=10005,S3=10006,B3=10007,O3=10015,I3=10030,T3=10050,R3=10096,L3=13194,P3=21e3,Dg=22242,zg=23194,C3=23195,N3=24133,pf=27235,M3=3e4,U3=30001,j3=30002,q3=30003,$3=30004,W3=30008,H3=30009,F3=30015,D3=30017,z3=30018,K3=30023,V3=30024,G3=30030,Z3=30078,Y3=30311,J3=30315,X3=30402,Q3=30403,ek=31922,tk=31923,rk=31924,nk=31925,ok=31989,ik=31990,sk=34550;function ak(r,e){if(r.ids&&r.ids.indexOf(e.id)===-1||r.kinds&&r.kinds.indexOf(e.kind)===-1||r.authors&&r.authors.indexOf(e.pubkey)===-1)return!1;for(let t in r)if(t[0]==="#"){let n=t.slice(1),o=r[`#${n}`];if(o&&!e.tags.find(([i,s])=>i===t.slice(1)&&o.indexOf(s)!==-1))return!1}return!(r.since&&e.created_at<r.since||r.until&&e.created_at>r.until)}function ck(r,e){for(let t=0;t<r.length;t++)if(ak(r[t],e))return!0;return!1}var uk={};fe(uk,{getHex64:()=>Ka,getInt:()=>Kg,getSubscriptionId:()=>Vg,matchEventId:()=>lk,matchEventKind:()=>hk,matchEventPubkey:()=>fk});function Ka(r,e){let t=e.length+3,n=r.indexOf(`"${e}":`)+t,o=r.slice(n).indexOf('"')+n+1;return r.slice(o,o+64)}function Kg(r,e){let t=e.length,n=r.indexOf(`"${e}":`)+t+3,o=r.slice(n),i=Math.min(o.indexOf(","),o.indexOf("}"));return parseInt(o.slice(0,i),10)}function Vg(r){let e=r.slice(0,22).indexOf('"EVENT"');if(e===-1)return null;let t=r.slice(e+7+1).indexOf('"');if(t===-1)return null;let n=e+7+1+t,o=r.slice(n+1,80).indexOf('"');if(o===-1)return null;let i=n+1+o;return r.slice(n+1,i)}function lk(r,e){return e===Ka(r,"id")}function fk(r,e){return e===Ka(r,"pubkey")}function hk(r,e){return e===Kg(r,"kind")}var dk={};fe(dk,{makeAuthEvent:()=>Gg});function Gg(r,e){return{kind:Dg,created_at:Math.floor(Date.now()/1e3),tags:[["relay",r],["challenge",e]],content:""}}async function pk(){return new Promise(r=>{let e=new MessageChannel,t=()=>{e.port1.removeEventListener("message",t),r()};e.port1.addEventListener("message",t),e.port2.postMessage(0),e.port1.start()})}var gk=r=>(r[Vn]=!0,!0),Zg=class{constructor(r,e){Z(this,"url");Z(this,"_connected",!1);Z(this,"onclose",null);Z(this,"onnotice",r=>console.debug(`NOTICE from ${this.url}: ${r}`));Z(this,"_onauth",null);Z(this,"baseEoseTimeout",4400);Z(this,"connectionTimeout",4400);Z(this,"publishTimeout",4400);Z(this,"openSubs",new Map);Z(this,"connectionTimeoutHandle");Z(this,"connectionPromise");Z(this,"openCountRequests",new Map);Z(this,"openEventPublishes",new Map);Z(this,"ws");Z(this,"incomingMessageQueue",new Lg);Z(this,"queueRunning",!1);Z(this,"challenge");Z(this,"serial",0);Z(this,"verifyEvent");Z(this,"_WebSocket");this.url=ei(r),this.verifyEvent=e.verifyEvent,this._WebSocket=e.websocketImplementation||WebSocket}static async connect(r,e){let t=new Zg(r,e);return await t.connect(),t}closeAllSubscriptions(r){for(let[e,t]of this.openSubs)t.close(r);this.openSubs.clear();for(let[e,t]of this.openEventPublishes)t.reject(new Error(r));this.openEventPublishes.clear();for(let[e,t]of this.openCountRequests)t.reject(new Error(r));this.openCountRequests.clear()}get connected(){return this._connected}async connect(){return this.connectionPromise?this.connectionPromise:(this.challenge=void 0,this.connectionPromise=new Promise((r,e)=>{this.connectionTimeoutHandle=setTimeout(()=>{var t;e("connection timed out"),this.connectionPromise=void 0,(t=this.onclose)==null||t.call(this),this.closeAllSubscriptions("relay connection timed out")},this.connectionTimeout);try{this.ws=new this._WebSocket(this.url)}catch(t){e(t);return}this.ws.onopen=()=>{clearTimeout(this.connectionTimeoutHandle),this._connected=!0,r()},this.ws.onerror=t=>{var n;e(t.message||"websocket error"),this._connected&&(this._connected=!1,this.connectionPromise=void 0,(n=this.onclose)==null||n.call(this),this.closeAllSubscriptions("relay connection errored"))},this.ws.onclose=async()=>{var t;this._connected&&(this._connected=!1,this.connectionPromise=void 0,(t=this.onclose)==null||t.call(this),this.closeAllSubscriptions("relay connection closed"))},this.ws.onmessage=this._onmessage.bind(this)}),this.connectionPromise)}async runQueue(){for(this.queueRunning=!0;this.handleNext()!==!1;)await pk();this.queueRunning=!1}handleNext(){var t,n,o;let r=this.incomingMessageQueue.dequeue();if(!r)return!1;let e=Vg(r);if(e){let i=this.openSubs.get(e);if(!i)return;let s=Ka(r,"id"),a=(t=i.alreadyHaveEvent)==null?void 0:t.call(i,s);if((n=i.receivedEvent)==null||n.call(i,this,s),a)return}try{let i=JSON.parse(r);switch(i[0]){case"EVENT":{let s=this.openSubs.get(i[1]),a=i[2];this.verifyEvent(a)&&ck(s.filters,a)&&s.onevent(a);return}case"COUNT":{let s=i[1],a=i[2],c=this.openCountRequests.get(s);c&&(c.resolve(a.count),this.openCountRequests.delete(s));return}case"EOSE":{let s=this.openSubs.get(i[1]);if(!s)return;s.receivedEose();return}case"OK":{let s=i[1],a=i[2],c=i[3],u=this.openEventPublishes.get(s);u&&(clearTimeout(u.timeout),a?u.resolve(c):u.reject(new Error(c)),this.openEventPublishes.delete(s));return}case"CLOSED":{let s=i[1],a=this.openSubs.get(s);if(!a)return;a.closed=!0,a.close(i[2]);return}case"NOTICE":this.onnotice(i[1]);return;case"AUTH":{this.challenge=i[1],(o=this._onauth)==null||o.call(this,i[1]);return}}}catch(i){return}}async send(r){if(!this.connectionPromise)throw new Error("sending on closed connection");this.connectionPromise.then(()=>{var e;(e=this.ws)==null||e.send(r)})}async auth(r){if(!this.challenge)throw new Error("can't perform auth, no challenge was received");let e=await r(Gg(this.url,this.challenge)),t=new Promise((n,o)=>{let i=setTimeout(()=>{let s=this.openEventPublishes.get(e.id);s&&(s.reject(new Error("auth timed out")),this.openEventPublishes.delete(e.id))},this.publishTimeout);this.openEventPublishes.set(e.id,{resolve:n,reject:o,timeout:i})});return this.send('["AUTH",'+JSON.stringify(e)+"]"),t}async publish(r){let e=new Promise((t,n)=>{let o=setTimeout(()=>{let i=this.openEventPublishes.get(r.id);i&&(i.reject(new Error("publish timed out")),this.openEventPublishes.delete(r.id))},this.publishTimeout);this.openEventPublishes.set(r.id,{resolve:t,reject:n,timeout:o})});return this.send('["EVENT",'+JSON.stringify(r)+"]"),e}async count(r,e){this.serial++;let t=(e==null?void 0:e.id)||"count:"+this.serial,n=new Promise((o,i)=>{this.openCountRequests.set(t,{resolve:o,reject:i})});return this.send('["COUNT","'+t+'",'+JSON.stringify(r).substring(1)),n}subscribe(r,e){let t=this.prepareSubscription(r,e);return t.fire(),t}prepareSubscription(r,e){this.serial++;let t=e.id||(e.label?e.label+":":"sub:")+this.serial,n=new yk(this,t,r,e);return this.openSubs.set(t,n),n}close(){var r;this.closeAllSubscriptions("relay connection closed by us"),this._connected=!1,(r=this.ws)==null||r.close()}_onmessage(r){this.incomingMessageQueue.enqueue(r.data),this.queueRunning||this.runQueue()}},yk=class{constructor(r,e,t,n){Z(this,"relay");Z(this,"id");Z(this,"closed",!1);Z(this,"eosed",!1);Z(this,"filters");Z(this,"alreadyHaveEvent");Z(this,"receivedEvent");Z(this,"onevent");Z(this,"oneose");Z(this,"onclose");Z(this,"eoseTimeout");Z(this,"eoseTimeoutHandle");this.relay=r,this.filters=t,this.id=e,this.alreadyHaveEvent=n.alreadyHaveEvent,this.receivedEvent=n.receivedEvent,this.eoseTimeout=n.eoseTimeout||r.baseEoseTimeout,this.oneose=n.oneose,this.onclose=n.onclose,this.onevent=n.onevent||(o=>{console.warn(`onevent() callback not defined for subscription '${this.id}' in relay ${this.relay.url}. event received:`,o)})}fire(){this.relay.send('["REQ","'+this.id+'",'+JSON.stringify(this.filters).substring(1)),this.eoseTimeoutHandle=setTimeout(this.receivedEose.bind(this),this.eoseTimeout)}receivedEose(){var r;this.eosed||(clearTimeout(this.eoseTimeoutHandle),this.eosed=!0,(r=this.oneose)==null||r.call(this))}close(r="closed by caller"){var e;!this.closed&&this.relay.connected&&(this.relay.send('["CLOSE",'+JSON.stringify(this.id)+"]"),this.closed=!0),this.relay.openSubs.delete(this.id),(e=this.onclose)==null||e.call(this,r)}},bk;try{bk=WebSocket}catch(r){}var mk=class{constructor(r){Z(this,"relays",new Map);Z(this,"seenOn",new Map);Z(this,"trackRelays",!1);Z(this,"verifyEvent");Z(this,"trustedRelayURLs",new Set);Z(this,"_WebSocket");this.verifyEvent=r.verifyEvent,this._WebSocket=r.websocketImplementation}async ensureRelay(r,e){r=ei(r);let t=this.relays.get(r);return t||(t=new Zg(r,{verifyEvent:this.trustedRelayURLs.has(r)?gk:this.verifyEvent,websocketImplementation:this._WebSocket}),e!=null&&e.connectionTimeout&&(t.connectionTimeout=e.connectionTimeout),this.relays.set(r,t)),await t.connect(),t}close(r){r.map(ei).forEach(e=>{var t;(t=this.relays.get(e))==null||t.close()})}subscribeMany(r,e,t){return this.subscribeManyMap(Object.fromEntries(r.map(n=>[n,e])),t)}subscribeManyMap(r,e){this.trackRelays&&(e.receivedEvent=(l,h)=>{let g=this.seenOn.get(h);g||(g=new Set,this.seenOn.set(h,g)),g.add(l)});let t=new Set,n=[],o=Object.keys(r).length,i=[],s=l=>{var h;i[l]||(i[l]=!0,i.filter(g=>g).length===o&&((h=e.oneose)==null||h.call(e),s=()=>{}))},a=[],c=(l,h)=>{var g;a[l]||(s(l),a[l]=h,a.filter(y=>y).length===o&&((g=e.onclose)==null||g.call(e,a),c=()=>{}))},u=l=>{var g;if((g=e.alreadyHaveEvent)!=null&&g.call(e,l))return!0;let h=t.has(l);return t.add(l),h},f=Promise.all(Object.entries(r).map(async(l,h,g)=>{if(g.indexOf(l)!==h){c(h,"duplicate url");return}let[y,d]=l;y=ei(y);let p;try{p=await this.ensureRelay(y,{connectionTimeout:e.maxWait?Math.max(e.maxWait*.8,e.maxWait-1e3):void 0})}catch(m){c(h,(m==null?void 0:m.message)||String(m));return}let b=p.subscribe(d,J(z({},e),{oneose:()=>s(h),onclose:m=>c(h,m),alreadyHaveEvent:u,eoseTimeout:e.maxWait}));n.push(b)}));return{async close(){await f,n.forEach(l=>{l.close()})}}}subscribeManyEose(r,e,t){let n=this.subscribeMany(r,e,J(z({},t),{oneose(){n.close()}}));return n}async querySync(r,e,t){return new Promise(async n=>{let o=[];this.subscribeManyEose(r,[e],J(z({},t),{onevent(i){o.push(i)},onclose(i){n(o)}}))})}async get(r,e,t){e.limit=1;let n=await this.querySync(r,e,t);return n.sort((o,i)=>i.created_at-o.created_at),n[0]||null}publish(r,e){return r.map(ei).map(async(t,n,o)=>{if(o.indexOf(t)!==n)return Promise.reject("duplicate url");let i=await this.ensureRelay(t);return i.publish(e).then(s=>{if(this.trackRelays){let a=this.seenOn.get(e.id);a||(a=new Set,this.seenOn.set(e.id,a)),a.add(i)}return s})})}listConnectionStatus(){let r=new Map;return this.relays.forEach((e,t)=>r.set(t,e.connected)),r}destroy(){this.relays.forEach(r=>r.close()),this.relays=new Map}},Yg;try{Yg=WebSocket}catch(r){}var gf=class extends mk{constructor(){super({verifyEvent:Da,websocketImplementation:Yg})}},wk={};fe(wk,{BECH32_REGEX:()=>Jg,Bech32MaxSize:()=>yf,NostrTypeGuard:()=>vk,decode:()=>Va,decodeNostrURI:()=>xk,encodeBytes:()=>Za,naddrEncode:()=>Ok,neventEncode:()=>Bk,noteEncode:()=>_k,nprofileEncode:()=>Sk,npubEncode:()=>Ak,nsecEncode:()=>kk});var vk={isNProfile:r=>/^nprofile1[a-z\d]+$/.test(r||""),isNEvent:r=>/^nevent1[a-z\d]+$/.test(r||""),isNAddr:r=>/^naddr1[a-z\d]+$/.test(r||""),isNSec:r=>/^nsec1[a-z\d]{58}$/.test(r||""),isNPub:r=>/^npub1[a-z\d]{58}$/.test(r||""),isNote:r=>/^note1[a-z\d]+$/.test(r||""),isNcryptsec:r=>/^ncryptsec1[a-z\d]+$/.test(r||"")},yf=5e3,Jg=/[\x21-\x7E]{1,83}1[023456789acdefghjklmnpqrstuvwxyz]{6,}/;function Ek(r){let e=new Uint8Array(4);return e[0]=r>>24&255,e[1]=r>>16&255,e[2]=r>>8&255,e[3]=r&255,e}function xk(r){try{return r.startsWith("nostr:")&&(r=r.substring(6)),Va(r)}catch(e){return{type:"invalid",data:null}}}function Va(r){var o,i,s,a,c,u,f;let{prefix:e,words:t}=Jr.decode(r,yf),n=new Uint8Array(Jr.fromWords(t));switch(e){case"nprofile":{let l=sf(n);if(!((o=l[0])!=null&&o[0]))throw new Error("missing TLV 0 for nprofile");if(l[0][0].length!==32)throw new Error("TLV 0 should be 32 bytes");return{type:"nprofile",data:{pubkey:ke(l[0][0]),relays:l[1]?l[1].map(h=>yr.decode(h)):[]}}}case"nevent":{let l=sf(n);if(!((i=l[0])!=null&&i[0]))throw new Error("missing TLV 0 for nevent");if(l[0][0].length!==32)throw new Error("TLV 0 should be 32 bytes");if(l[2]&&l[2][0].length!==32)throw new Error("TLV 2 should be 32 bytes");if(l[3]&&l[3][0].length!==4)throw new Error("TLV 3 should be 4 bytes");return{type:"nevent",data:{id:ke(l[0][0]),relays:l[1]?l[1].map(h=>yr.decode(h)):[],author:(s=l[2])!=null&&s[0]?ke(l[2][0]):void 0,kind:(a=l[3])!=null&&a[0]?parseInt(ke(l[3][0]),16):void 0}}}case"naddr":{let l=sf(n);if(!((c=l[0])!=null&&c[0]))throw new Error("missing TLV 0 for naddr");if(!((u=l[2])!=null&&u[0]))throw new Error("missing TLV 2 for naddr");if(l[2][0].length!==32)throw new Error("TLV 2 should be 32 bytes");if(!((f=l[3])!=null&&f[0]))throw new Error("missing TLV 3 for naddr");if(l[3][0].length!==4)throw new Error("TLV 3 should be 4 bytes");return{type:"naddr",data:{identifier:yr.decode(l[0][0]),pubkey:ke(l[2][0]),kind:parseInt(ke(l[3][0]),16),relays:l[1]?l[1].map(h=>yr.decode(h)):[]}}}case"nsec":return{type:e,data:n};case"npub":case"note":return{type:e,data:ke(n)};default:throw new Error(`unknown prefix ${e}`)}}function sf(r){let e={},t=r;for(;t.length>0;){let n=t[0],o=t[1],i=t.slice(2,2+o);if(t=t.slice(2+o),i.length<o)throw new Error(`not enough data to read on TLV ${n}`);e[n]=e[n]||[],e[n].push(i)}return e}function kk(r){return Za("nsec",r)}function Ak(r){return Za("npub",Dn(r))}function _k(r){return Za("note",Dn(r))}function Ga(r,e){let t=Jr.toWords(e);return Jr.encode(r,t,yf)}function Za(r,e){return Ga(r,e)}function Sk(r){let e=bf({0:[Dn(r.pubkey)],1:(r.relays||[]).map(t=>Tt.encode(t))});return Ga("nprofile",e)}function Bk(r){let e;r.kind!==void 0&&(e=Ek(r.kind));let t=bf({0:[Dn(r.id)],1:(r.relays||[]).map(n=>Tt.encode(n)),2:r.author?[Dn(r.author)]:[],3:e?[new Uint8Array(e)]:[]});return Ga("nevent",t)}function Ok(r){let e=new ArrayBuffer(4);new DataView(e).setUint32(0,r.kind,!1);let t=bf({0:[Tt.encode(r.identifier)],1:(r.relays||[]).map(n=>Tt.encode(n)),2:[Dn(r.pubkey)],3:[new Uint8Array(e)]});return Ga("naddr",t)}function bf(r){let e=[];return Object.entries(r).reverse().forEach(([t,n])=>{n.forEach(o=>{let i=new Uint8Array(o.length+2);i.set([parseInt(t)],0),i.set([o.length],1),i.set(o,2),e.push(i)})}),Zo(...e)}var Ik={};fe(Ik,{decrypt:()=>Tk,encrypt:()=>Xg});async function Xg(r,e,t){let n=r instanceof Uint8Array?ke(r):r,o=Kr.getSharedSecret(n,"02"+e),i=Qg(o),s=Uint8Array.from(Oa(16)),a=Tt.encode(t),c=ef(i,s).encrypt(a),u=yt.encode(new Uint8Array(c)),f=yt.encode(new Uint8Array(s.buffer));return`${u}?iv=${f}`}async function Tk(r,e,t){let n=r instanceof Uint8Array?ke(r):r,[o,i]=t.split("?iv="),s=Kr.getSharedSecret(n,"02"+e),a=Qg(s),c=yt.decode(i),u=yt.decode(o),f=ef(a,c).decrypt(u);return yr.decode(f)}function Qg(r){return r.slice(1,33)}var Rk={};fe(Rk,{NIP05_REGEX:()=>mf,isNip05:()=>Lk,isValid:()=>Nk,queryProfile:()=>ey,searchDomain:()=>Ck,useFetchImplementation:()=>Pk});var mf=/^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/,Lk=r=>mf.test(r||""),Ya;try{Ya=fetch}catch(r){}function Pk(r){Ya=r}async function Ck(r,e=""){try{let t=`https://${r}/.well-known/nostr.json?name=${e}`,n=await Ya(t,{redirect:"manual"});if(n.status!==200)throw Error("Wrong response code");return(await n.json()).names}catch(t){return{}}}async function ey(r){var o;let e=r.match(mf);if(!e)return null;let[,t="_",n]=e;try{let i=`https://${n}/.well-known/nostr.json?name=${t}`,s=await Ya(i,{redirect:"manual"});if(s.status!==200)throw Error("Wrong response code");let a=await s.json(),c=a.names[t];return c?{pubkey:c,relays:(o=a.relays)==null?void 0:o[c]}:null}catch(i){return null}}async function Nk(r,e){let t=await ey(e);return t?t.pubkey===r:!1}var Mk={};fe(Mk,{parse:()=>Uk});function Uk(r){let e={reply:void 0,root:void 0,mentions:[],profiles:[],quotes:[]},t,n;for(let o=r.tags.length-1;o>=0;o--){let i=r.tags[o];if(i[0]==="e"&&i[1]){let[s,a,c,u,f]=i,l={id:a,relays:c?[c]:[],author:f};if(u==="root"){e.root=l;continue}if(u==="reply"){e.reply=l;continue}if(u==="mention"){e.mentions.push(l);continue}t?n=l:t=l,e.mentions.push(l);continue}if(i[0]==="q"&&i[1]){let[s,a,c]=i;e.quotes.push({id:a,relays:c?[c]:[]})}if(i[0]==="p"&&i[1]){e.profiles.push({pubkey:i[1],relays:i[2]?[i[2]]:[]});continue}}return e.root||(e.root=n||t||e.reply),e.reply||(e.reply=t||e.root),[e.reply,e.root].forEach(o=>{if(!o)return;let i=e.mentions.indexOf(o);if(i!==-1&&e.mentions.splice(i,1),o.author){let s=e.profiles.find(a=>a.pubkey===o.author);s&&s.relays&&(o.relays||(o.relays=[]),s.relays.forEach(a=>{var c;((c=o.relays)==null?void 0:c.indexOf(a))===-1&&o.relays.push(a)}),s.relays=o.relays)}}),e.mentions.forEach(o=>{if(o.author){let i=e.profiles.find(s=>s.pubkey===o.author);i&&i.relays&&(o.relays||(o.relays=[]),i.relays.forEach(s=>{o.relays.indexOf(s)===-1&&o.relays.push(s)}),i.relays=o.relays)}}),e}var jk={};fe(jk,{fetchRelayInformation:()=>$k,useFetchImplementation:()=>qk});var ty;try{ty=fetch}catch(r){}function qk(r){ty=r}async function $k(r){return await(await fetch(r.replace("ws://","http://").replace("wss://","https://"),{headers:{Accept:"application/nostr+json"}})).json()}var Wk={};fe(Wk,{fastEventHash:()=>ny,getPow:()=>ry,minePow:()=>Hk});function ry(r){let e=0;for(let t=0;t<64;t+=8){let n=parseInt(r.substring(t,t+8),16);if(n===0)e+=32;else{e+=Math.clz32(n);break}}return e}function Hk(r,e){let t=0,n=r,o=["nonce",t.toString(),e.toString()];for(n.tags.push(o);;){let i=Math.floor(new Date().getTime()/1e3);if(i!==n.created_at&&(t=0,n.created_at=i),o[1]=(++t).toString(),n.id=ny(n),ry(n.id)>=e)break}return n}function ny(r){return ke(Gt(Tt.encode(JSON.stringify([0,r.pubkey,r.created_at,r.kind,r.tags,r.content]))))}var Fk={};fe(Fk,{unwrapEvent:()=>t8,unwrapManyEvents:()=>r8,wrapEvent:()=>yy,wrapManyEvents:()=>e8});var Dk={};fe(Dk,{createRumor:()=>hy,createSeal:()=>dy,createWrap:()=>py,unwrapEvent:()=>kf,unwrapManyEvents:()=>gy,wrapEvent:()=>Ha,wrapManyEvents:()=>Xk});var zk={};fe(zk,{decrypt:()=>xf,encrypt:()=>Ef,getConversationKey:()=>wf,v2:()=>Yk});var oy=1,iy=65535;function wf(r,e){let t=Kr.getSharedSecret(r,"02"+e).subarray(1,33);return Bg(Gt,t,"nip44-v2")}function sy(r,e){let t=Og(Gt,r,e,76);return{chacha_key:t.subarray(0,32),chacha_nonce:t.subarray(32,44),hmac_key:t.subarray(44,76)}}function vf(r){if(!Number.isSafeInteger(r)||r<1)throw new Error("expected positive integer");if(r<=32)return 32;let e=1<<Math.floor(Math.log2(r-1))+1,t=e<=256?32:e/8;return t*(Math.floor((r-1)/t)+1)}function Kk(r){if(!Number.isSafeInteger(r)||r<oy||r>iy)throw new Error("invalid plaintext size: must be between 1 and 65535 bytes");let e=new Uint8Array(2);return new DataView(e.buffer).setUint16(0,r,!1),e}function Vk(r){let e=Tt.encode(r),t=e.length,n=Kk(t),o=new Uint8Array(vf(t)-t);return Zo(n,e,o)}function Gk(r){let e=new DataView(r.buffer).getUint16(0),t=r.subarray(2,2+e);if(e<oy||e>iy||t.length!==e||r.length!==2+vf(e))throw new Error("invalid padding");return yr.decode(t)}function ay(r,e,t){if(t.length!==32)throw new Error("AAD associated data must be 32 bytes");let n=Zo(t,e);return Qo(Gt,r,n)}function Zk(r){if(typeof r!="string")throw new Error("payload must be a valid string");let e=r.length;if(e<132||e>87472)throw new Error("invalid payload length: "+e);if(r[0]==="#")throw new Error("unknown encryption version");let t;try{t=yt.decode(r)}catch(i){throw new Error("invalid base64: "+i.message)}let n=t.length;if(n<99||n>65603)throw new Error("invalid data length: "+n);let o=t[0];if(o!==2)throw new Error("unknown encryption version "+o);return{nonce:t.subarray(1,33),ciphertext:t.subarray(33,-32),mac:t.subarray(-32)}}function Ef(r,e,t=Oa(32)){let{chacha_key:n,chacha_nonce:o,hmac_key:i}=sy(e,t),s=Vk(r),a=qa(n,o,s),c=ay(i,a,t);return yt.encode(Zo(new Uint8Array([2]),t,a,c))}function xf(r,e){let{nonce:t,ciphertext:n,mac:o}=Zk(r),{chacha_key:i,chacha_nonce:s,hmac_key:a}=sy(e,t),c=ay(a,n,t);if(!zn(c,o))throw new Error("invalid MAC");let u=qa(i,s,n);return Gk(u)}var Yk={utils:{getConversationKey:wf,calcPaddedLen:vf},encrypt:Ef,decrypt:xf},Jk=2880*60,cy=()=>Math.round(Date.now()/1e3),uy=()=>Math.round(cy()-Math.random()*Jk),ly=(r,e)=>wf(r,e),fy=(r,e,t)=>Ef(JSON.stringify(r),ly(e,t)),Ig=(r,e)=>JSON.parse(xf(r.content,ly(e,r.pubkey)));function hy(r,e){let t=J(z({created_at:cy(),content:"",tags:[]},r),{pubkey:uf(e)});return t.id=Wa(t),t}function dy(r,e,t){return Qt({kind:Mg,content:fy(r,e,t),created_at:uy(),tags:[]},e)}function py(r,e){let t=Gx();return Qt({kind:Fg,content:fy(r,t,e),created_at:uy(),tags:[["p",e]]},t)}function Ha(r,e,t){let n=hy(r,e),o=dy(n,e,t);return py(o,t)}function Xk(r,e,t){if(!t||t.length===0)throw new Error("At least one recipient is required.");let n=uf(e),o=[Ha(r,e,n)];return t.forEach(i=>{o.push(Ha(r,e,i))}),o}function kf(r,e){let t=Ig(r,e);return Ig(t,e)}function gy(r,e){let t=[];return r.forEach(n=>{t.push(kf(n,e))}),t.sort((n,o)=>n.created_at-o.created_at),t}function Qk(r,e,t,n){let o={created_at:Math.ceil(Date.now()/1e3),kind:Ug,tags:[],content:e};return(Array.isArray(r)?r:[r]).forEach(({publicKey:s,relayUrl:a})=>{o.tags.push(a?["p",s,a]:["p",s])}),n&&o.tags.push(["e",n.eventId,n.relayUrl||"","reply"]),t&&o.tags.push(["subject",t]),o}function yy(r,e,t,n,o){let i=Qk(e,t,n,o);return Ha(i,r,e.publicKey)}function e8(r,e,t,n,o){if(!e||e.length===0)throw new Error("At least one recipient is required.");return[{publicKey:uf(r)},...e].map(s=>yy(r,s,t,n,o))}var t8=kf,r8=gy,n8={};fe(n8,{finishRepostEvent:()=>o8,getRepostedEvent:()=>i8,getRepostedEventPointer:()=>by});function o8(r,e,t,n){var s,a;let o,i=[...(s=r.tags)!=null?s:[],["e",e.id,t],["p",e.pubkey]];return e.kind===Ng?o=ff:(o=df,i.push(["k",String(e.kind)])),Qt({kind:o,tags:i,content:r.content===""||(a=e.tags)!=null&&a.find(c=>c[0]==="-")?"":JSON.stringify(e),created_at:r.created_at},n)}function by(r){if(![ff,df].includes(r.kind))return;let e,t;for(let n=r.tags.length-1;n>=0&&(e===void 0||t===void 0);n--){let o=r.tags[n];o.length>=2&&(o[0]==="e"&&e===void 0?e=o:o[0]==="p"&&t===void 0&&(t=o))}if(e!==void 0)return{id:e[1],relays:[e[2],t==null?void 0:t[2]].filter(n=>typeof n=="string"),author:t==null?void 0:t[1]}}function i8(r,{skipVerification:e}={}){let t=by(r);if(t===void 0||r.content==="")return;let n;try{n=JSON.parse(r.content)}catch(o){return}if(n.id===t.id&&!(!e&&!Da(n)))return n}var s8={};fe(s8,{NOSTR_URI_REGEX:()=>Af,parse:()=>c8,test:()=>a8});var Af=new RegExp(`nostr:(${Jg.source})`);function a8(r){return typeof r=="string"&&new RegExp(`^${Af.source}$`).test(r)}function c8(r){let e=r.match(new RegExp(`^${Af.source}$`));if(!e)throw new Error(`Invalid Nostr URI: ${r}`);return{uri:e[0],value:e[1],decoded:Va(e[1])}}var u8={};fe(u8,{finishReactionEvent:()=>l8,getReactedEventPointer:()=>f8});function l8(r,e,t){var o,i;let n=e.tags.filter(s=>s.length>=2&&(s[0]==="e"||s[0]==="p"));return Qt(J(z({},r),{kind:hf,tags:[...(o=r.tags)!=null?o:[],...n,["e",e.id],["p",e.pubkey]],content:(i=r.content)!=null?i:"+"}),t)}function f8(r){if(r.kind!==hf)return;let e,t;for(let n=r.tags.length-1;n>=0&&(e===void 0||t===void 0);n--){let o=r.tags[n];o.length>=2&&(o[0]==="e"&&e===void 0?e=o:o[0]==="p"&&t===void 0&&(t=o))}if(!(e===void 0||t===void 0))return{id:e[1],relays:[e[2],t[2]].filter(n=>n!==void 0),author:t[1]}}var h8={};fe(h8,{parse:()=>p8});var d8=/\W/m,Tg=/\W |\W$|$|,| /m;function*p8(r){let e=r.length,t=0,n=0;for(;n<e;){let o=r.indexOf(":",n);if(o===-1)break;if(r.substring(o-5,o)==="nostr"){let i=r.substring(o+60).match(d8),s=i?o+60+i.index:e;try{let a,{data:c,type:u}=Va(r.substring(o+1,s));switch(u){case"npub":a={pubkey:c};break;case"nsec":case"note":n=s+1;continue;default:a=c}t!==o-5&&(yield{type:"text",text:r.substring(t,o-5)}),yield{type:"reference",pointer:a},n=s,t=n;continue}catch(a){n=o+1;continue}}else if(r.substring(o-5,o)==="https"||r.substring(o-4,o)==="http"){let i=r.substring(o+4).match(Tg),s=i?o+4+i.index:e,a=r[o-1]==="s"?5:4;try{let c=new URL(r.substring(o-a,s));if(c.hostname.indexOf(".")===-1)throw new Error("invalid url");if(t!==o-a&&(yield{type:"text",text:r.substring(t,o-a)}),c.pathname.endsWith(".png")||c.pathname.endsWith(".jpg")||c.pathname.endsWith(".jpeg")||c.pathname.endsWith(".gif")||c.pathname.endsWith(".webp")){yield{type:"image",url:c.toString()},n=s,t=n;continue}if(c.pathname.endsWith(".mp4")||c.pathname.endsWith(".avi")||c.pathname.endsWith(".webm")||c.pathname.endsWith(".mkv")){yield{type:"video",url:c.toString()},n=s,t=n;continue}if(c.pathname.endsWith(".mp3")||c.pathname.endsWith(".aac")||c.pathname.endsWith(".ogg")||c.pathname.endsWith(".opus")){yield{type:"audio",url:c.toString()},n=s,t=n;continue}yield{type:"url",url:c.toString()},n=s,t=n;continue}catch(c){n=s+1;continue}}else if(r.substring(o-3,o)==="wss"||r.substring(o-2,o)==="ws"){let i=r.substring(o+4).match(Tg),s=i?o+4+i.index:e,a=r[o-1]==="s"?3:2;try{let c=new URL(r.substring(o-a,s));if(c.hostname.indexOf(".")===-1)throw new Error("invalid ws url");t!==o-a&&(yield{type:"text",text:r.substring(t,o-a)}),yield{type:"relay",url:c.toString()},n=s,t=n;continue}catch(c){n=s+1;continue}}else{n=o+1;continue}}t!==e&&(yield{type:"text",text:r.substring(t)})}var g8={};fe(g8,{channelCreateEvent:()=>y8,channelHideMessageEvent:()=>w8,channelMessageEvent:()=>m8,channelMetadataEvent:()=>b8,channelMuteUserEvent:()=>v8});var y8=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else if(typeof r.content=="string")t=r.content;else return;return Qt({kind:jg,tags:[...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},b8=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else if(typeof r.content=="string")t=r.content;else return;return Qt({kind:qg,tags:[["e",r.channel_create_event_id],...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},m8=(r,e)=>{var n;let t=[["e",r.channel_create_event_id,r.relay_url,"root"]];return r.reply_to_channel_message_event_id&&t.push(["e",r.reply_to_channel_message_event_id,r.relay_url,"reply"]),Qt({kind:$g,tags:[...t,...(n=r.tags)!=null?n:[]],content:r.content,created_at:r.created_at},e)},w8=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else if(typeof r.content=="string")t=r.content;else return;return Qt({kind:Wg,tags:[["e",r.channel_message_event_id],...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},v8=(r,e)=>{var n;let t;if(typeof r.content=="object")t=JSON.stringify(r.content);else if(typeof r.content=="string")t=r.content;else return;return Qt({kind:Hg,tags:[["p",r.pubkey_to_mute],...(n=r.tags)!=null?n:[]],content:t,created_at:r.created_at},e)},E8={};fe(E8,{EMOJI_SHORTCODE_REGEX:()=>my,matchAll:()=>x8,regex:()=>_f,replaceAll:()=>k8});var my=/:(\w+):/,_f=()=>new RegExp(`\\B${my.source}\\B`,"g");function*x8(r){let e=r.matchAll(_f());for(let t of e)try{let[n,o]=t;yield{shortcode:n,name:o,start:t.index,end:t.index+n.length}}catch(n){}}function k8(r,e){return r.replaceAll(_f(),(t,n)=>e({shortcode:t,name:n}))}var A8={};fe(A8,{useFetchImplementation:()=>_8,validateGithub:()=>S8});var Sf;try{Sf=fetch}catch(r){}function _8(r){Sf=r}async function S8(r,e,t){try{return await(await Sf(`https://gist.github.com/${e}/${t}/raw`)).text()===`Verifying that I control the following Nostr public key: ${r}`}catch(n){return!1}}var B8={};fe(B8,{makeNwcRequestEvent:()=>I8,parseConnectionString:()=>O8});function O8(r){let{pathname:e,searchParams:t}=new URL(r),n=e,o=t.get("relay"),i=t.get("secret");if(!n||!o||!i)throw new Error("invalid connection string");return{pubkey:n,relay:o,secret:i}}async function I8(r,e,t){let o=await Xg(e,r,JSON.stringify({method:"pay_invoice",params:{invoice:t}})),i={kind:zg,created_at:Math.round(Date.now()/1e3),content:o,tags:[["p",r]]};return Qt(i,e)}var T8={};fe(T8,{normalizeIdentifier:()=>R8});function R8(r){return r=r.trim().toLowerCase(),r=r.normalize("NFKC"),Array.from(r).map(e=>new RegExp("\\p{Letter}","u").test(e)||new RegExp("\\p{Number}","u").test(e)?e:"-").join("")}var L8={};fe(L8,{getZapEndpoint:()=>C8,makeZapReceipt:()=>U8,makeZapRequest:()=>N8,useFetchImplementation:()=>P8,validateZapRequest:()=>M8});var Bf;try{Bf=fetch}catch(r){}function P8(r){Bf=r}async function C8(r){try{let e="",{lud06:t,lud16:n}=JSON.parse(r.content);if(t){let{words:s}=Jr.decode(t,1e3),a=Jr.fromWords(s);e=yr.decode(a)}else if(n){let[s,a]=n.split("@");e=new URL(`/.well-known/lnurlp/${s}`,`https://${a}`).toString()}else return null;let i=await(await Bf(e)).json();if(i.allowsNostr&&i.nostrPubkey)return i.callback}catch(e){}return null}function N8({profile:r,event:e,amount:t,relays:n,comment:o=""}){if(!t)throw new Error("amount not given");if(!r)throw new Error("profile not given");let i={kind:9734,created_at:Math.round(Date.now()/1e3),content:o,tags:[["p",r],["amount",t.toString()],["relays",...n]]};if(e&&typeof e=="string"&&i.tags.push(["e",e]),e&&typeof e=="object"){if(lf(e.kind)){let s=["a",`${e.kind}:${e.pubkey}:`];i.tags.push(s)}else if(za(e.kind)){let s=e.tags.find(([c,u])=>c==="d"&&u);if(!s)throw new Error("d tag not found or is empty");let a=["a",`${e.kind}:${e.pubkey}:${s[1]}`];i.tags.push(a)}}return i}function M8(r){let e;try{e=JSON.parse(r)}catch(i){return"Invalid zap request JSON."}if(!af(e))return"Zap request is not a valid Nostr event.";if(!Da(e))return"Invalid signature on zap request.";let t=e.tags.find(([i,s])=>i==="p"&&s);if(!t)return"Zap request doesn't have a 'p' tag.";if(!t[1].match(/^[a-f0-9]{64}$/))return"Zap request 'p' tag is not valid hex.";let n=e.tags.find(([i,s])=>i==="e"&&s);return n&&!n[1].match(/^[a-f0-9]{64}$/)?"Zap request 'e' tag is not valid hex.":e.tags.find(([i,s])=>i==="relays"&&s)?null:"Zap request doesn't have a 'relays' tag."}function U8({zapRequest:r,preimage:e,bolt11:t,paidAt:n}){let o=JSON.parse(r),i=o.tags.filter(([a])=>a==="e"||a==="p"||a==="a"),s={kind:9735,created_at:Math.round(n.getTime()/1e3),content:"",tags:[...i,["P",o.pubkey],["bolt11",t],["description",r]]};return e&&s.tags.push(["preimage",e]),s}var j8={};fe(j8,{getToken:()=>q8,hashPayload:()=>Of,unpackEventFromToken:()=>vy,validateEvent:()=>Sy,validateEventKind:()=>xy,validateEventMethodTag:()=>Ay,validateEventPayloadTag:()=>_y,validateEventTimestamp:()=>Ey,validateEventUrlTag:()=>ky,validateToken:()=>$8});var wy="Nostr ";async function q8(r,e,t,n=!1,o){let i={kind:pf,tags:[["u",r],["method",e]],created_at:Math.round(new Date().getTime()/1e3),content:""};o&&i.tags.push(["payload",Of(o)]);let s=await t(i);return(n?wy:"")+yt.encode(Tt.encode(JSON.stringify(s)))}async function $8(r,e,t){let n=await vy(r).catch(i=>{throw i});return await Sy(n,e,t).catch(i=>{throw i})}async function vy(r){if(!r)throw new Error("Missing token");r=r.replace(wy,"");let e=yr.decode(yt.decode(r));if(!e||e.length===0||!e.startsWith("{"))throw new Error("Invalid token");return JSON.parse(e)}function Ey(r){return r.created_at?Math.round(new Date().getTime()/1e3)-r.created_at<60:!1}function xy(r){return r.kind===pf}function ky(r,e){let t=r.tags.find(n=>n[0]==="u");return t?t.length>0&&t[1]===e:!1}function Ay(r,e){let t=r.tags.find(n=>n[0]==="method");return t?t.length>0&&t[1].toLowerCase()===e.toLowerCase():!1}function Of(r){let e=Gt(Tt.encode(JSON.stringify(r)));return ke(e)}function _y(r,e){let t=r.tags.find(o=>o[0]==="payload");if(!t)return!1;let n=Of(e);return t.length>0&&t[1]===n}async function Sy(r,e,t,n){if(!Da(r))throw new Error("Invalid nostr event, signature invalid");if(!xy(r))throw new Error("Invalid nostr event, kind invalid");if(!Ey(r))throw new Error("Invalid nostr event, created_at timestamp invalid");if(!ky(r,e))throw new Error("Invalid nostr event, url tag invalid");if(!Ay(r,t))throw new Error("Invalid nostr event, method tag invalid");if(n&&typeof n=="object"&&Object.keys(n).length>0&&!_y(r,n))throw new Error("Invalid nostr event, payload tag does not match request body hash");return!0}gs();Hf();Sh();xs();Dd();Lc();Bh();ti();Oh();Ts();var r1=new Mi({concurrency:5}),kS=new ip(navigator.userAgent),n1=kS.parseUserAgent(),AS=["wss://relaypag.es","wss://relay.nostr.watch","wss://purplepag.es","wss://user.kindpag.es"],Eu=class extends _h{constructor(t){super(t);this.subs=new Map;this._callbacks={};this._salt="route66";this._signalIsInternal=!0;this._filtersQueue=[];this.init(),this.relays=t!=null&&t.relays?t.relays:AS}init(){this.poolInit(),this.fetcherInit()}poolInit(){this._pool=new gf}fetcherInit(t=!1){if(!(this!=null&&this.pool)&&(this.poolInit(),!this.pool))throw new Error("No pool available");!t&&this.fetcher||(n1.name==="Safari"?this._fetcher=aa.init():this._fetcher=aa.withCustomPool(yl(this.pool)))}async setup(t){}get pool(){return this._pool}get fetcher(){return this._fetcher}get callbacks(){return this._callbacks}async connect(){if(this!=null&&this.pool)return;let t=new gf;this._pool=t,this._fetcher=aa.withCustomPool(yl(t))}async _publish(t=$e){let{relays:n,note:o}=t;if(n=n!=null?n:this.relays,!o||!n.length)return!1;this.pool||await this.connect();let i=this.pool.publish(n,o);return await Promise.any(i),i.filter(a=>a.status==="fulfilled").length>0}cleanRelayUrls(t){return t.filter(n=>!n.includes(","))}async _subscribe(t=$e,n){let{filters:o,relays:i,options:s,hash:a,priority:c}=t,{stream:u,keepAlive:f}=s!=null?s:We;c=c!=null?c:0;let l=async()=>new Promise(async(h,g)=>{let y=this.cleanRelayUrls(i!=null?i:this.relays),d=[],p=0;if(!y||y.length===0)throw new Error("No relays available for subscription.");o||(o=[]),o=Array.isArray(o)?o:[o],await this.connect(),console.log(`[NostrToolsWorker] subscribeMany to ${y.length} relays:`,y),console.log("[NostrToolsWorker] subscribeMany filters:",JSON.stringify(o)),console.log(`[NostrToolsWorker] subscribeMany stream=${u}, keepAlive=${f}, hash=${a==null?void 0:a.slice(0,8)}`);let b=I=>{var _;this.signal.aborted||(console.log(`[NostrToolsWorker] onevent: kind=${I.kind}, hash=${a==null?void 0:a.slice(0,8)}`),u?((_=n.onevent)==null||_.call(n,I),p++):d.push(I))},m=(I=[])=>{var _;(_=n==null?void 0:n.onclose)==null||_.call(n,(I==null?void 0:I[0])||"unknown"),this.subs.delete(a)},x=()=>{var I,_;this.signal.aborted||((I=n==null?void 0:n.oneose)==null||I.call(n),!f&&((_=this.subs.get(a))==null||_(),h(u?p>0:d)))},S=this.pool.subscribeMany(y,o,{onevent:b,oneose:x,onclose:m});this.subs.set(a,()=>{S.close()})});if(f)l();else return r1.add(l,{priority:c})}async _fetch(t=$e,n){return r1.add(async()=>{var g,d,S,I,_;let{filters:o,relays:i,options:s,hash:a}=t;this.fetcherInit();let{stream:c}=s!=null?s:We,u=this.cleanRelayUrls(i!=null?i:this.relays);if(!u||u.length===0)throw new Error("No relays available for fetching.");this.subs.set(a,this.fetcher.shutdown.bind(this.fetcher)),o||(o=[]),o=Array.isArray(o)?o:[o],await this.connect();let f=[],l=0;for(let O of o){if(this.signal.aborted)return;let w=0,E=new Map;try{if(console.log("[NostrToolsWorker] _fetch: filter=",JSON.stringify(O)),console.log("[NostrToolsWorker] _fetch: relays=",u),Object.keys(O).some(A=>A.startsWith("#"))){console.log("[NostrToolsWorker] _fetch: using subscribeMany for tag filter"),console.log("[NostrToolsWorker] _fetch: subscribeMany starting with relays=",u,"filter=",JSON.stringify(O));let A=await new Promise(R=>{let L=[],P=!1,B=this.pool.subscribeMany(u,[O],{onevent:T=>{var C;console.log("[NostrToolsWorker] _fetch subscribeMany onevent:",T.kind,(C=T.id)==null?void 0:C.slice(0,8)),L.push(T)},oneose:()=>{console.log("[NostrToolsWorker] _fetch subscribeMany oneose, events:",L.length),P||(P=!0,B.close(),R(L))},onclose:T=>{console.log("[NostrToolsWorker] _fetch subscribeMany onclose:",T),P||(P=!0,R(L))}});setTimeout(()=>{P||(console.log("[NostrToolsWorker] _fetch subscribeMany timeout, events:",L.length),P=!0,B.close(),R(L))},15e3)});console.log("[NostrToolsWorker] _fetch: subscribeMany returned",A.length,"events"),A.length>0&&console.log("[NostrToolsWorker] _fetch: first event=",JSON.stringify(A[0]).slice(0,200));for(let R of A){if(this.signal.aborted)return;E.has(R.id)||(E.set(R.id,R),w++,c&&((g=n==null?void 0:n.onevent)==null||g.call(n,R)))}}else{let y=O,{since:A,until:R}=y,L=np(y,["since","until"]),P={};A&&(P.since=A),R&&(P.until=R);let B=this.fetcher.allEventsIterator(u,L,P,{signal:this.signal,skipFilterMatching:!0,abortSubBeforeEoseTimeoutMs:2e4,connectTimeoutMs:5e3});try{for(var p=ut(B),b,m,x;b=!(m=await p.next()).done;b=!1){let T=m.value;if(this.signal.aborted)return;E.has(T.id)||(E.set(T.id,T),w++,c&&((d=n==null?void 0:n.onevent)==null||d.call(n,T)))}}catch(m){x=[m]}finally{try{b&&(m=p.return)&&await m.call(p)}finally{if(x)throw x[0]}}}c?f.push(w>0):f.push(Array.from(E.values())),(S=n==null?void 0:n.oneose)==null||S.call(n)}catch(v){console.warn("[NostrToolsWorker] _fetch error:",v)}console.log(`[NostrToolsWorker] _fetch #${l}: complete, totalEvents=${w}`),l++}n1.name==="Safari"&&((I=this.fetcher)==null||I.shutdown()),(_=n==null?void 0:n.onclose)==null||_.call(n,a),this.subs.delete(a);let h=f.flat();return console.log(`[NostrToolsWorker] _fetch: returning ${Array.isArray(h)?h.length:typeof h} events, stream=${s==null?void 0:s.stream}`),s!=null&&s.stream?h.length>0:h})}closeSubscription(t){}unsubscribe({hash:t}){if(console.log("WebsocketAdapter:WebsocketAdapterWorker:NostrToolsWorker:unsubscribe",t),!t||!this.subs.has(t))return;let n=this.subs.get(t);typeof n=="function"&&n(),typeof(n==null?void 0:n.close)=="function"&&n.close()}disconnect(){var t;this._validateRequest()&&((t=this.pool)==null||t.close(this.relays))}abort(){this.controller.abort();for(let t of this.subs.values())typeof t=="function"&&t()}close(t){var n;(n=this.pool)==null||n.close(t!=null?t:this.relays)}terminate(){var t;this._validateRequest()&&(this.abort(),(t=this.fetcher)==null||t.shutdown())}async getEvents(t){return this._validateRequest()?await this.pool.querySync(this.relays,t):void 0}async getEvent(t){return this._validateRequest()?await this.pool.get(this.relays,t):void 0}_validateRequest(){return this.pool?this.relays?!0:(console.error("No relays available"),!1):(console.error("No pool available"),!1)}};le();var ep=function(r,e){return new r({mainThread:e})};var _S=self,C7=ep(Eu,_S);
78
+ /*! Bundled license information:
79
+
80
+ @noble/hashes/esm/utils.esm.esm.js:
81
+ @noble/hashes/esm/utils.esm.esm.js:
82
+ @noble/hashes/esm/utils.esm.esm.js:
83
+ @noble/hashes/esm/utils.esm.js:
84
+ @noble/hashes/esm/utils.esm.js:
85
+ @noble/hashes/esm/utils.js:
86
+ @noble/hashes/esm/utils.js:
87
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
88
+
89
+ @scure/base/lib/esm/index.esm.esm.js:
90
+ @scure/base/lib/index.esm.js:
91
+ @scure/base/lib/esm/index.esm.js:
92
+ @scure/base/lib/esm/index.js:
93
+ (*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
94
+
95
+ @noble/curves/esm/abstract/utils.esm.esm.js:
96
+ @noble/curves/esm/abstract/modular.esm.esm.js:
97
+ @noble/curves/esm/abstract/curve.esm.esm.js:
98
+ @noble/curves/esm/_shortw_utils.esm.esm.js:
99
+ @noble/curves/esm/secp256k1.esm.esm.js:
100
+ @noble/curves/esm/abstract/utils.esm.js:
101
+ @noble/curves/esm/abstract/modular.esm.js:
102
+ @noble/curves/esm/abstract/curve.esm.js:
103
+ @noble/curves/esm/_shortw_utils.esm.js:
104
+ @noble/curves/esm/secp256k1.esm.js:
105
+ @noble/curves/esm/abstract/utils.js:
106
+ @noble/curves/esm/abstract/modular.js:
107
+ @noble/curves/esm/abstract/curve.js:
108
+ @noble/curves/esm/abstract/weierstrass.js:
109
+ @noble/curves/esm/_shortw_utils.js:
110
+ @noble/curves/esm/secp256k1.js:
111
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
112
+
113
+ @noble/ciphers/esm/utils.esm.js:
114
+ @noble/ciphers/esm/utils.js:
115
+ (*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) *)
116
+
117
+ nostr-fetch/dist/index.mjs:
118
+ (*! Bundled license information:
119
+
120
+ @noble/hashes/esm/utils.js:
121
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
122
+
123
+ @noble/curves/esm/abstract/utils.js:
124
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
125
+
126
+ @noble/curves/esm/abstract/modular.js:
127
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
128
+
129
+ @noble/curves/esm/abstract/curve.js:
130
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
131
+
132
+ @noble/curves/esm/abstract/weierstrass.js:
133
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
134
+
135
+ @noble/curves/esm/_shortw_utils.js:
136
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
137
+
138
+ @noble/curves/esm/secp256k1.js:
139
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
140
+ *)
141
+ */