@acedatacloud/nexior 3.70.0 → 3.72.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/dist/_redirects +5 -0
  2. package/dist/assets/Auth-BdkuzIHM.js +1 -0
  3. package/dist/assets/{BotPlaceholder-wxOBe7fb.js → BotPlaceholder-DwjA2X5o.js} +1 -1
  4. package/dist/assets/{Callback-DzV7eqG1.js → Callback-CVuzeeJC.js} +1 -1
  5. package/dist/assets/{Console-Csax2Y59.js → Console-BBzqNjLR.js} +1 -1
  6. package/dist/assets/Console-CMyBoRi3.css +1 -0
  7. package/dist/assets/{Consumption-BlgDnSfV.js → Consumption-ClDpG-vO.js} +1 -1
  8. package/dist/assets/Conversation-BXWsR8yK.css +1 -0
  9. package/dist/assets/{Conversation-D3TUFJGX.js → Conversation-CDQp3dwl.js} +11 -11
  10. package/dist/assets/{CopyToClipboard-DwmtBnyv.js → CopyToClipboard-ukgGSz9P.js} +1 -1
  11. package/dist/assets/Detail-C56tmkrN.js +2 -0
  12. package/dist/assets/{Detail-yqZdJR17.css → Detail-CtZKrEZO.css} +1 -1
  13. package/dist/assets/{EditArray-Co5Vn-A-.js → EditArray-CQPRQB13.js} +1 -1
  14. package/dist/assets/{Extra-DnRcRylZ.js → Extra-DHIyvRP3.js} +1 -1
  15. package/dist/assets/{FilePreview-B_pda4h3.js → FilePreview-C5lhvsQ_.js} +1 -1
  16. package/dist/assets/{History-PZpJ7Ui9.js → History-BP2HZXDb.js} +1 -1
  17. package/dist/assets/IconPark.vue_vue_type_script_setup_true_lang-cuGZPyOZ.js +1 -0
  18. package/dist/assets/{ImagePreview-yWy9cTRi.js → ImagePreview-Cb8JiRgS.js} +1 -1
  19. package/dist/assets/ImageWrapper-BDH0aMfC.css +1 -0
  20. package/dist/assets/{ImageWrapper-Ce8hQunY.js → ImageWrapper-u3FDGD1p.js} +1 -1
  21. package/dist/assets/Index-3tL_3lJG.css +1 -0
  22. package/dist/assets/Index-6KbY8XR0.js +1 -0
  23. package/dist/assets/Index-AjFOesRA.css +1 -0
  24. package/dist/assets/Index-B20wLHHS.css +1 -0
  25. package/dist/assets/{Index-CQyK7u3D.js → Index-B3hOKjnj.js} +1 -1
  26. package/dist/assets/Index-B57yWxkX.js +1 -0
  27. package/dist/assets/Index-BBu8qoFi.css +1 -0
  28. package/dist/assets/{Index-DZ9mERd5.js → Index-BMCQk8x6.js} +1 -1
  29. package/dist/assets/Index-BSDwM_Lb.js +1 -0
  30. package/dist/assets/{Index-R74Ldn_d.js → Index-BWZxfjxV.js} +1 -1
  31. package/dist/assets/Index-BnoNpDIe.css +1 -0
  32. package/dist/assets/Index-Bo6yREGq.js +4 -0
  33. package/dist/assets/{Index-DtYumWG2.js → Index-BsUGgsg3.js} +1 -1
  34. package/dist/assets/Index-BuiSPO43.css +1 -0
  35. package/dist/assets/Index-BxLCgj_e.css +1 -0
  36. package/dist/assets/{Index-C3JufUt1.js → Index-C41aXiSU.js} +1 -1
  37. package/dist/assets/{Index-T1MmnqOD.js → Index-C4SnOMFi.js} +1 -1
  38. package/dist/assets/{Index-Bt00lwps.js → Index-C5VeG1Lp.js} +1 -1
  39. package/dist/assets/{Index-x9mhTmun.css → Index-CVV3tZf8.css} +1 -1
  40. package/dist/assets/{Index-CaeRQNV3.js → Index-CWo6CkmS.js} +1 -1
  41. package/dist/assets/{Index-D67A-3u_.js → Index-CY8jQkM8.js} +1 -1
  42. package/dist/assets/Index-CYmt28Xk.css +1 -0
  43. package/dist/assets/Index-CaUHDiuw.css +1 -0
  44. package/dist/assets/{Index-kxbiKg49.js → Index-CmHIvwFw.js} +1 -1
  45. package/dist/assets/Index-Cu5EiLHU.css +1 -0
  46. package/dist/assets/Index-CyUHJimx.css +1 -0
  47. package/dist/assets/Index-D-LmBQN6.js +1 -0
  48. package/dist/assets/{Index-BDmY1SY6.css → Index-D0je4Hb5.css} +1 -1
  49. package/dist/assets/Index-D2EsZH9f.css +1 -0
  50. package/dist/assets/{Index-B2Iy8Wiw.js → Index-D6qCjiTO.js} +1 -1
  51. package/dist/assets/{Index-BDq-z4Up.js → Index-DBfquiJV.js} +1 -1
  52. package/dist/assets/{Index-Job2p-Xo.js → Index-DFxQPHqB.js} +1 -1
  53. package/dist/assets/{Index-DRMdQL6l.js → Index-DIISZQnx.js} +1 -1
  54. package/dist/assets/Index-DL0n7P22.css +1 -0
  55. package/dist/assets/Index-DLDhvT8p.css +1 -0
  56. package/dist/assets/Index-DPkPxXHv.css +1 -0
  57. package/dist/assets/Index-DQk0wl28.css +1 -0
  58. package/dist/assets/{Index-BFbBHdW9.js → Index-DSudVw-1.js} +1 -1
  59. package/dist/assets/Index-DbT-X3k0.css +1 -0
  60. package/dist/assets/{Index-DpBD1CMl.js → Index-Dilo1kvb.js} +1 -1
  61. package/dist/assets/{Index-CgZ6CMgQ.css → Index-DmyWn1AP.css} +1 -1
  62. package/dist/assets/{Index-BRJhaQpG.js → Index-DvG__cXk.js} +1 -1
  63. package/dist/assets/Index-MGLFaXUD.js +1 -0
  64. package/dist/assets/{Index-ByvnJkoh.js → Index-NkxbEAhL.js} +1 -1
  65. package/dist/assets/Index-RCOtIT_Q.css +1 -0
  66. package/dist/assets/{Index-DeGfvkPk.js → Index-WBU0sclR.js} +1 -1
  67. package/dist/assets/Index-YjwgX-jh.css +1 -0
  68. package/dist/assets/Index-jKhtDc4E.css +1 -0
  69. package/dist/assets/{Invitees-B1V4mwm_.js → Invitees-kfgj1230.js} +1 -1
  70. package/dist/assets/{List-e3S6kfw5.js → List-B_HERD7h.js} +1 -1
  71. package/dist/assets/{List-D6oKRMnT.js → List-Bx2TWIon.js} +1 -1
  72. package/dist/assets/{List-CKr-DgFa.js → List-BxxIfwc7.js} +1 -1
  73. package/dist/assets/{Login-CYI_9wpe.js → Login-C-ujW_LY.js} +1 -1
  74. package/dist/assets/{Main-C_ygftjQ.js → Main-CJHeAyfJ.js} +1 -1
  75. package/dist/assets/Main-Cc9b6nwL.css +1 -0
  76. package/dist/assets/Navigator-B4spKU1u.css +1 -0
  77. package/dist/assets/{Navigator-4el-hpB2.js → Navigator-BheWA4Me.js} +1 -1
  78. package/dist/assets/NoTasks-E8exbJKH.js +1 -0
  79. package/dist/assets/{NotFound-KeZ-2edV.js → NotFound-CBxboMya.js} +1 -1
  80. package/dist/assets/NotFound-ktrJq8Vf.css +1 -0
  81. package/dist/assets/{OAuthCallback-DrACch4k.js → OAuthCallback-CTV89-EI.js} +1 -1
  82. package/dist/assets/{Pagination-D1ppBajR.js → Pagination-dKuJ_hFh.js} +1 -1
  83. package/dist/assets/{ScrollList-BwDvv6UZ.js → ScrollList-C-Srq-7J.js} +1 -1
  84. package/dist/assets/{Status-D_qsBfjl.js → Status-n5fqYT5p.js} +1 -1
  85. package/dist/assets/Subscribe-CMdOTK41.js +1 -0
  86. package/dist/assets/TransportWebHID-D3JlLBn7.js +1 -0
  87. package/dist/assets/{VideoPlayer-CB158g6Z.js → VideoPlayer-CXOBuLlR.js} +1 -1
  88. package/dist/assets/_Uint8Array-B48uXja2.js +1 -0
  89. package/dist/assets/_baseClone-Bo4uXFE7.js +1 -0
  90. package/dist/assets/_baseIteratee-CBVcPA7j.js +1 -0
  91. package/dist/assets/_commonjs-dynamic-modules-TDtrdbi3.js +1 -0
  92. package/dist/assets/_initCloneObject-N_RdILDo.js +1 -0
  93. package/dist/assets/{add-DAOdLwPv.js → add-E3XAajxL.js} +1 -1
  94. package/dist/assets/{all-wallets-vjVnwgsO.js → all-wallets-BOCyNito.js} +1 -1
  95. package/dist/assets/{app-store-Dqlp_dd5.js → app-store-BL0PVhW4.js} +1 -1
  96. package/dist/assets/{apple-C_Gx1fYg.js → apple-BeIodUwt.js} +1 -1
  97. package/dist/assets/{arrow-bottom-Bf4IfxmZ.js → arrow-bottom-BiHDOITa.js} +1 -1
  98. package/dist/assets/{arrow-bottom-circle-2BWPqWIt.js → arrow-bottom-circle-CLV4Jgl2.js} +1 -1
  99. package/dist/assets/{arrow-left-vmHuxs92.js → arrow-left-Cv255v3T.js} +1 -1
  100. package/dist/assets/{arrow-right-BdpeedLd.js → arrow-right-B4VEmn53.js} +1 -1
  101. package/dist/assets/{arrow-top-Ufh2r2Rd.js → arrow-top-CpXTTIry.js} +1 -1
  102. package/dist/assets/{avatar-DRb5wZiL.js → avatar-Bfm4A7TY.js} +1 -1
  103. package/dist/assets/{bank-CeKroJWh.js → bank-Dn2VmTu-.js} +1 -1
  104. package/dist/assets/{basic-Ca5mEGjy.js → basic-BcMWR9ru.js} +16 -20
  105. package/dist/assets/bignumber-C3amavAD.js +1 -0
  106. package/dist/assets/{browser-BG_d5y0A.js → browser-CMNjfuAC.js} +1 -1
  107. package/dist/assets/{card-COINfE2v.js → card-gqlojh6g.js} +1 -1
  108. package/dist/assets/{castArray-DsfWcMKC.js → castArray-DOHoOdv9.js} +1 -1
  109. package/dist/assets/{chat-B0Crd5wv.js → chat-CxwtDN97.js} +1 -1
  110. package/dist/assets/{checkmark-ee31vWr0.js → checkmark-YBTLqHBW.js} +1 -1
  111. package/dist/assets/{checkmark-bold-Bhapl42F.js → checkmark-bold-rxEvnEUd.js} +1 -1
  112. package/dist/assets/chevron-bottom-B7NZWz_1.js +8 -0
  113. package/dist/assets/chevron-left-DrNiPYiA.js +8 -0
  114. package/dist/assets/chevron-right-B9g1oAQY.js +8 -0
  115. package/dist/assets/chevron-top-DXRZpktS.js +8 -0
  116. package/dist/assets/{chrome-store-CFCBw3uQ.js → chrome-store-C8ULyJRG.js} +1 -1
  117. package/dist/assets/{clock-CxWFWb_j.js → clock-B-_qwBYA.js} +1 -1
  118. package/dist/assets/{close-BPfx5q_o.js → close-8bpoj0Jp.js} +1 -1
  119. package/dist/assets/{coinPlaceholder-DI1V8lUl.js → coinPlaceholder-Cuedw1Op.js} +1 -1
  120. package/dist/assets/{common-BUgppnu3.js → common-B0OACs6O.js} +1 -1
  121. package/dist/assets/{common-BjTyswUh.js → common-CRFibXKv.js} +1 -1
  122. package/dist/assets/{compass-DsV-rBLu.js → compass-CyaL9O3q.js} +1 -1
  123. package/dist/assets/{copy-CJgqaSJx.js → copy-CSAx1ijo.js} +1 -1
  124. package/dist/assets/cursor-UtbUZZ2_.js +3 -0
  125. package/dist/assets/{cursor-transparent-C5iQCxzP.js → cursor-transparent-BBh5EBmc.js} +1 -1
  126. package/dist/assets/{debounce-Dy-sHQCK.js → debounce-BUsIETU9.js} +1 -1
  127. package/dist/assets/{desktop-lmp4ZS1L.js → desktop-QNx37hFp.js} +1 -1
  128. package/dist/assets/{disconnect-DFRGn-cC.js → disconnect-C9bb7De0.js} +1 -1
  129. package/dist/assets/{discord-CFASEEOh.js → discord-wan8GbbE.js} +1 -1
  130. package/dist/assets/{distribution-BSsunzDl.js → distribution-lEp5Gch8.js} +1 -1
  131. package/dist/assets/draggabilly-C9AcGLUK.js +1 -0
  132. package/dist/assets/{dropdown-BKdzgOfl.js → dropdown-OsM0Nuqn.js} +1 -1
  133. package/dist/assets/{etherscan-Cc2cKLzg.js → etherscan-8_DU791Y.js} +1 -1
  134. package/dist/assets/{exclamation-triangle-h3vn6-KW.js → exclamation-triangle-DSBEaMG1.js} +1 -1
  135. package/dist/assets/{extension-qlpxJ6ej.js → extension-Zb14XSCh.js} +1 -1
  136. package/dist/assets/external-link-DN4ybhO_.js +8 -0
  137. package/dist/assets/{facebook-Ctcj5yIa.js → facebook-ZT9RSgiQ.js} +1 -1
  138. package/dist/assets/{farcaster-9cl9_Fa3.js → farcaster-Chv7Mgpk.js} +1 -1
  139. package/dist/assets/{filters-BpFhUpl2.js → filters-BdwaCHQL.js} +1 -1
  140. package/dist/assets/{flux-CjFCDCO2.js → flux-PcsGcOlv.js} +1 -1
  141. package/dist/assets/{fp.esm-CNHUICNe.js → fp.esm-DHUg1SIa.js} +1 -1
  142. package/dist/assets/{github-Cn7Ms9Ja.js → github-Dj3FfdHs.js} +1 -1
  143. package/dist/assets/{google-BdPBQaCv.js → google-DDjNMclN.js} +1 -1
  144. package/dist/assets/{hailuo-7HDGXQU_.js → hailuo-BQqd93QT.js} +1 -1
  145. package/dist/assets/{headshots-57d25ktA.js → headshots-U93jQ-rK.js} +1 -1
  146. package/dist/assets/{help-circle-BAvhinLE.js → help-circle-CAUMwEi0.js} +1 -1
  147. package/dist/assets/{id-Dz5FHLaa.js → id-CXidlkKo.js} +1 -1
  148. package/dist/assets/{image-D22OxaAn.js → image-CJasdWpe.js} +1 -1
  149. package/dist/assets/index-1hPDOqjR.js +911 -0
  150. package/dist/assets/index-1l_4Xky1.js +1 -0
  151. package/dist/assets/{index-DVXBVpFd.js → index-9jNdh_L_.js} +1 -1
  152. package/dist/assets/{index-CSTFj_ip.js → index-B-V2U0Bv.js} +1 -1
  153. package/dist/assets/index-B2Qsts5i.js +1 -0
  154. package/dist/assets/index-BC-Ir3YT.js +3 -0
  155. package/dist/assets/{index-Bb7O2JP3.js → index-BHU0zbZw.js} +1 -1
  156. package/dist/assets/{index-B3CSqPOd.js → index-BMp2gttm.js} +1 -1
  157. package/dist/assets/{index-C1BcnA6u.js → index-BMv64ViG.js} +1 -1
  158. package/dist/assets/index-BNJXtkMy.js +1 -0
  159. package/dist/assets/index-BNeGq9PP.js +1 -0
  160. package/dist/assets/index-BSwdI6da.js +1 -0
  161. package/dist/assets/{index-D1WAKtJ7.js → index-BXk15Vhu.js} +1 -1
  162. package/dist/assets/{index-C6wAqV-8.js → index-BZbLpolE.js} +1 -14
  163. package/dist/assets/{index-C4zA0_MP.js → index-BbigSgk6.js} +1 -1
  164. package/dist/assets/{index-BebHJvfj.js → index-BcUxzWdb.js} +2 -2
  165. package/dist/assets/index-BdS5qOyQ.js +1 -0
  166. package/dist/assets/{index-Bmj6EIz8.js → index-Be4k0eOz.js} +1 -1
  167. package/dist/assets/{index-r5W6hzzQ.js → index-BuyEbX8F.js} +1 -1
  168. package/dist/assets/{index-CeKWrnu8.js → index-ByqbLZqy.js} +1 -1
  169. package/dist/assets/index-BzEesNbY.js +1 -0
  170. package/dist/assets/{index-JN3SZ_HC.js → index-C0242lZ2.js} +1 -1
  171. package/dist/assets/{index-CKHIsc1s.js → index-C8fxfvRG.js} +1 -1
  172. package/dist/assets/{index-DjV4KyN6.js → index-C9plo9FA.js} +1 -1
  173. package/dist/assets/{index-BBmh0RLR.js → index-CKOU1IRF.js} +1 -1
  174. package/dist/assets/{index-WTxQtAHr.js → index-CMxtuA2x.js} +1 -1
  175. package/dist/assets/{index-GlRUH_hW.js → index-CRKINsfk.js} +1 -1
  176. package/dist/assets/{index-B3kuAFS6.js → index-CT81WBJC.js} +1 -1
  177. package/dist/assets/index-CVHPJfCy.js +1 -0
  178. package/dist/assets/index-CWB7Mic0.js +1 -0
  179. package/dist/assets/index-CYfhW27u.js +1 -0
  180. package/dist/assets/{index-CY3m9R2Y.js → index-CdUDrz-0.js} +1 -1
  181. package/dist/assets/{index-DG_KYMhi.js → index-Cfzcj396.js} +1 -1
  182. package/dist/assets/index-CiL5zS_Y.js +569 -0
  183. package/dist/assets/{index-BRx2ZEJw.js → index-Ckkdjl4o.js} +1 -1
  184. package/dist/assets/{index-CivSwoty.js → index-Cqt9uEFx.js} +1 -1
  185. package/dist/assets/index-CvZ0WBct.js +1 -0
  186. package/dist/assets/index-CxUeIbEw.js +1 -0
  187. package/dist/assets/index-CxaRJ5N9.js +12 -0
  188. package/dist/assets/{index-e4Ucs8dS.js → index-CyKEfMms.js} +1 -1
  189. package/dist/assets/{index-DN_nDY-3.js → index-D-SG8-o4.js} +1 -1
  190. package/dist/assets/{index-BOpdP6_7.js → index-D-qg-A9-.js} +1 -1
  191. package/dist/assets/{index-vODJIDCO.js → index-D0YGMLaa.js} +6 -42
  192. package/dist/assets/{index-YcTZTxX9.js → index-D1zEyLS1.js} +1 -1
  193. package/dist/assets/{index-ByZJwHkk.js → index-D2EIjiEw.js} +1 -1
  194. package/dist/assets/index-DBtC5OKc.css +1 -0
  195. package/dist/assets/index-DMpm5n3O.js +1 -0
  196. package/dist/assets/{index-CG0M_Xjj.js → index-DS1cpklm.js} +1 -1
  197. package/dist/assets/{index-CIip78ya.js → index-DZMxtLlk.js} +1 -1
  198. package/dist/assets/{index-vu1NWxyz.js → index-DaMl81Go.js} +1 -1
  199. package/dist/assets/index-Dkj_pbgy.js +1 -0
  200. package/dist/assets/{index-CvOp7eAb.js → index-DrscMfSA.js} +1 -1
  201. package/dist/assets/{index-BOHN3quG.js → index-Du8c8Lti.js} +1 -1
  202. package/dist/assets/index-EkXmx7jl.js +290 -0
  203. package/dist/assets/index-Fkw9jC5h.js +1 -0
  204. package/dist/assets/{index-BXrYTjO5.js → index-LXJ-lEG9.js} +1 -1
  205. package/dist/assets/{index-DU0LxlNY.js → index-Mbnml_gj.js} +1 -1
  206. package/dist/assets/index-PjJyX4LY.js +1 -0
  207. package/dist/assets/index-T9ReFIbu.js +1 -0
  208. package/dist/assets/index-TU25xuBO.js +151 -0
  209. package/dist/assets/index-V-0NaV8M.js +1 -0
  210. package/dist/assets/index-YfhrB5oC.js +1 -0
  211. package/dist/assets/{index-Cza-Zh4N.js → index-apXsdKD7.js} +1 -1
  212. package/dist/assets/{index-QDys96KY.js → index-lqoFqELT.js} +1 -1
  213. package/dist/assets/{index-BoIqosCX.js → index-pkXhSlco.js} +1 -1
  214. package/dist/assets/index-qW0zbSTP.js +30 -0
  215. package/dist/assets/index-r9l_zsnl.js +1 -0
  216. package/dist/assets/index.browser.esm-B8sZzfvA.js +8 -0
  217. package/dist/assets/index.es-B4XrJ6Ck.js +2 -0
  218. package/dist/assets/{info-BR9-RIE3.js → info-D0QfpcGE.js} +1 -1
  219. package/dist/assets/{info-circle-ZQdVUVaw.js → info-circle-D-tuP-BH.js} +1 -1
  220. package/dist/assets/{isEqual-dWoxkm7g.js → isEqual-C9TwAWsI.js} +1 -1
  221. package/dist/assets/{isPlainObject-DMxVSf-5.js → isPlainObject-OPz3IU4I.js} +1 -1
  222. package/dist/assets/{kling-C-TtpFcr.js → kling-CvicUQt9.js} +1 -1
  223. package/dist/assets/{lightbulb-DISlyM2t.js → lightbulb-BHOX-ww8.js} +1 -1
  224. package/dist/assets/{luma-DfjEMVgI.js → luma-BofZMmXm.js} +1 -1
  225. package/dist/assets/{mail-C0if4M_0.js → mail-CKNVOcOG.js} +1 -1
  226. package/dist/assets/{midjourney-Bu34rdB8.js → midjourney-Daydxxax.js} +1 -1
  227. package/dist/assets/{mobile-Db85aH_c.js → mobile-4iz15Q7n.js} +1 -1
  228. package/dist/assets/{more-Bx27V5Hg.js → more-jLE7owF4.js} +1 -1
  229. package/dist/assets/{nanobanana-BFrzpGfz.js → nanobanana-RAJH5Bki.js} +1 -1
  230. package/dist/assets/{network-placeholder-BHfdFyxe.js → network-placeholder-DPv8tMFN.js} +1 -1
  231. package/dist/assets/{nftPlaceholder-CVRqFE_z.js → nftPlaceholder-DweCvDHy.js} +1 -1
  232. package/dist/assets/{off-C7JMUIQO.js → off-CWmAJ_Bh.js} +1 -1
  233. package/dist/assets/{openaiimage-CyILu5mJ.js → openaiimage-BIYM8aTR.js} +1 -1
  234. package/dist/assets/{order-BblybwA8.js → order-CB5rrsbd.js} +1 -1
  235. package/dist/assets/{pagination-D8R-vY3J.js → pagination-D5yjLyAE.js} +1 -1
  236. package/dist/assets/{pika-Rf7-3GiX.js → pika-B_MGEpGC.js} +1 -1
  237. package/dist/assets/{pixverse-BjeNzf9Q.js → pixverse-CktQiTnV.js} +1 -1
  238. package/dist/assets/{play-store-Bgx1GLJI.js → play-store-DJmJlrvD.js} +1 -1
  239. package/dist/assets/{plus-7_ZtHut8.js → plus-CfrxKz2z.js} +1 -1
  240. package/dist/assets/{price-ZlsAJ3mE.js → price-BbA-vCnj.js} +1 -1
  241. package/dist/assets/{producer-BolO9gWp.js → producer-BdU4yFQY.js} +1 -1
  242. package/dist/assets/{qr-code-CUpVDQ5I.js → qr-code-D7yhiwWt.js} +1 -1
  243. package/dist/assets/{qrart-zWjen1L4.js → qrart-BKb1AuHl.js} +1 -1
  244. package/dist/assets/{recycle-horizontal-CyFvw8p6.js → recycle-horizontal-DtPDb72h.js} +1 -1
  245. package/dist/assets/{refresh-P7MLe3jv.js → refresh--_0EwAxr.js} +1 -1
  246. package/dist/assets/{reown-logo-qk_sulrz.js → reown-logo-C37QZC73.js} +1 -1
  247. package/dist/assets/{search-0g3mdDNF.js → search-DCvamvkJ.js} +1 -1
  248. package/dist/assets/secp256k1-ClnamsoT.js +1 -0
  249. package/dist/assets/secp256k1-DqPr1lCO.js +1 -0
  250. package/dist/assets/{seedance-ChexdROD.js → seedance-BsJB4E-e.js} +1 -1
  251. package/dist/assets/{seedream-CrIlndFE.js → seedream-85MCS8No.js} +1 -1
  252. package/dist/assets/{send-DSUwJkiF.js → send-DnVI9fa_.js} +1 -1
  253. package/dist/assets/{service-DSCzWYou.js → service-Dw0Kg7uB.js} +1 -1
  254. package/dist/assets/{events-C1bJOe9X.js → signer-Bt6hppoz.js} +1 -1
  255. package/dist/assets/solana-wallets-CUEQ9T8b.js +2 -0
  256. package/dist/assets/solana-wallets-vue-BUCglD0v.js +16 -0
  257. package/dist/assets/solanaEmbed.esm-CIXgQqxL.js +10 -0
  258. package/dist/assets/{sora-DyMvs6QM.js → sora-CITs83tx.js} +1 -1
  259. package/dist/assets/standard-BSrJCQ5C.js +1 -0
  260. package/dist/assets/{string_decoder-UGcZFaBE.js → string_decoder-BQ1X-_GY.js} +1 -1
  261. package/dist/assets/{strings-DfoVy23u.js → strings-DGr9fDRd.js} +1 -1
  262. package/dist/assets/{styles-CY2j0e5U.css → styles-Bce9hoao.css} +1 -1
  263. package/dist/assets/subsite-BJjgnvmA.js +1 -0
  264. package/dist/assets/subsite-BYqXQYsJ.js +1 -0
  265. package/dist/assets/{suno-owWyrgGo.js → suno-D8KCD8AJ.js} +1 -1
  266. package/dist/assets/{swapHorizontal-CLxl-iqJ.js → swapHorizontal-CmC3DPkd.js} +1 -1
  267. package/dist/assets/{swapHorizontalBold-CyFfYPp_.js → swapHorizontalBold-C8S_lp1L.js} +1 -1
  268. package/dist/assets/{swapHorizontalMedium-24RfzFvN.js → swapHorizontalMedium-rSlgXXj7.js} +1 -1
  269. package/dist/assets/{swapHorizontalRoundedBold-HkK2creD.js → swapHorizontalRoundedBold-BqDTlWwx.js} +1 -1
  270. package/dist/assets/{swapVertical-CeN59yUy.js → swapVertical-doMIyRGx.js} +1 -1
  271. package/dist/assets/{telegram-iJkRX7Vb.js → telegram-B_vA_I9M.js} +1 -1
  272. package/dist/assets/{three-dots-Bn6lvDgL.js → three-dots-Dd_EJ2Ms.js} +1 -1
  273. package/dist/assets/tslib.es6-ooV_ZcXm.js +1 -0
  274. package/dist/assets/{twitch-QBZMynna.js → twitch-Pcx2WO3G.js} +1 -1
  275. package/dist/assets/{twitterIcon-oTe1Ec9G.js → twitterIcon-zRw84JwO.js} +1 -1
  276. package/dist/assets/{typescript-BielEcXb.js → typescript-D5Znjm8Y.js} +1 -1
  277. package/dist/assets/use-form-item-Z5soaKHo.js +1 -0
  278. package/dist/assets/validator-C2dHpJyD.js +1 -0
  279. package/dist/assets/vendor-axios-B8_nURbH.js +9 -0
  280. package/dist/assets/vendor-chart-DO4KpSoW.js +3 -0
  281. package/dist/assets/vendor-dayjs-Cvgzdobq.js +1 -0
  282. package/dist/assets/{vendor-highlight-CyWCyJuM.js → vendor-highlight-Mh8RTITr.js} +1 -1
  283. package/dist/assets/vendor-katex-nYbbTT06.js +257 -0
  284. package/dist/assets/vendor-katex-wklAmtGL.css +1 -0
  285. package/dist/assets/vendor-vue-C5BV5QrY.js +1 -0
  286. package/dist/assets/vendor-vue-router-Bl-Po99g.js +1 -0
  287. package/dist/assets/{veo-C7ffXTRz.js → veo-CmvfIRv-.js} +1 -1
  288. package/dist/assets/{verify-fO5IzrMA.js → verify-C05wHG59.js} +1 -1
  289. package/dist/assets/{verify-filled-BOhbaRgn.js → verify-filled-CaaZnOtk.js} +1 -1
  290. package/dist/assets/vue-plyr-BO2nlN4c.js +2 -0
  291. package/dist/assets/vue-plyr-u3nFiCZB.css +1 -0
  292. package/dist/assets/{w3m-modal-DmTyn3UQ.js → w3m-modal-D1gQSCaS.js} +1 -1
  293. package/dist/assets/{wallet-lrdY3S_9.js → wallet-DtVsgmf5.js} +1 -1
  294. package/dist/assets/{wallet-placeholder-CcRD4eCm.js → wallet-placeholder-CRhCMpO5.js} +1 -1
  295. package/dist/assets/{walletconnect-Cshc70lG.js → walletconnect-C7IGwOsd.js} +1 -1
  296. package/dist/assets/{wan-CzRzbYcW.js → wan-DFnSTm2j.js} +1 -1
  297. package/dist/assets/{warning-circle-BC4eX20s.js → warning-circle-Bher3OiN.js} +1 -1
  298. package/dist/assets/{web-BaXmWEJl.js → web-Clrev4CH.js} +1 -1
  299. package/dist/assets/{web-BHYeVLgQ.js → web-vbINopKb.js} +1 -1
  300. package/dist/assets/{x-BDb1CG20.js → x-D659JFhP.js} +1 -1
  301. package/dist/index.html +6 -6
  302. package/package.json +2 -2
  303. package/dist/assets/Auth-p0aUBurT.js +0 -1
  304. package/dist/assets/Console-ay69lL9t.css +0 -1
  305. package/dist/assets/Conversation-62u6yrYy.css +0 -1
  306. package/dist/assets/Detail-Dgom96yF.js +0 -2
  307. package/dist/assets/IconPark.vue_vue_type_script_setup_true_lang-BLZRv4JK.js +0 -1
  308. package/dist/assets/ImageWrapper-CCC9KDpV.css +0 -1
  309. package/dist/assets/Index-AE8zHRaI.css +0 -1
  310. package/dist/assets/Index-B6zzHZBJ.css +0 -1
  311. package/dist/assets/Index-BI75bQ5K.css +0 -1
  312. package/dist/assets/Index-BWcq7tEj.css +0 -1
  313. package/dist/assets/Index-BrSZra1u.css +0 -1
  314. package/dist/assets/Index-C0juYDGI.css +0 -1
  315. package/dist/assets/Index-C9xKbtsc.css +0 -1
  316. package/dist/assets/Index-CGa5D6En.css +0 -1
  317. package/dist/assets/Index-CN1ddowY.css +0 -1
  318. package/dist/assets/Index-CST3Vr3w.css +0 -1
  319. package/dist/assets/Index-CSd17KSo.css +0 -1
  320. package/dist/assets/Index-CTnAfcwW.css +0 -1
  321. package/dist/assets/Index-DGqf994l.css +0 -1
  322. package/dist/assets/Index-DHsViUQQ.css +0 -1
  323. package/dist/assets/Index-DNpYnrrw.js +0 -1
  324. package/dist/assets/Index-DNrqFYl3.css +0 -1
  325. package/dist/assets/Index-DPVlQRDk.css +0 -1
  326. package/dist/assets/Index-D_PXMa9B.js +0 -1
  327. package/dist/assets/Index-E0MNopju.css +0 -1
  328. package/dist/assets/Index-UT_BGnW3.css +0 -1
  329. package/dist/assets/Index-_JA55NiP.css +0 -1
  330. package/dist/assets/Index-q-UmnTSo.js +0 -4
  331. package/dist/assets/Index-tzb7wo1T.js +0 -1
  332. package/dist/assets/Index-vbKyMGL5.js +0 -1
  333. package/dist/assets/Main-AkuYy9g7.css +0 -1
  334. package/dist/assets/Navigator-HvqoZTM0.css +0 -1
  335. package/dist/assets/NoTasks-B9eIbaLK.js +0 -1
  336. package/dist/assets/NotFound-DaqDgZ5V.css +0 -1
  337. package/dist/assets/Subscribe-Ch3B3jV0.js +0 -1
  338. package/dist/assets/TransportWebHID-CmAIbPWz.js +0 -1
  339. package/dist/assets/_Uint8Array-qNVo5ea4.js +0 -1
  340. package/dist/assets/_baseClone-Bup-DzXu.js +0 -1
  341. package/dist/assets/_baseIteratee-BrMXi8Cl.js +0 -1
  342. package/dist/assets/_initCloneObject-2M8DSHsa.js +0 -1
  343. package/dist/assets/bignumber-CgXu4W5r.js +0 -1
  344. package/dist/assets/chevron-bottom-Dy2ruk5s.js +0 -8
  345. package/dist/assets/chevron-left-BM4AfAxB.js +0 -8
  346. package/dist/assets/chevron-right-3MtXKs7R.js +0 -8
  347. package/dist/assets/chevron-top-B6MlUF74.js +0 -8
  348. package/dist/assets/cursor-8LKSMB8q.js +0 -3
  349. package/dist/assets/draggabilly-BOTxFV0F.js +0 -14
  350. package/dist/assets/external-link-DtYsxpdG.js +0 -8
  351. package/dist/assets/index-4erIVwAR.js +0 -1
  352. package/dist/assets/index-8n1SfE5_.js +0 -1
  353. package/dist/assets/index-B9auo8Tr.js +0 -3
  354. package/dist/assets/index-BFp1iBvs.js +0 -1
  355. package/dist/assets/index-BGUVRf0J.js +0 -1
  356. package/dist/assets/index-BIoOrNI4.js +0 -1
  357. package/dist/assets/index-BLceYS6J.css +0 -1
  358. package/dist/assets/index-BLy_0GNg.js +0 -9
  359. package/dist/assets/index-BOd36kea.js +0 -1
  360. package/dist/assets/index-Bh_D6Zkl.js +0 -1
  361. package/dist/assets/index-C8kqnvB0.js +0 -1
  362. package/dist/assets/index-CBcoqUOg.js +0 -1
  363. package/dist/assets/index-CCCO6HqS.js +0 -1
  364. package/dist/assets/index-CDXHGYxq.js +0 -1
  365. package/dist/assets/index-CDv4QMYh.js +0 -1
  366. package/dist/assets/index-Cb5FFmZL.js +0 -48
  367. package/dist/assets/index-CfXhGOkl.js +0 -303
  368. package/dist/assets/index-CwEC1pzi.js +0 -196
  369. package/dist/assets/index-D8rcHdZy.js +0 -955
  370. package/dist/assets/index-DK5balFu.js +0 -1
  371. package/dist/assets/index-Dae_a4rL.js +0 -1
  372. package/dist/assets/index-DaqQUjqN.js +0 -1
  373. package/dist/assets/index-DbE1BkXJ.js +0 -1
  374. package/dist/assets/index-DjOkYvHy.js +0 -3
  375. package/dist/assets/index-DsVJU19e.js +0 -12
  376. package/dist/assets/index-RGjBjS1Y.js +0 -1
  377. package/dist/assets/index-ak3wrFnL.js +0 -605
  378. package/dist/assets/index-dVVTwW9K.js +0 -1
  379. package/dist/assets/index-kuL-MU16.js +0 -1
  380. package/dist/assets/index.browser.esm-CPr1OW46.js +0 -13
  381. package/dist/assets/index.es-BDv8itLa.js +0 -1
  382. package/dist/assets/secp256k1-Dsb3S-tf.js +0 -1
  383. package/dist/assets/secp256k1-LJ-UbB4J.js +0 -1
  384. package/dist/assets/solana-wallets-fEthObZH.js +0 -2
  385. package/dist/assets/solana-wallets-vue-Ya9YPIgy.js +0 -21
  386. package/dist/assets/solanaEmbed.esm-pvKp9J7H.js +0 -10
  387. package/dist/assets/standard-CDjM418q.js +0 -1
  388. package/dist/assets/tslib.es6-BvfLneQN.js +0 -1
  389. package/dist/assets/use-form-item-DT5f4JMo.js +0 -1
  390. package/dist/assets/validator-DoEZ3swm.js +0 -1
  391. package/dist/assets/vendor-axios-NIGUFBhG.js +0 -6
  392. package/dist/assets/vendor-chart-CNPpQrIt.js +0 -18
  393. package/dist/assets/vendor-dayjs-D7e3rSuL.js +0 -1
  394. package/dist/assets/vendor-katex-CIur2ABi.css +0 -1
  395. package/dist/assets/vendor-katex-DHBGsivc.js +0 -261
  396. package/dist/assets/vendor-vue-CpN3YBVJ.js +0 -17
  397. package/dist/assets/vendor-vue-router-DjvMdekB.js +0 -5
  398. package/dist/assets/vue-plyr-BqJN4-Iw.css +0 -1
  399. package/dist/assets/vue-plyr-QZFBikSk.js +0 -2
@@ -0,0 +1,911 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-Cqt9uEFx.js","assets/index-CxUeIbEw.js","assets/index.browser.esm-B8sZzfvA.js","assets/vendor-dayjs-Cvgzdobq.js","assets/index-CiL5zS_Y.js","assets/vendor-vue-C5BV5QrY.js","assets/vendor-axios-B8_nURbH.js","assets/vendor-vue-router-Bl-Po99g.js","assets/index-DBtC5OKc.css","assets/index-CVHPJfCy.js","assets/signer-Bt6hppoz.js","assets/index-TU25xuBO.js","assets/bignumber-C3amavAD.js","assets/tslib.es6-ooV_ZcXm.js","assets/string_decoder-BQ1X-_GY.js","assets/TransportWebHID-D3JlLBn7.js","assets/types-Cvj5H4DH.js","assets/index-EkXmx7jl.js","assets/_commonjs-dynamic-modules-TDtrdbi3.js","assets/index-DMpm5n3O.js","assets/index-BC-Ir3YT.js","assets/solanaEmbed.esm-CIXgQqxL.js","assets/index-qW0zbSTP.js","assets/secp256k1-ClnamsoT.js","assets/secp256k1-DqPr1lCO.js","assets/basic-BcMWR9ru.js","assets/index-D0YGMLaa.js","assets/w3m-modal-D1gQSCaS.js"])))=>i.map(i=>d[i]);
2
+ import{P as Me,K as z0,e as L0,V as gD,T as yD}from"./index.browser.esm-B8sZzfvA.js";import{B as ht,n as B,f as or,x as ot,l as Se,e as Yt,W as Ue,m as Ie,g as At,k as q,h as Bi,o as Yi,r as ie,q as _t,b as Tn,w as os,j as Sn,d as so,v as lp,a as wD,u as mD}from"./signer-Bt6hppoz.js";import{_ as Fi,e4 as D1}from"./index-CiL5zS_Y.js";import{g as Yh,a as A1,c as ci}from"./vendor-dayjs-Cvgzdobq.js";import{W as E1}from"./types-Cvj5H4DH.js";const T1="Alpha";class bD extends ht{constructor(e={}){super(),this.name=T1,this.url="https://github.com/alphabatem/alpha-wallet",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHZpZXdCb3g9IjAgMCAxMDgwIDEwODAiPjxkZWZzPjxzdHlsZT4ua3tmaWxsOiNmZmY7fS5se2ZpbGw6dXJsKCNjKTt9Lm17aXNvbGF0aW9uOmlzb2xhdGU7fS5ue2ZpbGw6dXJsKCNqKTtvcGFjaXR5Oi42Nzt9Lm4sLm97bWl4LWJsZW5kLW1vZGU6bXVsdGlwbHk7fS5ve2ZpbGw6dXJsKCNpKTtvcGFjaXR5Oi40MTt9LnB7ZmlsbDp1cmwoI2YpO30ucXtmaWxsOiMwMGNlN2M7fS5ye2ZpbGw6IzJhN2RlMTt9LnN7ZmlsbDp1cmwoI2cpO30udHtmaWxsOnVybCgjYik7fS51e2ZpbGw6dXJsKCNoKTt9LnZ7ZmlsbDp1cmwoI2QpO30ud3tmaWxsOnVybCgjZSk7fTwvc3R5bGU+PGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iNjYzLjIyIiB5MT0iMTAuNTIyIiB4Mj0iMzIzLjIwMiIgeTI9IjM1OS4zNzIiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMyNGNlN2IiLz48c3RvcCBvZmZzZXQ9Ii44MjgiIHN0b3AtY29sb3I9IiMyNTdjZTEiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYyIgeDE9IjMzNi4zNjgiIHkxPSItOTguMjg5IiB4Mj0iODQzLjk1OSIgeTI9IjI4MC41OCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgxLCAwLCAwLCAxLCAwLCAwKSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iLjQ3NiIgc3RvcC1jb2xvcj0iIzI0Y2U3YiIvPjxzdG9wIG9mZnNldD0iLjgyOCIgc3RvcC1jb2xvcj0iIzI1N2NlMSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJkIiB4MT0iMTk2LjU2NCIgeTE9IjIzMS44OTQiIHgyPSI5MzIuODIyIiB5Mj0iMjMxLjg5NCIgeGxpbms6aHJlZj0iI2MiLz48bGluZWFyR3JhZGllbnQgaWQ9ImUiIHgxPSIyMTQuODczIiB5MT0iMjk5LjIwNyIgeDI9IjgwMy44OCIgeTI9IjI5OS4yMDciIHhsaW5rOmhyZWY9IiNjIi8+PGxpbmVhckdyYWRpZW50IGlkPSJmIiB4MT0iMjA2LjM4NiIgeTE9IjkzNi4yMDIiIHgyPSI3ODUuNjY0IiB5Mj0iNjMzLjA3IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEsIDAsIDAsIDEsIDAsIDApIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuMzY3IiBzdG9wLWNvbG9yPSIjMjU3Y2UxIi8+PHN0b3Agb2Zmc2V0PSIuODUiIHN0b3AtY29sb3I9IiMyNGNlN2IiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iZyIgeDE9IjIwNC42MTEiIHkxPSI5NTcuMDQzIiB4Mj0iODEyLjQzNiIgeTI9IjYzOC45NzMiIHhsaW5rOmhyZWY9IiNjIi8+PGxpbmVhckdyYWRpZW50IGlkPSJoIiB4MT0iNTc0LjY4NCIgeTE9IjY3NS43MjMiIHgyPSI1NzkuMDU1IiB5Mj0iNjczLjQzNSIgeGxpbms6aHJlZj0iI2MiLz48bGluZWFyR3JhZGllbnQgaWQ9ImkiIHgxPSIxMDQyLjA3IiB5MT0iMTMwOC4zMyIgeDI9IjgzOC43NzciIHkyPSIxNzQ1LjYzIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKC01NDAuMTUxIC02MzEuNDg1KSByb3RhdGUoLjM5KSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iI2ZmZiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzAwMCIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJqIiB4MT0iMjEzOTcuNjU1IiB5MT0iMTE2MC4zOTIiIHgyPSIyMTE5MS4xNjMiIHkyPSIxNjA0LjU3MyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgyMTk3My43NjggLTYzMS40ODUpIHJvdGF0ZSgxNzkuNjEpIHNjYWxlKDEgLTEpIiB4bGluazpocmVmPSIjaSIvPjwvZGVmcz48ZyBjbGFzcz0ibSI+PGcgaWQ9ImEiPjxnPjxnPjxwYXRoIGNsYXNzPSJxIiBkPSJNNTY5LjYyMSw1NDAuMTMxYzQ3LjkzNiwxMDQuNTE0LDk1Ljg3MywyMDkuMDI4LDE0My44MDksMzEzLjU0M2wtMjAyLjcxOSwuMjU4YzE1LjExNCwzNC4xNzUsMzAuMjI5LDY4LjM1LDQ1LjM0MywxMDIuNTI0bDMxNS4zNzIsLjM5OWMtNjYuNDg4LTE0Ni40NTMtMTMyLjk3NS0yOTIuOTA2LTE5OS40NjMtNDM5LjM2LS4wMjEtNjUuOTI5LS4wNDMtMTMxLjg1Ny0uMDY0LTE5Ny43ODYtMzQuMTM2LDE0LjQ0NS02OC4yNzIsMjguODkxLTEwMi40MDgsNDMuMzM2LC4wNDMsNTkuMDI4LC4wODYsMTE4LjA1NywuMTI5LDE3Ny4wODVaIi8+PHBhdGggY2xhc3M9ImsiIGQ9Ik0zNTQuODc0LDg1My41NDVjNDIuMTMyLTEwNC44NTgsODQuMjY1LTIwOS43MTYsMTI2LjM5Ny0zMTQuNTc0LS4wODYtNTguNjQyLS4xNzItMTE3LjI4My0uMjU4LTE3NS45MjQtMzQuMTc5LTE0LjY4Mi02OC4zNTgtMjkuMzY0LTEwMi41MzctNDQuMDQ2LC40Myw2Ni4wNTgsLjg2LDEzMi4xMTUsMS4yOSwxOTguMTczbC0xNzkuNDA3LDQzOS42ODJjMTE4LjU3My0uMTI5LDIzNy4xNDUtLjI1OCwzNTUuNzE4LS4zODctMTUuMDQ3LTM0LjE3OS0zMC4wOTUtNjguMzU4LTQ1LjE0Mi0xMDIuNTM3LTUyLjAyMS0uMTI5LTEwNC4wNDEtLjI1OC0xNTYuMDYyLS4zODdaIi8+PGNpcmNsZSBjbGFzcz0idCIgY3g9IjUyMS40NTgiIGN5PSIxNTUuOTY2IiByPSIzOC43NzIiLz48Y2lyY2xlIGNsYXNzPSJsIiBjeD0iNjU1LjM2NCIgY3k9IjEzOS44MTEiIHI9IjYxLjkyNyIvPjxjaXJjbGUgY2xhc3M9InYiIGN4PSI1ODEuNTkiIGN5PSIyMzEuODk0IiByPSIyOS42MTciLz48Y2lyY2xlIGNsYXNzPSJ3IiBjeD0iNTIyLjg5NCIgY3k9IjI5OS4yMDciIHI9IjIzLjY5NCIvPjxwYXRoIGNsYXNzPSJwIiBkPSJNNTc2LjYxOSw3MzcuNzgxYy0uMzM2LS41OTktMy4zNTctNi4wOS04LjEyNy0xMy4yMTQtMS40MzEtMi4xMzctMy4wNDktNC40NDItNC45MjEtNi45NTItOC43OC0xMS43NjgtNDAuOTY4LTU0LjkxNC02OS45ODctNTEuMDA3LTIuNzY2LC4zNzItNC43MjksLjk3LTYuMzMzLDEuNDgxLTIzLjc1MSw3LjU3Mi0zNC4yNCwzNC41MTUtNDEuMDYsNTEuNTc0LTExLjg0MSwyOS42MTYtMjUuNTM5LDYxLjczMy00Mi4xMzYsMTAwLjMwNSw4NS4zMjcsLjIyOCwxNzAuNjUzLC40NTYsMjU1Ljk4LC42ODQtNTkuOTkzLTU1Ljk4MS04MC4xNTktNzcuMDY1LTgzLjQxNS04Mi44NzFaIi8+PHBhdGggY2xhc3M9InMiIGQ9Ik01MDUuNzc3LDcxNC4zNzljLTEzLjc0Nyw3Ljk5Mi0yNi44OTEsMTEuODU4LTMzLjcwMiwxMy42ODktMTIuNDM0LDMuMzQyLTIzLjIzNCw0LjQ5NC0zMS4wNDUsNC44ODRsLTM2Ljc5Niw4Ny4yNTJjODUuMjY2LC4wNjUsMTcwLjUzMiwuMTI5LDI1NS43OTksLjE5NC0xNC42Ni0zNS45ODQtMjkuMzIxLTcxLjk2OS00My45ODEtMTA3Ljk1NC0xMC41OTgtMjAuNzAyLTIwLjE4NC0zMi4zMTgtMjguNDg4LTM4LjU4NS02LjI4MS00Ljc0LTExLjgyOC02LjQyLTE2LjUyNi02LjY1Ni0uMzQ4LS4wMTgtLjY5Mi0uMDI3LTEuMDMtLjAzLTIwLjc4MS0uMTQ1LTI5LjUwNiwyNy4wMTgtNjQuMjMsNDcuMjA1WiIvPjxwYXRoIGNsYXNzPSJyIiBkPSJNNTM4LjkyNCw5NjguMTgxYzEuNDYzLDAsMS40NjUtMi4yNzMsMC0yLjI3M3MtMS40NjUsMi4yNzMsMCwyLjI3M2gwWiIvPjxsaW5lIGNsYXNzPSJ1IiB4MT0iNTc4LjAwNCIgeTE9IjY3NC42NTQiIHgyPSI1NzUuOTQxIiB5Mj0iNjc0LjM5NiIvPjwvZz48cGF0aCBjbGFzcz0ibyIgZD0iTTM3OS44MzEsNTE3LjEwOWMzMy44MzUsNy4yODcsNjcuNjcsMTQuNTc0LDEwMS41MDUsMjEuODYybC0xMjYuNDUsMzE0LjU2MiwxNTYuMDY2LC4zOTljMTUuMDQ2LDM0LjE3OSwzMC4wOTIsNjguMzU4LDQ1LjEzOCwxMDIuNTM3LTExOC41NzcsLjE1LTIzNy4xNTMsLjMwMS0zNTUuNzMsLjQ1MSw1OS44MjQtMTQ2LjYwNCwxMTkuNjQ4LTI5My4yMDcsMTc5LjQ3MS00MzkuODExWiIvPjxwYXRoIGNsYXNzPSJuIiBkPSJNNjcxLjkyOCw1MTcuNTMyYy0zNC4xMTQsNy41MjktNjguMjI5LDE1LjA1OC0xMDIuMzQzLDIyLjU4Nyw0Ny45NDcsMTA0LjUxNiw5NS44OTQsMjA5LjAzMSwxNDMuODQxLDMxMy41NDctNjcuNDk2LC4wODktMTM0Ljk5MSwuMTc3LTIwMi40ODcsLjI2NiwxNS4wNDksMzQuMTgzLDMwLjA5OSw2OC4zNjcsNDUuMTQ4LDEwMi41NSwxMDUuMTE1LC4xMjYsMjEwLjIzLC4yNTMsMzE1LjM0NSwuMzc5LTY2LjUwMi0xNDYuNDQzLTEzMy4wMDMtMjkyLjg4Ni0xOTkuNTA1LTQzOS4zMjlaIi8+PC9nPjwvZz48L2c+PC9zdmc+",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.alpha?.isAlpha?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.alpha;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const S1="Avana";class MD extends ht{constructor(e={}){super(),this.name=S1,this.url="https://www.avanawallet.com",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNi4yLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAyODkuNzg3ODEgMjg5Ljc4NzgxIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAyODkuNzg3ODEgMjg5Ljc4NzgxIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiMxQzFDMUMiIGQ9Ik0yMTguNDM5MDEsMjg5Ljc4NzgxSDcxLjM0ODhDMzEuOTQzOTUsMjg5Ljc4NzgxLDAsMjU3Ljg0Mzg3LDAsMjE4LjQzOTAxVjcxLjM0ODgNCglDMCwzMS45NDM5NSwzMS45NDM5NSwwLDcxLjM0ODgsMGgxNDcuMDkwMjFjMzkuNDA0ODYsMCw3MS4zNDg4LDMxLjk0Mzk1LDcxLjM0ODgsNzEuMzQ4OHYxNDcuMDkwMjENCglDMjg5Ljc4NzgxLDI1Ny44NDM4NywyNTcuODQzODcsMjg5Ljc4NzgxLDIxOC40MzkwMSwyODkuNzg3ODF6Ii8+DQo8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjczLjU4NTUzIiB5MT0iMjE3Ljk4MDgzIiB4Mj0iMjA4LjY0NzQ5IiB5Mj0iLTY0LjU5NzU2IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIC0xIDAgMjkwLjc5MzAzKSI+DQoJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6IzE2RkVBOCIvPg0KCTxzdG9wICBvZmZzZXQ9IjAuNCIgc3R5bGU9InN0b3AtY29sb3I6IzAwREFGRiIvPg0KCTxzdG9wICBvZmZzZXQ9IjAuOTIiIHN0eWxlPSJzdG9wLWNvbG9yOiNEQzFGRkYiLz4NCgk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojREMxRkZGIi8+DQo8L2xpbmVhckdyYWRpZW50Pg0KPHBhdGggZmlsbD0idXJsKCNTVkdJRF8xXykiIGQ9Ik0yMzUuNzgxMjIsMjE3LjA0NTMzTDE1Ny43MjQ0Myw0OC40NTUyMmMtNS4wMzU4MS0xMC45MjA1NC0yMC41Mzk3Ni0xMC45MjA1NC0yNS41NzU1OSwwDQoJbC0zOS4xODM4OSw4NC41OTIxNGMtMS4xMDM0MiwyLjQwNDcyLTEuNjQwOTcsNC45NzkzNy0xLjY0MDk3LDcuNDY5MDZjMCw3LjEwMTA3LDQuMjQzNzUsMTMuODkxMTMsMTEuNDAxNDQsMTYuNjYzNjQNCgljOC44ODM2NCwzLjQ1MTY4LDE4LjkyNzEzLTEuMTAzMjMsMjIuOTQ0NjYtOS43NjA0OGw5Ljc4ODgyLTIxLjEzMzk2YzMuNzM0NTEtOC4wOTEzOCwxNS4yMjA5Mi04LjA5MTM4LDE4Ljk1NTQ2LDANCglsMTYuNDQ4MiwzNS41NTM0M2MyLjQxMjAyLDUuMjEzNjctMS43MDg5MiwxMS4wMjA4My03LjQzNzA5LDEwLjU4NzAxYy02Ny42NzI1LTUuMTI0OTQtMTA1LjA3MzAzLDM4LjcwMzA5LTEwNi4xNjQ3Niw0MC4wMDc3NA0KCWMtMC4wMjgxNCwwLjAyODMxLTAuMDI4MTQsMC4wMjgzMS0wLjAyODE0LDAuMDI4MzFjLTMuMDI3MjMsMy4xOTY5OS00Ljg5NDU4LDcuNDY5MDYtNC44OTQ1OCwxMi4yNTAxOA0KCWMwLDkuODE3MzEsNy45NDk5NCwxNy43NjcyNiwxNy43Mzg5MywxNy43NjcyNmM1LjE3NzQzLDAsOS44NDU0NS0yLjIzNDk5LDEzLjA5OTA1LTUuNzcxNDRjMCwwLDAuMDg0NzktMC4xMTMzLDAuMjU0NTMtMC4zMTEzNg0KCWMwLjExMzI4LTAuMTEzMTEsMC4yNTQ3MS0wLjI1NDUzLDAuMzk2MTMtMC40MjQyNmM0Ljk0NjEtNS4zMDEyNSwzNy42MTI0LTM3LjM5MDI3LDkyLjA2NjE1LTI2LjM1OTA3DQoJYzEyLjAxNzc4LDIuNDM0NTQsMjIuMDQ5NjgsMTAuNjgxNywyNy4yMTE2MiwyMS44MDQxNGwwLDBjMy4wMjcyMiw2LjUzNTM3LDkuNTA1OTcsMTEuMDYxOTgsMTYuNzIwMjksMTAuOTc3MDENCglDMjMyLjcyNTY2LDI0Mi4yMjQ4MiwyNDEuMjEzMTcsMjI4Ljc4NjI1LDIzNS43ODEyMiwyMTcuMDQ1MzN6Ii8+DQo8L3N2Zz4NCg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.avana?.solana?.isAvana?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.avana.solana;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const Tg="Bitget";class j1 extends ht{constructor(e={}){super(),this.name=Tg,this.url="https://web3.bitget.com",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSIjMDAxRjI5Ii8+CjxwYXRoIGQ9Ik0yMTkuOTQ4IDk1LjcwMjJDMjAxLjYyMyA5NS42OTI5IDE4My4zMyA5NS42ODM1IDE2NC45NDEgOTUuNzExNkMxNTMuODIyIDk1LjcxMTYgMTQ5LjY1MSAxMDkuNjcxIDE1Ny45MjEgMTE3LjkzOUwyODMuMDk4IDI0My4xMTdDMjg3LjAwNCAyNDYuNjkgMjg5LjQ0MSAyNTAuNTc0IDI4OS41MyAyNTUuNjkzQzI4OS40NDEgMjYwLjgxMiAyODcuMDA0IDI2NC42OTYgMjgzLjA5OCAyNjguMjY5TDE1Ny45MjEgMzkzLjQ0NkMxNDkuNjUxIDQwMS43MTUgMTUzLjgyMiA0MTUuNjc0IDE2NC45NDEgNDE1LjY3NEMxODMuMzMgNDE1LjcwMiAyMDEuNjIzIDQxNS42OTMgMjE5Ljk0OCA0MTUuNjgzQzIyOS4xMjIgNDE1LjY3OSAyMzguMzA1IDQxNS42NzQgMjQ3LjUxMSA0MTUuNjc0QzI1OS41NTUgNDE1LjY3NCAyNjYuNzIgNDA5LjI0IDI3My4xNTQgNDAyLjgwNUwzODYuMDQ3IDI4OS45MTJDMzk1LjA1NyAyODAuOTAyIDQwMy4xMTkgMjY4LjkzOSA0MDMuMDA5IDI1NS42OTNDNDAzLjExOSAyNDIuNDQ3IDM5NS4wNTcgMjMwLjQ4NCAzODYuMDQ3IDIyMS40NzRMMjczLjE1NCAxMDguNThDMjY2LjcyIDEwMi4xNDYgMjU5LjU1NSA5NS43MTE2IDI0Ny41MTEgOTUuNzExNkMyMzguMzA1IDk1LjcxMTYgMjI5LjEyMiA5NS43MDY5IDIxOS45NDggOTUuNzAyMloiIGZpbGw9IiMwMEYwRkYiLz4KPC9zdmc+Cg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.bitkeep?.solana?.isBitKeep?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.bitkeep.solana;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const ND=Tg,vD=j1,x1="Bitpie";class ID extends Tn{constructor(e={}){super(),this.name=x1,this.url="https://bitpiecn.com",this.icon="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjY0IiB2aWV3Qm94PSIwIDAgNjQgNjQiIHdpZHRoPSI2NCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGxpbmVhckdyYWRpZW50IGlkPSJhIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMxZTNkYTAiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzNzUwZGUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYiIgeDE9IjUyLjU0NTc1JSIgeDI9IjUyLjU0NTc1JSIgeGxpbms6aHJlZj0iI2EiIHkxPSIxMDAlIiB5Mj0iMCUiLz48bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSI1MCUiIHgyPSI1MCUiIHkxPSIwJSIgeTI9IjEwMCUiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzFkM2JhMyIgc3RvcC1vcGFjaXR5PSIwIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMTczNzkzIiBzdG9wLW9wYWNpdHk9Ii42NTI5MzgiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iZCIgeDE9IjUwJSIgeDI9IjUwJSIgeGxpbms6aHJlZj0iI2EiIHkxPSIxMDAlIiB5Mj0iMCUiLz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Im0xOCAwaDI4YzkuOTQxMTI1NSAwIDE4IDguMDU4ODc0NSAxOCAxOHYyOGMwIDkuOTQxMTI1NS04LjA1ODg3NDUgMTgtMTggMThoLTI4Yy05Ljk0MTEyNTUgMC0xOC04LjA1ODg3NDUtMTgtMTh2LTI4YzAtOS45NDExMjU1IDguMDU4ODc0NS0xOCAxOC0xOHoiIGZpbGw9InVybCgjYikiLz48Y2lyY2xlIGN4PSIzMi4yODU3MTQiIGN5PSIzMi4yODU3MTQiIGZpbGw9IiNmZmYiIHI9IjI0LjI4NTcxNCIvPjxwYXRoIGQ9Im0zMiAwYzE3LjY3MzExMiAwIDMyIDE0LjMyNjg4OCAzMiAzMnMtMTQuMzI2ODg4IDMyLTMyIDMyLTMyLTE0LjMyNjg4OC0zMi0zMiAxNC4zMjY4ODgtMzIgMzItMzJ6bS0uMTQzNDk3OCA3LjYwNTM4MTE3Yy0xMy40NzI3NzU5IDAtMjQuMzk0NjE4NzkgMTAuOTIxODQyODMtMjQuMzk0NjE4NzkgMjQuMzk0NjE4ODNzMTAuOTIxODQyODkgMjQuMzk0NjE4OCAyNC4zOTQ2MTg3OSAyNC4zOTQ2MTg4YzEzLjQ3Mjc3NiAwIDI0LjM5NDYxODktMTAuOTIxODQyOCAyNC4zOTQ2MTg5LTI0LjM5NDYxODhzLTEwLjkyMTg0MjktMjQuMzk0NjE4ODMtMjQuMzk0NjE4OS0yNC4zOTQ2MTg4M3oiIGZpbGw9InVybCgjYykiLz48cGF0aCBkPSJtMjkuMDkwOTA5MSA0NC4zNjM2MzY0YzAgMi4wMDgzMDgxLTEuNjI4MDU1NSAzLjYzNjM2MzYtMy42MzYzNjM2IDMuNjM2MzYzNi0yLjAwODMwODIgMC0zLjYzNjM2MzctMS42MjgwNTU1LTMuNjM2MzYzNy0zLjYzNjM2MzZsLS4wMDAxODE4LTIuMTgyNjM2NC0yLjE4MTYzNjQuMDAwODE4MmMtMi4wMDgzMDgxIDAtMy42MzYzNjM2LTEuNjI4MDU1NS0zLjYzNjM2MzYtMy42MzYzNjM3IDAtMi4wMDgzMDgxIDEuNjI4MDU1NS0zLjYzNjM2MzYgMy42MzYzNjM2LTMuNjM2MzYzNmwyLjE4MTYzNjQtLjAwMDA5MDl2LTUuODE5bC0yLjE4MTYzNjQuMDAwOTA5MWMtMi4wMDgzMDgxIDAtMy42MzYzNjM2LTEuNjI4MDU1NS0zLjYzNjM2MzYtMy42MzYzNjM2IDAtMi4wMDgzMDgyIDEuNjI4MDU1NS0zLjYzNjM2MzcgMy42MzYzNjM2LTMuNjM2MzYzN2wyLjE4MTYzNjQtLjAwMDE4MTguMDAwMTgxOC0yLjE4MTYzNjRjMC0yLjAwODMwODEgMS42MjgwNTU1LTMuNjM2MzYzNiAzLjYzNjM2MzctMy42MzYzNjM2IDIuMDA4MzA4MSAwIDMuNjM2MzYzNiAxLjYyODA1NTUgMy42MzYzNjM2IDMuNjM2MzYzNmwtLjAwMDkwOTEgMi4xODE2MzY0aDUuODE5bC4wMDAwOTA5LTIuMTgxNjM2NGMwLTIuMDA4MzA4MSAxLjYyODA1NTUtMy42MzYzNjM2IDMuNjM2MzYzNi0zLjYzNjM2MzYgMi4wMDgzMDgyIDAgMy42MzYzNjM3IDEuNjI4MDU1NSAzLjYzNjM2MzcgMy42MzYzNjM2bC0uMDAwODE4MiAyLjE4MTYzNjQgMi4xODI2MzY0LjAwMDE4MThjMi4wMDgzMDgxIDAgMy42MzYzNjM2IDEuNjI4MDU1NSAzLjYzNjM2MzYgMy42MzYzNjM3IDAgMi4wMDgzMDgxLTEuNjI4MDU1NSAzLjYzNjM2MzYtMy42MzYzNjM2IDMuNjM2MzYzNmwtMi4xODI2MzY0LS4wMDA5MDkxdjUuODE5bDIuMTgyNjM2NC4wMDAwOTA5YzIuMDA4MzA4MSAwIDMuNjM2MzYzNiAxLjYyODA1NTUgMy42MzYzNjM2IDMuNjM2MzYzNiAwIDIuMDA4MzA4Mi0xLjYyODA1NTUgMy42MzYzNjM3LTMuNjM2MzYzNiAzLjYzNjM2MzdsLTIuMTgyNjM2NC0uMDAwODE4Mi4wMDA4MTgyIDIuMTgyNjM2NGMwIDIuMDA4MzA4MS0xLjYyODA1NTUgMy42MzYzNjM2LTMuNjM2MzYzNyAzLjYzNjM2MzYtMi4wMDgzMDgxIDAtMy42MzYzNjM2LTEuNjI4MDU1NS0zLjYzNjM2MzYtMy42MzYzNjM2bC0uMDAwMDkwOS0yLjE4MjYzNjRoLTUuODE5em0tLjAwMDkwOTEtOS40NTQ2MzY0aDUuODE5di01LjgxOWgtNS44MTl6IiBmaWxsPSJ1cmwoI2QpIiB0cmFuc2Zvcm09Im1hdHJpeCguODY2MDI1NCAtLjUgLjUgLjg2NjAyNTQgLTExLjcxMjgxMyAyMC4yODcxODcpIi8+PC9nPjwvc3ZnPg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.bitpie?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.bitpie;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._wallet&&(this._wallet=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const C1="Clover";class DD extends ht{constructor(e={}){super(),this.name=C1,this.url="https://clv.org",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2LjQ4IDBIMTEuNTJDNS4xNTc2OCAwIDAgNS4xNTc2OCAwIDExLjUyVjM2LjQ4QzAgNDIuODQyMyA1LjE1NzY4IDQ4IDExLjUyIDQ4SDM2LjQ4QzQyLjg0MjMgNDggNDggNDIuODQyMyA0OCAzNi40OFYxMS41MkM0OCA1LjE1NzY4IDQyLjg0MjMgMCAzNi40OCAwWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzc5MTBfMTYzMzUxKSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTI0LjAwMDYgMzkuMzYwNkMzMi40ODM3IDM5LjM2MDYgMzkuMzYwNiAzMi40ODM3IDM5LjM2MDYgMjQuMDAwNkMzOS4zNjA2IDE1LjUxNzUgMzIuNDgzNyA4LjY0MDYyIDI0LjAwMDYgOC42NDA2MkMxNS41MTc1IDguNjQwNjIgOC42NDA2MiAxNS41MTc1IDguNjQwNjIgMjQuMDAwNkM4LjY0MDYyIDMyLjQ4MzcgMTUuNTE3NSAzOS4zNjA2IDI0LjAwMDYgMzkuMzYwNlpNMjEuMjg5OSAxNS44Njg4SDI2LjcxMVYyMS4zNDdIMjEuMjkwNFYyNi42NTRIMjYuNzExVjMyLjEzMjJIMjEuMjg5OVYyNi44MjUySDE1Ljg2OTNWMjEuMzQ3SDIxLjI4OTlWMTUuODY4OFpNMjYuNzEyIDIxLjM0N0gzMi4xMzMxVjI2LjgyNTJIMjYuNzEyVjIxLjM0N1oiIGZpbGw9ImJsYWNrIi8+CjxkZWZzPgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfNzkxMF8xNjMzNTEiIHgxPSI0OCIgeTE9Ii0xLjQzMDUxZS0wNiIgeDI9IjEuNDMwNTFlLTA2IiB5Mj0iNDgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0E5RkZFMCIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM4NkQ1RkYiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.clover_solana?.isCloverWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.clover_solana;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._wallet&&(this._wallet=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return Uint8Array.from(i)}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}function AD(r){if(r.length>=255)throw new TypeError("Alphabet too long");const e=new Uint8Array(256);for(let c=0;c<e.length;c++)e[c]=255;for(let c=0;c<r.length;c++){const l=r.charAt(c),h=l.charCodeAt(0);if(e[h]!==255)throw new TypeError(l+" is ambiguous");e[h]=c}const t=r.length,i=r.charAt(0),s=Math.log(t)/Math.log(256),n=Math.log(256)/Math.log(t);function o(c){if(c instanceof Uint8Array||(ArrayBuffer.isView(c)?c=new Uint8Array(c.buffer,c.byteOffset,c.byteLength):Array.isArray(c)&&(c=Uint8Array.from(c))),!(c instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(c.length===0)return"";let l=0,h=0,f=0;const w=c.length;for(;f!==w&&c[f]===0;)f++,l++;const g=(w-f)*n+1>>>0,m=new Uint8Array(g);for(;f!==w;){let D=c[f],O=0;for(let C=g-1;(D!==0||O<h)&&C!==-1;C--,O++)D+=256*m[C]>>>0,m[C]=D%t>>>0,D=D/t>>>0;if(D!==0)throw new Error("Non-zero carry");h=O,f++}let E=g-h;for(;E!==g&&m[E]===0;)E++;let A=i.repeat(l);for(;E<g;++E)A+=r.charAt(m[E]);return A}function a(c){if(typeof c!="string")throw new TypeError("Expected String");if(c.length===0)return new Uint8Array;let l=0,h=0,f=0;for(;c[l]===i;)h++,l++;const w=(c.length-l)*s+1>>>0,g=new Uint8Array(w);for(;l<c.length;){const D=c.charCodeAt(l);if(D>255)return;let O=e[D];if(O===255)return;let C=0;for(let _=w-1;(O!==0||C<f)&&_!==-1;_--,C++)O+=t*g[_]>>>0,g[_]=O%256>>>0,O=O/256>>>0;if(O!==0)throw new Error("Non-zero carry");f=C,l++}let m=w-f;for(;m!==w&&g[m]===0;)m++;const E=new Uint8Array(h+(w-m));let A=h;for(;m!==w;)E[A++]=g[m++];return E}function u(c){const l=a(c);if(l)return l;throw new Error("Non-base"+t+" character")}return{encode:o,decodeUnsafe:a,decode:u}}var ED="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";const vn=AD(ED),_1="Coin98";class TD extends ht{constructor(e={}){super(),this.name=_1,this.url="https://coin98.com",this.icon="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3NiA3NSI+CiAgPGRlZnM+CiAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIxMDEuNjgxJSIgeDI9Ii0xLjU1NyUiIHkxPSIxNS4yNjglIiB5Mj0iODQuOTE3JSI+CiAgICAgIDxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiNGMUQ5NjEiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjQ0RBMTQ2Ii8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogIDwvZGVmcz4KICA8ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgPHJlY3Qgd2lkdGg9Ijc1IiBoZWlnaHQ9Ijc1IiBmaWxsPSIjMDAwIiByeD0iMTYiLz4KICAgIDxwYXRoIGZpbGw9InVybCgjYSkiIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTYxLjQ0IDBhMTMuNzE0IDEzLjcxNCAwIDAgMSA5LjY4IDQuMDEgMTMuNjYxIDEzLjY2MSAwIDAgMSA0LjAwOCA5LjY2OHY0Ny42NDZhMTMuNjYgMTMuNjYgMCAwIDEtNC4wMDcgOS42NjZBMTMuNzEzIDEzLjcxMyAwIDAgMSA2MS40NCA3NUgxMy42ODZhMTMuNzEzIDEzLjcxMyAwIDAgMS05LjY4LTQuMDFBMTMuNjYgMTMuNjYgMCAwIDEgMCA2MS4zMjRWMTMuNjc4YzAtMy42MjUgMS40NC03LjEwMiA0LjAwNy05LjY2N0ExMy43MTQgMTMuNzE0IDAgMCAxIDEzLjY4NyAwWk0yMC4wNjMgNDYuMjMxaC00LjgyNWExMC4wMzIgMTAuMDMyIDAgMCAwIDIuOTQ2IDcuMDg2IDEwLjA3IDEwLjA3IDAgMCAwIDcuMSAyLjk0MiAxMC4wNjUgMTAuMDY1IDAgMCAwIDcuMTA4LTIuOTM1IDEwLjAzIDEwLjAzIDAgMCAwIDIuOTQ2LTcuMDkzaC00LjgyNGE1LjIwNyA1LjIwNyAwIDAgMS0xLjUzIDMuNjg4IDUuMjI1IDUuMjI1IDAgMCAxLTMuNjk2IDEuNTI4IDUuMjM0IDUuMjM0IDAgMCAxLTMuNjk1LTEuNTI4IDUuMjEzIDUuMjEzIDAgMCAxLTEuNTMtMy42ODhaTTU0LjMzIDMzLjcxNmExMS43NjMgMTEuNzYzIDAgMCAwLTEyLjc5OSAyLjUzOEExMS42OTcgMTEuNjk3IDAgMCAwIDM4Ljk5IDQ5LjAzYTExLjcyMyAxMS43MjMgMCAwIDAgNC4zMjggNS4yNTkgMTEuNzU3IDExLjc1NyAwIDAgMCA2LjUyNiAxLjk3IDExLjc2NiAxMS43NjYgMCAwIDAgOC4yOS0zLjQzNSAxMS43MiAxMS43MiAwIDAgMCAzLjQ0Mi04LjI3NCAxMS43MDIgMTEuNzAyIDAgMCAwLTEuOTc1LTYuNTE0IDExLjczNiAxMS43MzYgMCAwIDAtNS4yNjktNC4zMlptLTQuNDg4IDMuOTJhNi45MzcgNi45MzcgMCAwIDEgNC45IDIuMDI1IDYuOTEgNi45MSAwIDAgMSAyLjAyOCA0Ljg5MiA2Ljg5NyA2Ljg5NyAwIDAgMS0xLjE3IDMuODM0IDYuOTMyIDYuOTMyIDAgMCAxLTEwLjY0MyAxLjA0MiA2LjkwMiA2LjkwMiAwIDAgMS0xLjUtNy41MjIgNi45MDkgNi45MDkgMCAwIDEgMi41NDQtMy4xIDYuOTI4IDYuOTI4IDAgMCAxIDMuODQxLTEuMTY3Wm0uMTcgNC41NTJhMi40MzEgMi40MzEgMCAwIDAtMi4yNDEgMS4xNTQgMi40MTggMi40MTggMCAwIDAtLjM1NiAxLjI1NyAyLjM5NSAyLjM5NSAwIDAgMCAxLjYxOSAyLjI5djEuNzUzaDEuNjE4di0xLjc1NGEyLjQyNyAyLjQyNyAwIDAgMCAxLjU5NC0xLjk1IDIuNDE4IDIuNDE4IDAgMCAwLTEtMi4zMSAyLjQzMSAyLjQzMSAwIDAgMC0xLjIzNC0uNDRabS0yMC4yMi0yMi41NTJhMTEuNzYyIDExLjc2MiAwIDAgMC0xMi43OTYgMi41MzEgMTEuNjk3IDExLjY5NyAwIDAgMC0yLjU1NCAxMi43NjkgMTEuNzIzIDExLjcyMyAwIDAgMCA0LjMyIDUuMjYyIDExLjc1NyAxMS43NTcgMCAwIDAgMTQuODI1LTEuNDQ2IDExLjcxNyAxMS43MTcgMCAwIDAgMy40NDUtOC4yODQgMTEuNzAzIDExLjcwMyAwIDAgMC0xLjk3NC02LjUxMiAxMS43MzYgMTEuNzM2IDAgMCAwLTUuMjY2LTQuMzJabS00LjUxIDMuOTE3YTYuOTQ1IDYuOTQ1IDAgMCAxIDQuODk3IDIuMDI5IDYuOTE4IDYuOTE4IDAgMCAxIDIuMDMyIDQuODg2IDYuOTA2IDYuOTA2IDAgMCAxLTEuMTY4IDMuODQyIDYuOTQgNi45NCAwIDAgMS0xMC42NiAxLjA0OCA2LjkxMSA2LjkxMSAwIDAgMS0xLjUtNy41MzYgNi45MTggNi45MTggMCAwIDEgMi41NS0zLjEwMyA2LjkzNyA2LjkzNyAwIDAgMSAzLjg1LTEuMTY2Wm0yNC41Ni00LjgxYTEwLjA1OSAxMC4wNTkgMCAwIDAtNy4xMDMgMi45NCAxMC4wMiAxMC4wMiAwIDAgMC0yLjk0IDcuMDkgOS45IDkuOSAwIDAgMCAxLjIzIDQuNzk1IDEzLjU3NSAxMy41NzUgMCAwIDEgNC4yMTQtMi4zMjIgNS4wODIgNS4wODIgMCAwIDEtLjYyNS0yLjQ3NyA1LjIwNiA1LjIwNiAwIDAgMSAxLjUwMy0zLjczNiA1LjIyMyA1LjIyMyAwIDAgMSAzLjcyMi0xLjU1NCA1LjIzNCA1LjIzNCAwIDAgMSAzLjcyIDEuNTU0IDUuMjEzIDUuMjEzIDAgMCAxIDEuNTA1IDMuNzM2IDUuMjc5IDUuMjc5IDAgMCAxLS42MjMgMi40NzMgMTMuNTc0IDEzLjU3NCAwIDAgMSA0LjIxMyAyLjMyMiA5LjkwMyA5LjkwMyAwIDAgMCAxLjIzLTQuNzk1IDEwLjAzMiAxMC4wMzIgMCAwIDAtMi45NDYtNy4wODYgMTAuMDcgMTAuMDcgMCAwIDAtNy4xLTIuOTRabS0yMy43NSA3Ljk5aC0xLjYxN3YxLjc1YTIuNDE5IDIuNDE5IDAgMCAwLTEuNTgyIDIuNjg3IDIuNDE0IDIuNDE0IDAgMCAwIDIuMzkgMi4wMDYgMi40NSAyLjQ1IDAgMCAwIDEuNTU1LS41NzQgMi40MTQgMi40MTQgMCAwIDAtLjc0Ni00LjExOXYtMS43NVoiLz4KICA8L2c+Cjwvc3ZnPgo=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.coin98?.sol?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected()}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.coin98.sol;let t;try{t=(await e.connect())[0]}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{const i=await t.request({method:"sol_sign",params:[e]}),s=new Me(i.publicKey),n=vn.decode(i.signature);return e.addSignature(s,Buffer.from(n)),e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{const i=await t.request({method:"sol_signAllTransactions",params:[e]}),s=new Me(i.publicKey),n=i.signatures;return e.map((o,a)=>{const u=vn.decode(n[a]);return o.addSignature(s,Buffer.from(u)),o})}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const i=await t.request({method:"sol_signMessage",params:[e]});return vn.decode(i.signature)}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const O1="Coinbase Wallet";class SD extends ht{constructor(e={}){super(),this.name=O1,this.url="https://chrome.google.com/webstore/detail/coinbase-wallet-extension/hnfanknocfeofbddgcijnmhnfnkdnaad",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAyNCIgaGVpZ2h0PSIxMDI0IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8Y2lyY2xlIGN4PSI1MTIiIGN5PSI1MTIiIHI9IjUxMiIgZmlsbD0iIzAwNTJGRiIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE1MiA1MTJDMTUyIDcxMC44MjMgMzEzLjE3NyA4NzIgNTEyIDg3MkM3MTAuODIzIDg3MiA4NzIgNzEwLjgyMyA4NzIgNTEyQzg3MiAzMTMuMTc3IDcxMC44MjMgMTUyIDUxMiAxNTJDMzEzLjE3NyAxNTIgMTUyIDMxMy4xNzcgMTUyIDUxMlpNNDIwIDM5NkM0MDYuNzQ1IDM5NiAzOTYgNDA2Ljc0NSAzOTYgNDIwVjYwNEMzOTYgNjE3LjI1NSA0MDYuNzQ1IDYyOCA0MjAgNjI4SDYwNEM2MTcuMjU1IDYyOCA2MjggNjE3LjI1NSA2MjggNjA0VjQyMEM2MjggNDA2Ljc0NSA2MTcuMjU1IDM5NiA2MDQgMzk2SDQyMFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window?.coinbaseSolana?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.coinbaseSolana;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;os(e)?n?.length&&e.sign(n):(e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n)),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const z1="Coinhub";class jD extends Tn{constructor(e={}){super(),this.name=z1,this.url="https://coinhub.org",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTAwcHgiIGhlaWdodD0iMTAwcHgiIHZpZXdCb3g9IjAgMCAxMDAgMTAwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPuefqeW9ojwvdGl0bGU+CiAgICA8ZyBpZD0i6aG16Z2iLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSLkuIvovb3pobVpb3MiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMzguMDAwMDAwLCAtOTQuMDAwMDAwKSI+CiAgICAgICAgICAgIDxnIGlkPSJDb2luaHViLSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTM4LjAwMDAwMCwgOTQuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8cmVjdCBpZD0i55+p5b2iIiB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCI+PC9yZWN0PgogICAgICAgICAgICAgICAgPGcgaWQ9Iue8lue7hCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMy4zMzMzMzMsIDMuMzMzMzMzKSIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNTcuOTU2MzU0Miw0MC43MDQ2MzE2IEM1Ny45NTYzNTQyLDQwLjcwNDYzMTYgNjIuNzc2ODc1LDU2LjM0NTIxMDUgODEuNjE1OTg5Niw1OC41MTY2ODQyIEM4NC43MzEzNTQyLDU4Ljg3NTUyNjMgODguMjYwNTIwOCw1OS4yNjM4NDIxIDkxLjg2ODQzNzUsNTguMTg4MDUyNiBDOTIuMDIyMjkxNyw1OC4xOTc2MzE2IDkyLjE3MjUsNTguMjQwNzM2OCA5Mi4zMDgxMjUsNTguMzE0MDUyNiBDOTIuNDQ0MTE0Niw1OC4zODczNjg0IDkyLjU2Mjk2ODgsNTguNDg5MDUyNiA5Mi42NTY2NjY3LDU4LjYxMjg0MjEgQzkyLjc1LDU4LjczNjYzMTYgOTIuODE1OTg5Niw1OC44Nzk1Nzg5IDkyLjg1MDI2MDQsNTkuMDMxMzY4NCBDOTIuODg0NTMxMyw1OS4xODMxNTc5IDkyLjg4NTYyNSw1OS4zNDA0NzM3IDkyLjg1NDI3MDgsNTkuNDkzIEM5Mi4zMjM4MDIxLDYzLjE1MTc4OTUgOTEuMTIzNTkzNyw2Ni42Nzg2ODQyIDg5LjMxNTI2MDQsNjkuODkzNTI2MyBDODQuNzQxMTk3OSw3OC4xMTE4OTQ3IDc0LjY5NTQ2ODgsODguOTgwNjg0MiA1Mi4wMTE4MjI5LDkyLjgwNiBDNTAuODA5MDYyNSw5Mi44MDYgNDguNDMzMDcyOSw5MS43NDAxNTc5IDQ3LjMyOTExNDYsOTEuOTI5NTI2MyBDNDcuMzI5MTE0Niw5MS45MDkyNjMyIDE5Ljk3MjUzMTIsNjcuNjUyMDUyNiA1Ny45NTYzNTQyLDQwLjcwNDYzMTYgWiIgaWQ9Iui3r+W+hCIgZmlsbD0iI0NGQkZBMyI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik01Mi4wMTE0NTgzLDkyLjgwNiBDNTIuMDExNDU4Myw5Mi44MDYgMzIuMTk2NSw2NC4xNzUyNjMyIDYzLjMwOTE2NjcsNDkuNTExIEw1OS40MzQ3Mzk2LDQ0LjQxMDU3ODkgQzU5LjQzNDczOTYsNDQuNDEwNTc4OSAxOS4xNDQxOTc5LDY1LjE5MTM2ODQgNTIuMDExNDU4Myw5Mi44MDYgWiIgaWQ9Iui3r+W+hCIgZmlsbD0iI0I5QTc5OCI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik05Mi44NTQ2MzU0LDU5LjUzMzE1NzkgQzkyLjIzOTU4MzMsNjMuMzYxMDUyNiA5MC45NDAyMDgzLDY3LjA0Mzc4OTUgODkuMDE5OTQ3OSw3MC40MDE1Nzg5IEw4My4yNjI0NDc5LDU4LjY5NjEwNTMgQzg1LjkzMDEwNDIsNTkuMDU0OTQ3NCA4OC42Mzk2ODc1LDU4LjkxNjQyMTEgOTEuMjU3NzYwNCw1OC4yODc4OTQ3IEM5Mi41MDk3Mzk2LDU3Ljk5OTA1MjYgOTMuMDUxODc1LDU4LjQxNzIxMDUgOTIuODU0NjM1NCw1OS41MzMxNTc5IFoiIGlkPSLot6/lvoQiIGZpbGw9IiM4QzY3NDIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNTkuNzk5Njg3NSw2Ny41MzIzMTU4IEM2Mi4wMTU2MjUsNjcuNTMyMzE1OCA2My44MTE5MjcxLDY1LjcxNzEwNTMgNjMuODExOTI3MSw2My40Nzc4NDIxIEM2My44MTE5MjcxLDYxLjIzODU3ODkgNjIuMDE1NjI1LDU5LjQyMzM2ODQgNTkuNzk5Njg3NSw1OS40MjMzNjg0IEM1Ny41ODM3NSw1OS40MjMzNjg0IDU1Ljc4NzQ0NzksNjEuMjM4NTc4OSA1NS43ODc0NDc5LDYzLjQ3Nzg0MjEgQzU1Ljc4NzQ0NzksNjUuNzE3MTA1MyA1Ny41ODM3NSw2Ny41MzIzMTU4IDU5Ljc5OTY4NzUsNjcuNTMyMzE1OCBaIiBpZD0i6Lev5b6EIiBmaWxsPSIjMjIyMjIyIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTYwLjU1OTExNDYsNi44MTQwMjEwNSBMNjMuODkxMDQxNywxLjI3NTEzNDc0IEM1OC4yNzI4MTI1LDIuMjE4NjEzMTYgNTIuNzc3MDgzMywzLjc5NTg0MjExIDQ3LjUwNjY2NjcsNS45NzcxODk0NyBDNDYuMTIzODAyMSw2LjEwODQ5NDc0IDQ0Ljc0ODU5MzcsNi4zMTEzMTA1MyA0My4zODYxNDU4LDYuNTg0ODYzMTYgTDUwLjA2MDIwODMsMy40NjI0NjIyOWUtMTMgQzQzLjQ2MzA3MjksMS42MzEzMDk0NyAzNy40ODkzNzUsNS4xOTM3NDIxMSAzMi44ODcwNTczLDEwLjI0MDkyNjMgQzMyLjIwNjgxNzcsMTAuNTc5NjUyNiAzMS41MzY0NTgzLDEwLjk0ODI1NzkgMzAuOTE1MzkwNiwxMS4zMzY3NTc5IEwzNi4xNTAxMTQ2LDEuNTkzOTI1NzkgQzI5LjA0OTE5NzksNS40NjMyNDIxMSAyMy40ODAzMzMzLDExLjY4MTYzNjggMjAuMzc2OTYzNSwxOS4yMDY3NDc0IEwyMy42MTA0NTMxLDcuODUwMDU3ODkgQzIzLjYxMDQ1MzEsNy44NTAwNTc4OSAxNS40Mzc5ODk2LDE0LjEwNjIxNTggMTMuOTg4ODQzNywyOS41MzczNDc0IEMxMy44MDE1MjA4LDI5LjkxNTkgMTMuNjE0MTk3OSwzMC4yOTQ0NTI2IDEzLjQzNjc1NTIsMzAuNjgyOTUyNiBMMTIuNTQ5NTQxNywxNi44NTU3MDUzIEMxMi41NDk1NDE3LDE2Ljg1NTcwNTMgNC42MDM4MTI1LDI5LjY1Njg2MzIgOS43MTAzNDg5Niw0NC4xMzE2ODQyIEw0LjE2MDE4NzUsMzAuMTg0ODQ3NCBDNC4xNjAxODc1LDMwLjE4NDg0NzQgMC43MTk2NTEwNDIsNDEuMTQzMDUyNiA5LjA4OTI4MTI1LDU1LjM0OSBMLTIuNzYzMjIxNzVlLTE0LDQ0LjcwOTM2ODQgQy0yLjc2MzIyMTc1ZS0xNCw0NC43MDkzNjg0IDAuODc3MzgwNzI5LDYzLjA2OTI2MzIgMTEuMjY3OTU4Myw3My4wMDE1MjYzIEMxMS4yNjc5NTgzLDczLjAwMTUyNjMgMTUuMDA0MjA4Myw3MS44NzYgMTcuMzAxMTkyNyw3NC41NDU1Nzg5IEMyMC45NjAyMjQsNzkuOTIzNDIxMSAyNS44MDI5NDc5LDg0LjM3MSAzMS40NDkxNzcxLDg3LjUzOTQyMTEgQzM3LjA5NTI2MDQsOTAuNzA3NDczNyA0My4zOTE2MTQ2LDkyLjUxMDUyNjMgNDkuODQzMjgxMiw5Mi44MDYgQzUwLjM4NTQxNjcsOTIuODA2IDUxLjQ2OTY4NzUsOTIuODA2IDUxLjQ2OTY4NzUsOTIuODA2IEM1MS40Njk2ODc1LDkyLjgwNiAzMi4xODcwOTM3LDc1Ljk4MDIxMDUgNTAuNzY5Njg3NSw1MS45NjE3MzY4IEM2OS4zNjIzNDM3LDI5Ljg1NjEwNTMgOTMuMzg2OTI3MSw0NS4yMjczNjg0IDkzLjE2MDE1NjIsNDMuMjQ0ODk0NyBDOTIuMDM3NjA0MiwzNC41NDI2Nzg5IDg4LjMxNTU3MjksMjYuMzkzMjA1MyA4Mi40OTA2MjUsMTkuODgzOTc4OSBDNzYuNjY1Njc3MSwxMy4zNzQ3NTI2IDY5LjAxNDg5NTgsOC44MTUzMjEwNSA2MC41NTkxMTQ2LDYuODE0MDIxMDUgTDYwLjU1OTExNDYsNi44MTQwMjEwNSBaIiBpZD0i6Lev5b6EIiBmaWxsPSIjMjJBMDc5Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTQzLjM0NjQwNjMsNzguNTgwMTU3OSBDNDMuMzQ2NDA2Myw3OC41ODAxNTc5IDIyLjA2MjQzMjMsODYuMDgxNTc4OSAyLjI4NjgzNDM4LDU3LjAzMjMxNTggQzQuNDA4MTc3MDgsNjQuNjU0MjEwNSA4LjIwNjE1MTA0LDcxLjY5MzI2MzIgMTMuMzk3MDUyMSw3Ny42MjM3MzY4IEMyMC42MjMxMzAyLDg2LjAyMTg5NDcgMzQuOTc2NzM5Niw5My4zMTQwNTI2IDUyLjAxMTgyMjksOTIuNzg2MTA1MyBDNDkuOTUzNzUsOTEuMTc5NDIxMSA0OC4yMzcyOTE3LDg5LjE3MDQyMTEgNDYuOTY0MTY2Nyw4Ni44Nzg0NzM3IEM0NS40OTM4MDIxLDg0LjIzOCA0NC4yODE5MjcxLDgxLjQ1OSA0My4zNDY0MDYzLDc4LjU4MDE1NzkgTDQzLjM0NjQwNjMsNzguNTgwMTU3OSBaIiBpZD0i6Lev5b6EIiBmaWxsPSIjMUI4MDYxIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.coinhub?.isCoinhubWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.coinhub;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._wallet&&(this._wallet=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const L1="Fractal";class xD extends ht{constructor(e={}){super(),this.name=L1,this.url="https://developers.fractal.is/wallet-adapters/solana",this.icon="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiPjxwYXRoIGQ9Ik0zNDIuMjQgNzYzLjkzVjI0My44Mkg3MTV2MTEyLjY5SDQ4MXYxMTUuNThoMTgydjExMi42OUg0ODF2MTc5LjE1WiIgc3R5bGU9ImZpbGw6I2RlMzU5YyIvPjwvc3ZnPg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.Loadable,this._connecting=!1,this._wallet=null,this._publicKey=null}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0;let e;try{e=(await Fi(async()=>{const{FractalWalletAdapterImpl:n}=await import("./index-Cqt9uEFx.js");return{FractalWalletAdapterImpl:n}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]))).FractalWalletAdapterImpl}catch(n){throw new Sn(n?.message,n)}let t;try{t=new e}catch(n){throw new so(n?.message,n)}if(!t.getPublicKey())try{await t.connect()}catch(n){throw new Yt(n?.message,n)}let s;try{s=new Me(t.getPublicKey().toBytes())}catch(n){throw new Ie(n?.message,n)}this._wallet=t,this._publicKey=s,this.emit("connect",s)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return t.signMessage(e)}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const P1="HuobiWallet";class CD extends ht{constructor(e={}){super(),this.name=P1,this.url="https://www.huobiwallet.io",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjI0IiBoZWlnaHQ9IjIyNCIgdmlld0JveD0iMCAwIDIyNCAyMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMCAwTDIyNCAwVjIyNEgwTDAgMFoiIGZpbGw9IiMyMTU3RTIiLz4KPHBhdGggZD0iTTEzMS4wNTkgODEuMTc3MUMxMzEuMDU5IDU3Ljc1MzEgMTE5LjQ1OCAzNy42MzE1IDExMC42MjUgMzEuMDcyOEMxMTAuNjI1IDMxLjA3MjggMTA5Ljk1MyAzMC43MDQyIDExMCAzMS42MjU4VjMxLjYyNThDMTA5LjI2NSA3Ni44MzAzIDg1Ljc2NzIgODkuMDg3NSA3Mi44MzggMTA1LjU4NEM0My4wMjQxIDE0My42NzcgNzAuNzU4NyAxODUuNDU2IDk4Ljk5MzUgMTkzLjEzNkMxMTQuNzk5IDE5Ny40NTIgOTUuMzUwOCAxODUuNDU2IDkyLjg0OTQgMTYwLjIzNUM4OS44MDA3IDEyOS43NDUgMTMxLjA1OSAxMDYuNDQ0IDEzMS4wNTkgODEuMTc3MVoiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl8xMTAxXzEyNSkiLz4KPHBhdGggZD0iTTE0My41OTcgOTYuMzE3NEMxNDMuNDA5IDk2LjE5NDMgMTQzLjE1OCA5Ni4xMDIgMTQyLjk4NiA5Ni4zOTQzQzE0Mi40ODQgMTAyLjEwMiAxMzYuNTYgMTE0LjI4NiAxMjkuMDM3IDEyNS40ODZDMTAzLjU1MiAxNjMuNDU1IDExOC4wNjUgMTgxLjc2MiAxMjYuMjQ3IDE5MS42MzlDMTMwLjk0OSAxOTcuMzQ3IDEyNi4yNDcgMTkxLjYzOSAxMzguMDk2IDE4NS44MDhDMTUyLjczNSAxNzcuMDkyIDE2Mi4yMzQgMTYyLjAyIDE2My42NDMgMTQ1LjI3QzE2NS4yMzMgMTI2Ljc1OCAxNTcuNzk4IDEwOC42IDE0My41OTcgOTYuMzE3NFoiIGZpbGw9InVybCgjcGFpbnQxX2xpbmVhcl8xMTAxXzEyNSkiLz4KPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xMTAxXzEyNSIgeDE9IjEyMi40MDEiIHkxPSIyMDkuMjk1IiB4Mj0iMTc4LjY2MiIgeTI9IjExMC40NDciIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y3RjZGRiIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IndoaXRlIi8+CjwvbGluZWFyR3JhZGllbnQ+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQxX2xpbmVhcl8xMTAxXzEyNSIgeDE9IjE1Ny44NjEiIHkxPSIyMDMuMTc3IiB4Mj0iMTg5LjAxNCIgeTI9IjE0MC4wMjIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y3RjZGRiIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IndoaXRlIi8+CjwvbGluZWFyR3JhZGllbnQ+CjwvZGVmcz4KPC9zdmc+Cg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.huobiWallet?.isHuobiWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.huobiWallet;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;e&&(e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("disconnect"))}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const k1="HyperPay";class _D extends ht{constructor(e={}){super(),this.name=k1,this.url="https://hyperpay.io",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTIwcHgiIGhlaWdodD0iNTIwcHgiIHZpZXdCb3g9IjAgMCA1MjAgNTIwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPkh5cGVyUGF5PC90aXRsZT4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Iue8lue7hC0zMyIgZmlsbD0iIzFBNzJGRSIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPHBhdGggZD0iTTI2MCwwIEM0MDMuNTIsMCA1MjAsMTE1Ljk0MTI1NSA1MjAsMjU5LjY1Mjg3IEM1MjAsNDAzLjM2NDQ4NiA0MDMuNTIsNTIwIDI2MCw1MjAgQzExNi40OCw1MjAgMCw0MDQuMDU4NzQ1IDAsMjYwLjM0NzEzIEMwLDExNi42MzU1MTQgMTE2LjQ4LDAgMjYwLDAgWiBNMTIzLjQ2Mzk4NSwxMjIuNjQ3NzM3IEwxMjMuNDEzMzMzLDEyMi42NDc1MyBMMTA2LjA4LDE4My42MjQ4MzMgTDIyMS44NjY2NjcsMTgzLjYyNDgzMyBMMjA4LDI0OC43NTk2OCBMMjc5LjQxMzMzMywyNDguNzU5NjggTDI3OS40MTMzMzMsMjQ4Ljc1OTY4IEwyNzkuNDEzODUzLDI0OC43MDU5NzggQzI3OS40MjM3MzMsMjQ4LjAxNDc4NiAyNzkuNjIxMzMzLDI0MC40NDQ1OTMgMjgzLjU3MzMzMywyMTQuMTEzNDg1IEMyODkuODEzMzMzLDE3MC40NTkyNzkgMzY1LjM4NjY2NywxNjcuNjg3NTgzIDM2NC42OTMzMzMsMjE2Ljg4NTE4IEMzNjQsMjUyLjkxNzIyMyAzMzYuMjY2NjY3LDI1Ny4wNzQ3NjYgMzE4LjI0LDI1Ny43Njc2OSBDMzEyLjQ3MTQ2NywyNTcuOTg5NDI2IDI4Ni4xODQ3MDQsMjU4LjA2OTI1MSAyNTMuMTAyMDc3LDI1OC4wNzUyODIgTDI0My42Mjk3MDcsMjU4LjA3NTA4OSBDMTc0LjA4NzMzMywyNTguMDYwNDUxIDgxLjgxMzMzMzMsMjU3Ljc2NzY5IDgxLjgxMzMzMzMsMjU3Ljc2NzY5IEw4MS44MTMzMzMzLDI1Ny43Njc2OSBMNjEuNzA2NjY2NywzMTguMDUyMDY5IEwxODcuMiwzMTguMDUyMDY5IEwxNjguNDgsMzkxLjUwMjAwMyBMMjQ4LjkwNjY2NywzOTEuNTAyMDAzIEwyNjguMzIsMzE2LjY2NjIyMiBDMjY4LjMyLDMxNi42NjYyMjIgMjgzLjc5NTIsMzE2LjQxNjc2OSAyOTkuOTE5MzYsMzE2LjIxNzIwNyBMMzAyLjM0MDk5OCwzMTYuMTg3Njg0IEMzMTIuMzAxMzkyLDMxNi4wNjgxNTkgMzIyLjIyNjY2NywzMTUuOTczMjk4IDMyOC42NCwzMTUuOTczMjk4IEMzNTkuODQsMzE1Ljk3MzI5OCA0NDIuMzQ2NjY3LDI5NS44Nzg1MDUgNDQyLjM0NjY2NywyMDkuOTU1OTQxIEM0NDIuMzQ2NjY3LDEzMS42NTU1NDEgMzU3LjA2NjY2NywxMjMuMzQwNDU0IDMyNS4xNzMzMzMsMTIzLjM0MDQ1NCBDMjkzLjI4LDEyMy4zNDA0NTQgMTIzLjQxMzMzMywxMjIuNjQ3NTMgMTIzLjQxMzMzMywxMjIuNjQ3NTMgWiIgaWQ9IuW9oueKtue7k+WQiCI+PC9wYXRoPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.hyperPay?.solana?.isHyperPay?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.hyperPay.solana;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;e&&(e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("disconnect"))}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const U1="Keystone";class OD extends ht{get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}constructor(e={}){super(),this.name=U1,this.url="https://keyst.one",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxjaXJjbGUgY3g9IjE2IiBjeT0iMTYiIHI9IjE2IiBmaWxsPSJ3aGl0ZSIvPgogICAgPHJlY3QgeD0iNSIgeT0iNSIgd2lkdGg9IjIyIiBoZWlnaHQ9IjIyIiBmaWxsPSJ3aGl0ZSIgZmlsbC1vcGFjaXR5PSIxIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE0LjY5NjUgNS40MzQ4N0MxNS4wOTEgNC43NTMxNiAxNi4wNzQ5IDQuNzUyMTEgMTYuNDcwOCA1LjQzMjk5TDE3LjMzOTggNi45MjcxOUMxNy42NDkgNy40NTg5NiAxNy42NDg3IDguMTE1ODggMTcuMzM4OSA4LjY0NzM0TDkuNjMxMjEgMjEuODcxQzkuMjE4NTEgMjIuNTc5MSA4LjE5NjIzIDIyLjU4MTEgNy43ODA3NiAyMS44NzQ2QzcuNzMxMzIgMjEuNzkwNiA3LjY5MzU4IDIxLjcwMDEgNy42Njg1OCAyMS42MDU4TDcuMzcwODggMjAuNDgyOUM3LjA5MjY2IDE5LjQzMzQgNy4yNDE4IDE4LjMxNjQgNy43ODU2MyAxNy4zNzY3TDE0LjY5NjUgNS40MzQ4N1pNMTIuNjYzNiAxOS4yODU4QzEzLjA2MzUgMTguNTk5NyAxNC4wMDM1IDE4LjQ3NTcgMTQuNTY3NyAxOS4wMzQ1TDE3LjQyODggMjEuODY4NkMxOC44NjA1IDIzLjI4NjcgMTguODU2NSAyNS42MDE2IDE3LjQyIDI3LjAxNDlDMTcuMjA0NSAyNy4yMjY5IDE2Ljg3OTggMjcuMjgyNSAxNi42MDYgMjcuMTU0MkwxMS42MDAyIDI0LjgwODFDMTAuNjkwNyAyNC4zODE5IDEwLjM0MyAyMy4yNjcxIDEwLjg0ODcgMjIuMzk5NEwxMi42NjM2IDE5LjI4NThaTTIwLjQzNSAxNi4zMzcyQzIxLjQ4OTcgMTYuMzM3MiAyMi4xNDc0IDE1LjE5MzkgMjEuNjE3MiAxNC4yODIyTDE5Ljc4MjggMTEuMTI4QzE5LjI1NTggMTAuMjIxOCAxNy45NDcxIDEwLjIyMTIgMTcuNDE5MiAxMS4xMjY5TDE1LjQzMDkgMTQuNTM4MUMxNC45NjYgMTUuMzM1OCAxNS41NDE0IDE2LjMzNzIgMTYuNDY0NyAxNi4zMzcyTDIwLjQzNSAxNi4zMzcyWiIgZmlsbD0iYmxhY2siLz4KICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjEuNzMwMyAxNy42NDU5QzIyLjg3MTMgMTcuNjQ1OSAyMy45MjYxIDE4LjI1MjcgMjQuNDk5OCAxOS4yMzlWMTkuMjM5QzI0LjY3NjMgMTkuNTQyNyAyNC42MjQ3IDE5LjkyNzQgMjQuMzc0MyAyMC4xNzM3TDIyLjA1MTEgMjIuNDU5QzIxLjQ1MDkgMjMuMDQ5NCAyMC40ODc3IDIzLjA0NzggMTkuODg5NSAyMi40NTUzTDE2LjUxMDEgMTkuMTA3OEMxNS45Njc3IDE4LjU3MDYgMTYuMzQ4MSAxNy42NDU5IDE3LjExMTYgMTcuNjQ1OUwyMS43MzAzIDE3LjY0NTlaIiBmaWxsPSIjMjE2MUZGIi8+Cjwvc3ZnPgo=",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.Loadable,this._keyring=null,this._publicKey=null,this._connecting=!1}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0;let e;try{const{DefaultKeyring:s}=await Fi(async()=>{const{DefaultKeyring:n}=await import("./index-TU25xuBO.js").then(o=>o.i);return{DefaultKeyring:n}},__vite__mapDeps([11,3,12,13,2,4,5,6,7,8,9,14,1]));e=s.getEmptyKeyring()}catch(s){throw new Sn(s?.message,s)}let t;try{await e.readKeyring(),t=e.getAccounts()[0].pubKey}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._keyring=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._keyring&&(this._keyring=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._keyring,i=this._publicKey;if(!t||!i)throw new q;try{if(os(e)){const s=e.serialize(),n=await t.signTransaction(i.toString(),s);e.addSignature(i,n)}else{const s=e.serializeMessage(),n=await t.signTransaction(i.toString(),s);e.addSignature(i,Buffer.from(n))}return e}catch(s){throw new ie(s?.message,s)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._keyring,i=this._publicKey?.toString();if(!t||!i)throw new q;try{return t.signMessage(i,e)}catch(s){throw new ie(s?.message,s)}}catch(t){throw this.emit("error",t),t}}}const R1="Krystal";class zD extends ht{constructor(e={}){super(),this.name=R1,this.url="https://krystal.app",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSIjMDEwMTAxIi8+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiByeD0iMTAwIiBmaWxsPSIjMDEwMTAxIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjkxLjg4NyA4MC44NDA3QzI5MS44ODcgNzUuMDgyNiAyOTcuNTg1IDcxLjA1NzYgMzAzLjAxMiA3Mi45ODJMMzc3LjYxOCA5OS40Mzc2QzM4My4wMyAxMDEuMzU3IDM4NC45MjggMTA4LjA0MyAzODEuMzMxIDExMi41MTlMMzA2LjcyNSAyMDUuMzcyQzMwMS43OTQgMjExLjUxIDI5MS44ODcgMjA4LjAyMyAyOTEuODg3IDIwMC4xNVY4MC44NDA3Wk0xNTIuMzUzIDE3Mi4zM0MxNDYuMjg1IDE3NS44NDYgMTQ3LjAwNiAxODQuODI4IDE1My41NTcgMTg3LjMzM0wyNjYuMTEyIDIzMC4zNTNDMjcxLjU3MSAyMzIuNDQgMjc3LjQyNyAyMjguNDA5IDI3Ny40MjcgMjIyLjU2NVYxMTQuMzE5QzI3Ny40MjcgMTA3Ljg5NSAyNzAuNDY3IDEwMy44ODQgMjY0LjkwOCAxMDcuMTA1TDE1Mi4zNTMgMTcyLjMzWk03Mi41MjcyIDI5MC40NzJDNzIuMDY0MSAyOTYuMTg5IDc3LjM3NzUgMzAwLjY1NSA4Mi45Mjk3IDI5OS4yMTdMMjQ5LjkwNyAyNTUuOTQ1QzI1Ny43NjkgMjUzLjkwOCAyNTguMzc1IDI0Mi45NzcgMjUwLjc4NyAyNDAuMDgzTDkyLjIxMiAxNzkuNjEzQzg3LjAxOTEgMTc3LjYzMyA4MS4zNzg5IDE4MS4xOTEgODAuOTMwMiAxODYuNzNMNzIuNTI3MiAyOTAuNDcyWk0yNDkuOTA4IDI4Ni45M0MyNTIuMTQ2IDI4MC42MjcgMjQ2LjQyNCAyNzQuMzg3IDIzOS45NSAyNzYuMDcyTDEyNy42NDkgMzA1LjMwMkMxMjEuMzU3IDMwNi45MzkgMTE5LjI3NyAzMTQuODI5IDEyMy45NDQgMzE5LjM1NkwxOTkuNzYgMzkyLjkwNEMyMDQuMTE5IDM5Ny4xMzIgMjExLjM5MiAzOTUuNDMyIDIxMy40MjQgMzg5LjcwOEwyNDkuOTA4IDI4Ni45M1pNMzExLjk0MyAyNDQuMTQ3QzMwNS44MzEgMjQyLjg5NiAzMDMuMjA4IDIzNS42MjMgMzA3LjExNCAyMzAuNzU4TDM4NS43MDMgMTMyLjg4MkMzOTAuMTMyIDEyNy4zNjUgMzk4Ljk4NyAxMjkuNTI1IDQwMC4zNzkgMTM2LjQ2MUw0MjQuMjI5IDI1NS4zMTJDNDI1LjQwMyAyNjEuMTY0IDQyMC4yMjggMjY2LjMxOCA0MTQuMzgxIDI2NS4xMjFMMzExLjk0MyAyNDQuMTQ3Wk0zMjEuMjA0IDI2NC4wNjhDMzEzLjI5MSAyNjIuNDQyIDMwNy45MjEgMjcxLjg5MiAzMTMuMzY4IDI3Ny44NThMNDE1Ljc3OSAzOTAuMDMxQzQyMC41NDMgMzk1LjI0OSA0MjkuMjMxIDM5Mi41NDggNDMwLjE5NyAzODUuNTQ5TDQ0Mi40MjIgMjk2LjkzMkM0NDMuMDIyIDI5Mi41OCA0NDAuMTQzIDI4OC41MDkgNDM1Ljg0IDI4Ny42MjVMMzIxLjIwNCAyNjQuMDY4Wk0yNzYuMjQ3IDMwMi44MDhDMjc2LjA3NSAyOTMuNTM3IDI2My4xNzEgMjkxLjQyOCAyNjAuMDU2IDMwMC4xNjFMMjE1LjA1MiA0MjYuMzYyQzIxMi44NzUgNDMyLjQ2NSAyMTguMTg4IDQzOC42MTEgMjI0LjU0MyA0MzcuMzM4TDI3MS43MDcgNDI3Ljg5M0MyNzUuNjYgNDI3LjEwMiAyNzguNDgxIDQyMy41OTUgMjc4LjQwNiA0MTkuNTYzTDI3Ni4yNDcgMzAyLjgwOFpNMjkyLjI5NiAzMDQuMDM2QzI5Mi4xNTMgMjk2LjM2OSAzMDEuNTYzIDI5Mi41OTEgMzA2Ljc2MiAyOTguMjI4TDM4MS43NjUgMzc5LjU2QzM4Ni4yMTggMzg0LjM4OCAzODMuNTk5IDM5Mi4yMyAzNzcuMTM5IDM5My40MTRMMzAzLjkgNDA2LjgzM0MyOTguODQxIDQwNy43NiAyOTQuMTU3IDQwMy45MyAyOTQuMDYxIDM5OC43ODdMMjkyLjI5NiAzMDQuMDM2WiIgZmlsbD0iIzFERTlCNiIvPgo8L3N2Zz4K",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.krystal?.solana?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected()}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.krystal.solana;let t;try{t=(await e.connect())[0]}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}var Ml={exports:{}},P0;function LD(){if(P0)return Ml.exports;P0=1;var r=typeof Reflect=="object"?Reflect:null,e=r&&typeof r.apply=="function"?r.apply:function(_,S,L){return Function.prototype.apply.call(_,S,L)},t;r&&typeof r.ownKeys=="function"?t=r.ownKeys:Object.getOwnPropertySymbols?t=function(_){return Object.getOwnPropertyNames(_).concat(Object.getOwnPropertySymbols(_))}:t=function(_){return Object.getOwnPropertyNames(_)};function i(C){console&&console.warn&&console.warn(C)}var s=Number.isNaN||function(_){return _!==_};function n(){n.init.call(this)}Ml.exports=n,Ml.exports.once=A,n.EventEmitter=n,n.prototype._events=void 0,n.prototype._eventsCount=0,n.prototype._maxListeners=void 0;var o=10;function a(C){if(typeof C!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof C)}Object.defineProperty(n,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(C){if(typeof C!="number"||C<0||s(C))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+C+".");o=C}}),n.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},n.prototype.setMaxListeners=function(_){if(typeof _!="number"||_<0||s(_))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+_+".");return this._maxListeners=_,this};function u(C){return C._maxListeners===void 0?n.defaultMaxListeners:C._maxListeners}n.prototype.getMaxListeners=function(){return u(this)},n.prototype.emit=function(_){for(var S=[],L=1;L<arguments.length;L++)S.push(arguments[L]);var k=_==="error",z=this._events;if(z!==void 0)k=k&&z.error===void 0;else if(!k)return!1;if(k){var U;if(S.length>0&&(U=S[0]),U instanceof Error)throw U;var T=new Error("Unhandled error."+(U?" ("+U.message+")":""));throw T.context=U,T}var d=z[_];if(d===void 0)return!1;if(typeof d=="function")e(d,this,S);else for(var y=d.length,N=g(d,y),L=0;L<y;++L)e(N[L],this,S);return!0};function c(C,_,S,L){var k,z,U;if(a(S),z=C._events,z===void 0?(z=C._events=Object.create(null),C._eventsCount=0):(z.newListener!==void 0&&(C.emit("newListener",_,S.listener?S.listener:S),z=C._events),U=z[_]),U===void 0)U=z[_]=S,++C._eventsCount;else if(typeof U=="function"?U=z[_]=L?[S,U]:[U,S]:L?U.unshift(S):U.push(S),k=u(C),k>0&&U.length>k&&!U.warned){U.warned=!0;var T=new Error("Possible EventEmitter memory leak detected. "+U.length+" "+String(_)+" listeners added. Use emitter.setMaxListeners() to increase limit");T.name="MaxListenersExceededWarning",T.emitter=C,T.type=_,T.count=U.length,i(T)}return C}n.prototype.addListener=function(_,S){return c(this,_,S,!1)},n.prototype.on=n.prototype.addListener,n.prototype.prependListener=function(_,S){return c(this,_,S,!0)};function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(C,_,S){var L={fired:!1,wrapFn:void 0,target:C,type:_,listener:S},k=l.bind(L);return k.listener=S,L.wrapFn=k,k}n.prototype.once=function(_,S){return a(S),this.on(_,h(this,_,S)),this},n.prototype.prependOnceListener=function(_,S){return a(S),this.prependListener(_,h(this,_,S)),this},n.prototype.removeListener=function(_,S){var L,k,z,U,T;if(a(S),k=this._events,k===void 0)return this;if(L=k[_],L===void 0)return this;if(L===S||L.listener===S)--this._eventsCount===0?this._events=Object.create(null):(delete k[_],k.removeListener&&this.emit("removeListener",_,L.listener||S));else if(typeof L!="function"){for(z=-1,U=L.length-1;U>=0;U--)if(L[U]===S||L[U].listener===S){T=L[U].listener,z=U;break}if(z<0)return this;z===0?L.shift():m(L,z),L.length===1&&(k[_]=L[0]),k.removeListener!==void 0&&this.emit("removeListener",_,T||S)}return this},n.prototype.off=n.prototype.removeListener,n.prototype.removeAllListeners=function(_){var S,L,k;if(L=this._events,L===void 0)return this;if(L.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):L[_]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete L[_]),this;if(arguments.length===0){var z=Object.keys(L),U;for(k=0;k<z.length;++k)U=z[k],U!=="removeListener"&&this.removeAllListeners(U);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(S=L[_],typeof S=="function")this.removeListener(_,S);else if(S!==void 0)for(k=S.length-1;k>=0;k--)this.removeListener(_,S[k]);return this};function f(C,_,S){var L=C._events;if(L===void 0)return[];var k=L[_];return k===void 0?[]:typeof k=="function"?S?[k.listener||k]:[k]:S?E(k):g(k,k.length)}n.prototype.listeners=function(_){return f(this,_,!0)},n.prototype.rawListeners=function(_){return f(this,_,!1)},n.listenerCount=function(C,_){return typeof C.listenerCount=="function"?C.listenerCount(_):w.call(C,_)},n.prototype.listenerCount=w;function w(C){var _=this._events;if(_!==void 0){var S=_[C];if(typeof S=="function")return 1;if(S!==void 0)return S.length}return 0}n.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]};function g(C,_){for(var S=new Array(_),L=0;L<_;++L)S[L]=C[L];return S}function m(C,_){for(;_+1<C.length;_++)C[_]=C[_+1];C.pop()}function E(C){for(var _=new Array(C.length),S=0;S<_.length;++S)_[S]=C[S].listener||C[S];return _}function A(C,_){return new Promise(function(S,L){function k(U){C.removeListener(_,z),L(U)}function z(){typeof C.removeListener=="function"&&C.removeListener("error",k),S([].slice.call(arguments))}O(C,_,z,{once:!0}),_!=="error"&&D(C,k,{once:!0})})}function D(C,_,S){typeof C.on=="function"&&O(C,"error",_,S)}function O(C,_,S,L){if(typeof C.on=="function")L.once?C.once(_,S):C.on(_,S);else if(typeof C.addEventListener=="function")C.addEventListener(_,function k(z){L.once&&C.removeEventListener(_,k),S(z)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof C)}return Ml.exports}var wr=LD();const Fa=Yh(wr),PD={},$1=(r,e)=>{PD[r]=e},Qh=r=>{class e extends Error{cause;constructor(i,s,n){if(super(i||r,n),Object.setPrototypeOf(this,e.prototype),this.name=r,s)for(const o in s)this[o]=s[o];if(n&&kD(n)&&"cause"in n&&!this.cause){const o=n.cause;this.cause=o,"stack"in o&&(this.stack=this.stack+`
3
+ CAUSE: `+o.stack)}}}return e};function kD(r){return typeof r=="object"}const SX=Qh("DisconnectedDevice"),jX=Qh("DisconnectedDeviceDuringOperation"),xX=Qh("TransportOpenUserCancelled"),CX=Qh("TransportRaceCondition");var k0;(function(r){r.Unknown="Unknown",r.LocationServicesDisabled="LocationServicesDisabled",r.LocationServicesUnauthorized="LocationServicesUnauthorized",r.BluetoothScanStartFailed="BluetoothScanStartFailed"})(k0||(k0={}));class UD extends Error{id;constructor(e,t){const i="TransportError";super(e||i),this.name=i,this.message=e,this.stack=new Error(e).stack,this.id=t}}$1("TransportError",r=>new UD(r.message,r.id));const Hc={ACCESS_CONDITION_NOT_FULFILLED:38916,ALGORITHM_NOT_SUPPORTED:38020,CLA_NOT_SUPPORTED:28160,CODE_BLOCKED:38976,CODE_NOT_INITIALIZED:38914,COMMAND_INCOMPATIBLE_FILE_STRUCTURE:27009,CONDITIONS_OF_USE_NOT_SATISFIED:27013,CONTRADICTION_INVALIDATION:38928,CONTRADICTION_SECRET_CODE_STATUS:38920,DEVICE_IN_RECOVERY_MODE:26159,CUSTOM_IMAGE_EMPTY:26158,FILE_ALREADY_EXISTS:27273,FILE_NOT_FOUND:37892,GP_AUTH_FAILED:25344,HALTED:28586,INCONSISTENT_FILE:37896,INCORRECT_DATA:27264,INCORRECT_LENGTH:26368,INCORRECT_P1_P2:27392,INS_NOT_SUPPORTED:27904,DEVICE_NOT_ONBOARDED:27911,DEVICE_NOT_ONBOARDED_2:26129,INVALID_KCV:38021,INVALID_OFFSET:37890,LICENSING:28482,LOCKED_DEVICE:21781,MAX_VALUE_REACHED:38992,MEMORY_PROBLEM:37440,MISSING_CRITICAL_PARAMETER:26624,NO_EF_SELECTED:37888,NOT_ENOUGH_MEMORY_SPACE:27268,OK:36864,PIN_REMAINING_ATTEMPTS:25536,REFERENCED_DATA_NOT_FOUND:27272,SECURITY_STATUS_NOT_SATISFIED:27010,TECHNICAL_PROBLEM:28416,UNKNOWN_APDU:27906,USER_REFUSED_ON_DEVICE:21761,NOT_ENOUGH_SPACE:20738,APP_NOT_FOUND_OR_INVALID_CONTEXT:20771,INVALID_APP_NAME_LENGTH:26378,GEN_AES_KEY_FAILED:21529,INTERNAL_CRYPTO_OPERATION_FAILED:21530,INTERNAL_COMPUTE_AES_CMAC_FAILED:21531,ENCRYPT_APP_STORAGE_FAILED:21532,INVALID_BACKUP_STATE:26178,PIN_NOT_SET:21762,INVALID_BACKUP_LENGTH:26419,INVALID_RESTORE_STATE:26179,INVALID_CHUNK_LENGTH:26420,INVALID_BACKUP_HEADER:26698,SW_BAD_STATE:45063};function RD(r){switch(r){case 26368:return"Incorrect length";case 26624:return"Missing critical parameter";case 27010:return"Security not satisfied (dongle locked or have invalid access rights)";case 27013:return"Condition of use not satisfied (denied by the user?)";case 27264:return"Invalid data received";case 27392:return"Invalid parameter received";case 21781:return"Locked device";case 45063:return"Unexpected state on the device"}if(28416<=r&&r<=28671)return"Internal error, please report"}class Bu extends Error{statusCode;statusText;constructor(e,{canBeMappedToChildError:t=!0}={}){const i=Object.keys(Hc).find(a=>Hc[a]===e)||"UNKNOWN_ERROR",s=RD(e)||i,n=e.toString(16),o=`Ledger device: ${s} (0x${n})`;if(super(o),this.name="TransportStatusError",this.statusCode=e,this.statusText=i,Object.setPrototypeOf(this,Bu.prototype),t&&e===Hc.LOCKED_DEVICE)return new Sg(o)}}class Sg extends Bu{constructor(e){super(Hc.LOCKED_DEVICE,{canBeMappedToChildError:!1}),e&&(this.message=e),this.name="LockedDeviceError",Object.setPrototypeOf(this,Sg.prototype)}}$1("TransportStatusError",r=>new Bu(r.statusCode));let F1=0;const hn=[],_X=(r,e,t)=>{const i={type:r,id:String(++F1),date:new Date};e&&(i.message=e),B1(i)},$D=({type:r,message:e,data:t,context:i})=>{const s={type:r,id:String(++F1),date:new Date};e&&(s.message=e),t&&(s.data=t),i&&(s.context=i),B1(s)};class ih{type;context;constructor(e,t){this.type=e,this.context=t}trace(e,t){$D({type:this.type,message:e,data:t,context:this.context})}getContext(){return this.context}setContext(e){this.context=e}updateContext(e){this.context={...this.context,...e}}getType(){return this.type}setType(e){this.type=e}withType(e){return new ih(e,this.context)}withContext(e){return new ih(this.type,e)}withUpdatedContext(e){return new ih(this.type,{...this.context,...e})}}const FD=r=>(hn.push(r),()=>{const e=hn.indexOf(r);e!==-1&&(hn[e]=hn[hn.length-1],hn.pop())});function B1(r){for(let e=0;e<hn.length;e++)try{hn[e](r)}catch(t){console.error(t)}}typeof window<"u"&&(window.__ledgerLogsListen=FD);function Y1(r,e){const t=r!==void 0?e===void 0?3:4:2,i=Buffer.alloc(1+t*4);let s=i.writeUInt8(t,0);return s=i.writeUInt32BE(Nl(44),s),s=i.writeUInt32BE(Nl(501),s),r!==void 0&&(s=i.writeUInt32BE(Nl(r),s),e!==void 0&&i.writeUInt32BE(Nl(e),s)),i}const BD=1<<31>>>0;function Nl(r){return(r|BD)>>>0}const YD=5,QD=6,VD=0,WD=1,qD=1,ZD=2,vl=255,U0=224;async function HD(r,e){const t=await Q1(r,YD,VD,e);return new Me(t)}async function GD(r,e,t){const i=Buffer.alloc(1);i.writeUInt8(1,0);const s=os(e)?e.message.serialize():e.serializeMessage(),n=Buffer.concat([i,t,s]);return await Q1(r,QD,WD,n)}async function Q1(r,e,t,i){let s=0,n=0;if(i.length>vl)for(;i.length-n>vl;){const u=i.slice(n,n+vl);if((await r.send(U0,e,t,s|ZD,u)).length!==2)throw new Bu(Hc.INCORRECT_DATA);s|=qD,n+=vl}const o=i.slice(n),a=await r.send(U0,e,t,s,o);return a.slice(0,a.length-2)}const V1="Ledger";class KD extends Tn{constructor(e={}){super(),this.name=V1,this.url="https://ledger.com",this.icon="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMzUgMzUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZiI+PHBhdGggZD0ibTIzLjU4OCAwaC0xNnYyMS41ODNoMjEuNnYtMTZhNS41ODUgNS41ODUgMCAwIDAgLTUuNi01LjU4M3oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuNzM5KSIvPjxwYXRoIGQ9Im04LjM0MiAwaC0yLjc1N2E1LjU4NSA1LjU4NSAwIDAgMCAtNS41ODUgNS41ODV2Mi43NTdoOC4zNDJ6Ii8+PHBhdGggZD0ibTAgNy41OWg4LjM0MnY4LjM0MmgtOC4zNDJ6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDUuNzM5KSIvPjxwYXRoIGQ9Im0xNS4xOCAyMy40NTFoMi43NTdhNS41ODUgNS41ODUgMCAwIDAgNS41ODUtNS42di0yLjY3MWgtOC4zNDJ6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMS40NzggMTEuNDc4KSIvPjxwYXRoIGQ9Im03LjU5IDE1LjE4aDguMzQydjguMzQyaC04LjM0MnoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuNzM5IDExLjQ3OCkiLz48cGF0aCBkPSJtMCAxNS4xOHYyLjc1N2E1LjU4NSA1LjU4NSAwIDAgMCA1LjU4NSA1LjU4NWgyLjc1N3YtOC4zNDJ6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDExLjQ3OCkiLz48L2c+PC9zdmc+",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"||typeof navigator>"u"||!navigator.hid?B.Unsupported:B.Loadable,this._disconnected=()=>{const t=this._transport;t&&(t.off("disconnect",this._disconnected),this._transport=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._derivationPath=e.derivationPath||Y1(0,0),this._connecting=!1,this._transport=null,this._publicKey=null}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0;let e;try{e=(await Fi(async()=>{const{default:s}=await import("./TransportWebHID-D3JlLBn7.js");return{default:s}},__vite__mapDeps([15,3,2,4,5,6,7,8,9,10,16]))).default}catch(s){throw new Sn(s?.message,s)}let t;try{t=await e.create()}catch(s){throw new Yt(s?.message,s)}let i;try{i=await HD(t,this._derivationPath)}catch(s){throw new Ie(s?.message,s)}t.on("disconnect",this._disconnected),this._transport=t,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._transport;if(e){e.off("disconnect",this._disconnected),this._transport=null,this._publicKey=null;try{await e.close()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._transport,i=this._publicKey;if(!t||!i)throw new q;try{const s=await GD(t,e,this._derivationPath);e.addSignature(i,s)}catch(s){throw new ie(s?.message,s)}return e}catch(t){throw this.emit("error",t),t}}}const W1="MathWallet";class JD extends Tn{constructor(e={}){super(),this.name=W1,this.url="https://mathwallet.org",this.icon="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjEyOCIgdmlld0JveD0iMCAwIDEyOCAxMjgiIHdpZHRoPSIxMjgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJtMCAwaDEyOHYxMjhoLTEyOHoiIG9wYWNpdHk9IjAiLz48cGF0aCBkPSJtOTAuODQ3MDA4NiA1Ny43NjEwMDIzYy0yLjI3NzAzNjMtMi4yNzcwMzYzLTIuMjc3MDM2My01Ljk2ODg0MTYgMC04LjI0NTg3NzggMi4yNzcwMzYyLTIuMjc3MDM2MyA1Ljk2ODg0MTUtMi4yNzcwMzYzIDguMjQ1ODc3OCAwIDIuMjc3MDM2NiAyLjI3NzAzNjIgMi4yNzcwMzY2IDUuOTY4ODQxNSAwIDguMjQ1ODc3OC0yLjI3NzAzNjMgMi4yNzcwMzYyLTUuOTY4ODQxNiAyLjI3NzAzNjItOC4yNDU4Nzc4IDB6bS0xOS41ODM5NTk4IDE5LjU4Mzk1OTdjLTEuNzA3Nzc3Mi0xLjcwNzc3NzItMS43MDc3NzcyLTQuNDc2NjMxMSAwLTYuMTg0NDA4M3M0LjQ3NjYzMTEtMS43MDc3NzcyIDYuMTg0NDA4MyAwIDEuNzA3Nzc3MiA0LjQ3NjYzMTEgMCA2LjE4NDQwODMtNC40NzY2MzExIDEuNzA3Nzc3Mi02LjE4NDQwODMgMHptMzAuOTIyMDQyMi0xMC4zMDczNDcyYy0xLjcwNzc3OC0xLjcwNzc3NzItMS43MDc3NzgtNC40NzY2MzEyIDAtNi4xODQ0MDg0IDEuNzA3Nzc3LTEuNzA3Nzc3MiA0LjQ3NjYzMS0xLjcwNzc3NzIgNi4xODQ0MDggMHMxLjcwNzc3NyA0LjQ3NjYzMTIgMCA2LjE4NDQwODQtNC40NzY2MzEgMS43MDc3NzcyLTYuMTg0NDA4IDB6bS0xMC4zMDczNDc3IDEwLjMwNzM0NzJjLTEuNzA3Nzc3Mi0xLjcwNzc3NzItMS43MDc3NzcyLTQuNDc2NjMxMSAwLTYuMTg0NDA4M3M0LjQ3NjYzMTEtMS43MDc3NzcyIDYuMTg0NDA4MyAwIDEuNzA3Nzc3MiA0LjQ3NjYzMTEgMCA2LjE4NDQwODMtNC40NzY2MzExIDEuNzA3Nzc3Mi02LjE4NDQwODMgMHptMjEuNjQ1NDI4Ny0xLjAzMDczNDdjLTEuMTM4NTE4LTEuMTM4NTE4MS0xLjEzODUxOC0yLjk4NDQyMDggMC00LjEyMjkzODkgMS4xMzg1MTktMS4xMzg1MTgxIDIuOTg0NDIxLTEuMTM4NTE4MSA0LjEyMjkzOSAwIDEuMTM4NTE5IDEuMTM4NTE4MSAxLjEzODUxOSAyLjk4NDQyMDggMCA0LjEyMjkzODktMS4xMzg1MTggMS4xMzg1MTgxLTIuOTg0NDIgMS4xMzg1MTgxLTQuMTIyOTM5IDB6bS0xMC4zMDczNDcgMTAuMzA3MzQ3MmMtMS4xMzg1MTgtMS4xMzg1MTgxLTEuMTM4NTE4LTIuOTg0NDIwNyAwLTQuMTIyOTM4OSAxLjEzODUxOC0xLjEzODUxODEgMi45ODQ0MjEtMS4xMzg1MTgxIDQuMTIyOTM5IDAgMS4xMzg1MTggMS4xMzg1MTgyIDEuMTM4NTE4IDIuOTg0NDIwOCAwIDQuMTIyOTM4OS0xLjEzODUxOCAxLjEzODUxODItMi45ODQ0MjEgMS4xMzg1MTgyLTQuMTIyOTM5IDB6bS0yMi42NzYxNjM3LTE4LjU1MzIyNWMtMi4yNzcwMzYzLTIuMjc3MDM2My0yLjI3NzAzNjMtNS45Njg4NDE1IDAtOC4yNDU4Nzc4czUuOTY4ODQxNS0yLjI3NzAzNjMgOC4yNDU4Nzc4IDAgMi4yNzcwMzYzIDUuOTY4ODQxNSAwIDguMjQ1ODc3OC01Ljk2ODg0MTUgMi4yNzcwMzYzLTguMjQ1ODc3OCAwem0wLTIwLjYxNDY5NDVjLTIuMjc3MDM2My0yLjI3NzAzNjMtMi4yNzcwMzYzLTUuOTY4ODQxNSAwLTguMjQ1ODc3OHM1Ljk2ODg0MTUtMi4yNzcwMzYzIDguMjQ1ODc3OCAwIDIuMjc3MDM2MyA1Ljk2ODg0MTUgMCA4LjI0NTg3NzgtNS45Njg4NDE1IDIuMjc3MDM2My04LjI0NTg3NzggMHptLTEwLjMwNzM0NzIgMTAuMzA3MzQ3M2MtMi4yNzcwMzYzLTIuMjc3MDM2My0yLjI3NzAzNjMtNS45Njg4NDE2IDAtOC4yNDU4Nzc4IDIuMjc3MDM2Mi0yLjI3NzAzNjMgNS45Njg4NDE1LTIuMjc3MDM2MyA4LjI0NTg3NzggMCAyLjI3NzAzNjIgMi4yNzcwMzYyIDIuMjc3MDM2MiA1Ljk2ODg0MTUgMCA4LjI0NTg3NzgtMi4yNzcwMzYzIDIuMjc3MDM2Mi01Ljk2ODg0MTYgMi4yNzcwMzYyLTguMjQ1ODc3OCAwem0tMjAuNzEwNTA2IDBjLTIuMjc3MDM2Mi0yLjI3NzAzNjMtMi4yNzcwMzYyLTUuOTY4ODQxNiAwLTguMjQ1ODc3OCAyLjI3NzAzNjMtMi4yNzcwMzYzIDUuOTY4ODQxNi0yLjI3NzAzNjMgOC4yNDU4Nzc4IDAgMi4yNzcwMzYzIDIuMjc3MDM2MiAyLjI3NzAzNjMgNS45Njg4NDE1IDAgOC4yNDU4Nzc4LTIuMjc3MDM2MiAyLjI3NzAzNjItNS45Njg4NDE1IDIuMjc3MDM2Mi04LjI0NTg3NzggMHptLTE5LjU4Mzk1OTcgMTkuNTgzOTU5N2MtMS43MDc3NzcyLTEuNzA3Nzc3Mi0xLjcwNzc3NzItNC40NzY2MzExIDAtNi4xODQ0MDgzczQuNDc2NjMxMS0xLjcwNzc3NzIgNi4xODQ0MDgzIDAgMS43MDc3NzcyIDQuNDc2NjMxMSAwIDYuMTg0NDA4My00LjQ3NjYzMTEgMS43MDc3NzcyLTYuMTg0NDA4MyAwem0zMC45MjIwNDE3LTEwLjMwNzM0NzJjLTEuNzA3Nzc3Mi0xLjcwNzc3NzItMS43MDc3NzcyLTQuNDc2NjMxMiAwLTYuMTg0NDA4NHM0LjQ3NjYzMTItMS43MDc3NzcyIDYuMTg0NDA4NCAwIDEuNzA3Nzc3MiA0LjQ3NjYzMTIgMCA2LjE4NDQwODQtNC40NzY2MzEyIDEuNzA3Nzc3Mi02LjE4NDQwODQgMHptLTEwLjMwNzM0NzIgMTAuMzA3MzQ3MmMtMS43MDc3NzcyLTEuNzA3Nzc3Mi0xLjcwNzc3NzItNC40NzY2MzExIDAtNi4xODQ0MDgzczQuNDc2NjMxMS0xLjcwNzc3NzIgNi4xODQ0MDgzIDAgMS43MDc3NzcyIDQuNDc2NjMxMSAwIDYuMTg0NDA4My00LjQ3NjYzMTEgMS43MDc3NzcyLTYuMTg0NDA4MyAwem0tNDAuMTk4NjU0My0xLjAzMDczNDdjLTEuMTM4NTE4MTMtMS4xMzg1MTgxLTEuMTM4NTE4MTMtMi45ODQ0MjA4IDAtNC4xMjI5Mzg5IDEuMTM4NTE4MS0xLjEzODUxODEgMi45ODQ0MjA4LTEuMTM4NTE4MSA0LjEyMjkzODkgMHMxLjEzODUxODEgMi45ODQ0MjA4IDAgNC4xMjI5Mzg5LTIuOTg0NDIwOCAxLjEzODUxODEtNC4xMjI5Mzg5IDB6bTEwLjMwNzM0NzMgMTAuMzA3MzQ3MmMtMS4xMzg1MTgyLTEuMTM4NTE4MS0xLjEzODUxODItMi45ODQ0MjA3IDAtNC4xMjI5Mzg5IDEuMTM4NTE4MS0xLjEzODUxODEgMi45ODQ0MjA3LTEuMTM4NTE4MSA0LjEyMjkzODggMCAxLjEzODUxODIgMS4xMzg1MTgyIDEuMTM4NTE4MiAyLjk4NDQyMDggMCA0LjEyMjkzODktMS4xMzg1MTgxIDEuMTM4NTE4Mi0yLjk4NDQyMDcgMS4xMzg1MTgyLTQuMTIyOTM4OCAwem00MS4yMjkzODg5IDBjLTEuMTM4NTE4MS0xLjEzODUxODEtMS4xMzg1MTgxLTIuOTg0NDIwNyAwLTQuMTIyOTM4OSAxLjEzODUxODItMS4xMzg1MTgxIDIuOTg0NDIwOC0xLjEzODUxODEgNC4xMjI5Mzg5IDAgMS4xMzg1MTgyIDEuMTM4NTE4MiAxLjEzODUxODIgMi45ODQ0MjA4IDAgNC4xMjI5Mzg5LTEuMTM4NTE4MSAxLjEzODUxODItMi45ODQ0MjA3IDEuMTM4NTE4Mi00LjEyMjkzODkgMHptLTQyLjI2MDEyMzctMTkuNTgzOTU5N2MtMS43MDc3NzcyLTEuNzA3Nzc3Mi0xLjcwNzc3NzItNC40NzY2MzEyIDAtNi4xODQ0MDg0czQuNDc2NjMxMi0xLjcwNzc3NzIgNi4xODQ0MDg0IDAgMS43MDc3NzcyIDQuNDc2NjMxMiAwIDYuMTg0NDA4NC00LjQ3NjYzMTIgMS43MDc3NzcyLTYuMTg0NDA4NCAwem0xOS41ODM5NTk4IDEuMDMwNzM0N2MtMi4yNzcwMzYzLTIuMjc3MDM2My0yLjI3NzAzNjMtNS45Njg4NDE1IDAtOC4yNDU4Nzc4czUuOTY4ODQxNS0yLjI3NzAzNjMgOC4yNDU4Nzc4IDAgMi4yNzcwMzYzIDUuOTY4ODQxNSAwIDguMjQ1ODc3OC01Ljk2ODg0MTUgMi4yNzcwMzYzLTguMjQ1ODc3OCAwem0wLTIwLjYxNDY5NDVjLTIuMjc3MDM2My0yLjI3NzAzNjMtMi4yNzcwMzYzLTUuOTY4ODQxNSAwLTguMjQ1ODc3OHM1Ljk2ODg0MTUtMi4yNzcwMzYzIDguMjQ1ODc3OCAwIDIuMjc3MDM2MyA1Ljk2ODg0MTUgMCA4LjI0NTg3NzgtNS45Njg4NDE1IDIuMjc3MDM2My04LjI0NTg3NzggMHptLTEwLjMwNzM0NzMgMTAuMzA3MzQ3M2MtMi4yNzcwMzYyLTIuMjc3MDM2My0yLjI3NzAzNjItNS45Njg4NDE2IDAtOC4yNDU4Nzc4IDIuMjc3MDM2My0yLjI3NzAzNjMgNS45Njg4NDE2LTIuMjc3MDM2MyA4LjI0NTg3NzggMCAyLjI3NzAzNjMgMi4yNzcwMzYyIDIuMjc3MDM2MyA1Ljk2ODg0MTUgMCA4LjI0NTg3NzgtMi4yNzcwMzYyIDIuMjc3MDM2Mi01Ljk2ODg0MTUgMi4yNzcwMzYyLTguMjQ1ODc3OCAweiIvPjwvZz48L3N2Zz4=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._messaged=t=>{const i=t.data;i&&i.origin==="mathwallet_internal"&&i.type==="lockStatusChanged"&&!i.payload&&this._disconnected()},this._disconnected=()=>{this._wallet&&(window.removeEventListener("message",this._messaged),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.solana?.isMathWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.solana;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}window.addEventListener("message",this._messaged),this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._wallet&&(window.removeEventListener("message",this._messaged),this._wallet=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const q1="Neko";class XD extends ht{constructor(e={}){super(),this.name=q1,this.url="https://nekowallet.com",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNDRweCIgaGVpZ2h0PSIyNjBweCIgdmlld0JveD0iMCAwIDI0NCAyNjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0NCAyNjAiIHhtbDpzcGFjZT0icHJlc2VydmUiPiAgPGltYWdlIGlkPSJpbWFnZTAiIHdpZHRoPSIyNDQiIGhlaWdodD0iMjYwIiB4PSIwIiB5PSIwIgogICAgaHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFQUUFBQUVFQ0FNQUFBQW9GT2xoQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUNCalNGSk4KQUFCNkpnQUFnSVFBQVBvQUFBQ0E2QUFBZFRBQUFPcGdBQUE2bUFBQUYzQ2N1bEU4QUFBQjQxQk1WRVVBQUFEL2Z5RC9jQ0QvZ0NyLwpmeXIvZ0VEL2dBRC9iU1QvY0JEM2JCajViUnI0YlJuNGJScjViaHI0YmhuNWJCbjRiaG40YlJyNmJodjNiQmo0YlJyM2NCajRiUm41CmJoci9jUno0Ynh2NWJocjNhQmovY3huNWJocjFhaHYzYkJyL2JSdjNiUnIyYkJ2M2JSdjRiQnI0YmhydmNDRDRiUm40YlJyM2NCajQKYmhmM2JSdjRieG4zYkJyM2JCbjRiQm41YlJyNWJScjRiQm4vZGgzNGJocjZhaHY0YXhuL2RTRDNiaHIzYlJqL2JCMzNhQmowYWh2MwpiUnIvYnhINGJCbjRiUnYvYnhENGJSbjZhaFg0YlJyMWJCbjRiUnI2YmhqNGJScjRiUm40YkJuNGJCcjNiUmo0YmhuNGJCcjRiUnI0CmJodjRiUnY5MnNiN3Y1cjVkaWo2bW1INnJYNzh5S245MGJqOHY1djd0b3o1aUVYKzQ5VCs3T1ArOXZILy8vLzVrVlA1ZGluN28zRDcKdG8zNnBIRDVpRWI1ZnpiKzdlTDdyWC81ZnpmLzl2SCs3ZVA3djV2KzdlSC8vLzcrNU5UN3BIRCs0OVA4dG8zOTJzWDZtMkw1ZnpqLwo5dkQ1Z0RqN3JYNzZwSEg4eUtqKzdPSC8vdjc4djVuNGRpbi85ZkQ4djVyNmlFYjd0b3Y5NDlQOHRveis1TlA5MExmNmtWUDRkeW42CmtWVDZtbUQ0ZGlqOTBiZis3T0Q3dFl2KzlmRDdtbUQ4dnBuOHRZdjgwYmo2bzNEOTVOVDZtbUw3bzNIKzl2RDZpRVg4ckgvNm0ySDcKcllEOTI4WDdtbUg4ckg3N3JIN1dKTE5MQUFBQVQzUlNUbE1BQUFBQUFBQUFBQkJBbjkvdno1QlFiOTlmUWQ0Z3YzOEJqODRnQVlBeApnQUh1a0dIUHpoQncvaUZQWUkrZ29JK2VyNzRCenpCd0FZQmdBU0V3N3hDUWp4QytNTEJRcjErdTNyK3VYNC9Pd0xqT0dBQUFBQUZpClMwZEVYM1BSVVMwQUFBQUpjRWhaY3dBQUN4TUFBQXNUQVFDYW5CZ0FBQUFIZEVsTlJRZm1CaHdHRkNaaGFHR2lBQUFPMTBsRVFWUjQKMnUyZCsyTVVWeFhIbDFacU5vWGF0QW1VaDRhdEJiYUNiVVNMSWxTMFZTeDlPTTAweXo2U3pTNGh6UVBMMGhwVEVaWUVBelZxMGFxawppbS8rVkdkMlp2WTVNK2Q3WnM2ZG05MzAreVBNenIyZm5Edm5mdStkZSsra1Vnd05wWWVmM0dQczJUdWM1dnhLb1hhbG43SXFaT3dkCi9vcXlJcDYyN3U5cTVCbmR2RGJ5c3lQTkNvMnFxZERZUHFOZCszVWpwNTQ3MEZHaGc0Y1VNSThZblJyV3pIeDR1S3RDbytMVVE5M00KdW1QOTJGZDdLalE2SkZ6R0FhTlhPdFBaNDEvenFkQzRiQmxqUGtVWSt6UkNIeG54cVZCR050VFArMEZyRFBXWHZ1NWJJZGxRditCYgp4b2cyYU45QUc4WlJ5VEtPR2Y0NnJvazVJTkJHVnJKOXB3T2c5MGpuUzB5N1h4d0pnSmJzdFlLZ3BmTWxLSi91eW9YK2htQXBKNEtnCnRZUjY5NHRCMWNtZUVDeG1QS2dVNDZRRzZNUGZES3lPWk10N0tiQVVRNEhqSlJRY2FNTjRXYkNjZmNIRkpPOVFRZ0p0VENRRG5iaEQKMmZWc1NHVWtPK3FSa0hLU0R2V1JzTXFNQ2haa2hDblpVQWY1RWtkWnVZTEdRcUgzSmdvZEdtaEpTNVlPaFRhU25Eb0tEN1NrSlNPZwpFM1FvZ1FiVWc1YXpaQ2ZDb1JNMG80RUcxSU9XczJUakJIUmlvUTd6SmRKLy8rZVRLeXBjWWI3RWtad2wreFpWVkVKbWxBNjBvQ1hiClI1YVZ6SHd3SFdqamxGaGhJMlJaaVRnVTN4blFMc2xaTXJxc1JNem90NzlEMXlNalZkZ3h1cXdrUWszNEVrZGlsdXdWQkZwOXFJOEEKVDVtY0pVc0RoYWszbzFDZ2pheFVpNk1NbWFNUnhRNEZDclNjSlJ1SG9CVTdGTXFBZXRDbmhjb2pEWmtqcFdhVUdtazBKV1hKYUVPbQpQdFNBTDNFMElWUWdiY2pjVUtzem80QUJkU1ZseWNDR3BkS013b0VXczJSb2Vlb2NDaDVvS1VzR0dUSkhxaHpLZDlFblRNeVNRWVpNCmFhZ3hYK0pDeXlRV3pKQ3BERFhtUzF4b21iODdac2hjcVRDam5FQkxXYkp4RHJRS004b0p0SlFsQXcyWkszbUhBaHBRVHpLV0REVmsKanNUTktHeEFYVTJJbElwM0YwcENqZnNTUnpLV2pQZUhsamFqREYvaVNNYVNNUXNWTnFQY1FCdVpKd1JLWlJneVY1SU9oUjFvR1V2RwpNV1NPSkIwS3c0QjYwQktQRjhlUWlZZWE1VXRjYUluU1dZWk1PdFFzWCtKQ1MxaXljVDYwOGIwelFqckFMMXZFa3ZFTTJUYVFoQ1hqCkdiSnRvQWtCYUhiNjFDMEpTOFpQSlpvbFljbDBNN0FsWU1uNGhreTNCQ3daMzVEcGxvQWxpMkRJZEVQSHQyUVJESmx1NlBpV2JGdzMKQXg4NnZpWHJPME1tWWNuNnpwQkpXTEsrTTJTV0pkc1Zrem5kZDRiTWNpZnB4Mkl4NzljTkVFblovZC9mSFJsNXFBL2J0cU9EWjZOUwpuK3ZEcHUxcDlPeVhJekUvc3lkKzJmcjA2dkVvRDNaL1BzNHRaZmZ6cWZ1ZDJhWitic2N4V3pwNW1NVThITC9FN2FCaERuV0VtZGZ0CnFXRzhoUTlFMjNaMEVzMW1BOFJzWlRPc3YzNWFkMFZscVk4anc0LytteDhpcU5PMEl4M3JZKy9wcjh4WmFrNTRhT0NZZ2RPckJxYXoKYXRkd2VESWJyQ1RtS1hzODdMRWU2K3VCVmJBeVowT2dCL0NCZG5RdzJLTU1raXZwMG5oUUF4K0xmMjlWZXJkZGs1T1Q3QnNFdnVBaQo5bSthb041ci9XUXFkeWxmc1A0cFh5emxwcm4xdEg4OFU1NnRkR3UyYkJaSzFjdE04SDMrR1p4NmExVUJOZWRWK29yWldkbkMvQlJjCngycHhoaWhtcHZnK2h6dDczTStpa0xZRWhWNXdrV2Q5L2krL0FNWFk5N2U5V3B5L2pGTm5maEFsaTRITVp1UGlwYUJxMDlqTGVReTUKZ1gxbEdhWWU3dzAxbmNYQWV0aXRlOG9NL3YrclMrRlJMc0xFYnJUUlJ1NXp3T1pMNUkvQVdsaVJYUDU1NkJVZmhEemFTM2lVUFYxRApnMzF5Tnp2UUlMUkpNbHM1S0lqNnNnbVYwYVhhRWwxNVd6M2RGaDFvRUhxT1pnNmtmcC8rcGI4K3dKcjQrU2U0Z1FhaEY0enJ3RlY1CnZ3SSs1RGR0VHg5QmFid3JnZjlRQ3JwZy9BSzZ6cWRGWWo4TUVQWmdkeVp3WktRQkZUNVh4U3A1dGFmbmlzVU14anJ6STRZWnc2R24KME1mU2xHV3VWRllBaEk0MU9OQjdhS1RrQWw3M2FzZk5meG1YMmNwbUFNTnJqek9IVjBqQkpieU9IYUZlalo3RG1rSjZydXpyVFdocwoyUlJRN3RVOG81SnR3NjdKcUgxVmh6NEdqUDA0SzQxQjBOVElxRU9sMXExalA5Q09nTWM2NDAzOWc5UDdNaFZyYWJGNTUxOEozUkZvCjRNMkZvK0NpUUdub1p2dVdhZHkyUHFZSDdPZGQ2QmZJSzlWQTMzQnYvR3U1VzVaSWl0SGRyS2t4Y2VpYnJFRFhrSXZvVUx1akRuUngKc3pqMExVNmdiODFEbDVHaGR2MEp1dVJWSExyZUNNc2tOcHk4dlFaZHRrNWkvTGdCamI3VmtJZHU5S3RZNnE3bHNLZWdWcVV3TXZaRApEVy9TRUlldTVlemIzc0d1clU0V29BdnpGRWJqb2Y2SlB1aDVBMDVqOWFsSnpPMlI3YnV4MndGZXVpOFBiZmRadjhHdXJSc0c1dXZyCnBCYzlqNDZ3bEVCWE5xeTdMbUdYV3BuK2hoRDBhNHc4aGtNWDBlazlDeHA4VWl0M0RRUHJzOGptYldjeWZJY2RERDEvandIOUNYYnAKQ2pyay9pM0pZV1V5ZkRFUkRyMkpRLzhPdk5TQy9qMXlYZTBQTlBUcmpNMW1NSFQxVXh3YXpHT1YreUQwSDJrT0szMlBLNEEyd0dIVApCa2hTYWZoMHhNWFFhY3l3SnhLQVdYNCtORGlCc29HUHNERG8rcDhRa0FuR3Zpc0dOSlpvYldpd3g4S2dNV2JqZ2dyb0JXTVpoa1puCkVoRm9rTms0eWxoUXhJQTJzTWxOV2VqUC9neUNqQ3FDeHV5SlpQT3Uvd1ZlMnpIS09QSUFocmF1eGV3Skk1RVZER00xK0g5cm4vMFYKV3RmaEtLc0lHck1uRzR3M0d5Vmo3VUhBUXpPYnorRXJlQlJDWS9hRVlVNHNlMkxGY25xdWFKYmIvN0g4b0xqRlhxdWxDaHF6Snd3YgphdW1xTi8rMU1MM1owSUovazZibkJoVkFOeWJ4SVh1eXdaenpYbHdpbjl5RlMrWXRiZENRUGJHaE9XKy9MSm56d2R6VFczbTc3ZC9YCkJnM1pFOFlrUXB0bThwZXFuZVJUMC9hS1NqZk4xVzVRSUNxZ1AyOWNqZGdUR3hyUFpKMHFtNlpaeU9kTmM2YmMrUjgxTXJHcGdIWmUKUENQMnhJYVdlNUhsaW55a0ZVSWo5bVFEdlpDam14cWhFWHZTZ0VaSDFLRG8xcTBFdXRDNEdyRW5EV2p3dFE0cXVuVXJnWGJmTVFEUAphZ1BhK0pza2MyMk9CbEVJRFhUQURyUm9LZ01DclFUNmpuTTVZRThjYU9QdmNzeElvSlZBdXhZWnNDY3V0T0JUalFSYUpUUmdUMXhvCnVRUU9wRzdGMEhUOFBHandkUzJ0MnhDSUNtalArOUt1b3dtOXhscUFGcWhiMkZ5Q0N1aDU5M3JhbmpTaFJaWkpWaDZDVTBZcW9XbDcKMG9LVzZLeHJINElnS3FCejNnL0kvcmNOV3NDQ2I2QWdLcUNiUzExSWU5SlJ6YmpVTUxOYWFITHBRR2M5NDFIanpHcWgvOEdzNkQragpJOVBUSllxaFd3YUJTc25kMFltOFJlbmhKb05aQ1hTcjQ2RHNTVStUWEgwUWlYbUY4WHBET1RSbHRIeWV3emwrc0djNVRWczk5TC80CjBNWXljMDY0Y3BQMVNrY1ZkT3NYbEQzeHo3Z3M3QUw3cFk1cWFNcWVCSFV6eTNtc2tjL2VZMGM1QVdnaVppRjk2MmFlR29PVWk2eVUKblJ3MFlVL0NEY1Z5cnZUQUxQdjhyRHlUTC9KZXprYUhIaGg5QWIxVDlBWDBUaEVIdXN5Ui95Mm10MHI1d2t6WlRzbmw4b3haS0FWYgppNm5wcldMZTlMbXo5YlBpcFdxTTVLMW16VW1sZDB1NEJWRXRtajJqcnFDNStlb1ZreHFoelJUSmZUbEpRM2VOQWFhMi9DRjhOeFJOClhTbGpoU3plNUkydVZFTjNOTnRxTVNoczlkNVdXbVVOT0ZhaWhGc1I5R0xiejZvaG8rcTczV1h3QjlUTXNiUkM2TmFPc09WUWlxNkYKUU9qcFZKMWlOM0pGME0zOFJCeEYxR20rbzg0V1hadkhJUlJDdTMvN1pXSytxSlpydi8rL295SGJvcmROcTRkMkZsVVpWYXF4dHI5awp2TXlkTWVuUVI1d21yZ2JhZVMxUEw0dGJiMk8rSG9mWmF1SzZsejQ3TTkvQWlSYXQweXBXWXpLenFOVkFnOHl0MThtWEJaYWQ0TlJLCm9HMFBpaXo1Ykw2V21Md2VuNWxCclFUYVlwbEdydk5NNkNUeldNRWdJVWMyS1lPZVJnNmZxN1JNYUl5K3FsUHZZU0NLbGo1ank0WGMKcFVBaXF4QWFvZzlFVUFhZFJ6ZmdPYzFSY3UwY3R1aEVCZlFjMXJnOUV5cld1RzFCRFZ6SnV5elFXemttZEZWMHZUZlV3QlZBZnc1dQp0SFJNS0hjUEJ5WG8wRDE1NkRzb1J0MitLWG9xMXl6WUlKQlFLNENHYy9GZFRxRHo2UDVFSU5TcXBvc1EyVE1JYU9xdTVkQW1VYWNUCnVFYm9oZ2xGNDFlYmZoZHRRZlF5STUzUVZjYWk1enJlbmE5dloyaTdIY0k3TFcvQnA4QUFxVXdqdEIwUmVDUHhDcU52STl1M1J1Z1YKVGllOWdoOGtRT2R2amRDMzhUTjhHanZNWUdneWYrdUR0bDlqNFp1bmJ6TE9uQ1QzTkdpRXJuTDJiakJPVDNET2R0dWUwTFlKeFk5Ngo1a0NUT3puMFFkc21GRDhqbW5IS0ViM0ZWQiswYlVMeFRUb3NhQ3A5NjRObUhRMWdQNlk0OUYwQ1JCOTBUaDAwdFExUEUvVHN6SU9GCkhRTnRMM0RjeWkyNDdtSEFvV2ZOZk1tQzdicWhLdWh0a3NnS3ZqZGtRTi9vUTJqN0tUYUxwYTNxZEljdlZ0UlBVNmU3SkovSUxQcTgKVFcvZkVUZFpuUE9zdHE4ajQ1d0RYR0Y2YjJvamkxNUhwbWlVUlUyZDZJTmVOeml2c1FabFBGM2xwTy83REdqS2hlcWNPV0VkVWNXWgpJeVBQOGRFN1I3Ynpaa1B0UncrZTkxN25YTHFOb1J0dmF0SDJYVitBMzNEb09hVUtsZTBoMWtDVVdnNTlFb0RYbGpxaDdjRVFuSjVLCnFDSFRja3JWOWYrZzBJMnp1RkZIdlhnZHUwN1BLVlVsZENHQ1l4ZUZUeVBUZEVwVkNWeFBWWEdIZ0ZJZkNIUC9rSHBPcVNxQjM4dW8KZUoyTDFMbEZEWkZuaHFxQy9oVHRYSnhFdXlhNHZBZzZzbDhKdElGNkovZWxxdURKaXRoaEowcWcwYzl3ZVBNNllnMGNYQkdyQkJvOAp2TDQ1Q0p5VU9aZ0xYdnVzQmhvOWtNZDd2eWl6YWhBOW1Vc1JOTnkrUFo4c1FWMkRqMGhRQXcxMzFldmV2ZU5UdzZlUktZTkd1K3BXCkZ4T1grdUYvY1JCRjBPZ1hoZG9tTHVOUlgrT2M4WklWL3c2SHN4a09iZDl0bmN4YWpQWEFuN0MyVzJiRW9aMk5hR2dxVzIrZnVmeGYKMUgwTjJNbVpUUjJGUCtXSlFqc2JhbEVyMmpua1g0VzlYRWVZdVNmYm5NSS9kc2lDaGwxV1Y1RDRKM094RCtZeWpKZkZ2NHptUXFQdAp1MmVTbW9jZDVjaW03RS94RDVqeW9OR1BvL204anBpRGQ4dWJqNkljZ21GL1YxNzRFNDhlTkdoRmZWZTZMYytSaDE5WXhQZWlIUU5oCkplOFUvajA0SGpUYVZRZk4yRzQrS3BvQnAyQ1VaL0tQTnFNZmRETEIrUHkwSGkzMEtNNnhMcmFzUnpxVk9nYTM3OEZRcHZIOWFielQKR2doTk5LRHhiNWdPZ3R4dnlqTStlRGdBdXVBdzc2aFFlNEZPcFM3b3JrcHltdkNZVTJNN0pvRm5tb0ZPcFU3cnJreEN5cDVPdFdtSAo1TEkzMnBsVHg1N1VYWjhrZFBGUUIzVHEzQTU0ckROZHpEdWgzOHFlUy9Yb2pPNUtxV1kra2ZKUmVxQmJlQ2FkOHRYWUFHZXppK2RTCkFSb2JXR3QyYWlnVnJOTUQyY1F6cDFPaEdvTm5qL3BIYnh4S1VYcmxUZDJWbE5XYmFSTFppZmJBTlBKWG44S1FiUTJkZVN1VHplcXUKY1R4bHM1bUp0NGRnWkVmbnpyeHo2bWNXZWovcTRzVzMzbms3c0pOSy9SOXZRRFNYcURYRjdRQUFBQ1YwUlZoMFpHRjBaVHBqY21WaApkR1VBTWpBeU1pMHdOaTB5T0ZRd05Eb3lNRG96T0Nzd01qb3dNSmVEK2JFQUFBQWxkRVZZZEdSaGRHVTZiVzlrYVdaNUFESXdNakl0Ck1EWXRNamhVTURRNk1qQTZNemdyTURJNk1ERG0za0VOQUFBQUFFbEZUa1N1UW1DQyIgLz4KPC9zdmc+Cg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.neko?.isNeko?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.neko;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const Z1="Nightly";class eA extends ht{constructor(){super(),this.name=Z1,this.url="https://nightly.app",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOTYiIGhlaWdodD0iOTYiIHZpZXdCb3g9IjAgMCA5NiA5NiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQ4IDk2Qzc0LjUwOTcgOTYgOTYgNzQuNTA5NyA5NiA0OEM5NiAyMS40OTAzIDc0LjUwOTcgMCA0OCAwQzIxLjQ5MDMgMCAwIDIxLjQ5MDMgMCA0OEMwIDc0LjUwOTcgMjEuNDkwMyA5NiA0OCA5NloiIGZpbGw9IiM2RDczRjgiLz4KPHBhdGggZD0iTTQ4IDg1LjYzNTZDNDggODUuNjM1NiA1Mi40NTMzIDg1LjYzNTYgNTUuNDQgODIuNTg2N0M1OC45MTU1IDc5LjI4MDEgNTcuMzUxMSA3NS40MzEyIDYyLjI3NTUgNzEuNDMxMkM2Ni45ODY2IDY3LjY0NDUgNzIuOTI0NCA3MC4zMzc5IDcyLjkyNDQgNzAuMzM3OUM3Ny4wMjIyIDYyLjEyNDUgNzQuNzkxMSA1Mi41NjkgNzQuNzkxMSA1Mi41NjlDODEuNzY4OCAzNC4yNTc5IDc1Ljk2NDQgMjEuMTU1NyA3NC40NDQ0IDE3LjM2MDFDNjkuNDQ4OCAyNC4zMzc5IDYzLjE5MTEgMjkuMTczNCA1NS43OTU1IDMyLjQwOUM1My4yMjY2IDMxLjcwNjggNTAuNTk1NSAzMS4zMzM0IDQ4IDMxLjM2MDFDNDUuNDEzMyAzMS4zMzM0IDQyLjc3MzMgMzEuNzA2OCA0MC4yMDQ0IDMyLjQwOUMzMi44MTc3IDI5LjE2NDUgMjYuNTUxMSAyNC4zMzc5IDIxLjU1NTUgMTcuMzYwMUMyMC4wMzU1IDIxLjE1NTcgMTQuMjMxMSAzNC4yNTc5IDIxLjIwODkgNTIuNTY5QzIxLjIwODkgNTIuNTY5IDE4Ljk3NzggNjIuMTI0NSAyMy4wNzU1IDcwLjMzNzlDMjMuMDc1NSA3MC4zMzc5IDI5LjAxMzMgNjcuNjQ0NSAzMy43MjQ0IDcxLjQzMTJDMzguNjU3NyA3NS40MzEyIDM3LjA4NDQgNzkuMjgwMSA0MC41NiA4Mi41ODY3QzQzLjU0NjYgODUuNjM1NiA0OCA4NS42MzU2IDQ4IDg1LjYzNTZaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNNDIuNDc5OSA2NS4yOThDNDIuMjkzMyA1OS4yMTggMzYuMzAyMSA1Ny4yNjI0IDMyLjIxMzMgNTkuODIyNEMzMi4yMTMzIDU5LjgyMjQgMzIuODUzMyA2Mi40MzU4IDM1LjgzOTkgNjMuNzUxM0MzOC4yNzU1IDY0LjgyNjkgMzkuMzI0NCA2My4zODY5IDQyLjQ3OTkgNjUuMjk4WiIgZmlsbD0iIzdCODFGOSIvPgo8cGF0aCBkPSJNMjIuNDk3NyAyMy4wOTM1QzIwLjA4ODggMzEuNTQ2OCAyMS4xMjg4IDQyLjI0MDIgMjQuOTMzMyA1MC4wMjY5QzI4LjgyNjYgNDcuMjcxMyAzMi45MTU1IDQzLjAxMzUgMzUuMDkzMyAzOC41MDY5QzI5Ljk2NDQgMzQuNzExMyAyNS42NjIyIDMxLjEwMjQgMjIuNDk3NyAyMy4wOTM1WiIgZmlsbD0iIzdCODFGOSIvPgo8cGF0aCBkPSJNNTMuNTE5OSA2NS4yOThDNTMuNzA2NiA1OS4yMTggNTkuNjk3NyA1Ny4yNjI0IDYzLjc4NjYgNTkuODIyNEM2My43ODY2IDU5LjgyMjQgNjMuMTQ2NiA2Mi40MzU4IDYwLjE1OTkgNjMuNzUxM0M1Ny43MjQzIDY0LjgyNjkgNTYuNjc1NSA2My4zODY5IDUzLjUxOTkgNjUuMjk4WiIgZmlsbD0iIzdCODFGOSIvPgo8cGF0aCBkPSJNNzMuNTAyMiAyMy4wOTM1Qzc1LjkxMTEgMzEuNTQ2OCA3NC44NzExIDQyLjI0MDIgNzEuMDY2NiA1MC4wMjY5QzY3LjE3MzMgNDcuMjcxMyA2My4wODQ0IDQzLjAxMzUgNjAuOTA2NiAzOC41MDY5QzY2LjAzNTUgMzQuNzExMyA3MC4zMzc3IDMxLjEwMjQgNzMuNTAyMiAyMy4wOTM1WiIgZmlsbD0iIzdCODFGOSIvPgo8cGF0aCBkPSJNNDcuOTk5OSA4NS4zMDY5QzUwLjE0MDQgODUuMzA2OSA1MS44NzU1IDgzLjc3ODcgNTEuODc1NSA4MS44OTM2QzUxLjg3NTUgODAuMDA4NCA1MC4xNDA0IDc4LjQ4MDIgNDcuOTk5OSA3OC40ODAyQzQ1Ljg1OTUgNzguNDgwMiA0NC4xMjQ0IDgwLjAwODQgNDQuMTI0NCA4MS44OTM2QzQ0LjEyNDQgODMuNzc4NyA0NS44NTk1IDg1LjMwNjkgNDcuOTk5OSA4NS4zMDY5WiIgZmlsbD0iIzdCODFGOSIvPgo8L3N2Zz4K",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._publicKey=null,this._wallet=null,this._readyState!==B.Unsupported&&ot(()=>window?.nightly?.solana?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get connecting(){return this._connecting}get readyState(){return this._readyState}get publicKey(){return this._publicKey}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.nightly.solana;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(e.publicKey.toString()==="11111111111111111111111111111111")throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch{this.emit("error",new or)}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return t.signMessage(new TextDecoder().decode(e))}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const H1="NuFi";class tA extends ht{constructor(e={}){super(),this.name=H1,this.url="https://nu.fi",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyMiAyMyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0iIzIxMjEyMSIgLz4KPHBhdGggZD0iTTQuMzA5OTkgOS4wMDAwOEM1LjMwODc3IDYuMjA0MDEgNy45ODA2OSA0LjIwMzA4IDExLjEyIDQuMjAzMDhDMTQuMjU5MiA0LjIwMzA4IDE2LjkzMTEgNi4yMDQwMSAxNy45Mjk5IDkuMDAwMDhDMTcuOTc5IDkuMTM3NDcgMTguMTA3NCA5LjIzMjE4IDE4LjI1MzMgOS4yMzIxOEgyMS4wNTk0QzIxLjI3MjUgOS4yMzIxOCAyMS40MzE3IDkuMDM1NzYgMjEuMzc5NCA4LjgyOTE5QzIwLjIxOTUgNC4yNDM2MiAxNi4wNjYgMC44NTAzNDIgMTEuMTIgMC44NTAzNDJDNi4xNzM5MSAwLjg1MDM0MiAyLjAyMDQyIDQuMjQzNjIgMC44NjA0NjggOC44MjkxOEMwLjgwODIxMyA5LjAzNTc2IDAuOTY3NDM0IDkuMjMyMTggMS4xODA1MiA5LjIzMjE4SDMuOTg2NTlDNC4xMzI0OSA5LjIzMjE4IDQuMjYwOTEgOS4xMzc0NyA0LjMwOTk5IDkuMDAwMDhaIiBmaWxsPSIjQzZGRjAwIi8+CjxwYXRoIGQ9Ik0zLjk4NjU5IDEzLjYzMjdDNC4xMzI0OSAxMy42MzI3IDQuMjYwOTEgMTMuNzI3NCA0LjMwOTk5IDEzLjg2NDhDNS4zMDg3NyAxNi42NjA4IDcuOTgwNjkgMTguNjYxOCAxMS4xMiAxOC42NjE4QzE0LjI1OTIgMTguNjYxOCAxNi45MzExIDE2LjY2MDggMTcuOTI5OSAxMy44NjQ4QzE3Ljk3OSAxMy43Mjc0IDE4LjEwNzQgMTMuNjMyNyAxOC4yNTMzIDEzLjYzMjdIMjEuMDU5NEMyMS4yNzI1IDEzLjYzMjcgMjEuNDMxNyAxMy44MjkxIDIxLjM3OTQgMTQuMDM1N0MyMC4yMTk1IDE4LjYyMTIgMTYuMDY2IDIyLjAxNDUgMTEuMTIgMjIuMDE0NUM2LjE3MzkxIDIyLjAxNDUgMi4wMjA0MiAxOC42MjEyIDAuODYwNDY4IDE0LjAzNTdDMC44MDgyMTMgMTMuODI5MSAwLjk2NzQzNCAxMy42MzI3IDEuMTgwNTIgMTMuNjMyN0gzLjk4NjU5WiIgZmlsbD0iI0M2RkYwMCIvPgo8cGF0aCBkPSJNOS4yNTQ5OSA5LjIzMjE4QzkuMDY5ODMgOS4yMzIxOCA4LjkxOTcyIDkuMzgyMjkgOC45MTk3MiA5LjU2NzQ2VjEzLjI5NzRDOC45MTk3MiAxMy40ODI1IDkuMDY5ODMgMTMuNjMyNyA5LjI1NDk5IDEzLjYzMjdIMTIuOTg0OUMxMy4xNzAxIDEzLjYzMjcgMTMuMzIwMiAxMy40ODI1IDEzLjMyMDIgMTMuMjk3NFY5LjU2NzQ2QzEzLjMyMDIgOS4zODIyOSAxMy4xNzAxIDkuMjMyMTggMTIuOTg0OSA5LjIzMjE4SDkuMjU0OTlaIiBmaWxsPSIjQzZGRjAwIi8+Cjwvc3ZnPgo=",this.supportedTransactionVersions=new Set(["legacy",0]),this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._readyState!==B.Unsupported&&ot(()=>window.nufiSolana?.isNufi?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.nufiSolana;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;os(e)?n?.length&&e.sign(n):(e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n)),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const G1="ONTO";class rA extends ht{constructor(e={}){super(),this.name=G1,this.url="https://onto.app",this.icon="data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyODggMjg4Ij4KICA8dGl0bGU+T05UTyBMT0dPXzI4OHgyODg8L3RpdGxlPgogIDxnIGlkPSJMT0dPIj4KICAgIDxwYXRoIGlkPSLlvaLnirbnu5PlkIgiIGQ9Ik0zMCwxMS4xNSw3MS4xOSw1Mi4zMkExMTUsMTE1LDAsMCwxLDI1OCwxMzguNjdMMjU4LDE0MlYyNzYuODVsLTQxLjE5LTQxLjE2QTExNSwxMTUsMCwwLDEsMzAuMDUsMTQ5LjM0TDMwLDE0NlptMjguMTcsNjhWMTQ2YTg2Ljc5LDg2Ljc5LDAsMCwwLDEzNS4xNSw3MmwyLjIzLTEuNTVMNjMuNjcsODQuNjVaTTk0LjY4LDcwbC0yLjIzLDEuNTVMMjI0LjMzLDIwMy4zNmw1LjUsNS41VjE0MkE4Ni43OSw4Ni43OSwwLDAsMCw5NC42OCw3MFoiLz4KICA8L2c+Cjwvc3ZnPg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.onto?.solana?.isONTO?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.onto.solana;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const K1="Particle";class iA extends ht{constructor(e={}){super(),this.name=K1,this.url="https://particle.network",this.icon="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTQwIiBoZWlnaHQ9IjE0MCIgdmlld0JveD0iMCAwIDE0MCAxNDAiPjxkZWZzPjxmaWx0ZXIgaWQ9ImEiIHg9IjAiIHk9IjAiIHdpZHRoPSIxNDAiIGhlaWdodD0iMTQwIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiPjxmZUltYWdlIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHdpZHRoPSIxNDAiIGhlaWdodD0iMTQwIiByZXN1bHQ9ImltYWdlIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjNhV1IwYUQwaU1UUXdJaUJvWldsbmFIUTlJakUwTUNJZ2RtbGxkMEp2ZUQwaU1DQXdJREUwTUNBeE5EQWlQZ29nSUR4a1pXWnpQZ29nSUNBZ1BITjBlV3hsUGdvZ0lDQWdJQ0F1WTJ4ekxURWdld29nSUNBZ0lDQWdJR1pwYkd3NklIVnliQ2dqYkdsdVpXRnlMV2R5WVdScFpXNTBLVHNLSUNBZ0lDQWdmUW9nSUNBZ1BDOXpkSGxzWlQ0S0lDQWdJRHhzYVc1bFlYSkhjbUZrYVdWdWRDQnBaRDBpYkdsdVpXRnlMV2R5WVdScFpXNTBJaUI0TVQwaU1UUXdJaUI1TVQwaU1UUXdJaUI0TWowaU1DSWdaM0poWkdsbGJuUlZibWwwY3owaWRYTmxjbE53WVdObFQyNVZjMlVpUGdvZ0lDQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqQWlJSE4wYjNBdFkyOXNiM0k5SWlObE1EUXdaRGNpTHo0S0lDQWdJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXhJaUJ6ZEc5d0xXTnZiRzl5UFNJak5qSXlOMlUySWk4K0NpQWdJQ0E4TDJ4cGJtVmhja2R5WVdScFpXNTBQZ29nSUR3dlpHVm1jejRLSUNBOGNtVmpkQ0JqYkdGemN6MGlZMnh6TFRFaUlIZHBaSFJvUFNJeE5EQWlJR2hsYVdkb2REMGlNVFF3SWk4K0Nqd3ZjM1puUGdvPSIvPjxmZUNvbXBvc2l0ZSByZXN1bHQ9ImNvbXBvc2l0ZSIgb3BlcmF0b3I9ImluIiBpbjI9IlNvdXJjZUdyYXBoaWMiLz48ZmVCbGVuZCByZXN1bHQ9ImJsZW5kIiBpbjI9IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PHJlY3QgZGF0YS1uYW1lPSLlnIbop5Lnn6nlvaIgMSIgd2lkdGg9IjE0MCIgaGVpZ2h0PSIxNDAiIHJ4PSI0MCIgcnk9IjQwIiBmaWx0ZXI9InVybCgjYSkiLz48cGF0aCBkYXRhLW5hbWU9IuakreWchiAzIOaLt+i0nSIgZD0iTTM0LjkxIDMwLjhhNi42MTQgNi42MTQgMCAxIDAgNi41NTMgNi42MTRBNi41ODQgNi41ODQgMCAwIDAgMzQuOTEgMzAuOHptMTMuNjE1LTcuODJhNi41NTIgNi41NTIgMCAwIDAtOC4yNzIgNC4yNTQgNi42MzkgNi42MzkgMCAwIDAgNC4yMTUgOC4zNDkgNi41NTIgNi41NTIgMCAwIDAgOC4yNzItNC4yNTQgNi42MzkgNi42MzkgMCAwIDAtNC4yMTUtOC4zNDl6bTE1LjMxMS0zLjI0OGE2LjUyNSA2LjUyNSAwIDAgMC05LjE3IDEuNDY4IDYuNjY2IDYuNjY2IDAgMCAwIDEuNDUyIDkuMjU1IDYuNTI1IDYuNTI1IDAgMCAwIDkuMTY5LTEuNDY2IDYuNjY2IDYuNjY2IDAgMCAwLTEuNDUxLTkuMjU3em0xNS41NTYgMS42ODdhNi41MjUgNi41MjUgMCAwIDAtOS4xNjktMS40NjYgNi42NjYgNi42NjYgMCAwIDAtMS40NTIgOS4yNTUgNi41MjUgNi41MjUgMCAwIDAgOS4xNjkgMS40NjYgNi42NjYgNi42NjYgMCAwIDAgMS40NTEtOS4yNTZ6bTE0LjI3OCA2LjQ1NWE2LjU1MiA2LjU1MiAwIDAgMC04LjI3LTQuMjU0IDYuNjM5IDYuNjM5IDAgMCAwLTQuMjE1IDguMzQ5IDYuNTUyIDYuNTUyIDAgMCAwIDguMjcyIDQuMjU0IDYuNjM5IDYuNjM5IDAgMCAwIDQuMjEzLTguMzQ5em0xMS42IDEwLjU5NGE2LjU2NCA2LjU2NCAwIDEgMC02LjU2NCA2LjYyNiA2LjYgNi42IDAgMCAwIDYuNTY2LTYuNjI2em03Ljc5MiAxMy42OTRhNi42MzkgNi42MzkgMCAwIDAtNC4yMTQtOC4zNDkgNi41NTIgNi41NTIgMCAwIDAtOC4yNzIgNC4yNTQgNi42MzkgNi42MzkgMCAwIDAgNC4yMTUgOC4zNDkgNi41NTEgNi41NTEgMCAwIDAgOC4yNzMtNC4yNTN6bTMuMjE4IDE1LjQ1NWE2LjY2NiA2LjY2NiAwIDAgMC0xLjQ1Mi05LjI1NSA2LjUyNSA2LjUyNSAwIDAgMC05LjE2OSAxLjQ2NiA2LjY2NiA2LjY2NiAwIDAgMCAxLjQ1MiA5LjI1NSA2LjUyNSA2LjUyNSAwIDAgMCA5LjE3MS0xLjQ2NnptLTEuNjcxIDE1LjdhNi42NjYgNi42NjYgMCAwIDAgMS40NTItOS4yNTUgNi41MjUgNi41MjUgMCAwIDAtOS4xNjktMS40NjYgNi42NjYgNi42NjYgMCAwIDAtMS40NTIgOS4yNTUgNi41MjUgNi41MjUgMCAwIDAgOS4xNzEgMS40Njh6bS02LjQgMTQuNDEyYTYuNjM4IDYuNjM4IDAgMCAwIDQuMjE0LTguMzQ5IDYuNTUxIDYuNTUxIDAgMCAwLTguMjcxLTQuMjU0IDYuNjM5IDYuNjM5IDAgMCAwLTQuMjE1IDguMzQ5IDYuNTUyIDYuNTUyIDAgMCAwIDguMjc4IDQuMjU2em0tMTAuNSAxMS43MTFhNi42MjYgNi42MjYgMCAxIDAtNi41NjQtNi42MjYgNi42IDYuNiAwIDAgMCA2LjU3NSA2LjYyOHptLTEzLjU2NyA3Ljg2NWE2LjU1MiA2LjU1MiAwIDAgMCA4LjI3Mi00LjI1NCA2LjYzOSA2LjYzOSAwIDAgMC00LjIxNS04LjM0OSA2LjU1MiA2LjU1MiAwIDAgMC04LjI3MiA0LjI1NCA2LjYzOSA2LjYzOSAwIDAgMCA0LjIyNSA4LjM1MXptLTE1LjMxMSAzLjI0OEE2LjUyNSA2LjUyNSAwIDAgMCA3OCAxMTkuMDg3YTYuNjY2IDYuNjY2IDAgMCAwLTEuNDUyLTkuMjU1IDYuNTI1IDYuNTI1IDAgMCAwLTkuMTY5IDEuNDY2IDYuNjY2IDYuNjY2IDAgMCAwIDEuNDYyIDkuMjU3em0tMTUuNTU2LTEuNjg2YTYuNTI1IDYuNTI1IDAgMCAwIDkuMTY5IDEuNDY1IDYuNjY2IDYuNjY2IDAgMCAwIDEuNDUyLTkuMjU1IDYuNTI1IDYuNTI1IDAgMCAwLTkuMTY5LTEuNDY2IDYuNjY3IDYuNjY3IDAgMCAwLTEuNDQxIDkuMjU4em0tMTQuMjc4LTYuNDU3YTYuNTUyIDYuNTUyIDAgMCAwIDguMjcyIDQuMjU1IDYuNjQgNi42NCAwIDAgMCA0LjIxNS04LjM1IDYuNTUyIDYuNTUyIDAgMCAwLTguMjcyLTQuMjU0IDYuNjM5IDYuNjM5IDAgMCAwLTQuMjA1IDguMzUxek0yNy40IDEwMS44MTlhNi41NjUgNi41NjUgMCAxIDAgNi41NjQtNi42MjYgNi42IDYuNiAwIDAgMC02LjU2NCA2LjYyNnptMTguNzgtNTYuNDY2YTMuOTY5IDMuOTY5IDAgMSAwIDMuOTMyIDMuOTY4IDMuOTUgMy45NSAwIDAgMC0zLjkzMi0zLjk2OHptOC40NTUtNS4wMjlhMy45MzEgMy45MzEgMCAwIDAtNC45NjMgMi41NTIgMy45ODMgMy45ODMgMCAwIDAgMi41MjkgNS4wMSAzLjkzMSAzLjkzMSAwIDAgMCA0Ljk2My0yLjU1MiAzLjk4NCAzLjk4NCAwIDAgMC0yLjUyOS01LjAxem05LjUzNy0yLjIzMmEzLjkxNSAzLjkxNSAwIDAgMC01LjUuODggNCA0IDAgMCAwIC44NzEgNS41NTMgMy45MTUgMy45MTUgMCAwIDAgNS41LS44OCA0IDQgMCAwIDAtLjg3MS01LjU1M3ptOS43NTMuODUyYTMuOTE1IDMuOTE1IDAgMCAwLTUuNS0uODggNCA0IDAgMCAwLS44NzEgNS41NTMgMy45MTUgMy45MTUgMCAwIDAgNS41Ljg4IDQgNCAwIDAgMCAuODcxLTUuNTUzem05LjAxNiAzLjg1NmEzLjkzMSAzLjkzMSAwIDAgMC00Ljk2My0yLjU1MyAzLjk4NCAzLjk4NCAwIDAgMC0yLjUyOSA1LjAxIDMuOTMxIDMuOTMxIDAgMCAwIDQuOTYzIDIuNTUzIDMuOTg0IDMuOTg0IDAgMCAwIDIuNTI5LTUuMDF6bTcuMzk1IDYuNDc2YTMuOTM5IDMuOTM5IDAgMSAwLTMuOTM2IDMuOTcyIDMuOTU3IDMuOTU3IDAgMCAwIDMuOTM1LTMuOTc2em01LjA1IDguNDY1YTMuOTgzIDMuOTgzIDAgMCAwLTIuNTI5LTUuMDEgMy45MzEgMy45MzEgMCAwIDAtNC45NjMgMi41NTIgMy45ODQgMy45ODQgMCAwIDAgMi41MjkgNS4wMSAzLjkzMSAzLjkzMSAwIDAgMCA0Ljk2Mi0yLjU1NnptMi4yMTQgOS42MjNhNCA0IDAgMCAwLS44NzEtNS41NTMgMy45MTUgMy45MTUgMCAwIDAtNS41Ljg4IDQgNCAwIDAgMCAuODcxIDUuNTUzIDMuOTE1IDMuOTE1IDAgMCAwIDUuNS0uODh6bS0uODQ0IDkuODQ1YTQgNCAwIDAgMCAuODcxLTUuNTUzIDMuOTE1IDMuOTE1IDAgMCAwLTUuNS0uODggNCA0IDAgMCAwLS44NzEgNS41NTMgMy45MTUgMy45MTUgMCAwIDAgNS40OTcuODh6bS0zLjgxNyA5LjFhMy45ODMgMy45ODMgMCAwIDAgMi41MjktNS4wMSAzLjkzMSAzLjkzMSAwIDAgMC00Ljk2OC0yLjU1MyAzLjk4MyAzLjk4MyAwIDAgMC0yLjUyOSA1LjAwOSAzLjkzMSAzLjkzMSAwIDAgMCA0Ljk2NSAyLjU1M3ptLTYuNDE5IDcuNDYzYTMuOTc2IDMuOTc2IDAgMSAwLTMuOTM4LTMuOTcyIDMuOTU3IDMuOTU3IDAgMCAwIDMuOTM4IDMuOTcyem0tOC4zODcgNS4xYTMuOTMxIDMuOTMxIDAgMCAwIDQuOTY3LTIuNTU1IDMuOTgzIDMuOTgzIDAgMCAwLTIuNTI5LTUuMDFBMy45MzEgMy45MzEgMCAwIDAgNzUuNiA5My44NmEzLjk4MyAzLjk4MyAwIDAgMCAyLjUzNCA1LjAxek02OC42IDEwMS4xYTMuOTE1IDMuOTE1IDAgMCAwIDUuNS0uODggNCA0IDAgMCAwLS44NzEtNS41NTMgMy45MTUgMy45MTUgMCAwIDAtNS41Ljg4IDQgNCAwIDAgMCAuODcxIDUuNTUzem0tOS43NTMtLjg1MmEzLjkxNiAzLjkxNiAwIDAgMCA1LjUuODggNCA0IDAgMCAwIC44NzEtNS41NTQgMy45MTUgMy45MTUgMCAwIDAtNS41LS44OCA0IDQgMCAwIDAtLjg3NSA1LjU1NnpNNDkuODI4IDk2LjRhMy45MzEgMy45MzEgMCAwIDAgNC45NjMgMi41NTMgMy45ODQgMy45ODQgMCAwIDAgMi41MjktNS4wMSAzLjkzMSAzLjkzMSAwIDAgMC00Ljk2My0yLjU1MyAzLjk4MyAzLjk4MyAwIDAgMC0yLjUyOSA1LjAxem0tNy4zOTUtNi40NzZhMy45MzkgMy45MzkgMCAxIDAgMy45MzktMy45NzYgMy45NTcgMy45NTcgMCAwIDAtMy45MzggMy45NzR6TTUzLjUxOSA1Ni4yYTIuMTE3IDIuMTE3IDAgMSAwIDIuMSAyLjExNyAyLjEwNyAyLjEwNyAwIDAgMC0yLjEtMi4xMTd6bTQuNjM5LTIuNzIzYTIuMSAyLjEgMCAwIDAtMi42NDcgMS4zNjEgMi4xMjUgMi4xMjUgMCAwIDAgMS4zNDkgMi42NzIgMi4xIDIuMSAwIDAgMCAyLjY0Ny0xLjM2MSAyLjEyNCAyLjEyNCAwIDAgMC0xLjM0OS0yLjY3MnptNS4yLTEuMjUyYTIuMDg4IDIuMDg4IDAgMCAwLTIuOTM0LjQ2OSAyLjEzMyAyLjEzMyAwIDAgMCAuNDY1IDIuOTYyIDIuMDg4IDIuMDg4IDAgMCAwIDIuOTM0LS40NjkgMi4xMzMgMi4xMzMgMCAwIDAtLjQ3LTIuOTYxem01LjMyNC40M2EyLjA4OCAyLjA4OCAwIDAgMC0yLjkzNC0uNDY5IDIuMTMzIDIuMTMzIDAgMCAwLS40NjUgMi45NjIgMi4wODggMi4wODggMCAwIDAgMi45MzQuNDY5IDIuMTMzIDIuMTMzIDAgMCAwIC40Ni0yLjk2MXptNC45MzIgMi4wN2EyLjEgMi4xIDAgMCAwLTIuNjQ3LTEuMzYxIDIuMTI0IDIuMTI0IDAgMCAwLTEuMzQ5IDIuNjcyQTIuMSAyLjEgMCAwIDAgNzIuMjYgNTcuNGEyLjEyNCAyLjEyNCAwIDAgMCAxLjM0OS0yLjY3NHptNC4wNTcgMy41MDdhMi4xIDIuMSAwIDEgMC0yLjEgMi4xMiAyLjExMSAyLjExMSAwIDAgMCAyLjA5NS0yLjEyem0yLjc4NSA0LjZhMi4xMjUgMi4xMjUgMCAwIDAtMS4zNTYtMi42NzEgMi4xIDIuMSAwIDAgMC0yLjY0NyAxLjM2MSAyLjEyNSAyLjEyNSAwIDAgMCAxLjM0NyAyLjY3MiAyLjEgMi4xIDAgMCAwIDIuNjUxLTEuMzYxem0xLjI0IDUuMjQ0YTIuMTMzIDIuMTMzIDAgMCAwLS40NjUtMi45NjIgMi4wODggMi4wODggMCAwIDAtMi45MzQuNDY5IDIuMTMzIDIuMTMzIDAgMCAwIC40NjUgMi45NjIgMi4wODggMi4wODggMCAwIDAgMi45MjktLjQ2OHptLS40MjYgNS4zNzRhMi4xMzMgMi4xMzMgMCAwIDAgLjQ2NS0yLjk2MiAyLjA4OCAyLjA4OCAwIDAgMC0yLjkzNS0uNDY4IDIuMTMzIDIuMTMzIDAgMCAwLS40NjUgMi45NjIgMi4wODggMi4wODggMCAwIDAgMi45MjkuNDY5em0tMi4wNSA0Ljk3OGEyLjEyNSAyLjEyNSAwIDAgMCAxLjM0OS0yLjY3MiAyLjEgMi4xIDAgMCAwLTIuNjUzLTEuMzU2IDIuMTI0IDIuMTI0IDAgMCAwLTEuMzQ5IDIuNjcyIDIuMSAyLjEgMCAwIDAgMi42NDcgMS4zNTd6bS0zLjQ4IDQuMDk1YTIuMTIgMi4xMiAwIDEgMC0yLjEtMi4xMiAyLjExMSAyLjExMSAwIDAgMCAyLjEgMi4xMnptLTQuNTU4IDIuODExYTIuMSAyLjEgMCAwIDAgMi42NDctMS4zNjFBMi4xMjUgMi4xMjUgMCAwIDAgNzIuNDggODEuM2EyLjEgMi4xIDAgMCAwLTIuNjQ3IDEuMzYxIDIuMTI1IDIuMTI1IDAgMCAwIDEuMzQ5IDIuNjczem0tNS4yIDEuMjUyYTIuMDg4IDIuMDg4IDAgMCAwIDIuOTM0LS40NjkgMi4xMzMgMi4xMzMgMCAwIDAtLjQ2NS0yLjk2MiAyLjA4OCAyLjA4OCAwIDAgMC0yLjkzNC40NjkgMi4xMzMgMi4xMzMgMCAwIDAgLjQ3IDIuOTYyem0tNS4zMjQtLjQzYTIuMDg4IDIuMDg4IDAgMCAwIDIuOTM0LjQ2OSAyLjEzMyAyLjEzMyAwIDAgMCAuNDY1LTIuOTYyIDIuMDg4IDIuMDg4IDAgMCAwLTIuOTM0LS40NjkgMi4xMzMgMi4xMzMgMCAwIDAtLjQ2IDIuOTYyem0tNC45MzItMi4wN2EyLjEgMi4xIDAgMCAwIDIuNjQ3IDEuMzYxIDIuMTI1IDIuMTI1IDAgMCAwIDEuMzQ5LTIuNjcyIDIuMSAyLjEgMCAwIDAtMi42NDctMS4zNjEgMi4xMjQgMi4xMjQgMCAwIDAtMS4zNDQgMi42NzJ6bS00LjA1Ny0zLjUwN2EyLjEgMi4xIDAgMSAwIDIuMS0yLjEyIDIuMTExIDIuMTExIDAgMCAwLTIuMDk1IDIuMTJ6IiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"?B.Unsupported:B.Loadable,this._particle=null,this._connecting=!1,this._publicKey=null,this._wallet=null,this._config={config:{projectId:"",clientKey:"",appId:"",...e.config,chainId:e.config?.chainId??101,chainName:e.config?.chainName??"solana"},login:e.login}}get particle(){return this._particle}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0;let e,t;try{({ParticleNetwork:e,SolanaWallet:t}=await Fi(()=>import("./index-EkXmx7jl.js"),__vite__mapDeps([17,4,5,6,3,7,8,18,2,9,10,16])))}catch(a){throw new Sn(a?.message,a)}let i;try{i=new e(this._config.config),i.auth.isLogin()||await i.auth.login(this._config.login)}catch(a){throw new so(a?.message,a)}let s;try{s=new t(i.auth)}catch(a){throw new so(a?.message,a)}const n=s.publicKey;if(!n)throw new Ue;let o;try{o=new Me(n.toBytes())}catch(a){throw new Ie(a?.message,a)}this._particle=i,this._wallet=s,this._publicKey=o,this.emit("connect",o)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signMessage(e)}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const J1="Phantom";class sA extends ht{constructor(e={}){super(),this.name=J1,this.url="https://phantom.app",this.icon="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDgiIGhlaWdodD0iMTA4IiB2aWV3Qm94PSIwIDAgMTA4IDEwOCIgZmlsbD0ibm9uZSI+CjxyZWN0IHdpZHRoPSIxMDgiIGhlaWdodD0iMTA4IiByeD0iMjYiIGZpbGw9IiNBQjlGRjIiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00Ni41MjY3IDY5LjkyMjlDNDIuMDA1NCA3Ni44NTA5IDM0LjQyOTIgODUuNjE4MiAyNC4zNDggODUuNjE4MkMxOS41ODI0IDg1LjYxODIgMTUgODMuNjU2MyAxNSA3NS4xMzQyQzE1IDUzLjQzMDUgNDQuNjMyNiAxOS44MzI3IDcyLjEyNjggMTkuODMyN0M4Ny43NjggMTkuODMyNyA5NCAzMC42ODQ2IDk0IDQzLjAwNzlDOTQgNTguODI1OCA4My43MzU1IDc2LjkxMjIgNzMuNTMyMSA3Ni45MTIyQzcwLjI5MzkgNzYuOTEyMiA2OC43MDUzIDc1LjEzNDIgNjguNzA1MyA3Mi4zMTRDNjguNzA1MyA3MS41NzgzIDY4LjgyNzUgNzAuNzgxMiA2OS4wNzE5IDY5LjkyMjlDNjUuNTg5MyA3NS44Njk5IDU4Ljg2ODUgODEuMzg3OCA1Mi41NzU0IDgxLjM4NzhDNDcuOTkzIDgxLjM4NzggNDUuNjcxMyA3OC41MDYzIDQ1LjY3MTMgNzQuNDU5OEM0NS42NzEzIDcyLjk4ODQgNDUuOTc2OCA3MS40NTU2IDQ2LjUyNjcgNjkuOTIyOVpNODMuNjc2MSA0Mi41Nzk0QzgzLjY3NjEgNDYuMTcwNCA4MS41NTc1IDQ3Ljk2NTggNzkuMTg3NSA0Ny45NjU4Qzc2Ljc4MTYgNDcuOTY1OCA3NC42OTg5IDQ2LjE3MDQgNzQuNjk4OSA0Mi41Nzk0Qzc0LjY5ODkgMzguOTg4NSA3Ni43ODE2IDM3LjE5MzEgNzkuMTg3NSAzNy4xOTMxQzgxLjU1NzUgMzcuMTkzMSA4My42NzYxIDM4Ljk4ODUgODMuNjc2MSA0Mi41Nzk0Wk03MC4yMTAzIDQyLjU3OTVDNzAuMjEwMyA0Ni4xNzA0IDY4LjA5MTYgNDcuOTY1OCA2NS43MjE2IDQ3Ljk2NThDNjMuMzE1NyA0Ny45NjU4IDYxLjIzMyA0Ni4xNzA0IDYxLjIzMyA0Mi41Nzk1QzYxLjIzMyAzOC45ODg1IDYzLjMxNTcgMzcuMTkzMSA2NS43MjE2IDM3LjE5MzFDNjguMDkxNiAzNy4xOTMxIDcwLjIxMDMgMzguOTg4NSA3MC4yMTAzIDQyLjU3OTVaIiBmaWxsPSIjRkZGREY4Ii8+Cjwvc3ZnPg==",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),t.off("accountChanged",this._accountChanged),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._accountChanged=t=>{const i=this._publicKey;if(i){try{t=new Me(t.toBytes())}catch(s){this.emit("error",new Ie(s?.message,s));return}i.equals(t)||(this._publicKey=t,this.emit("connect",t))}},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&(lp()?(this._readyState=B.Loadable,this.emit("readyStateChange",this._readyState)):ot(()=>window?.isPhantomInstalled&&(window.phantom?.solana?.isPhantom||window.solana?.isPhantom)?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1))}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async autoConnect(){this.readyState===B.Installed&&await this.connect()}async connect(){try{if(this.connected||this.connecting)return;if(this.readyState===B.Loadable){const i=encodeURIComponent(window.location.href),s=encodeURIComponent(window.location.origin);window.location.href=`https://phantom.app/ul/browse/${i}?ref=${s}`;return}if(this.readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.phantom?.solana||window.solana;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),e.on("accountChanged",this._accountChanged),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),e.off("accountChanged",this._accountChanged),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;os(e)?n?.length&&e.sign(n):(e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n)),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const X1="SafePal";class nA extends Tn{constructor(e={}){super(),this.name=X1,this.url="https://safepal.io",this.icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAP1BMVEUAAABKIe9MIO9LIO9KIe5KIO9KIe9KIO5JIO1KIu1KIO1KIe////+kkPfo4/1hPfFgPfGZgvaOdPWDZvRVL/CpQHckAAAAC3RSTlMA7yC/oDDfgJCQkAOmnXUAAADnSURBVEjHlZbtjoJAEAR7BwTvmvUO9f2f1USNk81MRrp+VxFY9gsvbJ0aC9r0Y3Bs5gHmT3JqPMRy0nyyPQtbeJhmAGYKzIBRwvBLiRUTJSY0SjQw4X7tI//8kAV/l22k04HoE6JPiD4h+oToE8HfWYLwfNZg9EOQvpL7Mag+et+SoBrWWxaUP64nQT01ehLUk6/nwXYLgRdpsIfAiyy4VAuoc8B9D0rcPxbs7sfAB8oJPiH6hOgTok+IPiH4YQH1keudCfJmrG/3KyXO8pGlH4ow4bMX0w/2Z7EIvnY5cez87fqzvvUH/qNgaUlN588AAAAASUVORK5CYII=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.safepal?.isSafePalWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.safepal;let t;try{t=await e.getAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._wallet&&(this._wallet=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const eN="Saifu";class oA extends ht{constructor(e={}){super(),this.name=eN,this.url="https://saifuwallet.com",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTQxcHgiIGhlaWdodD0iNTQxcHgiIHZpZXdCb3g9IjAgMCA1NDEgNTQxIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPkFydGJvYXJkIENvcHkgOTwvdGl0bGU+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjEuNzk5ODcyMTYlIiB5MT0iMCUiIHgyPSI5OC4zOTcxMDUxJSIgeTI9Ijk3Ljk5MDI5MSUiIGlkPSJsaW5lYXJHcmFkaWVudC0xIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZCOTIzQyIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRUM0ODk5IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9IkFydGJvYXJkLUNvcHktOSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZD0iTTIzMi4yNzAwNDQsLTcuODU2NzI5NzFlLTE1IEwzMDcuNzI5OTU2LDcuODU2NzI5NzFlLTE1IEMzNzkuNDY1Mzc2LC01LjMyMDg1MzMyZS0xNSA0MTIuMzM3Mzc5LDguODE4NDMzMDYgNDQzLjMwMDM0MiwyNS4zNzc2MDY5IEM0NzQuMjYzMzA1LDQxLjkzNjc4MDcgNDk4LjU2MzIxOSw2Ni4yMzY2OTUyIDUxNS4xMjIzOTMsOTcuMTk5NjU4MiBDNTMxLjY4MTU2NywxMjguMTYyNjIxIDU0MC41LDE2MS4wMzQ2MjQgNTQwLjUsMjMyLjc3MDA0NCBMNTQwLjUsMzA4LjIyOTk1NiBDNTQwLjUsMzc5Ljk2NTM3NiA1MzEuNjgxNTY3LDQxMi44MzczNzkgNTE1LjEyMjM5Myw0NDMuODAwMzQyIEM0OTguNTYzMjE5LDQ3NC43NjMzMDUgNDc0LjI2MzMwNSw0OTkuMDYzMjE5IDQ0My4zMDAzNDIsNTE1LjYyMjM5MyBDNDEyLjMzNzM3OSw1MzIuMTgxNTY3IDM3OS40NjUzNzYsNTQxIDMwNy43Mjk5NTYsNTQxIEwyMzIuMjcwMDQ0LDU0MSBDMTYwLjUzNDYyNCw1NDEgMTI3LjY2MjYyMSw1MzIuMTgxNTY3IDk2LjY5OTY1ODIsNTE1LjYyMjM5MyBDNjUuNzM2Njk1Miw0OTkuMDYzMjE5IDQxLjQzNjc4MDcsNDc0Ljc2MzMwNSAyNC44Nzc2MDY5LDQ0My44MDAzNDIgQzguMzE4NDMzMDYsNDEyLjgzNzM3OSAtMC41LDM3OS45NjUzNzYgLTAuNSwzMDguMjI5OTU2IEwtMC41LDIzMi43NzAwNDQgQy0wLjUsMTYxLjAzNDYyNCA4LjMxODQzMzA2LDEyOC4xNjI2MjEgMjQuODc3NjA2OSw5Ny4xOTk2NTgyIEM0MS40MzY3ODA3LDY2LjIzNjY5NTIgNjUuNzM2Njk1Miw0MS45MzY3ODA3IDk2LjY5OTY1ODIsMjUuMzc3NjA2OSBDMTI3LjY2MjYyMSw4LjgxODQzMzA2IDE2MC41MzQ2MjQsNS4zMjA4NTMzMmUtMTUgMjMyLjI3MDA0NCwtNy44NTY3Mjk3MWUtMTUgWiIgaWQ9IlJlY3RhbmdsZSIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSI+PC9wYXRoPgogICAgICAgIDxnIGlkPSJMYXllciIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTA3LjUwMjc2NCwgODcuMDIxNTg5KSIgZmlsbD0iI0ZGRkZGRiI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNjEuMzI1MTQ3LDMyMy44NjM0MjEgQzE0Mi44Mjk2OTQsMzIzLjc5NzY1NSAxMjMuMjczNDA1LDMyMy4xODE2MjggMTE1LjYyMDA1NCwzMjIuNDIzNjkzIEMxMDguMjYyNjAyLDMyMS42OTUwNTUgOTYuMTg1MjU1MywzMTkuOTI1MzEgODguNzgxNTA3MywzMTguNDkwODYyIEM4MS4zNzc3NjAzLDMxNy4wNTY0NDQgNzAuNTIyNDg5MywzMTQuMzEyMjczIDY0LjY1ODY4OTMsMzEyLjM5MjcxOCBDNTguNzk0ODg5MywzMTAuNDczMTMxIDUwLjMxNDQ1MTMsMzA3LjEyMTE3MiA0NS44MTMyNzYzLDMwNC45NDM4NjUgQzQxLjMxMjA5MzMsMzAyLjc2NjU4OCAzMy45ODIzODIzLDI5OC4yMzcxMzkgMjkuNTI1MDMwMywyOTQuODc4NDM1IEMyNS4wNjc2NzEzLDI5MS41MTk3MDEgMTkuMTY5NTMxMywyODYuMDA1Njk0IDE2LjQxODA0MzMsMjgyLjYyNTAxNyBDMTMuNjY2NTU1MywyNzkuMjQ0NDAyIDkuNjgzMDk2MjksMjczLjAzNzM3MSA3LjU2NTkwMTI5LDI2OC44MzE2MjEgQzUuNDQ4NzEzMjksMjY0LjYyNTg3MiAyLjg3OTY0NDI5LDI1Ny42NTA4OTYgMS44NTY4NTUyOSwyNTMuMzMxNjIxIEMwLjU0MDkzNzI4NywyNDcuNzc0NDkzIDAsMjQxLjY3NzU2OSAwLDIzMi40Nzg0MTEgQzAsMjIzLjk1Mzc1MyAwLjYyMzY5MzI4NywyMTYuMzgwMDgzIDEuODA2NDE3MjksMjEwLjQ3ODQxMSBDMi43OTg0MjkyOSwyMDUuNTI4Mzk5IDQuOTYyNzg5MjksMTk3LjQyODQyMyA2LjYxNjExNzI5LDE5Mi40Nzg0MTEgQzguMjY5NDQ1MjksMTg3LjUyODM5OSAxMS4zNzA1MjczLDE3OS41MzcwOTYgMTMuNTA3NDIxMywxNzQuNzE5OTI3IEMxNy4zOTI2NjgzLDE2NS45NjE0NDMgMTcuMzkyNjY4MywxNjUuOTYxNDQzIDE0Ljg0OTI0MTMsMTYxLjA1OTA5OSBDMTMuMjU3MzY4MywxNTcuOTkwODMyIDEyLjI0ODA5MDMsMTU0LjMwNjUwNSAxMi4xNTE1MjUzLDE1MS4yMTExODQgQzEyLjA2NjY2MzMsMTQ4LjQ5MTEyMiAxMi42MjU5NTkzLDE0NC41MTM1MDYgMTMuMzk0Mzk5MywxNDIuMzcyMDI3IEMxNC4xNjI4NDAzLDE0MC4yMzA1NDcgMTcuOTQ4MTk0MywxMzQuMjE2NDc5IDIxLjgwNjMwMzMsMTI5LjAwNzQzMyBDMjUuNjY0NDExMywxMjMuNzk4Mzg4IDMzLjEzNTY4NzMsMTE1LjA3NTYwOSAzOC40MDkxMzkzLDEwOS42MjM0OTIgQzQzLjY4MjU5MjMsMTA0LjE3MTM3NCA1MS41OTcyNDIzLDk2LjY3NTczODQgNTUuOTk3MjM2Myw5Mi45NjY0Nzk0IEM2MC4zOTcyMzAzLDg5LjI1NzI1MDQgNjcuODIyMjMzMyw4My42Nzk5MTk0IDcyLjQ5NzIzNjMsODAuNTcyNDM2NCBDNzcuMTcyMjM5Myw3Ny40NjQ5MjI0IDg1LjQwNTkyNzMsNzIuNjU0Mzc1NCA5MC43OTQzMjUzLDY5Ljg4MjMxMTQgQzk2LjE4MjcyMjMsNjcuMTEwMjQ3NCAxMDQuNTg1OTgxLDYzLjM1NzEwNDQgMTA5LjQ2ODIxNCw2MS41NDE5NDk0IEMxMTQuMzUwNDYyLDU5LjcyNjgyNDQgMTIxLjQxNjc2MSw1Ny40MzYzMjc0IDEyNS4xNzExMjUsNTYuNDUxOTgzNCBDMTI4LjkyNTQ4OSw1NS40Njc2MDg0IDEzMi4zNzk0MzgsNTQuMzI4NjYxNCAxMzIuODQ2NTcxLDUzLjkyMDk3NzQgQzEzMy4zMTM3MDMsNTMuNTEzMjkzNCAxMzMuMzkzNDkxLDUyLjIyNjg4NTQgMTMzLjAyMzg2Myw1MS4wNjIzMDQ0IEMxMzIuNjU0MjM0LDQ5Ljg5NzcyMzQgMTMwLjY1NDQzMiw0OC4wNzg5MzY0IDEyOC41Nzk4NDcsNDcuMDIwNTU2NCBDMTI2LjUwNTI2Miw0NS45NjIxNzY0IDEyMy4zMzE2OTMsNDMuNDE0OTY1NCAxMjEuNTI3NDY0LDQxLjM2MDA2NDQgQzExOS43MjMyMzQsMzkuMzA1MTYzNCAxMTcuNjI4MzQsMzYuMTQzMDg0NCAxMTYuODcyMTQ0LDM0LjMzMzI2OTQgQzExNi4xMTU5NDksMzIuNTIzNDI0NCAxMTUuNDk3MjM2LDI4LjMxMzczODQgMTE1LjQ5NzIzNiwyNC45Nzg0MTE0IEMxMTUuNDk3MjM2LDIxLjY0MzA4NDQgMTE2LjE4NjE1NSwxNy4yNjUzMzc0IDExNy4wMjgxODEsMTUuMjUwMTA5NCBDMTE3Ljg3MDE5MSwxMy4yMzQ4ODE0IDExOS42OTgxMDMsMTAuMDkyNzkxNCAxMjEuMDkwMTkzLDguMjY3NjU3NDMgQzEyMi40ODIyNjcsNi40NDI1NTM0MyAxMjUuODI4Mzk3LDMuODMwODI4NDMgMTI4LjUyNTk5OSwyLjQ2MzgyNDQzIEMxMzIuMzM4NDIzLDAuNTMxOTM5NDI1IDEzNC45NDE0MTksLTAuMDE2NzA1NTc0NiAxNDAuMjEzOTg3LDAgQzE0NC42MTc5NDgsMC4wMTQ2MzU0MjU0IDE0OC40MTM4NDcsMC42NjU4MTk0MjUgMTUxLjAzNTk0OCwxLjg1Njg5MDQzIEMxNTMuMjU3MjMxLDIuODY1ODkzNDMgMTU2Ljk2OTc0LDUuODQ0MzQ3NDMgMTU5LjI4NTk0OCw4LjQ3NTcyNTQzIEMxNjMuNDk3MjM2LDEzLjI1OTk5NzQgMTYzLjQ5NzIzNiwxMy4yNTk5OTc0IDE2Ny43MDg1MjQsOC40NzU3MjU0MyBDMTcwLjAyNDczMiw1Ljg0NDM0NzQzIDE3My43MzcyNDEsMi44NjU4OTM0MyAxNzUuOTU4NTI0LDEuODU2ODkwNDMgQzE3OC41ODA2MjUsMC42NjU4MTk0MjUgMTgyLjM3NjUzOSwwLjAxNDYzNTQyNTQgMTg2Ljc4MDQ3LDAgQzE5Mi4wNTMwNTMsLTAuMDE2NzA1NTc0NiAxOTQuNjU2MDQ5LDAuNTMxOTM5NDI1IDE5OC40Njg0NTgsMi40NjM4MjQ0MyBDMjAxLjE2NjA5LDMuODMwODI4NDMgMjA0LjQ3MzAwNSw2LjQxODMyMjQzIDIwNS44MTcxODIsOC4yMTM4MjQ0MyBDMjA3LjE2MTM2LDEwLjAwOTM1NjQgMjA4Ljk4OTI0LDEyLjkxODU2NjQgMjA5Ljg3OTE5NCwxNC42Nzg3NTk0IEMyMTAuODgxODgsMTYuNjYxOTQ0NCAyMTEuNDk3MjM2LDIwLjM4MjIyMDQgMjExLjQ5NzIzNiwyNC40NjA4NjM0IEMyMTEuNDk3MjM2LDI4LjA4MDg1OTQgMjEwLjg3ODUyMywzMi41MjM0MjQ0IDIxMC4xMjIzMjgsMzQuMzMzMjY5NCBDMjA5LjM2NjEzMiwzNi4xNDMwODQ0IDIwNy4yNzEyNTMsMzkuMzA1MTYzNCAyMDUuNDY3MDI0LDQxLjM2MDA2NDQgQzIwMy42NjI3OTQsNDMuNDE0OTY1NCAyMDAuNDg5MjEsNDUuOTYyMTc2NCAxOTguNDE0NjI1LDQ3LjAyMDU1NjQgQzE5Ni4zNDAwNCw0OC4wNzg5MzY0IDE5NC4zNDAyMjMsNDkuODk3NzIzNCAxOTMuOTcwNjI1LDUxLjA2MjMwNDQgQzE5My42MDA5OTYsNTIuMjI2ODg1NCAxOTMuNjgwNzY5LDUzLjUwODI4ODQgMTk0LjE0NzkwMSw1My45MDk4Mzg0IEMxOTQuNjE1MDM0LDU0LjMxMTM4ODQgMTk3LjY5NzI0OCw1NS4zNzA1MzE0IDIwMC45OTcyMzYsNTYuMjYzNDQ1NCBDMjA0LjI5NzIyNCw1Ny4xNTYzNTk0IDIxMC4xNTMwODksNTguOTY5NDM5NCAyMTQuMDEwMjA2LDYwLjI5MjQ5ODQgQzIxNy44NjczNTMsNjEuNjE1NTI2NCAyMjQuMzY0NzI5LDY0LjE2NDYyOTQgMjI4LjQ0ODgzNSw2NS45NTcxNzE0IEMyMzIuNTMyOTQyLDY3Ljc0OTcxMjQgMjQwLjI5MjA2Niw3MS44MzkzNzM0IDI0NS42OTEyOTcsNzUuMDQ1MzM2NCBDMjUxLjA5MDUyOCw3OC4yNTEyOTk0IDI1OC45OTMxNDcsODMuNDY0MjgxNCAyNjMuMjUyNjY4LDg2LjYyOTcxNzQgQzI2Ny41MTIxOSw4OS43OTUxODM0IDI3Ny4xMTY2ODIsOTguNDgxMDk3NCAyODQuNTk2MDIxLDEwNS45MzE3NSBDMjkyLjA3NTM2MSwxMTMuMzgyNDAzIDMwMS40MTI0MjgsMTIzLjgzNTQ2NyAzMDUuMzQ1MDc1LDEyOS4xNjA3ODQgQzMwOS4yNzc2OTMsMTM0LjQ4NjA3MSAzMTIuOTQ1NzUzLDE0MC4wMjc4OCAzMTMuNDk2MjU5LDE0MS40NzU4NzggQzMxNC4wNDY3OTcsMTQyLjkyMzg3NiAzMTQuNDk3MjM2LDE0Ni45MzcyODkgMzE0LjQ5NzIzNiwxNTAuMzk0NTY0IEMzMTQuNDk3MjM2LDE1NS4xMzAxMjkgMzEzLjg5ODExNSwxNTcuODA3Mjk5IDMxMi4wNjgxODksMTYxLjI0ODkxOSBDMzA5LjYzOTE3MywxNjUuODE3MzI0IDMwOS42MzkxNzMsMTY1LjgxNzMyNCAzMTQuNjI4MjE3LDE3Ny41ODk4MzEgQzMxNy4zNzIxNzUsMTg0LjA2NDcxNSAzMjAuNzM4NzUyLDE5My4yMTM0NTcgMzIyLjEwOTQ0OSwxOTcuOTIwMzY3IEMzMjMuNDgwMTc3LDIwMi42MjcyNzYgMzI1LjI5ODAxNywyMTAuOTc4NDExIDMyNi4xNDkwOTEsMjE2LjQ3ODQxMSBDMzI3LjIxNTAwOSwyMjMuMzY2Njg2IDMyNy41MTg4NDIsMjI5LjkwMTMyNCAzMjcuMTI1NTAxLDIzNy40Nzg0MTEgQzMyNi43OTc0MzcsMjQzLjc5NzY4NiAzMjUuNjgwNDY0LDI1MS41OTY4OCAzMjQuNTAwNTYyLDI1NS44MDcwMjQgQzMyMy4zNzA4OTMsMjU5LjgzNzc4NiAzMjEuMTU2ODEyLDI2NS42OTA3ODMgMzE5LjU4MDM5NiwyNjguODEzNjc3IEMzMTguMDAzOTUsMjcxLjkzNjYwMiAzMTQuNTU1NzA4LDI3Ny4zNjMwNTUgMzExLjkxNzY0NiwyODAuODcyNDU0IEMzMDkuMjc5NTU0LDI4NC4zODE4ODQgMzAzLjgyNDc4MSwyODkuODcyNjk4IDI5OS43OTU5NDIsMjkzLjA3NDI5NyBDMjk1Ljc2NzA3MiwyOTYuMjc1ODY2IDI4OS42NjQxOTgsMzAwLjQ2Mzg4NSAyODYuMjMzOTkxLDMwMi4zODA5NjggQzI4Mi44MDM3ODUsMzA0LjI5ODA4MyAyNzUuODc1MDEzLDMwNy40NTc3NTEgMjcwLjgzNjc0NCwzMDkuNDAyNDgzIEMyNjUuNzk4NDc1LDMxMS4zNDcyNDYgMjU3LjI0ODQ1NywzMTQuMDkwNTk0IDI1MS44MzY3NDQsMzE1LjQ5ODgyNyBDMjQ2LjQyNTAwMSwzMTYuOTA3MDYxIDIzNi41OTcyNDIsMzE4LjkxNDY5IDIyOS45OTcyMzYsMzE5Ljk2MDI4NCBDMjIzLjM5NzIzLDMyMS4wMDU4NDYgMjEyLjUxOTc4OCwzMjIuMzM3NjY0IDIwNS44MjUxNDcsMzIyLjkxOTg0OCBDMTk5LjEzMDUwNiwzMjMuNTAyMDYyIDE3OS4xMDU0OTcsMzIzLjkyNjY4NCAxNjEuMzI1MTQ3LDMyMy44NjM0MjEgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.saifu?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.saifu;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;if(s.signAndSendTransaction)try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}return await super.sendTransaction(e,t,i)}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const tN="Salmon";class aA extends ht{constructor({network:e=E1.Mainnet}={}){super(),this.name=tN,this.url="https://salmonwallet.io",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB3aWR0aD0iODgiIGhlaWdodD0iODgiIHZpZXdCb3g9IjAgMCA4OCA4OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9Ijg4IiBoZWlnaHQ9Ijg4IiByeD0iMzAiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl84NTVfNTgwKSIvPgo8cGF0aCBkPSJNNTkuODA1NSAyNy42M0M1Ni43OTU1IDI1LjgyMzkgNTMuNjIyMiAyNC41Mzg4IDUwLjM1OTcgMjMuODE0NEw0Ni45MDQyIDE2LjEyODdDNDYuNDkzMyAxNC44NTg1IDQ1LjMwMDIgMTQuMDAwMSA0My45NTM3IDE0LjAwMDFINDMuODE1QzQyLjQ2ODUgMTQuMDAwMSA0MS4yNzU0IDE0Ljg2MzUgNDAuODY0NSAxNi4xMjg3TDM3LjQwOSAyMy44MDk1QzM0LjE0MTYgMjQuNTM4OCAzMC45NTgzIDI1LjgyODkgMjcuOTQzNCAyNy42MzQ5QzIxLjk1MzIgMzkuMjYwMyAyMC4zMjk0IDUwLjU5MjggMjEuMTQxMyA2MS43NjY2QzI0LjY1MTMgNjUuMTY1NCAzMi40MzM2IDY5LjM2OCAzNi42MDcgNzEuMDMwMkMzOS4wNTI2IDcyLjAwMjcgMzkuODAwMSA3Mi40OTM5IDQyLjI1MDYgNzIuOTAwN0M0NC40Mjg5IDczLjUxNiA0NS4wODczIDczLjI3NzggNDYuNzU1NyA3My4xMDQyQzQ5LjMyNTEgNzIuNDE5NSA1MC4zOTQ0IDcxLjcyNDggNTEuNDM0IDcxLjE2NDFDNTUuODQ5OSA2OC44NzY4IDYzLjExNzQgNjUuMTcwNCA2Ni42Mjc0IDYxLjc3MTZDNjcuNTc3OSA0OC44MTE2IDY0Ljk5ODYgMzcuNTgzMiA1OS44MDU1IDI3LjYyNVYyNy42M1pNMzcuNTI3OCA1MS4xNDg1QzM1LjY0MTYgNTEuMTQ4NSAzNC4wODIyIDQ4LjkwMDkgMzQuMDgyMiA0Ni4xMzIyQzM0LjA4MjIgNDMuMzYzNiAzNS41ODcxIDQxLjA5NjEgMzcuNTE3OSA0MS4wOTYxQzM5LjQ0ODYgNDEuMDk2MSA0MC45OTgxIDQzLjM2MzYgNDAuOTYzNSA0Ni4xMzIyQzQwLjkyODggNDguOTAwOSAzOS40NDM3IDUxLjE0ODUgMzcuNTIyOCA1MS4xNDg1SDM3LjUyNzhaTTUwLjIzMSA1MS4xNDg1QzQ4LjMzOTkgNTEuMTQ4NSA0Ni43OTAzIDQ4LjkwMDkgNDYuNzkwMyA0Ni4xMzIyQzQ2Ljc5MDMgNDMuMzYzNiA0OC4yOTUzIDQxLjA5NjEgNTAuMjMxIDQxLjA5NjFDNTIuMTY2NyA0MS4wOTYxIDUzLjcwMTQgNDMuMzYzNiA1My42NjY3IDQ2LjEzMjJDNTMuNjMyMSA0OC45MDA5IDUyLjE1MTggNTEuMTQ4NSA1MC4yMzEgNTEuMTQ4NVoiIGZpbGw9IiNGQ0ZDRkMiLz4KPHBhdGggZD0iTTc1LjQwNTEgNTYuMTIwM0w3MC45NzkzIDQyLjE3MjlDNzAuNDM0NyA0MC40NjYxIDY4Ljg1NTUgMzkuMzA1MSA2Ny4wNjMzIDM5LjMwNTFDNjYuNTI4NyAzOS4zMDUxIDY2LjAwODkgMzkuNDA5MiA2NS41Mjg3IDM5LjYwMjhDNjcuNTQ4NSA0Ni4zMjU5IDY4LjM2MDQgNTMuNTc5OSA2Ny43MjY3IDYxLjQ4NEg3MS40ODQyQzc0LjI2NjUgNjEuNDg0IDc2LjI0MTcgNTguNzc0OSA3NS40MDAxIDU2LjEyMDNINzUuNDA1MVoiIGZpbGw9IiNGQ0ZDRkMiLz4KPHBhdGggZD0iTTEyLjE5MDggNTYuMzgzNUwxNi42MTY2IDQyLjQzNjFDMTcuMTYxMiA0MC43MjkyIDE4Ljc0MDUgMzkuNTY4MiAyMC41MzI2IDM5LjU2ODJDMjEuMDY3MiAzOS41NjgyIDIxLjU4NyAzOS42NzI0IDIyLjA2NzMgMzkuODY1OUMyMC4wNDc0IDQ2LjU4OSAxOS4yMzU1IDUzLjg0MzEgMTkuODY5MiA2MS43NDcxSDE2LjExMTdDMTMuMzI5NSA2MS43NDcxIDExLjM1NDIgNTkuMDM4IDEyLjE5NTggNTYuMzgzNUgxMi4xOTA4WiIgZmlsbD0iI0ZDRkNGQyIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzg1NV81ODAiIHgxPSI0NCIgeTE9IjAiIHgyPSI0NCIgeTI9Ijg4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiNGRjgxNzAiLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRkY1QzQ1Ii8+CjwvbGluZWFyR3JhZGllbnQ+CjwvZGVmcz4KPC9zdmc+",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.Loadable,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._network=e,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.salmon?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.connected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable&&this._readyState!==B.Installed)throw new Se;this._connecting=!0;let e;try{e=(await Fi(async()=>{const{default:s}=await import("./index-DMpm5n3O.js");return{default:s}},__vite__mapDeps([19,3,2,4,5,6,7,8,9]))).default}catch(s){throw new Sn(s?.message,s)}let t;try{t=new e({network:this._network})}catch(s){throw new so(s?.message,s)}if(!t.connected)try{await t.connect()}catch(s){throw new Yt(s?.message,s)}if(!t.publicKey)throw new Ue;let i;try{i=new Me(t.publicKey.toBytes())}catch(s){throw new Ie(s?.message,s)}t.on("disconnect",this._disconnected),this._wallet=t,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signMessage(e,"utf8")}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const rN="SKY Wallet";class cA extends ht{constructor(e={}){super(),this.name=rN,this.url="https://getsky.app",this.icon="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDY2IDY2IiB3aWR0aD0iNjQiIGhlaWdodD0iNjQiPjxkZWZzPjxpbWFnZSAgd2lkdGg9IjY0IiBoZWlnaHQ9IjY0IiBpZD0iaW1nMSIgaHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FZQUFBQ3FhWEhlQUFBQUFYTlNSMElCMmNrc2Z3QUFFWGhKUkVGVWVKekZXd2x3RlZVVy9ZRUVRaEx5MTdCbGcwaEVrYzJFZ0d5akFoWUtLb2lvaUN3aUlpaWlvcWdnaTRBb0lBNmhCQUVabGtFREptSGZ3aFlNUzFCUjJVVUUwUUZucG5TbVpzWlNTNjJwS2JsenprdS84TkxwL2dSSndxODYxZjI3KzNmM3ZlOHU1OTczdnNkVGhaOTkrL1pGQXgwT0hEZ3c4cU9QUGxyd3lTZWZGSHo2NmFkSGdYOGRQbnhZamg0OVdvcGp4NDc5RXpnQ2JENSsvUGc4NEZFZ0M2aFZsZTlZcVorZE8zZDZkdTNhbGZEKysrL2ZzM2Z2M29VUS9PakJnd2QvZ09BWERoMDZKT0ZBaFJ3NWNrUXJReUQ0aFJNblRuei8yV2VmSFFMZUJPNEVBamgzdGNVcy95a29LUEJzMjdZdEZRcDR1YWlvNkFRRXZ3REJCU1A5dTZHVlFvVkFFUUxoTDV3OGVmSVFNQTVvaU85WFcyeVBaOU9tVFJHYk4yOU9nL0J6Q3dzTC93dkJCYU45UllLSFV3Z3RBNExMNTU5Ly9pdndHcEFFUkZ3VjRkZXRXeGNMQlV5RThQL1p2MzkvbFFudXBBaGFCYXhBVHAwNjlSMHdHcWhkYllMbjUrZEhyRm16cHQzR2pSdFB3OWZsNDQ4L3JoYkIzU3dDRmtCRkhBTmFBbFVyZkY1ZUhoVXdDV2IvWTNGeGNZVkgvWU1QUHBCbHk1YkpDeSs4SUE4OTlKRGNmZmZkMHFWTEY3bnBwcHNVdU4rN2QyOFpPSENnakI4L1hsYXNXQ0hJR2hXNk4rTUUzZUtMTDc3NEhuaXF5b1IvNzczM1FsREFTcGg4aFY0T0FWR21UWnNtUFh2MmxFYU5Hb25mNzVkQUlGQUtyOWNyb1ZCSWdmczhGZ3dHMVhWRWNuS3kzSFhYWFRKanhnelp2WHYzSlo5SGE0QUNMZ0NMQUc5bEM1K0lrVis5ZmZ2MnNOR2RGckZod3dZWk9YS2t0R3paVWhJU0VrcUZwWEJPd2pvcGhlZjBiK3JWcXlkdDJyU1IwYU5IQ3l3dnJOVXhOc0FOZmp0OSt2UnlLQ0ZRV2NMSDVPYm03dURJaC9OM3BEOTU4c2tuSlRVMVZiMDRFUjhmcjdZVXp1ZnpsUkdZNTdRRmNGOGY1M1dFcVJSOXY3UzBOSG51dWVlRTd1ZjJIdVFTbGhKeW9JU29LeFUrRHNJWFVIaTNrYWM3dlBIR0c1S1NrbEw2b3RxTTlVZzdtWHNnakFYbzY4cmR6L3JldEdsVG1UOS92dXVBV0VvUUtDRVhpUDVkd3E5Y3VaSUtXQWF6Y3pWNzBGd1Z1TFNnNWN5WUx3MFREalpzS0w0R0RjU1BXQkJNVEpRQTRNWDNFUHc4bEp5RS9mbzRobk5KU2VMRHRYNUFYWWZyZVYwd0tWR2Q4OWF2TDBIZWcxdTQxL0RISGhOeUR6Y2x3QUpvQ2JOL3o4aEhBSThqMTdzR3ZLMWJ0MHFuVHAxS0JlY0lxWDBDTHhob25Dcis2NitUbEU0ZHBYblBPNlJ0djN1bDNmMzlKS1B2UFdxLzdYMzNTdWE5ZlNXVCt4WXk4SjNYWk4zSDYvcXFiVnNnczE5ZkJWNlRpZDhuZGV3Z2dmU21Fb1RpdW5YdkpxRGZyakVCQ3JnQTNBOWxYSllDTWhEeGZ5VEJjYnJ4amgwN1ZHRFNKc3l0TWxtTXRpOGxXZnh0V3N2OVk1Nld4ZSt0a2kzSUJqdDNGOHB1Y0liM0t3Rzh6MVlJUEdMeVpBbEF3ZjU2Q1dvZzNONFZOWVdjT1hQbTMxQkNzNG9LVDc4L3pEVG1OdkkzM25oanFYOXFmdzQwYkNEZTY1cEpuMUZQeU5xdFcxVHFBbE5VV2FHeUFSSW1LTFprTUhoRjRKbzBDWVNDMHFGREIxZExJRm1DRW9xZ2hQQ01FY0xYQUo3bFE1ejhuZy90MkxGamFkRFNaay8vam9Qd1kxK2ZoZEd1T3NIdFNzaUJpeVpsdFZWeGh1L1RyVnMzeHd4aHhRTzZ3eU9BZSswQTRhL0Y2SDlEUVoyaVBWbWNFaGhwU2xrQW96VlFCNlB3L096WDFhaFh0ZUFtQ3ZjVVNhdmJlMGdBQTZEZmFjU0lFWTdaZ1JVbHJPQVVGSkRrSmp5UnpkRnpNaU9tT2pPWGN4c0h2NDlxMUVENlAvZXM4cy9xRkY0QjZia0pncXlmbWNZYUdMN2JnZ1VMeXIwL2F3ZkxDbDZHSXB4SEg0SHY3MDZqejVGbDBDdERYUERBNkdCQWtycDBrbUp3Zlpwa2RRcFBiakp4YnJZa0lCQUdrQkpORHNINndpa29NaUJDQVY4Q0RaMFVNSk9qNzBRMVNXMDFPZEYrejlHdjBhaWh2RFJuam16WnN1V1Mva29heSt1dUZBekNaSjEveXN1VnhQYnR3QTNxbGZJUXpTSkp3Y2VPSGV0b0JTQklUSXZqbklMZjF6UmpwOEJIZXF0OVRDc2lLaTVPNWVOdGhZVmhoZWM5VitPbFIwMmZKbzlPbmlURHJ4QkR4bytUTGdNZWxIcXRXNVVRSzd5UG5UTHpYZFBUMHgwNWpCVUxqdGdWMEd2dDJyV09QeGcyYkZnWm5xNGZGZ0hjK2Rod1Y5L25xQmZDZFI1QWZJaEt2MFpxZ2h4RkltZlh4T2h3V3dPcGk5dElqS0RlVitjU1NyWVhyd3VWWEFjLzV6WVdqTkVMcGhpdytiMm15MllkTVdiTUdNZU1ZSkdqVEZNQkt3b0tDc3FaLzU0OWUrVDY2Njh2SXp3ZldpY21Sang0NmFlbnZ5TDhuYU9QYnQ4dTB4Y3VFQjk4MUVlQ0ZNQUw4ajcra3EyWDk3T1lZenlEcTNWT3cydGN4NjM1Rzc4bHNGbEhhQXNOR09jWXQreHBrVzVBWGdBRlpHdmhvNEZUOUN1N3R1YkF2ODJINkJ0SDE2a2pIdERRYWZQbktkOTJVc0FPa0pMdVF4K1dJSmloejRvYjloR3ozN2VVVGhzQzJhOXpPdWEwSmVpdVM1WXNjUXVHbnlJcjFLUUNya1B1LzlYSi9HKysrZWFMMVp0aEJiVnExeFlQbU4rckM5NXlKVDFiUVpmYjN0TUhETEZoR2VzeDcyY1h3aHhGOHpwdDNsb0Jaay9CTkhtN0FuaU9UUlVYTi9nQkNraW1BZ2JULzUwcVBVWlQrNGdRVWJWcWlRZStPM0hPSDEwendDNEV4MzVQajVaZ2s4WXFVSm5sY1VVNlF1WjFadkMxbDhqNnV6MEk2dnV4RzJWbnRSWW5ZUGVvaHljbkoyYzV6WmpzeVFSN2VQYVgwemVPam80V0QzejZFVVJrRmtaT0NxQmljdGF2azRZZDJvc1hwV3dJRmhNQ1kvTnlkQmpBRUJUOTdCaFJ5YXdlY2N4TFFlRmFJWHpudmpvSGFKKzNDOHYzTTRYVlFUQmtaUVk5YVBuNStlWGtZelpBTEpqcFdiNTgrWDZhTVVmY3hJUUpFeHlEREtFVUVCY3JIVkNxTWsyNnBVQXFaMEZPanZ3QmFTc1ZqQzI1WFpZa0kzY250MnNuamRwbVN1cE43U1VGNEQ2UHB3Qkp1SWI4bnRjMnVMR04rSzVObDJCYWs1SitnR0ZCZGtzeDM4K3VsRm16WnBXVGowcEF1YnpKczNEaHdxL3BBdHNSdFUwTUdqVEkxUUxJQkNQZ0JyNldMV1RWaHZVcTVibUJXV0l2V0ZudXBvM3lMb3FYZC9Bc2J0OWRwN2NYOXkrZVd5Y3IxcXlSSmJtNU12UHRSVEpzd2t2U3VsZFBWZjRHazVOVmhqQ3R3VzRCZGpkanE4NHVINE0rNHQ1aER5TDlqeXRYcmhRcXdjU3R0OTVhSnFDWVprY0YxSXlNRkErK0QzeCtyTklveStlcUF0TXgyOTl6VjZ5UXJINTlKUUNyOElFVDJHT0YyVkExQjYxUG56N2w1S1BiNDc3ZmVkaDJYcnAwcVNBV2xFRldWcGFqQmVpSHhzVEdpZ2V1VUFkbDhPNERKWE1FZGorcmJEQjRuVGg1VWg2Wk9FRVNZSDBoVUhGdm1CaWdsZEsrZmZ0eThpSHpLVXZ3VEpreVJlQUdLbCthMEIwZmU0b3lGUkVaRlNXZStMcHl3NTI5NUlzdnY1U3paODlXQzg2ZlB5K3ZMbjViUWkxYXFGTFlMUWJvV0VGWjdQSng4b1V1NnBrOGViTHFzQzVldkxnTStDTTdjZEg3ZWh1SGVxQUdsWkFRa3B1SERKTHozM3lqWHZCTEtLT3FjZTdjT1hucXRWZkZEODdQYkdGeUJmdWdzWU5sbDQ5WmJ2MzY5ZUtaT25XcUxGcTBTQjB3a1pHUlVZNVkyQ2MwVkU4QVNtQkFKRFhPNm5ldjdFQTg0Q3hOVmJzRTczOEloT2EyaDRkSUlEV2xITGt5MzcwZHNvNWR2bmZlZWFmRUFwQWlma0lxRkJDaU1tQVFkTHFaMlJIUzU2aUVtbVNIZnAvVVIvcDZjZlpzMlZxNFM0b1BIRkRGVWlGSUVmdDFsNHRMQlVmMktSYkNuK3UxYVMwK3krK2RCbzN6am5iNTFpRExiTnUyN1Z2UHZIbnp6dkVBbzZLSi92Mzd1L0p1T3pmbmZ0MjZkYVUyYW9TSTJCaFZKNUFBOVIvempMenkxbnhabXBjbmVlQWFhMUVXczJHNmh0aFNndFZiTmdONkMrRForWnRMamhYQm1oaW93cVZaOWlDN3dmMDRkK0JtQVd5VDJlVWpSMEVXT09wQlFOaEhYMkJlTk1GWldwTzZta0hHY2RiR2VtZ3Nza01kSUJLSThJSXZnT0Y1OEhJZW1LbW5jV29aUkZpNHVKK2k0Q0dhcEVwMHE1WXlQbnVPS3F6Y09rNVUwTVRzYlBFMkxxSGNUa1NJbWM0dUgyZXM0VW9iU1lXWDhlYmt5eWFZR3UxcDBPd0k2YmtBblh2MVBLRFptVkhYWUJzREYvSHhPQnVvc0pSNEhtZFh5ZWVWdWpoUGhzZGpNYmdIcjRuSDkwaXlUWlRkRWFnbW41ZzZSYm1Fa3dMSVlwZmw1MG13eFEwbHo3QVJJZTdud1FMdDhsbHJrV2F5R0JwQ2Y3RDNBa2h1ekZFMml4Y3RyT2JpNWtQMXBLZVRVa3lYNFRrV1d3VGRSNWV2NXYzcXNPd0dHRmZXdS9RZE9IaWJZQVh4VUFCckRYUFF1TjhBeDV5S0lhNDVRajF3dXlxSGdWOC8vUEREY2hYaExiZmNVcTd3c1BOdiszUjJ5S3I4N01VTGp5ZFl6Y3R3bFIrdk1mdVBOWkJoSXVFZWI2NzRzM3Q3SENZZHpNeFF4Wlc5R0hJcWg2MUZGVDlBQWFvY3JnT2NjZW9Ic29pdzl3THNOYjA5OTVwVDR2WmVnbm1kM2FMY3Jxc0pDNGhERFVBemQ3T0FIUWlFM3RZdDFWeWgrWDY4TjBtZTA1d2hoRDl5L1BqeFNOMFZXc1Z1cTkwTnFCUTJGKzFLY0dwZ3FIMUw4MzZUTjFpV0V3eFpOWDFwSzh5NnhtcHhCYlQvMHFMNEd6NUQ5UVpEMGhuVjVPNGk5OTVqL3VaTjRnYzE5aHZsTWRFQ1ROR3BQVzZ0UTV4djlnVDdyRjY5V3B6Y1lQRGd3ZVVzb0F6VnBBQ3M3Vkd1Qm1HcVhsUnJiSUlFRUpXNXo2MGZ4MzBrSzV3eFRrMVZXeStDbXlwekFmTTZubGZBOXhpY1MrOXhtNm9XM1ZwdjdEdGtMMXNxUHM0V0c2YlA3YWhSb3h6Tm40c3dvWVNPcGdKcUFuOTFXb3RERXBORTRXeWNnQ1BJR1puQU5kZElzKzdkNUo0blI4blFsOGJMTUJRcWJGMC9iTzBQUlNuTDc5d2ZObWtpam8rVFIzRHNVZXp6ZXA1bnU3dmsydkdsN1crZW16QTNXL1pnQk4yRVYvNlA5Mk81SEtCaURjdmphaEtudFFNMGZ5amc1SkVqWlR2amFscU1OM1NhR0JrNmRHZ1p2MVQ3TU9rWWpDSWJuMFg3OTZrMHhkbWFpb0E5Z29vZ25PRGEvTmZCZGROdStZT3lRdE05MlFOd21oaWgrVU1KTHp2TkRMVkFpZmdQcCs0d3lRYjl5UXlDdGJIZnFsZFBLZHE3dDlxbnhUUm9zU05mbnF3V1M1aWQ1OHpNVE5WRGNHcUdRdmh6MktZNktZQ3JRaGFRRlRwWndmVHAweTkyaEtBQUZqL1B2RHBkamVqVkVKNit2eFNaSVJFY3djOWxORVphelFZenRMKy9ObjhJUHdOeG9QemtxTFlDNEZ1bldFRHF5TTRLSTdscWk5ZXZKNitFbVJlb1NqQmpyZCsrVFpyZDFsMkNLU2txZzJnZXdsYWUwOW9Hamo3d0ZZUlBjNWIrWWpDYzREWk5Sc1d3VEs1TkJTQUlqa1N3Y3VzS1Z3VlV6c2Z6MkMvTTZIMjN5alkrbzB6bjRnMHlXQ2ZmcHdJZy9DZ2cvT0pxS01EUG1TSnEyY21NdUhDS0VaWThQYjNyclZKUTZGNm9WS2JnYWxZWThXWWFxa3RPeXZxNUZpbDRjWmtPR3podTcwemhvWVNEUUd4WTRRMGxkQVIrZGdxSUJGOHFDYWJud1lNeit2U1dkWWpZYWdFVExLUXl3WHZ1Z0lKWklsUHd0RzVkeGQrc21YZzVyMkJNcWpEb3VTMm5aZDdIbG4vYWFGVWg0UzBGTUNDK3lBa0Z0M1Y0SkU1TjhUSWVWSFJzakRhN3ZZZTBlK0IrYVUvMHYzTHdYczN2N0NXTk9uV1VXRkRoZUZoZFBGT2ROVnVsQTE3bnpwMWRSNTZtenkxaXduQ1V2cGYzdjRKVnExWlJDV3RZS1RveFJFMlM3dWpaVTZKUjd0WkM3Yy9VV012dlUxc2lDbG1qZHBESC9GSXI0TGZPbDJ5anpPdlV2dDg2VjNLZXEwL3FjbGFaWklzelNKYXBteDJwQVFNR2lOT0tGZ01YRU12ZXhpQmVsdXltSmZpQS9VeU5ia3BnZG1CbnVZSFZuZFZ0YXI5QlNjMjFSZWF4MG1yUnZNNmxBV3ZXOTJTbU0yZk9ETHRxblgzRDR1TGlBZ2hmTWIrL2hCS0t3eW1CWUhUbVlvckV4TVF5ZlFTemQyanVtK1d5S2FUOWV2TTZya2QrL1BISHhhbHl0UWwvQVVYUVJsaEh6QlVKYnlnaERTaWdFdHhpZ3RZNlhFZmw0bWFJRDA2bGRMajFBZmJxVXYrbWVmUG1Tcm1NTzVmNmt3YXNnc0xuUS9qNmxTSzhvWVJHd0JiR2hFdjRuUUpiVmVQR2pWTnJEUFQvQm9KRzJxTFF1cGxpbnpvbitEOEJMbnljTkdtU3Fnc3U5VHdxNWtCSkZ6b1hDRldxOFBwakJjWnMxQXkvc0Q2bzZOOWFhTEt6Wjg5VzNWbitYYVpyMTY1cXNxSlZxMWJTdW5WcnRVOWh5VFJwNHFTeUZWR3lNZXBzZFA2MGMrZk9xWERGS3BHOTlHT2x5QjdBMzBpS0x1ZEY3U05tVG5MOG5udnd0MlIrRVBvcjFDU2RnZXI3QzUzRkdHY0RQNUtwVmVkZjV5ZzRGUStCdjBjdE1nV0ZVVnkxQ1c1VEF0Y1gzZ0Rrd0MxK295SllobGFWSW1qcWRDY0kvRDg4YXpFWWFUcFE0Nm9JYjFORWhLV0lPY0EzREpRTVhGUkdSZU9FMjBnenNKSG1zdnlGeTUzRnZWOUROa2pIOW1xTDdmeXhyS0lQRzYzc05uTUZHcXRMS29TQzBIUXBGRGtGbGFOQlFrVTNZdjNCZVQrVzJSRHlsN3k4dkZOY3h3amNRVVZmYmZrdTYyTzEzRG52TUFSWUFod0F6a0VwUDNPMnhnU08vUVQ4QmVmM0FXOEREd0xwWE1kWWxlLzRmLzRNQmw2a1JRUjRBQUFBQUVsRlRrU3VRbUNDIi8+PC9kZWZzPjxzdHlsZT48L3N0eWxlPjx1c2UgIGhyZWY9IiNpbWcxIiB4PSIxIiB5PSIxIi8+PC9zdmc+",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.skySolana?.isSkyWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.skySolana;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const iN="Solflare";class uA extends ht{constructor(e={}){super(),this.name=iN,this.url="https://solflare.com",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJTIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MCA1MCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiMwMjA1MGE7c3Ryb2tlOiNmZmVmNDY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7c3Ryb2tlLXdpZHRoOi41cHg7fS5jbHMtMntmaWxsOiNmZmVmNDY7fTwvc3R5bGU+PC9kZWZzPjxyZWN0IGNsYXNzPSJjbHMtMiIgeD0iMCIgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiByeD0iMTIiIHJ5PSIxMiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTI0LjIzLDI2LjQybDIuNDYtMi4zOCw0LjU5LDEuNWMzLjAxLDEsNC41MSwyLjg0LDQuNTEsNS40MywwLDEuOTYtLjc1LDMuMjYtMi4yNSw0LjkzbC0uNDYuNS4xNy0xLjE3Yy42Ny00LjI2LS41OC02LjA5LTQuNzItNy40M2wtNC4zLTEuMzhoMFpNMTguMDUsMTEuODVsMTIuNTIsNC4xNy0yLjcxLDIuNTktNi41MS0yLjE3Yy0yLjI1LS43NS0zLjAxLTEuOTYtMy4zLTQuNTF2LS4wOGgwWk0xNy4zLDMzLjA2bDIuODQtMi43MSw1LjM0LDEuNzVjMi44LjkyLDMuNzYsMi4xMywzLjQ2LDUuMThsLTExLjY1LTQuMjJoMFpNMTMuNzEsMjAuOTVjMC0uNzkuNDItMS41NCwxLjEzLTIuMTcuNzUsMS4wOSwyLjA1LDIuMDUsNC4wOSwyLjcxbDQuNDIsMS40Ni0yLjQ2LDIuMzgtNC4zNC0xLjQyYy0yLS42Ny0yLjg0LTEuNjctMi44NC0yLjk2TTI2LjgyLDQyLjg3YzkuMTgtNi4wOSwxNC4xMS0xMC4yMywxNC4xMS0xNS4zMiwwLTMuMzgtMi01LjI2LTYuNDMtNi43MmwtMy4zNC0xLjEzLDkuMTQtOC43Ny0xLjg0LTEuOTYtMi43MSwyLjM4LTEyLjgxLTQuMjJjLTMuOTcsMS4yOS04Ljk3LDUuMDktOC45Nyw4Ljg5LDAsLjQyLjA0LjgzLjE3LDEuMjktMy4zLDEuODgtNC42MywzLjYzLTQuNjMsNS44LDAsMi4wNSwxLjA5LDQuMDksNC41NSw1LjIybDIuNzUuOTItOS41Miw5LjE0LDEuODQsMS45NiwyLjk2LTIuNzEsMTQuNzMsNS4yMmgwWiIvPjwvc3ZnPg==",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.Loadable,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._accountChanged=t=>{if(!t)return;const i=this._publicKey;if(i){try{t=new Me(t.toBytes())}catch(s){this.emit("error",new Ie(s?.message,s));return}i.equals(t)||(this._publicKey=t,this.emit("connect",t))}},this._connecting=!1,this._publicKey=null,this._wallet=null,this._config=e,this._readyState!==B.Unsupported&&ot(()=>window.solflare?.isSolflare||window.SolflareApp?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.connected}get readyState(){return this._readyState}async autoConnect(){this.readyState===B.Loadable&&lp()||await this.connect()}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable&&this._readyState!==B.Installed)throw new Se;if(this.readyState===B.Loadable&&lp()){const s=encodeURIComponent(window.location.href),n=encodeURIComponent(window.location.origin);window.location.href=`https://solflare.com/ul/v1/browse/${s}?ref=${n}`;return}let e;try{e=(await Fi(async()=>{const{default:s}=await import("./index-BC-Ir3YT.js");return{default:s}},__vite__mapDeps([20,2,3,4,5,6,7,8,9]))).default}catch(s){throw new Sn(s?.message,s)}let t;try{t=new e({network:this._config.network})}catch(s){throw new so(s?.message,s)}if(this._connecting=!0,!t.connected)try{await t.connect()}catch(s){throw new Yt(s?.message,s)}if(!t.publicKey)throw new Yt;let i;try{i=new Me(t.publicKey.toBytes())}catch(s){throw new Ie(s?.message,s)}t.on("disconnect",this._disconnected),t.on("accountChanged",this._accountChanged),this._wallet=t,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),e.off("accountChanged",this._accountChanged),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;return os(e)?n?.length&&e.sign(n):(e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n)),o.preflightCommitment=o.preflightCommitment||t.commitment,await s.signAndSendTransaction(e,o)}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signMessage(e,"utf8")}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const sN="Solong";class lA extends Tn{constructor(e={}){super(),this.name=sN,this.url="https://solongwallet.io",this.icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAGlklEQVR4Ae3bA5DsyhfH8TNr49r2/du2bdu2bdu2zcdNrm3b9toz533rvctUn3Umk9p01WfdvVW/6nROBxJVS1rSkpa0pCUtaUlLWtKSpl4VXos3GJ4sujQFuUKfWl+qT730arzB8Ex9YksKcgXjFOCVeIPhBYydB8mawQ+yiGC8n0EN6zAVcgXhpQjoq1DDdsyDAAB9Pwo1HMC9INk0FIM8Bt1Qh9WohQQCvD+BtEMdtmC8I7y5aIE67MV0SBwDvB3qsE/UHwMJIpC/QB1OYiLEEeCPoQ7nMRcSwwDrao3Zl8aTIEGEUYlL0IAMXuQOr66UvsegDm+ExDJAPNiafSg0AlyIbmjAWX1aQzEkiH6T0QkNaEdpnAN8NNRhPcSF9e9el2ebBhyAuNBvGtLQgIuQOAd4D6jDMRQbM3AmOqEBDfq0xjJIEP3GohkakEFVjAP0y401sAsLnAE+pb6EsC5AA9J4sHsG+kX0PQR1eFJ8AwTWQh0+DjFm4a1Qh2/AOoz/BHX4ZdwD/CDU4aioX2GUMW+AOnB2bqiBBDHe86EOTYw5GRKJwQ/ijUM91OGTxgysxSmowzeNw7j08m5DHX4l7Igg2TY0g9hbLBZ+f7oxC98CdWjDvYzD+MVQh07GfEQsZyDgVWA71OGvorfnQQCAcqaYUFZDHW6j/itAoB70GcergzqsEa0rhGTTEA7mP0koK4xdyeOMmvBBhJU2zsjPMw7lu9O3zShpXheHk4hhcZ4w26AOG4RSxDiUfwZ12KdPqy+FBDHeV6EOZxizIg6HsMGbiQ5jdjzBXRfeefGg3tgbv9BYC0fhZE7sjUMY9Pf9rdcI5XtQh39BjBA/C3VYnM0zcgiDek+GOhzh93mQoMs7kIxze/eMhnxIEOPNM9bcFtTEeAb6I419axu/m2CsgxU4Aw1A/UxIUM/bO/9+cVkDDd5x42x8N1iH8Taow0NhHcZLoQ5Pi/MMzDMW+DTu7g6vIY9AdkAdHmaUMyn6roA6PD22AeLB6DbWplHG7LubfY+kfiIkiH5T0AJ1uFtMA1xUzOc1UIclzvCeXF+o7DygDlvds29RgVVzYj+K4xhgEX4NdcjgecE++rSL+ZdLmIxRB77Ose7l4XPIQB3eF8M60C/n8++ghltE/QLIFfqUiyUE8kOoYSW7jmLIFXeN4X0NaajDDlG/NG6XswrxKdxu+G/weh27j3wCej9uN9zEOjc3sObl4S243XBLhDfWE0mAMQjwZfhxDng7pG/8Sj4/ER/Gd/BdfBhPRGW2A/wxNAfcBOnFCHwZZ6GGs/gqapMAb/QEnIT20Uk8IQkQeB7aof3UihcM9wDvhyboANHXv1+IdWBOB2hsIftto+iSPEif8aGPcjrA50GHyPMiOIT9B/N5apaMgQT8D2poxMdwt8s+hkao4X9ZDxBTIdHwy/h8AeqQxhMhAU9BB9ThPMqHTYCYjU6owy3uPstSfL4Z6uZPC+Mk8gOomz8DEg3vXshAHb4MMXwZarhXGDPwa739w2j48623BPAniOFPUMPsMAL8INTw9AgDrLZOCmjFPEjA3WD1aUJVGAG+CGr4ECRCy6GGg3iyaF0+n/PwFByEGpaJ+qkw1sB7QA3/hUTozdBetFymvXhTWGVMOc7bp36/FhKRamNW9dcxZmpZiI+32ad+vAQSoWejGzpAXXh22Fek3wY1rDD2kVnijR3ExYQMPgkJOUB/nFW0Is3vnw6JhlHX9a4N70Iq/ACBv0MNu7J9WxHw7jaA2deFOtw32zeVHtHLWvMN0dtSkOzwS3spYy7iH1hx2d/wYdyTvnkR3BdeQjjerVBDN14JyZIfQWH5RC7e1rw32npZV54LCc+SPD5/HgqYD3WW5+gTqt6X+rA4v0701hRkKF0+bL+HTM9Hgv/MHH60wyvHWigsafwA1ZAhMguLoL34kbDcQEI1uAH8mcbuxPHImf8i5EMGxqvER9EI7cUqVMTl0Y6HoxHaBzvxNkyC9EEe7oEv4Sy0D/YQ+IS4ver1JNT38z7sWnwbb8TT8Cg8Gs/Gu/Ar7EEXtI/2ud7Ni0GAYCbiJDQiazA57k9nTcdqaJb9UtSvitXbmjavCJ9AMzRkJ/B80boUJBLhDe7Nw1/QCR1i9fgKRg6HByzvjZ/hInQQMjiCT2PSMHxC1a/l8wvwGxyG9kEaW/EtPI4xiiE5JcLrd6PxcLwM78SH8EG8Fc/H/UUXVUByGh8SSYBJgEmASYCJJMAkwBi6A3xCqZhiBz8+AAAAAElFTkSuQmCC",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.solong?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.currentAccount}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.solong;let t;try{t=await e.selectAccount()}catch(s){throw new Ue(s?.message,s)}let i;try{i=new Me(t)}catch(s){throw new Ie(s?.message,s)}this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){this._wallet&&(this._wallet=null,this._publicKey=null),this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const nN="Spot";class hA extends ht{constructor(e={}){super(),this.name=nN,this.url="https://spot-wallet.com",this.icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFYAAABWCAYAAABVVmH3AAAABGdBTUEAALGPC/xhBQAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAVqADAAQAAAABAAAAVgAAAAA6XCzdAAAmhUlEQVR4Aa2dC8xmR3nf57yX79tdr9d3e218JQRwguKAcGMVtw0tqtQgimhap4oUxQ1JS6kaqZIVpVJFBVJviKYlEa6KQgIFkcShTiOD6AVCiG3VsY3bdc1N0GKvCWvA1/Xuer/L+779//7PPOfM++77re0kA/PNzDPPzJn5nec8Z86c86678qcIf2exGP+XY+WG2U65sXTltYtSrlE3lyteXBbloNKD3bxMu65MulkZS1bG81I60lnkRzV1ebeUicoj6UzJK1ouGeVxldFmgzxtV9Js4zrVU57MFrUfpeo7jk1+oWMtZpOy2O3mi51JmZ0YL7rny2L21HgxOzYu3WOjbvE1jeeBS99y3pFbbtEsXmboXo7+9NuLm2az8m7xeZvanb9nWykAc6REgCOvMnlPsE4SUBPlDbmCCiADOJepU1wCuwO4kAMs25FyjCivgBXQMbAXgJ0r5WQq1WDHi7lOPDLVqTwqtVwWz467xV2j8eL2X/gPh+/bc84rFS8J7OTbizfP5uV9Ot7NK+3XFwGrMCIFqCdQwSoPCEMGiGKCnSq/CsmAKljqsNi04N5ya30PGrAARJ5WK6gTwHIiBVMWa4gABWxn0JIvQzVgQ7Z8cc+0K+/52Q9f+QVP8Cx/zgr23G8vLjo5Lx/QSbz1LH2srxJAoKbV9nAlM0xNEFBEW64hBDQA2/KUTtMylSZY1yXM2i5PADrT3QAYfSgvGZc/YA3UECMvdyADmAVYDRmII8EmHWO1PeiwYkPuuo8e2hjf9rc+dOVT6ycf815bt3F08boTu+UhHePWtQovUQhfQpv2eZ1W8dXga1DG+SqwXl+ZSstpVpNm5GBcEZ0sImRKax6LTL3ID3VAXI70mfXZzifi1pPbWw/99ru++brl0QwlDOqMMHl88eM783KvKq52ZZI4Q/NFBMygDTkjpQsidVVGmZDyPGSm1GH14uOG5N2ElLNDqsgN0FdJ1bderQMuHYyATGqQ+FLy9Ic8rRSQRMphwekSkMudXD3fWdz7Wz//jR9X0zPCGWCxVN2gfl+ah5a0NaY/TaCZoQEy4SGjM8qKulJdN0eHvKLrSM8WrBiq+HMgurXzQBLkCtLgnEe/wlW6BNgA5ToMM6C6PXo1+mRU+F2ZHRrNZ79/5zu/coblLoHFp+7Mymc0umWoOTkPPAsvklaIaCVQDIuQAIFnGUCr/tJJqHIOu+7QrTVaQUpYb0Ju69NKDai3VgGT3zVodbAMcfC1fT3A7X8TOtY8OzQvi8/c+Y++epEnV/8sgT25U/6t5FfnIFvFPr9uhn3lS8gAkKgj05XWugFVKcCpQ94eps2rypUtNJTdVMD61DKVkSnaBahpWDD6A6R0Cb5xqTOD7AHiJsIVtIB9oqRLW938rh6d3vmAx1b/DGAfXbxZh//ZtpIBrw17ydcqV1AJrQGHddp6kVFPIM1owfKfrEp1ai3jjq98WitpQvTkDQALC1BO7Y+RYZ0BKfKABHCkkTdAQw6rzTpSn6RbP/1z//vNOdoBrNap9cRmXaR7QdxLvtw6Zt3I8tJv3QFk6M6gldpyKdeIVWfAUrOCfIBk0jqUOg8LXU2pB1TAHkBW0Krr/aotNWClpcYJCt3BFXAiKlROgtrpbvG+HGeA/dbiJtXdnEIAL4XVclbuJc/6Bkj6Ts8OuWJaKd2Q73VWymccpvbrblSZsNtywKBOkwcqEatWOay1gjFIoEcZwLZAl0N/pNvrcDJqO8kMVv3Gutfpzf/j5790E9MPsIvybgpt+HOD23Za8y2oHih1CVfZVqc2W0oSJkIDJTVAytkaYFEmHVzCmTLaAI+Quu7PfQVM6lMv3UOckGhLfjbfNUvVL3ii49k/ZsOY6rjWws0xu0H9s07W1tcuU43UUTPoZTXfy5ld6kW2/2uotdTDBKpk4R6wHi57rBUZ5QpHCrZgLLO31rBS5GmxUQfI0HMf5G2p9EU/UbaO6/S0Nl+8bXHHYjwp3yw3qHVsqNTJeMzMkMmSkl1TFzX1b9VfkmWBtrUfiyjTd43kU97LqqhPUkf9kA2AkZJ3bHxsQiVlY4Vo66rugMs4/KrgGVCFmyArKNqHVVbIPdCw0tZyw8Ln59/92ftumKjVjUuTzpkw+gYWgF8SXNonhOyrpkADgOFlnWSUc3WQ4gRM2gfGo2CIZIAlGc//YaFYabVI6iTvLVp3ttDD2gJ2AuutNGFmaqgAjzaG2J+EFbAcV3pY76IsbmQP4rWKy4HJIMuUWuXV1qEHnO3ayaORbck3fSAGVA+XPqss4c7l9XPFsIg7AL30wYdSI8PNVLVRFgTJAq5S9U4XeZNhJysuX2BhgboB9aBC1pdX5ByXzZqEFydF/UuPfJadX8xfO1H/16rNEgCX2z/0CgHPSlkmVPNWa+r6ZikjbUPTV2+V1Lf9kV8pZ3fZVfhNqWGZquxhYjmOQMQFhHX2Mk049lyXIQf8FbjSzZOS4OKERN+dDtyCDsCALtdONNDDYTZ1MkyohZHlTOvMUqUHvDpz9FKJfG3fq3ED1pZf0XagDKeMlD8g2T4pHFDcP1ZeVRtqN1V+U1GzKHPpL7QtuNhWWSltO+25JmD8ZUAfAOcNCCi2WoABnHKVoWOXILlh+iYVAAMmEKmLy90pJ1CyANpa7fwwFnuxhthP3Pl15awAEKESUt+D9SIjpE6Uhr/UA3FLp3Rayht15B8+V2dWp/dygTsHiFLhbBMzv5qy878lwCdOdeX/PbYof3zvonz/cU1MJ8a7W7bYeoevVmsoPYi6BtUk4tJnnZp54PE+KU6QYSvPhNs+EvASVGBYb3FxV76yOKZeD0syAEkwL5Y2bXrLdUdNX5Qr0OkLpbxFWxXvuERgIdcEDnU2mMBtAbd5jPnUC4vyrW8syh/9993yJ0d3y4ZgbMgnsrk9mSsljzUqDStt0/S1wAs/mv40rDSsEpjpU9NSB8DCx9WCTrd4oitfXjyvcR2UJAJp5pG05ZTvlaKeddlWUDtZ6Os3S/nFq0q5Agp7hL3AJtSEuaH2mSdt73ELWc2xb87LXf/phfLMk7vSm5WpJgzUyWJ3CSqwDVJ1aZlhlVhtxrBUuxdB8w3PKXKVdbzBagOsrqgTWOxp1WvaNSQY0nV51F5E3sPVFTSRlf7Dq/X2UZf8iwUA7QWxla/mczht/3NZ6tH7t8tnP3mizE4LMK+LsVYAc6nbctNSB7DIY8EfQMMX5yUOOHQrTEMdrLmH3HVbXfd/dCvopLs6uiyTtnlG35bbfM5MMvzdfkH9Z68q5UbuQi8h0FVaLVZJPq1zNQVu6ii7Z9g5OSuf/ZWnyrHHtnQjBEpADbhhlcjOsFRbMQBDJ60y9AbQZ1qtrXgGWLQiaGYsgZYC5ZS1aZunQaPn5c/pUt77A6X82MuACqiMq1YJZLwIMYGjexbPotoIeoVSHvzN75cv33dCcAVWEddgoL0bqHABKZn9aQM1AKZ11rR1A21eALruSAXbgGE4BpzwELT1KV8js0hLoXe9Qjep82i4d8A7XKhICkgC7RNgLO7DhyKnnIfEGjKv7NmDlBdyDY//t6fL3Xc8WTb0Wji+JBlcAZbYL8V6oAPksNgKvIWYeV0NMR6lOh5PXjFC0sxXEeUecNYzhXZGTRuqdFWVH5EpvWP9yx2r4NCvVTygeFLt79Ya9qunSnlct9GnT2qtqpudv4hRX/vlUja1TiUeVoPrdLKu1pm47lBXLuVq6B268utCHXenQV/91y8qbzq1XR749FO2Wix3WAVgwYAbYuwhhD9NKzZgWTQI0OUhARlPTXETjXKAXTegKqODDL2bqIN1742CXYCg/ONXqUUjz/akWKgWBwb6S8dKueNegRQ8P4pK7m8ABDQ/NdrQZRxRbkJXwsaWIGsNO92aaSmzKO/4K6PyN//yuBzUNlK3CjnH2aTXvO1wee7xk+XokeOGGzenAWb4UMANNy+7AZWXQDPZaq081RHSqpl61z3kWlf4TwLJFKE1Q6W34CgOddLpZHl/VV9u/fI1WbmcXqDitYpHBPLvfb6U7z2nscm6u3MEVr5gLB8w0Rj5oAOwmwK5ub0o+08LpvL7tFbdOKWo8lTp4oTSLX0ktj0vN71mVP7+uzbL5sGwG4xor7jQSfmf/+LL5fknTpapnih6q8VabY3Veis438AyXy00LLdaM9B9MHBEvuu+tAJW43FoYBoswka2DvBY1vrBHyrlNdxVVgKi6xW/Kqh/41N6GtVlvLhcsfrh/DpmU0AnssgNRaDuU5+A3SdLPaD0gODuF8wDp+eSa2kkwDP5k23FiQD/wk9ulje8fb+GqsHqWHvBnT1zuvzBLz8kf7sjy8UvhoXiDtIyfakDiptZAk3ACVApFk0IuOhLhkWzNHJdnmW0yKc805SpTJuM6JK/THNZB5XurlUUk/Izf6DtAcHcfbUOgQmrjf6/FDiMB+CKKOUa0Zcq315pskA4qO+ILtu/U645d6ucLx/xiU+dKHe+/2nfrOz0aK6xLc1PsvH5G+WGn7iEDy9009rVzUZrXR4g6vo2l2Vjye17gUtkuaYO2+gxSeYx1XElbFHWBDPmQOr8esjIs64ZMO3YUHmjHldhsQpKV3oh/pvvl3JMy7DZdSpw61c7msYfMsq2gihIWn1eBcoGRzxJ6e6ux1WAnNPtlKv3n1Z8oTz48AvlI7f9ScCtx1kat+BpJ6dc8teuLBN95RZ9xI0MwPH4C1DWvDxQAF7HcgQqcKkbIm1SHieAiawCkygt2VbpyTLrGlO/SfGvr2uWVy1cDFNXdfn43eJ/TeWoslZA/YmCIceU55RQQQLKHqTyXgpVqxmnlWkyPKYSp3MsbqdcNDldXn3gRHniia3yxV/5jlY16oS1HN2qXZFOxN3S7V+U173jGu2OAWiwWEAmJD9ICFBY6gASfXTsnz0ulm6UpevVBgdcjQks5SrnZU8ag2zSKrtixbem9bJOfVg6L+jOvdDqXuNw7K2otk+4XPYxJsEVfcNV6lcshiorVRowA+qGYGC5U6WHtDnxQ/ueK/c/cLx859O6TLifsdxIqD6wZLq2Dt58WZlqj3JUQSVQ0oAaMG2RaZUAzJOcIAUGvwrYXA8PFssE6ySX4CXgmqYVYwxEt9G4L+WRaE1gufk1uYA5pksbHcPtap4m9qGCx0Ke/gJm+C1/z8qkvEslC5V12lKxUsUNAZvOt8uGNmuJ5A9ob/L6zWfLb33su2Whx1ptFugoSh3ylOu4k1G54scuFwxAcsnLEskDWjGviP6yxwXUpzevgwXYT3FOq0VrAnVtUo8HJGICznRVtqJnwBrzecu9uVNcHNN4VA8ABFt89qsU69U4HTmu+6pw850V68T0e1NN2pYpmABdikX7AYst7SiF/DztAL1q85nyyG98Sx1rFFN8AqMhDHDPf/0VPpH2ocAELgB1LF/qFSSXuG9kGmje0Hp3IP3Y+eJ+AFgmmaDa1AevdeisRk5+tlUKsInGmsPN4QOW8IzWoUDUmMNwlOKXbUS8Aeijrloue31Cji+dyP9NZpqs0qnSqX74kJa5Kevc1KsEYBqo8lGWrES8anKifOmPvlfmz+lgkzzNOboY7eQH9Jgoo5iov7DQcAM89sYNC6CRT8uNfd2Qx6qAExFuAAuOVUECasEiy9jK2zz1AFacIl8JDDuN+IVqlZwA3B1fcYelAlWKmjeykV63dLsaIGCVTpRODTXAbgBWcXMmy9QlT9xX4xLUCnkqwD+48XR57sGn1LlG1DGiABrD1YpXbuLiH71SYxUcrJJIniirteXWNOWsTKI+YdY3FpKHxSaohLiaUp+yvXQl54lpXWAKBPGp4FRIS1U61k16pMdW3nmNlQJzzKfuyk92ZSX6rnSqdGM3gBqqNhNsrfPTSskr4gLaaLewrZvZdrlYVvvIXY8yDA20BZuj68o51x8OiHYDemioPjZWAyy5ADlE7gF5k0In3YBdh8pYrU9gHsIHb/8IGE9Zrt8DHupaRp412HcCtAl+QlHZ76l0+fPefyKoE8GdAlRxY0c3px1BFdhNxX27stBZxLBWyXQJ75O/3RSMWB1wQ6mXribpy/KYll56cuumAquTFmGY9eTwIVssAD1W+0fmrTb9mIFBOdtHfVZ7q6JWxSYM+lm7Rzp03ig0QrJNsVEKOb9WsU+tegw+vwGwexBUllCGWsFubAfYTcHdFFzAbgK1gQvkzXoT26wPC7yOiQU7l2csjS4ZH9fegtauF7Y3MIYZox5fcMD+FP2QBJGEmPNDCkAvCWtz5uKQqQqcoKUQnQ6i1fJQM+R80BexWLS53HMQtlYNBGudANQ3rGqtgFXcBOyWoG7LIok7Ferulqx2q+wHMtZaLXbDFhuXITcdL9l01kaKh3Tw+fHtMrpoFWzMo9P79Q4/qnYmq7EtW6vKhqEK19X5K9+aZfKahNlXpdXEjZaFhihRdpCmnjepZe1BD4C4C1/29KvoDyoMNFYCUzniDQHdkE/dlBvY3N4VTEXB3bctiNsCqrgpsI7cvOwCcANyF/KPLMfyxpILdu5ZY1HZfWarTF7Jw3U/+mG4G2NBZZkVlhYQGecAwUaRlpG9uDp1hn4NduidjpZKg4UtddTopP6K5TcaznK5s2vllQB+SmX/mE3t+ZHbRkYslQhYRcBisQEZq90p++UKsNa4cQmoLDafunADeZPBtxJteVoNzPkYgdBTi6L/ij5LKHayMqRaugOfkJxvr4RAKwvLh7YTJticBKub+2oH2RFp1inFUmV0AazVWcn7XgxYHSx+aqlUDblhGSowZbGGaovFr0YE7n7cQHUFmwK7AVhFL78E1k9fguqnIMMFKksfpg3ckVdblPYKI7mLEZdUzk+6CTfaeDMyslUnegPAcq8T+ulD32EvaQ4iWXZGP02epRY/r2xDHsdAVeFfDmpPlWWkgcqV+WMKWapdgFPeDgAYS424fxeoslSlEQMoKwLghrXKYnUZx0oglkT4VVsrY2WwXr+2Izwz36mNY1+lWdC0LzeZvYTSJ/SrApeqkLzBrSnTn8eJEgclKut1KHXIFTJl+4DnnX26/Kd6+sICOJn8WJgfKA9Q5wKny98xLNf+VUA3HVkRyDIz1t2siXxrQOVRFP/K8qpCZRyeiI6ZA5VsrxAno7U0aXoiOZthXtlHdJ/1FYYqeWrrLRHlOo6llGYpT5i2XsBXuJqPAeYh3EbV+RCJPx0LLFbkfLXQaVpqdQX7lAI4rBPQAqtHWcp+KFCeuz9bhN7dsqVqQV9vPN4Y0WDj8ldaB9RvR2pMa4P0eGJiod836hWjk/bvchUgFPqXgoDVhA2t1tVxWJbyHmpzMt2OziTjcl9okyUh0kdGZNSzwzWRKyCfLsBrVvlY+9XevwosrgDLFUTXsYOVj7Veq+rhQXBjs0R+UYPwpoigBBwuaR1Lg8j5cHOvU9QI9ghcSkzMofrTvlH2RGWbD+1oMsgnPJ870IEiEwckxQSbI2JBb52aUm8dxqIbU+4a0n3GBHuBNhNwBXyewyog44aetLhp7TNYYNZosJHfAKbkpLHLVe/8osX7Kj8EkCqydsVa+xuXB8h4ZLPDvDXCM4NPSn/TqcqeK3kyQxIzRBB6cWVIpx4kwAKobUS5yhKmx5dypViqdZCR181L63y99awnpx6SfolXard7Qy8G8XVsrHiJpct+Q3mvXQHbRlyDQG5w6avjaYWa61Tf/StIQ8RCgKr+e6vVccMSlMT8LXGeOawE37gAazgo1EaePMoq9+2yvhdEfdW1K0hlZG1Ebr118gRLqsi8jgvuZXqLwHCItn6lHPq6g3q3pLerYwnj9TarAcGuMA3YeWCGdfL0NZVVxjup+nSm3niwWPKh6tPjroONOh00J6ZcjgmpA4IMDJDQTtYtmLgUs96ZtidV9HXIs6C5AqTtz8ejHmAcSyn6HnibIgcoMqVsBT4rP8vrmTw0YImsxF6Dxer19EgNuGHFQwGXuNaxtk6sNy955auVYqnsIfg9lw4IVKzebxxINTg2xH0gJaTIcpJwQfesN68cMBMxDDWnj7Rc6h3cmXJKOQShB4+gKmIMAOnHoboeII3qcXysJm8LRRdZjSy3vvusXijqvVYC5TDked65SJlrL9K3q98VWIHCHdhKAah8+NCQBcwAyj5C/pzIT1KA1YB9QtUvx/B0GAdQc8KSO0g/IK1W1PomCU1OVg19Z/Uo7os6aVqJP+SVunv+uEInH4tVxHKJgPZGtEABK2PK8t9jIc06/xMhKh85EjewvGGREvW6S8fuyj/9mWmZ8hWLXtmyH8A/MbKhBwHy6WsDMpd9+GFbquFitdUNCKLnwzyIlDMy+ZRnquqYOJmzBTUQTN7stk37g6QVAdzQU4uzSkSuVGd9lEATqkEntIStMhvSCRCgLiNTJA/4B+9Xx5pYAs2Ucwjc1x/WB8h/aeJPglgN4AISJJvZWKpXAIYqsLoZ9daqfn35e07k1SGx/+2SHIDyRF/C1BEADXQlHQ5+ryCXZCX0rRywDFkHwyvYM9ggWx06VpNWrgPyeNzv7KcFJmSs0pZZAWd9As56Q9bAXhC9hx9XGx1nNQKWhdAv3jIuP3h4ZLiGab8qwIJpFwHUGvMdkm9WGj9YgGtQyhssiWeNQEHVwQYSlCMF+OiC/VZZ+0cnuTaI6oRlK1RH1Vqx5YQcKQehLScCPWUVB4uVPK3Xl326BKBWwMiBmoAHuaxUVruh3ZXfuQMfGGAzNWQdU17A23f/7r37y0+99Rw9ickitTfgF4aCyevt/tLXYt+vPmS18SpcjeUKcuwxF1koswtzMUTKEWOuBi2op6fnl/E1+mJPc1gXZs9ty13pGA5K03Lj7Eha6zwAIFaQS6DRkVyRx+MlcAmVdaktV6ktFNAVcAJdtVw2Y77+9VK+8ugyXG40+VCjvWsNqis/+bc3yq/96iXlLX/xUPXpGozcA98Q8G9g1fEpFaiZVqZK5/rZ4kxxt42zUdlReWc2VtSzmNLdXaU17ig9ObmwHPzgbfqGQCdBc1gXtr+jj3Mru75+tbxOoQctZeX95Y0O0131qzo1TJxO6knIkwEMP4jQhroaE1LUy4okZ1PFcj1dXbCxKB/5wEg/gmOPM/pwqkP0VqwMN1MCA5jp9wo7x+dl59Rc+6bqUP0JqdqTSld5+1hS5E5DbuuqfVnZnUpPLw67Q5ulu3yfVgxSACqRua6Exz98b7ni4d+THpNVZfaHXptfardXRbuOBRoQ6Fd5UoNGXmNfl2Xu0ugSZYkjwdA/V1eeeqaUD//mvPyTn9MeqC5N2gE0oZLSp4PGxophos2EiT712W/vXOv+PJI6D72sjauAPuGBvIbF89vl6fv/uLxC33K18h5o6p7BMSuyp1TQOhYgrTX3QNXGKwRSReslUGSC6jcAtHceyJKp7hztB/7Xz5Xyykt1yf8EW8wD2MznUDwRtVmaEOV1YS85uuvq1smy3wbu0Tu+XK4ayRrQb+RWTVYUXJ+dqqKtc33Wab6CM7MvxeJ0mfRrWuXTEr0yoCwdfDDv/fubmKyUR1Tvr9Z0qhEc3JiX//ix7fKpO3ndwaWr9oqrY2E8a6G44s/4Z+3Bmj5Vf+qB75ajX7yvXDA+FVdRsiHN2DeRoJdlpkk5nqIuwBmrgl1g2TqV+sZkQACM2Mq43AEckGWh1tWNx6nKgo4l75fpnyu4H/3t0+Xff3C7bOmr4z3B9gOvk2nLf9b8WeDOjp0q99z+ufLqze/pKKFoFwUrQjLDbaXMFU1dlp3WBt1iF7A7aaW+tNUJkHrQQESm6H8i1ADRqVB1B6eOZ39/FiTrzCXTOTLlQ4qfv2e7vPMfHC//6/5dLeBXRrhSXBrnyymcBeC6bk7e+0T53C/dWa7UT4kvHfGrVwUv3TR3zae/B1RWAXnlIFkXrdu/O931710cUyeH7UfVIR1kxwBL/+t/naKW7UuBzyVe/SswuYNzclh/+oMJUslniqe2dIfWIvzKS0blnX/3QPmRv6DHW36IsQp2tdwO92x16J2tvtbN9Qr8sU8+Ur5+98PlgunJ8sbNo97UscF6suqHlCCOZ/xjFLD1jcga8QdZw1w34ye6H/7ni28I5Kt8hgSFNgarNC3Vn1NSV+uBiU7AzLRaqtr5QzLB5JHU76EMeFZO7XZlW2vSkQAD/PpXTsrNb9xXrnrFpJx3mVYEh0ZlrLXmSDvmfKjmsXqOLLEUnI+58JdlVxuSR8q4OhZ6CJk/u1VeOPp8+c79j5ZvPfRNbV3Oy1XTZ8pr5ALYg+2hcBBDU78VlI0YH5YBuePysUMWSvKx32B360nN22AZGPAYL5aXgEkDsiyUY6psqMjV2FaLtdpiI/WXLerQj6WCyKuTC+UWOnW0pVGw+vm/j+2Uo4+ekO/V46xftdQ3BHo84ifxU8n9WaXK/hW3FqGctHxpyIcZ+fLQbxE0cL+iMWGNVQP1ulRy1syUL5xslesmT5ZLxic0T+BAiUlFQtbK1EnmrjRPA04dqVjQWi7tCOiU7ik2uo/Zn9KPOki45L04R6bIzhJ1RLb86JP63hUIMDr+WEIg/R5KEHoZ9dLHRZyjHW5ALgRZTex32fVnogEOoAGZN7D5LVa+4naZR15FwPqYau9jKmUtrc5Crsnt00+Ozh2dLpeNny/ndqfNjel7A8dwKjESPeEFBKV0Q1/6v5O8+yInpC7tCMiJo3KMt7SPGSgggVg74fJ3GblkRD4OTtiGWmEmYFsvsNV7As5Jx3M/EIAXEPjB8FTPzlMtO/LzoPj+ijexfIQRcuoiH1+8WBeZwQb4gEy/vGTkFQ3zU1mTw2pjH4BZQ0EpUJgUIocqd6I/nHFAYqo+UUrEgua933VbNxi6oMmiPMYDwtcMs4LlQD1U+nYULKDqYOgGSA1aeayQcr+9BzisxlYLZCyVCYeciXIC3I6JS97HelL4zMePsKoLP6oDEUj6eWTN4GlDS2VR5cZab/K1HUSkke0z7QUcoAqd6E+r31aL1dngjrruqxON4QE/GEh5sFbBq2UAcKYMto7Ll7fyvaUCB1hKgeofYzgPcEBGyiXqevR7qAE3HiICZF5xzC/nE3SqQAACosrKkAcmYNyDiSKNcir5t7a2xAotQZLSHJApo2yrriIlPhCQ9H/cp+G6HZVkCNSPHhy98sZyRLrPAs+Xui0zwNpCWcc2PpW1quV2FQFN/+pvAANivVHZauUn7R6wWoNEv0YNYIAbVluxaIjgGQL5KEeO6RPiNFSZYMIlZFFvk7WydEirCZtfHiHNWvP3UVLP7SRCTsxypmjDrCmj0y26Z8tbbjwy+l39xxPk5u6Km1AFqiO7DFQAqoGtE3mNWGK4gbDUkAuaAaZetWJgVhcQ9ehJp4lYbAs2EQXQYfRDbsCfp8GpFVRnC45eAmj0NMBrYCU4UgJ9ADwP5nyWM7WmoRtwLWoMd3W33KLNTAXtrt2e9A0RoOrUl6dBVsAVcvhHhsilDSDVOwaskAU8dADItAJkppItwYz+0CNkGqUz/+ach5raQhXUqesIaZGpmOWst5y22X6PI7vTrFPatidfT8qoG99OlwZ77691943m3T2GWV2Bb2BAVYOwWuXVQW9lttiAx40q7/SGSp0tV/q2Vtqiq0ifBq28riPbXQu4zVuvnYFGrGJKpFo16CXlmpLhpUyp5mDdbAhEN2gAZQeps1oPrSVZ07bWjWbdPd2vv/8+igZLRq9P3mMfq0HYUu1DAVOhqFPnJQ9LDqgBirt4dQkGmgBXZRywttMo4yTFCiCt2aBVN/iunCmjVHAxtNLGQ0MT5TQlMyvnH4RRn3BcxMqyAaoWKuWmRaeOTR6dpTbZLxUK4/F7ItOA/eKHuy/o1cpHmdCZfhWowAJKWCfvsXroyDSK3udyMlyWvjoM+MiGZRSyAWLkGXUiY1agIGQapZhv5jPlLUS0RlJ7XvKzapewUEmIyDiCU2UBR1gHPGpCN9tbVz3ov+bR/cb7v5AqvcVasH90myZ81Je8/SmWU8FUWGFZyAAdsNLyAjqyqGd6fZ1023J8YxXwKgbpBpIcHDMw1Jz0UOGce1Rd2nxW929t+8nXU5Pltj/yLifcTJHvkedAtKmWrd2No+WcjdsQZ1gC+/kPdU9tTsZv1T7BcUMTjLDCAJQW2ddpSnlpUxcLe6ZZ5V4J8CEw7ZFFP0yTvEH75ESewVKXJ4C8BaR9sNQl86gtEEQvUZ9vatGJKLkyy9BrX7683WX8aYGmW6Cmlbus4S2643rmfmv3oX+lnz4OYQks4s98pHtEl/nbVdHDHaDgBgTHMBIgT1/KK+IOWlgBsroM1Q2A08bQH2Cm5dbpepRcMYEm/lIK9KEVc+VU1jLacgGh5wINFLLXmgK5l6naDVSXDVuIe+R1mONaU729+8gHHvEhmj9ngKXu05+Y/qE+x3yTDnM0rcyXPo+pmmi/2NcoDFUp8NPS3Kb3rcijrgXH9FzmpKh9ljk++ZhhztKCpT/JwVbkGrwsIVrX3qtsgNicp/CneQjS7DRl2Zfr1G/KBVr/O1q6jTd1n/jXf8hRV8NasCj93sc3Hzlvsu8NUvhY+tmcfIKgMfm0TPK2aKWrukN5mHLIEkW24ehtnvJyyPkhHfLtEbIHNJBnyHymyJv80Fk0aMvOS1epoH5MG8dv6D7+L8+w1NUjZXlt+tM//fyb9QXE+wTw5nALuQogxT3ErhVWTZm9SH4z5f1S11V53eLLrb7cGnSb1GfHyvnYEvTea9aRKvI7g9w6ZMOcL7n5bJ7jMT6njIVxVBkLBAwgnUa/wS05BiFfFnMPaxnKcK91+jbhHk3sPd0nh7v/WmA02atinfzWn3rqJp2ydwvg2zT48w2SidbB+zFXeX++XmGkjMnm1l6fao8BecJLef5WCzkAV/doAZvt/O2syj459cTRj68cyQGbvj/g8jsFJq47Vr1e+0+LAEhllQNUxWeV3iXZ7d3vxOJ/HZtV2csCm43v0L/z/8X//OQNi9nOjdpLfa1uXNdq7XtYm7sXa916UFZ1UL54Oul29Tuyuf6bAAE1Jt8AlrWF9VZLlB5vDfItAfr+50nzBPhkDRDjhKCvWK04QHIMrhrkabWCpNlSb/fln8foVyOjbkf8TmhHRa8yFk/KZz8hpUcVv6bGD5T5jx7pfvcWPeS/vPD/AUg2fXs/C6zNAAAAAElFTkSuQmCC",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.spotSolWallet?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.spotSolWallet;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const oN="Tokenary";class dA extends ht{constructor(e={}){super(),this.name=oN,this.url="https://tokenary.io/get",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMzRweCIgaGVpZ2h0PSIzNHB4IiB2aWV3Qm94PSIwIDAgMzQgMzQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+T3ZhbDwvdGl0bGU+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8Y2lyY2xlIGlkPSJPdmFsIiBmaWxsPSIjMkM3Q0Y1IiBjeD0iMTciIGN5PSIxNyIgcj0iMTciPjwvY2lyY2xlPgogICAgPC9nPgo8L3N2Zz4=",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.tokenarySolana?.isTokenary?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.tokenarySolana;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const aN="TokenPocket";class fA extends ht{constructor(e={}){super(),this.name=aN,this.url="https://tokenpocket.pro",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGc+CjxwYXRoIGQ9Ik0xMDQxLjUyIDBILTI3VjEwMjRIMTA0MS41MlYwWiIgZmlsbD0iIzI5ODBGRSIvPgo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfNDA4XzIyNSkiPgo8cGF0aCBkPSJNNDA2Ljc5NiA0MzguNjQzSDQwNi45MjdDNDA2Ljc5NiA0MzcuODU3IDQwNi43OTYgNDM2Ljk0IDQwNi43OTYgNDM2LjE1NFY0MzguNjQzWiIgZmlsbD0iIzI5QUVGRiIvPgo8cGF0aCBkPSJNNjY3LjYwMiA0NjMuNTMzSDUyMy4yNDlWNzI0LjA3NkM1MjMuMjQ5IDczNi4zODkgNTMzLjIwNCA3NDYuMzQ1IDU0NS41MTcgNzQ2LjM0NUg2NDUuMzMzQzY1Ny42NDcgNzQ2LjM0NSA2NjcuNjAyIDczNi4zODkgNjY3LjYwMiA3MjQuMDc2VjQ2My41MzNaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNNDUzLjU2MyAyNzdINDQ4LjcxNkgxOTAuMjY5QzE3Ny45NTUgMjc3IDE2OCAyODYuOTU1IDE2OCAyOTkuMjY5VjM4OS42NTNDMTY4IDQwMS45NjcgMTc3Ljk1NSA0MTEuOTIyIDE5MC4yNjkgNDExLjkyMkgyNTAuOTE4SDI3NS4wMjFWNDM4LjY0NFY3MjQuNzMxQzI3NS4wMjEgNzM3LjA0NSAyODQuOTc2IDc0NyAyOTcuMjg5IDc0N0gzOTIuMTI4QzQwNC40NDEgNzQ3IDQxNC4zOTYgNzM3LjA0NSA0MTQuMzk2IDcyNC43MzFWNDM4LjY0NFY0MzYuMTU2VjQxMS45MjJINDM4LjQ5OUg0NDguMzIzSDQ1My4xN0M0OTAuMzcyIDQxMS45MjIgNTIwLjYzMSAzODEuNjYzIDUyMC42MzEgMzQ0LjQ2MUM1MjEuMDI0IDMwNy4yNTkgNDkwLjc2NSAyNzcgNDUzLjU2MyAyNzdaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNNjY3LjczNSA0NjMuNTMzVjY0NS4zNUM2NzIuNzEzIDY0Ni41MjkgNjc3LjgyMSA2NDcuNDQ2IDY4My4wNjEgNjQ4LjIzMkM2OTAuMzk3IDY0OS4yOCA2OTcuOTk0IDY0OS45MzUgNzA1LjU5MiA2NTAuMDY2QzcwNS45ODUgNjUwLjA2NiA3MDYuMzc4IDY1MC4wNjYgNzA2LjkwMiA2NTAuMDY2VjUwNS40NUM2ODUuMDI2IDUwNC4wMDkgNjY3LjczNSA0ODUuODAxIDY2Ny43MzUgNDYzLjUzM1oiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl80MDhfMjI1KSIvPgo8cGF0aCBkPSJNNzA5Ljc4MSAyNzdDNjA2LjgyMiAyNzcgNTIzLjI0OSAzNjAuNTczIDUyMy4yNDkgNDYzLjUzM0M1MjMuMjQ5IDU1Mi4wODQgNTg0Ljk0NiA2MjYuMjI1IDY2Ny43MzMgNjQ1LjM1VjQ2My41MzNDNjY3LjczMyA0NDAuMzQ3IDY4Ni41OTYgNDIxLjQ4NCA3MDkuNzgxIDQyMS40ODRDNzMyLjk2NyA0MjEuNDg0IDc1MS44MyA0NDAuMzQ3IDc1MS44MyA0NjMuNTMzQzc1MS44MyA0ODMuMDUxIDczOC42IDQ5OS40MjUgNzIwLjUyMyA1MDQuMTRDNzE3LjExNyA1MDUuMDU3IDcxMy40NDkgNTA1LjU4MSA3MDkuNzgxIDUwNS41ODFWNjUwLjA2NkM3MTMuNDQ5IDY1MC4wNjYgNzE2Ljk4NiA2NDkuOTM1IDcyMC41MjMgNjQ5LjgwNEM4MTguNTA1IDY0NC4xNzEgODk2LjMxNCA1NjIuOTU2IDg5Ni4zMTQgNDYzLjUzM0M4OTYuNDQ1IDM2MC41NzMgODEyLjg3MiAyNzcgNzA5Ljc4MSAyNzdaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNNzA5Ljc4IDY1MC4wNjZWNTA1LjU4MUM3MDguNzMzIDUwNS41ODEgNzA3LjgxNiA1MDUuNTgxIDcwNi43NjggNTA1LjQ1VjY1MC4wNjZDNzA3LjgxNiA2NTAuMDY2IDcwOC44NjQgNjUwLjA2NiA3MDkuNzggNjUwLjA2NloiIGZpbGw9IndoaXRlIi8+CjwvZz4KPC9nPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzQwOF8yMjUiIHgxPSI3MDkuODQ0IiB5MT0iNTU2LjgyNyIgeDI9IjY2Ny43NTMiIHkyPSI1NTYuODI3IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IndoaXRlIi8+CjxzdG9wIG9mZnNldD0iMC45NjY3IiBzdG9wLWNvbG9yPSJ3aGl0ZSIgc3RvcC1vcGFjaXR5PSIwLjMyMzMiLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSJ3aGl0ZSIgc3RvcC1vcGFjaXR5PSIwLjMiLz4KPC9saW5lYXJHcmFkaWVudD4KPGNsaXBQYXRoIGlkPSJjbGlwMF80MDhfMjI1Ij4KPHJlY3Qgd2lkdGg9IjcyOC40NDgiIGhlaWdodD0iNDcwIiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTY4IDI3NykiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.solana?.isTokenPocket?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.solana;try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;e&&(e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("disconnect"))}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;os(e)?n?.length&&e.sign(n):(e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n)),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const cN="Torus";class pA extends ht{constructor({params:e={showTorusButton:!1}}={params:{showTorusButton:!1}}){super(),this.name=cN,this.url="https://tor.us",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMyAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTYuNSIgY3k9IjE2IiByPSIxNiIgZmlsbD0iIzAzNjRGRiIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTExLjIxODYgOS40OTIxOUMxMC40NTM5IDkuNDkyMTkgOS44MzM5OCAxMC4xMTIxIDkuODMzOTggMTAuODc2OFYxMi40ODk4QzkuODMzOTggMTMuMjU0NSAxMC40NTM5IDEzLjg3NDQgMTEuMjE4NiAxMy44NzQ0SDEzLjY2ODRWMjIuODk3NkMxMy42Njg0IDIzLjY2MjMgMTQuMjg4MyAyNC4yODIyIDE1LjA1MyAyNC4yODIySDE2LjY2NkMxNy40MzA3IDI0LjI4MjIgMTguMDUwNiAyMy42NjIzIDE4LjA1MDYgMjIuODk3NlYxMi41MDE1QzE4LjA1MDYgMTIuNDk3NiAxOC4wNTA2IDEyLjQ5MzcgMTguMDUwNiAxMi40ODk4VjEwLjg3NjhDMTguMDUwNiAxMC4xMTIxIDE3LjQzMDcgOS40OTIxOSAxNi42NjYgOS40OTIxOUgxNS4wNTNIMTEuMjE4NloiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yMS4zMzc2IDEzLjg3NDRDMjIuNTQ3NyAxMy44NzQ0IDIzLjUyODcgMTIuODkzNCAyMy41Mjg3IDExLjY4MzNDMjMuNTI4NyAxMC40NzMyIDIyLjU0NzcgOS40OTIxOSAyMS4zMzc2IDkuNDkyMTlDMjAuMTI3NSA5LjQ5MjE5IDE5LjE0NjUgMTAuNDczMiAxOS4xNDY1IDExLjY4MzNDMTkuMTQ2NSAxMi44OTM0IDIwLjEyNzUgMTMuODc0NCAyMS4zMzc2IDEzLjg3NDRaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.Loadable,this._connecting=!1,this._wallet=null,this._publicKey=null,this._params=e}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isLoggedIn}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0;let e;try{e=(await Fi(async()=>{const{default:n}=await import("./solanaEmbed.esm-CIXgQqxL.js");return{default:n}},__vite__mapDeps([21,2,3,4,5,6,7,8,9,14,10,16]))).default}catch(n){throw new Sn(n?.message,n)}let t;try{t=window.torus||new e}catch(n){throw new so(n?.message,n)}if(!t.isInitialized)try{await t.init(this._params)}catch(n){throw new Yt(n?.message,n)}let i;try{i=await t.login()}catch(n){throw new Ue(n?.message,n)}let s;try{s=new Me(i[0])}catch(n){throw new Ie(n?.message,n)}this._wallet=t,this._publicKey=s,this.emit("connect",s)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{e.isLoggedIn&&await e.cleanUp()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signMessage(e)}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const uN="Trezor";class gA extends Tn{constructor(e={}){super(),this.name=uN,this.url="https://trezor.io",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4IiBoZWlnaHQ9IjEwOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGQ9Ik01NCAwYzI5LjgyNCAwIDU0IDI0LjE3NiA1NCA1NHMtMjQuMTc2IDU0LTU0IDU0UzAgODMuODI0IDAgNTQgMjQuMTc2IDAgNTQgMHoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNNzUuMjUgMzMuMzA1Qzc1LjI1IDIyLjIwNSA2NS42NjIgMTMgNTQgMTNjLTExLjY3MiAwLTIxLjI1OCA5LjIxMi0yMS4yNTggMjAuMzA1djYuNDlIMjR2NDYuNjgzTDUzLjk5IDEwMC41IDg0IDg2LjQ3NXYtNDYuNDdoLTguNzQ1bC0uMDA3LTYuNjk4LjAwMi0uMDAyem0tMzEuNjcgMGMwLTUuMjMyIDQuNTg1LTkuNDIgMTAuNDE4LTkuNDIgNS44MzUgMCAxMC40MTcgNC4xODggMTAuNDE3IDkuNDJ2Ni40OUg0My41OHYtNi40OXptMjguMzM1IDQ1LjYzN0w1My45OSA4Ny4zMmwtMTcuOTItOC4zNzJWNTAuODloMzUuODQ1djI4LjA1MnoiIGZpbGw9IiMxNzE3MTciLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDEwOHYxMDhIMHoiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4=",this.supportedTransactionVersions=new Set(["legacy",0]),this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.Loadable,this._onDeviceEvent=t=>{t.type==="device-disconnect"&&this._disconnected()},this._disconnected=async()=>{const t=this._wallet;if(t){this._wallet=null,this._publicKey=null;try{t.off("DEVICE_EVENT",this._onDeviceEvent),t.dispose()}catch(i){this.emit("error",new At(i?.message,i))}this.emit("error",new or),this.emit("disconnect")}},this._derivationPath=e.derivationPath||"m/44'/501'/0'/0'",this._wallet=null,this._connectUrl=e.connectUrl?.replace(/\/*$/,"/"),this._connecting=!1,this._publicKey=null,this._appName=e.appName||"Wallet Adapter",this._email=e.email||"noreply@anza.xyz"}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0;let e;try{const{default:s}=await Fi(async()=>{const{default:n}=await import("./index-qW0zbSTP.js").then(o=>o.i);return{default:n}},__vite__mapDeps([22,3,12,13,4,5,6,7,8,18]));e=s.default}catch(s){throw new Sn(s?.message,s)}try{await e.init({manifest:{appName:this._appName,email:this._email,appUrl:window.location.href},lazyLoad:!0,...this._connectUrl?{connectSrc:this._connectUrl,iframeSrc:this._connectUrl}:{}})}catch(s){throw new so(s?.message,s)}let t;try{t=await e.solanaGetPublicKey({path:this._derivationPath})}catch(s){throw new Ue(s?.message,s)}if(!t.success)throw new Ue(t.payload?.error,t.payload);let i;try{i=new Me(Buffer.from(t.payload.publicKey,"hex"))}catch(s){throw new Ie(s?.message,s)}e.on("DEVICE_EVENT",this._onDeviceEvent),this._wallet=e,this._publicKey=i,this.emit("connect",i)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){this._wallet=null,this._publicKey=null;try{e.off("DEVICE_EVENT",this._onDeviceEvent),await e.dispose()}catch(t){this.emit("error",new At(t?.message,t))}this.emit("disconnect")}}async signTransaction(e){try{const t=this._wallet,i=this._publicKey;if(!t||!i)throw new q;const s=os(e)?e.message.serialize():e.serializeMessage();let n;try{n=await t.solanaSignTransaction({path:this._derivationPath,serializedTx:Buffer.from(s).toString("hex")})}catch(o){throw new ie(o?.message,o)}if(!n.success)throw new ie(n.payload?.error,n.payload);try{const o=Buffer.from(n.payload.signature,"hex");e.addSignature(i,o)}catch(o){throw new ie(o?.message,o)}return e}catch(t){throw this.emit("error",t),t}}}const lN="Trust";class yA extends ht{constructor(e={}){super(),this.name=lN,this.url="https://trustwallet.com",this.icon="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMTkyMCAxMDgwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6dXJsKCNsaW5lYXItZ3JhZGllbnQpO30uY2xzLTJ7ZmlsbDojMDUwMGZmO308L3N0eWxlPjxsaW5lYXJHcmFkaWVudCBpZD0ibGluZWFyLWdyYWRpZW50IiB4MT0iMTEyMy4yNiIgeTE9IjE4NjUuNzgiIHgyPSI5NTQuNjEiIHkyPSIxMzM3LjUiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAyMTgyKSBzY2FsZSgxIC0xKSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iLjAyIiBzdG9wLWNvbG9yPSJibHVlIi8+PHN0b3Agb2Zmc2V0PSIuMDgiIHN0b3AtY29sb3I9IiMwMDk0ZmYiLz48c3RvcCBvZmZzZXQ9Ii4xNiIgc3RvcC1jb2xvcj0iIzQ4ZmY5MSIvPjxzdG9wIG9mZnNldD0iLjQyIiBzdG9wLWNvbG9yPSIjMDA5NGZmIi8+PHN0b3Agb2Zmc2V0PSIuNjgiIHN0b3AtY29sb3I9IiMwMDM4ZmYiLz48c3RvcCBvZmZzZXQ9Ii45IiBzdG9wLWNvbG9yPSIjMDUwMGZmIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJtNzM4LjcxLDQyMy40MWwyMjEuNDUtNzIuM3Y1MDAuNTJjLTE1OC4xOC02Ni43NC0yMjEuNDUtMTk0LjY1LTIyMS40NS0yNjYuOTR2LTE2MS4yOFoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Im0xMTgxLjYyLDQyMy40MWwtMjIxLjQ1LTcyLjN2NTAwLjUyYzE1OC4xOC02Ni43NCwyMjEuNDUtMTk0LjY1LDIyMS40NS0yNjYuOTR2LTE2MS4yOFoiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Im04MjUuOTEsMjMwLjg1aDMwLjl2MTcuMzFjMTAuMTMtMTUuNTYsMjEuNzgtMTcuMzEsMzguODQtMTcuMzF2MzAuNmgtNy43N2MtMjAuNDQsMC0zMC4yMyw5LjYyLTMwLjIzLDI4LjY3djMyLjUyaC0zMS43NXYtOTEuNzlaIi8+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJtOTk4Ljc4LDMyMi42M2gtMzEuNzV2LTguNzVjLTYuOTMsOC4wNS0xNi4zOCwxMS41NC0yOC4wMywxMS41NC0yMi4xMiwwLTM0LjYyLTEzLjExLTM0LjYyLTM3LjI0di01Ny4zNGgzMS43NXY1MC4xOGMwLDExLjM2LDUuNTcsMTgsMTUuMDIsMThzMTUuODgtNi40NywxNS44OC0xNy40OHYtNTAuN2gzMS43NXY5MS43OVoiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Im0xMDA2LjU0LDI5NC4zaDI5LjczYzEuMzYsNi42NCw1LjkxLDkuNDMsMTYuODgsOS40Myw4Ljk1LDAsMTQuMTktMi4wOSwxNC4xOS01Ljk0LDAtMi45OC0yLjU0LTQuOS05Ljc5LTYuNDdsLTIzLjk4LTUuNDJjLTE2LjA0LTMuNjYtMjQuMTUtMTIuOTMtMjQuMTUtMjcuOCwwLTE5LjU5LDE0LjM1LTI5LjczLDQyLjIxLTI5LjczczQxLjU0LDkuODgsNDMuOTEsMzEuMDRoLTI5LjU1Yy0uNS01LjU5LTYuMjUtOS4wMS0xNS43LTkuMDEtNy41OSwwLTEyLjQ5LDIuNDQtMTIuNDksNi4xMiwwLDMuMTQsMy4yLDUuNTksOS42Myw3LjE4bDI1LjE2LDYuMTJjMTYuNTQsNC4wMSwyNC40OSwxMi40MSwyNC40OSwyNi4wNSwwLDE4Ljg5LTE2LjM4LDMwLjA4LTQ0LjIzLDMwLjA4cy00Ni4yNy0xMi4wNi00Ni4yNy0zMS42NWgtLjAzWiIvPjxwYXRoIGNsYXNzPSJjbHMtMiIgZD0ibTExODEuNjIsMjU5LjR2LTI4LjU1aC03OC4zNXYyOC41NmgyMy4zOHY2My4yMmgzMS41OHYtNjMuMjRoMjMuMzlaIi8+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJtODE3LjA4LDI1OS40di0yOC41NWgtNzguMzV2MjguNTZoMjMuMzh2NjMuMjJoMzEuNTh2LTYzLjI0aDIzLjM4WiIvPjwvc3ZnPg==",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.trustwallet?.solana?.isTrust?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.trustwallet.solana;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async sendTransaction(e,t,i={}){try{const s=this._wallet;if(!s)throw new q;try{const{signers:n,...o}=i;e=await this.prepareTransaction(e,t,o),n?.length&&e.partialSign(...n),o.preflightCommitment=o.preflightCommitment||t.commitment;const{signature:a}=await s.signAndSendTransaction(e,o);return a}catch(n){throw n instanceof Bi?n:new Yi(n?.message,n)}}catch(s){throw this.emit("error",s),s}}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}function wA(r){const e=mA(r);return new TextEncoder().encode(e)}function mA(r){let e=`${r.domain} wants you to sign in with your Solana account:
4
+ `;e+=`${r.address}`,r.statement&&(e+=`
5
+
6
+ ${r.statement}`);const t=[];if(r.uri&&t.push(`URI: ${r.uri}`),r.version&&t.push(`Version: ${r.version}`),r.chainId&&t.push(`Chain ID: ${r.chainId}`),r.nonce&&t.push(`Nonce: ${r.nonce}`),r.issuedAt&&t.push(`Issued At: ${r.issuedAt}`),r.expirationTime&&t.push(`Expiration Time: ${r.expirationTime}`),r.notBefore&&t.push(`Not Before: ${r.notBefore}`),r.requestId&&t.push(`Request ID: ${r.requestId}`),r.resources){t.push("Resources:");for(const i of r.resources)t.push(`- ${i}`)}return t.length&&(e+=`
7
+
8
+ ${t.join(`
9
+ `)}`),e}const hN="Burner Wallet";class bA extends wD{constructor(){super(),this.name=hN,this.url="https://github.com/anza-xyz/wallet-adapter#usage",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQiIGhlaWdodD0iMzAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNCAxMC42djIuN2wtOS41IDE2LjVoLTQuNmw2LTEwLjVhMi4xIDIuMSAwIDEgMCAyLTMuNGw0LjgtOC4zYTQgNCAwIDAgMSAxLjMgM1ptLTQuMyAxOS4xaC0uNmw0LjktOC40djQuMmMwIDIuMy0yIDQuMy00LjMgNC4zWm0yLTI4LjRjLS4zLS44LTEtMS4zLTItMS4zaC0xLjlsLTIuNCA0LjNIMzBsMS43LTNabS0zIDVoLTQuNkwxMC42IDI5LjhoNC43TDI4LjggNi40Wk0xOC43IDBoNC42bC0yLjUgNC4zaC00LjZMMTguNiAwWk0xNSA2LjRoNC42TDYgMjkuOEg0LjJjLS44IDAtMS43LS4zLTIuNC0uOEwxNSA2LjRaTTE0IDBIOS40TDcgNC4zaDQuNkwxNCAwWm0tMy42IDYuNEg1LjdMMCAxNi4ydjhMMTAuMyA2LjRaTTQuMyAwaC40TDAgOC4ydi00QzAgMiAxLjkgMCA0LjMgMFoiIGZpbGw9IiM5OTQ1RkYiLz48L3N2Zz4=",this.supportedTransactionVersions=new Set(["legacy",0]),this._keypair=null,console.warn("Your application is presently configured to use the `UnsafeBurnerWalletAdapter`. Find and remove it, then replace it with a list of adapters for wallets you would like your application to support. See https://github.com/anza-xyz/wallet-adapter#usage for an example.")}get connecting(){return!1}get publicKey(){return this._keypair&&this._keypair.publicKey}get readyState(){return B.Loadable}async connect(){this._keypair=new z0,this.emit("connect",this._keypair.publicKey)}async disconnect(){this._keypair=null,this.emit("disconnect")}async signTransaction(e){if(!this._keypair)throw new q;return os(e)?e.sign([this._keypair]):e.partialSign(this._keypair),e}async signMessage(e){if(!this._keypair)throw new q;return L0.sign(e,this._keypair.secretKey.slice(0,32))}async signIn(e={}){const{publicKey:t,secretKey:i}=this._keypair||(this._keypair=new z0),s=e.domain||window.location.host,n=e.address||t.toBase58(),o=wA({...e,domain:s,address:n}),a=L0.sign(o,i.slice(0,32));return this.emit("connect",t),{account:{address:n,publicKey:t.toBytes(),chains:[],features:[]},signedMessage:o,signature:a}}}var Nh;(function(r){r.Mainnet="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",r.Devnet="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",r.Deprecated_Mainnet="solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ",r.Deprecated_Devnet="solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K"})(Nh||(Nh={}));var $i;(function(r){r.signTransaction="solana_signTransaction",r.signMessage="solana_signMessage",r.signAndSendTransaction="solana_signAndSendTransaction",r.signAndSendAllTransactions="solana_signAndSendAllTransactions",r.signAllTransactions="solana_signAllTransactions"})($i||($i={}));const pr={Mainnet:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",Devnet:"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",Deprecated_Mainnet:"solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ",Deprecated_Devnet:"solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K"};var Md={};var hp=function(r,e){return hp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var s in i)i.hasOwnProperty(s)&&(t[s]=i[s])},hp(r,e)};function MA(r,e){hp(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}var dp=function(){return dp=Object.assign||function(e){for(var t,i=1,s=arguments.length;i<s;i++){t=arguments[i];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},dp.apply(this,arguments)};function NA(r,e){var t={};for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&e.indexOf(i)<0&&(t[i]=r[i]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,i=Object.getOwnPropertySymbols(r);s<i.length;s++)e.indexOf(i[s])<0&&Object.prototype.propertyIsEnumerable.call(r,i[s])&&(t[i[s]]=r[i[s]]);return t}function vA(r,e,t,i){var s=arguments.length,n=s<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(r,e,t,i);else for(var a=r.length-1;a>=0;a--)(o=r[a])&&(n=(s<3?o(n):s>3?o(e,t,n):o(e,t))||n);return s>3&&n&&Object.defineProperty(e,t,n),n}function IA(r,e){return function(t,i){e(t,i,r)}}function DA(r,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,e)}function AA(r,e,t,i){function s(n){return n instanceof t?n:new t(function(o){o(n)})}return new(t||(t=Promise))(function(n,o){function a(l){try{c(i.next(l))}catch(h){o(h)}}function u(l){try{c(i.throw(l))}catch(h){o(h)}}function c(l){l.done?n(l.value):s(l.value).then(a,u)}c((i=i.apply(r,e||[])).next())})}function EA(r,e){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},i,s,n,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(l){return u([c,l])}}function u(c){if(i)throw new TypeError("Generator is already executing.");for(;t;)try{if(i=1,s&&(n=c[0]&2?s.return:c[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,c[1])).done)return n;switch(s=0,n&&(c=[c[0]&2,n.value]),c[0]){case 0:case 1:n=c;break;case 4:return t.label++,{value:c[1],done:!1};case 5:t.label++,s=c[1],c=[0];continue;case 7:c=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(c[0]===6||c[0]===2)){t=0;continue}if(c[0]===3&&(!n||c[1]>n[0]&&c[1]<n[3])){t.label=c[1];break}if(c[0]===6&&t.label<n[1]){t.label=n[1],n=c;break}if(n&&t.label<n[2]){t.label=n[2],t.ops.push(c);break}n[2]&&t.ops.pop(),t.trys.pop();continue}c=e.call(r,t)}catch(l){c=[6,l],s=0}finally{i=n=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}function TA(r,e,t,i){i===void 0&&(i=t),r[i]=e[t]}function SA(r,e){for(var t in r)t!=="default"&&!e.hasOwnProperty(t)&&(e[t]=r[t])}function fp(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],i=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&i>=r.length&&(r=void 0),{value:r&&r[i++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function dN(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var i=t.call(r),s,n=[],o;try{for(;(e===void 0||e-- >0)&&!(s=i.next()).done;)n.push(s.value)}catch(a){o={error:a}}finally{try{s&&!s.done&&(t=i.return)&&t.call(i)}finally{if(o)throw o.error}}return n}function jA(){for(var r=[],e=0;e<arguments.length;e++)r=r.concat(dN(arguments[e]));return r}function xA(){for(var r=0,e=0,t=arguments.length;e<t;e++)r+=arguments[e].length;for(var i=Array(r),s=0,e=0;e<t;e++)for(var n=arguments[e],o=0,a=n.length;o<a;o++,s++)i[s]=n[o];return i}function ou(r){return this instanceof ou?(this.v=r,this):new ou(r)}function CA(r,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=t.apply(r,e||[]),s,n=[];return s={},o("next"),o("throw"),o("return"),s[Symbol.asyncIterator]=function(){return this},s;function o(f){i[f]&&(s[f]=function(w){return new Promise(function(g,m){n.push([f,w,g,m])>1||a(f,w)})})}function a(f,w){try{u(i[f](w))}catch(g){h(n[0][3],g)}}function u(f){f.value instanceof ou?Promise.resolve(f.value.v).then(c,l):h(n[0][2],f)}function c(f){a("next",f)}function l(f){a("throw",f)}function h(f,w){f(w),n.shift(),n.length&&a(n[0][0],n[0][1])}}function _A(r){var e,t;return e={},i("next"),i("throw",function(s){throw s}),i("return"),e[Symbol.iterator]=function(){return this},e;function i(s,n){e[s]=r[s]?function(o){return(t=!t)?{value:ou(r[s](o)),done:s==="return"}:n?n(o):o}:n}}function OA(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=r[Symbol.asyncIterator],t;return e?e.call(r):(r=typeof fp=="function"?fp(r):r[Symbol.iterator](),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(n){t[n]=r[n]&&function(o){return new Promise(function(a,u){o=r[n](o),s(a,u,o.done,o.value)})}}function s(n,o,a,u){Promise.resolve(u).then(function(c){n({value:c,done:a})},o)}}function zA(r,e){return Object.defineProperty?Object.defineProperty(r,"raw",{value:e}):r.raw=e,r}function LA(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)Object.hasOwnProperty.call(r,t)&&(e[t]=r[t]);return e.default=r,e}function PA(r){return r&&r.__esModule?r:{default:r}}function kA(r,e){if(!e.has(r))throw new TypeError("attempted to get private field on non-instance");return e.get(r)}function UA(r,e,t){if(!e.has(r))throw new TypeError("attempted to set private field on non-instance");return e.set(r,t),t}const RA=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return dp},__asyncDelegator:_A,__asyncGenerator:CA,__asyncValues:OA,__await:ou,__awaiter:AA,__classPrivateFieldGet:kA,__classPrivateFieldSet:UA,__createBinding:TA,__decorate:vA,__exportStar:SA,__extends:MA,__generator:EA,__importDefault:PA,__importStar:LA,__makeTemplateObject:zA,__metadata:DA,__param:IA,__read:dN,__rest:NA,__spread:jA,__spreadArrays:xA,__values:fp},Symbol.toStringTag,{value:"Module"})),Vh=A1(RA);var Nd={},yc={},R0;function $A(){if(R0)return yc;R0=1,Object.defineProperty(yc,"__esModule",{value:!0}),yc.delay=void 0;function r(e){return new Promise(t=>{setTimeout(()=>{t(!0)},e)})}return yc.delay=r,yc}var kn={},vd={},Un={},$0;function FA(){return $0||($0=1,Object.defineProperty(Un,"__esModule",{value:!0}),Un.ONE_THOUSAND=Un.ONE_HUNDRED=void 0,Un.ONE_HUNDRED=100,Un.ONE_THOUSAND=1e3),Un}var Id={},F0;function BA(){return F0||(F0=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0}),r.ONE_YEAR=r.FOUR_WEEKS=r.THREE_WEEKS=r.TWO_WEEKS=r.ONE_WEEK=r.THIRTY_DAYS=r.SEVEN_DAYS=r.FIVE_DAYS=r.THREE_DAYS=r.ONE_DAY=r.TWENTY_FOUR_HOURS=r.TWELVE_HOURS=r.SIX_HOURS=r.THREE_HOURS=r.ONE_HOUR=r.SIXTY_MINUTES=r.THIRTY_MINUTES=r.TEN_MINUTES=r.FIVE_MINUTES=r.ONE_MINUTE=r.SIXTY_SECONDS=r.THIRTY_SECONDS=r.TEN_SECONDS=r.FIVE_SECONDS=r.ONE_SECOND=void 0,r.ONE_SECOND=1,r.FIVE_SECONDS=5,r.TEN_SECONDS=10,r.THIRTY_SECONDS=30,r.SIXTY_SECONDS=60,r.ONE_MINUTE=r.SIXTY_SECONDS,r.FIVE_MINUTES=r.ONE_MINUTE*5,r.TEN_MINUTES=r.ONE_MINUTE*10,r.THIRTY_MINUTES=r.ONE_MINUTE*30,r.SIXTY_MINUTES=r.ONE_MINUTE*60,r.ONE_HOUR=r.SIXTY_MINUTES,r.THREE_HOURS=r.ONE_HOUR*3,r.SIX_HOURS=r.ONE_HOUR*6,r.TWELVE_HOURS=r.ONE_HOUR*12,r.TWENTY_FOUR_HOURS=r.ONE_HOUR*24,r.ONE_DAY=r.TWENTY_FOUR_HOURS,r.THREE_DAYS=r.ONE_DAY*3,r.FIVE_DAYS=r.ONE_DAY*5,r.SEVEN_DAYS=r.ONE_DAY*7,r.THIRTY_DAYS=r.ONE_DAY*30,r.ONE_WEEK=r.SEVEN_DAYS,r.TWO_WEEKS=r.ONE_WEEK*2,r.THREE_WEEKS=r.ONE_WEEK*3,r.FOUR_WEEKS=r.ONE_WEEK*4,r.ONE_YEAR=r.ONE_DAY*365})(Id)),Id}var B0;function fN(){return B0||(B0=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0});const e=Vh;e.__exportStar(FA(),r),e.__exportStar(BA(),r)})(vd)),vd}var Y0;function YA(){if(Y0)return kn;Y0=1,Object.defineProperty(kn,"__esModule",{value:!0}),kn.fromMiliseconds=kn.toMiliseconds=void 0;const r=fN();function e(i){return i*r.ONE_THOUSAND}kn.toMiliseconds=e;function t(i){return Math.floor(i/r.ONE_THOUSAND)}return kn.fromMiliseconds=t,kn}var Q0;function QA(){return Q0||(Q0=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0});const e=Vh;e.__exportStar($A(),r),e.__exportStar(YA(),r)})(Nd)),Nd}var jo={},V0;function VA(){if(V0)return jo;V0=1,Object.defineProperty(jo,"__esModule",{value:!0}),jo.Watch=void 0;class r{constructor(){this.timestamps=new Map}start(t){if(this.timestamps.has(t))throw new Error(`Watch already started for label: ${t}`);this.timestamps.set(t,{started:Date.now()})}stop(t){const i=this.get(t);if(typeof i.elapsed<"u")throw new Error(`Watch already stopped for label: ${t}`);const s=Date.now()-i.started;this.timestamps.set(t,{started:i.started,elapsed:s})}get(t){const i=this.timestamps.get(t);if(typeof i>"u")throw new Error(`No timestamp found for label: ${t}`);return i}elapsed(t){const i=this.get(t);return i.elapsed||Date.now()-i.started}}return jo.Watch=r,jo.default=r,jo}var Dd={},wc={},W0;function WA(){if(W0)return wc;W0=1,Object.defineProperty(wc,"__esModule",{value:!0}),wc.IWatch=void 0;class r{}return wc.IWatch=r,wc}var q0;function qA(){return q0||(q0=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0}),Vh.__exportStar(WA(),r)})(Dd)),Dd}var Z0;function ZA(){return Z0||(Z0=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0});const e=Vh;e.__exportStar(QA(),r),e.__exportStar(VA(),r),e.__exportStar(qA(),r),e.__exportStar(fN(),r)})(Md)),Md}var Y=ZA();class Ti{}let HA=class extends Ti{constructor(e){super()}};const H0=Y.FIVE_SECONDS,as={pulse:"heartbeat_pulse"};let pN=class gN extends HA{constructor(e){super(e),this.events=new wr.EventEmitter,this.interval=H0,this.interval=e?.interval||H0}static async init(e){const t=new gN(e);return await t.init(),t}async init(){await this.initialize()}stop(){clearInterval(this.intervalRef)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async initialize(){this.intervalRef=setInterval(()=>this.pulse(),Y.toMiliseconds(this.interval))}pulse(){this.events.emit(as.pulse)}};const GA=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,KA=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,JA=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function XA(r,e){if(r==="__proto__"||r==="constructor"&&e&&typeof e=="object"&&"prototype"in e){e3(r);return}return e}function e3(r){console.warn(`[destr] Dropping "${r}" key to prevent prototype pollution.`)}function Il(r,e={}){if(typeof r!="string")return r;if(r[0]==='"'&&r[r.length-1]==='"'&&r.indexOf("\\")===-1)return r.slice(1,-1);const t=r.trim();if(t.length<=9)switch(t.toLowerCase()){case"true":return!0;case"false":return!1;case"undefined":return;case"null":return null;case"nan":return Number.NaN;case"infinity":return Number.POSITIVE_INFINITY;case"-infinity":return Number.NEGATIVE_INFINITY}if(!JA.test(r)){if(e.strict)throw new SyntaxError("[destr] Invalid JSON");return r}try{if(GA.test(r)||KA.test(r)){if(e.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(r,XA)}return JSON.parse(r)}catch(i){if(e.strict)throw i;return r}}function t3(r){return!r||typeof r.then!="function"?Promise.resolve(r):r}function Ir(r,...e){try{return t3(r(...e))}catch(t){return Promise.reject(t)}}function r3(r){const e=typeof r;return r===null||e!=="object"&&e!=="function"}function i3(r){const e=Object.getPrototypeOf(r);return!e||e.isPrototypeOf(Object)}function sh(r){if(r3(r))return String(r);if(i3(r)||Array.isArray(r))return JSON.stringify(r);if(typeof r.toJSON=="function")return sh(r.toJSON());throw new Error("[unstorage] Cannot stringify value!")}const pp="base64:";function s3(r){return typeof r=="string"?r:pp+a3(r)}function n3(r){return typeof r!="string"||!r.startsWith(pp)?r:o3(r.slice(pp.length))}function o3(r){return globalThis.Buffer?Buffer.from(r,"base64"):Uint8Array.from(globalThis.atob(r),e=>e.codePointAt(0))}function a3(r){return globalThis.Buffer?Buffer.from(r).toString("base64"):globalThis.btoa(String.fromCodePoint(...r))}function ni(r){return r&&r.split("?")[0]?.replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,"")||""}function c3(...r){return ni(r.join(":"))}function Dl(r){return r=ni(r),r?r+":":""}function u3(r,e){if(e===void 0)return!0;let t=0,i=r.indexOf(":");for(;i>-1;)t++,i=r.indexOf(":",i+1);return t<=e}function l3(r,e){return e?r.startsWith(e)&&r[r.length-1]!=="$":r[r.length-1]!=="$"}const h3="memory",d3=()=>{const r=new Map;return{name:h3,getInstance:()=>r,hasItem(e){return r.has(e)},getItem(e){return r.get(e)??null},getItemRaw(e){return r.get(e)??null},setItem(e,t){r.set(e,t)},setItemRaw(e,t){r.set(e,t)},removeItem(e){r.delete(e)},getKeys(){return[...r.keys()]},clear(){r.clear()},dispose(){r.clear()}}};function f3(r={}){const e={mounts:{"":r.driver||d3()},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}},t=c=>{for(const l of e.mountpoints)if(c.startsWith(l))return{base:l,relativeKey:c.slice(l.length),driver:e.mounts[l]};return{base:"",relativeKey:c,driver:e.mounts[""]}},i=(c,l)=>e.mountpoints.filter(h=>h.startsWith(c)||l&&c.startsWith(h)).map(h=>({relativeBase:c.length>h.length?c.slice(h.length):void 0,mountpoint:h,driver:e.mounts[h]})),s=(c,l)=>{if(e.watching){l=ni(l);for(const h of e.watchListeners)h(c,l)}},n=async()=>{if(!e.watching){e.watching=!0;for(const c in e.mounts)e.unwatch[c]=await G0(e.mounts[c],s,c)}},o=async()=>{if(e.watching){for(const c in e.unwatch)await e.unwatch[c]();e.unwatch={},e.watching=!1}},a=(c,l,h)=>{const f=new Map,w=g=>{let m=f.get(g.base);return m||(m={driver:g.driver,base:g.base,items:[]},f.set(g.base,m)),m};for(const g of c){const m=typeof g=="string",E=ni(m?g:g.key),A=m?void 0:g.value,D=m||!g.options?l:{...l,...g.options},O=t(E);w(O).items.push({key:E,value:A,relativeKey:O.relativeKey,options:D})}return Promise.all([...f.values()].map(g=>h(g))).then(g=>g.flat())},u={hasItem(c,l={}){c=ni(c);const{relativeKey:h,driver:f}=t(c);return Ir(f.hasItem,h,l)},getItem(c,l={}){c=ni(c);const{relativeKey:h,driver:f}=t(c);return Ir(f.getItem,h,l).then(w=>Il(w))},getItems(c,l={}){return a(c,l,h=>h.driver.getItems?Ir(h.driver.getItems,h.items.map(f=>({key:f.relativeKey,options:f.options})),l).then(f=>f.map(w=>({key:c3(h.base,w.key),value:Il(w.value)}))):Promise.all(h.items.map(f=>Ir(h.driver.getItem,f.relativeKey,f.options).then(w=>({key:f.key,value:Il(w)})))))},getItemRaw(c,l={}){c=ni(c);const{relativeKey:h,driver:f}=t(c);return f.getItemRaw?Ir(f.getItemRaw,h,l):Ir(f.getItem,h,l).then(w=>n3(w))},async setItem(c,l,h={}){if(l===void 0)return u.removeItem(c);c=ni(c);const{relativeKey:f,driver:w}=t(c);w.setItem&&(await Ir(w.setItem,f,sh(l),h),w.watch||s("update",c))},async setItems(c,l){await a(c,l,async h=>{if(h.driver.setItems)return Ir(h.driver.setItems,h.items.map(f=>({key:f.relativeKey,value:sh(f.value),options:f.options})),l);h.driver.setItem&&await Promise.all(h.items.map(f=>Ir(h.driver.setItem,f.relativeKey,sh(f.value),f.options)))})},async setItemRaw(c,l,h={}){if(l===void 0)return u.removeItem(c,h);c=ni(c);const{relativeKey:f,driver:w}=t(c);if(w.setItemRaw)await Ir(w.setItemRaw,f,l,h);else if(w.setItem)await Ir(w.setItem,f,s3(l),h);else return;w.watch||s("update",c)},async removeItem(c,l={}){typeof l=="boolean"&&(l={removeMeta:l}),c=ni(c);const{relativeKey:h,driver:f}=t(c);f.removeItem&&(await Ir(f.removeItem,h,l),(l.removeMeta||l.removeMata)&&await Ir(f.removeItem,h+"$",l),f.watch||s("remove",c))},async getMeta(c,l={}){typeof l=="boolean"&&(l={nativeOnly:l}),c=ni(c);const{relativeKey:h,driver:f}=t(c),w=Object.create(null);if(f.getMeta&&Object.assign(w,await Ir(f.getMeta,h,l)),!l.nativeOnly){const g=await Ir(f.getItem,h+"$",l).then(m=>Il(m));g&&typeof g=="object"&&(typeof g.atime=="string"&&(g.atime=new Date(g.atime)),typeof g.mtime=="string"&&(g.mtime=new Date(g.mtime)),Object.assign(w,g))}return w},setMeta(c,l,h={}){return this.setItem(c+"$",l,h)},removeMeta(c,l={}){return this.removeItem(c+"$",l)},async getKeys(c,l={}){c=Dl(c);const h=i(c,!0);let f=[];const w=[];let g=!0;for(const E of h){E.driver.flags?.maxDepth||(g=!1);const A=await Ir(E.driver.getKeys,E.relativeBase,l);for(const D of A){const O=E.mountpoint+ni(D);f.some(C=>O.startsWith(C))||w.push(O)}f=[E.mountpoint,...f.filter(D=>!D.startsWith(E.mountpoint))]}const m=l.maxDepth!==void 0&&!g;return w.filter(E=>(!m||u3(E,l.maxDepth))&&l3(E,c))},async clear(c,l={}){c=Dl(c),await Promise.all(i(c,!1).map(async h=>{if(h.driver.clear)return Ir(h.driver.clear,h.relativeBase,l);if(h.driver.removeItem){const f=await h.driver.getKeys(h.relativeBase||"",l);return Promise.all(f.map(w=>h.driver.removeItem(w,l)))}}))},async dispose(){await Promise.all(Object.values(e.mounts).map(c=>K0(c)))},async watch(c){return await n(),e.watchListeners.push(c),async()=>{e.watchListeners=e.watchListeners.filter(l=>l!==c),e.watchListeners.length===0&&await o()}},async unwatch(){e.watchListeners=[],await o()},mount(c,l){if(c=Dl(c),c&&e.mounts[c])throw new Error(`already mounted at ${c}`);return c&&(e.mountpoints.push(c),e.mountpoints.sort((h,f)=>f.length-h.length)),e.mounts[c]=l,e.watching&&Promise.resolve(G0(l,s,c)).then(h=>{e.unwatch[c]=h}).catch(console.error),u},async unmount(c,l=!0){c=Dl(c),!(!c||!e.mounts[c])&&(e.watching&&c in e.unwatch&&(e.unwatch[c]?.(),delete e.unwatch[c]),l&&await K0(e.mounts[c]),e.mountpoints=e.mountpoints.filter(h=>h!==c),delete e.mounts[c])},getMount(c=""){c=ni(c)+":";const l=t(c);return{driver:l.driver,base:l.base}},getMounts(c="",l={}){return c=ni(c),i(c,l.parents).map(f=>({driver:f.driver,base:f.mountpoint}))},keys:(c,l={})=>u.getKeys(c,l),get:(c,l={})=>u.getItem(c,l),set:(c,l,h={})=>u.setItem(c,l,h),has:(c,l={})=>u.hasItem(c,l),del:(c,l={})=>u.removeItem(c,l),remove:(c,l={})=>u.removeItem(c,l)};return u}function G0(r,e,t){return r.watch?r.watch((i,s)=>e(i,t+s)):()=>{}}async function K0(r){typeof r.dispose=="function"&&await Ir(r.dispose)}function yo(r){return new Promise((e,t)=>{r.oncomplete=r.onsuccess=()=>e(r.result),r.onabort=r.onerror=()=>t(r.error)})}function yN(r,e){let t;const i=()=>{if(t)return t;const s=indexedDB.open(r);return s.onupgradeneeded=()=>s.result.createObjectStore(e),t=yo(s),t.then(n=>{n.onclose=()=>t=void 0},()=>{}),t};return(s,n)=>i().then(o=>n(o.transaction(e,s).objectStore(e)))}let Ad;function Yu(){return Ad||(Ad=yN("keyval-store","keyval")),Ad}function J0(r,e=Yu()){return e("readonly",t=>yo(t.get(r)))}function p3(r,e,t=Yu()){return t("readwrite",i=>(i.put(e,r),yo(i.transaction)))}function g3(r,e=Yu()){return e("readwrite",t=>(t.delete(r),yo(t.transaction)))}function y3(r=Yu()){return r("readwrite",e=>(e.clear(),yo(e.transaction)))}function w3(r,e){return r.openCursor().onsuccess=function(){this.result&&(e(this.result),this.result.continue())},yo(r.transaction)}function m3(r=Yu()){return r("readonly",e=>{if(e.getAllKeys)return yo(e.getAllKeys());const t=[];return w3(e,i=>t.push(i.key)).then(()=>t)})}const b3=r=>JSON.stringify(r,(e,t)=>typeof t=="bigint"?t.toString()+"n":t),M3=r=>{const e=/([\[:])?(\d{17,}|(?:[9](?:[1-9]07199254740991|0[1-9]7199254740991|00[8-9]199254740991|007[2-9]99254740991|007199[3-9]54740991|0071992[6-9]4740991|00719925[5-9]740991|007199254[8-9]40991|0071992547[5-9]0991|00719925474[1-9]991|00719925474099[2-9])))([,\}\]])/g,t=r.replace(e,'$1"$2n"$3');return JSON.parse(t,(i,s)=>typeof s=="string"&&s.match(/^\d+n$/)?BigInt(s.substring(0,s.length-1)):s)};function Zs(r){if(typeof r!="string")throw new Error(`Cannot safe json parse value of type ${typeof r}`);try{return M3(r)}catch{return r}}function Es(r){return typeof r=="string"?r:b3(r)||""}const N3="idb-keyval";var v3=(r={})=>{const e=r.base&&r.base.length>0?`${r.base}:`:"",t=s=>e+s;let i;return r.dbName&&r.storeName&&(i=yN(r.dbName,r.storeName)),{name:N3,options:r,async hasItem(s){return!(typeof await J0(t(s),i)>"u")},async getItem(s){return await J0(t(s),i)??null},setItem(s,n){return p3(t(s),n,i)},removeItem(s){return g3(t(s),i)},getKeys(){return m3(i)},clear(){return y3(i)}}};const I3="WALLET_CONNECT_V2_INDEXED_DB",D3="keyvaluestorage";let A3=class{constructor(){this.indexedDb=f3({driver:v3({dbName:I3,storeName:D3})})}async getKeys(){return this.indexedDb.getKeys()}async getEntries(){return(await this.indexedDb.getItems(await this.indexedDb.getKeys())).map(e=>[e.key,e.value])}async getItem(e){const t=await this.indexedDb.getItem(e);if(t!==null)return t}async setItem(e,t){await this.indexedDb.setItem(e,Es(t))}async removeItem(e){await this.indexedDb.removeItem(e)}};var Ed=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},nh={exports:{}};(function(){let r;function e(){}r=e,r.prototype.getItem=function(t){return this.hasOwnProperty(t)?String(this[t]):null},r.prototype.setItem=function(t,i){this[t]=String(i)},r.prototype.removeItem=function(t){delete this[t]},r.prototype.clear=function(){const t=this;Object.keys(t).forEach(function(i){t[i]=void 0,delete t[i]})},r.prototype.key=function(t){return t=t||0,Object.keys(this)[t]},r.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),typeof Ed<"u"&&Ed.localStorage?nh.exports=Ed.localStorage:typeof window<"u"&&window.localStorage?nh.exports=window.localStorage:nh.exports=new e})();function E3(r){var e;return[r[0],Zs((e=r[1])!=null?e:"")]}let T3=class{constructor(){this.localStorage=nh.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(E3)}async getItem(e){const t=this.localStorage.getItem(e);if(t!==null)return Zs(t)}async setItem(e,t){this.localStorage.setItem(e,Es(t))}async removeItem(e){this.localStorage.removeItem(e)}};const S3="wc_storage_version",X0=1,j3=async(r,e,t)=>{const i=S3,s=await e.getItem(i);if(s&&s>=X0){t(e);return}const n=await r.getKeys();if(!n.length){t(e);return}const o=[];for(;n.length;){const a=n.shift();if(!a)continue;const u=a.toLowerCase();if(u.includes("wc@")||u.includes("walletconnect")||u.includes("wc_")||u.includes("wallet_connect")){const c=await r.getItem(a);await e.setItem(a,c),o.push(a)}}await e.setItem(i,X0),t(e),x3(r,o)},x3=async(r,e)=>{e.length&&e.forEach(async t=>{await r.removeItem(t)})};let wN=class{constructor(){this.initialized=!1,this.setInitialized=t=>{this.storage=t,this.initialized=!0};const e=new T3;this.storage=e;try{const t=new A3;j3(e,t,this.setInitialized)}catch{this.initialized=!0}}async getKeys(){return await this.initialize(),this.storage.getKeys()}async getEntries(){return await this.initialize(),this.storage.getEntries()}async getItem(e){return await this.initialize(),this.storage.getItem(e)}async setItem(e,t){return await this.initialize(),this.storage.setItem(e,t)}async removeItem(e){return await this.initialize(),this.storage.removeItem(e)}async initialize(){this.initialized||await new Promise(e=>{const t=setInterval(()=>{this.initialized&&(clearInterval(t),e())},20)})}};var Td,ey;function C3(){if(ey)return Td;ey=1;function r(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}Td=e;function e(t,i,s){var n=s&&s.stringify||r,o=1;if(typeof t=="object"&&t!==null){var a=i.length+o;if(a===1)return t;var u=new Array(a);u[0]=n(t);for(var c=1;c<a;c++)u[c]=n(i[c]);return u.join(" ")}if(typeof t!="string")return t;var l=i.length;if(l===0)return t;for(var h="",f=1-o,w=-1,g=t&&t.length||0,m=0;m<g;){if(t.charCodeAt(m)===37&&m+1<g){switch(w=w>-1?w:0,t.charCodeAt(m+1)){case 100:case 102:if(f>=l||i[f]==null)break;w<m&&(h+=t.slice(w,m)),h+=Number(i[f]),w=m+2,m++;break;case 105:if(f>=l||i[f]==null)break;w<m&&(h+=t.slice(w,m)),h+=Math.floor(Number(i[f])),w=m+2,m++;break;case 79:case 111:case 106:if(f>=l||i[f]===void 0)break;w<m&&(h+=t.slice(w,m));var E=typeof i[f];if(E==="string"){h+="'"+i[f]+"'",w=m+2,m++;break}if(E==="function"){h+=i[f].name||"<anonymous>",w=m+2,m++;break}h+=n(i[f]),w=m+2,m++;break;case 115:if(f>=l)break;w<m&&(h+=t.slice(w,m)),h+=String(i[f]),w=m+2,m++;break;case 37:w<m&&(h+=t.slice(w,m)),h+="%",w=m+2,m++,f--;break}++f}++m}return w===-1?t:(w<g&&(h+=t.slice(w)),h)}return Td}var Sd,ty;function _3(){if(ty)return Sd;ty=1;const r=C3();Sd=s;const e=_().console||{},t={mapHttpRequest:g,mapHttpResponse:g,wrapRequestSerializer:m,wrapResponseSerializer:m,wrapErrorSerializer:m,req:g,res:g,err:f};function i(S,L){return Array.isArray(S)?S.filter(function(z){return z!=="!stdSerializers.err"}):S===!0?Object.keys(L):!1}function s(S){S=S||{},S.browser=S.browser||{};const L=S.browser.transmit;if(L&&typeof L.send!="function")throw Error("pino: transmit option must have a send function");const k=S.browser.write||e;S.browser.write&&(S.browser.asObject=!0);const z=S.serializers||{},U=i(S.browser.serialize,z);let T=S.browser.serialize;Array.isArray(S.browser.serialize)&&S.browser.serialize.indexOf("!stdSerializers.err")>-1&&(T=!1);const d=["error","fatal","warn","info","debug","trace"];typeof k=="function"&&(k.error=k.fatal=k.warn=k.info=k.debug=k.trace=k),S.enabled===!1&&(S.level="silent");const y=S.level||"info",N=Object.create(k);N.log||(N.log=E),Object.defineProperty(N,"levelVal",{get:M}),Object.defineProperty(N,"level",{get:I,set:j});const b={transmit:L,serialize:U,asObject:S.browser.asObject,levels:d,timestamp:w(S)};N.levels=s.levels,N.level=y,N.setMaxListeners=N.getMaxListeners=N.emit=N.addListener=N.on=N.prependListener=N.once=N.prependOnceListener=N.removeListener=N.removeAllListeners=N.listeners=N.listenerCount=N.eventNames=N.write=N.flush=E,N.serializers=z,N._serialize=U,N._stdErrSerialize=T,N.child=v,L&&(N._logEvent=h());function M(){return this.level==="silent"?1/0:this.levels.values[this.level]}function I(){return this._level}function j(p){if(p!=="silent"&&!this.levels.values[p])throw Error("unknown level "+p);this._level=p,n(b,N,"error","log"),n(b,N,"fatal","error"),n(b,N,"warn","error"),n(b,N,"info","log"),n(b,N,"debug","log"),n(b,N,"trace","log")}function v(p,x){if(!p)throw new Error("missing bindings for child Pino");x=x||{},U&&p.serializers&&(x.serializers=p.serializers);const F=x.serializers;if(U&&F){var V=Object.assign({},z,F),Q=S.browser.serialize===!0?Object.keys(V):U;delete p.serializers,u([p],Q,V,this._stdErrSerialize)}function W(K){this._childLevel=(K._childLevel|0)+1,this.error=c(K,p,"error"),this.fatal=c(K,p,"fatal"),this.warn=c(K,p,"warn"),this.info=c(K,p,"info"),this.debug=c(K,p,"debug"),this.trace=c(K,p,"trace"),V&&(this.serializers=V,this._serialize=Q),L&&(this._logEvent=h([].concat(K._logEvent.bindings,p)))}return W.prototype=this,new W(this)}return N}s.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},s.stdSerializers=t,s.stdTimeFunctions=Object.assign({},{nullTime:A,epochTime:D,unixTime:O,isoTime:C});function n(S,L,k,z){const U=Object.getPrototypeOf(L);L[k]=L.levelVal>L.levels.values[k]?E:U[k]?U[k]:e[k]||e[z]||E,o(S,L,k)}function o(S,L,k){!S.transmit&&L[k]===E||(L[k]=(function(z){return function(){const T=S.timestamp(),d=new Array(arguments.length),y=Object.getPrototypeOf&&Object.getPrototypeOf(this)===e?e:this;for(var N=0;N<d.length;N++)d[N]=arguments[N];if(S.serialize&&!S.asObject&&u(d,this._serialize,this.serializers,this._stdErrSerialize),S.asObject?z.call(y,a(this,k,d,T)):z.apply(y,d),S.transmit){const b=S.transmit.level||L.level,M=s.levels.values[b],I=s.levels.values[k];if(I<M)return;l(this,{ts:T,methodLevel:k,methodValue:I,transmitValue:s.levels.values[S.transmit.level||L.level],send:S.transmit.send,val:L.levelVal},d)}}})(L[k]))}function a(S,L,k,z){S._serialize&&u(k,S._serialize,S.serializers,S._stdErrSerialize);const U=k.slice();let T=U[0];const d={};z&&(d.time=z),d.level=s.levels.values[L];let y=(S._childLevel|0)+1;if(y<1&&(y=1),T!==null&&typeof T=="object"){for(;y--&&typeof U[0]=="object";)Object.assign(d,U.shift());T=U.length?r(U.shift(),U):void 0}else typeof T=="string"&&(T=r(U.shift(),U));return T!==void 0&&(d.msg=T),d}function u(S,L,k,z){for(const U in S)if(z&&S[U]instanceof Error)S[U]=s.stdSerializers.err(S[U]);else if(typeof S[U]=="object"&&!Array.isArray(S[U]))for(const T in S[U])L&&L.indexOf(T)>-1&&T in k&&(S[U][T]=k[T](S[U][T]))}function c(S,L,k){return function(){const z=new Array(1+arguments.length);z[0]=L;for(var U=1;U<z.length;U++)z[U]=arguments[U-1];return S[k].apply(this,z)}}function l(S,L,k){const z=L.send,U=L.ts,T=L.methodLevel,d=L.methodValue,y=L.val,N=S._logEvent.bindings;u(k,S._serialize||Object.keys(S.serializers),S.serializers,S._stdErrSerialize===void 0?!0:S._stdErrSerialize),S._logEvent.ts=U,S._logEvent.messages=k.filter(function(b){return N.indexOf(b)===-1}),S._logEvent.level.label=T,S._logEvent.level.value=d,z(T,S._logEvent,y),S._logEvent=h(N)}function h(S){return{ts:0,messages:[],bindings:S||[],level:{label:"",value:0}}}function f(S){const L={type:S.constructor.name,msg:S.message,stack:S.stack};for(const k in S)L[k]===void 0&&(L[k]=S[k]);return L}function w(S){return typeof S.timestamp=="function"?S.timestamp:S.timestamp===!1?A:D}function g(){return{}}function m(S){return S}function E(){}function A(){return!1}function D(){return Date.now()}function O(){return Math.round(Date.now()/1e3)}function C(){return new Date(Date.now()).toISOString()}function _(){function S(L){return typeof L<"u"&&L}try{return typeof globalThis<"u"||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch{return S(self)||S(window)||S(this)||{}}}return Sd}var la=_3();const jn=Yh(la),O3={level:"info"},Qu="custom_context",jg=1e3*1024;let z3=class{constructor(e){this.nodeValue=e,this.sizeInBytes=new TextEncoder().encode(this.nodeValue).length,this.next=null}get value(){return this.nodeValue}get size(){return this.sizeInBytes}},ry=class{constructor(e){this.head=null,this.tail=null,this.lengthInNodes=0,this.maxSizeInBytes=e,this.sizeInBytes=0}append(e){const t=new z3(e);if(t.size>this.maxSizeInBytes)throw new Error(`[LinkedList] Value too big to insert into list: ${e} with size ${t.size}`);for(;this.size+t.size>this.maxSizeInBytes;)this.shift();this.head?(this.tail&&(this.tail.next=t),this.tail=t):(this.head=t,this.tail=t),this.lengthInNodes++,this.sizeInBytes+=t.size}shift(){if(!this.head)return;const e=this.head;this.head=this.head.next,this.head||(this.tail=null),this.lengthInNodes--,this.sizeInBytes-=e.size}toArray(){const e=[];let t=this.head;for(;t!==null;)e.push(t.value),t=t.next;return e}get length(){return this.lengthInNodes}get size(){return this.sizeInBytes}toOrderedArray(){return Array.from(this)}[Symbol.iterator](){let e=this.head;return{next:()=>{if(!e)return{done:!0,value:null};const t=e.value;return e=e.next,{done:!1,value:t}}}}},mN=class{constructor(e,t=jg){this.level=e??"error",this.levelValue=la.levels.values[this.level],this.MAX_LOG_SIZE_IN_BYTES=t,this.logs=new ry(this.MAX_LOG_SIZE_IN_BYTES)}forwardToConsole(e,t){t===la.levels.values.error?console.error(e):t===la.levels.values.warn?console.warn(e):t===la.levels.values.debug?console.debug(e):t===la.levels.values.trace?console.trace(e):console.log(e)}appendToLogs(e){this.logs.append(Es({timestamp:new Date().toISOString(),log:e}));const t=typeof e=="string"?JSON.parse(e).level:e.level;t>=this.levelValue&&this.forwardToConsole(e,t)}getLogs(){return this.logs}clearLogs(){this.logs=new ry(this.MAX_LOG_SIZE_IN_BYTES)}getLogArray(){return Array.from(this.logs)}logsToBlob(e){const t=this.getLogArray();return t.push(Es({extraMetadata:e})),new Blob(t,{type:"application/json"})}},L3=class{constructor(e,t=jg){this.baseChunkLogger=new mN(e,t)}write(e){this.baseChunkLogger.appendToLogs(e)}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs()}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}downloadLogsBlobInBrowser(e){const t=URL.createObjectURL(this.logsToBlob(e)),i=document.createElement("a");i.href=t,i.download=`walletconnect-logs-${new Date().toISOString()}.txt`,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(t)}},P3=class{constructor(e,t=jg){this.baseChunkLogger=new mN(e,t)}write(e){this.baseChunkLogger.appendToLogs(e)}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs()}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}};var k3=Object.defineProperty,U3=Object.defineProperties,R3=Object.getOwnPropertyDescriptors,iy=Object.getOwnPropertySymbols,$3=Object.prototype.hasOwnProperty,F3=Object.prototype.propertyIsEnumerable,sy=(r,e,t)=>e in r?k3(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,vh=(r,e)=>{for(var t in e||(e={}))$3.call(e,t)&&sy(r,t,e[t]);if(iy)for(var t of iy(e))F3.call(e,t)&&sy(r,t,e[t]);return r},Ih=(r,e)=>U3(r,R3(e));function Hs(r){return Ih(vh({},r),{level:r?.level||O3.level})}function B3(r,e=Qu){return r[e]||""}function Y3(r,e,t=Qu){return r[t]=e,r}function dt(r,e=Qu){let t="";return typeof r.bindings>"u"?t=B3(r,e):t=r.bindings().context||"",t}function Q3(r,e,t=Qu){const i=dt(r,t);return i.trim()?`${i}/${e}`:e}function qe(r,e,t=Qu){const i=Q3(r,e,t),s=r.child({context:i});return Y3(s,i,t)}function V3(r){var e,t;const i=new L3((e=r.opts)==null?void 0:e.level,r.maxSizeInBytes);return{logger:jn(Ih(vh({},r.opts),{level:"trace",browser:Ih(vh({},(t=r.opts)==null?void 0:t.browser),{write:s=>i.write(s)})})),chunkLoggerController:i}}function W3(r){var e;const t=new P3((e=r.opts)==null?void 0:e.level,r.maxSizeInBytes);return{logger:jn(Ih(vh({},r.opts),{level:"trace"}),t),chunkLoggerController:t}}function xg(r){return typeof r.loggerOverride<"u"&&typeof r.loggerOverride!="string"?{logger:r.loggerOverride,chunkLoggerController:null}:typeof window<"u"?V3(r):W3(r)}var q3=Object.defineProperty,Z3=(r,e,t)=>e in r?q3(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ny=(r,e,t)=>Z3(r,typeof e!="symbol"?e+"":e,t);let H3=class extends Ti{constructor(e){super(),this.opts=e,ny(this,"protocol","wc"),ny(this,"version",2)}};var G3=Object.defineProperty,K3=(r,e,t)=>e in r?G3(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,J3=(r,e,t)=>K3(r,e+"",t);let X3=class extends Ti{constructor(e,t){super(),this.core=e,this.logger=t,J3(this,"records",new Map)}},eE=class{constructor(e,t){this.logger=e,this.core=t}},tE=class extends Ti{constructor(e,t){super(),this.relayer=e,this.logger=t}},rE=class extends Ti{constructor(e){super()}},iE=class{constructor(e,t,i,s){this.core=e,this.logger=t,this.name=i}},sE=class extends Ti{constructor(e,t){super(),this.relayer=e,this.logger=t}},nE=class extends Ti{constructor(e,t){super(),this.core=e,this.logger=t}},oE=class{constructor(e,t,i){this.core=e,this.logger=t,this.store=i}},aE=class{constructor(e,t){this.projectId=e,this.logger=t}},cE=class{constructor(e,t,i){this.core=e,this.logger=t,this.telemetryEnabled=i}};function uE(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function bN(r,...e){if(!uE(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function oy(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 lE(r,e){bN(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}const xo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;const jd=r=>new DataView(r.buffer,r.byteOffset,r.byteLength);function hE(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function MN(r){return typeof r=="string"&&(r=hE(r)),bN(r),r}let dE=class{clone(){return this._cloneInto()}};function fE(r){const e=i=>r().update(MN(i)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function NN(r=32){if(xo&&typeof xo.getRandomValues=="function")return xo.getRandomValues(new Uint8Array(r));if(xo&&typeof xo.randomBytes=="function")return xo.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}function pE(r,e,t,i){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,i);const s=BigInt(32),n=BigInt(4294967295),o=Number(t>>s&n),a=Number(t&n),u=i?4:0,c=i?0:4;r.setUint32(e+u,o,i),r.setUint32(e+c,a,i)}let gE=class extends dE{constructor(e,t,i,s){super(),this.blockLen=e,this.outputLen=t,this.padOffset=i,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=jd(this.buffer)}update(e){oy(this);const{view:t,buffer:i,blockLen:s}=this;e=MN(e);const n=e.length;for(let o=0;o<n;){const a=Math.min(s-this.pos,n-o);if(a===s){const u=jd(e);for(;s<=n-o;o+=s)this.process(u,o);continue}i.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){oy(this),lE(e,this),this.finished=!0;const{buffer:t,view:i,blockLen:s,isLE:n}=this;let{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>s-o&&(this.process(i,0),o=0);for(let h=o;h<s;h++)t[h]=0;pE(i,s-8,BigInt(this.length*8),n),this.process(i,0);const a=jd(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=u/4,l=this.get();if(c>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<c;h++)a.setUint32(4*h,l[h],n)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const i=e.slice(0,t);return this.destroy(),i}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:i,length:s,finished:n,destroyed:o,pos:a}=this;return e.length=s,e.pos=a,e.finished=n,e.destroyed=o,s%t&&e.buffer.set(i),e}};const Al=BigInt(2**32-1),gp=BigInt(32);function vN(r,e=!1){return e?{h:Number(r&Al),l:Number(r>>gp&Al)}:{h:Number(r>>gp&Al)|0,l:Number(r&Al)|0}}function yE(r,e=!1){let t=new Uint32Array(r.length),i=new Uint32Array(r.length);for(let s=0;s<r.length;s++){const{h:n,l:o}=vN(r[s],e);[t[s],i[s]]=[n,o]}return[t,i]}const wE=(r,e)=>BigInt(r>>>0)<<gp|BigInt(e>>>0),mE=(r,e,t)=>r>>>t,bE=(r,e,t)=>r<<32-t|e>>>t,ME=(r,e,t)=>r>>>t|e<<32-t,NE=(r,e,t)=>r<<32-t|e>>>t,vE=(r,e,t)=>r<<64-t|e>>>t-32,IE=(r,e,t)=>r>>>t-32|e<<64-t,DE=(r,e)=>e,AE=(r,e)=>r,EE=(r,e,t)=>r<<t|e>>>32-t,TE=(r,e,t)=>e<<t|r>>>32-t,SE=(r,e,t)=>e<<t-32|r>>>64-t,jE=(r,e,t)=>r<<t-32|e>>>64-t;function xE(r,e,t,i){const s=(e>>>0)+(i>>>0);return{h:r+t+(s/2**32|0)|0,l:s|0}}const CE=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),_E=(r,e,t,i)=>e+t+i+(r/2**32|0)|0,OE=(r,e,t,i)=>(r>>>0)+(e>>>0)+(t>>>0)+(i>>>0),zE=(r,e,t,i,s)=>e+t+i+s+(r/2**32|0)|0,LE=(r,e,t,i,s)=>(r>>>0)+(e>>>0)+(t>>>0)+(i>>>0)+(s>>>0),PE=(r,e,t,i,s,n)=>e+t+i+s+n+(r/2**32|0)|0,ge={fromBig:vN,split:yE,toBig:wE,shrSH:mE,shrSL:bE,rotrSH:ME,rotrSL:NE,rotrBH:vE,rotrBL:IE,rotr32H:DE,rotr32L:AE,rotlSH:EE,rotlSL:TE,rotlBH:SE,rotlBL:jE,add:xE,add3L:CE,add3H:_E,add4L:OE,add4H:zE,add5H:PE,add5L:LE},[kE,UE]=ge.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),tn=new Uint32Array(80),rn=new Uint32Array(80);let RE=class extends gE{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:i,Bl:s,Ch:n,Cl:o,Dh:a,Dl:u,Eh:c,El:l,Fh:h,Fl:f,Gh:w,Gl:g,Hh:m,Hl:E}=this;return[e,t,i,s,n,o,a,u,c,l,h,f,w,g,m,E]}set(e,t,i,s,n,o,a,u,c,l,h,f,w,g,m,E){this.Ah=e|0,this.Al=t|0,this.Bh=i|0,this.Bl=s|0,this.Ch=n|0,this.Cl=o|0,this.Dh=a|0,this.Dl=u|0,this.Eh=c|0,this.El=l|0,this.Fh=h|0,this.Fl=f|0,this.Gh=w|0,this.Gl=g|0,this.Hh=m|0,this.Hl=E|0}process(e,t){for(let O=0;O<16;O++,t+=4)tn[O]=e.getUint32(t),rn[O]=e.getUint32(t+=4);for(let O=16;O<80;O++){const C=tn[O-15]|0,_=rn[O-15]|0,S=ge.rotrSH(C,_,1)^ge.rotrSH(C,_,8)^ge.shrSH(C,_,7),L=ge.rotrSL(C,_,1)^ge.rotrSL(C,_,8)^ge.shrSL(C,_,7),k=tn[O-2]|0,z=rn[O-2]|0,U=ge.rotrSH(k,z,19)^ge.rotrBH(k,z,61)^ge.shrSH(k,z,6),T=ge.rotrSL(k,z,19)^ge.rotrBL(k,z,61)^ge.shrSL(k,z,6),d=ge.add4L(L,T,rn[O-7],rn[O-16]),y=ge.add4H(d,S,U,tn[O-7],tn[O-16]);tn[O]=y|0,rn[O]=d|0}let{Ah:i,Al:s,Bh:n,Bl:o,Ch:a,Cl:u,Dh:c,Dl:l,Eh:h,El:f,Fh:w,Fl:g,Gh:m,Gl:E,Hh:A,Hl:D}=this;for(let O=0;O<80;O++){const C=ge.rotrSH(h,f,14)^ge.rotrSH(h,f,18)^ge.rotrBH(h,f,41),_=ge.rotrSL(h,f,14)^ge.rotrSL(h,f,18)^ge.rotrBL(h,f,41),S=h&w^~h&m,L=f&g^~f&E,k=ge.add5L(D,_,L,UE[O],rn[O]),z=ge.add5H(k,A,C,S,kE[O],tn[O]),U=k|0,T=ge.rotrSH(i,s,28)^ge.rotrBH(i,s,34)^ge.rotrBH(i,s,39),d=ge.rotrSL(i,s,28)^ge.rotrBL(i,s,34)^ge.rotrBL(i,s,39),y=i&n^i&a^n&a,N=s&o^s&u^o&u;A=m|0,D=E|0,m=w|0,E=g|0,w=h|0,g=f|0,{h,l:f}=ge.add(c|0,l|0,z|0,U|0),c=a|0,l=u|0,a=n|0,u=o|0,n=i|0,o=s|0;const b=ge.add3L(U,d,N);i=ge.add3H(b,z,T,y),s=b|0}({h:i,l:s}=ge.add(this.Ah|0,this.Al|0,i|0,s|0)),{h:n,l:o}=ge.add(this.Bh|0,this.Bl|0,n|0,o|0),{h:a,l:u}=ge.add(this.Ch|0,this.Cl|0,a|0,u|0),{h:c,l}=ge.add(this.Dh|0,this.Dl|0,c|0,l|0),{h,l:f}=ge.add(this.Eh|0,this.El|0,h|0,f|0),{h:w,l:g}=ge.add(this.Fh|0,this.Fl|0,w|0,g|0),{h:m,l:E}=ge.add(this.Gh|0,this.Gl|0,m|0,E|0),{h:A,l:D}=ge.add(this.Hh|0,this.Hl|0,A|0,D|0),this.set(i,s,n,o,a,u,c,l,h,f,w,g,m,E,A,D)}roundClean(){tn.fill(0),rn.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};const $E=fE(()=>new RE);const Cg=BigInt(0),IN=BigInt(1),FE=BigInt(2);function _g(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function Og(r){if(!_g(r))throw new Error("Uint8Array expected")}function xd(r,e){if(typeof e!="boolean")throw new Error(r+" boolean expected, got "+e)}const BE=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function zg(r){Og(r);let e="";for(let t=0;t<r.length;t++)e+=BE[r[t]];return e}function DN(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return r===""?Cg:BigInt("0x"+r)}const _s={_0:48,_9:57,A:65,F:70,a:97,f:102};function ay(r){if(r>=_s._0&&r<=_s._9)return r-_s._0;if(r>=_s.A&&r<=_s.F)return r-(_s.A-10);if(r>=_s.a&&r<=_s.f)return r-(_s.a-10)}function AN(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);const e=r.length,t=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const i=new Uint8Array(t);for(let s=0,n=0;s<t;s++,n+=2){const o=ay(r.charCodeAt(n)),a=ay(r.charCodeAt(n+1));if(o===void 0||a===void 0){const u=r[n]+r[n+1];throw new Error('hex string expected, got non-hex character "'+u+'" at index '+n)}i[s]=o*16+a}return i}function YE(r){return DN(zg(r))}function oh(r){return Og(r),DN(zg(Uint8Array.from(r).reverse()))}function EN(r,e){return AN(r.toString(16).padStart(e*2,"0"))}function yp(r,e){return EN(r,e).reverse()}function Os(r,e,t){let i;if(typeof e=="string")try{i=AN(e)}catch(n){throw new Error(r+" must be hex string or Uint8Array, cause: "+n)}else if(_g(e))i=Uint8Array.from(e);else throw new Error(r+" must be hex string or Uint8Array");const s=i.length;if(typeof t=="number"&&s!==t)throw new Error(r+" of length "+t+" expected, got "+s);return i}function cy(...r){let e=0;for(let i=0;i<r.length;i++){const s=r[i];Og(s),e+=s.length}const t=new Uint8Array(e);for(let i=0,s=0;i<r.length;i++){const n=r[i];t.set(n,s),s+=n.length}return t}const Cd=r=>typeof r=="bigint"&&Cg<=r;function QE(r,e,t){return Cd(r)&&Cd(e)&&Cd(t)&&e<=r&&r<t}function mc(r,e,t,i){if(!QE(e,t,i))throw new Error("expected valid "+r+": "+t+" <= n < "+i+", got "+e)}function VE(r){let e;for(e=0;r>Cg;r>>=IN,e+=1);return e}const WE=r=>(FE<<BigInt(r-1))-IN,qE={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"||_g(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 Lg(r,e,t={}){const i=(s,n,o)=>{const a=qE[n];if(typeof a!="function")throw new Error("invalid validator function");const u=r[s];if(!(o&&u===void 0)&&!a(u,r))throw new Error("param "+String(s)+" is invalid. Expected "+n+", got "+u)};for(const[s,n]of Object.entries(e))i(s,n,!1);for(const[s,n]of Object.entries(t))i(s,n,!0);return r}function uy(r){const e=new WeakMap;return(t,...i)=>{const s=e.get(t);if(s!==void 0)return s;const n=r(t,...i);return e.set(t,n),n}}const Sr=BigInt(0),nr=BigInt(1),Zn=BigInt(2),ZE=BigInt(3),wp=BigInt(4),ly=BigInt(5),hy=BigInt(8);function gr(r,e){const t=r%e;return t>=Sr?t:e+t}function HE(r,e,t){if(e<Sr)throw new Error("invalid exponent, negatives unsupported");if(t<=Sr)throw new Error("invalid modulus");if(t===nr)return Sr;let i=nr;for(;e>Sr;)e&nr&&(i=i*r%t),r=r*r%t,e>>=nr;return i}function ds(r,e,t){let i=r;for(;e-- >Sr;)i*=i,i%=t;return i}function dy(r,e){if(r===Sr)throw new Error("invert: expected non-zero number");if(e<=Sr)throw new Error("invert: expected positive modulus, got "+e);let t=gr(r,e),i=e,s=Sr,n=nr;for(;t!==Sr;){const o=i/t,a=i%t,u=s-n*o;i=t,t=a,s=n,n=u}if(i!==nr)throw new Error("invert: does not exist");return gr(s,e)}function GE(r){const e=(r-nr)/Zn;let t,i,s;for(t=r-nr,i=0;t%Zn===Sr;t/=Zn,i++);for(s=Zn;s<r&&HE(s,e,r)!==r-nr;s++)if(s>1e3)throw new Error("Cannot find square root: likely non-prime P");if(i===1){const o=(r+nr)/wp;return function(a,u){const c=a.pow(u,o);if(!a.eql(a.sqr(c),u))throw new Error("Cannot find square root");return c}}const n=(t+nr)/Zn;return function(o,a){if(o.pow(a,e)===o.neg(o.ONE))throw new Error("Cannot find square root");let u=i,c=o.pow(o.mul(o.ONE,s),t),l=o.pow(a,n),h=o.pow(a,t);for(;!o.eql(h,o.ONE);){if(o.eql(h,o.ZERO))return o.ZERO;let f=1;for(let g=o.sqr(h);f<u&&!o.eql(g,o.ONE);f++)g=o.sqr(g);const w=o.pow(c,nr<<BigInt(u-f-1));c=o.sqr(w),l=o.mul(l,w),h=o.mul(h,c),u=f}return l}}function KE(r){if(r%wp===ZE){const e=(r+nr)/wp;return function(t,i){const s=t.pow(i,e);if(!t.eql(t.sqr(s),i))throw new Error("Cannot find square root");return s}}if(r%hy===ly){const e=(r-ly)/hy;return function(t,i){const s=t.mul(i,Zn),n=t.pow(s,e),o=t.mul(i,n),a=t.mul(t.mul(o,Zn),n),u=t.mul(o,t.sub(a,t.ONE));if(!t.eql(t.sqr(u),i))throw new Error("Cannot find square root");return u}}return GE(r)}const JE=(r,e)=>(gr(r,e)&nr)===nr,XE=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function eT(r){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=XE.reduce((i,s)=>(i[s]="function",i),e);return Lg(r,t)}function tT(r,e,t){if(t<Sr)throw new Error("invalid exponent, negatives unsupported");if(t===Sr)return r.ONE;if(t===nr)return e;let i=r.ONE,s=e;for(;t>Sr;)t&nr&&(i=r.mul(i,s)),s=r.sqr(s),t>>=nr;return i}function rT(r,e){const t=new Array(e.length),i=e.reduce((n,o,a)=>r.is0(o)?n:(t[a]=n,r.mul(n,o)),r.ONE),s=r.inv(i);return e.reduceRight((n,o,a)=>r.is0(o)?n:(t[a]=r.mul(n,t[a]),r.mul(n,o)),s),t}function TN(r,e){const t=e!==void 0?e:r.toString(2).length,i=Math.ceil(t/8);return{nBitLength:t,nByteLength:i}}function SN(r,e,t=!1,i={}){if(r<=Sr)throw new Error("invalid field: expected ORDER > 0, got "+r);const{nBitLength:s,nByteLength:n}=TN(r,e);if(n>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let o;const a=Object.freeze({ORDER:r,isLE:t,BITS:s,BYTES:n,MASK:WE(s),ZERO:Sr,ONE:nr,create:u=>gr(u,r),isValid:u=>{if(typeof u!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof u);return Sr<=u&&u<r},is0:u=>u===Sr,isOdd:u=>(u&nr)===nr,neg:u=>gr(-u,r),eql:(u,c)=>u===c,sqr:u=>gr(u*u,r),add:(u,c)=>gr(u+c,r),sub:(u,c)=>gr(u-c,r),mul:(u,c)=>gr(u*c,r),pow:(u,c)=>tT(a,u,c),div:(u,c)=>gr(u*dy(c,r),r),sqrN:u=>u*u,addN:(u,c)=>u+c,subN:(u,c)=>u-c,mulN:(u,c)=>u*c,inv:u=>dy(u,r),sqrt:i.sqrt||(u=>(o||(o=KE(r)),o(a,u))),invertBatch:u=>rT(a,u),cmov:(u,c,l)=>l?c:u,toBytes:u=>t?yp(u,n):EN(u,n),fromBytes:u=>{if(u.length!==n)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+u.length);return t?oh(u):YE(u)}});return Object.freeze(a)}const fy=BigInt(0),El=BigInt(1);function _d(r,e){const t=e.negate();return r?t:e}function jN(r,e){if(!Number.isSafeInteger(r)||r<=0||r>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+r)}function Od(r,e){jN(r,e);const t=Math.ceil(e/r)+1,i=2**(r-1);return{windows:t,windowSize:i}}function iT(r,e){if(!Array.isArray(r))throw new Error("array expected");r.forEach((t,i)=>{if(!(t instanceof e))throw new Error("invalid point at index "+i)})}function sT(r,e){if(!Array.isArray(r))throw new Error("array of scalars expected");r.forEach((t,i)=>{if(!e.isValid(t))throw new Error("invalid scalar at index "+i)})}const zd=new WeakMap,xN=new WeakMap;function Ld(r){return xN.get(r)||1}function nT(r,e){return{constTimeNegate:_d,hasPrecomputes(t){return Ld(t)!==1},unsafeLadder(t,i,s=r.ZERO){let n=t;for(;i>fy;)i&El&&(s=s.add(n)),n=n.double(),i>>=El;return s},precomputeWindow(t,i){const{windows:s,windowSize:n}=Od(i,e),o=[];let a=t,u=a;for(let c=0;c<s;c++){u=a,o.push(u);for(let l=1;l<n;l++)u=u.add(a),o.push(u);a=u.double()}return o},wNAF(t,i,s){const{windows:n,windowSize:o}=Od(t,e);let a=r.ZERO,u=r.BASE;const c=BigInt(2**t-1),l=2**t,h=BigInt(t);for(let f=0;f<n;f++){const w=f*o;let g=Number(s&c);s>>=h,g>o&&(g-=l,s+=El);const m=w,E=w+Math.abs(g)-1,A=f%2!==0,D=g<0;g===0?u=u.add(_d(A,i[m])):a=a.add(_d(D,i[E]))}return{p:a,f:u}},wNAFUnsafe(t,i,s,n=r.ZERO){const{windows:o,windowSize:a}=Od(t,e),u=BigInt(2**t-1),c=2**t,l=BigInt(t);for(let h=0;h<o;h++){const f=h*a;if(s===fy)break;let w=Number(s&u);if(s>>=l,w>a&&(w-=c,s+=El),w===0)continue;let g=i[f+Math.abs(w)-1];w<0&&(g=g.negate()),n=n.add(g)}return n},getPrecomputes(t,i,s){let n=zd.get(i);return n||(n=this.precomputeWindow(i,t),t!==1&&zd.set(i,s(n))),n},wNAFCached(t,i,s){const n=Ld(t);return this.wNAF(n,this.getPrecomputes(n,t,s),i)},wNAFCachedUnsafe(t,i,s,n){const o=Ld(t);return o===1?this.unsafeLadder(t,i,n):this.wNAFUnsafe(o,this.getPrecomputes(o,t,s),i,n)},setWindowSize(t,i){jN(i,e),xN.set(t,i),zd.delete(t)}}}function oT(r,e,t,i){if(iT(t,r),sT(i,e),t.length!==i.length)throw new Error("arrays of points and scalars must have equal length");const s=r.ZERO,n=VE(BigInt(t.length)),o=n>12?n-3:n>4?n-2:n?2:1,a=(1<<o)-1,u=new Array(a+1).fill(s),c=Math.floor((e.BITS-1)/o)*o;let l=s;for(let h=c;h>=0;h-=o){u.fill(s);for(let w=0;w<i.length;w++){const g=i[w],m=Number(g>>BigInt(h)&BigInt(a));u[m]=u[m].add(t[w])}let f=s;for(let w=u.length-1,g=s;w>0;w--)g=g.add(u[w]),f=f.add(g);if(l=l.add(f),h!==0)for(let w=0;w<o;w++)l=l.double()}return l}function aT(r){return eT(r.Fp),Lg(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...TN(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}const Hi=BigInt(0),Xr=BigInt(1),Tl=BigInt(2),cT=BigInt(8),uT={zip215:!0};function lT(r){const e=aT(r);return Lg(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function hT(r){const e=lT(r),{Fp:t,n:i,prehash:s,hash:n,randomBytes:o,nByteLength:a,h:u}=e,c=Tl<<BigInt(a*8)-Xr,l=t.create,h=SN(e.n,e.nBitLength),f=e.uvRatio||((b,M)=>{try{return{isValid:!0,value:t.sqrt(b*t.inv(M))}}catch{return{isValid:!1,value:Hi}}}),w=e.adjustScalarBytes||(b=>b),g=e.domain||((b,M,I)=>{if(xd("phflag",I),M.length||I)throw new Error("Contexts/pre-hash are not supported");return b});function m(b,M){mc("coordinate "+b,M,Hi,c)}function E(b){if(!(b instanceof O))throw new Error("ExtendedPoint expected")}const A=uy((b,M)=>{const{ex:I,ey:j,ez:v}=b,p=b.is0();M==null&&(M=p?cT:t.inv(v));const x=l(I*M),F=l(j*M),V=l(v*M);if(p)return{x:Hi,y:Xr};if(V!==Xr)throw new Error("invZ was invalid");return{x,y:F}}),D=uy(b=>{const{a:M,d:I}=e;if(b.is0())throw new Error("bad point: ZERO");const{ex:j,ey:v,ez:p,et:x}=b,F=l(j*j),V=l(v*v),Q=l(p*p),W=l(Q*Q),K=l(F*M),se=l(Q*l(K+V)),oe=l(W+l(I*l(F*V)));if(se!==oe)throw new Error("bad point: equation left != right (1)");const te=l(j*v),le=l(p*x);if(te!==le)throw new Error("bad point: equation left != right (2)");return!0});class O{constructor(M,I,j,v){this.ex=M,this.ey=I,this.ez=j,this.et=v,m("x",M),m("y",I),m("z",j),m("t",v),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(M){if(M instanceof O)throw new Error("extended point not allowed");const{x:I,y:j}=M||{};return m("x",I),m("y",j),new O(I,j,Xr,l(I*j))}static normalizeZ(M){const I=t.invertBatch(M.map(j=>j.ez));return M.map((j,v)=>j.toAffine(I[v])).map(O.fromAffine)}static msm(M,I){return oT(O,h,M,I)}_setWindowSize(M){S.setWindowSize(this,M)}assertValidity(){D(this)}equals(M){E(M);const{ex:I,ey:j,ez:v}=this,{ex:p,ey:x,ez:F}=M,V=l(I*F),Q=l(p*v),W=l(j*F),K=l(x*v);return V===Q&&W===K}is0(){return this.equals(O.ZERO)}negate(){return new O(l(-this.ex),this.ey,this.ez,l(-this.et))}double(){const{a:M}=e,{ex:I,ey:j,ez:v}=this,p=l(I*I),x=l(j*j),F=l(Tl*l(v*v)),V=l(M*p),Q=I+j,W=l(l(Q*Q)-p-x),K=V+x,se=K-F,oe=V-x,te=l(W*se),le=l(K*oe),Mt=l(W*oe),me=l(se*K);return new O(te,le,me,Mt)}add(M){E(M);const{a:I,d:j}=e,{ex:v,ey:p,ez:x,et:F}=this,{ex:V,ey:Q,ez:W,et:K}=M;if(I===BigInt(-1)){const Xe=l((p-v)*(Q+V)),cs=l((p+v)*(Q-V)),Ze=l(cs-Xe);if(Ze===Hi)return this.double();const et=l(x*Tl*K),us=l(F*Tl*W),$e=us+et,Fe=cs+Xe,ls=us-et,Be=l($e*Ze),ft=l(Fe*ls),On=l($e*ls),Ce=l(Ze*Fe);return new O(Be,ft,Ce,On)}const se=l(v*V),oe=l(p*Q),te=l(F*j*K),le=l(x*W),Mt=l((v+p)*(V+Q)-se-oe),me=le-te,ve=le+te,Vt=l(oe-I*se),je=l(Mt*me),Re=l(ve*Vt),ji=l(Mt*Vt),at=l(me*ve);return new O(je,Re,at,ji)}subtract(M){return this.add(M.negate())}wNAF(M){return S.wNAFCached(this,M,O.normalizeZ)}multiply(M){const I=M;mc("scalar",I,Xr,i);const{p:j,f:v}=this.wNAF(I);return O.normalizeZ([j,v])[0]}multiplyUnsafe(M,I=O.ZERO){const j=M;return mc("scalar",j,Hi,i),j===Hi?_:this.is0()||j===Xr?this:S.wNAFCachedUnsafe(this,j,O.normalizeZ,I)}isSmallOrder(){return this.multiplyUnsafe(u).is0()}isTorsionFree(){return S.unsafeLadder(this,i).is0()}toAffine(M){return A(this,M)}clearCofactor(){const{h:M}=e;return M===Xr?this:this.multiplyUnsafe(M)}static fromHex(M,I=!1){const{d:j,a:v}=e,p=t.BYTES;M=Os("pointHex",M,p),xd("zip215",I);const x=M.slice(),F=M[p-1];x[p-1]=F&-129;const V=oh(x),Q=I?c:t.ORDER;mc("pointHex.y",V,Hi,Q);const W=l(V*V),K=l(W-Xr),se=l(j*W-v);let{isValid:oe,value:te}=f(K,se);if(!oe)throw new Error("Point.fromHex: invalid y coordinate");const le=(te&Xr)===Xr,Mt=(F&128)!==0;if(!I&&te===Hi&&Mt)throw new Error("Point.fromHex: x=0 and x_0=1");return Mt!==le&&(te=l(-te)),O.fromAffine({x:te,y:V})}static fromPrivateKey(M){return z(M).point}toRawBytes(){const{x:M,y:I}=this.toAffine(),j=yp(I,t.BYTES);return j[j.length-1]|=M&Xr?128:0,j}toHex(){return zg(this.toRawBytes())}}O.BASE=new O(e.Gx,e.Gy,Xr,l(e.Gx*e.Gy)),O.ZERO=new O(Hi,Xr,Xr,Hi);const{BASE:C,ZERO:_}=O,S=nT(O,a*8);function L(b){return gr(b,i)}function k(b){return L(oh(b))}function z(b){const M=t.BYTES;b=Os("private key",b,M);const I=Os("hashed private key",n(b),2*M),j=w(I.slice(0,M)),v=I.slice(M,2*M),p=k(j),x=C.multiply(p),F=x.toRawBytes();return{head:j,prefix:v,scalar:p,point:x,pointBytes:F}}function U(b){return z(b).pointBytes}function T(b=new Uint8Array,...M){const I=cy(...M);return k(n(g(I,Os("context",b),!!s)))}function d(b,M,I={}){b=Os("message",b),s&&(b=s(b));const{prefix:j,scalar:v,pointBytes:p}=z(M),x=T(I.context,j,b),F=C.multiply(x).toRawBytes(),V=T(I.context,F,p,b),Q=L(x+V*v);mc("signature.s",Q,Hi,i);const W=cy(F,yp(Q,t.BYTES));return Os("result",W,t.BYTES*2)}const y=uT;function N(b,M,I,j=y){const{context:v,zip215:p}=j,x=t.BYTES;b=Os("signature",b,2*x),M=Os("message",M),I=Os("publicKey",I,x),p!==void 0&&xd("zip215",p),s&&(M=s(M));const F=oh(b.slice(x,2*x));let V,Q,W;try{V=O.fromHex(I,p),Q=O.fromHex(b.slice(0,x),p),W=C.multiplyUnsafe(F)}catch{return!1}if(!p&&V.isSmallOrder())return!1;const K=T(v,Q.toRawBytes(),V.toRawBytes(),M);return Q.add(V.multiplyUnsafe(K)).subtract(W).clearCofactor().equals(O.ZERO)}return C._setWindowSize(8),{CURVE:e,getPublicKey:U,sign:d,verify:N,ExtendedPoint:O,utils:{getExtendedPublicKey:z,randomPrivateKey:()=>o(t.BYTES),precompute(b=8,M=O.BASE){return M._setWindowSize(b),M.multiply(BigInt(3)),M}}}}BigInt(0),BigInt(1);const Pg=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),py=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);const dT=BigInt(1),gy=BigInt(2);BigInt(3);const fT=BigInt(5),pT=BigInt(8);function gT(r){const e=BigInt(10),t=BigInt(20),i=BigInt(40),s=BigInt(80),n=Pg,o=r*r%n*r%n,a=ds(o,gy,n)*o%n,u=ds(a,dT,n)*r%n,c=ds(u,fT,n)*u%n,l=ds(c,e,n)*c%n,h=ds(l,t,n)*l%n,f=ds(h,i,n)*h%n,w=ds(f,s,n)*f%n,g=ds(w,s,n)*f%n,m=ds(g,e,n)*c%n;return{pow_p_5_8:ds(m,gy,n)*r%n,b2:o}}function yT(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function wT(r,e){const t=Pg,i=gr(e*e*e,t),s=gr(i*i*e,t),n=gT(r*s).pow_p_5_8;let o=gr(r*i*n,t);const a=gr(e*o*o,t),u=o,c=gr(o*py,t),l=a===r,h=a===gr(-r,t),f=a===gr(-r*py,t);return l&&(o=u),(h||f)&&(o=c),JE(o,t)&&(o=gr(-o,t)),{isValid:l||h,value:o}}const mT=SN(Pg,void 0,!0),bT={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:mT,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:pT,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:$E,randomBytes:NN,adjustScalarBytes:yT,uvRatio:wT},CN=hT(bT),MT="EdDSA",NT="JWT",Dh=".",Wh="base64url",_N="utf8",ON="utf8",vT=":",IT="did",DT="key",yy="base58btc",AT="z",ET="K36",TT=32;function kg(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function zN(r=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?kg(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function LN(r,e){e||(e=r.reduce((s,n)=>s+n.length,0));const t=zN(e);let i=0;for(const s of r)t.set(s,i),i+=s.length;return kg(t)}function ST(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),i=0;i<t.length;i++)t[i]=255;for(var s=0;s<r.length;s++){var n=r.charAt(s),o=n.charCodeAt(0);if(t[o]!==255)throw new TypeError(n+" is ambiguous");t[o]=s}var a=r.length,u=r.charAt(0),c=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function h(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var m=0,E=0,A=0,D=g.length;A!==D&&g[A]===0;)A++,m++;for(var O=(D-A)*l+1>>>0,C=new Uint8Array(O);A!==D;){for(var _=g[A],S=0,L=O-1;(_!==0||S<E)&&L!==-1;L--,S++)_+=256*C[L]>>>0,C[L]=_%a>>>0,_=_/a>>>0;if(_!==0)throw new Error("Non-zero carry");E=S,A++}for(var k=O-E;k!==O&&C[k]===0;)k++;for(var z=u.repeat(m);k<O;++k)z+=r.charAt(C[k]);return z}function f(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var m=0;if(g[m]!==" "){for(var E=0,A=0;g[m]===u;)E++,m++;for(var D=(g.length-m)*c+1>>>0,O=new Uint8Array(D);g[m];){var C=t[g.charCodeAt(m)];if(C===255)return;for(var _=0,S=D-1;(C!==0||_<A)&&S!==-1;S--,_++)C+=a*O[S]>>>0,O[S]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");A=_,m++}if(g[m]!==" "){for(var L=D-A;L!==D&&O[L]===0;)L++;for(var k=new Uint8Array(E+(D-L)),z=E;L!==D;)k[z++]=O[L++];return k}}}function w(g){var m=f(g);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:f,decode:w}}var jT=ST,xT=jT;const PN=r=>{if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")},CT=r=>new TextEncoder().encode(r),_T=r=>new TextDecoder().decode(r);let OT=class{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},zT=class{constructor(e,t,i){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return kN(this,e)}},LT=class{constructor(e){this.decoders=e}or(e){return kN(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};const kN=(r,e)=>new LT({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}});let PT=class{constructor(e,t,i,s){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=s,this.encoder=new OT(e,t,i),this.decoder=new zT(e,t,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};const qh=({name:r,prefix:e,encode:t,decode:i})=>new PT(r,e,t,i),Vu=({prefix:r,name:e,alphabet:t})=>{const{encode:i,decode:s}=xT(t,e);return qh({prefix:r,name:e,encode:i,decode:n=>PN(s(n))})},kT=(r,e,t,i)=>{const s={};for(let l=0;l<e.length;++l)s[e[l]]=l;let n=r.length;for(;r[n-1]==="=";)--n;const o=new Uint8Array(n*t/8|0);let a=0,u=0,c=0;for(let l=0;l<n;++l){const h=s[r[l]];if(h===void 0)throw new SyntaxError(`Non-${i} character`);u=u<<t|h,a+=t,a>=8&&(a-=8,o[c++]=255&u>>a)}if(a>=t||255&u<<8-a)throw new SyntaxError("Unexpected end of data");return o},UT=(r,e,t)=>{const i=e[e.length-1]==="=",s=(1<<t)-1;let n="",o=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],o+=8;o>t;)o-=t,n+=e[s&a>>o];if(o&&(n+=e[s&a<<t-o]),i)for(;n.length*t&7;)n+="=";return n},Ur=({name:r,prefix:e,bitsPerChar:t,alphabet:i})=>qh({prefix:e,name:r,encode(s){return UT(s,i,t)},decode(s){return kT(s,i,t,r)}}),RT=qh({prefix:"\0",name:"identity",encode:r=>_T(r),decode:r=>CT(r)});var $T=Object.freeze({__proto__:null,identity:RT});const FT=Ur({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var BT=Object.freeze({__proto__:null,base2:FT});const YT=Ur({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var QT=Object.freeze({__proto__:null,base8:YT});const VT=Vu({prefix:"9",name:"base10",alphabet:"0123456789"});var WT=Object.freeze({__proto__:null,base10:VT});const qT=Ur({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ZT=Ur({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var HT=Object.freeze({__proto__:null,base16:qT,base16upper:ZT});const GT=Ur({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),KT=Ur({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),JT=Ur({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),XT=Ur({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),eS=Ur({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),tS=Ur({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),rS=Ur({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),iS=Ur({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),sS=Ur({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var nS=Object.freeze({__proto__:null,base32:GT,base32upper:KT,base32pad:JT,base32padupper:XT,base32hex:eS,base32hexupper:tS,base32hexpad:rS,base32hexpadupper:iS,base32z:sS});const oS=Vu({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),aS=Vu({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var cS=Object.freeze({__proto__:null,base36:oS,base36upper:aS});const uS=Vu({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),lS=Vu({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var hS=Object.freeze({__proto__:null,base58btc:uS,base58flickr:lS});const dS=Ur({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),fS=Ur({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),pS=Ur({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),gS=Ur({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var yS=Object.freeze({__proto__:null,base64:dS,base64pad:fS,base64url:pS,base64urlpad:gS});const UN=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),wS=UN.reduce((r,e,t)=>(r[t]=e,r),[]),mS=UN.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function bS(r){return r.reduce((e,t)=>(e+=wS[t],e),"")}function MS(r){const e=[];for(const t of r){const i=mS[t.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}const NS=qh({prefix:"🚀",name:"base256emoji",encode:bS,decode:MS});var vS=Object.freeze({__proto__:null,base256emoji:NS}),IS=RN,wy=128,DS=-128,AS=Math.pow(2,31);function RN(r,e,t){e=e||[],t=t||0;for(var i=t;r>=AS;)e[t++]=r&255|wy,r/=128;for(;r&DS;)e[t++]=r&255|wy,r>>>=7;return e[t]=r|0,RN.bytes=t-i+1,e}var ES=mp,TS=128,my=127;function mp(r,i){var t=0,i=i||0,s=0,n=i,o,a=r.length;do{if(n>=a)throw mp.bytes=0,new RangeError("Could not decode varint");o=r[n++],t+=s<28?(o&my)<<s:(o&my)*Math.pow(2,s),s+=7}while(o>=TS);return mp.bytes=n-i,t}var SS=Math.pow(2,7),jS=Math.pow(2,14),xS=Math.pow(2,21),CS=Math.pow(2,28),_S=Math.pow(2,35),OS=Math.pow(2,42),zS=Math.pow(2,49),LS=Math.pow(2,56),PS=Math.pow(2,63),kS=function(r){return r<SS?1:r<jS?2:r<xS?3:r<CS?4:r<_S?5:r<OS?6:r<zS?7:r<LS?8:r<PS?9:10},US={encode:IS,decode:ES,encodingLength:kS},$N=US;const by=(r,e,t=0)=>($N.encode(r,e,t),e),My=r=>$N.encodingLength(r),bp=(r,e)=>{const t=e.byteLength,i=My(r),s=i+My(t),n=new Uint8Array(s+t);return by(r,n,0),by(t,n,i),n.set(e,s),new RS(r,t,e,n)};let RS=class{constructor(e,t,i,s){this.code=e,this.size=t,this.digest=i,this.bytes=s}};const FN=({name:r,code:e,encode:t})=>new $S(r,e,t);let $S=class{constructor(e,t,i){this.name=e,this.code=t,this.encode=i}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?bp(this.code,t):t.then(i=>bp(this.code,i))}else throw Error("Unknown type, must be binary type")}};const BN=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),FS=FN({name:"sha2-256",code:18,encode:BN("SHA-256")}),BS=FN({name:"sha2-512",code:19,encode:BN("SHA-512")});var YS=Object.freeze({__proto__:null,sha256:FS,sha512:BS});const YN=0,QS="identity",QN=PN,VS=r=>bp(YN,QN(r)),WS={code:YN,name:QS,encode:QN,digest:VS};var qS=Object.freeze({__proto__:null,identity:WS});new TextEncoder,new TextDecoder;const Ny={...$T,...BT,...QT,...WT,...HT,...nS,...cS,...hS,...yS,...vS};({...YS,...qS});function VN(r,e,t,i){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:i}}}const vy=VN("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Pd=VN("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);const e=zN(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),WN={utf8:vy,"utf-8":vy,hex:Ny.base16,latin1:Pd,ascii:Pd,binary:Pd,...Ny};function Zh(r,e="utf8"){const t=WN[e];if(!t)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}function Ba(r,e="utf8"){const t=WN[e];if(!t)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?kg(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}function Iy(r){return Zs(Zh(Ba(r,Wh),_N))}function Ah(r){return Zh(Ba(Es(r),_N),Wh)}function Ug(r){const e=Ba(ET,yy),t=AT+Zh(LN([e,r]),yy);return[IT,DT,t].join(vT)}function ZS(r){return Zh(r,Wh)}function HS(r){return Ba(r,Wh)}function GS(r){return Ba([Ah(r.header),Ah(r.payload)].join(Dh),ON)}function KS(r){return[Ah(r.header),Ah(r.payload),ZS(r.signature)].join(Dh)}function Sa(r){const e=r.split(Dh),t=Iy(e[0]),i=Iy(e[1]),s=HS(e[2]),n=Ba(e.slice(0,2).join(Dh),ON);return{header:t,payload:i,signature:s,data:n}}function Eh(r=NN(TT)){const e=CN.getPublicKey(r);return{secretKey:LN([r,e]),publicKey:e}}async function qN(r,e,t,i,s=Y.fromMiliseconds(Date.now())){const n={alg:MT,typ:NT},o=Ug(i.publicKey),a=s+t,u={iss:o,sub:r,aud:e,iat:s,exp:a},c=GS({header:n,payload:u}),l=CN.sign(c,i.secretKey.slice(0,32));return KS({header:n,payload:u,signature:l})}var Dy=function(r,e,t){if(t||arguments.length===2)for(var i=0,s=e.length,n;i<s;i++)(n||!(i in e))&&(n||(n=Array.prototype.slice.call(e,0,i)),n[i]=e[i]);return r.concat(n||Array.prototype.slice.call(e))},JS=(function(){function r(e,t,i){this.name=e,this.version=t,this.os=i,this.type="browser"}return r})(),XS=(function(){function r(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return r})(),ej=(function(){function r(e,t,i,s){this.name=e,this.version=t,this.os=i,this.bot=s,this.type="bot-device"}return r})(),tj=(function(){function r(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return r})(),rj=(function(){function r(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return r})(),ij=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,sj=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Ay=3,nj=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",ij]],Ey=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function ZN(r){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new rj:typeof navigator<"u"?aj(navigator.userAgent):uj()}function oj(r){return r!==""&&nj.reduce(function(e,t){var i=t[0],s=t[1];if(e)return e;var n=s.exec(r);return!!n&&[i,n]},!1)}function aj(r){var e=oj(r);if(!e)return null;var t=e[0],i=e[1];if(t==="searchbot")return new tj;var s=i[1]&&i[1].split(".").join("_").split("_").slice(0,3);s?s.length<Ay&&(s=Dy(Dy([],s,!0),lj(Ay-s.length),!0)):s=[];var n=s.join("."),o=cj(r),a=sj.exec(r);return a&&a[1]?new ej(t,n,o,a[1]):new JS(t,n,o)}function cj(r){for(var e=0,t=Ey.length;e<t;e++){var i=Ey[e],s=i[0],n=i[1],o=n.exec(r);if(o)return s}return null}function uj(){var r=typeof process<"u"&&process.version;return r?new XS(process.version.slice(1)):null}function lj(r){for(var e=[],t=0;t<r;t++)e.push("0");return e}var ct={},Ty;function HN(){if(Ty)return ct;Ty=1,Object.defineProperty(ct,"__esModule",{value:!0}),ct.getLocalStorage=ct.getLocalStorageOrThrow=ct.getCrypto=ct.getCryptoOrThrow=ct.getLocation=ct.getLocationOrThrow=ct.getNavigator=ct.getNavigatorOrThrow=ct.getDocument=ct.getDocumentOrThrow=ct.getFromWindowOrThrow=ct.getFromWindow=void 0;function r(f){let w;return typeof window<"u"&&typeof window[f]<"u"&&(w=window[f]),w}ct.getFromWindow=r;function e(f){const w=r(f);if(!w)throw new Error(`${f} is not defined in Window`);return w}ct.getFromWindowOrThrow=e;function t(){return e("document")}ct.getDocumentOrThrow=t;function i(){return r("document")}ct.getDocument=i;function s(){return e("navigator")}ct.getNavigatorOrThrow=s;function n(){return r("navigator")}ct.getNavigator=n;function o(){return e("location")}ct.getLocationOrThrow=o;function a(){return r("location")}ct.getLocation=a;function u(){return e("crypto")}ct.getCryptoOrThrow=u;function c(){return r("crypto")}ct.getCrypto=c;function l(){return e("localStorage")}ct.getLocalStorageOrThrow=l;function h(){return r("localStorage")}return ct.getLocalStorage=h,ct}var li=HN(),bc={},Sy;function hj(){if(Sy)return bc;Sy=1,Object.defineProperty(bc,"__esModule",{value:!0}),bc.getWindowMetadata=void 0;const r=HN();function e(){let t,i;try{t=r.getDocumentOrThrow(),i=r.getLocationOrThrow()}catch{return null}function s(){const w=t.getElementsByTagName("link"),g=[];for(let m=0;m<w.length;m++){const E=w[m],A=E.getAttribute("rel");if(A&&A.toLowerCase().indexOf("icon")>-1){const D=E.getAttribute("href");if(D)if(D.toLowerCase().indexOf("https:")===-1&&D.toLowerCase().indexOf("http:")===-1&&D.indexOf("//")!==0){let O=i.protocol+"//"+i.host;if(D.indexOf("/")===0)O+=D;else{const C=i.pathname.split("/");C.pop();const _=C.join("/");O+=_+"/"+D}g.push(O)}else if(D.indexOf("//")===0){const O=i.protocol+D;g.push(O)}else g.push(D)}}return g}function n(...w){const g=t.getElementsByTagName("meta");for(let m=0;m<g.length;m++){const E=g[m],A=["itemprop","property","name"].map(D=>E.getAttribute(D)).filter(D=>D?w.includes(D):!1);if(A.length&&A){const D=E.getAttribute("content");if(D)return D}}return""}function o(){let w=n("name","og:site_name","og:title","twitter:title");return w||(w=t.title),w}function a(){return n("description","og:description","twitter:description","keywords")}const u=o(),c=a(),l=i.origin,h=s();return{description:c,url:l,icons:h,name:u}}return bc.getWindowMetadata=e,bc}var GN=hj();function au(r,{strict:e=!0}={}){return!r||typeof r!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(r):r.startsWith("0x")}function jy(r){return au(r,{strict:!1})?Math.ceil((r.length-2)/2):r.length}const KN="2.23.2";let kd={getDocsUrl:({docsBaseUrl:r,docsPath:e="",docsSlug:t})=>e?`${r??"https://viem.sh"}${e}${t?`#${t}`:""}`:void 0,version:`viem@${KN}`},Hh=class Mp extends Error{constructor(e,t={}){const i=t.cause instanceof Mp?t.cause.details:t.cause?.message?t.cause.message:t.details,s=t.cause instanceof Mp&&t.cause.docsPath||t.docsPath,n=kd.getDocsUrl?.({...t,docsPath:s}),o=[e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...n?[`Docs: ${n}`]:[],...i?[`Details: ${i}`]:[],...kd.version?[`Version: ${kd.version}`]:[]].join(`
10
+ `);super(o,t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=i,this.docsPath=s,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=KN}walk(e){return JN(this,e)}};function JN(r,e){return e?.(r)?r:r&&typeof r=="object"&&"cause"in r&&r.cause!==void 0?JN(r.cause,e):e?null:r}let XN=class extends Hh{constructor({size:e,targetSize:t,type:i}){super(`${i.charAt(0).toUpperCase()}${i.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}};function Ya(r,{dir:e,size:t=32}={}){return typeof r=="string"?dj(r,{dir:e,size:t}):fj(r,{dir:e,size:t})}function dj(r,{dir:e,size:t=32}={}){if(t===null)return r;const i=r.replace("0x","");if(i.length>t*2)throw new XN({size:Math.ceil(i.length/2),targetSize:t,type:"hex"});return`0x${i[e==="right"?"padEnd":"padStart"](t*2,"0")}`}function fj(r,{dir:e,size:t=32}={}){if(t===null)return r;if(r.length>t)throw new XN({size:r.length,targetSize:t,type:"bytes"});const i=new Uint8Array(t);for(let s=0;s<t;s++){const n=e==="right";i[n?s:t-s-1]=r[n?s:r.length-s-1]}return i}let pj=class extends Hh{constructor({max:e,min:t,signed:i,size:s,value:n}){super(`Number "${n}" is not in safe ${s?`${s*8}-bit ${i?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}},gj=class extends Hh{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}};function Qa(r,{size:e}){if(jy(r)>e)throw new gj({givenSize:jy(r),maxSize:e})}function Np(r,e={}){const{signed:t}=e;e.size&&Qa(r,{size:e.size});const i=BigInt(r);if(!t)return i;const s=(r.length-2)/2,n=(1n<<BigInt(s)*8n-1n)-1n;return i<=n?i:i-BigInt(`0x${"f".padStart(s*2,"f")}`)-1n}function yj(r,e={}){return Number(Np(r,e))}const wj=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function vp(r,e={}){return typeof r=="number"||typeof r=="bigint"?tv(r,e):typeof r=="string"?Mj(r,e):typeof r=="boolean"?mj(r,e):ev(r,e)}function mj(r,e={}){const t=`0x${Number(r)}`;return typeof e.size=="number"?(Qa(t,{size:e.size}),Ya(t,{size:e.size})):t}function ev(r,e={}){let t="";for(let s=0;s<r.length;s++)t+=wj[r[s]];const i=`0x${t}`;return typeof e.size=="number"?(Qa(i,{size:e.size}),Ya(i,{dir:"right",size:e.size})):i}function tv(r,e={}){const{signed:t,size:i}=e,s=BigInt(r);let n;i?t?n=(1n<<BigInt(i)*8n-1n)-1n:n=2n**(BigInt(i)*8n)-1n:typeof r=="number"&&(n=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof n=="bigint"&&t?-n-1n:0;if(n&&s>n||s<o){const u=typeof r=="bigint"?"n":"";throw new pj({max:n?`${n}${u}`:void 0,min:`${o}${u}`,signed:t,size:i,value:`${r}${u}`})}const a=`0x${(t&&s<0?(1n<<BigInt(i*8))+BigInt(s):s).toString(16)}`;return i?Ya(a,{size:i}):a}const bj=new TextEncoder;function Mj(r,e={}){const t=bj.encode(r);return ev(t,e)}const Nj=new TextEncoder;function vj(r,e={}){return typeof r=="number"||typeof r=="bigint"?Dj(r,e):typeof r=="boolean"?Ij(r,e):au(r)?rv(r,e):iv(r,e)}function Ij(r,e={}){const t=new Uint8Array(1);return t[0]=Number(r),typeof e.size=="number"?(Qa(t,{size:e.size}),Ya(t,{size:e.size})):t}const zs={zero:48,nine:57,A:65,F:70,a:97,f:102};function xy(r){if(r>=zs.zero&&r<=zs.nine)return r-zs.zero;if(r>=zs.A&&r<=zs.F)return r-(zs.A-10);if(r>=zs.a&&r<=zs.f)return r-(zs.a-10)}function rv(r,e={}){let t=r;e.size&&(Qa(t,{size:e.size}),t=Ya(t,{dir:"right",size:e.size}));let i=t.slice(2);i.length%2&&(i=`0${i}`);const s=i.length/2,n=new Uint8Array(s);for(let o=0,a=0;o<s;o++){const u=xy(i.charCodeAt(a++)),c=xy(i.charCodeAt(a++));if(u===void 0||c===void 0)throw new Hh(`Invalid byte sequence ("${i[a-2]}${i[a-1]}" in "${i}").`);n[o]=u*16+c}return n}function Dj(r,e){const t=tv(r,e);return rv(t)}function iv(r,e={}){const t=Nj.encode(r);return typeof e.size=="number"?(Qa(t,{size:e.size}),Ya(t,{dir:"right",size:e.size})):t}function Th(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function Aj(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function Gh(r,...e){if(!Aj(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function hee(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Th(r.outputLen),Th(r.blockLen)}function Cy(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 Ej(r,e){Gh(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}const Sl=BigInt(2**32-1),_y=BigInt(32);function Tj(r,e=!1){return e?{h:Number(r&Sl),l:Number(r>>_y&Sl)}:{h:Number(r>>_y&Sl)|0,l:Number(r&Sl)|0}}function Sj(r,e=!1){let t=new Uint32Array(r.length),i=new Uint32Array(r.length);for(let s=0;s<r.length;s++){const{h:n,l:o}=Tj(r[s],e);[t[s],i[s]]=[n,o]}return[t,i]}const jj=(r,e,t)=>r<<t|e>>>32-t,xj=(r,e,t)=>e<<t|r>>>32-t,Cj=(r,e,t)=>e<<t-32|r>>>64-t,_j=(r,e,t)=>r<<t-32|e>>>64-t,Co=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Oj(r){return new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4))}function dee(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function fee(r,e){return r<<32-e|r>>>e}const Oy=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function zj(r){return r<<24&4278190080|r<<8&16711680|r>>>8&65280|r>>>24&255}function zy(r){for(let e=0;e<r.length;e++)r[e]=zj(r[e])}function Lj(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function sv(r){return typeof r=="string"&&(r=Lj(r)),Gh(r),r}function pee(...r){let e=0;for(let i=0;i<r.length;i++){const s=r[i];Gh(s),e+=s.length}const t=new Uint8Array(e);for(let i=0,s=0;i<r.length;i++){const n=r[i];t.set(n,s),s+=n.length}return t}let Pj=class{clone(){return this._cloneInto()}};function kj(r){const e=i=>r().update(sv(i)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function yee(r=32){if(Co&&typeof Co.getRandomValues=="function")return Co.getRandomValues(new Uint8Array(r));if(Co&&typeof Co.randomBytes=="function")return Co.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}const nv=[],ov=[],av=[],Uj=BigInt(0),Mc=BigInt(1),Rj=BigInt(2),$j=BigInt(7),Fj=BigInt(256),Bj=BigInt(113);for(let r=0,e=Mc,t=1,i=0;r<24;r++){[t,i]=[i,(2*t+3*i)%5],nv.push(2*(5*i+t)),ov.push((r+1)*(r+2)/2%64);let s=Uj;for(let n=0;n<7;n++)e=(e<<Mc^(e>>$j)*Bj)%Fj,e&Rj&&(s^=Mc<<(Mc<<BigInt(n))-Mc);av.push(s)}const[Yj,Qj]=Sj(av,!0),Ly=(r,e,t)=>t>32?Cj(r,e,t):jj(r,e,t),Py=(r,e,t)=>t>32?_j(r,e,t):xj(r,e,t);function Vj(r,e=24){const t=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let o=0;o<10;o++)t[o]=r[o]^r[o+10]^r[o+20]^r[o+30]^r[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,u=(o+2)%10,c=t[u],l=t[u+1],h=Ly(c,l,1)^t[a],f=Py(c,l,1)^t[a+1];for(let w=0;w<50;w+=10)r[o+w]^=h,r[o+w+1]^=f}let s=r[2],n=r[3];for(let o=0;o<24;o++){const a=ov[o],u=Ly(s,n,a),c=Py(s,n,a),l=nv[o];s=r[l],n=r[l+1],r[l]=u,r[l+1]=c}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)t[a]=r[o+a];for(let a=0;a<10;a++)r[o+a]^=~t[(a+2)%10]&t[(a+4)%10]}r[0]^=Yj[i],r[1]^=Qj[i]}t.fill(0)}let Wj=class cv extends Pj{constructor(e,t,i,s=!1,n=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=i,this.enableXOF=s,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Th(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Oj(this.state)}keccak(){Oy||zy(this.state32),Vj(this.state32,this.rounds),Oy||zy(this.state32),this.posOut=0,this.pos=0}update(e){Cy(this);const{blockLen:t,state:i}=this;e=sv(e);const s=e.length;for(let n=0;n<s;){const o=Math.min(t-this.pos,s-n);for(let a=0;a<o;a++)i[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:t,pos:i,blockLen:s}=this;e[i]^=t,(t&128)!==0&&i===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){Cy(this,!1),Gh(e),this.finish();const t=this.state,{blockLen:i}=this;for(let s=0,n=e.length;s<n;){this.posOut>=i&&this.keccak();const o=Math.min(i-this.posOut,n-s);e.set(t.subarray(this.posOut,this.posOut+o),s),this.posOut+=o,s+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Th(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Ej(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:i,outputLen:s,rounds:n,enableXOF:o}=this;return e||(e=new cv(t,i,s,o,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=s,e.enableXOF=o,e.destroyed=this.destroyed,e}};const qj=(r,e,t)=>kj(()=>new Wj(e,r,t)),Zj=qj(1,136,256/8);function uv(r,e){const t=e||"hex",i=Zj(au(r,{strict:!1})?vj(r):r);return t==="bytes"?i:vp(i)}let Hj=class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){const i=this.keys().next().value;i&&this.delete(i)}return this}};const Ud=new Hj(8192);function Gj(r,e){if(Ud.has(`${r}.${e}`))return Ud.get(`${r}.${e}`);const t=r.substring(2).toLowerCase(),i=uv(iv(t),"bytes"),s=t.split("");for(let o=0;o<40;o+=2)i[o>>1]>>4>=8&&s[o]&&(s[o]=s[o].toUpperCase()),(i[o>>1]&15)>=8&&s[o+1]&&(s[o+1]=s[o+1].toUpperCase());const n=`0x${s.join("")}`;return Ud.set(`${r}.${e}`,n),n}function Kj(r){const e=uv(`0x${r.substring(4)}`).substring(26);return Gj(`0x${e}`)}async function Jj({hash:r,signature:e}){const t=au(r)?r:vp(r),{secp256k1:i}=await Fi(async()=>{const{secp256k1:o}=await import("./secp256k1-ClnamsoT.js");return{secp256k1:o}},__vite__mapDeps([23,2,3,4,5,6,7,8,9,10,16]));return`0x${(()=>{if(typeof e=="object"&&"r"in e&&"s"in e){const{r:c,s:l,v:h,yParity:f}=e,w=Number(f??h),g=ky(w);return new i.Signature(Np(c),Np(l)).addRecoveryBit(g)}const o=au(e)?e:vp(e),a=yj(`0x${o.slice(130)}`),u=ky(a);return i.Signature.fromCompact(o.substring(2,130)).addRecoveryBit(u)})().recoverPublicKey(t.substring(2)).toHex(!1)}`}function ky(r){if(r===0||r===1)return r;if(r===27)return 0;if(r===28)return 1;throw new Error("Invalid yParityOrV value")}async function Xj({hash:r,signature:e}){return Kj(await Jj({hash:r,signature:e}))}function lv(r=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(r):new Uint8Array(r)}function Ia(r,e){e||(e=r.reduce((s,n)=>s+n.length,0));const t=lv(e);let i=0;for(const s of r)t.set(s,i),i+=s.length;return t}function e5(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),i=0;i<t.length;i++)t[i]=255;for(var s=0;s<r.length;s++){var n=r.charAt(s),o=n.charCodeAt(0);if(t[o]!==255)throw new TypeError(n+" is ambiguous");t[o]=s}var a=r.length,u=r.charAt(0),c=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function h(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var m=0,E=0,A=0,D=g.length;A!==D&&g[A]===0;)A++,m++;for(var O=(D-A)*l+1>>>0,C=new Uint8Array(O);A!==D;){for(var _=g[A],S=0,L=O-1;(_!==0||S<E)&&L!==-1;L--,S++)_+=256*C[L]>>>0,C[L]=_%a>>>0,_=_/a>>>0;if(_!==0)throw new Error("Non-zero carry");E=S,A++}for(var k=O-E;k!==O&&C[k]===0;)k++;for(var z=u.repeat(m);k<O;++k)z+=r.charAt(C[k]);return z}function f(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var m=0;if(g[m]!==" "){for(var E=0,A=0;g[m]===u;)E++,m++;for(var D=(g.length-m)*c+1>>>0,O=new Uint8Array(D);g[m];){var C=t[g.charCodeAt(m)];if(C===255)return;for(var _=0,S=D-1;(C!==0||_<A)&&S!==-1;S--,_++)C+=a*O[S]>>>0,O[S]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");A=_,m++}if(g[m]!==" "){for(var L=D-A;L!==D&&O[L]===0;)L++;for(var k=new Uint8Array(E+(D-L)),z=E;L!==D;)k[z++]=O[L++];return k}}}function w(g){var m=f(g);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:f,decode:w}}var t5=e5,r5=t5;const i5=r=>{if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")},s5=r=>new TextEncoder().encode(r),n5=r=>new TextDecoder().decode(r);class o5{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class a5{constructor(e,t,i){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return hv(this,e)}}class c5{constructor(e){this.decoders=e}or(e){return hv(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const hv=(r,e)=>new c5({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}});class u5{constructor(e,t,i,s){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=s,this.encoder=new o5(e,t,i),this.decoder=new a5(e,t,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Kh=({name:r,prefix:e,encode:t,decode:i})=>new u5(r,e,t,i),Wu=({prefix:r,name:e,alphabet:t})=>{const{encode:i,decode:s}=r5(t,e);return Kh({prefix:r,name:e,encode:i,decode:n=>i5(s(n))})},l5=(r,e,t,i)=>{const s={};for(let l=0;l<e.length;++l)s[e[l]]=l;let n=r.length;for(;r[n-1]==="=";)--n;const o=new Uint8Array(n*t/8|0);let a=0,u=0,c=0;for(let l=0;l<n;++l){const h=s[r[l]];if(h===void 0)throw new SyntaxError(`Non-${i} character`);u=u<<t|h,a+=t,a>=8&&(a-=8,o[c++]=255&u>>a)}if(a>=t||255&u<<8-a)throw new SyntaxError("Unexpected end of data");return o},h5=(r,e,t)=>{const i=e[e.length-1]==="=",s=(1<<t)-1;let n="",o=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],o+=8;o>t;)o-=t,n+=e[s&a>>o];if(o&&(n+=e[s&a<<t-o]),i)for(;n.length*t&7;)n+="=";return n},Rr=({name:r,prefix:e,bitsPerChar:t,alphabet:i})=>Kh({prefix:e,name:r,encode(s){return h5(s,i,t)},decode(s){return l5(s,i,t,r)}}),d5=Kh({prefix:"\0",name:"identity",encode:r=>n5(r),decode:r=>s5(r)}),f5=Object.freeze(Object.defineProperty({__proto__:null,identity:d5},Symbol.toStringTag,{value:"Module"})),p5=Rr({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),g5=Object.freeze(Object.defineProperty({__proto__:null,base2:p5},Symbol.toStringTag,{value:"Module"})),y5=Rr({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),w5=Object.freeze(Object.defineProperty({__proto__:null,base8:y5},Symbol.toStringTag,{value:"Module"})),m5=Wu({prefix:"9",name:"base10",alphabet:"0123456789"}),b5=Object.freeze(Object.defineProperty({__proto__:null,base10:m5},Symbol.toStringTag,{value:"Module"})),M5=Rr({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),N5=Rr({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),v5=Object.freeze(Object.defineProperty({__proto__:null,base16:M5,base16upper:N5},Symbol.toStringTag,{value:"Module"})),I5=Rr({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),D5=Rr({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),A5=Rr({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),E5=Rr({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),T5=Rr({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),S5=Rr({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),j5=Rr({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),x5=Rr({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),C5=Rr({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),_5=Object.freeze(Object.defineProperty({__proto__:null,base32:I5,base32hex:T5,base32hexpad:j5,base32hexpadupper:x5,base32hexupper:S5,base32pad:A5,base32padupper:E5,base32upper:D5,base32z:C5},Symbol.toStringTag,{value:"Module"})),O5=Wu({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),z5=Wu({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),L5=Object.freeze(Object.defineProperty({__proto__:null,base36:O5,base36upper:z5},Symbol.toStringTag,{value:"Module"})),P5=Wu({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),k5=Wu({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),U5=Object.freeze(Object.defineProperty({__proto__:null,base58btc:P5,base58flickr:k5},Symbol.toStringTag,{value:"Module"})),R5=Rr({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),$5=Rr({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),F5=Rr({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),B5=Rr({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),Y5=Object.freeze(Object.defineProperty({__proto__:null,base64:R5,base64pad:$5,base64url:F5,base64urlpad:B5},Symbol.toStringTag,{value:"Module"})),dv=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),Q5=dv.reduce((r,e,t)=>(r[t]=e,r),[]),V5=dv.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function W5(r){return r.reduce((e,t)=>(e+=Q5[t],e),"")}function q5(r){const e=[];for(const t of r){const i=V5[t.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}const Z5=Kh({prefix:"🚀",name:"base256emoji",encode:W5,decode:q5}),H5=Object.freeze(Object.defineProperty({__proto__:null,base256emoji:Z5},Symbol.toStringTag,{value:"Module"}));new TextEncoder;new TextDecoder;const Uy={...f5,...g5,...w5,...b5,...v5,..._5,...L5,...U5,...Y5,...H5};function fv(r,e,t,i){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:i}}}const Ry=fv("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Rd=fv("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);const e=lv(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),pv={utf8:Ry,"utf-8":Ry,hex:Uy.base16,latin1:Rd,ascii:Rd,binary:Rd,...Uy};function Ct(r,e="utf8"){const t=pv[e];if(!t)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r,"utf8"):t.decoder.decode(`${t.prefix}${r}`)}function We(r,e="utf8"){const t=pv[e];if(!t)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var $d={};const G5="6.6.1",K5={version:G5};var Fd={},ah={exports:{}},J5=ah.exports,$y;function Gs(){return $y||($y=1,(function(r){(function(e,t){function i(T,d){if(!T)throw new Error(d||"Assertion failed")}function s(T,d){T.super_=d;var y=function(){};y.prototype=d.prototype,T.prototype=new y,T.prototype.constructor=T}function n(T,d,y){if(n.isBN(T))return T;this.negative=0,this.words=null,this.length=0,this.red=null,T!==null&&((d==="le"||d==="be")&&(y=d,d=10),this._init(T||0,d||10,y||"be"))}typeof e=="object"?e.exports=n:t.BN=n,n.BN=n,n.wordSize=26;var o;try{typeof window<"u"&&typeof window.Buffer<"u"?o=window.Buffer:o=D1.Buffer}catch{}n.isBN=function(d){return d instanceof n?!0:d!==null&&typeof d=="object"&&d.constructor.wordSize===n.wordSize&&Array.isArray(d.words)},n.max=function(d,y){return d.cmp(y)>0?d:y},n.min=function(d,y){return d.cmp(y)<0?d:y},n.prototype._init=function(d,y,N){if(typeof d=="number")return this._initNumber(d,y,N);if(typeof d=="object")return this._initArray(d,y,N);y==="hex"&&(y=16),i(y===(y|0)&&y>=2&&y<=36),d=d.toString().replace(/\s+/g,"");var b=0;d[0]==="-"&&(b++,this.negative=1),b<d.length&&(y===16?this._parseHex(d,b,N):(this._parseBase(d,y,b),N==="le"&&this._initArray(this.toArray(),y,N)))},n.prototype._initNumber=function(d,y,N){d<0&&(this.negative=1,d=-d),d<67108864?(this.words=[d&67108863],this.length=1):d<4503599627370496?(this.words=[d&67108863,d/67108864&67108863],this.length=2):(i(d<9007199254740992),this.words=[d&67108863,d/67108864&67108863,1],this.length=3),N==="le"&&this._initArray(this.toArray(),y,N)},n.prototype._initArray=function(d,y,N){if(i(typeof d.length=="number"),d.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(d.length/3),this.words=new Array(this.length);for(var b=0;b<this.length;b++)this.words[b]=0;var M,I,j=0;if(N==="be")for(b=d.length-1,M=0;b>=0;b-=3)I=d[b]|d[b-1]<<8|d[b-2]<<16,this.words[M]|=I<<j&67108863,this.words[M+1]=I>>>26-j&67108863,j+=24,j>=26&&(j-=26,M++);else if(N==="le")for(b=0,M=0;b<d.length;b+=3)I=d[b]|d[b+1]<<8|d[b+2]<<16,this.words[M]|=I<<j&67108863,this.words[M+1]=I>>>26-j&67108863,j+=24,j>=26&&(j-=26,M++);return this.strip()};function a(T,d){var y=T.charCodeAt(d);return y>=65&&y<=70?y-55:y>=97&&y<=102?y-87:y-48&15}function u(T,d,y){var N=a(T,y);return y-1>=d&&(N|=a(T,y-1)<<4),N}n.prototype._parseHex=function(d,y,N){this.length=Math.ceil((d.length-y)/6),this.words=new Array(this.length);for(var b=0;b<this.length;b++)this.words[b]=0;var M=0,I=0,j;if(N==="be")for(b=d.length-1;b>=y;b-=2)j=u(d,y,b)<<M,this.words[I]|=j&67108863,M>=18?(M-=18,I+=1,this.words[I]|=j>>>26):M+=8;else{var v=d.length-y;for(b=v%2===0?y+1:y;b<d.length;b+=2)j=u(d,y,b)<<M,this.words[I]|=j&67108863,M>=18?(M-=18,I+=1,this.words[I]|=j>>>26):M+=8}this.strip()};function c(T,d,y,N){for(var b=0,M=Math.min(T.length,y),I=d;I<M;I++){var j=T.charCodeAt(I)-48;b*=N,j>=49?b+=j-49+10:j>=17?b+=j-17+10:b+=j}return b}n.prototype._parseBase=function(d,y,N){this.words=[0],this.length=1;for(var b=0,M=1;M<=67108863;M*=y)b++;b--,M=M/y|0;for(var I=d.length-N,j=I%b,v=Math.min(I,I-j)+N,p=0,x=N;x<v;x+=b)p=c(d,x,x+b,y),this.imuln(M),this.words[0]+p<67108864?this.words[0]+=p:this._iaddn(p);if(j!==0){var F=1;for(p=c(d,x,d.length,y),x=0;x<j;x++)F*=y;this.imuln(F),this.words[0]+p<67108864?this.words[0]+=p:this._iaddn(p)}this.strip()},n.prototype.copy=function(d){d.words=new Array(this.length);for(var y=0;y<this.length;y++)d.words[y]=this.words[y];d.length=this.length,d.negative=this.negative,d.red=this.red},n.prototype.clone=function(){var d=new n(null);return this.copy(d),d},n.prototype._expand=function(d){for(;this.length<d;)this.words[this.length++]=0;return this},n.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var l=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],h=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],f=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];n.prototype.toString=function(d,y){d=d||10,y=y|0||1;var N;if(d===16||d==="hex"){N="";for(var b=0,M=0,I=0;I<this.length;I++){var j=this.words[I],v=((j<<b|M)&16777215).toString(16);M=j>>>24-b&16777215,b+=2,b>=26&&(b-=26,I--),M!==0||I!==this.length-1?N=l[6-v.length]+v+N:N=v+N}for(M!==0&&(N=M.toString(16)+N);N.length%y!==0;)N="0"+N;return this.negative!==0&&(N="-"+N),N}if(d===(d|0)&&d>=2&&d<=36){var p=h[d],x=f[d];N="";var F=this.clone();for(F.negative=0;!F.isZero();){var V=F.modn(x).toString(d);F=F.idivn(x),F.isZero()?N=V+N:N=l[p-V.length]+V+N}for(this.isZero()&&(N="0"+N);N.length%y!==0;)N="0"+N;return this.negative!==0&&(N="-"+N),N}i(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var d=this.words[0];return this.length===2?d+=this.words[1]*67108864:this.length===3&&this.words[2]===1?d+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-d:d},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(d,y){return i(typeof o<"u"),this.toArrayLike(o,d,y)},n.prototype.toArray=function(d,y){return this.toArrayLike(Array,d,y)},n.prototype.toArrayLike=function(d,y,N){var b=this.byteLength(),M=N||Math.max(1,b);i(b<=M,"byte array longer than desired length"),i(M>0,"Requested array length <= 0"),this.strip();var I=y==="le",j=new d(M),v,p,x=this.clone();if(I){for(p=0;!x.isZero();p++)v=x.andln(255),x.iushrn(8),j[p]=v;for(;p<M;p++)j[p]=0}else{for(p=0;p<M-b;p++)j[p]=0;for(p=0;!x.isZero();p++)v=x.andln(255),x.iushrn(8),j[M-p-1]=v}return j},Math.clz32?n.prototype._countBits=function(d){return 32-Math.clz32(d)}:n.prototype._countBits=function(d){var y=d,N=0;return y>=4096&&(N+=13,y>>>=13),y>=64&&(N+=7,y>>>=7),y>=8&&(N+=4,y>>>=4),y>=2&&(N+=2,y>>>=2),N+y},n.prototype._zeroBits=function(d){if(d===0)return 26;var y=d,N=0;return(y&8191)===0&&(N+=13,y>>>=13),(y&127)===0&&(N+=7,y>>>=7),(y&15)===0&&(N+=4,y>>>=4),(y&3)===0&&(N+=2,y>>>=2),(y&1)===0&&N++,N},n.prototype.bitLength=function(){var d=this.words[this.length-1],y=this._countBits(d);return(this.length-1)*26+y};function w(T){for(var d=new Array(T.bitLength()),y=0;y<d.length;y++){var N=y/26|0,b=y%26;d[y]=(T.words[N]&1<<b)>>>b}return d}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var d=0,y=0;y<this.length;y++){var N=this._zeroBits(this.words[y]);if(d+=N,N!==26)break}return d},n.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},n.prototype.toTwos=function(d){return this.negative!==0?this.abs().inotn(d).iaddn(1):this.clone()},n.prototype.fromTwos=function(d){return this.testn(d-1)?this.notn(d).iaddn(1).ineg():this.clone()},n.prototype.isNeg=function(){return this.negative!==0},n.prototype.neg=function(){return this.clone().ineg()},n.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},n.prototype.iuor=function(d){for(;this.length<d.length;)this.words[this.length++]=0;for(var y=0;y<d.length;y++)this.words[y]=this.words[y]|d.words[y];return this.strip()},n.prototype.ior=function(d){return i((this.negative|d.negative)===0),this.iuor(d)},n.prototype.or=function(d){return this.length>d.length?this.clone().ior(d):d.clone().ior(this)},n.prototype.uor=function(d){return this.length>d.length?this.clone().iuor(d):d.clone().iuor(this)},n.prototype.iuand=function(d){var y;this.length>d.length?y=d:y=this;for(var N=0;N<y.length;N++)this.words[N]=this.words[N]&d.words[N];return this.length=y.length,this.strip()},n.prototype.iand=function(d){return i((this.negative|d.negative)===0),this.iuand(d)},n.prototype.and=function(d){return this.length>d.length?this.clone().iand(d):d.clone().iand(this)},n.prototype.uand=function(d){return this.length>d.length?this.clone().iuand(d):d.clone().iuand(this)},n.prototype.iuxor=function(d){var y,N;this.length>d.length?(y=this,N=d):(y=d,N=this);for(var b=0;b<N.length;b++)this.words[b]=y.words[b]^N.words[b];if(this!==y)for(;b<y.length;b++)this.words[b]=y.words[b];return this.length=y.length,this.strip()},n.prototype.ixor=function(d){return i((this.negative|d.negative)===0),this.iuxor(d)},n.prototype.xor=function(d){return this.length>d.length?this.clone().ixor(d):d.clone().ixor(this)},n.prototype.uxor=function(d){return this.length>d.length?this.clone().iuxor(d):d.clone().iuxor(this)},n.prototype.inotn=function(d){i(typeof d=="number"&&d>=0);var y=Math.ceil(d/26)|0,N=d%26;this._expand(y),N>0&&y--;for(var b=0;b<y;b++)this.words[b]=~this.words[b]&67108863;return N>0&&(this.words[b]=~this.words[b]&67108863>>26-N),this.strip()},n.prototype.notn=function(d){return this.clone().inotn(d)},n.prototype.setn=function(d,y){i(typeof d=="number"&&d>=0);var N=d/26|0,b=d%26;return this._expand(N+1),y?this.words[N]=this.words[N]|1<<b:this.words[N]=this.words[N]&~(1<<b),this.strip()},n.prototype.iadd=function(d){var y;if(this.negative!==0&&d.negative===0)return this.negative=0,y=this.isub(d),this.negative^=1,this._normSign();if(this.negative===0&&d.negative!==0)return d.negative=0,y=this.isub(d),d.negative=1,y._normSign();var N,b;this.length>d.length?(N=this,b=d):(N=d,b=this);for(var M=0,I=0;I<b.length;I++)y=(N.words[I]|0)+(b.words[I]|0)+M,this.words[I]=y&67108863,M=y>>>26;for(;M!==0&&I<N.length;I++)y=(N.words[I]|0)+M,this.words[I]=y&67108863,M=y>>>26;if(this.length=N.length,M!==0)this.words[this.length]=M,this.length++;else if(N!==this)for(;I<N.length;I++)this.words[I]=N.words[I];return this},n.prototype.add=function(d){var y;return d.negative!==0&&this.negative===0?(d.negative=0,y=this.sub(d),d.negative^=1,y):d.negative===0&&this.negative!==0?(this.negative=0,y=d.sub(this),this.negative=1,y):this.length>d.length?this.clone().iadd(d):d.clone().iadd(this)},n.prototype.isub=function(d){if(d.negative!==0){d.negative=0;var y=this.iadd(d);return d.negative=1,y._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(d),this.negative=1,this._normSign();var N=this.cmp(d);if(N===0)return this.negative=0,this.length=1,this.words[0]=0,this;var b,M;N>0?(b=this,M=d):(b=d,M=this);for(var I=0,j=0;j<M.length;j++)y=(b.words[j]|0)-(M.words[j]|0)+I,I=y>>26,this.words[j]=y&67108863;for(;I!==0&&j<b.length;j++)y=(b.words[j]|0)+I,I=y>>26,this.words[j]=y&67108863;if(I===0&&j<b.length&&b!==this)for(;j<b.length;j++)this.words[j]=b.words[j];return this.length=Math.max(this.length,j),b!==this&&(this.negative=1),this.strip()},n.prototype.sub=function(d){return this.clone().isub(d)};function g(T,d,y){y.negative=d.negative^T.negative;var N=T.length+d.length|0;y.length=N,N=N-1|0;var b=T.words[0]|0,M=d.words[0]|0,I=b*M,j=I&67108863,v=I/67108864|0;y.words[0]=j;for(var p=1;p<N;p++){for(var x=v>>>26,F=v&67108863,V=Math.min(p,d.length-1),Q=Math.max(0,p-T.length+1);Q<=V;Q++){var W=p-Q|0;b=T.words[W]|0,M=d.words[Q]|0,I=b*M+F,x+=I/67108864|0,F=I&67108863}y.words[p]=F|0,v=x|0}return v!==0?y.words[p]=v|0:y.length--,y.strip()}var m=function(d,y,N){var b=d.words,M=y.words,I=N.words,j=0,v,p,x,F=b[0]|0,V=F&8191,Q=F>>>13,W=b[1]|0,K=W&8191,se=W>>>13,oe=b[2]|0,te=oe&8191,le=oe>>>13,Mt=b[3]|0,me=Mt&8191,ve=Mt>>>13,Vt=b[4]|0,je=Vt&8191,Re=Vt>>>13,ji=b[5]|0,at=ji&8191,Xe=ji>>>13,cs=b[6]|0,Ze=cs&8191,et=cs>>>13,us=b[7]|0,$e=us&8191,Fe=us>>>13,ls=b[8]|0,Be=ls&8191,ft=ls>>>13,On=b[9]|0,Ce=On&8191,zt=On>>>13,Ja=M[0]|0,Wt=Ja&8191,Lt=Ja>>>13,zn=M[1]|0,Pt=zn&8191,kt=zn>>>13,ll=M[2]|0,tt=ll&8191,Ut=ll>>>13,hl=M[3]|0,qt=hl&8191,Et=hl>>>13,Ks=M[4]|0,Tt=Ks&8191,St=Ks>>>13,To=M[5]|0,pt=To&8191,Zt=To>>>13,dl=M[6]|0,Ht=dl&8191,Gt=dl>>>13,fl=M[7]|0,Rt=fl&8191,jt=fl>>>13,hs=M[8]|0,Kt=hs&8191,Jt=hs>>>13,pl=M[9]|0,Xt=pl&8191,er=pl>>>13;N.negative=d.negative^y.negative,N.length=19,v=Math.imul(V,Wt),p=Math.imul(V,Lt),p=p+Math.imul(Q,Wt)|0,x=Math.imul(Q,Lt);var fi=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(fi>>>26)|0,fi&=67108863,v=Math.imul(K,Wt),p=Math.imul(K,Lt),p=p+Math.imul(se,Wt)|0,x=Math.imul(se,Lt),v=v+Math.imul(V,Pt)|0,p=p+Math.imul(V,kt)|0,p=p+Math.imul(Q,Pt)|0,x=x+Math.imul(Q,kt)|0;var Xa=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(Xa>>>26)|0,Xa&=67108863,v=Math.imul(te,Wt),p=Math.imul(te,Lt),p=p+Math.imul(le,Wt)|0,x=Math.imul(le,Lt),v=v+Math.imul(K,Pt)|0,p=p+Math.imul(K,kt)|0,p=p+Math.imul(se,Pt)|0,x=x+Math.imul(se,kt)|0,v=v+Math.imul(V,tt)|0,p=p+Math.imul(V,Ut)|0,p=p+Math.imul(Q,tt)|0,x=x+Math.imul(Q,Ut)|0;var ec=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(ec>>>26)|0,ec&=67108863,v=Math.imul(me,Wt),p=Math.imul(me,Lt),p=p+Math.imul(ve,Wt)|0,x=Math.imul(ve,Lt),v=v+Math.imul(te,Pt)|0,p=p+Math.imul(te,kt)|0,p=p+Math.imul(le,Pt)|0,x=x+Math.imul(le,kt)|0,v=v+Math.imul(K,tt)|0,p=p+Math.imul(K,Ut)|0,p=p+Math.imul(se,tt)|0,x=x+Math.imul(se,Ut)|0,v=v+Math.imul(V,qt)|0,p=p+Math.imul(V,Et)|0,p=p+Math.imul(Q,qt)|0,x=x+Math.imul(Q,Et)|0;var tc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(tc>>>26)|0,tc&=67108863,v=Math.imul(je,Wt),p=Math.imul(je,Lt),p=p+Math.imul(Re,Wt)|0,x=Math.imul(Re,Lt),v=v+Math.imul(me,Pt)|0,p=p+Math.imul(me,kt)|0,p=p+Math.imul(ve,Pt)|0,x=x+Math.imul(ve,kt)|0,v=v+Math.imul(te,tt)|0,p=p+Math.imul(te,Ut)|0,p=p+Math.imul(le,tt)|0,x=x+Math.imul(le,Ut)|0,v=v+Math.imul(K,qt)|0,p=p+Math.imul(K,Et)|0,p=p+Math.imul(se,qt)|0,x=x+Math.imul(se,Et)|0,v=v+Math.imul(V,Tt)|0,p=p+Math.imul(V,St)|0,p=p+Math.imul(Q,Tt)|0,x=x+Math.imul(Q,St)|0;var rc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(rc>>>26)|0,rc&=67108863,v=Math.imul(at,Wt),p=Math.imul(at,Lt),p=p+Math.imul(Xe,Wt)|0,x=Math.imul(Xe,Lt),v=v+Math.imul(je,Pt)|0,p=p+Math.imul(je,kt)|0,p=p+Math.imul(Re,Pt)|0,x=x+Math.imul(Re,kt)|0,v=v+Math.imul(me,tt)|0,p=p+Math.imul(me,Ut)|0,p=p+Math.imul(ve,tt)|0,x=x+Math.imul(ve,Ut)|0,v=v+Math.imul(te,qt)|0,p=p+Math.imul(te,Et)|0,p=p+Math.imul(le,qt)|0,x=x+Math.imul(le,Et)|0,v=v+Math.imul(K,Tt)|0,p=p+Math.imul(K,St)|0,p=p+Math.imul(se,Tt)|0,x=x+Math.imul(se,St)|0,v=v+Math.imul(V,pt)|0,p=p+Math.imul(V,Zt)|0,p=p+Math.imul(Q,pt)|0,x=x+Math.imul(Q,Zt)|0;var ic=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(ic>>>26)|0,ic&=67108863,v=Math.imul(Ze,Wt),p=Math.imul(Ze,Lt),p=p+Math.imul(et,Wt)|0,x=Math.imul(et,Lt),v=v+Math.imul(at,Pt)|0,p=p+Math.imul(at,kt)|0,p=p+Math.imul(Xe,Pt)|0,x=x+Math.imul(Xe,kt)|0,v=v+Math.imul(je,tt)|0,p=p+Math.imul(je,Ut)|0,p=p+Math.imul(Re,tt)|0,x=x+Math.imul(Re,Ut)|0,v=v+Math.imul(me,qt)|0,p=p+Math.imul(me,Et)|0,p=p+Math.imul(ve,qt)|0,x=x+Math.imul(ve,Et)|0,v=v+Math.imul(te,Tt)|0,p=p+Math.imul(te,St)|0,p=p+Math.imul(le,Tt)|0,x=x+Math.imul(le,St)|0,v=v+Math.imul(K,pt)|0,p=p+Math.imul(K,Zt)|0,p=p+Math.imul(se,pt)|0,x=x+Math.imul(se,Zt)|0,v=v+Math.imul(V,Ht)|0,p=p+Math.imul(V,Gt)|0,p=p+Math.imul(Q,Ht)|0,x=x+Math.imul(Q,Gt)|0;var qi=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(qi>>>26)|0,qi&=67108863,v=Math.imul($e,Wt),p=Math.imul($e,Lt),p=p+Math.imul(Fe,Wt)|0,x=Math.imul(Fe,Lt),v=v+Math.imul(Ze,Pt)|0,p=p+Math.imul(Ze,kt)|0,p=p+Math.imul(et,Pt)|0,x=x+Math.imul(et,kt)|0,v=v+Math.imul(at,tt)|0,p=p+Math.imul(at,Ut)|0,p=p+Math.imul(Xe,tt)|0,x=x+Math.imul(Xe,Ut)|0,v=v+Math.imul(je,qt)|0,p=p+Math.imul(je,Et)|0,p=p+Math.imul(Re,qt)|0,x=x+Math.imul(Re,Et)|0,v=v+Math.imul(me,Tt)|0,p=p+Math.imul(me,St)|0,p=p+Math.imul(ve,Tt)|0,x=x+Math.imul(ve,St)|0,v=v+Math.imul(te,pt)|0,p=p+Math.imul(te,Zt)|0,p=p+Math.imul(le,pt)|0,x=x+Math.imul(le,Zt)|0,v=v+Math.imul(K,Ht)|0,p=p+Math.imul(K,Gt)|0,p=p+Math.imul(se,Ht)|0,x=x+Math.imul(se,Gt)|0,v=v+Math.imul(V,Rt)|0,p=p+Math.imul(V,jt)|0,p=p+Math.imul(Q,Rt)|0,x=x+Math.imul(Q,jt)|0;var sc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(sc>>>26)|0,sc&=67108863,v=Math.imul(Be,Wt),p=Math.imul(Be,Lt),p=p+Math.imul(ft,Wt)|0,x=Math.imul(ft,Lt),v=v+Math.imul($e,Pt)|0,p=p+Math.imul($e,kt)|0,p=p+Math.imul(Fe,Pt)|0,x=x+Math.imul(Fe,kt)|0,v=v+Math.imul(Ze,tt)|0,p=p+Math.imul(Ze,Ut)|0,p=p+Math.imul(et,tt)|0,x=x+Math.imul(et,Ut)|0,v=v+Math.imul(at,qt)|0,p=p+Math.imul(at,Et)|0,p=p+Math.imul(Xe,qt)|0,x=x+Math.imul(Xe,Et)|0,v=v+Math.imul(je,Tt)|0,p=p+Math.imul(je,St)|0,p=p+Math.imul(Re,Tt)|0,x=x+Math.imul(Re,St)|0,v=v+Math.imul(me,pt)|0,p=p+Math.imul(me,Zt)|0,p=p+Math.imul(ve,pt)|0,x=x+Math.imul(ve,Zt)|0,v=v+Math.imul(te,Ht)|0,p=p+Math.imul(te,Gt)|0,p=p+Math.imul(le,Ht)|0,x=x+Math.imul(le,Gt)|0,v=v+Math.imul(K,Rt)|0,p=p+Math.imul(K,jt)|0,p=p+Math.imul(se,Rt)|0,x=x+Math.imul(se,jt)|0,v=v+Math.imul(V,Kt)|0,p=p+Math.imul(V,Jt)|0,p=p+Math.imul(Q,Kt)|0,x=x+Math.imul(Q,Jt)|0;var nc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(nc>>>26)|0,nc&=67108863,v=Math.imul(Ce,Wt),p=Math.imul(Ce,Lt),p=p+Math.imul(zt,Wt)|0,x=Math.imul(zt,Lt),v=v+Math.imul(Be,Pt)|0,p=p+Math.imul(Be,kt)|0,p=p+Math.imul(ft,Pt)|0,x=x+Math.imul(ft,kt)|0,v=v+Math.imul($e,tt)|0,p=p+Math.imul($e,Ut)|0,p=p+Math.imul(Fe,tt)|0,x=x+Math.imul(Fe,Ut)|0,v=v+Math.imul(Ze,qt)|0,p=p+Math.imul(Ze,Et)|0,p=p+Math.imul(et,qt)|0,x=x+Math.imul(et,Et)|0,v=v+Math.imul(at,Tt)|0,p=p+Math.imul(at,St)|0,p=p+Math.imul(Xe,Tt)|0,x=x+Math.imul(Xe,St)|0,v=v+Math.imul(je,pt)|0,p=p+Math.imul(je,Zt)|0,p=p+Math.imul(Re,pt)|0,x=x+Math.imul(Re,Zt)|0,v=v+Math.imul(me,Ht)|0,p=p+Math.imul(me,Gt)|0,p=p+Math.imul(ve,Ht)|0,x=x+Math.imul(ve,Gt)|0,v=v+Math.imul(te,Rt)|0,p=p+Math.imul(te,jt)|0,p=p+Math.imul(le,Rt)|0,x=x+Math.imul(le,jt)|0,v=v+Math.imul(K,Kt)|0,p=p+Math.imul(K,Jt)|0,p=p+Math.imul(se,Kt)|0,x=x+Math.imul(se,Jt)|0,v=v+Math.imul(V,Xt)|0,p=p+Math.imul(V,er)|0,p=p+Math.imul(Q,Xt)|0,x=x+Math.imul(Q,er)|0;var oc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(oc>>>26)|0,oc&=67108863,v=Math.imul(Ce,Pt),p=Math.imul(Ce,kt),p=p+Math.imul(zt,Pt)|0,x=Math.imul(zt,kt),v=v+Math.imul(Be,tt)|0,p=p+Math.imul(Be,Ut)|0,p=p+Math.imul(ft,tt)|0,x=x+Math.imul(ft,Ut)|0,v=v+Math.imul($e,qt)|0,p=p+Math.imul($e,Et)|0,p=p+Math.imul(Fe,qt)|0,x=x+Math.imul(Fe,Et)|0,v=v+Math.imul(Ze,Tt)|0,p=p+Math.imul(Ze,St)|0,p=p+Math.imul(et,Tt)|0,x=x+Math.imul(et,St)|0,v=v+Math.imul(at,pt)|0,p=p+Math.imul(at,Zt)|0,p=p+Math.imul(Xe,pt)|0,x=x+Math.imul(Xe,Zt)|0,v=v+Math.imul(je,Ht)|0,p=p+Math.imul(je,Gt)|0,p=p+Math.imul(Re,Ht)|0,x=x+Math.imul(Re,Gt)|0,v=v+Math.imul(me,Rt)|0,p=p+Math.imul(me,jt)|0,p=p+Math.imul(ve,Rt)|0,x=x+Math.imul(ve,jt)|0,v=v+Math.imul(te,Kt)|0,p=p+Math.imul(te,Jt)|0,p=p+Math.imul(le,Kt)|0,x=x+Math.imul(le,Jt)|0,v=v+Math.imul(K,Xt)|0,p=p+Math.imul(K,er)|0,p=p+Math.imul(se,Xt)|0,x=x+Math.imul(se,er)|0;var ac=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(ac>>>26)|0,ac&=67108863,v=Math.imul(Ce,tt),p=Math.imul(Ce,Ut),p=p+Math.imul(zt,tt)|0,x=Math.imul(zt,Ut),v=v+Math.imul(Be,qt)|0,p=p+Math.imul(Be,Et)|0,p=p+Math.imul(ft,qt)|0,x=x+Math.imul(ft,Et)|0,v=v+Math.imul($e,Tt)|0,p=p+Math.imul($e,St)|0,p=p+Math.imul(Fe,Tt)|0,x=x+Math.imul(Fe,St)|0,v=v+Math.imul(Ze,pt)|0,p=p+Math.imul(Ze,Zt)|0,p=p+Math.imul(et,pt)|0,x=x+Math.imul(et,Zt)|0,v=v+Math.imul(at,Ht)|0,p=p+Math.imul(at,Gt)|0,p=p+Math.imul(Xe,Ht)|0,x=x+Math.imul(Xe,Gt)|0,v=v+Math.imul(je,Rt)|0,p=p+Math.imul(je,jt)|0,p=p+Math.imul(Re,Rt)|0,x=x+Math.imul(Re,jt)|0,v=v+Math.imul(me,Kt)|0,p=p+Math.imul(me,Jt)|0,p=p+Math.imul(ve,Kt)|0,x=x+Math.imul(ve,Jt)|0,v=v+Math.imul(te,Xt)|0,p=p+Math.imul(te,er)|0,p=p+Math.imul(le,Xt)|0,x=x+Math.imul(le,er)|0;var cc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(cc>>>26)|0,cc&=67108863,v=Math.imul(Ce,qt),p=Math.imul(Ce,Et),p=p+Math.imul(zt,qt)|0,x=Math.imul(zt,Et),v=v+Math.imul(Be,Tt)|0,p=p+Math.imul(Be,St)|0,p=p+Math.imul(ft,Tt)|0,x=x+Math.imul(ft,St)|0,v=v+Math.imul($e,pt)|0,p=p+Math.imul($e,Zt)|0,p=p+Math.imul(Fe,pt)|0,x=x+Math.imul(Fe,Zt)|0,v=v+Math.imul(Ze,Ht)|0,p=p+Math.imul(Ze,Gt)|0,p=p+Math.imul(et,Ht)|0,x=x+Math.imul(et,Gt)|0,v=v+Math.imul(at,Rt)|0,p=p+Math.imul(at,jt)|0,p=p+Math.imul(Xe,Rt)|0,x=x+Math.imul(Xe,jt)|0,v=v+Math.imul(je,Kt)|0,p=p+Math.imul(je,Jt)|0,p=p+Math.imul(Re,Kt)|0,x=x+Math.imul(Re,Jt)|0,v=v+Math.imul(me,Xt)|0,p=p+Math.imul(me,er)|0,p=p+Math.imul(ve,Xt)|0,x=x+Math.imul(ve,er)|0;var Js=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(Js>>>26)|0,Js&=67108863,v=Math.imul(Ce,Tt),p=Math.imul(Ce,St),p=p+Math.imul(zt,Tt)|0,x=Math.imul(zt,St),v=v+Math.imul(Be,pt)|0,p=p+Math.imul(Be,Zt)|0,p=p+Math.imul(ft,pt)|0,x=x+Math.imul(ft,Zt)|0,v=v+Math.imul($e,Ht)|0,p=p+Math.imul($e,Gt)|0,p=p+Math.imul(Fe,Ht)|0,x=x+Math.imul(Fe,Gt)|0,v=v+Math.imul(Ze,Rt)|0,p=p+Math.imul(Ze,jt)|0,p=p+Math.imul(et,Rt)|0,x=x+Math.imul(et,jt)|0,v=v+Math.imul(at,Kt)|0,p=p+Math.imul(at,Jt)|0,p=p+Math.imul(Xe,Kt)|0,x=x+Math.imul(Xe,Jt)|0,v=v+Math.imul(je,Xt)|0,p=p+Math.imul(je,er)|0,p=p+Math.imul(Re,Xt)|0,x=x+Math.imul(Re,er)|0;var uc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(uc>>>26)|0,uc&=67108863,v=Math.imul(Ce,pt),p=Math.imul(Ce,Zt),p=p+Math.imul(zt,pt)|0,x=Math.imul(zt,Zt),v=v+Math.imul(Be,Ht)|0,p=p+Math.imul(Be,Gt)|0,p=p+Math.imul(ft,Ht)|0,x=x+Math.imul(ft,Gt)|0,v=v+Math.imul($e,Rt)|0,p=p+Math.imul($e,jt)|0,p=p+Math.imul(Fe,Rt)|0,x=x+Math.imul(Fe,jt)|0,v=v+Math.imul(Ze,Kt)|0,p=p+Math.imul(Ze,Jt)|0,p=p+Math.imul(et,Kt)|0,x=x+Math.imul(et,Jt)|0,v=v+Math.imul(at,Xt)|0,p=p+Math.imul(at,er)|0,p=p+Math.imul(Xe,Xt)|0,x=x+Math.imul(Xe,er)|0;var lc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(lc>>>26)|0,lc&=67108863,v=Math.imul(Ce,Ht),p=Math.imul(Ce,Gt),p=p+Math.imul(zt,Ht)|0,x=Math.imul(zt,Gt),v=v+Math.imul(Be,Rt)|0,p=p+Math.imul(Be,jt)|0,p=p+Math.imul(ft,Rt)|0,x=x+Math.imul(ft,jt)|0,v=v+Math.imul($e,Kt)|0,p=p+Math.imul($e,Jt)|0,p=p+Math.imul(Fe,Kt)|0,x=x+Math.imul(Fe,Jt)|0,v=v+Math.imul(Ze,Xt)|0,p=p+Math.imul(Ze,er)|0,p=p+Math.imul(et,Xt)|0,x=x+Math.imul(et,er)|0;var xi=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(xi>>>26)|0,xi&=67108863,v=Math.imul(Ce,Rt),p=Math.imul(Ce,jt),p=p+Math.imul(zt,Rt)|0,x=Math.imul(zt,jt),v=v+Math.imul(Be,Kt)|0,p=p+Math.imul(Be,Jt)|0,p=p+Math.imul(ft,Kt)|0,x=x+Math.imul(ft,Jt)|0,v=v+Math.imul($e,Xt)|0,p=p+Math.imul($e,er)|0,p=p+Math.imul(Fe,Xt)|0,x=x+Math.imul(Fe,er)|0;var hc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(hc>>>26)|0,hc&=67108863,v=Math.imul(Ce,Kt),p=Math.imul(Ce,Jt),p=p+Math.imul(zt,Kt)|0,x=Math.imul(zt,Jt),v=v+Math.imul(Be,Xt)|0,p=p+Math.imul(Be,er)|0,p=p+Math.imul(ft,Xt)|0,x=x+Math.imul(ft,er)|0;var dc=(j+v|0)+((p&8191)<<13)|0;j=(x+(p>>>13)|0)+(dc>>>26)|0,dc&=67108863,v=Math.imul(Ce,Xt),p=Math.imul(Ce,er),p=p+Math.imul(zt,Xt)|0,x=Math.imul(zt,er);var fc=(j+v|0)+((p&8191)<<13)|0;return j=(x+(p>>>13)|0)+(fc>>>26)|0,fc&=67108863,I[0]=fi,I[1]=Xa,I[2]=ec,I[3]=tc,I[4]=rc,I[5]=ic,I[6]=qi,I[7]=sc,I[8]=nc,I[9]=oc,I[10]=ac,I[11]=cc,I[12]=Js,I[13]=uc,I[14]=lc,I[15]=xi,I[16]=hc,I[17]=dc,I[18]=fc,j!==0&&(I[19]=j,N.length++),N};Math.imul||(m=g);function E(T,d,y){y.negative=d.negative^T.negative,y.length=T.length+d.length;for(var N=0,b=0,M=0;M<y.length-1;M++){var I=b;b=0;for(var j=N&67108863,v=Math.min(M,d.length-1),p=Math.max(0,M-T.length+1);p<=v;p++){var x=M-p,F=T.words[x]|0,V=d.words[p]|0,Q=F*V,W=Q&67108863;I=I+(Q/67108864|0)|0,W=W+j|0,j=W&67108863,I=I+(W>>>26)|0,b+=I>>>26,I&=67108863}y.words[M]=j,N=I,I=b}return N!==0?y.words[M]=N:y.length--,y.strip()}function A(T,d,y){var N=new D;return N.mulp(T,d,y)}n.prototype.mulTo=function(d,y){var N,b=this.length+d.length;return this.length===10&&d.length===10?N=m(this,d,y):b<63?N=g(this,d,y):b<1024?N=E(this,d,y):N=A(this,d,y),N};function D(T,d){this.x=T,this.y=d}D.prototype.makeRBT=function(d){for(var y=new Array(d),N=n.prototype._countBits(d)-1,b=0;b<d;b++)y[b]=this.revBin(b,N,d);return y},D.prototype.revBin=function(d,y,N){if(d===0||d===N-1)return d;for(var b=0,M=0;M<y;M++)b|=(d&1)<<y-M-1,d>>=1;return b},D.prototype.permute=function(d,y,N,b,M,I){for(var j=0;j<I;j++)b[j]=y[d[j]],M[j]=N[d[j]]},D.prototype.transform=function(d,y,N,b,M,I){this.permute(I,d,y,N,b,M);for(var j=1;j<M;j<<=1)for(var v=j<<1,p=Math.cos(2*Math.PI/v),x=Math.sin(2*Math.PI/v),F=0;F<M;F+=v)for(var V=p,Q=x,W=0;W<j;W++){var K=N[F+W],se=b[F+W],oe=N[F+W+j],te=b[F+W+j],le=V*oe-Q*te;te=V*te+Q*oe,oe=le,N[F+W]=K+oe,b[F+W]=se+te,N[F+W+j]=K-oe,b[F+W+j]=se-te,W!==v&&(le=p*V-x*Q,Q=p*Q+x*V,V=le)}},D.prototype.guessLen13b=function(d,y){var N=Math.max(y,d)|1,b=N&1,M=0;for(N=N/2|0;N;N=N>>>1)M++;return 1<<M+1+b},D.prototype.conjugate=function(d,y,N){if(!(N<=1))for(var b=0;b<N/2;b++){var M=d[b];d[b]=d[N-b-1],d[N-b-1]=M,M=y[b],y[b]=-y[N-b-1],y[N-b-1]=-M}},D.prototype.normalize13b=function(d,y){for(var N=0,b=0;b<y/2;b++){var M=Math.round(d[2*b+1]/y)*8192+Math.round(d[2*b]/y)+N;d[b]=M&67108863,M<67108864?N=0:N=M/67108864|0}return d},D.prototype.convert13b=function(d,y,N,b){for(var M=0,I=0;I<y;I++)M=M+(d[I]|0),N[2*I]=M&8191,M=M>>>13,N[2*I+1]=M&8191,M=M>>>13;for(I=2*y;I<b;++I)N[I]=0;i(M===0),i((M&-8192)===0)},D.prototype.stub=function(d){for(var y=new Array(d),N=0;N<d;N++)y[N]=0;return y},D.prototype.mulp=function(d,y,N){var b=2*this.guessLen13b(d.length,y.length),M=this.makeRBT(b),I=this.stub(b),j=new Array(b),v=new Array(b),p=new Array(b),x=new Array(b),F=new Array(b),V=new Array(b),Q=N.words;Q.length=b,this.convert13b(d.words,d.length,j,b),this.convert13b(y.words,y.length,x,b),this.transform(j,I,v,p,b,M),this.transform(x,I,F,V,b,M);for(var W=0;W<b;W++){var K=v[W]*F[W]-p[W]*V[W];p[W]=v[W]*V[W]+p[W]*F[W],v[W]=K}return this.conjugate(v,p,b),this.transform(v,p,Q,I,b,M),this.conjugate(Q,I,b),this.normalize13b(Q,b),N.negative=d.negative^y.negative,N.length=d.length+y.length,N.strip()},n.prototype.mul=function(d){var y=new n(null);return y.words=new Array(this.length+d.length),this.mulTo(d,y)},n.prototype.mulf=function(d){var y=new n(null);return y.words=new Array(this.length+d.length),A(this,d,y)},n.prototype.imul=function(d){return this.clone().mulTo(d,this)},n.prototype.imuln=function(d){i(typeof d=="number"),i(d<67108864);for(var y=0,N=0;N<this.length;N++){var b=(this.words[N]|0)*d,M=(b&67108863)+(y&67108863);y>>=26,y+=b/67108864|0,y+=M>>>26,this.words[N]=M&67108863}return y!==0&&(this.words[N]=y,this.length++),this.length=d===0?1:this.length,this},n.prototype.muln=function(d){return this.clone().imuln(d)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(d){var y=w(d);if(y.length===0)return new n(1);for(var N=this,b=0;b<y.length&&y[b]===0;b++,N=N.sqr());if(++b<y.length)for(var M=N.sqr();b<y.length;b++,M=M.sqr())y[b]!==0&&(N=N.mul(M));return N},n.prototype.iushln=function(d){i(typeof d=="number"&&d>=0);var y=d%26,N=(d-y)/26,b=67108863>>>26-y<<26-y,M;if(y!==0){var I=0;for(M=0;M<this.length;M++){var j=this.words[M]&b,v=(this.words[M]|0)-j<<y;this.words[M]=v|I,I=j>>>26-y}I&&(this.words[M]=I,this.length++)}if(N!==0){for(M=this.length-1;M>=0;M--)this.words[M+N]=this.words[M];for(M=0;M<N;M++)this.words[M]=0;this.length+=N}return this.strip()},n.prototype.ishln=function(d){return i(this.negative===0),this.iushln(d)},n.prototype.iushrn=function(d,y,N){i(typeof d=="number"&&d>=0);var b;y?b=(y-y%26)/26:b=0;var M=d%26,I=Math.min((d-M)/26,this.length),j=67108863^67108863>>>M<<M,v=N;if(b-=I,b=Math.max(0,b),v){for(var p=0;p<I;p++)v.words[p]=this.words[p];v.length=I}if(I!==0)if(this.length>I)for(this.length-=I,p=0;p<this.length;p++)this.words[p]=this.words[p+I];else this.words[0]=0,this.length=1;var x=0;for(p=this.length-1;p>=0&&(x!==0||p>=b);p--){var F=this.words[p]|0;this.words[p]=x<<26-M|F>>>M,x=F&j}return v&&x!==0&&(v.words[v.length++]=x),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.ishrn=function(d,y,N){return i(this.negative===0),this.iushrn(d,y,N)},n.prototype.shln=function(d){return this.clone().ishln(d)},n.prototype.ushln=function(d){return this.clone().iushln(d)},n.prototype.shrn=function(d){return this.clone().ishrn(d)},n.prototype.ushrn=function(d){return this.clone().iushrn(d)},n.prototype.testn=function(d){i(typeof d=="number"&&d>=0);var y=d%26,N=(d-y)/26,b=1<<y;if(this.length<=N)return!1;var M=this.words[N];return!!(M&b)},n.prototype.imaskn=function(d){i(typeof d=="number"&&d>=0);var y=d%26,N=(d-y)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=N)return this;if(y!==0&&N++,this.length=Math.min(N,this.length),y!==0){var b=67108863^67108863>>>y<<y;this.words[this.length-1]&=b}return this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.maskn=function(d){return this.clone().imaskn(d)},n.prototype.iaddn=function(d){return i(typeof d=="number"),i(d<67108864),d<0?this.isubn(-d):this.negative!==0?this.length===1&&(this.words[0]|0)<d?(this.words[0]=d-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(d),this.negative=1,this):this._iaddn(d)},n.prototype._iaddn=function(d){this.words[0]+=d;for(var y=0;y<this.length&&this.words[y]>=67108864;y++)this.words[y]-=67108864,y===this.length-1?this.words[y+1]=1:this.words[y+1]++;return this.length=Math.max(this.length,y+1),this},n.prototype.isubn=function(d){if(i(typeof d=="number"),i(d<67108864),d<0)return this.iaddn(-d);if(this.negative!==0)return this.negative=0,this.iaddn(d),this.negative=1,this;if(this.words[0]-=d,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var y=0;y<this.length&&this.words[y]<0;y++)this.words[y]+=67108864,this.words[y+1]-=1;return this.strip()},n.prototype.addn=function(d){return this.clone().iaddn(d)},n.prototype.subn=function(d){return this.clone().isubn(d)},n.prototype.iabs=function(){return this.negative=0,this},n.prototype.abs=function(){return this.clone().iabs()},n.prototype._ishlnsubmul=function(d,y,N){var b=d.length+N,M;this._expand(b);var I,j=0;for(M=0;M<d.length;M++){I=(this.words[M+N]|0)+j;var v=(d.words[M]|0)*y;I-=v&67108863,j=(I>>26)-(v/67108864|0),this.words[M+N]=I&67108863}for(;M<this.length-N;M++)I=(this.words[M+N]|0)+j,j=I>>26,this.words[M+N]=I&67108863;if(j===0)return this.strip();for(i(j===-1),j=0,M=0;M<this.length;M++)I=-(this.words[M]|0)+j,j=I>>26,this.words[M]=I&67108863;return this.negative=1,this.strip()},n.prototype._wordDiv=function(d,y){var N=this.length-d.length,b=this.clone(),M=d,I=M.words[M.length-1]|0,j=this._countBits(I);N=26-j,N!==0&&(M=M.ushln(N),b.iushln(N),I=M.words[M.length-1]|0);var v=b.length-M.length,p;if(y!=="mod"){p=new n(null),p.length=v+1,p.words=new Array(p.length);for(var x=0;x<p.length;x++)p.words[x]=0}var F=b.clone()._ishlnsubmul(M,1,v);F.negative===0&&(b=F,p&&(p.words[v]=1));for(var V=v-1;V>=0;V--){var Q=(b.words[M.length+V]|0)*67108864+(b.words[M.length+V-1]|0);for(Q=Math.min(Q/I|0,67108863),b._ishlnsubmul(M,Q,V);b.negative!==0;)Q--,b.negative=0,b._ishlnsubmul(M,1,V),b.isZero()||(b.negative^=1);p&&(p.words[V]=Q)}return p&&p.strip(),b.strip(),y!=="div"&&N!==0&&b.iushrn(N),{div:p||null,mod:b}},n.prototype.divmod=function(d,y,N){if(i(!d.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var b,M,I;return this.negative!==0&&d.negative===0?(I=this.neg().divmod(d,y),y!=="mod"&&(b=I.div.neg()),y!=="div"&&(M=I.mod.neg(),N&&M.negative!==0&&M.iadd(d)),{div:b,mod:M}):this.negative===0&&d.negative!==0?(I=this.divmod(d.neg(),y),y!=="mod"&&(b=I.div.neg()),{div:b,mod:I.mod}):(this.negative&d.negative)!==0?(I=this.neg().divmod(d.neg(),y),y!=="div"&&(M=I.mod.neg(),N&&M.negative!==0&&M.isub(d)),{div:I.div,mod:M}):d.length>this.length||this.cmp(d)<0?{div:new n(0),mod:this}:d.length===1?y==="div"?{div:this.divn(d.words[0]),mod:null}:y==="mod"?{div:null,mod:new n(this.modn(d.words[0]))}:{div:this.divn(d.words[0]),mod:new n(this.modn(d.words[0]))}:this._wordDiv(d,y)},n.prototype.div=function(d){return this.divmod(d,"div",!1).div},n.prototype.mod=function(d){return this.divmod(d,"mod",!1).mod},n.prototype.umod=function(d){return this.divmod(d,"mod",!0).mod},n.prototype.divRound=function(d){var y=this.divmod(d);if(y.mod.isZero())return y.div;var N=y.div.negative!==0?y.mod.isub(d):y.mod,b=d.ushrn(1),M=d.andln(1),I=N.cmp(b);return I<0||M===1&&I===0?y.div:y.div.negative!==0?y.div.isubn(1):y.div.iaddn(1)},n.prototype.modn=function(d){i(d<=67108863);for(var y=(1<<26)%d,N=0,b=this.length-1;b>=0;b--)N=(y*N+(this.words[b]|0))%d;return N},n.prototype.idivn=function(d){i(d<=67108863);for(var y=0,N=this.length-1;N>=0;N--){var b=(this.words[N]|0)+y*67108864;this.words[N]=b/d|0,y=b%d}return this.strip()},n.prototype.divn=function(d){return this.clone().idivn(d)},n.prototype.egcd=function(d){i(d.negative===0),i(!d.isZero());var y=this,N=d.clone();y.negative!==0?y=y.umod(d):y=y.clone();for(var b=new n(1),M=new n(0),I=new n(0),j=new n(1),v=0;y.isEven()&&N.isEven();)y.iushrn(1),N.iushrn(1),++v;for(var p=N.clone(),x=y.clone();!y.isZero();){for(var F=0,V=1;(y.words[0]&V)===0&&F<26;++F,V<<=1);if(F>0)for(y.iushrn(F);F-- >0;)(b.isOdd()||M.isOdd())&&(b.iadd(p),M.isub(x)),b.iushrn(1),M.iushrn(1);for(var Q=0,W=1;(N.words[0]&W)===0&&Q<26;++Q,W<<=1);if(Q>0)for(N.iushrn(Q);Q-- >0;)(I.isOdd()||j.isOdd())&&(I.iadd(p),j.isub(x)),I.iushrn(1),j.iushrn(1);y.cmp(N)>=0?(y.isub(N),b.isub(I),M.isub(j)):(N.isub(y),I.isub(b),j.isub(M))}return{a:I,b:j,gcd:N.iushln(v)}},n.prototype._invmp=function(d){i(d.negative===0),i(!d.isZero());var y=this,N=d.clone();y.negative!==0?y=y.umod(d):y=y.clone();for(var b=new n(1),M=new n(0),I=N.clone();y.cmpn(1)>0&&N.cmpn(1)>0;){for(var j=0,v=1;(y.words[0]&v)===0&&j<26;++j,v<<=1);if(j>0)for(y.iushrn(j);j-- >0;)b.isOdd()&&b.iadd(I),b.iushrn(1);for(var p=0,x=1;(N.words[0]&x)===0&&p<26;++p,x<<=1);if(p>0)for(N.iushrn(p);p-- >0;)M.isOdd()&&M.iadd(I),M.iushrn(1);y.cmp(N)>=0?(y.isub(N),b.isub(M)):(N.isub(y),M.isub(b))}var F;return y.cmpn(1)===0?F=b:F=M,F.cmpn(0)<0&&F.iadd(d),F},n.prototype.gcd=function(d){if(this.isZero())return d.abs();if(d.isZero())return this.abs();var y=this.clone(),N=d.clone();y.negative=0,N.negative=0;for(var b=0;y.isEven()&&N.isEven();b++)y.iushrn(1),N.iushrn(1);do{for(;y.isEven();)y.iushrn(1);for(;N.isEven();)N.iushrn(1);var M=y.cmp(N);if(M<0){var I=y;y=N,N=I}else if(M===0||N.cmpn(1)===0)break;y.isub(N)}while(!0);return N.iushln(b)},n.prototype.invm=function(d){return this.egcd(d).a.umod(d)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(d){return this.words[0]&d},n.prototype.bincn=function(d){i(typeof d=="number");var y=d%26,N=(d-y)/26,b=1<<y;if(this.length<=N)return this._expand(N+1),this.words[N]|=b,this;for(var M=b,I=N;M!==0&&I<this.length;I++){var j=this.words[I]|0;j+=M,M=j>>>26,j&=67108863,this.words[I]=j}return M!==0&&(this.words[I]=M,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(d){var y=d<0;if(this.negative!==0&&!y)return-1;if(this.negative===0&&y)return 1;this.strip();var N;if(this.length>1)N=1;else{y&&(d=-d),i(d<=67108863,"Number is too big");var b=this.words[0]|0;N=b===d?0:b<d?-1:1}return this.negative!==0?-N|0:N},n.prototype.cmp=function(d){if(this.negative!==0&&d.negative===0)return-1;if(this.negative===0&&d.negative!==0)return 1;var y=this.ucmp(d);return this.negative!==0?-y|0:y},n.prototype.ucmp=function(d){if(this.length>d.length)return 1;if(this.length<d.length)return-1;for(var y=0,N=this.length-1;N>=0;N--){var b=this.words[N]|0,M=d.words[N]|0;if(b!==M){b<M?y=-1:b>M&&(y=1);break}}return y},n.prototype.gtn=function(d){return this.cmpn(d)===1},n.prototype.gt=function(d){return this.cmp(d)===1},n.prototype.gten=function(d){return this.cmpn(d)>=0},n.prototype.gte=function(d){return this.cmp(d)>=0},n.prototype.ltn=function(d){return this.cmpn(d)===-1},n.prototype.lt=function(d){return this.cmp(d)===-1},n.prototype.lten=function(d){return this.cmpn(d)<=0},n.prototype.lte=function(d){return this.cmp(d)<=0},n.prototype.eqn=function(d){return this.cmpn(d)===0},n.prototype.eq=function(d){return this.cmp(d)===0},n.red=function(d){return new z(d)},n.prototype.toRed=function(d){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),d.convertTo(this)._forceRed(d)},n.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},n.prototype._forceRed=function(d){return this.red=d,this},n.prototype.forceRed=function(d){return i(!this.red,"Already a number in reduction context"),this._forceRed(d)},n.prototype.redAdd=function(d){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,d)},n.prototype.redIAdd=function(d){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,d)},n.prototype.redSub=function(d){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,d)},n.prototype.redISub=function(d){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,d)},n.prototype.redShl=function(d){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,d)},n.prototype.redMul=function(d){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,d),this.red.mul(this,d)},n.prototype.redIMul=function(d){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,d),this.red.imul(this,d)},n.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},n.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},n.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},n.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},n.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},n.prototype.redPow=function(d){return i(this.red&&!d.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,d)};var O={k256:null,p224:null,p192:null,p25519:null};function C(T,d){this.name=T,this.p=new n(d,16),this.n=this.p.bitLength(),this.k=new n(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}C.prototype._tmp=function(){var d=new n(null);return d.words=new Array(Math.ceil(this.n/13)),d},C.prototype.ireduce=function(d){var y=d,N;do this.split(y,this.tmp),y=this.imulK(y),y=y.iadd(this.tmp),N=y.bitLength();while(N>this.n);var b=N<this.n?-1:y.ucmp(this.p);return b===0?(y.words[0]=0,y.length=1):b>0?y.isub(this.p):y.strip!==void 0?y.strip():y._strip(),y},C.prototype.split=function(d,y){d.iushrn(this.n,0,y)},C.prototype.imulK=function(d){return d.imul(this.k)};function _(){C.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(_,C),_.prototype.split=function(d,y){for(var N=4194303,b=Math.min(d.length,9),M=0;M<b;M++)y.words[M]=d.words[M];if(y.length=b,d.length<=9){d.words[0]=0,d.length=1;return}var I=d.words[9];for(y.words[y.length++]=I&N,M=10;M<d.length;M++){var j=d.words[M]|0;d.words[M-10]=(j&N)<<4|I>>>22,I=j}I>>>=22,d.words[M-10]=I,I===0&&d.length>10?d.length-=10:d.length-=9},_.prototype.imulK=function(d){d.words[d.length]=0,d.words[d.length+1]=0,d.length+=2;for(var y=0,N=0;N<d.length;N++){var b=d.words[N]|0;y+=b*977,d.words[N]=y&67108863,y=b*64+(y/67108864|0)}return d.words[d.length-1]===0&&(d.length--,d.words[d.length-1]===0&&d.length--),d};function S(){C.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}s(S,C);function L(){C.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}s(L,C);function k(){C.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}s(k,C),k.prototype.imulK=function(d){for(var y=0,N=0;N<d.length;N++){var b=(d.words[N]|0)*19+y,M=b&67108863;b>>>=26,d.words[N]=M,y=b}return y!==0&&(d.words[d.length++]=y),d},n._prime=function(d){if(O[d])return O[d];var y;if(d==="k256")y=new _;else if(d==="p224")y=new S;else if(d==="p192")y=new L;else if(d==="p25519")y=new k;else throw new Error("Unknown prime "+d);return O[d]=y,y};function z(T){if(typeof T=="string"){var d=n._prime(T);this.m=d.p,this.prime=d}else i(T.gtn(1),"modulus must be greater than 1"),this.m=T,this.prime=null}z.prototype._verify1=function(d){i(d.negative===0,"red works only with positives"),i(d.red,"red works only with red numbers")},z.prototype._verify2=function(d,y){i((d.negative|y.negative)===0,"red works only with positives"),i(d.red&&d.red===y.red,"red works only with red numbers")},z.prototype.imod=function(d){return this.prime?this.prime.ireduce(d)._forceRed(this):d.umod(this.m)._forceRed(this)},z.prototype.neg=function(d){return d.isZero()?d.clone():this.m.sub(d)._forceRed(this)},z.prototype.add=function(d,y){this._verify2(d,y);var N=d.add(y);return N.cmp(this.m)>=0&&N.isub(this.m),N._forceRed(this)},z.prototype.iadd=function(d,y){this._verify2(d,y);var N=d.iadd(y);return N.cmp(this.m)>=0&&N.isub(this.m),N},z.prototype.sub=function(d,y){this._verify2(d,y);var N=d.sub(y);return N.cmpn(0)<0&&N.iadd(this.m),N._forceRed(this)},z.prototype.isub=function(d,y){this._verify2(d,y);var N=d.isub(y);return N.cmpn(0)<0&&N.iadd(this.m),N},z.prototype.shl=function(d,y){return this._verify1(d),this.imod(d.ushln(y))},z.prototype.imul=function(d,y){return this._verify2(d,y),this.imod(d.imul(y))},z.prototype.mul=function(d,y){return this._verify2(d,y),this.imod(d.mul(y))},z.prototype.isqr=function(d){return this.imul(d,d.clone())},z.prototype.sqr=function(d){return this.mul(d,d)},z.prototype.sqrt=function(d){if(d.isZero())return d.clone();var y=this.m.andln(3);if(i(y%2===1),y===3){var N=this.m.add(new n(1)).iushrn(2);return this.pow(d,N)}for(var b=this.m.subn(1),M=0;!b.isZero()&&b.andln(1)===0;)M++,b.iushrn(1);i(!b.isZero());var I=new n(1).toRed(this),j=I.redNeg(),v=this.m.subn(1).iushrn(1),p=this.m.bitLength();for(p=new n(2*p*p).toRed(this);this.pow(p,v).cmp(j)!==0;)p.redIAdd(j);for(var x=this.pow(p,b),F=this.pow(d,b.addn(1).iushrn(1)),V=this.pow(d,b),Q=M;V.cmp(I)!==0;){for(var W=V,K=0;W.cmp(I)!==0;K++)W=W.redSqr();i(K<Q);var se=this.pow(x,new n(1).iushln(Q-K-1));F=F.redMul(se),x=se.redSqr(),V=V.redMul(x),Q=K}return F},z.prototype.invm=function(d){var y=d._invmp(this.m);return y.negative!==0?(y.negative=0,this.imod(y).redNeg()):this.imod(y)},z.prototype.pow=function(d,y){if(y.isZero())return new n(1).toRed(this);if(y.cmpn(1)===0)return d.clone();var N=4,b=new Array(1<<N);b[0]=new n(1).toRed(this),b[1]=d;for(var M=2;M<b.length;M++)b[M]=this.mul(b[M-1],d);var I=b[0],j=0,v=0,p=y.bitLength()%26;for(p===0&&(p=26),M=y.length-1;M>=0;M--){for(var x=y.words[M],F=p-1;F>=0;F--){var V=x>>F&1;if(I!==b[0]&&(I=this.sqr(I)),V===0&&j===0){v=0;continue}j<<=1,j|=V,v++,!(v!==N&&(M!==0||F!==0))&&(I=this.mul(I,b[j]),v=0,j=0)}p=26}return I},z.prototype.convertTo=function(d){var y=d.umod(this.m);return y===d?y.clone():y},z.prototype.convertFrom=function(d){var y=d.clone();return y.red=null,y},n.mont=function(d){return new U(d)};function U(T){z.call(this,T),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new n(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(U,z),U.prototype.convertTo=function(d){return this.imod(d.ushln(this.shift))},U.prototype.convertFrom=function(d){var y=this.imod(d.mul(this.rinv));return y.red=null,y},U.prototype.imul=function(d,y){if(d.isZero()||y.isZero())return d.words[0]=0,d.length=1,d;var N=d.imul(y),b=N.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),M=N.isub(b).iushrn(this.shift),I=M;return M.cmp(this.m)>=0?I=M.isub(this.m):M.cmpn(0)<0&&(I=M.iadd(this.m)),I._forceRed(this)},U.prototype.mul=function(d,y){if(d.isZero()||y.isZero())return new n(0)._forceRed(this);var N=d.mul(y),b=N.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),M=N.isub(b).iushrn(this.shift),I=M;return M.cmp(this.m)>=0?I=M.isub(this.m):M.cmpn(0)<0&&(I=M.iadd(this.m)),I._forceRed(this)},U.prototype.invm=function(d){var y=this.imod(d._invmp(this.m).mul(this.r2));return y._forceRed(this)}})(r,J5)})(ah)),ah.exports}var Bd,Fy;function wo(){if(Fy)return Bd;Fy=1,Bd=r;function r(e,t){if(!e)throw new Error(t||"Assertion failed")}return r.equal=function(t,i,s){if(t!=i)throw new Error(s||"Assertion failed: "+t+" != "+i)},Bd}var Yd={},By;function gv(){return By||(By=1,(function(r){var e=r;function t(n,o){if(Array.isArray(n))return n.slice();if(!n)return[];var a=[];if(typeof n!="string"){for(var u=0;u<n.length;u++)a[u]=n[u]|0;return a}if(o==="hex"){n=n.replace(/[^a-z0-9]+/ig,""),n.length%2!==0&&(n="0"+n);for(var u=0;u<n.length;u+=2)a.push(parseInt(n[u]+n[u+1],16))}else for(var u=0;u<n.length;u++){var c=n.charCodeAt(u),l=c>>8,h=c&255;l?a.push(l,h):a.push(h)}return a}e.toArray=t;function i(n){return n.length===1?"0"+n:n}e.zero2=i;function s(n){for(var o="",a=0;a<n.length;a++)o+=i(n[a].toString(16));return o}e.toHex=s,e.encode=function(o,a){return a==="hex"?s(o):o}})(Yd)),Yd}var Yy;function Qi(){return Yy||(Yy=1,(function(r){var e=r,t=Gs(),i=wo(),s=gv();e.assert=i,e.toArray=s.toArray,e.zero2=s.zero2,e.toHex=s.toHex,e.encode=s.encode;function n(l,h,f){var w=new Array(Math.max(l.bitLength(),f)+1),g;for(g=0;g<w.length;g+=1)w[g]=0;var m=1<<h+1,E=l.clone();for(g=0;g<w.length;g++){var A,D=E.andln(m-1);E.isOdd()?(D>(m>>1)-1?A=(m>>1)-D:A=D,E.isubn(A)):A=0,w[g]=A,E.iushrn(1)}return w}e.getNAF=n;function o(l,h){var f=[[],[]];l=l.clone(),h=h.clone();for(var w=0,g=0,m;l.cmpn(-w)>0||h.cmpn(-g)>0;){var E=l.andln(3)+w&3,A=h.andln(3)+g&3;E===3&&(E=-1),A===3&&(A=-1);var D;(E&1)===0?D=0:(m=l.andln(7)+w&7,(m===3||m===5)&&A===2?D=-E:D=E),f[0].push(D);var O;(A&1)===0?O=0:(m=h.andln(7)+g&7,(m===3||m===5)&&E===2?O=-A:O=A),f[1].push(O),2*w===D+1&&(w=1-w),2*g===O+1&&(g=1-g),l.iushrn(1),h.iushrn(1)}return f}e.getJSF=o;function a(l,h,f){var w="_"+h;l.prototype[h]=function(){return this[w]!==void 0?this[w]:this[w]=f.call(this)}}e.cachedProperty=a;function u(l){return typeof l=="string"?e.toArray(l,"hex"):l}e.parseBytes=u;function c(l){return new t(l,"hex","le")}e.intFromLE=c})(Fd)),Fd}var jl={exports:{}},Qy;function yv(){if(Qy)return jl.exports;Qy=1;var r;jl.exports=function(s){return r||(r=new e(null)),r.generate(s)};function e(i){this.rand=i}if(jl.exports.Rand=e,e.prototype.generate=function(s){return this._rand(s)},e.prototype._rand=function(s){if(this.rand.getBytes)return this.rand.getBytes(s);for(var n=new Uint8Array(s),o=0;o<n.length;o++)n[o]=this.rand.getByte();return n},typeof self=="object")self.crypto&&self.crypto.getRandomValues?e.prototype._rand=function(s){var n=new Uint8Array(s);return self.crypto.getRandomValues(n),n}:self.msCrypto&&self.msCrypto.getRandomValues?e.prototype._rand=function(s){var n=new Uint8Array(s);return self.msCrypto.getRandomValues(n),n}:typeof window=="object"&&(e.prototype._rand=function(){throw new Error("Not implemented yet")});else try{var t=D1;if(typeof t.randomBytes!="function")throw new Error("Not supported");e.prototype._rand=function(s){return t.randomBytes(s)}}catch{}return jl.exports}var Qd={},Vd,Vy;function Jh(){if(Vy)return Vd;Vy=1;var r=Gs(),e=Qi(),t=e.getNAF,i=e.getJSF,s=e.assert;function n(a,u){this.type=a,this.p=new r(u.p,16),this.red=u.prime?r.red(u.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=u.n&&new r(u.n,16),this.g=u.g&&this.pointFromJSON(u.g,u.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var c=this.n&&this.p.div(this.n);!c||c.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}Vd=n,n.prototype.point=function(){throw new Error("Not implemented")},n.prototype.validate=function(){throw new Error("Not implemented")},n.prototype._fixedNafMul=function(u,c){s(u.precomputed);var l=u._getDoubles(),h=t(c,1,this._bitLength),f=(1<<l.step+1)-(l.step%2===0?2:1);f/=3;var w=[],g,m;for(g=0;g<h.length;g+=l.step){m=0;for(var E=g+l.step-1;E>=g;E--)m=(m<<1)+h[E];w.push(m)}for(var A=this.jpoint(null,null,null),D=this.jpoint(null,null,null),O=f;O>0;O--){for(g=0;g<w.length;g++)m=w[g],m===O?D=D.mixedAdd(l.points[g]):m===-O&&(D=D.mixedAdd(l.points[g].neg()));A=A.add(D)}return A.toP()},n.prototype._wnafMul=function(u,c){var l=4,h=u._getNAFPoints(l);l=h.wnd;for(var f=h.points,w=t(c,l,this._bitLength),g=this.jpoint(null,null,null),m=w.length-1;m>=0;m--){for(var E=0;m>=0&&w[m]===0;m--)E++;if(m>=0&&E++,g=g.dblp(E),m<0)break;var A=w[m];s(A!==0),u.type==="affine"?A>0?g=g.mixedAdd(f[A-1>>1]):g=g.mixedAdd(f[-A-1>>1].neg()):A>0?g=g.add(f[A-1>>1]):g=g.add(f[-A-1>>1].neg())}return u.type==="affine"?g.toP():g},n.prototype._wnafMulAdd=function(u,c,l,h,f){var w=this._wnafT1,g=this._wnafT2,m=this._wnafT3,E=0,A,D,O;for(A=0;A<h;A++){O=c[A];var C=O._getNAFPoints(u);w[A]=C.wnd,g[A]=C.points}for(A=h-1;A>=1;A-=2){var _=A-1,S=A;if(w[_]!==1||w[S]!==1){m[_]=t(l[_],w[_],this._bitLength),m[S]=t(l[S],w[S],this._bitLength),E=Math.max(m[_].length,E),E=Math.max(m[S].length,E);continue}var L=[c[_],null,null,c[S]];c[_].y.cmp(c[S].y)===0?(L[1]=c[_].add(c[S]),L[2]=c[_].toJ().mixedAdd(c[S].neg())):c[_].y.cmp(c[S].y.redNeg())===0?(L[1]=c[_].toJ().mixedAdd(c[S]),L[2]=c[_].add(c[S].neg())):(L[1]=c[_].toJ().mixedAdd(c[S]),L[2]=c[_].toJ().mixedAdd(c[S].neg()));var k=[-3,-1,-5,-7,0,7,5,1,3],z=i(l[_],l[S]);for(E=Math.max(z[0].length,E),m[_]=new Array(E),m[S]=new Array(E),D=0;D<E;D++){var U=z[0][D]|0,T=z[1][D]|0;m[_][D]=k[(U+1)*3+(T+1)],m[S][D]=0,g[_]=L}}var d=this.jpoint(null,null,null),y=this._wnafT4;for(A=E;A>=0;A--){for(var N=0;A>=0;){var b=!0;for(D=0;D<h;D++)y[D]=m[D][A]|0,y[D]!==0&&(b=!1);if(!b)break;N++,A--}if(A>=0&&N++,d=d.dblp(N),A<0)break;for(D=0;D<h;D++){var M=y[D];M!==0&&(M>0?O=g[D][M-1>>1]:M<0&&(O=g[D][-M-1>>1].neg()),O.type==="affine"?d=d.mixedAdd(O):d=d.add(O))}}for(A=0;A<h;A++)g[A]=null;return f?d:d.toP()};function o(a,u){this.curve=a,this.type=u,this.precomputed=null}return n.BasePoint=o,o.prototype.eq=function(){throw new Error("Not implemented")},o.prototype.validate=function(){return this.curve.validate(this)},n.prototype.decodePoint=function(u,c){u=e.toArray(u,c);var l=this.p.byteLength();if((u[0]===4||u[0]===6||u[0]===7)&&u.length-1===2*l){u[0]===6?s(u[u.length-1]%2===0):u[0]===7&&s(u[u.length-1]%2===1);var h=this.point(u.slice(1,1+l),u.slice(1+l,1+2*l));return h}else if((u[0]===2||u[0]===3)&&u.length-1===l)return this.pointFromX(u.slice(1,1+l),u[0]===3);throw new Error("Unknown point format")},o.prototype.encodeCompressed=function(u){return this.encode(u,!0)},o.prototype._encode=function(u){var c=this.curve.p.byteLength(),l=this.getX().toArray("be",c);return u?[this.getY().isEven()?2:3].concat(l):[4].concat(l,this.getY().toArray("be",c))},o.prototype.encode=function(u,c){return e.encode(this._encode(c),u)},o.prototype.precompute=function(u){if(this.precomputed)return this;var c={doubles:null,naf:null,beta:null};return c.naf=this._getNAFPoints(8),c.doubles=this._getDoubles(4,u),c.beta=this._getBeta(),this.precomputed=c,this},o.prototype._hasDoubles=function(u){if(!this.precomputed)return!1;var c=this.precomputed.doubles;return c?c.points.length>=Math.ceil((u.bitLength()+1)/c.step):!1},o.prototype._getDoubles=function(u,c){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var l=[this],h=this,f=0;f<c;f+=u){for(var w=0;w<u;w++)h=h.dbl();l.push(h)}return{step:u,points:l}},o.prototype._getNAFPoints=function(u){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var c=[this],l=(1<<u)-1,h=l===1?null:this.dbl(),f=1;f<l;f++)c[f]=c[f-1].add(h);return{wnd:u,points:c}},o.prototype._getBeta=function(){return null},o.prototype.dblp=function(u){for(var c=this,l=0;l<u;l++)c=c.dbl();return c},Vd}var xl={exports:{}},Wy;function Xh(){return Wy||(Wy=1,typeof Object.create=="function"?xl.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:xl.exports=function(e,t){if(t){e.super_=t;var i=function(){};i.prototype=t.prototype,e.prototype=new i,e.prototype.constructor=e}}),xl.exports}var Wd,qy;function X5(){if(qy)return Wd;qy=1;var r=Qi(),e=Gs(),t=Xh(),i=Jh(),s=r.assert;function n(u){i.call(this,"short",u),this.a=new e(u.a,16).toRed(this.red),this.b=new e(u.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=this.a.fromRed().cmpn(0)===0,this.threeA=this.a.fromRed().sub(this.p).cmpn(-3)===0,this.endo=this._getEndomorphism(u),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}t(n,i),Wd=n,n.prototype._getEndomorphism=function(c){if(!(!this.zeroA||!this.g||!this.n||this.p.modn(3)!==1)){var l,h;if(c.beta)l=new e(c.beta,16).toRed(this.red);else{var f=this._getEndoRoots(this.p);l=f[0].cmp(f[1])<0?f[0]:f[1],l=l.toRed(this.red)}if(c.lambda)h=new e(c.lambda,16);else{var w=this._getEndoRoots(this.n);this.g.mul(w[0]).x.cmp(this.g.x.redMul(l))===0?h=w[0]:(h=w[1],s(this.g.mul(h).x.cmp(this.g.x.redMul(l))===0))}var g;return c.basis?g=c.basis.map(function(m){return{a:new e(m.a,16),b:new e(m.b,16)}}):g=this._getEndoBasis(h),{beta:l,lambda:h,basis:g}}},n.prototype._getEndoRoots=function(c){var l=c===this.p?this.red:e.mont(c),h=new e(2).toRed(l).redInvm(),f=h.redNeg(),w=new e(3).toRed(l).redNeg().redSqrt().redMul(h),g=f.redAdd(w).fromRed(),m=f.redSub(w).fromRed();return[g,m]},n.prototype._getEndoBasis=function(c){for(var l=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=c,f=this.n.clone(),w=new e(1),g=new e(0),m=new e(0),E=new e(1),A,D,O,C,_,S,L,k=0,z,U;h.cmpn(0)!==0;){var T=f.div(h);z=f.sub(T.mul(h)),U=m.sub(T.mul(w));var d=E.sub(T.mul(g));if(!O&&z.cmp(l)<0)A=L.neg(),D=w,O=z.neg(),C=U;else if(O&&++k===2)break;L=z,f=h,h=z,m=w,w=U,E=g,g=d}_=z.neg(),S=U;var y=O.sqr().add(C.sqr()),N=_.sqr().add(S.sqr());return N.cmp(y)>=0&&(_=A,S=D),O.negative&&(O=O.neg(),C=C.neg()),_.negative&&(_=_.neg(),S=S.neg()),[{a:O,b:C},{a:_,b:S}]},n.prototype._endoSplit=function(c){var l=this.endo.basis,h=l[0],f=l[1],w=f.b.mul(c).divRound(this.n),g=h.b.neg().mul(c).divRound(this.n),m=w.mul(h.a),E=g.mul(f.a),A=w.mul(h.b),D=g.mul(f.b),O=c.sub(m).sub(E),C=A.add(D).neg();return{k1:O,k2:C}},n.prototype.pointFromX=function(c,l){c=new e(c,16),c.red||(c=c.toRed(this.red));var h=c.redSqr().redMul(c).redIAdd(c.redMul(this.a)).redIAdd(this.b),f=h.redSqrt();if(f.redSqr().redSub(h).cmp(this.zero)!==0)throw new Error("invalid point");var w=f.fromRed().isOdd();return(l&&!w||!l&&w)&&(f=f.redNeg()),this.point(c,f)},n.prototype.validate=function(c){if(c.inf)return!0;var l=c.x,h=c.y,f=this.a.redMul(l),w=l.redSqr().redMul(l).redIAdd(f).redIAdd(this.b);return h.redSqr().redISub(w).cmpn(0)===0},n.prototype._endoWnafMulAdd=function(c,l,h){for(var f=this._endoWnafT1,w=this._endoWnafT2,g=0;g<c.length;g++){var m=this._endoSplit(l[g]),E=c[g],A=E._getBeta();m.k1.negative&&(m.k1.ineg(),E=E.neg(!0)),m.k2.negative&&(m.k2.ineg(),A=A.neg(!0)),f[g*2]=E,f[g*2+1]=A,w[g*2]=m.k1,w[g*2+1]=m.k2}for(var D=this._wnafMulAdd(1,f,w,g*2,h),O=0;O<g*2;O++)f[O]=null,w[O]=null;return D};function o(u,c,l,h){i.BasePoint.call(this,u,"affine"),c===null&&l===null?(this.x=null,this.y=null,this.inf=!0):(this.x=new e(c,16),this.y=new e(l,16),h&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}t(o,i.BasePoint),n.prototype.point=function(c,l,h){return new o(this,c,l,h)},n.prototype.pointFromJSON=function(c,l){return o.fromJSON(this,c,l)},o.prototype._getBeta=function(){if(this.curve.endo){var c=this.precomputed;if(c&&c.beta)return c.beta;var l=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(c){var h=this.curve,f=function(w){return h.point(w.x.redMul(h.endo.beta),w.y)};c.beta=l,l.precomputed={beta:null,naf:c.naf&&{wnd:c.naf.wnd,points:c.naf.points.map(f)},doubles:c.doubles&&{step:c.doubles.step,points:c.doubles.points.map(f)}}}return l}},o.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},o.fromJSON=function(c,l,h){typeof l=="string"&&(l=JSON.parse(l));var f=c.point(l[0],l[1],h);if(!l[2])return f;function w(m){return c.point(m[0],m[1],h)}var g=l[2];return f.precomputed={beta:null,doubles:g.doubles&&{step:g.doubles.step,points:[f].concat(g.doubles.points.map(w))},naf:g.naf&&{wnd:g.naf.wnd,points:[f].concat(g.naf.points.map(w))}},f},o.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},o.prototype.isInfinity=function(){return this.inf},o.prototype.add=function(c){if(this.inf)return c;if(c.inf)return this;if(this.eq(c))return this.dbl();if(this.neg().eq(c))return this.curve.point(null,null);if(this.x.cmp(c.x)===0)return this.curve.point(null,null);var l=this.y.redSub(c.y);l.cmpn(0)!==0&&(l=l.redMul(this.x.redSub(c.x).redInvm()));var h=l.redSqr().redISub(this.x).redISub(c.x),f=l.redMul(this.x.redSub(h)).redISub(this.y);return this.curve.point(h,f)},o.prototype.dbl=function(){if(this.inf)return this;var c=this.y.redAdd(this.y);if(c.cmpn(0)===0)return this.curve.point(null,null);var l=this.curve.a,h=this.x.redSqr(),f=c.redInvm(),w=h.redAdd(h).redIAdd(h).redIAdd(l).redMul(f),g=w.redSqr().redISub(this.x.redAdd(this.x)),m=w.redMul(this.x.redSub(g)).redISub(this.y);return this.curve.point(g,m)},o.prototype.getX=function(){return this.x.fromRed()},o.prototype.getY=function(){return this.y.fromRed()},o.prototype.mul=function(c){return c=new e(c,16),this.isInfinity()?this:this._hasDoubles(c)?this.curve._fixedNafMul(this,c):this.curve.endo?this.curve._endoWnafMulAdd([this],[c]):this.curve._wnafMul(this,c)},o.prototype.mulAdd=function(c,l,h){var f=[this,l],w=[c,h];return this.curve.endo?this.curve._endoWnafMulAdd(f,w):this.curve._wnafMulAdd(1,f,w,2)},o.prototype.jmulAdd=function(c,l,h){var f=[this,l],w=[c,h];return this.curve.endo?this.curve._endoWnafMulAdd(f,w,!0):this.curve._wnafMulAdd(1,f,w,2,!0)},o.prototype.eq=function(c){return this===c||this.inf===c.inf&&(this.inf||this.x.cmp(c.x)===0&&this.y.cmp(c.y)===0)},o.prototype.neg=function(c){if(this.inf)return this;var l=this.curve.point(this.x,this.y.redNeg());if(c&&this.precomputed){var h=this.precomputed,f=function(w){return w.neg()};l.precomputed={naf:h.naf&&{wnd:h.naf.wnd,points:h.naf.points.map(f)},doubles:h.doubles&&{step:h.doubles.step,points:h.doubles.points.map(f)}}}return l},o.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var c=this.curve.jpoint(this.x,this.y,this.curve.one);return c};function a(u,c,l,h){i.BasePoint.call(this,u,"jacobian"),c===null&&l===null&&h===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new e(0)):(this.x=new e(c,16),this.y=new e(l,16),this.z=new e(h,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}return t(a,i.BasePoint),n.prototype.jpoint=function(c,l,h){return new a(this,c,l,h)},a.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var c=this.z.redInvm(),l=c.redSqr(),h=this.x.redMul(l),f=this.y.redMul(l).redMul(c);return this.curve.point(h,f)},a.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},a.prototype.add=function(c){if(this.isInfinity())return c;if(c.isInfinity())return this;var l=c.z.redSqr(),h=this.z.redSqr(),f=this.x.redMul(l),w=c.x.redMul(h),g=this.y.redMul(l.redMul(c.z)),m=c.y.redMul(h.redMul(this.z)),E=f.redSub(w),A=g.redSub(m);if(E.cmpn(0)===0)return A.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var D=E.redSqr(),O=D.redMul(E),C=f.redMul(D),_=A.redSqr().redIAdd(O).redISub(C).redISub(C),S=A.redMul(C.redISub(_)).redISub(g.redMul(O)),L=this.z.redMul(c.z).redMul(E);return this.curve.jpoint(_,S,L)},a.prototype.mixedAdd=function(c){if(this.isInfinity())return c.toJ();if(c.isInfinity())return this;var l=this.z.redSqr(),h=this.x,f=c.x.redMul(l),w=this.y,g=c.y.redMul(l).redMul(this.z),m=h.redSub(f),E=w.redSub(g);if(m.cmpn(0)===0)return E.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var A=m.redSqr(),D=A.redMul(m),O=h.redMul(A),C=E.redSqr().redIAdd(D).redISub(O).redISub(O),_=E.redMul(O.redISub(C)).redISub(w.redMul(D)),S=this.z.redMul(m);return this.curve.jpoint(C,_,S)},a.prototype.dblp=function(c){if(c===0)return this;if(this.isInfinity())return this;if(!c)return this.dbl();var l;if(this.curve.zeroA||this.curve.threeA){var h=this;for(l=0;l<c;l++)h=h.dbl();return h}var f=this.curve.a,w=this.curve.tinv,g=this.x,m=this.y,E=this.z,A=E.redSqr().redSqr(),D=m.redAdd(m);for(l=0;l<c;l++){var O=g.redSqr(),C=D.redSqr(),_=C.redSqr(),S=O.redAdd(O).redIAdd(O).redIAdd(f.redMul(A)),L=g.redMul(C),k=S.redSqr().redISub(L.redAdd(L)),z=L.redISub(k),U=S.redMul(z);U=U.redIAdd(U).redISub(_);var T=D.redMul(E);l+1<c&&(A=A.redMul(_)),g=k,E=T,D=U}return this.curve.jpoint(g,D.redMul(w),E)},a.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},a.prototype._zeroDbl=function(){var c,l,h;if(this.zOne){var f=this.x.redSqr(),w=this.y.redSqr(),g=w.redSqr(),m=this.x.redAdd(w).redSqr().redISub(f).redISub(g);m=m.redIAdd(m);var E=f.redAdd(f).redIAdd(f),A=E.redSqr().redISub(m).redISub(m),D=g.redIAdd(g);D=D.redIAdd(D),D=D.redIAdd(D),c=A,l=E.redMul(m.redISub(A)).redISub(D),h=this.y.redAdd(this.y)}else{var O=this.x.redSqr(),C=this.y.redSqr(),_=C.redSqr(),S=this.x.redAdd(C).redSqr().redISub(O).redISub(_);S=S.redIAdd(S);var L=O.redAdd(O).redIAdd(O),k=L.redSqr(),z=_.redIAdd(_);z=z.redIAdd(z),z=z.redIAdd(z),c=k.redISub(S).redISub(S),l=L.redMul(S.redISub(c)).redISub(z),h=this.y.redMul(this.z),h=h.redIAdd(h)}return this.curve.jpoint(c,l,h)},a.prototype._threeDbl=function(){var c,l,h;if(this.zOne){var f=this.x.redSqr(),w=this.y.redSqr(),g=w.redSqr(),m=this.x.redAdd(w).redSqr().redISub(f).redISub(g);m=m.redIAdd(m);var E=f.redAdd(f).redIAdd(f).redIAdd(this.curve.a),A=E.redSqr().redISub(m).redISub(m);c=A;var D=g.redIAdd(g);D=D.redIAdd(D),D=D.redIAdd(D),l=E.redMul(m.redISub(A)).redISub(D),h=this.y.redAdd(this.y)}else{var O=this.z.redSqr(),C=this.y.redSqr(),_=this.x.redMul(C),S=this.x.redSub(O).redMul(this.x.redAdd(O));S=S.redAdd(S).redIAdd(S);var L=_.redIAdd(_);L=L.redIAdd(L);var k=L.redAdd(L);c=S.redSqr().redISub(k),h=this.y.redAdd(this.z).redSqr().redISub(C).redISub(O);var z=C.redSqr();z=z.redIAdd(z),z=z.redIAdd(z),z=z.redIAdd(z),l=S.redMul(L.redISub(c)).redISub(z)}return this.curve.jpoint(c,l,h)},a.prototype._dbl=function(){var c=this.curve.a,l=this.x,h=this.y,f=this.z,w=f.redSqr().redSqr(),g=l.redSqr(),m=h.redSqr(),E=g.redAdd(g).redIAdd(g).redIAdd(c.redMul(w)),A=l.redAdd(l);A=A.redIAdd(A);var D=A.redMul(m),O=E.redSqr().redISub(D.redAdd(D)),C=D.redISub(O),_=m.redSqr();_=_.redIAdd(_),_=_.redIAdd(_),_=_.redIAdd(_);var S=E.redMul(C).redISub(_),L=h.redAdd(h).redMul(f);return this.curve.jpoint(O,S,L)},a.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var c=this.x.redSqr(),l=this.y.redSqr(),h=this.z.redSqr(),f=l.redSqr(),w=c.redAdd(c).redIAdd(c),g=w.redSqr(),m=this.x.redAdd(l).redSqr().redISub(c).redISub(f);m=m.redIAdd(m),m=m.redAdd(m).redIAdd(m),m=m.redISub(g);var E=m.redSqr(),A=f.redIAdd(f);A=A.redIAdd(A),A=A.redIAdd(A),A=A.redIAdd(A);var D=w.redIAdd(m).redSqr().redISub(g).redISub(E).redISub(A),O=l.redMul(D);O=O.redIAdd(O),O=O.redIAdd(O);var C=this.x.redMul(E).redISub(O);C=C.redIAdd(C),C=C.redIAdd(C);var _=this.y.redMul(D.redMul(A.redISub(D)).redISub(m.redMul(E)));_=_.redIAdd(_),_=_.redIAdd(_),_=_.redIAdd(_);var S=this.z.redAdd(m).redSqr().redISub(h).redISub(E);return this.curve.jpoint(C,_,S)},a.prototype.mul=function(c,l){return c=new e(c,l),this.curve._wnafMul(this,c)},a.prototype.eq=function(c){if(c.type==="affine")return this.eq(c.toJ());if(this===c)return!0;var l=this.z.redSqr(),h=c.z.redSqr();if(this.x.redMul(h).redISub(c.x.redMul(l)).cmpn(0)!==0)return!1;var f=l.redMul(this.z),w=h.redMul(c.z);return this.y.redMul(w).redISub(c.y.redMul(f)).cmpn(0)===0},a.prototype.eqXToP=function(c){var l=this.z.redSqr(),h=c.toRed(this.curve.red).redMul(l);if(this.x.cmp(h)===0)return!0;for(var f=c.clone(),w=this.curve.redN.redMul(l);;){if(f.iadd(this.curve.n),f.cmp(this.curve.p)>=0)return!1;if(h.redIAdd(w),this.x.cmp(h)===0)return!0}},a.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},a.prototype.isInfinity=function(){return this.z.cmpn(0)===0},Wd}var qd,Zy;function ex(){if(Zy)return qd;Zy=1;var r=Gs(),e=Xh(),t=Jh(),i=Qi();function s(o){t.call(this,"mont",o),this.a=new r(o.a,16).toRed(this.red),this.b=new r(o.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}e(s,t),qd=s,s.prototype.validate=function(a){var u=a.normalize().x,c=u.redSqr(),l=c.redMul(u).redAdd(c.redMul(this.a)).redAdd(u),h=l.redSqrt();return h.redSqr().cmp(l)===0};function n(o,a,u){t.BasePoint.call(this,o,"projective"),a===null&&u===null?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(a,16),this.z=new r(u,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}return e(n,t.BasePoint),s.prototype.decodePoint=function(a,u){return this.point(i.toArray(a,u),1)},s.prototype.point=function(a,u){return new n(this,a,u)},s.prototype.pointFromJSON=function(a){return n.fromJSON(this,a)},n.prototype.precompute=function(){},n.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},n.fromJSON=function(a,u){return new n(a,u[0],u[1]||a.one)},n.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},n.prototype.isInfinity=function(){return this.z.cmpn(0)===0},n.prototype.dbl=function(){var a=this.x.redAdd(this.z),u=a.redSqr(),c=this.x.redSub(this.z),l=c.redSqr(),h=u.redSub(l),f=u.redMul(l),w=h.redMul(l.redAdd(this.curve.a24.redMul(h)));return this.curve.point(f,w)},n.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},n.prototype.diffAdd=function(a,u){var c=this.x.redAdd(this.z),l=this.x.redSub(this.z),h=a.x.redAdd(a.z),f=a.x.redSub(a.z),w=f.redMul(c),g=h.redMul(l),m=u.z.redMul(w.redAdd(g).redSqr()),E=u.x.redMul(w.redISub(g).redSqr());return this.curve.point(m,E)},n.prototype.mul=function(a){for(var u=a.clone(),c=this,l=this.curve.point(null,null),h=this,f=[];u.cmpn(0)!==0;u.iushrn(1))f.push(u.andln(1));for(var w=f.length-1;w>=0;w--)f[w]===0?(c=c.diffAdd(l,h),l=l.dbl()):(l=c.diffAdd(l,h),c=c.dbl());return l},n.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},n.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},n.prototype.eq=function(a){return this.getX().cmp(a.getX())===0},n.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},n.prototype.getX=function(){return this.normalize(),this.x.fromRed()},qd}var Zd,Hy;function tx(){if(Hy)return Zd;Hy=1;var r=Qi(),e=Gs(),t=Xh(),i=Jh(),s=r.assert;function n(a){this.twisted=(a.a|0)!==1,this.mOneA=this.twisted&&(a.a|0)===-1,this.extended=this.mOneA,i.call(this,"edwards",a),this.a=new e(a.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new e(a.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new e(a.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||this.c.fromRed().cmpn(1)===0),this.oneC=(a.c|0)===1}t(n,i),Zd=n,n.prototype._mulA=function(u){return this.mOneA?u.redNeg():this.a.redMul(u)},n.prototype._mulC=function(u){return this.oneC?u:this.c.redMul(u)},n.prototype.jpoint=function(u,c,l,h){return this.point(u,c,l,h)},n.prototype.pointFromX=function(u,c){u=new e(u,16),u.red||(u=u.toRed(this.red));var l=u.redSqr(),h=this.c2.redSub(this.a.redMul(l)),f=this.one.redSub(this.c2.redMul(this.d).redMul(l)),w=h.redMul(f.redInvm()),g=w.redSqrt();if(g.redSqr().redSub(w).cmp(this.zero)!==0)throw new Error("invalid point");var m=g.fromRed().isOdd();return(c&&!m||!c&&m)&&(g=g.redNeg()),this.point(u,g)},n.prototype.pointFromY=function(u,c){u=new e(u,16),u.red||(u=u.toRed(this.red));var l=u.redSqr(),h=l.redSub(this.c2),f=l.redMul(this.d).redMul(this.c2).redSub(this.a),w=h.redMul(f.redInvm());if(w.cmp(this.zero)===0){if(c)throw new Error("invalid point");return this.point(this.zero,u)}var g=w.redSqrt();if(g.redSqr().redSub(w).cmp(this.zero)!==0)throw new Error("invalid point");return g.fromRed().isOdd()!==c&&(g=g.redNeg()),this.point(g,u)},n.prototype.validate=function(u){if(u.isInfinity())return!0;u.normalize();var c=u.x.redSqr(),l=u.y.redSqr(),h=c.redMul(this.a).redAdd(l),f=this.c2.redMul(this.one.redAdd(this.d.redMul(c).redMul(l)));return h.cmp(f)===0};function o(a,u,c,l,h){i.BasePoint.call(this,a,"projective"),u===null&&c===null&&l===null?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new e(u,16),this.y=new e(c,16),this.z=l?new e(l,16):this.curve.one,this.t=h&&new e(h,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}return t(o,i.BasePoint),n.prototype.pointFromJSON=function(u){return o.fromJSON(this,u)},n.prototype.point=function(u,c,l,h){return new o(this,u,c,l,h)},o.fromJSON=function(u,c){return new o(u,c[0],c[1],c[2])},o.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},o.prototype.isInfinity=function(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)},o.prototype._extDbl=function(){var u=this.x.redSqr(),c=this.y.redSqr(),l=this.z.redSqr();l=l.redIAdd(l);var h=this.curve._mulA(u),f=this.x.redAdd(this.y).redSqr().redISub(u).redISub(c),w=h.redAdd(c),g=w.redSub(l),m=h.redSub(c),E=f.redMul(g),A=w.redMul(m),D=f.redMul(m),O=g.redMul(w);return this.curve.point(E,A,O,D)},o.prototype._projDbl=function(){var u=this.x.redAdd(this.y).redSqr(),c=this.x.redSqr(),l=this.y.redSqr(),h,f,w,g,m,E;if(this.curve.twisted){g=this.curve._mulA(c);var A=g.redAdd(l);this.zOne?(h=u.redSub(c).redSub(l).redMul(A.redSub(this.curve.two)),f=A.redMul(g.redSub(l)),w=A.redSqr().redSub(A).redSub(A)):(m=this.z.redSqr(),E=A.redSub(m).redISub(m),h=u.redSub(c).redISub(l).redMul(E),f=A.redMul(g.redSub(l)),w=A.redMul(E))}else g=c.redAdd(l),m=this.curve._mulC(this.z).redSqr(),E=g.redSub(m).redSub(m),h=this.curve._mulC(u.redISub(g)).redMul(E),f=this.curve._mulC(g).redMul(c.redISub(l)),w=g.redMul(E);return this.curve.point(h,f,w)},o.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},o.prototype._extAdd=function(u){var c=this.y.redSub(this.x).redMul(u.y.redSub(u.x)),l=this.y.redAdd(this.x).redMul(u.y.redAdd(u.x)),h=this.t.redMul(this.curve.dd).redMul(u.t),f=this.z.redMul(u.z.redAdd(u.z)),w=l.redSub(c),g=f.redSub(h),m=f.redAdd(h),E=l.redAdd(c),A=w.redMul(g),D=m.redMul(E),O=w.redMul(E),C=g.redMul(m);return this.curve.point(A,D,C,O)},o.prototype._projAdd=function(u){var c=this.z.redMul(u.z),l=c.redSqr(),h=this.x.redMul(u.x),f=this.y.redMul(u.y),w=this.curve.d.redMul(h).redMul(f),g=l.redSub(w),m=l.redAdd(w),E=this.x.redAdd(this.y).redMul(u.x.redAdd(u.y)).redISub(h).redISub(f),A=c.redMul(g).redMul(E),D,O;return this.curve.twisted?(D=c.redMul(m).redMul(f.redSub(this.curve._mulA(h))),O=g.redMul(m)):(D=c.redMul(m).redMul(f.redSub(h)),O=this.curve._mulC(g).redMul(m)),this.curve.point(A,D,O)},o.prototype.add=function(u){return this.isInfinity()?u:u.isInfinity()?this:this.curve.extended?this._extAdd(u):this._projAdd(u)},o.prototype.mul=function(u){return this._hasDoubles(u)?this.curve._fixedNafMul(this,u):this.curve._wnafMul(this,u)},o.prototype.mulAdd=function(u,c,l){return this.curve._wnafMulAdd(1,[this,c],[u,l],2,!1)},o.prototype.jmulAdd=function(u,c,l){return this.curve._wnafMulAdd(1,[this,c],[u,l],2,!0)},o.prototype.normalize=function(){if(this.zOne)return this;var u=this.z.redInvm();return this.x=this.x.redMul(u),this.y=this.y.redMul(u),this.t&&(this.t=this.t.redMul(u)),this.z=this.curve.one,this.zOne=!0,this},o.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},o.prototype.getX=function(){return this.normalize(),this.x.fromRed()},o.prototype.getY=function(){return this.normalize(),this.y.fromRed()},o.prototype.eq=function(u){return this===u||this.getX().cmp(u.getX())===0&&this.getY().cmp(u.getY())===0},o.prototype.eqXToP=function(u){var c=u.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(c)===0)return!0;for(var l=u.clone(),h=this.curve.redN.redMul(this.z);;){if(l.iadd(this.curve.n),l.cmp(this.curve.p)>=0)return!1;if(c.redIAdd(h),this.x.cmp(c)===0)return!0}},o.prototype.toP=o.prototype.normalize,o.prototype.mixedAdd=o.prototype.add,Zd}var Gy;function wv(){return Gy||(Gy=1,(function(r){var e=r;e.base=Jh(),e.short=X5(),e.mont=ex(),e.edwards=tx()})(Qd)),Qd}var Hd={},Gd={},rt={},Ky;function js(){if(Ky)return rt;Ky=1;var r=wo(),e=Xh();rt.inherits=e;function t(d,y){return(d.charCodeAt(y)&64512)!==55296||y<0||y+1>=d.length?!1:(d.charCodeAt(y+1)&64512)===56320}function i(d,y){if(Array.isArray(d))return d.slice();if(!d)return[];var N=[];if(typeof d=="string")if(y){if(y==="hex")for(d=d.replace(/[^a-z0-9]+/ig,""),d.length%2!==0&&(d="0"+d),M=0;M<d.length;M+=2)N.push(parseInt(d[M]+d[M+1],16))}else for(var b=0,M=0;M<d.length;M++){var I=d.charCodeAt(M);I<128?N[b++]=I:I<2048?(N[b++]=I>>6|192,N[b++]=I&63|128):t(d,M)?(I=65536+((I&1023)<<10)+(d.charCodeAt(++M)&1023),N[b++]=I>>18|240,N[b++]=I>>12&63|128,N[b++]=I>>6&63|128,N[b++]=I&63|128):(N[b++]=I>>12|224,N[b++]=I>>6&63|128,N[b++]=I&63|128)}else for(M=0;M<d.length;M++)N[M]=d[M]|0;return N}rt.toArray=i;function s(d){for(var y="",N=0;N<d.length;N++)y+=a(d[N].toString(16));return y}rt.toHex=s;function n(d){var y=d>>>24|d>>>8&65280|d<<8&16711680|(d&255)<<24;return y>>>0}rt.htonl=n;function o(d,y){for(var N="",b=0;b<d.length;b++){var M=d[b];y==="little"&&(M=n(M)),N+=u(M.toString(16))}return N}rt.toHex32=o;function a(d){return d.length===1?"0"+d:d}rt.zero2=a;function u(d){return d.length===7?"0"+d:d.length===6?"00"+d:d.length===5?"000"+d:d.length===4?"0000"+d:d.length===3?"00000"+d:d.length===2?"000000"+d:d.length===1?"0000000"+d:d}rt.zero8=u;function c(d,y,N,b){var M=N-y;r(M%4===0);for(var I=new Array(M/4),j=0,v=y;j<I.length;j++,v+=4){var p;b==="big"?p=d[v]<<24|d[v+1]<<16|d[v+2]<<8|d[v+3]:p=d[v+3]<<24|d[v+2]<<16|d[v+1]<<8|d[v],I[j]=p>>>0}return I}rt.join32=c;function l(d,y){for(var N=new Array(d.length*4),b=0,M=0;b<d.length;b++,M+=4){var I=d[b];y==="big"?(N[M]=I>>>24,N[M+1]=I>>>16&255,N[M+2]=I>>>8&255,N[M+3]=I&255):(N[M+3]=I>>>24,N[M+2]=I>>>16&255,N[M+1]=I>>>8&255,N[M]=I&255)}return N}rt.split32=l;function h(d,y){return d>>>y|d<<32-y}rt.rotr32=h;function f(d,y){return d<<y|d>>>32-y}rt.rotl32=f;function w(d,y){return d+y>>>0}rt.sum32=w;function g(d,y,N){return d+y+N>>>0}rt.sum32_3=g;function m(d,y,N,b){return d+y+N+b>>>0}rt.sum32_4=m;function E(d,y,N,b,M){return d+y+N+b+M>>>0}rt.sum32_5=E;function A(d,y,N,b){var M=d[y],I=d[y+1],j=b+I>>>0,v=(j<b?1:0)+N+M;d[y]=v>>>0,d[y+1]=j}rt.sum64=A;function D(d,y,N,b){var M=y+b>>>0,I=(M<y?1:0)+d+N;return I>>>0}rt.sum64_hi=D;function O(d,y,N,b){var M=y+b;return M>>>0}rt.sum64_lo=O;function C(d,y,N,b,M,I,j,v){var p=0,x=y;x=x+b>>>0,p+=x<y?1:0,x=x+I>>>0,p+=x<I?1:0,x=x+v>>>0,p+=x<v?1:0;var F=d+N+M+j+p;return F>>>0}rt.sum64_4_hi=C;function _(d,y,N,b,M,I,j,v){var p=y+b+I+v;return p>>>0}rt.sum64_4_lo=_;function S(d,y,N,b,M,I,j,v,p,x){var F=0,V=y;V=V+b>>>0,F+=V<y?1:0,V=V+I>>>0,F+=V<I?1:0,V=V+v>>>0,F+=V<v?1:0,V=V+x>>>0,F+=V<x?1:0;var Q=d+N+M+j+p+F;return Q>>>0}rt.sum64_5_hi=S;function L(d,y,N,b,M,I,j,v,p,x){var F=y+b+I+v+x;return F>>>0}rt.sum64_5_lo=L;function k(d,y,N){var b=y<<32-N|d>>>N;return b>>>0}rt.rotr64_hi=k;function z(d,y,N){var b=d<<32-N|y>>>N;return b>>>0}rt.rotr64_lo=z;function U(d,y,N){return d>>>N}rt.shr64_hi=U;function T(d,y,N){var b=d<<32-N|y>>>N;return b>>>0}return rt.shr64_lo=T,rt}var Kd={},Jy;function qu(){if(Jy)return Kd;Jy=1;var r=js(),e=wo();function t(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}return Kd.BlockHash=t,t.prototype.update=function(s,n){if(s=r.toArray(s,n),this.pending?this.pending=this.pending.concat(s):this.pending=s,this.pendingTotal+=s.length,this.pending.length>=this._delta8){s=this.pending;var o=s.length%this._delta8;this.pending=s.slice(s.length-o,s.length),this.pending.length===0&&(this.pending=null),s=r.join32(s,0,s.length-o,this.endian);for(var a=0;a<s.length;a+=this._delta32)this._update(s,a,a+this._delta32)}return this},t.prototype.digest=function(s){return this.update(this._pad()),e(this.pending===null),this._digest(s)},t.prototype._pad=function(){var s=this.pendingTotal,n=this._delta8,o=n-(s+this.padLength)%n,a=new Array(o+this.padLength);a[0]=128;for(var u=1;u<o;u++)a[u]=0;if(s<<=3,this.endian==="big"){for(var c=8;c<this.padLength;c++)a[u++]=0;a[u++]=0,a[u++]=0,a[u++]=0,a[u++]=0,a[u++]=s>>>24&255,a[u++]=s>>>16&255,a[u++]=s>>>8&255,a[u++]=s&255}else for(a[u++]=s&255,a[u++]=s>>>8&255,a[u++]=s>>>16&255,a[u++]=s>>>24&255,a[u++]=0,a[u++]=0,a[u++]=0,a[u++]=0,c=8;c<this.padLength;c++)a[u++]=0;return a},Kd}var Rn={},fs={},Xy;function mv(){if(Xy)return fs;Xy=1;var r=js(),e=r.rotr32;function t(l,h,f,w){if(l===0)return i(h,f,w);if(l===1||l===3)return n(h,f,w);if(l===2)return s(h,f,w)}fs.ft_1=t;function i(l,h,f){return l&h^~l&f}fs.ch32=i;function s(l,h,f){return l&h^l&f^h&f}fs.maj32=s;function n(l,h,f){return l^h^f}fs.p32=n;function o(l){return e(l,2)^e(l,13)^e(l,22)}fs.s0_256=o;function a(l){return e(l,6)^e(l,11)^e(l,25)}fs.s1_256=a;function u(l){return e(l,7)^e(l,18)^l>>>3}fs.g0_256=u;function c(l){return e(l,17)^e(l,19)^l>>>10}return fs.g1_256=c,fs}var Jd,ew;function rx(){if(ew)return Jd;ew=1;var r=js(),e=qu(),t=mv(),i=r.rotl32,s=r.sum32,n=r.sum32_5,o=t.ft_1,a=e.BlockHash,u=[1518500249,1859775393,2400959708,3395469782];function c(){if(!(this instanceof c))return new c;a.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}return r.inherits(c,a),Jd=c,c.blockSize=512,c.outSize=160,c.hmacStrength=80,c.padLength=64,c.prototype._update=function(h,f){for(var w=this.W,g=0;g<16;g++)w[g]=h[f+g];for(;g<w.length;g++)w[g]=i(w[g-3]^w[g-8]^w[g-14]^w[g-16],1);var m=this.h[0],E=this.h[1],A=this.h[2],D=this.h[3],O=this.h[4];for(g=0;g<w.length;g++){var C=~~(g/20),_=n(i(m,5),o(C,E,A,D),O,w[g],u[C]);O=D,D=A,A=i(E,30),E=m,m=_}this.h[0]=s(this.h[0],m),this.h[1]=s(this.h[1],E),this.h[2]=s(this.h[2],A),this.h[3]=s(this.h[3],D),this.h[4]=s(this.h[4],O)},c.prototype._digest=function(h){return h==="hex"?r.toHex32(this.h,"big"):r.split32(this.h,"big")},Jd}var Xd,tw;function bv(){if(tw)return Xd;tw=1;var r=js(),e=qu(),t=mv(),i=wo(),s=r.sum32,n=r.sum32_4,o=r.sum32_5,a=t.ch32,u=t.maj32,c=t.s0_256,l=t.s1_256,h=t.g0_256,f=t.g1_256,w=e.BlockHash,g=[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];function m(){if(!(this instanceof m))return new m;w.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=g,this.W=new Array(64)}return r.inherits(m,w),Xd=m,m.blockSize=512,m.outSize=256,m.hmacStrength=192,m.padLength=64,m.prototype._update=function(A,D){for(var O=this.W,C=0;C<16;C++)O[C]=A[D+C];for(;C<O.length;C++)O[C]=n(f(O[C-2]),O[C-7],h(O[C-15]),O[C-16]);var _=this.h[0],S=this.h[1],L=this.h[2],k=this.h[3],z=this.h[4],U=this.h[5],T=this.h[6],d=this.h[7];for(i(this.k.length===O.length),C=0;C<O.length;C++){var y=o(d,l(z),a(z,U,T),this.k[C],O[C]),N=s(c(_),u(_,S,L));d=T,T=U,U=z,z=s(k,y),k=L,L=S,S=_,_=s(y,N)}this.h[0]=s(this.h[0],_),this.h[1]=s(this.h[1],S),this.h[2]=s(this.h[2],L),this.h[3]=s(this.h[3],k),this.h[4]=s(this.h[4],z),this.h[5]=s(this.h[5],U),this.h[6]=s(this.h[6],T),this.h[7]=s(this.h[7],d)},m.prototype._digest=function(A){return A==="hex"?r.toHex32(this.h,"big"):r.split32(this.h,"big")},Xd}var ef,rw;function ix(){if(rw)return ef;rw=1;var r=js(),e=bv();function t(){if(!(this instanceof t))return new t;e.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}return r.inherits(t,e),ef=t,t.blockSize=512,t.outSize=224,t.hmacStrength=192,t.padLength=64,t.prototype._digest=function(s){return s==="hex"?r.toHex32(this.h.slice(0,7),"big"):r.split32(this.h.slice(0,7),"big")},ef}var tf,iw;function Mv(){if(iw)return tf;iw=1;var r=js(),e=qu(),t=wo(),i=r.rotr64_hi,s=r.rotr64_lo,n=r.shr64_hi,o=r.shr64_lo,a=r.sum64,u=r.sum64_hi,c=r.sum64_lo,l=r.sum64_4_hi,h=r.sum64_4_lo,f=r.sum64_5_hi,w=r.sum64_5_lo,g=e.BlockHash,m=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function E(){if(!(this instanceof E))return new E;g.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=m,this.W=new Array(160)}r.inherits(E,g),tf=E,E.blockSize=1024,E.outSize=512,E.hmacStrength=192,E.padLength=128,E.prototype._prepareBlock=function(N,b){for(var M=this.W,I=0;I<32;I++)M[I]=N[b+I];for(;I<M.length;I+=2){var j=T(M[I-4],M[I-3]),v=d(M[I-4],M[I-3]),p=M[I-14],x=M[I-13],F=z(M[I-30],M[I-29]),V=U(M[I-30],M[I-29]),Q=M[I-32],W=M[I-31];M[I]=l(j,v,p,x,F,V,Q,W),M[I+1]=h(j,v,p,x,F,V,Q,W)}},E.prototype._update=function(N,b){this._prepareBlock(N,b);var M=this.W,I=this.h[0],j=this.h[1],v=this.h[2],p=this.h[3],x=this.h[4],F=this.h[5],V=this.h[6],Q=this.h[7],W=this.h[8],K=this.h[9],se=this.h[10],oe=this.h[11],te=this.h[12],le=this.h[13],Mt=this.h[14],me=this.h[15];t(this.k.length===M.length);for(var ve=0;ve<M.length;ve+=2){var Vt=Mt,je=me,Re=L(W,K),ji=k(W,K),at=A(W,K,se,oe,te),Xe=D(W,K,se,oe,te,le),cs=this.k[ve],Ze=this.k[ve+1],et=M[ve],us=M[ve+1],$e=f(Vt,je,Re,ji,at,Xe,cs,Ze,et,us),Fe=w(Vt,je,Re,ji,at,Xe,cs,Ze,et,us);Vt=_(I,j),je=S(I,j),Re=O(I,j,v,p,x),ji=C(I,j,v,p,x,F);var ls=u(Vt,je,Re,ji),Be=c(Vt,je,Re,ji);Mt=te,me=le,te=se,le=oe,se=W,oe=K,W=u(V,Q,$e,Fe),K=c(Q,Q,$e,Fe),V=x,Q=F,x=v,F=p,v=I,p=j,I=u($e,Fe,ls,Be),j=c($e,Fe,ls,Be)}a(this.h,0,I,j),a(this.h,2,v,p),a(this.h,4,x,F),a(this.h,6,V,Q),a(this.h,8,W,K),a(this.h,10,se,oe),a(this.h,12,te,le),a(this.h,14,Mt,me)},E.prototype._digest=function(N){return N==="hex"?r.toHex32(this.h,"big"):r.split32(this.h,"big")};function A(y,N,b,M,I){var j=y&b^~y&I;return j<0&&(j+=4294967296),j}function D(y,N,b,M,I,j){var v=N&M^~N&j;return v<0&&(v+=4294967296),v}function O(y,N,b,M,I){var j=y&b^y&I^b&I;return j<0&&(j+=4294967296),j}function C(y,N,b,M,I,j){var v=N&M^N&j^M&j;return v<0&&(v+=4294967296),v}function _(y,N){var b=i(y,N,28),M=i(N,y,2),I=i(N,y,7),j=b^M^I;return j<0&&(j+=4294967296),j}function S(y,N){var b=s(y,N,28),M=s(N,y,2),I=s(N,y,7),j=b^M^I;return j<0&&(j+=4294967296),j}function L(y,N){var b=i(y,N,14),M=i(y,N,18),I=i(N,y,9),j=b^M^I;return j<0&&(j+=4294967296),j}function k(y,N){var b=s(y,N,14),M=s(y,N,18),I=s(N,y,9),j=b^M^I;return j<0&&(j+=4294967296),j}function z(y,N){var b=i(y,N,1),M=i(y,N,8),I=n(y,N,7),j=b^M^I;return j<0&&(j+=4294967296),j}function U(y,N){var b=s(y,N,1),M=s(y,N,8),I=o(y,N,7),j=b^M^I;return j<0&&(j+=4294967296),j}function T(y,N){var b=i(y,N,19),M=i(N,y,29),I=n(y,N,6),j=b^M^I;return j<0&&(j+=4294967296),j}function d(y,N){var b=s(y,N,19),M=s(N,y,29),I=o(y,N,6),j=b^M^I;return j<0&&(j+=4294967296),j}return tf}var rf,sw;function sx(){if(sw)return rf;sw=1;var r=js(),e=Mv();function t(){if(!(this instanceof t))return new t;e.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}return r.inherits(t,e),rf=t,t.blockSize=1024,t.outSize=384,t.hmacStrength=192,t.padLength=128,t.prototype._digest=function(s){return s==="hex"?r.toHex32(this.h.slice(0,12),"big"):r.split32(this.h.slice(0,12),"big")},rf}var nw;function nx(){return nw||(nw=1,Rn.sha1=rx(),Rn.sha224=ix(),Rn.sha256=bv(),Rn.sha384=sx(),Rn.sha512=Mv()),Rn}var sf={},ow;function ox(){if(ow)return sf;ow=1;var r=js(),e=qu(),t=r.rotl32,i=r.sum32,s=r.sum32_3,n=r.sum32_4,o=e.BlockHash;function a(){if(!(this instanceof a))return new a;o.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}r.inherits(a,o),sf.ripemd160=a,a.blockSize=512,a.outSize=160,a.hmacStrength=192,a.padLength=64,a.prototype._update=function(E,A){for(var D=this.h[0],O=this.h[1],C=this.h[2],_=this.h[3],S=this.h[4],L=D,k=O,z=C,U=_,T=S,d=0;d<80;d++){var y=i(t(n(D,u(d,O,C,_),E[h[d]+A],c(d)),w[d]),S);D=S,S=_,_=t(C,10),C=O,O=y,y=i(t(n(L,u(79-d,k,z,U),E[f[d]+A],l(d)),g[d]),T),L=T,T=U,U=t(z,10),z=k,k=y}y=s(this.h[1],C,U),this.h[1]=s(this.h[2],_,T),this.h[2]=s(this.h[3],S,L),this.h[3]=s(this.h[4],D,k),this.h[4]=s(this.h[0],O,z),this.h[0]=y},a.prototype._digest=function(E){return E==="hex"?r.toHex32(this.h,"little"):r.split32(this.h,"little")};function u(m,E,A,D){return m<=15?E^A^D:m<=31?E&A|~E&D:m<=47?(E|~A)^D:m<=63?E&D|A&~D:E^(A|~D)}function c(m){return m<=15?0:m<=31?1518500249:m<=47?1859775393:m<=63?2400959708:2840853838}function l(m){return m<=15?1352829926:m<=31?1548603684:m<=47?1836072691:m<=63?2053994217:0}var h=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],f=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],w=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],g=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11];return sf}var nf,aw;function ax(){if(aw)return nf;aw=1;var r=js(),e=wo();function t(i,s,n){if(!(this instanceof t))return new t(i,s,n);this.Hash=i,this.blockSize=i.blockSize/8,this.outSize=i.outSize/8,this.inner=null,this.outer=null,this._init(r.toArray(s,n))}return nf=t,t.prototype._init=function(s){s.length>this.blockSize&&(s=new this.Hash().update(s).digest()),e(s.length<=this.blockSize);for(var n=s.length;n<this.blockSize;n++)s.push(0);for(n=0;n<s.length;n++)s[n]^=54;for(this.inner=new this.Hash().update(s),n=0;n<s.length;n++)s[n]^=106;this.outer=new this.Hash().update(s)},t.prototype.update=function(s,n){return this.inner.update(s,n),this},t.prototype.digest=function(s){return this.outer.update(this.inner.digest()),this.outer.digest(s)},nf}var cw;function Rg(){return cw||(cw=1,(function(r){var e=r;e.utils=js(),e.common=qu(),e.sha=nx(),e.ripemd=ox(),e.hmac=ax(),e.sha1=e.sha.sha1,e.sha256=e.sha.sha256,e.sha224=e.sha.sha224,e.sha384=e.sha.sha384,e.sha512=e.sha.sha512,e.ripemd160=e.ripemd.ripemd160})(Gd)),Gd}var of,uw;function cx(){return uw||(uw=1,of={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}),of}var lw;function $g(){return lw||(lw=1,(function(r){var e=r,t=Rg(),i=wv(),s=Qi(),n=s.assert;function o(c){c.type==="short"?this.curve=new i.short(c):c.type==="edwards"?this.curve=new i.edwards(c):this.curve=new i.mont(c),this.g=this.curve.g,this.n=this.curve.n,this.hash=c.hash,n(this.g.validate(),"Invalid curve"),n(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}e.PresetCurve=o;function a(c,l){Object.defineProperty(e,c,{configurable:!0,enumerable:!0,get:function(){var h=new o(l);return Object.defineProperty(e,c,{configurable:!0,enumerable:!0,value:h}),h}})}a("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:t.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),a("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:t.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),a("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:t.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),a("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:t.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),a("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:t.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),a("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:t.sha256,gRed:!1,g:["9"]}),a("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:t.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var u;try{u=cx()}catch{u=void 0}a("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:t.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",u]})})(Hd)),Hd}var af,hw;function ux(){if(hw)return af;hw=1;var r=Rg(),e=gv(),t=wo();function i(s){if(!(this instanceof i))return new i(s);this.hash=s.hash,this.predResist=!!s.predResist,this.outLen=this.hash.outSize,this.minEntropy=s.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var n=e.toArray(s.entropy,s.entropyEnc||"hex"),o=e.toArray(s.nonce,s.nonceEnc||"hex"),a=e.toArray(s.pers,s.persEnc||"hex");t(n.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(n,o,a)}return af=i,i.prototype._init=function(n,o,a){var u=n.concat(o).concat(a);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var c=0;c<this.V.length;c++)this.K[c]=0,this.V[c]=1;this._update(u),this._reseed=1,this.reseedInterval=281474976710656},i.prototype._hmac=function(){return new r.hmac(this.hash,this.K)},i.prototype._update=function(n){var o=this._hmac().update(this.V).update([0]);n&&(o=o.update(n)),this.K=o.digest(),this.V=this._hmac().update(this.V).digest(),n&&(this.K=this._hmac().update(this.V).update([1]).update(n).digest(),this.V=this._hmac().update(this.V).digest())},i.prototype.reseed=function(n,o,a,u){typeof o!="string"&&(u=a,a=o,o=null),n=e.toArray(n,o),a=e.toArray(a,u),t(n.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(n.concat(a||[])),this._reseed=1},i.prototype.generate=function(n,o,a,u){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof o!="string"&&(u=a,a=o,o=null),a&&(a=e.toArray(a,u||"hex"),this._update(a));for(var c=[];c.length<n;)this.V=this._hmac().update(this.V).digest(),c=c.concat(this.V);var l=c.slice(0,n);return this._update(a),this._reseed++,e.encode(l,o)},af}var cf,dw;function lx(){if(dw)return cf;dw=1;var r=Gs(),e=Qi(),t=e.assert;function i(s,n){this.ec=s,this.priv=null,this.pub=null,n.priv&&this._importPrivate(n.priv,n.privEnc),n.pub&&this._importPublic(n.pub,n.pubEnc)}return cf=i,i.fromPublic=function(n,o,a){return o instanceof i?o:new i(n,{pub:o,pubEnc:a})},i.fromPrivate=function(n,o,a){return o instanceof i?o:new i(n,{priv:o,privEnc:a})},i.prototype.validate=function(){var n=this.getPublic();return n.isInfinity()?{result:!1,reason:"Invalid public key"}:n.validate()?n.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},i.prototype.getPublic=function(n,o){return typeof n=="string"&&(o=n,n=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),o?this.pub.encode(o,n):this.pub},i.prototype.getPrivate=function(n){return n==="hex"?this.priv.toString(16,2):this.priv},i.prototype._importPrivate=function(n,o){this.priv=new r(n,o||16),this.priv=this.priv.umod(this.ec.curve.n)},i.prototype._importPublic=function(n,o){if(n.x||n.y){this.ec.curve.type==="mont"?t(n.x,"Need x coordinate"):(this.ec.curve.type==="short"||this.ec.curve.type==="edwards")&&t(n.x&&n.y,"Need both x and y coordinate"),this.pub=this.ec.curve.point(n.x,n.y);return}this.pub=this.ec.curve.decodePoint(n,o)},i.prototype.derive=function(n){return n.validate()||t(n.validate(),"public point not validated"),n.mul(this.priv).getX()},i.prototype.sign=function(n,o,a){return this.ec.sign(n,this,o,a)},i.prototype.verify=function(n,o,a){return this.ec.verify(n,o,this,void 0,a)},i.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"},cf}var uf,fw;function hx(){if(fw)return uf;fw=1;var r=Gs(),e=Qi(),t=e.assert;function i(u,c){if(u instanceof i)return u;this._importDER(u,c)||(t(u.r&&u.s,"Signature without r or s"),this.r=new r(u.r,16),this.s=new r(u.s,16),u.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=u.recoveryParam)}uf=i;function s(){this.place=0}function n(u,c){var l=u[c.place++];if(!(l&128))return l;var h=l&15;if(h===0||h>4||u[c.place]===0)return!1;for(var f=0,w=0,g=c.place;w<h;w++,g++)f<<=8,f|=u[g],f>>>=0;return f<=127?!1:(c.place=g,f)}function o(u){for(var c=0,l=u.length-1;!u[c]&&!(u[c+1]&128)&&c<l;)c++;return c===0?u:u.slice(c)}i.prototype._importDER=function(c,l){c=e.toArray(c,l);var h=new s;if(c[h.place++]!==48)return!1;var f=n(c,h);if(f===!1||f+h.place!==c.length||c[h.place++]!==2)return!1;var w=n(c,h);if(w===!1||(c[h.place]&128)!==0)return!1;var g=c.slice(h.place,w+h.place);if(h.place+=w,c[h.place++]!==2)return!1;var m=n(c,h);if(m===!1||c.length!==m+h.place||(c[h.place]&128)!==0)return!1;var E=c.slice(h.place,m+h.place);if(g[0]===0)if(g[1]&128)g=g.slice(1);else return!1;if(E[0]===0)if(E[1]&128)E=E.slice(1);else return!1;return this.r=new r(g),this.s=new r(E),this.recoveryParam=null,!0};function a(u,c){if(c<128){u.push(c);return}var l=1+(Math.log(c)/Math.LN2>>>3);for(u.push(l|128);--l;)u.push(c>>>(l<<3)&255);u.push(c)}return i.prototype.toDER=function(c){var l=this.r.toArray(),h=this.s.toArray();for(l[0]&128&&(l=[0].concat(l)),h[0]&128&&(h=[0].concat(h)),l=o(l),h=o(h);!h[0]&&!(h[1]&128);)h=h.slice(1);var f=[2];a(f,l.length),f=f.concat(l),f.push(2),a(f,h.length);var w=f.concat(h),g=[48];return a(g,w.length),g=g.concat(w),e.encode(g,c)},uf}var lf,pw;function dx(){if(pw)return lf;pw=1;var r=Gs(),e=ux(),t=Qi(),i=$g(),s=yv(),n=t.assert,o=lx(),a=hx();function u(c){if(!(this instanceof u))return new u(c);typeof c=="string"&&(n(Object.prototype.hasOwnProperty.call(i,c),"Unknown curve "+c),c=i[c]),c instanceof i.PresetCurve&&(c={curve:c}),this.curve=c.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=c.curve.g,this.g.precompute(c.curve.n.bitLength()+1),this.hash=c.hash||c.curve.hash}return lf=u,u.prototype.keyPair=function(l){return new o(this,l)},u.prototype.keyFromPrivate=function(l,h){return o.fromPrivate(this,l,h)},u.prototype.keyFromPublic=function(l,h){return o.fromPublic(this,l,h)},u.prototype.genKeyPair=function(l){l||(l={});for(var h=new e({hash:this.hash,pers:l.pers,persEnc:l.persEnc||"utf8",entropy:l.entropy||s(this.hash.hmacStrength),entropyEnc:l.entropy&&l.entropyEnc||"utf8",nonce:this.n.toArray()}),f=this.n.byteLength(),w=this.n.sub(new r(2));;){var g=new r(h.generate(f));if(!(g.cmp(w)>0))return g.iaddn(1),this.keyFromPrivate(g)}},u.prototype._truncateToN=function(l,h,f){var w;if(r.isBN(l)||typeof l=="number")l=new r(l,16),w=l.byteLength();else if(typeof l=="object")w=l.length,l=new r(l,16);else{var g=l.toString();w=g.length+1>>>1,l=new r(g,16)}typeof f!="number"&&(f=w*8);var m=f-this.n.bitLength();return m>0&&(l=l.ushrn(m)),!h&&l.cmp(this.n)>=0?l.sub(this.n):l},u.prototype.sign=function(l,h,f,w){if(typeof f=="object"&&(w=f,f=null),w||(w={}),typeof l!="string"&&typeof l!="number"&&!r.isBN(l)){n(typeof l=="object"&&l&&typeof l.length=="number","Expected message to be an array-like, a hex string, or a BN instance"),n(l.length>>>0===l.length);for(var g=0;g<l.length;g++)n((l[g]&255)===l[g])}h=this.keyFromPrivate(h,f),l=this._truncateToN(l,!1,w.msgBitLength),n(!l.isNeg(),"Can not sign a negative message");var m=this.n.byteLength(),E=h.getPrivate().toArray("be",m),A=l.toArray("be",m);n(new r(A).eq(l),"Can not sign message");for(var D=new e({hash:this.hash,entropy:E,nonce:A,pers:w.pers,persEnc:w.persEnc||"utf8"}),O=this.n.sub(new r(1)),C=0;;C++){var _=w.k?w.k(C):new r(D.generate(this.n.byteLength()));if(_=this._truncateToN(_,!0),!(_.cmpn(1)<=0||_.cmp(O)>=0)){var S=this.g.mul(_);if(!S.isInfinity()){var L=S.getX(),k=L.umod(this.n);if(k.cmpn(0)!==0){var z=_.invm(this.n).mul(k.mul(h.getPrivate()).iadd(l));if(z=z.umod(this.n),z.cmpn(0)!==0){var U=(S.getY().isOdd()?1:0)|(L.cmp(k)!==0?2:0);return w.canonical&&z.cmp(this.nh)>0&&(z=this.n.sub(z),U^=1),new a({r:k,s:z,recoveryParam:U})}}}}}},u.prototype.verify=function(l,h,f,w,g){g||(g={}),l=this._truncateToN(l,!1,g.msgBitLength),f=this.keyFromPublic(f,w),h=new a(h,"hex");var m=h.r,E=h.s;if(m.cmpn(1)<0||m.cmp(this.n)>=0||E.cmpn(1)<0||E.cmp(this.n)>=0)return!1;var A=E.invm(this.n),D=A.mul(l).umod(this.n),O=A.mul(m).umod(this.n),C;return this.curve._maxwellTrick?(C=this.g.jmulAdd(D,f.getPublic(),O),C.isInfinity()?!1:C.eqXToP(m)):(C=this.g.mulAdd(D,f.getPublic(),O),C.isInfinity()?!1:C.getX().umod(this.n).cmp(m)===0)},u.prototype.recoverPubKey=function(c,l,h,f){n((3&h)===h,"The recovery param is more than two bits"),l=new a(l,f);var w=this.n,g=new r(c),m=l.r,E=l.s,A=h&1,D=h>>1;if(m.cmp(this.curve.p.umod(this.curve.n))>=0&&D)throw new Error("Unable to find sencond key candinate");D?m=this.curve.pointFromX(m.add(this.curve.n),A):m=this.curve.pointFromX(m,A);var O=l.r.invm(w),C=w.sub(g).mul(O).umod(w),_=E.mul(O).umod(w);return this.g.mulAdd(C,m,_)},u.prototype.getKeyRecoveryParam=function(c,l,h,f){if(l=new a(l,f),l.recoveryParam!==null)return l.recoveryParam;for(var w=0;w<4;w++){var g;try{g=this.recoverPubKey(c,l,w)}catch{continue}if(g.eq(h))return w}throw new Error("Unable to find valid recovery factor")},lf}var hf,gw;function fx(){if(gw)return hf;gw=1;var r=Qi(),e=r.assert,t=r.parseBytes,i=r.cachedProperty;function s(n,o){this.eddsa=n,this._secret=t(o.secret),n.isPoint(o.pub)?this._pub=o.pub:this._pubBytes=t(o.pub)}return s.fromPublic=function(o,a){return a instanceof s?a:new s(o,{pub:a})},s.fromSecret=function(o,a){return a instanceof s?a:new s(o,{secret:a})},s.prototype.secret=function(){return this._secret},i(s,"pubBytes",function(){return this.eddsa.encodePoint(this.pub())}),i(s,"pub",function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())}),i(s,"privBytes",function(){var o=this.eddsa,a=this.hash(),u=o.encodingLength-1,c=a.slice(0,o.encodingLength);return c[0]&=248,c[u]&=127,c[u]|=64,c}),i(s,"priv",function(){return this.eddsa.decodeInt(this.privBytes())}),i(s,"hash",function(){return this.eddsa.hash().update(this.secret()).digest()}),i(s,"messagePrefix",function(){return this.hash().slice(this.eddsa.encodingLength)}),s.prototype.sign=function(o){return e(this._secret,"KeyPair can only verify"),this.eddsa.sign(o,this)},s.prototype.verify=function(o,a){return this.eddsa.verify(o,a,this)},s.prototype.getSecret=function(o){return e(this._secret,"KeyPair is public only"),r.encode(this.secret(),o)},s.prototype.getPublic=function(o){return r.encode(this.pubBytes(),o)},hf=s,hf}var df,yw;function px(){if(yw)return df;yw=1;var r=Gs(),e=Qi(),t=e.assert,i=e.cachedProperty,s=e.parseBytes;function n(o,a){this.eddsa=o,typeof a!="object"&&(a=s(a)),Array.isArray(a)&&(t(a.length===o.encodingLength*2,"Signature has invalid size"),a={R:a.slice(0,o.encodingLength),S:a.slice(o.encodingLength)}),t(a.R&&a.S,"Signature without R or S"),o.isPoint(a.R)&&(this._R=a.R),a.S instanceof r&&(this._S=a.S),this._Rencoded=Array.isArray(a.R)?a.R:a.Rencoded,this._Sencoded=Array.isArray(a.S)?a.S:a.Sencoded}return i(n,"S",function(){return this.eddsa.decodeInt(this.Sencoded())}),i(n,"R",function(){return this.eddsa.decodePoint(this.Rencoded())}),i(n,"Rencoded",function(){return this.eddsa.encodePoint(this.R())}),i(n,"Sencoded",function(){return this.eddsa.encodeInt(this.S())}),n.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},n.prototype.toHex=function(){return e.encode(this.toBytes(),"hex").toUpperCase()},df=n,df}var ff,ww;function gx(){if(ww)return ff;ww=1;var r=Rg(),e=$g(),t=Qi(),i=t.assert,s=t.parseBytes,n=fx(),o=px();function a(u){if(i(u==="ed25519","only tested with ed25519 so far"),!(this instanceof a))return new a(u);u=e[u].curve,this.curve=u,this.g=u.g,this.g.precompute(u.n.bitLength()+1),this.pointClass=u.point().constructor,this.encodingLength=Math.ceil(u.n.bitLength()/8),this.hash=r.sha512}return ff=a,a.prototype.sign=function(c,l){c=s(c);var h=this.keyFromSecret(l),f=this.hashInt(h.messagePrefix(),c),w=this.g.mul(f),g=this.encodePoint(w),m=this.hashInt(g,h.pubBytes(),c).mul(h.priv()),E=f.add(m).umod(this.curve.n);return this.makeSignature({R:w,S:E,Rencoded:g})},a.prototype.verify=function(c,l,h){if(c=s(c),l=this.makeSignature(l),l.S().gte(l.eddsa.curve.n)||l.S().isNeg())return!1;var f=this.keyFromPublic(h),w=this.hashInt(l.Rencoded(),f.pubBytes(),c),g=this.g.mul(l.S()),m=l.R().add(f.pub().mul(w));return m.eq(g)},a.prototype.hashInt=function(){for(var c=this.hash(),l=0;l<arguments.length;l++)c.update(arguments[l]);return t.intFromLE(c.digest()).umod(this.curve.n)},a.prototype.keyFromPublic=function(c){return n.fromPublic(this,c)},a.prototype.keyFromSecret=function(c){return n.fromSecret(this,c)},a.prototype.makeSignature=function(c){return c instanceof o?c:new o(this,c)},a.prototype.encodePoint=function(c){var l=c.getY().toArray("le",this.encodingLength);return l[this.encodingLength-1]|=c.getX().isOdd()?128:0,l},a.prototype.decodePoint=function(c){c=t.parseBytes(c);var l=c.length-1,h=c.slice(0,l).concat(c[l]&-129),f=(c[l]&128)!==0,w=t.intFromLE(h);return this.curve.pointFromY(w,f)},a.prototype.encodeInt=function(c){return c.toArray("le",this.encodingLength)},a.prototype.decodeInt=function(c){return t.intFromLE(c)},a.prototype.isPoint=function(c){return c instanceof this.pointClass},ff}var mw;function yx(){return mw||(mw=1,(function(r){var e=r;e.version=K5.version,e.utils=Qi(),e.rand=yv(),e.curve=wv(),e.curves=$g(),e.ec=dx(),e.eddsa=gx()})($d)),$d}var Nv=yx();const vv={waku:{publish:"waku_publish",batchPublish:"waku_batchPublish",subscribe:"waku_subscribe",batchSubscribe:"waku_batchSubscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe",batchUnsubscribe:"waku_batchUnsubscribe",batchFetchMessages:"waku_batchFetchMessages"},irn:{publish:"irn_publish",batchPublish:"irn_batchPublish",subscribe:"irn_subscribe",batchSubscribe:"irn_batchSubscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe",batchUnsubscribe:"irn_batchUnsubscribe",batchFetchMessages:"irn_batchFetchMessages"},iridium:{publish:"iridium_publish",batchPublish:"iridium_batchPublish",subscribe:"iridium_subscribe",batchSubscribe:"iridium_batchSubscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe",batchUnsubscribe:"iridium_batchUnsubscribe",batchFetchMessages:"iridium_batchFetchMessages"}};var wx={};const Iv=":";function Da(r){const[e,t]=r.split(Iv);return{namespace:e,reference:t}}function mx(r){const[e,t,i]=r.split(Iv);return{namespace:e,reference:t,address:i}}function Dv(r,e){return r.includes(":")?[r]:e.chains||[]}const bx="ReactNative",vi={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},Mx="js";function Sh(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}function xn(){return!li.getDocument()&&!!li.getNavigator()&&navigator.product===bx}function Nx(){return xn()&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"&&(global==null?void 0:global.Platform.OS)==="android"}function vx(){return xn()&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"&&(global==null?void 0:global.Platform.OS)==="ios"}function Zu(){return!Sh()&&!!li.getNavigator()&&!!li.getDocument()}function Hu(){return xn()?vi.reactNative:Sh()?vi.node:Zu()?vi.browser:vi.unknown}function bw(){var r;try{return xn()&&typeof global<"u"&&typeof(global==null?void 0:global.Application)<"u"?(r=global.Application)==null?void 0:r.applicationId:void 0}catch{return}}function Ix(r,e){const t=new URLSearchParams(r);for(const i of Object.keys(e).sort())if(e.hasOwnProperty(i)){const s=e[i];s!==void 0&&t.set(i,s)}return t.toString()}function Av(){return GN.getWindowMetadata()||{name:"",description:"",url:"",icons:[""]}}function Dx(){if(Hu()===vi.reactNative&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"){const{OS:t,Version:i}=global.Platform;return[t,i].join("-")}const r=ZN();if(r===null)return"unknown";const e=r.os?r.os.replace(" ","").toLowerCase():"unknown";return r.type==="browser"?[e,r.name,r.version].join("-"):[e,r.version].join("-")}function Ax(){var r;const e=Hu();return e===vi.browser?[e,((r=li.getLocation())==null?void 0:r.host)||"unknown"].join(":"):e}function Ev(r,e,t){const i=Dx(),s=Ax();return[[r,e].join("-"),[Mx,t].join("-"),i,s].join("/")}function Ex({protocol:r,version:e,relayUrl:t,sdkVersion:i,auth:s,projectId:n,useOnCloseEvent:o,bundleId:a,packageName:u}){const c=t.split("?"),l=Ev(r,e,i),h={auth:s,ua:l,projectId:n,useOnCloseEvent:o,packageName:u||void 0,bundleId:a||void 0},f=Ix(c[1]||"",h);return c[0]+"?"+f}function Jn(r,e){return r.filter(t=>e.includes(t)).length===r.length}function Tv(r){return Object.fromEntries(r.entries())}function Sv(r){return new Map(Object.entries(r))}function Vn(r=Y.FIVE_MINUTES,e){const t=Y.toMiliseconds(r||Y.FIVE_MINUTES);let i,s,n,o;return{resolve:a=>{n&&i&&(clearTimeout(n),i(a),o=Promise.resolve(a))},reject:a=>{n&&s&&(clearTimeout(n),s(a))},done:()=>new Promise((a,u)=>{if(o)return a(o);n=setTimeout(()=>{const c=new Error(e);o=Promise.reject(c),u(c)},t),i=a,s=u})}}function wn(r,e,t){return new Promise(async(i,s)=>{const n=setTimeout(()=>s(new Error(t)),e);try{const o=await r;i(o)}catch(o){s(o)}clearTimeout(n)})}function jv(r,e){if(typeof e=="string"&&e.startsWith(`${r}:`))return e;if(r.toLowerCase()==="topic"){if(typeof e!="string")throw new Error('Value must be "string" for expirer target type: topic');return`topic:${e}`}else if(r.toLowerCase()==="id"){if(typeof e!="number")throw new Error('Value must be "number" for expirer target type: id');return`id:${e}`}throw new Error(`Unknown expirer target type: ${r}`)}function Tx(r){return jv("topic",r)}function Sx(r){return jv("id",r)}function xv(r){const[e,t]=r.split(":"),i={id:void 0,topic:void 0};if(e==="topic"&&typeof t=="string")i.topic=t;else if(e==="id"&&Number.isInteger(Number(t)))i.id=Number(t);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${t}`);return i}function dr(r,e){return Y.fromMiliseconds(Date.now()+Y.toMiliseconds(r))}function dn(r){return Date.now()>=Y.toMiliseconds(r)}function Qe(r,e){return`${r}${e?`:${e}`:""}`}function ch(r=[],e=[]){return[...new Set([...r,...e])]}async function jx({id:r,topic:e,wcDeepLink:t}){var i;try{if(!t)return;const s=typeof t=="string"?JSON.parse(t):t,n=s?.href;if(typeof n!="string")return;const o=xx(n,r,e),a=Hu();if(a===vi.browser){if(!((i=li.getDocument())!=null&&i.hasFocus())){console.warn("Document does not have focus, skipping deeplink.");return}Cx(o)}else a===vi.reactNative&&typeof(global==null?void 0:global.Linking)<"u"&&await global.Linking.openURL(o)}catch(s){console.error(s)}}function xx(r,e,t){const i=`requestId=${e}&sessionTopic=${t}`;r.endsWith("/")&&(r=r.slice(0,-1));let s=`${r}`;if(r.startsWith("https://t.me")){const n=r.includes("?")?"&startapp=":"?startapp=";s=`${s}${n}${Lx(i,!0)}`}else s=`${s}/wc?${i}`;return s}function Cx(r){let e="_self";zx()?e="_top":(Ox()||r.startsWith("https://")||r.startsWith("http://"))&&(e="_blank"),window.open(r,e,"noreferrer noopener")}async function _x(r,e){let t="";try{if(Zu()&&(t=localStorage.getItem(e),t))return t;t=await r.getItem(e)}catch(i){console.error(i)}return t}function Mw(r,e){if(!r.includes(e))return null;const t=r.split(/([&,?,=])/),i=t.indexOf(e);return t[i+2]}function Nw(){return typeof crypto<"u"&&crypto!=null&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,r=>{const e=Math.random()*16|0;return(r==="x"?e:e&3|8).toString(16)})}function Fg(){return typeof process<"u"&&wx.IS_VITEST==="true"}function Ox(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)}function zx(){try{return window.self!==window.top}catch{return!1}}function Lx(r,e=!1){const t=Buffer.from(r).toString("base64");return e?t.replace(/[=]/g,""):t}function Cv(r){return Buffer.from(r,"base64").toString("utf-8")}function Px(r){return new Promise(e=>setTimeout(e,r))}function cu(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function kx(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function ed(r,...e){if(!kx(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function Bg(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");cu(r.outputLen),cu(r.blockLen)}function ja(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 _v(r,e){ed(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}const Cl=BigInt(2**32-1),vw=BigInt(32);function Ux(r,e=!1){return e?{h:Number(r&Cl),l:Number(r>>vw&Cl)}:{h:Number(r>>vw&Cl)|0,l:Number(r&Cl)|0}}function Rx(r,e=!1){let t=new Uint32Array(r.length),i=new Uint32Array(r.length);for(let s=0;s<r.length;s++){const{h:n,l:o}=Ux(r[s],e);[t[s],i[s]]=[n,o]}return[t,i]}const $x=(r,e,t)=>r<<t|e>>>32-t,Fx=(r,e,t)=>e<<t|r>>>32-t,Bx=(r,e,t)=>e<<t-32|r>>>64-t,Yx=(r,e,t)=>r<<t-32|e>>>64-t,_o=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Qx(r){return new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4))}function pf(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function ps(r,e){return r<<32-e|r>>>e}const Iw=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Vx(r){return r<<24&4278190080|r<<8&16711680|r>>>8&65280|r>>>24&255}function Dw(r){for(let e=0;e<r.length;e++)r[e]=Vx(r[e])}function Wx(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function xa(r){return typeof r=="string"&&(r=Wx(r)),ed(r),r}let Yg=class{clone(){return this._cloneInto()}};function Ov(r){const e=i=>r().update(xa(i)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Gu(r=32){if(_o&&typeof _o.getRandomValues=="function")return _o.getRandomValues(new Uint8Array(r));if(_o&&typeof _o.randomBytes=="function")return _o.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}const zv=[],Lv=[],Pv=[],qx=BigInt(0),Nc=BigInt(1),Zx=BigInt(2),Hx=BigInt(7),Gx=BigInt(256),Kx=BigInt(113);for(let r=0,e=Nc,t=1,i=0;r<24;r++){[t,i]=[i,(2*t+3*i)%5],zv.push(2*(5*i+t)),Lv.push((r+1)*(r+2)/2%64);let s=qx;for(let n=0;n<7;n++)e=(e<<Nc^(e>>Hx)*Kx)%Gx,e&Zx&&(s^=Nc<<(Nc<<BigInt(n))-Nc);Pv.push(s)}const[Jx,Xx]=Rx(Pv,!0),Aw=(r,e,t)=>t>32?Bx(r,e,t):$x(r,e,t),Ew=(r,e,t)=>t>32?Yx(r,e,t):Fx(r,e,t);function eC(r,e=24){const t=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let o=0;o<10;o++)t[o]=r[o]^r[o+10]^r[o+20]^r[o+30]^r[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,u=(o+2)%10,c=t[u],l=t[u+1],h=Aw(c,l,1)^t[a],f=Ew(c,l,1)^t[a+1];for(let w=0;w<50;w+=10)r[o+w]^=h,r[o+w+1]^=f}let s=r[2],n=r[3];for(let o=0;o<24;o++){const a=Lv[o],u=Aw(s,n,a),c=Ew(s,n,a),l=zv[o];s=r[l],n=r[l+1],r[l]=u,r[l+1]=c}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)t[a]=r[o+a];for(let a=0;a<10;a++)r[o+a]^=~t[(a+2)%10]&t[(a+4)%10]}r[0]^=Jx[i],r[1]^=Xx[i]}t.fill(0)}let tC=class kv extends Yg{constructor(e,t,i,s=!1,n=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=i,this.enableXOF=s,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,cu(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Qx(this.state)}keccak(){Iw||Dw(this.state32),eC(this.state32,this.rounds),Iw||Dw(this.state32),this.posOut=0,this.pos=0}update(e){ja(this);const{blockLen:t,state:i}=this;e=xa(e);const s=e.length;for(let n=0;n<s;){const o=Math.min(t-this.pos,s-n);for(let a=0;a<o;a++)i[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:t,pos:i,blockLen:s}=this;e[i]^=t,(t&128)!==0&&i===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){ja(this,!1),ed(e),this.finish();const t=this.state,{blockLen:i}=this;for(let s=0,n=e.length;s<n;){this.posOut>=i&&this.keccak();const o=Math.min(i-this.posOut,n-s);e.set(t.subarray(this.posOut,this.posOut+o),s),this.posOut+=o,s+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return cu(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(_v(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:i,outputLen:s,rounds:n,enableXOF:o}=this;return e||(e=new kv(t,i,s,o,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=s,e.enableXOF=o,e.destroyed=this.destroyed,e}};const rC=(r,e,t)=>Ov(()=>new tC(e,r,t)),iC=rC(1,136,256/8),sC="https://rpc.walletconnect.org/v1";function Uv(r){const e=`Ethereum Signed Message:
11
+ ${r.length}`,t=new TextEncoder().encode(e+r);return"0x"+Buffer.from(iC(t)).toString("hex")}async function nC(r,e,t,i,s,n){switch(t.t){case"eip191":return await oC(r,e,t.s);case"eip1271":return await aC(r,e,t.s,i,s,n);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${t.t}`)}}async function oC(r,e,t){return(await Xj({hash:Uv(e),signature:t})).toLowerCase()===r.toLowerCase()}async function aC(r,e,t,i,s,n){const o=Da(i);if(!o.namespace||!o.reference)throw new Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${i}`);try{const a="0x1626ba7e",u="0000000000000000000000000000000000000000000000000000000000000040",c="0000000000000000000000000000000000000000000000000000000000000041",l=t.substring(2),h=Uv(e).substring(2),f=a+h+u+c+l,w=await fetch(`${n||sC}/?chainId=${i}&projectId=${s}`,{method:"POST",body:JSON.stringify({id:cC(),jsonrpc:"2.0",method:"eth_call",params:[{to:r,data:f},"latest"]})}),{result:g}=await w.json();return g?g.slice(0,a.length).toLowerCase()===a.toLowerCase():!1}catch(a){return console.error("isValidEip1271Signature: ",a),!1}}function cC(){return Date.now()+Math.floor(Math.random()*1e3)}var uC=Object.defineProperty,lC=Object.defineProperties,hC=Object.getOwnPropertyDescriptors,Tw=Object.getOwnPropertySymbols,dC=Object.prototype.hasOwnProperty,fC=Object.prototype.propertyIsEnumerable,Sw=(r,e,t)=>e in r?uC(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,pC=(r,e)=>{for(var t in e||(e={}))dC.call(e,t)&&Sw(r,t,e[t]);if(Tw)for(var t of Tw(e))fC.call(e,t)&&Sw(r,t,e[t]);return r},gC=(r,e)=>lC(r,hC(e));const yC="did:pkh:",Qg=r=>r?.split(":"),wC=r=>{const e=r&&Qg(r);if(e)return r.includes(yC)?e[3]:e[1]},Ip=r=>{const e=r&&Qg(r);if(e)return e[2]+":"+e[3]},jh=r=>{const e=r&&Qg(r);if(e)return e.pop()};async function jw(r){const{cacao:e,projectId:t}=r,{s:i,p:s}=e,n=Rv(s,s.iss),o=jh(s.iss);return await nC(o,n,i,Ip(s.iss),t)}const Rv=(r,e)=>{const t=`${r.domain} wants you to sign in with your Ethereum account:`,i=jh(e);if(!r.aud&&!r.uri)throw new Error("Either `aud` or `uri` is required to construct the message");let s=r.statement||void 0;const n=`URI: ${r.aud||r.uri}`,o=`Version: ${r.version}`,a=`Chain ID: ${wC(e)}`,u=`Nonce: ${r.nonce}`,c=`Issued At: ${r.iat}`,l=r.exp?`Expiration Time: ${r.exp}`:void 0,h=r.nbf?`Not Before: ${r.nbf}`:void 0,f=r.requestId?`Request ID: ${r.requestId}`:void 0,w=r.resources?`Resources:${r.resources.map(m=>`
12
+ - ${m}`).join("")}`:void 0,g=uh(r.resources);if(g){const m=uu(g);s=EC(s,m)}return[t,i,"",s,"",n,o,a,u,c,l,h,f,w].filter(m=>m!=null).join(`
13
+ `)};function mC(r){return Buffer.from(JSON.stringify(r)).toString("base64")}function bC(r){return JSON.parse(Buffer.from(r,"base64").toString("utf-8"))}function no(r){if(!r)throw new Error("No recap provided, value is undefined");if(!r.att)throw new Error("No `att` property found");const e=Object.keys(r.att);if(!(e!=null&&e.length))throw new Error("No resources found in `att` property");e.forEach(t=>{const i=r.att[t];if(Array.isArray(i))throw new Error(`Resource must be an object: ${t}`);if(typeof i!="object")throw new Error(`Resource must be an object: ${t}`);if(!Object.keys(i).length)throw new Error(`Resource object is empty: ${t}`);Object.keys(i).forEach(s=>{const n=i[s];if(!Array.isArray(n))throw new Error(`Ability limits ${s} must be an array of objects, found: ${n}`);if(!n.length)throw new Error(`Value of ${s} is empty array, must be an array with objects`);n.forEach(o=>{if(typeof o!="object")throw new Error(`Ability limits (${s}) must be an array of objects, found: ${o}`)})})})}function MC(r,e,t,i={}){return t?.sort((s,n)=>s.localeCompare(n)),{att:{[r]:NC(e,t,i)}}}function NC(r,e,t={}){e=e?.sort((s,n)=>s.localeCompare(n));const i=e.map(s=>({[`${r}/${s}`]:[t]}));return Object.assign({},...i)}function $v(r){return no(r),`urn:recap:${mC(r).replace(/=/g,"")}`}function uu(r){const e=bC(r.replace("urn:recap:",""));return no(e),e}function vC(r,e,t){const i=MC(r,e,t);return $v(i)}function IC(r){return r&&r.includes("urn:recap:")}function DC(r,e){const t=uu(r),i=uu(e),s=AC(t,i);return $v(s)}function AC(r,e){no(r),no(e);const t=Object.keys(r.att).concat(Object.keys(e.att)).sort((s,n)=>s.localeCompare(n)),i={att:{}};return t.forEach(s=>{var n,o;Object.keys(((n=r.att)==null?void 0:n[s])||{}).concat(Object.keys(((o=e.att)==null?void 0:o[s])||{})).sort((a,u)=>a.localeCompare(u)).forEach(a=>{var u,c;i.att[s]=gC(pC({},i.att[s]),{[a]:((u=r.att[s])==null?void 0:u[a])||((c=e.att[s])==null?void 0:c[a])})})}),i}function EC(r="",e){no(e);const t="I further authorize the stated URI to perform the following actions on my behalf: ";if(r.includes(t))return r;const i=[];let s=0;Object.keys(e.att).forEach(a=>{const u=Object.keys(e.att[a]).map(h=>({ability:h.split("/")[0],action:h.split("/")[1]}));u.sort((h,f)=>h.action.localeCompare(f.action));const c={};u.forEach(h=>{c[h.ability]||(c[h.ability]=[]),c[h.ability].push(h.action)});const l=Object.keys(c).map(h=>(s++,`(${s}) '${h}': '${c[h].join("', '")}' for '${a}'.`));i.push(l.join(", ").replace(".,","."))});const n=i.join(" "),o=`${t}${n}`;return`${r?r+" ":""}${o}`}function xw(r){var e;const t=uu(r);no(t);const i=(e=t.att)==null?void 0:e.eip155;return i?Object.keys(i).map(s=>s.split("/")[1]):[]}function Cw(r){const e=uu(r);no(e);const t=[];return Object.values(e.att).forEach(i=>{Object.values(i).forEach(s=>{var n;(n=s?.[0])!=null&&n.chains&&t.push(s[0].chains)})}),[...new Set(t.flat())]}function uh(r){if(!r)return;const e=r?.[r.length-1];return IC(e)?e:void 0}function gf(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function Fv(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function Mi(r,...e){if(!Fv(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function _w(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 TC(r,e){Mi(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}function Ow(r){if(typeof r!="boolean")throw new Error(`boolean expected, not ${r}`)}const In=r=>new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4)),SC=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),jC=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!jC)throw new Error("Non little-endian hardware is not supported");function xC(r){if(typeof r!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(r))}function Dp(r){if(typeof r=="string")r=xC(r);else if(Fv(r))r=Ap(r);else throw new Error("Uint8Array expected, got "+typeof r);return r}function CC(r,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(r,e)}function _C(r,e){if(r.length!==e.length)return!1;let t=0;for(let i=0;i<r.length;i++)t|=r[i]^e[i];return t===0}const OC=(r,e)=>{function t(i,...s){if(Mi(i),r.nonceLength!==void 0){const c=s[0];if(!c)throw new Error("nonce / iv required");r.varSizeNonce?Mi(c):Mi(c,r.nonceLength)}const n=r.tagLength;n&&s[1]!==void 0&&Mi(s[1]);const o=e(i,...s),a=(c,l)=>{if(l!==void 0){if(c!==2)throw new Error("cipher output not supported");Mi(l)}};let u=!1;return{encrypt(c,l){if(u)throw new Error("cannot encrypt() twice with same key + nonce");return u=!0,Mi(c),a(o.encrypt.length,l),o.encrypt(c,l)},decrypt(c,l){if(Mi(c),n&&c.length<n)throw new Error("invalid ciphertext length: smaller than tagLength="+n);return a(o.decrypt.length,l),o.decrypt(c,l)}}}return Object.assign(t,r),t};function zw(r,e,t=!0){if(e===void 0)return new Uint8Array(r);if(e.length!==r)throw new Error("invalid output length, expected "+r+", got: "+e.length);if(t&&!zC(e))throw new Error("invalid output, must be aligned");return e}function Lw(r,e,t,i){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,i);const s=BigInt(32),n=BigInt(4294967295),o=Number(t>>s&n),a=Number(t&n);r.setUint32(e+4,o,i),r.setUint32(e+0,a,i)}function zC(r){return r.byteOffset%4===0}function Ap(r){return Uint8Array.from(r)}function Ca(...r){for(let e=0;e<r.length;e++)r[e].fill(0)}const Bv=r=>Uint8Array.from(r.split("").map(e=>e.charCodeAt(0))),LC=Bv("expand 16-byte k"),PC=Bv("expand 32-byte k"),kC=In(LC),UC=In(PC);function _e(r,e){return r<<e|r>>>32-e}function Ep(r){return r.byteOffset%4===0}const _l=64,RC=16,Yv=2**32-1,Pw=new Uint32Array;function $C(r,e,t,i,s,n,o,a){const u=s.length,c=new Uint8Array(_l),l=In(c),h=Ep(s)&&Ep(n),f=h?In(s):Pw,w=h?In(n):Pw;for(let g=0;g<u;o++){if(r(e,t,i,l,o,a),o>=Yv)throw new Error("arx: counter overflow");const m=Math.min(_l,u-g);if(h&&m===_l){const E=g/4;if(g%4!==0)throw new Error("arx: invalid block position");for(let A=0,D;A<RC;A++)D=E+A,w[D]=f[D]^l[A];g+=_l;continue}for(let E=0,A;E<m;E++)A=g+E,n[A]=s[A]^c[E];g+=m}}function FC(r,e){const{allowShortKeys:t,extendNonceFn:i,counterLength:s,counterRight:n,rounds:o}=CC({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof r!="function")throw new Error("core must be a function");return gf(s),gf(o),Ow(n),Ow(t),(a,u,c,l,h=0)=>{Mi(a),Mi(u),Mi(c);const f=c.length;if(l===void 0&&(l=new Uint8Array(f)),Mi(l),gf(h),h<0||h>=Yv)throw new Error("arx: counter overflow");if(l.length<f)throw new Error(`arx: output (${l.length}) is shorter than data (${f})`);const w=[];let g=a.length,m,E;if(g===32)w.push(m=Ap(a)),E=UC;else if(g===16&&t)m=new Uint8Array(32),m.set(a),m.set(a,16),E=kC,w.push(m);else throw new Error(`arx: invalid 32-byte key, got length=${g}`);Ep(u)||w.push(u=Ap(u));const A=In(m);if(i){if(u.length!==24)throw new Error("arx: extended nonce must be 24 bytes");i(E,A,In(u.subarray(0,16)),A),u=u.subarray(16)}const D=16-s;if(D!==u.length)throw new Error(`arx: nonce must be ${D} or 16 bytes`);if(D!==12){const C=new Uint8Array(12);C.set(u,n?0:12-u.length),u=C,w.push(u)}const O=In(u);return $C(r,E,A,O,c,l,h,o),Ca(...w),l}}const xr=(r,e)=>r[e++]&255|(r[e++]&255)<<8;let BC=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=Dp(e),Mi(e,32);const t=xr(e,0),i=xr(e,2),s=xr(e,4),n=xr(e,6),o=xr(e,8),a=xr(e,10),u=xr(e,12),c=xr(e,14);this.r[0]=t&8191,this.r[1]=(t>>>13|i<<3)&8191,this.r[2]=(i>>>10|s<<6)&7939,this.r[3]=(s>>>7|n<<9)&8191,this.r[4]=(n>>>4|o<<12)&255,this.r[5]=o>>>1&8190,this.r[6]=(o>>>14|a<<2)&8191,this.r[7]=(a>>>11|u<<5)&8065,this.r[8]=(u>>>8|c<<8)&8191,this.r[9]=c>>>5&127;for(let l=0;l<8;l++)this.pad[l]=xr(e,16+2*l)}process(e,t,i=!1){const s=i?0:2048,{h:n,r:o}=this,a=o[0],u=o[1],c=o[2],l=o[3],h=o[4],f=o[5],w=o[6],g=o[7],m=o[8],E=o[9],A=xr(e,t+0),D=xr(e,t+2),O=xr(e,t+4),C=xr(e,t+6),_=xr(e,t+8),S=xr(e,t+10),L=xr(e,t+12),k=xr(e,t+14);let z=n[0]+(A&8191),U=n[1]+((A>>>13|D<<3)&8191),T=n[2]+((D>>>10|O<<6)&8191),d=n[3]+((O>>>7|C<<9)&8191),y=n[4]+((C>>>4|_<<12)&8191),N=n[5]+(_>>>1&8191),b=n[6]+((_>>>14|S<<2)&8191),M=n[7]+((S>>>11|L<<5)&8191),I=n[8]+((L>>>8|k<<8)&8191),j=n[9]+(k>>>5|s),v=0,p=v+z*a+U*(5*E)+T*(5*m)+d*(5*g)+y*(5*w);v=p>>>13,p&=8191,p+=N*(5*f)+b*(5*h)+M*(5*l)+I*(5*c)+j*(5*u),v+=p>>>13,p&=8191;let x=v+z*u+U*a+T*(5*E)+d*(5*m)+y*(5*g);v=x>>>13,x&=8191,x+=N*(5*w)+b*(5*f)+M*(5*h)+I*(5*l)+j*(5*c),v+=x>>>13,x&=8191;let F=v+z*c+U*u+T*a+d*(5*E)+y*(5*m);v=F>>>13,F&=8191,F+=N*(5*g)+b*(5*w)+M*(5*f)+I*(5*h)+j*(5*l),v+=F>>>13,F&=8191;let V=v+z*l+U*c+T*u+d*a+y*(5*E);v=V>>>13,V&=8191,V+=N*(5*m)+b*(5*g)+M*(5*w)+I*(5*f)+j*(5*h),v+=V>>>13,V&=8191;let Q=v+z*h+U*l+T*c+d*u+y*a;v=Q>>>13,Q&=8191,Q+=N*(5*E)+b*(5*m)+M*(5*g)+I*(5*w)+j*(5*f),v+=Q>>>13,Q&=8191;let W=v+z*f+U*h+T*l+d*c+y*u;v=W>>>13,W&=8191,W+=N*a+b*(5*E)+M*(5*m)+I*(5*g)+j*(5*w),v+=W>>>13,W&=8191;let K=v+z*w+U*f+T*h+d*l+y*c;v=K>>>13,K&=8191,K+=N*u+b*a+M*(5*E)+I*(5*m)+j*(5*g),v+=K>>>13,K&=8191;let se=v+z*g+U*w+T*f+d*h+y*l;v=se>>>13,se&=8191,se+=N*c+b*u+M*a+I*(5*E)+j*(5*m),v+=se>>>13,se&=8191;let oe=v+z*m+U*g+T*w+d*f+y*h;v=oe>>>13,oe&=8191,oe+=N*l+b*c+M*u+I*a+j*(5*E),v+=oe>>>13,oe&=8191;let te=v+z*E+U*m+T*g+d*w+y*f;v=te>>>13,te&=8191,te+=N*h+b*l+M*c+I*u+j*a,v+=te>>>13,te&=8191,v=(v<<2)+v|0,v=v+p|0,p=v&8191,v=v>>>13,x+=v,n[0]=p,n[1]=x,n[2]=F,n[3]=V,n[4]=Q,n[5]=W,n[6]=K,n[7]=se,n[8]=oe,n[9]=te}finalize(){const{h:e,pad:t}=this,i=new Uint16Array(10);let s=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=s,s=e[a]>>>13,e[a]&=8191;e[0]+=s*5,s=e[0]>>>13,e[0]&=8191,e[1]+=s,s=e[1]>>>13,e[1]&=8191,e[2]+=s,i[0]=e[0]+5,s=i[0]>>>13,i[0]&=8191;for(let a=1;a<10;a++)i[a]=e[a]+s,s=i[a]>>>13,i[a]&=8191;i[9]-=8192;let n=(s^1)-1;for(let a=0;a<10;a++)i[a]&=n;n=~n;for(let a=0;a<10;a++)e[a]=e[a]&n|i[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 o=e[0]+t[0];e[0]=o&65535;for(let a=1;a<8;a++)o=(e[a]+t[a]|0)+(o>>>16)|0,e[a]=o&65535;Ca(i)}update(e){_w(this);const{buffer:t,blockLen:i}=this;e=Dp(e);const s=e.length;for(let n=0;n<s;){const o=Math.min(i-this.pos,s-n);if(o===i){for(;i<=s-n;n+=i)this.process(e,n);continue}t.set(e.subarray(n,n+o),this.pos),this.pos+=o,n+=o,this.pos===i&&(this.process(t,0,!1),this.pos=0)}return this}destroy(){Ca(this.h,this.r,this.buffer,this.pad)}digestInto(e){_w(this),TC(e,this),this.finished=!0;const{buffer:t,h:i}=this;let{pos:s}=this;if(s){for(t[s++]=1;s<16;s++)t[s]=0;this.process(t,0,!0)}this.finalize();let n=0;for(let o=0;o<8;o++)e[n++]=i[o]>>>0,e[n++]=i[o]>>>8;return e}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const i=e.slice(0,t);return this.destroy(),i}};function YC(r){const e=(i,s)=>r(s).update(Dp(i)).digest(),t=r(new Uint8Array(32));return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=i=>r(i),e}const QC=YC(r=>new BC(r));function VC(r,e,t,i,s,n=20){let o=r[0],a=r[1],u=r[2],c=r[3],l=e[0],h=e[1],f=e[2],w=e[3],g=e[4],m=e[5],E=e[6],A=e[7],D=s,O=t[0],C=t[1],_=t[2],S=o,L=a,k=u,z=c,U=l,T=h,d=f,y=w,N=g,b=m,M=E,I=A,j=D,v=O,p=C,x=_;for(let V=0;V<n;V+=2)S=S+U|0,j=_e(j^S,16),N=N+j|0,U=_e(U^N,12),S=S+U|0,j=_e(j^S,8),N=N+j|0,U=_e(U^N,7),L=L+T|0,v=_e(v^L,16),b=b+v|0,T=_e(T^b,12),L=L+T|0,v=_e(v^L,8),b=b+v|0,T=_e(T^b,7),k=k+d|0,p=_e(p^k,16),M=M+p|0,d=_e(d^M,12),k=k+d|0,p=_e(p^k,8),M=M+p|0,d=_e(d^M,7),z=z+y|0,x=_e(x^z,16),I=I+x|0,y=_e(y^I,12),z=z+y|0,x=_e(x^z,8),I=I+x|0,y=_e(y^I,7),S=S+T|0,x=_e(x^S,16),M=M+x|0,T=_e(T^M,12),S=S+T|0,x=_e(x^S,8),M=M+x|0,T=_e(T^M,7),L=L+d|0,j=_e(j^L,16),I=I+j|0,d=_e(d^I,12),L=L+d|0,j=_e(j^L,8),I=I+j|0,d=_e(d^I,7),k=k+y|0,v=_e(v^k,16),N=N+v|0,y=_e(y^N,12),k=k+y|0,v=_e(v^k,8),N=N+v|0,y=_e(y^N,7),z=z+U|0,p=_e(p^z,16),b=b+p|0,U=_e(U^b,12),z=z+U|0,p=_e(p^z,8),b=b+p|0,U=_e(U^b,7);let F=0;i[F++]=o+S|0,i[F++]=a+L|0,i[F++]=u+k|0,i[F++]=c+z|0,i[F++]=l+U|0,i[F++]=h+T|0,i[F++]=f+d|0,i[F++]=w+y|0,i[F++]=g+N|0,i[F++]=m+b|0,i[F++]=E+M|0,i[F++]=A+I|0,i[F++]=D+j|0,i[F++]=O+v|0,i[F++]=C+p|0,i[F++]=_+x|0}const WC=FC(VC,{counterRight:!1,counterLength:4,allowShortKeys:!1}),qC=new Uint8Array(16),kw=(r,e)=>{r.update(e);const t=e.length%16;t&&r.update(qC.subarray(t))},ZC=new Uint8Array(32);function Uw(r,e,t,i,s){const n=r(e,t,ZC),o=QC.create(n);s&&kw(o,s),kw(o,i);const a=new Uint8Array(16),u=SC(a);Lw(u,0,BigInt(s?s.length:0),!0),Lw(u,8,BigInt(i.length),!0),o.update(a);const c=o.digest();return Ca(n,a),c}const HC=r=>(e,t,i)=>({encrypt(s,n){const o=s.length;n=zw(o+16,n,!1),n.set(s);const a=n.subarray(0,-16);r(e,t,a,a,1);const u=Uw(r,e,t,a,i);return n.set(u,o),Ca(u),n},decrypt(s,n){n=zw(s.length-16,n,!1);const o=s.subarray(0,-16),a=s.subarray(-16),u=Uw(r,e,t,o,i);if(!_C(a,u))throw new Error("invalid tag");return n.set(s.subarray(0,-16)),r(e,t,n,n,1),Ca(u),n}}),Qv=OC({blockSize:64,nonceLength:12,tagLength:16},HC(WC));let Vv=class extends Yg{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Bg(e);const i=xa(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;const s=this.blockLen,n=new Uint8Array(s);n.set(i.length>s?e.create().update(i).digest():i);for(let o=0;o<n.length;o++)n[o]^=54;this.iHash.update(n),this.oHash=e.create();for(let o=0;o<n.length;o++)n[o]^=106;this.oHash.update(n),n.fill(0)}update(e){return ja(this),this.iHash.update(e),this}digestInto(e){ja(this),ed(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:t,iHash:i,finished:s,destroyed:n,blockLen:o,outputLen:a}=this;return e=e,e.finished=s,e.destroyed=n,e.blockLen=o,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=i._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};const Vg=(r,e,t)=>new Vv(r,e).update(t).digest();Vg.create=(r,e)=>new Vv(r,e);function GC(r,e,t){return Bg(r),t===void 0&&(t=new Uint8Array(r.outputLen)),Vg(r,xa(t),xa(e))}const yf=new Uint8Array([0]),Rw=new Uint8Array;function KC(r,e,t,i=32){if(Bg(r),cu(i),i>255*r.outputLen)throw new Error("Length should be <= 255*HashLen");const s=Math.ceil(i/r.outputLen);t===void 0&&(t=Rw);const n=new Uint8Array(s*r.outputLen),o=Vg.create(r,e),a=o._cloneInto(),u=new Uint8Array(o.outputLen);for(let c=0;c<s;c++)yf[0]=c+1,a.update(c===0?Rw:u).update(t).update(yf).digestInto(u),n.set(u,r.outputLen*c),o._cloneInto(a);return o.destroy(),a.destroy(),u.fill(0),yf.fill(0),n.slice(0,i)}const JC=(r,e,t,i,s)=>KC(r,GC(r,e,t),i,s);function XC(r,e,t,i){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,i);const s=BigInt(32),n=BigInt(4294967295),o=Number(t>>s&n),a=Number(t&n),u=i?4:0,c=i?0:4;r.setUint32(e+u,o,i),r.setUint32(e+c,a,i)}function e_(r,e,t){return r&e^~r&t}function t_(r,e,t){return r&e^r&t^e&t}let r_=class extends Yg{constructor(e,t,i,s){super(),this.blockLen=e,this.outputLen=t,this.padOffset=i,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=pf(this.buffer)}update(e){ja(this);const{view:t,buffer:i,blockLen:s}=this;e=xa(e);const n=e.length;for(let o=0;o<n;){const a=Math.min(s-this.pos,n-o);if(a===s){const u=pf(e);for(;s<=n-o;o+=s)this.process(u,o);continue}i.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ja(this),_v(e,this),this.finished=!0;const{buffer:t,view:i,blockLen:s,isLE:n}=this;let{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>s-o&&(this.process(i,0),o=0);for(let h=o;h<s;h++)t[h]=0;XC(i,s-8,BigInt(this.length*8),n),this.process(i,0);const a=pf(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=u/4,l=this.get();if(c>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<c;h++)a.setUint32(4*h,l[h],n)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const i=e.slice(0,t);return this.destroy(),i}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:i,length:s,finished:n,destroyed:o,pos:a}=this;return e.length=s,e.pos=a,e.finished=n,e.destroyed=o,s%t&&e.buffer.set(i),e}};const i_=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]),sn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nn=new Uint32Array(64);let s_=class extends r_{constructor(){super(64,32,8,!1),this.A=sn[0]|0,this.B=sn[1]|0,this.C=sn[2]|0,this.D=sn[3]|0,this.E=sn[4]|0,this.F=sn[5]|0,this.G=sn[6]|0,this.H=sn[7]|0}get(){const{A:e,B:t,C:i,D:s,E:n,F:o,G:a,H:u}=this;return[e,t,i,s,n,o,a,u]}set(e,t,i,s,n,o,a,u){this.A=e|0,this.B=t|0,this.C=i|0,this.D=s|0,this.E=n|0,this.F=o|0,this.G=a|0,this.H=u|0}process(e,t){for(let h=0;h<16;h++,t+=4)nn[h]=e.getUint32(t,!1);for(let h=16;h<64;h++){const f=nn[h-15],w=nn[h-2],g=ps(f,7)^ps(f,18)^f>>>3,m=ps(w,17)^ps(w,19)^w>>>10;nn[h]=m+nn[h-7]+g+nn[h-16]|0}let{A:i,B:s,C:n,D:o,E:a,F:u,G:c,H:l}=this;for(let h=0;h<64;h++){const f=ps(a,6)^ps(a,11)^ps(a,25),w=l+f+e_(a,u,c)+i_[h]+nn[h]|0,g=(ps(i,2)^ps(i,13)^ps(i,22))+t_(i,s,n)|0;l=c,c=u,u=a,a=o+w|0,o=n,n=s,s=i,i=w+g|0}i=i+this.A|0,s=s+this.B|0,n=n+this.C|0,o=o+this.D|0,a=a+this.E|0,u=u+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(i,s,n,o,a,u,c,l)}roundClean(){nn.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};const td=Ov(()=>new s_);const Wv=BigInt(0);function Wg(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function qv(r){if(!Wg(r))throw new Error("Uint8Array expected")}const n_=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function o_(r){qv(r);let e="";for(let t=0;t<r.length;t++)e+=n_[r[t]];return e}function a_(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return r===""?Wv:BigInt("0x"+r)}const Ls={_0:48,_9:57,A:65,F:70,a:97,f:102};function $w(r){if(r>=Ls._0&&r<=Ls._9)return r-Ls._0;if(r>=Ls.A&&r<=Ls.F)return r-(Ls.A-10);if(r>=Ls.a&&r<=Ls.f)return r-(Ls.a-10)}function Zv(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);const e=r.length,t=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const i=new Uint8Array(t);for(let s=0,n=0;s<t;s++,n+=2){const o=$w(r.charCodeAt(n)),a=$w(r.charCodeAt(n+1));if(o===void 0||a===void 0){const u=r[n]+r[n+1];throw new Error('hex string expected, got non-hex character "'+u+'" at index '+n)}i[s]=o*16+a}return i}function Fw(r){return qv(r),a_(o_(Uint8Array.from(r).reverse()))}function c_(r,e){return Zv(r.toString(16).padStart(e*2,"0"))}function u_(r,e){return c_(r,e).reverse()}function Bw(r,e,t){let i;if(typeof e=="string")try{i=Zv(e)}catch(n){throw new Error(r+" must be hex string or Uint8Array, cause: "+n)}else if(Wg(e))i=Uint8Array.from(e);else throw new Error(r+" must be hex string or Uint8Array");const s=i.length;if(typeof t=="number"&&s!==t)throw new Error(r+" of length "+t+" expected, got "+s);return i}const wf=r=>typeof r=="bigint"&&Wv<=r;function l_(r,e,t){return wf(r)&&wf(e)&&wf(t)&&e<=r&&r<t}function Yw(r,e,t,i){if(!l_(e,t,i))throw new Error("expected valid "+r+": "+t+" <= n < "+i+", got "+e)}const h_={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"||Wg(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 d_(r,e,t={}){const i=(s,n,o)=>{const a=h_[n];if(typeof a!="function")throw new Error("invalid validator function");const u=r[s];if(!(o&&u===void 0)&&!a(u,r))throw new Error("param "+String(s)+" is invalid. Expected "+n+", got "+u)};for(const[s,n]of Object.entries(e))i(s,n,!1);for(const[s,n]of Object.entries(t))i(s,n,!0);return r}const ba=BigInt(0),Ol=BigInt(1);function Hv(r,e){const t=r%e;return t>=ba?t:e+t}function f_(r,e,t){if(e<ba)throw new Error("invalid exponent, negatives unsupported");if(t<=ba)throw new Error("invalid modulus");if(t===Ol)return ba;let i=Ol;for(;e>ba;)e&Ol&&(i=i*r%t),r=r*r%t,e>>=Ol;return i}function is(r,e,t){let i=r;for(;e-- >ba;)i*=i,i%=t;return i}BigInt(0),BigInt(1),BigInt(0),BigInt(1),BigInt(2),BigInt(8);const Oo=BigInt(0),mf=BigInt(1);function p_(r){return d_(r,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...r})}function g_(r){const e=p_(r),{P:t}=e,i=D=>Hv(D,t),s=e.montgomeryBits,n=Math.ceil(s/8),o=e.nByteLength,a=e.adjustScalarBytes||(D=>D),u=e.powPminus2||(D=>f_(D,t-BigInt(2),t));function c(D,O,C){const _=i(D*(O-C));return O=i(O-_),C=i(C+_),[O,C]}const l=(e.a-BigInt(2))/BigInt(4);function h(D,O){Yw("u",D,Oo,t),Yw("scalar",O,Oo,t);const C=O,_=D;let S=mf,L=Oo,k=D,z=mf,U=Oo,T;for(let y=BigInt(s-1);y>=Oo;y--){const N=C>>y&mf;U^=N,T=c(U,S,k),S=T[0],k=T[1],T=c(U,L,z),L=T[0],z=T[1],U=N;const b=S+L,M=i(b*b),I=S-L,j=i(I*I),v=M-j,p=k+z,x=k-z,F=i(x*b),V=i(p*I),Q=F+V,W=F-V;k=i(Q*Q),z=i(_*i(W*W)),S=i(M*j),L=i(v*(M+i(l*v)))}T=c(U,S,k),S=T[0],k=T[1],T=c(U,L,z),L=T[0],z=T[1];const d=u(L);return i(S*d)}function f(D){return u_(i(D),n)}function w(D){const O=Bw("u coordinate",D,n);return o===32&&(O[31]&=127),Fw(O)}function g(D){const O=Bw("scalar",D),C=O.length;if(C!==n&&C!==o){let _=""+n+" or "+o;throw new Error("invalid scalar, expected "+_+" bytes, got "+C)}return Fw(a(O))}function m(D,O){const C=w(O),_=g(D),S=h(C,_);if(S===Oo)throw new Error("invalid private or public key received");return f(S)}const E=f(e.Gu);function A(D){return m(D,E)}return{scalarMult:m,scalarMultBase:A,getSharedSecret:(D,O)=>m(D,O),getPublicKey:D=>A(D),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:E}}const Tp=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949");BigInt(0);const y_=BigInt(1),Qw=BigInt(2),w_=BigInt(3),m_=BigInt(5);BigInt(8);function b_(r){const e=BigInt(10),t=BigInt(20),i=BigInt(40),s=BigInt(80),n=Tp,o=r*r%n*r%n,a=is(o,Qw,n)*o%n,u=is(a,y_,n)*r%n,c=is(u,m_,n)*u%n,l=is(c,e,n)*c%n,h=is(l,t,n)*l%n,f=is(h,i,n)*h%n,w=is(f,s,n)*f%n,g=is(w,s,n)*f%n,m=is(g,e,n)*c%n;return{pow_p_5_8:is(m,Qw,n)*r%n,b2:o}}function M_(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}const Sp=g_({P:Tp,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:r=>{const e=Tp,{pow_p_5_8:t,b2:i}=b_(r);return Hv(is(t,w_,e)*i,e)},adjustScalarBytes:M_,randomBytes:Gu}),Gv="base10",Wr="base16",mn="base64pad",vc="base64url",Ku="utf8",Kv=0,Vs=1,Ju=2,N_=0,Vw=1,Gc=12,qg=32;function v_(){const r=Sp.utils.randomPrivateKey(),e=Sp.getPublicKey(r);return{privateKey:We(r,Wr),publicKey:We(e,Wr)}}function jp(){const r=Gu(qg);return We(r,Wr)}function I_(r,e){const t=Sp.getSharedSecret(Ct(r,Wr),Ct(e,Wr)),i=JC(td,t,void 0,void 0,qg);return We(i,Wr)}function lh(r){const e=td(Ct(r,Wr));return We(e,Wr)}function Qs(r){const e=td(Ct(r,Ku));return We(e,Wr)}function Jv(r){return Ct(`${r}`,Gv)}function oo(r){return Number(We(r,Gv))}function D_(r){const e=Jv(typeof r.type<"u"?r.type:Kv);if(oo(e)===Vs&&typeof r.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const t=typeof r.senderPublicKey<"u"?Ct(r.senderPublicKey,Wr):void 0,i=typeof r.iv<"u"?Ct(r.iv,Wr):Gu(Gc),s=Ct(r.symKey,Wr),n=Qv(s,i).encrypt(Ct(r.message,Ku));return Xv({type:e,sealed:n,iv:i,senderPublicKey:t,encoding:r.encoding})}function A_(r){const e=Ct(r.symKey,Wr),{sealed:t,iv:i}=lu(r),s=Qv(e,i).decrypt(t);if(s===null)throw new Error("Failed to decrypt");return We(s,Ku)}function E_(r,e){const t=Jv(Ju),i=Gu(Gc),s=Ct(r,Ku);return Xv({type:t,sealed:s,iv:i,encoding:e})}function T_(r,e){const{sealed:t}=lu({encoded:r,encoding:e});return We(t,Ku)}function Xv(r){const{encoding:e=mn}=r;if(oo(r.type)===Ju)return We(Ia([r.type,r.sealed]),e);if(oo(r.type)===Vs){if(typeof r.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return We(Ia([r.type,r.senderPublicKey,r.iv,r.sealed]),e)}return We(Ia([r.type,r.iv,r.sealed]),e)}function lu(r){const{encoded:e,encoding:t=mn}=r,i=Ct(e,t),s=i.slice(N_,Vw),n=Vw;if(oo(s)===Vs){const c=n+qg,l=c+Gc,h=i.slice(n,c),f=i.slice(c,l),w=i.slice(l);return{type:s,sealed:w,iv:f,senderPublicKey:h}}if(oo(s)===Ju){const c=i.slice(n),l=Gu(Gc);return{type:s,sealed:c,iv:l}}const o=n+Gc,a=i.slice(n,o),u=i.slice(o);return{type:s,sealed:u,iv:a}}function S_(r,e){const t=lu({encoded:r,encoding:e?.encoding});return eI({type:oo(t.type),senderPublicKey:typeof t.senderPublicKey<"u"?We(t.senderPublicKey,Wr):void 0,receiverPublicKey:e?.receiverPublicKey})}function eI(r){const e=r?.type||Kv;if(e===Vs){if(typeof r?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof r?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return{type:e,senderPublicKey:r?.senderPublicKey,receiverPublicKey:r?.receiverPublicKey}}function Ww(r){return r.type===Vs&&typeof r.senderPublicKey=="string"&&typeof r.receiverPublicKey=="string"}function qw(r){return r.type===Ju}function j_(r){return new Nv.ec("p256").keyFromPublic({x:Buffer.from(r.x,"base64").toString("hex"),y:Buffer.from(r.y,"base64").toString("hex")},"hex")}function x_(r){let e=r.replace(/-/g,"+").replace(/_/g,"/");const t=e.length%4;return t>0&&(e+="=".repeat(4-t)),e}function C_(r){return Buffer.from(x_(r),"base64")}function __(r,e){const[t,i,s]=r.split("."),n=C_(s);if(n.length!==64)throw new Error("Invalid signature length");const o=n.slice(0,32).toString("hex"),a=n.slice(32,64).toString("hex"),u=`${t}.${i}`,c=td(u),l=j_(e),h=We(c,Wr);if(!l.verify(h,{r:o,s:a}))throw new Error("Invalid signature");return Sa(r).payload}const O_="irn";function xh(r){return r?.relay||{protocol:O_}}function Fc(r){const e=vv[r];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${r}`);return e}function z_(r,e="-"){const t={},i="relay"+e;return Object.keys(r).forEach(s=>{if(s.startsWith(i)){const n=s.replace(i,""),o=r[s];t[n]=o}}),t}function Zw(r){if(!r.includes("wc:")){const c=Cv(r);c!=null&&c.includes("wc:")&&(r=c)}r=r.includes("wc://")?r.replace("wc://",""):r,r=r.includes("wc:")?r.replace("wc:",""):r;const e=r.indexOf(":"),t=r.indexOf("?")!==-1?r.indexOf("?"):void 0,i=r.substring(0,e),s=r.substring(e+1,t).split("@"),n=typeof t<"u"?r.substring(t):"",o=new URLSearchParams(n),a={};o.forEach((c,l)=>{a[l]=c});const u=typeof a.methods=="string"?a.methods.split(","):void 0;return{protocol:i,topic:L_(s[0]),version:parseInt(s[1],10),symKey:a.symKey,relay:z_(a),methods:u,expiryTimestamp:a.expiryTimestamp?parseInt(a.expiryTimestamp,10):void 0}}function L_(r){return r.startsWith("//")?r.substring(2):r}function P_(r,e="-"){const t="relay",i={};return Object.keys(r).forEach(s=>{const n=s,o=t+e+n;r[n]&&(i[o]=r[n])}),i}function Hw(r){const e=new URLSearchParams,t=P_(r.relay);Object.keys(t).sort().forEach(s=>{e.set(s,t[s])}),e.set("symKey",r.symKey),r.expiryTimestamp&&e.set("expiryTimestamp",r.expiryTimestamp.toString()),r.methods&&e.set("methods",r.methods.join(","));const i=e.toString();return`${r.protocol}:${r.topic}@${r.version}?${i}`}function zl(r,e,t){return`${r}?wc_ev=${t}&topic=${e}`}function Va(r){const e=[];return r.forEach(t=>{const[i,s]=t.split(":");e.push(`${i}:${s}`)}),e}function k_(r){const e=[];return Object.values(r).forEach(t=>{e.push(...Va(t.accounts))}),e}function U_(r,e){const t=[];return Object.values(r).forEach(i=>{Va(i.accounts).includes(e)&&t.push(...i.methods)}),t}function R_(r,e){const t=[];return Object.values(r).forEach(i=>{Va(i.accounts).includes(e)&&t.push(...i.events)}),t}function Zg(r){return r.includes(":")}function Bc(r){return Zg(r)?r.split(":")[0]:r}function $_(r){const e={};return r?.forEach(t=>{var i;const[s,n]=t.split(":");e[s]||(e[s]={accounts:[],chains:[],events:[],methods:[]}),e[s].accounts.push(t),(i=e[s].chains)==null||i.push(`${s}:${n}`)}),e}function Gw(r,e){e=e.map(i=>i.replace("did:pkh:",""));const t=$_(e);for(const[i,s]of Object.entries(t))s.methods?s.methods=ch(s.methods,r):s.methods=r,s.events=["chainChanged","accountsChanged"];return t}const F_={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},B_={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function X(r,e){const{message:t,code:i}=B_[r];return{message:e?`${t} ${e}`:t,code:i}}function st(r,e){const{message:t,code:i}=F_[r];return{message:e?`${t} ${e}`:t,code:i}}function ao(r,e){return!!Array.isArray(r)}function hu(r){return Object.getPrototypeOf(r)===Object.prototype&&Object.keys(r).length}function Gr(r){return typeof r>"u"}function sr(r,e){return e&&Gr(r)?!0:typeof r=="string"&&!!r.trim().length}function Hg(r,e){return e&&Gr(r)?!0:typeof r=="number"&&!isNaN(r)}function Y_(r,e){const{requiredNamespaces:t}=e,i=Object.keys(r.namespaces),s=Object.keys(t);let n=!0;return Jn(s,i)?(i.forEach(o=>{const{accounts:a,methods:u,events:c}=r.namespaces[o],l=Va(a),h=t[o];(!Jn(Dv(o,h),l)||!Jn(h.methods,u)||!Jn(h.events,c))&&(n=!1)}),n):!1}function Ch(r){return sr(r,!1)&&r.includes(":")?r.split(":").length===2:!1}function Q_(r){if(sr(r,!1)&&r.includes(":")){const e=r.split(":");if(e.length===3){const t=e[0]+":"+e[1];return!!e[2]&&Ch(t)}}return!1}function V_(r){function e(t){try{return typeof new URL(t)<"u"}catch{return!1}}try{if(sr(r,!1)){if(e(r))return!0;const t=Cv(r);return e(t)}}catch{}return!1}function W_(r){var e;return(e=r?.proposer)==null?void 0:e.publicKey}function q_(r){return r?.topic}function Z_(r,e){let t=null;return sr(r?.publicKey,!1)||(t=X("MISSING_OR_INVALID",`${e} controller public key should be a string`)),t}function Kw(r){let e=!0;return ao(r)?r.length&&(e=r.every(t=>sr(t,!1))):e=!1,e}function H_(r,e,t){let i=null;return ao(e)&&e.length?e.forEach(s=>{i||Ch(s)||(i=st("UNSUPPORTED_CHAINS",`${t}, chain ${s} should be a string and conform to "namespace:chainId" format`))}):Ch(r)||(i=st("UNSUPPORTED_CHAINS",`${t}, chains must be defined as "namespace:chainId" e.g. "eip155:1": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: ["eip155:1", "eip155:5"] }`)),i}function G_(r,e,t){let i=null;return Object.entries(r).forEach(([s,n])=>{if(i)return;const o=H_(s,Dv(s,n),`${e} ${t}`);o&&(i=o)}),i}function K_(r,e){let t=null;return ao(r)?r.forEach(i=>{t||Q_(i)||(t=st("UNSUPPORTED_ACCOUNTS",`${e}, account ${i} should be a string and conform to "namespace:chainId:address" format`))}):t=st("UNSUPPORTED_ACCOUNTS",`${e}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),t}function J_(r,e){let t=null;return Object.values(r).forEach(i=>{if(t)return;const s=K_(i?.accounts,`${e} namespace`);s&&(t=s)}),t}function X_(r,e){let t=null;return Kw(r?.methods)?Kw(r?.events)||(t=st("UNSUPPORTED_EVENTS",`${e}, events should be an array of strings or empty array for no events`)):t=st("UNSUPPORTED_METHODS",`${e}, methods should be an array of strings or empty array for no methods`),t}function tI(r,e){let t=null;return Object.values(r).forEach(i=>{if(t)return;const s=X_(i,`${e}, namespace`);s&&(t=s)}),t}function eO(r,e,t){let i=null;if(r&&hu(r)){const s=tI(r,e);s&&(i=s);const n=G_(r,e,t);n&&(i=n)}else i=X("MISSING_OR_INVALID",`${e}, ${t} should be an object with data`);return i}function bf(r,e){let t=null;if(r&&hu(r)){const i=tI(r,e);i&&(t=i);const s=J_(r,e);s&&(t=s)}else t=X("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return t}function rI(r){return sr(r.protocol,!0)}function tO(r,e){let t=!1;return r?r&&ao(r)&&r.length&&r.forEach(i=>{t=rI(i)}):t=!0,t}function rO(r){return typeof r=="number"}function oi(r){return typeof r<"u"&&typeof r!==null}function iO(r){return!(!r||typeof r!="object"||!r.code||!Hg(r.code,!1)||!r.message||!sr(r.message,!1))}function sO(r){return!(Gr(r)||!sr(r.method,!1))}function nO(r){return!(Gr(r)||Gr(r.result)&&Gr(r.error)||!Hg(r.id,!1)||!sr(r.jsonrpc,!1))}function oO(r){return!(Gr(r)||!sr(r.name,!1))}function Jw(r,e){return!(!Ch(e)||!k_(r).includes(e))}function aO(r,e,t){return sr(t,!1)?U_(r,e).includes(t):!1}function cO(r,e,t){return sr(t,!1)?R_(r,e).includes(t):!1}function Xw(r,e,t){let i=null;const s=uO(r),n=lO(e),o=Object.keys(s),a=Object.keys(n),u=em(Object.keys(r)),c=em(Object.keys(e)),l=u.filter(h=>!c.includes(h));return l.length&&(i=X("NON_CONFORMING_NAMESPACES",`${t} namespaces keys don't satisfy requiredNamespaces.
14
+ Required: ${l.toString()}
15
+ Received: ${Object.keys(e).toString()}`)),Jn(o,a)||(i=X("NON_CONFORMING_NAMESPACES",`${t} namespaces chains don't satisfy required namespaces.
16
+ Required: ${o.toString()}
17
+ Approved: ${a.toString()}`)),Object.keys(e).forEach(h=>{if(!h.includes(":")||i)return;const f=Va(e[h].accounts);f.includes(h)||(i=X("NON_CONFORMING_NAMESPACES",`${t} namespaces accounts don't satisfy namespace accounts for ${h}
18
+ Required: ${h}
19
+ Approved: ${f.toString()}`))}),o.forEach(h=>{i||(Jn(s[h].methods,n[h].methods)?Jn(s[h].events,n[h].events)||(i=X("NON_CONFORMING_NAMESPACES",`${t} namespaces events don't satisfy namespace events for ${h}`)):i=X("NON_CONFORMING_NAMESPACES",`${t} namespaces methods don't satisfy namespace methods for ${h}`))}),i}function uO(r){const e={};return Object.keys(r).forEach(t=>{var i;t.includes(":")?e[t]=r[t]:(i=r[t].chains)==null||i.forEach(s=>{e[s]={methods:r[t].methods,events:r[t].events}})}),e}function em(r){return[...new Set(r.map(e=>e.includes(":")?e.split(":")[0]:e))]}function lO(r){const e={};return Object.keys(r).forEach(t=>{t.includes(":")?e[t]=r[t]:Va(r[t].accounts)?.forEach(s=>{e[s]={accounts:r[t].accounts.filter(n=>n.includes(`${s}:`)),methods:r[t].methods,events:r[t].events}})}),e}function hO(r,e){return Hg(r,!1)&&r<=e.max&&r>=e.min}function tm(){const r=Hu();return new Promise(e=>{switch(r){case vi.browser:e(dO());break;case vi.reactNative:e(fO());break;case vi.node:e(pO());break;default:e(!0)}})}function dO(){return Zu()&&navigator?.onLine}async function fO(){return xn()&&typeof global<"u"&&global!=null&&global.NetInfo?(await(global==null?void 0:global.NetInfo.fetch()))?.isConnected:!0}function pO(){return!0}function gO(r){switch(Hu()){case vi.browser:yO(r);break;case vi.reactNative:wO(r);break}}function yO(r){!xn()&&Zu()&&(window.addEventListener("online",()=>r(!0)),window.addEventListener("offline",()=>r(!1)))}function wO(r){xn()&&typeof global<"u"&&global!=null&&global.NetInfo&&global?.NetInfo.addEventListener(e=>r(e?.isConnected))}const Mf={};let Ic=class{static get(e){return Mf[e]}static set(e,t){Mf[e]=t}static delete(e){delete Mf[e]}};const mO="PARSE_ERROR",bO="INVALID_REQUEST",MO="METHOD_NOT_FOUND",NO="INVALID_PARAMS",iI="INTERNAL_ERROR",Gg="SERVER_ERROR",vO=[-32700,-32600,-32601,-32602,-32603],Kc={[mO]:{code:-32700,message:"Parse error"},[bO]:{code:-32600,message:"Invalid Request"},[MO]:{code:-32601,message:"Method not found"},[NO]:{code:-32602,message:"Invalid params"},[iI]:{code:-32603,message:"Internal error"},[Gg]:{code:-32e3,message:"Server error"}},sI=Gg;function IO(r){return vO.includes(r)}function rm(r){return Object.keys(Kc).includes(r)?Kc[r]:Kc[sI]}function DO(r){const e=Object.values(Kc).find(t=>t.code===r);return e||Kc[sI]}function nI(r,e,t){return r.message.includes("getaddrinfo ENOTFOUND")||r.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${t} RPC url at ${e}`):r}var Nf={};var xp=function(r,e){return xp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var s in i)i.hasOwnProperty(s)&&(t[s]=i[s])},xp(r,e)};function AO(r,e){xp(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}var Cp=function(){return Cp=Object.assign||function(e){for(var t,i=1,s=arguments.length;i<s;i++){t=arguments[i];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},Cp.apply(this,arguments)};function EO(r,e){var t={};for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&e.indexOf(i)<0&&(t[i]=r[i]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,i=Object.getOwnPropertySymbols(r);s<i.length;s++)e.indexOf(i[s])<0&&Object.prototype.propertyIsEnumerable.call(r,i[s])&&(t[i[s]]=r[i[s]]);return t}function TO(r,e,t,i){var s=arguments.length,n=s<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(r,e,t,i);else for(var a=r.length-1;a>=0;a--)(o=r[a])&&(n=(s<3?o(n):s>3?o(e,t,n):o(e,t))||n);return s>3&&n&&Object.defineProperty(e,t,n),n}function SO(r,e){return function(t,i){e(t,i,r)}}function jO(r,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,e)}function xO(r,e,t,i){function s(n){return n instanceof t?n:new t(function(o){o(n)})}return new(t||(t=Promise))(function(n,o){function a(l){try{c(i.next(l))}catch(h){o(h)}}function u(l){try{c(i.throw(l))}catch(h){o(h)}}function c(l){l.done?n(l.value):s(l.value).then(a,u)}c((i=i.apply(r,e||[])).next())})}function CO(r,e){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},i,s,n,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(l){return u([c,l])}}function u(c){if(i)throw new TypeError("Generator is already executing.");for(;t;)try{if(i=1,s&&(n=c[0]&2?s.return:c[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,c[1])).done)return n;switch(s=0,n&&(c=[c[0]&2,n.value]),c[0]){case 0:case 1:n=c;break;case 4:return t.label++,{value:c[1],done:!1};case 5:t.label++,s=c[1],c=[0];continue;case 7:c=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(c[0]===6||c[0]===2)){t=0;continue}if(c[0]===3&&(!n||c[1]>n[0]&&c[1]<n[3])){t.label=c[1];break}if(c[0]===6&&t.label<n[1]){t.label=n[1],n=c;break}if(n&&t.label<n[2]){t.label=n[2],t.ops.push(c);break}n[2]&&t.ops.pop(),t.trys.pop();continue}c=e.call(r,t)}catch(l){c=[6,l],s=0}finally{i=n=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}function _O(r,e,t,i){i===void 0&&(i=t),r[i]=e[t]}function OO(r,e){for(var t in r)t!=="default"&&!e.hasOwnProperty(t)&&(e[t]=r[t])}function _p(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],i=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&i>=r.length&&(r=void 0),{value:r&&r[i++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function oI(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var i=t.call(r),s,n=[],o;try{for(;(e===void 0||e-- >0)&&!(s=i.next()).done;)n.push(s.value)}catch(a){o={error:a}}finally{try{s&&!s.done&&(t=i.return)&&t.call(i)}finally{if(o)throw o.error}}return n}function zO(){for(var r=[],e=0;e<arguments.length;e++)r=r.concat(oI(arguments[e]));return r}function LO(){for(var r=0,e=0,t=arguments.length;e<t;e++)r+=arguments[e].length;for(var i=Array(r),s=0,e=0;e<t;e++)for(var n=arguments[e],o=0,a=n.length;o<a;o++,s++)i[s]=n[o];return i}function du(r){return this instanceof du?(this.v=r,this):new du(r)}function PO(r,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=t.apply(r,e||[]),s,n=[];return s={},o("next"),o("throw"),o("return"),s[Symbol.asyncIterator]=function(){return this},s;function o(f){i[f]&&(s[f]=function(w){return new Promise(function(g,m){n.push([f,w,g,m])>1||a(f,w)})})}function a(f,w){try{u(i[f](w))}catch(g){h(n[0][3],g)}}function u(f){f.value instanceof du?Promise.resolve(f.value.v).then(c,l):h(n[0][2],f)}function c(f){a("next",f)}function l(f){a("throw",f)}function h(f,w){f(w),n.shift(),n.length&&a(n[0][0],n[0][1])}}function kO(r){var e,t;return e={},i("next"),i("throw",function(s){throw s}),i("return"),e[Symbol.iterator]=function(){return this},e;function i(s,n){e[s]=r[s]?function(o){return(t=!t)?{value:du(r[s](o)),done:s==="return"}:n?n(o):o}:n}}function UO(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=r[Symbol.asyncIterator],t;return e?e.call(r):(r=typeof _p=="function"?_p(r):r[Symbol.iterator](),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(n){t[n]=r[n]&&function(o){return new Promise(function(a,u){o=r[n](o),s(a,u,o.done,o.value)})}}function s(n,o,a,u){Promise.resolve(u).then(function(c){n({value:c,done:a})},o)}}function RO(r,e){return Object.defineProperty?Object.defineProperty(r,"raw",{value:e}):r.raw=e,r}function $O(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)Object.hasOwnProperty.call(r,t)&&(e[t]=r[t]);return e.default=r,e}function FO(r){return r&&r.__esModule?r:{default:r}}function BO(r,e){if(!e.has(r))throw new TypeError("attempted to get private field on non-instance");return e.get(r)}function YO(r,e,t){if(!e.has(r))throw new TypeError("attempted to set private field on non-instance");return e.set(r,t),t}const QO=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return Cp},__asyncDelegator:kO,__asyncGenerator:PO,__asyncValues:UO,__await:du,__awaiter:xO,__classPrivateFieldGet:BO,__classPrivateFieldSet:YO,__createBinding:_O,__decorate:TO,__exportStar:OO,__extends:AO,__generator:CO,__importDefault:FO,__importStar:$O,__makeTemplateObject:RO,__metadata:jO,__param:SO,__read:oI,__rest:EO,__spread:zO,__spreadArrays:LO,__values:_p},Symbol.toStringTag,{value:"Module"})),VO=A1(QO);var Ps={},im;function WO(){if(im)return Ps;im=1,Object.defineProperty(Ps,"__esModule",{value:!0}),Ps.isBrowserCryptoAvailable=Ps.getSubtleCrypto=Ps.getBrowerCrypto=void 0;function r(){return(ci===null||ci===void 0?void 0:ci.crypto)||(ci===null||ci===void 0?void 0:ci.msCrypto)||{}}Ps.getBrowerCrypto=r;function e(){const i=r();return i.subtle||i.webkitSubtle}Ps.getSubtleCrypto=e;function t(){return!!r()&&!!e()}return Ps.isBrowserCryptoAvailable=t,Ps}var ks={},sm;function qO(){if(sm)return ks;sm=1,Object.defineProperty(ks,"__esModule",{value:!0}),ks.isBrowser=ks.isNode=ks.isReactNative=void 0;function r(){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"}ks.isReactNative=r;function e(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}ks.isNode=e;function t(){return!r()&&!e()}return ks.isBrowser=t,ks}var nm;function ZO(){return nm||(nm=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0});const e=VO;e.__exportStar(WO(),r),e.__exportStar(qO(),r)})(Nf)),Nf}var HO=ZO();function Dr(r=3){const e=Date.now()*Math.pow(10,r),t=Math.floor(Math.random()*Math.pow(10,r));return e+t}function Ii(r=6){return BigInt(Dr(r))}function Kr(r,e,t){return{id:t||Dr(),jsonrpc:"2.0",method:r,params:e}}function Cn(r,e){return{id:r,jsonrpc:"2.0",result:e}}function Wa(r,e,t){return{id:r,jsonrpc:"2.0",error:GO(e)}}function GO(r,e){return typeof r>"u"?rm(iI):(typeof r=="string"&&(r=Object.assign(Object.assign({},rm(Gg)),{message:r})),IO(r.code)&&(r=DO(r.code)),r)}let KO=class{},JO=class extends KO{constructor(){super()}},XO=class extends JO{constructor(e){super()}};const ez="^https?:",tz="^wss?:";function rz(r){const e=r.match(new RegExp(/^\w+:/,"gi"));if(!(!e||!e.length))return e[0]}function aI(r,e){const t=rz(r);return typeof t>"u"?!1:new RegExp(e).test(t)}function om(r){return aI(r,ez)}function am(r){return aI(r,tz)}function iz(r){return new RegExp("wss?://localhost(:d{2,5})?").test(r)}function cI(r){return typeof r=="object"&&"id"in r&&"jsonrpc"in r&&r.jsonrpc==="2.0"}function qa(r){return cI(r)&&"method"in r}function mo(r){return cI(r)&&(yr(r)||rr(r))}function yr(r){return"result"in r}function rr(r){return"error"in r}let Ot=class extends XO{constructor(e){super(e),this.events=new wr.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(e),this.connection.connected&&this.registerEventListeners()}async connect(e=this.connection){await this.open(e)}async disconnect(){await this.close()}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async request(e,t){return this.requestStrict(Kr(e.method,e.params||[],e.id||Ii().toString()),t)}async requestStrict(e,t){return new Promise(async(i,s)=>{if(!this.connection.connected)try{await this.open()}catch(n){s(n)}this.events.on(`${e.id}`,n=>{rr(n)?s(n.error):i(n.result)});try{await this.connection.send(e,t)}catch(n){s(n)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),mo(e)?this.events.emit(`${e.id}`,e):this.events.emit("message",{type:e.method,data:e.params})}onClose(e){e&&e.code===3e3&&this.events.emit("error",new Error(`WebSocket connection closed abnormally with code: ${e.code} ${e.reason?`(${e.reason})`:""}`)),this.events.emit("disconnect")}async open(e=this.connection){this.connection===e&&this.connection.connected||(this.connection.connected&&this.close(),typeof e=="string"&&(await this.connection.open(e),e=this.connection),this.connection=this.setConnection(e),await this.connection.open(),this.registerEventListeners(),this.events.emit("connect"))}async close(){await this.connection.close()}registerEventListeners(){this.hasRegisteredEventListeners||(this.connection.on("payload",e=>this.onPayload(e)),this.connection.on("close",e=>this.onClose(e)),this.connection.on("error",e=>this.events.emit("error",e)),this.connection.on("register_error",e=>this.onClose()),this.hasRegisteredEventListeners=!0)}};const sz=()=>typeof WebSocket<"u"?WebSocket:typeof global<"u"&&typeof global.WebSocket<"u"?global.WebSocket:typeof window<"u"&&typeof window.WebSocket<"u"?window.WebSocket:typeof self<"u"&&typeof self.WebSocket<"u"?self.WebSocket:require("ws"),nz=()=>typeof WebSocket<"u"||typeof global<"u"&&typeof global.WebSocket<"u"||typeof window<"u"&&typeof window.WebSocket<"u"||typeof self<"u"&&typeof self.WebSocket<"u",cm=r=>r.split("?")[0],um=10,oz=sz();let uI=class{constructor(e){if(this.url=e,this.events=new wr.EventEmitter,this.registering=!1,!am(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return typeof this.socket<"u"}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){return new Promise((e,t)=>{if(typeof this.socket>"u"){t(new Error("Connection already closed"));return}this.socket.onclose=i=>{this.onClose(i),e()},this.socket.close()})}async send(e){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send(Es(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!am(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const t=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=t||this.events.listenerCount("open")>=t)&&this.events.setMaxListeners(t+1),new Promise((i,s)=>{this.events.once("register_error",n=>{this.resetMaxListeners(),s(n)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return s(new Error("WebSocket connection is missing or invalid"));i(this.socket)})})}return this.url=e,this.registering=!0,new Promise((t,i)=>{const s=HO.isReactNative()?void 0:{rejectUnauthorized:!iz(e)},n=new oz(e,[],s);nz()?n.onerror=o=>{const a=o;i(this.emitError(a.error))}:n.on("error",o=>{i(this.emitError(o))}),n.onopen=()=>{this.onOpen(n),t(n)}})}onOpen(e){e.onmessage=t=>this.onPayload(t),e.onclose=t=>this.onClose(t),this.socket=e,this.registering=!1,this.events.emit("open")}onClose(e){this.socket=void 0,this.registering=!1,this.events.emit("close",e)}onPayload(e){if(typeof e.data>"u")return;const t=typeof e.data=="string"?Zs(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const i=this.parseError(t),s=i.message||i.toString(),n=Wa(e,s);this.events.emit("payload",n)}parseError(e,t=this.url){return nI(e,cm(t),"WS")}resetMaxListeners(){this.events.getMaxListeners()>um&&this.events.setMaxListeners(um)}emitError(e){const t=this.parseError(new Error(e?.message||`WebSocket connection failed for host: ${cm(this.url)}`));return this.events.emit("register_error",t),t}};var Yc={exports:{}};Yc.exports;var lm;function az(){return lm||(lm=1,(function(r,e){var t=200,i="__lodash_hash_undefined__",s=1,n=2,o=9007199254740991,a="[object Arguments]",u="[object Array]",c="[object AsyncFunction]",l="[object Boolean]",h="[object Date]",f="[object Error]",w="[object Function]",g="[object GeneratorFunction]",m="[object Map]",E="[object Number]",A="[object Null]",D="[object Object]",O="[object Promise]",C="[object Proxy]",_="[object RegExp]",S="[object Set]",L="[object String]",k="[object Symbol]",z="[object Undefined]",U="[object WeakMap]",T="[object ArrayBuffer]",d="[object DataView]",y="[object Float32Array]",N="[object Float64Array]",b="[object Int8Array]",M="[object Int16Array]",I="[object Int32Array]",j="[object Uint8Array]",v="[object Uint8ClampedArray]",p="[object Uint16Array]",x="[object Uint32Array]",F=/[\\^$.*+?()[\]{}|]/g,V=/^\[object .+?Constructor\]$/,Q=/^(?:0|[1-9]\d*)$/,W={};W[y]=W[N]=W[b]=W[M]=W[I]=W[j]=W[v]=W[p]=W[x]=!0,W[a]=W[u]=W[T]=W[l]=W[d]=W[h]=W[f]=W[w]=W[m]=W[E]=W[D]=W[_]=W[S]=W[L]=W[U]=!1;var K=typeof ci=="object"&&ci&&ci.Object===Object&&ci,se=typeof self=="object"&&self&&self.Object===Object&&self,oe=K||se||Function("return this")(),te=e&&!e.nodeType&&e,le=te&&!0&&r&&!r.nodeType&&r,Mt=le&&le.exports===te,me=Mt&&K.process,ve=(function(){try{return me&&me.binding&&me.binding("util")}catch{}})(),Vt=ve&&ve.isTypedArray;function je(P,$){for(var Z=-1,ne=P==null?0:P.length,Nt=0,fe=[];++Z<ne;){var tr=P[Z];$(tr,Z,P)&&(fe[Nt++]=tr)}return fe}function Re(P,$){for(var Z=-1,ne=$.length,Nt=P.length;++Z<ne;)P[Nt+Z]=$[Z];return P}function ji(P,$){for(var Z=-1,ne=P==null?0:P.length;++Z<ne;)if($(P[Z],Z,P))return!0;return!1}function at(P,$){for(var Z=-1,ne=Array(P);++Z<P;)ne[Z]=$(Z);return ne}function Xe(P){return function($){return P($)}}function cs(P,$){return P.has($)}function Ze(P,$){return P?.[$]}function et(P){var $=-1,Z=Array(P.size);return P.forEach(function(ne,Nt){Z[++$]=[Nt,ne]}),Z}function us(P,$){return function(Z){return P($(Z))}}function $e(P){var $=-1,Z=Array(P.size);return P.forEach(function(ne){Z[++$]=ne}),Z}var Fe=Array.prototype,ls=Function.prototype,Be=Object.prototype,ft=oe["__core-js_shared__"],On=ls.toString,Ce=Be.hasOwnProperty,zt=(function(){var P=/[^.]+$/.exec(ft&&ft.keys&&ft.keys.IE_PROTO||"");return P?"Symbol(src)_1."+P:""})(),Ja=Be.toString,Wt=RegExp("^"+On.call(Ce).replace(F,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Lt=Mt?oe.Buffer:void 0,zn=oe.Symbol,Pt=oe.Uint8Array,kt=Be.propertyIsEnumerable,ll=Fe.splice,tt=zn?zn.toStringTag:void 0,Ut=Object.getOwnPropertySymbols,hl=Lt?Lt.isBuffer:void 0,qt=us(Object.keys,Object),Et=So(oe,"DataView"),Ks=So(oe,"Map"),Tt=So(oe,"Promise"),St=So(oe,"Set"),To=So(oe,"WeakMap"),pt=So(Object,"create"),Zt=Ln(Et),dl=Ln(Ks),Ht=Ln(Tt),Gt=Ln(St),fl=Ln(To),Rt=zn?zn.prototype:void 0,jt=Rt?Rt.valueOf:void 0;function hs(P){var $=-1,Z=P==null?0:P.length;for(this.clear();++$<Z;){var ne=P[$];this.set(ne[0],ne[1])}}function Kt(){this.__data__=pt?pt(null):{},this.size=0}function Jt(P){var $=this.has(P)&&delete this.__data__[P];return this.size-=$?1:0,$}function pl(P){var $=this.__data__;if(pt){var Z=$[P];return Z===i?void 0:Z}return Ce.call($,P)?$[P]:void 0}function Xt(P){var $=this.__data__;return pt?$[P]!==void 0:Ce.call($,P)}function er(P,$){var Z=this.__data__;return this.size+=this.has(P)?0:1,Z[P]=pt&&$===void 0?i:$,this}hs.prototype.clear=Kt,hs.prototype.delete=Jt,hs.prototype.get=pl,hs.prototype.has=Xt,hs.prototype.set=er;function fi(P){var $=-1,Z=P==null?0:P.length;for(this.clear();++$<Z;){var ne=P[$];this.set(ne[0],ne[1])}}function Xa(){this.__data__=[],this.size=0}function ec(P){var $=this.__data__,Z=gl($,P);if(Z<0)return!1;var ne=$.length-1;return Z==ne?$.pop():ll.call($,Z,1),--this.size,!0}function tc(P){var $=this.__data__,Z=gl($,P);return Z<0?void 0:$[Z][1]}function rc(P){return gl(this.__data__,P)>-1}function ic(P,$){var Z=this.__data__,ne=gl(Z,P);return ne<0?(++this.size,Z.push([P,$])):Z[ne][1]=$,this}fi.prototype.clear=Xa,fi.prototype.delete=ec,fi.prototype.get=tc,fi.prototype.has=rc,fi.prototype.set=ic;function qi(P){var $=-1,Z=P==null?0:P.length;for(this.clear();++$<Z;){var ne=P[$];this.set(ne[0],ne[1])}}function sc(){this.size=0,this.__data__={hash:new hs,map:new(Ks||fi),string:new hs}}function nc(P){var $=yl(this,P).delete(P);return this.size-=$?1:0,$}function oc(P){return yl(this,P).get(P)}function ac(P){return yl(this,P).has(P)}function cc(P,$){var Z=yl(this,P),ne=Z.size;return Z.set(P,$),this.size+=Z.size==ne?0:1,this}qi.prototype.clear=sc,qi.prototype.delete=nc,qi.prototype.get=oc,qi.prototype.has=ac,qi.prototype.set=cc;function Js(P){var $=-1,Z=P==null?0:P.length;for(this.__data__=new qi;++$<Z;)this.add(P[$])}function uc(P){return this.__data__.set(P,i),this}function lc(P){return this.__data__.has(P)}Js.prototype.add=Js.prototype.push=uc,Js.prototype.has=lc;function xi(P){var $=this.__data__=new fi(P);this.size=$.size}function hc(){this.__data__=new fi,this.size=0}function dc(P){var $=this.__data__,Z=$.delete(P);return this.size=$.size,Z}function fc(P){return this.__data__.get(P)}function W2(P){return this.__data__.has(P)}function q2(P,$){var Z=this.__data__;if(Z instanceof fi){var ne=Z.__data__;if(!Ks||ne.length<t-1)return ne.push([P,$]),this.size=++Z.size,this;Z=this.__data__=new qi(ne)}return Z.set(P,$),this.size=Z.size,this}xi.prototype.clear=hc,xi.prototype.delete=dc,xi.prototype.get=fc,xi.prototype.has=W2,xi.prototype.set=q2;function Z2(P,$){var Z=wl(P),ne=!Z&&uD(P),Nt=!Z&&!ne&&bd(P),fe=!Z&&!ne&&!Nt&&_0(P),tr=Z||ne||Nt||fe,mr=tr?at(P.length,String):[],jr=mr.length;for(var $t in P)Ce.call(P,$t)&&!(tr&&($t=="length"||Nt&&($t=="offset"||$t=="parent")||fe&&($t=="buffer"||$t=="byteLength"||$t=="byteOffset")||sD($t,jr)))&&mr.push($t);return mr}function gl(P,$){for(var Z=P.length;Z--;)if(S0(P[Z][0],$))return Z;return-1}function H2(P,$,Z){var ne=$(P);return wl(P)?ne:Re(ne,Z(P))}function pc(P){return P==null?P===void 0?z:A:tt&&tt in Object(P)?rD(P):cD(P)}function D0(P){return gc(P)&&pc(P)==a}function A0(P,$,Z,ne,Nt){return P===$?!0:P==null||$==null||!gc(P)&&!gc($)?P!==P&&$!==$:G2(P,$,Z,ne,A0,Nt)}function G2(P,$,Z,ne,Nt,fe){var tr=wl(P),mr=wl($),jr=tr?u:Xs(P),$t=mr?u:Xs($);jr=jr==a?D:jr,$t=$t==a?D:$t;var pi=jr==D,Zi=$t==D,Br=jr==$t;if(Br&&bd(P)){if(!bd($))return!1;tr=!0,pi=!1}if(Br&&!pi)return fe||(fe=new xi),tr||_0(P)?E0(P,$,Z,ne,Nt,fe):eD(P,$,jr,Z,ne,Nt,fe);if(!(Z&s)){var Ci=pi&&Ce.call(P,"__wrapped__"),_i=Zi&&Ce.call($,"__wrapped__");if(Ci||_i){var en=Ci?P.value():P,Cs=_i?$.value():$;return fe||(fe=new xi),Nt(en,Cs,Z,ne,fe)}}return Br?(fe||(fe=new xi),tD(P,$,Z,ne,Nt,fe)):!1}function K2(P){if(!C0(P)||oD(P))return!1;var $=j0(P)?Wt:V;return $.test(Ln(P))}function J2(P){return gc(P)&&x0(P.length)&&!!W[pc(P)]}function X2(P){if(!aD(P))return qt(P);var $=[];for(var Z in Object(P))Ce.call(P,Z)&&Z!="constructor"&&$.push(Z);return $}function E0(P,$,Z,ne,Nt,fe){var tr=Z&s,mr=P.length,jr=$.length;if(mr!=jr&&!(tr&&jr>mr))return!1;var $t=fe.get(P);if($t&&fe.get($))return $t==$;var pi=-1,Zi=!0,Br=Z&n?new Js:void 0;for(fe.set(P,$),fe.set($,P);++pi<mr;){var Ci=P[pi],_i=$[pi];if(ne)var en=tr?ne(_i,Ci,pi,$,P,fe):ne(Ci,_i,pi,P,$,fe);if(en!==void 0){if(en)continue;Zi=!1;break}if(Br){if(!ji($,function(Cs,Pn){if(!cs(Br,Pn)&&(Ci===Cs||Nt(Ci,Cs,Z,ne,fe)))return Br.push(Pn)})){Zi=!1;break}}else if(!(Ci===_i||Nt(Ci,_i,Z,ne,fe))){Zi=!1;break}}return fe.delete(P),fe.delete($),Zi}function eD(P,$,Z,ne,Nt,fe,tr){switch(Z){case d:if(P.byteLength!=$.byteLength||P.byteOffset!=$.byteOffset)return!1;P=P.buffer,$=$.buffer;case T:return!(P.byteLength!=$.byteLength||!fe(new Pt(P),new Pt($)));case l:case h:case E:return S0(+P,+$);case f:return P.name==$.name&&P.message==$.message;case _:case L:return P==$+"";case m:var mr=et;case S:var jr=ne&s;if(mr||(mr=$e),P.size!=$.size&&!jr)return!1;var $t=tr.get(P);if($t)return $t==$;ne|=n,tr.set(P,$);var pi=E0(mr(P),mr($),ne,Nt,fe,tr);return tr.delete(P),pi;case k:if(jt)return jt.call(P)==jt.call($)}return!1}function tD(P,$,Z,ne,Nt,fe){var tr=Z&s,mr=T0(P),jr=mr.length,$t=T0($),pi=$t.length;if(jr!=pi&&!tr)return!1;for(var Zi=jr;Zi--;){var Br=mr[Zi];if(!(tr?Br in $:Ce.call($,Br)))return!1}var Ci=fe.get(P);if(Ci&&fe.get($))return Ci==$;var _i=!0;fe.set(P,$),fe.set($,P);for(var en=tr;++Zi<jr;){Br=mr[Zi];var Cs=P[Br],Pn=$[Br];if(ne)var O0=tr?ne(Pn,Cs,Br,$,P,fe):ne(Cs,Pn,Br,P,$,fe);if(!(O0===void 0?Cs===Pn||Nt(Cs,Pn,Z,ne,fe):O0)){_i=!1;break}en||(en=Br=="constructor")}if(_i&&!en){var ml=P.constructor,bl=$.constructor;ml!=bl&&"constructor"in P&&"constructor"in $&&!(typeof ml=="function"&&ml instanceof ml&&typeof bl=="function"&&bl instanceof bl)&&(_i=!1)}return fe.delete(P),fe.delete($),_i}function T0(P){return H2(P,dD,iD)}function yl(P,$){var Z=P.__data__;return nD($)?Z[typeof $=="string"?"string":"hash"]:Z.map}function So(P,$){var Z=Ze(P,$);return K2(Z)?Z:void 0}function rD(P){var $=Ce.call(P,tt),Z=P[tt];try{P[tt]=void 0;var ne=!0}catch{}var Nt=Ja.call(P);return ne&&($?P[tt]=Z:delete P[tt]),Nt}var iD=Ut?function(P){return P==null?[]:(P=Object(P),je(Ut(P),function($){return kt.call(P,$)}))}:fD,Xs=pc;(Et&&Xs(new Et(new ArrayBuffer(1)))!=d||Ks&&Xs(new Ks)!=m||Tt&&Xs(Tt.resolve())!=O||St&&Xs(new St)!=S||To&&Xs(new To)!=U)&&(Xs=function(P){var $=pc(P),Z=$==D?P.constructor:void 0,ne=Z?Ln(Z):"";if(ne)switch(ne){case Zt:return d;case dl:return m;case Ht:return O;case Gt:return S;case fl:return U}return $});function sD(P,$){return $=$??o,!!$&&(typeof P=="number"||Q.test(P))&&P>-1&&P%1==0&&P<$}function nD(P){var $=typeof P;return $=="string"||$=="number"||$=="symbol"||$=="boolean"?P!=="__proto__":P===null}function oD(P){return!!zt&&zt in P}function aD(P){var $=P&&P.constructor,Z=typeof $=="function"&&$.prototype||Be;return P===Z}function cD(P){return Ja.call(P)}function Ln(P){if(P!=null){try{return On.call(P)}catch{}try{return P+""}catch{}}return""}function S0(P,$){return P===$||P!==P&&$!==$}var uD=D0((function(){return arguments})())?D0:function(P){return gc(P)&&Ce.call(P,"callee")&&!kt.call(P,"callee")},wl=Array.isArray;function lD(P){return P!=null&&x0(P.length)&&!j0(P)}var bd=hl||pD;function hD(P,$){return A0(P,$)}function j0(P){if(!C0(P))return!1;var $=pc(P);return $==w||$==g||$==c||$==C}function x0(P){return typeof P=="number"&&P>-1&&P%1==0&&P<=o}function C0(P){var $=typeof P;return P!=null&&($=="object"||$=="function")}function gc(P){return P!=null&&typeof P=="object"}var _0=Vt?Xe(Vt):J2;function dD(P){return lD(P)?Z2(P):X2(P)}function fD(){return[]}function pD(){return!1}r.exports=hD})(Yc,Yc.exports)),Yc.exports}var cz=az();const uz=Yh(cz),lI="wc",hI=2,Op="core",Ts=`${lI}@2:${Op}:`,lz={logger:"error"},hz={database:":memory:"},dz="crypto",hm="client_ed25519_seed",fz=Y.ONE_DAY,pz="keychain",gz="0.3",yz="messages",wz="0.3",dm=Y.SIX_HOURS,mz="publisher",dI="irn",bz="error",fI="wss://relay.walletconnect.org",Mz="relayer",Ar={message:"relayer_message",message_ack:"relayer_message_ack",connect:"relayer_connect",disconnect:"relayer_disconnect",error:"relayer_error",connection_stalled:"relayer_connection_stalled",transport_closed:"relayer_transport_closed",publish:"relayer_publish"},Nz="_subscription",Oi={payload:"payload",connect:"connect",disconnect:"disconnect",error:"error"},vz=.1,zp="2.19.0",It={link_mode:"link_mode",relay:"relay"},Iz="0.3",Dz="WALLETCONNECT_CLIENT_ID",fm="WALLETCONNECT_LINK_MODE_APPS",mi={created:"subscription_created",deleted:"subscription_deleted",expired:"subscription_expired",disabled:"subscription_disabled",sync:"subscription_sync",resubscribed:"subscription_resubscribed"},Az="subscription",Ez="0.3",Tz=Y.FIVE_SECONDS*1e3,Sz="pairing",jz="0.3",Dc={wc_pairingDelete:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:Y.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:Y.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:0},res:{ttl:Y.ONE_DAY,prompt:!1,tag:0}}},Hn={create:"pairing_create",expire:"pairing_expire",delete:"pairing_delete",ping:"pairing_ping"},Gi={created:"history_created",updated:"history_updated",deleted:"history_deleted",sync:"history_sync"},xz="history",Cz="0.3",_z="expirer",Ui={created:"expirer_created",deleted:"expirer_deleted",expired:"expirer_expired",sync:"expirer_sync"},Oz="0.3",zz="verify-api",Lz="https://verify.walletconnect.com",pI="https://verify.walletconnect.org",Jc=pI,Pz=`${Jc}/v3`,kz=[Lz,pI],Uz="echo",Rz="https://echo.walletconnect.com",vs={pairing_started:"pairing_started",pairing_uri_validation_success:"pairing_uri_validation_success",pairing_uri_not_expired:"pairing_uri_not_expired",store_new_pairing:"store_new_pairing",subscribing_pairing_topic:"subscribing_pairing_topic",subscribe_pairing_topic_success:"subscribe_pairing_topic_success",existing_pairing:"existing_pairing",pairing_not_expired:"pairing_not_expired",emit_inactive_pairing:"emit_inactive_pairing",emit_session_proposal:"emit_session_proposal",subscribing_to_pairing_topic:"subscribing_to_pairing_topic"},Bs={no_wss_connection:"no_wss_connection",no_internet_connection:"no_internet_connection",malformed_pairing_uri:"malformed_pairing_uri",active_pairing_already_exists:"active_pairing_already_exists",subscribe_pairing_topic_failure:"subscribe_pairing_topic_failure",pairing_expired:"pairing_expired",proposal_expired:"proposal_expired",proposal_listener_not_found:"proposal_listener_not_found"},Ki={session_approve_started:"session_approve_started",proposal_not_expired:"proposal_not_expired",session_namespaces_validation_success:"session_namespaces_validation_success",create_session_topic:"create_session_topic",subscribing_session_topic:"subscribing_session_topic",subscribe_session_topic_success:"subscribe_session_topic_success",publishing_session_approve:"publishing_session_approve",session_approve_publish_success:"session_approve_publish_success",store_session:"store_session",publishing_session_settle:"publishing_session_settle",session_settle_publish_success:"session_settle_publish_success"},$n={no_internet_connection:"no_internet_connection",no_wss_connection:"no_wss_connection",proposal_expired:"proposal_expired",subscribe_session_topic_failure:"subscribe_session_topic_failure",session_approve_publish_failure:"session_approve_publish_failure",session_settle_publish_failure:"session_settle_publish_failure",session_approve_namespace_validation_failure:"session_approve_namespace_validation_failure",proposal_not_found:"proposal_not_found"},Fn={authenticated_session_approve_started:"authenticated_session_approve_started",create_authenticated_session_topic:"create_authenticated_session_topic",cacaos_verified:"cacaos_verified",store_authenticated_session:"store_authenticated_session",subscribing_authenticated_session_topic:"subscribing_authenticated_session_topic",subscribe_authenticated_session_topic_success:"subscribe_authenticated_session_topic_success",publishing_authenticated_session_approve:"publishing_authenticated_session_approve"},Ac={no_internet_connection:"no_internet_connection",invalid_cacao:"invalid_cacao",subscribe_authenticated_session_topic_failure:"subscribe_authenticated_session_topic_failure",authenticated_session_approve_publish_failure:"authenticated_session_approve_publish_failure",authenticated_session_pending_request_not_found:"authenticated_session_pending_request_not_found"},$z=.1,Fz="event-client",Bz=86400,Yz="https://pulse.walletconnect.org/batch";function Qz(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),i=0;i<t.length;i++)t[i]=255;for(var s=0;s<r.length;s++){var n=r.charAt(s),o=n.charCodeAt(0);if(t[o]!==255)throw new TypeError(n+" is ambiguous");t[o]=s}var a=r.length,u=r.charAt(0),c=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function h(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var m=0,E=0,A=0,D=g.length;A!==D&&g[A]===0;)A++,m++;for(var O=(D-A)*l+1>>>0,C=new Uint8Array(O);A!==D;){for(var _=g[A],S=0,L=O-1;(_!==0||S<E)&&L!==-1;L--,S++)_+=256*C[L]>>>0,C[L]=_%a>>>0,_=_/a>>>0;if(_!==0)throw new Error("Non-zero carry");E=S,A++}for(var k=O-E;k!==O&&C[k]===0;)k++;for(var z=u.repeat(m);k<O;++k)z+=r.charAt(C[k]);return z}function f(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var m=0;if(g[m]!==" "){for(var E=0,A=0;g[m]===u;)E++,m++;for(var D=(g.length-m)*c+1>>>0,O=new Uint8Array(D);g[m];){var C=t[g.charCodeAt(m)];if(C===255)return;for(var _=0,S=D-1;(C!==0||_<A)&&S!==-1;S--,_++)C+=a*O[S]>>>0,O[S]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");A=_,m++}if(g[m]!==" "){for(var L=D-A;L!==D&&O[L]===0;)L++;for(var k=new Uint8Array(E+(D-L)),z=E;L!==D;)k[z++]=O[L++];return k}}}function w(g){var m=f(g);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:f,decode:w}}var Vz=Qz,Wz=Vz;const gI=r=>{if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")},qz=r=>new TextEncoder().encode(r),Zz=r=>new TextDecoder().decode(r);let Hz=class{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Gz=class{constructor(e,t,i){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return yI(this,e)}},Kz=class{constructor(e){this.decoders=e}or(e){return yI(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};const yI=(r,e)=>new Kz({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}});let Jz=class{constructor(e,t,i,s){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=s,this.encoder=new Hz(e,t,i),this.decoder=new Gz(e,t,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};const rd=({name:r,prefix:e,encode:t,decode:i})=>new Jz(r,e,t,i),Xu=({prefix:r,name:e,alphabet:t})=>{const{encode:i,decode:s}=Wz(t,e);return rd({prefix:r,name:e,encode:i,decode:n=>gI(s(n))})},Xz=(r,e,t,i)=>{const s={};for(let l=0;l<e.length;++l)s[e[l]]=l;let n=r.length;for(;r[n-1]==="=";)--n;const o=new Uint8Array(n*t/8|0);let a=0,u=0,c=0;for(let l=0;l<n;++l){const h=s[r[l]];if(h===void 0)throw new SyntaxError(`Non-${i} character`);u=u<<t|h,a+=t,a>=8&&(a-=8,o[c++]=255&u>>a)}if(a>=t||255&u<<8-a)throw new SyntaxError("Unexpected end of data");return o},eL=(r,e,t)=>{const i=e[e.length-1]==="=",s=(1<<t)-1;let n="",o=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],o+=8;o>t;)o-=t,n+=e[s&a>>o];if(o&&(n+=e[s&a<<t-o]),i)for(;n.length*t&7;)n+="=";return n},$r=({name:r,prefix:e,bitsPerChar:t,alphabet:i})=>rd({prefix:e,name:r,encode(s){return eL(s,i,t)},decode(s){return Xz(s,i,t,r)}}),tL=rd({prefix:"\0",name:"identity",encode:r=>Zz(r),decode:r=>qz(r)});var rL=Object.freeze({__proto__:null,identity:tL});const iL=$r({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var sL=Object.freeze({__proto__:null,base2:iL});const nL=$r({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var oL=Object.freeze({__proto__:null,base8:nL});const aL=Xu({prefix:"9",name:"base10",alphabet:"0123456789"});var cL=Object.freeze({__proto__:null,base10:aL});const uL=$r({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),lL=$r({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var hL=Object.freeze({__proto__:null,base16:uL,base16upper:lL});const dL=$r({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),fL=$r({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),pL=$r({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),gL=$r({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),yL=$r({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),wL=$r({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),mL=$r({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),bL=$r({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ML=$r({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var NL=Object.freeze({__proto__:null,base32:dL,base32upper:fL,base32pad:pL,base32padupper:gL,base32hex:yL,base32hexupper:wL,base32hexpad:mL,base32hexpadupper:bL,base32z:ML});const vL=Xu({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),IL=Xu({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var DL=Object.freeze({__proto__:null,base36:vL,base36upper:IL});const AL=Xu({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),EL=Xu({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var TL=Object.freeze({__proto__:null,base58btc:AL,base58flickr:EL});const SL=$r({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),jL=$r({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),xL=$r({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),CL=$r({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var _L=Object.freeze({__proto__:null,base64:SL,base64pad:jL,base64url:xL,base64urlpad:CL});const wI=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),OL=wI.reduce((r,e,t)=>(r[t]=e,r),[]),zL=wI.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function LL(r){return r.reduce((e,t)=>(e+=OL[t],e),"")}function PL(r){const e=[];for(const t of r){const i=zL[t.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}const kL=rd({prefix:"🚀",name:"base256emoji",encode:LL,decode:PL});var UL=Object.freeze({__proto__:null,base256emoji:kL}),RL=mI,pm=128,$L=-128,FL=Math.pow(2,31);function mI(r,e,t){e=e||[],t=t||0;for(var i=t;r>=FL;)e[t++]=r&255|pm,r/=128;for(;r&$L;)e[t++]=r&255|pm,r>>>=7;return e[t]=r|0,mI.bytes=t-i+1,e}var BL=Lp,YL=128,gm=127;function Lp(r,i){var t=0,i=i||0,s=0,n=i,o,a=r.length;do{if(n>=a)throw Lp.bytes=0,new RangeError("Could not decode varint");o=r[n++],t+=s<28?(o&gm)<<s:(o&gm)*Math.pow(2,s),s+=7}while(o>=YL);return Lp.bytes=n-i,t}var QL=Math.pow(2,7),VL=Math.pow(2,14),WL=Math.pow(2,21),qL=Math.pow(2,28),ZL=Math.pow(2,35),HL=Math.pow(2,42),GL=Math.pow(2,49),KL=Math.pow(2,56),JL=Math.pow(2,63),XL=function(r){return r<QL?1:r<VL?2:r<WL?3:r<qL?4:r<ZL?5:r<HL?6:r<GL?7:r<KL?8:r<JL?9:10},e6={encode:RL,decode:BL,encodingLength:XL},bI=e6;const ym=(r,e,t=0)=>(bI.encode(r,e,t),e),wm=r=>bI.encodingLength(r),Pp=(r,e)=>{const t=e.byteLength,i=wm(r),s=i+wm(t),n=new Uint8Array(s+t);return ym(r,n,0),ym(t,n,i),n.set(e,s),new t6(r,t,e,n)};let t6=class{constructor(e,t,i,s){this.code=e,this.size=t,this.digest=i,this.bytes=s}};const MI=({name:r,code:e,encode:t})=>new r6(r,e,t);let r6=class{constructor(e,t,i){this.name=e,this.code=t,this.encode=i}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?Pp(this.code,t):t.then(i=>Pp(this.code,i))}else throw Error("Unknown type, must be binary type")}};const NI=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),i6=MI({name:"sha2-256",code:18,encode:NI("SHA-256")}),s6=MI({name:"sha2-512",code:19,encode:NI("SHA-512")});var n6=Object.freeze({__proto__:null,sha256:i6,sha512:s6});const vI=0,o6="identity",II=gI,a6=r=>Pp(vI,II(r)),c6={code:vI,name:o6,encode:II,digest:a6};var u6=Object.freeze({__proto__:null,identity:c6});new TextEncoder,new TextDecoder;const mm={...rL,...sL,...oL,...cL,...hL,...NL,...DL,...TL,..._L,...UL};({...n6,...u6});function l6(r=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(r):new Uint8Array(r)}function DI(r,e,t,i){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:i}}}const bm=DI("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),vf=DI("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);const e=l6(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),h6={utf8:bm,"utf-8":bm,hex:mm.base16,latin1:vf,ascii:vf,binary:vf,...mm};function d6(r,e="utf8"){const t=h6[e];if(!t)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r,"utf8"):t.decoder.decode(`${t.prefix}${r}`)}var f6=Object.defineProperty,p6=(r,e,t)=>e in r?f6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,gs=(r,e,t)=>p6(r,typeof e!="symbol"?e+"":e,t);let g6=class{constructor(e,t){this.core=e,this.logger=t,gs(this,"keychain",new Map),gs(this,"name",pz),gs(this,"version",gz),gs(this,"initialized",!1),gs(this,"storagePrefix",Ts),gs(this,"init",async()=>{if(!this.initialized){const i=await this.getKeyChain();typeof i<"u"&&(this.keychain=i),this.initialized=!0}}),gs(this,"has",i=>(this.isInitialized(),this.keychain.has(i))),gs(this,"set",async(i,s)=>{this.isInitialized(),this.keychain.set(i,s),await this.persist()}),gs(this,"get",i=>{this.isInitialized();const s=this.keychain.get(i);if(typeof s>"u"){const{message:n}=X("NO_MATCHING_KEY",`${this.name}: ${i}`);throw new Error(n)}return s}),gs(this,"del",async i=>{this.isInitialized(),this.keychain.delete(i),await this.persist()}),this.core=e,this.logger=qe(t,this.name)}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,Tv(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?Sv(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}};var y6=Object.defineProperty,w6=(r,e,t)=>e in r?y6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Cr=(r,e,t)=>w6(r,typeof e!="symbol"?e+"":e,t);let m6=class{constructor(e,t,i){this.core=e,this.logger=t,Cr(this,"name",dz),Cr(this,"keychain"),Cr(this,"randomSessionIdentifier",jp()),Cr(this,"initialized",!1),Cr(this,"init",async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)}),Cr(this,"hasKeys",s=>(this.isInitialized(),this.keychain.has(s))),Cr(this,"getClientId",async()=>{this.isInitialized();const s=await this.getClientSeed(),n=Eh(s);return Ug(n.publicKey)}),Cr(this,"generateKeyPair",()=>{this.isInitialized();const s=v_();return this.setPrivateKey(s.publicKey,s.privateKey)}),Cr(this,"signJWT",async s=>{this.isInitialized();const n=await this.getClientSeed(),o=Eh(n),a=this.randomSessionIdentifier;return await qN(a,s,fz,o)}),Cr(this,"generateSharedKey",(s,n,o)=>{this.isInitialized();const a=this.getPrivateKey(s),u=I_(a,n);return this.setSymKey(u,o)}),Cr(this,"setSymKey",async(s,n)=>{this.isInitialized();const o=n||lh(s);return await this.keychain.set(o,s),o}),Cr(this,"deleteKeyPair",async s=>{this.isInitialized(),await this.keychain.del(s)}),Cr(this,"deleteSymKey",async s=>{this.isInitialized(),await this.keychain.del(s)}),Cr(this,"encode",async(s,n,o)=>{this.isInitialized();const a=eI(o),u=Es(n);if(qw(a))return E_(u,o?.encoding);if(Ww(a)){const f=a.senderPublicKey,w=a.receiverPublicKey;s=await this.generateSharedKey(f,w)}const c=this.getSymKey(s),{type:l,senderPublicKey:h}=a;return D_({type:l,symKey:c,message:u,senderPublicKey:h,encoding:o?.encoding})}),Cr(this,"decode",async(s,n,o)=>{this.isInitialized();const a=S_(n,o);if(qw(a)){const u=T_(n,o?.encoding);return Zs(u)}if(Ww(a)){const u=a.receiverPublicKey,c=a.senderPublicKey;s=await this.generateSharedKey(u,c)}try{const u=this.getSymKey(s),c=A_({symKey:u,encoded:n,encoding:o?.encoding});return Zs(c)}catch(u){this.logger.error(`Failed to decode message from topic: '${s}', clientId: '${await this.getClientId()}'`),this.logger.error(u)}}),Cr(this,"getPayloadType",(s,n=mn)=>{const o=lu({encoded:s,encoding:n});return oo(o.type)}),Cr(this,"getPayloadSenderPublicKey",(s,n=mn)=>{const o=lu({encoded:s,encoding:n});return o.senderPublicKey?We(o.senderPublicKey,Wr):void 0}),this.core=e,this.logger=qe(t,this.name),this.keychain=i||new g6(this.core,this.logger)}get context(){return dt(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(hm)}catch{e=jp(),await this.keychain.set(hm,e)}return d6(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}};var b6=Object.defineProperty,M6=(r,e,t)=>e in r?b6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ys=(r,e,t)=>M6(r,typeof e!="symbol"?e+"":e,t);let N6=class extends eE{constructor(e,t){super(e,t),this.logger=e,this.core=t,ys(this,"messages",new Map),ys(this,"name",yz),ys(this,"version",wz),ys(this,"initialized",!1),ys(this,"storagePrefix",Ts),ys(this,"init",async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const i=await this.getRelayerMessages();typeof i<"u"&&(this.messages=i),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(i){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(i)}finally{this.initialized=!0}}}),ys(this,"set",async(i,s)=>{this.isInitialized();const n=Qs(s);let o=this.messages.get(i);return typeof o>"u"&&(o={}),typeof o[n]<"u"||(o[n]=s,this.messages.set(i,o),await this.persist()),n}),ys(this,"get",i=>{this.isInitialized();let s=this.messages.get(i);return typeof s>"u"&&(s={}),s}),ys(this,"has",(i,s)=>{this.isInitialized();const n=this.get(i),o=Qs(s);return typeof n[o]<"u"}),ys(this,"del",async i=>{this.isInitialized(),this.messages.delete(i),await this.persist()}),this.logger=qe(e,this.name),this.core=t}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,Tv(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?Sv(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}};var v6=Object.defineProperty,I6=Object.defineProperties,D6=Object.getOwnPropertyDescriptors,Mm=Object.getOwnPropertySymbols,A6=Object.prototype.hasOwnProperty,E6=Object.prototype.propertyIsEnumerable,kp=(r,e,t)=>e in r?v6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ll=(r,e)=>{for(var t in e||(e={}))A6.call(e,t)&&kp(r,t,e[t]);if(Mm)for(var t of Mm(e))E6.call(e,t)&&kp(r,t,e[t]);return r},If=(r,e)=>I6(r,D6(e)),Ji=(r,e,t)=>kp(r,typeof e!="symbol"?e+"":e,t);let T6=class extends tE{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,Ji(this,"events",new wr.EventEmitter),Ji(this,"name",mz),Ji(this,"queue",new Map),Ji(this,"publishTimeout",Y.toMiliseconds(Y.ONE_MINUTE)),Ji(this,"initialPublishTimeout",Y.toMiliseconds(Y.ONE_SECOND*15)),Ji(this,"needsTransportRestart",!1),Ji(this,"publish",async(i,s,n)=>{var o;this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:i,message:s,opts:n}});const a=n?.ttl||dm,u=xh(n),c=n?.prompt||!1,l=n?.tag||0,h=n?.id||Ii().toString(),f={topic:i,message:s,opts:{ttl:a,relay:u,prompt:c,tag:l,id:h,attestation:n?.attestation,tvf:n?.tvf}},w=`Failed to publish payload, please try again. id:${h} tag:${l}`;try{const g=new Promise(async m=>{const E=({id:D})=>{f.opts.id===D&&(this.removeRequestFromQueue(D),this.relayer.events.removeListener(Ar.publish,E),m(f))};this.relayer.events.on(Ar.publish,E);const A=wn(new Promise((D,O)=>{this.rpcPublish({topic:i,message:s,ttl:a,prompt:c,tag:l,id:h,attestation:n?.attestation,tvf:n?.tvf}).then(D).catch(C=>{this.logger.warn(C,C?.message),O(C)})}),this.initialPublishTimeout,`Failed initial publish, retrying.... id:${h} tag:${l}`);try{await A,this.events.removeListener(Ar.publish,E)}catch(D){this.queue.set(h,If(Ll({},f),{attempt:1})),this.logger.warn(D,D?.message)}});this.logger.trace({type:"method",method:"publish",params:{id:h,topic:i,message:s,opts:n}}),await wn(g,this.publishTimeout,w)}catch(g){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(g),(o=n?.internal)!=null&&o.throwOnFailedPublish)throw g}finally{this.queue.delete(h)}}),Ji(this,"on",(i,s)=>{this.events.on(i,s)}),Ji(this,"once",(i,s)=>{this.events.once(i,s)}),Ji(this,"off",(i,s)=>{this.events.off(i,s)}),Ji(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),this.relayer=e,this.logger=qe(t,this.name),this.registerEventListeners()}get context(){return dt(this.logger)}async rpcPublish(e){var t,i,s,n;const{topic:o,message:a,ttl:u=dm,prompt:c,tag:l,id:h,attestation:f,tvf:w}=e,g={method:Fc(xh().protocol).publish,params:Ll({topic:o,message:a,ttl:u,prompt:c,tag:l,attestation:f},w),id:h};Gr((t=g.params)==null?void 0:t.prompt)&&((i=g.params)==null||delete i.prompt),Gr((s=g.params)==null?void 0:s.tag)&&((n=g.params)==null||delete n.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:g});const m=await this.relayer.request(g);return this.relayer.events.emit(Ar.publish,e),this.logger.debug("Successfully Published Payload"),m}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach(async(e,t)=>{const i=e.attempt+1;this.queue.set(t,If(Ll({},e),{attempt:i}));const{topic:s,message:n,opts:o,attestation:a}=e;this.logger.warn({},`Publisher: queue->publishing: ${e.opts.id}, tag: ${e.opts.tag}, attempt: ${i}`),await this.rpcPublish(If(Ll({},e),{topic:s,message:n,ttl:o.ttl,prompt:o.prompt,tag:o.tag,id:o.id,attestation:a,tvf:o.tvf})),this.logger.warn({},`Publisher: queue->published: ${e.opts.id}`)})}registerEventListeners(){this.relayer.core.heartbeat.on(as.pulse,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(Ar.connection_stalled);return}this.checkQueue()}),this.relayer.on(Ar.message_ack,e=>{this.removeRequestFromQueue(e.id.toString())})}};var S6=Object.defineProperty,j6=(r,e,t)=>e in r?S6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,zo=(r,e,t)=>j6(r,typeof e!="symbol"?e+"":e,t);let x6=class{constructor(){zo(this,"map",new Map),zo(this,"set",(e,t)=>{const i=this.get(e);this.exists(e,t)||this.map.set(e,[...i,t])}),zo(this,"get",e=>this.map.get(e)||[]),zo(this,"exists",(e,t)=>this.get(e).includes(t)),zo(this,"delete",(e,t)=>{if(typeof t>"u"){this.map.delete(e);return}if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,t))return;const s=i.filter(n=>n!==t);if(!s.length){this.map.delete(e);return}this.map.set(e,s)}),zo(this,"clear",()=>{this.map.clear()})}get topics(){return Array.from(this.map.keys())}};var C6=Object.defineProperty,_6=Object.defineProperties,O6=Object.getOwnPropertyDescriptors,Nm=Object.getOwnPropertySymbols,z6=Object.prototype.hasOwnProperty,L6=Object.prototype.propertyIsEnumerable,Up=(r,e,t)=>e in r?C6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ec=(r,e)=>{for(var t in e||(e={}))z6.call(e,t)&&Up(r,t,e[t]);if(Nm)for(var t of Nm(e))L6.call(e,t)&&Up(r,t,e[t]);return r},Df=(r,e)=>_6(r,O6(e)),it=(r,e,t)=>Up(r,typeof e!="symbol"?e+"":e,t);let P6=class extends sE{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,it(this,"subscriptions",new Map),it(this,"topicMap",new x6),it(this,"events",new wr.EventEmitter),it(this,"name",Az),it(this,"version",Ez),it(this,"pending",new Map),it(this,"cached",[]),it(this,"initialized",!1),it(this,"pendingSubscriptionWatchLabel","pending_sub_watch_label"),it(this,"pollingInterval",20),it(this,"storagePrefix",Ts),it(this,"subscribeTimeout",Y.toMiliseconds(Y.ONE_MINUTE)),it(this,"initialSubscribeTimeout",Y.toMiliseconds(Y.ONE_SECOND*15)),it(this,"clientId"),it(this,"batchSubscribeTopicsLimit",500),it(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),await this.restore()),this.initialized=!0}),it(this,"subscribe",async(i,s)=>{this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:s}});try{const n=xh(s),o={topic:i,relay:n,transportType:s?.transportType};this.pending.set(i,o);const a=await this.rpcSubscribe(i,n,s);return typeof a=="string"&&(this.onSubscribe(a,o),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:s}})),a}catch(n){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(n),n}}),it(this,"unsubscribe",async(i,s)=>{this.isInitialized(),typeof s?.id<"u"?await this.unsubscribeById(i,s.id,s):await this.unsubscribeByTopic(i,s)}),it(this,"isSubscribed",async i=>{if(this.topics.includes(i))return!0;const s=`${this.pendingSubscriptionWatchLabel}_${i}`;return await new Promise((n,o)=>{const a=new Y.Watch;a.start(s);const u=setInterval(()=>{(!this.pending.has(i)&&this.topics.includes(i)||this.cached.some(c=>c.topic===i))&&(clearInterval(u),a.stop(s),n(!0)),a.elapsed(s)>=Tz&&(clearInterval(u),a.stop(s),o(new Error("Subscription resolution timeout")))},this.pollingInterval)}).catch(()=>!1)}),it(this,"on",(i,s)=>{this.events.on(i,s)}),it(this,"once",(i,s)=>{this.events.once(i,s)}),it(this,"off",(i,s)=>{this.events.off(i,s)}),it(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),it(this,"start",async()=>{await this.onConnect()}),it(this,"stop",async()=>{await this.onDisconnect()}),it(this,"restart",async()=>{await this.restore(),await this.onRestart()}),it(this,"checkPending",async()=>{if(this.pending.size===0&&(!this.initialized||!this.relayer.connected))return;const i=[];this.pending.forEach(s=>{i.push(s)}),await this.batchSubscribe(i)}),it(this,"registerEventListeners",()=>{this.relayer.core.heartbeat.on(as.pulse,async()=>{await this.checkPending()}),this.events.on(mi.created,async i=>{const s=mi.created;this.logger.info(`Emitting ${s}`),this.logger.debug({type:"event",event:s,data:i}),await this.persist()}),this.events.on(mi.deleted,async i=>{const s=mi.deleted;this.logger.info(`Emitting ${s}`),this.logger.debug({type:"event",event:s,data:i}),await this.persist()})}),this.relayer=e,this.logger=qe(t,this.name),this.clientId=""}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+"//"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}get hasAnyTopics(){return this.topicMap.topics.length>0||this.pending.size>0||this.cached.length>0||this.subscriptions.size>0}hasSubscription(e,t){let i=!1;try{i=this.getSubscription(e).topic===t}catch{}return i}reset(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){const i=this.topicMap.get(e);await Promise.all(i.map(async s=>await this.unsubscribeById(e,s,t)))}async unsubscribeById(e,t,i){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:i}});try{const s=xh(i);await this.restartToComplete({topic:e,id:t,relay:s}),await this.rpcUnsubscribe(e,t,s);const n=st("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,n),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:i}})}catch(s){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(s),s}}async rpcSubscribe(e,t,i){var s;(!i||i?.transportType===It.relay)&&await this.restartToComplete({topic:e,id:e,relay:t});const n={method:Fc(t.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n});const o=(s=i?.internal)==null?void 0:s.throwOnFailedPublish;try{const a=await this.getSubscriptionId(e);if(i?.transportType===It.link_mode)return setTimeout(()=>{(this.relayer.connected||this.relayer.connecting)&&this.relayer.request(n).catch(l=>this.logger.warn(l))},Y.toMiliseconds(Y.ONE_SECOND)),a;const u=new Promise(async l=>{const h=f=>{f.topic===e&&(this.events.removeListener(mi.created,h),l(f.id))};this.events.on(mi.created,h);try{const f=await wn(new Promise((w,g)=>{this.relayer.request(n).catch(m=>{this.logger.warn(m,m?.message),g(m)}).then(w)}),this.initialSubscribeTimeout,`Subscribing to ${e} failed, please try again`);this.events.removeListener(mi.created,h),l(f)}catch{}}),c=await wn(u,this.subscribeTimeout,`Subscribing to ${e} failed, please try again`);if(!c&&o)throw new Error(`Subscribing to ${e} failed, please try again`);return c?a:null}catch(a){if(this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(Ar.connection_stalled),o)throw a}return null}async rpcBatchSubscribe(e){if(!e.length)return;const t=e[0].relay,i={method:Fc(t.protocol).batchSubscribe,params:{topics:e.map(s=>s.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});try{await await wn(new Promise(s=>{this.relayer.request(i).catch(n=>this.logger.warn(n)).then(s)}),this.subscribeTimeout,"rpcBatchSubscribe failed, please try again")}catch{this.relayer.events.emit(Ar.connection_stalled)}}async rpcBatchFetchMessages(e){if(!e.length)return;const t=e[0].relay,i={method:Fc(t.protocol).batchFetchMessages,params:{topics:e.map(n=>n.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});let s;try{s=await await wn(new Promise((n,o)=>{this.relayer.request(i).catch(a=>{this.logger.warn(a),o(a)}).then(n)}),this.subscribeTimeout,"rpcBatchFetchMessages failed, please try again")}catch{this.relayer.events.emit(Ar.connection_stalled)}return s}rpcUnsubscribe(e,t,i){const s={method:Fc(i.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:s}),this.relayer.request(s)}onSubscribe(e,t){this.setSubscription(e,Df(Ec({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach(t=>{this.setSubscription(t.id,Ec({},t)),this.pending.delete(t.topic)})}async onUnsubscribe(e,t,i){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,i),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,t){this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:t}),this.addSubscription(e,t)}addSubscription(e,t){this.subscriptions.set(e,Ec({},t)),this.topicMap.set(t.topic,e),this.events.emit(mi.created,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const t=this.subscriptions.get(e);if(!t){const{message:i}=X("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(mi.deleted,Df(Ec({},i),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(mi.sync)}async onRestart(){if(this.cached.length){const e=[...this.cached],t=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let i=0;i<t;i++){const s=e.splice(0,this.batchSubscribeTopicsLimit);await this.batchSubscribe(s)}}this.events.emit(mi.resubscribed)}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:t}=X("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:"method",method:"restore",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async batchSubscribe(e){e.length&&(await this.rpcBatchSubscribe(e),this.onBatchSubscribe(await Promise.all(e.map(async t=>Df(Ec({},t),{id:await this.getSubscriptionId(t.topic)})))))}async batchFetchMessages(e){if(!e.length)return;this.logger.trace(`Fetching batch messages for ${e.length} subscriptions`);const t=await this.rpcBatchFetchMessages(e);t&&t.messages&&(await Px(Y.toMiliseconds(Y.ONE_SECOND)),await this.relayer.handleBatchMessageEvents(t.messages))}async onConnect(){await this.restart(),this.reset()}onDisconnect(){this.onDisable()}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}async restartToComplete(e){!this.relayer.connected&&!this.relayer.connecting&&(this.cached.push(e),await this.relayer.transportOpen())}async getClientId(){return this.clientId||(this.clientId=await this.relayer.core.crypto.getClientId()),this.clientId}async getSubscriptionId(e){return Qs(e+await this.getClientId())}};var k6=Object.defineProperty,vm=Object.getOwnPropertySymbols,U6=Object.prototype.hasOwnProperty,R6=Object.prototype.propertyIsEnumerable,Rp=(r,e,t)=>e in r?k6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Im=(r,e)=>{for(var t in e||(e={}))U6.call(e,t)&&Rp(r,t,e[t]);if(vm)for(var t of vm(e))R6.call(e,t)&&Rp(r,t,e[t]);return r},Oe=(r,e,t)=>Rp(r,typeof e!="symbol"?e+"":e,t);let $6=class extends rE{constructor(e){super(e),Oe(this,"protocol","wc"),Oe(this,"version",2),Oe(this,"core"),Oe(this,"logger"),Oe(this,"events",new wr.EventEmitter),Oe(this,"provider"),Oe(this,"messages"),Oe(this,"subscriber"),Oe(this,"publisher"),Oe(this,"name",Mz),Oe(this,"transportExplicitlyClosed",!1),Oe(this,"initialized",!1),Oe(this,"connectionAttemptInProgress",!1),Oe(this,"relayUrl"),Oe(this,"projectId"),Oe(this,"packageName"),Oe(this,"bundleId"),Oe(this,"hasExperiencedNetworkDisruption",!1),Oe(this,"pingTimeout"),Oe(this,"heartBeatTimeout",Y.toMiliseconds(Y.THIRTY_SECONDS+Y.FIVE_SECONDS)),Oe(this,"reconnectTimeout"),Oe(this,"connectPromise"),Oe(this,"reconnectInProgress",!1),Oe(this,"requestsInFlight",[]),Oe(this,"connectTimeout",Y.toMiliseconds(Y.ONE_SECOND*15)),Oe(this,"request",async t=>{var i,s;this.logger.debug("Publishing Request Payload");const n=t.id||Ii().toString();await this.toEstablishConnection();try{this.logger.trace({id:n,method:t.method,topic:(i=t.params)==null?void 0:i.topic},"relayer.request - publishing...");const o=`${n}:${((s=t.params)==null?void 0:s.tag)||""}`;this.requestsInFlight.push(o);const a=await this.provider.request(t);return this.requestsInFlight=this.requestsInFlight.filter(u=>u!==o),a}catch(o){throw this.logger.debug(`Failed to Publish Request: ${n}`),o}}),Oe(this,"resetPingTimeout",()=>{if(Sh())try{clearTimeout(this.pingTimeout),this.pingTimeout=setTimeout(()=>{var t,i,s;this.logger.debug({},"pingTimeout: Connection stalled, terminating..."),(s=(i=(t=this.provider)==null?void 0:t.connection)==null?void 0:i.socket)==null||s.terminate()},this.heartBeatTimeout)}catch(t){this.logger.warn(t,t?.message)}}),Oe(this,"onPayloadHandler",t=>{this.onProviderPayload(t),this.resetPingTimeout()}),Oe(this,"onConnectHandler",()=>{this.logger.warn({},"Relayer connected 🛜"),this.startPingTimeout(),this.events.emit(Ar.connect)}),Oe(this,"onDisconnectHandler",()=>{this.logger.warn({},"Relayer disconnected 🛑"),this.requestsInFlight=[],this.onProviderDisconnect()}),Oe(this,"onProviderErrorHandler",t=>{this.logger.fatal(`Fatal socket error: ${t.message}`),this.events.emit(Ar.error,t),this.logger.fatal("Fatal socket error received, closing transport"),this.transportClose()}),Oe(this,"registerProviderListeners",()=>{this.provider.on(Oi.payload,this.onPayloadHandler),this.provider.on(Oi.connect,this.onConnectHandler),this.provider.on(Oi.disconnect,this.onDisconnectHandler),this.provider.on(Oi.error,this.onProviderErrorHandler)}),this.core=e.core,this.logger=typeof e.logger<"u"&&typeof e.logger!="string"?qe(e.logger,this.name):jn(Hs({level:e.logger||bz})),this.messages=new N6(this.logger,e.core),this.subscriber=new P6(this,this.logger),this.publisher=new T6(this,this.logger),this.relayUrl=e?.relayUrl||fI,this.projectId=e.projectId,Nx()?this.packageName=bw():vx()&&(this.bundleId=bw()),this.provider={}}async init(){if(this.logger.trace("Initialized"),this.registerEventListeners(),await Promise.all([this.messages.init(),this.subscriber.init()]),this.initialized=!0,this.subscriber.hasAnyTopics)try{await this.transportOpen()}catch(e){this.logger.warn(e,e?.message)}}get context(){return dt(this.logger)}get connected(){var e,t,i;return((i=(t=(e=this.provider)==null?void 0:e.connection)==null?void 0:t.socket)==null?void 0:i.readyState)===1||!1}get connecting(){var e,t,i;return((i=(t=(e=this.provider)==null?void 0:e.connection)==null?void 0:t.socket)==null?void 0:i.readyState)===0||this.connectPromise!==void 0||!1}async publish(e,t,i){this.isInitialized(),await this.publisher.publish(e,t,i),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now(),transportType:It.relay})}async subscribe(e,t){var i,s,n;this.isInitialized(),(!(t!=null&&t.transportType)||t?.transportType==="relay")&&await this.toEstablishConnection();const o=typeof((i=t?.internal)==null?void 0:i.throwOnFailedPublish)>"u"?!0:(s=t?.internal)==null?void 0:s.throwOnFailedPublish;let a=((n=this.subscriber.topicMap.get(e))==null?void 0:n[0])||"",u;const c=l=>{l.topic===e&&(this.subscriber.off(mi.created,c),u())};return await Promise.all([new Promise(l=>{u=l,this.subscriber.on(mi.created,c)}),new Promise(async(l,h)=>{a=await this.subscriber.subscribe(e,Im({internal:{throwOnFailedPublish:o}},t)).catch(f=>{o&&h(f)})||a,l()})]),a}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async transportDisconnect(){this.provider.disconnect&&(this.hasExperiencedNetworkDisruption||this.connected)?await wn(this.provider.disconnect(),2e3,"provider.disconnect()").catch(()=>this.onProviderDisconnect()):this.onProviderDisconnect()}async transportClose(){this.transportExplicitlyClosed=!0,await this.transportDisconnect()}async transportOpen(e){if(!this.subscriber.hasAnyTopics){this.logger.warn("Starting WS connection skipped because the client has no topics to work with.");return}if(this.connectPromise?(this.logger.debug({},"Waiting for existing connection attempt to resolve..."),await this.connectPromise,this.logger.debug({},"Existing connection attempt resolved")):(this.connectPromise=new Promise(async(t,i)=>{await this.connect(e).then(t).catch(i).finally(()=>{this.connectPromise=void 0})}),await this.connectPromise),!this.connected)throw new Error(`Couldn't establish socket connection to the relay server: ${this.relayUrl}`)}async restartTransport(e){this.logger.debug({},"Restarting transport..."),!this.connectionAttemptInProgress&&(this.relayUrl=e||this.relayUrl,await this.confirmOnlineStateOrThrow(),await this.transportClose(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!await tm())throw new Error("No internet connection detected. Please restart your network and try again.")}async handleBatchMessageEvents(e){if(e?.length===0){this.logger.trace("Batch message events is empty. Ignoring...");return}const t=e.sort((i,s)=>i.publishedAt-s.publishedAt);this.logger.debug(`Batch of ${t.length} message events sorted`);for(const i of t)try{await this.onMessageEvent(i)}catch(s){this.logger.warn(s,"Error while processing batch message event: "+s?.message)}this.logger.trace(`Batch of ${t.length} message events processed`)}async onLinkMessageEvent(e,t){const{topic:i}=e;if(!t.sessionExists){const s=dr(Y.FIVE_MINUTES),n={topic:i,expiry:s,relay:{protocol:"irn"},active:!1};await this.core.pairing.pairings.set(i,n)}this.events.emit(Ar.message,e),await this.recordMessageEvent(e)}async connect(e){await this.confirmOnlineStateOrThrow(),e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportDisconnect()),this.connectionAttemptInProgress=!0,this.transportExplicitlyClosed=!1;let t=1;for(;t<6;){try{if(this.transportExplicitlyClosed)break;this.logger.debug({},`Connecting to ${this.relayUrl}, attempt: ${t}...`),await this.createProvider(),await new Promise(async(i,s)=>{const n=()=>{s(new Error("Connection interrupted while trying to subscribe"))};this.provider.once(Oi.disconnect,n),await wn(new Promise((o,a)=>{this.provider.connect().then(o).catch(a)}),this.connectTimeout,`Socket stalled when trying to connect to ${this.relayUrl}`).catch(o=>{s(o)}).finally(()=>{this.provider.off(Oi.disconnect,n),clearTimeout(this.reconnectTimeout)}),await new Promise(async(o,a)=>{const u=()=>{a(new Error("Connection interrupted while trying to subscribe"))};this.provider.once(Oi.disconnect,u),await this.subscriber.start().then(o).catch(a).finally(()=>{this.provider.off(Oi.disconnect,u)})}),this.hasExperiencedNetworkDisruption=!1,i()})}catch(i){await this.subscriber.stop();const s=i;this.logger.warn({},s.message),this.hasExperiencedNetworkDisruption=!0}finally{this.connectionAttemptInProgress=!1}if(this.connected){this.logger.debug({},`Connected to ${this.relayUrl} successfully on attempt: ${t}`);break}await new Promise(i=>setTimeout(i,Y.toMiliseconds(t*1))),t++}}startPingTimeout(){var e,t,i,s,n;if(Sh())try{(t=(e=this.provider)==null?void 0:e.connection)!=null&&t.socket&&((n=(s=(i=this.provider)==null?void 0:i.connection)==null?void 0:s.socket)==null||n.on("ping",()=>{this.resetPingTimeout()})),this.resetPingTimeout()}catch(o){this.logger.warn(o,o?.message)}}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new Ot(new uI(Ex({sdkVersion:zp,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId,packageName:this.packageName}))),this.registerProviderListeners()}async recordMessageEvent(e){const{topic:t,message:i}=e;await this.messages.set(t,i)}async shouldIgnoreMessageEvent(e){const{topic:t,message:i}=e;if(!i||i.length===0)return this.logger.warn(`Ignoring invalid/empty message: ${i}`),!0;if(!await this.subscriber.isSubscribed(t))return this.logger.warn(`Ignoring message for non-subscribed topic ${t}`),!0;const s=this.messages.has(t,i);return s&&this.logger.warn(`Ignoring duplicate message: ${i}`),s}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),qa(e)){if(!e.method.endsWith(Nz))return;const t=e.params,{topic:i,message:s,publishedAt:n,attestation:o}=t.data,a={topic:i,message:s,publishedAt:n,transportType:It.relay,attestation:o};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(Im({type:"event",event:t.id},a)),this.events.emit(t.id,a),await this.acknowledgePayload(e),await this.onMessageEvent(a)}else mo(e)&&this.events.emit(Ar.message_ack,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(Ar.message,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=Cn(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(Oi.payload,this.onPayloadHandler),this.provider.off(Oi.connect,this.onConnectHandler),this.provider.off(Oi.disconnect,this.onDisconnectHandler),this.provider.off(Oi.error,this.onProviderErrorHandler),clearTimeout(this.pingTimeout)}async registerEventListeners(){let e=await tm();gO(async t=>{e!==t&&(e=t,t?await this.transportOpen().catch(i=>this.logger.error(i,i?.message)):(this.hasExperiencedNetworkDisruption=!0,await this.transportDisconnect(),this.transportExplicitlyClosed=!1))})}async onProviderDisconnect(){clearTimeout(this.pingTimeout),this.events.emit(Ar.disconnect),this.connectionAttemptInProgress=!1,!this.reconnectInProgress&&(this.reconnectInProgress=!0,await this.subscriber.stop(),this.subscriber.hasAnyTopics&&(this.transportExplicitlyClosed||(this.reconnectTimeout=setTimeout(async()=>{await this.transportOpen().catch(e=>this.logger.error(e,e?.message)),this.reconnectTimeout=void 0,this.reconnectInProgress=!1},Y.toMiliseconds(vz)))))}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}async toEstablishConnection(){await this.confirmOnlineStateOrThrow(),!this.connected&&await this.connect()}};var F6=Object.defineProperty,Dm=Object.getOwnPropertySymbols,B6=Object.prototype.hasOwnProperty,Y6=Object.prototype.propertyIsEnumerable,$p=(r,e,t)=>e in r?F6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Am=(r,e)=>{for(var t in e||(e={}))B6.call(e,t)&&$p(r,t,e[t]);if(Dm)for(var t of Dm(e))Y6.call(e,t)&&$p(r,t,e[t]);return r},ei=(r,e,t)=>$p(r,typeof e!="symbol"?e+"":e,t);let bo=class extends iE{constructor(e,t,i,s=Ts,n=void 0){super(e,t,i,s),this.core=e,this.logger=t,this.name=i,ei(this,"map",new Map),ei(this,"version",Iz),ei(this,"cached",[]),ei(this,"initialized",!1),ei(this,"getKey"),ei(this,"storagePrefix",Ts),ei(this,"recentlyDeleted",[]),ei(this,"recentlyDeletedLimit",200),ei(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(o=>{this.getKey&&o!==null&&!Gr(o)?this.map.set(this.getKey(o),o):W_(o)?this.map.set(o.id,o):q_(o)&&this.map.set(o.topic,o)}),this.cached=[],this.initialized=!0)}),ei(this,"set",async(o,a)=>{this.isInitialized(),this.map.has(o)?await this.update(o,a):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:o,value:a}),this.map.set(o,a),await this.persist())}),ei(this,"get",o=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:o}),this.getData(o))),ei(this,"getAll",o=>(this.isInitialized(),o?this.values.filter(a=>Object.keys(o).every(u=>uz(a[u],o[u]))):this.values)),ei(this,"update",async(o,a)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:o,update:a});const u=Am(Am({},this.getData(o)),a);this.map.set(o,u),await this.persist()}),ei(this,"delete",async(o,a)=>{this.isInitialized(),this.map.has(o)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:o,reason:a}),this.map.delete(o),this.addToRecentlyDeleted(o),await this.persist())}),this.logger=qe(t,this.name),this.storagePrefix=s,this.getKey=n}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}addToRecentlyDeleted(e){this.recentlyDeleted.push(e),this.recentlyDeleted.length>=this.recentlyDeletedLimit&&this.recentlyDeleted.splice(0,this.recentlyDeletedLimit/2)}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const t=this.map.get(e);if(!t){if(this.recentlyDeleted.includes(e)){const{message:s}=X("MISSING_OR_INVALID",`Record was recently deleted - ${this.name}: ${e}`);throw this.logger.error(s),new Error(s)}const{message:i}=X("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){const{message:t}=X("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:"method",method:"restore",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}};var Q6=Object.defineProperty,V6=(r,e,t)=>e in r?Q6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,De=(r,e,t)=>V6(r,typeof e!="symbol"?e+"":e,t);let W6=class{constructor(e,t){this.core=e,this.logger=t,De(this,"name",Sz),De(this,"version",jz),De(this,"events",new Fa),De(this,"pairings"),De(this,"initialized",!1),De(this,"storagePrefix",Ts),De(this,"ignoredPayloadTypes",[Vs]),De(this,"registeredMethods",[]),De(this,"init",async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))}),De(this,"register",({methods:i})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...i])]}),De(this,"create",async i=>{this.isInitialized();const s=jp(),n=await this.core.crypto.setSymKey(s),o=dr(Y.FIVE_MINUTES),a={protocol:dI},u={topic:n,expiry:o,relay:a,active:!1,methods:i?.methods},c=Hw({protocol:this.core.protocol,version:this.core.version,topic:n,symKey:s,relay:a,expiryTimestamp:o,methods:i?.methods});return this.events.emit(Hn.create,u),this.core.expirer.set(n,o),await this.pairings.set(n,u),await this.core.relayer.subscribe(n,{transportType:i?.transportType}),{topic:n,uri:c}}),De(this,"pair",async i=>{this.isInitialized();const s=this.core.eventClient.createEvent({properties:{topic:i?.uri,trace:[vs.pairing_started]}});this.isValidPair(i,s);const{topic:n,symKey:o,relay:a,expiryTimestamp:u,methods:c}=Zw(i.uri);s.props.properties.topic=n,s.addTrace(vs.pairing_uri_validation_success),s.addTrace(vs.pairing_uri_not_expired);let l;if(this.pairings.keys.includes(n)){if(l=this.pairings.get(n),s.addTrace(vs.existing_pairing),l.active)throw s.setError(Bs.active_pairing_already_exists),new Error(`Pairing already exists: ${n}. Please try again with a new connection URI.`);s.addTrace(vs.pairing_not_expired)}const h=u||dr(Y.FIVE_MINUTES),f={topic:n,relay:a,expiry:h,active:!1,methods:c};this.core.expirer.set(n,h),await this.pairings.set(n,f),s.addTrace(vs.store_new_pairing),i.activatePairing&&await this.activate({topic:n}),this.events.emit(Hn.create,f),s.addTrace(vs.emit_inactive_pairing),this.core.crypto.keychain.has(n)||await this.core.crypto.setSymKey(o,n),s.addTrace(vs.subscribing_pairing_topic);try{await this.core.relayer.confirmOnlineStateOrThrow()}catch{s.setError(Bs.no_internet_connection)}try{await this.core.relayer.subscribe(n,{relay:a})}catch(w){throw s.setError(Bs.subscribe_pairing_topic_failure),w}return s.addTrace(vs.subscribe_pairing_topic_success),f}),De(this,"activate",async({topic:i})=>{this.isInitialized();const s=dr(Y.FIVE_MINUTES);this.core.expirer.set(i,s),await this.pairings.update(i,{active:!0,expiry:s})}),De(this,"ping",async i=>{this.isInitialized(),await this.isValidPing(i),this.logger.warn("ping() is deprecated and will be removed in the next major release.");const{topic:s}=i;if(this.pairings.keys.includes(s)){const n=await this.sendRequest(s,"wc_pairingPing",{}),{done:o,resolve:a,reject:u}=Vn();this.events.once(Qe("pairing_ping",n),({error:c})=>{c?u(c):a()}),await o()}}),De(this,"updateExpiry",async({topic:i,expiry:s})=>{this.isInitialized(),await this.pairings.update(i,{expiry:s})}),De(this,"updateMetadata",async({topic:i,metadata:s})=>{this.isInitialized(),await this.pairings.update(i,{peerMetadata:s})}),De(this,"getPairings",()=>(this.isInitialized(),this.pairings.values)),De(this,"disconnect",async i=>{this.isInitialized(),await this.isValidDisconnect(i);const{topic:s}=i;this.pairings.keys.includes(s)&&(await this.sendRequest(s,"wc_pairingDelete",st("USER_DISCONNECTED")),await this.deletePairing(s))}),De(this,"formatUriFromPairing",i=>{this.isInitialized();const{topic:s,relay:n,expiry:o,methods:a}=i,u=this.core.crypto.keychain.get(s);return Hw({protocol:this.core.protocol,version:this.core.version,topic:s,symKey:u,relay:n,expiryTimestamp:o,methods:a})}),De(this,"sendRequest",async(i,s,n)=>{const o=Kr(s,n),a=await this.core.crypto.encode(i,o),u=Dc[s].req;return this.core.history.set(i,o),this.core.relayer.publish(i,a,u),o.id}),De(this,"sendResult",async(i,s,n)=>{const o=Cn(i,n),a=await this.core.crypto.encode(s,o),u=(await this.core.history.get(s,i)).request.method,c=Dc[u].res;await this.core.relayer.publish(s,a,c),await this.core.history.resolve(o)}),De(this,"sendError",async(i,s,n)=>{const o=Wa(i,n),a=await this.core.crypto.encode(s,o),u=(await this.core.history.get(s,i)).request.method,c=Dc[u]?Dc[u].res:Dc.unregistered_method.res;await this.core.relayer.publish(s,a,c),await this.core.history.resolve(o)}),De(this,"deletePairing",async(i,s)=>{await this.core.relayer.unsubscribe(i),await Promise.all([this.pairings.delete(i,st("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(i),s?Promise.resolve():this.core.expirer.del(i)])}),De(this,"cleanup",async()=>{const i=this.pairings.getAll().filter(s=>dn(s.expiry));await Promise.all(i.map(s=>this.deletePairing(s.topic)))}),De(this,"onRelayEventRequest",i=>{const{topic:s,payload:n}=i;switch(n.method){case"wc_pairingPing":return this.onPairingPingRequest(s,n);case"wc_pairingDelete":return this.onPairingDeleteRequest(s,n);default:return this.onUnknownRpcMethodRequest(s,n)}}),De(this,"onRelayEventResponse",async i=>{const{topic:s,payload:n}=i,o=(await this.core.history.get(s,n.id)).request.method;return o==="wc_pairingPing"?this.onPairingPingResponse(s,n):this.onUnknownRpcMethodResponse(o)}),De(this,"onPairingPingRequest",async(i,s)=>{const{id:n}=s;try{this.isValidPing({topic:i}),await this.sendResult(n,i,!0),this.events.emit(Hn.ping,{id:n,topic:i})}catch(o){await this.sendError(n,i,o),this.logger.error(o)}}),De(this,"onPairingPingResponse",(i,s)=>{const{id:n}=s;setTimeout(()=>{yr(s)?this.events.emit(Qe("pairing_ping",n),{}):rr(s)&&this.events.emit(Qe("pairing_ping",n),{error:s.error})},500)}),De(this,"onPairingDeleteRequest",async(i,s)=>{const{id:n}=s;try{this.isValidDisconnect({topic:i}),await this.deletePairing(i),this.events.emit(Hn.delete,{id:n,topic:i})}catch(o){await this.sendError(n,i,o),this.logger.error(o)}}),De(this,"onUnknownRpcMethodRequest",async(i,s)=>{const{id:n,method:o}=s;try{if(this.registeredMethods.includes(o))return;const a=st("WC_METHOD_UNSUPPORTED",o);await this.sendError(n,i,a),this.logger.error(a)}catch(a){await this.sendError(n,i,a),this.logger.error(a)}}),De(this,"onUnknownRpcMethodResponse",i=>{this.registeredMethods.includes(i)||this.logger.error(st("WC_METHOD_UNSUPPORTED",i))}),De(this,"isValidPair",(i,s)=>{var n;if(!oi(i)){const{message:a}=X("MISSING_OR_INVALID",`pair() params: ${i}`);throw s.setError(Bs.malformed_pairing_uri),new Error(a)}if(!V_(i.uri)){const{message:a}=X("MISSING_OR_INVALID",`pair() uri: ${i.uri}`);throw s.setError(Bs.malformed_pairing_uri),new Error(a)}const o=Zw(i?.uri);if(!((n=o?.relay)!=null&&n.protocol)){const{message:a}=X("MISSING_OR_INVALID","pair() uri#relay-protocol");throw s.setError(Bs.malformed_pairing_uri),new Error(a)}if(!(o!=null&&o.symKey)){const{message:a}=X("MISSING_OR_INVALID","pair() uri#symKey");throw s.setError(Bs.malformed_pairing_uri),new Error(a)}if(o!=null&&o.expiryTimestamp&&Y.toMiliseconds(o?.expiryTimestamp)<Date.now()){s.setError(Bs.pairing_expired);const{message:a}=X("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw new Error(a)}}),De(this,"isValidPing",async i=>{if(!oi(i)){const{message:n}=X("MISSING_OR_INVALID",`ping() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)}),De(this,"isValidDisconnect",async i=>{if(!oi(i)){const{message:n}=X("MISSING_OR_INVALID",`disconnect() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)}),De(this,"isValidPairingTopic",async i=>{if(!sr(i,!1)){const{message:s}=X("MISSING_OR_INVALID",`pairing topic should be a string: ${i}`);throw new Error(s)}if(!this.pairings.keys.includes(i)){const{message:s}=X("NO_MATCHING_KEY",`pairing topic doesn't exist: ${i}`);throw new Error(s)}if(dn(this.pairings.get(i).expiry)){await this.deletePairing(i);const{message:s}=X("EXPIRED",`pairing topic: ${i}`);throw new Error(s)}}),this.core=e,this.logger=qe(t,this.name),this.pairings=new bo(this.core,this.logger,this.name,this.storagePrefix)}get context(){return dt(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(Ar.message,async e=>{const{topic:t,message:i,transportType:s}=e;if(!this.pairings.keys.includes(t)||s===It.link_mode||this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(i)))return;const n=await this.core.crypto.decode(t,i);try{qa(n)?(this.core.history.set(t,n),this.onRelayEventRequest({topic:t,payload:n})):mo(n)&&(await this.core.history.resolve(n),await this.onRelayEventResponse({topic:t,payload:n}),this.core.history.delete(t,n.id))}catch(o){this.logger.error(o)}})}registerExpirerEvents(){this.core.expirer.on(Ui.expired,async e=>{const{topic:t}=xv(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit(Hn.expire,{topic:t}))})}};var q6=Object.defineProperty,Z6=(r,e,t)=>e in r?q6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,_r=(r,e,t)=>Z6(r,typeof e!="symbol"?e+"":e,t);let H6=class extends X3{constructor(e,t){super(e,t),this.core=e,this.logger=t,_r(this,"records",new Map),_r(this,"events",new wr.EventEmitter),_r(this,"name",xz),_r(this,"version",Cz),_r(this,"cached",[]),_r(this,"initialized",!1),_r(this,"storagePrefix",Ts),_r(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.records.set(i.id,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)}),_r(this,"set",(i,s,n)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:i,request:s,chainId:n}),this.records.has(s.id))return;const o={id:s.id,topic:i,request:{method:s.method,params:s.params||null},chainId:n,expiry:dr(Y.THIRTY_DAYS)};this.records.set(o.id,o),this.persist(),this.events.emit(Gi.created,o)}),_r(this,"resolve",async i=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:i}),!this.records.has(i.id))return;const s=await this.getRecord(i.id);typeof s.response>"u"&&(s.response=rr(i)?{error:i.error}:{result:i.result},this.records.set(s.id,s),this.persist(),this.events.emit(Gi.updated,s))}),_r(this,"get",async(i,s)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:i,id:s}),await this.getRecord(s))),_r(this,"delete",(i,s)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:s}),this.values.forEach(n=>{if(n.topic===i){if(typeof s<"u"&&n.id!==s)return;this.records.delete(n.id),this.events.emit(Gi.deleted,n)}}),this.persist()}),_r(this,"exists",async(i,s)=>(this.isInitialized(),this.records.has(s)?(await this.getRecord(s)).topic===i:!1)),_r(this,"on",(i,s)=>{this.events.on(i,s)}),_r(this,"once",(i,s)=>{this.events.once(i,s)}),_r(this,"off",(i,s)=>{this.events.off(i,s)}),_r(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),this.logger=qe(t,this.name)}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach(t=>{if(typeof t.response<"u")return;const i={topic:t.topic,request:Kr(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(i)}),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const t=this.records.get(e);if(!t){const{message:i}=X("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(Gi.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:t}=X("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(Gi.created,e=>{const t=Gi.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})}),this.events.on(Gi.updated,e=>{const t=Gi.updated;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})}),this.events.on(Gi.deleted,e=>{const t=Gi.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})}),this.core.heartbeat.on(as.pulse,()=>{this.cleanup()})}cleanup(){try{this.isInitialized();let e=!1;this.records.forEach(t=>{Y.toMiliseconds(t.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${t.id}`),this.records.delete(t.id),this.events.emit(Gi.deleted,t,!1),e=!0)}),e&&this.persist()}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}};var G6=Object.defineProperty,K6=(r,e,t)=>e in r?G6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Yr=(r,e,t)=>K6(r,typeof e!="symbol"?e+"":e,t);let J6=class extends nE{constructor(e,t){super(e,t),this.core=e,this.logger=t,Yr(this,"expirations",new Map),Yr(this,"events",new wr.EventEmitter),Yr(this,"name",_z),Yr(this,"version",Oz),Yr(this,"cached",[]),Yr(this,"initialized",!1),Yr(this,"storagePrefix",Ts),Yr(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.expirations.set(i.target,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)}),Yr(this,"has",i=>{try{const s=this.formatTarget(i);return typeof this.getExpiration(s)<"u"}catch{return!1}}),Yr(this,"set",(i,s)=>{this.isInitialized();const n=this.formatTarget(i),o={target:n,expiry:s};this.expirations.set(n,o),this.checkExpiry(n,o),this.events.emit(Ui.created,{target:n,expiration:o})}),Yr(this,"get",i=>{this.isInitialized();const s=this.formatTarget(i);return this.getExpiration(s)}),Yr(this,"del",i=>{if(this.isInitialized(),this.has(i)){const s=this.formatTarget(i),n=this.getExpiration(s);this.expirations.delete(s),this.events.emit(Ui.deleted,{target:s,expiration:n})}}),Yr(this,"on",(i,s)=>{this.events.on(i,s)}),Yr(this,"once",(i,s)=>{this.events.once(i,s)}),Yr(this,"off",(i,s)=>{this.events.off(i,s)}),Yr(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),this.logger=qe(t,this.name)}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if(typeof e=="string")return Tx(e);if(typeof e=="number")return Sx(e);const{message:t}=X("UNKNOWN_TYPE",`Target type: ${typeof e}`);throw new Error(t)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(Ui.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:t}=X("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:"method",method:"restore",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const t=this.expirations.get(e);if(!t){const{message:i}=X("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.warn(i),new Error(i)}return t}checkExpiry(e,t){const{expiry:i}=t;Y.toMiliseconds(i)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(Ui.expired,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(as.pulse,()=>this.checkExpirations()),this.events.on(Ui.created,e=>{const t=Ui.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(Ui.expired,e=>{const t=Ui.expired;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(Ui.deleted,e=>{const t=Ui.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}};var X6=Object.defineProperty,e8=(r,e,t)=>e in r?X6(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ar=(r,e,t)=>e8(r,typeof e!="symbol"?e+"":e,t);let t8=class extends oE{constructor(e,t,i){super(e,t,i),this.core=e,this.logger=t,this.store=i,ar(this,"name",zz),ar(this,"abortController"),ar(this,"isDevEnv"),ar(this,"verifyUrlV3",Pz),ar(this,"storagePrefix",Ts),ar(this,"version",hI),ar(this,"publicKey"),ar(this,"fetchPromise"),ar(this,"init",async()=>{var s;this.isDevEnv||(this.publicKey=await this.store.getItem(this.storeKey),this.publicKey&&Y.toMiliseconds((s=this.publicKey)==null?void 0:s.expiresAt)<Date.now()&&(this.logger.debug("verify v2 public key expired"),await this.removePublicKey()))}),ar(this,"register",async s=>{if(!Zu()||this.isDevEnv)return;const n=window.location.origin,{id:o,decryptedId:a}=s,u=`${this.verifyUrlV3}/attestation?projectId=${this.core.projectId}&origin=${n}&id=${o}&decryptedId=${a}`;try{const c=li.getDocument(),l=this.startAbortTimer(Y.ONE_SECOND*5),h=await new Promise((f,w)=>{const g=()=>{window.removeEventListener("message",E),c.body.removeChild(m),w("attestation aborted")};this.abortController.signal.addEventListener("abort",g);const m=c.createElement("iframe");m.src=u,m.style.display="none",m.addEventListener("error",g,{signal:this.abortController.signal});const E=A=>{if(A.data&&typeof A.data=="string")try{const D=JSON.parse(A.data);if(D.type==="verify_attestation"){if(Sa(D.attestation).payload.id!==o)return;clearInterval(l),c.body.removeChild(m),this.abortController.signal.removeEventListener("abort",g),window.removeEventListener("message",E),f(D.attestation===null?"":D.attestation)}}catch(D){this.logger.warn(D)}};c.body.appendChild(m),window.addEventListener("message",E,{signal:this.abortController.signal})});return this.logger.debug("jwt attestation",h),h}catch(c){this.logger.warn(c)}return""}),ar(this,"resolve",async s=>{if(this.isDevEnv)return"";const{attestationId:n,hash:o,encryptedId:a}=s;if(n===""){this.logger.debug("resolve: attestationId is empty, skipping");return}if(n){if(Sa(n).payload.id!==a)return;const c=await this.isValidJwtAttestation(n);if(c){if(!c.isVerified){this.logger.warn("resolve: jwt attestation: origin url not verified");return}return c}}if(!o)return;const u=this.getVerifyUrl(s?.verifyUrl);return this.fetchAttestation(o,u)}),ar(this,"fetchAttestation",async(s,n)=>{this.logger.debug(`resolving attestation: ${s} from url: ${n}`);const o=this.startAbortTimer(Y.ONE_SECOND*5),a=await fetch(`${n}/attestation/${s}?v2Supported=true`,{signal:this.abortController.signal});return clearTimeout(o),a.status===200?await a.json():void 0}),ar(this,"getVerifyUrl",s=>{let n=s||Jc;return kz.includes(n)||(this.logger.info(`verify url: ${n}, not included in trusted list, assigning default: ${Jc}`),n=Jc),n}),ar(this,"fetchPublicKey",async()=>{try{this.logger.debug(`fetching public key from: ${this.verifyUrlV3}`);const s=this.startAbortTimer(Y.FIVE_SECONDS),n=await fetch(`${this.verifyUrlV3}/public-key`,{signal:this.abortController.signal});return clearTimeout(s),await n.json()}catch(s){this.logger.warn(s)}}),ar(this,"persistPublicKey",async s=>{this.logger.debug("persisting public key to local storage",s),await this.store.setItem(this.storeKey,s),this.publicKey=s}),ar(this,"removePublicKey",async()=>{this.logger.debug("removing verify v2 public key from storage"),await this.store.removeItem(this.storeKey),this.publicKey=void 0}),ar(this,"isValidJwtAttestation",async s=>{const n=await this.getPublicKey();try{if(n)return this.validateAttestation(s,n)}catch(a){this.logger.error(a),this.logger.warn("error validating attestation")}const o=await this.fetchAndPersistPublicKey();try{if(o)return this.validateAttestation(s,o)}catch(a){this.logger.error(a),this.logger.warn("error validating attestation")}}),ar(this,"getPublicKey",async()=>this.publicKey?this.publicKey:await this.fetchAndPersistPublicKey()),ar(this,"fetchAndPersistPublicKey",async()=>{if(this.fetchPromise)return await this.fetchPromise,this.publicKey;this.fetchPromise=new Promise(async n=>{const o=await this.fetchPublicKey();o&&(await this.persistPublicKey(o),n(o))});const s=await this.fetchPromise;return this.fetchPromise=void 0,s}),ar(this,"validateAttestation",(s,n)=>{const o=__(s,n.publicKey),a={hasExpired:Y.toMiliseconds(o.exp)<Date.now(),payload:o};if(a.hasExpired)throw this.logger.warn("resolve: jwt attestation expired"),new Error("JWT attestation expired");return{origin:a.payload.origin,isScam:a.payload.isScam,isVerified:a.payload.isVerified}}),this.logger=qe(t,this.name),this.abortController=new AbortController,this.isDevEnv=Fg(),this.init()}get storeKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//verify:public:key"}get context(){return dt(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),Y.toMiliseconds(e))}};var r8=Object.defineProperty,i8=(r,e,t)=>e in r?r8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Em=(r,e,t)=>i8(r,typeof e!="symbol"?e+"":e,t);let s8=class extends aE{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,Em(this,"context",Uz),Em(this,"registerDeviceToken",async i=>{const{clientId:s,token:n,notificationType:o,enableEncrypted:a=!1}=i,u=`${Rz}/${this.projectId}/clients`;await fetch(u,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:s,type:o,token:n,always_raw:a})})}),this.logger=qe(t,this.context)}};var n8=Object.defineProperty,Tm=Object.getOwnPropertySymbols,o8=Object.prototype.hasOwnProperty,a8=Object.prototype.propertyIsEnumerable,Fp=(r,e,t)=>e in r?n8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Tc=(r,e)=>{for(var t in e||(e={}))o8.call(e,t)&&Fp(r,t,e[t]);if(Tm)for(var t of Tm(e))a8.call(e,t)&&Fp(r,t,e[t]);return r},br=(r,e,t)=>Fp(r,typeof e!="symbol"?e+"":e,t);let c8=class extends cE{constructor(e,t,i=!0){super(e,t,i),this.core=e,this.logger=t,br(this,"context",Fz),br(this,"storagePrefix",Ts),br(this,"storageVersion",$z),br(this,"events",new Map),br(this,"shouldPersist",!1),br(this,"init",async()=>{if(!Fg())try{const s={eventId:Nw(),timestamp:Date.now(),domain:this.getAppDomain(),props:{event:"INIT",type:"",properties:{client_id:await this.core.crypto.getClientId(),user_agent:Ev(this.core.relayer.protocol,this.core.relayer.version,zp)}}};await this.sendEvent([s])}catch(s){this.logger.warn(s)}}),br(this,"createEvent",s=>{const{event:n="ERROR",type:o="",properties:{topic:a,trace:u}}=s,c=Nw(),l=this.core.projectId||"",h=Date.now(),f=Tc({eventId:c,timestamp:h,props:{event:n,type:o,properties:{topic:a,trace:u}},bundleId:l,domain:this.getAppDomain()},this.setMethods(c));return this.telemetryEnabled&&(this.events.set(c,f),this.shouldPersist=!0),f}),br(this,"getEvent",s=>{const{eventId:n,topic:o}=s;if(n)return this.events.get(n);const a=Array.from(this.events.values()).find(u=>u.props.properties.topic===o);if(a)return Tc(Tc({},a),this.setMethods(a.eventId))}),br(this,"deleteEvent",s=>{const{eventId:n}=s;this.events.delete(n),this.shouldPersist=!0}),br(this,"setEventListeners",()=>{this.core.heartbeat.on(as.pulse,async()=>{this.shouldPersist&&await this.persist(),this.events.forEach(s=>{Y.fromMiliseconds(Date.now())-Y.fromMiliseconds(s.timestamp)>Bz&&(this.events.delete(s.eventId),this.shouldPersist=!0)})})}),br(this,"setMethods",s=>({addTrace:n=>this.addTrace(s,n),setError:n=>this.setError(s,n)})),br(this,"addTrace",(s,n)=>{const o=this.events.get(s);o&&(o.props.properties.trace.push(n),this.events.set(s,o),this.shouldPersist=!0)}),br(this,"setError",(s,n)=>{const o=this.events.get(s);o&&(o.props.type=n,o.timestamp=Date.now(),this.events.set(s,o),this.shouldPersist=!0)}),br(this,"persist",async()=>{await this.core.storage.setItem(this.storageKey,Array.from(this.events.values())),this.shouldPersist=!1}),br(this,"restore",async()=>{try{const s=await this.core.storage.getItem(this.storageKey)||[];if(!s.length)return;s.forEach(n=>{this.events.set(n.eventId,Tc(Tc({},n),this.setMethods(n.eventId)))})}catch(s){this.logger.warn(s)}}),br(this,"submit",async()=>{if(!this.telemetryEnabled||this.events.size===0)return;const s=[];for(const[n,o]of this.events)o.props.type&&s.push(o);if(s.length!==0)try{if((await this.sendEvent(s)).ok)for(const n of s)this.events.delete(n.eventId),this.shouldPersist=!0}catch(n){this.logger.warn(n)}}),br(this,"sendEvent",async s=>{const n=this.getAppDomain()?"":"&sp=desktop";return await fetch(`${Yz}?projectId=${this.core.projectId}&st=events_sdk&sv=js-${zp}${n}`,{method:"POST",body:JSON.stringify(s)})}),br(this,"getAppDomain",()=>Av().url),this.logger=qe(t,this.context),this.telemetryEnabled=i,i?this.restore().then(async()=>{await this.submit(),this.setEventListeners()}):this.persist()}get storageKey(){return this.storagePrefix+this.storageVersion+this.core.customStoragePrefix+"//"+this.context}};var u8=Object.defineProperty,Sm=Object.getOwnPropertySymbols,l8=Object.prototype.hasOwnProperty,h8=Object.prototype.propertyIsEnumerable,Bp=(r,e,t)=>e in r?u8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,jm=(r,e)=>{for(var t in e||(e={}))l8.call(e,t)&&Bp(r,t,e[t]);if(Sm)for(var t of Sm(e))h8.call(e,t)&&Bp(r,t,e[t]);return r},gt=(r,e,t)=>Bp(r,typeof e!="symbol"?e+"":e,t);let d8=class AI extends H3{constructor(e){var t;super(e),gt(this,"protocol",lI),gt(this,"version",hI),gt(this,"name",Op),gt(this,"relayUrl"),gt(this,"projectId"),gt(this,"customStoragePrefix"),gt(this,"events",new wr.EventEmitter),gt(this,"logger"),gt(this,"heartbeat"),gt(this,"relayer"),gt(this,"crypto"),gt(this,"storage"),gt(this,"history"),gt(this,"expirer"),gt(this,"pairing"),gt(this,"verify"),gt(this,"echoClient"),gt(this,"linkModeSupportedApps"),gt(this,"eventClient"),gt(this,"initialized",!1),gt(this,"logChunkController"),gt(this,"on",(o,a)=>this.events.on(o,a)),gt(this,"once",(o,a)=>this.events.once(o,a)),gt(this,"off",(o,a)=>this.events.off(o,a)),gt(this,"removeListener",(o,a)=>this.events.removeListener(o,a)),gt(this,"dispatchEnvelope",({topic:o,message:a,sessionExists:u})=>{if(!o||!a)return;const c={topic:o,message:a,publishedAt:Date.now(),transportType:It.link_mode};this.relayer.onLinkMessageEvent(c,{sessionExists:u})}),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||fI,this.customStoragePrefix=e!=null&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const i=Hs({level:typeof e?.logger=="string"&&e.logger?e.logger:lz.logger,name:Op}),{logger:s,chunkLoggerController:n}=xg({opts:i,maxSizeInBytes:e?.maxLogBlobSizeInBytes,loggerOverride:e?.logger});this.logChunkController=n,(t=this.logChunkController)!=null&&t.downloadLogsBlobInBrowser&&(window.downloadLogsBlobInBrowser=async()=>{var o,a;(o=this.logChunkController)!=null&&o.downloadLogsBlobInBrowser&&((a=this.logChunkController)==null||a.downloadLogsBlobInBrowser({clientId:await this.crypto.getClientId()}))}),this.logger=qe(s,this.name),this.heartbeat=new pN,this.crypto=new m6(this,this.logger,e?.keychain),this.history=new H6(this,this.logger),this.expirer=new J6(this,this.logger),this.storage=e!=null&&e.storage?e.storage:new wN(jm(jm({},hz),e?.storageOptions)),this.relayer=new $6({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new W6(this,this.logger),this.verify=new t8(this,this.logger,this.storage),this.echoClient=new s8(this.projectId||"",this.logger),this.linkModeSupportedApps=[],this.eventClient=new c8(this,this.logger,e?.telemetryEnabled)}static async init(e){const t=new AI(e);await t.initialize();const i=await t.crypto.getClientId();return await t.storage.setItem(Dz,i),t}get context(){return dt(this.logger)}async start(){this.initialized||await this.initialize()}async getLogsBlob(){var e;return(e=this.logChunkController)==null?void 0:e.logsToBlob({clientId:await this.crypto.getClientId()})}async addLinkModeSupportedApp(e){this.linkModeSupportedApps.includes(e)||(this.linkModeSupportedApps.push(e),await this.storage.setItem(fm,this.linkModeSupportedApps))}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.linkModeSupportedApps=await this.storage.getItem(fm)||[],this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}};const f8=d8;var p8=Object.defineProperty,g8=(r,e,t)=>e in r?p8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,xm=(r,e,t)=>g8(r,typeof e!="symbol"?e+"":e,t);let y8=class{constructor(e){this.opts=e,xm(this,"protocol","wc"),xm(this,"version",2)}},w8=class{constructor(e){this.client=e}};const EI="wc",TI=2,SI="client",Kg=`${EI}@${TI}:${SI}:`,Af={name:SI,logger:"error"},Cm="WALLETCONNECT_DEEPLINK_CHOICE",m8="proposal",_m="Proposal expired",b8="session",Lo=Y.SEVEN_DAYS,M8="engine",Mr={wc_sessionPropose:{req:{ttl:Y.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1101},reject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1120},autoReject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1121}},wc_sessionSettle:{req:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1104},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1106},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:Y.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:Y.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1112},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1114},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1115}},wc_sessionAuthenticate:{req:{ttl:Y.ONE_HOUR,prompt:!0,tag:1116},res:{ttl:Y.ONE_HOUR,prompt:!1,tag:1117},reject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1118},autoReject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1119}}},Ef={min:Y.FIVE_MINUTES,max:Y.SEVEN_DAYS},ws={idle:"IDLE",active:"ACTIVE"},Om={eth_sendTransaction:{key:""},eth_sendRawTransaction:{key:""},wallet_sendCalls:{key:""},solana_signTransaction:{key:"signature"},solana_signAllTransactions:{key:"transactions"},solana_signAndSendTransaction:{key:"signature"}},N8="request",v8=["wc_sessionPropose","wc_sessionRequest","wc_authRequest","wc_sessionAuthenticate"],I8="wc",D8="auth",A8="authKeys",E8="pairingTopics",T8="requests",id=`${I8}@${1.5}:${D8}:`,hh=`${id}:PUB_KEY`;var S8=Object.defineProperty,j8=Object.defineProperties,x8=Object.getOwnPropertyDescriptors,zm=Object.getOwnPropertySymbols,C8=Object.prototype.hasOwnProperty,_8=Object.prototype.propertyIsEnumerable,Yp=(r,e,t)=>e in r?S8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ft=(r,e)=>{for(var t in e||(e={}))C8.call(e,t)&&Yp(r,t,e[t]);if(zm)for(var t of zm(e))_8.call(e,t)&&Yp(r,t,e[t]);return r},ti=(r,e)=>j8(r,x8(e)),G=(r,e,t)=>Yp(r,typeof e!="symbol"?e+"":e,t);let O8=class extends w8{constructor(e){super(e),G(this,"name",M8),G(this,"events",new Fa),G(this,"initialized",!1),G(this,"requestQueue",{state:ws.idle,queue:[]}),G(this,"sessionRequestQueue",{state:ws.idle,queue:[]}),G(this,"requestQueueDelay",Y.ONE_SECOND),G(this,"expectedPairingMethodMap",new Map),G(this,"recentlyDeletedMap",new Map),G(this,"recentlyDeletedLimit",200),G(this,"relayMessageCache",[]),G(this,"pendingSessions",new Map),G(this,"init",async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.registerPairingEvents(),await this.registerLinkModeListeners(),this.client.core.pairing.register({methods:Object.keys(Mr)}),this.initialized=!0,setTimeout(()=>{this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()},Y.toMiliseconds(this.requestQueueDelay)))}),G(this,"connect",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();const i=ti(Ft({},t),{requiredNamespaces:t.requiredNamespaces||{},optionalNamespaces:t.optionalNamespaces||{}});await this.isValidConnect(i);const{pairingTopic:s,requiredNamespaces:n,optionalNamespaces:o,sessionProperties:a,relays:u}=i;let c=s,l,h=!1;try{if(c){const _=this.client.core.pairing.pairings.get(c);this.client.logger.warn("connect() with existing pairing topic is deprecated and will be removed in the next major release."),h=_.active}}catch(_){throw this.client.logger.error(`connect() -> pairing.get(${c}) failed`),_}if(!c||!h){const{topic:_,uri:S}=await this.client.core.pairing.create();c=_,l=S}if(!c){const{message:_}=X("NO_MATCHING_KEY",`connect() pairing topic: ${c}`);throw new Error(_)}const f=await this.client.core.crypto.generateKeyPair(),w=Mr.wc_sessionPropose.req.ttl||Y.FIVE_MINUTES,g=dr(w),m=ti(Ft({requiredNamespaces:n,optionalNamespaces:o,relays:u??[{protocol:dI}],proposer:{publicKey:f,metadata:this.client.metadata},expiryTimestamp:g,pairingTopic:c},a&&{sessionProperties:a}),{id:Dr()}),E=Qe("session_connect",m.id),{reject:A,resolve:D,done:O}=Vn(w,_m),C=({id:_})=>{_===m.id&&(this.client.events.off("proposal_expire",C),this.pendingSessions.delete(m.id),this.events.emit(E,{error:{message:_m,code:0}}))};return this.client.events.on("proposal_expire",C),this.events.once(E,({error:_,session:S})=>{this.client.events.off("proposal_expire",C),_?A(_):S&&D(S)}),await this.sendRequest({topic:c,method:"wc_sessionPropose",params:m,throwOnFailedPublish:!0,clientRpcId:m.id}),await this.setProposal(m.id,m),{uri:l,approval:O}}),G(this,"pair",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{return await this.client.core.pairing.pair(t)}catch(i){throw this.client.logger.error("pair() failed"),i}}),G(this,"approve",async t=>{var i,s,n;const o=this.client.core.eventClient.createEvent({properties:{topic:(i=t?.id)==null?void 0:i.toString(),trace:[Ki.session_approve_started]}});try{this.isInitialized(),await this.confirmOnlineStateOrThrow()}catch(k){throw o.setError($n.no_internet_connection),k}try{await this.isValidProposalId(t?.id)}catch(k){throw this.client.logger.error(`approve() -> proposal.get(${t?.id}) failed`),o.setError($n.proposal_not_found),k}try{await this.isValidApprove(t)}catch(k){throw this.client.logger.error("approve() -> isValidApprove() failed"),o.setError($n.session_approve_namespace_validation_failure),k}const{id:a,relayProtocol:u,namespaces:c,sessionProperties:l,sessionConfig:h}=t,f=this.client.proposal.get(a);this.client.core.eventClient.deleteEvent({eventId:o.eventId});const{pairingTopic:w,proposer:g,requiredNamespaces:m,optionalNamespaces:E}=f;let A=(s=this.client.core.eventClient)==null?void 0:s.getEvent({topic:w});A||(A=(n=this.client.core.eventClient)==null?void 0:n.createEvent({type:Ki.session_approve_started,properties:{topic:w,trace:[Ki.session_approve_started,Ki.session_namespaces_validation_success]}}));const D=await this.client.core.crypto.generateKeyPair(),O=g.publicKey,C=await this.client.core.crypto.generateSharedKey(D,O),_=Ft(Ft({relay:{protocol:u??"irn"},namespaces:c,controller:{publicKey:D,metadata:this.client.metadata},expiry:dr(Lo)},l&&{sessionProperties:l}),h&&{sessionConfig:h}),S=It.relay;A.addTrace(Ki.subscribing_session_topic);try{await this.client.core.relayer.subscribe(C,{transportType:S})}catch(k){throw A.setError($n.subscribe_session_topic_failure),k}A.addTrace(Ki.subscribe_session_topic_success);const L=ti(Ft({},_),{topic:C,requiredNamespaces:m,optionalNamespaces:E,pairingTopic:w,acknowledged:!1,self:_.controller,peer:{publicKey:g.publicKey,metadata:g.metadata},controller:D,transportType:It.relay});await this.client.session.set(C,L),A.addTrace(Ki.store_session);try{A.addTrace(Ki.publishing_session_settle),await this.sendRequest({topic:C,method:"wc_sessionSettle",params:_,throwOnFailedPublish:!0}).catch(k=>{throw A?.setError($n.session_settle_publish_failure),k}),A.addTrace(Ki.session_settle_publish_success),A.addTrace(Ki.publishing_session_approve),await this.sendResult({id:a,topic:w,result:{relay:{protocol:u??"irn"},responderPublicKey:D},throwOnFailedPublish:!0}).catch(k=>{throw A?.setError($n.session_approve_publish_failure),k}),A.addTrace(Ki.session_approve_publish_success)}catch(k){throw this.client.logger.error(k),this.client.session.delete(C,st("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(C),k}return this.client.core.eventClient.deleteEvent({eventId:A.eventId}),await this.client.core.pairing.updateMetadata({topic:w,metadata:g.metadata}),await this.client.proposal.delete(a,st("USER_DISCONNECTED")),await this.client.core.pairing.activate({topic:w}),await this.setExpiry(C,dr(Lo)),{topic:C,acknowledged:()=>Promise.resolve(this.client.session.get(C))}}),G(this,"reject",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidReject(t)}catch(o){throw this.client.logger.error("reject() -> isValidReject() failed"),o}const{id:i,reason:s}=t;let n;try{n=this.client.proposal.get(i).pairingTopic}catch(o){throw this.client.logger.error(`reject() -> proposal.get(${i}) failed`),o}n&&(await this.sendError({id:i,topic:n,error:s,rpcOpts:Mr.wc_sessionPropose.reject}),await this.client.proposal.delete(i,st("USER_DISCONNECTED")))}),G(this,"update",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidUpdate(t)}catch(h){throw this.client.logger.error("update() -> isValidUpdate() failed"),h}const{topic:i,namespaces:s}=t,{done:n,resolve:o,reject:a}=Vn(),u=Dr(),c=Ii().toString(),l=this.client.session.get(i).namespaces;return this.events.once(Qe("session_update",u),({error:h})=>{h?a(h):o()}),await this.client.session.update(i,{namespaces:s}),await this.sendRequest({topic:i,method:"wc_sessionUpdate",params:{namespaces:s},throwOnFailedPublish:!0,clientRpcId:u,relayRpcId:c}).catch(h=>{this.client.logger.error(h),this.client.session.update(i,{namespaces:l}),a(h)}),{acknowledged:n}}),G(this,"extend",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidExtend(t)}catch(u){throw this.client.logger.error("extend() -> isValidExtend() failed"),u}const{topic:i}=t,s=Dr(),{done:n,resolve:o,reject:a}=Vn();return this.events.once(Qe("session_extend",s),({error:u})=>{u?a(u):o()}),await this.setExpiry(i,dr(Lo)),this.sendRequest({topic:i,method:"wc_sessionExtend",params:{},clientRpcId:s,throwOnFailedPublish:!0}).catch(u=>{a(u)}),{acknowledged:n}}),G(this,"request",async t=>{this.isInitialized();try{await this.isValidRequest(t)}catch(A){throw this.client.logger.error("request() -> isValidRequest() failed"),A}const{chainId:i,request:s,topic:n,expiry:o=Mr.wc_sessionRequest.req.ttl}=t,a=this.client.session.get(n);a?.transportType===It.relay&&await this.confirmOnlineStateOrThrow();const u=Dr(),c=Ii().toString(),{done:l,resolve:h,reject:f}=Vn(o,"Request expired. Please try again.");this.events.once(Qe("session_request",u),({error:A,result:D})=>{A?f(A):h(D)});const w="wc_sessionRequest",g=this.getAppLinkIfEnabled(a.peer.metadata,a.transportType);if(g)return await this.sendRequest({clientRpcId:u,relayRpcId:c,topic:n,method:w,params:{request:ti(Ft({},s),{expiryTimestamp:dr(o)}),chainId:i},expiry:o,throwOnFailedPublish:!0,appLink:g}).catch(A=>f(A)),this.client.events.emit("session_request_sent",{topic:n,request:s,chainId:i,id:u}),await l();const m={request:ti(Ft({},s),{expiryTimestamp:dr(o)}),chainId:i},E=this.shouldSetTVF(w,m);return await Promise.all([new Promise(async A=>{await this.sendRequest(Ft({clientRpcId:u,relayRpcId:c,topic:n,method:w,params:m,expiry:o,throwOnFailedPublish:!0},E&&{tvf:this.getTVFParams(u,m)})).catch(D=>f(D)),this.client.events.emit("session_request_sent",{topic:n,request:s,chainId:i,id:u}),A()}),new Promise(async A=>{var D;if(!((D=a.sessionConfig)!=null&&D.disableDeepLink)){const O=await _x(this.client.core.storage,Cm);await jx({id:u,topic:n,wcDeepLink:O})}A()}),l()]).then(A=>A[2])}),G(this,"respond",async t=>{this.isInitialized(),await this.isValidRespond(t);const{topic:i,response:s}=t,{id:n}=s,o=this.client.session.get(i);o.transportType===It.relay&&await this.confirmOnlineStateOrThrow();const a=this.getAppLinkIfEnabled(o.peer.metadata,o.transportType);yr(s)?await this.sendResult({id:n,topic:i,result:s.result,throwOnFailedPublish:!0,appLink:a}):rr(s)&&await this.sendError({id:n,topic:i,error:s.error,appLink:a}),this.cleanupAfterResponse(t)}),G(this,"ping",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidPing(t)}catch(s){throw this.client.logger.error("ping() -> isValidPing() failed"),s}const{topic:i}=t;if(this.client.session.keys.includes(i)){const s=Dr(),n=Ii().toString(),{done:o,resolve:a,reject:u}=Vn();this.events.once(Qe("session_ping",s),({error:c})=>{c?u(c):a()}),await Promise.all([this.sendRequest({topic:i,method:"wc_sessionPing",params:{},throwOnFailedPublish:!0,clientRpcId:s,relayRpcId:n}),o()])}else this.client.core.pairing.pairings.keys.includes(i)&&(this.client.logger.warn("ping() on pairing topic is deprecated and will be removed in the next major release."),await this.client.core.pairing.ping({topic:i}))}),G(this,"emit",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidEmit(t);const{topic:i,event:s,chainId:n}=t,o=Ii().toString(),a=Dr();await this.sendRequest({topic:i,method:"wc_sessionEvent",params:{event:s,chainId:n},throwOnFailedPublish:!0,relayRpcId:o,clientRpcId:a})}),G(this,"disconnect",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidDisconnect(t);const{topic:i}=t;if(this.client.session.keys.includes(i))await this.sendRequest({topic:i,method:"wc_sessionDelete",params:st("USER_DISCONNECTED"),throwOnFailedPublish:!0}),await this.deleteSession({topic:i,emitEvent:!1});else if(this.client.core.pairing.pairings.keys.includes(i))await this.client.core.pairing.disconnect({topic:i});else{const{message:s}=X("MISMATCHED_TOPIC",`Session or pairing topic not found: ${i}`);throw new Error(s)}}),G(this,"find",t=>(this.isInitialized(),this.client.session.getAll().filter(i=>Y_(i,t)))),G(this,"getPendingSessionRequests",()=>this.client.pendingRequest.getAll()),G(this,"authenticate",async(t,i)=>{var s;this.isInitialized(),this.isValidAuthenticate(t);const n=i&&this.client.core.linkModeSupportedApps.includes(i)&&((s=this.client.metadata.redirect)==null?void 0:s.linkMode),o=n?It.link_mode:It.relay;o===It.relay&&await this.confirmOnlineStateOrThrow();const{chains:a,statement:u="",uri:c,domain:l,nonce:h,type:f,exp:w,nbf:g,methods:m=[],expiry:E}=t,A=[...t.resources||[]],{topic:D,uri:O}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"],transportType:o});this.client.logger.info({message:"Generated new pairing",pairing:{topic:D,uri:O}});const C=await this.client.core.crypto.generateKeyPair(),_=lh(C);if(await Promise.all([this.client.auth.authKeys.set(hh,{responseTopic:_,publicKey:C}),this.client.auth.pairingTopics.set(_,{topic:_,pairingTopic:D})]),await this.client.core.relayer.subscribe(_,{transportType:o}),this.client.logger.info(`sending request to new pairing topic: ${D}`),m.length>0){const{namespace:v}=Da(a[0]);let p=vC(v,"request",m);uh(A)&&(p=DC(p,A.pop())),A.push(p)}const S=E&&E>Mr.wc_sessionAuthenticate.req.ttl?E:Mr.wc_sessionAuthenticate.req.ttl,L={authPayload:{type:f??"caip122",chains:a,statement:u,aud:c,domain:l,version:"1",nonce:h,iat:new Date().toISOString(),exp:w,nbf:g,resources:A},requester:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:dr(S)},k={eip155:{chains:a,methods:[...new Set(["personal_sign",...m])],events:["chainChanged","accountsChanged"]}},z={requiredNamespaces:{},optionalNamespaces:k,relays:[{protocol:"irn"}],pairingTopic:D,proposer:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:dr(Mr.wc_sessionPropose.req.ttl),id:Dr()},{done:U,resolve:T,reject:d}=Vn(S,"Request expired"),y=Dr(),N=Qe("session_connect",z.id),b=Qe("session_request",y),M=async({error:v,session:p})=>{this.events.off(b,I),v?d(v):p&&T({session:p})},I=async v=>{var p,x,F;if(await this.deletePendingAuthRequest(y,{message:"fulfilled",code:0}),v.error){const te=st("WC_METHOD_UNSUPPORTED","wc_sessionAuthenticate");return v.error.code===te.code?void 0:(this.events.off(N,M),d(v.error.message))}await this.deleteProposal(z.id),this.events.off(N,M);const{cacaos:V,responder:Q}=v.result,W=[],K=[];for(const te of V){await jw({cacao:te,projectId:this.client.core.projectId})||(this.client.logger.error(te,"Signature verification failed"),d(st("SESSION_SETTLEMENT_FAILED","Signature verification failed")));const{p:le}=te,Mt=uh(le.resources),me=[Ip(le.iss)],ve=jh(le.iss);if(Mt){const Vt=xw(Mt),je=Cw(Mt);W.push(...Vt),me.push(...je)}for(const Vt of me)K.push(`${Vt}:${ve}`)}const se=await this.client.core.crypto.generateSharedKey(C,Q.publicKey);let oe;W.length>0&&(oe={topic:se,acknowledged:!0,self:{publicKey:C,metadata:this.client.metadata},peer:Q,controller:Q.publicKey,expiry:dr(Lo),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:D,namespaces:Gw([...new Set(W)],[...new Set(K)]),transportType:o},await this.client.core.relayer.subscribe(se,{transportType:o}),await this.client.session.set(se,oe),D&&await this.client.core.pairing.updateMetadata({topic:D,metadata:Q.metadata}),oe=this.client.session.get(se)),(p=this.client.metadata.redirect)!=null&&p.linkMode&&(x=Q.metadata.redirect)!=null&&x.linkMode&&(F=Q.metadata.redirect)!=null&&F.universal&&i&&(this.client.core.addLinkModeSupportedApp(Q.metadata.redirect.universal),this.client.session.update(se,{transportType:It.link_mode})),T({auths:V,session:oe})};this.events.once(N,M),this.events.once(b,I);let j;try{if(n){const v=Kr("wc_sessionAuthenticate",L,y);this.client.core.history.set(D,v);const p=await this.client.core.crypto.encode("",v,{type:Ju,encoding:vc});j=zl(i,D,p)}else await Promise.all([this.sendRequest({topic:D,method:"wc_sessionAuthenticate",params:L,expiry:t.expiry,throwOnFailedPublish:!0,clientRpcId:y}),this.sendRequest({topic:D,method:"wc_sessionPropose",params:z,expiry:Mr.wc_sessionPropose.req.ttl,throwOnFailedPublish:!0,clientRpcId:z.id})])}catch(v){throw this.events.off(N,M),this.events.off(b,I),v}return await this.setProposal(z.id,z),await this.setAuthRequest(y,{request:ti(Ft({},L),{verifyContext:{}}),pairingTopic:D,transportType:o}),{uri:j??O,response:U}}),G(this,"approveSessionAuthenticate",async t=>{const{id:i,auths:s}=t,n=this.client.core.eventClient.createEvent({properties:{topic:i.toString(),trace:[Fn.authenticated_session_approve_started]}});try{this.isInitialized()}catch(E){throw n.setError(Ac.no_internet_connection),E}const o=this.getPendingAuthRequest(i);if(!o)throw n.setError(Ac.authenticated_session_pending_request_not_found),new Error(`Could not find pending auth request with id ${i}`);const a=o.transportType||It.relay;a===It.relay&&await this.confirmOnlineStateOrThrow();const u=o.requester.publicKey,c=await this.client.core.crypto.generateKeyPair(),l=lh(u),h={type:Vs,receiverPublicKey:u,senderPublicKey:c},f=[],w=[];for(const E of s){if(!await jw({cacao:E,projectId:this.client.core.projectId})){n.setError(Ac.invalid_cacao);const _=st("SESSION_SETTLEMENT_FAILED","Signature verification failed");throw await this.sendError({id:i,topic:l,error:_,encodeOpts:h}),new Error(_.message)}n.addTrace(Fn.cacaos_verified);const{p:A}=E,D=uh(A.resources),O=[Ip(A.iss)],C=jh(A.iss);if(D){const _=xw(D),S=Cw(D);f.push(..._),O.push(...S)}for(const _ of O)w.push(`${_}:${C}`)}const g=await this.client.core.crypto.generateSharedKey(c,u);n.addTrace(Fn.create_authenticated_session_topic);let m;if(f?.length>0){m={topic:g,acknowledged:!0,self:{publicKey:c,metadata:this.client.metadata},peer:{publicKey:u,metadata:o.requester.metadata},controller:u,expiry:dr(Lo),authentication:s,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:o.pairingTopic,namespaces:Gw([...new Set(f)],[...new Set(w)]),transportType:a},n.addTrace(Fn.subscribing_authenticated_session_topic);try{await this.client.core.relayer.subscribe(g,{transportType:a})}catch(E){throw n.setError(Ac.subscribe_authenticated_session_topic_failure),E}n.addTrace(Fn.subscribe_authenticated_session_topic_success),await this.client.session.set(g,m),n.addTrace(Fn.store_authenticated_session),await this.client.core.pairing.updateMetadata({topic:o.pairingTopic,metadata:o.requester.metadata})}n.addTrace(Fn.publishing_authenticated_session_approve);try{await this.sendResult({topic:l,id:i,result:{cacaos:s,responder:{publicKey:c,metadata:this.client.metadata}},encodeOpts:h,throwOnFailedPublish:!0,appLink:this.getAppLinkIfEnabled(o.requester.metadata,a)})}catch(E){throw n.setError(Ac.authenticated_session_approve_publish_failure),E}return await this.client.auth.requests.delete(i,{message:"fulfilled",code:0}),await this.client.core.pairing.activate({topic:o.pairingTopic}),this.client.core.eventClient.deleteEvent({eventId:n.eventId}),{session:m}}),G(this,"rejectSessionAuthenticate",async t=>{this.isInitialized();const{id:i,reason:s}=t,n=this.getPendingAuthRequest(i);if(!n)throw new Error(`Could not find pending auth request with id ${i}`);n.transportType===It.relay&&await this.confirmOnlineStateOrThrow();const o=n.requester.publicKey,a=await this.client.core.crypto.generateKeyPair(),u=lh(o),c={type:Vs,receiverPublicKey:o,senderPublicKey:a};await this.sendError({id:i,topic:u,error:s,encodeOpts:c,rpcOpts:Mr.wc_sessionAuthenticate.reject,appLink:this.getAppLinkIfEnabled(n.requester.metadata,n.transportType)}),await this.client.auth.requests.delete(i,{message:"rejected",code:0}),await this.client.proposal.delete(i,st("USER_DISCONNECTED"))}),G(this,"formatAuthMessage",t=>{this.isInitialized();const{request:i,iss:s}=t;return Rv(i,s)}),G(this,"processRelayMessageCache",()=>{setTimeout(async()=>{if(this.relayMessageCache.length!==0)for(;this.relayMessageCache.length>0;)try{const t=this.relayMessageCache.shift();t&&await this.onRelayMessage(t)}catch(t){this.client.logger.error(t)}},50)}),G(this,"cleanupDuplicatePairings",async t=>{if(t.pairingTopic)try{const i=this.client.core.pairing.pairings.get(t.pairingTopic),s=this.client.core.pairing.pairings.getAll().filter(n=>{var o,a;return((o=n.peerMetadata)==null?void 0:o.url)&&((a=n.peerMetadata)==null?void 0:a.url)===t.peer.metadata.url&&n.topic&&n.topic!==i.topic});if(s.length===0)return;this.client.logger.info(`Cleaning up ${s.length} duplicate pairing(s)`),await Promise.all(s.map(n=>this.client.core.pairing.disconnect({topic:n.topic}))),this.client.logger.info("Duplicate pairings clean up finished")}catch(i){this.client.logger.error(i)}}),G(this,"deleteSession",async t=>{var i;const{topic:s,expirerHasDeleted:n=!1,emitEvent:o=!0,id:a=0}=t,{self:u}=this.client.session.get(s);await this.client.core.relayer.unsubscribe(s),await this.client.session.delete(s,st("USER_DISCONNECTED")),this.addToRecentlyDeleted(s,"session"),this.client.core.crypto.keychain.has(u.publicKey)&&await this.client.core.crypto.deleteKeyPair(u.publicKey),this.client.core.crypto.keychain.has(s)&&await this.client.core.crypto.deleteSymKey(s),n||this.client.core.expirer.del(s),this.client.core.storage.removeItem(Cm).catch(c=>this.client.logger.warn(c)),this.getPendingSessionRequests().forEach(c=>{c.topic===s&&this.deletePendingSessionRequest(c.id,st("USER_DISCONNECTED"))}),s===((i=this.sessionRequestQueue.queue[0])==null?void 0:i.topic)&&(this.sessionRequestQueue.state=ws.idle),o&&this.client.events.emit("session_delete",{id:a,topic:s})}),G(this,"deleteProposal",async(t,i)=>{if(i)try{const s=this.client.proposal.get(t);this.client.core.eventClient.getEvent({topic:s.pairingTopic})?.setError($n.proposal_expired)}catch{}await Promise.all([this.client.proposal.delete(t,st("USER_DISCONNECTED")),i?Promise.resolve():this.client.core.expirer.del(t)]),this.addToRecentlyDeleted(t,"proposal")}),G(this,"deletePendingSessionRequest",async(t,i,s=!1)=>{await Promise.all([this.client.pendingRequest.delete(t,i),s?Promise.resolve():this.client.core.expirer.del(t)]),this.addToRecentlyDeleted(t,"request"),this.sessionRequestQueue.queue=this.sessionRequestQueue.queue.filter(n=>n.id!==t),s&&(this.sessionRequestQueue.state=ws.idle,this.client.events.emit("session_request_expire",{id:t}))}),G(this,"deletePendingAuthRequest",async(t,i,s=!1)=>{await Promise.all([this.client.auth.requests.delete(t,i),s?Promise.resolve():this.client.core.expirer.del(t)])}),G(this,"setExpiry",async(t,i)=>{this.client.session.keys.includes(t)&&(this.client.core.expirer.set(t,i),await this.client.session.update(t,{expiry:i}))}),G(this,"setProposal",async(t,i)=>{this.client.core.expirer.set(t,dr(Mr.wc_sessionPropose.req.ttl)),await this.client.proposal.set(t,i)}),G(this,"setAuthRequest",async(t,i)=>{const{request:s,pairingTopic:n,transportType:o=It.relay}=i;this.client.core.expirer.set(t,s.expiryTimestamp),await this.client.auth.requests.set(t,{authPayload:s.authPayload,requester:s.requester,expiryTimestamp:s.expiryTimestamp,id:t,pairingTopic:n,verifyContext:s.verifyContext,transportType:o})}),G(this,"setPendingSessionRequest",async t=>{const{id:i,topic:s,params:n,verifyContext:o}=t,a=n.request.expiryTimestamp||dr(Mr.wc_sessionRequest.req.ttl);this.client.core.expirer.set(i,a),await this.client.pendingRequest.set(i,{id:i,topic:s,params:n,verifyContext:o})}),G(this,"sendRequest",async t=>{const{topic:i,method:s,params:n,expiry:o,relayRpcId:a,clientRpcId:u,throwOnFailedPublish:c,appLink:l,tvf:h}=t,f=Kr(s,n,u);let w;const g=!!l;try{const A=g?vc:mn;w=await this.client.core.crypto.encode(i,f,{encoding:A})}catch(A){throw await this.cleanup(),this.client.logger.error(`sendRequest() -> core.crypto.encode() for topic ${i} failed`),A}let m;if(v8.includes(s)){const A=Qs(JSON.stringify(f)),D=Qs(w);m=await this.client.core.verify.register({id:D,decryptedId:A})}const E=Mr[s].req;if(E.attestation=m,o&&(E.ttl=o),a&&(E.id=a),this.client.core.history.set(i,f),g){const A=zl(l,i,w);await global.Linking.openURL(A,this.client.name)}else{const A=Mr[s].req;o&&(A.ttl=o),a&&(A.id=a),A.tvf=ti(Ft({},h),{correlationId:f.id}),c?(A.internal=ti(Ft({},A.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(i,w,A)):this.client.core.relayer.publish(i,w,A).catch(D=>this.client.logger.error(D))}return f.id}),G(this,"sendResult",async t=>{const{id:i,topic:s,result:n,throwOnFailedPublish:o,encodeOpts:a,appLink:u}=t,c=Cn(i,n);let l;const h=u&&typeof(global==null?void 0:global.Linking)<"u";try{const g=h?vc:mn;l=await this.client.core.crypto.encode(s,c,ti(Ft({},a||{}),{encoding:g}))}catch(g){throw await this.cleanup(),this.client.logger.error(`sendResult() -> core.crypto.encode() for topic ${s} failed`),g}let f,w;try{f=await this.client.core.history.get(s,i);const g=f.request;try{this.shouldSetTVF(g.method,g.params)&&(w=this.getTVFParams(i,g.params,n))}catch(m){this.client.logger.warn("sendResult() -> getTVFParams() failed",m)}}catch(g){throw this.client.logger.error(`sendResult() -> history.get(${s}, ${i}) failed`),g}if(h){const g=zl(u,s,l);await global.Linking.openURL(g,this.client.name)}else{const g=f.request.method,m=Mr[g].res;m.tvf=ti(Ft({},w),{correlationId:i}),o?(m.internal=ti(Ft({},m.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(s,l,m)):this.client.core.relayer.publish(s,l,m).catch(E=>this.client.logger.error(E))}await this.client.core.history.resolve(c)}),G(this,"sendError",async t=>{const{id:i,topic:s,error:n,encodeOpts:o,rpcOpts:a,appLink:u}=t,c=Wa(i,n);let l;const h=u&&typeof(global==null?void 0:global.Linking)<"u";try{const w=h?vc:mn;l=await this.client.core.crypto.encode(s,c,ti(Ft({},o||{}),{encoding:w}))}catch(w){throw await this.cleanup(),this.client.logger.error(`sendError() -> core.crypto.encode() for topic ${s} failed`),w}let f;try{f=await this.client.core.history.get(s,i)}catch(w){throw this.client.logger.error(`sendError() -> history.get(${s}, ${i}) failed`),w}if(h){const w=zl(u,s,l);await global.Linking.openURL(w,this.client.name)}else{const w=f.request.method,g=a||Mr[w].res;this.client.core.relayer.publish(s,l,g)}await this.client.core.history.resolve(c)}),G(this,"cleanup",async()=>{const t=[],i=[];this.client.session.getAll().forEach(s=>{let n=!1;dn(s.expiry)&&(n=!0),this.client.core.crypto.keychain.has(s.topic)||(n=!0),n&&t.push(s.topic)}),this.client.proposal.getAll().forEach(s=>{dn(s.expiryTimestamp)&&i.push(s.id)}),await Promise.all([...t.map(s=>this.deleteSession({topic:s})),...i.map(s=>this.deleteProposal(s))])}),G(this,"onRelayEventRequest",async t=>{this.requestQueue.queue.push(t),await this.processRequestsQueue()}),G(this,"processRequestsQueue",async()=>{if(this.requestQueue.state===ws.active){this.client.logger.info("Request queue already active, skipping...");return}for(this.client.logger.info(`Request queue starting with ${this.requestQueue.queue.length} requests`);this.requestQueue.queue.length>0;){this.requestQueue.state=ws.active;const t=this.requestQueue.queue.shift();if(t)try{await this.processRequest(t)}catch(i){this.client.logger.warn(i)}}this.requestQueue.state=ws.idle}),G(this,"processRequest",async t=>{const{topic:i,payload:s,attestation:n,transportType:o,encryptedId:a}=t,u=s.method;if(!this.shouldIgnorePairingRequest({topic:i,requestMethod:u}))switch(u){case"wc_sessionPropose":return await this.onSessionProposeRequest({topic:i,payload:s,attestation:n,encryptedId:a});case"wc_sessionSettle":return await this.onSessionSettleRequest(i,s);case"wc_sessionUpdate":return await this.onSessionUpdateRequest(i,s);case"wc_sessionExtend":return await this.onSessionExtendRequest(i,s);case"wc_sessionPing":return await this.onSessionPingRequest(i,s);case"wc_sessionDelete":return await this.onSessionDeleteRequest(i,s);case"wc_sessionRequest":return await this.onSessionRequest({topic:i,payload:s,attestation:n,encryptedId:a,transportType:o});case"wc_sessionEvent":return await this.onSessionEventRequest(i,s);case"wc_sessionAuthenticate":return await this.onSessionAuthenticateRequest({topic:i,payload:s,attestation:n,encryptedId:a,transportType:o});default:return this.client.logger.info(`Unsupported request method ${u}`)}}),G(this,"onRelayEventResponse",async t=>{const{topic:i,payload:s,transportType:n}=t,o=(await this.client.core.history.get(i,s.id)).request.method;switch(o){case"wc_sessionPropose":return this.onSessionProposeResponse(i,s,n);case"wc_sessionSettle":return this.onSessionSettleResponse(i,s);case"wc_sessionUpdate":return this.onSessionUpdateResponse(i,s);case"wc_sessionExtend":return this.onSessionExtendResponse(i,s);case"wc_sessionPing":return this.onSessionPingResponse(i,s);case"wc_sessionRequest":return this.onSessionRequestResponse(i,s);case"wc_sessionAuthenticate":return this.onSessionAuthenticateResponse(i,s);default:return this.client.logger.info(`Unsupported response method ${o}`)}}),G(this,"onRelayEventUnknownPayload",t=>{const{topic:i}=t,{message:s}=X("MISSING_OR_INVALID",`Decoded payload on topic ${i} is not identifiable as a JSON-RPC request or a response.`);throw new Error(s)}),G(this,"shouldIgnorePairingRequest",t=>{const{topic:i,requestMethod:s}=t,n=this.expectedPairingMethodMap.get(i);return!n||n.includes(s)?!1:!!(n.includes("wc_sessionAuthenticate")&&this.client.events.listenerCount("session_authenticate")>0)}),G(this,"onSessionProposeRequest",async t=>{const{topic:i,payload:s,attestation:n,encryptedId:o}=t,{params:a,id:u}=s;try{const c=this.client.core.eventClient.getEvent({topic:i});this.client.events.listenerCount("session_proposal")===0&&(console.warn("No listener for session_proposal event"),c?.setError(Bs.proposal_listener_not_found)),this.isValidConnect(Ft({},s.params));const l=a.expiryTimestamp||dr(Mr.wc_sessionPropose.req.ttl),h=Ft({id:u,pairingTopic:i,expiryTimestamp:l},a);await this.setProposal(u,h);const f=await this.getVerifyContext({attestationId:n,hash:Qs(JSON.stringify(s)),encryptedId:o,metadata:h.proposer.metadata});c?.addTrace(vs.emit_session_proposal),this.client.events.emit("session_proposal",{id:u,params:h,verifyContext:f})}catch(c){await this.sendError({id:u,topic:i,error:c,rpcOpts:Mr.wc_sessionPropose.autoReject}),this.client.logger.error(c)}}),G(this,"onSessionProposeResponse",async(t,i,s)=>{const{id:n}=i;if(yr(i)){const{result:o}=i;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:o});const a=this.client.proposal.get(n);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:a});const u=a.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:u});const c=o.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:c});const l=await this.client.core.crypto.generateSharedKey(u,c);this.pendingSessions.set(n,{sessionTopic:l,pairingTopic:t,proposalId:n,publicKey:u});const h=await this.client.core.relayer.subscribe(l,{transportType:s});this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:h}),await this.client.core.pairing.activate({topic:t})}else if(rr(i)){await this.client.proposal.delete(n,st("USER_DISCONNECTED"));const o=Qe("session_connect",n);if(this.events.listenerCount(o)===0)throw new Error(`emitting ${o} without any listeners, 954`);this.events.emit(o,{error:i.error})}}),G(this,"onSessionSettleRequest",async(t,i)=>{const{id:s,params:n}=i;try{this.isValidSessionSettleRequest(n);const{relay:o,controller:a,expiry:u,namespaces:c,sessionProperties:l,sessionConfig:h}=i.params,f=[...this.pendingSessions.values()].find(m=>m.sessionTopic===t);if(!f)return this.client.logger.error(`Pending session not found for topic ${t}`);const w=this.client.proposal.get(f.proposalId),g=ti(Ft(Ft({topic:t,relay:o,expiry:u,namespaces:c,acknowledged:!0,pairingTopic:f.pairingTopic,requiredNamespaces:w.requiredNamespaces,optionalNamespaces:w.optionalNamespaces,controller:a.publicKey,self:{publicKey:f.publicKey,metadata:this.client.metadata},peer:{publicKey:a.publicKey,metadata:a.metadata}},l&&{sessionProperties:l}),h&&{sessionConfig:h}),{transportType:It.relay});await this.client.session.set(g.topic,g),await this.setExpiry(g.topic,g.expiry),await this.client.core.pairing.updateMetadata({topic:f.pairingTopic,metadata:g.peer.metadata}),this.client.events.emit("session_connect",{session:g}),this.events.emit(Qe("session_connect",f.proposalId),{session:g}),this.pendingSessions.delete(f.proposalId),this.deleteProposal(f.proposalId,!1),this.cleanupDuplicatePairings(g),await this.sendResult({id:i.id,topic:t,result:!0,throwOnFailedPublish:!0})}catch(o){await this.sendError({id:s,topic:t,error:o}),this.client.logger.error(o)}}),G(this,"onSessionSettleResponse",async(t,i)=>{const{id:s}=i;yr(i)?(await this.client.session.update(t,{acknowledged:!0}),this.events.emit(Qe("session_approve",s),{})):rr(i)&&(await this.client.session.delete(t,st("USER_DISCONNECTED")),this.events.emit(Qe("session_approve",s),{error:i.error}))}),G(this,"onSessionUpdateRequest",async(t,i)=>{const{params:s,id:n}=i;try{const o=`${t}_session_update`,a=Ic.get(o);if(a&&this.isRequestOutOfSync(a,n)){this.client.logger.warn(`Discarding out of sync request - ${n}`),this.sendError({id:n,topic:t,error:st("INVALID_UPDATE_REQUEST")});return}this.isValidUpdate(Ft({topic:t},s));try{Ic.set(o,n),await this.client.session.update(t,{namespaces:s.namespaces}),await this.sendResult({id:n,topic:t,result:!0,throwOnFailedPublish:!0})}catch(u){throw Ic.delete(o),u}this.client.events.emit("session_update",{id:n,topic:t,params:s})}catch(o){await this.sendError({id:n,topic:t,error:o}),this.client.logger.error(o)}}),G(this,"isRequestOutOfSync",(t,i)=>i.toString().slice(0,-3)<t.toString().slice(0,-3)),G(this,"onSessionUpdateResponse",(t,i)=>{const{id:s}=i,n=Qe("session_update",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);yr(i)?this.events.emit(Qe("session_update",s),{}):rr(i)&&this.events.emit(Qe("session_update",s),{error:i.error})}),G(this,"onSessionExtendRequest",async(t,i)=>{const{id:s}=i;try{this.isValidExtend({topic:t}),await this.setExpiry(t,dr(Lo)),await this.sendResult({id:s,topic:t,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_extend",{id:s,topic:t})}catch(n){await this.sendError({id:s,topic:t,error:n}),this.client.logger.error(n)}}),G(this,"onSessionExtendResponse",(t,i)=>{const{id:s}=i,n=Qe("session_extend",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);yr(i)?this.events.emit(Qe("session_extend",s),{}):rr(i)&&this.events.emit(Qe("session_extend",s),{error:i.error})}),G(this,"onSessionPingRequest",async(t,i)=>{const{id:s}=i;try{this.isValidPing({topic:t}),await this.sendResult({id:s,topic:t,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_ping",{id:s,topic:t})}catch(n){await this.sendError({id:s,topic:t,error:n}),this.client.logger.error(n)}}),G(this,"onSessionPingResponse",(t,i)=>{const{id:s}=i,n=Qe("session_ping",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);setTimeout(()=>{yr(i)?this.events.emit(Qe("session_ping",s),{}):rr(i)&&this.events.emit(Qe("session_ping",s),{error:i.error})},500)}),G(this,"onSessionDeleteRequest",async(t,i)=>{const{id:s}=i;try{this.isValidDisconnect({topic:t,reason:i.params}),Promise.all([new Promise(n=>{this.client.core.relayer.once(Ar.publish,async()=>{n(await this.deleteSession({topic:t,id:s}))})}),this.sendResult({id:s,topic:t,result:!0,throwOnFailedPublish:!0}),this.cleanupPendingSentRequestsForTopic({topic:t,error:st("USER_DISCONNECTED")})]).catch(n=>this.client.logger.error(n))}catch(n){this.client.logger.error(n)}}),G(this,"onSessionRequest",async t=>{var i,s,n;const{topic:o,payload:a,attestation:u,encryptedId:c,transportType:l}=t,{id:h,params:f}=a;try{await this.isValidRequest(Ft({topic:o},f));const w=this.client.session.get(o),g=await this.getVerifyContext({attestationId:u,hash:Qs(JSON.stringify(Kr("wc_sessionRequest",f,h))),encryptedId:c,metadata:w.peer.metadata,transportType:l}),m={id:h,topic:o,params:f,verifyContext:g};await this.setPendingSessionRequest(m),l===It.link_mode&&(i=w.peer.metadata.redirect)!=null&&i.universal&&this.client.core.addLinkModeSupportedApp((s=w.peer.metadata.redirect)==null?void 0:s.universal),(n=this.client.signConfig)!=null&&n.disableRequestQueue?this.emitSessionRequest(m):(this.addSessionRequestToSessionRequestQueue(m),this.processSessionRequestQueue())}catch(w){await this.sendError({id:h,topic:o,error:w}),this.client.logger.error(w)}}),G(this,"onSessionRequestResponse",(t,i)=>{const{id:s}=i,n=Qe("session_request",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);yr(i)?this.events.emit(Qe("session_request",s),{result:i.result}):rr(i)&&this.events.emit(Qe("session_request",s),{error:i.error})}),G(this,"onSessionEventRequest",async(t,i)=>{const{id:s,params:n}=i;try{const o=`${t}_session_event_${n.event.name}`,a=Ic.get(o);if(a&&this.isRequestOutOfSync(a,s)){this.client.logger.info(`Discarding out of sync request - ${s}`);return}this.isValidEmit(Ft({topic:t},n)),this.client.events.emit("session_event",{id:s,topic:t,params:n}),Ic.set(o,s)}catch(o){await this.sendError({id:s,topic:t,error:o}),this.client.logger.error(o)}}),G(this,"onSessionAuthenticateResponse",(t,i)=>{const{id:s}=i;this.client.logger.trace({type:"method",method:"onSessionAuthenticateResponse",topic:t,payload:i}),yr(i)?this.events.emit(Qe("session_request",s),{result:i.result}):rr(i)&&this.events.emit(Qe("session_request",s),{error:i.error})}),G(this,"onSessionAuthenticateRequest",async t=>{var i;const{topic:s,payload:n,attestation:o,encryptedId:a,transportType:u}=t;try{const{requester:c,authPayload:l,expiryTimestamp:h}=n.params,f=await this.getVerifyContext({attestationId:o,hash:Qs(JSON.stringify(n)),encryptedId:a,metadata:c.metadata,transportType:u}),w={requester:c,pairingTopic:s,id:n.id,authPayload:l,verifyContext:f,expiryTimestamp:h};await this.setAuthRequest(n.id,{request:w,pairingTopic:s,transportType:u}),u===It.link_mode&&(i=c.metadata.redirect)!=null&&i.universal&&this.client.core.addLinkModeSupportedApp(c.metadata.redirect.universal),this.client.events.emit("session_authenticate",{topic:s,params:n.params,id:n.id,verifyContext:f})}catch(c){this.client.logger.error(c);const l=n.params.requester.publicKey,h=await this.client.core.crypto.generateKeyPair(),f=this.getAppLinkIfEnabled(n.params.requester.metadata,u),w={type:Vs,receiverPublicKey:l,senderPublicKey:h};await this.sendError({id:n.id,topic:s,error:c,encodeOpts:w,rpcOpts:Mr.wc_sessionAuthenticate.autoReject,appLink:f})}}),G(this,"addSessionRequestToSessionRequestQueue",t=>{this.sessionRequestQueue.queue.push(t)}),G(this,"cleanupAfterResponse",t=>{this.deletePendingSessionRequest(t.response.id,{message:"fulfilled",code:0}),setTimeout(()=>{this.sessionRequestQueue.state=ws.idle,this.processSessionRequestQueue()},Y.toMiliseconds(this.requestQueueDelay))}),G(this,"cleanupPendingSentRequestsForTopic",({topic:t,error:i})=>{const s=this.client.core.history.pending;s.length>0&&s.filter(n=>n.topic===t&&n.request.method==="wc_sessionRequest").forEach(n=>{const o=n.request.id,a=Qe("session_request",o);if(this.events.listenerCount(a)===0)throw new Error(`emitting ${a} without any listeners`);this.events.emit(Qe("session_request",n.request.id),{error:i})})}),G(this,"processSessionRequestQueue",()=>{if(this.sessionRequestQueue.state===ws.active){this.client.logger.info("session request queue is already active.");return}const t=this.sessionRequestQueue.queue[0];if(!t){this.client.logger.info("session request queue is empty.");return}try{this.sessionRequestQueue.state=ws.active,this.emitSessionRequest(t)}catch(i){this.client.logger.error(i)}}),G(this,"emitSessionRequest",t=>{this.client.events.emit("session_request",t)}),G(this,"onPairingCreated",t=>{if(t.methods&&this.expectedPairingMethodMap.set(t.topic,t.methods),t.active)return;const i=this.client.proposal.getAll().find(s=>s.pairingTopic===t.topic);i&&this.onSessionProposeRequest({topic:t.topic,payload:Kr("wc_sessionPropose",{requiredNamespaces:i.requiredNamespaces,optionalNamespaces:i.optionalNamespaces,relays:i.relays,proposer:i.proposer,sessionProperties:i.sessionProperties},i.id)})}),G(this,"isValidConnect",async t=>{if(!oi(t)){const{message:u}=X("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(t)}`);throw new Error(u)}const{pairingTopic:i,requiredNamespaces:s,optionalNamespaces:n,sessionProperties:o,relays:a}=t;if(Gr(i)||await this.isValidPairingTopic(i),!tO(a)){const{message:u}=X("MISSING_OR_INVALID",`connect() relays: ${a}`);throw new Error(u)}!Gr(s)&&hu(s)!==0&&this.validateNamespaces(s,"requiredNamespaces"),!Gr(n)&&hu(n)!==0&&this.validateNamespaces(n,"optionalNamespaces"),Gr(o)||this.validateSessionProps(o,"sessionProperties")}),G(this,"validateNamespaces",(t,i)=>{const s=eO(t,"connect()",i);if(s)throw new Error(s.message)}),G(this,"isValidApprove",async t=>{if(!oi(t))throw new Error(X("MISSING_OR_INVALID",`approve() params: ${t}`).message);const{id:i,namespaces:s,relayProtocol:n,sessionProperties:o}=t;this.checkRecentlyDeleted(i),await this.isValidProposalId(i);const a=this.client.proposal.get(i),u=bf(s,"approve()");if(u)throw new Error(u.message);const c=Xw(a.requiredNamespaces,s,"approve()");if(c)throw new Error(c.message);if(!sr(n,!0)){const{message:l}=X("MISSING_OR_INVALID",`approve() relayProtocol: ${n}`);throw new Error(l)}Gr(o)||this.validateSessionProps(o,"sessionProperties")}),G(this,"isValidReject",async t=>{if(!oi(t)){const{message:n}=X("MISSING_OR_INVALID",`reject() params: ${t}`);throw new Error(n)}const{id:i,reason:s}=t;if(this.checkRecentlyDeleted(i),await this.isValidProposalId(i),!iO(s)){const{message:n}=X("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(s)}`);throw new Error(n)}}),G(this,"isValidSessionSettleRequest",t=>{if(!oi(t)){const{message:c}=X("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${t}`);throw new Error(c)}const{relay:i,controller:s,namespaces:n,expiry:o}=t;if(!rI(i)){const{message:c}=X("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(c)}const a=Z_(s,"onSessionSettleRequest()");if(a)throw new Error(a.message);const u=bf(n,"onSessionSettleRequest()");if(u)throw new Error(u.message);if(dn(o)){const{message:c}=X("EXPIRED","onSessionSettleRequest()");throw new Error(c)}}),G(this,"isValidUpdate",async t=>{if(!oi(t)){const{message:u}=X("MISSING_OR_INVALID",`update() params: ${t}`);throw new Error(u)}const{topic:i,namespaces:s}=t;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i);const n=this.client.session.get(i),o=bf(s,"update()");if(o)throw new Error(o.message);const a=Xw(n.requiredNamespaces,s,"update()");if(a)throw new Error(a.message)}),G(this,"isValidExtend",async t=>{if(!oi(t)){const{message:s}=X("MISSING_OR_INVALID",`extend() params: ${t}`);throw new Error(s)}const{topic:i}=t;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i)}),G(this,"isValidRequest",async t=>{if(!oi(t)){const{message:u}=X("MISSING_OR_INVALID",`request() params: ${t}`);throw new Error(u)}const{topic:i,request:s,chainId:n,expiry:o}=t;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i);const{namespaces:a}=this.client.session.get(i);if(!Jw(a,n)){const{message:u}=X("MISSING_OR_INVALID",`request() chainId: ${n}`);throw new Error(u)}if(!sO(s)){const{message:u}=X("MISSING_OR_INVALID",`request() ${JSON.stringify(s)}`);throw new Error(u)}if(!aO(a,n,s.method)){const{message:u}=X("MISSING_OR_INVALID",`request() method: ${s.method}`);throw new Error(u)}if(o&&!hO(o,Ef)){const{message:u}=X("MISSING_OR_INVALID",`request() expiry: ${o}. Expiry must be a number (in seconds) between ${Ef.min} and ${Ef.max}`);throw new Error(u)}}),G(this,"isValidRespond",async t=>{var i;if(!oi(t)){const{message:o}=X("MISSING_OR_INVALID",`respond() params: ${t}`);throw new Error(o)}const{topic:s,response:n}=t;try{await this.isValidSessionTopic(s)}catch(o){throw(i=t?.response)!=null&&i.id&&this.cleanupAfterResponse(t),o}if(!nO(n)){const{message:o}=X("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(n)}`);throw new Error(o)}}),G(this,"isValidPing",async t=>{if(!oi(t)){const{message:s}=X("MISSING_OR_INVALID",`ping() params: ${t}`);throw new Error(s)}const{topic:i}=t;await this.isValidSessionOrPairingTopic(i)}),G(this,"isValidEmit",async t=>{if(!oi(t)){const{message:a}=X("MISSING_OR_INVALID",`emit() params: ${t}`);throw new Error(a)}const{topic:i,event:s,chainId:n}=t;await this.isValidSessionTopic(i);const{namespaces:o}=this.client.session.get(i);if(!Jw(o,n)){const{message:a}=X("MISSING_OR_INVALID",`emit() chainId: ${n}`);throw new Error(a)}if(!oO(s)){const{message:a}=X("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}if(!cO(o,n,s.name)){const{message:a}=X("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}}),G(this,"isValidDisconnect",async t=>{if(!oi(t)){const{message:s}=X("MISSING_OR_INVALID",`disconnect() params: ${t}`);throw new Error(s)}const{topic:i}=t;await this.isValidSessionOrPairingTopic(i)}),G(this,"isValidAuthenticate",t=>{const{chains:i,uri:s,domain:n,nonce:o}=t;if(!Array.isArray(i)||i.length===0)throw new Error("chains is required and must be a non-empty array");if(!sr(s,!1))throw new Error("uri is required parameter");if(!sr(n,!1))throw new Error("domain is required parameter");if(!sr(o,!1))throw new Error("nonce is required parameter");if([...new Set(i.map(u=>Da(u).namespace))].length>1)throw new Error("Multi-namespace requests are not supported. Please request single namespace only.");const{namespace:a}=Da(i[0]);if(a!=="eip155")throw new Error("Only eip155 namespace is supported for authenticated sessions. Please use .connect() for non-eip155 chains.")}),G(this,"getVerifyContext",async t=>{const{attestationId:i,hash:s,encryptedId:n,metadata:o,transportType:a}=t,u={verified:{verifyUrl:o.verifyUrl||Jc,validation:"UNKNOWN",origin:o.url||""}};try{if(a===It.link_mode){const l=this.getAppLinkIfEnabled(o,a);return u.verified.validation=l&&new URL(l).origin===new URL(o.url).origin?"VALID":"INVALID",u}const c=await this.client.core.verify.resolve({attestationId:i,hash:s,encryptedId:n,verifyUrl:o.verifyUrl});c&&(u.verified.origin=c.origin,u.verified.isScam=c.isScam,u.verified.validation=c.origin===new URL(o.url).origin?"VALID":"INVALID")}catch(c){this.client.logger.warn(c)}return this.client.logger.debug(`Verify context: ${JSON.stringify(u)}`),u}),G(this,"validateSessionProps",(t,i)=>{Object.values(t).forEach(s=>{if(!sr(s,!1)){const{message:n}=X("MISSING_OR_INVALID",`${i} must be in Record<string, string> format. Received: ${JSON.stringify(s)}`);throw new Error(n)}})}),G(this,"getPendingAuthRequest",t=>{const i=this.client.auth.requests.get(t);return typeof i=="object"?i:void 0}),G(this,"addToRecentlyDeleted",(t,i)=>{if(this.recentlyDeletedMap.set(t,i),this.recentlyDeletedMap.size>=this.recentlyDeletedLimit){let s=0;const n=this.recentlyDeletedLimit/2;for(const o of this.recentlyDeletedMap.keys()){if(s++>=n)break;this.recentlyDeletedMap.delete(o)}}}),G(this,"checkRecentlyDeleted",t=>{const i=this.recentlyDeletedMap.get(t);if(i){const{message:s}=X("MISSING_OR_INVALID",`Record was recently deleted - ${i}: ${t}`);throw new Error(s)}}),G(this,"isLinkModeEnabled",(t,i)=>{var s,n,o,a,u,c,l,h,f;return!t||i!==It.link_mode?!1:((n=(s=this.client.metadata)==null?void 0:s.redirect)==null?void 0:n.linkMode)===!0&&((a=(o=this.client.metadata)==null?void 0:o.redirect)==null?void 0:a.universal)!==void 0&&((c=(u=this.client.metadata)==null?void 0:u.redirect)==null?void 0:c.universal)!==""&&((l=t?.redirect)==null?void 0:l.universal)!==void 0&&((h=t?.redirect)==null?void 0:h.universal)!==""&&((f=t?.redirect)==null?void 0:f.linkMode)===!0&&this.client.core.linkModeSupportedApps.includes(t.redirect.universal)&&typeof(global==null?void 0:global.Linking)<"u"}),G(this,"getAppLinkIfEnabled",(t,i)=>{var s;return this.isLinkModeEnabled(t,i)?(s=t?.redirect)==null?void 0:s.universal:void 0}),G(this,"handleLinkModeMessage",({url:t})=>{if(!t||!t.includes("wc_ev")||!t.includes("topic"))return;const i=Mw(t,"topic")||"",s=decodeURIComponent(Mw(t,"wc_ev")||""),n=this.client.session.keys.includes(i);n&&this.client.session.update(i,{transportType:It.link_mode}),this.client.core.dispatchEnvelope({topic:i,message:s,sessionExists:n})}),G(this,"registerLinkModeListeners",async()=>{var t;if(Fg()||xn()&&(t=this.client.metadata.redirect)!=null&&t.linkMode){const i=global==null?void 0:global.Linking;if(typeof i<"u"){i.addEventListener("url",this.handleLinkModeMessage,this.client.name);const s=await i.getInitialURL();s&&setTimeout(()=>{this.handleLinkModeMessage({url:s})},50)}}}),G(this,"shouldSetTVF",(t,i)=>{if(!i||t!=="wc_sessionRequest")return!1;const{request:s}=i;return Object.keys(Om).includes(s.method)}),G(this,"getTVFParams",(t,i,s)=>{var n,o;try{const a=i.request.method,u=this.extractTxHashesFromResult(a,s);return ti(Ft({correlationId:t,rpcMethods:[a],chainId:i.chainId},this.isValidContractData(i.request.params)&&{contractAddresses:[(o=(n=i.request.params)==null?void 0:n[0])==null?void 0:o.to]}),{txHashes:u})}catch(a){this.client.logger.warn("Error getting TVF params",a)}return{}}),G(this,"isValidContractData",t=>{var i;if(!t)return!1;try{const s=t?.data||((i=t?.[0])==null?void 0:i.data);if(!s.startsWith("0x"))return!1;const n=s.slice(2);return/^[0-9a-fA-F]*$/.test(n)?n.length%2===0:!1}catch{}return!1}),G(this,"extractTxHashesFromResult",(t,i)=>{try{const s=Om[t];if(typeof i=="string")return[i];const n=i[s.key];if(ao(n))return n;if(typeof n=="string")return[n]}catch(s){this.client.logger.warn("Error extracting tx hashes from result",s)}return[]})}isInitialized(){if(!this.initialized){const{message:e}=X("NOT_INITIALIZED",this.name);throw new Error(e)}}async confirmOnlineStateOrThrow(){await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(Ar.message,e=>{!this.initialized||this.relayMessageCache.length>0?this.relayMessageCache.push(e):this.onRelayMessage(e)})}async onRelayMessage(e){const{topic:t,message:i,attestation:s,transportType:n}=e,{publicKey:o}=this.client.auth.authKeys.keys.includes(hh)?this.client.auth.authKeys.get(hh):{publicKey:void 0},a=await this.client.core.crypto.decode(t,i,{receiverPublicKey:o,encoding:n===It.link_mode?vc:mn});try{qa(a)?(this.client.core.history.set(t,a),this.onRelayEventRequest({topic:t,payload:a,attestation:s,transportType:n,encryptedId:Qs(i)})):mo(a)?(await this.client.core.history.resolve(a),await this.onRelayEventResponse({topic:t,payload:a,transportType:n}),this.client.core.history.delete(t,a.id)):this.onRelayEventUnknownPayload({topic:t,payload:a,transportType:n})}catch(u){this.client.logger.error(u)}}registerExpirerEvents(){this.client.core.expirer.on(Ui.expired,async e=>{const{topic:t,id:i}=xv(e.target);if(i&&this.client.pendingRequest.keys.includes(i))return await this.deletePendingSessionRequest(i,X("EXPIRED"),!0);if(i&&this.client.auth.requests.keys.includes(i))return await this.deletePendingAuthRequest(i,X("EXPIRED"),!0);t?this.client.session.keys.includes(t)&&(await this.deleteSession({topic:t,expirerHasDeleted:!0}),this.client.events.emit("session_expire",{topic:t})):i&&(await this.deleteProposal(i,!0),this.client.events.emit("proposal_expire",{id:i}))})}registerPairingEvents(){this.client.core.pairing.events.on(Hn.create,e=>this.onPairingCreated(e)),this.client.core.pairing.events.on(Hn.delete,e=>{this.addToRecentlyDeleted(e.topic,"pairing")})}isValidPairingTopic(e){if(!sr(e,!1)){const{message:t}=X("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:t}=X("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if(dn(this.client.core.pairing.pairings.get(e).expiry)){const{message:t}=X("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}}async isValidSessionTopic(e){if(!sr(e,!1)){const{message:t}=X("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(t)}if(this.checkRecentlyDeleted(e),!this.client.session.keys.includes(e)){const{message:t}=X("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(t)}if(dn(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});const{message:t}=X("EXPIRED",`session topic: ${e}`);throw new Error(t)}if(!this.client.core.crypto.keychain.has(e)){const{message:t}=X("MISSING_OR_INVALID",`session topic does not exist in keychain: ${e}`);throw await this.deleteSession({topic:e}),new Error(t)}}async isValidSessionOrPairingTopic(e){if(this.checkRecentlyDeleted(e),this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else if(this.client.core.pairing.pairings.keys.includes(e))this.isValidPairingTopic(e);else if(sr(e,!1)){const{message:t}=X("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(t)}else{const{message:t}=X("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(t)}}async isValidProposalId(e){if(!rO(e)){const{message:t}=X("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=X("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(t)}if(dn(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);const{message:t}=X("EXPIRED",`proposal id: ${e}`);throw new Error(t)}}},z8=class extends bo{constructor(e,t){super(e,t,m8,Kg),this.core=e,this.logger=t}},L8=class extends bo{constructor(e,t){super(e,t,b8,Kg),this.core=e,this.logger=t}},P8=class extends bo{constructor(e,t){super(e,t,N8,Kg,i=>i.id),this.core=e,this.logger=t}},k8=class extends bo{constructor(e,t){super(e,t,A8,id,()=>hh),this.core=e,this.logger=t}},U8=class extends bo{constructor(e,t){super(e,t,E8,id),this.core=e,this.logger=t}},R8=class extends bo{constructor(e,t){super(e,t,T8,id,i=>i.id),this.core=e,this.logger=t}};var $8=Object.defineProperty,F8=(r,e,t)=>e in r?$8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Tf=(r,e,t)=>F8(r,typeof e!="symbol"?e+"":e,t);let B8=class{constructor(e,t){this.core=e,this.logger=t,Tf(this,"authKeys"),Tf(this,"pairingTopics"),Tf(this,"requests"),this.authKeys=new k8(this.core,this.logger),this.pairingTopics=new U8(this.core,this.logger),this.requests=new R8(this.core,this.logger)}async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}};var Y8=Object.defineProperty,Q8=(r,e,t)=>e in r?Y8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ae=(r,e,t)=>Q8(r,typeof e!="symbol"?e+"":e,t);let V8=class jI extends y8{constructor(e){super(e),Ae(this,"protocol",EI),Ae(this,"version",TI),Ae(this,"name",Af.name),Ae(this,"metadata"),Ae(this,"core"),Ae(this,"logger"),Ae(this,"events",new wr.EventEmitter),Ae(this,"engine"),Ae(this,"session"),Ae(this,"proposal"),Ae(this,"pendingRequest"),Ae(this,"auth"),Ae(this,"signConfig"),Ae(this,"on",(i,s)=>this.events.on(i,s)),Ae(this,"once",(i,s)=>this.events.once(i,s)),Ae(this,"off",(i,s)=>this.events.off(i,s)),Ae(this,"removeListener",(i,s)=>this.events.removeListener(i,s)),Ae(this,"removeAllListeners",i=>this.events.removeAllListeners(i)),Ae(this,"connect",async i=>{try{return await this.engine.connect(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"pair",async i=>{try{return await this.engine.pair(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"approve",async i=>{try{return await this.engine.approve(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"reject",async i=>{try{return await this.engine.reject(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"update",async i=>{try{return await this.engine.update(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"extend",async i=>{try{return await this.engine.extend(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"request",async i=>{try{return await this.engine.request(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"respond",async i=>{try{return await this.engine.respond(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"ping",async i=>{try{return await this.engine.ping(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"emit",async i=>{try{return await this.engine.emit(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"disconnect",async i=>{try{return await this.engine.disconnect(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"find",i=>{try{return this.engine.find(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"getPendingSessionRequests",()=>{try{return this.engine.getPendingSessionRequests()}catch(i){throw this.logger.error(i.message),i}}),Ae(this,"authenticate",async(i,s)=>{try{return await this.engine.authenticate(i,s)}catch(n){throw this.logger.error(n.message),n}}),Ae(this,"formatAuthMessage",i=>{try{return this.engine.formatAuthMessage(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"approveSessionAuthenticate",async i=>{try{return await this.engine.approveSessionAuthenticate(i)}catch(s){throw this.logger.error(s.message),s}}),Ae(this,"rejectSessionAuthenticate",async i=>{try{return await this.engine.rejectSessionAuthenticate(i)}catch(s){throw this.logger.error(s.message),s}}),this.name=e?.name||Af.name,this.metadata=e?.metadata||Av(),this.signConfig=e?.signConfig;const t=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:jn(Hs({level:e?.logger||Af.logger}));this.core=e?.core||new f8(e),this.logger=qe(t,this.name),this.session=new L8(this.core,this.logger),this.proposal=new z8(this.core,this.logger),this.pendingRequest=new P8(this.core,this.logger),this.engine=new O8(this),this.auth=new B8(this.core,this.logger)}static async init(e){const t=new jI(e);return await t.initialize(),t}get context(){return dt(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.pendingRequest.init(),await this.auth.init(),await this.engine.init(),this.logger.info("SignClient Initialization Success"),setTimeout(()=>{this.engine.processRelayMessageCache()},Y.toMiliseconds(Y.ONE_SECOND))}catch(e){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(e.message),e}}};var Pl={exports:{}},Lm;function W8(){return Lm||(Lm=1,(function(r,e){var t=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||typeof ci<"u"&&ci,i=(function(){function n(){this.fetch=!1,this.DOMException=t.DOMException}return n.prototype=t,new n})();(function(n){(function(o){var a=typeof n<"u"&&n||typeof self<"u"&&self||typeof ci<"u"&&ci||{},u={searchParams:"URLSearchParams"in a,iterable:"Symbol"in a&&"iterator"in Symbol,blob:"FileReader"in a&&"Blob"in a&&(function(){try{return new Blob,!0}catch{return!1}})(),formData:"FormData"in a,arrayBuffer:"ArrayBuffer"in a};function c(b){return b&&DataView.prototype.isPrototypeOf(b)}if(u.arrayBuffer)var l=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],h=ArrayBuffer.isView||function(b){return b&&l.indexOf(Object.prototype.toString.call(b))>-1};function f(b){if(typeof b!="string"&&(b=String(b)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(b)||b==="")throw new TypeError('Invalid character in header field name: "'+b+'"');return b.toLowerCase()}function w(b){return typeof b!="string"&&(b=String(b)),b}function g(b){var M={next:function(){var I=b.shift();return{done:I===void 0,value:I}}};return u.iterable&&(M[Symbol.iterator]=function(){return M}),M}function m(b){this.map={},b instanceof m?b.forEach(function(M,I){this.append(I,M)},this):Array.isArray(b)?b.forEach(function(M){if(M.length!=2)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+M.length);this.append(M[0],M[1])},this):b&&Object.getOwnPropertyNames(b).forEach(function(M){this.append(M,b[M])},this)}m.prototype.append=function(b,M){b=f(b),M=w(M);var I=this.map[b];this.map[b]=I?I+", "+M:M},m.prototype.delete=function(b){delete this.map[f(b)]},m.prototype.get=function(b){return b=f(b),this.has(b)?this.map[b]:null},m.prototype.has=function(b){return this.map.hasOwnProperty(f(b))},m.prototype.set=function(b,M){this.map[f(b)]=w(M)},m.prototype.forEach=function(b,M){for(var I in this.map)this.map.hasOwnProperty(I)&&b.call(M,this.map[I],I,this)},m.prototype.keys=function(){var b=[];return this.forEach(function(M,I){b.push(I)}),g(b)},m.prototype.values=function(){var b=[];return this.forEach(function(M){b.push(M)}),g(b)},m.prototype.entries=function(){var b=[];return this.forEach(function(M,I){b.push([I,M])}),g(b)},u.iterable&&(m.prototype[Symbol.iterator]=m.prototype.entries);function E(b){if(!b._noBody){if(b.bodyUsed)return Promise.reject(new TypeError("Already read"));b.bodyUsed=!0}}function A(b){return new Promise(function(M,I){b.onload=function(){M(b.result)},b.onerror=function(){I(b.error)}})}function D(b){var M=new FileReader,I=A(M);return M.readAsArrayBuffer(b),I}function O(b){var M=new FileReader,I=A(M),j=/charset=([A-Za-z0-9_-]+)/.exec(b.type),v=j?j[1]:"utf-8";return M.readAsText(b,v),I}function C(b){for(var M=new Uint8Array(b),I=new Array(M.length),j=0;j<M.length;j++)I[j]=String.fromCharCode(M[j]);return I.join("")}function _(b){if(b.slice)return b.slice(0);var M=new Uint8Array(b.byteLength);return M.set(new Uint8Array(b)),M.buffer}function S(){return this.bodyUsed=!1,this._initBody=function(b){this.bodyUsed=this.bodyUsed,this._bodyInit=b,b?typeof b=="string"?this._bodyText=b:u.blob&&Blob.prototype.isPrototypeOf(b)?this._bodyBlob=b:u.formData&&FormData.prototype.isPrototypeOf(b)?this._bodyFormData=b:u.searchParams&&URLSearchParams.prototype.isPrototypeOf(b)?this._bodyText=b.toString():u.arrayBuffer&&u.blob&&c(b)?(this._bodyArrayBuffer=_(b.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):u.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(b)||h(b))?this._bodyArrayBuffer=_(b):this._bodyText=b=Object.prototype.toString.call(b):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||(typeof b=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):u.searchParams&&URLSearchParams.prototype.isPrototypeOf(b)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},u.blob&&(this.blob=function(){var b=E(this);if(b)return b;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var b=E(this);return b||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}else{if(u.blob)return this.blob().then(D);throw new Error("could not read as ArrayBuffer")}},this.text=function(){var b=E(this);if(b)return b;if(this._bodyBlob)return O(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(C(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},u.formData&&(this.formData=function(){return this.text().then(U)}),this.json=function(){return this.text().then(JSON.parse)},this}var L=["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"];function k(b){var M=b.toUpperCase();return L.indexOf(M)>-1?M:b}function z(b,M){if(!(this instanceof z))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');M=M||{};var I=M.body;if(b instanceof z){if(b.bodyUsed)throw new TypeError("Already read");this.url=b.url,this.credentials=b.credentials,M.headers||(this.headers=new m(b.headers)),this.method=b.method,this.mode=b.mode,this.signal=b.signal,!I&&b._bodyInit!=null&&(I=b._bodyInit,b.bodyUsed=!0)}else this.url=String(b);if(this.credentials=M.credentials||this.credentials||"same-origin",(M.headers||!this.headers)&&(this.headers=new m(M.headers)),this.method=k(M.method||this.method||"GET"),this.mode=M.mode||this.mode||null,this.signal=M.signal||this.signal||(function(){if("AbortController"in a){var p=new AbortController;return p.signal}})(),this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&I)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(I),(this.method==="GET"||this.method==="HEAD")&&(M.cache==="no-store"||M.cache==="no-cache")){var j=/([?&])_=[^&]*/;if(j.test(this.url))this.url=this.url.replace(j,"$1_="+new Date().getTime());else{var v=/\?/;this.url+=(v.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}z.prototype.clone=function(){return new z(this,{body:this._bodyInit})};function U(b){var M=new FormData;return b.trim().split("&").forEach(function(I){if(I){var j=I.split("="),v=j.shift().replace(/\+/g," "),p=j.join("=").replace(/\+/g," ");M.append(decodeURIComponent(v),decodeURIComponent(p))}}),M}function T(b){var M=new m,I=b.replace(/\r?\n[\t ]+/g," ");return I.split("\r").map(function(j){return j.indexOf(`
20
+ `)===0?j.substr(1,j.length):j}).forEach(function(j){var v=j.split(":"),p=v.shift().trim();if(p){var x=v.join(":").trim();try{M.append(p,x)}catch(F){console.warn("Response "+F.message)}}}),M}S.call(z.prototype);function d(b,M){if(!(this instanceof d))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(M||(M={}),this.type="default",this.status=M.status===void 0?200:M.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=M.statusText===void 0?"":""+M.statusText,this.headers=new m(M.headers),this.url=M.url||"",this._initBody(b)}S.call(d.prototype),d.prototype.clone=function(){return new d(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},d.error=function(){var b=new d(null,{status:200,statusText:""});return b.ok=!1,b.status=0,b.type="error",b};var y=[301,302,303,307,308];d.redirect=function(b,M){if(y.indexOf(M)===-1)throw new RangeError("Invalid status code");return new d(null,{status:M,headers:{location:b}})},o.DOMException=a.DOMException;try{new o.DOMException}catch{o.DOMException=function(M,I){this.message=M,this.name=I;var j=Error(M);this.stack=j.stack},o.DOMException.prototype=Object.create(Error.prototype),o.DOMException.prototype.constructor=o.DOMException}function N(b,M){return new Promise(function(I,j){var v=new z(b,M);if(v.signal&&v.signal.aborted)return j(new o.DOMException("Aborted","AbortError"));var p=new XMLHttpRequest;function x(){p.abort()}p.onload=function(){var Q={statusText:p.statusText,headers:T(p.getAllResponseHeaders()||"")};v.url.indexOf("file://")===0&&(p.status<200||p.status>599)?Q.status=200:Q.status=p.status,Q.url="responseURL"in p?p.responseURL:Q.headers.get("X-Request-URL");var W="response"in p?p.response:p.responseText;setTimeout(function(){I(new d(W,Q))},0)},p.onerror=function(){setTimeout(function(){j(new TypeError("Network request failed"))},0)},p.ontimeout=function(){setTimeout(function(){j(new TypeError("Network request timed out"))},0)},p.onabort=function(){setTimeout(function(){j(new o.DOMException("Aborted","AbortError"))},0)};function F(Q){try{return Q===""&&a.location.href?a.location.href:Q}catch{return Q}}if(p.open(v.method,F(v.url),!0),v.credentials==="include"?p.withCredentials=!0:v.credentials==="omit"&&(p.withCredentials=!1),"responseType"in p&&(u.blob?p.responseType="blob":u.arrayBuffer&&(p.responseType="arraybuffer")),M&&typeof M.headers=="object"&&!(M.headers instanceof m||a.Headers&&M.headers instanceof a.Headers)){var V=[];Object.getOwnPropertyNames(M.headers).forEach(function(Q){V.push(f(Q)),p.setRequestHeader(Q,w(M.headers[Q]))}),v.headers.forEach(function(Q,W){V.indexOf(W)===-1&&p.setRequestHeader(W,Q)})}else v.headers.forEach(function(Q,W){p.setRequestHeader(W,Q)});v.signal&&(v.signal.addEventListener("abort",x),p.onreadystatechange=function(){p.readyState===4&&v.signal.removeEventListener("abort",x)}),p.send(typeof v._bodyInit>"u"?null:v._bodyInit)})}return N.polyfill=!0,a.fetch||(a.fetch=N,a.Headers=m,a.Request=z,a.Response=d),o.Headers=m,o.Request=z,o.Response=d,o.fetch=N,Object.defineProperty(o,"__esModule",{value:!0}),o})({})})(i),i.fetch.ponyfill=!0,delete i.fetch.polyfill;var s=t.fetch?t:i;e=s.fetch,e.default=s.fetch,e.fetch=s.fetch,e.Headers=s.Headers,e.Request=s.Request,e.Response=s.Response,r.exports=e})(Pl,Pl.exports)),Pl.exports}var q8=W8();const Pm=Yh(q8);var Z8=Object.defineProperty,H8=Object.defineProperties,G8=Object.getOwnPropertyDescriptors,km=Object.getOwnPropertySymbols,K8=Object.prototype.hasOwnProperty,J8=Object.prototype.propertyIsEnumerable,Um=(r,e,t)=>e in r?Z8(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Rm=(r,e)=>{for(var t in e||(e={}))K8.call(e,t)&&Um(r,t,e[t]);if(km)for(var t of km(e))J8.call(e,t)&&Um(r,t,e[t]);return r},$m=(r,e)=>H8(r,G8(e));const X8={Accept:"application/json","Content-Type":"application/json"},e9="POST",Fm={headers:X8,method:e9},Bm=10;let ir=class{constructor(e,t=!1){if(this.url=e,this.disableProviderPing=t,this.events=new wr.EventEmitter,this.isAvailable=!1,this.registering=!1,!om(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);this.url=e,this.disableProviderPing=t}get connected(){return this.isAvailable}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){if(!this.isAvailable)throw new Error("Connection already closed");this.onClose()}async send(e){this.isAvailable||await this.register();try{const t=Es(e),i=await(await Pm(this.url,$m(Rm({},Fm),{body:t}))).json();this.onPayload({data:i})}catch(t){this.onError(e.id,t)}}async register(e=this.url){if(!om(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);if(this.registering){const t=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=t||this.events.listenerCount("open")>=t)&&this.events.setMaxListeners(t+1),new Promise((i,s)=>{this.events.once("register_error",n=>{this.resetMaxListeners(),s(n)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.isAvailable>"u")return s(new Error("HTTP connection is missing or invalid"));i()})})}this.url=e,this.registering=!0;try{if(!this.disableProviderPing){const t=Es({id:1,jsonrpc:"2.0",method:"test",params:[]});await Pm(e,$m(Rm({},Fm),{body:t}))}this.onOpen()}catch(t){const i=this.parseError(t);throw this.events.emit("register_error",i),this.onClose(),i}}onOpen(){this.isAvailable=!0,this.registering=!1,this.events.emit("open")}onClose(){this.isAvailable=!1,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;const t=typeof e.data=="string"?Zs(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const i=this.parseError(t),s=i.message||i.toString(),n=Wa(e,s);this.events.emit("payload",n)}parseError(e,t=this.url){return nI(e,t,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>Bm&&this.events.setMaxListeners(Bm)}};const Ym="error",t9="wss://relay.walletconnect.org",r9="wc",i9="universal_provider",Qm=`${r9}@2:${i9}:`,xI="https://rpc.walletconnect.org/v1/",ha="generic",s9=`${xI}bundler`,Vi={DEFAULT_CHAIN_CHANGED:"default_chain_changed"};var kl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function n9(){this.__data__=[],this.size=0}var o9=n9;function a9(r,e){return r===e||r!==r&&e!==e}var sd=a9,c9=sd;function u9(r,e){for(var t=r.length;t--;)if(c9(r[t][0],e))return t;return-1}var nd=u9,l9=nd,h9=Array.prototype,d9=h9.splice;function f9(r){var e=this.__data__,t=l9(e,r);if(t<0)return!1;var i=e.length-1;return t==i?e.pop():d9.call(e,t,1),--this.size,!0}var p9=f9,g9=nd;function y9(r){var e=this.__data__,t=g9(e,r);return t<0?void 0:e[t][1]}var w9=y9,m9=nd;function b9(r){return m9(this.__data__,r)>-1}var M9=b9,N9=nd;function v9(r,e){var t=this.__data__,i=N9(t,r);return i<0?(++this.size,t.push([r,e])):t[i][1]=e,this}var I9=v9,D9=o9,A9=p9,E9=w9,T9=M9,S9=I9;function da(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}da.prototype.clear=D9,da.prototype.delete=A9,da.prototype.get=E9,da.prototype.has=T9,da.prototype.set=S9;var od=da,j9=od;function x9(){this.__data__=new j9,this.size=0}var C9=x9;function _9(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}var O9=_9;function z9(r){return this.__data__.get(r)}var L9=z9;function P9(r){return this.__data__.has(r)}var k9=P9,U9=typeof kl=="object"&&kl&&kl.Object===Object&&kl,CI=U9,R9=CI,$9=typeof self=="object"&&self&&self.Object===Object&&self,F9=R9||$9||Function("return this")(),Za=F9,B9=Za,Y9=B9.Symbol,_I=Y9,Vm=_I,OI=Object.prototype,Q9=OI.hasOwnProperty,V9=OI.toString,Sc=Vm?Vm.toStringTag:void 0;function W9(r){var e=Q9.call(r,Sc),t=r[Sc];try{r[Sc]=void 0;var i=!0}catch{}var s=V9.call(r);return i&&(e?r[Sc]=t:delete r[Sc]),s}var q9=W9,Z9=Object.prototype,H9=Z9.toString;function G9(r){return H9.call(r)}var K9=G9,Wm=_I,J9=q9,X9=K9,eP="[object Null]",tP="[object Undefined]",qm=Wm?Wm.toStringTag:void 0;function rP(r){return r==null?r===void 0?tP:eP:qm&&qm in Object(r)?J9(r):X9(r)}var ad=rP;function iP(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}var Mo=iP,sP=ad,nP=Mo,oP="[object AsyncFunction]",aP="[object Function]",cP="[object GeneratorFunction]",uP="[object Proxy]";function lP(r){if(!nP(r))return!1;var e=sP(r);return e==aP||e==cP||e==oP||e==uP}var Jg=lP,hP=Za,dP=hP["__core-js_shared__"],fP=dP,Sf=fP,Zm=(function(){var r=/[^.]+$/.exec(Sf&&Sf.keys&&Sf.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""})();function pP(r){return!!Zm&&Zm in r}var gP=pP,yP=Function.prototype,wP=yP.toString;function mP(r){if(r!=null){try{return wP.call(r)}catch{}try{return r+""}catch{}}return""}var bP=mP,MP=Jg,NP=gP,vP=Mo,IP=bP,DP=/[\\^$.*+?()[\]{}|]/g,AP=/^\[object .+?Constructor\]$/,EP=Function.prototype,TP=Object.prototype,SP=EP.toString,jP=TP.hasOwnProperty,xP=RegExp("^"+SP.call(jP).replace(DP,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function CP(r){if(!vP(r)||NP(r))return!1;var e=MP(r)?xP:AP;return e.test(IP(r))}var _P=CP;function OP(r,e){return r?.[e]}var zP=OP,LP=_P,PP=zP;function kP(r,e){var t=PP(r,e);return LP(t)?t:void 0}var Xg=kP,UP=Xg,RP=Za,$P=UP(RP,"Map"),zI=$P,FP=Xg,BP=FP(Object,"create"),cd=BP,Hm=cd;function YP(){this.__data__=Hm?Hm(null):{},this.size=0}var QP=YP;function VP(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}var WP=VP,qP=cd,ZP="__lodash_hash_undefined__",HP=Object.prototype,GP=HP.hasOwnProperty;function KP(r){var e=this.__data__;if(qP){var t=e[r];return t===ZP?void 0:t}return GP.call(e,r)?e[r]:void 0}var JP=KP,XP=cd,ek=Object.prototype,tk=ek.hasOwnProperty;function rk(r){var e=this.__data__;return XP?e[r]!==void 0:tk.call(e,r)}var ik=rk,sk=cd,nk="__lodash_hash_undefined__";function ok(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=sk&&e===void 0?nk:e,this}var ak=ok,ck=QP,uk=WP,lk=JP,hk=ik,dk=ak;function fa(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}fa.prototype.clear=ck,fa.prototype.delete=uk,fa.prototype.get=lk,fa.prototype.has=hk,fa.prototype.set=dk;var fk=fa,Gm=fk,pk=od,gk=zI;function yk(){this.size=0,this.__data__={hash:new Gm,map:new(gk||pk),string:new Gm}}var wk=yk;function mk(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}var bk=mk,Mk=bk;function Nk(r,e){var t=r.__data__;return Mk(e)?t[typeof e=="string"?"string":"hash"]:t.map}var ud=Nk,vk=ud;function Ik(r){var e=vk(this,r).delete(r);return this.size-=e?1:0,e}var Dk=Ik,Ak=ud;function Ek(r){return Ak(this,r).get(r)}var Tk=Ek,Sk=ud;function jk(r){return Sk(this,r).has(r)}var xk=jk,Ck=ud;function _k(r,e){var t=Ck(this,r),i=t.size;return t.set(r,e),this.size+=t.size==i?0:1,this}var Ok=_k,zk=wk,Lk=Dk,Pk=Tk,kk=xk,Uk=Ok;function pa(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}pa.prototype.clear=zk,pa.prototype.delete=Lk,pa.prototype.get=Pk,pa.prototype.has=kk,pa.prototype.set=Uk;var Rk=pa,$k=od,Fk=zI,Bk=Rk,Yk=200;function Qk(r,e){var t=this.__data__;if(t instanceof $k){var i=t.__data__;if(!Fk||i.length<Yk-1)return i.push([r,e]),this.size=++t.size,this;t=this.__data__=new Bk(i)}return t.set(r,e),this.size=t.size,this}var Vk=Qk,Wk=od,qk=C9,Zk=O9,Hk=L9,Gk=k9,Kk=Vk;function ga(r){var e=this.__data__=new Wk(r);this.size=e.size}ga.prototype.clear=qk,ga.prototype.delete=Zk,ga.prototype.get=Hk,ga.prototype.has=Gk,ga.prototype.set=Kk;var Jk=ga,Xk=Xg,eU=(function(){try{var r=Xk(Object,"defineProperty");return r({},"",{}),r}catch{}})(),LI=eU,Km=LI;function tU(r,e,t){e=="__proto__"&&Km?Km(r,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):r[e]=t}var e0=tU,rU=e0,iU=sd;function sU(r,e,t){(t!==void 0&&!iU(r[e],t)||t===void 0&&!(e in r))&&rU(r,e,t)}var PI=sU;function nU(r){return function(e,t,i){for(var s=-1,n=Object(e),o=i(e),a=o.length;a--;){var u=o[r?a:++s];if(t(n[u],u,n)===!1)break}return e}}var oU=nU,aU=oU,cU=aU(),uU=cU,Qp={exports:{}};(function(r,e){var t=Za,i=e&&!e.nodeType&&e,s=i&&!0&&r&&!r.nodeType&&r,n=s&&s.exports===i,o=n?t.Buffer:void 0,a=o?o.allocUnsafe:void 0;function u(c,l){if(l)return c.slice();var h=c.length,f=a?a(h):new c.constructor(h);return c.copy(f),f}r.exports=u})(Qp,Qp.exports);var lU=Za,hU=lU.Uint8Array,dU=hU,Jm=dU;function fU(r){var e=new r.constructor(r.byteLength);return new Jm(e).set(new Jm(r)),e}var pU=fU,gU=pU;function yU(r,e){var t=e?gU(r.buffer):r.buffer;return new r.constructor(t,r.byteOffset,r.length)}var wU=yU;function mU(r,e){var t=-1,i=r.length;for(e||(e=Array(i));++t<i;)e[t]=r[t];return e}var bU=mU,MU=Mo,Xm=Object.create,NU=(function(){function r(){}return function(e){if(!MU(e))return{};if(Xm)return Xm(e);r.prototype=e;var t=new r;return r.prototype=void 0,t}})(),vU=NU;function IU(r,e){return function(t){return r(e(t))}}var DU=IU,AU=DU,EU=AU(Object.getPrototypeOf,Object),kI=EU,TU=Object.prototype;function SU(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||TU;return r===t}var UI=SU,jU=vU,xU=kI,CU=UI;function _U(r){return typeof r.constructor=="function"&&!CU(r)?jU(xU(r)):{}}var OU=_U;function zU(r){return r!=null&&typeof r=="object"}var el=zU,LU=ad,PU=el,kU="[object Arguments]";function UU(r){return PU(r)&&LU(r)==kU}var RU=UU,eb=RU,$U=el,RI=Object.prototype,FU=RI.hasOwnProperty,BU=RI.propertyIsEnumerable,YU=eb((function(){return arguments})())?eb:function(r){return $U(r)&&FU.call(r,"callee")&&!BU.call(r,"callee")},$I=YU,QU=Array.isArray,FI=QU,VU=9007199254740991;function WU(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=VU}var BI=WU,qU=Jg,ZU=BI;function HU(r){return r!=null&&ZU(r.length)&&!qU(r)}var t0=HU,GU=t0,KU=el;function JU(r){return KU(r)&&GU(r)}var XU=JU,_h={exports:{}};function eR(){return!1}var tR=eR;(function(r,e){var t=Za,i=tR,s=e&&!e.nodeType&&e,n=s&&!0&&r&&!r.nodeType&&r,o=n&&n.exports===s,a=o?t.Buffer:void 0,u=a?a.isBuffer:void 0,c=u||i;r.exports=c})(_h,_h.exports);var rR=ad,iR=kI,sR=el,nR="[object Object]",oR=Function.prototype,aR=Object.prototype,YI=oR.toString,cR=aR.hasOwnProperty,uR=YI.call(Object);function lR(r){if(!sR(r)||rR(r)!=nR)return!1;var e=iR(r);if(e===null)return!0;var t=cR.call(e,"constructor")&&e.constructor;return typeof t=="function"&&t instanceof t&&YI.call(t)==uR}var hR=lR,dR=ad,fR=BI,pR=el,gR="[object Arguments]",yR="[object Array]",wR="[object Boolean]",mR="[object Date]",bR="[object Error]",MR="[object Function]",NR="[object Map]",vR="[object Number]",IR="[object Object]",DR="[object RegExp]",AR="[object Set]",ER="[object String]",TR="[object WeakMap]",SR="[object ArrayBuffer]",jR="[object DataView]",xR="[object Float32Array]",CR="[object Float64Array]",_R="[object Int8Array]",OR="[object Int16Array]",zR="[object Int32Array]",LR="[object Uint8Array]",PR="[object Uint8ClampedArray]",kR="[object Uint16Array]",UR="[object Uint32Array]",vt={};vt[xR]=vt[CR]=vt[_R]=vt[OR]=vt[zR]=vt[LR]=vt[PR]=vt[kR]=vt[UR]=!0,vt[gR]=vt[yR]=vt[SR]=vt[wR]=vt[jR]=vt[mR]=vt[bR]=vt[MR]=vt[NR]=vt[vR]=vt[IR]=vt[DR]=vt[AR]=vt[ER]=vt[TR]=!1;function RR(r){return pR(r)&&fR(r.length)&&!!vt[dR(r)]}var $R=RR;function FR(r){return function(e){return r(e)}}var BR=FR,Vp={exports:{}};(function(r,e){var t=CI,i=e&&!e.nodeType&&e,s=i&&!0&&r&&!r.nodeType&&r,n=s&&s.exports===i,o=n&&t.process,a=(function(){try{var u=s&&s.require&&s.require("util").types;return u||o&&o.binding&&o.binding("util")}catch{}})();r.exports=a})(Vp,Vp.exports);var YR=$R,QR=BR,tb=Vp.exports,rb=tb&&tb.isTypedArray,VR=rb?QR(rb):YR,QI=VR;function WR(r,e){if(!(e==="constructor"&&typeof r[e]=="function")&&e!="__proto__")return r[e]}var VI=WR,qR=e0,ZR=sd,HR=Object.prototype,GR=HR.hasOwnProperty;function KR(r,e,t){var i=r[e];(!(GR.call(r,e)&&ZR(i,t))||t===void 0&&!(e in r))&&qR(r,e,t)}var JR=KR,XR=JR,e$=e0;function t$(r,e,t,i){var s=!t;t||(t={});for(var n=-1,o=e.length;++n<o;){var a=e[n],u=i?i(t[a],r[a],a,t,r):void 0;u===void 0&&(u=r[a]),s?e$(t,a,u):XR(t,a,u)}return t}var r$=t$;function i$(r,e){for(var t=-1,i=Array(r);++t<r;)i[t]=e(t);return i}var s$=i$,n$=9007199254740991,o$=/^(?:0|[1-9]\d*)$/;function a$(r,e){var t=typeof r;return e=e??n$,!!e&&(t=="number"||t!="symbol"&&o$.test(r))&&r>-1&&r%1==0&&r<e}var WI=a$,c$=s$,u$=$I,l$=FI,h$=_h.exports,d$=WI,f$=QI,p$=Object.prototype,g$=p$.hasOwnProperty;function y$(r,e){var t=l$(r),i=!t&&u$(r),s=!t&&!i&&h$(r),n=!t&&!i&&!s&&f$(r),o=t||i||s||n,a=o?c$(r.length,String):[],u=a.length;for(var c in r)(e||g$.call(r,c))&&!(o&&(c=="length"||s&&(c=="offset"||c=="parent")||n&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||d$(c,u)))&&a.push(c);return a}var w$=y$;function m$(r){var e=[];if(r!=null)for(var t in Object(r))e.push(t);return e}var b$=m$,M$=Mo,N$=UI,v$=b$,I$=Object.prototype,D$=I$.hasOwnProperty;function A$(r){if(!M$(r))return v$(r);var e=N$(r),t=[];for(var i in r)i=="constructor"&&(e||!D$.call(r,i))||t.push(i);return t}var E$=A$,T$=w$,S$=E$,j$=t0;function x$(r){return j$(r)?T$(r,!0):S$(r)}var qI=x$,C$=r$,_$=qI;function O$(r){return C$(r,_$(r))}var z$=O$,ib=PI,L$=Qp.exports,P$=wU,k$=bU,U$=OU,sb=$I,nb=FI,R$=XU,$$=_h.exports,F$=Jg,B$=Mo,Y$=hR,Q$=QI,ob=VI,V$=z$;function W$(r,e,t,i,s,n,o){var a=ob(r,t),u=ob(e,t),c=o.get(u);if(c){ib(r,t,c);return}var l=n?n(a,u,t+"",r,e,o):void 0,h=l===void 0;if(h){var f=nb(u),w=!f&&$$(u),g=!f&&!w&&Q$(u);l=u,f||w||g?nb(a)?l=a:R$(a)?l=k$(a):w?(h=!1,l=L$(u,!0)):g?(h=!1,l=P$(u,!0)):l=[]:Y$(u)||sb(u)?(l=a,sb(a)?l=V$(a):(!B$(a)||F$(a))&&(l=U$(u))):h=!1}h&&(o.set(u,l),s(l,u,i,n,o),o.delete(u)),ib(r,t,l)}var q$=W$,Z$=Jk,H$=PI,G$=uU,K$=q$,J$=Mo,X$=qI,e7=VI;function ZI(r,e,t,i,s){r!==e&&G$(e,function(n,o){if(s||(s=new Z$),J$(n))K$(r,e,o,t,ZI,i,s);else{var a=i?i(e7(r,o),n,o+"",r,e,s):void 0;a===void 0&&(a=n),H$(r,o,a)}},X$)}var t7=ZI;function r7(r){return r}var HI=r7;function i7(r,e,t){switch(t.length){case 0:return r.call(e);case 1:return r.call(e,t[0]);case 2:return r.call(e,t[0],t[1]);case 3:return r.call(e,t[0],t[1],t[2])}return r.apply(e,t)}var s7=i7,n7=s7,ab=Math.max;function o7(r,e,t){return e=ab(e===void 0?r.length-1:e,0),function(){for(var i=arguments,s=-1,n=ab(i.length-e,0),o=Array(n);++s<n;)o[s]=i[e+s];s=-1;for(var a=Array(e+1);++s<e;)a[s]=i[s];return a[e]=t(o),n7(r,this,a)}}var a7=o7;function c7(r){return function(){return r}}var u7=c7,l7=u7,cb=LI,h7=HI,d7=cb?function(r,e){return cb(r,"toString",{configurable:!0,enumerable:!1,value:l7(e),writable:!0})}:h7,f7=d7,p7=800,g7=16,y7=Date.now;function w7(r){var e=0,t=0;return function(){var i=y7(),s=g7-(i-t);if(t=i,s>0){if(++e>=p7)return arguments[0]}else e=0;return r.apply(void 0,arguments)}}var m7=w7,b7=f7,M7=m7,N7=M7(b7),v7=N7,I7=HI,D7=a7,A7=v7;function E7(r,e){return A7(D7(r,e,I7),r+"")}var T7=E7,S7=sd,j7=t0,x7=WI,C7=Mo;function _7(r,e,t){if(!C7(t))return!1;var i=typeof e;return(i=="number"?j7(t)&&x7(e,t.length):i=="string"&&e in t)?S7(t[e],r):!1}var O7=_7,z7=T7,L7=O7;function P7(r){return z7(function(e,t){var i=-1,s=t.length,n=s>1?t[s-1]:void 0,o=s>2?t[2]:void 0;for(n=r.length>3&&typeof n=="function"?(s--,n):void 0,o&&L7(t[0],t[1],o)&&(n=s<3?void 0:n,s=1),e=Object(e);++i<s;){var a=t[i];a&&r(e,a,i,n)}return e})}var k7=P7,U7=t7,R7=k7,$7=R7(function(r,e,t){U7(r,e,t)}),F7=$7,B7=Object.defineProperty,Y7=Object.defineProperties,Q7=Object.getOwnPropertyDescriptors,ub=Object.getOwnPropertySymbols,V7=Object.prototype.hasOwnProperty,W7=Object.prototype.propertyIsEnumerable,lb=(r,e,t)=>e in r?B7(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ul=(r,e)=>{for(var t in e||(e={}))V7.call(e,t)&&lb(r,t,e[t]);if(ub)for(var t of ub(e))W7.call(e,t)&&lb(r,t,e[t]);return r},q7=(r,e)=>Y7(r,Q7(e));function Ai(r,e,t){var i;const s=Da(r);return((i=e.rpcMap)==null?void 0:i[s.reference])||`${xI}?chainId=${s.namespace}:${s.reference}&projectId=${t}`}function No(r){return r.includes(":")?r.split(":")[1]:r}function GI(r){return r.map(e=>`${e.split(":")[0]}:${e.split(":")[1]}`)}function Z7(r,e){const t=Object.keys(e.namespaces).filter(s=>s.includes(r));if(!t.length)return[];const i=[];return t.forEach(s=>{const n=e.namespaces[s].accounts;i.push(...n)}),i}function jf(r={},e={}){const t=hb(r),i=hb(e);return F7(t,i)}function hb(r){var e,t,i,s;const n={};if(!hu(r))return n;for(const[o,a]of Object.entries(r)){const u=Zg(o)?[o]:a.chains,c=a.methods||[],l=a.events||[],h=a.rpcMap||{},f=Bc(o);n[f]=q7(Ul(Ul({},n[f]),a),{chains:ch(u,(e=n[f])==null?void 0:e.chains),methods:ch(c,(t=n[f])==null?void 0:t.methods),events:ch(l,(i=n[f])==null?void 0:i.events),rpcMap:Ul(Ul({},h),(s=n[f])==null?void 0:s.rpcMap)})}return n}function H7(r){return r.includes(":")?r.split(":")[2]:r}function db(r){const e={};for(const[t,i]of Object.entries(r)){const s=i.methods||[],n=i.events||[],o=i.accounts||[],a=Zg(t)?[t]:i.chains?i.chains:GI(i.accounts);e[t]={chains:a,methods:s,events:n,accounts:o}}return e}function xf(r){return typeof r=="number"?r:r.includes("0x")?parseInt(r,16):(r=r.includes(":")?r.split(":")[1]:r,isNaN(Number(r))?r:Number(r))}const KI={},Pe=r=>KI[r],Cf=(r,e)=>{KI[r]=e};var G7=Object.defineProperty,K7=(r,e,t)=>e in r?G7(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Po=(r,e,t)=>K7(r,typeof e!="symbol"?e+"":e,t);class J7{constructor(e){Po(this,"name","polkadot"),Po(this,"client"),Po(this,"httpProviders"),Po(this,"events"),Po(this,"namespace"),Po(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getAccounts(){const e=this.namespace.accounts;return e?e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2])||[]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=No(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var X7=Object.defineProperty,eF=Object.defineProperties,tF=Object.getOwnPropertyDescriptors,fb=Object.getOwnPropertySymbols,rF=Object.prototype.hasOwnProperty,iF=Object.prototype.propertyIsEnumerable,Wp=(r,e,t)=>e in r?X7(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,pb=(r,e)=>{for(var t in e||(e={}))rF.call(e,t)&&Wp(r,t,e[t]);if(fb)for(var t of fb(e))iF.call(e,t)&&Wp(r,t,e[t]);return r},gb=(r,e)=>eF(r,tF(e)),ko=(r,e,t)=>Wp(r,typeof e!="symbol"?e+"":e,t);class sF{constructor(e){ko(this,"name","eip155"),ko(this,"client"),ko(this,"chainId"),ko(this,"namespace"),ko(this,"httpProviders"),ko(this,"events"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain())}async request(e){switch(e.request.method){case"eth_requestAccounts":return this.getAccounts();case"eth_accounts":return this.getAccounts();case"wallet_switchEthereumChain":return await this.handleSwitchChain(e);case"eth_chainId":return parseInt(this.getDefaultChain());case"wallet_getCapabilities":return await this.getCapabilities(e);case"wallet_getCallsStatus":return await this.getCallStatus(e)}return this.namespace.methods.includes(e.request.method)?await this.client.request(e):this.getHttpProvider().request(e.request)}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(parseInt(e),t),this.chainId=parseInt(e),this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId.toString();if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}createHttpProvider(e,t){const i=t||Ai(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=parseInt(No(t));e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}getHttpProvider(){const e=this.chainId,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}async handleSwitchChain(e){var t,i;let s=e.request.params?(t=e.request.params[0])==null?void 0:t.chainId:"0x0";s=s.startsWith("0x")?s:`0x${s}`;const n=parseInt(s,16);if(this.isChainApproved(n))this.setDefaultChain(`${n}`);else if(this.namespace.methods.includes("wallet_switchEthereumChain"))await this.client.request({topic:e.topic,request:{method:e.request.method,params:[{chainId:s}]},chainId:(i=this.namespace.chains)==null?void 0:i[0]}),this.setDefaultChain(`${n}`);else throw new Error(`Failed to switch to chain 'eip155:${n}'. The chain is not approved or the wallet does not support 'wallet_switchEthereumChain' method.`);return null}isChainApproved(e){return this.namespace.chains.includes(`${this.name}:${e}`)}async getCapabilities(e){var t,i,s;const n=(i=(t=e.request)==null?void 0:t.params)==null?void 0:i[0];if(!n)throw new Error("Missing address parameter in `wallet_getCapabilities` request");const o=this.client.session.get(e.topic),a=((s=o?.sessionProperties)==null?void 0:s.capabilities)||{};if(a!=null&&a[n])return a?.[n];const u=await this.client.request(e);try{await this.client.session.update(e.topic,{sessionProperties:gb(pb({},o.sessionProperties||{}),{capabilities:gb(pb({},a||{}),{[n]:u})})})}catch(c){console.warn("Failed to update session with capabilities",c)}return u}async getCallStatus(e){var t,i;const s=this.client.session.get(e.topic),n=(t=s.sessionProperties)==null?void 0:t.bundler_name;if(n){const a=this.getBundlerUrl(e.chainId,n);try{return await this.getUserOperationReceipt(a,e)}catch(u){console.warn("Failed to fetch call status from bundler",u,a)}}const o=(i=s.sessionProperties)==null?void 0:i.bundler_url;if(o)try{return await this.getUserOperationReceipt(o,e)}catch(a){console.warn("Failed to fetch call status from custom bundler",a,o)}if(this.namespace.methods.includes(e.request.method))return await this.client.request(e);throw new Error("Fetching call status not approved by the wallet.")}async getUserOperationReceipt(e,t){var i;const s=new URL(e),n=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Kr("eth_getUserOperationReceipt",[(i=t.request.params)==null?void 0:i[0]]))});if(!n.ok)throw new Error(`Failed to fetch user operation receipt - ${n.status}`);return await n.json()}getBundlerUrl(e,t){return`${s9}?projectId=${this.client.core.projectId}&chainId=${e}&bundler=${t}`}}var nF=Object.defineProperty,oF=(r,e,t)=>e in r?nF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Uo=(r,e,t)=>oF(r,typeof e!="symbol"?e+"":e,t);class aF{constructor(e){Uo(this,"name","solana"),Uo(this,"client"),Uo(this,"httpProviders"),Uo(this,"events"),Uo(this,"namespace"),Uo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=No(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var cF=Object.defineProperty,uF=(r,e,t)=>e in r?cF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ro=(r,e,t)=>uF(r,typeof e!="symbol"?e+"":e,t);class lF{constructor(e){Ro(this,"name","cosmos"),Ro(this,"client"),Ro(this,"httpProviders"),Ro(this,"events"),Ro(this,"namespace"),Ro(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=No(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var hF=Object.defineProperty,dF=(r,e,t)=>e in r?hF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,$o=(r,e,t)=>dF(r,typeof e!="symbol"?e+"":e,t);class fF{constructor(e){$o(this,"name","algorand"),$o(this,"client"),$o(this,"httpProviders"),$o(this,"events"),$o(this,"namespace"),$o(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(!this.httpProviders[e]){const i=t||Ai(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;e[t]=this.createHttpProvider(t,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);return typeof i>"u"?void 0:new Ot(new ir(i,Pe("disableProviderPing")))}}var pF=Object.defineProperty,gF=(r,e,t)=>e in r?pF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Fo=(r,e,t)=>gF(r,typeof e!="symbol"?e+"":e,t);class yF{constructor(e){Fo(this,"name","cip34"),Fo(this,"client"),Fo(this,"httpProviders"),Fo(this,"events"),Fo(this,"namespace"),Fo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{const i=this.getCardanoRPCUrl(t),s=No(t);e[s]=this.createHttpProvider(s,i)}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}getCardanoRPCUrl(e){const t=this.namespace.rpcMap;if(t)return t[e]}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||this.getCardanoRPCUrl(e);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var wF=Object.defineProperty,mF=(r,e,t)=>e in r?wF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Bo=(r,e,t)=>mF(r,typeof e!="symbol"?e+"":e,t);class bF{constructor(e){Bo(this,"name","elrond"),Bo(this,"client"),Bo(this,"httpProviders"),Bo(this,"events"),Bo(this,"namespace"),Bo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=No(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var MF=Object.defineProperty,NF=(r,e,t)=>e in r?MF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Yo=(r,e,t)=>NF(r,typeof e!="symbol"?e+"":e,t);class vF{constructor(e){Yo(this,"name","multiversx"),Yo(this,"client"),Yo(this,"httpProviders"),Yo(this,"events"),Yo(this,"namespace"),Yo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=No(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var IF=Object.defineProperty,DF=(r,e,t)=>e in r?IF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Qo=(r,e,t)=>DF(r,typeof e!="symbol"?e+"":e,t);class AF{constructor(e){Qo(this,"name","near"),Qo(this,"client"),Qo(this,"httpProviders"),Qo(this,"events"),Qo(this,"namespace"),Qo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const i=t||Ai(`${this.name}:${e}`,this.namespace);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2])||[]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;e[t]=this.createHttpProvider(t,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace);return typeof i>"u"?void 0:new Ot(new ir(i,Pe("disableProviderPing")))}}var EF=Object.defineProperty,TF=(r,e,t)=>e in r?EF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Vo=(r,e,t)=>TF(r,typeof e!="symbol"?e+"":e,t);class SF{constructor(e){Vo(this,"name","tezos"),Vo(this,"client"),Vo(this,"httpProviders"),Vo(this,"events"),Vo(this,"namespace"),Vo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const i=t||Ai(`${this.name}:${e}`,this.namespace);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2])||[]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{e[t]=this.createHttpProvider(t)}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace);return typeof i>"u"?void 0:new Ot(new ir(i))}}var jF=Object.defineProperty,xF=(r,e,t)=>e in r?jF(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Wo=(r,e,t)=>xF(r,typeof e!="symbol"?e+"":e,t);class CF{constructor(e){Wo(this,"name",ha),Wo(this,"client"),Wo(this,"httpProviders"),Wo(this,"events"),Wo(this,"namespace"),Wo(this,"chainId"),this.namespace=e.namespace,this.events=Pe("events"),this.client=Pe("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace.chains=[...new Set((this.namespace.chains||[]).concat(e.chains||[]))],this.namespace.accounts=[...new Set((this.namespace.accounts||[]).concat(e.accounts||[]))],this.namespace.methods=[...new Set((this.namespace.methods||[]).concat(e.methods||[]))],this.namespace.events=[...new Set((this.namespace.events||[]).concat(e.events||[]))],this.httpProviders=this.createHttpProviders()}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider(e.chainId).request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Vi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){var e,t;const i={};return(t=(e=this.namespace)==null?void 0:e.accounts)==null||t.forEach(s=>{const n=Da(s);i[`${n.namespace}:${n.reference}`]=this.createHttpProvider(s)}),i}getHttpProvider(e){const t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ai(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,Pe("disableProviderPing")))}}var _F=Object.defineProperty,OF=Object.defineProperties,zF=Object.getOwnPropertyDescriptors,yb=Object.getOwnPropertySymbols,LF=Object.prototype.hasOwnProperty,PF=Object.prototype.propertyIsEnumerable,qp=(r,e,t)=>e in r?_F(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Rl=(r,e)=>{for(var t in e||(e={}))LF.call(e,t)&&qp(r,t,e[t]);if(yb)for(var t of yb(e))PF.call(e,t)&&qp(r,t,e[t]);return r},_f=(r,e)=>OF(r,zF(e)),Xi=(r,e,t)=>qp(r,typeof e!="symbol"?e+"":e,t);let kF=class JI{constructor(e){Xi(this,"client"),Xi(this,"namespaces"),Xi(this,"optionalNamespaces"),Xi(this,"sessionProperties"),Xi(this,"events",new Fa),Xi(this,"rpcProviders",{}),Xi(this,"session"),Xi(this,"providerOpts"),Xi(this,"logger"),Xi(this,"uri"),Xi(this,"disableProviderPing",!1),this.providerOpts=e,this.logger=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:jn(Hs({level:e?.logger||Ym})),this.disableProviderPing=e?.disableProviderPing||!1}static async init(e){const t=new JI(e);return await t.initialize(),t}async request(e,t,i){const[s,n]=this.validateChain(t);if(!this.session)throw new Error("Please call connect() before request()");return await this.getProvider(s).request({request:Rl({},e),chainId:`${s}:${n}`,topic:this.session.topic,expiry:i})}sendAsync(e,t,i,s){const n=new Date().getTime();this.request(e,i,s).then(o=>t(null,Cn(n,o))).catch(o=>t(o,void 0))}async enable(){if(!this.client)throw new Error("Sign Client not initialized");return this.session||await this.connect({namespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties}),await this.requestAccounts()}async disconnect(){var e;if(!this.session)throw new Error("Please call connect() before enable()");await this.client.disconnect({topic:(e=this.session)==null?void 0:e.topic,reason:st("USER_DISCONNECTED")}),await this.cleanup()}async connect(e){if(!this.client)throw new Error("Sign Client not initialized");if(this.setNamespaces(e),await this.cleanupPendingPairings(),!e.skipPairing)return await this.pair(e.pairingTopic)}async authenticate(e,t){if(!this.client)throw new Error("Sign Client not initialized");this.setNamespaces(e),await this.cleanupPendingPairings();const{uri:i,response:s}=await this.client.authenticate(e,t);i&&(this.uri=i,this.events.emit("display_uri",i));const n=await s();if(this.session=n.session,this.session){const o=db(this.session.namespaces);this.namespaces=jf(this.namespaces,o),this.persist("namespaces",this.namespaces),this.onConnect()}return n}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}removeListener(e,t){this.events.removeListener(e,t)}off(e,t){this.events.off(e,t)}get isWalletConnect(){return!0}async pair(e){const{uri:t,approval:i}=await this.client.connect({pairingTopic:e,requiredNamespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties});t&&(this.uri=t,this.events.emit("display_uri",t));const s=await i();this.session=s;const n=db(s.namespaces);return this.namespaces=jf(this.namespaces,n),this.persist("namespaces",this.namespaces),this.onConnect(),this.session}setDefaultChain(e,t){try{if(!this.session)return;const[i,s]=this.validateChain(e),n=this.getProvider(i);n.name===ha?n.setDefaultChain(`${i}:${s}`,t):n.setDefaultChain(s,t)}catch(i){if(!/Please call connect/.test(i.message))throw i}}async cleanupPendingPairings(e={}){this.logger.info("Cleaning up inactive pairings...");const t=this.client.pairing.getAll();if(ao(t)){for(const i of t)e.deletePairings?this.client.core.expirer.set(i.topic,0):await this.client.core.relayer.subscriber.unsubscribe(i.topic);this.logger.info(`Inactive pairings cleared: ${t.length}`)}}abortPairingAttempt(){this.logger.warn("abortPairingAttempt is deprecated. This is now a no-op.")}async checkStorage(){if(this.namespaces=await this.getFromStore("namespaces"),this.optionalNamespaces=await this.getFromStore("optionalNamespaces")||{},this.client.session.length){const e=this.client.session.keys.length-1;this.session=this.client.session.get(this.client.session.keys[e]),this.createProviders()}}async initialize(){this.logger.trace("Initialized"),await this.createClient(),await this.checkStorage(),this.registerEventListeners()}async createClient(){this.client=this.providerOpts.client||await V8.init({core:this.providerOpts.core,logger:this.providerOpts.logger||Ym,relayUrl:this.providerOpts.relayUrl||t9,projectId:this.providerOpts.projectId,metadata:this.providerOpts.metadata,storageOptions:this.providerOpts.storageOptions,storage:this.providerOpts.storage,name:this.providerOpts.name,customStoragePrefix:this.providerOpts.customStoragePrefix,telemetryEnabled:this.providerOpts.telemetryEnabled}),this.logger.trace("SignClient Initialized")}createProviders(){if(!this.client)throw new Error("Sign Client not initialized");if(!this.session)throw new Error("Session not initialized. Please call connect() before enable()");const e=[...new Set(Object.keys(this.session.namespaces).map(t=>Bc(t)))];Cf("client",this.client),Cf("events",this.events),Cf("disableProviderPing",this.disableProviderPing),e.forEach(t=>{if(!this.session)return;const i=Z7(t,this.session),s=GI(i),n=jf(this.namespaces,this.optionalNamespaces),o=_f(Rl({},n[t]),{accounts:i,chains:s});switch(t){case"eip155":this.rpcProviders[t]=new sF({namespace:o});break;case"algorand":this.rpcProviders[t]=new fF({namespace:o});break;case"solana":this.rpcProviders[t]=new aF({namespace:o});break;case"cosmos":this.rpcProviders[t]=new lF({namespace:o});break;case"polkadot":this.rpcProviders[t]=new J7({namespace:o});break;case"cip34":this.rpcProviders[t]=new yF({namespace:o});break;case"elrond":this.rpcProviders[t]=new bF({namespace:o});break;case"multiversx":this.rpcProviders[t]=new vF({namespace:o});break;case"near":this.rpcProviders[t]=new AF({namespace:o});break;case"tezos":this.rpcProviders[t]=new SF({namespace:o});break;default:this.rpcProviders[ha]?this.rpcProviders[ha].updateNamespace(o):this.rpcProviders[ha]=new CF({namespace:o})}})}registerEventListeners(){if(typeof this.client>"u")throw new Error("Sign Client is not initialized");this.client.on("session_ping",e=>{this.events.emit("session_ping",e)}),this.client.on("session_event",e=>{const{params:t}=e,{event:i}=t;if(i.name==="accountsChanged"){const s=i.data;s&&ao(s)&&this.events.emit("accountsChanged",s.map(H7))}else if(i.name==="chainChanged"){const s=t.chainId,n=t.event.data,o=Bc(s),a=xf(s)!==xf(n)?`${o}:${xf(n)}`:s;this.onChainChanged(a)}else this.events.emit(i.name,i.data);this.events.emit("session_event",e)}),this.client.on("session_update",({topic:e,params:t})=>{var i;const{namespaces:s}=t,n=(i=this.client)==null?void 0:i.session.get(e);this.session=_f(Rl({},n),{namespaces:s}),this.onSessionUpdate(),this.events.emit("session_update",{topic:e,params:t})}),this.client.on("session_delete",async e=>{await this.cleanup(),this.events.emit("session_delete",e),this.events.emit("disconnect",_f(Rl({},st("USER_DISCONNECTED")),{data:e.topic}))}),this.on(Vi.DEFAULT_CHAIN_CHANGED,e=>{this.onChainChanged(e,!0)})}getProvider(e){return this.rpcProviders[e]||this.rpcProviders[ha]}onSessionUpdate(){Object.keys(this.rpcProviders).forEach(e=>{var t;this.getProvider(e).updateNamespace((t=this.session)==null?void 0:t.namespaces[e])})}setNamespaces(e){const{namespaces:t,optionalNamespaces:i,sessionProperties:s}=e;t&&Object.keys(t).length&&(this.namespaces=t),i&&Object.keys(i).length&&(this.optionalNamespaces=i),this.sessionProperties=s,this.persist("namespaces",t),this.persist("optionalNamespaces",i)}validateChain(e){const[t,i]=e?.split(":")||["",""];if(!this.namespaces||!Object.keys(this.namespaces).length)return[t,i];if(t&&!Object.keys(this.namespaces||{}).map(o=>Bc(o)).includes(t))throw new Error(`Namespace '${t}' is not configured. Please call connect() first with namespace config.`);if(t&&i)return[t,i];const s=Bc(Object.keys(this.namespaces)[0]),n=this.rpcProviders[s].getDefaultChain();return[s,n]}async requestAccounts(){const[e]=this.validateChain();return await this.getProvider(e).requestAccounts()}onChainChanged(e,t=!1){if(!this.namespaces)return;const[i,s]=this.validateChain(e);s&&(t||this.getProvider(i).setDefaultChain(s),this.namespaces[i]?this.namespaces[i].defaultChain=s:this.namespaces[`${i}:${s}`]?this.namespaces[`${i}:${s}`].defaultChain=s:this.namespaces[`${i}:${s}`]={defaultChain:s},this.persist("namespaces",this.namespaces),this.events.emit("chainChanged",s))}onConnect(){this.createProviders(),this.events.emit("connect",{session:this.session})}async cleanup(){this.session=void 0,this.namespaces=void 0,this.optionalNamespaces=void 0,this.sessionProperties=void 0,this.persist("namespaces",void 0),this.persist("optionalNamespaces",void 0),this.persist("sessionProperties",void 0),await this.cleanupPendingPairings({deletePairings:!0})}persist(e,t){this.client.core.storage.setItem(`${Qm}/${e}`,t)}async getFromStore(e){return await this.client.core.storage.getItem(`${Qm}/${e}`)}};const UF=kF,XI={caipNetworkIdToNumber(r){return r?Number(r.split(":")[1]):void 0},parseEvmChainId(r){return typeof r=="string"?this.caipNetworkIdToNumber(r):r},getNetworksByNamespace(r,e){return r?.filter(t=>t.chainNamespace===e)||[]},getFirstNetworkByNamespace(r,e){return this.getNetworksByNamespace(r,e)[0]}};var RF=20,$F=1,co=1e6,wb=1e6,FF=-7,BF=21,YF=!1,tl="[big.js] ",vo=tl+"Invalid ",ld=vo+"decimal places",QF=vo+"rounding mode",e4=tl+"Division by zero",Je={},As=void 0,VF=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function t4(){function r(e){var t=this;if(!(t instanceof r))return e===As?t4():new r(e);if(e instanceof r)t.s=e.s,t.e=e.e,t.c=e.c.slice();else{if(typeof e!="string"){if(r.strict===!0&&typeof e!="bigint")throw TypeError(vo+"value");e=e===0&&1/e<0?"-0":String(e)}WF(t,e)}t.constructor=r}return r.prototype=Je,r.DP=RF,r.RM=$F,r.NE=FF,r.PE=BF,r.strict=YF,r.roundDown=0,r.roundHalfUp=1,r.roundHalfEven=2,r.roundUp=3,r}function WF(r,e){var t,i,s;if(!VF.test(e))throw Error(vo+"number");for(r.s=e.charAt(0)=="-"?(e=e.slice(1),-1):1,(t=e.indexOf("."))>-1&&(e=e.replace(".","")),(i=e.search(/e/i))>0?(t<0&&(t=i),t+=+e.slice(i+1),e=e.substring(0,i)):t<0&&(t=e.length),s=e.length,i=0;i<s&&e.charAt(i)=="0";)++i;if(i==s)r.c=[r.e=0];else{for(;s>0&&e.charAt(--s)=="0";);for(r.e=t-i-1,r.c=[],t=0;i<=s;)r.c[t++]=+e.charAt(i++)}return r}function Io(r,e,t,i){var s=r.c;if(t===As&&(t=r.constructor.RM),t!==0&&t!==1&&t!==2&&t!==3)throw Error(QF);if(e<1)i=t===3&&(i||!!s[0])||e===0&&(t===1&&s[0]>=5||t===2&&(s[0]>5||s[0]===5&&(i||s[1]!==As))),s.length=1,i?(r.e=r.e-e+1,s[0]=1):s[0]=r.e=0;else if(e<s.length){if(i=t===1&&s[e]>=5||t===2&&(s[e]>5||s[e]===5&&(i||s[e+1]!==As||s[e-1]&1))||t===3&&(i||!!s[0]),s.length=e,i){for(;++s[--e]>9;)if(s[e]=0,e===0){++r.e,s.unshift(1);break}}for(e=s.length;!s[--e];)s.pop()}return r}function Do(r,e,t){var i=r.e,s=r.c.join(""),n=s.length;if(e)s=s.charAt(0)+(n>1?"."+s.slice(1):"")+(i<0?"e":"e+")+i;else if(i<0){for(;++i;)s="0"+s;s="0."+s}else if(i>0)if(++i>n)for(i-=n;i--;)s+="0";else i<n&&(s=s.slice(0,i)+"."+s.slice(i));else n>1&&(s=s.charAt(0)+"."+s.slice(1));return r.s<0&&t?"-"+s:s}Je.abs=function(){var r=new this.constructor(this);return r.s=1,r};Je.cmp=function(r){var e,t=this,i=t.c,s=(r=new t.constructor(r)).c,n=t.s,o=r.s,a=t.e,u=r.e;if(!i[0]||!s[0])return i[0]?n:s[0]?-o:0;if(n!=o)return n;if(e=n<0,a!=u)return a>u^e?1:-1;for(o=(a=i.length)<(u=s.length)?a:u,n=-1;++n<o;)if(i[n]!=s[n])return i[n]>s[n]^e?1:-1;return a==u?0:a>u^e?1:-1};Je.div=function(r){var e=this,t=e.constructor,i=e.c,s=(r=new t(r)).c,n=e.s==r.s?1:-1,o=t.DP;if(o!==~~o||o<0||o>co)throw Error(ld);if(!s[0])throw Error(e4);if(!i[0])return r.s=n,r.c=[r.e=0],r;var a,u,c,l,h,f=s.slice(),w=a=s.length,g=i.length,m=i.slice(0,a),E=m.length,A=r,D=A.c=[],O=0,C=o+(A.e=e.e-r.e)+1;for(A.s=n,n=C<0?0:C,f.unshift(0);E++<a;)m.push(0);do{for(c=0;c<10;c++){if(a!=(E=m.length))l=a>E?1:-1;else for(h=-1,l=0;++h<a;)if(s[h]!=m[h]){l=s[h]>m[h]?1:-1;break}if(l<0){for(u=E==a?s:f;E;){if(m[--E]<u[E]){for(h=E;h&&!m[--h];)m[h]=9;--m[h],m[E]+=10}m[E]-=u[E]}for(;!m[0];)m.shift()}else break}D[O++]=l?c:++c,m[0]&&l?m[E]=i[w]||0:m=[i[w]]}while((w++<g||m[0]!==As)&&n--);return!D[0]&&O!=1&&(D.shift(),A.e--,C--),O>C&&Io(A,C,t.RM,m[0]!==As),A};Je.eq=function(r){return this.cmp(r)===0};Je.gt=function(r){return this.cmp(r)>0};Je.gte=function(r){return this.cmp(r)>-1};Je.lt=function(r){return this.cmp(r)<0};Je.lte=function(r){return this.cmp(r)<1};Je.minus=Je.sub=function(r){var e,t,i,s,n=this,o=n.constructor,a=n.s,u=(r=new o(r)).s;if(a!=u)return r.s=-u,n.plus(r);var c=n.c.slice(),l=n.e,h=r.c,f=r.e;if(!c[0]||!h[0])return h[0]?r.s=-u:c[0]?r=new o(n):r.s=1,r;if(a=l-f){for((s=a<0)?(a=-a,i=c):(f=l,i=h),i.reverse(),u=a;u--;)i.push(0);i.reverse()}else for(t=((s=c.length<h.length)?c:h).length,a=u=0;u<t;u++)if(c[u]!=h[u]){s=c[u]<h[u];break}if(s&&(i=c,c=h,h=i,r.s=-r.s),(u=(t=h.length)-(e=c.length))>0)for(;u--;)c[e++]=0;for(u=e;t>a;){if(c[--t]<h[t]){for(e=t;e&&!c[--e];)c[e]=9;--c[e],c[t]+=10}c[t]-=h[t]}for(;c[--u]===0;)c.pop();for(;c[0]===0;)c.shift(),--f;return c[0]||(r.s=1,c=[f=0]),r.c=c,r.e=f,r};Je.mod=function(r){var e,t=this,i=t.constructor,s=t.s,n=(r=new i(r)).s;if(!r.c[0])throw Error(e4);return t.s=r.s=1,e=r.cmp(t)==1,t.s=s,r.s=n,e?new i(t):(s=i.DP,n=i.RM,i.DP=i.RM=0,t=t.div(r),i.DP=s,i.RM=n,this.minus(t.times(r)))};Je.neg=function(){var r=new this.constructor(this);return r.s=-r.s,r};Je.plus=Je.add=function(r){var e,t,i,s=this,n=s.constructor;if(r=new n(r),s.s!=r.s)return r.s=-r.s,s.minus(r);var o=s.e,a=s.c,u=r.e,c=r.c;if(!a[0]||!c[0])return c[0]||(a[0]?r=new n(s):r.s=s.s),r;if(a=a.slice(),e=o-u){for(e>0?(u=o,i=c):(e=-e,i=a),i.reverse();e--;)i.push(0);i.reverse()}for(a.length-c.length<0&&(i=c,c=a,a=i),e=c.length,t=0;e;a[e]%=10)t=(a[--e]=a[e]+c[e]+t)/10|0;for(t&&(a.unshift(t),++u),e=a.length;a[--e]===0;)a.pop();return r.c=a,r.e=u,r};Je.pow=function(r){var e=this,t=new e.constructor("1"),i=t,s=r<0;if(r!==~~r||r<-wb||r>wb)throw Error(vo+"exponent");for(s&&(r=-r);r&1&&(i=i.times(e)),r>>=1,!!r;)e=e.times(e);return s?t.div(i):i};Je.prec=function(r,e){if(r!==~~r||r<1||r>co)throw Error(vo+"precision");return Io(new this.constructor(this),r,e)};Je.round=function(r,e){if(r===As)r=0;else if(r!==~~r||r<-co||r>co)throw Error(ld);return Io(new this.constructor(this),r+this.e+1,e)};Je.sqrt=function(){var r,e,t,i=this,s=i.constructor,n=i.s,o=i.e,a=new s("0.5");if(!i.c[0])return new s(i);if(n<0)throw Error(tl+"No square root");n=Math.sqrt(+Do(i,!0,!0)),n===0||n===1/0?(e=i.c.join(""),e.length+o&1||(e+="0"),n=Math.sqrt(e),o=((o+1)/2|0)-(o<0||o&1),r=new s((n==1/0?"5e":(n=n.toExponential()).slice(0,n.indexOf("e")+1))+o)):r=new s(n+""),o=r.e+(s.DP+=4);do t=r,r=a.times(t.plus(i.div(t)));while(t.c.slice(0,o).join("")!==r.c.slice(0,o).join(""));return Io(r,(s.DP-=4)+r.e+1,s.RM)};Je.times=Je.mul=function(r){var e,t=this,i=t.constructor,s=t.c,n=(r=new i(r)).c,o=s.length,a=n.length,u=t.e,c=r.e;if(r.s=t.s==r.s?1:-1,!s[0]||!n[0])return r.c=[r.e=0],r;for(r.e=u+c,o<a&&(e=s,s=n,n=e,c=o,o=a,a=c),e=new Array(c=o+a);c--;)e[c]=0;for(u=a;u--;){for(a=0,c=o+u;c>u;)a=e[c]+n[u]*s[c-u-1]+a,e[c--]=a%10,a=a/10|0;e[c]=a}for(a?++r.e:e.shift(),u=e.length;!e[--u];)e.pop();return r.c=e,r};Je.toExponential=function(r,e){var t=this,i=t.c[0];if(r!==As){if(r!==~~r||r<0||r>co)throw Error(ld);for(t=Io(new t.constructor(t),++r,e);t.c.length<r;)t.c.push(0)}return Do(t,!0,!!i)};Je.toFixed=function(r,e){var t=this,i=t.c[0];if(r!==As){if(r!==~~r||r<0||r>co)throw Error(ld);for(t=Io(new t.constructor(t),r+t.e+1,e),r=r+t.e+1;t.c.length<r;)t.c.push(0)}return Do(t,!1,!!i)};Je[Symbol.for("nodejs.util.inspect.custom")]=Je.toJSON=Je.toString=function(){var r=this,e=r.constructor;return Do(r,r.e<=e.NE||r.e>=e.PE,!!r.c[0])};Je.toNumber=function(){var r=+Do(this,!0,!0);if(this.constructor.strict===!0&&!this.eq(r.toString()))throw Error(tl+"Imprecise conversion");return r};Je.toPrecision=function(r,e){var t=this,i=t.constructor,s=t.c[0];if(r!==As){if(r!==~~r||r<1||r>co)throw Error(vo+"precision");for(t=Io(new i(t),r,e);t.c.length<r;)t.c.push(0)}return Do(t,r<=t.e||t.e<=i.NE||t.e>=i.PE,!!s)};Je.valueOf=function(){var r=this,e=r.constructor;if(e.strict===!0)throw Error(tl+"valueOf disallowed");return Do(r,r.e<=e.NE||r.e>=e.PE,!0)};var jc=t4();const $l={bigNumber(r){return r?new jc(r):new jc(0)},multiply(r,e){if(r===void 0||e===void 0)return new jc(0);const t=new jc(r),i=new jc(e);return t.times(i)},formatNumberToLocalString(r,e=2){return r===void 0?"0.00":typeof r=="number"?r.toLocaleString("en-US",{maximumFractionDigits:e,minimumFractionDigits:e}):parseFloat(r).toLocaleString("en-US",{maximumFractionDigits:e,minimumFractionDigits:e})},parseLocalStringToNumber(r){return r===void 0?0:parseFloat(r.replace(/,/gu,""))}},qF=[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],outputs:[{name:"",type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_value",type:"uint256"}],outputs:[{name:"",type:"bool"}]}],ZF=[{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],HF=[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{name:"",type:"bool"}]}],ce={WC_NAME_SUFFIX:".reown.id",WC_NAME_SUFFIX_LEGACY:".wcn.id",BLOCKCHAIN_API_RPC_URL:"https://rpc.walletconnect.org",PULSE_API_URL:"https://pulse.walletconnect.org",W3M_API_URL:"https://api.web3modal.org",CONNECTOR_ID:{WALLET_CONNECT:"walletConnect",INJECTED:"injected",WALLET_STANDARD:"announced",COINBASE:"coinbaseWallet",COINBASE_SDK:"coinbaseWalletSDK",SAFE:"safe",LEDGER:"ledger",OKX:"okx",EIP6963:"eip6963",AUTH:"ID_AUTH"},CONNECTOR_NAMES:{AUTH:"Auth"},AUTH_CONNECTOR_SUPPORTED_CHAINS:["eip155","solana"],LIMITS:{PENDING_TRANSACTIONS:99},CHAIN:{EVM:"eip155",SOLANA:"solana",POLKADOT:"polkadot",BITCOIN:"bip122"},CHAIN_NAME_MAP:{eip155:"EVM Networks",solana:"Solana",polkadot:"Polkadot",bip122:"Bitcoin"},ADAPTER_TYPES:{BITCOIN:"bitcoin",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5"},USDT_CONTRACT_ADDRESSES:["0xdac17f958d2ee523a2206206994597c13d831ec7","0xc2132d05d31c914a87c6611c10748aeb04b58e8f","0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7","0x919C1c267BC06a7039e03fcc2eF738525769109c","0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e","0x55d398326f99059fF775485246999027B3197955","0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9"],HTTP_STATUS_CODES:{SERVICE_UNAVAILABLE:503,FORBIDDEN:403},UNSUPPORTED_NETWORK_NAME:"Unknown Network"},GF={getERC20Abi:r=>ce.USDT_CONTRACT_ADDRESSES.includes(r)?HF:qF,getSwapAbi:()=>ZF},on={validateCaipAddress(r){if(r.split(":")?.length!==3)throw new Error("Invalid CAIP Address");return r},parseCaipAddress(r){const e=r.split(":");if(e.length!==3)throw new Error(`Invalid CAIP-10 address: ${r}`);const[t,i,s]=e;if(!t||!i||!s)throw new Error(`Invalid CAIP-10 address: ${r}`);return{chainNamespace:t,chainId:i,address:s}},parseCaipNetworkId(r){const e=r.split(":");if(e.length!==2)throw new Error(`Invalid CAIP-2 network id: ${r}`);const[t,i]=e;if(!t||!i)throw new Error(`Invalid CAIP-2 network id: ${r}`);return{chainNamespace:t,chainId:i}}},Ne={WALLET_ID:"@appkit/wallet_id",WALLET_NAME:"@appkit/wallet_name",SOLANA_WALLET:"@appkit/solana_wallet",SOLANA_CAIP_CHAIN:"@appkit/solana_caip_chain",ACTIVE_CAIP_NETWORK_ID:"@appkit/active_caip_network_id",CONNECTED_SOCIAL:"@appkit/connected_social",CONNECTED_SOCIAL_USERNAME:"@appkit-wallet/SOCIAL_USERNAME",RECENT_WALLETS:"@appkit/recent_wallets",DEEPLINK_CHOICE:"WALLETCONNECT_DEEPLINK_CHOICE",ACTIVE_NAMESPACE:"@appkit/active_namespace",CONNECTED_NAMESPACES:"@appkit/connected_namespaces",CONNECTION_STATUS:"@appkit/connection_status",SIWX_AUTH_TOKEN:"@appkit/siwx-auth-token",SIWX_NONCE_TOKEN:"@appkit/siwx-nonce-token",TELEGRAM_SOCIAL_PROVIDER:"@appkit/social_provider",NATIVE_BALANCE_CACHE:"@appkit/native_balance_cache",PORTFOLIO_CACHE:"@appkit/portfolio_cache",ENS_CACHE:"@appkit/ens_cache",IDENTITY_CACHE:"@appkit/identity_cache"};function Of(r){if(!r)throw new Error("Namespace is required for CONNECTED_CONNECTOR_ID");return`@appkit/${r}:connected_connector_id`}const pe={setItem(r,e){Qc()&&e!==void 0&&localStorage.setItem(r,e)},getItem(r){if(Qc())return localStorage.getItem(r)||void 0},removeItem(r){Qc()&&localStorage.removeItem(r)},clear(){Qc()&&localStorage.clear()}};function Qc(){return typeof window<"u"&&typeof localStorage<"u"}function bn(r,e){return e==="light"?{"--w3m-accent":r?.["--w3m-accent"]||"hsla(231, 100%, 70%, 1)","--w3m-background":"#fff"}:{"--w3m-accent":r?.["--w3m-accent"]||"hsla(230, 100%, 67%, 1)","--w3m-background":"#121313"}}const KF=Symbol(),mb=Object.getPrototypeOf,Zp=new WeakMap,JF=r=>r&&(Zp.has(r)?Zp.get(r):mb(r)===Object.prototype||mb(r)===Array.prototype),XF=r=>JF(r)&&r[KF]||null,bb=(r,e=!0)=>{Zp.set(r,e)},Oh={},zf=r=>typeof r=="object"&&r!==null,fn=new WeakMap,Vc=new WeakSet,eB=(r=Object.is,e=(c,l)=>new Proxy(c,l),t=c=>zf(c)&&!Vc.has(c)&&(Array.isArray(c)||!(Symbol.iterator in c))&&!(c instanceof WeakMap)&&!(c instanceof WeakSet)&&!(c instanceof Error)&&!(c instanceof Number)&&!(c instanceof Date)&&!(c instanceof String)&&!(c instanceof RegExp)&&!(c instanceof ArrayBuffer),i=c=>{switch(c.status){case"fulfilled":return c.value;case"rejected":throw c.reason;default:throw c}},s=new WeakMap,n=(c,l,h=i)=>{const f=s.get(c);if(f?.[0]===l)return f[1];const w=Array.isArray(c)?[]:Object.create(Object.getPrototypeOf(c));return bb(w,!0),s.set(c,[l,w]),Reflect.ownKeys(c).forEach(g=>{if(Object.getOwnPropertyDescriptor(w,g))return;const m=Reflect.get(c,g),{enumerable:E}=Reflect.getOwnPropertyDescriptor(c,g),A={value:m,enumerable:E,configurable:!0};if(Vc.has(m))bb(m,!1);else if(m instanceof Promise)delete A.value,A.get=()=>h(m);else if(fn.has(m)){const[D,O]=fn.get(m);A.value=n(D,O(),h)}Object.defineProperty(w,g,A)}),Object.preventExtensions(w)},o=new WeakMap,a=[1,1],u=c=>{if(!zf(c))throw new Error("object required");const l=o.get(c);if(l)return l;let h=a[0];const f=new Set,w=(z,U=++a[0])=>{h!==U&&(h=U,f.forEach(T=>T(z,U)))};let g=a[1];const m=(z=++a[1])=>(g!==z&&!f.size&&(g=z,A.forEach(([U])=>{const T=U[1](z);T>h&&(h=T)})),h),E=z=>(U,T)=>{const d=[...U];d[1]=[z,...d[1]],w(d,T)},A=new Map,D=(z,U)=>{if((Oh?"production":void 0)!=="production"&&A.has(z))throw new Error("prop listener already exists");if(f.size){const T=U[3](E(z));A.set(z,[U,T])}else A.set(z,[U])},O=z=>{var U;const T=A.get(z);T&&(A.delete(z),(U=T[1])==null||U.call(T))},C=z=>(f.add(z),f.size===1&&A.forEach(([T,d],y)=>{if((Oh?"production":void 0)!=="production"&&d)throw new Error("remove already exists");const N=T[3](E(y));A.set(y,[T,N])}),()=>{f.delete(z),f.size===0&&A.forEach(([T,d],y)=>{d&&(d(),A.set(y,[T]))})}),_=Array.isArray(c)?[]:Object.create(Object.getPrototypeOf(c)),L=e(_,{deleteProperty(z,U){const T=Reflect.get(z,U);O(U);const d=Reflect.deleteProperty(z,U);return d&&w(["delete",[U],T]),d},set(z,U,T,d){const y=Reflect.has(z,U),N=Reflect.get(z,U,d);if(y&&(r(N,T)||o.has(T)&&r(N,o.get(T))))return!0;O(U),zf(T)&&(T=XF(T)||T);let b=T;if(T instanceof Promise)T.then(M=>{T.status="fulfilled",T.value=M,w(["resolve",[U],M])}).catch(M=>{T.status="rejected",T.reason=M,w(["reject",[U],M])});else{!fn.has(T)&&t(T)&&(b=u(T));const M=!Vc.has(b)&&fn.get(b);M&&D(U,M)}return Reflect.set(z,U,b,d),w(["set",[U],T,N]),!0}});o.set(c,L);const k=[_,m,n,C];return fn.set(L,k),Reflect.ownKeys(c).forEach(z=>{const U=Object.getOwnPropertyDescriptor(c,z);"value"in U&&(L[z]=c[z],delete U.value,delete U.writable),Object.defineProperty(_,z,U)}),L})=>[u,fn,Vc,r,e,t,i,s,n,o,a],[tB]=eB();function Qt(r={}){return tB(r)}function Jr(r,e,t){const i=fn.get(r);(Oh?"production":void 0)!=="production"&&!i&&console.warn("Please use proxy object");let s;const n=[],o=i[3];let a=!1;const c=o(l=>{n.push(l),s||(s=Promise.resolve().then(()=>{s=void 0,a&&e(n.splice(0))}))});return a=!0,()=>{a=!1,c()}}function fu(r,e){const t=fn.get(r);(Oh?"production":void 0)!=="production"&&!t&&console.warn("Please use proxy object");const[i,s,n]=t;return n(i,s(),e)}function uo(r){return Vc.add(r),r}function Si(r,e,t,i){let s=r[e];return Jr(r,()=>{const n=r[e];Object.is(s,n)||t(s=n)})}function rB(r){const e=Qt({data:Array.from([]),has(t){return this.data.some(i=>i[0]===t)},set(t,i){const s=this.data.find(n=>n[0]===t);return s?s[1]=i:this.data.push([t,i]),this},get(t){var i;return(i=this.data.find(s=>s[0]===t))==null?void 0:i[1]},delete(t){const i=this.data.findIndex(s=>s[0]===t);return i===-1?!1:(this.data.splice(i,1),!0)},clear(){this.data.splice(0)},get size(){return this.data.length},toJSON(){return new Map(this.data)},forEach(t){this.data.forEach(i=>{t(i[1],i[0],this)})},keys(){return this.data.map(t=>t[0]).values()},values(){return this.data.map(t=>t[1]).values()},entries(){return new Map(this.data).entries()},get[Symbol.toStringTag](){return"Map"},[Symbol.iterator](){return this.entries()}});return Object.defineProperties(e,{data:{enumerable:!1},size:{enumerable:!1},toJSON:{enumerable:!1}}),Object.seal(e),e}var Mb={};const Lf=(typeof process<"u"&&typeof Mb<"u"?Mb.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",ui={FOUR_MINUTES_MS:24e4,TEN_SEC_MS:1e4,FIVE_SEC_MS:5e3,THREE_SEC_MS:3e3,ONE_SEC_MS:1e3,SECURE_SITE:Lf,SECURE_SITE_DASHBOARD:`${Lf}/dashboard`,SECURE_SITE_FAVICON:`${Lf}/images/favicon.png`,RESTRICTED_TIMEZONES:["ASIA/SHANGHAI","ASIA/URUMQI","ASIA/CHONGQING","ASIA/HARBIN","ASIA/KASHGAR","ASIA/MACAU","ASIA/HONG_KONG","ASIA/MACAO","ASIA/BEIJING","ASIA/HARBIN"],WC_COINBASE_PAY_SDK_CHAINS:["ethereum","arbitrum","polygon","berachain","avalanche-c-chain","optimism","celo","base"],WC_COINBASE_PAY_SDK_FALLBACK_CHAIN:"ethereum",WC_COINBASE_PAY_SDK_CHAIN_NAME_MAP:{Ethereum:"ethereum","Arbitrum One":"arbitrum",Polygon:"polygon",Berachain:"berachain",Avalanche:"avalanche-c-chain","OP Mainnet":"optimism",Celo:"celo",Base:"base"},WC_COINBASE_ONRAMP_APP_ID:"bf18c88d-495a-463b-b249-0b9d3656cf5e",SWAP_SUGGESTED_TOKENS:["ETH","UNI","1INCH","AAVE","SOL","ADA","AVAX","DOT","LINK","NITRO","GAIA","MILK","TRX","NEAR","GNO","WBTC","DAI","WETH","USDC","USDT","ARB","BAL","BICO","CRV","ENS","MATIC","OP"],SWAP_POPULAR_TOKENS:["ETH","UNI","1INCH","AAVE","SOL","ADA","AVAX","DOT","LINK","NITRO","GAIA","MILK","TRX","NEAR","GNO","WBTC","DAI","WETH","USDC","USDT","ARB","BAL","BICO","CRV","ENS","MATIC","OP","METAL","DAI","CHAMP","WOLF","SALE","BAL","BUSD","MUST","BTCpx","ROUTE","HEX","WELT","amDAI","VSQ","VISION","AURUM","pSP","SNX","VC","LINK","CHP","amUSDT","SPHERE","FOX","GIDDY","GFC","OMEN","OX_OLD","DE","WNT"],BALANCE_SUPPORTED_CHAINS:["eip155","solana"],SWAP_SUPPORTED_NETWORKS:["eip155:1","eip155:42161","eip155:10","eip155:324","eip155:8453","eip155:56","eip155:137","eip155:100","eip155:43114","eip155:250","eip155:8217","eip155:1313161554"],NAMES_SUPPORTED_CHAIN_NAMESPACES:["eip155"],ONRAMP_SUPPORTED_CHAIN_NAMESPACES:["eip155","solana"],ACTIVITY_ENABLED_CHAIN_NAMESPACES:["eip155","solana"],NATIVE_TOKEN_ADDRESS:{eip155:"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",solana:"So11111111111111111111111111111111111111111",polkadot:"0x",bip122:"0x"},CONVERT_SLIPPAGE_TOLERANCE:1,CONNECT_LABELS:{MOBILE:"Open and continue in a new browser tab"},DEFAULT_FEATURES:{swaps:!0,onramp:!0,receive:!0,send:!0,email:!0,emailShowWallets:!0,socials:["google","x","discord","farcaster","github","apple","facebook"],connectorTypeOrder:["walletConnect","recent","injected","featured","custom","external","recommended"],history:!0,analytics:!0,allWallets:!0,legalCheckbox:!1,smartSessions:!1,collapseWallets:!1,walletFeaturesOrder:["onramp","swaps","receive","send"],connectMethodsOrder:void 0},DEFAULT_ACCOUNT_TYPES:{bip122:"payment",eip155:"smartAccount",polkadot:"eoa",solana:"eoa"},ADAPTER_TYPES:{UNIVERSAL:"universal",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5",BITCOIN:"bitcoin"}},ae={cacheExpiry:{portfolio:3e4,nativeBalance:3e4,ens:3e5,identity:3e5},isCacheExpired(r,e){return Date.now()-r>e},getActiveNetworkProps(){const r=ae.getActiveNamespace(),e=ae.getActiveCaipNetworkId(),t=e?e.split(":")[1]:void 0,i=t?isNaN(Number(t))?t:Number(t):void 0;return{namespace:r,caipNetworkId:e,chainId:i}},setWalletConnectDeepLink({name:r,href:e}){try{pe.setItem(Ne.DEEPLINK_CHOICE,JSON.stringify({href:e,name:r}))}catch{console.info("Unable to set WalletConnect deep link")}},getWalletConnectDeepLink(){try{const r=pe.getItem(Ne.DEEPLINK_CHOICE);if(r)return JSON.parse(r)}catch{console.info("Unable to get WalletConnect deep link")}},deleteWalletConnectDeepLink(){try{pe.removeItem(Ne.DEEPLINK_CHOICE)}catch{console.info("Unable to delete WalletConnect deep link")}},setActiveNamespace(r){try{pe.setItem(Ne.ACTIVE_NAMESPACE,r)}catch{console.info("Unable to set active namespace")}},setActiveCaipNetworkId(r){try{pe.setItem(Ne.ACTIVE_CAIP_NETWORK_ID,r),ae.setActiveNamespace(r.split(":")[0])}catch{console.info("Unable to set active caip network id")}},getActiveCaipNetworkId(){try{return pe.getItem(Ne.ACTIVE_CAIP_NETWORK_ID)}catch{console.info("Unable to get active caip network id");return}},deleteActiveCaipNetworkId(){try{pe.removeItem(Ne.ACTIVE_CAIP_NETWORK_ID)}catch{console.info("Unable to delete active caip network id")}},deleteConnectedConnectorId(r){try{const e=Of(r);pe.removeItem(e)}catch{console.info("Unable to delete connected connector id")}},setAppKitRecent(r){try{const e=ae.getRecentWallets();e.find(i=>i.id===r.id)||(e.unshift(r),e.length>2&&e.pop(),pe.setItem(Ne.RECENT_WALLETS,JSON.stringify(e)))}catch{console.info("Unable to set AppKit recent")}},getRecentWallets(){try{const r=pe.getItem(Ne.RECENT_WALLETS);return r?JSON.parse(r):[]}catch{console.info("Unable to get AppKit recent")}return[]},setConnectedConnectorId(r,e){try{const t=Of(r);pe.setItem(t,e)}catch{console.info("Unable to set Connected Connector Id")}},getActiveNamespace(){try{return pe.getItem(Ne.ACTIVE_NAMESPACE)}catch{console.info("Unable to get active namespace")}},getConnectedConnectorId(r){if(r)try{const e=Of(r);return pe.getItem(e)}catch{console.info("Unable to get connected connector id in namespace ",r)}},setConnectedSocialProvider(r){try{pe.setItem(Ne.CONNECTED_SOCIAL,r)}catch{console.info("Unable to set connected social provider")}},getConnectedSocialProvider(){try{return pe.getItem(Ne.CONNECTED_SOCIAL)}catch{console.info("Unable to get connected social provider")}},deleteConnectedSocialProvider(){try{pe.removeItem(Ne.CONNECTED_SOCIAL)}catch{console.info("Unable to delete connected social provider")}},getConnectedSocialUsername(){try{return pe.getItem(Ne.CONNECTED_SOCIAL_USERNAME)}catch{console.info("Unable to get connected social username")}},getStoredActiveCaipNetworkId(){return pe.getItem(Ne.ACTIVE_CAIP_NETWORK_ID)?.split(":")?.[1]},setConnectionStatus(r){try{pe.setItem(Ne.CONNECTION_STATUS,r)}catch{console.info("Unable to set connection status")}},getConnectionStatus(){try{return pe.getItem(Ne.CONNECTION_STATUS)}catch{return}},getConnectedNamespaces(){try{const r=pe.getItem(Ne.CONNECTED_NAMESPACES);return r?.length?r.split(","):[]}catch{return[]}},setConnectedNamespaces(r){try{const e=Array.from(new Set(r));pe.setItem(Ne.CONNECTED_NAMESPACES,e.join(","))}catch{console.info("Unable to set namespaces in storage")}},addConnectedNamespace(r){try{const e=ae.getConnectedNamespaces();e.includes(r)||(e.push(r),ae.setConnectedNamespaces(e))}catch{console.info("Unable to add connected namespace")}},removeConnectedNamespace(r){try{const e=ae.getConnectedNamespaces(),t=e.indexOf(r);t>-1&&(e.splice(t,1),ae.setConnectedNamespaces(e))}catch{console.info("Unable to remove connected namespace")}},getTelegramSocialProvider(){try{return pe.getItem(Ne.TELEGRAM_SOCIAL_PROVIDER)}catch{return console.info("Unable to get telegram social provider"),null}},setTelegramSocialProvider(r){try{pe.setItem(Ne.TELEGRAM_SOCIAL_PROVIDER,r)}catch{console.info("Unable to set telegram social provider")}},removeTelegramSocialProvider(){try{pe.removeItem(Ne.TELEGRAM_SOCIAL_PROVIDER)}catch{console.info("Unable to remove telegram social provider")}},getBalanceCache(){let r={};try{const e=pe.getItem(Ne.PORTFOLIO_CACHE);r=e?JSON.parse(e):{}}catch{console.info("Unable to get balance cache")}return r},removeAddressFromBalanceCache(r){try{const e=ae.getBalanceCache();pe.setItem(Ne.PORTFOLIO_CACHE,JSON.stringify({...e,[r]:void 0}))}catch{console.info("Unable to remove address from balance cache",r)}},getBalanceCacheForCaipAddress(r){try{const t=ae.getBalanceCache()[r];if(t&&!this.isCacheExpired(t.timestamp,this.cacheExpiry.portfolio))return t.balance;ae.removeAddressFromBalanceCache(r)}catch{console.info("Unable to get balance cache for address",r)}},updateBalanceCache(r){try{const e=ae.getBalanceCache();e[r.caipAddress]=r,pe.setItem(Ne.PORTFOLIO_CACHE,JSON.stringify(e))}catch{console.info("Unable to update balance cache",r)}},getNativeBalanceCache(){let r={};try{const e=pe.getItem(Ne.NATIVE_BALANCE_CACHE);r=e?JSON.parse(e):{}}catch{console.info("Unable to get balance cache")}return r},removeAddressFromNativeBalanceCache(r){try{const e=ae.getBalanceCache();pe.setItem(Ne.NATIVE_BALANCE_CACHE,JSON.stringify({...e,[r]:void 0}))}catch{console.info("Unable to remove address from balance cache",r)}},getNativeBalanceCacheForCaipAddress(r){try{const t=ae.getNativeBalanceCache()[r];if(t&&!this.isCacheExpired(t.timestamp,this.cacheExpiry.nativeBalance))return t;console.info("Discarding cache for address",r),ae.removeAddressFromBalanceCache(r)}catch{console.info("Unable to get balance cache for address",r)}},updateNativeBalanceCache(r){try{const e=ae.getNativeBalanceCache();e[r.caipAddress]=r,pe.setItem(Ne.NATIVE_BALANCE_CACHE,JSON.stringify(e))}catch{console.info("Unable to update balance cache",r)}},getEnsCache(){let r={};try{const e=pe.getItem(Ne.ENS_CACHE);r=e?JSON.parse(e):{}}catch{console.info("Unable to get ens name cache")}return r},getEnsFromCacheForAddress(r){try{const t=ae.getEnsCache()[r];if(t&&!this.isCacheExpired(t.timestamp,this.cacheExpiry.ens))return t.ens;ae.removeEnsFromCache(r)}catch{console.info("Unable to get ens name from cache",r)}},updateEnsCache(r){try{const e=ae.getEnsCache();e[r.address]=r,pe.setItem(Ne.ENS_CACHE,JSON.stringify(e))}catch{console.info("Unable to update ens name cache",r)}},removeEnsFromCache(r){try{const e=ae.getEnsCache();pe.setItem(Ne.ENS_CACHE,JSON.stringify({...e,[r]:void 0}))}catch{console.info("Unable to remove ens name from cache",r)}},getIdentityCache(){let r={};try{const e=pe.getItem(Ne.IDENTITY_CACHE);r=e?JSON.parse(e):{}}catch{console.info("Unable to get identity cache")}return r},getIdentityFromCacheForAddress(r){try{const t=ae.getIdentityCache()[r];if(t&&!this.isCacheExpired(t.timestamp,this.cacheExpiry.identity))return t.identity;ae.removeIdentityFromCache(r)}catch{console.info("Unable to get identity from cache",r)}},updateIdentityCache(r){try{const e=ae.getIdentityCache();e[r.address]={identity:r.identity,timestamp:r.timestamp},pe.setItem(Ne.IDENTITY_CACHE,JSON.stringify(e))}catch{console.info("Unable to update identity cache",r)}},removeIdentityFromCache(r){try{const e=ae.getIdentityCache();pe.setItem(Ne.IDENTITY_CACHE,JSON.stringify({...e,[r]:void 0}))}catch{console.info("Unable to remove identity from cache",r)}},clearAddressCache(){try{pe.removeItem(Ne.PORTFOLIO_CACHE),pe.removeItem(Ne.NATIVE_BALANCE_CACHE),pe.removeItem(Ne.ENS_CACHE),pe.removeItem(Ne.IDENTITY_CACHE)}catch{console.info("Unable to clear address cache")}}},we={isMobile(){return this.isClient()?!!(window?.matchMedia("(pointer:coarse)")?.matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1},checkCaipNetwork(r,e=""){return r?.caipNetworkId.toLocaleLowerCase().includes(e.toLowerCase())},isAndroid(){if(!this.isMobile())return!1;const r=window?.navigator.userAgent.toLowerCase();return we.isMobile()&&r.includes("android")},isIos(){if(!this.isMobile())return!1;const r=window?.navigator.userAgent.toLowerCase();return r.includes("iphone")||r.includes("ipad")},isSafari(){return this.isClient()?(window?.navigator.userAgent.toLowerCase()).includes("safari"):!1},isClient(){return typeof window<"u"},isPairingExpired(r){return r?r-Date.now()<=ui.TEN_SEC_MS:!0},isAllowedRetry(r,e=ui.ONE_SEC_MS){return Date.now()-r>=e},copyToClopboard(r){navigator.clipboard.writeText(r)},isIframe(){try{return window?.self!==window?.top}catch{return!1}},getPairingExpiry(){return Date.now()+ui.FOUR_MINUTES_MS},getNetworkId(r){return r?.split(":")[1]},getPlainAddress(r){return r?.split(":")[2]},async wait(r){return new Promise(e=>{setTimeout(e,r)})},debounce(r,e=500){let t;return(...i)=>{function s(){r(...i)}t&&clearTimeout(t),t=setTimeout(s,e)}},isHttpUrl(r){return r.startsWith("http://")||r.startsWith("https://")},formatNativeUrl(r,e){if(we.isHttpUrl(r))return this.formatUniversalUrl(r,e);let t=r;t.includes("://")||(t=r.replaceAll("/","").replaceAll(":",""),t=`${t}://`),t.endsWith("/")||(t=`${t}/`),this.isTelegram()&&this.isAndroid()&&(e=encodeURIComponent(e));const i=encodeURIComponent(e);return{redirect:`${t}wc?uri=${i}`,href:t}},formatUniversalUrl(r,e){if(!we.isHttpUrl(r))return this.formatNativeUrl(r,e);let t=r;t.endsWith("/")||(t=`${t}/`);const i=encodeURIComponent(e);return{redirect:`${t}wc?uri=${i}`,href:t}},getOpenTargetForPlatform(r){return r==="popupWindow"?r:this.isTelegram()?ae.getTelegramSocialProvider()?"_top":"_blank":r},openHref(r,e,t){window?.open(r,this.getOpenTargetForPlatform(e),t||"noreferrer noopener")},returnOpenHref(r,e,t){return window?.open(r,this.getOpenTargetForPlatform(e),t||"noreferrer noopener")},isTelegram(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)},async preloadImage(r){const e=new Promise((t,i)=>{const s=new Image;s.onload=t,s.onerror=i,s.crossOrigin="anonymous",s.src=r});return Promise.race([e,we.wait(2e3)])},formatBalance(r,e){let t="0.000";if(typeof r=="string"){const i=Number(r);if(i){const s=Math.floor(i*1e3)/1e3;s&&(t=s.toString())}}return`${t}${e?` ${e}`:""}`},formatBalance2(r,e){let t;if(r==="0")t="0";else if(typeof r=="string"){const i=Number(r);i&&(t=i.toString().match(/^-?\d+(?:\.\d{0,3})?/u)?.[0])}return{value:t??"0",rest:t==="0"?"000":"",symbol:e}},getApiUrl(){return ce.W3M_API_URL},getBlockchainApiUrl(){return ce.BLOCKCHAIN_API_RPC_URL},getAnalyticsUrl(){return ce.PULSE_API_URL},getUUID(){return crypto?.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,r=>{const e=Math.random()*16|0;return(r==="x"?e:e&3|8).toString(16)})},parseError(r){return typeof r=="string"?r:typeof r?.issues?.[0]?.message=="string"?r.issues[0].message:r instanceof Error?r.message:"Unknown error"},sortRequestedNetworks(r,e=[]){const t={};return e&&r&&(r.forEach((i,s)=>{t[i]=s}),e.sort((i,s)=>{const n=t[i.id],o=t[s.id];return n!==void 0&&o!==void 0?n-o:n!==void 0?-1:o!==void 0?1:0})),e},calculateBalance(r){let e=0;for(const t of r)e+=t.value??0;return e},formatTokenBalance(r){const e=r.toFixed(2),[t,i]=e.split(".");return{dollars:t,pennies:i}},isAddress(r,e="eip155"){switch(e){case"eip155":if(/^(?:0x)?[0-9a-f]{40}$/iu.test(r)){if(/^(?:0x)?[0-9a-f]{40}$/iu.test(r)||/^(?:0x)?[0-9A-F]{40}$/iu.test(r))return!0}else return!1;return!1;case"solana":return/[1-9A-HJ-NP-Za-km-z]{32,44}$/iu.test(r);default:return!1}},uniqueBy(r,e){const t=new Set;return r.filter(i=>{const s=i[e];return t.has(s)?!1:(t.add(s),!0)})},generateSdkVersion(r,e,t){const s=r.length===0?ui.ADAPTER_TYPES.UNIVERSAL:r.map(n=>n.adapterType).join(",");return`${e}-${s}-${t}`},createAccount(r,e,t,i,s){return{namespace:r,address:e,type:t,publicKey:i,path:s}},isCaipAddress(r){if(typeof r!="string")return!1;const e=r.split(":"),t=e[0];return e.filter(Boolean).length===3&&t in ce.CHAIN_NAME_MAP},isMac(){const r=window?.navigator.userAgent.toLowerCase();return r.includes("macintosh")&&!r.includes("safari")},formatTelegramSocialLoginUrl(r){const e=`--${encodeURIComponent(window?.location.href)}`,t="state=";if(new URL(r).host==="auth.magic.link"){const s="provider_authorization_url=",n=r.substring(r.indexOf(s)+s.length),o=this.injectIntoUrl(decodeURIComponent(n),t,e);return r.replace(n,encodeURIComponent(o))}return this.injectIntoUrl(r,t,e)},injectIntoUrl(r,e,t){const i=r.indexOf(e);if(i===-1)throw new Error(`${e} parameter not found in the URL: ${r}`);const s=r.indexOf("&",i),n=e.length,o=s!==-1?s:r.length,a=r.substring(0,i+n),u=r.substring(i+n,o),c=r.substring(s),l=u+t;return a+l+c}};async function xc(...r){const e=await fetch(...r);if(!e.ok)throw new Error(`HTTP status code: ${e.status}`,{cause:e});return e}class hd{constructor({baseUrl:e,clientId:t}){this.baseUrl=e,this.clientId=t}async get({headers:e,signal:t,cache:i,...s}){const n=this.createUrl(s);return(await xc(n,{method:"GET",headers:e,signal:t,cache:i})).json()}async getBlob({headers:e,signal:t,...i}){const s=this.createUrl(i);return(await xc(s,{method:"GET",headers:e,signal:t})).blob()}async post({body:e,headers:t,signal:i,...s}){const n=this.createUrl(s);return(await xc(n,{method:"POST",headers:t,body:e?JSON.stringify(e):void 0,signal:i})).json()}async put({body:e,headers:t,signal:i,...s}){const n=this.createUrl(s);return(await xc(n,{method:"PUT",headers:t,body:e?JSON.stringify(e):void 0,signal:i})).json()}async delete({body:e,headers:t,signal:i,...s}){const n=this.createUrl(s);return(await xc(n,{method:"DELETE",headers:t,body:e?JSON.stringify(e):void 0,signal:i})).json()}createUrl({path:e,params:t}){const i=new URL(e,this.baseUrl);return t&&Object.entries(t).forEach(([s,n])=>{n&&i.searchParams.append(s,n)}),this.clientId&&i.searchParams.append("clientId",this.clientId),i}}const iB={handleSolanaDeeplinkRedirect(r){if(R.state.activeChain===ce.CHAIN.SOLANA){const e=window.location.href,t=encodeURIComponent(e);if(r==="Phantom"&&!("phantom"in window)){const i=e.startsWith("https")?"https":"http",s=e.split("/")[2],n=encodeURIComponent(`${i}://${s}`);window.location.href=`https://phantom.app/ul/browse/${t}?ref=${n}`}r==="Coinbase Wallet"&&!("coinbaseSolana"in window)&&(window.location.href=`https://go.cb-w.com/dapp?cb_url=${t}`)}}},gi=Qt({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),ns={state:gi,subscribeNetworkImages(r){return Jr(gi.networkImages,()=>r(gi.networkImages))},subscribeKey(r,e){return Si(gi,r,e)},subscribe(r){return Jr(gi,()=>r(gi))},setWalletImage(r,e){gi.walletImages[r]=e},setNetworkImage(r,e){gi.networkImages[r]=e},setChainImage(r,e){gi.chainImages[r]=e},setConnectorImage(r,e){gi.connectorImages={...gi.connectorImages,[r]:e}},setTokenImage(r,e){gi.tokenImages[r]=e},setCurrencyImage(r,e){gi.currencyImages[r]=e}},sB={eip155:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",solana:"a1b58899-f671-4276-6a5e-56ca5bd59700",polkadot:"",bip122:"0b4838db-0161-4ffe-022d-532bf03dba00"},Pf=Qt({networkImagePromises:{}}),r4={async fetchWalletImage(r){if(r)return await be._fetchWalletImage(r),this.getWalletImageById(r)},async fetchNetworkImage(r){if(!r)return;const e=this.getNetworkImageById(r);return e||(Pf.networkImagePromises[r]||(Pf.networkImagePromises[r]=be._fetchNetworkImage(r)),await Pf.networkImagePromises[r],this.getNetworkImageById(r))},getWalletImageById(r){if(r)return ns.state.walletImages[r]},getWalletImage(r){if(r?.image_url)return r?.image_url;if(r?.image_id)return ns.state.walletImages[r.image_id]},getNetworkImage(r){if(r?.assets?.imageUrl)return r?.assets?.imageUrl;if(r?.assets?.imageId)return ns.state.networkImages[r.assets.imageId]},getNetworkImageById(r){if(r)return ns.state.networkImages[r]},getConnectorImage(r){if(r?.imageUrl)return r.imageUrl;if(r?.imageId)return ns.state.connectorImages[r.imageId]},getChainImage(r){return ns.state.networkImages[sB[r]]}},nB={getFeatureValue(r,e){const t=e?.[r];return t===void 0?ui.DEFAULT_FEATURES[r]:t},filterSocialsByPlatform(r){if(!r||!r.length)return r;if(we.isTelegram()){if(we.isIos())return r.filter(e=>e!=="google");if(we.isMac())return r.filter(e=>e!=="x");if(we.isAndroid())return r.filter(e=>!["facebook","x"].includes(e))}return r}},he=Qt({features:ui.DEFAULT_FEATURES,projectId:"",sdkType:"appkit",sdkVersion:"html-wagmi-undefined",defaultAccountTypes:ui.DEFAULT_ACCOUNT_TYPES,enableNetworkSwitch:!0}),J={state:he,subscribeKey(r,e){return Si(he,r,e)},setOptions(r){Object.assign(he,r)},setFeatures(r){if(!r)return;he.features||(he.features=ui.DEFAULT_FEATURES);const e={...he.features,...r};he.features=e,he.features.socials&&(he.features.socials=nB.filterSocialsByPlatform(he.features.socials))},setProjectId(r){he.projectId=r},setCustomRpcUrls(r){he.customRpcUrls=r},setAllWallets(r){he.allWallets=r},setIncludeWalletIds(r){he.includeWalletIds=r},setExcludeWalletIds(r){he.excludeWalletIds=r},setFeaturedWalletIds(r){he.featuredWalletIds=r},setTokens(r){he.tokens=r},setTermsConditionsUrl(r){he.termsConditionsUrl=r},setPrivacyPolicyUrl(r){he.privacyPolicyUrl=r},setCustomWallets(r){he.customWallets=r},setIsSiweEnabled(r){he.isSiweEnabled=r},setIsUniversalProvider(r){he.isUniversalProvider=r},setSdkVersion(r){he.sdkVersion=r},setMetadata(r){he.metadata=r},setDisableAppend(r){he.disableAppend=r},setEIP6963Enabled(r){he.enableEIP6963=r},setDebug(r){he.debug=r},setEnableWalletConnect(r){he.enableWalletConnect=r},setEnableWalletGuide(r){he.enableWalletGuide=r},setEnableAuthLogger(r){he.enableAuthLogger=r},setEnableWallets(r){he.enableWallets=r},setHasMultipleAddresses(r){he.hasMultipleAddresses=r},setSIWX(r){he.siwx=r},setConnectMethodsOrder(r){he.features={...he.features,connectMethodsOrder:r}},setWalletFeaturesOrder(r){he.features={...he.features,walletFeaturesOrder:r}},setSocialsOrder(r){he.features={...he.features,socials:r}},setCollapseWallets(r){he.features={...he.features,collapseWallets:r}},setEnableEmbedded(r){he.enableEmbedded=r},setAllowUnsupportedChain(r){he.allowUnsupportedChain=r},setManualWCControl(r){he.manualWCControl=r},setEnableNetworkSwitch(r){he.enableNetworkSwitch=r},setDefaultAccountTypes(r={}){Object.entries(r).forEach(([e,t])=>{t&&(he.defaultAccountTypes[e]=t)})},setUniversalProviderConfigOverride(r){he.universalProviderConfigOverride=r},getUniversalProviderConfigOverride(){return he.universalProviderConfigOverride},getSnapshot(){return fu(he)}},an=Qt({message:"",variant:"info",open:!1}),dh={state:an,subscribeKey(r,e){return Si(an,r,e)},open(r,e){const{debug:t}=J.state,{shortMessage:i,longMessage:s}=r;t&&(an.message=i,an.variant=e,an.open=!0),s&&console.error(typeof s=="function"?s():s)},close(){an.open=!1,an.message="",an.variant="info"}},oB=we.getAnalyticsUrl(),aB=new hd({baseUrl:oB,clientId:null}),cB=["MODAL_CREATED"],Us=Qt({timestamp:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"}}),bt={state:Us,subscribe(r){return Jr(Us,()=>r(Us))},getSdkProperties(){const{projectId:r,sdkType:e,sdkVersion:t}=J.state;return{projectId:r,st:e,sv:t||"html-wagmi-4.2.2"}},async _sendAnalyticsEvent(r){try{const e=ue.state.address;if(cB.includes(r.data.event)||typeof window>"u")return;await aB.post({path:"/e",params:bt.getSdkProperties(),body:{eventId:we.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:r.timestamp,props:{...r.data,address:e}}}),Us.reportedErrors.FORBIDDEN=!1}catch(e){e instanceof Error&&e.cause instanceof Response&&e.cause.status===ce.HTTP_STATUS_CODES.FORBIDDEN&&!Us.reportedErrors.FORBIDDEN&&(dh.open({shortMessage:"Invalid App Configuration",longMessage:`Origin ${Qc()?window.origin:"uknown"} not found on Allowlist - update configuration on cloud.reown.com`},"error"),Us.reportedErrors.FORBIDDEN=!0)}},sendEvent(r){Us.timestamp=Date.now(),Us.data=r,J.state.features?.analytics&&bt._sendAnalyticsEvent(Us)}},uB=we.getApiUrl(),Qr=new hd({baseUrl:uB,clientId:null}),lB="40",Nb="4",hB=20,He=Qt({promises:{},page:1,count:0,featured:[],allFeatured:[],recommended:[],allRecommended:[],wallets:[],search:[],isAnalyticsEnabled:!1,excludedWallets:[],isFetchingRecommendedWallets:!1}),be={state:He,subscribeKey(r,e){return Si(He,r,e)},_getSdkProperties(){const{projectId:r,sdkType:e,sdkVersion:t}=J.state;return{projectId:r,st:e||"appkit",sv:t||"html-wagmi-4.2.2"}},_filterOutExtensions(r){return J.state.isUniversalProvider?r.filter(e=>!!(e.mobile_link||e.desktop_link||e.webapp_link)):r},async _fetchWalletImage(r){const e=`${Qr.baseUrl}/getWalletImage/${r}`,t=await Qr.getBlob({path:e,params:be._getSdkProperties()});ns.setWalletImage(r,URL.createObjectURL(t))},async _fetchNetworkImage(r){const e=`${Qr.baseUrl}/public/getAssetImage/${r}`,t=await Qr.getBlob({path:e,params:be._getSdkProperties()});ns.setNetworkImage(r,URL.createObjectURL(t))},async _fetchConnectorImage(r){const e=`${Qr.baseUrl}/public/getAssetImage/${r}`,t=await Qr.getBlob({path:e,params:be._getSdkProperties()});ns.setConnectorImage(r,URL.createObjectURL(t))},async _fetchCurrencyImage(r){const e=`${Qr.baseUrl}/public/getCurrencyImage/${r}`,t=await Qr.getBlob({path:e,params:be._getSdkProperties()});ns.setCurrencyImage(r,URL.createObjectURL(t))},async _fetchTokenImage(r){const e=`${Qr.baseUrl}/public/getTokenImage/${r}`,t=await Qr.getBlob({path:e,params:be._getSdkProperties()});ns.setTokenImage(r,URL.createObjectURL(t))},async fetchNetworkImages(){const e=R.getAllRequestedCaipNetworks()?.map(({assets:t})=>t?.imageId).filter(Boolean).filter(t=>!r4.getNetworkImageById(t));e&&await Promise.allSettled(e.map(t=>be._fetchNetworkImage(t)))},async fetchConnectorImages(){const{connectors:r}=ye.state,e=r.map(({imageId:t})=>t).filter(Boolean);await Promise.allSettled(e.map(t=>be._fetchConnectorImage(t)))},async fetchCurrencyImages(r=[]){await Promise.allSettled(r.map(e=>be._fetchCurrencyImage(e)))},async fetchTokenImages(r=[]){await Promise.allSettled(r.map(e=>be._fetchTokenImage(e)))},async fetchFeaturedWallets(){const{featuredWalletIds:r}=J.state;if(r?.length){const{data:e}=await Qr.get({path:"/getWallets",params:{...be._getSdkProperties(),page:"1",entries:r?.length?String(r.length):Nb,include:r?.join(",")}});e.sort((i,s)=>r.indexOf(i.id)-r.indexOf(s.id));const t=e.map(i=>i.image_id).filter(Boolean);await Promise.allSettled(t.map(i=>be._fetchWalletImage(i))),He.featured=e,He.allFeatured=e}},async fetchRecommendedWallets(){try{He.isFetchingRecommendedWallets=!0;const{includeWalletIds:r,excludeWalletIds:e,featuredWalletIds:t}=J.state,i=[...e??[],...t??[]].filter(Boolean),s=R.getRequestedCaipNetworkIds().join(","),{data:n,count:o}=await Qr.get({path:"/getWallets",params:{...be._getSdkProperties(),page:"1",chains:s,entries:Nb,include:r?.join(","),exclude:i?.join(",")}}),a=ae.getRecentWallets(),u=n.map(l=>l.image_id).filter(Boolean),c=a.map(l=>l.image_id).filter(Boolean);await Promise.allSettled([...u,...c].map(l=>be._fetchWalletImage(l))),He.recommended=n,He.allRecommended=n,He.count=o??0}catch{}finally{He.isFetchingRecommendedWallets=!1}},async fetchWallets({page:r}){const{includeWalletIds:e,excludeWalletIds:t,featuredWalletIds:i}=J.state,s=R.getRequestedCaipNetworkIds().join(","),n=[...He.recommended.map(({id:c})=>c),...t??[],...i??[]].filter(Boolean),{data:o,count:a}=await Qr.get({path:"/getWallets",params:{...be._getSdkProperties(),page:String(r),entries:lB,chains:s,include:e?.join(","),exclude:n.join(",")}}),u=o.slice(0,hB).map(c=>c.image_id).filter(Boolean);await Promise.allSettled(u.map(c=>be._fetchWalletImage(c))),He.wallets=we.uniqueBy([...He.wallets,...be._filterOutExtensions(o)],"id"),He.count=a>He.count?a:He.count,He.page=r},async initializeExcludedWallets({ids:r}){const e=R.getRequestedCaipNetworkIds().join(","),{data:t}=await Qr.get({path:"/getWallets",params:{...be._getSdkProperties(),page:"1",entries:String(r.length),chains:e,include:r?.join(",")}});t&&t.forEach(i=>{i?.rdns&&He.excludedWallets.push({rdns:i.rdns,name:i.name})})},async searchWallet({search:r,badge:e}){const{includeWalletIds:t,excludeWalletIds:i}=J.state;He.search=[];const s=R.getRequestedCaipNetworkIds().join(","),{data:n}=await Qr.get({path:"/getWallets",params:{...be._getSdkProperties(),page:"1",entries:"100",search:r?.trim(),badge_type:e,chains:s,include:t?.join(","),exclude:i?.join(",")}});bt.sendEvent({type:"track",event:"SEARCH_WALLET",properties:{badge:e??"",search:r??""}});const o=n.map(a=>a.image_id).filter(Boolean);await Promise.allSettled([...o.map(a=>be._fetchWalletImage(a)),we.wait(300)]),He.search=be._filterOutExtensions(n)},initPromise(r,e){const t=He.promises[r];return t||(He.promises[r]=e())},prefetch({fetchConnectorImages:r=!0,fetchFeaturedWallets:e=!0,fetchRecommendedWallets:t=!0,fetchNetworkImages:i=!0}={}){const s=[r&&be.initPromise("connectorImages",be.fetchConnectorImages),e&&be.initPromise("featuredWallets",be.fetchFeaturedWallets),t&&be.initPromise("recommendedWallets",be.fetchRecommendedWallets),i&&be.initPromise("networkImages",be.fetchNetworkImages)].filter(Boolean);return Promise.allSettled(s)},prefetchAnalyticsConfig(){J.state.features?.analytics&&be.fetchAnalyticsConfig()},async fetchAnalyticsConfig(){try{const{isAnalyticsEnabled:r}=await Qr.get({path:"/getAnalyticsConfig",params:be._getSdkProperties()});J.setFeatures({analytics:r})}catch{J.setFeatures({analytics:!1})}},setFilterByNamespace(r){if(!r){He.featured=He.allFeatured,He.recommended=He.allRecommended;return}const e=R.getRequestedCaipNetworkIds().join(",");He.featured=He.allFeatured.filter(t=>t.chains?.some(i=>e.includes(i))),He.recommended=He.allRecommended.filter(t=>t.chains?.some(i=>e.includes(i)))}},Ye=Qt({view:"Connect",history:["Connect"],transactionStack:[]}),Ke={state:Ye,subscribeKey(r,e){return Si(Ye,r,e)},pushTransactionStack(r){Ye.transactionStack.push(r)},popTransactionStack(r){const e=Ye.transactionStack.pop();if(e)if(r)this.goBack(),e?.onCancel?.();else{if(e.goBack)this.goBack();else if(e.replace){const i=Ye.history.indexOf("ConnectingSiwe");i>0?this.goBackToIndex(i-1):(lr.close(),Ye.history=[])}else e.view&&this.reset(e.view);e?.onSuccess?.()}},push(r,e){r!==Ye.view&&(Ye.view=r,Ye.history.push(r),Ye.data=e)},reset(r,e){Ye.view=r,Ye.history=[r],Ye.data=e},replace(r,e){Ye.history.at(-1)===r||(Ye.view=r,Ye.history[Ye.history.length-1]=r,Ye.data=e)},goBack(){const r=!R.state.activeCaipAddress&&this.state.view==="ConnectingFarcaster";if(Ye.history.length>1&&!Ye.history.includes("UnsupportedChain")){Ye.history.pop();const[e]=Ye.history.slice(-1);e&&(Ye.view=e)}else lr.close();Ye.data?.wallet&&(Ye.data.wallet=void 0),setTimeout(()=>{if(r){ue.setFarcasterUrl(void 0,R.state.activeChain);const e=ye.getAuthConnector();e?.provider?.reload();const t=fu(J.state);e?.provider?.syncDappData?.({metadata:t.metadata,sdkVersion:t.sdkVersion,projectId:t.projectId,sdkType:t.sdkType})}},100)},goBackToIndex(r){if(Ye.history.length>1){Ye.history=Ye.history.slice(0,r+1);const[e]=Ye.history.slice(-1);e&&(Ye.view=e)}}},Rs=Qt({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),Hr={state:Rs,subscribe(r){return Jr(Rs,()=>r(Rs))},setThemeMode(r){Rs.themeMode=r;try{const e=ye.getAuthConnector();if(e){const t=Hr.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:r,themeVariables:t,w3mThemeVariables:bn(t,r)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(r){Rs.themeVariables={...Rs.themeVariables,...r};try{const e=ye.getAuthConnector();if(e){const t=Hr.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:t,w3mThemeVariables:bn(Rs.themeVariables,Rs.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return fu(Rs)}},i4={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0},Ge=Qt({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:{...i4}}),ye={state:Ge,subscribe(r){return Jr(Ge,()=>{r(Ge)})},subscribeKey(r,e){return Si(Ge,r,e)},initialize(r){r.forEach(e=>{const t=ae.getConnectedConnectorId(e);t&&this.setConnectorId(t,e)})},setActiveConnector(r){r&&(Ge.activeConnector=uo(r))},setConnectors(r){r.filter(t=>!Ge.allConnectors.some(i=>i.id===t.id&&this.getConnectorName(i.name)===this.getConnectorName(t.name)&&i.chain===t.chain)).forEach(t=>{t.type!=="MULTI_CHAIN"&&Ge.allConnectors.push(uo(t))}),Ge.connectors=this.mergeMultiChainConnectors(Ge.allConnectors)},removeAdapter(r){Ge.allConnectors=Ge.allConnectors.filter(e=>e.chain!==r),Ge.connectors=this.mergeMultiChainConnectors(Ge.allConnectors)},mergeMultiChainConnectors(r){const e=this.generateConnectorMapByName(r),t=[];return e.forEach(i=>{const s=i[0],n=s?.id===ce.CONNECTOR_ID.AUTH;i.length>1&&s?t.push({name:s.name,imageUrl:s.imageUrl,imageId:s.imageId,connectors:[...i],type:n?"AUTH":"MULTI_CHAIN",chain:"eip155",id:s?.id||""}):s&&t.push(s)}),t},generateConnectorMapByName(r){const e=new Map;return r.forEach(t=>{const{name:i}=t,s=this.getConnectorName(i);if(!s)return;const n=e.get(s)||[];n.find(a=>a.chain===t.chain)||n.push(t),e.set(s,n)}),e},getConnectorName(r){return r&&({"Trust Wallet":"Trust"}[r]||r)},getUniqueConnectorsByName(r){const e=[];return r.forEach(t=>{e.find(i=>i.chain===t.chain)||e.push(t)}),e},addConnector(r){if(r.id===ce.CONNECTOR_ID.AUTH){const e=r,t=fu(J.state),i=Hr.getSnapshot().themeMode,s=Hr.getSnapshot().themeVariables;e?.provider?.syncDappData?.({metadata:t.metadata,sdkVersion:t.sdkVersion,projectId:t.projectId,sdkType:t.sdkType}),e?.provider?.syncTheme({themeMode:i,themeVariables:s,w3mThemeVariables:bn(s,i)}),this.setConnectors([r])}else this.setConnectors([r])},getAuthConnector(r){const e=r||R.state.activeChain,t=Ge.connectors.find(i=>i.id===ce.CONNECTOR_ID.AUTH);if(t)return t?.connectors?.length?t.connectors.find(s=>s.chain===e):t},getAnnouncedConnectorRdns(){return Ge.connectors.filter(r=>r.type==="ANNOUNCED").map(r=>r.info?.rdns)},getConnectorById(r){return Ge.allConnectors.find(e=>e.id===r)},getConnector(r,e){return Ge.allConnectors.filter(i=>i.chain===R.state.activeChain).find(i=>i.explorerId===r||i.info?.rdns===e)},syncIfAuthConnector(r){if(r.id!=="ID_AUTH")return;const e=r,t=fu(J.state),i=Hr.getSnapshot().themeMode,s=Hr.getSnapshot().themeVariables;e?.provider?.syncDappData?.({metadata:t.metadata,sdkVersion:t.sdkVersion,sdkType:t.sdkType,projectId:t.projectId}),e.provider.syncTheme({themeMode:i,themeVariables:s,w3mThemeVariables:bn(s,i)})},getConnectorsByNamespace(r){const e=Ge.allConnectors.filter(t=>t.chain===r);return this.mergeMultiChainConnectors(e)},selectWalletConnector(r){const e=ye.getConnector(r.id,r.rdns);R.state.activeChain===ce.CHAIN.SOLANA&&iB.handleSolanaDeeplinkRedirect(e?.name||r.name||""),e?Ke.push("ConnectingExternal",{connector:e}):Ke.push("ConnectingWalletConnect",{wallet:r})},getConnectors(r){return r?this.getConnectorsByNamespace(r):this.mergeMultiChainConnectors(Ge.allConnectors)},setFilterByNamespace(r){Ge.filterByNamespace=r,Ge.connectors=this.getConnectors(r),be.setFilterByNamespace(r)},setConnectorId(r,e){r&&(Ge.activeConnectorIds={...Ge.activeConnectorIds,[e]:r},ae.setConnectedConnectorId(e,r))},removeConnectorId(r){Ge.activeConnectorIds={...Ge.activeConnectorIds,[r]:void 0},ae.deleteConnectedConnectorId(r)},getConnectorId(r){if(r)return Ge.activeConnectorIds[r]},isConnected(r){return r?!!Ge.activeConnectorIds[r]:Object.values(Ge.activeConnectorIds).some(e=>!!e)},resetConnectorIds(){Ge.activeConnectorIds={...i4}}};function Fl(r,e){return ye.getConnectorId(r)===e}function dB(r){const e=Array.from(R.state.chains.keys());let t=[];return r?(t.push([r,R.state.chains.get(r)]),Fl(r,ce.CONNECTOR_ID.WALLET_CONNECT)?e.forEach(i=>{i!==r&&Fl(i,ce.CONNECTOR_ID.WALLET_CONNECT)&&t.push([i,R.state.chains.get(i)])}):Fl(r,ce.CONNECTOR_ID.AUTH)&&e.forEach(i=>{i!==r&&Fl(i,ce.CONNECTOR_ID.AUTH)&&t.push([i,R.state.chains.get(i)])})):t=Array.from(R.state.chains.entries()),t}var fB=Object.defineProperty,pB=(r,e,t)=>e in r?fB(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,vb=(r,e,t)=>pB(r,typeof e!="symbol"?e+"":e,t);let gB=class extends Ti{constructor(e){super(),this.opts=e,vb(this,"protocol","wc"),vb(this,"version",2)}};var yB=Object.defineProperty,wB=(r,e,t)=>e in r?yB(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,mB=(r,e,t)=>wB(r,e+"",t);let bB=class extends Ti{constructor(e,t){super(),this.core=e,this.logger=t,mB(this,"records",new Map)}},MB=class{constructor(e,t){this.logger=e,this.core=t}},NB=class extends Ti{constructor(e,t){super(),this.relayer=e,this.logger=t}},vB=class extends Ti{constructor(e){super()}},IB=class{constructor(e,t,i,s){this.core=e,this.logger=t,this.name=i}},DB=class extends Ti{constructor(e,t){super(),this.relayer=e,this.logger=t}},AB=class extends Ti{constructor(e,t){super(),this.core=e,this.logger=t}},EB=class{constructor(e,t,i){this.core=e,this.logger=t,this.store=i}},TB=class{constructor(e,t){this.projectId=e,this.logger=t}},SB=class{constructor(e,t,i){this.core=e,this.logger=t,this.telemetryEnabled=i}};var jB=Object.defineProperty,xB=(r,e,t)=>e in r?jB(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ib=(r,e,t)=>xB(r,typeof e!="symbol"?e+"":e,t);let CB=class{constructor(e){this.opts=e,Ib(this,"protocol","wc"),Ib(this,"version",2)}},_B=class{constructor(e){this.client=e}};const pn={SAFE_RPC_METHODS:["eth_accounts","eth_blockNumber","eth_call","eth_chainId","eth_estimateGas","eth_feeHistory","eth_gasPrice","eth_getAccount","eth_getBalance","eth_getBlockByHash","eth_getBlockByNumber","eth_getBlockReceipts","eth_getBlockTransactionCountByHash","eth_getBlockTransactionCountByNumber","eth_getCode","eth_getFilterChanges","eth_getFilterLogs","eth_getLogs","eth_getProof","eth_getStorageAt","eth_getTransactionByBlockHashAndIndex","eth_getTransactionByBlockNumberAndIndex","eth_getTransactionByHash","eth_getTransactionCount","eth_getTransactionReceipt","eth_getUncleCountByBlockHash","eth_getUncleCountByBlockNumber","eth_maxPriorityFeePerGas","eth_newBlockFilter","eth_newFilter","eth_newPendingTransactionFilter","eth_sendRawTransaction","eth_syncing","eth_uninstallFilter","wallet_getCapabilities","wallet_getCallsStatus","eth_getUserOperationReceipt","eth_estimateUserOperationGas","eth_getUserOperationByHash","eth_supportedEntryPoints","wallet_getAssets"],NOT_SAFE_RPC_METHODS:["personal_sign","eth_signTypedData_v4","eth_sendTransaction","solana_signMessage","solana_signTransaction","solana_signAllTransactions","solana_signAndSendTransaction","wallet_sendCalls","wallet_grantPermissions","wallet_revokePermissions","eth_sendUserOperation"],GET_CHAIN_ID:"eth_chainId",RPC_METHOD_NOT_ALLOWED_MESSAGE:"Requested RPC call is not allowed",RPC_METHOD_NOT_ALLOWED_UI_MESSAGE:"Action not allowed",ACCOUNT_TYPES:{EOA:"eoa",SMART_ACCOUNT:"smartAccount"}},Wn=Object.freeze({message:"",variant:"success",svg:void 0,open:!1,autoClose:!0}),hr=Qt({...Wn}),Pr={state:hr,subscribeKey(r,e){return Si(hr,r,e)},showLoading(r,e={}){this._showMessage({message:r,variant:"loading",...e})},showSuccess(r){this._showMessage({message:r,variant:"success"})},showSvg(r,e){this._showMessage({message:r,svg:e})},showError(r){const e=we.parseError(r);this._showMessage({message:e,variant:"error"})},hide(){hr.message=Wn.message,hr.variant=Wn.variant,hr.svg=Wn.svg,hr.open=Wn.open,hr.autoClose=Wn.autoClose},_showMessage({message:r,svg:e,variant:t="success",autoClose:i=Wn.autoClose}){hr.open?(hr.open=!1,setTimeout(()=>{hr.message=r,hr.variant=t,hr.svg=e,hr.open=!0,hr.autoClose=i},150)):(hr.message=r,hr.variant=t,hr.svg=e,hr.open=!0,hr.autoClose=i)}},Xc={getSIWX(){return J.state.siwx},async initializeIfEnabled(){const r=J.state.siwx,e=R.getActiveCaipAddress();if(!(r&&e))return;const[t,i,s]=e.split(":");if(R.checkIfSupportedNetwork(t))try{if((await r.getSessions(`${t}:${i}`,s)).length)return;await lr.open({view:"SIWXSignMessage"})}catch(n){console.error("SIWXUtil:initializeIfEnabled",n),bt.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties()}),await mt._getClient()?.disconnect().catch(console.error),Ke.reset("Connect"),Pr.showError("A problem occurred while trying initialize authentication")}},async requestSignMessage(){const r=J.state.siwx,e=we.getPlainAddress(R.getActiveCaipAddress()),t=R.getActiveCaipNetwork(),i=mt._getClient();if(!r)throw new Error("SIWX is not enabled");if(!e)throw new Error("No ActiveCaipAddress found");if(!t)throw new Error("No ActiveCaipNetwork or client found");if(!i)throw new Error("No ConnectionController client found");try{const s=await r.createMessage({chainId:t.caipNetworkId,accountAddress:e}),n=s.toString();ye.getConnectorId(t.chainNamespace)===ce.CONNECTOR_ID.AUTH&&Ke.pushTransactionStack({view:null,goBack:!1,replace:!0});const a=await i.signMessage(n);await r.addSession({data:s,message:n,signature:a}),lr.close(),bt.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:this.getSIWXEventProperties()})}catch(s){const n=this.getSIWXEventProperties();(!lr.state.open||Ke.state.view==="ApproveTransaction")&&await lr.open({view:"SIWXSignMessage"}),n.isSmartAccount?Pr.showError("This application might not support Smart Accounts"):Pr.showError("Signature declined"),bt.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:n}),console.error("SWIXUtil:requestSignMessage",s)}},async cancelSignMessage(){try{this.getSIWX()?.getRequired?.()?await mt.disconnect():lr.close(),Ke.reset("Connect"),bt.sendEvent({event:"CLICK_CANCEL_SIWX",type:"track",properties:this.getSIWXEventProperties()})}catch(r){console.error("SIWXUtil:cancelSignMessage",r)}},async getSessions(){const r=J.state.siwx,e=we.getPlainAddress(R.getActiveCaipAddress()),t=R.getActiveCaipNetwork();return r&&e&&t?r.getSessions(t.caipNetworkId,e):[]},async isSIWXCloseDisabled(){const r=this.getSIWX();if(r){const e=Ke.state.view==="ApproveTransaction",t=Ke.state.view==="SIWXSignMessage";if(e||t)return r.getRequired?.()&&(await this.getSessions()).length===0}return!1},async universalProviderAuthenticate({universalProvider:r,chains:e,methods:t}){const i=Xc.getSIWX(),s=new Set(e.map(a=>a.split(":")[0]));if(!i||s.size!==1||!s.has("eip155"))return!1;const n=await i.createMessage({chainId:R.getActiveCaipNetwork()?.caipNetworkId||"",accountAddress:""}),o=await r.authenticate({nonce:n.nonce,domain:n.domain,uri:n.uri,exp:n.expirationTime,iat:n.issuedAt,nbf:n.notBefore,requestId:n.requestId,version:n.version,resources:n.resources,statement:n.statement,chainId:n.chainId,methods:t,chains:[n.chainId,...e.filter(a=>a!==n.chainId)]});if(Pr.showLoading("Authenticating...",{autoClose:!1}),ue.setConnectedWalletInfo({...o.session.peer.metadata,name:o.session.peer.metadata.name,icon:o.session.peer.metadata.icons?.[0],type:"WALLET_CONNECT"},Array.from(s)[0]),o?.auths?.length){const a=o.auths.map(u=>{const c=r.client.formatAuthMessage({request:u.p,iss:u.p.iss});return{data:{...u.p,accountAddress:u.p.iss.split(":").slice(-1).join(""),chainId:u.p.iss.split(":").slice(2,4).join(":"),uri:u.p.aud,version:u.p.version||n.version,expirationTime:u.p.exp,issuedAt:u.p.iat,notBefore:u.p.nbf},message:c,signature:u.s.s,cacao:u}});try{await i.setSessions(a),bt.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:Xc.getSIWXEventProperties()})}catch(u){throw console.error("SIWX:universalProviderAuth - failed to set sessions",u),bt.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:Xc.getSIWXEventProperties()}),await r.disconnect().catch(console.error),u}finally{Pr.hide()}}return!0},getSIWXEventProperties(){return{network:R.state.activeCaipNetwork?.caipNetworkId||"",isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT}},async clearSessions(){const r=this.getSIWX();r&&await r.setSessions([])}},yt=Qt({transactions:[],coinbaseTransactions:{},transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),OB={state:yt,subscribe(r){return Jr(yt,()=>r(yt))},setLastNetworkInView(r){yt.lastNetworkInView=r},async fetchTransactions(r,e){if(!r)throw new Error("Transactions can't be fetched without an accountAddress");yt.loading=!0;try{const t=await de.fetchTransactions({account:r,cursor:yt.next,onramp:e,cache:e==="coinbase"?"no-cache":void 0,chainId:R.state.activeCaipNetwork?.caipNetworkId}),i=this.filterSpamTransactions(t.data),s=this.filterByConnectedChain(i),n=[...yt.transactions,...s];yt.loading=!1,e==="coinbase"?yt.coinbaseTransactions=this.groupTransactionsByYearAndMonth(yt.coinbaseTransactions,t.data):(yt.transactions=n,yt.transactionsByYear=this.groupTransactionsByYearAndMonth(yt.transactionsByYear,s)),yt.empty=n.length===0,yt.next=t.next?t.next:void 0}catch{bt.sendEvent({type:"track",event:"ERROR_FETCH_TRANSACTIONS",properties:{address:r,projectId:J.state.projectId,cursor:yt.next,isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT}}),Pr.showError("Failed to fetch transactions"),yt.loading=!1,yt.empty=!0,yt.next=void 0}},groupTransactionsByYearAndMonth(r={},e=[]){const t=r;return e.forEach(i=>{const s=new Date(i.metadata.minedAt).getFullYear(),n=new Date(i.metadata.minedAt).getMonth(),o=t[s]??{},u=(o[n]??[]).filter(c=>c.id!==i.id);t[s]={...o,[n]:[...u,i].sort((c,l)=>new Date(l.metadata.minedAt).getTime()-new Date(c.metadata.minedAt).getTime())}}),t},filterSpamTransactions(r){return r.filter(e=>!e.transfers.every(i=>i.nft_info?.flags.is_spam===!0))},filterByConnectedChain(r){const e=R.state.activeCaipNetwork?.caipNetworkId;return r.filter(i=>i.metadata.chain===e)},clearCursor(){yt.next=void 0},resetTransactions(){yt.transactions=[],yt.transactionsByYear={},yt.lastNetworkInView=void 0,yt.loading=!1,yt.empty=!1,yt.next=void 0}},xt=Qt({wcError:!1,buffering:!1,status:"disconnected"});let qo;const mt={state:xt,subscribeKey(r,e){return Si(xt,r,e)},_getClient(){return xt._client},setClient(r){xt._client=uo(r)},async connectWalletConnect(){if(we.isTelegram()||we.isSafari()&&we.isIos()){if(qo){await qo,qo=void 0;return}if(!we.isPairingExpired(xt?.wcPairingExpiry)){const r=xt.wcUri;xt.wcUri=r;return}qo=this._getClient()?.connectWalletConnect?.().catch(()=>{}),this.state.status="connecting",await qo,qo=void 0,xt.wcPairingExpiry=void 0,this.state.status="connected"}else await this._getClient()?.connectWalletConnect?.()},async connectExternal(r,e,t=!0){await this._getClient()?.connectExternal?.(r),t&&R.setActiveNamespace(e)},async reconnectExternal(r){await this._getClient()?.reconnectExternal?.(r);const e=r.chain||R.state.activeChain;e&&ye.setConnectorId(r.id,e)},async setPreferredAccountType(r){lr.setLoading(!0,R.state.activeChain);const e=ye.getAuthConnector();e&&(await e?.provider.setPreferredAccount(r),await this.reconnectExternal(e),lr.setLoading(!1,R.state.activeChain),bt.sendEvent({type:"track",event:"SET_PREFERRED_ACCOUNT_TYPE",properties:{accountType:r,network:R.state.activeCaipNetwork?.caipNetworkId||""}}))},async signMessage(r){return this._getClient()?.signMessage(r)},parseUnits(r,e){return this._getClient()?.parseUnits(r,e)},formatUnits(r,e){return this._getClient()?.formatUnits(r,e)},async sendTransaction(r){return this._getClient()?.sendTransaction(r)},async getCapabilities(r){return this._getClient()?.getCapabilities(r)},async grantPermissions(r){return this._getClient()?.grantPermissions(r)},async walletGetAssets(r){return this._getClient()?.walletGetAssets(r)??{}},async estimateGas(r){return this._getClient()?.estimateGas(r)},async writeContract(r){return this._getClient()?.writeContract(r)},async getEnsAddress(r){return this._getClient()?.getEnsAddress(r)},async getEnsAvatar(r){return this._getClient()?.getEnsAvatar(r)},checkInstalled(r){return this._getClient()?.checkInstalled?.(r)||!1},resetWcConnection(){xt.wcUri=void 0,xt.wcPairingExpiry=void 0,xt.wcLinking=void 0,xt.recentWallet=void 0,xt.status="disconnected",OB.resetTransactions(),ae.deleteWalletConnectDeepLink()},resetUri(){xt.wcUri=void 0,xt.wcPairingExpiry=void 0},finalizeWcConnection(){const{wcLinking:r,recentWallet:e}=mt.state;r&&ae.setWalletConnectDeepLink(r),e&&ae.setAppKitRecent(e),bt.sendEvent({type:"track",event:"CONNECT_SUCCESS",properties:{method:r?"mobile":"qrcode",name:Ke.state.data?.wallet?.name||"Unknown"}})},setWcBasic(r){xt.wcBasic=r},setUri(r){xt.wcUri=r,xt.wcPairingExpiry=we.getPairingExpiry()},setWcLinking(r){xt.wcLinking=r},setWcError(r){xt.wcError=r,xt.buffering=!1},setRecentWallet(r){xt.recentWallet=r},setBuffering(r){xt.buffering=r},setStatus(r){xt.status=r},async disconnect(r){try{lr.setLoading(!0,r),await Xc.clearSessions(),await R.disconnect(r),lr.setLoading(!1,r),ye.setFilterByNamespace(void 0)}catch{throw new Error("Failed to disconnect")}}},Cc=Qt({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1}),Ws={state:Cc,subscribe(r){return Jr(Cc,()=>r(Cc))},set(r){Object.assign(Cc,{...Cc,...r})}};function zB(r,{strict:e=!0}={}){return!r||typeof r!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(r):r.startsWith("0x")}function Db(r){return zB(r,{strict:!1})?Math.ceil((r.length-2)/2):r.length}const s4="2.48.8";let kf={getDocsUrl:({docsBaseUrl:r,docsPath:e="",docsSlug:t})=>e?`${r??"https://viem.sh"}${e}${t?`#${t}`:""}`:void 0,version:`viem@${s4}`},xs=class Hp extends Error{constructor(e,t={}){const i=t.cause instanceof Hp?t.cause.details:t.cause?.message?t.cause.message:t.details,s=t.cause instanceof Hp&&t.cause.docsPath||t.docsPath,n=kf.getDocsUrl?.({...t,docsPath:s}),o=[e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...n?[`Docs: ${n}`]:[],...i?[`Details: ${i}`]:[],...kf.version?[`Version: ${kf.version}`]:[]].join(`
21
+ `);super(o,t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=i,this.docsPath=s,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=s4}walk(e){return n4(this,e)}};function n4(r,e){return e?.(r)?r:r&&typeof r=="object"&&"cause"in r&&r.cause!==void 0?n4(r.cause,e):e?null:r}let o4=class extends xs{constructor({size:e,targetSize:t,type:i}){super(`${i.charAt(0).toUpperCase()}${i.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}};function r0(r,{dir:e,size:t=32}={}){return typeof r=="string"?LB(r,{dir:e,size:t}):PB(r,{dir:e,size:t})}function LB(r,{dir:e,size:t=32}={}){if(t===null)return r;const i=r.replace("0x","");if(i.length>t*2)throw new o4({size:Math.ceil(i.length/2),targetSize:t,type:"hex"});return`0x${i[e==="right"?"padEnd":"padStart"](t*2,"0")}`}function PB(r,{dir:e,size:t=32}={}){if(t===null)return r;if(r.length>t)throw new o4({size:r.length,targetSize:t,type:"bytes"});const i=new Uint8Array(t);for(let s=0;s<t;s++){const n=e==="right";i[n?s:t-s-1]=r[n?s:r.length-s-1]}return i}let kB=class extends xs{constructor({max:e,min:t,signed:i,size:s,value:n}){super(`Number "${n}" is not in safe ${s?`${s*8}-bit ${i?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}},UB=class extends xs{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}};function a4(r,{size:e}){if(Db(r)>e)throw new UB({givenSize:Db(r),maxSize:e})}const RB=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function Ab(r,e={}){return typeof r=="number"||typeof r=="bigint"?FB(r,e):typeof r=="string"?YB(r,e):typeof r=="boolean"?$B(r,e):c4(r,e)}function $B(r,e={}){const t=`0x${Number(r)}`;return typeof e.size=="number"?(a4(t,{size:e.size}),r0(t,{size:e.size})):t}function c4(r,e={}){let t="";for(let s=0;s<r.length;s++)t+=RB[r[s]];const i=`0x${t}`;return typeof e.size=="number"?(a4(i,{size:e.size}),r0(i,{dir:"right",size:e.size})):i}function FB(r,e={}){const{signed:t,size:i}=e,s=BigInt(r);let n;i?t?n=(1n<<BigInt(i)*8n-1n)-1n:n=2n**(BigInt(i)*8n)-1n:typeof r=="number"&&(n=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof n=="bigint"&&t?-n-1n:0;if(n&&s>n||s<o){const u=typeof r=="bigint"?"n":"";throw new kB({max:n?`${n}${u}`:void 0,min:`${o}${u}`,signed:t,size:i,value:`${r}${u}`})}const a=`0x${(t&&s<0?(1n<<BigInt(i*8))+BigInt(s):s).toString(16)}`;return i?r0(a,{size:i}):a}const BB=new TextEncoder;function YB(r,e={}){const t=BB.encode(r);return c4(t,e)}let QB=class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){const i=super.keys().next().value;i!==void 0&&super.delete(i)}return this}};const ro=(r,e,t)=>JSON.stringify(r,(i,s)=>typeof s=="bigint"?s.toString():s,t);function VB(r,e){let t=r.toString();const i=t.startsWith("-");i&&(t=t.slice(1)),t=t.padStart(e,"0");let[s,n]=[t.slice(0,t.length-e),t.slice(t.length-e)];return n=n.replace(/(0+)$/,""),`${i?"-":""}${s||"0"}${n?`.${n}`:""}`}const i0=r=>{try{const e=new URL(r);return!e.username&&!e.password?r:(e.username="",e.password="",e.toString())}catch{return r}};class eu extends xs{constructor({body:e,cause:t,details:i,headers:s,status:n,url:o}){super("HTTP request failed.",{cause:t,details:i,metaMessages:[n&&`Status: ${n}`,`URL: ${i0(o)}`,e&&`Request body: ${ro(e)}`].filter(Boolean),name:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=s,this.status=n,this.url=o}}class u4 extends xs{constructor({body:e,error:t,url:i}){super("RPC Request failed.",{cause:t,details:t.message,metaMessages:[`URL: ${i0(i)}`,`Request body: ${ro(e)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=i}}class Eb extends xs{constructor({body:e,url:t}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${i0(t)}`,`Request body: ${ro(e)}`],name:"TimeoutError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}const WB=-1;class hi extends xs{constructor(e,{code:t,docsPath:i,metaMessages:s,name:n,shortMessage:o}){super(o,{cause:e,docsPath:i,metaMessages:s||e?.metaMessages,name:n||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=n||e.name,this.code=e instanceof u4?e.code:t??WB}}class di extends hi{constructor(e,t){super(e,t),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}}class pu extends hi{constructor(e){super(e,{code:pu.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(pu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class gu extends hi{constructor(e){super(e,{code:gu.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(gu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class yu extends hi{constructor(e,{method:t}={}){super(e,{code:yu.code,name:"MethodNotFoundRpcError",shortMessage:`The method${t?` "${t}"`:""} does not exist / is not available.`})}}Object.defineProperty(yu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class wu extends hi{constructor(e){super(e,{code:wu.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
22
+ `)})}}Object.defineProperty(wu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class _a extends hi{constructor(e){super(e,{code:_a.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(_a,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class mu extends hi{constructor(e){super(e,{code:mu.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
23
+ `)})}}Object.defineProperty(mu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class bu extends hi{constructor(e){super(e,{code:bu.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(bu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class Mu extends hi{constructor(e){super(e,{code:Mu.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(Mu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class Oa extends hi{constructor(e){super(e,{code:Oa.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(Oa,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class Xn extends hi{constructor(e,{method:t}={}){super(e,{code:Xn.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${t?` "${t}"`:""} is not supported.`})}}Object.defineProperty(Xn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class za extends hi{constructor(e){super(e,{code:za.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(za,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class Nu extends hi{constructor(e){super(e,{code:Nu.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(Nu,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class io extends di{constructor(e){super(e,{code:io.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(io,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class vu extends di{constructor(e){super(e,{code:vu.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(vu,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class Iu extends di{constructor(e,{method:t}={}){super(e,{code:Iu.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${t?` " ${t}"`:""}.`})}}Object.defineProperty(Iu,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class Du extends di{constructor(e){super(e,{code:Du.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(Du,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class Au extends di{constructor(e){super(e,{code:Au.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(Au,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class Eu extends di{constructor(e){super(e,{code:Eu.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(Eu,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Tu extends di{constructor(e){super(e,{code:Tu.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(Tu,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class Su extends di{constructor(e){super(e,{code:Su.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}}Object.defineProperty(Su,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});class ju extends di{constructor(e){super(e,{code:ju.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(ju,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class xu extends di{constructor(e){super(e,{code:xu.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(xu,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class Cu extends di{constructor(e){super(e,{code:Cu.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty(Cu,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class _u extends di{constructor(e){super(e,{code:_u.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(_u,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class Ou extends di{constructor(e){super(e,{code:Ou.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(Ou,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class La extends di{constructor(e){super(e,{code:La.code,name:"WalletConnectSessionSettlementError",shortMessage:"WalletConnect session settlement failed."})}}Object.defineProperty(La,"code",{enumerable:!0,configurable:!0,writable:!0,value:7e3});class qB extends hi{constructor(e){super(e,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}class s0 extends xs{constructor({cause:e,message:t}={}){const i=t?.replace("execution reverted: ","")?.replace("execution reverted","");super(`Execution reverted ${i?`with reason: ${i}`:"for an unknown reason"}.`,{cause:e,name:"ExecutionRevertedError"})}}Object.defineProperty(s0,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(s0,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});function ZB(){let r=()=>{},e=()=>{};return{promise:new Promise((i,s)=>{r=i,e=s}),resolve:r,reject:e}}const Uf=new Map;function HB({fn:r,id:e,shouldSplitBatch:t,wait:i=0,sort:s}){const n=async()=>{const l=u();o();const h=l.map(({args:f})=>f);h.length!==0&&r(h).then(f=>{s&&Array.isArray(f)&&f.sort(s);for(let w=0;w<l.length;w++){const{resolve:g}=l[w];g?.([f[w],f])}}).catch(f=>{for(let w=0;w<l.length;w++){const{reject:g}=l[w];g?.(f)}})},o=()=>Uf.delete(e),a=()=>u().map(({args:l})=>l),u=()=>Uf.get(e)||[],c=l=>Uf.set(e,[...u(),l]);return{flush:o,async schedule(l){const{promise:h,resolve:f,reject:w}=ZB();return t?.([...a(),l])&&n(),u().length>0?(c({args:l,resolve:f,reject:w}),h):(c({args:l,resolve:f,reject:w}),setTimeout(n,i),h)}}}async function l4(r){return new Promise(e=>setTimeout(e,r))}function GB(r,{delay:e=100,retryCount:t=2,shouldRetry:i=()=>!0}={}){return new Promise((s,n)=>{const o=async({count:a=0}={})=>{const u=async({error:c})=>{const l=typeof e=="function"?e({count:a,error:c}):e;l&&await l4(l),o({count:a+1})};try{const c=await r();s(c)}catch(c){if(a<t&&await i({count:a,error:c}))return u({error:c});n(c)}};o()})}const Gp=256;let Bl=Gp,Yl;function KB(r=11){if(!Yl||Bl+r>Gp*2){Yl="",Bl=0;for(let e=0;e<Gp;e++)Yl+=(256+Math.random()*256|0).toString(16).substring(1)}return Yl.substring(Bl,Bl+++r)}const Ql=new QB(8192);function JB(r,{enabled:e=!0,id:t}){if(!e||!t)return r();if(Ql.get(t))return Ql.get(t);const i=r().finally(()=>Ql.delete(t));return Ql.set(t,i),i}function XB(r,e={}){return async(t,i={})=>{const{dedupe:s=!1,methods:n,retryDelay:o=150,retryCount:a=3,uid:u}={...e,...i},{method:c}=t;if(n?.exclude?.includes(c))throw new Xn(new Error("method not supported"),{method:c});if(n?.include&&!n.include.includes(c))throw new Xn(new Error("method not supported"),{method:c});const l=s?tY(`${u}.${ro(t)}`):void 0;return JB(()=>GB(async()=>{try{return await r(t)}catch(h){const f=h;switch(f.code){case pu.code:throw new pu(f);case gu.code:throw new gu(f);case yu.code:throw new yu(f,{method:t.method});case wu.code:throw new wu(f);case _a.code:throw new _a(f);case mu.code:throw new mu(f);case bu.code:throw new bu(f);case Mu.code:throw new Mu(f);case Oa.code:throw new Oa(f);case Xn.code:throw new Xn(f,{method:t.method});case za.code:throw new za(f);case Nu.code:throw new Nu(f);case io.code:throw new io(f);case vu.code:throw new vu(f);case Iu.code:throw new Iu(f);case Du.code:throw new Du(f);case Au.code:throw new Au(f);case Eu.code:throw new Eu(f);case Tu.code:throw new Tu(f);case Su.code:throw new Su(f);case ju.code:throw new ju(f);case xu.code:throw new xu(f);case Cu.code:throw new Cu(f);case _u.code:throw new _u(f);case Ou.code:throw new Ou(f);case 5e3:throw new io(f);case La.code:throw new La(f);default:throw h instanceof xs?h:new qB(f)}}},{delay:({count:h,error:f})=>{if(f&&f instanceof eu){const w=f?.headers?.get("Retry-After");if(w?.match(/\d/))return Number.parseInt(w,10)*1e3}return~~(1<<h)*o},retryCount:a,shouldRetry:({error:h})=>eY(h)}),{enabled:s,id:l})}}function eY(r){return"code"in r&&typeof r.code=="number"?r.code===-1||r.code===za.code||r.code===_a.code||r.code===429:r instanceof eu&&r.status?r.status===403||r.status===408||r.status===413||r.status===429||r.status===500||r.status===502||r.status===503||r.status===504:!0}function tY(r,e=0){let t=3735928559^e,i=1103547991^e;for(let s=0;s<r.length;s++){const n=r.charCodeAt(s);t=Math.imul(t^n,2654435761),i=Math.imul(i^n,1597334677)}return t=Math.imul(t^t>>>16,2246822507),t^=Math.imul(i^i>>>16,3266489909),i=Math.imul(i^i>>>16,2246822507),i^=Math.imul(t^t>>>16,3266489909),(4294967296*(2097151&i)+(t>>>0)).toString(36)}function rY(r,{errorInstance:e=new Error("timed out"),timeout:t,signal:i}){return new Promise((s,n)=>{(async()=>{let o;try{const a=new AbortController;t>0&&(o=setTimeout(()=>{i&&a.abort()},t)),s(await r({signal:a?.signal||null}))}catch(a){a?.name==="AbortError"&&n(e),n(a)}finally{clearTimeout(o)}})()})}function iY(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Tb=iY();function sY(r,e={}){const{url:t,headers:i}=nY(r);return{async request(s){const{body:n,fetchFn:o=e.fetchFn??fetch,onRequest:a=e.onRequest,onResponse:u=e.onResponse,timeout:c=e.timeout??1e4}=s,l={...e.fetchOptions??{},...s.fetchOptions??{}},{headers:h,method:f,signal:w}=l;try{const g=await rY(async({signal:E})=>{const A={...l,body:Array.isArray(n)?ro(n.map(_=>({jsonrpc:"2.0",id:_.id??Tb.take(),..._}))):ro({jsonrpc:"2.0",id:n.id??Tb.take(),...n}),headers:{...i,"Content-Type":"application/json",...h},method:f||"POST",signal:w||(c>0?E:null)},D=new Request(t,A),O=await a?.(D,A)??{...A,url:t};return await o(O.url??t,O)},{errorInstance:new Eb({body:n,url:t}),timeout:c,signal:!0});u&&await u(g);let m;if(g.headers.get("Content-Type")?.startsWith("application/json"))m=await g.json();else{m=await g.text();try{m=JSON.parse(m||"{}")}catch(E){if(g.ok)throw E;m={error:m}}}if(!g.ok){if(typeof m.error?.code=="number"&&typeof m.error?.message=="string")return m;throw new eu({body:n,details:ro(m.error)||g.statusText,headers:g.headers,status:g.status,url:t})}return m}catch(g){throw g instanceof eu||g instanceof Eb?g:new eu({body:n,cause:g,url:t})}}}}function nY(r){try{const e=new URL(r),t=(()=>{if(e.username){const i=`${decodeURIComponent(e.username)}:${decodeURIComponent(e.password)}`;return e.username="",e.password="",{url:e.toString(),headers:{Authorization:`Basic ${btoa(i)}`}}}})();return{url:e.toString(),...t}}catch{return{url:r}}}function h4({key:r,methods:e,name:t,request:i,retryCount:s=3,retryDelay:n=150,timeout:o,type:a},u){const c=KB();return{config:{key:r,methods:e,name:t,request:i,retryCount:s,retryDelay:n,timeout:o,type:a},request:XB(i,{methods:e,retryCount:s,retryDelay:n,uid:c}),value:u}}function Sb(r,e={}){const{key:t="fallback",name:i="Fallback",rank:s=!1,shouldThrow:n=oY,retryCount:o,retryDelay:a}=e;return(({chain:u,pollingInterval:c=4e3,timeout:l,...h})=>{let f=r,w=()=>{};const g=h4({key:t,name:i,async request({method:m,params:E}){let A;const D=async(O=0)=>{const C=f[O]({...h,chain:u,retryCount:0,timeout:l});try{const _=await C.request({method:m,params:E});return w({method:m,params:E,response:_,transport:C,status:"success"}),_}catch(_){if(w({error:_,method:m,params:E,transport:C,status:"error"}),n(_)||O===f.length-1||(A??=f.slice(O+1).some(S=>{const{include:L,exclude:k}=S({chain:u}).config.methods||{};return L?L.includes(m):k?!k.includes(m):!0}),!A))throw _;return D(O+1)}};return D()},retryCount:o,retryDelay:a,type:"fallback"},{onResponse:m=>w=m,transports:f.map(m=>m({chain:u,retryCount:0}))});if(s){const m=typeof s=="object"?s:{};aY({chain:u,interval:m.interval??c,onTransports:E=>f=E,ping:m.ping,sampleCount:m.sampleCount,timeout:m.timeout,transports:f,weights:m.weights})}return g})}function oY(r){return!!("code"in r&&typeof r.code=="number"&&(r.code===Oa.code||r.code===io.code||r.code===La.code||s0.nodeMessage.test(r.message)||r.code===5e3))}function aY({chain:r,interval:e=4e3,onTransports:t,ping:i,sampleCount:s=10,timeout:n=1e3,transports:o,weights:a={}}){const{stability:u=.7,latency:c=.3}=a,l=[],h=async()=>{const f=await Promise.all(o.map(async m=>{const E=m({chain:r,retryCount:0,timeout:n}),A=Date.now();let D,O;try{await(i?i({transport:E}):E.request({method:"net_listening"})),O=1}catch{O=0}finally{D=Date.now()}return{latency:D-A,success:O}}));l.push(f),l.length>s&&l.shift();const w=Math.max(...l.map(m=>Math.max(...m.map(({latency:E})=>E)))),g=o.map((m,E)=>{const A=l.map(S=>S[E].latency),O=1-A.reduce((S,L)=>S+L,0)/A.length/w,C=l.map(S=>S[E].success),_=C.reduce((S,L)=>S+L,0)/C.length;return _===0?[0,E]:[c*O+u*_,E]}).sort((m,E)=>E[0]-m[0]);t(g.map(([,m])=>o[m])),await l4(e),h()};h()}class cY extends xs{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function Rf(r,e={}){const{batch:t,fetchFn:i,fetchOptions:s,key:n="http",methods:o,name:a="HTTP JSON-RPC",onFetchRequest:u,onFetchResponse:c,retryDelay:l,raw:h}=e;return({chain:f,retryCount:w,timeout:g})=>{const{batchSize:m=1e3,wait:E=0}=typeof t=="object"?t:{},A=e.retryCount??w,D=g??e.timeout??1e4,O=r||f?.rpcUrls.default.http[0];if(!O)throw new cY;const C=sY(O,{fetchFn:i,fetchOptions:s,onRequest:u,onResponse:c,timeout:D});return h4({key:n,methods:o,name:a,async request({method:_,params:S}){const L={method:_,params:S},{schedule:k}=HB({id:O,wait:E,shouldSplitBatch(d){return d.length>m},fn:d=>C.request({body:d}),sort:(d,y)=>d.id-y.id}),z=async d=>t?k(d):[await C.request({body:d})],[{error:U,result:T}]=await z(L);if(h)return{error:U,result:T};if(U)throw new u4({body:L,error:U,url:O});return T},retryCount:A,retryDelay:l,timeout:D,type:"http"},{fetchOptions:s,url:O})}}const $f={createBalance(r,e){const t={name:r.metadata.name||"",symbol:r.metadata.symbol||"",decimals:r.metadata.decimals||0,value:r.metadata.value||0,price:r.metadata.price||0,iconUrl:r.metadata.iconUrl||""};return{name:t.name,symbol:t.symbol,chainId:e,address:r.address==="native"?void 0:this.convertAddressToCAIP10Address(r.address,e),value:t.value,price:t.price,quantity:{decimals:t.decimals.toString(),numeric:this.convertHexToBalance({hex:r.balance,decimals:t.decimals})},iconUrl:t.iconUrl}},convertHexToBalance({hex:r,decimals:e}){return VB(BigInt(r),e)},convertAddressToCAIP10Address(r,e){return`${e}:${r}`},createCAIP2ChainId(r,e){return`${e}:${parseInt(r,16)}`},getChainIdHexFromCAIP2ChainId(r){const e=r.split(":");if(e.length<2||!e[1])return"0x0";const t=e[1],i=parseInt(t,10);return isNaN(i)?"0x0":`0x${i.toString(16)}`},isWalletGetAssetsResponse(r){return typeof r!="object"||r===null?!1:Object.values(r).every(e=>Array.isArray(e)&&e.every(t=>this.isValidAsset(t)))},isValidAsset(r){return typeof r=="object"&&r!==null&&typeof r.address=="string"&&typeof r.balance=="string"&&(r.type==="ERC20"||r.type==="NATIVE")&&typeof r.metadata=="object"&&r.metadata!==null&&typeof r.metadata.name=="string"&&typeof r.metadata.symbol=="string"&&typeof r.metadata.decimals=="number"&&typeof r.metadata.price=="number"&&typeof r.metadata.iconUrl=="string"}},jb={async getMyTokensWithBalance(r){const e=ue.state.address,t=R.state.activeCaipNetwork;if(!e||!t)return[];if(t.chainNamespace==="eip155"){const s=await this.getEIP155Balances(e,t);if(s)return this.filterLowQualityTokens(s)}const i=await de.getBalance(e,t.caipNetworkId,r);return this.filterLowQualityTokens(i.balances)},async getEIP155Balances(r,e){try{const t=$f.getChainIdHexFromCAIP2ChainId(e.caipNetworkId);if(!(await mt.getCapabilities(r))?.[t]?.assetDiscovery?.supported)return null;const s=await mt.walletGetAssets({account:r,chainFilter:[t]});return $f.isWalletGetAssetsResponse(s)?(s[t]||[]).map(o=>$f.createBalance(o,e.caipNetworkId)):null}catch{return null}},filterLowQualityTokens(r){return r.filter(e=>e.quantity.decimals!=="0")},mapBalancesToSwapTokens(r){return r?.map(e=>({...e,address:e?.address?e.address:R.getActiveNetworkTokenAddress(),decimals:parseInt(e.quantity.decimals,10),logoUri:e.iconUrl,eip2612:!1}))||[]}},xe=Qt({tokenBalances:[],loading:!1}),xb={state:xe,subscribe(r){return Jr(xe,()=>r(xe))},subscribeKey(r,e){return Si(xe,r,e)},setToken(r){r&&(xe.token=uo(r))},setTokenAmount(r){xe.sendTokenAmount=r},setReceiverAddress(r){xe.receiverAddress=r},setReceiverProfileImageUrl(r){xe.receiverProfileImageUrl=r},setReceiverProfileName(r){xe.receiverProfileName=r},setGasPrice(r){xe.gasPrice=r},setGasPriceInUsd(r){xe.gasPriceInUSD=r},setNetworkBalanceInUsd(r){xe.networkBalanceInUSD=r},setLoading(r){xe.loading=r},sendToken(){switch(R.state.activeCaipNetwork?.chainNamespace){case"eip155":this.sendEvmToken();return;case"solana":this.sendSolanaToken();return;default:throw new Error("Unsupported chain")}},sendEvmToken(){this.state.token?.address&&this.state.sendTokenAmount&&this.state.receiverAddress?(bt.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT,token:this.state.token.address,amount:this.state.sendTokenAmount,network:R.state.activeCaipNetwork?.caipNetworkId||""}}),this.sendERC20Token({receiverAddress:this.state.receiverAddress,tokenAddress:this.state.token.address,sendTokenAmount:this.state.sendTokenAmount,decimals:this.state.token.quantity.decimals})):this.state.receiverAddress&&this.state.sendTokenAmount&&this.state.gasPrice&&this.state.token?.quantity.decimals&&(bt.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT,token:this.state.token?.symbol,amount:this.state.sendTokenAmount,network:R.state.activeCaipNetwork?.caipNetworkId||""}}),this.sendNativeToken({receiverAddress:this.state.receiverAddress,sendTokenAmount:this.state.sendTokenAmount,gasPrice:this.state.gasPrice,decimals:this.state.token.quantity.decimals}))},async fetchTokenBalance(r){xe.loading=!0;const e=R.state.activeCaipNetwork?.caipNetworkId,t=R.state.activeCaipNetwork?.chainNamespace,i=R.state.activeCaipAddress,s=i?we.getPlainAddress(i):void 0;if(xe.lastRetry&&!we.isAllowedRetry(xe.lastRetry,30*ui.ONE_SEC_MS))return xe.loading=!1,[];try{if(s&&e&&t){const n=await jb.getMyTokensWithBalance();return xe.tokenBalances=n,xe.lastRetry=void 0,n}}catch(n){xe.lastRetry=Date.now(),r?.(n),Pr.showError("Token Balance Unavailable")}finally{xe.loading=!1}return[]},fetchNetworkBalance(){if(xe.tokenBalances.length===0)return;const r=jb.mapBalancesToSwapTokens(xe.tokenBalances);if(!r)return;const e=r.find(t=>t.address===R.getActiveNetworkTokenAddress());e&&(xe.networkBalanceInUSD=e?$l.multiply(e.quantity.numeric,e.price).toString():"0")},isInsufficientNetworkTokenForGas(r,e){const t=e||"0";return $l.bigNumber(r).eq(0)?!0:$l.bigNumber($l.bigNumber(t)).gt(r)},hasInsufficientGasFunds(){let r=!0;return ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT?r=!1:xe.networkBalanceInUSD&&(r=this.isInsufficientNetworkTokenForGas(xe.networkBalanceInUSD,xe.gasPriceInUSD)),r},async sendNativeToken(r){Ke.pushTransactionStack({view:"Account",goBack:!1});const e=r.receiverAddress,t=ue.state.address,i=mt.parseUnits(r.sendTokenAmount.toString(),Number(r.decimals)),s="0x";try{await mt.sendTransaction({chainNamespace:"eip155",to:e,address:t,data:s,value:i??BigInt(0),gasPrice:r.gasPrice}),Pr.showSuccess("Transaction started"),bt.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT,token:this.state.token?.symbol||"",amount:r.sendTokenAmount,network:R.state.activeCaipNetwork?.caipNetworkId||""}}),this.resetSend()}catch(n){console.error("SendController:sendERC20Token - failed to send native token",n);const o=n instanceof Error?n.message:"Unknown error";bt.sendEvent({type:"track",event:"SEND_ERROR",properties:{message:o,isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT,token:this.state.token?.symbol||"",amount:r.sendTokenAmount,network:R.state.activeCaipNetwork?.caipNetworkId||""}}),Pr.showError("Something went wrong")}},async sendERC20Token(r){Ke.pushTransactionStack({view:"Account",goBack:!1});const e=mt.parseUnits(r.sendTokenAmount.toString(),Number(r.decimals));try{if(ue.state.address&&r.sendTokenAmount&&r.receiverAddress&&r.tokenAddress){const t=we.getPlainAddress(r.tokenAddress);await mt.writeContract({fromAddress:ue.state.address,tokenAddress:t,args:[r.receiverAddress,e??BigInt(0)],method:"transfer",abi:GF.getERC20Abi(t),chainNamespace:"eip155"}),Pr.showSuccess("Transaction started"),this.resetSend()}}catch(t){console.error("SendController:sendERC20Token - failed to send erc20 token",t);const i=t instanceof Error?t.message:"Unknown error";bt.sendEvent({type:"track",event:"SEND_ERROR",properties:{message:i,isSmartAccount:ue.state.preferredAccountType===pn.ACCOUNT_TYPES.SMART_ACCOUNT,token:this.state.token?.symbol||"",amount:r.sendTokenAmount,network:R.state.activeCaipNetwork?.caipNetworkId||""}}),Pr.showError("Something went wrong")}},sendSolanaToken(){if(!this.state.sendTokenAmount||!this.state.receiverAddress){Pr.showError("Please enter a valid amount and receiver address");return}Ke.pushTransactionStack({view:"Account",goBack:!1}),mt.sendTransaction({chainNamespace:"solana",to:this.state.receiverAddress,value:this.state.sendTokenAmount}).then(()=>{this.resetSend(),ue.fetchTokenBalance()}).catch(r=>{Pr.showError("Failed to send transaction. Please try again."),console.error("SendController:sendToken - failed to send solana transaction",r)})},resetSend(){xe.token=void 0,xe.sendTokenAmount=void 0,xe.receiverAddress=void 0,xe.receiverProfileImageUrl=void 0,xe.receiverProfileName=void 0,xe.loading=!1,xe.tokenBalances=[]}},Ff={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,allAccounts:[],user:void 0},Vl={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},re=Qt({chains:rB(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{networkControllerClient:void 0,connectionControllerClient:void 0},isSwitchingNamespace:!1}),R={state:re,subscribe(r){return Jr(re,()=>{r(re)})},subscribeKey(r,e){return Si(re,r,e)},subscribeChainProp(r,e,t){let i;return Jr(re.chains,()=>{const s=t||re.activeChain;if(s){const n=re.chains.get(s)?.[r];i!==n&&(i=n,e(n))}})},initialize(r,e,t){const{chainId:i,namespace:s}=ae.getActiveNetworkProps(),n=e?.find(c=>c.id.toString()===i?.toString()),a=r.find(c=>c?.namespace===s)||r?.[0],u=new Set([...e?.map(c=>c.chainNamespace)??[]]);(r?.length===0||!a)&&(re.noAdapters=!0),re.noAdapters||(re.activeChain=a?.namespace,re.activeCaipNetwork=n,this.setChainNetworkData(a?.namespace,{caipNetwork:n}),re.activeChain&&Ws.set({activeChain:a?.namespace})),u.forEach(c=>{const l=e?.filter(h=>h.chainNamespace===c);R.state.chains.set(c,{namespace:c,networkState:Qt({...Vl,caipNetwork:l?.[0]}),accountState:Qt(Ff),caipNetworks:l??[],...t}),this.setRequestedCaipNetworks(l??[],c)})},removeAdapter(r){if(re.activeChain===r){const e=Array.from(re.chains.entries()).find(([t])=>t!==r);if(e){const t=e[1]?.caipNetworks?.[0];t&&this.setActiveCaipNetwork(t)}}re.chains.delete(r)},addAdapter(r,{networkControllerClient:e,connectionControllerClient:t},i){re.chains.set(r.namespace,{namespace:r.namespace,networkState:{...Vl,caipNetwork:i[0]},accountState:Ff,caipNetworks:i,connectionControllerClient:t,networkControllerClient:e}),this.setRequestedCaipNetworks(i?.filter(s=>s.chainNamespace===r.namespace)??[],r.namespace)},addNetwork(r){const e=re.chains.get(r.chainNamespace);if(e){const t=[...e.caipNetworks||[]];e.caipNetworks?.find(i=>i.id===r.id)||t.push(r),re.chains.set(r.chainNamespace,{...e,caipNetworks:t}),this.setRequestedCaipNetworks(t,r.chainNamespace)}},removeNetwork(r,e){const t=re.chains.get(r);if(t){const i=re.activeCaipNetwork?.id===e,s=[...t.caipNetworks?.filter(n=>n.id!==e)||[]];i&&t?.caipNetworks?.[0]&&this.setActiveCaipNetwork(t.caipNetworks[0]),re.chains.set(r,{...t,caipNetworks:s}),this.setRequestedCaipNetworks(s||[],r)}},setAdapterNetworkState(r,e){const t=re.chains.get(r);t&&(t.networkState={...t.networkState||Vl,...e},re.chains.set(r,t))},setChainAccountData(r,e,t=!0){if(!r)throw new Error("Chain is required to update chain account data");const i=re.chains.get(r);if(i){const s={...i.accountState||Ff,...e};re.chains.set(r,{...i,accountState:s}),(re.chains.size===1||re.activeChain===r)&&(e.caipAddress&&(re.activeCaipAddress=e.caipAddress),ue.replaceState(s))}},setChainNetworkData(r,e){if(!r)return;const t=re.chains.get(r);if(t){const i={...t.networkState||Vl,...e};re.chains.set(r,{...t,networkState:i})}},setAccountProp(r,e,t,i=!0){this.setChainAccountData(t,{[r]:e},i),r==="status"&&e==="disconnected"&&t&&ye.removeConnectorId(t)},setActiveNamespace(r){re.activeChain=r;const e=r?re.chains.get(r):void 0,t=e?.networkState?.caipNetwork;t?.id&&r&&(re.activeCaipAddress=e?.accountState?.caipAddress,re.activeCaipNetwork=t,this.setChainNetworkData(r,{caipNetwork:t}),ae.setActiveCaipNetworkId(t?.caipNetworkId),Ws.set({activeChain:r,selectedNetworkId:t?.caipNetworkId}))},setActiveCaipNetwork(r){if(!r)return;re.activeChain!==r.chainNamespace&&this.setIsSwitchingNamespace(!0);const e=re.chains.get(r.chainNamespace);re.activeChain=r.chainNamespace,re.activeCaipNetwork=r,this.setChainNetworkData(r.chainNamespace,{caipNetwork:r}),e?.accountState?.address?re.activeCaipAddress=`${r.chainNamespace}:${r.id}:${e?.accountState?.address}`:re.activeCaipAddress=void 0,this.setAccountProp("caipAddress",re.activeCaipAddress,r.chainNamespace),e&&ue.replaceState(e.accountState),xb.resetSend(),Ws.set({activeChain:re.activeChain,selectedNetworkId:re.activeCaipNetwork?.caipNetworkId}),ae.setActiveCaipNetworkId(r.caipNetworkId),!this.checkIfSupportedNetwork(r.chainNamespace)&&J.state.enableNetworkSwitch&&!J.state.allowUnsupportedChain&&!mt.state.wcBasic&&this.showUnsupportedChainUI()},addCaipNetwork(r){if(!r)return;const e=re.chains.get(r.chainNamespace);e&&e?.caipNetworks?.push(r)},async switchActiveNamespace(r){if(!r)return;const e=r!==R.state.activeChain,t=R.getNetworkData(r)?.caipNetwork,i=R.getCaipNetworkByNamespace(r,t?.id);e&&i&&await R.switchActiveNetwork(i)},async switchActiveNetwork(r){!R.state.chains.get(R.state.activeChain)?.caipNetworks?.some(s=>s.id===re.activeCaipNetwork?.id)&&Ke.goBack();const i=this.getNetworkControllerClient(r.chainNamespace);i&&(await i.switchCaipNetwork(r),bt.sendEvent({type:"track",event:"SWITCH_NETWORK",properties:{network:r.caipNetworkId}}))},getNetworkControllerClient(r){const e=r||re.activeChain,t=re.chains.get(e);if(!t)throw new Error("Chain adapter not found");if(!t.networkControllerClient)throw new Error("NetworkController client not set");return t.networkControllerClient},getConnectionControllerClient(r){const e=r||re.activeChain;if(!e)throw new Error("Chain is required to get connection controller client");const t=re.chains.get(e);if(!t?.connectionControllerClient)throw new Error("ConnectionController client not set");return t.connectionControllerClient},getAccountProp(r,e){let t=re.activeChain;if(e&&(t=e),!t)return;const i=re.chains.get(t)?.accountState;if(i)return i[r]},getNetworkProp(r,e){const t=re.chains.get(e)?.networkState;if(t)return t[r]},getRequestedCaipNetworks(r){const e=re.chains.get(r),{approvedCaipNetworkIds:t=[],requestedCaipNetworks:i=[]}=e?.networkState||{};return we.sortRequestedNetworks(t,i)},getAllRequestedCaipNetworks(){const r=[];return re.chains.forEach(e=>{const t=this.getRequestedCaipNetworks(e.namespace);r.push(...t)}),r},setRequestedCaipNetworks(r,e){this.setAdapterNetworkState(e,{requestedCaipNetworks:r})},getAllApprovedCaipNetworkIds(){const r=[];return re.chains.forEach(e=>{const t=this.getApprovedCaipNetworkIds(e.namespace);r.push(...t)}),r},getActiveCaipNetwork(){return re.activeCaipNetwork},getActiveCaipAddress(){return re.activeCaipAddress},getApprovedCaipNetworkIds(r){return re.chains.get(r)?.networkState?.approvedCaipNetworkIds||[]},async setApprovedCaipNetworksData(r){const t=await this.getNetworkControllerClient()?.getApprovedCaipNetworksData();this.setAdapterNetworkState(r,{approvedCaipNetworkIds:t?.approvedCaipNetworkIds,supportsAllNetworks:t?.supportsAllNetworks})},checkIfSupportedNetwork(r,e){const t=e||re.activeCaipNetwork,i=this.getRequestedCaipNetworks(r);return i.length?i?.some(s=>s.id===t?.id):!0},checkIfSupportedChainId(r){return re.activeChain?this.getRequestedCaipNetworks(re.activeChain)?.some(t=>t.id===r):!0},setSmartAccountEnabledNetworks(r,e){this.setAdapterNetworkState(e,{smartAccountEnabledNetworks:r})},checkIfSmartAccountEnabled(){const r=XI.caipNetworkIdToNumber(re.activeCaipNetwork?.caipNetworkId),e=re.activeChain;return!e||!r?!1:!!this.getNetworkProp("smartAccountEnabledNetworks",e)?.includes(Number(r))},getActiveNetworkTokenAddress(){const r=re.activeCaipNetwork?.chainNamespace||"eip155",e=re.activeCaipNetwork?.id||1,t=ui.NATIVE_TOKEN_ADDRESS[r];return`${r}:${e}:${t}`},showUnsupportedChainUI(){lr.open({view:"UnsupportedChain"})},checkIfNamesSupported(){const r=re.activeCaipNetwork;return!!(r?.chainNamespace&&ui.NAMES_SUPPORTED_CHAIN_NAMESPACES.includes(r.chainNamespace))},resetNetwork(r){this.setAdapterNetworkState(r,{approvedCaipNetworkIds:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]})},resetAccount(r){const e=r;if(!e)throw new Error("Chain is required to set account prop");re.activeCaipAddress=void 0,this.setChainAccountData(e,{smartAccountDeployed:!1,currentTab:0,caipAddress:void 0,address:void 0,balance:void 0,balanceSymbol:void 0,profileName:void 0,profileImage:void 0,addressExplorerUrl:void 0,tokenBalance:[],connectedWalletInfo:void 0,preferredAccountType:void 0,socialProvider:void 0,socialWindow:void 0,farcasterUrl:void 0,allAccounts:[],user:void 0,status:"disconnected"}),ye.removeConnectorId(e)},async disconnect(r){const e=dB(r);try{xb.resetSend();const t=await Promise.allSettled(e.map(async([s,n])=>{try{const{caipAddress:o}=this.getAccountData(s)||{};o&&n.connectionControllerClient?.disconnect&&await n.connectionControllerClient.disconnect(s),this.resetAccount(s),this.resetNetwork(s)}catch(o){throw new Error(`Failed to disconnect chain ${s}: ${o.message}`)}}));mt.resetWcConnection();const i=t.filter(s=>s.status==="rejected");if(i.length>0)throw new Error(i.map(s=>s.reason.message).join(", "));ae.deleteConnectedSocialProvider(),r?ye.removeConnectorId(r):ye.resetConnectorIds(),bt.sendEvent({type:"track",event:"DISCONNECT_SUCCESS",properties:{namespace:r||"all"}})}catch(t){console.error(t.message||"Failed to disconnect chains"),bt.sendEvent({type:"track",event:"DISCONNECT_ERROR",properties:{message:t.message||"Failed to disconnect chains"}})}},setIsSwitchingNamespace(r){re.isSwitchingNamespace=r},getFirstCaipNetworkSupportsAuthConnector(){const r=[];let e;if(re.chains.forEach(t=>{ce.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(i=>i===t.namespace)&&t.namespace&&r.push(t.namespace)}),r.length>0){const t=r[0];return e=t?re.chains.get(t)?.caipNetworks?.[0]:void 0,e}},getAccountData(r){return r?R.state.chains.get(r)?.accountState:ue.state},getNetworkData(r){const e=r||re.activeChain;if(e)return R.state.chains.get(e)?.networkState},getCaipNetworkByNamespace(r,e){if(!r)return;const t=R.state.chains.get(r),i=t?.caipNetworks?.find(s=>s.id===e);return i||t?.networkState?.caipNetwork||t?.caipNetworks?.[0]},getRequestedCaipNetworkIds(){const r=ye.state.filterByNamespace;return(r?[re.chains.get(r)]:Array.from(re.chains.values())).flatMap(t=>t?.caipNetworks||[]).map(t=>t.caipNetworkId)}},uY={purchaseCurrencies:[{id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"USD Coin",symbol:"USDC",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]},{id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"Ether",symbol:"ETH",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]}],paymentCurrencies:[{id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},{id:"EUR",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]}]},d4=we.getBlockchainApiUrl(),yi=Qt({clientId:null,api:new hd({baseUrl:d4,clientId:null}),supportedChains:{http:[],ws:[]}}),de={state:yi,async get(r){const{st:e,sv:t}=de.getSdkProperties(),i=J.state.projectId,s={...r.params||{},st:e,sv:t,projectId:i};return yi.api.get({...r,params:s})},getSdkProperties(){const{sdkType:r,sdkVersion:e}=J.state;return{st:r||"unknown",sv:e||"unknown"}},async isNetworkSupported(r){if(!r)return!1;try{yi.supportedChains.http.length||await de.getSupportedNetworks()}catch{return!1}return yi.supportedChains.http.includes(r)},async getSupportedNetworks(){const r=await de.get({path:"v1/supported-chains"});return yi.supportedChains=r,r},async fetchIdentity({address:r,caipNetworkId:e}){if(!await de.isNetworkSupported(e))return{avatar:"",name:""};const i=ae.getIdentityFromCacheForAddress(r);if(i)return i;const s=await de.get({path:`/v1/identity/${r}`,params:{sender:R.state.activeCaipAddress?we.getPlainAddress(R.state.activeCaipAddress):void 0}});return ae.updateIdentityCache({address:r,identity:s,timestamp:Date.now()}),s},async fetchTransactions({account:r,cursor:e,onramp:t,signal:i,cache:s,chainId:n}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:`/v1/account/${r}/history`,params:{cursor:e,onramp:t,chainId:n},signal:i,cache:s}):{data:[],next:void 0}},async fetchSwapQuote({amount:r,userAddress:e,from:t,to:i,gasPrice:s}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:"/v1/convert/quotes",headers:{"Content-Type":"application/json"},params:{amount:r,userAddress:e,from:t,to:i,gasPrice:s}}):{quotes:[]}},async fetchSwapTokens({chainId:r}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:"/v1/convert/tokens",params:{chainId:r}}):{tokens:[]}},async fetchTokenPrice({addresses:r}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?yi.api.post({path:"/v1/fungible/price",body:{currency:"usd",addresses:r,projectId:J.state.projectId},headers:{"Content-Type":"application/json"}}):{fungibles:[]}},async fetchSwapAllowance({tokenAddress:r,userAddress:e}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:"/v1/convert/allowance",params:{tokenAddress:r,userAddress:e},headers:{"Content-Type":"application/json"}}):{allowance:"0"}},async fetchGasPrice({chainId:r}){const{st:e,sv:t}=de.getSdkProperties();if(!await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId))throw new Error("Network not supported for Gas Price");return de.get({path:"/v1/convert/gas-price",headers:{"Content-Type":"application/json"},params:{chainId:r,st:e,sv:t}})},async generateSwapCalldata({amount:r,from:e,to:t,userAddress:i,disableEstimate:s}){if(!await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId))throw new Error("Network not supported for Swaps");return yi.api.post({path:"/v1/convert/build-transaction",headers:{"Content-Type":"application/json"},body:{amount:r,eip155:{slippage:ui.CONVERT_SLIPPAGE_TOLERANCE},projectId:J.state.projectId,from:e,to:t,userAddress:i,disableEstimate:s}})},async generateApproveCalldata({from:r,to:e,userAddress:t}){const{st:i,sv:s}=de.getSdkProperties();if(!await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId))throw new Error("Network not supported for Swaps");return de.get({path:"/v1/convert/build-approve",headers:{"Content-Type":"application/json"},params:{userAddress:t,from:r,to:e,st:i,sv:s}})},async getBalance(r,e,t){const{st:i,sv:s}=de.getSdkProperties();if(!await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId))return Pr.showError("Token Balance Unavailable"),{balances:[]};const o=`${e}:${r}`,a=ae.getBalanceCacheForCaipAddress(o);if(a)return a;const u=await de.get({path:`/v1/account/${r}/balance`,params:{currency:"usd",chainId:e,forceUpdate:t,st:i,sv:s}});return ae.updateBalanceCache({caipAddress:o,balance:u,timestamp:Date.now()}),u},async lookupEnsName(r){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:`/v1/profile/account/${r}`,params:{apiVersion:"2"}}):{addresses:{},attributes:[]}},async reverseLookupEnsName({address:r}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:`/v1/profile/reverse/${r}`,params:{sender:ue.state.address,apiVersion:"2"}}):[]},async getEnsNameSuggestions(r){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:`/v1/profile/suggestions/${r}`,params:{zone:"reown.id"}}):{suggestions:[]}},async registerEnsName({coinType:r,address:e,message:t,signature:i}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?yi.api.post({path:"/v1/profile/account",body:{coin_type:r,address:e,message:t,signature:i},headers:{"Content-Type":"application/json"}}):{success:!1}},async generateOnRampURL({destinationWallets:r,partnerUserId:e,defaultNetwork:t,purchaseAmount:i,paymentAmount:s}){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?(await yi.api.post({path:"/v1/generators/onrampurl",params:{projectId:J.state.projectId},body:{destinationWallets:r,defaultNetwork:t,partnerUserId:e,defaultExperience:"buy",presetCryptoAmount:i,presetFiatAmount:s}})).url:""},async getOnrampOptions(){if(!await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId))return{paymentCurrencies:[],purchaseCurrencies:[]};try{return await de.get({path:"/v1/onramp/options"})}catch{return uY}},async getOnrampQuote({purchaseCurrency:r,paymentCurrency:e,amount:t,network:i}){try{return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?await yi.api.post({path:"/v1/onramp/quote",params:{projectId:J.state.projectId},body:{purchaseCurrency:r,paymentCurrency:e,amount:t,network:i}}):null}catch{return{coinbaseFee:{amount:t,currency:e.id},networkFee:{amount:t,currency:e.id},paymentSubtotal:{amount:t,currency:e.id},paymentTotal:{amount:t,currency:e.id},purchaseAmount:{amount:t,currency:e.id},quoteId:"mocked-quote-id"}}},async getSmartSessions(r){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?de.get({path:`/v1/sessions/${r}`}):[]},async revokeSmartSession(r,e,t){return await de.isNetworkSupported(R.state.activeCaipNetwork?.caipNetworkId)?yi.api.post({path:`/v1/sessions/${r}/revoke`,params:{projectId:J.state.projectId},body:{pci:e,signature:t}}):{success:!1}},setClientId(r){yi.clientId=r,yi.api=new hd({baseUrl:d4,clientId:r})}},ms=Qt({currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,allAccounts:[]}),ue={state:ms,replaceState(r){r&&Object.assign(ms,uo(r))},subscribe(r){return R.subscribeChainProp("accountState",e=>{if(e)return r(e)})},subscribeKey(r,e,t){let i;return R.subscribeChainProp("accountState",s=>{if(s){const n=s[r];i!==n&&(i=n,e(n))}},t)},setStatus(r,e){R.setAccountProp("status",r,e)},getCaipAddress(r){return R.getAccountProp("caipAddress",r)},setCaipAddress(r,e){const t=r?we.getPlainAddress(r):void 0;e===R.state.activeChain&&(R.state.activeCaipAddress=r),R.setAccountProp("caipAddress",r,e),R.setAccountProp("address",t,e)},setBalance(r,e,t){R.setAccountProp("balance",r,t),R.setAccountProp("balanceSymbol",e,t)},setProfileName(r,e){R.setAccountProp("profileName",r,e)},setProfileImage(r,e){R.setAccountProp("profileImage",r,e)},setUser(r,e){R.setAccountProp("user",r,e)},setAddressExplorerUrl(r,e){R.setAccountProp("addressExplorerUrl",r,e)},setSmartAccountDeployed(r,e){R.setAccountProp("smartAccountDeployed",r,e)},setCurrentTab(r){R.setAccountProp("currentTab",r,R.state.activeChain)},setTokenBalance(r,e){r&&R.setAccountProp("tokenBalance",r,e)},setShouldUpdateToAddress(r,e){R.setAccountProp("shouldUpdateToAddress",r,e)},setAllAccounts(r,e){R.setAccountProp("allAccounts",r,e)},addAddressLabel(r,e,t){const i=R.getAccountProp("addressLabels",t)||new Map;i.set(r,e),R.setAccountProp("addressLabels",i,t)},removeAddressLabel(r,e){const t=R.getAccountProp("addressLabels",e)||new Map;t.delete(r),R.setAccountProp("addressLabels",t,e)},setConnectedWalletInfo(r,e){R.setAccountProp("connectedWalletInfo",r,e,!1)},setPreferredAccountType(r,e){R.setAccountProp("preferredAccountType",r,e)},setSocialProvider(r,e){r&&R.setAccountProp("socialProvider",r,e)},setSocialWindow(r,e){R.setAccountProp("socialWindow",r?uo(r):void 0,e)},setFarcasterUrl(r,e){R.setAccountProp("farcasterUrl",r,e)},async fetchTokenBalance(r){ms.balanceLoading=!0;const e=R.state.activeCaipNetwork?.caipNetworkId,t=R.state.activeCaipNetwork?.chainNamespace,i=R.state.activeCaipAddress,s=i?we.getPlainAddress(i):void 0;if(ms.lastRetry&&!we.isAllowedRetry(ms.lastRetry,30*ui.ONE_SEC_MS))return ms.balanceLoading=!1,[];try{if(s&&e&&t){const o=(await de.getBalance(s,e)).balances.filter(a=>a.quantity.decimals!=="0");return this.setTokenBalance(o,t),ms.lastRetry=void 0,ms.balanceLoading=!1,o}}catch(n){ms.lastRetry=Date.now(),r?.(n),Pr.showError("Token Balance Unavailable")}finally{ms.balanceLoading=!1}return[]},resetAccount(r){R.resetAccount(r)}},ri=Qt({loading:!1,loadingNamespaceMap:new Map,open:!1,shake:!1,namespace:void 0}),lr={state:ri,subscribe(r){return Jr(ri,()=>r(ri))},subscribeKey(r,e){return Si(ri,r,e)},async open(r){const e=ue.state.status==="connected";mt.state.wcBasic?be.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1}):await be.prefetch({fetchConnectorImages:!e,fetchFeaturedWallets:!e,fetchRecommendedWallets:!e}),r?.namespace?(await R.switchActiveNamespace(r.namespace),lr.setLoading(!0,r.namespace)):lr.setLoading(!0),ye.setFilterByNamespace(r?.namespace);const t=R.getAccountData(r?.namespace)?.caipAddress;R.state.noAdapters&&!t?we.isMobile()?Ke.reset("AllWallets"):Ke.reset("ConnectingWalletConnectBasic"):r?.view?Ke.reset(r.view):t?Ke.reset("Account"):Ke.reset("Connect"),ri.open=!0,Ws.set({open:!0}),bt.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!t}})},close(){const r=J.state.enableEmbedded,e=!!R.state.activeCaipAddress;ri.open&&bt.sendEvent({type:"track",event:"MODAL_CLOSE",properties:{connected:e}}),ri.open=!1,lr.clearLoading(),r?e?Ke.replace("Account"):Ke.push("Connect"):Ws.set({open:!1}),mt.resetUri()},setLoading(r,e){e&&ri.loadingNamespaceMap.set(e,r),ri.loading=r,Ws.set({loading:r})},clearLoading(){ri.loadingNamespaceMap.clear(),ri.loading=!1},shake(){ri.shake||(ri.shake=!0,setTimeout(()=>{ri.shake=!1},500))}},Cb=2147483648,lY={convertEVMChainIdToCoinType(r){if(r>=Cb)throw new Error("Invalid chainId");return(Cb|r)>>>0}},zi=Qt({suggestions:[],loading:!1}),f4={state:zi,subscribe(r){return Jr(zi,()=>r(zi))},subscribeKey(r,e){return Si(zi,r,e)},async resolveName(r){try{return await de.lookupEnsName(r)}catch(e){const t=e;throw new Error(t?.reasons?.[0]?.description||"Error resolving name")}},async isNameRegistered(r){try{return await de.lookupEnsName(r),!0}catch{return!1}},async getSuggestions(r){try{zi.loading=!0,zi.suggestions=[];const e=await de.getEnsNameSuggestions(r);return zi.suggestions=e.suggestions.map(t=>({...t,name:t.name}))||[],zi.suggestions}catch(e){const t=this.parseEnsApiError(e,"Error fetching name suggestions");throw new Error(t)}finally{zi.loading=!1}},async getNamesForAddress(r){try{if(!R.state.activeCaipNetwork)return[];const t=ae.getEnsFromCacheForAddress(r);if(t)return t;const i=await de.reverseLookupEnsName({address:r});return ae.updateEnsCache({address:r,ens:i,timestamp:Date.now()}),i}catch(e){const t=this.parseEnsApiError(e,"Error fetching names for address");throw new Error(t)}},async registerName(r){const e=R.state.activeCaipNetwork;if(!e)throw new Error("Network not found");const t=ue.state.address,i=ye.getAuthConnector();if(!t||!i)throw new Error("Address or auth connector not found");zi.loading=!0;try{const s=JSON.stringify({name:r,attributes:{},timestamp:Math.floor(Date.now()/1e3)});Ke.pushTransactionStack({view:"RegisterAccountNameSuccess",goBack:!1,replace:!0,onCancel(){zi.loading=!1}});const n=await mt.signMessage(s),o=e.id;if(!o)throw new Error("Network not found");const a=lY.convertEVMChainIdToCoinType(Number(o));await de.registerEnsName({coinType:a,address:t,signature:n,message:s}),ue.setProfileName(r,e.chainNamespace),Ke.replace("RegisterAccountNameSuccess")}catch(s){const n=this.parseEnsApiError(s,`Error registering name ${r}`);throw Ke.replace("RegisterAccountName"),new Error(n)}finally{zi.loading=!1}},validateName(r){return/^[a-zA-Z0-9-]{4,}$/u.test(r)},parseEnsApiError(r,e){return r?.reasons?.[0]?.description||e}};function zu(r,{strict:e=!0}={}){return!r||typeof r!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(r):r.startsWith("0x")}function _b(r){return zu(r,{strict:!1})?Math.ceil((r.length-2)/2):r.length}const p4="2.23.2";let Bf={getDocsUrl:({docsBaseUrl:r,docsPath:e="",docsSlug:t})=>e?`${r??"https://viem.sh"}${e}${t?`#${t}`:""}`:void 0,version:`viem@${p4}`};class lo extends Error{constructor(e,t={}){const i=t.cause instanceof lo?t.cause.details:t.cause?.message?t.cause.message:t.details,s=t.cause instanceof lo&&t.cause.docsPath||t.docsPath,n=Bf.getDocsUrl?.({...t,docsPath:s}),o=[e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...n?[`Docs: ${n}`]:[],...i?[`Details: ${i}`]:[],...Bf.version?[`Version: ${Bf.version}`]:[]].join(`
24
+ `);super(o,t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=i,this.docsPath=s,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=p4}walk(e){return g4(this,e)}}function g4(r,e){return e?.(r)?r:r&&typeof r=="object"&&"cause"in r&&r.cause!==void 0?g4(r.cause,e):e?null:r}class y4 extends lo{constructor({size:e,targetSize:t,type:i}){super(`${i.charAt(0).toUpperCase()}${i.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}}function Ha(r,{dir:e,size:t=32}={}){return typeof r=="string"?hY(r,{dir:e,size:t}):dY(r,{dir:e,size:t})}function hY(r,{dir:e,size:t=32}={}){if(t===null)return r;const i=r.replace("0x","");if(i.length>t*2)throw new y4({size:Math.ceil(i.length/2),targetSize:t,type:"hex"});return`0x${i[e==="right"?"padEnd":"padStart"](t*2,"0")}`}function dY(r,{dir:e,size:t=32}={}){if(t===null)return r;if(r.length>t)throw new y4({size:r.length,targetSize:t,type:"bytes"});const i=new Uint8Array(t);for(let s=0;s<t;s++){const n=e==="right";i[n?s:t-s-1]=r[n?s:r.length-s-1]}return i}class fY extends lo{constructor({max:e,min:t,signed:i,size:s,value:n}){super(`Number "${n}" is not in safe ${s?`${s*8}-bit ${i?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}}class pY extends lo{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function Ga(r,{size:e}){if(_b(r)>e)throw new pY({givenSize:_b(r),maxSize:e})}function Kp(r,e={}){const{signed:t}=e;e.size&&Ga(r,{size:e.size});const i=BigInt(r);if(!t)return i;const s=(r.length-2)/2,n=(1n<<BigInt(s)*8n-1n)-1n;return i<=n?i:i-BigInt(`0x${"f".padStart(s*2,"f")}`)-1n}function gY(r,e={}){return Number(Kp(r,e))}const yY=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function Jp(r,e={}){return typeof r=="number"||typeof r=="bigint"?m4(r,e):typeof r=="string"?bY(r,e):typeof r=="boolean"?wY(r,e):w4(r,e)}function wY(r,e={}){const t=`0x${Number(r)}`;return typeof e.size=="number"?(Ga(t,{size:e.size}),Ha(t,{size:e.size})):t}function w4(r,e={}){let t="";for(let s=0;s<r.length;s++)t+=yY[r[s]];const i=`0x${t}`;return typeof e.size=="number"?(Ga(i,{size:e.size}),Ha(i,{dir:"right",size:e.size})):i}function m4(r,e={}){const{signed:t,size:i}=e,s=BigInt(r);let n;i?t?n=(1n<<BigInt(i)*8n-1n)-1n:n=2n**(BigInt(i)*8n)-1n:typeof r=="number"&&(n=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof n=="bigint"&&t?-n-1n:0;if(n&&s>n||s<o){const u=typeof r=="bigint"?"n":"";throw new fY({max:n?`${n}${u}`:void 0,min:`${o}${u}`,signed:t,size:i,value:`${r}${u}`})}const a=`0x${(t&&s<0?(1n<<BigInt(i*8))+BigInt(s):s).toString(16)}`;return i?Ha(a,{size:i}):a}const mY=new TextEncoder;function bY(r,e={}){const t=mY.encode(r);return w4(t,e)}const MY=new TextEncoder;function NY(r,e={}){return typeof r=="number"||typeof r=="bigint"?IY(r,e):typeof r=="boolean"?vY(r,e):zu(r)?b4(r,e):M4(r,e)}function vY(r,e={}){const t=new Uint8Array(1);return t[0]=Number(r),typeof e.size=="number"?(Ga(t,{size:e.size}),Ha(t,{size:e.size})):t}const $s={zero:48,nine:57,A:65,F:70,a:97,f:102};function Ob(r){if(r>=$s.zero&&r<=$s.nine)return r-$s.zero;if(r>=$s.A&&r<=$s.F)return r-($s.A-10);if(r>=$s.a&&r<=$s.f)return r-($s.a-10)}function b4(r,e={}){let t=r;e.size&&(Ga(t,{size:e.size}),t=Ha(t,{dir:"right",size:e.size}));let i=t.slice(2);i.length%2&&(i=`0${i}`);const s=i.length/2,n=new Uint8Array(s);for(let o=0,a=0;o<s;o++){const u=Ob(i.charCodeAt(a++)),c=Ob(i.charCodeAt(a++));if(u===void 0||c===void 0)throw new lo(`Invalid byte sequence ("${i[a-2]}${i[a-1]}" in "${i}").`);n[o]=u*16+c}return n}function IY(r,e){const t=m4(r,e);return b4(t)}function M4(r,e={}){const t=MY.encode(r);return typeof e.size=="number"?(Ga(t,{size:e.size}),Ha(t,{dir:"right",size:e.size})):t}function zh(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function DY(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function dd(r,...e){if(!DY(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function Ite(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");zh(r.outputLen),zh(r.blockLen)}function zb(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 AY(r,e){dd(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}const Wl=BigInt(2**32-1),Lb=BigInt(32);function EY(r,e=!1){return e?{h:Number(r&Wl),l:Number(r>>Lb&Wl)}:{h:Number(r>>Lb&Wl)|0,l:Number(r&Wl)|0}}function TY(r,e=!1){let t=new Uint32Array(r.length),i=new Uint32Array(r.length);for(let s=0;s<r.length;s++){const{h:n,l:o}=EY(r[s],e);[t[s],i[s]]=[n,o]}return[t,i]}const SY=(r,e,t)=>r<<t|e>>>32-t,jY=(r,e,t)=>e<<t|r>>>32-t,xY=(r,e,t)=>e<<t-32|r>>>64-t,CY=(r,e,t)=>r<<t-32|e>>>64-t,Zo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function _Y(r){return new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4))}function Dte(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function Ate(r,e){return r<<32-e|r>>>e}const Pb=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function OY(r){return r<<24&4278190080|r<<8&16711680|r>>>8&65280|r>>>24&255}function kb(r){for(let e=0;e<r.length;e++)r[e]=OY(r[e])}function zY(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function N4(r){return typeof r=="string"&&(r=zY(r)),dd(r),r}function Ete(...r){let e=0;for(let i=0;i<r.length;i++){const s=r[i];dd(s),e+=s.length}const t=new Uint8Array(e);for(let i=0,s=0;i<r.length;i++){const n=r[i];t.set(n,s),s+=n.length}return t}class LY{clone(){return this._cloneInto()}}function PY(r){const e=i=>r().update(N4(i)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Tte(r=32){if(Zo&&typeof Zo.getRandomValues=="function")return Zo.getRandomValues(new Uint8Array(r));if(Zo&&typeof Zo.randomBytes=="function")return Zo.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}const v4=[],I4=[],D4=[],kY=BigInt(0),_c=BigInt(1),UY=BigInt(2),RY=BigInt(7),$Y=BigInt(256),FY=BigInt(113);for(let r=0,e=_c,t=1,i=0;r<24;r++){[t,i]=[i,(2*t+3*i)%5],v4.push(2*(5*i+t)),I4.push((r+1)*(r+2)/2%64);let s=kY;for(let n=0;n<7;n++)e=(e<<_c^(e>>RY)*FY)%$Y,e&UY&&(s^=_c<<(_c<<BigInt(n))-_c);D4.push(s)}const[BY,YY]=TY(D4,!0),Ub=(r,e,t)=>t>32?xY(r,e,t):SY(r,e,t),Rb=(r,e,t)=>t>32?CY(r,e,t):jY(r,e,t);function QY(r,e=24){const t=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let o=0;o<10;o++)t[o]=r[o]^r[o+10]^r[o+20]^r[o+30]^r[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,u=(o+2)%10,c=t[u],l=t[u+1],h=Ub(c,l,1)^t[a],f=Rb(c,l,1)^t[a+1];for(let w=0;w<50;w+=10)r[o+w]^=h,r[o+w+1]^=f}let s=r[2],n=r[3];for(let o=0;o<24;o++){const a=I4[o],u=Ub(s,n,a),c=Rb(s,n,a),l=v4[o];s=r[l],n=r[l+1],r[l]=u,r[l+1]=c}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)t[a]=r[o+a];for(let a=0;a<10;a++)r[o+a]^=~t[(a+2)%10]&t[(a+4)%10]}r[0]^=BY[i],r[1]^=YY[i]}t.fill(0)}class n0 extends LY{constructor(e,t,i,s=!1,n=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=i,this.enableXOF=s,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,zh(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=_Y(this.state)}keccak(){Pb||kb(this.state32),QY(this.state32,this.rounds),Pb||kb(this.state32),this.posOut=0,this.pos=0}update(e){zb(this);const{blockLen:t,state:i}=this;e=N4(e);const s=e.length;for(let n=0;n<s;){const o=Math.min(t-this.pos,s-n);for(let a=0;a<o;a++)i[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:t,pos:i,blockLen:s}=this;e[i]^=t,(t&128)!==0&&i===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){zb(this,!1),dd(e),this.finish();const t=this.state,{blockLen:i}=this;for(let s=0,n=e.length;s<n;){this.posOut>=i&&this.keccak();const o=Math.min(i-this.posOut,n-s);e.set(t.subarray(this.posOut,this.posOut+o),s),this.posOut+=o,s+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return zh(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(AY(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:i,outputLen:s,rounds:n,enableXOF:o}=this;return e||(e=new n0(t,i,s,o,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=s,e.enableXOF=o,e.destroyed=this.destroyed,e}}const VY=(r,e,t)=>PY(()=>new n0(e,r,t)),WY=VY(1,136,256/8);function A4(r,e){const t=e||"hex",i=WY(zu(r,{strict:!1})?NY(r):r);return t==="bytes"?i:Jp(i)}class qY extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){const i=this.keys().next().value;i&&this.delete(i)}return this}}const Yf=new qY(8192);function ZY(r,e){if(Yf.has(`${r}.${e}`))return Yf.get(`${r}.${e}`);const t=r.substring(2).toLowerCase(),i=A4(M4(t),"bytes"),s=t.split("");for(let o=0;o<40;o+=2)i[o>>1]>>4>=8&&s[o]&&(s[o]=s[o].toUpperCase()),(i[o>>1]&15)>=8&&s[o+1]&&(s[o+1]=s[o+1].toUpperCase());const n=`0x${s.join("")}`;return Yf.set(`${r}.${e}`,n),n}function HY(r){const e=A4(`0x${r.substring(4)}`).substring(26);return ZY(`0x${e}`)}async function GY({hash:r,signature:e}){const t=zu(r)?r:Jp(r),{secp256k1:i}=await Fi(async()=>{const{secp256k1:o}=await import("./secp256k1-DqPr1lCO.js");return{secp256k1:o}},__vite__mapDeps([24,2,3,4,5,6,7,8,9,10,16]));return`0x${(()=>{if(typeof e=="object"&&"r"in e&&"s"in e){const{r:c,s:l,v:h,yParity:f}=e,w=Number(f??h),g=$b(w);return new i.Signature(Kp(c),Kp(l)).addRecoveryBit(g)}const o=zu(e)?e:Jp(e),a=gY(`0x${o.slice(130)}`),u=$b(a);return i.Signature.fromCompact(o.substring(2,130)).addRecoveryBit(u)})().recoverPublicKey(t.substring(2)).toHex(!1)}`}function $b(r){if(r===0||r===1)return r;if(r===27)return 0;if(r===28)return 1;throw new Error("Invalid yParityOrV value")}async function KY({hash:r,signature:e}){return HY(await GY({hash:r,signature:e}))}var JY={};const XY=":";function Aa(r){const[e,t]=r.split(XY);return{namespace:e,reference:t}}function E4(r,e){return r.includes(":")?[r]:e.chains||[]}const eQ="ReactNative",Di={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},tQ="js";function Lh(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}function _n(){return!li.getDocument()&&!!li.getNavigator()&&navigator.product===eQ}function rQ(){return _n()&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"&&(global==null?void 0:global.Platform.OS)==="android"}function iQ(){return _n()&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"&&(global==null?void 0:global.Platform.OS)==="ios"}function rl(){return!Lh()&&!!li.getNavigator()&&!!li.getDocument()}function il(){return _n()?Di.reactNative:Lh()?Di.node:rl()?Di.browser:Di.unknown}function Fb(){var r;try{return _n()&&typeof global<"u"&&typeof(global==null?void 0:global.Application)<"u"?(r=global.Application)==null?void 0:r.applicationId:void 0}catch{return}}function sQ(r,e){const t=new URLSearchParams(r);for(const i of Object.keys(e).sort())if(e.hasOwnProperty(i)){const s=e[i];s!==void 0&&t.set(i,s)}return t.toString()}function T4(){return GN.getWindowMetadata()||{name:"",description:"",url:"",icons:[""]}}function nQ(){if(il()===Di.reactNative&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"){const{OS:t,Version:i}=global.Platform;return[t,i].join("-")}const r=ZN();if(r===null)return"unknown";const e=r.os?r.os.replace(" ","").toLowerCase():"unknown";return r.type==="browser"?[e,r.name,r.version].join("-"):[e,r.version].join("-")}function oQ(){var r;const e=il();return e===Di.browser?[e,((r=li.getLocation())==null?void 0:r.host)||"unknown"].join(":"):e}function S4(r,e,t){const i=nQ(),s=oQ();return[[r,e].join("-"),[tQ,t].join("-"),i,s].join("/")}function aQ({protocol:r,version:e,relayUrl:t,sdkVersion:i,auth:s,projectId:n,useOnCloseEvent:o,bundleId:a,packageName:u}){const c=t.split("?"),l=S4(r,e,i),h={auth:s,ua:l,projectId:n,useOnCloseEvent:o,packageName:u||void 0,bundleId:a||void 0},f=sQ(c[1]||"",h);return c[0]+"?"+f}function eo(r,e){return r.filter(t=>e.includes(t)).length===r.length}function Xp(r){return Object.fromEntries(r.entries())}function eg(r){return new Map(Object.entries(r))}function qn(r=Y.FIVE_MINUTES,e){const t=Y.toMiliseconds(r||Y.FIVE_MINUTES);let i,s,n,o;return{resolve:a=>{n&&i&&(clearTimeout(n),i(a),o=Promise.resolve(a))},reject:a=>{n&&s&&(clearTimeout(n),s(a))},done:()=>new Promise((a,u)=>{if(o)return a(o);n=setTimeout(()=>{const c=new Error(e);o=Promise.reject(c),u(c)},t),i=a,s=u})}}function Mn(r,e,t){return new Promise(async(i,s)=>{const n=setTimeout(()=>s(new Error(t)),e);try{const o=await r;i(o)}catch(o){s(o)}clearTimeout(n)})}function j4(r,e){if(typeof e=="string"&&e.startsWith(`${r}:`))return e;if(r.toLowerCase()==="topic"){if(typeof e!="string")throw new Error('Value must be "string" for expirer target type: topic');return`topic:${e}`}else if(r.toLowerCase()==="id"){if(typeof e!="number")throw new Error('Value must be "number" for expirer target type: id');return`id:${e}`}throw new Error(`Unknown expirer target type: ${r}`)}function cQ(r){return j4("topic",r)}function uQ(r){return j4("id",r)}function x4(r){const[e,t]=r.split(":"),i={id:void 0,topic:void 0};if(e==="topic"&&typeof t=="string")i.topic=t;else if(e==="id"&&Number.isInteger(Number(t)))i.id=Number(t);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${t}`);return i}function fr(r,e){return Y.fromMiliseconds(Date.now()+Y.toMiliseconds(r))}function gn(r){return Date.now()>=Y.toMiliseconds(r)}function Ve(r,e){return`${r}${e?`:${e}`:""}`}function fh(r=[],e=[]){return[...new Set([...r,...e])]}async function lQ({id:r,topic:e,wcDeepLink:t}){var i;try{if(!t)return;const s=typeof t=="string"?JSON.parse(t):t,n=s?.href;if(typeof n!="string")return;const o=hQ(n,r,e),a=il();if(a===Di.browser){if(!((i=li.getDocument())!=null&&i.hasFocus())){console.warn("Document does not have focus, skipping deeplink.");return}dQ(o)}else a===Di.reactNative&&typeof(global==null?void 0:global.Linking)<"u"&&await global.Linking.openURL(o)}catch(s){console.error(s)}}function hQ(r,e,t){const i=`requestId=${e}&sessionTopic=${t}`;r.endsWith("/")&&(r=r.slice(0,-1));let s=`${r}`;if(r.startsWith("https://t.me")){const n=r.includes("?")?"&startapp=":"?startapp=";s=`${s}${n}${yQ(i,!0)}`}else s=`${s}/wc?${i}`;return s}function dQ(r){let e="_self";gQ()?e="_top":(pQ()||r.startsWith("https://")||r.startsWith("http://"))&&(e="_blank"),window.open(r,e,"noreferrer noopener")}async function fQ(r,e){let t="";try{if(rl()&&(t=localStorage.getItem(e),t))return t;t=await r.getItem(e)}catch(i){console.error(i)}return t}function Bb(r,e){if(!r.includes(e))return null;const t=r.split(/([&,?,=])/),i=t.indexOf(e);return t[i+2]}function Yb(){return typeof crypto<"u"&&crypto!=null&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,r=>{const e=Math.random()*16|0;return(r==="x"?e:e&3|8).toString(16)})}function o0(){return typeof process<"u"&&JY.IS_VITEST==="true"}function pQ(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)}function gQ(){try{return window.self!==window.top}catch{return!1}}function yQ(r,e=!1){const t=Buffer.from(r).toString("base64");return e?t.replace(/[=]/g,""):t}function C4(r){return Buffer.from(r,"base64").toString("utf-8")}function wQ(r){return new Promise(e=>setTimeout(e,r))}function Lu(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function mQ(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function fd(r,...e){if(!mQ(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function a0(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Lu(r.outputLen),Lu(r.blockLen)}function Pa(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 _4(r,e){fd(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}const ql=BigInt(2**32-1),Qb=BigInt(32);function bQ(r,e=!1){return e?{h:Number(r&ql),l:Number(r>>Qb&ql)}:{h:Number(r>>Qb&ql)|0,l:Number(r&ql)|0}}function MQ(r,e=!1){let t=new Uint32Array(r.length),i=new Uint32Array(r.length);for(let s=0;s<r.length;s++){const{h:n,l:o}=bQ(r[s],e);[t[s],i[s]]=[n,o]}return[t,i]}const NQ=(r,e,t)=>r<<t|e>>>32-t,vQ=(r,e,t)=>e<<t|r>>>32-t,IQ=(r,e,t)=>e<<t-32|r>>>64-t,DQ=(r,e,t)=>r<<t-32|e>>>64-t,Ho=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function AQ(r){return new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4))}function Qf(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function bs(r,e){return r<<32-e|r>>>e}const Vb=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function EQ(r){return r<<24&4278190080|r<<8&16711680|r>>>8&65280|r>>>24&255}function Wb(r){for(let e=0;e<r.length;e++)r[e]=EQ(r[e])}function TQ(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function ka(r){return typeof r=="string"&&(r=TQ(r)),fd(r),r}let c0=class{clone(){return this._cloneInto()}};function O4(r){const e=i=>r().update(ka(i)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function sl(r=32){if(Ho&&typeof Ho.getRandomValues=="function")return Ho.getRandomValues(new Uint8Array(r));if(Ho&&typeof Ho.randomBytes=="function")return Ho.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}const z4=[],L4=[],P4=[],SQ=BigInt(0),Oc=BigInt(1),jQ=BigInt(2),xQ=BigInt(7),CQ=BigInt(256),_Q=BigInt(113);for(let r=0,e=Oc,t=1,i=0;r<24;r++){[t,i]=[i,(2*t+3*i)%5],z4.push(2*(5*i+t)),L4.push((r+1)*(r+2)/2%64);let s=SQ;for(let n=0;n<7;n++)e=(e<<Oc^(e>>xQ)*_Q)%CQ,e&jQ&&(s^=Oc<<(Oc<<BigInt(n))-Oc);P4.push(s)}const[OQ,zQ]=MQ(P4,!0),qb=(r,e,t)=>t>32?IQ(r,e,t):NQ(r,e,t),Zb=(r,e,t)=>t>32?DQ(r,e,t):vQ(r,e,t);function LQ(r,e=24){const t=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let o=0;o<10;o++)t[o]=r[o]^r[o+10]^r[o+20]^r[o+30]^r[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,u=(o+2)%10,c=t[u],l=t[u+1],h=qb(c,l,1)^t[a],f=Zb(c,l,1)^t[a+1];for(let w=0;w<50;w+=10)r[o+w]^=h,r[o+w+1]^=f}let s=r[2],n=r[3];for(let o=0;o<24;o++){const a=L4[o],u=qb(s,n,a),c=Zb(s,n,a),l=z4[o];s=r[l],n=r[l+1],r[l]=u,r[l+1]=c}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)t[a]=r[o+a];for(let a=0;a<10;a++)r[o+a]^=~t[(a+2)%10]&t[(a+4)%10]}r[0]^=OQ[i],r[1]^=zQ[i]}t.fill(0)}let PQ=class k4 extends c0{constructor(e,t,i,s=!1,n=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=i,this.enableXOF=s,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Lu(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=AQ(this.state)}keccak(){Vb||Wb(this.state32),LQ(this.state32,this.rounds),Vb||Wb(this.state32),this.posOut=0,this.pos=0}update(e){Pa(this);const{blockLen:t,state:i}=this;e=ka(e);const s=e.length;for(let n=0;n<s;){const o=Math.min(t-this.pos,s-n);for(let a=0;a<o;a++)i[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:t,pos:i,blockLen:s}=this;e[i]^=t,(t&128)!==0&&i===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){Pa(this,!1),fd(e),this.finish();const t=this.state,{blockLen:i}=this;for(let s=0,n=e.length;s<n;){this.posOut>=i&&this.keccak();const o=Math.min(i-this.posOut,n-s);e.set(t.subarray(this.posOut,this.posOut+o),s),this.posOut+=o,s+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Lu(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(_4(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:i,outputLen:s,rounds:n,enableXOF:o}=this;return e||(e=new k4(t,i,s,o,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=s,e.enableXOF=o,e.destroyed=this.destroyed,e}};const kQ=(r,e,t)=>O4(()=>new PQ(e,r,t)),UQ=kQ(1,136,256/8),RQ="https://rpc.walletconnect.org/v1";function U4(r){const e=`Ethereum Signed Message:
25
+ ${r.length}`,t=new TextEncoder().encode(e+r);return"0x"+Buffer.from(UQ(t)).toString("hex")}async function $Q(r,e,t,i,s,n){switch(t.t){case"eip191":return await FQ(r,e,t.s);case"eip1271":return await BQ(r,e,t.s,i,s,n);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${t.t}`)}}async function FQ(r,e,t){return(await KY({hash:U4(e),signature:t})).toLowerCase()===r.toLowerCase()}async function BQ(r,e,t,i,s,n){const o=Aa(i);if(!o.namespace||!o.reference)throw new Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${i}`);try{const a="0x1626ba7e",u="0000000000000000000000000000000000000000000000000000000000000040",c="0000000000000000000000000000000000000000000000000000000000000041",l=t.substring(2),h=U4(e).substring(2),f=a+h+u+c+l,w=await fetch(`${n||RQ}/?chainId=${i}&projectId=${s}`,{method:"POST",body:JSON.stringify({id:YQ(),jsonrpc:"2.0",method:"eth_call",params:[{to:r,data:f},"latest"]})}),{result:g}=await w.json();return g?g.slice(0,a.length).toLowerCase()===a.toLowerCase():!1}catch(a){return console.error("isValidEip1271Signature: ",a),!1}}function YQ(){return Date.now()+Math.floor(Math.random()*1e3)}function QQ(r){const e=atob(r),t=new Uint8Array(e.length);for(let o=0;o<e.length;o++)t[o]=e.charCodeAt(o);const i=t[0];if(i===0)throw new Error("No signatures found");const s=1+i*64;if(t.length<s)throw new Error("Transaction data too short for claimed signature count");if(t.length<100)throw new Error("Transaction too short");const n=Buffer.from(r,"base64").slice(1,65);return vn.encode(n)}var VQ=Object.defineProperty,WQ=Object.defineProperties,qQ=Object.getOwnPropertyDescriptors,Hb=Object.getOwnPropertySymbols,ZQ=Object.prototype.hasOwnProperty,HQ=Object.prototype.propertyIsEnumerable,Gb=(r,e,t)=>e in r?VQ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,GQ=(r,e)=>{for(var t in e||(e={}))ZQ.call(e,t)&&Gb(r,t,e[t]);if(Hb)for(var t of Hb(e))HQ.call(e,t)&&Gb(r,t,e[t]);return r},KQ=(r,e)=>WQ(r,qQ(e));const JQ="did:pkh:",u0=r=>r?.split(":"),XQ=r=>{const e=r&&u0(r);if(e)return r.includes(JQ)?e[3]:e[1]},tg=r=>{const e=r&&u0(r);if(e)return e[2]+":"+e[3]},Ph=r=>{const e=r&&u0(r);if(e)return e.pop()};async function Kb(r){const{cacao:e,projectId:t}=r,{s:i,p:s}=e,n=R4(s,s.iss),o=Ph(s.iss);return await $Q(o,n,i,tg(s.iss),t)}const R4=(r,e)=>{const t=`${r.domain} wants you to sign in with your Ethereum account:`,i=Ph(e);if(!r.aud&&!r.uri)throw new Error("Either `aud` or `uri` is required to construct the message");let s=r.statement||void 0;const n=`URI: ${r.aud||r.uri}`,o=`Version: ${r.version}`,a=`Chain ID: ${XQ(e)}`,u=`Nonce: ${r.nonce}`,c=`Issued At: ${r.iat}`,l=r.exp?`Expiration Time: ${r.exp}`:void 0,h=r.nbf?`Not Before: ${r.nbf}`:void 0,f=r.requestId?`Request ID: ${r.requestId}`:void 0,w=r.resources?`Resources:${r.resources.map(m=>`
26
+ - ${m}`).join("")}`:void 0,g=ph(r.resources);if(g){const m=Pu(g);s=cV(s,m)}return[t,i,"",s,"",n,o,a,u,c,l,h,f,w].filter(m=>m!=null).join(`
27
+ `)};function eV(r){return Buffer.from(JSON.stringify(r)).toString("base64")}function tV(r){return JSON.parse(Buffer.from(r,"base64").toString("utf-8"))}function ho(r){if(!r)throw new Error("No recap provided, value is undefined");if(!r.att)throw new Error("No `att` property found");const e=Object.keys(r.att);if(!(e!=null&&e.length))throw new Error("No resources found in `att` property");e.forEach(t=>{const i=r.att[t];if(Array.isArray(i))throw new Error(`Resource must be an object: ${t}`);if(typeof i!="object")throw new Error(`Resource must be an object: ${t}`);if(!Object.keys(i).length)throw new Error(`Resource object is empty: ${t}`);Object.keys(i).forEach(s=>{const n=i[s];if(!Array.isArray(n))throw new Error(`Ability limits ${s} must be an array of objects, found: ${n}`);if(!n.length)throw new Error(`Value of ${s} is empty array, must be an array with objects`);n.forEach(o=>{if(typeof o!="object")throw new Error(`Ability limits (${s}) must be an array of objects, found: ${o}`)})})})}function rV(r,e,t,i={}){return t?.sort((s,n)=>s.localeCompare(n)),{att:{[r]:iV(e,t,i)}}}function iV(r,e,t={}){e=e?.sort((s,n)=>s.localeCompare(n));const i=e.map(s=>({[`${r}/${s}`]:[t]}));return Object.assign({},...i)}function $4(r){return ho(r),`urn:recap:${eV(r).replace(/=/g,"")}`}function Pu(r){const e=tV(r.replace("urn:recap:",""));return ho(e),e}function sV(r,e,t){const i=rV(r,e,t);return $4(i)}function nV(r){return r&&r.includes("urn:recap:")}function oV(r,e){const t=Pu(r),i=Pu(e),s=aV(t,i);return $4(s)}function aV(r,e){ho(r),ho(e);const t=Object.keys(r.att).concat(Object.keys(e.att)).sort((s,n)=>s.localeCompare(n)),i={att:{}};return t.forEach(s=>{var n,o;Object.keys(((n=r.att)==null?void 0:n[s])||{}).concat(Object.keys(((o=e.att)==null?void 0:o[s])||{})).sort((a,u)=>a.localeCompare(u)).forEach(a=>{var u,c;i.att[s]=KQ(GQ({},i.att[s]),{[a]:((u=r.att[s])==null?void 0:u[a])||((c=e.att[s])==null?void 0:c[a])})})}),i}function cV(r="",e){ho(e);const t="I further authorize the stated URI to perform the following actions on my behalf: ";if(r.includes(t))return r;const i=[];let s=0;Object.keys(e.att).forEach(a=>{const u=Object.keys(e.att[a]).map(h=>({ability:h.split("/")[0],action:h.split("/")[1]}));u.sort((h,f)=>h.action.localeCompare(f.action));const c={};u.forEach(h=>{c[h.ability]||(c[h.ability]=[]),c[h.ability].push(h.action)});const l=Object.keys(c).map(h=>(s++,`(${s}) '${h}': '${c[h].join("', '")}' for '${a}'.`));i.push(l.join(", ").replace(".,","."))});const n=i.join(" "),o=`${t}${n}`;return`${r?r+" ":""}${o}`}function Jb(r){var e;const t=Pu(r);ho(t);const i=(e=t.att)==null?void 0:e.eip155;return i?Object.keys(i).map(s=>s.split("/")[1]):[]}function Xb(r){const e=Pu(r);ho(e);const t=[];return Object.values(e.att).forEach(i=>{Object.values(i).forEach(s=>{var n;(n=s?.[0])!=null&&n.chains&&t.push(s[0].chains)})}),[...new Set(t.flat())]}function ph(r){if(!r)return;const e=r?.[r.length-1];return nV(e)?e:void 0}function Vf(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function F4(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function Ni(r,...e){if(!F4(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function eM(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 uV(r,e){Ni(r);const t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}function tM(r){if(typeof r!="boolean")throw new Error(`boolean expected, not ${r}`)}const Dn=r=>new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4)),lV=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),hV=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!hV)throw new Error("Non little-endian hardware is not supported");function dV(r){if(typeof r!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(r))}function rg(r){if(typeof r=="string")r=dV(r);else if(F4(r))r=ig(r);else throw new Error("Uint8Array expected, got "+typeof r);return r}function fV(r,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(r,e)}function pV(r,e){if(r.length!==e.length)return!1;let t=0;for(let i=0;i<r.length;i++)t|=r[i]^e[i];return t===0}const gV=(r,e)=>{function t(i,...s){if(Ni(i),r.nonceLength!==void 0){const c=s[0];if(!c)throw new Error("nonce / iv required");r.varSizeNonce?Ni(c):Ni(c,r.nonceLength)}const n=r.tagLength;n&&s[1]!==void 0&&Ni(s[1]);const o=e(i,...s),a=(c,l)=>{if(l!==void 0){if(c!==2)throw new Error("cipher output not supported");Ni(l)}};let u=!1;return{encrypt(c,l){if(u)throw new Error("cannot encrypt() twice with same key + nonce");return u=!0,Ni(c),a(o.encrypt.length,l),o.encrypt(c,l)},decrypt(c,l){if(Ni(c),n&&c.length<n)throw new Error("invalid ciphertext length: smaller than tagLength="+n);return a(o.decrypt.length,l),o.decrypt(c,l)}}}return Object.assign(t,r),t};function rM(r,e,t=!0){if(e===void 0)return new Uint8Array(r);if(e.length!==r)throw new Error("invalid output length, expected "+r+", got: "+e.length);if(t&&!yV(e))throw new Error("invalid output, must be aligned");return e}function iM(r,e,t,i){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,i);const s=BigInt(32),n=BigInt(4294967295),o=Number(t>>s&n),a=Number(t&n);r.setUint32(e+4,o,i),r.setUint32(e+0,a,i)}function yV(r){return r.byteOffset%4===0}function ig(r){return Uint8Array.from(r)}function Ua(...r){for(let e=0;e<r.length;e++)r[e].fill(0)}const B4=r=>Uint8Array.from(r.split("").map(e=>e.charCodeAt(0))),wV=B4("expand 16-byte k"),mV=B4("expand 32-byte k"),bV=Dn(wV),MV=Dn(mV);function ze(r,e){return r<<e|r>>>32-e}function sg(r){return r.byteOffset%4===0}const Zl=64,NV=16,Y4=2**32-1,sM=new Uint32Array;function vV(r,e,t,i,s,n,o,a){const u=s.length,c=new Uint8Array(Zl),l=Dn(c),h=sg(s)&&sg(n),f=h?Dn(s):sM,w=h?Dn(n):sM;for(let g=0;g<u;o++){if(r(e,t,i,l,o,a),o>=Y4)throw new Error("arx: counter overflow");const m=Math.min(Zl,u-g);if(h&&m===Zl){const E=g/4;if(g%4!==0)throw new Error("arx: invalid block position");for(let A=0,D;A<NV;A++)D=E+A,w[D]=f[D]^l[A];g+=Zl;continue}for(let E=0,A;E<m;E++)A=g+E,n[A]=s[A]^c[E];g+=m}}function IV(r,e){const{allowShortKeys:t,extendNonceFn:i,counterLength:s,counterRight:n,rounds:o}=fV({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof r!="function")throw new Error("core must be a function");return Vf(s),Vf(o),tM(n),tM(t),(a,u,c,l,h=0)=>{Ni(a),Ni(u),Ni(c);const f=c.length;if(l===void 0&&(l=new Uint8Array(f)),Ni(l),Vf(h),h<0||h>=Y4)throw new Error("arx: counter overflow");if(l.length<f)throw new Error(`arx: output (${l.length}) is shorter than data (${f})`);const w=[];let g=a.length,m,E;if(g===32)w.push(m=ig(a)),E=MV;else if(g===16&&t)m=new Uint8Array(32),m.set(a),m.set(a,16),E=bV,w.push(m);else throw new Error(`arx: invalid 32-byte key, got length=${g}`);sg(u)||w.push(u=ig(u));const A=Dn(m);if(i){if(u.length!==24)throw new Error("arx: extended nonce must be 24 bytes");i(E,A,Dn(u.subarray(0,16)),A),u=u.subarray(16)}const D=16-s;if(D!==u.length)throw new Error(`arx: nonce must be ${D} or 16 bytes`);if(D!==12){const C=new Uint8Array(12);C.set(u,n?0:12-u.length),u=C,w.push(u)}const O=Dn(u);return vV(r,E,A,O,c,l,h,o),Ua(...w),l}}const Or=(r,e)=>r[e++]&255|(r[e++]&255)<<8;let DV=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=rg(e),Ni(e,32);const t=Or(e,0),i=Or(e,2),s=Or(e,4),n=Or(e,6),o=Or(e,8),a=Or(e,10),u=Or(e,12),c=Or(e,14);this.r[0]=t&8191,this.r[1]=(t>>>13|i<<3)&8191,this.r[2]=(i>>>10|s<<6)&7939,this.r[3]=(s>>>7|n<<9)&8191,this.r[4]=(n>>>4|o<<12)&255,this.r[5]=o>>>1&8190,this.r[6]=(o>>>14|a<<2)&8191,this.r[7]=(a>>>11|u<<5)&8065,this.r[8]=(u>>>8|c<<8)&8191,this.r[9]=c>>>5&127;for(let l=0;l<8;l++)this.pad[l]=Or(e,16+2*l)}process(e,t,i=!1){const s=i?0:2048,{h:n,r:o}=this,a=o[0],u=o[1],c=o[2],l=o[3],h=o[4],f=o[5],w=o[6],g=o[7],m=o[8],E=o[9],A=Or(e,t+0),D=Or(e,t+2),O=Or(e,t+4),C=Or(e,t+6),_=Or(e,t+8),S=Or(e,t+10),L=Or(e,t+12),k=Or(e,t+14);let z=n[0]+(A&8191),U=n[1]+((A>>>13|D<<3)&8191),T=n[2]+((D>>>10|O<<6)&8191),d=n[3]+((O>>>7|C<<9)&8191),y=n[4]+((C>>>4|_<<12)&8191),N=n[5]+(_>>>1&8191),b=n[6]+((_>>>14|S<<2)&8191),M=n[7]+((S>>>11|L<<5)&8191),I=n[8]+((L>>>8|k<<8)&8191),j=n[9]+(k>>>5|s),v=0,p=v+z*a+U*(5*E)+T*(5*m)+d*(5*g)+y*(5*w);v=p>>>13,p&=8191,p+=N*(5*f)+b*(5*h)+M*(5*l)+I*(5*c)+j*(5*u),v+=p>>>13,p&=8191;let x=v+z*u+U*a+T*(5*E)+d*(5*m)+y*(5*g);v=x>>>13,x&=8191,x+=N*(5*w)+b*(5*f)+M*(5*h)+I*(5*l)+j*(5*c),v+=x>>>13,x&=8191;let F=v+z*c+U*u+T*a+d*(5*E)+y*(5*m);v=F>>>13,F&=8191,F+=N*(5*g)+b*(5*w)+M*(5*f)+I*(5*h)+j*(5*l),v+=F>>>13,F&=8191;let V=v+z*l+U*c+T*u+d*a+y*(5*E);v=V>>>13,V&=8191,V+=N*(5*m)+b*(5*g)+M*(5*w)+I*(5*f)+j*(5*h),v+=V>>>13,V&=8191;let Q=v+z*h+U*l+T*c+d*u+y*a;v=Q>>>13,Q&=8191,Q+=N*(5*E)+b*(5*m)+M*(5*g)+I*(5*w)+j*(5*f),v+=Q>>>13,Q&=8191;let W=v+z*f+U*h+T*l+d*c+y*u;v=W>>>13,W&=8191,W+=N*a+b*(5*E)+M*(5*m)+I*(5*g)+j*(5*w),v+=W>>>13,W&=8191;let K=v+z*w+U*f+T*h+d*l+y*c;v=K>>>13,K&=8191,K+=N*u+b*a+M*(5*E)+I*(5*m)+j*(5*g),v+=K>>>13,K&=8191;let se=v+z*g+U*w+T*f+d*h+y*l;v=se>>>13,se&=8191,se+=N*c+b*u+M*a+I*(5*E)+j*(5*m),v+=se>>>13,se&=8191;let oe=v+z*m+U*g+T*w+d*f+y*h;v=oe>>>13,oe&=8191,oe+=N*l+b*c+M*u+I*a+j*(5*E),v+=oe>>>13,oe&=8191;let te=v+z*E+U*m+T*g+d*w+y*f;v=te>>>13,te&=8191,te+=N*h+b*l+M*c+I*u+j*a,v+=te>>>13,te&=8191,v=(v<<2)+v|0,v=v+p|0,p=v&8191,v=v>>>13,x+=v,n[0]=p,n[1]=x,n[2]=F,n[3]=V,n[4]=Q,n[5]=W,n[6]=K,n[7]=se,n[8]=oe,n[9]=te}finalize(){const{h:e,pad:t}=this,i=new Uint16Array(10);let s=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=s,s=e[a]>>>13,e[a]&=8191;e[0]+=s*5,s=e[0]>>>13,e[0]&=8191,e[1]+=s,s=e[1]>>>13,e[1]&=8191,e[2]+=s,i[0]=e[0]+5,s=i[0]>>>13,i[0]&=8191;for(let a=1;a<10;a++)i[a]=e[a]+s,s=i[a]>>>13,i[a]&=8191;i[9]-=8192;let n=(s^1)-1;for(let a=0;a<10;a++)i[a]&=n;n=~n;for(let a=0;a<10;a++)e[a]=e[a]&n|i[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 o=e[0]+t[0];e[0]=o&65535;for(let a=1;a<8;a++)o=(e[a]+t[a]|0)+(o>>>16)|0,e[a]=o&65535;Ua(i)}update(e){eM(this);const{buffer:t,blockLen:i}=this;e=rg(e);const s=e.length;for(let n=0;n<s;){const o=Math.min(i-this.pos,s-n);if(o===i){for(;i<=s-n;n+=i)this.process(e,n);continue}t.set(e.subarray(n,n+o),this.pos),this.pos+=o,n+=o,this.pos===i&&(this.process(t,0,!1),this.pos=0)}return this}destroy(){Ua(this.h,this.r,this.buffer,this.pad)}digestInto(e){eM(this),uV(e,this),this.finished=!0;const{buffer:t,h:i}=this;let{pos:s}=this;if(s){for(t[s++]=1;s<16;s++)t[s]=0;this.process(t,0,!0)}this.finalize();let n=0;for(let o=0;o<8;o++)e[n++]=i[o]>>>0,e[n++]=i[o]>>>8;return e}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const i=e.slice(0,t);return this.destroy(),i}};function AV(r){const e=(i,s)=>r(s).update(rg(i)).digest(),t=r(new Uint8Array(32));return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=i=>r(i),e}const EV=AV(r=>new DV(r));function TV(r,e,t,i,s,n=20){let o=r[0],a=r[1],u=r[2],c=r[3],l=e[0],h=e[1],f=e[2],w=e[3],g=e[4],m=e[5],E=e[6],A=e[7],D=s,O=t[0],C=t[1],_=t[2],S=o,L=a,k=u,z=c,U=l,T=h,d=f,y=w,N=g,b=m,M=E,I=A,j=D,v=O,p=C,x=_;for(let V=0;V<n;V+=2)S=S+U|0,j=ze(j^S,16),N=N+j|0,U=ze(U^N,12),S=S+U|0,j=ze(j^S,8),N=N+j|0,U=ze(U^N,7),L=L+T|0,v=ze(v^L,16),b=b+v|0,T=ze(T^b,12),L=L+T|0,v=ze(v^L,8),b=b+v|0,T=ze(T^b,7),k=k+d|0,p=ze(p^k,16),M=M+p|0,d=ze(d^M,12),k=k+d|0,p=ze(p^k,8),M=M+p|0,d=ze(d^M,7),z=z+y|0,x=ze(x^z,16),I=I+x|0,y=ze(y^I,12),z=z+y|0,x=ze(x^z,8),I=I+x|0,y=ze(y^I,7),S=S+T|0,x=ze(x^S,16),M=M+x|0,T=ze(T^M,12),S=S+T|0,x=ze(x^S,8),M=M+x|0,T=ze(T^M,7),L=L+d|0,j=ze(j^L,16),I=I+j|0,d=ze(d^I,12),L=L+d|0,j=ze(j^L,8),I=I+j|0,d=ze(d^I,7),k=k+y|0,v=ze(v^k,16),N=N+v|0,y=ze(y^N,12),k=k+y|0,v=ze(v^k,8),N=N+v|0,y=ze(y^N,7),z=z+U|0,p=ze(p^z,16),b=b+p|0,U=ze(U^b,12),z=z+U|0,p=ze(p^z,8),b=b+p|0,U=ze(U^b,7);let F=0;i[F++]=o+S|0,i[F++]=a+L|0,i[F++]=u+k|0,i[F++]=c+z|0,i[F++]=l+U|0,i[F++]=h+T|0,i[F++]=f+d|0,i[F++]=w+y|0,i[F++]=g+N|0,i[F++]=m+b|0,i[F++]=E+M|0,i[F++]=A+I|0,i[F++]=D+j|0,i[F++]=O+v|0,i[F++]=C+p|0,i[F++]=_+x|0}const SV=IV(TV,{counterRight:!1,counterLength:4,allowShortKeys:!1}),jV=new Uint8Array(16),nM=(r,e)=>{r.update(e);const t=e.length%16;t&&r.update(jV.subarray(t))},xV=new Uint8Array(32);function oM(r,e,t,i,s){const n=r(e,t,xV),o=EV.create(n);s&&nM(o,s),nM(o,i);const a=new Uint8Array(16),u=lV(a);iM(u,0,BigInt(s?s.length:0),!0),iM(u,8,BigInt(i.length),!0),o.update(a);const c=o.digest();return Ua(n,a),c}const CV=r=>(e,t,i)=>({encrypt(s,n){const o=s.length;n=rM(o+16,n,!1),n.set(s);const a=n.subarray(0,-16);r(e,t,a,a,1);const u=oM(r,e,t,a,i);return n.set(u,o),Ua(u),n},decrypt(s,n){n=rM(s.length-16,n,!1);const o=s.subarray(0,-16),a=s.subarray(-16),u=oM(r,e,t,o,i);if(!pV(a,u))throw new Error("invalid tag");return n.set(s.subarray(0,-16)),r(e,t,n,n,1),Ua(u),n}}),Q4=gV({blockSize:64,nonceLength:12,tagLength:16},CV(SV));let V4=class extends c0{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,a0(e);const i=ka(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;const s=this.blockLen,n=new Uint8Array(s);n.set(i.length>s?e.create().update(i).digest():i);for(let o=0;o<n.length;o++)n[o]^=54;this.iHash.update(n),this.oHash=e.create();for(let o=0;o<n.length;o++)n[o]^=106;this.oHash.update(n),n.fill(0)}update(e){return Pa(this),this.iHash.update(e),this}digestInto(e){Pa(this),fd(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:t,iHash:i,finished:s,destroyed:n,blockLen:o,outputLen:a}=this;return e=e,e.finished=s,e.destroyed=n,e.blockLen=o,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=i._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};const l0=(r,e,t)=>new V4(r,e).update(t).digest();l0.create=(r,e)=>new V4(r,e);function _V(r,e,t){return a0(r),t===void 0&&(t=new Uint8Array(r.outputLen)),l0(r,ka(t),ka(e))}const Wf=new Uint8Array([0]),aM=new Uint8Array;function OV(r,e,t,i=32){if(a0(r),Lu(i),i>255*r.outputLen)throw new Error("Length should be <= 255*HashLen");const s=Math.ceil(i/r.outputLen);t===void 0&&(t=aM);const n=new Uint8Array(s*r.outputLen),o=l0.create(r,e),a=o._cloneInto(),u=new Uint8Array(o.outputLen);for(let c=0;c<s;c++)Wf[0]=c+1,a.update(c===0?aM:u).update(t).update(Wf).digestInto(u),n.set(u,r.outputLen*c),o._cloneInto(a);return o.destroy(),a.destroy(),u.fill(0),Wf.fill(0),n.slice(0,i)}const zV=(r,e,t,i,s)=>OV(r,_V(r,e,t),i,s);function LV(r,e,t,i){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,i);const s=BigInt(32),n=BigInt(4294967295),o=Number(t>>s&n),a=Number(t&n),u=i?4:0,c=i?0:4;r.setUint32(e+u,o,i),r.setUint32(e+c,a,i)}function PV(r,e,t){return r&e^~r&t}function kV(r,e,t){return r&e^r&t^e&t}class UV extends c0{constructor(e,t,i,s){super(),this.blockLen=e,this.outputLen=t,this.padOffset=i,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Qf(this.buffer)}update(e){Pa(this);const{view:t,buffer:i,blockLen:s}=this;e=ka(e);const n=e.length;for(let o=0;o<n;){const a=Math.min(s-this.pos,n-o);if(a===s){const u=Qf(e);for(;s<=n-o;o+=s)this.process(u,o);continue}i.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Pa(this),_4(e,this),this.finished=!0;const{buffer:t,view:i,blockLen:s,isLE:n}=this;let{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>s-o&&(this.process(i,0),o=0);for(let h=o;h<s;h++)t[h]=0;LV(i,s-8,BigInt(this.length*8),n),this.process(i,0);const a=Qf(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=u/4,l=this.get();if(c>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<c;h++)a.setUint32(4*h,l[h],n)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const i=e.slice(0,t);return this.destroy(),i}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:i,length:s,finished:n,destroyed:o,pos:a}=this;return e.length=s,e.pos=a,e.finished=n,e.destroyed=o,s%t&&e.buffer.set(i),e}}const RV=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);let $V=class extends UV{constructor(){super(64,32,8,!1),this.A=cn[0]|0,this.B=cn[1]|0,this.C=cn[2]|0,this.D=cn[3]|0,this.E=cn[4]|0,this.F=cn[5]|0,this.G=cn[6]|0,this.H=cn[7]|0}get(){const{A:e,B:t,C:i,D:s,E:n,F:o,G:a,H:u}=this;return[e,t,i,s,n,o,a,u]}set(e,t,i,s,n,o,a,u){this.A=e|0,this.B=t|0,this.C=i|0,this.D=s|0,this.E=n|0,this.F=o|0,this.G=a|0,this.H=u|0}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++){const f=un[h-15],w=un[h-2],g=bs(f,7)^bs(f,18)^f>>>3,m=bs(w,17)^bs(w,19)^w>>>10;un[h]=m+un[h-7]+g+un[h-16]|0}let{A:i,B:s,C:n,D:o,E:a,F:u,G:c,H:l}=this;for(let h=0;h<64;h++){const f=bs(a,6)^bs(a,11)^bs(a,25),w=l+f+PV(a,u,c)+RV[h]+un[h]|0,g=(bs(i,2)^bs(i,13)^bs(i,22))+kV(i,s,n)|0;l=c,c=u,u=a,a=o+w|0,o=n,n=s,s=i,i=w+g|0}i=i+this.A|0,s=s+this.B|0,n=n+this.C|0,o=o+this.D|0,a=a+this.E|0,u=u+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(i,s,n,o,a,u,c,l)}roundClean(){un.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};const pd=O4(()=>new $V);const W4=BigInt(0);function h0(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function q4(r){if(!h0(r))throw new Error("Uint8Array expected")}const FV=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function BV(r){q4(r);let e="";for(let t=0;t<r.length;t++)e+=FV[r[t]];return e}function YV(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return r===""?W4:BigInt("0x"+r)}const Fs={_0:48,_9:57,A:65,F:70,a:97,f:102};function cM(r){if(r>=Fs._0&&r<=Fs._9)return r-Fs._0;if(r>=Fs.A&&r<=Fs.F)return r-(Fs.A-10);if(r>=Fs.a&&r<=Fs.f)return r-(Fs.a-10)}function Z4(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);const e=r.length,t=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const i=new Uint8Array(t);for(let s=0,n=0;s<t;s++,n+=2){const o=cM(r.charCodeAt(n)),a=cM(r.charCodeAt(n+1));if(o===void 0||a===void 0){const u=r[n]+r[n+1];throw new Error('hex string expected, got non-hex character "'+u+'" at index '+n)}i[s]=o*16+a}return i}function uM(r){return q4(r),YV(BV(Uint8Array.from(r).reverse()))}function QV(r,e){return Z4(r.toString(16).padStart(e*2,"0"))}function VV(r,e){return QV(r,e).reverse()}function lM(r,e,t){let i;if(typeof e=="string")try{i=Z4(e)}catch(n){throw new Error(r+" must be hex string or Uint8Array, cause: "+n)}else if(h0(e))i=Uint8Array.from(e);else throw new Error(r+" must be hex string or Uint8Array");const s=i.length;if(typeof t=="number"&&s!==t)throw new Error(r+" of length "+t+" expected, got "+s);return i}const qf=r=>typeof r=="bigint"&&W4<=r;function WV(r,e,t){return qf(r)&&qf(e)&&qf(t)&&e<=r&&r<t}function hM(r,e,t,i){if(!WV(e,t,i))throw new Error("expected valid "+r+": "+t+" <= n < "+i+", got "+e)}const qV={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"||h0(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 ZV(r,e,t={}){const i=(s,n,o)=>{const a=qV[n];if(typeof a!="function")throw new Error("invalid validator function");const u=r[s];if(!(o&&u===void 0)&&!a(u,r))throw new Error("param "+String(s)+" is invalid. Expected "+n+", got "+u)};for(const[s,n]of Object.entries(e))i(s,n,!1);for(const[s,n]of Object.entries(t))i(s,n,!0);return r}const Ma=BigInt(0),Hl=BigInt(1);function H4(r,e){const t=r%e;return t>=Ma?t:e+t}function HV(r,e,t){if(e<Ma)throw new Error("invalid exponent, negatives unsupported");if(t<=Ma)throw new Error("invalid modulus");if(t===Hl)return Ma;let i=Hl;for(;e>Ma;)e&Hl&&(i=i*r%t),r=r*r%t,e>>=Hl;return i}function ss(r,e,t){let i=r;for(;e-- >Ma;)i*=i,i%=t;return i}BigInt(0),BigInt(1),BigInt(0),BigInt(1),BigInt(2),BigInt(8);const Go=BigInt(0),Zf=BigInt(1);function GV(r){return ZV(r,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...r})}function KV(r){const e=GV(r),{P:t}=e,i=D=>H4(D,t),s=e.montgomeryBits,n=Math.ceil(s/8),o=e.nByteLength,a=e.adjustScalarBytes||(D=>D),u=e.powPminus2||(D=>HV(D,t-BigInt(2),t));function c(D,O,C){const _=i(D*(O-C));return O=i(O-_),C=i(C+_),[O,C]}const l=(e.a-BigInt(2))/BigInt(4);function h(D,O){hM("u",D,Go,t),hM("scalar",O,Go,t);const C=O,_=D;let S=Zf,L=Go,k=D,z=Zf,U=Go,T;for(let y=BigInt(s-1);y>=Go;y--){const N=C>>y&Zf;U^=N,T=c(U,S,k),S=T[0],k=T[1],T=c(U,L,z),L=T[0],z=T[1],U=N;const b=S+L,M=i(b*b),I=S-L,j=i(I*I),v=M-j,p=k+z,x=k-z,F=i(x*b),V=i(p*I),Q=F+V,W=F-V;k=i(Q*Q),z=i(_*i(W*W)),S=i(M*j),L=i(v*(M+i(l*v)))}T=c(U,S,k),S=T[0],k=T[1],T=c(U,L,z),L=T[0],z=T[1];const d=u(L);return i(S*d)}function f(D){return VV(i(D),n)}function w(D){const O=lM("u coordinate",D,n);return o===32&&(O[31]&=127),uM(O)}function g(D){const O=lM("scalar",D),C=O.length;if(C!==n&&C!==o){let _=""+n+" or "+o;throw new Error("invalid scalar, expected "+_+" bytes, got "+C)}return uM(a(O))}function m(D,O){const C=w(O),_=g(D),S=h(C,_);if(S===Go)throw new Error("invalid private or public key received");return f(S)}const E=f(e.Gu);function A(D){return m(D,E)}return{scalarMult:m,scalarMultBase:A,getSharedSecret:(D,O)=>m(D,O),getPublicKey:D=>A(D),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:E}}const ng=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949");BigInt(0);const JV=BigInt(1),dM=BigInt(2),XV=BigInt(3),eW=BigInt(5);BigInt(8);function tW(r){const e=BigInt(10),t=BigInt(20),i=BigInt(40),s=BigInt(80),n=ng,o=r*r%n*r%n,a=ss(o,dM,n)*o%n,u=ss(a,JV,n)*r%n,c=ss(u,eW,n)*u%n,l=ss(c,e,n)*c%n,h=ss(l,t,n)*l%n,f=ss(h,i,n)*h%n,w=ss(f,s,n)*f%n,g=ss(w,s,n)*f%n,m=ss(g,e,n)*c%n;return{pow_p_5_8:ss(m,dM,n)*r%n,b2:o}}function rW(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}const og=KV({P:ng,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:r=>{const e=ng,{pow_p_5_8:t,b2:i}=tW(r);return H4(ss(t,XV,e)*i,e)},adjustScalarBytes:rW,randomBytes:sl}),G4="base10",qr="base16",Nn="base64pad",zc="base64url",nl="utf8",K4=0,qs=1,ol=2,iW=0,fM=1,tu=12,d0=32;function sW(){const r=og.utils.randomPrivateKey(),e=og.getPublicKey(r);return{privateKey:We(r,qr),publicKey:We(e,qr)}}function ag(){const r=sl(d0);return We(r,qr)}function nW(r,e){const t=og.getSharedSecret(Ct(r,qr),Ct(e,qr)),i=zV(pd,t,void 0,void 0,d0);return We(i,qr)}function gh(r){const e=pd(Ct(r,qr));return We(e,qr)}function Ds(r){const e=pd(Ct(r,nl));return We(e,qr)}function J4(r){return Ct(`${r}`,G4)}function fo(r){return Number(We(r,G4))}function oW(r){const e=J4(typeof r.type<"u"?r.type:K4);if(fo(e)===qs&&typeof r.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const t=typeof r.senderPublicKey<"u"?Ct(r.senderPublicKey,qr):void 0,i=typeof r.iv<"u"?Ct(r.iv,qr):sl(tu),s=Ct(r.symKey,qr),n=Q4(s,i).encrypt(Ct(r.message,nl));return X4({type:e,sealed:n,iv:i,senderPublicKey:t,encoding:r.encoding})}function aW(r){const e=Ct(r.symKey,qr),{sealed:t,iv:i}=ku(r),s=Q4(e,i).decrypt(t);if(s===null)throw new Error("Failed to decrypt");return We(s,nl)}function cW(r,e){const t=J4(ol),i=sl(tu),s=Ct(r,nl);return X4({type:t,sealed:s,iv:i,encoding:e})}function uW(r,e){const{sealed:t}=ku({encoded:r,encoding:e});return We(t,nl)}function X4(r){const{encoding:e=Nn}=r;if(fo(r.type)===ol)return We(Ia([r.type,r.sealed]),e);if(fo(r.type)===qs){if(typeof r.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return We(Ia([r.type,r.senderPublicKey,r.iv,r.sealed]),e)}return We(Ia([r.type,r.iv,r.sealed]),e)}function ku(r){const{encoded:e,encoding:t=Nn}=r,i=Ct(e,t),s=i.slice(iW,fM),n=fM;if(fo(s)===qs){const c=n+d0,l=c+tu,h=i.slice(n,c),f=i.slice(c,l),w=i.slice(l);return{type:s,sealed:w,iv:f,senderPublicKey:h}}if(fo(s)===ol){const c=i.slice(n),l=sl(tu);return{type:s,sealed:c,iv:l}}const o=n+tu,a=i.slice(n,o),u=i.slice(o);return{type:s,sealed:u,iv:a}}function lW(r,e){const t=ku({encoded:r,encoding:e?.encoding});return e2({type:fo(t.type),senderPublicKey:typeof t.senderPublicKey<"u"?We(t.senderPublicKey,qr):void 0,receiverPublicKey:e?.receiverPublicKey})}function e2(r){const e=r?.type||K4;if(e===qs){if(typeof r?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof r?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return{type:e,senderPublicKey:r?.senderPublicKey,receiverPublicKey:r?.receiverPublicKey}}function pM(r){return r.type===qs&&typeof r.senderPublicKey=="string"&&typeof r.receiverPublicKey=="string"}function gM(r){return r.type===ol}function hW(r){return new Nv.ec("p256").keyFromPublic({x:Buffer.from(r.x,"base64").toString("hex"),y:Buffer.from(r.y,"base64").toString("hex")},"hex")}function dW(r){let e=r.replace(/-/g,"+").replace(/_/g,"/");const t=e.length%4;return t>0&&(e+="=".repeat(4-t)),e}function fW(r){return Buffer.from(dW(r),"base64")}function pW(r,e){const[t,i,s]=r.split("."),n=fW(s);if(n.length!==64)throw new Error("Invalid signature length");const o=n.slice(0,32).toString("hex"),a=n.slice(32,64).toString("hex"),u=`${t}.${i}`,c=pd(u),l=hW(e),h=We(c,qr);if(!l.verify(h,{r:o,s:a}))throw new Error("Invalid signature");return Sa(r).payload}const gW="irn";function kh(r){return r?.relay||{protocol:gW}}function Wc(r){const e=vv[r];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${r}`);return e}function yW(r,e="-"){const t={},i="relay"+e;return Object.keys(r).forEach(s=>{if(s.startsWith(i)){const n=s.replace(i,""),o=r[s];t[n]=o}}),t}function yM(r){if(!r.includes("wc:")){const c=C4(r);c!=null&&c.includes("wc:")&&(r=c)}r=r.includes("wc://")?r.replace("wc://",""):r,r=r.includes("wc:")?r.replace("wc:",""):r;const e=r.indexOf(":"),t=r.indexOf("?")!==-1?r.indexOf("?"):void 0,i=r.substring(0,e),s=r.substring(e+1,t).split("@"),n=typeof t<"u"?r.substring(t):"",o=new URLSearchParams(n),a={};o.forEach((c,l)=>{a[l]=c});const u=typeof a.methods=="string"?a.methods.split(","):void 0;return{protocol:i,topic:wW(s[0]),version:parseInt(s[1],10),symKey:a.symKey,relay:yW(a),methods:u,expiryTimestamp:a.expiryTimestamp?parseInt(a.expiryTimestamp,10):void 0}}function wW(r){return r.startsWith("//")?r.substring(2):r}function mW(r,e="-"){const t="relay",i={};return Object.keys(r).forEach(s=>{const n=s,o=t+e+n;r[n]&&(i[o]=r[n])}),i}function wM(r){const e=new URLSearchParams,t=mW(r.relay);Object.keys(t).sort().forEach(s=>{e.set(s,t[s])}),e.set("symKey",r.symKey),r.expiryTimestamp&&e.set("expiryTimestamp",r.expiryTimestamp.toString()),r.methods&&e.set("methods",r.methods.join(","));const i=e.toString();return`${r.protocol}:${r.topic}@${r.version}?${i}`}function Gl(r,e,t){return`${r}?wc_ev=${t}&topic=${e}`}function Ka(r){const e=[];return r.forEach(t=>{const[i,s]=t.split(":");e.push(`${i}:${s}`)}),e}function bW(r){const e=[];return Object.values(r).forEach(t=>{e.push(...Ka(t.accounts))}),e}function MW(r,e){const t=[];return Object.values(r).forEach(i=>{Ka(i.accounts).includes(e)&&t.push(...i.methods)}),t}function NW(r,e){const t=[];return Object.values(r).forEach(i=>{Ka(i.accounts).includes(e)&&t.push(...i.events)}),t}function f0(r){return r.includes(":")}function qc(r){return f0(r)?r.split(":")[0]:r}function vW(r){const e={};return r?.forEach(t=>{var i;const[s,n]=t.split(":");e[s]||(e[s]={accounts:[],chains:[],events:[],methods:[]}),e[s].accounts.push(t),(i=e[s].chains)==null||i.push(`${s}:${n}`)}),e}function mM(r,e){e=e.map(i=>i.replace("did:pkh:",""));const t=vW(e);for(const[i,s]of Object.entries(t))s.methods?s.methods=fh(s.methods,r):s.methods=r,s.events=["chainChanged","accountsChanged"];return t}const IW={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},DW={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function ee(r,e){const{message:t,code:i}=DW[r];return{message:e?`${t} ${e}`:t,code:i}}function nt(r,e){const{message:t,code:i}=IW[r];return{message:e?`${t} ${e}`:t,code:i}}function po(r,e){return!!Array.isArray(r)}function Uu(r){return Object.getPrototypeOf(r)===Object.prototype&&Object.keys(r).length}function kr(r){return typeof r>"u"}function ur(r,e){return e&&kr(r)?!0:typeof r=="string"&&!!r.trim().length}function p0(r,e){return e&&kr(r)?!0:typeof r=="number"&&!isNaN(r)}function AW(r,e){const{requiredNamespaces:t}=e,i=Object.keys(r.namespaces),s=Object.keys(t);let n=!0;return eo(s,i)?(i.forEach(o=>{const{accounts:a,methods:u,events:c}=r.namespaces[o],l=Ka(a),h=t[o];(!eo(E4(o,h),l)||!eo(h.methods,u)||!eo(h.events,c))&&(n=!1)}),n):!1}function Uh(r){return ur(r,!1)&&r.includes(":")?r.split(":").length===2:!1}function EW(r){if(ur(r,!1)&&r.includes(":")){const e=r.split(":");if(e.length===3){const t=e[0]+":"+e[1];return!!e[2]&&Uh(t)}}return!1}function TW(r){function e(t){try{return typeof new URL(t)<"u"}catch{return!1}}try{if(ur(r,!1)){if(e(r))return!0;const t=C4(r);return e(t)}}catch{}return!1}function SW(r){var e;return(e=r?.proposer)==null?void 0:e.publicKey}function jW(r){return r?.topic}function xW(r,e){let t=null;return ur(r?.publicKey,!1)||(t=ee("MISSING_OR_INVALID",`${e} controller public key should be a string`)),t}function bM(r){let e=!0;return po(r)?r.length&&(e=r.every(t=>ur(t,!1))):e=!1,e}function CW(r,e,t){let i=null;return po(e)&&e.length?e.forEach(s=>{i||Uh(s)||(i=nt("UNSUPPORTED_CHAINS",`${t}, chain ${s} should be a string and conform to "namespace:chainId" format`))}):Uh(r)||(i=nt("UNSUPPORTED_CHAINS",`${t}, chains must be defined as "namespace:chainId" e.g. "eip155:1": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: ["eip155:1", "eip155:5"] }`)),i}function _W(r,e,t){let i=null;return Object.entries(r).forEach(([s,n])=>{if(i)return;const o=CW(s,E4(s,n),`${e} ${t}`);o&&(i=o)}),i}function OW(r,e){let t=null;return po(r)?r.forEach(i=>{t||EW(i)||(t=nt("UNSUPPORTED_ACCOUNTS",`${e}, account ${i} should be a string and conform to "namespace:chainId:address" format`))}):t=nt("UNSUPPORTED_ACCOUNTS",`${e}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),t}function zW(r,e){let t=null;return Object.values(r).forEach(i=>{if(t)return;const s=OW(i?.accounts,`${e} namespace`);s&&(t=s)}),t}function LW(r,e){let t=null;return bM(r?.methods)?bM(r?.events)||(t=nt("UNSUPPORTED_EVENTS",`${e}, events should be an array of strings or empty array for no events`)):t=nt("UNSUPPORTED_METHODS",`${e}, methods should be an array of strings or empty array for no methods`),t}function t2(r,e){let t=null;return Object.values(r).forEach(i=>{if(t)return;const s=LW(i,`${e}, namespace`);s&&(t=s)}),t}function PW(r,e,t){let i=null;if(r&&Uu(r)){const s=t2(r,e);s&&(i=s);const n=_W(r,e,t);n&&(i=n)}else i=ee("MISSING_OR_INVALID",`${e}, ${t} should be an object with data`);return i}function Hf(r,e){let t=null;if(r&&Uu(r)){const i=t2(r,e);i&&(t=i);const s=zW(r,e);s&&(t=s)}else t=ee("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return t}function r2(r){return ur(r.protocol,!0)}function kW(r,e){let t=!1;return r?r&&po(r)&&r.length&&r.forEach(i=>{t=r2(i)}):t=!0,t}function UW(r){return typeof r=="number"}function ai(r){return typeof r<"u"&&typeof r!==null}function RW(r){return!(!r||typeof r!="object"||!r.code||!p0(r.code,!1)||!r.message||!ur(r.message,!1))}function $W(r){return!(kr(r)||!ur(r.method,!1))}function FW(r){return!(kr(r)||kr(r.result)&&kr(r.error)||!p0(r.id,!1)||!ur(r.jsonrpc,!1))}function BW(r){return!(kr(r)||!ur(r.name,!1))}function MM(r,e){return!(!Uh(e)||!bW(r).includes(e))}function YW(r,e,t){return ur(t,!1)?MW(r,e).includes(t):!1}function QW(r,e,t){return ur(t,!1)?NW(r,e).includes(t):!1}function NM(r,e,t){let i=null;const s=VW(r),n=WW(e),o=Object.keys(s),a=Object.keys(n),u=vM(Object.keys(r)),c=vM(Object.keys(e)),l=u.filter(h=>!c.includes(h));return l.length&&(i=ee("NON_CONFORMING_NAMESPACES",`${t} namespaces keys don't satisfy requiredNamespaces.
28
+ Required: ${l.toString()}
29
+ Received: ${Object.keys(e).toString()}`)),eo(o,a)||(i=ee("NON_CONFORMING_NAMESPACES",`${t} namespaces chains don't satisfy required namespaces.
30
+ Required: ${o.toString()}
31
+ Approved: ${a.toString()}`)),Object.keys(e).forEach(h=>{if(!h.includes(":")||i)return;const f=Ka(e[h].accounts);f.includes(h)||(i=ee("NON_CONFORMING_NAMESPACES",`${t} namespaces accounts don't satisfy namespace accounts for ${h}
32
+ Required: ${h}
33
+ Approved: ${f.toString()}`))}),o.forEach(h=>{i||(eo(s[h].methods,n[h].methods)?eo(s[h].events,n[h].events)||(i=ee("NON_CONFORMING_NAMESPACES",`${t} namespaces events don't satisfy namespace events for ${h}`)):i=ee("NON_CONFORMING_NAMESPACES",`${t} namespaces methods don't satisfy namespace methods for ${h}`))}),i}function VW(r){const e={};return Object.keys(r).forEach(t=>{var i;t.includes(":")?e[t]=r[t]:(i=r[t].chains)==null||i.forEach(s=>{e[s]={methods:r[t].methods,events:r[t].events}})}),e}function vM(r){return[...new Set(r.map(e=>e.includes(":")?e.split(":")[0]:e))]}function WW(r){const e={};return Object.keys(r).forEach(t=>{t.includes(":")?e[t]=r[t]:Ka(r[t].accounts)?.forEach(s=>{e[s]={accounts:r[t].accounts.filter(n=>n.includes(`${s}:`)),methods:r[t].methods,events:r[t].events}})}),e}function qW(r,e){return p0(r,!1)&&r<=e.max&&r>=e.min}function IM(){const r=il();return new Promise(e=>{switch(r){case Di.browser:e(ZW());break;case Di.reactNative:e(HW());break;case Di.node:e(GW());break;default:e(!0)}})}function ZW(){return rl()&&navigator?.onLine}async function HW(){return _n()&&typeof global<"u"&&global!=null&&global.NetInfo?(await(global==null?void 0:global.NetInfo.fetch()))?.isConnected:!0}function GW(){return!0}function KW(r){switch(il()){case Di.browser:JW(r);break;case Di.reactNative:XW(r);break}}function JW(r){!_n()&&rl()&&(window.addEventListener("online",()=>r(!0)),window.addEventListener("offline",()=>r(!1)))}function XW(r){_n()&&typeof global<"u"&&global!=null&&global.NetInfo&&global?.NetInfo.addEventListener(e=>r(e?.isConnected))}const Gf={};class Lc{static get(e){return Gf[e]}static set(e,t){Gf[e]=t}static delete(e){delete Gf[e]}}const i2="wc",s2=2,cg="core",Ss=`${i2}@2:${cg}:`,eq={logger:"error"},tq={database:":memory:"},rq="crypto",DM="client_ed25519_seed",iq=Y.ONE_DAY,sq="keychain",nq="0.3",oq="messages",aq="0.3",AM=Y.SIX_HOURS,cq="publisher",n2="irn",uq="error",o2="wss://relay.walletconnect.org",lq="relayer",Er={message:"relayer_message",message_ack:"relayer_message_ack",connect:"relayer_connect",disconnect:"relayer_disconnect",error:"relayer_error",connection_stalled:"relayer_connection_stalled",transport_closed:"relayer_transport_closed",publish:"relayer_publish"},hq="_subscription",Li={payload:"payload",connect:"connect",disconnect:"disconnect",error:"error"},dq=.1,ug="2.19.1",Dt={link_mode:"link_mode",relay:"relay"},yh={inbound:"inbound",outbound:"outbound"},fq="0.3",pq="WALLETCONNECT_CLIENT_ID",EM="WALLETCONNECT_LINK_MODE_APPS",bi={created:"subscription_created",deleted:"subscription_deleted",expired:"subscription_expired",disabled:"subscription_disabled",sync:"subscription_sync",resubscribed:"subscription_resubscribed"},gq="subscription",yq="0.3",wq="pairing",mq="0.3",Pc={wc_pairingDelete:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:Y.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:Y.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:0},res:{ttl:Y.ONE_DAY,prompt:!1,tag:0}}},Gn={create:"pairing_create",expire:"pairing_expire",delete:"pairing_delete",ping:"pairing_ping"},es={created:"history_created",updated:"history_updated",deleted:"history_deleted",sync:"history_sync"},bq="history",Mq="0.3",Nq="expirer",Ri={created:"expirer_created",deleted:"expirer_deleted",expired:"expirer_expired",sync:"expirer_sync"},vq="0.3",Iq="verify-api",Dq="https://verify.walletconnect.com",a2="https://verify.walletconnect.org",ru=a2,Aq=`${ru}/v3`,Eq=[Dq,a2],Tq="echo",Sq="https://echo.walletconnect.com",Is={pairing_started:"pairing_started",pairing_uri_validation_success:"pairing_uri_validation_success",pairing_uri_not_expired:"pairing_uri_not_expired",store_new_pairing:"store_new_pairing",subscribing_pairing_topic:"subscribing_pairing_topic",subscribe_pairing_topic_success:"subscribe_pairing_topic_success",existing_pairing:"existing_pairing",pairing_not_expired:"pairing_not_expired",emit_inactive_pairing:"emit_inactive_pairing",emit_session_proposal:"emit_session_proposal",subscribing_to_pairing_topic:"subscribing_to_pairing_topic"},Ys={no_wss_connection:"no_wss_connection",no_internet_connection:"no_internet_connection",malformed_pairing_uri:"malformed_pairing_uri",active_pairing_already_exists:"active_pairing_already_exists",subscribe_pairing_topic_failure:"subscribe_pairing_topic_failure",pairing_expired:"pairing_expired",proposal_expired:"proposal_expired",proposal_listener_not_found:"proposal_listener_not_found"},ts={session_approve_started:"session_approve_started",proposal_not_expired:"proposal_not_expired",session_namespaces_validation_success:"session_namespaces_validation_success",create_session_topic:"create_session_topic",subscribing_session_topic:"subscribing_session_topic",subscribe_session_topic_success:"subscribe_session_topic_success",publishing_session_approve:"publishing_session_approve",session_approve_publish_success:"session_approve_publish_success",store_session:"store_session",publishing_session_settle:"publishing_session_settle",session_settle_publish_success:"session_settle_publish_success"},Bn={no_internet_connection:"no_internet_connection",no_wss_connection:"no_wss_connection",proposal_expired:"proposal_expired",subscribe_session_topic_failure:"subscribe_session_topic_failure",session_approve_publish_failure:"session_approve_publish_failure",session_settle_publish_failure:"session_settle_publish_failure",session_approve_namespace_validation_failure:"session_approve_namespace_validation_failure",proposal_not_found:"proposal_not_found"},Yn={authenticated_session_approve_started:"authenticated_session_approve_started",create_authenticated_session_topic:"create_authenticated_session_topic",cacaos_verified:"cacaos_verified",store_authenticated_session:"store_authenticated_session",subscribing_authenticated_session_topic:"subscribing_authenticated_session_topic",subscribe_authenticated_session_topic_success:"subscribe_authenticated_session_topic_success",publishing_authenticated_session_approve:"publishing_authenticated_session_approve"},kc={no_internet_connection:"no_internet_connection",invalid_cacao:"invalid_cacao",subscribe_authenticated_session_topic_failure:"subscribe_authenticated_session_topic_failure",authenticated_session_approve_publish_failure:"authenticated_session_approve_publish_failure",authenticated_session_pending_request_not_found:"authenticated_session_pending_request_not_found"},jq=.1,xq="event-client",Cq=86400,_q="https://pulse.walletconnect.org/batch";function Oq(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),i=0;i<t.length;i++)t[i]=255;for(var s=0;s<r.length;s++){var n=r.charAt(s),o=n.charCodeAt(0);if(t[o]!==255)throw new TypeError(n+" is ambiguous");t[o]=s}var a=r.length,u=r.charAt(0),c=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function h(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var m=0,E=0,A=0,D=g.length;A!==D&&g[A]===0;)A++,m++;for(var O=(D-A)*l+1>>>0,C=new Uint8Array(O);A!==D;){for(var _=g[A],S=0,L=O-1;(_!==0||S<E)&&L!==-1;L--,S++)_+=256*C[L]>>>0,C[L]=_%a>>>0,_=_/a>>>0;if(_!==0)throw new Error("Non-zero carry");E=S,A++}for(var k=O-E;k!==O&&C[k]===0;)k++;for(var z=u.repeat(m);k<O;++k)z+=r.charAt(C[k]);return z}function f(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var m=0;if(g[m]!==" "){for(var E=0,A=0;g[m]===u;)E++,m++;for(var D=(g.length-m)*c+1>>>0,O=new Uint8Array(D);g[m];){var C=t[g.charCodeAt(m)];if(C===255)return;for(var _=0,S=D-1;(C!==0||_<A)&&S!==-1;S--,_++)C+=a*O[S]>>>0,O[S]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");A=_,m++}if(g[m]!==" "){for(var L=D-A;L!==D&&O[L]===0;)L++;for(var k=new Uint8Array(E+(D-L)),z=E;L!==D;)k[z++]=O[L++];return k}}}function w(g){var m=f(g);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:f,decode:w}}var zq=Oq,Lq=zq;const c2=r=>{if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")},Pq=r=>new TextEncoder().encode(r),kq=r=>new TextDecoder().decode(r);class Uq{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class Rq{constructor(e,t,i){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return u2(this,e)}}class $q{constructor(e){this.decoders=e}or(e){return u2(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const u2=(r,e)=>new $q({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}});class Fq{constructor(e,t,i,s){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=s,this.encoder=new Uq(e,t,i),this.decoder=new Rq(e,t,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const gd=({name:r,prefix:e,encode:t,decode:i})=>new Fq(r,e,t,i),al=({prefix:r,name:e,alphabet:t})=>{const{encode:i,decode:s}=Lq(t,e);return gd({prefix:r,name:e,encode:i,decode:n=>c2(s(n))})},Bq=(r,e,t,i)=>{const s={};for(let l=0;l<e.length;++l)s[e[l]]=l;let n=r.length;for(;r[n-1]==="=";)--n;const o=new Uint8Array(n*t/8|0);let a=0,u=0,c=0;for(let l=0;l<n;++l){const h=s[r[l]];if(h===void 0)throw new SyntaxError(`Non-${i} character`);u=u<<t|h,a+=t,a>=8&&(a-=8,o[c++]=255&u>>a)}if(a>=t||255&u<<8-a)throw new SyntaxError("Unexpected end of data");return o},Yq=(r,e,t)=>{const i=e[e.length-1]==="=",s=(1<<t)-1;let n="",o=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],o+=8;o>t;)o-=t,n+=e[s&a>>o];if(o&&(n+=e[s&a<<t-o]),i)for(;n.length*t&7;)n+="=";return n},Fr=({name:r,prefix:e,bitsPerChar:t,alphabet:i})=>gd({prefix:e,name:r,encode(s){return Yq(s,i,t)},decode(s){return Bq(s,i,t,r)}}),Qq=gd({prefix:"\0",name:"identity",encode:r=>kq(r),decode:r=>Pq(r)});var Vq=Object.freeze({__proto__:null,identity:Qq});const Wq=Fr({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var qq=Object.freeze({__proto__:null,base2:Wq});const Zq=Fr({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Hq=Object.freeze({__proto__:null,base8:Zq});const Gq=al({prefix:"9",name:"base10",alphabet:"0123456789"});var Kq=Object.freeze({__proto__:null,base10:Gq});const Jq=Fr({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Xq=Fr({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var eZ=Object.freeze({__proto__:null,base16:Jq,base16upper:Xq});const tZ=Fr({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),rZ=Fr({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),iZ=Fr({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),sZ=Fr({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),nZ=Fr({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),oZ=Fr({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),aZ=Fr({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),cZ=Fr({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),uZ=Fr({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var lZ=Object.freeze({__proto__:null,base32:tZ,base32upper:rZ,base32pad:iZ,base32padupper:sZ,base32hex:nZ,base32hexupper:oZ,base32hexpad:aZ,base32hexpadupper:cZ,base32z:uZ});const hZ=al({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),dZ=al({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var fZ=Object.freeze({__proto__:null,base36:hZ,base36upper:dZ});const pZ=al({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),gZ=al({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var yZ=Object.freeze({__proto__:null,base58btc:pZ,base58flickr:gZ});const wZ=Fr({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),mZ=Fr({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),bZ=Fr({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),MZ=Fr({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var NZ=Object.freeze({__proto__:null,base64:wZ,base64pad:mZ,base64url:bZ,base64urlpad:MZ});const l2=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),vZ=l2.reduce((r,e,t)=>(r[t]=e,r),[]),IZ=l2.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function DZ(r){return r.reduce((e,t)=>(e+=vZ[t],e),"")}function AZ(r){const e=[];for(const t of r){const i=IZ[t.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}const EZ=gd({prefix:"🚀",name:"base256emoji",encode:DZ,decode:AZ});var TZ=Object.freeze({__proto__:null,base256emoji:EZ}),SZ=h2,TM=128,jZ=-128,xZ=Math.pow(2,31);function h2(r,e,t){e=e||[],t=t||0;for(var i=t;r>=xZ;)e[t++]=r&255|TM,r/=128;for(;r&jZ;)e[t++]=r&255|TM,r>>>=7;return e[t]=r|0,h2.bytes=t-i+1,e}var CZ=lg,_Z=128,SM=127;function lg(r,i){var t=0,i=i||0,s=0,n=i,o,a=r.length;do{if(n>=a)throw lg.bytes=0,new RangeError("Could not decode varint");o=r[n++],t+=s<28?(o&SM)<<s:(o&SM)*Math.pow(2,s),s+=7}while(o>=_Z);return lg.bytes=n-i,t}var OZ=Math.pow(2,7),zZ=Math.pow(2,14),LZ=Math.pow(2,21),PZ=Math.pow(2,28),kZ=Math.pow(2,35),UZ=Math.pow(2,42),RZ=Math.pow(2,49),$Z=Math.pow(2,56),FZ=Math.pow(2,63),BZ=function(r){return r<OZ?1:r<zZ?2:r<LZ?3:r<PZ?4:r<kZ?5:r<UZ?6:r<RZ?7:r<$Z?8:r<FZ?9:10},YZ={encode:SZ,decode:CZ,encodingLength:BZ},d2=YZ;const jM=(r,e,t=0)=>(d2.encode(r,e,t),e),xM=r=>d2.encodingLength(r),hg=(r,e)=>{const t=e.byteLength,i=xM(r),s=i+xM(t),n=new Uint8Array(s+t);return jM(r,n,0),jM(t,n,i),n.set(e,s),new QZ(r,t,e,n)};class QZ{constructor(e,t,i,s){this.code=e,this.size=t,this.digest=i,this.bytes=s}}const f2=({name:r,code:e,encode:t})=>new VZ(r,e,t);class VZ{constructor(e,t,i){this.name=e,this.code=t,this.encode=i}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?hg(this.code,t):t.then(i=>hg(this.code,i))}else throw Error("Unknown type, must be binary type")}}const p2=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),WZ=f2({name:"sha2-256",code:18,encode:p2("SHA-256")}),qZ=f2({name:"sha2-512",code:19,encode:p2("SHA-512")});var ZZ=Object.freeze({__proto__:null,sha256:WZ,sha512:qZ});const g2=0,HZ="identity",y2=c2,GZ=r=>hg(g2,y2(r)),KZ={code:g2,name:HZ,encode:y2,digest:GZ};var JZ=Object.freeze({__proto__:null,identity:KZ});new TextEncoder,new TextDecoder;const CM={...Vq,...qq,...Hq,...Kq,...eZ,...lZ,...fZ,...yZ,...NZ,...TZ};({...ZZ,...JZ});function XZ(r=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(r):new Uint8Array(r)}function w2(r,e,t,i){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:i}}}const _M=w2("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Kf=w2("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);const e=XZ(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),eH={utf8:_M,"utf-8":_M,hex:CM.base16,latin1:Kf,ascii:Kf,binary:Kf,...CM};function tH(r,e="utf8"){const t=eH[e];if(!t)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r,"utf8"):t.decoder.decode(`${t.prefix}${r}`)}var rH=Object.defineProperty,iH=(r,e,t)=>e in r?rH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ms=(r,e,t)=>iH(r,typeof e!="symbol"?e+"":e,t);class sH{constructor(e,t){this.core=e,this.logger=t,Ms(this,"keychain",new Map),Ms(this,"name",sq),Ms(this,"version",nq),Ms(this,"initialized",!1),Ms(this,"storagePrefix",Ss),Ms(this,"init",async()=>{if(!this.initialized){const i=await this.getKeyChain();typeof i<"u"&&(this.keychain=i),this.initialized=!0}}),Ms(this,"has",i=>(this.isInitialized(),this.keychain.has(i))),Ms(this,"set",async(i,s)=>{this.isInitialized(),this.keychain.set(i,s),await this.persist()}),Ms(this,"get",i=>{this.isInitialized();const s=this.keychain.get(i);if(typeof s>"u"){const{message:n}=ee("NO_MATCHING_KEY",`${this.name}: ${i}`);throw new Error(n)}return s}),Ms(this,"del",async i=>{this.isInitialized(),this.keychain.delete(i),await this.persist()}),this.core=e,this.logger=qe(t,this.name)}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,Xp(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?eg(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}}var nH=Object.defineProperty,oH=(r,e,t)=>e in r?nH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,zr=(r,e,t)=>oH(r,typeof e!="symbol"?e+"":e,t);class aH{constructor(e,t,i){this.core=e,this.logger=t,zr(this,"name",rq),zr(this,"keychain"),zr(this,"randomSessionIdentifier",ag()),zr(this,"initialized",!1),zr(this,"init",async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)}),zr(this,"hasKeys",s=>(this.isInitialized(),this.keychain.has(s))),zr(this,"getClientId",async()=>{this.isInitialized();const s=await this.getClientSeed(),n=Eh(s);return Ug(n.publicKey)}),zr(this,"generateKeyPair",()=>{this.isInitialized();const s=sW();return this.setPrivateKey(s.publicKey,s.privateKey)}),zr(this,"signJWT",async s=>{this.isInitialized();const n=await this.getClientSeed(),o=Eh(n),a=this.randomSessionIdentifier;return await qN(a,s,iq,o)}),zr(this,"generateSharedKey",(s,n,o)=>{this.isInitialized();const a=this.getPrivateKey(s),u=nW(a,n);return this.setSymKey(u,o)}),zr(this,"setSymKey",async(s,n)=>{this.isInitialized();const o=n||gh(s);return await this.keychain.set(o,s),o}),zr(this,"deleteKeyPair",async s=>{this.isInitialized(),await this.keychain.del(s)}),zr(this,"deleteSymKey",async s=>{this.isInitialized(),await this.keychain.del(s)}),zr(this,"encode",async(s,n,o)=>{this.isInitialized();const a=e2(o),u=Es(n);if(gM(a))return cW(u,o?.encoding);if(pM(a)){const f=a.senderPublicKey,w=a.receiverPublicKey;s=await this.generateSharedKey(f,w)}const c=this.getSymKey(s),{type:l,senderPublicKey:h}=a;return oW({type:l,symKey:c,message:u,senderPublicKey:h,encoding:o?.encoding})}),zr(this,"decode",async(s,n,o)=>{this.isInitialized();const a=lW(n,o);if(gM(a)){const u=uW(n,o?.encoding);return Zs(u)}if(pM(a)){const u=a.receiverPublicKey,c=a.senderPublicKey;s=await this.generateSharedKey(u,c)}try{const u=this.getSymKey(s),c=aW({symKey:u,encoded:n,encoding:o?.encoding});return Zs(c)}catch(u){this.logger.error(`Failed to decode message from topic: '${s}', clientId: '${await this.getClientId()}'`),this.logger.error(u)}}),zr(this,"getPayloadType",(s,n=Nn)=>{const o=ku({encoded:s,encoding:n});return fo(o.type)}),zr(this,"getPayloadSenderPublicKey",(s,n=Nn)=>{const o=ku({encoded:s,encoding:n});return o.senderPublicKey?We(o.senderPublicKey,qr):void 0}),this.core=e,this.logger=qe(t,this.name),this.keychain=i||new sH(this.core,this.logger)}get context(){return dt(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(DM)}catch{e=ag(),await this.keychain.set(DM,e)}return tH(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}}var cH=Object.defineProperty,uH=Object.defineProperties,lH=Object.getOwnPropertyDescriptors,OM=Object.getOwnPropertySymbols,hH=Object.prototype.hasOwnProperty,dH=Object.prototype.propertyIsEnumerable,dg=(r,e,t)=>e in r?cH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,fH=(r,e)=>{for(var t in e||(e={}))hH.call(e,t)&&dg(r,t,e[t]);if(OM)for(var t of OM(e))dH.call(e,t)&&dg(r,t,e[t]);return r},pH=(r,e)=>uH(r,lH(e)),wi=(r,e,t)=>dg(r,typeof e!="symbol"?e+"":e,t);class gH extends MB{constructor(e,t){super(e,t),this.logger=e,this.core=t,wi(this,"messages",new Map),wi(this,"messagesWithoutClientAck",new Map),wi(this,"name",oq),wi(this,"version",aq),wi(this,"initialized",!1),wi(this,"storagePrefix",Ss),wi(this,"init",async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const i=await this.getRelayerMessages();typeof i<"u"&&(this.messages=i);const s=await this.getRelayerMessagesWithoutClientAck();typeof s<"u"&&(this.messagesWithoutClientAck=s),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(i){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(i)}finally{this.initialized=!0}}}),wi(this,"set",async(i,s,n)=>{this.isInitialized();const o=Ds(s);let a=this.messages.get(i);if(typeof a>"u"&&(a={}),typeof a[o]<"u")return o;if(a[o]=s,this.messages.set(i,a),n===yh.inbound){const u=this.messagesWithoutClientAck.get(i)||{};this.messagesWithoutClientAck.set(i,pH(fH({},u),{[o]:s}))}return await this.persist(),o}),wi(this,"get",i=>{this.isInitialized();let s=this.messages.get(i);return typeof s>"u"&&(s={}),s}),wi(this,"getWithoutAck",i=>{this.isInitialized();const s={};for(const n of i){const o=this.messagesWithoutClientAck.get(n)||{};s[n]=Object.values(o)}return s}),wi(this,"has",(i,s)=>{this.isInitialized();const n=this.get(i),o=Ds(s);return typeof n[o]<"u"}),wi(this,"ack",async(i,s)=>{this.isInitialized();const n=this.messagesWithoutClientAck.get(i);if(typeof n>"u")return;const o=Ds(s);delete n[o],Object.keys(n).length===0?this.messagesWithoutClientAck.delete(i):this.messagesWithoutClientAck.set(i,n),await this.persist()}),wi(this,"del",async i=>{this.isInitialized(),this.messages.delete(i),this.messagesWithoutClientAck.delete(i),await this.persist()}),this.logger=qe(e,this.name),this.core=t}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get storageKeyWithoutClientAck(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name+"_withoutClientAck"}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,Xp(e))}async setRelayerMessagesWithoutClientAck(e){await this.core.storage.setItem(this.storageKeyWithoutClientAck,Xp(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?eg(e):void 0}async getRelayerMessagesWithoutClientAck(){const e=await this.core.storage.getItem(this.storageKeyWithoutClientAck);return typeof e<"u"?eg(e):void 0}async persist(){await this.setRelayerMessages(this.messages),await this.setRelayerMessagesWithoutClientAck(this.messagesWithoutClientAck)}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}}var yH=Object.defineProperty,wH=Object.defineProperties,mH=Object.getOwnPropertyDescriptors,zM=Object.getOwnPropertySymbols,bH=Object.prototype.hasOwnProperty,MH=Object.prototype.propertyIsEnumerable,fg=(r,e,t)=>e in r?yH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Kl=(r,e)=>{for(var t in e||(e={}))bH.call(e,t)&&fg(r,t,e[t]);if(zM)for(var t of zM(e))MH.call(e,t)&&fg(r,t,e[t]);return r},Jf=(r,e)=>wH(r,mH(e)),rs=(r,e,t)=>fg(r,typeof e!="symbol"?e+"":e,t);class NH extends NB{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,rs(this,"events",new wr.EventEmitter),rs(this,"name",cq),rs(this,"queue",new Map),rs(this,"publishTimeout",Y.toMiliseconds(Y.ONE_MINUTE)),rs(this,"initialPublishTimeout",Y.toMiliseconds(Y.ONE_SECOND*15)),rs(this,"needsTransportRestart",!1),rs(this,"publish",async(i,s,n)=>{var o;this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:i,message:s,opts:n}});const a=n?.ttl||AM,u=kh(n),c=n?.prompt||!1,l=n?.tag||0,h=n?.id||Ii().toString(),f={topic:i,message:s,opts:{ttl:a,relay:u,prompt:c,tag:l,id:h,attestation:n?.attestation,tvf:n?.tvf}},w=`Failed to publish payload, please try again. id:${h} tag:${l}`;try{const g=new Promise(async m=>{const E=({id:D})=>{f.opts.id===D&&(this.removeRequestFromQueue(D),this.relayer.events.removeListener(Er.publish,E),m(f))};this.relayer.events.on(Er.publish,E);const A=Mn(new Promise((D,O)=>{this.rpcPublish({topic:i,message:s,ttl:a,prompt:c,tag:l,id:h,attestation:n?.attestation,tvf:n?.tvf}).then(D).catch(C=>{this.logger.warn(C,C?.message),O(C)})}),this.initialPublishTimeout,`Failed initial publish, retrying.... id:${h} tag:${l}`);try{await A,this.events.removeListener(Er.publish,E)}catch(D){this.queue.set(h,Jf(Kl({},f),{attempt:1})),this.logger.warn(D,D?.message)}});this.logger.trace({type:"method",method:"publish",params:{id:h,topic:i,message:s,opts:n}}),await Mn(g,this.publishTimeout,w)}catch(g){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(g),(o=n?.internal)!=null&&o.throwOnFailedPublish)throw g}finally{this.queue.delete(h)}}),rs(this,"on",(i,s)=>{this.events.on(i,s)}),rs(this,"once",(i,s)=>{this.events.once(i,s)}),rs(this,"off",(i,s)=>{this.events.off(i,s)}),rs(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),this.relayer=e,this.logger=qe(t,this.name),this.registerEventListeners()}get context(){return dt(this.logger)}async rpcPublish(e){var t,i,s,n;const{topic:o,message:a,ttl:u=AM,prompt:c,tag:l,id:h,attestation:f,tvf:w}=e,g={method:Wc(kh().protocol).publish,params:Kl({topic:o,message:a,ttl:u,prompt:c,tag:l,attestation:f},w),id:h};kr((t=g.params)==null?void 0:t.prompt)&&((i=g.params)==null||delete i.prompt),kr((s=g.params)==null?void 0:s.tag)&&((n=g.params)==null||delete n.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:g});const m=await this.relayer.request(g);return this.relayer.events.emit(Er.publish,e),this.logger.debug("Successfully Published Payload"),m}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach(async(e,t)=>{const i=e.attempt+1;this.queue.set(t,Jf(Kl({},e),{attempt:i}));const{topic:s,message:n,opts:o,attestation:a}=e;this.logger.warn({},`Publisher: queue->publishing: ${e.opts.id}, tag: ${e.opts.tag}, attempt: ${i}`),await this.rpcPublish(Jf(Kl({},e),{topic:s,message:n,ttl:o.ttl,prompt:o.prompt,tag:o.tag,id:o.id,attestation:a,tvf:o.tvf})),this.logger.warn({},`Publisher: queue->published: ${e.opts.id}`)})}registerEventListeners(){this.relayer.core.heartbeat.on(as.pulse,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(Er.connection_stalled);return}this.checkQueue()}),this.relayer.on(Er.message_ack,e=>{this.removeRequestFromQueue(e.id.toString())})}}var vH=Object.defineProperty,IH=(r,e,t)=>e in r?vH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ko=(r,e,t)=>IH(r,typeof e!="symbol"?e+"":e,t);class DH{constructor(){Ko(this,"map",new Map),Ko(this,"set",(e,t)=>{const i=this.get(e);this.exists(e,t)||this.map.set(e,[...i,t])}),Ko(this,"get",e=>this.map.get(e)||[]),Ko(this,"exists",(e,t)=>this.get(e).includes(t)),Ko(this,"delete",(e,t)=>{if(typeof t>"u"){this.map.delete(e);return}if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,t))return;const s=i.filter(n=>n!==t);if(!s.length){this.map.delete(e);return}this.map.set(e,s)}),Ko(this,"clear",()=>{this.map.clear()})}get topics(){return Array.from(this.map.keys())}}var AH=Object.defineProperty,EH=Object.defineProperties,TH=Object.getOwnPropertyDescriptors,LM=Object.getOwnPropertySymbols,SH=Object.prototype.hasOwnProperty,jH=Object.prototype.propertyIsEnumerable,pg=(r,e,t)=>e in r?AH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Uc=(r,e)=>{for(var t in e||(e={}))SH.call(e,t)&&pg(r,t,e[t]);if(LM)for(var t of LM(e))jH.call(e,t)&&pg(r,t,e[t]);return r},Xf=(r,e)=>EH(r,TH(e)),ut=(r,e,t)=>pg(r,typeof e!="symbol"?e+"":e,t);class xH extends DB{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,ut(this,"subscriptions",new Map),ut(this,"topicMap",new DH),ut(this,"events",new wr.EventEmitter),ut(this,"name",gq),ut(this,"version",yq),ut(this,"pending",new Map),ut(this,"cached",[]),ut(this,"initialized",!1),ut(this,"storagePrefix",Ss),ut(this,"subscribeTimeout",Y.toMiliseconds(Y.ONE_MINUTE)),ut(this,"initialSubscribeTimeout",Y.toMiliseconds(Y.ONE_SECOND*15)),ut(this,"clientId"),ut(this,"batchSubscribeTopicsLimit",500),ut(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),await this.restore()),this.initialized=!0}),ut(this,"subscribe",async(i,s)=>{this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:s}});try{const n=kh(s),o={topic:i,relay:n,transportType:s?.transportType};this.pending.set(i,o);const a=await this.rpcSubscribe(i,n,s);return typeof a=="string"&&(this.onSubscribe(a,o),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:s}})),a}catch(n){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(n),n}}),ut(this,"unsubscribe",async(i,s)=>{this.isInitialized(),typeof s?.id<"u"?await this.unsubscribeById(i,s.id,s):await this.unsubscribeByTopic(i,s)}),ut(this,"isSubscribed",i=>new Promise(s=>{s(this.topicMap.topics.includes(i))})),ut(this,"isKnownTopic",i=>new Promise(s=>{s(this.topicMap.topics.includes(i)||this.pending.has(i)||this.cached.some(n=>n.topic===i))})),ut(this,"on",(i,s)=>{this.events.on(i,s)}),ut(this,"once",(i,s)=>{this.events.once(i,s)}),ut(this,"off",(i,s)=>{this.events.off(i,s)}),ut(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),ut(this,"start",async()=>{await this.onConnect()}),ut(this,"stop",async()=>{await this.onDisconnect()}),ut(this,"restart",async()=>{await this.restore(),await this.onRestart()}),ut(this,"checkPending",async()=>{if(this.pending.size===0&&(!this.initialized||!this.relayer.connected))return;const i=[];this.pending.forEach(s=>{i.push(s)}),await this.batchSubscribe(i)}),ut(this,"registerEventListeners",()=>{this.relayer.core.heartbeat.on(as.pulse,async()=>{await this.checkPending()}),this.events.on(bi.created,async i=>{const s=bi.created;this.logger.info(`Emitting ${s}`),this.logger.debug({type:"event",event:s,data:i}),await this.persist()}),this.events.on(bi.deleted,async i=>{const s=bi.deleted;this.logger.info(`Emitting ${s}`),this.logger.debug({type:"event",event:s,data:i}),await this.persist()})}),this.relayer=e,this.logger=qe(t,this.name),this.clientId=""}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+"//"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}get hasAnyTopics(){return this.topicMap.topics.length>0||this.pending.size>0||this.cached.length>0||this.subscriptions.size>0}hasSubscription(e,t){let i=!1;try{i=this.getSubscription(e).topic===t}catch{}return i}reset(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){const i=this.topicMap.get(e);await Promise.all(i.map(async s=>await this.unsubscribeById(e,s,t)))}async unsubscribeById(e,t,i){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:i}});try{const s=kh(i);await this.restartToComplete({topic:e,id:t,relay:s}),await this.rpcUnsubscribe(e,t,s);const n=nt("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,n),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:i}})}catch(s){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(s),s}}async rpcSubscribe(e,t,i){var s;(!i||i?.transportType===Dt.relay)&&await this.restartToComplete({topic:e,id:e,relay:t});const n={method:Wc(t.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n});const o=(s=i?.internal)==null?void 0:s.throwOnFailedPublish;try{const a=await this.getSubscriptionId(e);if(i?.transportType===Dt.link_mode)return setTimeout(()=>{(this.relayer.connected||this.relayer.connecting)&&this.relayer.request(n).catch(l=>this.logger.warn(l))},Y.toMiliseconds(Y.ONE_SECOND)),a;const u=new Promise(async l=>{const h=f=>{f.topic===e&&(this.events.removeListener(bi.created,h),l(f.id))};this.events.on(bi.created,h);try{const f=await Mn(new Promise((w,g)=>{this.relayer.request(n).catch(m=>{this.logger.warn(m,m?.message),g(m)}).then(w)}),this.initialSubscribeTimeout,`Subscribing to ${e} failed, please try again`);this.events.removeListener(bi.created,h),l(f)}catch{}}),c=await Mn(u,this.subscribeTimeout,`Subscribing to ${e} failed, please try again`);if(!c&&o)throw new Error(`Subscribing to ${e} failed, please try again`);return c?a:null}catch(a){if(this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(Er.connection_stalled),o)throw a}return null}async rpcBatchSubscribe(e){if(!e.length)return;const t=e[0].relay,i={method:Wc(t.protocol).batchSubscribe,params:{topics:e.map(s=>s.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});try{await await Mn(new Promise(s=>{this.relayer.request(i).catch(n=>this.logger.warn(n)).then(s)}),this.subscribeTimeout,"rpcBatchSubscribe failed, please try again")}catch{this.relayer.events.emit(Er.connection_stalled)}}async rpcBatchFetchMessages(e){if(!e.length)return;const t=e[0].relay,i={method:Wc(t.protocol).batchFetchMessages,params:{topics:e.map(n=>n.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});let s;try{s=await await Mn(new Promise((n,o)=>{this.relayer.request(i).catch(a=>{this.logger.warn(a),o(a)}).then(n)}),this.subscribeTimeout,"rpcBatchFetchMessages failed, please try again")}catch{this.relayer.events.emit(Er.connection_stalled)}return s}rpcUnsubscribe(e,t,i){const s={method:Wc(i.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:s}),this.relayer.request(s)}onSubscribe(e,t){this.setSubscription(e,Xf(Uc({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach(t=>{this.setSubscription(t.id,Uc({},t)),this.pending.delete(t.topic)})}async onUnsubscribe(e,t,i){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,i),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,t){this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:t}),this.addSubscription(e,t)}addSubscription(e,t){this.subscriptions.set(e,Uc({},t)),this.topicMap.set(t.topic,e),this.events.emit(bi.created,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const t=this.subscriptions.get(e);if(!t){const{message:i}=ee("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(bi.deleted,Xf(Uc({},i),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(bi.sync)}async onRestart(){if(this.cached.length){const e=[...this.cached],t=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let i=0;i<t;i++){const s=e.splice(0,this.batchSubscribeTopicsLimit);await this.batchSubscribe(s)}}this.events.emit(bi.resubscribed)}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:t}=ee("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:"method",method:"restore",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async batchSubscribe(e){e.length&&(await this.rpcBatchSubscribe(e),this.onBatchSubscribe(await Promise.all(e.map(async t=>Xf(Uc({},t),{id:await this.getSubscriptionId(t.topic)})))))}async batchFetchMessages(e){if(!e.length)return;this.logger.trace(`Fetching batch messages for ${e.length} subscriptions`);const t=await this.rpcBatchFetchMessages(e);t&&t.messages&&(await wQ(Y.toMiliseconds(Y.ONE_SECOND)),await this.relayer.handleBatchMessageEvents(t.messages))}async onConnect(){await this.restart(),this.reset()}onDisconnect(){this.onDisable()}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}async restartToComplete(e){!this.relayer.connected&&!this.relayer.connecting&&(this.cached.push(e),await this.relayer.transportOpen())}async getClientId(){return this.clientId||(this.clientId=await this.relayer.core.crypto.getClientId()),this.clientId}async getSubscriptionId(e){return Ds(e+await this.getClientId())}}var CH=Object.defineProperty,PM=Object.getOwnPropertySymbols,_H=Object.prototype.hasOwnProperty,OH=Object.prototype.propertyIsEnumerable,gg=(r,e,t)=>e in r?CH(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,kM=(r,e)=>{for(var t in e||(e={}))_H.call(e,t)&&gg(r,t,e[t]);if(PM)for(var t of PM(e))OH.call(e,t)&&gg(r,t,e[t]);return r},Le=(r,e,t)=>gg(r,typeof e!="symbol"?e+"":e,t);class zH extends vB{constructor(e){super(e),Le(this,"protocol","wc"),Le(this,"version",2),Le(this,"core"),Le(this,"logger"),Le(this,"events",new wr.EventEmitter),Le(this,"provider"),Le(this,"messages"),Le(this,"subscriber"),Le(this,"publisher"),Le(this,"name",lq),Le(this,"transportExplicitlyClosed",!1),Le(this,"initialized",!1),Le(this,"connectionAttemptInProgress",!1),Le(this,"relayUrl"),Le(this,"projectId"),Le(this,"packageName"),Le(this,"bundleId"),Le(this,"hasExperiencedNetworkDisruption",!1),Le(this,"pingTimeout"),Le(this,"heartBeatTimeout",Y.toMiliseconds(Y.THIRTY_SECONDS+Y.FIVE_SECONDS)),Le(this,"reconnectTimeout"),Le(this,"connectPromise"),Le(this,"reconnectInProgress",!1),Le(this,"requestsInFlight",[]),Le(this,"connectTimeout",Y.toMiliseconds(Y.ONE_SECOND*15)),Le(this,"request",async t=>{var i,s;this.logger.debug("Publishing Request Payload");const n=t.id||Ii().toString();await this.toEstablishConnection();try{this.logger.trace({id:n,method:t.method,topic:(i=t.params)==null?void 0:i.topic},"relayer.request - publishing...");const o=`${n}:${((s=t.params)==null?void 0:s.tag)||""}`;this.requestsInFlight.push(o);const a=await this.provider.request(t);return this.requestsInFlight=this.requestsInFlight.filter(u=>u!==o),a}catch(o){throw this.logger.debug(`Failed to Publish Request: ${n}`),o}}),Le(this,"resetPingTimeout",()=>{Lh()&&(clearTimeout(this.pingTimeout),this.pingTimeout=setTimeout(()=>{var t,i,s,n;try{this.logger.debug({},"pingTimeout: Connection stalled, terminating..."),(n=(s=(i=(t=this.provider)==null?void 0:t.connection)==null?void 0:i.socket)==null?void 0:s.terminate)==null||n.call(s)}catch(o){this.logger.warn(o,o?.message)}},this.heartBeatTimeout))}),Le(this,"onPayloadHandler",t=>{this.onProviderPayload(t),this.resetPingTimeout()}),Le(this,"onConnectHandler",()=>{this.logger.warn({},"Relayer connected 🛜"),this.startPingTimeout(),this.events.emit(Er.connect)}),Le(this,"onDisconnectHandler",()=>{this.logger.warn({},"Relayer disconnected 🛑"),this.requestsInFlight=[],this.onProviderDisconnect()}),Le(this,"onProviderErrorHandler",t=>{this.logger.fatal(`Fatal socket error: ${t.message}`),this.events.emit(Er.error,t),this.logger.fatal("Fatal socket error received, closing transport"),this.transportClose()}),Le(this,"registerProviderListeners",()=>{this.provider.on(Li.payload,this.onPayloadHandler),this.provider.on(Li.connect,this.onConnectHandler),this.provider.on(Li.disconnect,this.onDisconnectHandler),this.provider.on(Li.error,this.onProviderErrorHandler)}),this.core=e.core,this.logger=typeof e.logger<"u"&&typeof e.logger!="string"?qe(e.logger,this.name):jn(Hs({level:e.logger||uq})),this.messages=new gH(this.logger,e.core),this.subscriber=new xH(this,this.logger),this.publisher=new NH(this,this.logger),this.relayUrl=e?.relayUrl||o2,this.projectId=e.projectId,rQ()?this.packageName=Fb():iQ()&&(this.bundleId=Fb()),this.provider={}}async init(){if(this.logger.trace("Initialized"),this.registerEventListeners(),await Promise.all([this.messages.init(),this.subscriber.init()]),this.initialized=!0,this.subscriber.hasAnyTopics)try{await this.transportOpen()}catch(e){this.logger.warn(e,e?.message)}}get context(){return dt(this.logger)}get connected(){var e,t,i;return((i=(t=(e=this.provider)==null?void 0:e.connection)==null?void 0:t.socket)==null?void 0:i.readyState)===1||!1}get connecting(){var e,t,i;return((i=(t=(e=this.provider)==null?void 0:e.connection)==null?void 0:t.socket)==null?void 0:i.readyState)===0||this.connectPromise!==void 0||!1}async publish(e,t,i){this.isInitialized(),await this.publisher.publish(e,t,i),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now(),transportType:Dt.relay},yh.outbound)}async subscribe(e,t){var i,s,n;this.isInitialized(),(!(t!=null&&t.transportType)||t?.transportType==="relay")&&await this.toEstablishConnection();const o=typeof((i=t?.internal)==null?void 0:i.throwOnFailedPublish)>"u"?!0:(s=t?.internal)==null?void 0:s.throwOnFailedPublish;let a=((n=this.subscriber.topicMap.get(e))==null?void 0:n[0])||"",u;const c=l=>{l.topic===e&&(this.subscriber.off(bi.created,c),u())};return await Promise.all([new Promise(l=>{u=l,this.subscriber.on(bi.created,c)}),new Promise(async(l,h)=>{a=await this.subscriber.subscribe(e,kM({internal:{throwOnFailedPublish:o}},t)).catch(f=>{o&&h(f)})||a,l()})]),a}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async transportDisconnect(){this.provider.disconnect&&(this.hasExperiencedNetworkDisruption||this.connected)?await Mn(this.provider.disconnect(),2e3,"provider.disconnect()").catch(()=>this.onProviderDisconnect()):this.onProviderDisconnect()}async transportClose(){this.transportExplicitlyClosed=!0,await this.transportDisconnect()}async transportOpen(e){if(!this.subscriber.hasAnyTopics){this.logger.warn("Starting WS connection skipped because the client has no topics to work with.");return}if(this.connectPromise?(this.logger.debug({},"Waiting for existing connection attempt to resolve..."),await this.connectPromise,this.logger.debug({},"Existing connection attempt resolved")):(this.connectPromise=new Promise(async(t,i)=>{await this.connect(e).then(t).catch(i).finally(()=>{this.connectPromise=void 0})}),await this.connectPromise),!this.connected)throw new Error(`Couldn't establish socket connection to the relay server: ${this.relayUrl}`)}async restartTransport(e){this.logger.debug({},"Restarting transport..."),!this.connectionAttemptInProgress&&(this.relayUrl=e||this.relayUrl,await this.confirmOnlineStateOrThrow(),await this.transportClose(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!await IM())throw new Error("No internet connection detected. Please restart your network and try again.")}async handleBatchMessageEvents(e){if(e?.length===0){this.logger.trace("Batch message events is empty. Ignoring...");return}const t=e.sort((i,s)=>i.publishedAt-s.publishedAt);this.logger.debug(`Batch of ${t.length} message events sorted`);for(const i of t)try{await this.onMessageEvent(i)}catch(s){this.logger.warn(s,"Error while processing batch message event: "+s?.message)}this.logger.trace(`Batch of ${t.length} message events processed`)}async onLinkMessageEvent(e,t){const{topic:i}=e;if(!t.sessionExists){const s=fr(Y.FIVE_MINUTES),n={topic:i,expiry:s,relay:{protocol:"irn"},active:!1};await this.core.pairing.pairings.set(i,n)}this.events.emit(Er.message,e),await this.recordMessageEvent(e,yh.inbound)}async connect(e){await this.confirmOnlineStateOrThrow(),e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportDisconnect()),this.connectionAttemptInProgress=!0,this.transportExplicitlyClosed=!1;let t=1;for(;t<6;){try{if(this.transportExplicitlyClosed)break;this.logger.debug({},`Connecting to ${this.relayUrl}, attempt: ${t}...`),await this.createProvider(),await new Promise(async(i,s)=>{const n=()=>{s(new Error("Connection interrupted while trying to subscribe"))};this.provider.once(Li.disconnect,n),await Mn(new Promise((o,a)=>{this.provider.connect().then(o).catch(a)}),this.connectTimeout,`Socket stalled when trying to connect to ${this.relayUrl}`).catch(o=>{s(o)}).finally(()=>{this.provider.off(Li.disconnect,n),clearTimeout(this.reconnectTimeout)}),await new Promise(async(o,a)=>{const u=()=>{a(new Error("Connection interrupted while trying to subscribe"))};this.provider.once(Li.disconnect,u),await this.subscriber.start().then(o).catch(a).finally(()=>{this.provider.off(Li.disconnect,u)})}),this.hasExperiencedNetworkDisruption=!1,i()})}catch(i){await this.subscriber.stop();const s=i;this.logger.warn({},s.message),this.hasExperiencedNetworkDisruption=!0}finally{this.connectionAttemptInProgress=!1}if(this.connected){this.logger.debug({},`Connected to ${this.relayUrl} successfully on attempt: ${t}`);break}await new Promise(i=>setTimeout(i,Y.toMiliseconds(t*1))),t++}}startPingTimeout(){var e,t,i,s,n;if(Lh())try{(t=(e=this.provider)==null?void 0:e.connection)!=null&&t.socket&&((n=(s=(i=this.provider)==null?void 0:i.connection)==null?void 0:s.socket)==null||n.on("ping",()=>{this.resetPingTimeout()})),this.resetPingTimeout()}catch(o){this.logger.warn(o,o?.message)}}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new Ot(new uI(aQ({sdkVersion:ug,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId,packageName:this.packageName}))),this.registerProviderListeners()}async recordMessageEvent(e,t){const{topic:i,message:s}=e;await this.messages.set(i,s,t)}async shouldIgnoreMessageEvent(e){const{topic:t,message:i}=e;if(!i||i.length===0)return this.logger.warn(`Ignoring invalid/empty message: ${i}`),!0;if(!await this.subscriber.isKnownTopic(t))return this.logger.warn(`Ignoring message for unknown topic ${t}`),!0;const s=this.messages.has(t,i);return s&&this.logger.warn(`Ignoring duplicate message: ${i}`),s}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),qa(e)){if(!e.method.endsWith(hq))return;const t=e.params,{topic:i,message:s,publishedAt:n,attestation:o}=t.data,a={topic:i,message:s,publishedAt:n,transportType:Dt.relay,attestation:o};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(kM({type:"event",event:t.id},a)),this.events.emit(t.id,a),await this.acknowledgePayload(e),await this.onMessageEvent(a)}else mo(e)&&this.events.emit(Er.message_ack,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(await this.recordMessageEvent(e,yh.inbound),this.events.emit(Er.message,e))}async acknowledgePayload(e){const t=Cn(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(Li.payload,this.onPayloadHandler),this.provider.off(Li.connect,this.onConnectHandler),this.provider.off(Li.disconnect,this.onDisconnectHandler),this.provider.off(Li.error,this.onProviderErrorHandler),clearTimeout(this.pingTimeout)}async registerEventListeners(){let e=await IM();KW(async t=>{e!==t&&(e=t,t?await this.transportOpen().catch(i=>this.logger.error(i,i?.message)):(this.hasExperiencedNetworkDisruption=!0,await this.transportDisconnect(),this.transportExplicitlyClosed=!1))})}async onProviderDisconnect(){clearTimeout(this.pingTimeout),this.events.emit(Er.disconnect),this.connectionAttemptInProgress=!1,!this.reconnectInProgress&&(this.reconnectInProgress=!0,await this.subscriber.stop(),this.subscriber.hasAnyTopics&&(this.transportExplicitlyClosed||(this.reconnectTimeout=setTimeout(async()=>{await this.transportOpen().catch(e=>this.logger.error(e,e?.message)),this.reconnectTimeout=void 0,this.reconnectInProgress=!1},Y.toMiliseconds(dq)))))}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}async toEstablishConnection(){await this.confirmOnlineStateOrThrow(),!this.connected&&await this.connect()}}function LH(){}function UM(r){if(!r||typeof r!="object")return!1;const e=Object.getPrototypeOf(r);return e===null||e===Object.prototype||Object.getPrototypeOf(e)===null?Object.prototype.toString.call(r)==="[object Object]":!1}function RM(r){return Object.getOwnPropertySymbols(r).filter(e=>Object.prototype.propertyIsEnumerable.call(r,e))}function $M(r){return r==null?r===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(r)}const PH="[object RegExp]",kH="[object String]",UH="[object Number]",RH="[object Boolean]",FM="[object Arguments]",$H="[object Symbol]",FH="[object Date]",BH="[object Map]",YH="[object Set]",QH="[object Array]",VH="[object Function]",WH="[object ArrayBuffer]",ep="[object Object]",qH="[object Error]",ZH="[object DataView]",HH="[object Uint8Array]",GH="[object Uint8ClampedArray]",KH="[object Uint16Array]",JH="[object Uint32Array]",XH="[object BigUint64Array]",eG="[object Int8Array]",tG="[object Int16Array]",rG="[object Int32Array]",iG="[object BigInt64Array]",sG="[object Float32Array]",nG="[object Float64Array]";function oG(r,e){return r===e||Number.isNaN(r)&&Number.isNaN(e)}function aG(r,e,t){return Zc(r,e,void 0,void 0,void 0,void 0,t)}function Zc(r,e,t,i,s,n,o){const a=o(r,e,t,i,s,n);if(a!==void 0)return a;if(typeof r==typeof e)switch(typeof r){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return r===e;case"number":return r===e||Object.is(r,e);case"function":return r===e;case"object":return iu(r,e,n,o)}return iu(r,e,n,o)}function iu(r,e,t,i){if(Object.is(r,e))return!0;let s=$M(r),n=$M(e);if(s===FM&&(s=ep),n===FM&&(n=ep),s!==n)return!1;switch(s){case kH:return r.toString()===e.toString();case UH:{const u=r.valueOf(),c=e.valueOf();return oG(u,c)}case RH:case FH:case $H:return Object.is(r.valueOf(),e.valueOf());case PH:return r.source===e.source&&r.flags===e.flags;case VH:return r===e}t=t??new Map;const o=t.get(r),a=t.get(e);if(o!=null&&a!=null)return o===e;t.set(r,e),t.set(e,r);try{switch(s){case BH:{if(r.size!==e.size)return!1;for(const[u,c]of r.entries())if(!e.has(u)||!Zc(c,e.get(u),u,r,e,t,i))return!1;return!0}case YH:{if(r.size!==e.size)return!1;const u=Array.from(r.values()),c=Array.from(e.values());for(let l=0;l<u.length;l++){const h=u[l],f=c.findIndex(w=>Zc(h,w,void 0,r,e,t,i));if(f===-1)return!1;c.splice(f,1)}return!0}case QH:case HH:case GH:case KH:case JH:case XH:case eG:case tG:case rG:case iG:case sG:case nG:{if(typeof Buffer<"u"&&Buffer.isBuffer(r)!==Buffer.isBuffer(e)||r.length!==e.length)return!1;for(let u=0;u<r.length;u++)if(!Zc(r[u],e[u],u,r,e,t,i))return!1;return!0}case WH:return r.byteLength!==e.byteLength?!1:iu(new Uint8Array(r),new Uint8Array(e),t,i);case ZH:return r.byteLength!==e.byteLength||r.byteOffset!==e.byteOffset?!1:iu(new Uint8Array(r),new Uint8Array(e),t,i);case qH:return r.name===e.name&&r.message===e.message;case ep:{if(!(iu(r.constructor,e.constructor,t,i)||UM(r)&&UM(e)))return!1;const u=[...Object.keys(r),...RM(r)],c=[...Object.keys(e),...RM(e)];if(u.length!==c.length)return!1;for(let l=0;l<u.length;l++){const h=u[l],f=r[h];if(!Object.hasOwn(e,h))return!1;const w=e[h];if(!Zc(f,w,h,r,e,t,i))return!1}return!0}default:return!1}}finally{t.delete(r),t.delete(e)}}function cG(r,e){return aG(r,e,LH)}var uG=Object.defineProperty,BM=Object.getOwnPropertySymbols,lG=Object.prototype.hasOwnProperty,hG=Object.prototype.propertyIsEnumerable,yg=(r,e,t)=>e in r?uG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,YM=(r,e)=>{for(var t in e||(e={}))lG.call(e,t)&&yg(r,t,e[t]);if(BM)for(var t of BM(e))hG.call(e,t)&&yg(r,t,e[t]);return r},ii=(r,e,t)=>yg(r,typeof e!="symbol"?e+"":e,t);class Ao extends IB{constructor(e,t,i,s=Ss,n=void 0){super(e,t,i,s),this.core=e,this.logger=t,this.name=i,ii(this,"map",new Map),ii(this,"version",fq),ii(this,"cached",[]),ii(this,"initialized",!1),ii(this,"getKey"),ii(this,"storagePrefix",Ss),ii(this,"recentlyDeleted",[]),ii(this,"recentlyDeletedLimit",200),ii(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(o=>{this.getKey&&o!==null&&!kr(o)?this.map.set(this.getKey(o),o):SW(o)?this.map.set(o.id,o):jW(o)&&this.map.set(o.topic,o)}),this.cached=[],this.initialized=!0)}),ii(this,"set",async(o,a)=>{this.isInitialized(),this.map.has(o)?await this.update(o,a):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:o,value:a}),this.map.set(o,a),await this.persist())}),ii(this,"get",o=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:o}),this.getData(o))),ii(this,"getAll",o=>(this.isInitialized(),o?this.values.filter(a=>Object.keys(o).every(u=>cG(a[u],o[u]))):this.values)),ii(this,"update",async(o,a)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:o,update:a});const u=YM(YM({},this.getData(o)),a);this.map.set(o,u),await this.persist()}),ii(this,"delete",async(o,a)=>{this.isInitialized(),this.map.has(o)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:o,reason:a}),this.map.delete(o),this.addToRecentlyDeleted(o),await this.persist())}),this.logger=qe(t,this.name),this.storagePrefix=s,this.getKey=n}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}addToRecentlyDeleted(e){this.recentlyDeleted.push(e),this.recentlyDeleted.length>=this.recentlyDeletedLimit&&this.recentlyDeleted.splice(0,this.recentlyDeletedLimit/2)}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const t=this.map.get(e);if(!t){if(this.recentlyDeleted.includes(e)){const{message:s}=ee("MISSING_OR_INVALID",`Record was recently deleted - ${this.name}: ${e}`);throw this.logger.error(s),new Error(s)}const{message:i}=ee("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){const{message:t}=ee("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:"method",method:"restore",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}}var dG=Object.defineProperty,fG=(r,e,t)=>e in r?dG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ee=(r,e,t)=>fG(r,typeof e!="symbol"?e+"":e,t);class pG{constructor(e,t){this.core=e,this.logger=t,Ee(this,"name",wq),Ee(this,"version",mq),Ee(this,"events",new Fa),Ee(this,"pairings"),Ee(this,"initialized",!1),Ee(this,"storagePrefix",Ss),Ee(this,"ignoredPayloadTypes",[qs]),Ee(this,"registeredMethods",[]),Ee(this,"init",async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))}),Ee(this,"register",({methods:i})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...i])]}),Ee(this,"create",async i=>{this.isInitialized();const s=ag(),n=await this.core.crypto.setSymKey(s),o=fr(Y.FIVE_MINUTES),a={protocol:n2},u={topic:n,expiry:o,relay:a,active:!1,methods:i?.methods},c=wM({protocol:this.core.protocol,version:this.core.version,topic:n,symKey:s,relay:a,expiryTimestamp:o,methods:i?.methods});return this.events.emit(Gn.create,u),this.core.expirer.set(n,o),await this.pairings.set(n,u),await this.core.relayer.subscribe(n,{transportType:i?.transportType}),{topic:n,uri:c}}),Ee(this,"pair",async i=>{this.isInitialized();const s=this.core.eventClient.createEvent({properties:{topic:i?.uri,trace:[Is.pairing_started]}});this.isValidPair(i,s);const{topic:n,symKey:o,relay:a,expiryTimestamp:u,methods:c}=yM(i.uri);s.props.properties.topic=n,s.addTrace(Is.pairing_uri_validation_success),s.addTrace(Is.pairing_uri_not_expired);let l;if(this.pairings.keys.includes(n)){if(l=this.pairings.get(n),s.addTrace(Is.existing_pairing),l.active)throw s.setError(Ys.active_pairing_already_exists),new Error(`Pairing already exists: ${n}. Please try again with a new connection URI.`);s.addTrace(Is.pairing_not_expired)}const h=u||fr(Y.FIVE_MINUTES),f={topic:n,relay:a,expiry:h,active:!1,methods:c};this.core.expirer.set(n,h),await this.pairings.set(n,f),s.addTrace(Is.store_new_pairing),i.activatePairing&&await this.activate({topic:n}),this.events.emit(Gn.create,f),s.addTrace(Is.emit_inactive_pairing),this.core.crypto.keychain.has(n)||await this.core.crypto.setSymKey(o,n),s.addTrace(Is.subscribing_pairing_topic);try{await this.core.relayer.confirmOnlineStateOrThrow()}catch{s.setError(Ys.no_internet_connection)}try{await this.core.relayer.subscribe(n,{relay:a})}catch(w){throw s.setError(Ys.subscribe_pairing_topic_failure),w}return s.addTrace(Is.subscribe_pairing_topic_success),f}),Ee(this,"activate",async({topic:i})=>{this.isInitialized();const s=fr(Y.FIVE_MINUTES);this.core.expirer.set(i,s),await this.pairings.update(i,{active:!0,expiry:s})}),Ee(this,"ping",async i=>{this.isInitialized(),await this.isValidPing(i),this.logger.warn("ping() is deprecated and will be removed in the next major release.");const{topic:s}=i;if(this.pairings.keys.includes(s)){const n=await this.sendRequest(s,"wc_pairingPing",{}),{done:o,resolve:a,reject:u}=qn();this.events.once(Ve("pairing_ping",n),({error:c})=>{c?u(c):a()}),await o()}}),Ee(this,"updateExpiry",async({topic:i,expiry:s})=>{this.isInitialized(),await this.pairings.update(i,{expiry:s})}),Ee(this,"updateMetadata",async({topic:i,metadata:s})=>{this.isInitialized(),await this.pairings.update(i,{peerMetadata:s})}),Ee(this,"getPairings",()=>(this.isInitialized(),this.pairings.values)),Ee(this,"disconnect",async i=>{this.isInitialized(),await this.isValidDisconnect(i);const{topic:s}=i;this.pairings.keys.includes(s)&&(await this.sendRequest(s,"wc_pairingDelete",nt("USER_DISCONNECTED")),await this.deletePairing(s))}),Ee(this,"formatUriFromPairing",i=>{this.isInitialized();const{topic:s,relay:n,expiry:o,methods:a}=i,u=this.core.crypto.keychain.get(s);return wM({protocol:this.core.protocol,version:this.core.version,topic:s,symKey:u,relay:n,expiryTimestamp:o,methods:a})}),Ee(this,"sendRequest",async(i,s,n)=>{const o=Kr(s,n),a=await this.core.crypto.encode(i,o),u=Pc[s].req;return this.core.history.set(i,o),this.core.relayer.publish(i,a,u),o.id}),Ee(this,"sendResult",async(i,s,n)=>{const o=Cn(i,n),a=await this.core.crypto.encode(s,o),u=(await this.core.history.get(s,i)).request.method,c=Pc[u].res;await this.core.relayer.publish(s,a,c),await this.core.history.resolve(o)}),Ee(this,"sendError",async(i,s,n)=>{const o=Wa(i,n),a=await this.core.crypto.encode(s,o),u=(await this.core.history.get(s,i)).request.method,c=Pc[u]?Pc[u].res:Pc.unregistered_method.res;await this.core.relayer.publish(s,a,c),await this.core.history.resolve(o)}),Ee(this,"deletePairing",async(i,s)=>{await this.core.relayer.unsubscribe(i),await Promise.all([this.pairings.delete(i,nt("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(i),s?Promise.resolve():this.core.expirer.del(i)])}),Ee(this,"cleanup",async()=>{const i=this.pairings.getAll().filter(s=>gn(s.expiry));await Promise.all(i.map(s=>this.deletePairing(s.topic)))}),Ee(this,"onRelayEventRequest",async i=>{const{topic:s,payload:n}=i;switch(n.method){case"wc_pairingPing":return await this.onPairingPingRequest(s,n);case"wc_pairingDelete":return await this.onPairingDeleteRequest(s,n);default:return await this.onUnknownRpcMethodRequest(s,n)}}),Ee(this,"onRelayEventResponse",async i=>{const{topic:s,payload:n}=i,o=(await this.core.history.get(s,n.id)).request.method;return o==="wc_pairingPing"?this.onPairingPingResponse(s,n):this.onUnknownRpcMethodResponse(o)}),Ee(this,"onPairingPingRequest",async(i,s)=>{const{id:n}=s;try{this.isValidPing({topic:i}),await this.sendResult(n,i,!0),this.events.emit(Gn.ping,{id:n,topic:i})}catch(o){await this.sendError(n,i,o),this.logger.error(o)}}),Ee(this,"onPairingPingResponse",(i,s)=>{const{id:n}=s;setTimeout(()=>{yr(s)?this.events.emit(Ve("pairing_ping",n),{}):rr(s)&&this.events.emit(Ve("pairing_ping",n),{error:s.error})},500)}),Ee(this,"onPairingDeleteRequest",async(i,s)=>{const{id:n}=s;try{this.isValidDisconnect({topic:i}),await this.deletePairing(i),this.events.emit(Gn.delete,{id:n,topic:i})}catch(o){await this.sendError(n,i,o),this.logger.error(o)}}),Ee(this,"onUnknownRpcMethodRequest",async(i,s)=>{const{id:n,method:o}=s;try{if(this.registeredMethods.includes(o))return;const a=nt("WC_METHOD_UNSUPPORTED",o);await this.sendError(n,i,a),this.logger.error(a)}catch(a){await this.sendError(n,i,a),this.logger.error(a)}}),Ee(this,"onUnknownRpcMethodResponse",i=>{this.registeredMethods.includes(i)||this.logger.error(nt("WC_METHOD_UNSUPPORTED",i))}),Ee(this,"isValidPair",(i,s)=>{var n;if(!ai(i)){const{message:a}=ee("MISSING_OR_INVALID",`pair() params: ${i}`);throw s.setError(Ys.malformed_pairing_uri),new Error(a)}if(!TW(i.uri)){const{message:a}=ee("MISSING_OR_INVALID",`pair() uri: ${i.uri}`);throw s.setError(Ys.malformed_pairing_uri),new Error(a)}const o=yM(i?.uri);if(!((n=o?.relay)!=null&&n.protocol)){const{message:a}=ee("MISSING_OR_INVALID","pair() uri#relay-protocol");throw s.setError(Ys.malformed_pairing_uri),new Error(a)}if(!(o!=null&&o.symKey)){const{message:a}=ee("MISSING_OR_INVALID","pair() uri#symKey");throw s.setError(Ys.malformed_pairing_uri),new Error(a)}if(o!=null&&o.expiryTimestamp&&Y.toMiliseconds(o?.expiryTimestamp)<Date.now()){s.setError(Ys.pairing_expired);const{message:a}=ee("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw new Error(a)}}),Ee(this,"isValidPing",async i=>{if(!ai(i)){const{message:n}=ee("MISSING_OR_INVALID",`ping() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)}),Ee(this,"isValidDisconnect",async i=>{if(!ai(i)){const{message:n}=ee("MISSING_OR_INVALID",`disconnect() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)}),Ee(this,"isValidPairingTopic",async i=>{if(!ur(i,!1)){const{message:s}=ee("MISSING_OR_INVALID",`pairing topic should be a string: ${i}`);throw new Error(s)}if(!this.pairings.keys.includes(i)){const{message:s}=ee("NO_MATCHING_KEY",`pairing topic doesn't exist: ${i}`);throw new Error(s)}if(gn(this.pairings.get(i).expiry)){await this.deletePairing(i);const{message:s}=ee("EXPIRED",`pairing topic: ${i}`);throw new Error(s)}}),this.core=e,this.logger=qe(t,this.name),this.pairings=new Ao(this.core,this.logger,this.name,this.storagePrefix)}get context(){return dt(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(Er.message,async e=>{const{topic:t,message:i,transportType:s}=e;if(this.pairings.keys.includes(t)&&s!==Dt.link_mode&&!this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(i)))try{const n=await this.core.crypto.decode(t,i);qa(n)?(this.core.history.set(t,n),await this.onRelayEventRequest({topic:t,payload:n})):mo(n)&&(await this.core.history.resolve(n),await this.onRelayEventResponse({topic:t,payload:n}),this.core.history.delete(t,n.id)),await this.core.relayer.messages.ack(t,i)}catch(n){this.logger.error(n)}})}registerExpirerEvents(){this.core.expirer.on(Ri.expired,async e=>{const{topic:t}=x4(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit(Gn.expire,{topic:t}))})}}var gG=Object.defineProperty,yG=(r,e,t)=>e in r?gG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Lr=(r,e,t)=>yG(r,typeof e!="symbol"?e+"":e,t);class wG extends bB{constructor(e,t){super(e,t),this.core=e,this.logger=t,Lr(this,"records",new Map),Lr(this,"events",new wr.EventEmitter),Lr(this,"name",bq),Lr(this,"version",Mq),Lr(this,"cached",[]),Lr(this,"initialized",!1),Lr(this,"storagePrefix",Ss),Lr(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.records.set(i.id,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)}),Lr(this,"set",(i,s,n)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:i,request:s,chainId:n}),this.records.has(s.id))return;const o={id:s.id,topic:i,request:{method:s.method,params:s.params||null},chainId:n,expiry:fr(Y.THIRTY_DAYS)};this.records.set(o.id,o),this.persist(),this.events.emit(es.created,o)}),Lr(this,"resolve",async i=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:i}),!this.records.has(i.id))return;const s=await this.getRecord(i.id);typeof s.response>"u"&&(s.response=rr(i)?{error:i.error}:{result:i.result},this.records.set(s.id,s),this.persist(),this.events.emit(es.updated,s))}),Lr(this,"get",async(i,s)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:i,id:s}),await this.getRecord(s))),Lr(this,"delete",(i,s)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:s}),this.values.forEach(n=>{if(n.topic===i){if(typeof s<"u"&&n.id!==s)return;this.records.delete(n.id),this.events.emit(es.deleted,n)}}),this.persist()}),Lr(this,"exists",async(i,s)=>(this.isInitialized(),this.records.has(s)?(await this.getRecord(s)).topic===i:!1)),Lr(this,"on",(i,s)=>{this.events.on(i,s)}),Lr(this,"once",(i,s)=>{this.events.once(i,s)}),Lr(this,"off",(i,s)=>{this.events.off(i,s)}),Lr(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),this.logger=qe(t,this.name)}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach(t=>{if(typeof t.response<"u")return;const i={topic:t.topic,request:Kr(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(i)}),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const t=this.records.get(e);if(!t){const{message:i}=ee("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(es.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:t}=ee("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(es.created,e=>{const t=es.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})}),this.events.on(es.updated,e=>{const t=es.updated;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})}),this.events.on(es.deleted,e=>{const t=es.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})}),this.core.heartbeat.on(as.pulse,()=>{this.cleanup()})}cleanup(){try{this.isInitialized();let e=!1;this.records.forEach(t=>{Y.toMiliseconds(t.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${t.id}`),this.records.delete(t.id),this.events.emit(es.deleted,t,!1),e=!0)}),e&&this.persist()}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}}var mG=Object.defineProperty,bG=(r,e,t)=>e in r?mG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Vr=(r,e,t)=>bG(r,typeof e!="symbol"?e+"":e,t);class MG extends AB{constructor(e,t){super(e,t),this.core=e,this.logger=t,Vr(this,"expirations",new Map),Vr(this,"events",new wr.EventEmitter),Vr(this,"name",Nq),Vr(this,"version",vq),Vr(this,"cached",[]),Vr(this,"initialized",!1),Vr(this,"storagePrefix",Ss),Vr(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.expirations.set(i.target,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)}),Vr(this,"has",i=>{try{const s=this.formatTarget(i);return typeof this.getExpiration(s)<"u"}catch{return!1}}),Vr(this,"set",(i,s)=>{this.isInitialized();const n=this.formatTarget(i),o={target:n,expiry:s};this.expirations.set(n,o),this.checkExpiry(n,o),this.events.emit(Ri.created,{target:n,expiration:o})}),Vr(this,"get",i=>{this.isInitialized();const s=this.formatTarget(i);return this.getExpiration(s)}),Vr(this,"del",i=>{if(this.isInitialized(),this.has(i)){const s=this.formatTarget(i),n=this.getExpiration(s);this.expirations.delete(s),this.events.emit(Ri.deleted,{target:s,expiration:n})}}),Vr(this,"on",(i,s)=>{this.events.on(i,s)}),Vr(this,"once",(i,s)=>{this.events.once(i,s)}),Vr(this,"off",(i,s)=>{this.events.off(i,s)}),Vr(this,"removeListener",(i,s)=>{this.events.removeListener(i,s)}),this.logger=qe(t,this.name)}get context(){return dt(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if(typeof e=="string")return cQ(e);if(typeof e=="number")return uQ(e);const{message:t}=ee("UNKNOWN_TYPE",`Target type: ${typeof e}`);throw new Error(t)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(Ri.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:t}=ee("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:"method",method:"restore",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const t=this.expirations.get(e);if(!t){const{message:i}=ee("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.warn(i),new Error(i)}return t}checkExpiry(e,t){const{expiry:i}=t;Y.toMiliseconds(i)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(Ri.expired,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(as.pulse,()=>this.checkExpirations()),this.events.on(Ri.created,e=>{const t=Ri.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(Ri.expired,e=>{const t=Ri.expired;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(Ri.deleted,e=>{const t=Ri.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}}var NG=Object.defineProperty,vG=(r,e,t)=>e in r?NG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,cr=(r,e,t)=>vG(r,typeof e!="symbol"?e+"":e,t);class IG extends EB{constructor(e,t,i){super(e,t,i),this.core=e,this.logger=t,this.store=i,cr(this,"name",Iq),cr(this,"abortController"),cr(this,"isDevEnv"),cr(this,"verifyUrlV3",Aq),cr(this,"storagePrefix",Ss),cr(this,"version",s2),cr(this,"publicKey"),cr(this,"fetchPromise"),cr(this,"init",async()=>{var s;this.isDevEnv||(this.publicKey=await this.store.getItem(this.storeKey),this.publicKey&&Y.toMiliseconds((s=this.publicKey)==null?void 0:s.expiresAt)<Date.now()&&(this.logger.debug("verify v2 public key expired"),await this.removePublicKey()))}),cr(this,"register",async s=>{if(!rl()||this.isDevEnv)return;const n=window.location.origin,{id:o,decryptedId:a}=s,u=`${this.verifyUrlV3}/attestation?projectId=${this.core.projectId}&origin=${n}&id=${o}&decryptedId=${a}`;try{const c=li.getDocument(),l=this.startAbortTimer(Y.ONE_SECOND*5),h=await new Promise((f,w)=>{const g=()=>{window.removeEventListener("message",E),c.body.removeChild(m),w("attestation aborted")};this.abortController.signal.addEventListener("abort",g);const m=c.createElement("iframe");m.src=u,m.style.display="none",m.addEventListener("error",g,{signal:this.abortController.signal});const E=A=>{if(A.data&&typeof A.data=="string")try{const D=JSON.parse(A.data);if(D.type==="verify_attestation"){if(Sa(D.attestation).payload.id!==o)return;clearInterval(l),c.body.removeChild(m),this.abortController.signal.removeEventListener("abort",g),window.removeEventListener("message",E),f(D.attestation===null?"":D.attestation)}}catch(D){this.logger.warn(D)}};c.body.appendChild(m),window.addEventListener("message",E,{signal:this.abortController.signal})});return this.logger.debug("jwt attestation",h),h}catch(c){this.logger.warn(c)}return""}),cr(this,"resolve",async s=>{if(this.isDevEnv)return"";const{attestationId:n,hash:o,encryptedId:a}=s;if(n===""){this.logger.debug("resolve: attestationId is empty, skipping");return}if(n){if(Sa(n).payload.id!==a)return;const c=await this.isValidJwtAttestation(n);if(c){if(!c.isVerified){this.logger.warn("resolve: jwt attestation: origin url not verified");return}return c}}if(!o)return;const u=this.getVerifyUrl(s?.verifyUrl);return this.fetchAttestation(o,u)}),cr(this,"fetchAttestation",async(s,n)=>{this.logger.debug(`resolving attestation: ${s} from url: ${n}`);const o=this.startAbortTimer(Y.ONE_SECOND*5),a=await fetch(`${n}/attestation/${s}?v2Supported=true`,{signal:this.abortController.signal});return clearTimeout(o),a.status===200?await a.json():void 0}),cr(this,"getVerifyUrl",s=>{let n=s||ru;return Eq.includes(n)||(this.logger.info(`verify url: ${n}, not included in trusted list, assigning default: ${ru}`),n=ru),n}),cr(this,"fetchPublicKey",async()=>{try{this.logger.debug(`fetching public key from: ${this.verifyUrlV3}`);const s=this.startAbortTimer(Y.FIVE_SECONDS),n=await fetch(`${this.verifyUrlV3}/public-key`,{signal:this.abortController.signal});return clearTimeout(s),await n.json()}catch(s){this.logger.warn(s)}}),cr(this,"persistPublicKey",async s=>{this.logger.debug("persisting public key to local storage",s),await this.store.setItem(this.storeKey,s),this.publicKey=s}),cr(this,"removePublicKey",async()=>{this.logger.debug("removing verify v2 public key from storage"),await this.store.removeItem(this.storeKey),this.publicKey=void 0}),cr(this,"isValidJwtAttestation",async s=>{const n=await this.getPublicKey();try{if(n)return this.validateAttestation(s,n)}catch(a){this.logger.error(a),this.logger.warn("error validating attestation")}const o=await this.fetchAndPersistPublicKey();try{if(o)return this.validateAttestation(s,o)}catch(a){this.logger.error(a),this.logger.warn("error validating attestation")}}),cr(this,"getPublicKey",async()=>this.publicKey?this.publicKey:await this.fetchAndPersistPublicKey()),cr(this,"fetchAndPersistPublicKey",async()=>{if(this.fetchPromise)return await this.fetchPromise,this.publicKey;this.fetchPromise=new Promise(async n=>{const o=await this.fetchPublicKey();o&&(await this.persistPublicKey(o),n(o))});const s=await this.fetchPromise;return this.fetchPromise=void 0,s}),cr(this,"validateAttestation",(s,n)=>{const o=pW(s,n.publicKey),a={hasExpired:Y.toMiliseconds(o.exp)<Date.now(),payload:o};if(a.hasExpired)throw this.logger.warn("resolve: jwt attestation expired"),new Error("JWT attestation expired");return{origin:a.payload.origin,isScam:a.payload.isScam,isVerified:a.payload.isVerified}}),this.logger=qe(t,this.name),this.abortController=new AbortController,this.isDevEnv=o0(),this.init()}get storeKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//verify:public:key"}get context(){return dt(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),Y.toMiliseconds(e))}}var DG=Object.defineProperty,AG=(r,e,t)=>e in r?DG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,QM=(r,e,t)=>AG(r,typeof e!="symbol"?e+"":e,t);class EG extends TB{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,QM(this,"context",Tq),QM(this,"registerDeviceToken",async i=>{const{clientId:s,token:n,notificationType:o,enableEncrypted:a=!1}=i,u=`${Sq}/${this.projectId}/clients`;await fetch(u,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:s,type:o,token:n,always_raw:a})})}),this.logger=qe(t,this.context)}}var TG=Object.defineProperty,VM=Object.getOwnPropertySymbols,SG=Object.prototype.hasOwnProperty,jG=Object.prototype.propertyIsEnumerable,wg=(r,e,t)=>e in r?TG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Rc=(r,e)=>{for(var t in e||(e={}))SG.call(e,t)&&wg(r,t,e[t]);if(VM)for(var t of VM(e))jG.call(e,t)&&wg(r,t,e[t]);return r},Nr=(r,e,t)=>wg(r,typeof e!="symbol"?e+"":e,t);class xG extends SB{constructor(e,t,i=!0){super(e,t,i),this.core=e,this.logger=t,Nr(this,"context",xq),Nr(this,"storagePrefix",Ss),Nr(this,"storageVersion",jq),Nr(this,"events",new Map),Nr(this,"shouldPersist",!1),Nr(this,"init",async()=>{if(!o0())try{const s={eventId:Yb(),timestamp:Date.now(),domain:this.getAppDomain(),props:{event:"INIT",type:"",properties:{client_id:await this.core.crypto.getClientId(),user_agent:S4(this.core.relayer.protocol,this.core.relayer.version,ug)}}};await this.sendEvent([s])}catch(s){this.logger.warn(s)}}),Nr(this,"createEvent",s=>{const{event:n="ERROR",type:o="",properties:{topic:a,trace:u}}=s,c=Yb(),l=this.core.projectId||"",h=Date.now(),f=Rc({eventId:c,timestamp:h,props:{event:n,type:o,properties:{topic:a,trace:u}},bundleId:l,domain:this.getAppDomain()},this.setMethods(c));return this.telemetryEnabled&&(this.events.set(c,f),this.shouldPersist=!0),f}),Nr(this,"getEvent",s=>{const{eventId:n,topic:o}=s;if(n)return this.events.get(n);const a=Array.from(this.events.values()).find(u=>u.props.properties.topic===o);if(a)return Rc(Rc({},a),this.setMethods(a.eventId))}),Nr(this,"deleteEvent",s=>{const{eventId:n}=s;this.events.delete(n),this.shouldPersist=!0}),Nr(this,"setEventListeners",()=>{this.core.heartbeat.on(as.pulse,async()=>{this.shouldPersist&&await this.persist(),this.events.forEach(s=>{Y.fromMiliseconds(Date.now())-Y.fromMiliseconds(s.timestamp)>Cq&&(this.events.delete(s.eventId),this.shouldPersist=!0)})})}),Nr(this,"setMethods",s=>({addTrace:n=>this.addTrace(s,n),setError:n=>this.setError(s,n)})),Nr(this,"addTrace",(s,n)=>{const o=this.events.get(s);o&&(o.props.properties.trace.push(n),this.events.set(s,o),this.shouldPersist=!0)}),Nr(this,"setError",(s,n)=>{const o=this.events.get(s);o&&(o.props.type=n,o.timestamp=Date.now(),this.events.set(s,o),this.shouldPersist=!0)}),Nr(this,"persist",async()=>{await this.core.storage.setItem(this.storageKey,Array.from(this.events.values())),this.shouldPersist=!1}),Nr(this,"restore",async()=>{try{const s=await this.core.storage.getItem(this.storageKey)||[];if(!s.length)return;s.forEach(n=>{this.events.set(n.eventId,Rc(Rc({},n),this.setMethods(n.eventId)))})}catch(s){this.logger.warn(s)}}),Nr(this,"submit",async()=>{if(!this.telemetryEnabled||this.events.size===0)return;const s=[];for(const[n,o]of this.events)o.props.type&&s.push(o);if(s.length!==0)try{if((await this.sendEvent(s)).ok)for(const n of s)this.events.delete(n.eventId),this.shouldPersist=!0}catch(n){this.logger.warn(n)}}),Nr(this,"sendEvent",async s=>{const n=this.getAppDomain()?"":"&sp=desktop";return await fetch(`${_q}?projectId=${this.core.projectId}&st=events_sdk&sv=js-${ug}${n}`,{method:"POST",body:JSON.stringify(s)})}),Nr(this,"getAppDomain",()=>T4().url),this.logger=qe(t,this.context),this.telemetryEnabled=i,i?this.restore().then(async()=>{await this.submit(),this.setEventListeners()}):this.persist()}get storageKey(){return this.storagePrefix+this.storageVersion+this.core.customStoragePrefix+"//"+this.context}}var CG=Object.defineProperty,WM=Object.getOwnPropertySymbols,_G=Object.prototype.hasOwnProperty,OG=Object.prototype.propertyIsEnumerable,mg=(r,e,t)=>e in r?CG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,qM=(r,e)=>{for(var t in e||(e={}))_G.call(e,t)&&mg(r,t,e[t]);if(WM)for(var t of WM(e))OG.call(e,t)&&mg(r,t,e[t]);return r},wt=(r,e,t)=>mg(r,typeof e!="symbol"?e+"":e,t);let zG=class m2 extends gB{constructor(e){var t;super(e),wt(this,"protocol",i2),wt(this,"version",s2),wt(this,"name",cg),wt(this,"relayUrl"),wt(this,"projectId"),wt(this,"customStoragePrefix"),wt(this,"events",new wr.EventEmitter),wt(this,"logger"),wt(this,"heartbeat"),wt(this,"relayer"),wt(this,"crypto"),wt(this,"storage"),wt(this,"history"),wt(this,"expirer"),wt(this,"pairing"),wt(this,"verify"),wt(this,"echoClient"),wt(this,"linkModeSupportedApps"),wt(this,"eventClient"),wt(this,"initialized",!1),wt(this,"logChunkController"),wt(this,"on",(o,a)=>this.events.on(o,a)),wt(this,"once",(o,a)=>this.events.once(o,a)),wt(this,"off",(o,a)=>this.events.off(o,a)),wt(this,"removeListener",(o,a)=>this.events.removeListener(o,a)),wt(this,"dispatchEnvelope",({topic:o,message:a,sessionExists:u})=>{if(!o||!a)return;const c={topic:o,message:a,publishedAt:Date.now(),transportType:Dt.link_mode};this.relayer.onLinkMessageEvent(c,{sessionExists:u})}),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||o2,this.customStoragePrefix=e!=null&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const i=Hs({level:typeof e?.logger=="string"&&e.logger?e.logger:eq.logger,name:cg}),{logger:s,chunkLoggerController:n}=xg({opts:i,maxSizeInBytes:e?.maxLogBlobSizeInBytes,loggerOverride:e?.logger});this.logChunkController=n,(t=this.logChunkController)!=null&&t.downloadLogsBlobInBrowser&&(window.downloadLogsBlobInBrowser=async()=>{var o,a;(o=this.logChunkController)!=null&&o.downloadLogsBlobInBrowser&&((a=this.logChunkController)==null||a.downloadLogsBlobInBrowser({clientId:await this.crypto.getClientId()}))}),this.logger=qe(s,this.name),this.heartbeat=new pN,this.crypto=new aH(this,this.logger,e?.keychain),this.history=new wG(this,this.logger),this.expirer=new MG(this,this.logger),this.storage=e!=null&&e.storage?e.storage:new wN(qM(qM({},tq),e?.storageOptions)),this.relayer=new zH({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new pG(this,this.logger),this.verify=new IG(this,this.logger,this.storage),this.echoClient=new EG(this.projectId||"",this.logger),this.linkModeSupportedApps=[],this.eventClient=new xG(this,this.logger,e?.telemetryEnabled)}static async init(e){const t=new m2(e);await t.initialize();const i=await t.crypto.getClientId();return await t.storage.setItem(pq,i),t}get context(){return dt(this.logger)}async start(){this.initialized||await this.initialize()}async getLogsBlob(){var e;return(e=this.logChunkController)==null?void 0:e.logsToBlob({clientId:await this.crypto.getClientId()})}async addLinkModeSupportedApp(e){this.linkModeSupportedApps.includes(e)||(this.linkModeSupportedApps.push(e),await this.storage.setItem(EM,this.linkModeSupportedApps))}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.linkModeSupportedApps=await this.storage.getItem(EM)||[],this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}};const LG=zG,b2="wc",M2=2,N2="client",g0=`${b2}@${M2}:${N2}:`,tp={name:N2,logger:"error"},ZM="WALLETCONNECT_DEEPLINK_CHOICE",PG="proposal",HM="Proposal expired",kG="session",Jo=Y.SEVEN_DAYS,UG="engine",vr={wc_sessionPropose:{req:{ttl:Y.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1101},reject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1120},autoReject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1121}},wc_sessionSettle:{req:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1104},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1106},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:Y.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:Y.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1112},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:Y.ONE_DAY,prompt:!1,tag:1114},res:{ttl:Y.ONE_DAY,prompt:!1,tag:1115}},wc_sessionAuthenticate:{req:{ttl:Y.ONE_HOUR,prompt:!0,tag:1116},res:{ttl:Y.ONE_HOUR,prompt:!1,tag:1117},reject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1118},autoReject:{ttl:Y.FIVE_MINUTES,prompt:!1,tag:1119}}},rp={min:Y.FIVE_MINUTES,max:Y.SEVEN_DAYS},Ns={idle:"IDLE",active:"ACTIVE"},GM={eth_sendTransaction:{key:""},eth_sendRawTransaction:{key:""},wallet_sendCalls:{key:""},solana_signTransaction:{key:"signature"},solana_signAllTransactions:{key:"transactions"},solana_signAndSendTransaction:{key:"signature"}},RG="request",$G=["wc_sessionPropose","wc_sessionRequest","wc_authRequest","wc_sessionAuthenticate"],FG="wc",BG="auth",YG="authKeys",QG="pairingTopics",VG="requests",yd=`${FG}@${1.5}:${BG}:`,wh=`${yd}:PUB_KEY`;var WG=Object.defineProperty,qG=Object.defineProperties,ZG=Object.getOwnPropertyDescriptors,KM=Object.getOwnPropertySymbols,HG=Object.prototype.hasOwnProperty,GG=Object.prototype.propertyIsEnumerable,bg=(r,e,t)=>e in r?WG(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,lt=(r,e)=>{for(var t in e||(e={}))HG.call(e,t)&&bg(r,t,e[t]);if(KM)for(var t of KM(e))GG.call(e,t)&&bg(r,t,e[t]);return r},Zr=(r,e)=>qG(r,ZG(e)),H=(r,e,t)=>bg(r,typeof e!="symbol"?e+"":e,t);class KG extends _B{constructor(e){super(e),H(this,"name",UG),H(this,"events",new Fa),H(this,"initialized",!1),H(this,"requestQueue",{state:Ns.idle,queue:[]}),H(this,"sessionRequestQueue",{state:Ns.idle,queue:[]}),H(this,"requestQueueDelay",Y.ONE_SECOND),H(this,"expectedPairingMethodMap",new Map),H(this,"recentlyDeletedMap",new Map),H(this,"recentlyDeletedLimit",200),H(this,"relayMessageCache",[]),H(this,"pendingSessions",new Map),H(this,"init",async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.registerPairingEvents(),await this.registerLinkModeListeners(),this.client.core.pairing.register({methods:Object.keys(vr)}),this.initialized=!0,setTimeout(async()=>{await this.processPendingMessageEvents(),this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()},Y.toMiliseconds(this.requestQueueDelay)))}),H(this,"connect",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();const i=Zr(lt({},t),{requiredNamespaces:t.requiredNamespaces||{},optionalNamespaces:t.optionalNamespaces||{}});await this.isValidConnect(i);const{pairingTopic:s,requiredNamespaces:n,optionalNamespaces:o,sessionProperties:a,scopedProperties:u,relays:c}=i;let l=s,h,f=!1;try{if(l){const S=this.client.core.pairing.pairings.get(l);this.client.logger.warn("connect() with existing pairing topic is deprecated and will be removed in the next major release."),f=S.active}}catch(S){throw this.client.logger.error(`connect() -> pairing.get(${l}) failed`),S}if(!l||!f){const{topic:S,uri:L}=await this.client.core.pairing.create();l=S,h=L}if(!l){const{message:S}=ee("NO_MATCHING_KEY",`connect() pairing topic: ${l}`);throw new Error(S)}const w=await this.client.core.crypto.generateKeyPair(),g=vr.wc_sessionPropose.req.ttl||Y.FIVE_MINUTES,m=fr(g),E=Zr(lt(lt({requiredNamespaces:n,optionalNamespaces:o,relays:c??[{protocol:n2}],proposer:{publicKey:w,metadata:this.client.metadata},expiryTimestamp:m,pairingTopic:l},a&&{sessionProperties:a}),u&&{scopedProperties:u}),{id:Dr()}),A=Ve("session_connect",E.id),{reject:D,resolve:O,done:C}=qn(g,HM),_=({id:S})=>{S===E.id&&(this.client.events.off("proposal_expire",_),this.pendingSessions.delete(E.id),this.events.emit(A,{error:{message:HM,code:0}}))};return this.client.events.on("proposal_expire",_),this.events.once(A,({error:S,session:L})=>{this.client.events.off("proposal_expire",_),S?D(S):L&&O(L)}),await this.sendRequest({topic:l,method:"wc_sessionPropose",params:E,throwOnFailedPublish:!0,clientRpcId:E.id}),await this.setProposal(E.id,E),{uri:h,approval:C}}),H(this,"pair",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{return await this.client.core.pairing.pair(t)}catch(i){throw this.client.logger.error("pair() failed"),i}}),H(this,"approve",async t=>{var i,s,n;const o=this.client.core.eventClient.createEvent({properties:{topic:(i=t?.id)==null?void 0:i.toString(),trace:[ts.session_approve_started]}});try{this.isInitialized(),await this.confirmOnlineStateOrThrow()}catch(z){throw o.setError(Bn.no_internet_connection),z}try{await this.isValidProposalId(t?.id)}catch(z){throw this.client.logger.error(`approve() -> proposal.get(${t?.id}) failed`),o.setError(Bn.proposal_not_found),z}try{await this.isValidApprove(t)}catch(z){throw this.client.logger.error("approve() -> isValidApprove() failed"),o.setError(Bn.session_approve_namespace_validation_failure),z}const{id:a,relayProtocol:u,namespaces:c,sessionProperties:l,scopedProperties:h,sessionConfig:f}=t,w=this.client.proposal.get(a);this.client.core.eventClient.deleteEvent({eventId:o.eventId});const{pairingTopic:g,proposer:m,requiredNamespaces:E,optionalNamespaces:A}=w;let D=(s=this.client.core.eventClient)==null?void 0:s.getEvent({topic:g});D||(D=(n=this.client.core.eventClient)==null?void 0:n.createEvent({type:ts.session_approve_started,properties:{topic:g,trace:[ts.session_approve_started,ts.session_namespaces_validation_success]}}));const O=await this.client.core.crypto.generateKeyPair(),C=m.publicKey,_=await this.client.core.crypto.generateSharedKey(O,C),S=lt(lt(lt({relay:{protocol:u??"irn"},namespaces:c,controller:{publicKey:O,metadata:this.client.metadata},expiry:fr(Jo)},l&&{sessionProperties:l}),h&&{scopedProperties:h}),f&&{sessionConfig:f}),L=Dt.relay;D.addTrace(ts.subscribing_session_topic);try{await this.client.core.relayer.subscribe(_,{transportType:L})}catch(z){throw D.setError(Bn.subscribe_session_topic_failure),z}D.addTrace(ts.subscribe_session_topic_success);const k=Zr(lt({},S),{topic:_,requiredNamespaces:E,optionalNamespaces:A,pairingTopic:g,acknowledged:!1,self:S.controller,peer:{publicKey:m.publicKey,metadata:m.metadata},controller:O,transportType:Dt.relay});await this.client.session.set(_,k),D.addTrace(ts.store_session);try{D.addTrace(ts.publishing_session_settle),await this.sendRequest({topic:_,method:"wc_sessionSettle",params:S,throwOnFailedPublish:!0}).catch(z=>{throw D?.setError(Bn.session_settle_publish_failure),z}),D.addTrace(ts.session_settle_publish_success),D.addTrace(ts.publishing_session_approve),await this.sendResult({id:a,topic:g,result:{relay:{protocol:u??"irn"},responderPublicKey:O},throwOnFailedPublish:!0}).catch(z=>{throw D?.setError(Bn.session_approve_publish_failure),z}),D.addTrace(ts.session_approve_publish_success)}catch(z){throw this.client.logger.error(z),this.client.session.delete(_,nt("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(_),z}return this.client.core.eventClient.deleteEvent({eventId:D.eventId}),await this.client.core.pairing.updateMetadata({topic:g,metadata:m.metadata}),await this.client.proposal.delete(a,nt("USER_DISCONNECTED")),await this.client.core.pairing.activate({topic:g}),await this.setExpiry(_,fr(Jo)),{topic:_,acknowledged:()=>Promise.resolve(this.client.session.get(_))}}),H(this,"reject",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidReject(t)}catch(o){throw this.client.logger.error("reject() -> isValidReject() failed"),o}const{id:i,reason:s}=t;let n;try{n=this.client.proposal.get(i).pairingTopic}catch(o){throw this.client.logger.error(`reject() -> proposal.get(${i}) failed`),o}n&&(await this.sendError({id:i,topic:n,error:s,rpcOpts:vr.wc_sessionPropose.reject}),await this.client.proposal.delete(i,nt("USER_DISCONNECTED")))}),H(this,"update",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidUpdate(t)}catch(h){throw this.client.logger.error("update() -> isValidUpdate() failed"),h}const{topic:i,namespaces:s}=t,{done:n,resolve:o,reject:a}=qn(),u=Dr(),c=Ii().toString(),l=this.client.session.get(i).namespaces;return this.events.once(Ve("session_update",u),({error:h})=>{h?a(h):o()}),await this.client.session.update(i,{namespaces:s}),await this.sendRequest({topic:i,method:"wc_sessionUpdate",params:{namespaces:s},throwOnFailedPublish:!0,clientRpcId:u,relayRpcId:c}).catch(h=>{this.client.logger.error(h),this.client.session.update(i,{namespaces:l}),a(h)}),{acknowledged:n}}),H(this,"extend",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidExtend(t)}catch(u){throw this.client.logger.error("extend() -> isValidExtend() failed"),u}const{topic:i}=t,s=Dr(),{done:n,resolve:o,reject:a}=qn();return this.events.once(Ve("session_extend",s),({error:u})=>{u?a(u):o()}),await this.setExpiry(i,fr(Jo)),this.sendRequest({topic:i,method:"wc_sessionExtend",params:{},clientRpcId:s,throwOnFailedPublish:!0}).catch(u=>{a(u)}),{acknowledged:n}}),H(this,"request",async t=>{this.isInitialized();try{await this.isValidRequest(t)}catch(A){throw this.client.logger.error("request() -> isValidRequest() failed"),A}const{chainId:i,request:s,topic:n,expiry:o=vr.wc_sessionRequest.req.ttl}=t,a=this.client.session.get(n);a?.transportType===Dt.relay&&await this.confirmOnlineStateOrThrow();const u=Dr(),c=Ii().toString(),{done:l,resolve:h,reject:f}=qn(o,"Request expired. Please try again.");this.events.once(Ve("session_request",u),({error:A,result:D})=>{A?f(A):h(D)});const w="wc_sessionRequest",g=this.getAppLinkIfEnabled(a.peer.metadata,a.transportType);if(g)return await this.sendRequest({clientRpcId:u,relayRpcId:c,topic:n,method:w,params:{request:Zr(lt({},s),{expiryTimestamp:fr(o)}),chainId:i},expiry:o,throwOnFailedPublish:!0,appLink:g}).catch(A=>f(A)),this.client.events.emit("session_request_sent",{topic:n,request:s,chainId:i,id:u}),await l();const m={request:Zr(lt({},s),{expiryTimestamp:fr(o)}),chainId:i},E=this.shouldSetTVF(w,m);return await Promise.all([new Promise(async A=>{await this.sendRequest(lt({clientRpcId:u,relayRpcId:c,topic:n,method:w,params:m,expiry:o,throwOnFailedPublish:!0},E&&{tvf:this.getTVFParams(u,m)})).catch(D=>f(D)),this.client.events.emit("session_request_sent",{topic:n,request:s,chainId:i,id:u}),A()}),new Promise(async A=>{var D;if(!((D=a.sessionConfig)!=null&&D.disableDeepLink)){const O=await fQ(this.client.core.storage,ZM);await lQ({id:u,topic:n,wcDeepLink:O})}A()}),l()]).then(A=>A[2])}),H(this,"respond",async t=>{this.isInitialized(),await this.isValidRespond(t);const{topic:i,response:s}=t,{id:n}=s,o=this.client.session.get(i);o.transportType===Dt.relay&&await this.confirmOnlineStateOrThrow();const a=this.getAppLinkIfEnabled(o.peer.metadata,o.transportType);yr(s)?await this.sendResult({id:n,topic:i,result:s.result,throwOnFailedPublish:!0,appLink:a}):rr(s)&&await this.sendError({id:n,topic:i,error:s.error,appLink:a}),this.cleanupAfterResponse(t)}),H(this,"ping",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidPing(t)}catch(s){throw this.client.logger.error("ping() -> isValidPing() failed"),s}const{topic:i}=t;if(this.client.session.keys.includes(i)){const s=Dr(),n=Ii().toString(),{done:o,resolve:a,reject:u}=qn();this.events.once(Ve("session_ping",s),({error:c})=>{c?u(c):a()}),await Promise.all([this.sendRequest({topic:i,method:"wc_sessionPing",params:{},throwOnFailedPublish:!0,clientRpcId:s,relayRpcId:n}),o()])}else this.client.core.pairing.pairings.keys.includes(i)&&(this.client.logger.warn("ping() on pairing topic is deprecated and will be removed in the next major release."),await this.client.core.pairing.ping({topic:i}))}),H(this,"emit",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidEmit(t);const{topic:i,event:s,chainId:n}=t,o=Ii().toString(),a=Dr();await this.sendRequest({topic:i,method:"wc_sessionEvent",params:{event:s,chainId:n},throwOnFailedPublish:!0,relayRpcId:o,clientRpcId:a})}),H(this,"disconnect",async t=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidDisconnect(t);const{topic:i}=t;if(this.client.session.keys.includes(i))await this.sendRequest({topic:i,method:"wc_sessionDelete",params:nt("USER_DISCONNECTED"),throwOnFailedPublish:!0}),await this.deleteSession({topic:i,emitEvent:!1});else if(this.client.core.pairing.pairings.keys.includes(i))await this.client.core.pairing.disconnect({topic:i});else{const{message:s}=ee("MISMATCHED_TOPIC",`Session or pairing topic not found: ${i}`);throw new Error(s)}}),H(this,"find",t=>(this.isInitialized(),this.client.session.getAll().filter(i=>AW(i,t)))),H(this,"getPendingSessionRequests",()=>this.client.pendingRequest.getAll()),H(this,"authenticate",async(t,i)=>{var s;this.isInitialized(),this.isValidAuthenticate(t);const n=i&&this.client.core.linkModeSupportedApps.includes(i)&&((s=this.client.metadata.redirect)==null?void 0:s.linkMode),o=n?Dt.link_mode:Dt.relay;o===Dt.relay&&await this.confirmOnlineStateOrThrow();const{chains:a,statement:u="",uri:c,domain:l,nonce:h,type:f,exp:w,nbf:g,methods:m=[],expiry:E}=t,A=[...t.resources||[]],{topic:D,uri:O}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"],transportType:o});this.client.logger.info({message:"Generated new pairing",pairing:{topic:D,uri:O}});const C=await this.client.core.crypto.generateKeyPair(),_=gh(C);if(await Promise.all([this.client.auth.authKeys.set(wh,{responseTopic:_,publicKey:C}),this.client.auth.pairingTopics.set(_,{topic:_,pairingTopic:D})]),await this.client.core.relayer.subscribe(_,{transportType:o}),this.client.logger.info(`sending request to new pairing topic: ${D}`),m.length>0){const{namespace:v}=Aa(a[0]);let p=sV(v,"request",m);ph(A)&&(p=oV(p,A.pop())),A.push(p)}const S=E&&E>vr.wc_sessionAuthenticate.req.ttl?E:vr.wc_sessionAuthenticate.req.ttl,L={authPayload:{type:f??"caip122",chains:a,statement:u,aud:c,domain:l,version:"1",nonce:h,iat:new Date().toISOString(),exp:w,nbf:g,resources:A},requester:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:fr(S)},k={eip155:{chains:a,methods:[...new Set(["personal_sign",...m])],events:["chainChanged","accountsChanged"]}},z={requiredNamespaces:{},optionalNamespaces:k,relays:[{protocol:"irn"}],pairingTopic:D,proposer:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:fr(vr.wc_sessionPropose.req.ttl),id:Dr()},{done:U,resolve:T,reject:d}=qn(S,"Request expired"),y=Dr(),N=Ve("session_connect",z.id),b=Ve("session_request",y),M=async({error:v,session:p})=>{this.events.off(b,I),v?d(v):p&&T({session:p})},I=async v=>{var p,x,F;if(await this.deletePendingAuthRequest(y,{message:"fulfilled",code:0}),v.error){const te=nt("WC_METHOD_UNSUPPORTED","wc_sessionAuthenticate");return v.error.code===te.code?void 0:(this.events.off(N,M),d(v.error.message))}await this.deleteProposal(z.id),this.events.off(N,M);const{cacaos:V,responder:Q}=v.result,W=[],K=[];for(const te of V){await Kb({cacao:te,projectId:this.client.core.projectId})||(this.client.logger.error(te,"Signature verification failed"),d(nt("SESSION_SETTLEMENT_FAILED","Signature verification failed")));const{p:le}=te,Mt=ph(le.resources),me=[tg(le.iss)],ve=Ph(le.iss);if(Mt){const Vt=Jb(Mt),je=Xb(Mt);W.push(...Vt),me.push(...je)}for(const Vt of me)K.push(`${Vt}:${ve}`)}const se=await this.client.core.crypto.generateSharedKey(C,Q.publicKey);let oe;W.length>0&&(oe={topic:se,acknowledged:!0,self:{publicKey:C,metadata:this.client.metadata},peer:Q,controller:Q.publicKey,expiry:fr(Jo),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:D,namespaces:mM([...new Set(W)],[...new Set(K)]),transportType:o},await this.client.core.relayer.subscribe(se,{transportType:o}),await this.client.session.set(se,oe),D&&await this.client.core.pairing.updateMetadata({topic:D,metadata:Q.metadata}),oe=this.client.session.get(se)),(p=this.client.metadata.redirect)!=null&&p.linkMode&&(x=Q.metadata.redirect)!=null&&x.linkMode&&(F=Q.metadata.redirect)!=null&&F.universal&&i&&(this.client.core.addLinkModeSupportedApp(Q.metadata.redirect.universal),this.client.session.update(se,{transportType:Dt.link_mode})),T({auths:V,session:oe})};this.events.once(N,M),this.events.once(b,I);let j;try{if(n){const v=Kr("wc_sessionAuthenticate",L,y);this.client.core.history.set(D,v);const p=await this.client.core.crypto.encode("",v,{type:ol,encoding:zc});j=Gl(i,D,p)}else await Promise.all([this.sendRequest({topic:D,method:"wc_sessionAuthenticate",params:L,expiry:t.expiry,throwOnFailedPublish:!0,clientRpcId:y}),this.sendRequest({topic:D,method:"wc_sessionPropose",params:z,expiry:vr.wc_sessionPropose.req.ttl,throwOnFailedPublish:!0,clientRpcId:z.id})])}catch(v){throw this.events.off(N,M),this.events.off(b,I),v}return await this.setProposal(z.id,z),await this.setAuthRequest(y,{request:Zr(lt({},L),{verifyContext:{}}),pairingTopic:D,transportType:o}),{uri:j??O,response:U}}),H(this,"approveSessionAuthenticate",async t=>{const{id:i,auths:s}=t,n=this.client.core.eventClient.createEvent({properties:{topic:i.toString(),trace:[Yn.authenticated_session_approve_started]}});try{this.isInitialized()}catch(E){throw n.setError(kc.no_internet_connection),E}const o=this.getPendingAuthRequest(i);if(!o)throw n.setError(kc.authenticated_session_pending_request_not_found),new Error(`Could not find pending auth request with id ${i}`);const a=o.transportType||Dt.relay;a===Dt.relay&&await this.confirmOnlineStateOrThrow();const u=o.requester.publicKey,c=await this.client.core.crypto.generateKeyPair(),l=gh(u),h={type:qs,receiverPublicKey:u,senderPublicKey:c},f=[],w=[];for(const E of s){if(!await Kb({cacao:E,projectId:this.client.core.projectId})){n.setError(kc.invalid_cacao);const _=nt("SESSION_SETTLEMENT_FAILED","Signature verification failed");throw await this.sendError({id:i,topic:l,error:_,encodeOpts:h}),new Error(_.message)}n.addTrace(Yn.cacaos_verified);const{p:A}=E,D=ph(A.resources),O=[tg(A.iss)],C=Ph(A.iss);if(D){const _=Jb(D),S=Xb(D);f.push(..._),O.push(...S)}for(const _ of O)w.push(`${_}:${C}`)}const g=await this.client.core.crypto.generateSharedKey(c,u);n.addTrace(Yn.create_authenticated_session_topic);let m;if(f?.length>0){m={topic:g,acknowledged:!0,self:{publicKey:c,metadata:this.client.metadata},peer:{publicKey:u,metadata:o.requester.metadata},controller:u,expiry:fr(Jo),authentication:s,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:o.pairingTopic,namespaces:mM([...new Set(f)],[...new Set(w)]),transportType:a},n.addTrace(Yn.subscribing_authenticated_session_topic);try{await this.client.core.relayer.subscribe(g,{transportType:a})}catch(E){throw n.setError(kc.subscribe_authenticated_session_topic_failure),E}n.addTrace(Yn.subscribe_authenticated_session_topic_success),await this.client.session.set(g,m),n.addTrace(Yn.store_authenticated_session),await this.client.core.pairing.updateMetadata({topic:o.pairingTopic,metadata:o.requester.metadata})}n.addTrace(Yn.publishing_authenticated_session_approve);try{await this.sendResult({topic:l,id:i,result:{cacaos:s,responder:{publicKey:c,metadata:this.client.metadata}},encodeOpts:h,throwOnFailedPublish:!0,appLink:this.getAppLinkIfEnabled(o.requester.metadata,a)})}catch(E){throw n.setError(kc.authenticated_session_approve_publish_failure),E}return await this.client.auth.requests.delete(i,{message:"fulfilled",code:0}),await this.client.core.pairing.activate({topic:o.pairingTopic}),this.client.core.eventClient.deleteEvent({eventId:n.eventId}),{session:m}}),H(this,"rejectSessionAuthenticate",async t=>{this.isInitialized();const{id:i,reason:s}=t,n=this.getPendingAuthRequest(i);if(!n)throw new Error(`Could not find pending auth request with id ${i}`);n.transportType===Dt.relay&&await this.confirmOnlineStateOrThrow();const o=n.requester.publicKey,a=await this.client.core.crypto.generateKeyPair(),u=gh(o),c={type:qs,receiverPublicKey:o,senderPublicKey:a};await this.sendError({id:i,topic:u,error:s,encodeOpts:c,rpcOpts:vr.wc_sessionAuthenticate.reject,appLink:this.getAppLinkIfEnabled(n.requester.metadata,n.transportType)}),await this.client.auth.requests.delete(i,{message:"rejected",code:0}),await this.client.proposal.delete(i,nt("USER_DISCONNECTED"))}),H(this,"formatAuthMessage",t=>{this.isInitialized();const{request:i,iss:s}=t;return R4(i,s)}),H(this,"processRelayMessageCache",()=>{setTimeout(async()=>{if(this.relayMessageCache.length!==0)for(;this.relayMessageCache.length>0;)try{const t=this.relayMessageCache.shift();t&&await this.onRelayMessage(t)}catch(t){this.client.logger.error(t)}},50)}),H(this,"cleanupDuplicatePairings",async t=>{if(t.pairingTopic)try{const i=this.client.core.pairing.pairings.get(t.pairingTopic),s=this.client.core.pairing.pairings.getAll().filter(n=>{var o,a;return((o=n.peerMetadata)==null?void 0:o.url)&&((a=n.peerMetadata)==null?void 0:a.url)===t.peer.metadata.url&&n.topic&&n.topic!==i.topic});if(s.length===0)return;this.client.logger.info(`Cleaning up ${s.length} duplicate pairing(s)`),await Promise.all(s.map(n=>this.client.core.pairing.disconnect({topic:n.topic}))),this.client.logger.info("Duplicate pairings clean up finished")}catch(i){this.client.logger.error(i)}}),H(this,"deleteSession",async t=>{var i;const{topic:s,expirerHasDeleted:n=!1,emitEvent:o=!0,id:a=0}=t,{self:u}=this.client.session.get(s);await this.client.core.relayer.unsubscribe(s),await this.client.session.delete(s,nt("USER_DISCONNECTED")),this.addToRecentlyDeleted(s,"session"),this.client.core.crypto.keychain.has(u.publicKey)&&await this.client.core.crypto.deleteKeyPair(u.publicKey),this.client.core.crypto.keychain.has(s)&&await this.client.core.crypto.deleteSymKey(s),n||this.client.core.expirer.del(s),this.client.core.storage.removeItem(ZM).catch(c=>this.client.logger.warn(c)),this.getPendingSessionRequests().forEach(c=>{c.topic===s&&this.deletePendingSessionRequest(c.id,nt("USER_DISCONNECTED"))}),s===((i=this.sessionRequestQueue.queue[0])==null?void 0:i.topic)&&(this.sessionRequestQueue.state=Ns.idle),o&&this.client.events.emit("session_delete",{id:a,topic:s})}),H(this,"deleteProposal",async(t,i)=>{if(i)try{const s=this.client.proposal.get(t);this.client.core.eventClient.getEvent({topic:s.pairingTopic})?.setError(Bn.proposal_expired)}catch{}await Promise.all([this.client.proposal.delete(t,nt("USER_DISCONNECTED")),i?Promise.resolve():this.client.core.expirer.del(t)]),this.addToRecentlyDeleted(t,"proposal")}),H(this,"deletePendingSessionRequest",async(t,i,s=!1)=>{await Promise.all([this.client.pendingRequest.delete(t,i),s?Promise.resolve():this.client.core.expirer.del(t)]),this.addToRecentlyDeleted(t,"request"),this.sessionRequestQueue.queue=this.sessionRequestQueue.queue.filter(n=>n.id!==t),s&&(this.sessionRequestQueue.state=Ns.idle,this.client.events.emit("session_request_expire",{id:t}))}),H(this,"deletePendingAuthRequest",async(t,i,s=!1)=>{await Promise.all([this.client.auth.requests.delete(t,i),s?Promise.resolve():this.client.core.expirer.del(t)])}),H(this,"setExpiry",async(t,i)=>{this.client.session.keys.includes(t)&&(this.client.core.expirer.set(t,i),await this.client.session.update(t,{expiry:i}))}),H(this,"setProposal",async(t,i)=>{this.client.core.expirer.set(t,fr(vr.wc_sessionPropose.req.ttl)),await this.client.proposal.set(t,i)}),H(this,"setAuthRequest",async(t,i)=>{const{request:s,pairingTopic:n,transportType:o=Dt.relay}=i;this.client.core.expirer.set(t,s.expiryTimestamp),await this.client.auth.requests.set(t,{authPayload:s.authPayload,requester:s.requester,expiryTimestamp:s.expiryTimestamp,id:t,pairingTopic:n,verifyContext:s.verifyContext,transportType:o})}),H(this,"setPendingSessionRequest",async t=>{const{id:i,topic:s,params:n,verifyContext:o}=t,a=n.request.expiryTimestamp||fr(vr.wc_sessionRequest.req.ttl);this.client.core.expirer.set(i,a),await this.client.pendingRequest.set(i,{id:i,topic:s,params:n,verifyContext:o})}),H(this,"sendRequest",async t=>{const{topic:i,method:s,params:n,expiry:o,relayRpcId:a,clientRpcId:u,throwOnFailedPublish:c,appLink:l,tvf:h}=t,f=Kr(s,n,u);let w;const g=!!l;try{const A=g?zc:Nn;w=await this.client.core.crypto.encode(i,f,{encoding:A})}catch(A){throw await this.cleanup(),this.client.logger.error(`sendRequest() -> core.crypto.encode() for topic ${i} failed`),A}let m;if($G.includes(s)){const A=Ds(JSON.stringify(f)),D=Ds(w);m=await this.client.core.verify.register({id:D,decryptedId:A})}const E=vr[s].req;if(E.attestation=m,o&&(E.ttl=o),a&&(E.id=a),this.client.core.history.set(i,f),g){const A=Gl(l,i,w);await global.Linking.openURL(A,this.client.name)}else{const A=vr[s].req;o&&(A.ttl=o),a&&(A.id=a),A.tvf=Zr(lt({},h),{correlationId:f.id}),c?(A.internal=Zr(lt({},A.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(i,w,A)):this.client.core.relayer.publish(i,w,A).catch(D=>this.client.logger.error(D))}return f.id}),H(this,"sendResult",async t=>{const{id:i,topic:s,result:n,throwOnFailedPublish:o,encodeOpts:a,appLink:u}=t,c=Cn(i,n);let l;const h=u&&typeof(global==null?void 0:global.Linking)<"u";try{const g=h?zc:Nn;l=await this.client.core.crypto.encode(s,c,Zr(lt({},a||{}),{encoding:g}))}catch(g){throw await this.cleanup(),this.client.logger.error(`sendResult() -> core.crypto.encode() for topic ${s} failed`),g}let f,w;try{f=await this.client.core.history.get(s,i);const g=f.request;try{this.shouldSetTVF(g.method,g.params)&&(w=this.getTVFParams(i,g.params,n))}catch(m){this.client.logger.warn("sendResult() -> getTVFParams() failed",m)}}catch(g){throw this.client.logger.error(`sendResult() -> history.get(${s}, ${i}) failed`),g}if(h){const g=Gl(u,s,l);await global.Linking.openURL(g,this.client.name)}else{const g=f.request.method,m=vr[g].res;m.tvf=Zr(lt({},w),{correlationId:i}),o?(m.internal=Zr(lt({},m.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(s,l,m)):this.client.core.relayer.publish(s,l,m).catch(E=>this.client.logger.error(E))}await this.client.core.history.resolve(c)}),H(this,"sendError",async t=>{const{id:i,topic:s,error:n,encodeOpts:o,rpcOpts:a,appLink:u}=t,c=Wa(i,n);let l;const h=u&&typeof(global==null?void 0:global.Linking)<"u";try{const w=h?zc:Nn;l=await this.client.core.crypto.encode(s,c,Zr(lt({},o||{}),{encoding:w}))}catch(w){throw await this.cleanup(),this.client.logger.error(`sendError() -> core.crypto.encode() for topic ${s} failed`),w}let f;try{f=await this.client.core.history.get(s,i)}catch(w){throw this.client.logger.error(`sendError() -> history.get(${s}, ${i}) failed`),w}if(h){const w=Gl(u,s,l);await global.Linking.openURL(w,this.client.name)}else{const w=f.request.method,g=a||vr[w].res;this.client.core.relayer.publish(s,l,g)}await this.client.core.history.resolve(c)}),H(this,"cleanup",async()=>{const t=[],i=[];this.client.session.getAll().forEach(s=>{let n=!1;gn(s.expiry)&&(n=!0),this.client.core.crypto.keychain.has(s.topic)||(n=!0),n&&t.push(s.topic)}),this.client.proposal.getAll().forEach(s=>{gn(s.expiryTimestamp)&&i.push(s.id)}),await Promise.all([...t.map(s=>this.deleteSession({topic:s})),...i.map(s=>this.deleteProposal(s))])}),H(this,"onProviderMessageEvent",async t=>{!this.initialized||this.relayMessageCache.length>0?this.relayMessageCache.push(t):await this.onRelayMessage(t)}),H(this,"onRelayEventRequest",async t=>{this.requestQueue.queue.push(t),await this.processRequestsQueue()}),H(this,"processRequestsQueue",async()=>{if(this.requestQueue.state===Ns.active){this.client.logger.info("Request queue already active, skipping...");return}for(this.client.logger.info(`Request queue starting with ${this.requestQueue.queue.length} requests`);this.requestQueue.queue.length>0;){this.requestQueue.state=Ns.active;const t=this.requestQueue.queue.shift();if(t)try{await this.processRequest(t)}catch(i){this.client.logger.warn(i)}}this.requestQueue.state=Ns.idle}),H(this,"processRequest",async t=>{const{topic:i,payload:s,attestation:n,transportType:o,encryptedId:a}=t,u=s.method;if(!this.shouldIgnorePairingRequest({topic:i,requestMethod:u}))switch(u){case"wc_sessionPropose":return await this.onSessionProposeRequest({topic:i,payload:s,attestation:n,encryptedId:a});case"wc_sessionSettle":return await this.onSessionSettleRequest(i,s);case"wc_sessionUpdate":return await this.onSessionUpdateRequest(i,s);case"wc_sessionExtend":return await this.onSessionExtendRequest(i,s);case"wc_sessionPing":return await this.onSessionPingRequest(i,s);case"wc_sessionDelete":return await this.onSessionDeleteRequest(i,s);case"wc_sessionRequest":return await this.onSessionRequest({topic:i,payload:s,attestation:n,encryptedId:a,transportType:o});case"wc_sessionEvent":return await this.onSessionEventRequest(i,s);case"wc_sessionAuthenticate":return await this.onSessionAuthenticateRequest({topic:i,payload:s,attestation:n,encryptedId:a,transportType:o});default:return this.client.logger.info(`Unsupported request method ${u}`)}}),H(this,"onRelayEventResponse",async t=>{const{topic:i,payload:s,transportType:n}=t,o=(await this.client.core.history.get(i,s.id)).request.method;switch(o){case"wc_sessionPropose":return this.onSessionProposeResponse(i,s,n);case"wc_sessionSettle":return this.onSessionSettleResponse(i,s);case"wc_sessionUpdate":return this.onSessionUpdateResponse(i,s);case"wc_sessionExtend":return this.onSessionExtendResponse(i,s);case"wc_sessionPing":return this.onSessionPingResponse(i,s);case"wc_sessionRequest":return this.onSessionRequestResponse(i,s);case"wc_sessionAuthenticate":return this.onSessionAuthenticateResponse(i,s);default:return this.client.logger.info(`Unsupported response method ${o}`)}}),H(this,"onRelayEventUnknownPayload",t=>{const{topic:i}=t,{message:s}=ee("MISSING_OR_INVALID",`Decoded payload on topic ${i} is not identifiable as a JSON-RPC request or a response.`);throw new Error(s)}),H(this,"shouldIgnorePairingRequest",t=>{const{topic:i,requestMethod:s}=t,n=this.expectedPairingMethodMap.get(i);return!n||n.includes(s)?!1:!!(n.includes("wc_sessionAuthenticate")&&this.client.events.listenerCount("session_authenticate")>0)}),H(this,"onSessionProposeRequest",async t=>{const{topic:i,payload:s,attestation:n,encryptedId:o}=t,{params:a,id:u}=s;try{const c=this.client.core.eventClient.getEvent({topic:i});this.client.events.listenerCount("session_proposal")===0&&(console.warn("No listener for session_proposal event"),c?.setError(Ys.proposal_listener_not_found)),this.isValidConnect(lt({},s.params));const l=a.expiryTimestamp||fr(vr.wc_sessionPropose.req.ttl),h=lt({id:u,pairingTopic:i,expiryTimestamp:l},a);await this.setProposal(u,h);const f=await this.getVerifyContext({attestationId:n,hash:Ds(JSON.stringify(s)),encryptedId:o,metadata:h.proposer.metadata});c?.addTrace(Is.emit_session_proposal),this.client.events.emit("session_proposal",{id:u,params:h,verifyContext:f})}catch(c){await this.sendError({id:u,topic:i,error:c,rpcOpts:vr.wc_sessionPropose.autoReject}),this.client.logger.error(c)}}),H(this,"onSessionProposeResponse",async(t,i,s)=>{const{id:n}=i;if(yr(i)){const{result:o}=i;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:o});const a=this.client.proposal.get(n);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:a});const u=a.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:u});const c=o.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:c});const l=await this.client.core.crypto.generateSharedKey(u,c);this.pendingSessions.set(n,{sessionTopic:l,pairingTopic:t,proposalId:n,publicKey:u});const h=await this.client.core.relayer.subscribe(l,{transportType:s});this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:h}),await this.client.core.pairing.activate({topic:t})}else if(rr(i)){await this.client.proposal.delete(n,nt("USER_DISCONNECTED"));const o=Ve("session_connect",n);if(this.events.listenerCount(o)===0)throw new Error(`emitting ${o} without any listeners, 954`);this.events.emit(o,{error:i.error})}}),H(this,"onSessionSettleRequest",async(t,i)=>{const{id:s,params:n}=i;try{this.isValidSessionSettleRequest(n);const{relay:o,controller:a,expiry:u,namespaces:c,sessionProperties:l,scopedProperties:h,sessionConfig:f}=i.params,w=[...this.pendingSessions.values()].find(E=>E.sessionTopic===t);if(!w)return this.client.logger.error(`Pending session not found for topic ${t}`);const g=this.client.proposal.get(w.proposalId),m=Zr(lt(lt(lt({topic:t,relay:o,expiry:u,namespaces:c,acknowledged:!0,pairingTopic:w.pairingTopic,requiredNamespaces:g.requiredNamespaces,optionalNamespaces:g.optionalNamespaces,controller:a.publicKey,self:{publicKey:w.publicKey,metadata:this.client.metadata},peer:{publicKey:a.publicKey,metadata:a.metadata}},l&&{sessionProperties:l}),h&&{scopedProperties:h}),f&&{sessionConfig:f}),{transportType:Dt.relay});await this.client.session.set(m.topic,m),await this.setExpiry(m.topic,m.expiry),await this.client.core.pairing.updateMetadata({topic:w.pairingTopic,metadata:m.peer.metadata}),this.client.events.emit("session_connect",{session:m}),this.events.emit(Ve("session_connect",w.proposalId),{session:m}),this.pendingSessions.delete(w.proposalId),this.deleteProposal(w.proposalId,!1),this.cleanupDuplicatePairings(m),await this.sendResult({id:i.id,topic:t,result:!0,throwOnFailedPublish:!0})}catch(o){await this.sendError({id:s,topic:t,error:o}),this.client.logger.error(o)}}),H(this,"onSessionSettleResponse",async(t,i)=>{const{id:s}=i;yr(i)?(await this.client.session.update(t,{acknowledged:!0}),this.events.emit(Ve("session_approve",s),{})):rr(i)&&(await this.client.session.delete(t,nt("USER_DISCONNECTED")),this.events.emit(Ve("session_approve",s),{error:i.error}))}),H(this,"onSessionUpdateRequest",async(t,i)=>{const{params:s,id:n}=i;try{const o=`${t}_session_update`,a=Lc.get(o);if(a&&this.isRequestOutOfSync(a,n)){this.client.logger.warn(`Discarding out of sync request - ${n}`),this.sendError({id:n,topic:t,error:nt("INVALID_UPDATE_REQUEST")});return}this.isValidUpdate(lt({topic:t},s));try{Lc.set(o,n),await this.client.session.update(t,{namespaces:s.namespaces}),await this.sendResult({id:n,topic:t,result:!0,throwOnFailedPublish:!0})}catch(u){throw Lc.delete(o),u}this.client.events.emit("session_update",{id:n,topic:t,params:s})}catch(o){await this.sendError({id:n,topic:t,error:o}),this.client.logger.error(o)}}),H(this,"isRequestOutOfSync",(t,i)=>i.toString().slice(0,-3)<t.toString().slice(0,-3)),H(this,"onSessionUpdateResponse",(t,i)=>{const{id:s}=i,n=Ve("session_update",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);yr(i)?this.events.emit(Ve("session_update",s),{}):rr(i)&&this.events.emit(Ve("session_update",s),{error:i.error})}),H(this,"onSessionExtendRequest",async(t,i)=>{const{id:s}=i;try{this.isValidExtend({topic:t}),await this.setExpiry(t,fr(Jo)),await this.sendResult({id:s,topic:t,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_extend",{id:s,topic:t})}catch(n){await this.sendError({id:s,topic:t,error:n}),this.client.logger.error(n)}}),H(this,"onSessionExtendResponse",(t,i)=>{const{id:s}=i,n=Ve("session_extend",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);yr(i)?this.events.emit(Ve("session_extend",s),{}):rr(i)&&this.events.emit(Ve("session_extend",s),{error:i.error})}),H(this,"onSessionPingRequest",async(t,i)=>{const{id:s}=i;try{this.isValidPing({topic:t}),await this.sendResult({id:s,topic:t,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_ping",{id:s,topic:t})}catch(n){await this.sendError({id:s,topic:t,error:n}),this.client.logger.error(n)}}),H(this,"onSessionPingResponse",(t,i)=>{const{id:s}=i,n=Ve("session_ping",s);setTimeout(()=>{if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners 2176`);yr(i)?this.events.emit(Ve("session_ping",s),{}):rr(i)&&this.events.emit(Ve("session_ping",s),{error:i.error})},500)}),H(this,"onSessionDeleteRequest",async(t,i)=>{const{id:s}=i;try{this.isValidDisconnect({topic:t,reason:i.params}),Promise.all([new Promise(n=>{this.client.core.relayer.once(Er.publish,async()=>{n(await this.deleteSession({topic:t,id:s}))})}),this.sendResult({id:s,topic:t,result:!0,throwOnFailedPublish:!0}),this.cleanupPendingSentRequestsForTopic({topic:t,error:nt("USER_DISCONNECTED")})]).catch(n=>this.client.logger.error(n))}catch(n){this.client.logger.error(n)}}),H(this,"onSessionRequest",async t=>{var i,s,n;const{topic:o,payload:a,attestation:u,encryptedId:c,transportType:l}=t,{id:h,params:f}=a;try{await this.isValidRequest(lt({topic:o},f));const w=this.client.session.get(o),g=await this.getVerifyContext({attestationId:u,hash:Ds(JSON.stringify(Kr("wc_sessionRequest",f,h))),encryptedId:c,metadata:w.peer.metadata,transportType:l}),m={id:h,topic:o,params:f,verifyContext:g};await this.setPendingSessionRequest(m),l===Dt.link_mode&&(i=w.peer.metadata.redirect)!=null&&i.universal&&this.client.core.addLinkModeSupportedApp((s=w.peer.metadata.redirect)==null?void 0:s.universal),(n=this.client.signConfig)!=null&&n.disableRequestQueue?this.emitSessionRequest(m):(this.addSessionRequestToSessionRequestQueue(m),this.processSessionRequestQueue())}catch(w){await this.sendError({id:h,topic:o,error:w}),this.client.logger.error(w)}}),H(this,"onSessionRequestResponse",(t,i)=>{const{id:s}=i,n=Ve("session_request",s);if(this.events.listenerCount(n)===0)throw new Error(`emitting ${n} without any listeners`);yr(i)?this.events.emit(Ve("session_request",s),{result:i.result}):rr(i)&&this.events.emit(Ve("session_request",s),{error:i.error})}),H(this,"onSessionEventRequest",async(t,i)=>{const{id:s,params:n}=i;try{const o=`${t}_session_event_${n.event.name}`,a=Lc.get(o);if(a&&this.isRequestOutOfSync(a,s)){this.client.logger.info(`Discarding out of sync request - ${s}`);return}this.isValidEmit(lt({topic:t},n)),this.client.events.emit("session_event",{id:s,topic:t,params:n}),Lc.set(o,s)}catch(o){await this.sendError({id:s,topic:t,error:o}),this.client.logger.error(o)}}),H(this,"onSessionAuthenticateResponse",(t,i)=>{const{id:s}=i;this.client.logger.trace({type:"method",method:"onSessionAuthenticateResponse",topic:t,payload:i}),yr(i)?this.events.emit(Ve("session_request",s),{result:i.result}):rr(i)&&this.events.emit(Ve("session_request",s),{error:i.error})}),H(this,"onSessionAuthenticateRequest",async t=>{var i;const{topic:s,payload:n,attestation:o,encryptedId:a,transportType:u}=t;try{const{requester:c,authPayload:l,expiryTimestamp:h}=n.params,f=await this.getVerifyContext({attestationId:o,hash:Ds(JSON.stringify(n)),encryptedId:a,metadata:c.metadata,transportType:u}),w={requester:c,pairingTopic:s,id:n.id,authPayload:l,verifyContext:f,expiryTimestamp:h};await this.setAuthRequest(n.id,{request:w,pairingTopic:s,transportType:u}),u===Dt.link_mode&&(i=c.metadata.redirect)!=null&&i.universal&&this.client.core.addLinkModeSupportedApp(c.metadata.redirect.universal),this.client.events.emit("session_authenticate",{topic:s,params:n.params,id:n.id,verifyContext:f})}catch(c){this.client.logger.error(c);const l=n.params.requester.publicKey,h=await this.client.core.crypto.generateKeyPair(),f=this.getAppLinkIfEnabled(n.params.requester.metadata,u),w={type:qs,receiverPublicKey:l,senderPublicKey:h};await this.sendError({id:n.id,topic:s,error:c,encodeOpts:w,rpcOpts:vr.wc_sessionAuthenticate.autoReject,appLink:f})}}),H(this,"addSessionRequestToSessionRequestQueue",t=>{this.sessionRequestQueue.queue.push(t)}),H(this,"cleanupAfterResponse",t=>{this.deletePendingSessionRequest(t.response.id,{message:"fulfilled",code:0}),setTimeout(()=>{this.sessionRequestQueue.state=Ns.idle,this.processSessionRequestQueue()},Y.toMiliseconds(this.requestQueueDelay))}),H(this,"cleanupPendingSentRequestsForTopic",({topic:t,error:i})=>{const s=this.client.core.history.pending;s.length>0&&s.filter(n=>n.topic===t&&n.request.method==="wc_sessionRequest").forEach(n=>{const o=n.request.id,a=Ve("session_request",o);if(this.events.listenerCount(a)===0)throw new Error(`emitting ${a} without any listeners`);this.events.emit(Ve("session_request",n.request.id),{error:i})})}),H(this,"processSessionRequestQueue",()=>{if(this.sessionRequestQueue.state===Ns.active){this.client.logger.info("session request queue is already active.");return}const t=this.sessionRequestQueue.queue[0];if(!t){this.client.logger.info("session request queue is empty.");return}try{this.sessionRequestQueue.state=Ns.active,this.emitSessionRequest(t)}catch(i){this.client.logger.error(i)}}),H(this,"emitSessionRequest",t=>{this.client.events.emit("session_request",t)}),H(this,"onPairingCreated",t=>{if(t.methods&&this.expectedPairingMethodMap.set(t.topic,t.methods),t.active)return;const i=this.client.proposal.getAll().find(s=>s.pairingTopic===t.topic);i&&this.onSessionProposeRequest({topic:t.topic,payload:Kr("wc_sessionPropose",Zr(lt({},i),{requiredNamespaces:i.requiredNamespaces,optionalNamespaces:i.optionalNamespaces,relays:i.relays,proposer:i.proposer,sessionProperties:i.sessionProperties,scopedProperties:i.scopedProperties}),i.id)})}),H(this,"isValidConnect",async t=>{if(!ai(t)){const{message:c}=ee("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(t)}`);throw new Error(c)}const{pairingTopic:i,requiredNamespaces:s,optionalNamespaces:n,sessionProperties:o,scopedProperties:a,relays:u}=t;if(kr(i)||await this.isValidPairingTopic(i),!kW(u)){const{message:c}=ee("MISSING_OR_INVALID",`connect() relays: ${u}`);throw new Error(c)}if(!kr(s)&&Uu(s)!==0&&this.validateNamespaces(s,"requiredNamespaces"),!kr(n)&&Uu(n)!==0&&this.validateNamespaces(n,"optionalNamespaces"),kr(o)||this.validateSessionProps(o,"sessionProperties"),!kr(a)){this.validateSessionProps(a,"scopedProperties");const c=Object.keys(s||{}).concat(Object.keys(n||{}));if(!Object.keys(a).every(l=>c.includes(l)))throw new Error(`Scoped properties must be a subset of required/optional namespaces, received: ${JSON.stringify(a)}, required/optional namespaces: ${JSON.stringify(c)}`)}}),H(this,"validateNamespaces",(t,i)=>{const s=PW(t,"connect()",i);if(s)throw new Error(s.message)}),H(this,"isValidApprove",async t=>{if(!ai(t))throw new Error(ee("MISSING_OR_INVALID",`approve() params: ${t}`).message);const{id:i,namespaces:s,relayProtocol:n,sessionProperties:o,scopedProperties:a}=t;this.checkRecentlyDeleted(i),await this.isValidProposalId(i);const u=this.client.proposal.get(i),c=Hf(s,"approve()");if(c)throw new Error(c.message);const l=NM(u.requiredNamespaces,s,"approve()");if(l)throw new Error(l.message);if(!ur(n,!0)){const{message:h}=ee("MISSING_OR_INVALID",`approve() relayProtocol: ${n}`);throw new Error(h)}if(kr(o)||this.validateSessionProps(o,"sessionProperties"),!kr(a)){this.validateSessionProps(a,"scopedProperties");const h=new Set(Object.keys(s));if(!Object.keys(a).every(f=>h.has(f)))throw new Error(`Scoped properties must be a subset of approved namespaces, received: ${JSON.stringify(a)}, approved namespaces: ${Array.from(h).join(", ")}`)}}),H(this,"isValidReject",async t=>{if(!ai(t)){const{message:n}=ee("MISSING_OR_INVALID",`reject() params: ${t}`);throw new Error(n)}const{id:i,reason:s}=t;if(this.checkRecentlyDeleted(i),await this.isValidProposalId(i),!RW(s)){const{message:n}=ee("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(s)}`);throw new Error(n)}}),H(this,"isValidSessionSettleRequest",t=>{if(!ai(t)){const{message:c}=ee("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${t}`);throw new Error(c)}const{relay:i,controller:s,namespaces:n,expiry:o}=t;if(!r2(i)){const{message:c}=ee("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(c)}const a=xW(s,"onSessionSettleRequest()");if(a)throw new Error(a.message);const u=Hf(n,"onSessionSettleRequest()");if(u)throw new Error(u.message);if(gn(o)){const{message:c}=ee("EXPIRED","onSessionSettleRequest()");throw new Error(c)}}),H(this,"isValidUpdate",async t=>{if(!ai(t)){const{message:u}=ee("MISSING_OR_INVALID",`update() params: ${t}`);throw new Error(u)}const{topic:i,namespaces:s}=t;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i);const n=this.client.session.get(i),o=Hf(s,"update()");if(o)throw new Error(o.message);const a=NM(n.requiredNamespaces,s,"update()");if(a)throw new Error(a.message)}),H(this,"isValidExtend",async t=>{if(!ai(t)){const{message:s}=ee("MISSING_OR_INVALID",`extend() params: ${t}`);throw new Error(s)}const{topic:i}=t;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i)}),H(this,"isValidRequest",async t=>{if(!ai(t)){const{message:u}=ee("MISSING_OR_INVALID",`request() params: ${t}`);throw new Error(u)}const{topic:i,request:s,chainId:n,expiry:o}=t;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i);const{namespaces:a}=this.client.session.get(i);if(!MM(a,n)){const{message:u}=ee("MISSING_OR_INVALID",`request() chainId: ${n}`);throw new Error(u)}if(!$W(s)){const{message:u}=ee("MISSING_OR_INVALID",`request() ${JSON.stringify(s)}`);throw new Error(u)}if(!YW(a,n,s.method)){const{message:u}=ee("MISSING_OR_INVALID",`request() method: ${s.method}`);throw new Error(u)}if(o&&!qW(o,rp)){const{message:u}=ee("MISSING_OR_INVALID",`request() expiry: ${o}. Expiry must be a number (in seconds) between ${rp.min} and ${rp.max}`);throw new Error(u)}}),H(this,"isValidRespond",async t=>{var i;if(!ai(t)){const{message:o}=ee("MISSING_OR_INVALID",`respond() params: ${t}`);throw new Error(o)}const{topic:s,response:n}=t;try{await this.isValidSessionTopic(s)}catch(o){throw(i=t?.response)!=null&&i.id&&this.cleanupAfterResponse(t),o}if(!FW(n)){const{message:o}=ee("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(n)}`);throw new Error(o)}}),H(this,"isValidPing",async t=>{if(!ai(t)){const{message:s}=ee("MISSING_OR_INVALID",`ping() params: ${t}`);throw new Error(s)}const{topic:i}=t;await this.isValidSessionOrPairingTopic(i)}),H(this,"isValidEmit",async t=>{if(!ai(t)){const{message:a}=ee("MISSING_OR_INVALID",`emit() params: ${t}`);throw new Error(a)}const{topic:i,event:s,chainId:n}=t;await this.isValidSessionTopic(i);const{namespaces:o}=this.client.session.get(i);if(!MM(o,n)){const{message:a}=ee("MISSING_OR_INVALID",`emit() chainId: ${n}`);throw new Error(a)}if(!BW(s)){const{message:a}=ee("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}if(!QW(o,n,s.name)){const{message:a}=ee("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}}),H(this,"isValidDisconnect",async t=>{if(!ai(t)){const{message:s}=ee("MISSING_OR_INVALID",`disconnect() params: ${t}`);throw new Error(s)}const{topic:i}=t;await this.isValidSessionOrPairingTopic(i)}),H(this,"isValidAuthenticate",t=>{const{chains:i,uri:s,domain:n,nonce:o}=t;if(!Array.isArray(i)||i.length===0)throw new Error("chains is required and must be a non-empty array");if(!ur(s,!1))throw new Error("uri is required parameter");if(!ur(n,!1))throw new Error("domain is required parameter");if(!ur(o,!1))throw new Error("nonce is required parameter");if([...new Set(i.map(u=>Aa(u).namespace))].length>1)throw new Error("Multi-namespace requests are not supported. Please request single namespace only.");const{namespace:a}=Aa(i[0]);if(a!=="eip155")throw new Error("Only eip155 namespace is supported for authenticated sessions. Please use .connect() for non-eip155 chains.")}),H(this,"getVerifyContext",async t=>{const{attestationId:i,hash:s,encryptedId:n,metadata:o,transportType:a}=t,u={verified:{verifyUrl:o.verifyUrl||ru,validation:"UNKNOWN",origin:o.url||""}};try{if(a===Dt.link_mode){const l=this.getAppLinkIfEnabled(o,a);return u.verified.validation=l&&new URL(l).origin===new URL(o.url).origin?"VALID":"INVALID",u}const c=await this.client.core.verify.resolve({attestationId:i,hash:s,encryptedId:n,verifyUrl:o.verifyUrl});c&&(u.verified.origin=c.origin,u.verified.isScam=c.isScam,u.verified.validation=c.origin===new URL(o.url).origin?"VALID":"INVALID")}catch(c){this.client.logger.warn(c)}return this.client.logger.debug(`Verify context: ${JSON.stringify(u)}`),u}),H(this,"validateSessionProps",(t,i)=>{Object.values(t).forEach((s,n)=>{if(s==null){const{message:o}=ee("MISSING_OR_INVALID",`${i} must contain an existing value for each key. Received: ${s} for key ${Object.keys(t)[n]}`);throw new Error(o)}})}),H(this,"getPendingAuthRequest",t=>{const i=this.client.auth.requests.get(t);return typeof i=="object"?i:void 0}),H(this,"addToRecentlyDeleted",(t,i)=>{if(this.recentlyDeletedMap.set(t,i),this.recentlyDeletedMap.size>=this.recentlyDeletedLimit){let s=0;const n=this.recentlyDeletedLimit/2;for(const o of this.recentlyDeletedMap.keys()){if(s++>=n)break;this.recentlyDeletedMap.delete(o)}}}),H(this,"checkRecentlyDeleted",t=>{const i=this.recentlyDeletedMap.get(t);if(i){const{message:s}=ee("MISSING_OR_INVALID",`Record was recently deleted - ${i}: ${t}`);throw new Error(s)}}),H(this,"isLinkModeEnabled",(t,i)=>{var s,n,o,a,u,c,l,h,f;return!t||i!==Dt.link_mode?!1:((n=(s=this.client.metadata)==null?void 0:s.redirect)==null?void 0:n.linkMode)===!0&&((a=(o=this.client.metadata)==null?void 0:o.redirect)==null?void 0:a.universal)!==void 0&&((c=(u=this.client.metadata)==null?void 0:u.redirect)==null?void 0:c.universal)!==""&&((l=t?.redirect)==null?void 0:l.universal)!==void 0&&((h=t?.redirect)==null?void 0:h.universal)!==""&&((f=t?.redirect)==null?void 0:f.linkMode)===!0&&this.client.core.linkModeSupportedApps.includes(t.redirect.universal)&&typeof(global==null?void 0:global.Linking)<"u"}),H(this,"getAppLinkIfEnabled",(t,i)=>{var s;return this.isLinkModeEnabled(t,i)?(s=t?.redirect)==null?void 0:s.universal:void 0}),H(this,"handleLinkModeMessage",({url:t})=>{if(!t||!t.includes("wc_ev")||!t.includes("topic"))return;const i=Bb(t,"topic")||"",s=decodeURIComponent(Bb(t,"wc_ev")||""),n=this.client.session.keys.includes(i);n&&this.client.session.update(i,{transportType:Dt.link_mode}),this.client.core.dispatchEnvelope({topic:i,message:s,sessionExists:n})}),H(this,"registerLinkModeListeners",async()=>{var t;if(o0()||_n()&&(t=this.client.metadata.redirect)!=null&&t.linkMode){const i=global==null?void 0:global.Linking;if(typeof i<"u"){i.addEventListener("url",this.handleLinkModeMessage,this.client.name);const s=await i.getInitialURL();s&&setTimeout(()=>{this.handleLinkModeMessage({url:s})},50)}}}),H(this,"shouldSetTVF",(t,i)=>{if(!i||t!=="wc_sessionRequest")return!1;const{request:s}=i;return Object.keys(GM).includes(s.method)}),H(this,"getTVFParams",(t,i,s)=>{var n,o;try{const a=i.request.method,u=this.extractTxHashesFromResult(a,s);return Zr(lt({correlationId:t,rpcMethods:[a],chainId:i.chainId},this.isValidContractData(i.request.params)&&{contractAddresses:[(o=(n=i.request.params)==null?void 0:n[0])==null?void 0:o.to]}),{txHashes:u})}catch(a){this.client.logger.warn("Error getting TVF params",a)}return{}}),H(this,"isValidContractData",t=>{var i;if(!t)return!1;try{const s=t?.data||((i=t?.[0])==null?void 0:i.data);if(!s.startsWith("0x"))return!1;const n=s.slice(2);return/^[0-9a-fA-F]*$/.test(n)?n.length%2===0:!1}catch{}return!1}),H(this,"extractTxHashesFromResult",(t,i)=>{try{const s=GM[t];if(typeof i=="string")return[i];const n=i[s.key];if(po(n))return t==="solana_signAllTransactions"?n.map(o=>QQ(o)):n;if(typeof n=="string")return[n]}catch(s){this.client.logger.warn("Error extracting tx hashes from result",s)}return[]})}async processPendingMessageEvents(){try{const e=this.client.session.keys,t=this.client.core.relayer.messages.getWithoutAck(e);for(const[i,s]of Object.entries(t))for(const n of s)try{await this.onProviderMessageEvent({topic:i,message:n,publishedAt:Date.now()})}catch{this.client.logger.warn(`Error processing pending message event for topic: ${i}, message: ${n}`)}}catch(e){this.client.logger.warn("processPendingMessageEvents failed",e)}}isInitialized(){if(!this.initialized){const{message:e}=ee("NOT_INITIALIZED",this.name);throw new Error(e)}}async confirmOnlineStateOrThrow(){await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(Er.message,e=>{this.onProviderMessageEvent(e)})}async onRelayMessage(e){const{topic:t,message:i,attestation:s,transportType:n}=e,{publicKey:o}=this.client.auth.authKeys.keys.includes(wh)?this.client.auth.authKeys.get(wh):{publicKey:void 0};try{const a=await this.client.core.crypto.decode(t,i,{receiverPublicKey:o,encoding:n===Dt.link_mode?zc:Nn});qa(a)?(this.client.core.history.set(t,a),await this.onRelayEventRequest({topic:t,payload:a,attestation:s,transportType:n,encryptedId:Ds(i)})):mo(a)?(await this.client.core.history.resolve(a),await this.onRelayEventResponse({topic:t,payload:a,transportType:n}),this.client.core.history.delete(t,a.id)):await this.onRelayEventUnknownPayload({topic:t,payload:a,transportType:n}),await this.client.core.relayer.messages.ack(t,i)}catch(a){this.client.logger.error(a)}}registerExpirerEvents(){this.client.core.expirer.on(Ri.expired,async e=>{const{topic:t,id:i}=x4(e.target);if(i&&this.client.pendingRequest.keys.includes(i))return await this.deletePendingSessionRequest(i,ee("EXPIRED"),!0);if(i&&this.client.auth.requests.keys.includes(i))return await this.deletePendingAuthRequest(i,ee("EXPIRED"),!0);t?this.client.session.keys.includes(t)&&(await this.deleteSession({topic:t,expirerHasDeleted:!0}),this.client.events.emit("session_expire",{topic:t})):i&&(await this.deleteProposal(i,!0),this.client.events.emit("proposal_expire",{id:i}))})}registerPairingEvents(){this.client.core.pairing.events.on(Gn.create,e=>this.onPairingCreated(e)),this.client.core.pairing.events.on(Gn.delete,e=>{this.addToRecentlyDeleted(e.topic,"pairing")})}isValidPairingTopic(e){if(!ur(e,!1)){const{message:t}=ee("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:t}=ee("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if(gn(this.client.core.pairing.pairings.get(e).expiry)){const{message:t}=ee("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}}async isValidSessionTopic(e){if(!ur(e,!1)){const{message:t}=ee("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(t)}if(this.checkRecentlyDeleted(e),!this.client.session.keys.includes(e)){const{message:t}=ee("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(t)}if(gn(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});const{message:t}=ee("EXPIRED",`session topic: ${e}`);throw new Error(t)}if(!this.client.core.crypto.keychain.has(e)){const{message:t}=ee("MISSING_OR_INVALID",`session topic does not exist in keychain: ${e}`);throw await this.deleteSession({topic:e}),new Error(t)}}async isValidSessionOrPairingTopic(e){if(this.checkRecentlyDeleted(e),this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else if(this.client.core.pairing.pairings.keys.includes(e))this.isValidPairingTopic(e);else if(ur(e,!1)){const{message:t}=ee("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(t)}else{const{message:t}=ee("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(t)}}async isValidProposalId(e){if(!UW(e)){const{message:t}=ee("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=ee("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(t)}if(gn(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);const{message:t}=ee("EXPIRED",`proposal id: ${e}`);throw new Error(t)}}}class JG extends Ao{constructor(e,t){super(e,t,PG,g0),this.core=e,this.logger=t}}let XG=class extends Ao{constructor(e,t){super(e,t,kG,g0),this.core=e,this.logger=t}};class eK extends Ao{constructor(e,t){super(e,t,RG,g0,i=>i.id),this.core=e,this.logger=t}}class tK extends Ao{constructor(e,t){super(e,t,YG,yd,()=>wh),this.core=e,this.logger=t}}class rK extends Ao{constructor(e,t){super(e,t,QG,yd),this.core=e,this.logger=t}}class iK extends Ao{constructor(e,t){super(e,t,VG,yd,i=>i.id),this.core=e,this.logger=t}}var sK=Object.defineProperty,nK=(r,e,t)=>e in r?sK(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ip=(r,e,t)=>nK(r,typeof e!="symbol"?e+"":e,t);class oK{constructor(e,t){this.core=e,this.logger=t,ip(this,"authKeys"),ip(this,"pairingTopics"),ip(this,"requests"),this.authKeys=new tK(this.core,this.logger),this.pairingTopics=new rK(this.core,this.logger),this.requests=new iK(this.core,this.logger)}async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}}var aK=Object.defineProperty,cK=(r,e,t)=>e in r?aK(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Te=(r,e,t)=>cK(r,typeof e!="symbol"?e+"":e,t);let uK=class v2 extends CB{constructor(e){super(e),Te(this,"protocol",b2),Te(this,"version",M2),Te(this,"name",tp.name),Te(this,"metadata"),Te(this,"core"),Te(this,"logger"),Te(this,"events",new wr.EventEmitter),Te(this,"engine"),Te(this,"session"),Te(this,"proposal"),Te(this,"pendingRequest"),Te(this,"auth"),Te(this,"signConfig"),Te(this,"on",(i,s)=>this.events.on(i,s)),Te(this,"once",(i,s)=>this.events.once(i,s)),Te(this,"off",(i,s)=>this.events.off(i,s)),Te(this,"removeListener",(i,s)=>this.events.removeListener(i,s)),Te(this,"removeAllListeners",i=>this.events.removeAllListeners(i)),Te(this,"connect",async i=>{try{return await this.engine.connect(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"pair",async i=>{try{return await this.engine.pair(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"approve",async i=>{try{return await this.engine.approve(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"reject",async i=>{try{return await this.engine.reject(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"update",async i=>{try{return await this.engine.update(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"extend",async i=>{try{return await this.engine.extend(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"request",async i=>{try{return await this.engine.request(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"respond",async i=>{try{return await this.engine.respond(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"ping",async i=>{try{return await this.engine.ping(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"emit",async i=>{try{return await this.engine.emit(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"disconnect",async i=>{try{return await this.engine.disconnect(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"find",i=>{try{return this.engine.find(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"getPendingSessionRequests",()=>{try{return this.engine.getPendingSessionRequests()}catch(i){throw this.logger.error(i.message),i}}),Te(this,"authenticate",async(i,s)=>{try{return await this.engine.authenticate(i,s)}catch(n){throw this.logger.error(n.message),n}}),Te(this,"formatAuthMessage",i=>{try{return this.engine.formatAuthMessage(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"approveSessionAuthenticate",async i=>{try{return await this.engine.approveSessionAuthenticate(i)}catch(s){throw this.logger.error(s.message),s}}),Te(this,"rejectSessionAuthenticate",async i=>{try{return await this.engine.rejectSessionAuthenticate(i)}catch(s){throw this.logger.error(s.message),s}}),this.name=e?.name||tp.name,this.metadata=e?.metadata||T4(),this.signConfig=e?.signConfig;const t=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:jn(Hs({level:e?.logger||tp.logger}));this.core=e?.core||new LG(e),this.logger=qe(t,this.name),this.session=new XG(this.core,this.logger),this.proposal=new JG(this.core,this.logger),this.pendingRequest=new eK(this.core,this.logger),this.engine=new KG(this),this.auth=new oK(this.core,this.logger)}static async init(e){const t=new v2(e);return await t.initialize(),t}get context(){return dt(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.pendingRequest.init(),await this.auth.init(),await this.engine.init(),this.logger.info("SignClient Initialization Success"),setTimeout(()=>{this.engine.processRelayMessageCache()},Y.toMiliseconds(Y.ONE_SECOND))}catch(e){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(e.message),e}}};const JM="error",lK="wss://relay.walletconnect.org",hK="wc",dK="universal_provider",Jl=`${hK}@2:${dK}:`,I2="https://rpc.walletconnect.org/v1/",ya="generic",fK=`${I2}bundler`,Wi={DEFAULT_CHAIN_CHANGED:"default_chain_changed"};function pK(){}function y0(r){return r==null||typeof r!="object"&&typeof r!="function"}function w0(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}function gK(r){if(y0(r))return r;if(Array.isArray(r)||w0(r)||r instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&r instanceof SharedArrayBuffer)return r.slice(0);const e=Object.getPrototypeOf(r),t=e.constructor;if(r instanceof Date||r instanceof Map||r instanceof Set)return new t(r);if(r instanceof RegExp){const i=new t(r);return i.lastIndex=r.lastIndex,i}if(r instanceof DataView)return new t(r.buffer.slice(0));if(r instanceof Error){const i=new t(r.message);return i.stack=r.stack,i.name=r.name,i.cause=r.cause,i}if(typeof File<"u"&&r instanceof File)return new t([r],r.name,{type:r.type,lastModified:r.lastModified});if(typeof r=="object"){const i=Object.create(e);return Object.assign(i,r)}return r}function XM(r){return typeof r=="object"&&r!==null}function D2(r){return Object.getOwnPropertySymbols(r).filter(e=>Object.prototype.propertyIsEnumerable.call(r,e))}function A2(r){return r==null?r===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(r)}const yK="[object RegExp]",E2="[object String]",T2="[object Number]",S2="[object Boolean]",j2="[object Arguments]",wK="[object Symbol]",mK="[object Date]",bK="[object Map]",MK="[object Set]",NK="[object Array]",vK="[object ArrayBuffer]",IK="[object Object]",DK="[object DataView]",AK="[object Uint8Array]",EK="[object Uint8ClampedArray]",TK="[object Uint16Array]",SK="[object Uint32Array]",jK="[object Int8Array]",xK="[object Int16Array]",CK="[object Int32Array]",_K="[object Float32Array]",OK="[object Float64Array]";function zK(r,e){return Na(r,void 0,r,new Map,e)}function Na(r,e,t,i=new Map,s=void 0){const n=s?.(r,e,t,i);if(n!=null)return n;if(y0(r))return r;if(i.has(r))return i.get(r);if(Array.isArray(r)){const o=new Array(r.length);i.set(r,o);for(let a=0;a<r.length;a++)o[a]=Na(r[a],a,t,i,s);return Object.hasOwn(r,"index")&&(o.index=r.index),Object.hasOwn(r,"input")&&(o.input=r.input),o}if(r instanceof Date)return new Date(r.getTime());if(r instanceof RegExp){const o=new RegExp(r.source,r.flags);return o.lastIndex=r.lastIndex,o}if(r instanceof Map){const o=new Map;i.set(r,o);for(const[a,u]of r)o.set(a,Na(u,a,t,i,s));return o}if(r instanceof Set){const o=new Set;i.set(r,o);for(const a of r)o.add(Na(a,void 0,t,i,s));return o}if(typeof Buffer<"u"&&Buffer.isBuffer(r))return r.subarray();if(w0(r)){const o=new(Object.getPrototypeOf(r)).constructor(r.length);i.set(r,o);for(let a=0;a<r.length;a++)o[a]=Na(r[a],a,t,i,s);return o}if(r instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&r instanceof SharedArrayBuffer)return r.slice(0);if(r instanceof DataView){const o=new DataView(r.buffer.slice(0),r.byteOffset,r.byteLength);return i.set(r,o),Kn(o,r,t,i,s),o}if(typeof File<"u"&&r instanceof File){const o=new File([r],r.name,{type:r.type});return i.set(r,o),Kn(o,r,t,i,s),o}if(r instanceof Blob){const o=new Blob([r],{type:r.type});return i.set(r,o),Kn(o,r,t,i,s),o}if(r instanceof Error){const o=new r.constructor;return i.set(r,o),o.message=r.message,o.name=r.name,o.stack=r.stack,o.cause=r.cause,Kn(o,r,t,i,s),o}if(typeof r=="object"&&LK(r)){const o=Object.create(Object.getPrototypeOf(r));return i.set(r,o),Kn(o,r,t,i,s),o}return r}function Kn(r,e,t=r,i,s){const n=[...Object.keys(e),...D2(e)];for(let o=0;o<n.length;o++){const a=n[o],u=Object.getOwnPropertyDescriptor(r,a);(u==null||u.writable)&&(r[a]=Na(e[a],a,t,i,s))}}function LK(r){switch(A2(r)){case j2:case NK:case vK:case DK:case S2:case mK:case _K:case OK:case jK:case xK:case CK:case bK:case T2:case IK:case yK:case MK:case E2:case wK:case AK:case EK:case TK:case SK:return!0;default:return!1}}function PK(r,e){return zK(r,(t,i,s,n)=>{if(typeof r=="object")switch(Object.prototype.toString.call(r)){case T2:case E2:case S2:{const o=new r.constructor(r?.valueOf());return Kn(o,r),o}case j2:{const o={};return Kn(o,r),o.length=r.length,o[Symbol.iterator]=r[Symbol.iterator],o}default:return}})}function e1(r){return PK(r)}function t1(r){return r!==null&&typeof r=="object"&&A2(r)==="[object Arguments]"}function kK(r){return w0(r)}function UK(r){if(typeof r!="object"||r==null)return!1;if(Object.getPrototypeOf(r)===null)return!0;if(Object.prototype.toString.call(r)!=="[object Object]"){const t=r[Symbol.toStringTag];return t==null||!Object.getOwnPropertyDescriptor(r,Symbol.toStringTag)?.writable?!1:r.toString()===`[object ${t}]`}let e=r;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(r)===e}function RK(r,...e){const t=e.slice(0,-1),i=e[e.length-1];let s=r;for(let n=0;n<t.length;n++){const o=t[n];s=Mg(s,o,i,new Map)}return s}function Mg(r,e,t,i){if(y0(r)&&(r=Object(r)),e==null||typeof e!="object")return r;if(i.has(e))return gK(i.get(e));if(i.set(e,r),Array.isArray(e)){e=e.slice();for(let n=0;n<e.length;n++)e[n]=e[n]??void 0}const s=[...Object.keys(e),...D2(e)];for(let n=0;n<s.length;n++){const o=s[n];let a=e[o],u=r[o];if(t1(a)&&(a={...a}),t1(u)&&(u={...u}),typeof Buffer<"u"&&Buffer.isBuffer(a)&&(a=e1(a)),Array.isArray(a))if(typeof u=="object"&&u!=null){const l=[],h=Reflect.ownKeys(u);for(let f=0;f<h.length;f++){const w=h[f];l[w]=u[w]}u=l}else u=[];const c=t(u,a,o,r,e,i);c!=null?r[o]=c:Array.isArray(a)||XM(u)&&XM(a)?r[o]=Mg(u,a,t,i):u==null&&UK(a)?r[o]=Mg({},a,t,i):u==null&&kK(a)?r[o]=e1(a):(u===void 0||a!==void 0)&&(r[o]=a)}return r}function $K(r,...e){return RK(r,...e,pK)}var FK=Object.defineProperty,BK=Object.defineProperties,YK=Object.getOwnPropertyDescriptors,r1=Object.getOwnPropertySymbols,QK=Object.prototype.hasOwnProperty,VK=Object.prototype.propertyIsEnumerable,i1=(r,e,t)=>e in r?FK(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Xl=(r,e)=>{for(var t in e||(e={}))QK.call(e,t)&&i1(r,t,e[t]);if(r1)for(var t of r1(e))VK.call(e,t)&&i1(r,t,e[t]);return r},WK=(r,e)=>BK(r,YK(e));function Ei(r,e,t){var i;const s=Aa(r);return((i=e.rpcMap)==null?void 0:i[s.reference])||`${I2}?chainId=${s.namespace}:${s.reference}&projectId=${t}`}function Eo(r){return r.includes(":")?r.split(":")[1]:r}function x2(r){return r.map(e=>`${e.split(":")[0]}:${e.split(":")[1]}`)}function qK(r,e){const t=Object.keys(e.namespaces).filter(s=>s.includes(r));if(!t.length)return[];const i=[];return t.forEach(s=>{const n=e.namespaces[s].accounts;i.push(...n)}),i}function sp(r={},e={}){const t=s1(r),i=s1(e);return $K(t,i)}function s1(r){var e,t,i,s;const n={};if(!Uu(r))return n;for(const[o,a]of Object.entries(r)){const u=f0(o)?[o]:a.chains,c=a.methods||[],l=a.events||[],h=a.rpcMap||{},f=qc(o);n[f]=WK(Xl(Xl({},n[f]),a),{chains:fh(u,(e=n[f])==null?void 0:e.chains),methods:fh(c,(t=n[f])==null?void 0:t.methods),events:fh(l,(i=n[f])==null?void 0:i.events),rpcMap:Xl(Xl({},h),(s=n[f])==null?void 0:s.rpcMap)})}return n}function ZK(r){return r.includes(":")?r.split(":")[2]:r}function n1(r){const e={};for(const[t,i]of Object.entries(r)){const s=i.methods||[],n=i.events||[],o=i.accounts||[],a=f0(t)?[t]:i.chains?i.chains:x2(i.accounts);e[t]={chains:a,methods:s,events:n,accounts:o}}return e}function np(r){return typeof r=="number"?r:r.includes("0x")?parseInt(r,16):(r=r.includes(":")?r.split(":")[1]:r,isNaN(Number(r))?r:Number(r))}const C2={},ke=r=>C2[r],op=(r,e)=>{C2[r]=e};var HK=Object.defineProperty,GK=(r,e,t)=>e in r?HK(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Xo=(r,e,t)=>GK(r,typeof e!="symbol"?e+"":e,t);class KK{constructor(e){Xo(this,"name","polkadot"),Xo(this,"client"),Xo(this,"httpProviders"),Xo(this,"events"),Xo(this,"namespace"),Xo(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getAccounts(){const e=this.namespace.accounts;return e?e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2])||[]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=Eo(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var JK=Object.defineProperty,XK=Object.defineProperties,eJ=Object.getOwnPropertyDescriptors,o1=Object.getOwnPropertySymbols,tJ=Object.prototype.hasOwnProperty,rJ=Object.prototype.propertyIsEnumerable,Ng=(r,e,t)=>e in r?JK(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,a1=(r,e)=>{for(var t in e||(e={}))tJ.call(e,t)&&Ng(r,t,e[t]);if(o1)for(var t of o1(e))rJ.call(e,t)&&Ng(r,t,e[t]);return r},c1=(r,e)=>XK(r,eJ(e)),ea=(r,e,t)=>Ng(r,typeof e!="symbol"?e+"":e,t);class iJ{constructor(e){ea(this,"name","eip155"),ea(this,"client"),ea(this,"chainId"),ea(this,"namespace"),ea(this,"httpProviders"),ea(this,"events"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain())}async request(e){switch(e.request.method){case"eth_requestAccounts":return this.getAccounts();case"eth_accounts":return this.getAccounts();case"wallet_switchEthereumChain":return await this.handleSwitchChain(e);case"eth_chainId":return parseInt(this.getDefaultChain());case"wallet_getCapabilities":return await this.getCapabilities(e);case"wallet_getCallsStatus":return await this.getCallStatus(e)}return this.namespace.methods.includes(e.request.method)?await this.client.request(e):this.getHttpProvider().request(e.request)}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(parseInt(e),t),this.chainId=parseInt(e),this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId.toString();if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}createHttpProvider(e,t){const i=t||Ei(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=parseInt(Eo(t));e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}getHttpProvider(){const e=this.chainId,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}async handleSwitchChain(e){var t,i;let s=e.request.params?(t=e.request.params[0])==null?void 0:t.chainId:"0x0";s=s.startsWith("0x")?s:`0x${s}`;const n=parseInt(s,16);if(this.isChainApproved(n))this.setDefaultChain(`${n}`);else if(this.namespace.methods.includes("wallet_switchEthereumChain"))await this.client.request({topic:e.topic,request:{method:e.request.method,params:[{chainId:s}]},chainId:(i=this.namespace.chains)==null?void 0:i[0]}),this.setDefaultChain(`${n}`);else throw new Error(`Failed to switch to chain 'eip155:${n}'. The chain is not approved or the wallet does not support 'wallet_switchEthereumChain' method.`);return null}isChainApproved(e){return this.namespace.chains.includes(`${this.name}:${e}`)}async getCapabilities(e){var t,i,s;const n=(i=(t=e.request)==null?void 0:t.params)==null?void 0:i[0];if(!n)throw new Error("Missing address parameter in `wallet_getCapabilities` request");const o=this.client.session.get(e.topic),a=((s=o?.sessionProperties)==null?void 0:s.capabilities)||{};if(a!=null&&a[n])return a?.[n];const u=await this.client.request(e);try{await this.client.session.update(e.topic,{sessionProperties:c1(a1({},o.sessionProperties||{}),{capabilities:c1(a1({},a||{}),{[n]:u})})})}catch(c){console.warn("Failed to update session with capabilities",c)}return u}async getCallStatus(e){var t,i;const s=this.client.session.get(e.topic),n=(t=s.sessionProperties)==null?void 0:t.bundler_name;if(n){const a=this.getBundlerUrl(e.chainId,n);try{return await this.getUserOperationReceipt(a,e)}catch(u){console.warn("Failed to fetch call status from bundler",u,a)}}const o=(i=s.sessionProperties)==null?void 0:i.bundler_url;if(o)try{return await this.getUserOperationReceipt(o,e)}catch(a){console.warn("Failed to fetch call status from custom bundler",a,o)}if(this.namespace.methods.includes(e.request.method))return await this.client.request(e);throw new Error("Fetching call status not approved by the wallet.")}async getUserOperationReceipt(e,t){var i;const s=new URL(e),n=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Kr("eth_getUserOperationReceipt",[(i=t.request.params)==null?void 0:i[0]]))});if(!n.ok)throw new Error(`Failed to fetch user operation receipt - ${n.status}`);return await n.json()}getBundlerUrl(e,t){return`${fK}?projectId=${this.client.core.projectId}&chainId=${e}&bundler=${t}`}}var sJ=Object.defineProperty,nJ=(r,e,t)=>e in r?sJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ta=(r,e,t)=>nJ(r,typeof e!="symbol"?e+"":e,t);class oJ{constructor(e){ta(this,"name","solana"),ta(this,"client"),ta(this,"httpProviders"),ta(this,"events"),ta(this,"namespace"),ta(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=Eo(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var aJ=Object.defineProperty,cJ=(r,e,t)=>e in r?aJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ra=(r,e,t)=>cJ(r,typeof e!="symbol"?e+"":e,t);class uJ{constructor(e){ra(this,"name","cosmos"),ra(this,"client"),ra(this,"httpProviders"),ra(this,"events"),ra(this,"namespace"),ra(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=Eo(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var lJ=Object.defineProperty,hJ=(r,e,t)=>e in r?lJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ia=(r,e,t)=>hJ(r,typeof e!="symbol"?e+"":e,t);class dJ{constructor(e){ia(this,"name","algorand"),ia(this,"client"),ia(this,"httpProviders"),ia(this,"events"),ia(this,"namespace"),ia(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(!this.httpProviders[e]){const i=t||Ei(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;e[t]=this.createHttpProvider(t,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);return typeof i>"u"?void 0:new Ot(new ir(i,ke("disableProviderPing")))}}var fJ=Object.defineProperty,pJ=(r,e,t)=>e in r?fJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,sa=(r,e,t)=>pJ(r,typeof e!="symbol"?e+"":e,t);class gJ{constructor(e){sa(this,"name","cip34"),sa(this,"client"),sa(this,"httpProviders"),sa(this,"events"),sa(this,"namespace"),sa(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{const i=this.getCardanoRPCUrl(t),s=Eo(t);e[s]=this.createHttpProvider(s,i)}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}getCardanoRPCUrl(e){const t=this.namespace.rpcMap;if(t)return t[e]}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||this.getCardanoRPCUrl(e);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var yJ=Object.defineProperty,wJ=(r,e,t)=>e in r?yJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,na=(r,e,t)=>wJ(r,typeof e!="symbol"?e+"":e,t);class mJ{constructor(e){na(this,"name","elrond"),na(this,"client"),na(this,"httpProviders"),na(this,"events"),na(this,"namespace"),na(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=Eo(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var bJ=Object.defineProperty,MJ=(r,e,t)=>e in r?bJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,oa=(r,e,t)=>MJ(r,typeof e!="symbol"?e+"":e,t);class NJ{constructor(e){oa(this,"name","multiversx"),oa(this,"client"),oa(this,"httpProviders"),oa(this,"events"),oa(this,"namespace"),oa(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;const s=Eo(t);e[s]=this.createHttpProvider(s,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var vJ=Object.defineProperty,IJ=(r,e,t)=>e in r?vJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,aa=(r,e,t)=>IJ(r,typeof e!="symbol"?e+"":e,t);class DJ{constructor(e){aa(this,"name","near"),aa(this,"client"),aa(this,"httpProviders"),aa(this,"events"),aa(this,"namespace"),aa(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const i=t||Ei(`${this.name}:${e}`,this.namespace);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2])||[]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{var i;e[t]=this.createHttpProvider(t,(i=this.namespace.rpcMap)==null?void 0:i[t])}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace);return typeof i>"u"?void 0:new Ot(new ir(i,ke("disableProviderPing")))}}var AJ=Object.defineProperty,EJ=(r,e,t)=>e in r?AJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ca=(r,e,t)=>EJ(r,typeof e!="symbol"?e+"":e,t);class TJ{constructor(e){ca(this,"name","tezos"),ca(this,"client"),ca(this,"httpProviders"),ca(this,"events"),ca(this,"namespace"),ca(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const i=t||Ei(`${this.name}:${e}`,this.namespace);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2])||[]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach(t=>{e[t]=this.createHttpProvider(t)}),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace);return typeof i>"u"?void 0:new Ot(new ir(i))}}var SJ=Object.defineProperty,jJ=(r,e,t)=>e in r?SJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ua=(r,e,t)=>jJ(r,typeof e!="symbol"?e+"":e,t);class xJ{constructor(e){ua(this,"name",ya),ua(this,"client"),ua(this,"httpProviders"),ua(this,"events"),ua(this,"namespace"),ua(this,"chainId"),this.namespace=e.namespace,this.events=ke("events"),this.client=ke("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace.chains=[...new Set((this.namespace.chains||[]).concat(e.chains||[]))],this.namespace.accounts=[...new Set((this.namespace.accounts||[]).concat(e.accounts||[]))],this.namespace.methods=[...new Set((this.namespace.methods||[]).concat(e.methods||[]))],this.namespace.events=[...new Set((this.namespace.events||[]).concat(e.events||[]))],this.httpProviders=this.createHttpProviders()}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider(e.chainId).request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(Wi.DEFAULT_CHAIN_CHANGED,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(t=>t.split(":")[1]===this.chainId.toString()).map(t=>t.split(":")[2]))]:[]}createHttpProviders(){var e,t;const i={};return(t=(e=this.namespace)==null?void 0:e.accounts)==null||t.forEach(s=>{const n=Aa(s);i[`${n.namespace}:${n.reference}`]=this.createHttpProvider(s)}),i}getHttpProvider(e){const t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ei(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new Ot(new ir(i,ke("disableProviderPing")))}}var CJ=Object.defineProperty,_J=Object.defineProperties,OJ=Object.getOwnPropertyDescriptors,u1=Object.getOwnPropertySymbols,zJ=Object.prototype.hasOwnProperty,LJ=Object.prototype.propertyIsEnumerable,vg=(r,e,t)=>e in r?CJ(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,eh=(r,e)=>{for(var t in e||(e={}))zJ.call(e,t)&&vg(r,t,e[t]);if(u1)for(var t of u1(e))LJ.call(e,t)&&vg(r,t,e[t]);return r},ap=(r,e)=>_J(r,OJ(e)),Pi=(r,e,t)=>vg(r,typeof e!="symbol"?e+"":e,t);let PJ=class _2{constructor(e){Pi(this,"client"),Pi(this,"namespaces"),Pi(this,"optionalNamespaces"),Pi(this,"sessionProperties"),Pi(this,"scopedProperties"),Pi(this,"events",new Fa),Pi(this,"rpcProviders",{}),Pi(this,"session"),Pi(this,"providerOpts"),Pi(this,"logger"),Pi(this,"uri"),Pi(this,"disableProviderPing",!1),this.providerOpts=e,this.logger=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:jn(Hs({level:e?.logger||JM})),this.disableProviderPing=e?.disableProviderPing||!1}static async init(e){const t=new _2(e);return await t.initialize(),t}async request(e,t,i){const[s,n]=this.validateChain(t);if(!this.session)throw new Error("Please call connect() before request()");return await this.getProvider(s).request({request:eh({},e),chainId:`${s}:${n}`,topic:this.session.topic,expiry:i})}sendAsync(e,t,i,s){const n=new Date().getTime();this.request(e,i,s).then(o=>t(null,Cn(n,o))).catch(o=>t(o,void 0))}async enable(){if(!this.client)throw new Error("Sign Client not initialized");return this.session||await this.connect({namespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties,scopedProperties:this.scopedProperties}),await this.requestAccounts()}async disconnect(){var e;if(!this.session)throw new Error("Please call connect() before enable()");await this.client.disconnect({topic:(e=this.session)==null?void 0:e.topic,reason:nt("USER_DISCONNECTED")}),await this.cleanup()}async connect(e){if(!this.client)throw new Error("Sign Client not initialized");if(this.setNamespaces(e),await this.cleanupPendingPairings(),!e.skipPairing)return await this.pair(e.pairingTopic)}async authenticate(e,t){if(!this.client)throw new Error("Sign Client not initialized");this.setNamespaces(e),await this.cleanupPendingPairings();const{uri:i,response:s}=await this.client.authenticate(e,t);i&&(this.uri=i,this.events.emit("display_uri",i));const n=await s();if(this.session=n.session,this.session){const o=n1(this.session.namespaces);this.namespaces=sp(this.namespaces,o),await this.persist("namespaces",this.namespaces),this.onConnect()}return n}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}removeListener(e,t){this.events.removeListener(e,t)}off(e,t){this.events.off(e,t)}get isWalletConnect(){return!0}async pair(e){const{uri:t,approval:i}=await this.client.connect({pairingTopic:e,requiredNamespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties,scopedProperties:this.scopedProperties});t&&(this.uri=t,this.events.emit("display_uri",t));const s=await i();this.session=s;const n=n1(s.namespaces);return this.namespaces=sp(this.namespaces,n),await this.persist("namespaces",this.namespaces),await this.persist("optionalNamespaces",this.optionalNamespaces),this.onConnect(),this.session}setDefaultChain(e,t){try{if(!this.session)return;const[i,s]=this.validateChain(e),n=this.getProvider(i);n.name===ya?n.setDefaultChain(`${i}:${s}`,t):n.setDefaultChain(s,t)}catch(i){if(!/Please call connect/.test(i.message))throw i}}async cleanupPendingPairings(e={}){this.logger.info("Cleaning up inactive pairings...");const t=this.client.pairing.getAll();if(po(t)){for(const i of t)e.deletePairings?this.client.core.expirer.set(i.topic,0):await this.client.core.relayer.subscriber.unsubscribe(i.topic);this.logger.info(`Inactive pairings cleared: ${t.length}`)}}abortPairingAttempt(){this.logger.warn("abortPairingAttempt is deprecated. This is now a no-op.")}async checkStorage(){this.namespaces=await this.getFromStore("namespaces")||{},this.optionalNamespaces=await this.getFromStore("optionalNamespaces")||{},this.session&&this.createProviders()}async initialize(){this.logger.trace("Initialized"),await this.createClient(),await this.checkStorage(),this.registerEventListeners()}async createClient(){var e,t;if(this.client=this.providerOpts.client||await uK.init({core:this.providerOpts.core,logger:this.providerOpts.logger||JM,relayUrl:this.providerOpts.relayUrl||lK,projectId:this.providerOpts.projectId,metadata:this.providerOpts.metadata,storageOptions:this.providerOpts.storageOptions,storage:this.providerOpts.storage,name:this.providerOpts.name,customStoragePrefix:this.providerOpts.customStoragePrefix,telemetryEnabled:this.providerOpts.telemetryEnabled}),this.providerOpts.session)try{this.session=this.client.session.get(this.providerOpts.session.topic)}catch(i){throw this.logger.error("Failed to get session",i),new Error(`The provided session: ${(t=(e=this.providerOpts)==null?void 0:e.session)==null?void 0:t.topic} doesn't exist in the Sign client`)}else{const i=this.client.session.getAll();this.session=i[0]}this.logger.trace("SignClient Initialized")}createProviders(){if(!this.client)throw new Error("Sign Client not initialized");if(!this.session)throw new Error("Session not initialized. Please call connect() before enable()");const e=[...new Set(Object.keys(this.session.namespaces).map(t=>qc(t)))];op("client",this.client),op("events",this.events),op("disableProviderPing",this.disableProviderPing),e.forEach(t=>{if(!this.session)return;const i=qK(t,this.session),s=x2(i),n=sp(this.namespaces,this.optionalNamespaces),o=ap(eh({},n[t]),{accounts:i,chains:s});switch(t){case"eip155":this.rpcProviders[t]=new iJ({namespace:o});break;case"algorand":this.rpcProviders[t]=new dJ({namespace:o});break;case"solana":this.rpcProviders[t]=new oJ({namespace:o});break;case"cosmos":this.rpcProviders[t]=new uJ({namespace:o});break;case"polkadot":this.rpcProviders[t]=new KK({namespace:o});break;case"cip34":this.rpcProviders[t]=new gJ({namespace:o});break;case"elrond":this.rpcProviders[t]=new mJ({namespace:o});break;case"multiversx":this.rpcProviders[t]=new NJ({namespace:o});break;case"near":this.rpcProviders[t]=new DJ({namespace:o});break;case"tezos":this.rpcProviders[t]=new TJ({namespace:o});break;default:this.rpcProviders[ya]?this.rpcProviders[ya].updateNamespace(o):this.rpcProviders[ya]=new xJ({namespace:o})}})}registerEventListeners(){if(typeof this.client>"u")throw new Error("Sign Client is not initialized");this.client.on("session_ping",e=>{var t;const{topic:i}=e;i===((t=this.session)==null?void 0:t.topic)&&this.events.emit("session_ping",e)}),this.client.on("session_event",e=>{var t;const{params:i,topic:s}=e;if(s!==((t=this.session)==null?void 0:t.topic))return;const{event:n}=i;if(n.name==="accountsChanged"){const o=n.data;o&&po(o)&&this.events.emit("accountsChanged",o.map(ZK))}else if(n.name==="chainChanged"){const o=i.chainId,a=i.event.data,u=qc(o),c=np(o)!==np(a)?`${u}:${np(a)}`:o;this.onChainChanged(c)}else this.events.emit(n.name,n.data);this.events.emit("session_event",e)}),this.client.on("session_update",({topic:e,params:t})=>{var i,s;if(e!==((i=this.session)==null?void 0:i.topic))return;const{namespaces:n}=t,o=(s=this.client)==null?void 0:s.session.get(e);this.session=ap(eh({},o),{namespaces:n}),this.onSessionUpdate(),this.events.emit("session_update",{topic:e,params:t})}),this.client.on("session_delete",async e=>{var t;e.topic===((t=this.session)==null?void 0:t.topic)&&(await this.cleanup(),this.events.emit("session_delete",e),this.events.emit("disconnect",ap(eh({},nt("USER_DISCONNECTED")),{data:e.topic})))}),this.on(Wi.DEFAULT_CHAIN_CHANGED,e=>{this.onChainChanged(e,!0)})}getProvider(e){return this.rpcProviders[e]||this.rpcProviders[ya]}onSessionUpdate(){Object.keys(this.rpcProviders).forEach(e=>{var t;this.getProvider(e).updateNamespace((t=this.session)==null?void 0:t.namespaces[e])})}setNamespaces(e){const{namespaces:t,optionalNamespaces:i,sessionProperties:s,scopedProperties:n}=e;t&&Object.keys(t).length&&(this.namespaces=t),i&&Object.keys(i).length&&(this.optionalNamespaces=i),this.sessionProperties=s,this.scopedProperties=n}validateChain(e){const[t,i]=e?.split(":")||["",""];if(!this.namespaces||!Object.keys(this.namespaces).length)return[t,i];if(t&&!Object.keys(this.namespaces||{}).map(o=>qc(o)).includes(t))throw new Error(`Namespace '${t}' is not configured. Please call connect() first with namespace config.`);if(t&&i)return[t,i];const s=qc(Object.keys(this.namespaces)[0]),n=this.rpcProviders[s].getDefaultChain();return[s,n]}async requestAccounts(){const[e]=this.validateChain();return await this.getProvider(e).requestAccounts()}async onChainChanged(e,t=!1){if(!this.namespaces)return;const[i,s]=this.validateChain(e);s&&(t||this.getProvider(i).setDefaultChain(s),this.namespaces[i]?this.namespaces[i].defaultChain=s:this.namespaces[`${i}:${s}`]?this.namespaces[`${i}:${s}`].defaultChain=s:this.namespaces[`${i}:${s}`]={defaultChain:s},this.events.emit("chainChanged",s),await this.persist("namespaces",this.namespaces))}onConnect(){this.createProviders(),this.events.emit("connect",{session:this.session})}async cleanup(){this.namespaces=void 0,this.optionalNamespaces=void 0,this.sessionProperties=void 0,await this.deleteFromStore("namespaces"),await this.deleteFromStore("optionalNamespaces"),await this.deleteFromStore("sessionProperties"),this.session=void 0,await this.cleanupPendingPairings({deletePairings:!0}),await this.cleanupStorage()}async persist(e,t){var i;const s=((i=this.session)==null?void 0:i.topic)||"";await this.client.core.storage.setItem(`${Jl}/${e}${s}`,t)}async getFromStore(e){var t;const i=((t=this.session)==null?void 0:t.topic)||"";return await this.client.core.storage.getItem(`${Jl}/${e}${i}`)}async deleteFromStore(e){var t;const i=((t=this.session)==null?void 0:t.topic)||"";await this.client.core.storage.removeItem(`${Jl}/${e}${i}`)}async cleanupStorage(){var e;try{if(((e=this.client)==null?void 0:e.session.length)>0)return;const t=await this.client.core.storage.getKeys();for(const i of t)i.startsWith(Jl)&&await this.client.core.storage.removeItem(i)}catch(t){this.logger.warn("Failed to cleanup storage",t)}}};const ln={EIP155:"eip155",CONNECTOR_TYPE_WALLET_CONNECT:"WALLET_CONNECT",CONNECTOR_TYPE_INJECTED:"INJECTED",CONNECTOR_TYPE_ANNOUNCED:"ANNOUNCED"},Rh={NetworkImageIds:{1:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",42161:"3bff954d-5cb0-47a0-9a23-d20192e74600",43114:"30c46e53-e989-45fb-4549-be3bd4eb3b00",56:"93564157-2e8e-4ce7-81df-b264dbee9b00",250:"06b26297-fe0c-4733-5d6b-ffa5498aac00",10:"ab9c186a-c52f-464b-2906-ca59d760a400",137:"41d04d42-da3b-4453-8506-668cc0727900",5e3:"e86fae9b-b770-4eea-e520-150e12c81100",295:"6a97d510-cac8-4e58-c7ce-e8681b044c00",11155111:"e909ea0a-f92a-4512-c8fc-748044ea6800",84532:"a18a7ecd-e307-4360-4746-283182228e00",1301:"4eeea7ef-0014-4649-5d1d-07271a80f600",130:"2257980a-3463-48c6-cbac-a42d2a956e00",10143:"0a728e83-bacb-46db-7844-948f05434900",100:"02b53f6a-e3d4-479e-1cb4-21178987d100",9001:"f926ff41-260d-4028-635e-91913fc28e00",324:"b310f07f-4ef7-49f3-7073-2a0a39685800",314:"5a73b3dd-af74-424e-cae0-0de859ee9400",4689:"34e68754-e536-40da-c153-6ef2e7188a00",1088:"3897a66d-40b9-4833-162f-a2c90531c900",1284:"161038da-44ae-4ec7-1208-0ea569454b00",1285:"f1d73bb6-5450-4e18-38f7-fb6484264a00",7777777:"845c60df-d429-4991-e687-91ae45791600",42220:"ab781bbc-ccc6-418d-d32d-789b15da1f00",8453:"7289c336-3981-4081-c5f4-efc26ac64a00",1313161554:"3ff73439-a619-4894-9262-4470c773a100",2020:"b8101fc0-9c19-4b6f-ec65-f6dfff106e00",2021:"b8101fc0-9c19-4b6f-ec65-f6dfff106e00",80094:"e329c2c9-59b0-4a02-83e4-212ff3779900","5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp":"a1b58899-f671-4276-6a5e-56ca5bd59700","4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z":"a1b58899-f671-4276-6a5e-56ca5bd59700",EtWTRABZaYq6iMfeYKouRu166VU2xqa1:"a1b58899-f671-4276-6a5e-56ca5bd59700","000000000019d6689c085ae165831e93":"0b4838db-0161-4ffe-022d-532bf03dba00","000000000933ea01ad0ee984209779ba":"39354064-d79b-420b-065d-f980c4b78200"},ConnectorImageIds:{[ce.CONNECTOR_ID.COINBASE]:"0c2840c3-5b04-4c44-9661-fbd4b49e1800",[ce.CONNECTOR_ID.COINBASE_SDK]:"0c2840c3-5b04-4c44-9661-fbd4b49e1800",[ce.CONNECTOR_ID.SAFE]:"461db637-8616-43ce-035a-d89b8a1d5800",[ce.CONNECTOR_ID.LEDGER]:"54a1aa77-d202-4f8d-0fb2-5d2bb6db0300",[ce.CONNECTOR_ID.WALLET_CONNECT]:"ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400",[ce.CONNECTOR_ID.INJECTED]:"07ba87ed-43aa-4adf-4540-9e6a2b9cae00"},ConnectorNamesMap:{[ce.CONNECTOR_ID.INJECTED]:"Browser Wallet",[ce.CONNECTOR_ID.WALLET_CONNECT]:"WalletConnect",[ce.CONNECTOR_ID.COINBASE]:"Coinbase",[ce.CONNECTOR_ID.COINBASE_SDK]:"Coinbase",[ce.CONNECTOR_ID.LEDGER]:"Ledger",[ce.CONNECTOR_ID.SAFE]:"Safe"}},O2={getCaipTokens(r){if(!r)return;const e={};return Object.entries(r).forEach(([t,i])=>{e[`${ln.EIP155}:${t}`]=i}),e},isLowerCaseMatch(r,e){return r?.toLowerCase()===e?.toLowerCase()}},th={UniversalProviderErrors:{UNAUTHORIZED_DOMAIN_NOT_ALLOWED:{message:"Unauthorized: origin not allowed",alertErrorKey:"INVALID_APP_CONFIGURATION"},JWT_VALIDATION_ERROR:{message:"JWT validation error: JWT Token is not yet valid",alertErrorKey:"JWT_TOKEN_NOT_VALID"},INVALID_KEY:{message:"Unauthorized: invalid key",alertErrorKey:"INVALID_PROJECT_ID"}},ALERT_ERRORS:{SWITCH_NETWORK_NOT_FOUND:{shortMessage:"Network Not Found",longMessage:"Network not found - please make sure it is included in 'networks' array in createAppKit function"},INVALID_APP_CONFIGURATION:{shortMessage:"Invalid App Configuration",longMessage:()=>`Origin ${kJ()?window.origin:"unknown"} not found on Allowlist - update configuration on cloud.reown.com`},SOCIALS_TIMEOUT:{shortMessage:"Invalid App Configuration",longMessage:()=>"There was an issue loading the embedded wallet. Please verify that your domain is allowed at cloud.reown.com"},JWT_TOKEN_NOT_VALID:{shortMessage:"Session Expired",longMessage:"Invalid session found on UniversalProvider - please check your time settings and connect again"},INVALID_PROJECT_ID:{shortMessage:"Invalid App Configuration",longMessage:"Invalid Project ID - update configuration"},PROJECT_ID_NOT_CONFIGURED:{shortMessage:"Project ID Not Configured",longMessage:"Project ID Not Configured - update configuration on cloud.reown.com"}}};function kJ(){return typeof window<"u"}const UJ={createLogger(r,e="error"){const t=Hs({level:e}),{logger:i}=xg({opts:t});return i.error=(...s)=>{for(const n of s)if(n instanceof Error){r(n,...s);return}r(void 0,...s)},i}},RJ="rpc.walletconnect.org";function $J(r,e){const t=new URL("https://rpc.walletconnect.org/v1/");return t.searchParams.set("chainId",r),t.searchParams.set("projectId",e),t.toString()}const cp=["near:mainnet","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","eip155:1101","eip155:56","eip155:42161","eip155:7777777","eip155:59144","eip155:324","solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1","eip155:5000","solana:4sgjmw1sunhzsxgspuhpqldx6wiyjntz","eip155:80084","eip155:5003","eip155:100","eip155:8453","eip155:42220","eip155:1313161555","eip155:17000","eip155:1","eip155:300","eip155:1313161554","eip155:1329","eip155:84532","eip155:421614","eip155:11155111","eip155:8217","eip155:43114","solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z","eip155:999999999","eip155:11155420","eip155:80002","eip155:97","eip155:43113","eip155:137","eip155:10","eip155:1301","bip122:000000000019d6689c085ae165831e93","bip122:000000000933ea01ad0ee984209779ba"],wa={extendRpcUrlWithProjectId(r,e){let t=!1;try{t=new URL(r).host===RJ}catch{t=!1}if(t){const i=new URL(r);return i.searchParams.has("projectId")||i.searchParams.set("projectId",e),i.toString()}return r},isCaipNetwork(r){return"chainNamespace"in r&&"caipNetworkId"in r},getChainNamespace(r){return this.isCaipNetwork(r)?r.chainNamespace:ce.CHAIN.EVM},getCaipNetworkId(r){return this.isCaipNetwork(r)?r.caipNetworkId:`${ce.CHAIN.EVM}:${r.id}`},getDefaultRpcUrl(r,e,t){const i=r.rpcUrls?.default?.http?.[0];return cp.includes(e)?$J(e,t):i||""},extendCaipNetwork(r,{customNetworkImageUrls:e,projectId:t,customRpcUrls:i}){const s=this.getChainNamespace(r),n=this.getCaipNetworkId(r),o=r.rpcUrls.default.http?.[0],a=this.getDefaultRpcUrl(r,n,t),u=r?.rpcUrls?.chainDefault?.http?.[0]||o,c=i?.[n]?.map(f=>f.url)||[],l=[...c,a],h=[...c];return u&&!h.includes(u)&&h.push(u),{...r,chainNamespace:s,caipNetworkId:n,assets:{imageId:Rh.NetworkImageIds[r.id],imageUrl:e?.[r.id]},rpcUrls:{...r.rpcUrls,default:{http:l},chainDefault:{http:h}}}},extendCaipNetworks(r,{customNetworkImageUrls:e,projectId:t,customRpcUrls:i}){return r.map(s=>wa.extendCaipNetwork(s,{customNetworkImageUrls:e,customRpcUrls:i,projectId:t}))},getViemTransport(r,e,t){const i=[];if(t?.forEach(s=>{i.push(Rf(s.url,s.config))}),cp.includes(r.caipNetworkId)){const s=this.getDefaultRpcUrl(r,r.caipNetworkId,e);i.push(Rf(s,{fetchOptions:{headers:{"Content-Type":"text/plain"}}}))}return Sb(i)},extendWagmiTransports(r,e,t){if(cp.includes(r.caipNetworkId)){const i=this.getDefaultRpcUrl(r,r.caipNetworkId,e);return Sb([t,Rf(i)])}return t},getUnsupportedNetwork(r){return{id:r.split(":")[1],caipNetworkId:r,name:ce.UNSUPPORTED_NETWORK_NAME,chainNamespace:r.split(":")[0],nativeCurrency:{name:"",decimals:0,symbol:""},rpcUrls:{default:{http:[]}}}},getCaipNetworkFromStorage(r){const e=ae.getActiveCaipNetworkId(),t=R.getAllRequestedCaipNetworks(),i=Array.from(R.state.chains?.keys()||[]),s=e?.split(":")[0],n=s?i.includes(s):!1,o=t?.find(u=>u.caipNetworkId===e);return n&&!o&&e?this.getUnsupportedNetwork(e):o||r||t?.[0]}},$h={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0},si=Qt({providers:{...$h},providerIds:{...$h}}),Bt={state:si,subscribeKey(r,e){return Si(si,r,e)},subscribe(r){return Jr(si,()=>{r(si)})},subscribeProviders(r){return Jr(si.providers,()=>r(si.providers))},setProvider(r,e){e&&(si.providers[r]=uo(e))},getProvider(r){return si.providers[r]},setProviderId(r,e){e&&(si.providerIds[r]=e)},getProviderId(r){if(r)return si.providerIds[r]},reset(){si.providers={...$h},si.providerIds={...$h}},resetChain(r){si.providers[r]=void 0,si.providerIds[r]=void 0}},FJ={VIEW_DIRECTION:{Next:"next",Prev:"prev"},DEFAULT_CONNECT_METHOD_ORDER:["email","social","wallet"],ANIMATION_DURATIONS:{HeaderText:120,ModalHeight:150,ViewTransition:150}},Ig={filterOutDuplicatesByRDNS(r){const e=J.state.enableEIP6963?ye.state.connectors:[],t=ae.getRecentWallets(),i=e.map(a=>a.info?.rdns).filter(Boolean),s=t.map(a=>a.rdns).filter(Boolean),n=i.concat(s);if(n.includes("io.metamask.mobile")&&we.isMobile()){const a=n.indexOf("io.metamask.mobile");n[a]="io.metamask"}return r.filter(a=>!n.includes(String(a?.rdns)))},filterOutDuplicatesByIds(r){const e=ye.state.connectors.filter(a=>a.type==="ANNOUNCED"||a.type==="INJECTED"),t=ae.getRecentWallets(),i=e.map(a=>a.explorerId),s=t.map(a=>a.id),n=i.concat(s);return r.filter(a=>!n.includes(a?.id))},filterOutDuplicateWallets(r){const e=this.filterOutDuplicatesByRDNS(r);return this.filterOutDuplicatesByIds(e)},markWalletsAsInstalled(r){const{connectors:e}=ye.state,t=e.filter(n=>n.type==="ANNOUNCED").reduce((n,o)=>(o.info?.rdns&&(n[o.info.rdns]=!0),n),{});return r.map(n=>({...n,installed:!!n.rdns&&!!t[n.rdns??""]})).sort((n,o)=>Number(o.installed)-Number(n.installed))},getConnectOrderMethod(r,e){const t=r?.connectMethodsOrder||J.state.features?.connectMethodsOrder,i=e||ye.state.connectors;if(t)return t;const{injected:s,announced:n}=mh.getConnectorsByType(i,be.state.recommended,be.state.featured),o=s.filter(mh.showConnector),a=n.filter(mh.showConnector);return o.length||a.length?["wallet","email","social"]:FJ.DEFAULT_CONNECT_METHOD_ORDER}},mh={getConnectorsByType(r,e,t){const{customWallets:i}=J.state,s=ae.getRecentWallets(),n=Ig.filterOutDuplicateWallets(e),o=Ig.filterOutDuplicateWallets(t),a=r.filter(h=>h.type==="MULTI_CHAIN"),u=r.filter(h=>h.type==="ANNOUNCED"),c=r.filter(h=>h.type==="INJECTED"),l=r.filter(h=>h.type==="EXTERNAL");return{custom:i,recent:s,external:l,multiChain:a,announced:u,injected:c,recommended:n,featured:o}},showConnector(r){const e=r.info?.rdns,t=!!e&&be.state.excludedWallets.some(s=>s.rdns===e),i=!!r.name&&be.state.excludedWallets.some(s=>O2.isLowerCaseMatch(s.name,r.name));return!(r.type==="INJECTED"&&(!we.isMobile()&&r.name==="Browser Wallet"||!e&&!mt.checkInstalled()||t||i)||r.type==="ANNOUNCED"&&(t||i))},getIsConnectedWithWC(){return Array.from(R.state.chains.values()).some(t=>ye.getConnectorId(t.namespace)===ce.CONNECTOR_ID.WALLET_CONNECT)},getConnectorTypeOrder({recommended:r,featured:e,custom:t,recent:i,announced:s,injected:n,multiChain:o,external:a,overriddenConnectors:u=J.state.features?.connectorTypeOrder??[]}){const c=mh.getIsConnectedWithWC(),f=[{type:"walletConnect",isEnabled:J.state.enableWalletConnect&&!c},{type:"recent",isEnabled:i.length>0},{type:"injected",isEnabled:[...n,...s,...o].length>0},{type:"featured",isEnabled:e.length>0},{type:"custom",isEnabled:t&&t.length>0},{type:"external",isEnabled:a.length>0},{type:"recommended",isEnabled:r.length>0}].filter(E=>E.isEnabled),w=new Set(f.map(E=>E.type)),g=u.filter(E=>w.has(E)).map(E=>({type:E,isEnabled:!0})),m=f.filter(({type:E})=>!g.some(({type:D})=>D===E));return Array.from(new Set([...g,...m].map(({type:E})=>E)))}};const bh=globalThis,m0=bh.ShadowRoot&&(bh.ShadyCSS===void 0||bh.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,b0=Symbol(),l1=new WeakMap;let z2=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==b0)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const t=this.t;if(m0&&e===void 0){const i=t!==void 0&&t.length===1;i&&(e=l1.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&l1.set(t,e))}return e}toString(){return this.cssText}};const ki=r=>new z2(typeof r=="string"?r:r+"",void 0,b0),Ea=(r,...e)=>{const t=r.length===1?r[0]:e.reduce((i,s,n)=>i+(o=>{if(o._$cssResult$===!0)return o.cssText;if(typeof o=="number")return o;throw Error("Value passed to 'css' function must be a 'css' function result: "+o+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+r[n+1],r[0]);return new z2(t,r,b0)},BJ=(r,e)=>{if(m0)r.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(const t of e){const i=document.createElement("style"),s=bh.litNonce;s!==void 0&&i.setAttribute("nonce",s),i.textContent=t.cssText,r.appendChild(i)}},h1=m0?r=>r:r=>r instanceof CSSStyleSheet?(e=>{let t="";for(const i of e.cssRules)t+=i.cssText;return ki(t)})(r):r;const{is:YJ,defineProperty:QJ,getOwnPropertyDescriptor:VJ,getOwnPropertyNames:WJ,getOwnPropertySymbols:qJ,getPrototypeOf:ZJ}=Object,wd=globalThis,d1=wd.trustedTypes,HJ=d1?d1.emptyScript:"",GJ=wd.reactiveElementPolyfillSupport,su=(r,e)=>r,Dg={toAttribute(r,e){switch(e){case Boolean:r=r?HJ:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,e){let t=r;switch(e){case Boolean:t=r!==null;break;case Number:t=r===null?null:Number(r);break;case Object:case Array:try{t=JSON.parse(r)}catch{t=null}}return t}},L2=(r,e)=>!YJ(r,e),f1={attribute:!0,type:String,converter:Dg,reflect:!1,useDefault:!1,hasChanged:L2};Symbol.metadata??=Symbol("metadata"),wd.litPropertyMetadata??=new WeakMap;let ma=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=f1){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){const i=Symbol(),s=this.getPropertyDescriptor(e,i,t);s!==void 0&&QJ(this.prototype,e,s)}}static getPropertyDescriptor(e,t,i){const{get:s,set:n}=VJ(this.prototype,e)??{get(){return this[t]},set(o){this[t]=o}};return{get:s,set(o){const a=s?.call(this);n?.call(this,o),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??f1}static _$Ei(){if(this.hasOwnProperty(su("elementProperties")))return;const e=ZJ(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(su("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(su("properties"))){const t=this.properties,i=[...WJ(t),...qJ(t)];for(const s of i)this.createProperty(s,t[s])}const e=this[Symbol.metadata];if(e!==null){const t=litPropertyMetadata.get(e);if(t!==void 0)for(const[i,s]of t)this.elementProperties.set(i,s)}this._$Eh=new Map;for(const[t,i]of this.elementProperties){const s=this._$Eu(t,i);s!==void 0&&this._$Eh.set(s,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const i=new Set(e.flat(1/0).reverse());for(const s of i)t.unshift(h1(s))}else e!==void 0&&t.push(h1(e));return t}static _$Eu(e,t){const i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return BJ(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){const i=this.constructor.elementProperties.get(e),s=this.constructor._$Eu(e,i);if(s!==void 0&&i.reflect===!0){const n=(i.converter?.toAttribute!==void 0?i.converter:Dg).toAttribute(t,i.type);this._$Em=e,n==null?this.removeAttribute(s):this.setAttribute(s,n),this._$Em=null}}_$AK(e,t){const i=this.constructor,s=i._$Eh.get(e);if(s!==void 0&&this._$Em!==s){const n=i.getPropertyOptions(s),o=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:Dg;this._$Em=s;const a=o.fromAttribute(t,n.type);this[s]=a??this._$Ej?.get(s)??a,this._$Em=null}}requestUpdate(e,t,i,s=!1,n){if(e!==void 0){const o=this.constructor;if(s===!1&&(n=this[e]),i??=o.getPropertyOptions(e),!((i.hasChanged??L2)(n,t)||i.useDefault&&i.reflect&&n===this._$Ej?.get(e)&&!this.hasAttribute(o._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:s,wrapped:n},o){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,o??t??this[e]),n!==!0||o!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),s===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[s,n]of this._$Ep)this[s]=n;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[s,n]of i){const{wrapped:o}=n,a=this[s];o!==!0||this._$AL.has(s)||a===void 0||this.C(s,void 0,n,a)}}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};ma.elementStyles=[],ma.shadowRootOptions={mode:"open"},ma[su("elementProperties")]=new Map,ma[su("finalized")]=new Map,GJ?.({ReactiveElement:ma}),(wd.reactiveElementVersions??=[]).push("2.1.2");const M0=globalThis,p1=r=>r,Fh=M0.trustedTypes,g1=Fh?Fh.createPolicy("lit-html",{createHTML:r=>r}):void 0,P2="$lit$",yn=`lit$${Math.random().toFixed(9).slice(2)}$`,k2="?"+yn,KJ=`<${k2}>`,go=document,Ru=()=>go.createComment(""),$u=r=>r===null||typeof r!="object"&&typeof r!="function",N0=Array.isArray,JJ=r=>N0(r)||typeof r?.[Symbol.iterator]=="function",up=`[
34
+ \f\r]`,$c=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,y1=/-->/g,w1=/>/g,Qn=RegExp(`>|${up}(?:([^\\s"'>=/]+)(${up}*=${up}*(?:[^
35
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),m1=/'/g,b1=/"/g,U2=/^(?:script|style|textarea|title)$/i,R2=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),Lte=R2(1),Pte=R2(2),Ra=Symbol.for("lit-noChange"),Tr=Symbol.for("lit-nothing"),M1=new WeakMap,to=go.createTreeWalker(go,129);function $2(r,e){if(!N0(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return g1!==void 0?g1.createHTML(e):e}const XJ=(r,e)=>{const t=r.length-1,i=[];let s,n=e===2?"<svg>":e===3?"<math>":"",o=$c;for(let a=0;a<t;a++){const u=r[a];let c,l,h=-1,f=0;for(;f<u.length&&(o.lastIndex=f,l=o.exec(u),l!==null);)f=o.lastIndex,o===$c?l[1]==="!--"?o=y1:l[1]!==void 0?o=w1:l[2]!==void 0?(U2.test(l[2])&&(s=RegExp("</"+l[2],"g")),o=Qn):l[3]!==void 0&&(o=Qn):o===Qn?l[0]===">"?(o=s??$c,h=-1):l[1]===void 0?h=-2:(h=o.lastIndex-l[2].length,c=l[1],o=l[3]===void 0?Qn:l[3]==='"'?b1:m1):o===b1||o===m1?o=Qn:o===y1||o===w1?o=$c:(o=Qn,s=void 0);const w=o===Qn&&r[a+1].startsWith("/>")?" ":"";n+=o===$c?u+KJ:h>=0?(i.push(c),u.slice(0,h)+P2+u.slice(h)+yn+w):u+yn+(h===-2?a:w)}return[$2(r,n+(r[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),i]};class Fu{constructor({strings:e,_$litType$:t},i){let s;this.parts=[];let n=0,o=0;const a=e.length-1,u=this.parts,[c,l]=XJ(e,t);if(this.el=Fu.createElement(c,i),to.currentNode=this.el.content,t===2||t===3){const h=this.el.content.firstChild;h.replaceWith(...h.childNodes)}for(;(s=to.nextNode())!==null&&u.length<a;){if(s.nodeType===1){if(s.hasAttributes())for(const h of s.getAttributeNames())if(h.endsWith(P2)){const f=l[o++],w=s.getAttribute(h).split(yn),g=/([.?@])?(.*)/.exec(f);u.push({type:1,index:n,name:g[2],strings:w,ctor:g[1]==="."?tX:g[1]==="?"?rX:g[1]==="@"?iX:md}),s.removeAttribute(h)}else h.startsWith(yn)&&(u.push({type:6,index:n}),s.removeAttribute(h));if(U2.test(s.tagName)){const h=s.textContent.split(yn),f=h.length-1;if(f>0){s.textContent=Fh?Fh.emptyScript:"";for(let w=0;w<f;w++)s.append(h[w],Ru()),to.nextNode(),u.push({type:2,index:++n});s.append(h[f],Ru())}}}else if(s.nodeType===8)if(s.data===k2)u.push({type:2,index:n});else{let h=-1;for(;(h=s.data.indexOf(yn,h+1))!==-1;)u.push({type:7,index:n}),h+=yn.length-1}n++}}static createElement(e,t){const i=go.createElement("template");return i.innerHTML=e,i}}function $a(r,e,t=r,i){if(e===Ra)return e;let s=i!==void 0?t._$Co?.[i]:t._$Cl;const n=$u(e)?void 0:e._$litDirective$;return s?.constructor!==n&&(s?._$AO?.(!1),n===void 0?s=void 0:(s=new n(r),s._$AT(r,t,i)),i!==void 0?(t._$Co??=[])[i]=s:t._$Cl=s),s!==void 0&&(e=$a(r,s._$AS(r,e.values),s,i)),e}class eX{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:i}=this._$AD,s=(e?.creationScope??go).importNode(t,!0);to.currentNode=s;let n=to.nextNode(),o=0,a=0,u=i[0];for(;u!==void 0;){if(o===u.index){let c;u.type===2?c=new cl(n,n.nextSibling,this,e):u.type===1?c=new u.ctor(n,u.name,u.strings,this,e):u.type===6&&(c=new sX(n,this,e)),this._$AV.push(c),u=i[++a]}o!==u?.index&&(n=to.nextNode(),o++)}return to.currentNode=go,s}p(e){let t=0;for(const i of this._$AV)i!==void 0&&(i.strings!==void 0?(i._$AI(e,i,t),t+=i.strings.length-2):i._$AI(e[t])),t++}}class cl{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,i,s){this.type=2,this._$AH=Tr,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=i,this.options=s,this._$Cv=s?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return t!==void 0&&e?.nodeType===11&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=$a(this,e,t),$u(e)?e===Tr||e==null||e===""?(this._$AH!==Tr&&this._$AR(),this._$AH=Tr):e!==this._$AH&&e!==Ra&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):JJ(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==Tr&&$u(this._$AH)?this._$AA.nextSibling.data=e:this.T(go.createTextNode(e)),this._$AH=e}$(e){const{values:t,_$litType$:i}=e,s=typeof i=="number"?this._$AC(e):(i.el===void 0&&(i.el=Fu.createElement($2(i.h,i.h[0]),this.options)),i);if(this._$AH?._$AD===s)this._$AH.p(t);else{const n=new eX(s,this),o=n.u(this.options);n.p(t),this.T(o),this._$AH=n}}_$AC(e){let t=M1.get(e.strings);return t===void 0&&M1.set(e.strings,t=new Fu(e)),t}k(e){N0(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let i,s=0;for(const n of e)s===t.length?t.push(i=new cl(this.O(Ru()),this.O(Ru()),this,this.options)):i=t[s],i._$AI(n),s++;s<t.length&&(this._$AR(i&&i._$AB.nextSibling,s),t.length=s)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){const i=p1(e).nextSibling;p1(e).remove(),e=i}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}}class md{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,i,s,n){this.type=1,this._$AH=Tr,this._$AN=void 0,this.element=e,this.name=t,this._$AM=s,this.options=n,i.length>2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=Tr}_$AI(e,t=this,i,s){const n=this.strings;let o=!1;if(n===void 0)e=$a(this,e,t,0),o=!$u(e)||e!==this._$AH&&e!==Ra,o&&(this._$AH=e);else{const a=e;let u,c;for(e=n[0],u=0;u<n.length-1;u++)c=$a(this,a[i+u],t,u),c===Ra&&(c=this._$AH[u]),o||=!$u(c)||c!==this._$AH[u],c===Tr?e=Tr:e!==Tr&&(e+=(c??"")+n[u+1]),this._$AH[u]=c}o&&!s&&this.j(e)}j(e){e===Tr?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class tX extends md{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===Tr?void 0:e}}class rX extends md{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==Tr)}}class iX extends md{constructor(e,t,i,s,n){super(e,t,i,s,n),this.type=5}_$AI(e,t=this){if((e=$a(this,e,t,0)??Tr)===Ra)return;const i=this._$AH,s=e===Tr&&i!==Tr||e.capture!==i.capture||e.once!==i.once||e.passive!==i.passive,n=e!==Tr&&(i===Tr||s);s&&this.element.removeEventListener(this.name,this,i),n&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class sX{constructor(e,t,i){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=i}get _$AU(){return this._$AM._$AU}_$AI(e){$a(this,e)}}const nX=M0.litHtmlPolyfillSupport;nX?.(Fu,cl),(M0.litHtmlVersions??=[]).push("3.3.2");const oX=(r,e,t)=>{const i=t?.renderBefore??e;let s=i._$litPart$;if(s===void 0){const n=t?.renderBefore??null;i._$litPart$=s=new cl(e.insertBefore(Ru(),n),n,void 0,t??{})}return s._$AI(r),s};const v0=globalThis;class Mh extends ma{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=oX(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ra}}Mh._$litElement$=!0,Mh.finalized=!0,v0.litElementHydrateSupport?.({LitElement:Mh});const aX=v0.litElementPolyfillSupport;aX?.({LitElement:Mh});(v0.litElementVersions??=[]).push("4.2.2");let nu,An,En;function kte(r,e){nu=document.createElement("style"),An=document.createElement("style"),En=document.createElement("style"),nu.textContent=Ta(r).core.cssText,An.textContent=Ta(r).dark.cssText,En.textContent=Ta(r).light.cssText,document.head.appendChild(nu),document.head.appendChild(An),document.head.appendChild(En),F2(e)}function F2(r){An&&En&&(r==="light"?(An.removeAttribute("media"),En.media="enabled"):(En.removeAttribute("media"),An.media="enabled"))}function cX(r){nu&&An&&En&&(nu.textContent=Ta(r).core.cssText,An.textContent=Ta(r).dark.cssText,En.textContent=Ta(r).light.cssText)}function Ta(r){return{core:Ea`
36
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
37
+ @keyframes w3m-shake {
38
+ 0% {
39
+ transform: scale(1) rotate(0deg);
40
+ }
41
+ 20% {
42
+ transform: scale(1) rotate(-1deg);
43
+ }
44
+ 40% {
45
+ transform: scale(1) rotate(1.5deg);
46
+ }
47
+ 60% {
48
+ transform: scale(1) rotate(-1.5deg);
49
+ }
50
+ 80% {
51
+ transform: scale(1) rotate(1deg);
52
+ }
53
+ 100% {
54
+ transform: scale(1) rotate(0deg);
55
+ }
56
+ }
57
+ @keyframes w3m-iframe-fade-out {
58
+ 0% {
59
+ opacity: 1;
60
+ }
61
+ 100% {
62
+ opacity: 0;
63
+ }
64
+ }
65
+ @keyframes w3m-iframe-zoom-in {
66
+ 0% {
67
+ transform: translateY(50px);
68
+ opacity: 0;
69
+ }
70
+ 100% {
71
+ transform: translateY(0px);
72
+ opacity: 1;
73
+ }
74
+ }
75
+ @keyframes w3m-iframe-zoom-in-mobile {
76
+ 0% {
77
+ transform: scale(0.95);
78
+ opacity: 0;
79
+ }
80
+ 100% {
81
+ transform: scale(1);
82
+ opacity: 1;
83
+ }
84
+ }
85
+ :root {
86
+ --w3m-modal-width: 360px;
87
+ --w3m-color-mix-strength: ${ki(r?.["--w3m-color-mix-strength"]?`${r["--w3m-color-mix-strength"]}%`:"0%")};
88
+ --w3m-font-family: ${ki(r?.["--w3m-font-family"]||"Inter, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;")};
89
+ --w3m-font-size-master: ${ki(r?.["--w3m-font-size-master"]||"10px")};
90
+ --w3m-border-radius-master: ${ki(r?.["--w3m-border-radius-master"]||"4px")};
91
+ --w3m-z-index: ${ki(r?.["--w3m-z-index"]||999)};
92
+
93
+ --wui-font-family: var(--w3m-font-family);
94
+
95
+ --wui-font-size-mini: calc(var(--w3m-font-size-master) * 0.8);
96
+ --wui-font-size-micro: var(--w3m-font-size-master);
97
+ --wui-font-size-tiny: calc(var(--w3m-font-size-master) * 1.2);
98
+ --wui-font-size-small: calc(var(--w3m-font-size-master) * 1.4);
99
+ --wui-font-size-paragraph: calc(var(--w3m-font-size-master) * 1.6);
100
+ --wui-font-size-medium: calc(var(--w3m-font-size-master) * 1.8);
101
+ --wui-font-size-large: calc(var(--w3m-font-size-master) * 2);
102
+ --wui-font-size-title-6: calc(var(--w3m-font-size-master) * 2.2);
103
+ --wui-font-size-medium-title: calc(var(--w3m-font-size-master) * 2.4);
104
+ --wui-font-size-2xl: calc(var(--w3m-font-size-master) * 4);
105
+
106
+ --wui-border-radius-5xs: var(--w3m-border-radius-master);
107
+ --wui-border-radius-4xs: calc(var(--w3m-border-radius-master) * 1.5);
108
+ --wui-border-radius-3xs: calc(var(--w3m-border-radius-master) * 2);
109
+ --wui-border-radius-xxs: calc(var(--w3m-border-radius-master) * 3);
110
+ --wui-border-radius-xs: calc(var(--w3m-border-radius-master) * 4);
111
+ --wui-border-radius-s: calc(var(--w3m-border-radius-master) * 5);
112
+ --wui-border-radius-m: calc(var(--w3m-border-radius-master) * 7);
113
+ --wui-border-radius-l: calc(var(--w3m-border-radius-master) * 9);
114
+ --wui-border-radius-3xl: calc(var(--w3m-border-radius-master) * 20);
115
+
116
+ --wui-font-weight-light: 400;
117
+ --wui-font-weight-regular: 500;
118
+ --wui-font-weight-medium: 600;
119
+ --wui-font-weight-bold: 700;
120
+
121
+ --wui-letter-spacing-2xl: -1.6px;
122
+ --wui-letter-spacing-medium-title: -0.96px;
123
+ --wui-letter-spacing-title-6: -0.88px;
124
+ --wui-letter-spacing-large: -0.8px;
125
+ --wui-letter-spacing-medium: -0.72px;
126
+ --wui-letter-spacing-paragraph: -0.64px;
127
+ --wui-letter-spacing-small: -0.56px;
128
+ --wui-letter-spacing-tiny: -0.48px;
129
+ --wui-letter-spacing-micro: -0.2px;
130
+ --wui-letter-spacing-mini: -0.16px;
131
+
132
+ --wui-spacing-0: 0px;
133
+ --wui-spacing-4xs: 2px;
134
+ --wui-spacing-3xs: 4px;
135
+ --wui-spacing-xxs: 6px;
136
+ --wui-spacing-2xs: 7px;
137
+ --wui-spacing-xs: 8px;
138
+ --wui-spacing-1xs: 10px;
139
+ --wui-spacing-s: 12px;
140
+ --wui-spacing-m: 14px;
141
+ --wui-spacing-l: 16px;
142
+ --wui-spacing-2l: 18px;
143
+ --wui-spacing-xl: 20px;
144
+ --wui-spacing-xxl: 24px;
145
+ --wui-spacing-2xl: 32px;
146
+ --wui-spacing-3xl: 40px;
147
+ --wui-spacing-4xl: 90px;
148
+ --wui-spacing-5xl: 95px;
149
+
150
+ --wui-icon-box-size-xxs: 14px;
151
+ --wui-icon-box-size-xs: 20px;
152
+ --wui-icon-box-size-sm: 24px;
153
+ --wui-icon-box-size-md: 32px;
154
+ --wui-icon-box-size-mdl: 36px;
155
+ --wui-icon-box-size-lg: 40px;
156
+ --wui-icon-box-size-2lg: 48px;
157
+ --wui-icon-box-size-xl: 64px;
158
+
159
+ --wui-icon-size-inherit: inherit;
160
+ --wui-icon-size-xxs: 10px;
161
+ --wui-icon-size-xs: 12px;
162
+ --wui-icon-size-sm: 14px;
163
+ --wui-icon-size-md: 16px;
164
+ --wui-icon-size-mdl: 18px;
165
+ --wui-icon-size-lg: 20px;
166
+ --wui-icon-size-xl: 24px;
167
+ --wui-icon-size-xxl: 28px;
168
+
169
+ --wui-wallet-image-size-inherit: inherit;
170
+ --wui-wallet-image-size-sm: 40px;
171
+ --wui-wallet-image-size-md: 56px;
172
+ --wui-wallet-image-size-lg: 80px;
173
+
174
+ --wui-visual-size-size-inherit: inherit;
175
+ --wui-visual-size-sm: 40px;
176
+ --wui-visual-size-md: 55px;
177
+ --wui-visual-size-lg: 80px;
178
+
179
+ --wui-box-size-md: 100px;
180
+ --wui-box-size-lg: 120px;
181
+
182
+ --wui-ease-out-power-2: cubic-bezier(0, 0, 0.22, 1);
183
+ --wui-ease-out-power-1: cubic-bezier(0, 0, 0.55, 1);
184
+
185
+ --wui-ease-in-power-3: cubic-bezier(0.66, 0, 1, 1);
186
+ --wui-ease-in-power-2: cubic-bezier(0.45, 0, 1, 1);
187
+ --wui-ease-in-power-1: cubic-bezier(0.3, 0, 1, 1);
188
+
189
+ --wui-ease-inout-power-1: cubic-bezier(0.45, 0, 0.55, 1);
190
+
191
+ --wui-duration-lg: 200ms;
192
+ --wui-duration-md: 125ms;
193
+ --wui-duration-sm: 75ms;
194
+
195
+ --wui-path-network-sm: path(
196
+ 'M15.4 2.1a5.21 5.21 0 0 1 5.2 0l11.61 6.7a5.21 5.21 0 0 1 2.61 4.52v13.4c0 1.87-1 3.59-2.6 4.52l-11.61 6.7c-1.62.93-3.6.93-5.22 0l-11.6-6.7a5.21 5.21 0 0 1-2.61-4.51v-13.4c0-1.87 1-3.6 2.6-4.52L15.4 2.1Z'
197
+ );
198
+
199
+ --wui-path-network-md: path(
200
+ 'M43.4605 10.7248L28.0485 1.61089C25.5438 0.129705 22.4562 0.129705 19.9515 1.61088L4.53951 10.7248C2.03626 12.2051 0.5 14.9365 0.5 17.886V36.1139C0.5 39.0635 2.03626 41.7949 4.53951 43.2752L19.9515 52.3891C22.4562 53.8703 25.5438 53.8703 28.0485 52.3891L43.4605 43.2752C45.9637 41.7949 47.5 39.0635 47.5 36.114V17.8861C47.5 14.9365 45.9637 12.2051 43.4605 10.7248Z'
201
+ );
202
+
203
+ --wui-path-network-lg: path(
204
+ 'M78.3244 18.926L50.1808 2.45078C45.7376 -0.150261 40.2624 -0.150262 35.8192 2.45078L7.6756 18.926C3.23322 21.5266 0.5 26.3301 0.5 31.5248V64.4752C0.5 69.6699 3.23322 74.4734 7.6756 77.074L35.8192 93.5492C40.2624 96.1503 45.7376 96.1503 50.1808 93.5492L78.3244 77.074C82.7668 74.4734 85.5 69.6699 85.5 64.4752V31.5248C85.5 26.3301 82.7668 21.5266 78.3244 18.926Z'
205
+ );
206
+
207
+ --wui-width-network-sm: 36px;
208
+ --wui-width-network-md: 48px;
209
+ --wui-width-network-lg: 86px;
210
+
211
+ --wui-height-network-sm: 40px;
212
+ --wui-height-network-md: 54px;
213
+ --wui-height-network-lg: 96px;
214
+
215
+ --wui-icon-size-network-xs: 12px;
216
+ --wui-icon-size-network-sm: 16px;
217
+ --wui-icon-size-network-md: 24px;
218
+ --wui-icon-size-network-lg: 42px;
219
+
220
+ --wui-color-inherit: inherit;
221
+
222
+ --wui-color-inverse-100: #fff;
223
+ --wui-color-inverse-000: #000;
224
+
225
+ --wui-cover: rgba(20, 20, 20, 0.8);
226
+
227
+ --wui-color-modal-bg: var(--wui-color-modal-bg-base);
228
+
229
+ --wui-color-accent-100: var(--wui-color-accent-base-100);
230
+ --wui-color-accent-090: var(--wui-color-accent-base-090);
231
+ --wui-color-accent-080: var(--wui-color-accent-base-080);
232
+
233
+ --wui-color-success-100: var(--wui-color-success-base-100);
234
+ --wui-color-success-125: var(--wui-color-success-base-125);
235
+
236
+ --wui-color-warning-100: var(--wui-color-warning-base-100);
237
+
238
+ --wui-color-error-100: var(--wui-color-error-base-100);
239
+ --wui-color-error-125: var(--wui-color-error-base-125);
240
+
241
+ --wui-color-blue-100: var(--wui-color-blue-base-100);
242
+ --wui-color-blue-90: var(--wui-color-blue-base-90);
243
+
244
+ --wui-icon-box-bg-error-100: var(--wui-icon-box-bg-error-base-100);
245
+ --wui-icon-box-bg-blue-100: var(--wui-icon-box-bg-blue-base-100);
246
+ --wui-icon-box-bg-success-100: var(--wui-icon-box-bg-success-base-100);
247
+ --wui-icon-box-bg-inverse-100: var(--wui-icon-box-bg-inverse-base-100);
248
+
249
+ --wui-all-wallets-bg-100: var(--wui-all-wallets-bg-100);
250
+
251
+ --wui-avatar-border: var(--wui-avatar-border-base);
252
+
253
+ --wui-thumbnail-border: var(--wui-thumbnail-border-base);
254
+
255
+ --wui-wallet-button-bg: var(--wui-wallet-button-bg-base);
256
+
257
+ --wui-box-shadow-blue: var(--wui-color-accent-glass-020);
258
+ }
259
+
260
+ @supports (background: color-mix(in srgb, white 50%, black)) {
261
+ :root {
262
+ --wui-color-modal-bg: color-mix(
263
+ in srgb,
264
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
265
+ var(--wui-color-modal-bg-base)
266
+ );
267
+
268
+ --wui-box-shadow-blue: color-mix(in srgb, var(--wui-color-accent-100) 20%, transparent);
269
+
270
+ --wui-color-accent-100: color-mix(
271
+ in srgb,
272
+ var(--wui-color-accent-base-100) 100%,
273
+ transparent
274
+ );
275
+ --wui-color-accent-090: color-mix(
276
+ in srgb,
277
+ var(--wui-color-accent-base-100) 90%,
278
+ transparent
279
+ );
280
+ --wui-color-accent-080: color-mix(
281
+ in srgb,
282
+ var(--wui-color-accent-base-100) 80%,
283
+ transparent
284
+ );
285
+ --wui-color-accent-glass-090: color-mix(
286
+ in srgb,
287
+ var(--wui-color-accent-base-100) 90%,
288
+ transparent
289
+ );
290
+ --wui-color-accent-glass-080: color-mix(
291
+ in srgb,
292
+ var(--wui-color-accent-base-100) 80%,
293
+ transparent
294
+ );
295
+ --wui-color-accent-glass-020: color-mix(
296
+ in srgb,
297
+ var(--wui-color-accent-base-100) 20%,
298
+ transparent
299
+ );
300
+ --wui-color-accent-glass-015: color-mix(
301
+ in srgb,
302
+ var(--wui-color-accent-base-100) 15%,
303
+ transparent
304
+ );
305
+ --wui-color-accent-glass-010: color-mix(
306
+ in srgb,
307
+ var(--wui-color-accent-base-100) 10%,
308
+ transparent
309
+ );
310
+ --wui-color-accent-glass-005: color-mix(
311
+ in srgb,
312
+ var(--wui-color-accent-base-100) 5%,
313
+ transparent
314
+ );
315
+ --wui-color-accent-002: color-mix(
316
+ in srgb,
317
+ var(--wui-color-accent-base-100) 2%,
318
+ transparent
319
+ );
320
+
321
+ --wui-color-fg-100: color-mix(
322
+ in srgb,
323
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
324
+ var(--wui-color-fg-100)
325
+ );
326
+ --wui-color-fg-125: color-mix(
327
+ in srgb,
328
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
329
+ var(--wui-color-fg-125)
330
+ );
331
+ --wui-color-fg-150: color-mix(
332
+ in srgb,
333
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
334
+ var(--wui-color-fg-150)
335
+ );
336
+ --wui-color-fg-175: color-mix(
337
+ in srgb,
338
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
339
+ var(--wui-color-fg-175)
340
+ );
341
+ --wui-color-fg-200: color-mix(
342
+ in srgb,
343
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
344
+ var(--wui-color-fg-200)
345
+ );
346
+ --wui-color-fg-225: color-mix(
347
+ in srgb,
348
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
349
+ var(--wui-color-fg-225)
350
+ );
351
+ --wui-color-fg-250: color-mix(
352
+ in srgb,
353
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
354
+ var(--wui-color-fg-250)
355
+ );
356
+ --wui-color-fg-275: color-mix(
357
+ in srgb,
358
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
359
+ var(--wui-color-fg-275)
360
+ );
361
+ --wui-color-fg-300: color-mix(
362
+ in srgb,
363
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
364
+ var(--wui-color-fg-300)
365
+ );
366
+ --wui-color-fg-325: color-mix(
367
+ in srgb,
368
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
369
+ var(--wui-color-fg-325)
370
+ );
371
+ --wui-color-fg-350: color-mix(
372
+ in srgb,
373
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
374
+ var(--wui-color-fg-350)
375
+ );
376
+
377
+ --wui-color-bg-100: color-mix(
378
+ in srgb,
379
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
380
+ var(--wui-color-bg-100)
381
+ );
382
+ --wui-color-bg-125: color-mix(
383
+ in srgb,
384
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
385
+ var(--wui-color-bg-125)
386
+ );
387
+ --wui-color-bg-150: color-mix(
388
+ in srgb,
389
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
390
+ var(--wui-color-bg-150)
391
+ );
392
+ --wui-color-bg-175: color-mix(
393
+ in srgb,
394
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
395
+ var(--wui-color-bg-175)
396
+ );
397
+ --wui-color-bg-200: color-mix(
398
+ in srgb,
399
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
400
+ var(--wui-color-bg-200)
401
+ );
402
+ --wui-color-bg-225: color-mix(
403
+ in srgb,
404
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
405
+ var(--wui-color-bg-225)
406
+ );
407
+ --wui-color-bg-250: color-mix(
408
+ in srgb,
409
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
410
+ var(--wui-color-bg-250)
411
+ );
412
+ --wui-color-bg-275: color-mix(
413
+ in srgb,
414
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
415
+ var(--wui-color-bg-275)
416
+ );
417
+ --wui-color-bg-300: color-mix(
418
+ in srgb,
419
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
420
+ var(--wui-color-bg-300)
421
+ );
422
+ --wui-color-bg-325: color-mix(
423
+ in srgb,
424
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
425
+ var(--wui-color-bg-325)
426
+ );
427
+ --wui-color-bg-350: color-mix(
428
+ in srgb,
429
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
430
+ var(--wui-color-bg-350)
431
+ );
432
+
433
+ --wui-color-success-100: color-mix(
434
+ in srgb,
435
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
436
+ var(--wui-color-success-base-100)
437
+ );
438
+ --wui-color-success-125: color-mix(
439
+ in srgb,
440
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
441
+ var(--wui-color-success-base-125)
442
+ );
443
+
444
+ --wui-color-warning-100: color-mix(
445
+ in srgb,
446
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
447
+ var(--wui-color-warning-base-100)
448
+ );
449
+
450
+ --wui-color-error-100: color-mix(
451
+ in srgb,
452
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
453
+ var(--wui-color-error-base-100)
454
+ );
455
+ --wui-color-blue-100: color-mix(
456
+ in srgb,
457
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
458
+ var(--wui-color-blue-base-100)
459
+ );
460
+ --wui-color-blue-90: color-mix(
461
+ in srgb,
462
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
463
+ var(--wui-color-blue-base-90)
464
+ );
465
+ --wui-color-error-125: color-mix(
466
+ in srgb,
467
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
468
+ var(--wui-color-error-base-125)
469
+ );
470
+
471
+ --wui-icon-box-bg-error-100: color-mix(
472
+ in srgb,
473
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
474
+ var(--wui-icon-box-bg-error-base-100)
475
+ );
476
+ --wui-icon-box-bg-accent-100: color-mix(
477
+ in srgb,
478
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
479
+ var(--wui-icon-box-bg-blue-base-100)
480
+ );
481
+ --wui-icon-box-bg-success-100: color-mix(
482
+ in srgb,
483
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
484
+ var(--wui-icon-box-bg-success-base-100)
485
+ );
486
+ --wui-icon-box-bg-inverse-100: color-mix(
487
+ in srgb,
488
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
489
+ var(--wui-icon-box-bg-inverse-base-100)
490
+ );
491
+
492
+ --wui-all-wallets-bg-100: color-mix(
493
+ in srgb,
494
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
495
+ var(--wui-all-wallets-bg-100)
496
+ );
497
+
498
+ --wui-avatar-border: color-mix(
499
+ in srgb,
500
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
501
+ var(--wui-avatar-border-base)
502
+ );
503
+
504
+ --wui-thumbnail-border: color-mix(
505
+ in srgb,
506
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
507
+ var(--wui-thumbnail-border-base)
508
+ );
509
+
510
+ --wui-wallet-button-bg: color-mix(
511
+ in srgb,
512
+ var(--w3m-color-mix) var(--w3m-color-mix-strength),
513
+ var(--wui-wallet-button-bg-base)
514
+ );
515
+ }
516
+ }
517
+ `,light:Ea`
518
+ :root {
519
+ --w3m-color-mix: ${ki(r?.["--w3m-color-mix"]||"#fff")};
520
+ --w3m-accent: ${ki(bn(r,"dark")["--w3m-accent"])};
521
+ --w3m-default: #fff;
522
+
523
+ --wui-color-modal-bg-base: ${ki(bn(r,"dark")["--w3m-background"])};
524
+ --wui-color-accent-base-100: var(--w3m-accent);
525
+
526
+ --wui-color-blueberry-100: hsla(230, 100%, 67%, 1);
527
+ --wui-color-blueberry-090: hsla(231, 76%, 61%, 1);
528
+ --wui-color-blueberry-080: hsla(230, 59%, 55%, 1);
529
+ --wui-color-blueberry-050: hsla(231, 100%, 70%, 0.1);
530
+
531
+ --wui-color-fg-100: #e4e7e7;
532
+ --wui-color-fg-125: #d0d5d5;
533
+ --wui-color-fg-150: #a8b1b1;
534
+ --wui-color-fg-175: #a8b0b0;
535
+ --wui-color-fg-200: #949e9e;
536
+ --wui-color-fg-225: #868f8f;
537
+ --wui-color-fg-250: #788080;
538
+ --wui-color-fg-275: #788181;
539
+ --wui-color-fg-300: #6e7777;
540
+ --wui-color-fg-325: #9a9a9a;
541
+ --wui-color-fg-350: #363636;
542
+
543
+ --wui-color-bg-100: #141414;
544
+ --wui-color-bg-125: #191a1a;
545
+ --wui-color-bg-150: #1e1f1f;
546
+ --wui-color-bg-175: #222525;
547
+ --wui-color-bg-200: #272a2a;
548
+ --wui-color-bg-225: #2c3030;
549
+ --wui-color-bg-250: #313535;
550
+ --wui-color-bg-275: #363b3b;
551
+ --wui-color-bg-300: #3b4040;
552
+ --wui-color-bg-325: #252525;
553
+ --wui-color-bg-350: #ffffff;
554
+
555
+ --wui-color-success-base-100: #26d962;
556
+ --wui-color-success-base-125: #30a46b;
557
+
558
+ --wui-color-warning-base-100: #f3a13f;
559
+
560
+ --wui-color-error-base-100: #f25a67;
561
+ --wui-color-error-base-125: #df4a34;
562
+
563
+ --wui-color-blue-base-100: rgba(102, 125, 255, 1);
564
+ --wui-color-blue-base-90: rgba(102, 125, 255, 0.9);
565
+
566
+ --wui-color-success-glass-001: rgba(38, 217, 98, 0.01);
567
+ --wui-color-success-glass-002: rgba(38, 217, 98, 0.02);
568
+ --wui-color-success-glass-005: rgba(38, 217, 98, 0.05);
569
+ --wui-color-success-glass-010: rgba(38, 217, 98, 0.1);
570
+ --wui-color-success-glass-015: rgba(38, 217, 98, 0.15);
571
+ --wui-color-success-glass-020: rgba(38, 217, 98, 0.2);
572
+ --wui-color-success-glass-025: rgba(38, 217, 98, 0.25);
573
+ --wui-color-success-glass-030: rgba(38, 217, 98, 0.3);
574
+ --wui-color-success-glass-060: rgba(38, 217, 98, 0.6);
575
+ --wui-color-success-glass-080: rgba(38, 217, 98, 0.8);
576
+
577
+ --wui-color-success-glass-reown-020: rgba(48, 164, 107, 0.2);
578
+
579
+ --wui-color-warning-glass-reown-020: rgba(243, 161, 63, 0.2);
580
+
581
+ --wui-color-error-glass-001: rgba(242, 90, 103, 0.01);
582
+ --wui-color-error-glass-002: rgba(242, 90, 103, 0.02);
583
+ --wui-color-error-glass-005: rgba(242, 90, 103, 0.05);
584
+ --wui-color-error-glass-010: rgba(242, 90, 103, 0.1);
585
+ --wui-color-error-glass-015: rgba(242, 90, 103, 0.15);
586
+ --wui-color-error-glass-020: rgba(242, 90, 103, 0.2);
587
+ --wui-color-error-glass-025: rgba(242, 90, 103, 0.25);
588
+ --wui-color-error-glass-030: rgba(242, 90, 103, 0.3);
589
+ --wui-color-error-glass-060: rgba(242, 90, 103, 0.6);
590
+ --wui-color-error-glass-080: rgba(242, 90, 103, 0.8);
591
+
592
+ --wui-color-error-glass-reown-020: rgba(223, 74, 52, 0.2);
593
+
594
+ --wui-color-gray-glass-001: rgba(255, 255, 255, 0.01);
595
+ --wui-color-gray-glass-002: rgba(255, 255, 255, 0.02);
596
+ --wui-color-gray-glass-005: rgba(255, 255, 255, 0.05);
597
+ --wui-color-gray-glass-010: rgba(255, 255, 255, 0.1);
598
+ --wui-color-gray-glass-015: rgba(255, 255, 255, 0.15);
599
+ --wui-color-gray-glass-020: rgba(255, 255, 255, 0.2);
600
+ --wui-color-gray-glass-025: rgba(255, 255, 255, 0.25);
601
+ --wui-color-gray-glass-030: rgba(255, 255, 255, 0.3);
602
+ --wui-color-gray-glass-060: rgba(255, 255, 255, 0.6);
603
+ --wui-color-gray-glass-080: rgba(255, 255, 255, 0.8);
604
+ --wui-color-gray-glass-090: rgba(255, 255, 255, 0.9);
605
+
606
+ --wui-color-dark-glass-100: rgba(42, 42, 42, 1);
607
+
608
+ --wui-icon-box-bg-error-base-100: #3c2426;
609
+ --wui-icon-box-bg-blue-base-100: #20303f;
610
+ --wui-icon-box-bg-success-base-100: #1f3a28;
611
+ --wui-icon-box-bg-inverse-base-100: #243240;
612
+
613
+ --wui-all-wallets-bg-100: #222b35;
614
+
615
+ --wui-avatar-border-base: #252525;
616
+
617
+ --wui-thumbnail-border-base: #252525;
618
+
619
+ --wui-wallet-button-bg-base: var(--wui-color-bg-125);
620
+
621
+ --w3m-card-embedded-shadow-color: rgb(17 17 18 / 25%);
622
+ }
623
+ `,dark:Ea`
624
+ :root {
625
+ --w3m-color-mix: ${ki(r?.["--w3m-color-mix"]||"#000")};
626
+ --w3m-accent: ${ki(bn(r,"light")["--w3m-accent"])};
627
+ --w3m-default: #000;
628
+
629
+ --wui-color-modal-bg-base: ${ki(bn(r,"light")["--w3m-background"])};
630
+ --wui-color-accent-base-100: var(--w3m-accent);
631
+
632
+ --wui-color-blueberry-100: hsla(231, 100%, 70%, 1);
633
+ --wui-color-blueberry-090: hsla(231, 97%, 72%, 1);
634
+ --wui-color-blueberry-080: hsla(231, 92%, 74%, 1);
635
+
636
+ --wui-color-fg-100: #141414;
637
+ --wui-color-fg-125: #2d3131;
638
+ --wui-color-fg-150: #474d4d;
639
+ --wui-color-fg-175: #636d6d;
640
+ --wui-color-fg-200: #798686;
641
+ --wui-color-fg-225: #828f8f;
642
+ --wui-color-fg-250: #8b9797;
643
+ --wui-color-fg-275: #95a0a0;
644
+ --wui-color-fg-300: #9ea9a9;
645
+ --wui-color-fg-325: #9a9a9a;
646
+ --wui-color-fg-350: #d0d0d0;
647
+
648
+ --wui-color-bg-100: #ffffff;
649
+ --wui-color-bg-125: #f5fafa;
650
+ --wui-color-bg-150: #f3f8f8;
651
+ --wui-color-bg-175: #eef4f4;
652
+ --wui-color-bg-200: #eaf1f1;
653
+ --wui-color-bg-225: #e5eded;
654
+ --wui-color-bg-250: #e1e9e9;
655
+ --wui-color-bg-275: #dce7e7;
656
+ --wui-color-bg-300: #d8e3e3;
657
+ --wui-color-bg-325: #f3f3f3;
658
+ --wui-color-bg-350: #202020;
659
+
660
+ --wui-color-success-base-100: #26b562;
661
+ --wui-color-success-base-125: #30a46b;
662
+
663
+ --wui-color-warning-base-100: #f3a13f;
664
+
665
+ --wui-color-error-base-100: #f05142;
666
+ --wui-color-error-base-125: #df4a34;
667
+
668
+ --wui-color-blue-base-100: rgba(102, 125, 255, 1);
669
+ --wui-color-blue-base-90: rgba(102, 125, 255, 0.9);
670
+
671
+ --wui-color-success-glass-001: rgba(38, 181, 98, 0.01);
672
+ --wui-color-success-glass-002: rgba(38, 181, 98, 0.02);
673
+ --wui-color-success-glass-005: rgba(38, 181, 98, 0.05);
674
+ --wui-color-success-glass-010: rgba(38, 181, 98, 0.1);
675
+ --wui-color-success-glass-015: rgba(38, 181, 98, 0.15);
676
+ --wui-color-success-glass-020: rgba(38, 181, 98, 0.2);
677
+ --wui-color-success-glass-025: rgba(38, 181, 98, 0.25);
678
+ --wui-color-success-glass-030: rgba(38, 181, 98, 0.3);
679
+ --wui-color-success-glass-060: rgba(38, 181, 98, 0.6);
680
+ --wui-color-success-glass-080: rgba(38, 181, 98, 0.8);
681
+
682
+ --wui-color-success-glass-reown-020: rgba(48, 164, 107, 0.2);
683
+
684
+ --wui-color-warning-glass-reown-020: rgba(243, 161, 63, 0.2);
685
+
686
+ --wui-color-error-glass-001: rgba(240, 81, 66, 0.01);
687
+ --wui-color-error-glass-002: rgba(240, 81, 66, 0.02);
688
+ --wui-color-error-glass-005: rgba(240, 81, 66, 0.05);
689
+ --wui-color-error-glass-010: rgba(240, 81, 66, 0.1);
690
+ --wui-color-error-glass-015: rgba(240, 81, 66, 0.15);
691
+ --wui-color-error-glass-020: rgba(240, 81, 66, 0.2);
692
+ --wui-color-error-glass-025: rgba(240, 81, 66, 0.25);
693
+ --wui-color-error-glass-030: rgba(240, 81, 66, 0.3);
694
+ --wui-color-error-glass-060: rgba(240, 81, 66, 0.6);
695
+ --wui-color-error-glass-080: rgba(240, 81, 66, 0.8);
696
+
697
+ --wui-color-error-glass-reown-020: rgba(223, 74, 52, 0.2);
698
+
699
+ --wui-icon-box-bg-error-base-100: #f4dfdd;
700
+ --wui-icon-box-bg-blue-base-100: #d9ecfb;
701
+ --wui-icon-box-bg-success-base-100: #daf0e4;
702
+ --wui-icon-box-bg-inverse-base-100: #dcecfc;
703
+
704
+ --wui-all-wallets-bg-100: #e8f1fa;
705
+
706
+ --wui-avatar-border-base: #f3f4f4;
707
+
708
+ --wui-thumbnail-border-base: #eaefef;
709
+
710
+ --wui-wallet-button-bg-base: var(--wui-color-bg-125);
711
+
712
+ --wui-color-gray-glass-001: rgba(0, 0, 0, 0.01);
713
+ --wui-color-gray-glass-002: rgba(0, 0, 0, 0.02);
714
+ --wui-color-gray-glass-005: rgba(0, 0, 0, 0.05);
715
+ --wui-color-gray-glass-010: rgba(0, 0, 0, 0.1);
716
+ --wui-color-gray-glass-015: rgba(0, 0, 0, 0.15);
717
+ --wui-color-gray-glass-020: rgba(0, 0, 0, 0.2);
718
+ --wui-color-gray-glass-025: rgba(0, 0, 0, 0.25);
719
+ --wui-color-gray-glass-030: rgba(0, 0, 0, 0.3);
720
+ --wui-color-gray-glass-060: rgba(0, 0, 0, 0.6);
721
+ --wui-color-gray-glass-080: rgba(0, 0, 0, 0.8);
722
+ --wui-color-gray-glass-090: rgba(0, 0, 0, 0.9);
723
+
724
+ --wui-color-dark-glass-100: rgba(233, 233, 233, 1);
725
+
726
+ --w3m-card-embedded-shadow-color: rgb(224 225 233 / 25%);
727
+ }
728
+ `}}const Ute=Ea`
729
+ *,
730
+ *::after,
731
+ *::before,
732
+ :host {
733
+ margin: 0;
734
+ padding: 0;
735
+ box-sizing: border-box;
736
+ font-style: normal;
737
+ text-rendering: optimizeSpeed;
738
+ -webkit-font-smoothing: antialiased;
739
+ -moz-osx-font-smoothing: grayscale;
740
+ -webkit-tap-highlight-color: transparent;
741
+ font-family: var(--wui-font-family);
742
+ backface-visibility: hidden;
743
+ }
744
+ `,Rte=Ea`
745
+ button,
746
+ a {
747
+ cursor: pointer;
748
+ display: flex;
749
+ justify-content: center;
750
+ align-items: center;
751
+ position: relative;
752
+ transition:
753
+ color var(--wui-duration-lg) var(--wui-ease-out-power-1),
754
+ background-color var(--wui-duration-lg) var(--wui-ease-out-power-1),
755
+ border var(--wui-duration-lg) var(--wui-ease-out-power-1),
756
+ border-radius var(--wui-duration-lg) var(--wui-ease-out-power-1),
757
+ box-shadow var(--wui-duration-lg) var(--wui-ease-out-power-1);
758
+ will-change: background-color, color, border, box-shadow, border-radius;
759
+ outline: none;
760
+ border: none;
761
+ column-gap: var(--wui-spacing-3xs);
762
+ background-color: transparent;
763
+ text-decoration: none;
764
+ }
765
+
766
+ wui-flex {
767
+ transition: border-radius var(--wui-duration-lg) var(--wui-ease-out-power-1);
768
+ will-change: border-radius;
769
+ }
770
+
771
+ button:disabled > wui-wallet-image,
772
+ button:disabled > wui-all-wallets-image,
773
+ button:disabled > wui-network-image,
774
+ button:disabled > wui-image,
775
+ button:disabled > wui-transaction-visual,
776
+ button:disabled > wui-logo {
777
+ filter: grayscale(1);
778
+ }
779
+
780
+ @media (hover: hover) and (pointer: fine) {
781
+ button:hover:enabled {
782
+ background-color: var(--wui-color-gray-glass-005);
783
+ }
784
+
785
+ button:active:enabled {
786
+ background-color: var(--wui-color-gray-glass-010);
787
+ }
788
+ }
789
+
790
+ button:disabled > wui-icon-box {
791
+ opacity: 0.5;
792
+ }
793
+
794
+ input {
795
+ border: none;
796
+ outline: none;
797
+ appearance: none;
798
+ }
799
+ `,$te=Ea`
800
+ .wui-color-inherit {
801
+ color: var(--wui-color-inherit);
802
+ }
803
+
804
+ .wui-color-accent-100 {
805
+ color: var(--wui-color-accent-100);
806
+ }
807
+
808
+ .wui-color-error-100 {
809
+ color: var(--wui-color-error-100);
810
+ }
811
+
812
+ .wui-color-blue-100 {
813
+ color: var(--wui-color-blue-100);
814
+ }
815
+
816
+ .wui-color-blue-90 {
817
+ color: var(--wui-color-blue-90);
818
+ }
819
+
820
+ .wui-color-error-125 {
821
+ color: var(--wui-color-error-125);
822
+ }
823
+
824
+ .wui-color-success-100 {
825
+ color: var(--wui-color-success-100);
826
+ }
827
+
828
+ .wui-color-success-125 {
829
+ color: var(--wui-color-success-125);
830
+ }
831
+
832
+ .wui-color-inverse-100 {
833
+ color: var(--wui-color-inverse-100);
834
+ }
835
+
836
+ .wui-color-inverse-000 {
837
+ color: var(--wui-color-inverse-000);
838
+ }
839
+
840
+ .wui-color-fg-100 {
841
+ color: var(--wui-color-fg-100);
842
+ }
843
+
844
+ .wui-color-fg-200 {
845
+ color: var(--wui-color-fg-200);
846
+ }
847
+
848
+ .wui-color-fg-300 {
849
+ color: var(--wui-color-fg-300);
850
+ }
851
+
852
+ .wui-color-fg-325 {
853
+ color: var(--wui-color-fg-325);
854
+ }
855
+
856
+ .wui-color-fg-350 {
857
+ color: var(--wui-color-fg-350);
858
+ }
859
+
860
+ .wui-bg-color-inherit {
861
+ background-color: var(--wui-color-inherit);
862
+ }
863
+
864
+ .wui-bg-color-blue-100 {
865
+ background-color: var(--wui-color-accent-100);
866
+ }
867
+
868
+ .wui-bg-color-error-100 {
869
+ background-color: var(--wui-color-error-100);
870
+ }
871
+
872
+ .wui-bg-color-error-125 {
873
+ background-color: var(--wui-color-error-125);
874
+ }
875
+
876
+ .wui-bg-color-success-100 {
877
+ background-color: var(--wui-color-success-100);
878
+ }
879
+
880
+ .wui-bg-color-success-125 {
881
+ background-color: var(--wui-color-success-100);
882
+ }
883
+
884
+ .wui-bg-color-inverse-100 {
885
+ background-color: var(--wui-color-inverse-100);
886
+ }
887
+
888
+ .wui-bg-color-inverse-000 {
889
+ background-color: var(--wui-color-inverse-000);
890
+ }
891
+
892
+ .wui-bg-color-fg-100 {
893
+ background-color: var(--wui-color-fg-100);
894
+ }
895
+
896
+ .wui-bg-color-fg-200 {
897
+ background-color: var(--wui-color-fg-200);
898
+ }
899
+
900
+ .wui-bg-color-fg-300 {
901
+ background-color: var(--wui-color-fg-300);
902
+ }
903
+
904
+ .wui-color-fg-325 {
905
+ background-color: var(--wui-color-fg-325);
906
+ }
907
+
908
+ .wui-color-fg-350 {
909
+ background-color: var(--wui-color-fg-350);
910
+ }
911
+ `,rh={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};function ul(r){return{formatters:void 0,fees:void 0,serializers:void 0,...r}}const Ag=ul({id:"5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",name:"Solana",network:"solana-mainnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!1,chainNamespace:"solana",caipNetworkId:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",deprecatedCaipNetworkId:"solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ"}),Eg=ul({id:"EtWTRABZaYq6iMfeYKouRu166VU2xqa1",name:"Solana Devnet",network:"solana-devnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!0,chainNamespace:"solana",caipNetworkId:"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",deprecatedCaipNetworkId:"solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K"}),uX=ul({id:"4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z",name:"Solana Testnet",network:"solana-testnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!0,chainNamespace:"solana",caipNetworkId:"solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z"});ul({id:"000000000019d6689c085ae165831e93",caipNetworkId:"bip122:000000000019d6689c085ae165831e93",chainNamespace:"bip122",name:"Bitcoin",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}}});ul({id:"000000000933ea01ad0ee984209779ba",caipNetworkId:"bip122:000000000933ea01ad0ee984209779ba",chainNamespace:"bip122",name:"Bitcoin Testnet",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},testnet:!0});const lX={solana:["solana_signMessage","solana_signTransaction","solana_requestAccounts","solana_getAccounts","solana_signAllTransactions","solana_signAndSendTransaction"],eip155:["eth_accounts","eth_requestAccounts","eth_sendRawTransaction","eth_sign","eth_signTransaction","eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sendTransaction","personal_sign","wallet_switchEthereumChain","wallet_addEthereumChain","wallet_getPermissions","wallet_requestPermissions","wallet_registerOnboarding","wallet_watchAsset","wallet_scanQRCode","wallet_getCallsStatus","wallet_showCallsStatus","wallet_sendCalls","wallet_getCapabilities","wallet_grantPermissions","wallet_revokePermissions","wallet_getAssets"],bip122:["sendTransfer","signMessage","signPsbt","getAccountAddresses"]},B2={getMethodsByChainNamespace(r){return lX[r]||[]},createDefaultNamespace(r){return{methods:this.getMethodsByChainNamespace(r),events:["accountsChanged","chainChanged"],chains:[],rpcMap:{}}},applyNamespaceOverrides(r,e){if(!e)return{...r};const t={...r},i=new Set;if(e.methods&&Object.keys(e.methods).forEach(s=>i.add(s)),e.chains&&Object.keys(e.chains).forEach(s=>i.add(s)),e.events&&Object.keys(e.events).forEach(s=>i.add(s)),e.rpcMap&&Object.keys(e.rpcMap).forEach(s=>{const[n]=s.split(":");n&&i.add(n)}),i.forEach(s=>{t[s]||(t[s]=this.createDefaultNamespace(s))}),e.methods&&Object.entries(e.methods).forEach(([s,n])=>{t[s]&&(t[s].methods=n)}),e.chains&&Object.entries(e.chains).forEach(([s,n])=>{t[s]&&(t[s].chains=n)}),e.events&&Object.entries(e.events).forEach(([s,n])=>{t[s]&&(t[s].events=n)}),e.rpcMap){const s=new Set;Object.entries(e.rpcMap).forEach(([n,o])=>{const[a,u]=n.split(":");!a||!u||!t[a]||(t[a].rpcMap||(t[a].rpcMap={}),s.has(a)||(t[a].rpcMap={},s.add(a)),t[a].rpcMap[u]=o)})}return t},createNamespaces(r,e){const t=r.reduce((i,s)=>{const{id:n,chainNamespace:o,rpcUrls:a}=s,u=a.default.http[0];i[o]||(i[o]=this.createDefaultNamespace(o));const c=`${o}:${n}`,l=i[o];switch(l.chains.push(c),c){case Ag.caipNetworkId:l.chains.push(Ag.deprecatedCaipNetworkId);break;case Eg.caipNetworkId:l.chains.push(Eg.deprecatedCaipNetworkId);break}return l?.rpcMap&&u&&(l.rpcMap[n]=u),i},{});return this.applyNamespaceOverrides(t,e)},resolveReownName:async r=>{const e=await f4.resolveName(r);return(Object.values(e?.addresses)||[])[0]?.address||!1},getChainsFromNamespaces(r={}){return Object.values(r).flatMap(e=>{const t=e.chains||[],i=e.accounts.map(s=>{const[n,o]=s.split(":");return`${n}:${o}`});return Array.from(new Set([...t,...i]))})},isSessionEventData(r){return typeof r=="object"&&r!==null&&"id"in r&&"topic"in r&&"params"in r&&typeof r.params=="object"&&r.params!==null&&"chainId"in r.params&&"event"in r.params&&typeof r.params.event=="object"&&r.params.event!==null}};class Y2{constructor({provider:e,caipNetworks:t,namespace:i}){this.id=ce.CONNECTOR_ID.WALLET_CONNECT,this.name=Rh.ConnectorNamesMap[ce.CONNECTOR_ID.WALLET_CONNECT],this.type="WALLET_CONNECT",this.imageId=Rh.ConnectorImageIds[ce.CONNECTOR_ID.WALLET_CONNECT],this.caipNetworks=t,this.provider=e,this.chain=i}get chains(){return this.caipNetworks}async connectWalletConnect(){if(!await this.authenticate()){const t=J.state.universalProviderConfigOverride,i=B2.createNamespaces(this.caipNetworks,t);await this.provider.connect({optionalNamespaces:i})}return{clientId:await this.provider.client.core.crypto.getClientId(),session:this.provider.session}}async disconnect(){await this.provider.disconnect()}async authenticate(){const e=this.chains.map(t=>t.caipNetworkId);return Xc.universalProviderAuthenticate({universalProvider:this.provider,chains:e,methods:hX})}}const hX=["eth_accounts","eth_requestAccounts","eth_sendRawTransaction","eth_sign","eth_signTransaction","eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sendTransaction","personal_sign","wallet_switchEthereumChain","wallet_addEthereumChain","wallet_getPermissions","wallet_requestPermissions","wallet_registerOnboarding","wallet_watchAsset","wallet_scanQRCode","wallet_getCallsStatus","wallet_sendCalls","wallet_getCapabilities","wallet_grantPermissions","wallet_revokePermissions","wallet_getAssets"];class dX{constructor(e){this.availableConnectors=[],this.eventListeners=new Map,e&&this.construct(e)}construct(e){this.caipNetworks=e.networks,this.projectId=e.projectId,this.namespace=e.namespace,this.adapterType=e.adapterType}get connectors(){return this.availableConnectors}get networks(){return this.caipNetworks||[]}setAuthProvider(e){this.addConnector({id:ce.CONNECTOR_ID.AUTH,type:"AUTH",name:ce.CONNECTOR_NAMES.AUTH,provider:e,imageId:Rh.ConnectorImageIds[ce.CONNECTOR_ID.AUTH],chain:this.namespace,chains:[]})}addConnector(...e){const t=new Set;this.availableConnectors=[...e,...this.availableConnectors].filter(i=>t.has(i.id)?!1:(t.add(i.id),!0)),this.emit("connectors",this.availableConnectors)}setStatus(e,t){ue.setStatus(e,t)}on(e,t){this.eventListeners.has(e)||this.eventListeners.set(e,new Set),this.eventListeners.get(e)?.add(t)}off(e,t){const i=this.eventListeners.get(e);i&&i.delete(t)}removeAllEventListeners(){this.eventListeners.forEach(e=>{e.clear()})}emit(e,t){const i=this.eventListeners.get(e);i&&i.forEach(s=>s(t))}async connectWalletConnect(e){return{clientId:(await this.getWalletConnectConnector().connectWalletConnect()).clientId}}async switchNetwork(e){const{caipNetwork:t,providerType:i}=e;if(!e.provider)return;const s="provider"in e.provider?e.provider.provider:e.provider;if(i==="WALLET_CONNECT"){s.setDefaultChain(t.caipNetworkId);return}if(s&&i==="AUTH"){const n=s;await n.switchNetwork(t.caipNetworkId);const o=await n.getUser({chainId:t.caipNetworkId,preferredAccountType:J.state.defaultAccountTypes[t.chainNamespace]});this.emit("switchNetwork",o)}}getWalletConnectConnector(){const e=this.connectors.find(t=>t instanceof Y2);if(!e)throw new Error("WalletConnectConnector not found");return e}}class fX extends dX{setUniversalProvider(e){this.addConnector(new Y2({provider:e,caipNetworks:this.caipNetworks||[],namespace:this.namespace}))}async connect(e){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:Number(e.chainId),provider:this.provider,address:""})}async disconnect(){try{await this.getWalletConnectConnector().disconnect()}catch(e){console.warn("UniversalAdapter:disconnect - error",e)}}async getAccounts({namespace:e}){const i=this.provider?.session?.namespaces?.[e]?.accounts?.map(s=>{const[,,n]=s.split(":");return n}).filter((s,n,o)=>o.indexOf(s)===n)||[];return Promise.resolve({accounts:i.map(s=>we.createAccount(e,s,e==="bip122"?"payment":"eoa"))})}async syncConnectors(){return Promise.resolve()}async getBalance(e){if(!(e.caipNetwork&&ui.BALANCE_SUPPORTED_CHAINS.includes(e.caipNetwork?.chainNamespace))||e.caipNetwork?.testnet)return{balance:"0.00",symbol:e.caipNetwork?.nativeCurrency.symbol||""};if(ue.state.balanceLoading&&e.chainId===R.state.activeCaipNetwork?.id)return{balance:ue.state.balance||"0.00",symbol:ue.state.balanceSymbol||""};const s=(await ue.fetchTokenBalance()).find(n=>n.chainId===`${e.caipNetwork?.chainNamespace}:${e.chainId}`&&n.symbol===e.caipNetwork?.nativeCurrency.symbol);return{balance:s?.quantity.numeric||"0.00",symbol:s?.symbol||e.caipNetwork?.nativeCurrency.symbol||""}}async signMessage(e){const{provider:t,message:i,address:s}=e;if(!t)throw new Error("UniversalAdapter:signMessage - provider is undefined");let n="";return R.state.activeCaipNetwork?.chainNamespace===ce.CHAIN.SOLANA?n=(await t.request({method:"solana_signMessage",params:{message:vn.encode(new TextEncoder().encode(i)),pubkey:s}},R.state.activeCaipNetwork?.caipNetworkId)).signature:n=await t.request({method:"personal_sign",params:[i,s]},R.state.activeCaipNetwork?.caipNetworkId),{signature:n}}async estimateGas(){return Promise.resolve({gas:BigInt(0)})}async getProfile(){return Promise.resolve({profileImage:"",profileName:""})}async sendTransaction(){return Promise.resolve({hash:""})}walletGetAssets(e){return Promise.resolve({})}async writeContract(){return Promise.resolve({hash:""})}async getEnsAddress(){return Promise.resolve({address:!1})}parseUnits(){return 0n}formatUnits(){return"0"}async getCapabilities(){return Promise.resolve({})}async grantPermissions(){return Promise.resolve({})}async revokePermissions(){return Promise.resolve("0x")}async syncConnection(){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:1,provider:this.provider,address:""})}async switchNetwork(e){const{caipNetwork:t}=e,i=this.getWalletConnectConnector();if(t.chainNamespace===ce.CHAIN.EVM)try{await i.provider?.request({method:"wallet_switchEthereumChain",params:[{chainId:Ab(t.id)}]})}catch(s){if(s.code===rh.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||s.code===rh.ERROR_INVALID_CHAIN_ID||s.code===rh.ERROR_CODE_DEFAULT||s?.data?.originalError?.code===rh.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)try{await i.provider?.request({method:"wallet_addEthereumChain",params:[{chainId:Ab(t.id),rpcUrls:[t?.rpcUrls.chainDefault?.http],chainName:t.name,nativeCurrency:t.nativeCurrency,blockExplorerUrls:[t.blockExplorers?.default.url]}]})}catch{throw new Error("Chain is not supported")}}i.provider.setDefaultChain(t.caipNetworkId)}getWalletConnectProvider(){return this.connectors.find(i=>i.type==="WALLET_CONNECT")?.provider}}class pX{constructor(e){this.hasSwitchedToPreferredAccountTypeOnConnect=!1,this.chainNamespaces=[],this.reportedAlertErrors={},this.getCaipNetwork=t=>{if(t){const i=R.getNetworkData(t)?.caipNetwork;return i||R.getRequestedCaipNetworks(t).filter(s=>s.chainNamespace===t)?.[0]}return R.state.activeCaipNetwork||this.defaultCaipNetwork},this.getCaipNetworkId=()=>{const t=this.getCaipNetwork();if(t)return t.id},this.getCaipNetworks=t=>R.getRequestedCaipNetworks(t),this.getActiveChainNamespace=()=>R.state.activeChain,this.setRequestedCaipNetworks=(t,i)=>{R.setRequestedCaipNetworks(t,i)},this.getApprovedCaipNetworkIds=()=>R.getAllApprovedCaipNetworkIds(),this.getCaipAddress=t=>R.state.activeChain===t||!t?R.state.activeCaipAddress:R.getAccountProp("caipAddress",t),this.setClientId=t=>{de.setClientId(t)},this.getProvider=t=>Bt.getProvider(t),this.getProviderType=t=>Bt.getProviderId(t),this.getPreferredAccountType=()=>ue.state.preferredAccountType,this.setCaipAddress=(t,i)=>{ue.setCaipAddress(t,i)},this.setBalance=(t,i,s)=>{ue.setBalance(t,i,s)},this.setProfileName=(t,i)=>{ue.setProfileName(t,i)},this.setProfileImage=(t,i)=>{ue.setProfileImage(t,i)},this.setUser=(t,i)=>{ue.setUser(t,i),J.state.enableEmbedded&&lr.close()},this.resetAccount=t=>{ue.resetAccount(t)},this.setCaipNetwork=t=>{R.setActiveCaipNetwork(t)},this.setCaipNetworkOfNamespace=(t,i)=>{R.setChainNetworkData(i,{caipNetwork:t})},this.setAllAccounts=(t,i)=>{ue.setAllAccounts(t,i),J.setHasMultipleAddresses(t?.length>1)},this.setStatus=(t,i)=>{ue.setStatus(t,i),ye.isConnected()?ae.setConnectionStatus("connected"):ae.setConnectionStatus("disconnected")},this.getAddressByChainNamespace=t=>R.getAccountProp("address",t),this.setConnectors=t=>{const i=[...ye.getConnectors(),...t];ye.setConnectors(i)},this.fetchIdentity=t=>de.fetchIdentity(t),this.getReownName=t=>f4.getNamesForAddress(t),this.getConnectors=()=>ye.getConnectors(),this.getConnectorImage=t=>r4.getConnectorImage(t),this.setConnectedWalletInfo=(t,i)=>{const s=Bt.getProviderId(i),n=t?{...t,type:s}:void 0;ue.setConnectedWalletInfo(n,i)},this.getIsConnectedState=()=>!!R.state.activeCaipAddress,this.addAddressLabel=(t,i,s)=>{ue.addAddressLabel(t,i,s)},this.removeAddressLabel=(t,i)=>{ue.removeAddressLabel(t,i)},this.getAddress=t=>R.state.activeChain===t||!t?ue.state.address:R.getAccountProp("address",t),this.setApprovedCaipNetworksData=t=>R.setApprovedCaipNetworksData(t),this.resetNetwork=t=>{R.resetNetwork(t)},this.addConnector=t=>{ye.addConnector(t)},this.resetWcConnection=()=>{mt.resetWcConnection()},this.setAddressExplorerUrl=(t,i)=>{ue.setAddressExplorerUrl(t,i)},this.setSmartAccountDeployed=(t,i)=>{ue.setSmartAccountDeployed(t,i)},this.setSmartAccountEnabledNetworks=(t,i)=>{R.setSmartAccountEnabledNetworks(t,i)},this.setPreferredAccountType=(t,i)=>{ue.setPreferredAccountType(t,i)},this.setEIP6963Enabled=t=>{J.setEIP6963Enabled(t)},this.handleUnsafeRPCRequest=()=>{if(this.isOpen()){if(this.isTransactionStackEmpty())return;this.redirect("ApproveTransaction")}else this.open({view:"ApproveTransaction"})},this.options=e,this.version=e.sdkVersion,this.caipNetworks=this.extendCaipNetworks(e),this.chainNamespaces=[...new Set(this.caipNetworks?.map(t=>t.chainNamespace))],this.defaultCaipNetwork=this.extendDefaultCaipNetwork(e),this.chainAdapters=this.createAdapters(e.adapters),this.initialize(e),this.sendInitializeEvent(e)}async initialize(e){this.initControllers(e),await this.initChainAdapters(),await this.injectModalUi(),await this.syncExistingConnection(),Ws.set({initialized:!0})}sendInitializeEvent(e){const{...t}=e;delete t.adapters,bt.sendEvent({type:"track",event:"INITIALIZE",properties:{...t,networks:e.networks.map(i=>i.id),siweConfig:{options:e.siweConfig?.options||{}}}})}initControllers(e){this.initializeOptionsController(e),this.initializeChainController(e),this.initializeThemeController(e),this.initializeConnectionController(e),this.initializeConnectorController()}initializeThemeController(e){e.themeMode&&Hr.setThemeMode(e.themeMode),e.themeVariables&&Hr.setThemeVariables(e.themeVariables)}initializeChainController(e){if(!this.connectionControllerClient||!this.networkControllerClient)throw new Error("ConnectionControllerClient and NetworkControllerClient must be set");R.initialize(e.adapters??[],this.caipNetworks,{connectionControllerClient:this.connectionControllerClient,networkControllerClient:this.networkControllerClient});const t=this.getDefaultNetwork();t&&R.setActiveCaipNetwork(t)}initializeConnectionController(e){mt.setWcBasic(e.basic??!1)}initializeConnectorController(){ye.initialize(this.chainNamespaces)}initializeOptionsController(e){J.setDebug(e.debug!==!1),J.setEnableWalletConnect(e.enableWalletConnect!==!1),J.setEnableWalletGuide(e.enableWalletGuide!==!1),J.setEnableWallets(e.enableWallets!==!1),J.setEIP6963Enabled(e.enableEIP6963!==!1),J.setEnableNetworkSwitch(e.enableNetworkSwitch!==!1),J.setEnableAuthLogger(e.enableAuthLogger!==!1),J.setCustomRpcUrls(e.customRpcUrls),J.setSdkVersion(e.sdkVersion),J.setProjectId(e.projectId),J.setEnableEmbedded(e.enableEmbedded),J.setAllWallets(e.allWallets),J.setIncludeWalletIds(e.includeWalletIds),J.setExcludeWalletIds(e.excludeWalletIds),J.setFeaturedWalletIds(e.featuredWalletIds),J.setTokens(e.tokens),J.setTermsConditionsUrl(e.termsConditionsUrl),J.setPrivacyPolicyUrl(e.privacyPolicyUrl),J.setCustomWallets(e.customWallets),J.setFeatures(e.features),J.setAllowUnsupportedChain(e.allowUnsupportedChain),J.setDefaultAccountTypes(e.defaultAccountTypes),J.setUniversalProviderConfigOverride(e.universalProviderConfigOverride);const t=this.getDefaultMetaData();if(!e.metadata&&t&&(e.metadata=t),J.setMetadata(e.metadata),J.setDisableAppend(e.disableAppend),J.setEnableEmbedded(e.enableEmbedded),J.setSIWX(e.siwx),!e.projectId){dh.open(th.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED,"error");return}if(e.adapters?.find(s=>s.namespace===ce.CHAIN.EVM)&&e.siweConfig){if(e.siwx)throw new Error("Cannot set both `siweConfig` and `siwx` options");J.setSIWX(e.siweConfig.mapToSIWX())}}getDefaultMetaData(){return typeof window<"u"&&typeof document<"u"?{name:document.getElementsByTagName("title")?.[0]?.textContent||"",description:document.querySelector('meta[property="og:description"]')?.content||"",url:window.location.origin,icons:[document.querySelector('link[rel~="icon"]')?.href||""]}:null}setUnsupportedNetwork(e){const t=this.getActiveChainNamespace();if(t){const i=wa.getUnsupportedNetwork(`${t}:${e}`);R.setActiveCaipNetwork(i)}}getDefaultNetwork(){return wa.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,t){return wa.extendCaipNetwork(e,{customNetworkImageUrls:t.chainImages,projectId:t.projectId})}extendCaipNetworks(e){return wa.extendCaipNetworks(e.networks,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId})}extendDefaultCaipNetwork(e){const t=e.networks.find(s=>s.id===e.defaultNetwork?.id);return t?wa.extendCaipNetwork(t,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId}):void 0}createClients(){this.connectionControllerClient={connectWalletConnect:async()=>{const e=R.state.activeChain,t=this.getAdapter(e),i=this.getCaipNetwork(e)?.id;if(!t)throw new Error("Adapter not found");const s=await t.connectWalletConnect(i);this.close(),this.setClientId(s?.clientId||null),ae.setConnectedNamespaces([...R.state.chains.keys()]),this.chainNamespaces.forEach(n=>{ye.setConnectorId(ln.CONNECTOR_TYPE_WALLET_CONNECT,n)}),await this.syncWalletConnectAccount()},connectExternal:async({id:e,info:t,type:i,provider:s,chain:n,caipNetwork:o})=>{const a=R.state.activeChain,u=n||a,c=this.getAdapter(u);if(n&&n!==a&&!o){const w=this.caipNetworks?.find(g=>g.chainNamespace===n);w&&this.setCaipNetwork(w)}if(!c)throw new Error("Adapter not found");const l=this.getCaipNetwork(u),h=await c.connect({id:e,info:t,type:i,provider:s,chainId:o?.id||l?.id,rpcUrl:o?.rpcUrls?.default?.http?.[0]||l?.rpcUrls?.default?.http?.[0]});if(!h)return;ae.addConnectedNamespace(u),this.syncProvider({...h,chainNamespace:u}),await this.syncAccount({...h,chainNamespace:u});const{accounts:f}=await c.getAccounts({namespace:u,id:e});this.setAllAccounts(f,u)},reconnectExternal:async({id:e,info:t,type:i,provider:s})=>{const n=R.state.activeChain,o=this.getAdapter(n);o?.reconnect&&(await o?.reconnect({id:e,info:t,type:i,provider:s,chainId:this.getCaipNetwork()?.id}),ae.addConnectedNamespace(n))},disconnect:async e=>{const t=e||R.state.activeChain,i=this.getAdapter(t),s=Bt.getProvider(t),n=Bt.getProviderId(t);await i?.disconnect({provider:s,providerType:n}),ae.removeConnectedNamespace(t),Bt.resetChain(t),this.setUser(void 0,t),this.setStatus("disconnected",t),this.hasSwitchedToPreferredAccountTypeOnConnect=!1},checkInstalled:e=>e?e.some(t=>!!window.ethereum?.[String(t)]):!!window.ethereum,signMessage:async e=>(await this.getAdapter(R.state.activeChain)?.signMessage({message:e,address:ue.state.address,provider:Bt.getProvider(R.state.activeChain)}))?.signature||"",sendTransaction:async e=>{if(e.chainNamespace===ce.CHAIN.EVM){const t=this.getAdapter(R.state.activeChain),i=Bt.getProvider(R.state.activeChain);return(await t?.sendTransaction({...e,caipNetwork:this.getCaipNetwork(),provider:i}))?.hash||""}return""},estimateGas:async e=>{if(e.chainNamespace===ce.CHAIN.EVM){const t=this.getAdapter(R.state.activeChain),i=Bt.getProvider(R.state.activeChain),s=this.getCaipNetwork();if(!s)throw new Error("CaipNetwork is undefined");return(await t?.estimateGas({...e,provider:i,caipNetwork:s}))?.gas||0n}return 0n},getEnsAvatar:async()=>(await this.getAdapter(R.state.activeChain)?.getProfile({address:ue.state.address,chainId:Number(this.getCaipNetwork()?.id)}))?.profileImage||!1,getEnsAddress:async e=>{const t=this.getAdapter(R.state.activeChain),i=this.getCaipNetwork();return i&&(await t?.getEnsAddress({name:e,caipNetwork:i}))?.address||!1},writeContract:async e=>{const t=this.getAdapter(R.state.activeChain),i=this.getCaipNetwork(),s=this.getCaipAddress(),n=Bt.getProvider(R.state.activeChain);if(!i||!s)throw new Error("CaipNetwork or CaipAddress is undefined");return(await t?.writeContract({...e,caipNetwork:i,provider:n,caipAddress:s}))?.hash},parseUnits:(e,t)=>this.getAdapter(R.state.activeChain)?.parseUnits({value:e,decimals:t})??0n,formatUnits:(e,t)=>this.getAdapter(R.state.activeChain)?.formatUnits({value:e,decimals:t})??"0",getCapabilities:async e=>await this.getAdapter(R.state.activeChain)?.getCapabilities(e),grantPermissions:async e=>await this.getAdapter(R.state.activeChain)?.grantPermissions(e),revokePermissions:async e=>{const t=this.getAdapter(R.state.activeChain);return t?.revokePermissions?await t.revokePermissions(e):"0x"},walletGetAssets:async e=>await this.getAdapter(R.state.activeChain)?.walletGetAssets(e)??{}},this.networkControllerClient={switchCaipNetwork:async e=>await this.switchCaipNetwork(e),getApprovedCaipNetworksData:async()=>this.getApprovedCaipNetworksData()},mt.setClient(this.connectionControllerClient)}getApprovedCaipNetworksData(){if(Bt.getProviderId(R.state.activeChain)===ln.CONNECTOR_TYPE_WALLET_CONNECT){const t=this.universalProvider?.session?.namespaces;return{supportsAllNetworks:this.universalProvider?.session?.peer?.metadata.name==="MetaMask Wallet",approvedCaipNetworkIds:this.getChainsFromNamespaces(t)}}return{supportsAllNetworks:!0,approvedCaipNetworkIds:[]}}async switchCaipNetwork(e){if(!e)return;const t=e.chainNamespace;if(this.getAddressByChainNamespace(e.chainNamespace)){const s=Bt.getProvider(t),n=Bt.getProviderId(t);if(e.chainNamespace===R.state.activeChain)await this.getAdapter(t)?.switchNetwork({caipNetwork:e,provider:s,providerType:n});else if(this.setCaipNetwork(e),n===ln.CONNECTOR_TYPE_WALLET_CONNECT)this.syncWalletConnectAccount();else{const o=this.getAddressByChainNamespace(t);o&&this.syncAccount({address:o,chainId:e.id,chainNamespace:t})}}else this.setCaipNetwork(e)}getChainsFromNamespaces(e={}){return Object.values(e).flatMap(t=>{const i=t.chains||[],s=t.accounts.map(n=>{const{chainId:o,chainNamespace:a}=on.parseCaipAddress(n);return`${a}:${o}`});return Array.from(new Set([...i,...s]))})}createAdapters(e){return this.createClients(),this.chainNamespaces.reduce((t,i)=>{const s=e?.find(n=>n.namespace===i);return s?(t[i]=s,t[i].namespace=i,t[i].construct({namespace:i,projectId:this.options?.projectId,networks:this.caipNetworks})):t[i]=new fX({namespace:i,networks:this.caipNetworks}),t},{})}async initChainAdapter(e){this.onConnectors(e),this.listenAdapter(e),this.chainAdapters?.[e].syncConnectors(this.options,this),await this.createUniversalProviderForAdapter(e)}async initChainAdapters(){await Promise.all(this.chainNamespaces.map(async e=>{await this.initChainAdapter(e)}))}onConnectors(e){this.getAdapter(e)?.on("connectors",this.setConnectors.bind(this))}listenAdapter(e){const t=this.getAdapter(e);if(!t)return;const i=ae.getConnectionStatus();i==="connected"?this.setStatus("connecting",e):i==="disconnected"?(ae.clearAddressCache(),this.setStatus(i,e)):this.setStatus(i,e),t.on("switchNetwork",({address:s,chainId:n})=>{const o=this.caipNetworks?.find(c=>c.id===n||c.caipNetworkId===n),a=R.state.activeChain===e,u=R.getAccountProp("address",e);if(o){const c=a&&s?s:u;c&&this.syncAccount({address:c,chainId:n,chainNamespace:e})}else this.setUnsupportedNetwork(n)}),t.on("disconnect",this.disconnect.bind(this,e)),t.on("pendingTransactions",()=>{const s=ue.state.address,n=R.state.activeCaipNetwork;!s||!n?.id||this.updateNativeBalance(s,n.id,n.chainNamespace)}),t.on("accountChanged",({address:s,chainId:n})=>{const o=R.state.activeChain===e;o&&n?this.syncAccount({address:s,chainId:n,chainNamespace:e}):o&&R.state.activeCaipNetwork?.id?this.syncAccount({address:s,chainId:R.state.activeCaipNetwork?.id,chainNamespace:e}):this.syncAccountInfo(s,n,e)})}async createUniversalProviderForAdapter(e){await this.getUniversalProvider(),this.universalProvider&&this.chainAdapters?.[e]?.setUniversalProvider?.(this.universalProvider)}async syncExistingConnection(){await Promise.allSettled(this.chainNamespaces.map(e=>this.syncNamespaceConnection(e)))}async syncNamespaceConnection(e){try{const t=ye.getConnectorId(e);switch(this.setStatus("connecting",e),t){case ce.CONNECTOR_ID.WALLET_CONNECT:await this.syncWalletConnectAccount();break;case ce.CONNECTOR_ID.AUTH:break;default:await this.syncAdapterConnection(e)}}catch(t){console.warn("AppKit couldn't sync existing connection",t),this.setStatus("disconnected",e)}}async syncAdapterConnection(e){const t=this.getAdapter(e),i=ye.getConnectorId(e),s=this.getCaipNetwork(e),n=ye.getConnectors(e).find(o=>o.id===i);try{if(!t||!n)throw new Error(`Adapter or connector not found for namespace ${e}`);if(!s?.id)throw new Error("CaipNetwork not found");const o=await t?.syncConnection({namespace:e,id:n.id,chainId:s.id,rpcUrl:s?.rpcUrls?.default?.http?.[0]});if(o){const a=await t?.getAccounts({namespace:e,id:n.id});a&&a.accounts.length>0?this.setAllAccounts(a.accounts,e):this.setAllAccounts([we.createAccount(e,o.address,"eoa")],e),this.syncProvider({...o,chainNamespace:e}),await this.syncAccount({...o,chainNamespace:e}),this.setStatus("connected",e)}else this.setStatus("disconnected",e)}catch{this.setStatus("disconnected",e)}}async syncWalletConnectAccount(){const e=this.chainNamespaces.map(async t=>{const i=this.getAdapter(t),s=this.universalProvider?.session?.namespaces?.[t]?.accounts||[],n=R.state.activeCaipNetwork?.id,o=s.find(a=>{const{chainId:u}=on.parseCaipAddress(a);return u===n?.toString()})||s[0];if(o){const a=on.validateCaipAddress(o),{chainId:u,address:c}=on.parseCaipAddress(a);if(Bt.setProviderId(t,ln.CONNECTOR_TYPE_WALLET_CONNECT),this.caipNetworks&&R.state.activeCaipNetwork&&i?.namespace!==ce.CHAIN.EVM){const l=i?.getWalletConnectProvider({caipNetworks:this.caipNetworks,provider:this.universalProvider,activeCaipNetwork:R.state.activeCaipNetwork});Bt.setProvider(t,l)}else Bt.setProvider(t,this.universalProvider);ye.setConnectorId(ce.CONNECTOR_ID.WALLET_CONNECT,t),ae.addConnectedNamespace(t),this.syncWalletConnectAccounts(t),await this.syncAccount({address:c,chainId:u,chainNamespace:t})}else this.setStatus("disconnected",t);await R.setApprovedCaipNetworksData(t)});await Promise.all(e)}syncWalletConnectAccounts(e){const t=this.universalProvider?.session?.namespaces?.[e]?.accounts?.map(i=>{const{address:s}=on.parseCaipAddress(i);return s}).filter((i,s,n)=>n.indexOf(i)===s);t&&this.setAllAccounts(t.map(i=>we.createAccount(e,i,e==="bip122"?"payment":"eoa")),e)}syncProvider({type:e,provider:t,id:i,chainNamespace:s}){Bt.setProviderId(s,e),Bt.setProvider(s,t),ye.setConnectorId(i,s)}async syncAccount(e){const t=e.chainNamespace===R.state.activeChain,i=R.getCaipNetworkByNamespace(e.chainNamespace,e.chainId),{address:s,chainId:n,chainNamespace:o}=e,{chainId:a}=ae.getActiveNetworkProps(),u=n||a,c=R.state.activeCaipNetwork?.name===ce.UNSUPPORTED_NETWORK_NAME,l=R.getNetworkProp("supportsAllNetworks",o);if(this.setStatus("connected",o),!(c&&!l)&&u){let h=this.caipNetworks?.find(g=>g.id.toString()===u.toString()),f=this.caipNetworks?.find(g=>g.chainNamespace===o);if(!l&&!h&&!f){const g=this.getApprovedCaipNetworkIds()||[],m=g.find(A=>on.parseCaipNetworkId(A)?.chainId===u.toString()),E=g.find(A=>on.parseCaipNetworkId(A)?.chainNamespace===o);h=this.caipNetworks?.find(A=>A.caipNetworkId===m),f=this.caipNetworks?.find(A=>A.caipNetworkId===E||"deprecatedCaipNetworkId"in A&&A.deprecatedCaipNetworkId===E)}const w=h||f;w?.chainNamespace===R.state.activeChain?J.state.enableNetworkSwitch&&!J.state.allowUnsupportedChain&&R.state.activeCaipNetwork?.name===ce.UNSUPPORTED_NETWORK_NAME?R.showUnsupportedChainUI():this.setCaipNetwork(w):t||i&&this.setCaipNetworkOfNamespace(i,o),this.syncConnectedWalletInfo(o),O2.isLowerCaseMatch(s,ue.state.address)||this.syncAccountInfo(s,w?.id,o),t?await this.syncBalance({address:s,chainId:w?.id,chainNamespace:o}):await this.syncBalance({address:s,chainId:i?.id,chainNamespace:o})}}async syncAccountInfo(e,t,i){const s=this.getCaipAddress(i),n=t||s?.split(":")[1];if(!n)return;const o=`${i}:${n}:${e}`;this.setCaipAddress(o,i),await this.syncIdentity({address:e,chainId:n,chainNamespace:i})}async syncReownName(e,t){try{const i=await this.getReownName(e);if(i[0]){const s=i[0];this.setProfileName(s.name,t)}else this.setProfileName(null,t)}catch{this.setProfileName(null,t)}}syncConnectedWalletInfo(e){const t=ye.getConnectorId(e),i=Bt.getProviderId(e);if(i===ln.CONNECTOR_TYPE_ANNOUNCED||i===ln.CONNECTOR_TYPE_INJECTED){if(t){const s=this.getConnectors().find(n=>n.id===t);if(s){const{info:n,name:o,imageUrl:a}=s,u=a||this.getConnectorImage(s);this.setConnectedWalletInfo({name:o,icon:u,...n},e)}}}else if(i===ln.CONNECTOR_TYPE_WALLET_CONNECT){const s=Bt.getProvider(e);s?.session&&this.setConnectedWalletInfo({...s.session.peer.metadata,name:s.session.peer.metadata.name,icon:s.session.peer.metadata.icons?.[0]},e)}else if(t)if(t===ce.CONNECTOR_ID.COINBASE){const s=this.getConnectors().find(n=>n.id===ce.CONNECTOR_ID.COINBASE);this.setConnectedWalletInfo({name:"Coinbase Wallet",icon:this.getConnectorImage(s)},e)}else this.setConnectedWalletInfo({name:t},e)}async syncBalance(e){!XI.getNetworksByNamespace(this.caipNetworks,e.chainNamespace).find(i=>i.id.toString()===e.chainId?.toString())||!e.chainId||await this.updateNativeBalance(e.address,e.chainId,e.chainNamespace)}async updateNativeBalance(e,t,i){const s=this.getAdapter(i);if(s){const n=await s.getBalance({address:e,chainId:t,caipNetwork:this.getCaipNetwork(i),tokens:this.options.tokens});this.setBalance(n.balance,n.symbol,i)}}async initializeUniversalAdapter(){const e=UJ.createLogger((i,...s)=>{i&&this.handleAlertError(i),console.error(...s)}),t={projectId:this.options?.projectId,metadata:{name:this.options?.metadata?this.options?.metadata.name:"",description:this.options?.metadata?this.options?.metadata.description:"",url:this.options?.metadata?this.options?.metadata.url:"",icons:this.options?.metadata?this.options?.metadata.icons:[""]},logger:e};J.setManualWCControl(!!this.options?.manualWCControl),this.universalProvider=this.options.universalProvider??await PJ.init(t),this.listenWalletConnect()}listenWalletConnect(){this.universalProvider&&(this.universalProvider.on("display_uri",e=>{mt.setUri(e)}),this.universalProvider.on("connect",mt.finalizeWcConnection),this.universalProvider.on("disconnect",()=>{this.chainNamespaces.forEach(e=>{this.resetAccount(e)}),mt.resetWcConnection()}),this.universalProvider.on("chainChanged",e=>{const t=this.caipNetworks?.find(s=>s.id==e),i=this.getCaipNetwork();if(!t){this.setUnsupportedNetwork(e);return}i?.id!==t?.id&&this.setCaipNetwork(t)}),this.universalProvider.on("session_event",e=>{if(B2.isSessionEventData(e)){const{name:t,data:i}=e.params.event;t==="accountsChanged"&&Array.isArray(i)&&we.isCaipAddress(i[0])&&this.syncAccount(on.parseCaipAddress(i[0]))}}))}createUniversalProvider(){return!this.universalProviderInitPromise&&we.isClient()&&this.options?.projectId&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){bt.sendEvent({type:"error",event:"INTERNAL_SDK_ERROR",properties:{errorType:"UniversalProviderInitError",errorMessage:e instanceof Error?e.message:"Unknown",uncaught:!1}}),console.error("AppKit:getUniversalProvider - Cannot create provider",e)}return this.universalProvider}handleAlertError(e){const t=Object.entries(th.UniversalProviderErrors).find(([,{message:a}])=>e.message.includes(a)),[i,s]=t??[],{message:n,alertErrorKey:o}=s??{};if(i&&n&&!this.reportedAlertErrors[i]){const a=th.ALERT_ERRORS[o];a&&(dh.open(a,"error"),this.reportedAlertErrors[i]=!0)}}getAdapter(e){if(e)return this.chainAdapters?.[e]}createAdapter(e){if(!e)return;const t=e.namespace;if(!t)return;this.createClients();const i=e;i.namespace=t,i.construct({namespace:t,projectId:this.options?.projectId,networks:this.caipNetworks}),this.chainNamespaces.includes(t)||this.chainNamespaces.push(t),this.chainAdapters&&(this.chainAdapters[t]=i)}async open(e){await this.injectModalUi(),e?.uri&&mt.setUri(e.uri),await lr.open(e)}async close(){await this.injectModalUi(),lr.close()}setLoading(e,t){lr.setLoading(e,t)}async disconnect(e){await mt.disconnect(e)}getError(){return""}getChainId(){return R.state.activeCaipNetwork?.id}async switchNetwork(e){const t=this.caipNetworks?.find(i=>i.id===e.id);if(!t){dh.open(th.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND,"error");return}await R.switchActiveNetwork(t)}getWalletProvider(){return R.state.activeChain?Bt.state.providers[R.state.activeChain]:null}getWalletProviderType(){return Bt.getProviderId(R.state.activeChain)}subscribeProviders(e){return Bt.subscribeProviders(e)}getThemeMode(){return Hr.state.themeMode}getThemeVariables(){return Hr.state.themeVariables}setThemeMode(e){Hr.setThemeMode(e),F2(Hr.state.themeMode)}setTermsConditionsUrl(e){J.setTermsConditionsUrl(e)}setPrivacyPolicyUrl(e){J.setPrivacyPolicyUrl(e)}setThemeVariables(e){Hr.setThemeVariables(e),cX(Hr.state.themeVariables)}subscribeTheme(e){return Hr.subscribe(e)}getWalletInfo(){return ue.state.connectedWalletInfo}getAccount(e){const t=ye.getAuthConnector(e),i=R.getAccountData(e);if(i)return{allAccounts:i.allAccounts,caipAddress:i.caipAddress,address:we.getPlainAddress(i.caipAddress),isConnected:!!i.caipAddress,status:i.status,embeddedWalletInfo:t?{user:i.user,authProvider:i.socialProvider||"email",accountType:i.preferredAccountType,isSmartAccountDeployed:!!i.smartAccountDeployed}:void 0}}subscribeAccount(e,t){const i=()=>{const s=this.getAccount(t);s&&e(s)};t?R.subscribeChainProp("accountState",i,t):R.subscribe(i),ye.subscribe(i)}subscribeNetwork(e){return R.subscribe(({activeCaipNetwork:t})=>{e({caipNetwork:t,chainId:t?.id,caipNetworkId:t?.caipNetworkId})})}subscribeWalletInfo(e){return ue.subscribeKey("connectedWalletInfo",e)}subscribeShouldUpdateToAddress(e){ue.subscribeKey("shouldUpdateToAddress",e)}subscribeCaipNetworkChange(e){R.subscribeKey("activeCaipNetwork",e)}getState(){return Ws.state}subscribeState(e){return Ws.subscribe(e)}showErrorMessage(e){Pr.showError(e)}showSuccessMessage(e){Pr.showSuccess(e)}getEvent(){return{...bt.state}}subscribeEvents(e){return bt.subscribe(e)}replace(e){Ke.replace(e)}redirect(e){Ke.push(e)}popTransactionStack(e){Ke.popTransactionStack(e)}isOpen(){return lr.state.open}isTransactionStackEmpty(){return Ke.state.transactionStack.length===0}isTransactionShouldReplaceView(){return Ke.state.transactionStack[Ke.state.transactionStack.length-1]?.replace}static getInstance(){return this.instance}updateFeatures(e){J.setFeatures(e)}updateOptions(e){const i={...J.state||{},...e};J.setOptions(i)}setConnectMethodsOrder(e){J.setConnectMethodsOrder(e)}setWalletFeaturesOrder(e){J.setWalletFeaturesOrder(e)}setCollapseWallets(e){J.setCollapseWallets(e)}setSocialsOrder(e){J.setSocialsOrder(e)}getConnectMethodsOrder(){return Ig.getConnectOrderMethod(J.state.features,ye.getConnectors())}removeAdapter(e){const t=this.getIsConnectedState(),i=this.getAdapter(e);if(!i||!this.chainAdapters||t)return;const s=this.caipNetworks?.filter(n=>n.chainNamespace!==e);R.removeAdapter(e),ye.removeAdapter(e),this.chainNamespaces=this.chainNamespaces.filter(n=>n!==e),this.caipNetworks=s,i.removeAllEventListeners(),Reflect.deleteProperty(this.chainAdapters,e)}addAdapter(e,t){const i=e.namespace;if(!this.connectionControllerClient||!this.networkControllerClient||!this.chainAdapters||!i)return;const s=this.extendCaipNetworks({...this.options,networks:t});this.caipNetworks=[...this.caipNetworks||[],...s],this.createAdapter(e),this.initChainAdapter(i),R.addAdapter(e,{connectionControllerClient:this.connectionControllerClient,networkControllerClient:this.networkControllerClient},s)}addNetwork(e,t){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);const i=this.extendCaipNetwork(t,this.options);R.addNetwork(i),this.caipNetworks&&!this.caipNetworks?.find(s=>s.id===i.id)&&this.caipNetworks.push(i)}removeNetwork(e,t){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);if(!this.caipNetworks?.find(n=>n.id===t))throw new Error(`Network with ID ${t} not found`);if(!this.caipNetworks)return;const s=this.caipNetworks.filter(n=>n.chainNamespace===e&&n.id!==t);if(!s?.length)throw new Error("Cannot remove last network for a namespace");R.removeNetwork(e,t),this.caipNetworks=[...s]}}let N1=!1;class gX extends pX{async open(e){ye.isConnected()||await super.open(e)}async close(){await super.close(),this.options.manualWCControl&&mt.finalizeWcConnection()}async syncIdentity(e){return Promise.resolve()}async syncBalance(e){return Promise.resolve()}async injectModalUi(){if(!N1&&we.isClient()){if(await Fi(()=>import("./basic-BcMWR9ru.js"),__vite__mapDeps([25,26,4,5,6,3,7,8,2,9,10,16])),await Fi(()=>import("./w3m-modal-D1gQSCaS.js"),__vite__mapDeps([27,26,4,5,6,3,7,8,2,9,10,16])),!document.querySelector("w3m-modal")){const t=document.createElement("w3m-modal");!J.state.disableAppend&&!J.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",t)}N1=!0}}}const yX="1.7.2";function wX(r){return new gX({...r,basic:!0,sdkVersion:`html-core-${yX}`})}class va extends Error{constructor(){super(),Object.setPrototypeOf(this,va.prototype)}}class v1 extends Error{constructor(e){super(`WalletConnect Adapter - Method ${e} is not supported by the wallet`),this.name="WalletConnectFeatureNotSupportedError"}}function mX(r){let e=[r];return r===pr.Mainnet||r===pr.Deprecated_Mainnet?(e=[pr.Mainnet,pr.Deprecated_Mainnet],r===pr.Deprecated_Mainnet&&console.warn(Bh.mainnet)):(r===pr.Deprecated_Devnet||r===pr.Devnet)&&(e=[pr.Devnet,pr.Deprecated_Devnet],console.warn(Bh.devnet)),e}const Bh={mainnet:`You are using a deprecated chain ID for Solana Mainnet, please use ${pr.Mainnet} instead.`,devnet:`You are using a deprecated chain ID for Solana Devnet, please use ${pr.Devnet} instead.`,wallet:"The connected wallet is using a deprecated chain ID for Solana. Please, contact them to upgrade. You can learn more at https://github.com/ChainAgnostic/namespaces/blob/main/solana/caip10.md#chain-ids"};function I1(r,e){const t=r.namespaces.solana?.accounts.map(i=>`solana:${i.split(":")[1]}`);if(e===pr.Mainnet)return t?.find(i=>i===pr.Mainnet)?pr.Mainnet:(console.warn(Bh.wallet),pr.Deprecated_Mainnet);if(e===pr.Devnet)return t?.find(i=>i===pr.Devnet)?pr.Devnet:(console.warn(Bh.wallet),pr.Deprecated_Devnet);throw Error("WalletConnect Solana Adapter: Unable to get a default chain from the session.")}function bX(r){return{optionalNamespaces:{solana:{chains:mX(r),methods:[$i.signTransaction,$i.signMessage],events:[]}}}}class I0 extends Error{constructor(){super("QR Code Modal was closed by user"),Object.setPrototypeOf(this,I0.prototype),this.name="QRCodeModalError"}}class MX{_UniversalProvider;_session;_modal;_projectId;_network;_ConnectQueueResolver;constructor(e){if(this.initClient(e.options),this._network=e.network,!e.options.projectId)throw Error("WalletConnect Adapter: Project ID is undefined");this._projectId=e.options.projectId}async connect(){if(this._UniversalProvider||await new Promise(s=>{this._ConnectQueueResolver=s}),!this._UniversalProvider)throw new Error("WalletConnect Adapter - Universal Provider was undefined while calling 'connect()'");if(this._UniversalProvider.session){this._session=this._UniversalProvider.session;const s=I1(this._session,this._network);return this._network=s,this._UniversalProvider.setDefaultChain(s),{publicKey:this.publicKey}}await this.initModal();const e=bX(this._network);this._modal?.open();const t=new AbortController,i=t.signal;this._modal?.subscribeState(s=>{s.open||t.abort(new I0)});try{const s=await Promise.race([this._UniversalProvider?.connect(e),new Promise((o,a)=>{i.addEventListener("abort",()=>{a(i.reason)})})]);if(this._modal?.close(),this._session=s,!s)throw new Yt;const n=I1(s,this._network);return this._network=n,this._UniversalProvider?.setDefaultChain(n),{publicKey:this.publicKey}}catch(s){throw this._modal?.close(),s}}async disconnect(){if(this._UniversalProvider?.session){if(await this.initModal(),!this._modal)throw Error("WalletConnect Adapter -Modal is undefined: unable to disconnect");await this.client.disconnect(),this._session=void 0}else throw new va}get client(){if(this._UniversalProvider)return this._UniversalProvider;throw new va}get session(){if(!this._session)throw new va;return this._session}get publicKey(){if(this._UniversalProvider?.session&&this._session){const{address:e}=mx(this._session?.namespaces.solana?.accounts[0]??"");return new Me(e)}throw new va}async signTransaction(e){this.checkIfWalletSupportsMethod($i.signTransaction);const t=os(e),i=t?{}:e,{signature:s,transaction:n}=await this.client.client.request({chainId:this._network,topic:this.session.topic,request:{method:$i.signTransaction,params:{...i,transaction:this.serialize(e)}}});return n?this.deserialize(n,t):(e.addSignature(this.publicKey,Buffer.from(vn.decode(s))),e)}async signMessage(e){this.checkIfWalletSupportsMethod($i.signMessage);const{signature:t}=await this.client.client.request({chainId:this._network,topic:this.session.topic,request:{method:$i.signMessage,params:{pubkey:this.publicKey.toString(),message:vn.encode(e)}}});return vn.decode(t)}async signAndSendTransaction(e){this.checkIfWalletSupportsMethod($i.signAndSendTransaction);const{signature:t}=await this.client.client.request({chainId:this._network,topic:this.session.topic,request:{method:$i.signAndSendTransaction,params:{transaction:this.serialize(e)}}});return t}async signAllTransactions(e){try{this.checkIfWalletSupportsMethod($i.signAllTransactions);const t=e.map(s=>this.serialize(s)),{transactions:i}=await this.client.client.request({chainId:this._network,topic:this.session.topic,request:{method:$i.signAllTransactions,params:{transactions:t}}});return e.map((s,n)=>os(s)?this.deserialize(i[n]??"",!0):this.deserialize(i[n]??""))}catch(t){if(t instanceof v1){const i=e.map(n=>this.signTransaction(n));return await Promise.all(i)}throw t}}async initClient(e){const t=await UF.init(e);this._UniversalProvider=t,this._ConnectQueueResolver&&this._ConnectQueueResolver(!0)}async initModal(){if(!this._modal){if(!this._UniversalProvider)throw new Error("WalletConnect Adapter - cannot init modal when Universal Provider is undefined");this._modal=wX({projectId:this._projectId,universalProvider:this._UniversalProvider,networks:[Ag,Eg,uX],manualWCControl:!0})}}serialize(e){return Buffer.from(e.serialize({verifySignatures:!1})).toString("base64")}deserialize(e,t=!1){return t?gD.deserialize(Buffer.from(e,"base64")):yD.from(Buffer.from(e,"base64"))}checkIfWalletSupportsMethod(e){if(!this.session.namespaces.solana?.methods.includes(e))throw new v1(e)}}const Q2="WalletConnect";class NX extends Tn{name=Q2;url="https://walletconnect.org";icon="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjE4NSIgdmlld0JveD0iMCAwIDMwMCAxODUiIHdpZHRoPSIzMDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTYxLjQzODU0MjkgMzYuMjU2MjYxMmM0OC45MTEyMjQxLTQ3Ljg4ODE2NjMgMTI4LjIxMTk4NzEtNDcuODg4MTY2MyAxNzcuMTIzMjA5MSAwbDUuODg2NTQ1IDUuNzYzNDE3NGMyLjQ0NTU2MSAyLjM5NDQwODEgMi40NDU1NjEgNi4yNzY1MTEyIDAgOC42NzA5MjA0bC0yMC4xMzY2OTUgMTkuNzE1NTAzYy0xLjIyMjc4MSAxLjE5NzIwNTEtMy4yMDUzIDEuMTk3MjA1MS00LjQyODA4MSAwbC04LjEwMDU4NC03LjkzMTE0NzljLTM0LjEyMTY5Mi0zMy40MDc5ODE3LTg5LjQ0Mzg4Ni0zMy40MDc5ODE3LTEyMy41NjU1Nzg4IDBsLTguNjc1MDU2MiA4LjQ5MzYwNTFjLTEuMjIyNzgxNiAxLjE5NzIwNDEtMy4yMDUzMDEgMS4xOTcyMDQxLTQuNDI4MDgwNiAwbC0yMC4xMzY2OTQ5LTE5LjcxNTUwMzFjLTIuNDQ1NTYxMi0yLjM5NDQwOTItMi40NDU1NjEyLTYuMjc2NTEyMiAwLTguNjcwOTIwNHptMjE4Ljc2Nzc5NjEgNDAuNzczNzQ0OSAxNy45MjE2OTcgMTcuNTQ2ODk3YzIuNDQ1NTQ5IDIuMzk0Mzk2OSAyLjQ0NTU2MyA2LjI3NjQ3NjkuMDAwMDMxIDguNjcwODg5OWwtODAuODEwMTcxIDc5LjEyMTEzNGMtMi40NDU1NDQgMi4zOTQ0MjYtNi40MTA1ODIgMi4zOTQ0NTMtOC44NTYxNi4wMDAwNjItLjAwMDAxLS4wMDAwMS0uMDAwMDIyLS4wMDAwMjItLjAwMDAzMi0uMDAwMDMybC01Ny4zNTQxNDMtNTYuMTU0NTcyYy0uNjExMzktLjU5ODYwMi0xLjYwMjY1LS41OTg2MDItMi4yMTQwNCAwLS4wMDAwMDQuMDAwMDA0LS4wMDAwMDcuMDAwMDA4LS4wMDAwMTEuMDAwMDExbC01Ny4zNTI5MjEyIDU2LjE1NDUzMWMtMi40NDU1MzY4IDIuMzk0NDMyLTYuNDEwNTc1NSAyLjM5NDQ3Mi04Ljg1NjE2MTIuMDAwMDg3LS4wMDAwMTQzLS4wMDAwMTQtLjAwMDAyOTYtLjAwMDAyOC0uMDAwMDQ0OS0uMDAwMDQ0bC04MC44MTI0MTk0My03OS4xMjIxODVjLTIuNDQ1NTYwMjEtMi4zOTQ0MDgtMi40NDU1NjAyMS02LjI3NjUxMTUgMC04LjY3MDkxOTdsMTcuOTIxNzI5NjMtMTcuNTQ2ODY3M2MyLjQ0NTU2MDItMi4zOTQ0MDgyIDYuNDEwNTk4OS0yLjM5NDQwODIgOC44NTYxNjAyIDBsNTcuMzU0OTc3NSA1Ni4xNTUzNTdjLjYxMTM5MDguNTk4NjAyIDEuNjAyNjQ5LjU5ODYwMiAyLjIxNDAzOTggMCAuMDAwMDA5Mi0uMDAwMDA5LjAwMDAxNzQtLjAwMDAxNy4wMDAwMjY1LS4wMDAwMjRsNTcuMzUyMTAzMS01Ni4xNTUzMzNjMi40NDU1MDUtMi4zOTQ0NjMzIDYuNDEwNTQ0LTIuMzk0NTUzMSA4Ljg1NjE2MS0uMDAwMi4wMDAwMzQuMDAwMDMzNi4wMDAwNjguMDAwMDY3My4wMDAxMDEuMDAwMTAxbDU3LjM1NDkwMiA1Ni4xNTU0MzJjLjYxMTM5LjU5ODYwMSAxLjYwMjY1LjU5ODYwMSAyLjIxNDA0IDBsNTcuMzUzOTc1LTU2LjE1NDMyNDljMi40NDU1NjEtMi4zOTQ0MDkyIDYuNDEwNTk5LTIuMzk0NDA5MiA4Ljg1NjE2IDB6IiBmaWxsPSIjM2I5OWZjIi8+PC9zdmc+";supportedTransactionVersions=new Set(["legacy",0]);_publicKey;_connecting;_wallet;_config;_readyState;_onDisconnect;constructor(e){super(),this._publicKey=null,this._connecting=!1,this._config=e,this._wallet=null,this._readyState=typeof window>"u"?B.Unsupported:B.Loadable,this._onDisconnect=this.disconnect.bind(this)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Loadable)throw new Se;this._connecting=!0,this._wallet=new MX({network:this._config.network===E1.Mainnet?Nh.Mainnet:Nh.Devnet,options:this._config.options});const{publicKey:e}=await this._wallet.connect();this._publicKey=e,this.emit("connect",e),this._wallet.client.on("session_delete",this._onDisconnect)}catch(e){throw e.constructor.name==="QRCodeModalError"||e instanceof Error&&e.name==="QRCodeModalError"?new mD:(this._connecting=!1,e)}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.client.off("session_delete",this._onDisconnect),this._publicKey=null;try{e.client.session&&await e.disconnect()}catch(t){console.error("WalletConnectWalletAdapter: disconnect error",t),this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signMessage(e)}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAndSendTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAndSendTransaction(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const V2="XDEFI";class vX extends ht{constructor(e={}){super(),this.name=V2,this.url="https://xdefi.io",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE0LjI2MjggMTMuNDAxM0MxMi40MjI4IDE0LjUzMDcgOS45NTk5NyAxNS4xMTI0IDcuNDY1NjkgMTQuOTg4MUM1LjM2ODU1IDE0Ljg4NjUgMy42NDg1NSAxNC4xNDExIDIuNjA4NTUgMTIuOTE1N0MxLjY5NDI2IDExLjgyMDEgMS4zMzk5OCAxMC4zNzQ1IDEuNTc5OTggOC43MTE0M0MxLjY2MTMyIDguMTU4NzQgMS44MjgwMiA3LjYyMTY2IDIuMDc0MjYgNy4xMTg5NkwyLjEwODU1IDcuMDQ4MzdDMi45NzE4IDUuNDA1OTUgNC4yNTI5MyA0LjAxMzk3IDUuODI1ODQgMy4wMDk0MkM3LjM5ODc1IDIuMDA0ODYgOS4yMDkyNCAxLjQyMjM2IDExLjA3OTEgMS4zMTkyNEMxMi45NDkgMS4yMTYxMSAxNC44MTM4IDEuNTk1OTIgMTYuNDkwMSAyLjQyMTI4QzE4LjE2NjMgMy4yNDY2NSAxOS41OTYyIDQuNDg5MTIgMjAuNjM5IDYuMDI2NDFDMjEuNjgxOSA3LjU2MzcxIDIyLjMwMTcgOS4zNDI4NSAyMi40Mzc0IDExLjE4ODdDMjIuNTczMiAxMy4wMzQ2IDIyLjIyMDMgMTQuODgzNiAyMS40MTM0IDE2LjU1MzhDMjAuNjA2NSAxOC4yMjQgMTkuMzczNSAxOS42NTc3IDE3LjgzNTYgMjAuNzE0QzE2LjI5NzggMjEuNzcwMiAxNC41MDgxIDIyLjQxMjYgMTIuNjQyOCAyMi41Nzc4TDEyLjc1NzEgMjMuODczOEMxNC44NTE0IDIzLjY4OTQgMTYuODYxIDIyLjk2OTEgMTguNTg3OCAyMS43ODM3QzIwLjMxNDcgMjAuNTk4NCAyMS42OTkzIDE4Ljk4ODkgMjIuNjA1MiAxNy4xMTM4QzIzLjUxMTEgMTUuMjM4NyAyMy45MDcxIDEzLjE2MjcgMjMuNzU0MiAxMS4wOTA0QzIzLjYwMTIgOS4wMTgwOCAyMi45MDQ2IDcuMDIwODggMjEuNzMyOSA1LjI5NTU1QzIwLjU2MTMgMy41NzAyMiAxOC45NTUgMi4xNzYzIDE3LjA3MjQgMS4yNTExMUMxNS4xODk4IDAuMzI1OTA5IDEzLjA5NTcgLTAuMDk4NjQxMSAxMC45OTY1IDAuMDE5Mjc4N0M4Ljg5NzMzIDAuMTM3MTk4IDYuODY1NDQgMC43OTM1MiA1LjEwMTAyIDEuOTIzNTlDMy4zMzY2IDMuMDUzNjUgMS45MDA1MyA0LjYxODQ4IDAuOTM0MjY0IDYuNDYzOUwwLjg4ODU0OCA2LjU1NzA3QzAuNTgzMDgzIDcuMTgwOSAwLjM3Njg0NyA3Ljg0NzU2IDAuMjc3MTIgOC41MzM1NEMtMC4wMDg1OTQ1IDEwLjU2MDggMC40MzQyNiAxMi4zNjUxIDEuNTkxNCAxMy43NTQyQzIuODU3MTIgMTUuMjczMyA0LjkxNzEyIDE2LjE3NjggNy4zODg1NSAxNi4yOTU0QzEwLjM5NzEgMTYuNDQ1MSAxMy4zODg1IDE1LjYzNDcgMTUuNTExNCAxNC4xNDM5TDE0LjI2MjggMTMuNDAxM1oiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0xNi43OCAxNC44NzUxQzE1LjU4MjkgMTUuOTAyOSAxMi44IDE3Ljc2NjQgOC4xODI4NiAxOC4wMjA1QzMuMDE0MjkgMTguMzAyOSAwLjg2MDAwMSAxNi42NDI3IDAuODQwMDAxIDE2LjYyNTdMMC40MjI4NTYgMTcuMTMzOUwwLjg0Mjg1NiAxNi42MzQyTDAgMTcuNjMzN0MwLjA5MTQyODYgMTcuNzA5OSAyLjE1NzE0IDE5LjM1ODkgNy4wMDg1NyAxOS4zNTg5QzcuNDA1NzEgMTkuMzU4OSA3LjgyMjg2IDE5LjM1ODkgOC4yNTcxNCAxOS4zMjVDMTMuODM3MSAxOS4wMTcyIDE2LjkwMjkgMTYuNjExNiAxNy45NzE0IDE1LjU4MzhMMTYuNzggMTQuODc1MVoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0xOS4wMiAxNi4yMTkyQzE4LjMxMjEgMTcuMTM4NyAxNy40NDA4IDE3LjkyMzMgMTYuNDQ4NiAxOC41MzQ1QzEyLjk1MTUgMjAuNzY1IDguNTAyODkgMjEuMDUzIDUuMzg4NiAyMC44OTc4TDUuMzIyODkgMjIuMTk5NEM1Ljg0NTc1IDIyLjIyNDggNi4zNDg2MSAyMi4yMzYxIDYuODM3MTggMjIuMjM2MUMxNS42MiAyMi4yMzYxIDE5LjE2ODYgMTguMjgzMiAyMC4xNiAxNi44NzE0TDE5LjAxNzIgMTYuMjA3OSIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTE4LjY4NTcgMTEuMjkyMkMxOS4yNjggMTEuMjkyMiAxOS43NCAxMC44MjU3IDE5Ljc0IDEwLjI1MDNDMTkuNzQgOS42NzQ4OSAxOS4yNjggOS4yMDg0MiAxOC42ODU3IDkuMjA4NDJDMTguMTAzNCA5LjIwODQyIDE3LjYzMTQgOS42NzQ4OSAxNy42MzE0IDEwLjI1MDNDMTcuNjMxNCAxMC44MjU3IDE4LjEwMzQgMTEuMjkyMiAxOC42ODU3IDExLjI5MjJaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",this.supportedTransactionVersions=null,this._readyState=typeof window>"u"||typeof document>"u"?B.Unsupported:B.NotDetected,this._disconnected=()=>{const t=this._wallet;t&&(t.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null,this.emit("error",new or),this.emit("disconnect"))},this._connecting=!1,this._wallet=null,this._publicKey=null,this._readyState!==B.Unsupported&&ot(()=>window.xfi?.solana?.isXDEFI?(this._readyState=B.Installed,this.emit("readyStateChange",this._readyState),!0):!1)}get publicKey(){return this._publicKey}get connecting(){return this._connecting}get connected(){return!!this._wallet?.isConnected}get readyState(){return this._readyState}async connect(){try{if(this.connected||this.connecting)return;if(this._readyState!==B.Installed)throw new Se;this._connecting=!0;const e=window.xfi.solana;if(!e.isConnected)try{await e.connect()}catch(i){throw new Yt(i?.message,i)}if(!e.publicKey)throw new Ue;let t;try{t=new Me(e.publicKey.toBytes())}catch(i){throw new Ie(i?.message,i)}e.on("disconnect",this._disconnected),this._wallet=e,this._publicKey=t,this.emit("connect",t)}catch(e){throw this.emit("error",e),e}finally{this._connecting=!1}}async disconnect(){const e=this._wallet;if(e){e.off("disconnect",this._disconnected),this._wallet=null,this._publicKey=null;try{await e.disconnect()}catch(t){this.emit("error",new At(t?.message,t))}}this.emit("disconnect")}async signTransaction(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signTransaction(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signAllTransactions(e){try{const t=this._wallet;if(!t)throw new q;try{return await t.signAllTransactions(e)||e}catch(i){throw new ie(i?.message,i)}}catch(t){throw this.emit("error",t),t}}async signMessage(e){try{const t=this._wallet;if(!t)throw new q;try{const{signature:i}=await t.signMessage(e);return i}catch(i){throw new _t(i?.message,i)}}catch(t){throw this.emit("error",t),t}}}const Fte=Object.freeze(Object.defineProperty({__proto__:null,AlphaWalletAdapter:bD,AlphaWalletName:T1,AvanaWalletAdapter:MD,AvanaWalletName:S1,BitKeepWalletAdapter:vD,BitKeepWalletName:ND,BitgetWalletAdapter:j1,BitgetWalletName:Tg,BitpieWalletAdapter:ID,BitpieWalletName:x1,CloverWalletAdapter:DD,CloverWalletName:C1,Coin98WalletAdapter:TD,Coin98WalletName:_1,CoinbaseWalletAdapter:SD,CoinbaseWalletName:O1,CoinhubWalletAdapter:jD,CoinhubWalletName:z1,FractalWalletAdapter:xD,FractalWalletName:L1,HuobiWalletAdapter:CD,HuobiWalletName:P1,HyperPayWalletAdapter:_D,HyperPayWalletName:k1,KeystoneWalletAdapter:OD,KeystoneWalletName:U1,KrystalWalletAdapter:zD,KrystalWalletName:R1,LedgerWalletAdapter:KD,LedgerWalletName:V1,MathWalletAdapter:JD,MathWalletName:W1,NekoWalletAdapter:XD,NekoWalletName:q1,NightlyWalletAdapter:eA,NightlyWalletName:Z1,NufiWalletAdapter:tA,NufiWalletName:H1,OntoWalletAdapter:rA,OntoWalletName:G1,ParticleAdapter:iA,ParticleName:K1,PhantomWalletAdapter:sA,PhantomWalletName:J1,SafePalWalletAdapter:nA,SafePalWalletName:X1,SaifuWalletAdapter:oA,SaifuWalletName:eN,SalmonWalletAdapter:aA,SalmonWalletName:tN,SkyWalletAdapter:cA,SkyWalletName:rN,SolflareWalletAdapter:uA,SolflareWalletName:iN,SolongWalletAdapter:lA,SolongWalletName:sN,SpotWalletAdapter:hA,SpotWalletName:nN,TokenPocketWalletAdapter:fA,TokenPocketWalletName:aN,TokenaryWalletAdapter:dA,TokenaryWalletName:oN,TorusWalletAdapter:pA,TorusWalletName:cN,TrezorWalletAdapter:gA,TrezorWalletName:uN,TrustWalletAdapter:yA,TrustWalletName:lN,UnsafeBurnerWalletAdapter:bA,UnsafeBurnerWalletName:hN,WalletConnectWalletAdapter:NX,WalletConnectWalletName:Q2,XDEFIWalletAdapter:vX,XDEFIWalletName:V2,getDerivationPath:Y1},Symbol.toStringTag,{value:"Module"}));export{Tr as $,Ute as A,Mh as B,Lte as C,dh as D,Rte as E,$te as F,R as G,Pj as H,r4 as I,ns as J,FJ as K,mt as L,bt as M,lr as N,J as O,ye as P,ue as Q,Ke as R,Xc as S,Pr as T,be as U,Hr as V,kte as W,we as X,ce as Y,L2 as Z,Dg as _,Cy as a,Ra as a0,ih as a1,Fa as a2,Hc as a3,UD as a4,Bu as a5,CX as a6,xX as a7,_X as a8,jX as a9,SX as aa,wr as ab,vn as ac,LD as ad,mh as ae,ae as af,Ig as ag,ui as ah,Xh as ai,Fte as aj,Ej as b,dee as c,kj as d,hee as e,Gh as f,yee as g,pee as h,LY as i,Dte as j,zb as k,N4 as l,AY as m,PY as n,Ate as o,Ite as p,dd as q,fee as r,Tte as s,sv as t,Ete as u,Si as v,Pte as w,Jr as x,Qt as y,Ea as z};