@wormhole-foundation/wormhole-connect 1.1.7-beta.0-development → 1.1.8-beta.1-development

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 (256) hide show
  1. package/dist/assets/{algorand-Bg-MfjsH.js → algorand-vDDEz6KP.js} +2 -2
  2. package/dist/assets/{ccip-Bk3xy3UX.js → ccip-DQXRFvqz.js} +1 -1
  3. package/dist/assets/{cosmwasm-xANzAboS.js → cosmwasm-DP4CIVSM.js} +2 -2
  4. package/dist/assets/{evm-B20gvxWA.js → evm-BB3755Wr.js} +1 -1
  5. package/dist/assets/{evm-CZSGnl_A.js → evm-C48USybm.js} +4 -4
  6. package/dist/assets/{index-eLk_b8u9.js → index-BU0ECMia.js} +1 -1
  7. package/dist/assets/{index-DyD6kblh.js → index-BbJVBTsE.js} +1 -1
  8. package/dist/assets/{index-BYxgRLLh.js → index-BhEp9mlK.js} +1 -1
  9. package/dist/assets/{index-CI40JjNh.js → index-BjxXYs1y.js} +2 -2
  10. package/dist/assets/{index-D3WFv54i.js → index-Bvun80fl.js} +1 -1
  11. package/dist/assets/{index-jD6ZZ5Tu.js → index-Bz-32kSJ.js} +1 -1
  12. package/dist/assets/{index-CLcPjTbq.js → index-CVb8oZT5.js} +2 -2
  13. package/dist/assets/{index-BN1xR-e3.js → index-Cx-EaiKs.js} +1 -1
  14. package/dist/assets/index-DP2zLB5d.js +5 -0
  15. package/dist/assets/{index-Bmx9-Bo8.js → index-DjbIKpGg.js} +1 -1
  16. package/dist/assets/{index-CxijOPcm.js → index-re-SltAL.js} +1 -1
  17. package/dist/assets/{index.es-CXW154rj.js → index.es-B57TzKWR.js} +2 -2
  18. package/dist/assets/{solana-DOaiyZir.js → solana-Bc-ePjuF.js} +1 -1
  19. package/dist/assets/{sui-mXOoFb4M.js → sui-DVNpNCUB.js} +4 -4
  20. package/dist/assets/{unsignedTransaction-0WUum9tP.js → unsignedTransaction-CPy_oMd2.js} +1 -1
  21. package/dist/assets/unsignedTransaction-arVvzoJx.js +1 -0
  22. package/dist/main.js +68 -68
  23. package/dist/src/config/devnet/chains.d.ts.map +1 -1
  24. package/dist/src/config/devnet/tokens.d.ts.map +1 -1
  25. package/dist/src/config/mainnet/chains.d.ts.map +1 -1
  26. package/dist/src/config/mainnet/tokens.d.ts.map +1 -1
  27. package/dist/src/config/testnet/chains.d.ts.map +1 -1
  28. package/dist/src/config/testnet/tokens.d.ts.map +1 -1
  29. package/dist/src/config/types.d.ts +4 -3
  30. package/dist/src/config/types.d.ts.map +1 -1
  31. package/dist/src/icons/ChainIcons.d.ts +9 -0
  32. package/dist/src/icons/ChainIcons.d.ts.map +1 -0
  33. package/dist/src/icons/Chains/APT.d.ts +4 -0
  34. package/dist/src/icons/Chains/APT.d.ts.map +1 -0
  35. package/dist/src/icons/Chains/ARBITRUM.d.ts +4 -0
  36. package/dist/src/icons/Chains/ARBITRUM.d.ts.map +1 -0
  37. package/dist/src/icons/Chains/AVAX.d.ts +4 -0
  38. package/dist/src/icons/Chains/AVAX.d.ts.map +1 -0
  39. package/dist/src/icons/Chains/BASE.d.ts +4 -0
  40. package/dist/src/icons/Chains/BASE.d.ts.map +1 -0
  41. package/dist/src/icons/Chains/BLAST.d.ts +4 -0
  42. package/dist/src/icons/Chains/BLAST.d.ts.map +1 -0
  43. package/dist/src/icons/Chains/BSC.d.ts +4 -0
  44. package/dist/src/icons/Chains/BSC.d.ts.map +1 -0
  45. package/dist/src/icons/Chains/CELO.d.ts +4 -0
  46. package/dist/src/icons/Chains/CELO.d.ts.map +1 -0
  47. package/dist/src/icons/Chains/ETH.d.ts +4 -0
  48. package/dist/src/icons/Chains/ETH.d.ts.map +1 -0
  49. package/dist/src/icons/Chains/FTM.d.ts +4 -0
  50. package/dist/src/icons/Chains/FTM.d.ts.map +1 -0
  51. package/dist/src/icons/Chains/GLMR.d.ts +4 -0
  52. package/dist/src/icons/Chains/GLMR.d.ts.map +1 -0
  53. package/dist/src/icons/Chains/KAIA.d.ts +4 -0
  54. package/dist/src/icons/Chains/KAIA.d.ts.map +1 -0
  55. package/dist/src/icons/Chains/MANTLE.d.ts +4 -0
  56. package/dist/src/icons/Chains/MANTLE.d.ts.map +1 -0
  57. package/dist/src/icons/Chains/OPTIMISM.d.ts +4 -0
  58. package/dist/src/icons/Chains/OPTIMISM.d.ts.map +1 -0
  59. package/dist/src/icons/Chains/OSMO.d.ts +4 -0
  60. package/dist/src/icons/Chains/OSMO.d.ts.map +1 -0
  61. package/dist/src/icons/{Tokens/MATIC.d.ts → Chains/POLY.d.ts} +1 -1
  62. package/dist/src/icons/Chains/POLY.d.ts.map +1 -0
  63. package/dist/src/icons/Chains/SCROLL.d.ts +4 -0
  64. package/dist/src/icons/Chains/SCROLL.d.ts.map +1 -0
  65. package/dist/src/icons/Chains/SOL.d.ts +4 -0
  66. package/dist/src/icons/Chains/SOL.d.ts.map +1 -0
  67. package/dist/src/icons/Chains/SUI.d.ts +4 -0
  68. package/dist/src/icons/Chains/SUI.d.ts.map +1 -0
  69. package/dist/src/icons/Chains/XLAYER.d.ts +4 -0
  70. package/dist/src/icons/Chains/XLAYER.d.ts.map +1 -0
  71. package/dist/src/icons/{Tokens/noIcon.d.ts → Chains/empty.d.ts} +1 -1
  72. package/dist/src/icons/Chains/empty.d.ts.map +1 -0
  73. package/dist/src/icons/Error.d.ts +5 -0
  74. package/dist/src/icons/Error.d.ts.map +1 -0
  75. package/dist/src/icons/TokenIcons.d.ts +4 -4
  76. package/dist/src/icons/TokenIcons.d.ts.map +1 -1
  77. package/dist/src/icons/Tokens/POLY.d.ts +4 -0
  78. package/dist/src/icons/Tokens/POLY.d.ts.map +1 -0
  79. package/{lib/src/icons/Tokens/noIcon.d.ts → dist/src/icons/Tokens/empty.d.ts} +1 -1
  80. package/dist/src/icons/Tokens/empty.d.ts.map +1 -0
  81. package/dist/src/icons/Warning.d.ts +5 -0
  82. package/dist/src/icons/Warning.d.ts.map +1 -0
  83. package/dist/src/utils/sdkv2.d.ts.map +1 -1
  84. package/dist/src/views/v2/Bridge/AmountInput/index.d.ts.map +1 -1
  85. package/dist/src/views/v2/Bridge/AssetPicker/ChainList.d.ts.map +1 -1
  86. package/dist/src/views/v2/Bridge/AssetPicker/index.d.ts.map +1 -1
  87. package/dist/src/views/v2/Bridge/Routes/SingleRoute.d.ts.map +1 -1
  88. package/dist/src/views/v2/Bridge/SwapInputs/index.d.ts.map +1 -1
  89. package/dist/src/views/v2/Redeem/TransactionDetails/index.d.ts.map +1 -1
  90. package/dist/src/views/v2/TxHistory/Item/index.d.ts.map +1 -1
  91. package/lib/{algorand-DsJKeIr5.mjs → algorand-CnhJd_dq.mjs} +3 -3
  92. package/lib/{algorand-BixJkKlf.js → algorand-F3xFUrZu.js} +1 -1
  93. package/lib/{aptos-BfNT2MMg.js → aptos-CUGJTnxp.js} +2 -2
  94. package/lib/{aptos-prTLw0zg.mjs → aptos-DZsV2iRv.mjs} +1 -1
  95. package/lib/{aptos-DP1G2KNL.mjs → aptos-Dzo7tWbP.mjs} +3 -3
  96. package/lib/{aptos-DSDxN2Oh.js → aptos-JorFrRlO.js} +1 -1
  97. package/lib/{ccip-DqvPZUFd.mjs → ccip-CGdvCMfU.mjs} +1 -1
  98. package/lib/{ccip-CORtuKLa.js → ccip-WvYiDS-K.js} +1 -1
  99. package/lib/{cosmwasm-CARLnvsg.mjs → cosmwasm-DN0AHdEC.mjs} +6 -6
  100. package/lib/{cosmwasm-D_THf_Jx.js → cosmwasm-Dg8T1AeT.js} +2 -2
  101. package/lib/{events-ByywXw-I.js → events-D8Ws4SSV.js} +1 -1
  102. package/lib/{events-D26WqMv7.mjs → events-DdSBahX7.mjs} +1 -1
  103. package/lib/{evm-B4avmxZ0.js → evm-3fprRMRy.js} +1 -1
  104. package/lib/{evm-PZUgLFER.js → evm-D-BOv3OA.js} +4 -4
  105. package/lib/{evm-qAJdXmfg.mjs → evm-DnhPF5dt.mjs} +12 -12
  106. package/lib/{evm-BIZUXCC2.mjs → evm-H_bKmdGg.mjs} +7 -7
  107. package/lib/{index-Dcw9cmF1.js → index--DjYWDRB.js} +1 -1
  108. package/lib/{index-7QTP5abI.js → index-B-zhCYHk.js} +1 -1
  109. package/lib/{index-C3wsSYLo.mjs → index-B17OfY1l.mjs} +2 -2
  110. package/lib/{index-Uwpj8GZq.js → index-B1wNeKc9.js} +1 -1
  111. package/lib/{index-D2AdBTEw.mjs → index-BHklNnJk.mjs} +4 -4
  112. package/lib/{index-DCWQkYP9.mjs → index-BVOQlHAu.mjs} +2 -2
  113. package/lib/{index-CZyMJdwZ.mjs → index-BcmVWAO0.mjs} +1 -1
  114. package/lib/{index-Bk4O6F71.mjs → index-BdfG3lJW.mjs} +1 -1
  115. package/lib/index-BjJ4BDhi.js +5 -0
  116. package/lib/{index-Bo-4EpMy.mjs → index-BlV7bTcP.mjs} +11 -11
  117. package/lib/{index-CjqSmvJv.mjs → index-BpgHIKBe.mjs} +11785 -10206
  118. package/lib/{index-B12QivYB.mjs → index-BuynHxM5.mjs} +140 -149
  119. package/lib/{index-Dui1f--u.mjs → index-BvmOowYJ.mjs} +4 -4
  120. package/lib/{index-Ci2My7Wd.js → index-C7Ggs6qV.js} +1 -1
  121. package/lib/{index-CyivlCUm.mjs → index-C7iFAy5u.mjs} +1 -1
  122. package/lib/{index-CjwkPmul.mjs → index-CMboM3K3.mjs} +2 -2
  123. package/lib/{index-B_MZPnqY.mjs → index-CXSjmxbe.mjs} +2 -2
  124. package/lib/{index-DkGpLtjt.js → index-CYuWGvEH.js} +1 -1
  125. package/lib/{index-C9pDNiDb.mjs → index-C_rNtVK6.mjs} +2 -2
  126. package/lib/{index-CPTLMohs.js → index-CjVR2y_P.js} +1 -1
  127. package/lib/index-CnSAQLrV.mjs +3816 -0
  128. package/lib/{index-DHqcaM3p.js → index-CqEKPcR6.js} +1 -1
  129. package/lib/{index-ByoyzlD8.mjs → index-D2ZeoQJK.mjs} +2 -2
  130. package/lib/{index-aGiZ0Ii1.mjs → index-D3KQzv3w.mjs} +3 -3
  131. package/lib/{index-pRsBJecB.mjs → index-D3R38eof.mjs} +2 -2
  132. package/lib/{index-BlY7x8aT.js → index-D4UVCCA_.js} +1 -1
  133. package/lib/{index-CQJHdG55.mjs → index-D5V8xUx6.mjs} +2 -2
  134. package/lib/{index-De8biE2M.mjs → index-DCDfhwO6.mjs} +1 -1
  135. package/lib/{index-BrMNAxOe.js → index-DJNuweoE.js} +1 -1
  136. package/lib/{index-BMrLuIZN.js → index-DK3NwBVm.js} +1 -1
  137. package/lib/{index-BsusxMly.js → index-DLboWTYu.js} +1 -1
  138. package/lib/{index-DPqJrtJC.js → index-DWjlQfKm.js} +1 -1
  139. package/lib/{index-DVYpLXjZ.mjs → index-DayCZrK8.mjs} +2 -2
  140. package/lib/{index-CwU49oAB.mjs → index-DeqerBZA.mjs} +2 -2
  141. package/lib/{index-DW5lODgc.js → index-DgegRtGl.js} +1 -1
  142. package/lib/{index-9uqt3JNu.js → index-DpDevDxN.js} +1 -1
  143. package/lib/{index-CYf3zJ9U.js → index-Ds1qW639.js} +1 -1
  144. package/lib/{index-0HzcGIG7.js → index-DwrJnKct.js} +1 -1
  145. package/lib/{index-DLtY6fYS.js → index-YHxHDLCx.js} +1 -1
  146. package/lib/index-ZxjZ25k7.js +5 -0
  147. package/lib/{index-CTR28Kqb.js → index-_H1GTLUN.js} +1 -1
  148. package/lib/{index-BckHu5WB.mjs → index-a0jcclYd.mjs} +4 -4
  149. package/lib/{index-Cm4mzU66.js → index-dJYuE1XM.js} +1 -1
  150. package/lib/{index-By-bUyoB.mjs → index-fWs1RWi9.mjs} +2 -2
  151. package/lib/{index-C0BdeM6x.js → index-tgY8ENKu.js} +1 -1
  152. package/lib/{index-C7GdFYql.js → index-uRFn7LyP.js} +83 -83
  153. package/lib/{index.es-Cck7Q64X.mjs → index.es-DmO_K9V9.mjs} +5 -5
  154. package/lib/{index.es-AHohFAAx.js → index.es-ebfnW8JA.js} +2 -2
  155. package/lib/index.js +1 -1
  156. package/lib/index.mjs +2 -2
  157. package/lib/{keccak-BH-QLSRT.mjs → keccak-C4VHYT3-.mjs} +1 -1
  158. package/lib/{keccak-eY58RWPu.js → keccak-CspXZGIt.js} +1 -1
  159. package/lib/{pbkdf2-BfOdx-Dl.mjs → pbkdf2-B6Kn0zmY.mjs} +1 -1
  160. package/lib/{pbkdf2-CSYv20wX.js → pbkdf2-DtpaWNtQ.js} +1 -1
  161. package/lib/{signer-B8jRb0nz.js → signer-DBqxRPZ3.js} +1 -1
  162. package/lib/{signer-DS-_n4Nt.mjs → signer-DZsY9TLP.mjs} +1 -1
  163. package/lib/{solana--qAtGpyY.mjs → solana-BABTG8N7.mjs} +4 -4
  164. package/lib/solana-CR8CywCk.mjs +16 -0
  165. package/lib/solana-CUDRhtZZ.js +1 -0
  166. package/lib/{solana-BSRpQGAt.js → solana-DEDJJyBR.js} +1 -1
  167. package/lib/{solanaEmbed.esm-BQflKuI4.mjs → solanaEmbed.esm-BAbo7-i8.mjs} +3 -3
  168. package/lib/{solanaEmbed.esm-5JVQ2kx5.js → solanaEmbed.esm-BIOABkzi.js} +1 -1
  169. package/lib/src/config/devnet/chains.d.ts.map +1 -1
  170. package/lib/src/config/devnet/tokens.d.ts.map +1 -1
  171. package/lib/src/config/mainnet/chains.d.ts.map +1 -1
  172. package/lib/src/config/mainnet/tokens.d.ts.map +1 -1
  173. package/lib/src/config/testnet/chains.d.ts.map +1 -1
  174. package/lib/src/config/testnet/tokens.d.ts.map +1 -1
  175. package/lib/src/config/types.d.ts +4 -3
  176. package/lib/src/config/types.d.ts.map +1 -1
  177. package/lib/src/icons/ChainIcons.d.ts +9 -0
  178. package/lib/src/icons/ChainIcons.d.ts.map +1 -0
  179. package/lib/src/icons/Chains/APT.d.ts +4 -0
  180. package/lib/src/icons/Chains/APT.d.ts.map +1 -0
  181. package/lib/src/icons/Chains/ARBITRUM.d.ts +4 -0
  182. package/lib/src/icons/Chains/ARBITRUM.d.ts.map +1 -0
  183. package/lib/src/icons/Chains/AVAX.d.ts +4 -0
  184. package/lib/src/icons/Chains/AVAX.d.ts.map +1 -0
  185. package/lib/src/icons/Chains/BASE.d.ts +4 -0
  186. package/lib/src/icons/Chains/BASE.d.ts.map +1 -0
  187. package/lib/src/icons/Chains/BLAST.d.ts +4 -0
  188. package/lib/src/icons/Chains/BLAST.d.ts.map +1 -0
  189. package/lib/src/icons/Chains/BSC.d.ts +4 -0
  190. package/lib/src/icons/Chains/BSC.d.ts.map +1 -0
  191. package/lib/src/icons/Chains/CELO.d.ts +4 -0
  192. package/lib/src/icons/Chains/CELO.d.ts.map +1 -0
  193. package/lib/src/icons/Chains/ETH.d.ts +4 -0
  194. package/lib/src/icons/Chains/ETH.d.ts.map +1 -0
  195. package/lib/src/icons/Chains/FTM.d.ts +4 -0
  196. package/lib/src/icons/Chains/FTM.d.ts.map +1 -0
  197. package/lib/src/icons/Chains/GLMR.d.ts +4 -0
  198. package/lib/src/icons/Chains/GLMR.d.ts.map +1 -0
  199. package/lib/src/icons/Chains/KAIA.d.ts +4 -0
  200. package/lib/src/icons/Chains/KAIA.d.ts.map +1 -0
  201. package/lib/src/icons/Chains/MANTLE.d.ts +4 -0
  202. package/lib/src/icons/Chains/MANTLE.d.ts.map +1 -0
  203. package/lib/src/icons/Chains/OPTIMISM.d.ts +4 -0
  204. package/lib/src/icons/Chains/OPTIMISM.d.ts.map +1 -0
  205. package/lib/src/icons/Chains/OSMO.d.ts +4 -0
  206. package/lib/src/icons/Chains/OSMO.d.ts.map +1 -0
  207. package/lib/src/icons/{Tokens/MATIC.d.ts → Chains/POLY.d.ts} +1 -1
  208. package/lib/src/icons/Chains/POLY.d.ts.map +1 -0
  209. package/lib/src/icons/Chains/SCROLL.d.ts +4 -0
  210. package/lib/src/icons/Chains/SCROLL.d.ts.map +1 -0
  211. package/lib/src/icons/Chains/SOL.d.ts +4 -0
  212. package/lib/src/icons/Chains/SOL.d.ts.map +1 -0
  213. package/lib/src/icons/Chains/SUI.d.ts +4 -0
  214. package/lib/src/icons/Chains/SUI.d.ts.map +1 -0
  215. package/lib/src/icons/Chains/XLAYER.d.ts +4 -0
  216. package/lib/src/icons/Chains/XLAYER.d.ts.map +1 -0
  217. package/lib/src/icons/Chains/empty.d.ts +4 -0
  218. package/lib/src/icons/Chains/empty.d.ts.map +1 -0
  219. package/lib/src/icons/Error.d.ts +5 -0
  220. package/lib/src/icons/Error.d.ts.map +1 -0
  221. package/lib/src/icons/TokenIcons.d.ts +4 -4
  222. package/lib/src/icons/TokenIcons.d.ts.map +1 -1
  223. package/lib/src/icons/Tokens/POLY.d.ts +4 -0
  224. package/lib/src/icons/Tokens/POLY.d.ts.map +1 -0
  225. package/lib/src/icons/Tokens/empty.d.ts +4 -0
  226. package/lib/src/icons/Tokens/empty.d.ts.map +1 -0
  227. package/lib/src/icons/Warning.d.ts +5 -0
  228. package/lib/src/icons/Warning.d.ts.map +1 -0
  229. package/lib/src/utils/sdkv2.d.ts.map +1 -1
  230. package/lib/src/views/v2/Bridge/AmountInput/index.d.ts.map +1 -1
  231. package/lib/src/views/v2/Bridge/AssetPicker/ChainList.d.ts.map +1 -1
  232. package/lib/src/views/v2/Bridge/AssetPicker/index.d.ts.map +1 -1
  233. package/lib/src/views/v2/Bridge/Routes/SingleRoute.d.ts.map +1 -1
  234. package/lib/src/views/v2/Bridge/SwapInputs/index.d.ts.map +1 -1
  235. package/lib/src/views/v2/Redeem/TransactionDetails/index.d.ts.map +1 -1
  236. package/lib/src/views/v2/TxHistory/Item/index.d.ts.map +1 -1
  237. package/lib/{sui-CHdzm0pJ.js → sui-CD_LLkGE.js} +2 -2
  238. package/lib/{sui-CTaDMtDE.mjs → sui-CfiEBlu_.mjs} +74 -75
  239. package/lib/{sui-BrXrepC3.mjs → sui-DYCvDMMh.mjs} +1 -1
  240. package/lib/{sui-B9mPyuqg.js → sui-Da1ir949.js} +1 -1
  241. package/lib/unsignedTransaction-BD81leu1.mjs +16 -0
  242. package/lib/{unsignedTransaction-B6O-8vao.js → unsignedTransaction-BNppfIUA.js} +1 -1
  243. package/lib/unsignedTransaction-DzSLsK-p.js +1 -0
  244. package/lib/{unsignedTransaction-BLH74msy.mjs → unsignedTransaction-l29mWyX4.mjs} +4 -4
  245. package/package.json +17 -17
  246. package/dist/src/icons/Tokens/MATIC.d.ts.map +0 -1
  247. package/dist/src/icons/Tokens/noIcon.d.ts.map +0 -1
  248. package/dist/src/utils/repairVaa.d.ts +0 -4
  249. package/dist/src/utils/repairVaa.d.ts.map +0 -1
  250. package/lib/index-CqmsT5vZ.js +0 -5
  251. package/lib/solana-Dcts27AJ.js +0 -1
  252. package/lib/solana-qJnrP02J.mjs +0 -16
  253. package/lib/src/icons/Tokens/MATIC.d.ts.map +0 -1
  254. package/lib/src/icons/Tokens/noIcon.d.ts.map +0 -1
  255. package/lib/src/utils/repairVaa.d.ts +0 -4
  256. package/lib/src/utils/repairVaa.d.ts.map +0 -1
@@ -1 +1 @@
1
- "use strict";var T=Object.defineProperty;var C=(m,e,t)=>e in m?T(m,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):m[e]=t;var d=(m,e,t)=>C(m,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-BsusxMly.js");const c=require("./cosmwasm-D_THf_Jx.js"),i=require("./unsignedTransaction-B6O-8vao.js"),s=require("./index-C7GdFYql.js");class l{constructor(e,t,r,n){d(this,"network");d(this,"chain");d(this,"rpc");d(this,"contracts");d(this,"tokenBridge");d(this,"translator");this.network=e,this.chain=t,this.rpc=r,this.contracts=n;const a=this.contracts.tokenBridge;if(!a)throw new Error(`Wormhole Token Bridge contract for domain ${t} not found`);if(this.tokenBridge=a,this.translator=this.contracts.translator,this.translator!==void 0&&this.translator==="")throw new Error("Translator address may be undefined but not empty string")}static async fromRpc(e,t){const[r,n]=await c.CosmwasmPlatform.chainFromRpc(e),a=t[n];if(a.network!==r)throw new Error(`Network mismatch: ${a.network} != ${r}`);return new l(r,n,e,t[n].contracts)}async isWrappedAsset(e){try{return await this.getOriginalAsset(e),!0}catch{}return!1}async hasWrappedAsset(e){try{return await this.getWrappedAsset(e),!0}catch{}return!1}async getWrappedAsset(e){if(e.chain===this.chain)throw new Error(`Expected foreign chain, got ${e.chain}`);if(s.isNative(e.address))throw new Error("Native asset cannot be a wrapped asset");const t=s.b64.encode(e.address.toUniversalAddress().toUint8Array()),{address:r}=await this.rpc.queryContractSmart(this.tokenBridge,{wrapped_registry:{chain:s.toChainId(e.chain),address:t}});return s.toNative(this.chain,r)}async getOriginalAsset(e){let t=new s.CosmwasmAddress(e);t.denomType==="factory"&&(t=c.Gateway.factoryToCw20(t));const r=await this.rpc.queryContractSmart(t.toString(),{wrapped_asset_info:{}}),n=s.toChain(r.asset_chain),a=s.b64.decode(r.asset_address);return{chain:n,address:new s.UniversalAddress(new Uint8Array(a))}}async getTokenUniversalAddress(e){return new s.CosmwasmAddress(e).toUniversalAddress()}async getTokenNativeAddress(e,t){return new s.CosmwasmAddress(t).toNative()}async isTransferCompleted(e){const t=s.b64.encode(s.serialize(e));return(await this.rpc.queryContractSmart(this.tokenBridge,{is_vaa_redeemed:{vaa:t}})).is_redeemed}async*createAttestation(e,t){if(!t)throw new Error("Payer required to create attestation");const r=new s.CosmwasmAddress(e).toString(),n=new s.CosmwasmAddress(t).toString(),a=0,w=s.isNative(e)?{native_token:{denom:c.CosmwasmPlatform.getNativeDenom(this.network,this.chain)}}:{token:{contract_addr:r}};yield this.createUnsignedTx({msgs:[i.buildExecuteMsg(n,this.tokenBridge,{create_asset_meta:{asset_info:w,nonce:a}})],fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Create Attestation"},"TokenBridge.createAttestation")}async*submitAttestation(e,t){if(!t)throw new Error("Payer required to submit attestation");const r=new s.CosmwasmAddress(t).toString();yield this.createUnsignedTx({msgs:[i.buildExecuteMsg(r,this.tokenBridge,{submit_vaa:{data:s.serialize(e)}})],fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Submit Attestation"},"TokenBridge.submitAttestation")}async*transfer(e,t,r,n,a){const w=Math.round(Math.random()*1e5),u="0",k=s.toChainId(t.chain),A=s.b64.encode(t.address.toUniversalAddress().toUint8Array()),v=c.CosmwasmPlatform.getNativeDenom(this.network,this.chain),f=s.isNative(r);let o=f?v:r.toString();o.startsWith("factory")&&(o=c.Gateway.factoryToCw20(new s.CosmwasmAddress(o)).toString());const g=new s.CosmwasmAddress(e).toString(),p=h=>{const y={asset:{amount:n.toString(),info:h},recipient_chain:k,recipient:A,fee:u,nonce:w};return a?{initiate_transfer_with_payload:{...y,payload:s.b64.encode(a)}}:{initiate_transfer:y}};if(f){const h=[i.buildExecuteMsg(g,this.tokenBridge,{deposit_tokens:{}},[{amount:n.toString(),denom:o}]),i.buildExecuteMsg(g,this.tokenBridge,p({native_token:{denom:o}}))];yield this.createUnsignedTx({msgs:h,fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Initiate Native Transfer"},"TokenBridge.transferNative")}else{const h=[i.buildExecuteMsg(g,o,{increase_allowance:{spender:this.tokenBridge,amount:n.toString(),expires:{never:{}}}}),i.buildExecuteMsg(g,this.tokenBridge,p({token:{contract_addr:o}}),[{amount:n.toString(),denom:o}])];yield this.createUnsignedTx({msgs:h,fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Initiate Transfer"},"TokenBridge.transfer")}}async*redeem(e,t,r=!0){const n=s.b64.encode(s.serialize(t)),a=new s.CosmwasmAddress(e).toString(),u=this.translator&&new s.CosmwasmAddress(this.translator).toUniversalAddress().equals(t.payload.to.address)?i.buildExecuteMsg(a,this.translator,{complete_transfer_and_convert:{vaa:n}}):i.buildExecuteMsg(a,this.tokenBridge,{submit_vaa:{data:n}});yield this.createUnsignedTx({msgs:[u],fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Complete Transfer"},"TokenBridge.redeem")}async parseTransactionDetails(e){throw new Error("Not implemented")}async getWrappedNative(){return s.toNative(this.chain,c.CosmwasmPlatform.getNativeDenom(this.network,this.chain))}createUnsignedTx(e,t,r=!1){return new i.CosmwasmUnsignedTransaction(e,this.network,this.chain,t,r)}}s.registerProtocol(s._platform$3,"TokenBridge",l);exports.CosmwasmTokenBridge=l;
1
+ "use strict";var T=Object.defineProperty;var C=(m,e,t)=>e in m?T(m,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):m[e]=t;var d=(m,e,t)=>C(m,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-DLboWTYu.js");const c=require("./cosmwasm-Dg8T1AeT.js"),i=require("./unsignedTransaction-BNppfIUA.js"),s=require("./index-uRFn7LyP.js");class l{constructor(e,t,r,n){d(this,"network");d(this,"chain");d(this,"rpc");d(this,"contracts");d(this,"tokenBridge");d(this,"translator");this.network=e,this.chain=t,this.rpc=r,this.contracts=n;const a=this.contracts.tokenBridge;if(!a)throw new Error(`Wormhole Token Bridge contract for domain ${t} not found`);if(this.tokenBridge=a,this.translator=this.contracts.translator,this.translator!==void 0&&this.translator==="")throw new Error("Translator address may be undefined but not empty string")}static async fromRpc(e,t){const[r,n]=await c.CosmwasmPlatform.chainFromRpc(e),a=t[n];if(a.network!==r)throw new Error(`Network mismatch: ${a.network} != ${r}`);return new l(r,n,e,t[n].contracts)}async isWrappedAsset(e){try{return await this.getOriginalAsset(e),!0}catch{}return!1}async hasWrappedAsset(e){try{return await this.getWrappedAsset(e),!0}catch{}return!1}async getWrappedAsset(e){if(e.chain===this.chain)throw new Error(`Expected foreign chain, got ${e.chain}`);if(s.isNative(e.address))throw new Error("Native asset cannot be a wrapped asset");const t=s.b64.encode(e.address.toUniversalAddress().toUint8Array()),{address:r}=await this.rpc.queryContractSmart(this.tokenBridge,{wrapped_registry:{chain:s.toChainId(e.chain),address:t}});return s.toNative(this.chain,r)}async getOriginalAsset(e){let t=new s.CosmwasmAddress(e);t.denomType==="factory"&&(t=c.Gateway.factoryToCw20(t));const r=await this.rpc.queryContractSmart(t.toString(),{wrapped_asset_info:{}}),n=s.toChain(r.asset_chain),a=s.b64.decode(r.asset_address);return{chain:n,address:new s.UniversalAddress(new Uint8Array(a))}}async getTokenUniversalAddress(e){return new s.CosmwasmAddress(e).toUniversalAddress()}async getTokenNativeAddress(e,t){return new s.CosmwasmAddress(t).toNative()}async isTransferCompleted(e){const t=s.b64.encode(s.serialize(e));return(await this.rpc.queryContractSmart(this.tokenBridge,{is_vaa_redeemed:{vaa:t}})).is_redeemed}async*createAttestation(e,t){if(!t)throw new Error("Payer required to create attestation");const r=new s.CosmwasmAddress(e).toString(),n=new s.CosmwasmAddress(t).toString(),a=0,w=s.isNative(e)?{native_token:{denom:c.CosmwasmPlatform.getNativeDenom(this.network,this.chain)}}:{token:{contract_addr:r}};yield this.createUnsignedTx({msgs:[i.buildExecuteMsg(n,this.tokenBridge,{create_asset_meta:{asset_info:w,nonce:a}})],fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Create Attestation"},"TokenBridge.createAttestation")}async*submitAttestation(e,t){if(!t)throw new Error("Payer required to submit attestation");const r=new s.CosmwasmAddress(t).toString();yield this.createUnsignedTx({msgs:[i.buildExecuteMsg(r,this.tokenBridge,{submit_vaa:{data:s.serialize(e)}})],fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Submit Attestation"},"TokenBridge.submitAttestation")}async*transfer(e,t,r,n,a){const w=Math.round(Math.random()*1e5),u="0",k=s.toChainId(t.chain),A=s.b64.encode(t.address.toUniversalAddress().toUint8Array()),v=c.CosmwasmPlatform.getNativeDenom(this.network,this.chain),f=s.isNative(r);let o=f?v:r.toString();o.startsWith("factory")&&(o=c.Gateway.factoryToCw20(new s.CosmwasmAddress(o)).toString());const g=new s.CosmwasmAddress(e).toString(),p=h=>{const y={asset:{amount:n.toString(),info:h},recipient_chain:k,recipient:A,fee:u,nonce:w};return a?{initiate_transfer_with_payload:{...y,payload:s.b64.encode(a)}}:{initiate_transfer:y}};if(f){const h=[i.buildExecuteMsg(g,this.tokenBridge,{deposit_tokens:{}},[{amount:n.toString(),denom:o}]),i.buildExecuteMsg(g,this.tokenBridge,p({native_token:{denom:o}}))];yield this.createUnsignedTx({msgs:h,fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Initiate Native Transfer"},"TokenBridge.transferNative")}else{const h=[i.buildExecuteMsg(g,o,{increase_allowance:{spender:this.tokenBridge,amount:n.toString(),expires:{never:{}}}}),i.buildExecuteMsg(g,this.tokenBridge,p({token:{contract_addr:o}}),[{amount:n.toString(),denom:o}])];yield this.createUnsignedTx({msgs:h,fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Initiate Transfer"},"TokenBridge.transfer")}}async*redeem(e,t,r=!0){const n=s.b64.encode(s.serialize(t)),a=new s.CosmwasmAddress(e).toString(),u=this.translator&&new s.CosmwasmAddress(this.translator).toUniversalAddress().equals(t.payload.to.address)?i.buildExecuteMsg(a,this.translator,{complete_transfer_and_convert:{vaa:n}}):i.buildExecuteMsg(a,this.tokenBridge,{submit_vaa:{data:n}});yield this.createUnsignedTx({msgs:[u],fee:i.computeFee(this.network,this.chain),memo:"Wormhole - Complete Transfer"},"TokenBridge.redeem")}async parseTransactionDetails(e){throw new Error("Not implemented")}async getWrappedNative(){return s.toNative(this.chain,c.CosmwasmPlatform.getNativeDenom(this.network,this.chain))}createUnsignedTx(e,t,r=!1){return new i.CosmwasmUnsignedTransaction(e,this.network,this.chain,t,r)}}s.registerProtocol(s._platform$3,"TokenBridge",l);exports.CosmwasmTokenBridge=l;
@@ -1 +1 @@
1
- "use strict";var P=Object.defineProperty;var U=(k,o,t)=>o in k?P(k,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):k[o]=t;var g=(k,o,t)=>U(k,typeof o!="symbol"?o+"":o,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index-BrMNAxOe.js"),e=require("./index-C7GdFYql.js"),v=require("./algorand-BixJkKlf.js"),j=e.ABIMethod.fromSignature("portal_transfer(byte[])byte[]"),p=class p{constructor(o,t,r,s){g(this,"network");g(this,"chain");g(this,"connection");g(this,"contracts");g(this,"chainId");g(this,"coreBridge");g(this,"coreAppId");g(this,"coreAppAddress");g(this,"tokenBridgeAppId");g(this,"tokenBridgeAddress");if(this.network=o,this.chain=t,this.connection=r,this.contracts=s,this.chainId=e.toChainId(t),!s.coreBridge)throw new Error(`Core contract address for chain ${t} not found`);const i=BigInt(s.coreBridge);if(this.coreAppId=i,this.coreAppAddress=e.getApplicationAddress(i),this.coreBridge=new d.AlgorandWormholeCore(o,t,r,s),!s.tokenBridge)throw new Error(`TokenBridge contract address for chain ${t} not found`);const a=BigInt(s.tokenBridge);this.tokenBridgeAppId=a,this.tokenBridgeAddress=e.getApplicationAddress(a)}static async fromRpc(o,t){const[r,s]=await v.AlgorandPlatform.chainFromRpc(o),i=t[s];if(i.network!==r)throw new Error(`Network mismatch: ${i.network} != ${r}`);return new p(r,s,o,i.contracts)}async isWrappedAsset(o){const t=new e.AlgorandAddress(o).toInt();if(t===0)return!1;const r=await this.connection.getAssetByID(t).do(),i=e.Asset.from_obj_for_encoding(r).params.creator,a=await this.connection.accountInformation(i).exclude("all").do(),n=e.Account.from_obj_for_encoding(a);return(n==null?void 0:n.authAddr)===this.tokenBridgeAddress}async getOriginalAsset(o){const t=new e.AlgorandAddress(o).toInt(),r=await this.connection.getAssetByID(t).do(),s=e.Asset.from_obj_for_encoding(r),i=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,s.params.creator);if(i.length<94)throw new Error("Invalid local state data");const a=i.slice(92,94),n=e.toChain(e.bignum.decode(a)),A=new e.UniversalAddress(i.slice(60,92));return{chain:n,address:A}}async getTokenUniversalAddress(o){return new e.AlgorandAddress(o).toUniversalAddress()}async getTokenNativeAddress(o,t){return new e.AlgorandAddress(t).toNative()}async getWrappedAsset(o){if(e.isNative(o.address))throw new Error("native asset cannot be a wrapped asset");const t=d.StorageLogicSig.forWrappedAsset(this.tokenBridgeAppId,o),r=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,t.address());if(r.length<8)throw new Error("Invalid wrapped asset data");return e.toNative(this.chain,e.bignum.decode(r.slice(0,8)).toString())}async hasWrappedAsset(o){try{return await this.getWrappedAsset(o),!0}catch{}return!1}async getWrappedNative(){return e.toNative(this.chain,"0")}async isTransferCompleted(o){const t=d.StorageLogicSig.forMessageId(this.tokenBridgeAppId,{sequence:o.sequence,chain:o.emitterChain,emitter:o.emitterAddress});try{return await d.StorageLogicSig.checkBitsSet(this.connection,this.tokenBridgeAppId,t.address(),o.sequence)}catch{}return!1}async*createAttestation(o,t){if(!t)throw new Error("Payer required to create attestation");const r=new e.AlgorandAddress(t).toString(),s=new e.AlgorandAddress(o).toInt(),i=[],a=await this.connection.getTransactionParams().do(),n=d.StorageLogicSig.forEmitter(this.coreAppId,new e.AlgorandAddress(this.tokenBridgeAddress).toUint8Array()),{accounts:[A],txs:I}=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,r,this.coreAppId,n,a);i.push(...I);let h="",c;if(s!==0){const u=await this.connection.getAssetByID(s).do(),b=e.Asset.from_obj_for_encoding(u),S=await this.connection.accountInformation(b.params.creator).do();if(c=e.Account.from_obj_for_encoding(S),c.authAddr===this.tokenBridgeAddress.toString())throw new Error("Cannot re-attest wormhole assets")}const B=d.StorageLogicSig.forNativeAsset(this.tokenBridgeAppId,BigInt(s)),w=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,r,this.tokenBridgeAppId,B);h=w.accounts[0],i.push(...w.txs);const m=e.makeApplicationCallTxnFromObject({from:r,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:[p.noop],suggestedParams:a});i.push({tx:m});const f=await this.coreBridge.getMessageFee();if(f>BigInt(0)){const u=e.makePaymentTxnWithSuggestedParamsFromObject({from:r,suggestedParams:a,to:this.tokenBridgeAddress,amount:f});i.push({tx:u})}let y=[A,h,this.coreAppAddress];c&&y.push(c.address);let l=e.makeApplicationCallTxnFromObject({appArgs:[p.attestToken,e.bignum.toBytes(s,8)],accounts:y,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),foreignApps:[e.safeBigIntToNumber(this.coreAppId)],foreignAssets:[s],from:r,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:a});f>BigInt(0)?l.fee*=3:l.fee*=2,i.push({tx:l});for(const u of i)yield this.createUnsignedTx(u,"TokenBridge.createAttestation",!0)}async*submitAttestation(o,t,r){if(!t)throw new Error("Sender required to submit attestation");r||(r=await this.connection.getTransactionParams().do());const s=t.toString(),a=d.StorageLogicSig.forWrappedAsset(this.tokenBridgeAppId,o.payload.token).address(),n=[],A=[],I=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,a);I.length>8&&A.push(new e.AlgorandAddress(I.slice(0,8)).toInt()),n.push({tx:e.makePaymentTxnWithSuggestedParamsFromObject({from:s,to:a,amount:1e5,suggestedParams:r})});let h=new Uint8Array(1);h[0]=1,n.push({tx:e.makeApplicationCallTxnFromObject({appArgs:[p.noop,h],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),from:s,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:r})}),h=new Uint8Array(1),h[0]=2,n.push({tx:e.makeApplicationCallTxnFromObject({appArgs:[p.noop,h],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),from:s,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:r})}),n.push({tx:e.makeApplicationCallTxnFromObject({accounts:[],appArgs:[p.receiveAttest,e.serialize(o)],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),foreignAssets:A,from:s,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:r})}),n[n.length-1].tx.fee=n[n.length-1].tx.fee*2;for(const c of n)yield this.createUnsignedTx(c,"TokenBridge.submitAttestation",!0)}async*transfer(o,t,r,s,i){const a=o.toString(),n=e.isNative(r)?0:new e.AlgorandAddress(r).toInt(),A=s,I=e.toChainId(t.chain),h=t.address.toUniversalAddress().toUint8Array(),c=await this.connection.getTransactionParams().do(),B=BigInt(0),w=d.StorageLogicSig.fromData({appId:this.coreAppId,appAddress:e.decodeAddress(this.coreAppAddress).publicKey,idx:BigInt(0),address:e.decodeAddress(this.tokenBridgeAddress).publicKey}),m=[],{accounts:[f],txs:y}=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,a,this.coreAppId,w,c);m.push(...y);let l="",u,b=!1;if(n!==0){const x=await this.connection.getAssetByID(n).do();l=e.Asset.from_obj_for_encoding(x).params.creator;const C=await this.connection.accountInformation(l).do();u=e.Account.from_obj_for_encoding(C),b=u.authAddr===this.tokenBridgeAddress.toString()}const S=await this.coreBridge.getMessageFee();if(S>0&&m.push({tx:e.makePaymentTxnWithSuggestedParamsFromObject({from:a,to:this.tokenBridgeAddress,amount:S,suggestedParams:c})}),!b){const x=d.StorageLogicSig.forNativeAsset(this.tokenBridgeAppId,BigInt(n)),{accounts:[T],txs:C}=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,a,this.tokenBridgeAppId,x,c);l=T,C.push(...C)}if(n!==0&&!await p.isOptedInToAsset(this.connection,l,n)){const x=e.makePaymentTxnWithSuggestedParamsFromObject({from:a,to:l,amount:1e5,suggestedParams:c});let T=e.makeApplicationCallTxnFromObject({from:a,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:[p.optIn,e.bigIntToBytes(n,8)],foreignAssets:[n],accounts:[l],suggestedParams:c});T.fee*=2,m.unshift({tx:x},{tx:T})}const L=e.makeApplicationCallTxnFromObject({from:a,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:[p.noop],suggestedParams:c});m.push({tx:L});let N=[];if(n===0){const x=e.makePaymentTxnWithSuggestedParamsFromObject({from:a,to:l,amount:A,suggestedParams:c});m.push({tx:x}),N=[f,l,l]}else{const x=e.makeAssetTransferTxnWithSuggestedParamsFromObject({from:a,to:l,amount:A,assetIndex:n,suggestedParams:c});m.push({tx:x}),N=u!=null&&u.address?[f,l,u.address]:[f,l]}const W=[p.sendTransfer,e.bignum.toBytes(n,8),e.bignum.toBytes(A,8),h,e.bignum.toBytes(I,8),e.bignum.toBytes(B,8)];i&&W.push(i);const F=e.makeApplicationCallTxnFromObject({from:a,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:W,foreignApps:[e.safeBigIntToNumber(this.coreAppId)],foreignAssets:[n],accounts:N,suggestedParams:c});F.fee*=2,m.push({tx:F});for(const x of m)yield this.createUnsignedTx(x,"TokenBridge.transfer",!0)}async*redeem(o,t,r=!0,s){s||(s=await this.connection.getTransactionParams().do());const i=new e.AlgorandAddress(o).toString(),{accounts:a,txs:n}=await d.AlgorandWormholeCore.submitVAAHeader(this.connection,this.coreAppId,this.tokenBridgeAppId,t,i);let A,I="",h=[],c=0;if(t.payload.token.chain!==this.chain){A=d.StorageLogicSig.forWrappedAsset(this.tokenBridgeAppId,t.payload.token),I=A.address();const f=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,I);c=new e.AlgorandAddress(f.slice(0,8)).toInt()}else{const f=new e.AlgorandAddress(t.payload.token.address).toBigInt();A=d.StorageLogicSig.forNativeAsset(this.tokenBridgeAppId,f),I=A.address(),c=e.safeBigIntToNumber(f)}a.push(I);let B=0,w="";if(t.payloadName==="TransferWithPayload"?(B=new e.AlgorandAddress(t.payload.to.address).toInt(),w=e.getApplicationAddress(B)):w=new e.AlgorandAddress(t.payload.to.address.toUint8Array()).toString(),a.push(w),c!==0&&(h.push(c),!await p.isOptedInToAsset(this.connection,w,c))){if(i!=w)throw new Error("Cannot ASA optin for somebody else (asset "+c.toString()+")");n.unshift({tx:e.makeAssetTransferTxnWithSuggestedParamsFromObject({amount:0,assetIndex:c,from:i,suggestedParams:s,to:i})})}const m={accounts:a,appArgs:[p.completeTransfer,e.serialize(t)],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),foreignAssets:h,from:i,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:s};n.push({tx:e.makeApplicationCallTxnFromObject(m)}),n[n.length-1].tx.fee=n[n.length-1].tx.fee*(t.payloadName==="Transfer"&&t.payload.fee!==void 0&&t.payload.fee===0n?2:3),t.payloadName==="TransferWithPayload"&&(n[n.length-1].tx.appForeignApps=[B],n.push({tx:e.makeApplicationCallTxnFromObject({appArgs:[j.getSelector(),j.args[0].type.encode(e.serialize(t))],appIndex:B,foreignAssets:h,from:i,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:s})}));for(const f of n)yield this.createUnsignedTx(f,"TokenBridge.redeem",!0)}static async isOptedInToAsset(o,t,r){var s;try{const i=await o.accountAssetInformation(t,r).do();return(((s=e.AccountAssetResponse.from_obj_for_encoding(i).assetHolding)==null?void 0:s.amount)??0)>0}catch{}return!1}createUnsignedTx(o,t,r=!0){return new d.AlgorandUnsignedTransaction(o,this.network,this.chain,t,r)}};g(p,"sendTransfer",e.bytes.encode("sendTransfer")),g(p,"attestToken",e.bytes.encode("attestToken")),g(p,"noop",e.bytes.encode("nop")),g(p,"optIn",e.bytes.encode("optin")),g(p,"completeTransfer",e.bytes.encode("completeTransfer")),g(p,"receiveAttest",e.bytes.encode("receiveAttest"));let O=p;e.registerProtocol(e._platform$4,"TokenBridge",O);exports.AlgorandTokenBridge=O;exports.TransferMethodSelector=j;
1
+ "use strict";var P=Object.defineProperty;var U=(k,o,t)=>o in k?P(k,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):k[o]=t;var g=(k,o,t)=>U(k,typeof o!="symbol"?o+"":o,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index-DJNuweoE.js"),e=require("./index-uRFn7LyP.js"),v=require("./algorand-F3xFUrZu.js"),j=e.ABIMethod.fromSignature("portal_transfer(byte[])byte[]"),p=class p{constructor(o,t,r,s){g(this,"network");g(this,"chain");g(this,"connection");g(this,"contracts");g(this,"chainId");g(this,"coreBridge");g(this,"coreAppId");g(this,"coreAppAddress");g(this,"tokenBridgeAppId");g(this,"tokenBridgeAddress");if(this.network=o,this.chain=t,this.connection=r,this.contracts=s,this.chainId=e.toChainId(t),!s.coreBridge)throw new Error(`Core contract address for chain ${t} not found`);const i=BigInt(s.coreBridge);if(this.coreAppId=i,this.coreAppAddress=e.getApplicationAddress(i),this.coreBridge=new d.AlgorandWormholeCore(o,t,r,s),!s.tokenBridge)throw new Error(`TokenBridge contract address for chain ${t} not found`);const a=BigInt(s.tokenBridge);this.tokenBridgeAppId=a,this.tokenBridgeAddress=e.getApplicationAddress(a)}static async fromRpc(o,t){const[r,s]=await v.AlgorandPlatform.chainFromRpc(o),i=t[s];if(i.network!==r)throw new Error(`Network mismatch: ${i.network} != ${r}`);return new p(r,s,o,i.contracts)}async isWrappedAsset(o){const t=new e.AlgorandAddress(o).toInt();if(t===0)return!1;const r=await this.connection.getAssetByID(t).do(),i=e.Asset.from_obj_for_encoding(r).params.creator,a=await this.connection.accountInformation(i).exclude("all").do(),n=e.Account.from_obj_for_encoding(a);return(n==null?void 0:n.authAddr)===this.tokenBridgeAddress}async getOriginalAsset(o){const t=new e.AlgorandAddress(o).toInt(),r=await this.connection.getAssetByID(t).do(),s=e.Asset.from_obj_for_encoding(r),i=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,s.params.creator);if(i.length<94)throw new Error("Invalid local state data");const a=i.slice(92,94),n=e.toChain(e.bignum.decode(a)),A=new e.UniversalAddress(i.slice(60,92));return{chain:n,address:A}}async getTokenUniversalAddress(o){return new e.AlgorandAddress(o).toUniversalAddress()}async getTokenNativeAddress(o,t){return new e.AlgorandAddress(t).toNative()}async getWrappedAsset(o){if(e.isNative(o.address))throw new Error("native asset cannot be a wrapped asset");const t=d.StorageLogicSig.forWrappedAsset(this.tokenBridgeAppId,o),r=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,t.address());if(r.length<8)throw new Error("Invalid wrapped asset data");return e.toNative(this.chain,e.bignum.decode(r.slice(0,8)).toString())}async hasWrappedAsset(o){try{return await this.getWrappedAsset(o),!0}catch{}return!1}async getWrappedNative(){return e.toNative(this.chain,"0")}async isTransferCompleted(o){const t=d.StorageLogicSig.forMessageId(this.tokenBridgeAppId,{sequence:o.sequence,chain:o.emitterChain,emitter:o.emitterAddress});try{return await d.StorageLogicSig.checkBitsSet(this.connection,this.tokenBridgeAppId,t.address(),o.sequence)}catch{}return!1}async*createAttestation(o,t){if(!t)throw new Error("Payer required to create attestation");const r=new e.AlgorandAddress(t).toString(),s=new e.AlgorandAddress(o).toInt(),i=[],a=await this.connection.getTransactionParams().do(),n=d.StorageLogicSig.forEmitter(this.coreAppId,new e.AlgorandAddress(this.tokenBridgeAddress).toUint8Array()),{accounts:[A],txs:I}=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,r,this.coreAppId,n,a);i.push(...I);let h="",c;if(s!==0){const u=await this.connection.getAssetByID(s).do(),b=e.Asset.from_obj_for_encoding(u),S=await this.connection.accountInformation(b.params.creator).do();if(c=e.Account.from_obj_for_encoding(S),c.authAddr===this.tokenBridgeAddress.toString())throw new Error("Cannot re-attest wormhole assets")}const B=d.StorageLogicSig.forNativeAsset(this.tokenBridgeAppId,BigInt(s)),w=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,r,this.tokenBridgeAppId,B);h=w.accounts[0],i.push(...w.txs);const m=e.makeApplicationCallTxnFromObject({from:r,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:[p.noop],suggestedParams:a});i.push({tx:m});const f=await this.coreBridge.getMessageFee();if(f>BigInt(0)){const u=e.makePaymentTxnWithSuggestedParamsFromObject({from:r,suggestedParams:a,to:this.tokenBridgeAddress,amount:f});i.push({tx:u})}let y=[A,h,this.coreAppAddress];c&&y.push(c.address);let l=e.makeApplicationCallTxnFromObject({appArgs:[p.attestToken,e.bignum.toBytes(s,8)],accounts:y,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),foreignApps:[e.safeBigIntToNumber(this.coreAppId)],foreignAssets:[s],from:r,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:a});f>BigInt(0)?l.fee*=3:l.fee*=2,i.push({tx:l});for(const u of i)yield this.createUnsignedTx(u,"TokenBridge.createAttestation",!0)}async*submitAttestation(o,t,r){if(!t)throw new Error("Sender required to submit attestation");r||(r=await this.connection.getTransactionParams().do());const s=t.toString(),a=d.StorageLogicSig.forWrappedAsset(this.tokenBridgeAppId,o.payload.token).address(),n=[],A=[],I=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,a);I.length>8&&A.push(new e.AlgorandAddress(I.slice(0,8)).toInt()),n.push({tx:e.makePaymentTxnWithSuggestedParamsFromObject({from:s,to:a,amount:1e5,suggestedParams:r})});let h=new Uint8Array(1);h[0]=1,n.push({tx:e.makeApplicationCallTxnFromObject({appArgs:[p.noop,h],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),from:s,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:r})}),h=new Uint8Array(1),h[0]=2,n.push({tx:e.makeApplicationCallTxnFromObject({appArgs:[p.noop,h],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),from:s,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:r})}),n.push({tx:e.makeApplicationCallTxnFromObject({accounts:[],appArgs:[p.receiveAttest,e.serialize(o)],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),foreignAssets:A,from:s,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:r})}),n[n.length-1].tx.fee=n[n.length-1].tx.fee*2;for(const c of n)yield this.createUnsignedTx(c,"TokenBridge.submitAttestation",!0)}async*transfer(o,t,r,s,i){const a=o.toString(),n=e.isNative(r)?0:new e.AlgorandAddress(r).toInt(),A=s,I=e.toChainId(t.chain),h=t.address.toUniversalAddress().toUint8Array(),c=await this.connection.getTransactionParams().do(),B=BigInt(0),w=d.StorageLogicSig.fromData({appId:this.coreAppId,appAddress:e.decodeAddress(this.coreAppAddress).publicKey,idx:BigInt(0),address:e.decodeAddress(this.tokenBridgeAddress).publicKey}),m=[],{accounts:[f],txs:y}=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,a,this.coreAppId,w,c);m.push(...y);let l="",u,b=!1;if(n!==0){const x=await this.connection.getAssetByID(n).do();l=e.Asset.from_obj_for_encoding(x).params.creator;const C=await this.connection.accountInformation(l).do();u=e.Account.from_obj_for_encoding(C),b=u.authAddr===this.tokenBridgeAddress.toString()}const S=await this.coreBridge.getMessageFee();if(S>0&&m.push({tx:e.makePaymentTxnWithSuggestedParamsFromObject({from:a,to:this.tokenBridgeAddress,amount:S,suggestedParams:c})}),!b){const x=d.StorageLogicSig.forNativeAsset(this.tokenBridgeAppId,BigInt(n)),{accounts:[T],txs:C}=await d.AlgorandWormholeCore.maybeCreateStorageTx(this.connection,a,this.tokenBridgeAppId,x,c);l=T,C.push(...C)}if(n!==0&&!await p.isOptedInToAsset(this.connection,l,n)){const x=e.makePaymentTxnWithSuggestedParamsFromObject({from:a,to:l,amount:1e5,suggestedParams:c});let T=e.makeApplicationCallTxnFromObject({from:a,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:[p.optIn,e.bigIntToBytes(n,8)],foreignAssets:[n],accounts:[l],suggestedParams:c});T.fee*=2,m.unshift({tx:x},{tx:T})}const L=e.makeApplicationCallTxnFromObject({from:a,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:[p.noop],suggestedParams:c});m.push({tx:L});let N=[];if(n===0){const x=e.makePaymentTxnWithSuggestedParamsFromObject({from:a,to:l,amount:A,suggestedParams:c});m.push({tx:x}),N=[f,l,l]}else{const x=e.makeAssetTransferTxnWithSuggestedParamsFromObject({from:a,to:l,amount:A,assetIndex:n,suggestedParams:c});m.push({tx:x}),N=u!=null&&u.address?[f,l,u.address]:[f,l]}const W=[p.sendTransfer,e.bignum.toBytes(n,8),e.bignum.toBytes(A,8),h,e.bignum.toBytes(I,8),e.bignum.toBytes(B,8)];i&&W.push(i);const F=e.makeApplicationCallTxnFromObject({from:a,appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),onComplete:e.OnApplicationComplete.NoOpOC,appArgs:W,foreignApps:[e.safeBigIntToNumber(this.coreAppId)],foreignAssets:[n],accounts:N,suggestedParams:c});F.fee*=2,m.push({tx:F});for(const x of m)yield this.createUnsignedTx(x,"TokenBridge.transfer",!0)}async*redeem(o,t,r=!0,s){s||(s=await this.connection.getTransactionParams().do());const i=new e.AlgorandAddress(o).toString(),{accounts:a,txs:n}=await d.AlgorandWormholeCore.submitVAAHeader(this.connection,this.coreAppId,this.tokenBridgeAppId,t,i);let A,I="",h=[],c=0;if(t.payload.token.chain!==this.chain){A=d.StorageLogicSig.forWrappedAsset(this.tokenBridgeAppId,t.payload.token),I=A.address();const f=await d.StorageLogicSig.decodeLocalState(this.connection,this.tokenBridgeAppId,I);c=new e.AlgorandAddress(f.slice(0,8)).toInt()}else{const f=new e.AlgorandAddress(t.payload.token.address).toBigInt();A=d.StorageLogicSig.forNativeAsset(this.tokenBridgeAppId,f),I=A.address(),c=e.safeBigIntToNumber(f)}a.push(I);let B=0,w="";if(t.payloadName==="TransferWithPayload"?(B=new e.AlgorandAddress(t.payload.to.address).toInt(),w=e.getApplicationAddress(B)):w=new e.AlgorandAddress(t.payload.to.address.toUint8Array()).toString(),a.push(w),c!==0&&(h.push(c),!await p.isOptedInToAsset(this.connection,w,c))){if(i!=w)throw new Error("Cannot ASA optin for somebody else (asset "+c.toString()+")");n.unshift({tx:e.makeAssetTransferTxnWithSuggestedParamsFromObject({amount:0,assetIndex:c,from:i,suggestedParams:s,to:i})})}const m={accounts:a,appArgs:[p.completeTransfer,e.serialize(t)],appIndex:e.safeBigIntToNumber(this.tokenBridgeAppId),foreignAssets:h,from:i,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:s};n.push({tx:e.makeApplicationCallTxnFromObject(m)}),n[n.length-1].tx.fee=n[n.length-1].tx.fee*(t.payloadName==="Transfer"&&t.payload.fee!==void 0&&t.payload.fee===0n?2:3),t.payloadName==="TransferWithPayload"&&(n[n.length-1].tx.appForeignApps=[B],n.push({tx:e.makeApplicationCallTxnFromObject({appArgs:[j.getSelector(),j.args[0].type.encode(e.serialize(t))],appIndex:B,foreignAssets:h,from:i,onComplete:e.OnApplicationComplete.NoOpOC,suggestedParams:s})}));for(const f of n)yield this.createUnsignedTx(f,"TokenBridge.redeem",!0)}static async isOptedInToAsset(o,t,r){var s;try{const i=await o.accountAssetInformation(t,r).do();return(((s=e.AccountAssetResponse.from_obj_for_encoding(i).assetHolding)==null?void 0:s.amount)??0)>0}catch{}return!1}createUnsignedTx(o,t,r=!0){return new d.AlgorandUnsignedTransaction(o,this.network,this.chain,t,r)}};g(p,"sendTransfer",e.bytes.encode("sendTransfer")),g(p,"attestToken",e.bytes.encode("attestToken")),g(p,"noop",e.bytes.encode("nop")),g(p,"optIn",e.bytes.encode("optin")),g(p,"completeTransfer",e.bytes.encode("completeTransfer")),g(p,"receiveAttest",e.bytes.encode("receiveAttest"));let O=p;e.registerProtocol(e._platform$4,"TokenBridge",O);exports.AlgorandTokenBridge=O;exports.TransferMethodSelector=j;
@@ -1,4 +1,4 @@
1
- "use strict";const Ye=require("./index-C7GdFYql.js");var Et={},Me={},x={},bt={};(function(e){Object.defineProperty(e,"__esModule",{value:!0});function r(f,c){var d=f>>>16&65535,E=f&65535,y=c>>>16&65535,v=c&65535;return E*v+(d*v+E*y<<16>>>0)|0}e.mul=Math.imul||r;function n(f,c){return f+c|0}e.add=n;function a(f,c){return f-c|0}e.sub=a;function D(f,c){return f<<c|f>>>32-c}e.rotl=D;function l(f,c){return f<<32-c|f>>>c}e.rotr=l;function w(f){return typeof f=="number"&&isFinite(f)&&Math.floor(f)===f}e.isInteger=Number.isInteger||w,e.MAX_SAFE_INTEGER=9007199254740991,e.isSafeInteger=function(f){return e.isInteger(f)&&f>=-e.MAX_SAFE_INTEGER&&f<=e.MAX_SAFE_INTEGER}})(bt);Object.defineProperty(x,"__esModule",{value:!0});var vt=bt;function It(e,r){return r===void 0&&(r=0),(e[r+0]<<8|e[r+1])<<16>>16}x.readInt16BE=It;function Rt(e,r){return r===void 0&&(r=0),(e[r+0]<<8|e[r+1])>>>0}x.readUint16BE=Rt;function Pt(e,r){return r===void 0&&(r=0),(e[r+1]<<8|e[r])<<16>>16}x.readInt16LE=Pt;function Ht(e,r){return r===void 0&&(r=0),(e[r+1]<<8|e[r])>>>0}x.readUint16LE=Ht;function wt(e,r,n){return r===void 0&&(r=new Uint8Array(2)),n===void 0&&(n=0),r[n+0]=e>>>8,r[n+1]=e>>>0,r}x.writeUint16BE=wt;x.writeInt16BE=wt;function yt(e,r,n){return r===void 0&&(r=new Uint8Array(2)),n===void 0&&(n=0),r[n+0]=e>>>0,r[n+1]=e>>>8,r}x.writeUint16LE=yt;x.writeInt16LE=yt;function qe(e,r){return r===void 0&&(r=0),e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]}x.readInt32BE=qe;function $e(e,r){return r===void 0&&(r=0),(e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3])>>>0}x.readUint32BE=$e;function Ge(e,r){return r===void 0&&(r=0),e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]}x.readInt32LE=Ge;function Ve(e,r){return r===void 0&&(r=0),(e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r])>>>0}x.readUint32LE=Ve;function Ne(e,r,n){return r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0),r[n+0]=e>>>24,r[n+1]=e>>>16,r[n+2]=e>>>8,r[n+3]=e>>>0,r}x.writeUint32BE=Ne;x.writeInt32BE=Ne;function Te(e,r,n){return r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0),r[n+0]=e>>>0,r[n+1]=e>>>8,r[n+2]=e>>>16,r[n+3]=e>>>24,r}x.writeUint32LE=Te;x.writeInt32LE=Te;function Kt(e,r){r===void 0&&(r=0);var n=qe(e,r),a=qe(e,r+4);return n*4294967296+a-(a>>31)*4294967296}x.readInt64BE=Kt;function zt(e,r){r===void 0&&(r=0);var n=$e(e,r),a=$e(e,r+4);return n*4294967296+a}x.readUint64BE=zt;function Yt(e,r){r===void 0&&(r=0);var n=Ge(e,r),a=Ge(e,r+4);return a*4294967296+n-(n>>31)*4294967296}x.readInt64LE=Yt;function qt(e,r){r===void 0&&(r=0);var n=Ve(e,r),a=Ve(e,r+4);return a*4294967296+n}x.readUint64LE=qt;function gt(e,r,n){return r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0),Ne(e/4294967296>>>0,r,n),Ne(e>>>0,r,n+4),r}x.writeUint64BE=gt;x.writeInt64BE=gt;function St(e,r,n){return r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0),Te(e>>>0,r,n),Te(e/4294967296>>>0,r,n+4),r}x.writeUint64LE=St;x.writeInt64LE=St;function $t(e,r,n){if(n===void 0&&(n=0),e%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>r.length-n)throw new Error("readUintBE: array is too short for the given bitLength");for(var a=0,D=1,l=e/8+n-1;l>=n;l--)a+=r[l]*D,D*=256;return a}x.readUintBE=$t;function Gt(e,r,n){if(n===void 0&&(n=0),e%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>r.length-n)throw new Error("readUintLE: array is too short for the given bitLength");for(var a=0,D=1,l=n;l<n+e/8;l++)a+=r[l]*D,D*=256;return a}x.readUintLE=Gt;function Vt(e,r,n,a){if(n===void 0&&(n=new Uint8Array(e/8)),a===void 0&&(a=0),e%8!==0)throw new Error("writeUintBE supports only bitLengths divisible by 8");if(!vt.isSafeInteger(r))throw new Error("writeUintBE value must be an integer");for(var D=1,l=e/8+a-1;l>=a;l--)n[l]=r/D&255,D*=256;return n}x.writeUintBE=Vt;function Wt(e,r,n,a){if(n===void 0&&(n=new Uint8Array(e/8)),a===void 0&&(a=0),e%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!vt.isSafeInteger(r))throw new Error("writeUintLE value must be an integer");for(var D=1,l=a;l<a+e/8;l++)n[l]=r/D&255,D*=256;return n}x.writeUintLE=Wt;function Xt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat32(r)}x.readFloat32BE=Xt;function Jt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat32(r,!0)}x.readFloat32LE=Jt;function Qt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat64(r)}x.readFloat64BE=Qt;function Zt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat64(r,!0)}x.readFloat64LE=Zt;function kt(e,r,n){r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat32(n,e),r}x.writeFloat32BE=kt;function er(e,r,n){r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat32(n,e,!0),r}x.writeFloat32LE=er;function tr(e,r,n){r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat64(n,e),r}x.writeFloat64BE=tr;function rr(e,r,n){r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat64(n,e,!0),r}x.writeFloat64LE=rr;var de={};Object.defineProperty(de,"__esModule",{value:!0});function nr(e){for(var r=0;r<e.length;r++)e[r]=0;return e}de.wipe=nr;Object.defineProperty(Me,"__esModule",{value:!0});var _e=x,We=de,ir=20;function ar(e,r,n){for(var a=1634760805,D=857760878,l=2036477234,w=1797285236,f=n[3]<<24|n[2]<<16|n[1]<<8|n[0],c=n[7]<<24|n[6]<<16|n[5]<<8|n[4],d=n[11]<<24|n[10]<<16|n[9]<<8|n[8],E=n[15]<<24|n[14]<<16|n[13]<<8|n[12],y=n[19]<<24|n[18]<<16|n[17]<<8|n[16],v=n[23]<<24|n[22]<<16|n[21]<<8|n[20],b=n[27]<<24|n[26]<<16|n[25]<<8|n[24],g=n[31]<<24|n[30]<<16|n[29]<<8|n[28],A=r[3]<<24|r[2]<<16|r[1]<<8|r[0],p=r[7]<<24|r[6]<<16|r[5]<<8|r[4],O=r[11]<<24|r[10]<<16|r[9]<<8|r[8],o=r[15]<<24|r[14]<<16|r[13]<<8|r[12],_=a,u=D,s=l,h=w,t=f,i=c,S=d,C=E,F=y,L=v,j=b,B=g,T=A,M=p,m=O,N=o,G=0;G<ir;G+=2)_=_+t|0,T^=_,T=T>>>16|T<<16,F=F+T|0,t^=F,t=t>>>20|t<<12,u=u+i|0,M^=u,M=M>>>16|M<<16,L=L+M|0,i^=L,i=i>>>20|i<<12,s=s+S|0,m^=s,m=m>>>16|m<<16,j=j+m|0,S^=j,S=S>>>20|S<<12,h=h+C|0,N^=h,N=N>>>16|N<<16,B=B+N|0,C^=B,C=C>>>20|C<<12,s=s+S|0,m^=s,m=m>>>24|m<<8,j=j+m|0,S^=j,S=S>>>25|S<<7,h=h+C|0,N^=h,N=N>>>24|N<<8,B=B+N|0,C^=B,C=C>>>25|C<<7,u=u+i|0,M^=u,M=M>>>24|M<<8,L=L+M|0,i^=L,i=i>>>25|i<<7,_=_+t|0,T^=_,T=T>>>24|T<<8,F=F+T|0,t^=F,t=t>>>25|t<<7,_=_+i|0,N^=_,N=N>>>16|N<<16,j=j+N|0,i^=j,i=i>>>20|i<<12,u=u+S|0,T^=u,T=T>>>16|T<<16,B=B+T|0,S^=B,S=S>>>20|S<<12,s=s+C|0,M^=s,M=M>>>16|M<<16,F=F+M|0,C^=F,C=C>>>20|C<<12,h=h+t|0,m^=h,m=m>>>16|m<<16,L=L+m|0,t^=L,t=t>>>20|t<<12,s=s+C|0,M^=s,M=M>>>24|M<<8,F=F+M|0,C^=F,C=C>>>25|C<<7,h=h+t|0,m^=h,m=m>>>24|m<<8,L=L+m|0,t^=L,t=t>>>25|t<<7,u=u+S|0,T^=u,T=T>>>24|T<<8,B=B+T|0,S^=B,S=S>>>25|S<<7,_=_+i|0,N^=_,N=N>>>24|N<<8,j=j+N|0,i^=j,i=i>>>25|i<<7;_e.writeUint32LE(_+a|0,e,0),_e.writeUint32LE(u+D|0,e,4),_e.writeUint32LE(s+l|0,e,8),_e.writeUint32LE(h+w|0,e,12),_e.writeUint32LE(t+f|0,e,16),_e.writeUint32LE(i+c|0,e,20),_e.writeUint32LE(S+d|0,e,24),_e.writeUint32LE(C+E|0,e,28),_e.writeUint32LE(F+y|0,e,32),_e.writeUint32LE(L+v|0,e,36),_e.writeUint32LE(j+b|0,e,40),_e.writeUint32LE(B+g|0,e,44),_e.writeUint32LE(T+A|0,e,48),_e.writeUint32LE(M+p|0,e,52),_e.writeUint32LE(m+O|0,e,56),_e.writeUint32LE(N+o|0,e,60)}function mt(e,r,n,a,D){if(D===void 0&&(D=0),e.length!==32)throw new Error("ChaCha: key size must be 32 bytes");if(a.length<n.length)throw new Error("ChaCha: destination is shorter than source");var l,w;if(D===0){if(r.length!==8&&r.length!==12)throw new Error("ChaCha nonce must be 8 or 12 bytes");l=new Uint8Array(16),w=l.length-r.length,l.set(r,w)}else{if(r.length!==16)throw new Error("ChaCha nonce with counter must be 16 bytes");l=r,w=D}for(var f=new Uint8Array(64),c=0;c<n.length;c+=64){ar(f,l,e);for(var d=c;d<c+64&&d<n.length;d++)a[d]=n[d]^f[d-c];fr(l,0,w)}return We.wipe(f),D===0&&We.wipe(l),a}Me.streamXOR=mt;function ur(e,r,n,a){return a===void 0&&(a=0),We.wipe(n),mt(e,r,n,n,a)}Me.stream=ur;function fr(e,r,n){for(var a=1;n--;)a=a+(e[r]&255)|0,e[r]=a&255,a>>>=8,r++;if(a>0)throw new Error("ChaCha: counter overflow")}var Ct={},be={};Object.defineProperty(be,"__esModule",{value:!0});function hr(e,r,n){return~(e-1)&r|e-1&n}be.select=hr;function sr(e,r){return(e|0)-(r|0)-1>>>31&1}be.lessOrEqual=sr;function pt(e,r){if(e.length!==r.length)return 0;for(var n=0,a=0;a<e.length;a++)n|=e[a]^r[a];return 1&n-1>>>8}be.compare=pt;function or(e,r){return e.length===0||r.length===0?!1:pt(e,r)!==0}be.equal=or;(function(e){Object.defineProperty(e,"__esModule",{value:!0});var r=be,n=de;e.DIGEST_LENGTH=16;var a=function(){function w(f){this.digestLength=e.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var c=f[0]|f[1]<<8;this._r[0]=c&8191;var d=f[2]|f[3]<<8;this._r[1]=(c>>>13|d<<3)&8191;var E=f[4]|f[5]<<8;this._r[2]=(d>>>10|E<<6)&7939;var y=f[6]|f[7]<<8;this._r[3]=(E>>>7|y<<9)&8191;var v=f[8]|f[9]<<8;this._r[4]=(y>>>4|v<<12)&255,this._r[5]=v>>>1&8190;var b=f[10]|f[11]<<8;this._r[6]=(v>>>14|b<<2)&8191;var g=f[12]|f[13]<<8;this._r[7]=(b>>>11|g<<5)&8065;var A=f[14]|f[15]<<8;this._r[8]=(g>>>8|A<<8)&8191,this._r[9]=A>>>5&127,this._pad[0]=f[16]|f[17]<<8,this._pad[1]=f[18]|f[19]<<8,this._pad[2]=f[20]|f[21]<<8,this._pad[3]=f[22]|f[23]<<8,this._pad[4]=f[24]|f[25]<<8,this._pad[5]=f[26]|f[27]<<8,this._pad[6]=f[28]|f[29]<<8,this._pad[7]=f[30]|f[31]<<8}return w.prototype._blocks=function(f,c,d){for(var E=this._fin?0:2048,y=this._h[0],v=this._h[1],b=this._h[2],g=this._h[3],A=this._h[4],p=this._h[5],O=this._h[6],o=this._h[7],_=this._h[8],u=this._h[9],s=this._r[0],h=this._r[1],t=this._r[2],i=this._r[3],S=this._r[4],C=this._r[5],F=this._r[6],L=this._r[7],j=this._r[8],B=this._r[9];d>=16;){var T=f[c+0]|f[c+1]<<8;y+=T&8191;var M=f[c+2]|f[c+3]<<8;v+=(T>>>13|M<<3)&8191;var m=f[c+4]|f[c+5]<<8;b+=(M>>>10|m<<6)&8191;var N=f[c+6]|f[c+7]<<8;g+=(m>>>7|N<<9)&8191;var G=f[c+8]|f[c+9]<<8;A+=(N>>>4|G<<12)&8191,p+=G>>>1&8191;var J=f[c+10]|f[c+11]<<8;O+=(G>>>14|J<<2)&8191;var X=f[c+12]|f[c+13]<<8;o+=(J>>>11|X<<5)&8191;var W=f[c+14]|f[c+15]<<8;_+=(X>>>8|W<<8)&8191,u+=W>>>5|E;var U=0,I=U;I+=y*s,I+=v*(5*B),I+=b*(5*j),I+=g*(5*L),I+=A*(5*F),U=I>>>13,I&=8191,I+=p*(5*C),I+=O*(5*S),I+=o*(5*i),I+=_*(5*t),I+=u*(5*h),U+=I>>>13,I&=8191;var R=U;R+=y*h,R+=v*s,R+=b*(5*B),R+=g*(5*j),R+=A*(5*L),U=R>>>13,R&=8191,R+=p*(5*F),R+=O*(5*C),R+=o*(5*S),R+=_*(5*i),R+=u*(5*t),U+=R>>>13,R&=8191;var P=U;P+=y*t,P+=v*h,P+=b*s,P+=g*(5*B),P+=A*(5*j),U=P>>>13,P&=8191,P+=p*(5*L),P+=O*(5*F),P+=o*(5*C),P+=_*(5*S),P+=u*(5*i),U+=P>>>13,P&=8191;var H=U;H+=y*i,H+=v*t,H+=b*h,H+=g*s,H+=A*(5*B),U=H>>>13,H&=8191,H+=p*(5*j),H+=O*(5*L),H+=o*(5*F),H+=_*(5*C),H+=u*(5*S),U+=H>>>13,H&=8191;var K=U;K+=y*S,K+=v*i,K+=b*t,K+=g*h,K+=A*s,U=K>>>13,K&=8191,K+=p*(5*B),K+=O*(5*j),K+=o*(5*L),K+=_*(5*F),K+=u*(5*C),U+=K>>>13,K&=8191;var z=U;z+=y*C,z+=v*S,z+=b*i,z+=g*t,z+=A*h,U=z>>>13,z&=8191,z+=p*s,z+=O*(5*B),z+=o*(5*j),z+=_*(5*L),z+=u*(5*F),U+=z>>>13,z&=8191;var Y=U;Y+=y*F,Y+=v*C,Y+=b*S,Y+=g*i,Y+=A*t,U=Y>>>13,Y&=8191,Y+=p*h,Y+=O*s,Y+=o*(5*B),Y+=_*(5*j),Y+=u*(5*L),U+=Y>>>13,Y&=8191;var q=U;q+=y*L,q+=v*F,q+=b*C,q+=g*S,q+=A*i,U=q>>>13,q&=8191,q+=p*t,q+=O*h,q+=o*s,q+=_*(5*B),q+=u*(5*j),U+=q>>>13,q&=8191;var $=U;$+=y*j,$+=v*L,$+=b*F,$+=g*C,$+=A*S,U=$>>>13,$&=8191,$+=p*i,$+=O*t,$+=o*h,$+=_*s,$+=u*(5*B),U+=$>>>13,$&=8191;var V=U;V+=y*B,V+=v*j,V+=b*L,V+=g*F,V+=A*C,U=V>>>13,V&=8191,V+=p*S,V+=O*i,V+=o*t,V+=_*h,V+=u*s,U+=V>>>13,V&=8191,U=(U<<2)+U|0,U=U+I|0,I=U&8191,U=U>>>13,R+=U,y=I,v=R,b=P,g=H,A=K,p=z,O=Y,o=q,_=$,u=V,c+=16,d-=16}this._h[0]=y,this._h[1]=v,this._h[2]=b,this._h[3]=g,this._h[4]=A,this._h[5]=p,this._h[6]=O,this._h[7]=o,this._h[8]=_,this._h[9]=u},w.prototype.finish=function(f,c){c===void 0&&(c=0);var d=new Uint16Array(10),E,y,v,b;if(this._leftover){for(b=this._leftover,this._buffer[b++]=1;b<16;b++)this._buffer[b]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(E=this._h[1]>>>13,this._h[1]&=8191,b=2;b<10;b++)this._h[b]+=E,E=this._h[b]>>>13,this._h[b]&=8191;for(this._h[0]+=E*5,E=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=E,E=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=E,d[0]=this._h[0]+5,E=d[0]>>>13,d[0]&=8191,b=1;b<10;b++)d[b]=this._h[b]+E,E=d[b]>>>13,d[b]&=8191;for(d[9]-=8192,y=(E^1)-1,b=0;b<10;b++)d[b]&=y;for(y=~y,b=0;b<10;b++)this._h[b]=this._h[b]&y|d[b];for(this._h[0]=(this._h[0]|this._h[1]<<13)&65535,this._h[1]=(this._h[1]>>>3|this._h[2]<<10)&65535,this._h[2]=(this._h[2]>>>6|this._h[3]<<7)&65535,this._h[3]=(this._h[3]>>>9|this._h[4]<<4)&65535,this._h[4]=(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14)&65535,this._h[5]=(this._h[6]>>>2|this._h[7]<<11)&65535,this._h[6]=(this._h[7]>>>5|this._h[8]<<8)&65535,this._h[7]=(this._h[8]>>>8|this._h[9]<<5)&65535,v=this._h[0]+this._pad[0],this._h[0]=v&65535,b=1;b<8;b++)v=(this._h[b]+this._pad[b]|0)+(v>>>16)|0,this._h[b]=v&65535;return f[c+0]=this._h[0]>>>0,f[c+1]=this._h[0]>>>8,f[c+2]=this._h[1]>>>0,f[c+3]=this._h[1]>>>8,f[c+4]=this._h[2]>>>0,f[c+5]=this._h[2]>>>8,f[c+6]=this._h[3]>>>0,f[c+7]=this._h[3]>>>8,f[c+8]=this._h[4]>>>0,f[c+9]=this._h[4]>>>8,f[c+10]=this._h[5]>>>0,f[c+11]=this._h[5]>>>8,f[c+12]=this._h[6]>>>0,f[c+13]=this._h[6]>>>8,f[c+14]=this._h[7]>>>0,f[c+15]=this._h[7]>>>8,this._finished=!0,this},w.prototype.update=function(f){var c=0,d=f.length,E;if(this._leftover){E=16-this._leftover,E>d&&(E=d);for(var y=0;y<E;y++)this._buffer[this._leftover+y]=f[c+y];if(d-=E,c+=E,this._leftover+=E,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(d>=16&&(E=d-d%16,this._blocks(f,c,E),c+=E,d-=E),d){for(var y=0;y<d;y++)this._buffer[this._leftover+y]=f[c+y];this._leftover+=d}return this},w.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var f=new Uint8Array(16);return this.finish(f),f},w.prototype.clean=function(){return n.wipe(this._buffer),n.wipe(this._r),n.wipe(this._h),n.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},w}();e.Poly1305=a;function D(w,f){var c=new a(w);c.update(f);var d=c.digest();return c.clean(),d}e.oneTimeAuth=D;function l(w,f){return w.length!==e.DIGEST_LENGTH||f.length!==e.DIGEST_LENGTH?!1:r.equal(w,f)}e.equal=l})(Ct);(function(e){Object.defineProperty(e,"__esModule",{value:!0});var r=Me,n=Ct,a=de,D=x,l=be;e.KEY_LENGTH=32,e.NONCE_LENGTH=12,e.TAG_LENGTH=16;var w=new Uint8Array(16),f=function(){function c(d){if(this.nonceLength=e.NONCE_LENGTH,this.tagLength=e.TAG_LENGTH,d.length!==e.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(d)}return c.prototype.seal=function(d,E,y,v){if(d.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var b=new Uint8Array(16);b.set(d,b.length-d.length);var g=new Uint8Array(32);r.stream(this._key,b,g,4);var A=E.length+this.tagLength,p;if(v){if(v.length!==A)throw new Error("ChaCha20Poly1305: incorrect destination length");p=v}else p=new Uint8Array(A);return r.streamXOR(this._key,b,E,p,4),this._authenticate(p.subarray(p.length-this.tagLength,p.length),g,p.subarray(0,p.length-this.tagLength),y),a.wipe(b),p},c.prototype.open=function(d,E,y,v){if(d.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(E.length<this.tagLength)return null;var b=new Uint8Array(16);b.set(d,b.length-d.length);var g=new Uint8Array(32);r.stream(this._key,b,g,4);var A=new Uint8Array(this.tagLength);if(this._authenticate(A,g,E.subarray(0,E.length-this.tagLength),y),!l.equal(A,E.subarray(E.length-this.tagLength,E.length)))return null;var p=E.length-this.tagLength,O;if(v){if(v.length!==p)throw new Error("ChaCha20Poly1305: incorrect destination length");O=v}else O=new Uint8Array(p);return r.streamXOR(this._key,b,E.subarray(0,E.length-this.tagLength),O,4),a.wipe(b),O},c.prototype.clean=function(){return a.wipe(this._key),this},c.prototype._authenticate=function(d,E,y,v){var b=new n.Poly1305(E);v&&(b.update(v),v.length%16>0&&b.update(w.subarray(v.length%16))),b.update(y),y.length%16>0&&b.update(w.subarray(y.length%16));var g=new Uint8Array(8);v&&D.writeUint64LE(v.length,g),b.update(g),D.writeUint64LE(y.length,g),b.update(g);for(var A=b.digest(),p=0;p<A.length;p++)d[p]=A[p];b.clean(),a.wipe(A),a.wipe(g)},c}();e.ChaCha20Poly1305=f})(Et);var At={},Ue={},ke={};Object.defineProperty(ke,"__esModule",{value:!0});function cr(e){return typeof e.saveState<"u"&&typeof e.restoreState<"u"&&typeof e.cleanSavedState<"u"}ke.isSerializableHash=cr;Object.defineProperty(Ue,"__esModule",{value:!0});var Ee=ke,lr=be,Dr=de,Ut=function(){function e(r,n){this._finished=!1,this._inner=new r,this._outer=new r,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var a=new Uint8Array(this.blockSize);n.length>this.blockSize?this._inner.update(n).finish(a).clean():a.set(n);for(var D=0;D<a.length;D++)a[D]^=54;this._inner.update(a);for(var D=0;D<a.length;D++)a[D]^=106;this._outer.update(a),Ee.isSerializableHash(this._inner)&&Ee.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),Dr.wipe(a)}return e.prototype.reset=function(){if(!Ee.isSerializableHash(this._inner)||!Ee.isSerializableHash(this._outer))throw new Error("hmac: can't reset() because hash doesn't implement restoreState()");return this._inner.restoreState(this._innerKeyedState),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},e.prototype.clean=function(){Ee.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),Ee.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},e.prototype.update=function(r){return this._inner.update(r),this},e.prototype.finish=function(r){return this._finished?(this._outer.finish(r),this):(this._inner.finish(r),this._outer.update(r.subarray(0,this.digestLength)).finish(r),this._finished=!0,this)},e.prototype.digest=function(){var r=new Uint8Array(this.digestLength);return this.finish(r),r},e.prototype.saveState=function(){if(!Ee.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},e.prototype.restoreState=function(r){if(!Ee.isSerializableHash(this._inner)||!Ee.isSerializableHash(this._outer))throw new Error("hmac: can't restoreState() because hash doesn't implement it");return this._inner.restoreState(r),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},e.prototype.cleanSavedState=function(r){if(!Ee.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(r)},e}();Ue.HMAC=Ut;function _r(e,r,n){var a=new Ut(e,r);a.update(n);var D=a.digest();return a.clean(),D}Ue.hmac=_r;Ue.equal=lr.equal;Object.defineProperty(At,"__esModule",{value:!0});var rt=Ue,nt=de,dr=function(){function e(r,n,a,D){a===void 0&&(a=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=r,this._info=D;var l=rt.hmac(this._hash,a,n);this._hmac=new rt.HMAC(r,l),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return e.prototype._fillBuffer=function(){this._counter[0]++;var r=this._counter[0];if(r===0)throw new Error("hkdf: cannot expand more");this._hmac.reset(),r>1&&this._hmac.update(this._buffer),this._info&&this._hmac.update(this._info),this._hmac.update(this._counter),this._hmac.finish(this._buffer),this._bufpos=0},e.prototype.expand=function(r){for(var n=new Uint8Array(r),a=0;a<n.length;a++)this._bufpos===this._buffer.length&&this._fillBuffer(),n[a]=this._buffer[this._bufpos++];return n},e.prototype.clean=function(){this._hmac.clean(),nt.wipe(this._buffer),nt.wipe(this._counter),this._bufpos=0},e}(),Er=At.HKDF=dr,et={},xe={},Le={};Object.defineProperty(Le,"__esModule",{value:!0});Le.BrowserRandomSource=void 0;const it=65536;class br{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const r=typeof self<"u"?self.crypto||self.msCrypto:null;r&&r.getRandomValues!==void 0&&(this._crypto=r,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(r){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const n=new Uint8Array(r);for(let a=0;a<n.length;a+=it)this._crypto.getRandomValues(n.subarray(a,a+Math.min(n.length-a,it)));return n}}Le.BrowserRandomSource=br;var Be={};Object.defineProperty(Be,"__esModule",{value:!0});Be.NodeRandomSource=void 0;const vr=de;class wr{constructor(){if(this.isAvailable=!1,this.isInstantiated=!1,typeof Ye.commonjsRequire<"u"){const r=Ye.requireCryptoBrowserify();r&&r.randomBytes&&(this._crypto=r,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(r){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let n=this._crypto.randomBytes(r);if(n.length!==r)throw new Error("NodeRandomSource: got fewer bytes than requested");const a=new Uint8Array(r);for(let D=0;D<a.length;D++)a[D]=n[D];return(0,vr.wipe)(n),a}}Be.NodeRandomSource=wr;Object.defineProperty(xe,"__esModule",{value:!0});xe.SystemRandomSource=void 0;const yr=Le,gr=Be;class Sr{constructor(){if(this.isAvailable=!1,this.name="",this._source=new yr.BrowserRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Browser";return}if(this._source=new gr.NodeRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Node";return}}randomBytes(r){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(r)}}xe.SystemRandomSource=Sr;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.randomStringForEntropy=e.randomString=e.randomUint32=e.randomBytes=e.defaultRandomSource=void 0;const r=xe,n=x,a=de;e.defaultRandomSource=new r.SystemRandomSource;function D(d,E=e.defaultRandomSource){return E.randomBytes(d)}e.randomBytes=D;function l(d=e.defaultRandomSource){const E=D(4,d),y=(0,n.readUint32LE)(E);return(0,a.wipe)(E),y}e.randomUint32=l;const w="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function f(d,E=w,y=e.defaultRandomSource){if(E.length<2)throw new Error("randomString charset is too short");if(E.length>256)throw new Error("randomString charset is too long");let v="";const b=E.length,g=256-256%b;for(;d>0;){const A=D(Math.ceil(d*256/g),y);for(let p=0;p<A.length&&d>0;p++){const O=A[p];O<g&&(v+=E.charAt(O%b),d--)}(0,a.wipe)(A)}return v}e.randomString=f;function c(d,E=w,y=e.defaultRandomSource){const v=Math.ceil(d/(Math.log(E.length)/Math.LN2));return f(v,E,y)}e.randomStringForEntropy=c})(et);var Ot={};(function(e){Object.defineProperty(e,"__esModule",{value:!0});var r=x,n=de;e.DIGEST_LENGTH=32,e.BLOCK_SIZE=64;var a=function(){function f(){this.digestLength=e.DIGEST_LENGTH,this.blockSize=e.BLOCK_SIZE,this._state=new Int32Array(8),this._temp=new Int32Array(64),this._buffer=new Uint8Array(128),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return f.prototype._initState=function(){this._state[0]=1779033703,this._state[1]=3144134277,this._state[2]=1013904242,this._state[3]=2773480762,this._state[4]=1359893119,this._state[5]=2600822924,this._state[6]=528734635,this._state[7]=1541459225},f.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},f.prototype.clean=function(){n.wipe(this._buffer),n.wipe(this._temp),this.reset()},f.prototype.update=function(c,d){if(d===void 0&&(d=c.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var E=0;if(this._bytesHashed+=d,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&d>0;)this._buffer[this._bufferLength++]=c[E++],d--;this._bufferLength===this.blockSize&&(l(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(d>=this.blockSize&&(E=l(this._temp,this._state,c,E,d),d%=this.blockSize);d>0;)this._buffer[this._bufferLength++]=c[E++],d--;return this},f.prototype.finish=function(c){if(!this._finished){var d=this._bytesHashed,E=this._bufferLength,y=d/536870912|0,v=d<<3,b=d%64<56?64:128;this._buffer[E]=128;for(var g=E+1;g<b-8;g++)this._buffer[g]=0;r.writeUint32BE(y,this._buffer,b-8),r.writeUint32BE(v,this._buffer,b-4),l(this._temp,this._state,this._buffer,0,b),this._finished=!0}for(var g=0;g<this.digestLength/4;g++)r.writeUint32BE(this._state[g],c,g*4);return this},f.prototype.digest=function(){var c=new Uint8Array(this.digestLength);return this.finish(c),c},f.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{state:new Int32Array(this._state),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},f.prototype.restoreState=function(c){return this._state.set(c.state),this._bufferLength=c.bufferLength,c.buffer&&this._buffer.set(c.buffer),this._bytesHashed=c.bytesHashed,this._finished=!1,this},f.prototype.cleanSavedState=function(c){n.wipe(c.state),c.buffer&&n.wipe(c.buffer),c.bufferLength=0,c.bytesHashed=0},f}();e.SHA256=a;var D=new Int32Array([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 l(f,c,d,E,y){for(;y>=64;){for(var v=c[0],b=c[1],g=c[2],A=c[3],p=c[4],O=c[5],o=c[6],_=c[7],u=0;u<16;u++){var s=E+u*4;f[u]=r.readUint32BE(d,s)}for(var u=16;u<64;u++){var h=f[u-2],t=(h>>>17|h<<15)^(h>>>19|h<<13)^h>>>10;h=f[u-15];var i=(h>>>7|h<<25)^(h>>>18|h<<14)^h>>>3;f[u]=(t+f[u-7]|0)+(i+f[u-16]|0)}for(var u=0;u<64;u++){var t=(((p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7))+(p&O^~p&o)|0)+(_+(D[u]+f[u]|0)|0)|0,i=((v>>>2|v<<30)^(v>>>13|v<<19)^(v>>>22|v<<10))+(v&b^v&g^b&g)|0;_=o,o=O,O=p,p=A+t|0,A=g,g=b,b=v,v=t+i|0}c[0]+=v,c[1]+=b,c[2]+=g,c[3]+=A,c[4]+=p,c[5]+=O,c[6]+=o,c[7]+=_,E+=64,y-=64}return E}function w(f){var c=new a;c.update(f);var d=c.digest();return c.clean(),d}e.hash=w})(Ot);var Ft={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.sharedKey=e.generateKeyPair=e.generateKeyPairFromSeed=e.scalarMultBase=e.scalarMult=e.SHARED_KEY_LENGTH=e.SECRET_KEY_LENGTH=e.PUBLIC_KEY_LENGTH=void 0;const r=et,n=de;e.PUBLIC_KEY_LENGTH=32,e.SECRET_KEY_LENGTH=32,e.SHARED_KEY_LENGTH=32;function a(u){const s=new Float64Array(16);if(u)for(let h=0;h<u.length;h++)s[h]=u[h];return s}const D=new Uint8Array(32);D[0]=9;const l=a([56129,1]);function w(u){let s=1;for(let h=0;h<16;h++){let t=u[h]+s+65535;s=Math.floor(t/65536),u[h]=t-s*65536}u[0]+=s-1+37*(s-1)}function f(u,s,h){const t=~(h-1);for(let i=0;i<16;i++){const S=t&(u[i]^s[i]);u[i]^=S,s[i]^=S}}function c(u,s){const h=a(),t=a();for(let i=0;i<16;i++)t[i]=s[i];w(t),w(t),w(t);for(let i=0;i<2;i++){h[0]=t[0]-65517;for(let C=1;C<15;C++)h[C]=t[C]-65535-(h[C-1]>>16&1),h[C-1]&=65535;h[15]=t[15]-32767-(h[14]>>16&1);const S=h[15]>>16&1;h[14]&=65535,f(t,h,1-S)}for(let i=0;i<16;i++)u[2*i]=t[i]&255,u[2*i+1]=t[i]>>8}function d(u,s){for(let h=0;h<16;h++)u[h]=s[2*h]+(s[2*h+1]<<8);u[15]&=32767}function E(u,s,h){for(let t=0;t<16;t++)u[t]=s[t]+h[t]}function y(u,s,h){for(let t=0;t<16;t++)u[t]=s[t]-h[t]}function v(u,s,h){let t,i,S=0,C=0,F=0,L=0,j=0,B=0,T=0,M=0,m=0,N=0,G=0,J=0,X=0,W=0,U=0,I=0,R=0,P=0,H=0,K=0,z=0,Y=0,q=0,$=0,V=0,ve=0,ge=0,me=0,Fe=0,Re=0,tt=0,Z=h[0],k=h[1],ee=h[2],te=h[3],re=h[4],ne=h[5],ie=h[6],ae=h[7],ue=h[8],fe=h[9],he=h[10],se=h[11],oe=h[12],ce=h[13],le=h[14],De=h[15];t=s[0],S+=t*Z,C+=t*k,F+=t*ee,L+=t*te,j+=t*re,B+=t*ne,T+=t*ie,M+=t*ae,m+=t*ue,N+=t*fe,G+=t*he,J+=t*se,X+=t*oe,W+=t*ce,U+=t*le,I+=t*De,t=s[1],C+=t*Z,F+=t*k,L+=t*ee,j+=t*te,B+=t*re,T+=t*ne,M+=t*ie,m+=t*ae,N+=t*ue,G+=t*fe,J+=t*he,X+=t*se,W+=t*oe,U+=t*ce,I+=t*le,R+=t*De,t=s[2],F+=t*Z,L+=t*k,j+=t*ee,B+=t*te,T+=t*re,M+=t*ne,m+=t*ie,N+=t*ae,G+=t*ue,J+=t*fe,X+=t*he,W+=t*se,U+=t*oe,I+=t*ce,R+=t*le,P+=t*De,t=s[3],L+=t*Z,j+=t*k,B+=t*ee,T+=t*te,M+=t*re,m+=t*ne,N+=t*ie,G+=t*ae,J+=t*ue,X+=t*fe,W+=t*he,U+=t*se,I+=t*oe,R+=t*ce,P+=t*le,H+=t*De,t=s[4],j+=t*Z,B+=t*k,T+=t*ee,M+=t*te,m+=t*re,N+=t*ne,G+=t*ie,J+=t*ae,X+=t*ue,W+=t*fe,U+=t*he,I+=t*se,R+=t*oe,P+=t*ce,H+=t*le,K+=t*De,t=s[5],B+=t*Z,T+=t*k,M+=t*ee,m+=t*te,N+=t*re,G+=t*ne,J+=t*ie,X+=t*ae,W+=t*ue,U+=t*fe,I+=t*he,R+=t*se,P+=t*oe,H+=t*ce,K+=t*le,z+=t*De,t=s[6],T+=t*Z,M+=t*k,m+=t*ee,N+=t*te,G+=t*re,J+=t*ne,X+=t*ie,W+=t*ae,U+=t*ue,I+=t*fe,R+=t*he,P+=t*se,H+=t*oe,K+=t*ce,z+=t*le,Y+=t*De,t=s[7],M+=t*Z,m+=t*k,N+=t*ee,G+=t*te,J+=t*re,X+=t*ne,W+=t*ie,U+=t*ae,I+=t*ue,R+=t*fe,P+=t*he,H+=t*se,K+=t*oe,z+=t*ce,Y+=t*le,q+=t*De,t=s[8],m+=t*Z,N+=t*k,G+=t*ee,J+=t*te,X+=t*re,W+=t*ne,U+=t*ie,I+=t*ae,R+=t*ue,P+=t*fe,H+=t*he,K+=t*se,z+=t*oe,Y+=t*ce,q+=t*le,$+=t*De,t=s[9],N+=t*Z,G+=t*k,J+=t*ee,X+=t*te,W+=t*re,U+=t*ne,I+=t*ie,R+=t*ae,P+=t*ue,H+=t*fe,K+=t*he,z+=t*se,Y+=t*oe,q+=t*ce,$+=t*le,V+=t*De,t=s[10],G+=t*Z,J+=t*k,X+=t*ee,W+=t*te,U+=t*re,I+=t*ne,R+=t*ie,P+=t*ae,H+=t*ue,K+=t*fe,z+=t*he,Y+=t*se,q+=t*oe,$+=t*ce,V+=t*le,ve+=t*De,t=s[11],J+=t*Z,X+=t*k,W+=t*ee,U+=t*te,I+=t*re,R+=t*ne,P+=t*ie,H+=t*ae,K+=t*ue,z+=t*fe,Y+=t*he,q+=t*se,$+=t*oe,V+=t*ce,ve+=t*le,ge+=t*De,t=s[12],X+=t*Z,W+=t*k,U+=t*ee,I+=t*te,R+=t*re,P+=t*ne,H+=t*ie,K+=t*ae,z+=t*ue,Y+=t*fe,q+=t*he,$+=t*se,V+=t*oe,ve+=t*ce,ge+=t*le,me+=t*De,t=s[13],W+=t*Z,U+=t*k,I+=t*ee,R+=t*te,P+=t*re,H+=t*ne,K+=t*ie,z+=t*ae,Y+=t*ue,q+=t*fe,$+=t*he,V+=t*se,ve+=t*oe,ge+=t*ce,me+=t*le,Fe+=t*De,t=s[14],U+=t*Z,I+=t*k,R+=t*ee,P+=t*te,H+=t*re,K+=t*ne,z+=t*ie,Y+=t*ae,q+=t*ue,$+=t*fe,V+=t*he,ve+=t*se,ge+=t*oe,me+=t*ce,Fe+=t*le,Re+=t*De,t=s[15],I+=t*Z,R+=t*k,P+=t*ee,H+=t*te,K+=t*re,z+=t*ne,Y+=t*ie,q+=t*ae,$+=t*ue,V+=t*fe,ve+=t*he,ge+=t*se,me+=t*oe,Fe+=t*ce,Re+=t*le,tt+=t*De,S+=38*R,C+=38*P,F+=38*H,L+=38*K,j+=38*z,B+=38*Y,T+=38*q,M+=38*$,m+=38*V,N+=38*ve,G+=38*ge,J+=38*me,X+=38*Fe,W+=38*Re,U+=38*tt,i=1,t=S+i+65535,i=Math.floor(t/65536),S=t-i*65536,t=C+i+65535,i=Math.floor(t/65536),C=t-i*65536,t=F+i+65535,i=Math.floor(t/65536),F=t-i*65536,t=L+i+65535,i=Math.floor(t/65536),L=t-i*65536,t=j+i+65535,i=Math.floor(t/65536),j=t-i*65536,t=B+i+65535,i=Math.floor(t/65536),B=t-i*65536,t=T+i+65535,i=Math.floor(t/65536),T=t-i*65536,t=M+i+65535,i=Math.floor(t/65536),M=t-i*65536,t=m+i+65535,i=Math.floor(t/65536),m=t-i*65536,t=N+i+65535,i=Math.floor(t/65536),N=t-i*65536,t=G+i+65535,i=Math.floor(t/65536),G=t-i*65536,t=J+i+65535,i=Math.floor(t/65536),J=t-i*65536,t=X+i+65535,i=Math.floor(t/65536),X=t-i*65536,t=W+i+65535,i=Math.floor(t/65536),W=t-i*65536,t=U+i+65535,i=Math.floor(t/65536),U=t-i*65536,t=I+i+65535,i=Math.floor(t/65536),I=t-i*65536,S+=i-1+37*(i-1),i=1,t=S+i+65535,i=Math.floor(t/65536),S=t-i*65536,t=C+i+65535,i=Math.floor(t/65536),C=t-i*65536,t=F+i+65535,i=Math.floor(t/65536),F=t-i*65536,t=L+i+65535,i=Math.floor(t/65536),L=t-i*65536,t=j+i+65535,i=Math.floor(t/65536),j=t-i*65536,t=B+i+65535,i=Math.floor(t/65536),B=t-i*65536,t=T+i+65535,i=Math.floor(t/65536),T=t-i*65536,t=M+i+65535,i=Math.floor(t/65536),M=t-i*65536,t=m+i+65535,i=Math.floor(t/65536),m=t-i*65536,t=N+i+65535,i=Math.floor(t/65536),N=t-i*65536,t=G+i+65535,i=Math.floor(t/65536),G=t-i*65536,t=J+i+65535,i=Math.floor(t/65536),J=t-i*65536,t=X+i+65535,i=Math.floor(t/65536),X=t-i*65536,t=W+i+65535,i=Math.floor(t/65536),W=t-i*65536,t=U+i+65535,i=Math.floor(t/65536),U=t-i*65536,t=I+i+65535,i=Math.floor(t/65536),I=t-i*65536,S+=i-1+37*(i-1),u[0]=S,u[1]=C,u[2]=F,u[3]=L,u[4]=j,u[5]=B,u[6]=T,u[7]=M,u[8]=m,u[9]=N,u[10]=G,u[11]=J,u[12]=X,u[13]=W,u[14]=U,u[15]=I}function b(u,s){v(u,s,s)}function g(u,s){const h=a();for(let t=0;t<16;t++)h[t]=s[t];for(let t=253;t>=0;t--)b(h,h),t!==2&&t!==4&&v(h,h,s);for(let t=0;t<16;t++)u[t]=h[t]}function A(u,s){const h=new Uint8Array(32),t=new Float64Array(80),i=a(),S=a(),C=a(),F=a(),L=a(),j=a();for(let m=0;m<31;m++)h[m]=u[m];h[31]=u[31]&127|64,h[0]&=248,d(t,s);for(let m=0;m<16;m++)S[m]=t[m];i[0]=F[0]=1;for(let m=254;m>=0;--m){const N=h[m>>>3]>>>(m&7)&1;f(i,S,N),f(C,F,N),E(L,i,C),y(i,i,C),E(C,S,F),y(S,S,F),b(F,L),b(j,i),v(i,C,i),v(C,S,L),E(L,i,C),y(i,i,C),b(S,i),y(C,F,j),v(i,C,l),E(i,i,F),v(C,C,i),v(i,F,j),v(F,S,t),b(S,L),f(i,S,N),f(C,F,N)}for(let m=0;m<16;m++)t[m+16]=i[m],t[m+32]=C[m],t[m+48]=S[m],t[m+64]=F[m];const B=t.subarray(32),T=t.subarray(16);g(B,B),v(T,T,B);const M=new Uint8Array(32);return c(M,T),M}e.scalarMult=A;function p(u){return A(u,D)}e.scalarMultBase=p;function O(u){if(u.length!==e.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${e.SECRET_KEY_LENGTH} bytes`);const s=new Uint8Array(u);return{publicKey:p(s),secretKey:s}}e.generateKeyPairFromSeed=O;function o(u){const s=(0,r.randomBytes)(32,u),h=O(s);return(0,n.wipe)(s),h}e.generateKeyPair=o;function _(u,s,h=!1){if(u.length!==e.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(s.length!==e.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const t=A(u,s);if(h){let i=0;for(let S=0;S<t.length;S++)i|=t[S];if(i===0)throw new Error("X25519: invalid shared key")}return t}e.sharedKey=_})(Ft);function mr(e,r){if(e.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),a=0;a<n.length;a++)n[a]=255;for(var D=0;D<e.length;D++){var l=e.charAt(D),w=l.charCodeAt(0);if(n[w]!==255)throw new TypeError(l+" is ambiguous");n[w]=D}var f=e.length,c=e.charAt(0),d=Math.log(f)/Math.log(256),E=Math.log(256)/Math.log(f);function y(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 A=0,p=0,O=0,o=g.length;O!==o&&g[O]===0;)O++,A++;for(var _=(o-O)*E+1>>>0,u=new Uint8Array(_);O!==o;){for(var s=g[O],h=0,t=_-1;(s!==0||h<p)&&t!==-1;t--,h++)s+=256*u[t]>>>0,u[t]=s%f>>>0,s=s/f>>>0;if(s!==0)throw new Error("Non-zero carry");p=h,O++}for(var i=_-p;i!==_&&u[i]===0;)i++;for(var S=c.repeat(A);i<_;++i)S+=e.charAt(u[i]);return S}function v(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var A=0;if(g[A]!==" "){for(var p=0,O=0;g[A]===c;)p++,A++;for(var o=(g.length-A)*d+1>>>0,_=new Uint8Array(o);g[A];){var u=n[g.charCodeAt(A)];if(u===255)return;for(var s=0,h=o-1;(u!==0||s<O)&&h!==-1;h--,s++)u+=f*_[h]>>>0,_[h]=u%256>>>0,u=u/256>>>0;if(u!==0)throw new Error("Non-zero carry");O=s,A++}if(g[A]!==" "){for(var t=o-O;t!==o&&_[t]===0;)t++;for(var i=new Uint8Array(p+(o-t)),S=p;t!==o;)i[S++]=_[t++];return i}}}function b(g){var A=v(g);if(A)return A;throw new Error(`Non-${r} character`)}return{encode:y,decodeUnsafe:v,decode:b}}var Cr=mr,pr=Cr;const Ar=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")},Ur=e=>new TextEncoder().encode(e),Or=e=>new TextDecoder().decode(e);class Fr{constructor(r,n,a){this.name=r,this.prefix=n,this.baseEncode=a}encode(r){if(r instanceof Uint8Array)return`${this.prefix}${this.baseEncode(r)}`;throw Error("Unknown type, must be binary type")}}class Nr{constructor(r,n,a){if(this.name=r,this.prefix=n,n.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=n.codePointAt(0),this.baseDecode=a}decode(r){if(typeof r=="string"){if(r.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(r)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(r.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(r){return Nt(this,r)}}class Tr{constructor(r){this.decoders=r}or(r){return Nt(this,r)}decode(r){const n=r[0],a=this.decoders[n];if(a)return a.decode(r);throw RangeError(`Unable to decode multibase string ${JSON.stringify(r)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Nt=(e,r)=>new Tr({...e.decoders||{[e.prefix]:e},...r.decoders||{[r.prefix]:r}});class Mr{constructor(r,n,a,D){this.name=r,this.prefix=n,this.baseEncode=a,this.baseDecode=D,this.encoder=new Fr(r,n,a),this.decoder=new Nr(r,n,D)}encode(r){return this.encoder.encode(r)}decode(r){return this.decoder.decode(r)}}const je=({name:e,prefix:r,encode:n,decode:a})=>new Mr(e,r,n,a),Oe=({prefix:e,name:r,alphabet:n})=>{const{encode:a,decode:D}=pr(n,r);return je({prefix:e,name:r,encode:a,decode:l=>Ar(D(l))})},xr=(e,r,n,a)=>{const D={};for(let E=0;E<r.length;++E)D[r[E]]=E;let l=e.length;for(;e[l-1]==="=";)--l;const w=new Uint8Array(l*n/8|0);let f=0,c=0,d=0;for(let E=0;E<l;++E){const y=D[e[E]];if(y===void 0)throw new SyntaxError(`Non-${a} character`);c=c<<n|y,f+=n,f>=8&&(f-=8,w[d++]=255&c>>f)}if(f>=n||255&c<<8-f)throw new SyntaxError("Unexpected end of data");return w},Lr=(e,r,n)=>{const a=r[r.length-1]==="=",D=(1<<n)-1;let l="",w=0,f=0;for(let c=0;c<e.length;++c)for(f=f<<8|e[c],w+=8;w>n;)w-=n,l+=r[D&f>>w];if(w&&(l+=r[D&f<<n-w]),a)for(;l.length*n&7;)l+="=";return l},Q=({name:e,prefix:r,bitsPerChar:n,alphabet:a})=>je({prefix:r,name:e,encode(D){return Lr(D,a,n)},decode(D){return xr(D,a,n,e)}}),Br=je({prefix:"\0",name:"identity",encode:e=>Or(e),decode:e=>Ur(e)}),jr=Object.freeze(Object.defineProperty({__proto__:null,identity:Br},Symbol.toStringTag,{value:"Module"})),Ir=Q({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),Rr=Object.freeze(Object.defineProperty({__proto__:null,base2:Ir},Symbol.toStringTag,{value:"Module"})),Pr=Q({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),Hr=Object.freeze(Object.defineProperty({__proto__:null,base8:Pr},Symbol.toStringTag,{value:"Module"})),Kr=Oe({prefix:"9",name:"base10",alphabet:"0123456789"}),zr=Object.freeze(Object.defineProperty({__proto__:null,base10:Kr},Symbol.toStringTag,{value:"Module"})),Yr=Q({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),qr=Q({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),$r=Object.freeze(Object.defineProperty({__proto__:null,base16:Yr,base16upper:qr},Symbol.toStringTag,{value:"Module"})),Gr=Q({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Vr=Q({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Wr=Q({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Xr=Q({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Jr=Q({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Qr=Q({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Zr=Q({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),kr=Q({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),en=Q({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),tn=Object.freeze(Object.defineProperty({__proto__:null,base32:Gr,base32hex:Jr,base32hexpad:Zr,base32hexpadupper:kr,base32hexupper:Qr,base32pad:Wr,base32padupper:Xr,base32upper:Vr,base32z:en},Symbol.toStringTag,{value:"Module"})),rn=Oe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),nn=Oe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),an=Object.freeze(Object.defineProperty({__proto__:null,base36:rn,base36upper:nn},Symbol.toStringTag,{value:"Module"})),un=Oe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),fn=Oe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),hn=Object.freeze(Object.defineProperty({__proto__:null,base58btc:un,base58flickr:fn},Symbol.toStringTag,{value:"Module"})),sn=Q({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),on=Q({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),cn=Q({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ln=Q({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),Dn=Object.freeze(Object.defineProperty({__proto__:null,base64:sn,base64pad:on,base64url:cn,base64urlpad:ln},Symbol.toStringTag,{value:"Module"})),Tt=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),_n=Tt.reduce((e,r,n)=>(e[n]=r,e),[]),dn=Tt.reduce((e,r,n)=>(e[r.codePointAt(0)]=n,e),[]);function En(e){return e.reduce((r,n)=>(r+=_n[n],r),"")}function bn(e){const r=[];for(const n of e){const a=dn[n.codePointAt(0)];if(a===void 0)throw new Error(`Non-base256emoji character: ${n}`);r.push(a)}return new Uint8Array(r)}const vn=je({prefix:"🚀",name:"base256emoji",encode:En,decode:bn}),wn=Object.freeze(Object.defineProperty({__proto__:null,base256emoji:vn},Symbol.toStringTag,{value:"Module"}));new TextEncoder;new TextDecoder;var Mt={};/*! *****************************************************************************
1
+ "use strict";const Ye=require("./index-uRFn7LyP.js");var Et={},Me={},x={},bt={};(function(e){Object.defineProperty(e,"__esModule",{value:!0});function r(f,c){var d=f>>>16&65535,E=f&65535,y=c>>>16&65535,v=c&65535;return E*v+(d*v+E*y<<16>>>0)|0}e.mul=Math.imul||r;function n(f,c){return f+c|0}e.add=n;function a(f,c){return f-c|0}e.sub=a;function D(f,c){return f<<c|f>>>32-c}e.rotl=D;function l(f,c){return f<<32-c|f>>>c}e.rotr=l;function w(f){return typeof f=="number"&&isFinite(f)&&Math.floor(f)===f}e.isInteger=Number.isInteger||w,e.MAX_SAFE_INTEGER=9007199254740991,e.isSafeInteger=function(f){return e.isInteger(f)&&f>=-e.MAX_SAFE_INTEGER&&f<=e.MAX_SAFE_INTEGER}})(bt);Object.defineProperty(x,"__esModule",{value:!0});var vt=bt;function It(e,r){return r===void 0&&(r=0),(e[r+0]<<8|e[r+1])<<16>>16}x.readInt16BE=It;function Rt(e,r){return r===void 0&&(r=0),(e[r+0]<<8|e[r+1])>>>0}x.readUint16BE=Rt;function Pt(e,r){return r===void 0&&(r=0),(e[r+1]<<8|e[r])<<16>>16}x.readInt16LE=Pt;function Ht(e,r){return r===void 0&&(r=0),(e[r+1]<<8|e[r])>>>0}x.readUint16LE=Ht;function wt(e,r,n){return r===void 0&&(r=new Uint8Array(2)),n===void 0&&(n=0),r[n+0]=e>>>8,r[n+1]=e>>>0,r}x.writeUint16BE=wt;x.writeInt16BE=wt;function yt(e,r,n){return r===void 0&&(r=new Uint8Array(2)),n===void 0&&(n=0),r[n+0]=e>>>0,r[n+1]=e>>>8,r}x.writeUint16LE=yt;x.writeInt16LE=yt;function qe(e,r){return r===void 0&&(r=0),e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]}x.readInt32BE=qe;function $e(e,r){return r===void 0&&(r=0),(e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3])>>>0}x.readUint32BE=$e;function Ge(e,r){return r===void 0&&(r=0),e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]}x.readInt32LE=Ge;function Ve(e,r){return r===void 0&&(r=0),(e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r])>>>0}x.readUint32LE=Ve;function Ne(e,r,n){return r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0),r[n+0]=e>>>24,r[n+1]=e>>>16,r[n+2]=e>>>8,r[n+3]=e>>>0,r}x.writeUint32BE=Ne;x.writeInt32BE=Ne;function Te(e,r,n){return r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0),r[n+0]=e>>>0,r[n+1]=e>>>8,r[n+2]=e>>>16,r[n+3]=e>>>24,r}x.writeUint32LE=Te;x.writeInt32LE=Te;function Kt(e,r){r===void 0&&(r=0);var n=qe(e,r),a=qe(e,r+4);return n*4294967296+a-(a>>31)*4294967296}x.readInt64BE=Kt;function zt(e,r){r===void 0&&(r=0);var n=$e(e,r),a=$e(e,r+4);return n*4294967296+a}x.readUint64BE=zt;function Yt(e,r){r===void 0&&(r=0);var n=Ge(e,r),a=Ge(e,r+4);return a*4294967296+n-(n>>31)*4294967296}x.readInt64LE=Yt;function qt(e,r){r===void 0&&(r=0);var n=Ve(e,r),a=Ve(e,r+4);return a*4294967296+n}x.readUint64LE=qt;function gt(e,r,n){return r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0),Ne(e/4294967296>>>0,r,n),Ne(e>>>0,r,n+4),r}x.writeUint64BE=gt;x.writeInt64BE=gt;function St(e,r,n){return r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0),Te(e>>>0,r,n),Te(e/4294967296>>>0,r,n+4),r}x.writeUint64LE=St;x.writeInt64LE=St;function $t(e,r,n){if(n===void 0&&(n=0),e%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>r.length-n)throw new Error("readUintBE: array is too short for the given bitLength");for(var a=0,D=1,l=e/8+n-1;l>=n;l--)a+=r[l]*D,D*=256;return a}x.readUintBE=$t;function Gt(e,r,n){if(n===void 0&&(n=0),e%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>r.length-n)throw new Error("readUintLE: array is too short for the given bitLength");for(var a=0,D=1,l=n;l<n+e/8;l++)a+=r[l]*D,D*=256;return a}x.readUintLE=Gt;function Vt(e,r,n,a){if(n===void 0&&(n=new Uint8Array(e/8)),a===void 0&&(a=0),e%8!==0)throw new Error("writeUintBE supports only bitLengths divisible by 8");if(!vt.isSafeInteger(r))throw new Error("writeUintBE value must be an integer");for(var D=1,l=e/8+a-1;l>=a;l--)n[l]=r/D&255,D*=256;return n}x.writeUintBE=Vt;function Wt(e,r,n,a){if(n===void 0&&(n=new Uint8Array(e/8)),a===void 0&&(a=0),e%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!vt.isSafeInteger(r))throw new Error("writeUintLE value must be an integer");for(var D=1,l=a;l<a+e/8;l++)n[l]=r/D&255,D*=256;return n}x.writeUintLE=Wt;function Xt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat32(r)}x.readFloat32BE=Xt;function Jt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat32(r,!0)}x.readFloat32LE=Jt;function Qt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat64(r)}x.readFloat64BE=Qt;function Zt(e,r){r===void 0&&(r=0);var n=new DataView(e.buffer,e.byteOffset,e.byteLength);return n.getFloat64(r,!0)}x.readFloat64LE=Zt;function kt(e,r,n){r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat32(n,e),r}x.writeFloat32BE=kt;function er(e,r,n){r===void 0&&(r=new Uint8Array(4)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat32(n,e,!0),r}x.writeFloat32LE=er;function tr(e,r,n){r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat64(n,e),r}x.writeFloat64BE=tr;function rr(e,r,n){r===void 0&&(r=new Uint8Array(8)),n===void 0&&(n=0);var a=new DataView(r.buffer,r.byteOffset,r.byteLength);return a.setFloat64(n,e,!0),r}x.writeFloat64LE=rr;var de={};Object.defineProperty(de,"__esModule",{value:!0});function nr(e){for(var r=0;r<e.length;r++)e[r]=0;return e}de.wipe=nr;Object.defineProperty(Me,"__esModule",{value:!0});var _e=x,We=de,ir=20;function ar(e,r,n){for(var a=1634760805,D=857760878,l=2036477234,w=1797285236,f=n[3]<<24|n[2]<<16|n[1]<<8|n[0],c=n[7]<<24|n[6]<<16|n[5]<<8|n[4],d=n[11]<<24|n[10]<<16|n[9]<<8|n[8],E=n[15]<<24|n[14]<<16|n[13]<<8|n[12],y=n[19]<<24|n[18]<<16|n[17]<<8|n[16],v=n[23]<<24|n[22]<<16|n[21]<<8|n[20],b=n[27]<<24|n[26]<<16|n[25]<<8|n[24],g=n[31]<<24|n[30]<<16|n[29]<<8|n[28],A=r[3]<<24|r[2]<<16|r[1]<<8|r[0],p=r[7]<<24|r[6]<<16|r[5]<<8|r[4],O=r[11]<<24|r[10]<<16|r[9]<<8|r[8],o=r[15]<<24|r[14]<<16|r[13]<<8|r[12],_=a,u=D,s=l,h=w,t=f,i=c,S=d,C=E,F=y,L=v,j=b,B=g,T=A,M=p,m=O,N=o,G=0;G<ir;G+=2)_=_+t|0,T^=_,T=T>>>16|T<<16,F=F+T|0,t^=F,t=t>>>20|t<<12,u=u+i|0,M^=u,M=M>>>16|M<<16,L=L+M|0,i^=L,i=i>>>20|i<<12,s=s+S|0,m^=s,m=m>>>16|m<<16,j=j+m|0,S^=j,S=S>>>20|S<<12,h=h+C|0,N^=h,N=N>>>16|N<<16,B=B+N|0,C^=B,C=C>>>20|C<<12,s=s+S|0,m^=s,m=m>>>24|m<<8,j=j+m|0,S^=j,S=S>>>25|S<<7,h=h+C|0,N^=h,N=N>>>24|N<<8,B=B+N|0,C^=B,C=C>>>25|C<<7,u=u+i|0,M^=u,M=M>>>24|M<<8,L=L+M|0,i^=L,i=i>>>25|i<<7,_=_+t|0,T^=_,T=T>>>24|T<<8,F=F+T|0,t^=F,t=t>>>25|t<<7,_=_+i|0,N^=_,N=N>>>16|N<<16,j=j+N|0,i^=j,i=i>>>20|i<<12,u=u+S|0,T^=u,T=T>>>16|T<<16,B=B+T|0,S^=B,S=S>>>20|S<<12,s=s+C|0,M^=s,M=M>>>16|M<<16,F=F+M|0,C^=F,C=C>>>20|C<<12,h=h+t|0,m^=h,m=m>>>16|m<<16,L=L+m|0,t^=L,t=t>>>20|t<<12,s=s+C|0,M^=s,M=M>>>24|M<<8,F=F+M|0,C^=F,C=C>>>25|C<<7,h=h+t|0,m^=h,m=m>>>24|m<<8,L=L+m|0,t^=L,t=t>>>25|t<<7,u=u+S|0,T^=u,T=T>>>24|T<<8,B=B+T|0,S^=B,S=S>>>25|S<<7,_=_+i|0,N^=_,N=N>>>24|N<<8,j=j+N|0,i^=j,i=i>>>25|i<<7;_e.writeUint32LE(_+a|0,e,0),_e.writeUint32LE(u+D|0,e,4),_e.writeUint32LE(s+l|0,e,8),_e.writeUint32LE(h+w|0,e,12),_e.writeUint32LE(t+f|0,e,16),_e.writeUint32LE(i+c|0,e,20),_e.writeUint32LE(S+d|0,e,24),_e.writeUint32LE(C+E|0,e,28),_e.writeUint32LE(F+y|0,e,32),_e.writeUint32LE(L+v|0,e,36),_e.writeUint32LE(j+b|0,e,40),_e.writeUint32LE(B+g|0,e,44),_e.writeUint32LE(T+A|0,e,48),_e.writeUint32LE(M+p|0,e,52),_e.writeUint32LE(m+O|0,e,56),_e.writeUint32LE(N+o|0,e,60)}function mt(e,r,n,a,D){if(D===void 0&&(D=0),e.length!==32)throw new Error("ChaCha: key size must be 32 bytes");if(a.length<n.length)throw new Error("ChaCha: destination is shorter than source");var l,w;if(D===0){if(r.length!==8&&r.length!==12)throw new Error("ChaCha nonce must be 8 or 12 bytes");l=new Uint8Array(16),w=l.length-r.length,l.set(r,w)}else{if(r.length!==16)throw new Error("ChaCha nonce with counter must be 16 bytes");l=r,w=D}for(var f=new Uint8Array(64),c=0;c<n.length;c+=64){ar(f,l,e);for(var d=c;d<c+64&&d<n.length;d++)a[d]=n[d]^f[d-c];fr(l,0,w)}return We.wipe(f),D===0&&We.wipe(l),a}Me.streamXOR=mt;function ur(e,r,n,a){return a===void 0&&(a=0),We.wipe(n),mt(e,r,n,n,a)}Me.stream=ur;function fr(e,r,n){for(var a=1;n--;)a=a+(e[r]&255)|0,e[r]=a&255,a>>>=8,r++;if(a>0)throw new Error("ChaCha: counter overflow")}var Ct={},be={};Object.defineProperty(be,"__esModule",{value:!0});function hr(e,r,n){return~(e-1)&r|e-1&n}be.select=hr;function sr(e,r){return(e|0)-(r|0)-1>>>31&1}be.lessOrEqual=sr;function pt(e,r){if(e.length!==r.length)return 0;for(var n=0,a=0;a<e.length;a++)n|=e[a]^r[a];return 1&n-1>>>8}be.compare=pt;function or(e,r){return e.length===0||r.length===0?!1:pt(e,r)!==0}be.equal=or;(function(e){Object.defineProperty(e,"__esModule",{value:!0});var r=be,n=de;e.DIGEST_LENGTH=16;var a=function(){function w(f){this.digestLength=e.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var c=f[0]|f[1]<<8;this._r[0]=c&8191;var d=f[2]|f[3]<<8;this._r[1]=(c>>>13|d<<3)&8191;var E=f[4]|f[5]<<8;this._r[2]=(d>>>10|E<<6)&7939;var y=f[6]|f[7]<<8;this._r[3]=(E>>>7|y<<9)&8191;var v=f[8]|f[9]<<8;this._r[4]=(y>>>4|v<<12)&255,this._r[5]=v>>>1&8190;var b=f[10]|f[11]<<8;this._r[6]=(v>>>14|b<<2)&8191;var g=f[12]|f[13]<<8;this._r[7]=(b>>>11|g<<5)&8065;var A=f[14]|f[15]<<8;this._r[8]=(g>>>8|A<<8)&8191,this._r[9]=A>>>5&127,this._pad[0]=f[16]|f[17]<<8,this._pad[1]=f[18]|f[19]<<8,this._pad[2]=f[20]|f[21]<<8,this._pad[3]=f[22]|f[23]<<8,this._pad[4]=f[24]|f[25]<<8,this._pad[5]=f[26]|f[27]<<8,this._pad[6]=f[28]|f[29]<<8,this._pad[7]=f[30]|f[31]<<8}return w.prototype._blocks=function(f,c,d){for(var E=this._fin?0:2048,y=this._h[0],v=this._h[1],b=this._h[2],g=this._h[3],A=this._h[4],p=this._h[5],O=this._h[6],o=this._h[7],_=this._h[8],u=this._h[9],s=this._r[0],h=this._r[1],t=this._r[2],i=this._r[3],S=this._r[4],C=this._r[5],F=this._r[6],L=this._r[7],j=this._r[8],B=this._r[9];d>=16;){var T=f[c+0]|f[c+1]<<8;y+=T&8191;var M=f[c+2]|f[c+3]<<8;v+=(T>>>13|M<<3)&8191;var m=f[c+4]|f[c+5]<<8;b+=(M>>>10|m<<6)&8191;var N=f[c+6]|f[c+7]<<8;g+=(m>>>7|N<<9)&8191;var G=f[c+8]|f[c+9]<<8;A+=(N>>>4|G<<12)&8191,p+=G>>>1&8191;var J=f[c+10]|f[c+11]<<8;O+=(G>>>14|J<<2)&8191;var X=f[c+12]|f[c+13]<<8;o+=(J>>>11|X<<5)&8191;var W=f[c+14]|f[c+15]<<8;_+=(X>>>8|W<<8)&8191,u+=W>>>5|E;var U=0,I=U;I+=y*s,I+=v*(5*B),I+=b*(5*j),I+=g*(5*L),I+=A*(5*F),U=I>>>13,I&=8191,I+=p*(5*C),I+=O*(5*S),I+=o*(5*i),I+=_*(5*t),I+=u*(5*h),U+=I>>>13,I&=8191;var R=U;R+=y*h,R+=v*s,R+=b*(5*B),R+=g*(5*j),R+=A*(5*L),U=R>>>13,R&=8191,R+=p*(5*F),R+=O*(5*C),R+=o*(5*S),R+=_*(5*i),R+=u*(5*t),U+=R>>>13,R&=8191;var P=U;P+=y*t,P+=v*h,P+=b*s,P+=g*(5*B),P+=A*(5*j),U=P>>>13,P&=8191,P+=p*(5*L),P+=O*(5*F),P+=o*(5*C),P+=_*(5*S),P+=u*(5*i),U+=P>>>13,P&=8191;var H=U;H+=y*i,H+=v*t,H+=b*h,H+=g*s,H+=A*(5*B),U=H>>>13,H&=8191,H+=p*(5*j),H+=O*(5*L),H+=o*(5*F),H+=_*(5*C),H+=u*(5*S),U+=H>>>13,H&=8191;var K=U;K+=y*S,K+=v*i,K+=b*t,K+=g*h,K+=A*s,U=K>>>13,K&=8191,K+=p*(5*B),K+=O*(5*j),K+=o*(5*L),K+=_*(5*F),K+=u*(5*C),U+=K>>>13,K&=8191;var z=U;z+=y*C,z+=v*S,z+=b*i,z+=g*t,z+=A*h,U=z>>>13,z&=8191,z+=p*s,z+=O*(5*B),z+=o*(5*j),z+=_*(5*L),z+=u*(5*F),U+=z>>>13,z&=8191;var Y=U;Y+=y*F,Y+=v*C,Y+=b*S,Y+=g*i,Y+=A*t,U=Y>>>13,Y&=8191,Y+=p*h,Y+=O*s,Y+=o*(5*B),Y+=_*(5*j),Y+=u*(5*L),U+=Y>>>13,Y&=8191;var q=U;q+=y*L,q+=v*F,q+=b*C,q+=g*S,q+=A*i,U=q>>>13,q&=8191,q+=p*t,q+=O*h,q+=o*s,q+=_*(5*B),q+=u*(5*j),U+=q>>>13,q&=8191;var $=U;$+=y*j,$+=v*L,$+=b*F,$+=g*C,$+=A*S,U=$>>>13,$&=8191,$+=p*i,$+=O*t,$+=o*h,$+=_*s,$+=u*(5*B),U+=$>>>13,$&=8191;var V=U;V+=y*B,V+=v*j,V+=b*L,V+=g*F,V+=A*C,U=V>>>13,V&=8191,V+=p*S,V+=O*i,V+=o*t,V+=_*h,V+=u*s,U+=V>>>13,V&=8191,U=(U<<2)+U|0,U=U+I|0,I=U&8191,U=U>>>13,R+=U,y=I,v=R,b=P,g=H,A=K,p=z,O=Y,o=q,_=$,u=V,c+=16,d-=16}this._h[0]=y,this._h[1]=v,this._h[2]=b,this._h[3]=g,this._h[4]=A,this._h[5]=p,this._h[6]=O,this._h[7]=o,this._h[8]=_,this._h[9]=u},w.prototype.finish=function(f,c){c===void 0&&(c=0);var d=new Uint16Array(10),E,y,v,b;if(this._leftover){for(b=this._leftover,this._buffer[b++]=1;b<16;b++)this._buffer[b]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(E=this._h[1]>>>13,this._h[1]&=8191,b=2;b<10;b++)this._h[b]+=E,E=this._h[b]>>>13,this._h[b]&=8191;for(this._h[0]+=E*5,E=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=E,E=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=E,d[0]=this._h[0]+5,E=d[0]>>>13,d[0]&=8191,b=1;b<10;b++)d[b]=this._h[b]+E,E=d[b]>>>13,d[b]&=8191;for(d[9]-=8192,y=(E^1)-1,b=0;b<10;b++)d[b]&=y;for(y=~y,b=0;b<10;b++)this._h[b]=this._h[b]&y|d[b];for(this._h[0]=(this._h[0]|this._h[1]<<13)&65535,this._h[1]=(this._h[1]>>>3|this._h[2]<<10)&65535,this._h[2]=(this._h[2]>>>6|this._h[3]<<7)&65535,this._h[3]=(this._h[3]>>>9|this._h[4]<<4)&65535,this._h[4]=(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14)&65535,this._h[5]=(this._h[6]>>>2|this._h[7]<<11)&65535,this._h[6]=(this._h[7]>>>5|this._h[8]<<8)&65535,this._h[7]=(this._h[8]>>>8|this._h[9]<<5)&65535,v=this._h[0]+this._pad[0],this._h[0]=v&65535,b=1;b<8;b++)v=(this._h[b]+this._pad[b]|0)+(v>>>16)|0,this._h[b]=v&65535;return f[c+0]=this._h[0]>>>0,f[c+1]=this._h[0]>>>8,f[c+2]=this._h[1]>>>0,f[c+3]=this._h[1]>>>8,f[c+4]=this._h[2]>>>0,f[c+5]=this._h[2]>>>8,f[c+6]=this._h[3]>>>0,f[c+7]=this._h[3]>>>8,f[c+8]=this._h[4]>>>0,f[c+9]=this._h[4]>>>8,f[c+10]=this._h[5]>>>0,f[c+11]=this._h[5]>>>8,f[c+12]=this._h[6]>>>0,f[c+13]=this._h[6]>>>8,f[c+14]=this._h[7]>>>0,f[c+15]=this._h[7]>>>8,this._finished=!0,this},w.prototype.update=function(f){var c=0,d=f.length,E;if(this._leftover){E=16-this._leftover,E>d&&(E=d);for(var y=0;y<E;y++)this._buffer[this._leftover+y]=f[c+y];if(d-=E,c+=E,this._leftover+=E,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(d>=16&&(E=d-d%16,this._blocks(f,c,E),c+=E,d-=E),d){for(var y=0;y<d;y++)this._buffer[this._leftover+y]=f[c+y];this._leftover+=d}return this},w.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var f=new Uint8Array(16);return this.finish(f),f},w.prototype.clean=function(){return n.wipe(this._buffer),n.wipe(this._r),n.wipe(this._h),n.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},w}();e.Poly1305=a;function D(w,f){var c=new a(w);c.update(f);var d=c.digest();return c.clean(),d}e.oneTimeAuth=D;function l(w,f){return w.length!==e.DIGEST_LENGTH||f.length!==e.DIGEST_LENGTH?!1:r.equal(w,f)}e.equal=l})(Ct);(function(e){Object.defineProperty(e,"__esModule",{value:!0});var r=Me,n=Ct,a=de,D=x,l=be;e.KEY_LENGTH=32,e.NONCE_LENGTH=12,e.TAG_LENGTH=16;var w=new Uint8Array(16),f=function(){function c(d){if(this.nonceLength=e.NONCE_LENGTH,this.tagLength=e.TAG_LENGTH,d.length!==e.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(d)}return c.prototype.seal=function(d,E,y,v){if(d.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var b=new Uint8Array(16);b.set(d,b.length-d.length);var g=new Uint8Array(32);r.stream(this._key,b,g,4);var A=E.length+this.tagLength,p;if(v){if(v.length!==A)throw new Error("ChaCha20Poly1305: incorrect destination length");p=v}else p=new Uint8Array(A);return r.streamXOR(this._key,b,E,p,4),this._authenticate(p.subarray(p.length-this.tagLength,p.length),g,p.subarray(0,p.length-this.tagLength),y),a.wipe(b),p},c.prototype.open=function(d,E,y,v){if(d.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(E.length<this.tagLength)return null;var b=new Uint8Array(16);b.set(d,b.length-d.length);var g=new Uint8Array(32);r.stream(this._key,b,g,4);var A=new Uint8Array(this.tagLength);if(this._authenticate(A,g,E.subarray(0,E.length-this.tagLength),y),!l.equal(A,E.subarray(E.length-this.tagLength,E.length)))return null;var p=E.length-this.tagLength,O;if(v){if(v.length!==p)throw new Error("ChaCha20Poly1305: incorrect destination length");O=v}else O=new Uint8Array(p);return r.streamXOR(this._key,b,E.subarray(0,E.length-this.tagLength),O,4),a.wipe(b),O},c.prototype.clean=function(){return a.wipe(this._key),this},c.prototype._authenticate=function(d,E,y,v){var b=new n.Poly1305(E);v&&(b.update(v),v.length%16>0&&b.update(w.subarray(v.length%16))),b.update(y),y.length%16>0&&b.update(w.subarray(y.length%16));var g=new Uint8Array(8);v&&D.writeUint64LE(v.length,g),b.update(g),D.writeUint64LE(y.length,g),b.update(g);for(var A=b.digest(),p=0;p<A.length;p++)d[p]=A[p];b.clean(),a.wipe(A),a.wipe(g)},c}();e.ChaCha20Poly1305=f})(Et);var At={},Ue={},ke={};Object.defineProperty(ke,"__esModule",{value:!0});function cr(e){return typeof e.saveState<"u"&&typeof e.restoreState<"u"&&typeof e.cleanSavedState<"u"}ke.isSerializableHash=cr;Object.defineProperty(Ue,"__esModule",{value:!0});var Ee=ke,lr=be,Dr=de,Ut=function(){function e(r,n){this._finished=!1,this._inner=new r,this._outer=new r,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var a=new Uint8Array(this.blockSize);n.length>this.blockSize?this._inner.update(n).finish(a).clean():a.set(n);for(var D=0;D<a.length;D++)a[D]^=54;this._inner.update(a);for(var D=0;D<a.length;D++)a[D]^=106;this._outer.update(a),Ee.isSerializableHash(this._inner)&&Ee.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),Dr.wipe(a)}return e.prototype.reset=function(){if(!Ee.isSerializableHash(this._inner)||!Ee.isSerializableHash(this._outer))throw new Error("hmac: can't reset() because hash doesn't implement restoreState()");return this._inner.restoreState(this._innerKeyedState),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},e.prototype.clean=function(){Ee.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),Ee.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},e.prototype.update=function(r){return this._inner.update(r),this},e.prototype.finish=function(r){return this._finished?(this._outer.finish(r),this):(this._inner.finish(r),this._outer.update(r.subarray(0,this.digestLength)).finish(r),this._finished=!0,this)},e.prototype.digest=function(){var r=new Uint8Array(this.digestLength);return this.finish(r),r},e.prototype.saveState=function(){if(!Ee.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},e.prototype.restoreState=function(r){if(!Ee.isSerializableHash(this._inner)||!Ee.isSerializableHash(this._outer))throw new Error("hmac: can't restoreState() because hash doesn't implement it");return this._inner.restoreState(r),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},e.prototype.cleanSavedState=function(r){if(!Ee.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(r)},e}();Ue.HMAC=Ut;function _r(e,r,n){var a=new Ut(e,r);a.update(n);var D=a.digest();return a.clean(),D}Ue.hmac=_r;Ue.equal=lr.equal;Object.defineProperty(At,"__esModule",{value:!0});var rt=Ue,nt=de,dr=function(){function e(r,n,a,D){a===void 0&&(a=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=r,this._info=D;var l=rt.hmac(this._hash,a,n);this._hmac=new rt.HMAC(r,l),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return e.prototype._fillBuffer=function(){this._counter[0]++;var r=this._counter[0];if(r===0)throw new Error("hkdf: cannot expand more");this._hmac.reset(),r>1&&this._hmac.update(this._buffer),this._info&&this._hmac.update(this._info),this._hmac.update(this._counter),this._hmac.finish(this._buffer),this._bufpos=0},e.prototype.expand=function(r){for(var n=new Uint8Array(r),a=0;a<n.length;a++)this._bufpos===this._buffer.length&&this._fillBuffer(),n[a]=this._buffer[this._bufpos++];return n},e.prototype.clean=function(){this._hmac.clean(),nt.wipe(this._buffer),nt.wipe(this._counter),this._bufpos=0},e}(),Er=At.HKDF=dr,et={},xe={},Le={};Object.defineProperty(Le,"__esModule",{value:!0});Le.BrowserRandomSource=void 0;const it=65536;class br{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const r=typeof self<"u"?self.crypto||self.msCrypto:null;r&&r.getRandomValues!==void 0&&(this._crypto=r,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(r){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const n=new Uint8Array(r);for(let a=0;a<n.length;a+=it)this._crypto.getRandomValues(n.subarray(a,a+Math.min(n.length-a,it)));return n}}Le.BrowserRandomSource=br;var Be={};Object.defineProperty(Be,"__esModule",{value:!0});Be.NodeRandomSource=void 0;const vr=de;class wr{constructor(){if(this.isAvailable=!1,this.isInstantiated=!1,typeof Ye.commonjsRequire<"u"){const r=Ye.requireCryptoBrowserify();r&&r.randomBytes&&(this._crypto=r,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(r){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let n=this._crypto.randomBytes(r);if(n.length!==r)throw new Error("NodeRandomSource: got fewer bytes than requested");const a=new Uint8Array(r);for(let D=0;D<a.length;D++)a[D]=n[D];return(0,vr.wipe)(n),a}}Be.NodeRandomSource=wr;Object.defineProperty(xe,"__esModule",{value:!0});xe.SystemRandomSource=void 0;const yr=Le,gr=Be;class Sr{constructor(){if(this.isAvailable=!1,this.name="",this._source=new yr.BrowserRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Browser";return}if(this._source=new gr.NodeRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Node";return}}randomBytes(r){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(r)}}xe.SystemRandomSource=Sr;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.randomStringForEntropy=e.randomString=e.randomUint32=e.randomBytes=e.defaultRandomSource=void 0;const r=xe,n=x,a=de;e.defaultRandomSource=new r.SystemRandomSource;function D(d,E=e.defaultRandomSource){return E.randomBytes(d)}e.randomBytes=D;function l(d=e.defaultRandomSource){const E=D(4,d),y=(0,n.readUint32LE)(E);return(0,a.wipe)(E),y}e.randomUint32=l;const w="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function f(d,E=w,y=e.defaultRandomSource){if(E.length<2)throw new Error("randomString charset is too short");if(E.length>256)throw new Error("randomString charset is too long");let v="";const b=E.length,g=256-256%b;for(;d>0;){const A=D(Math.ceil(d*256/g),y);for(let p=0;p<A.length&&d>0;p++){const O=A[p];O<g&&(v+=E.charAt(O%b),d--)}(0,a.wipe)(A)}return v}e.randomString=f;function c(d,E=w,y=e.defaultRandomSource){const v=Math.ceil(d/(Math.log(E.length)/Math.LN2));return f(v,E,y)}e.randomStringForEntropy=c})(et);var Ot={};(function(e){Object.defineProperty(e,"__esModule",{value:!0});var r=x,n=de;e.DIGEST_LENGTH=32,e.BLOCK_SIZE=64;var a=function(){function f(){this.digestLength=e.DIGEST_LENGTH,this.blockSize=e.BLOCK_SIZE,this._state=new Int32Array(8),this._temp=new Int32Array(64),this._buffer=new Uint8Array(128),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return f.prototype._initState=function(){this._state[0]=1779033703,this._state[1]=3144134277,this._state[2]=1013904242,this._state[3]=2773480762,this._state[4]=1359893119,this._state[5]=2600822924,this._state[6]=528734635,this._state[7]=1541459225},f.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},f.prototype.clean=function(){n.wipe(this._buffer),n.wipe(this._temp),this.reset()},f.prototype.update=function(c,d){if(d===void 0&&(d=c.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var E=0;if(this._bytesHashed+=d,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&d>0;)this._buffer[this._bufferLength++]=c[E++],d--;this._bufferLength===this.blockSize&&(l(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(d>=this.blockSize&&(E=l(this._temp,this._state,c,E,d),d%=this.blockSize);d>0;)this._buffer[this._bufferLength++]=c[E++],d--;return this},f.prototype.finish=function(c){if(!this._finished){var d=this._bytesHashed,E=this._bufferLength,y=d/536870912|0,v=d<<3,b=d%64<56?64:128;this._buffer[E]=128;for(var g=E+1;g<b-8;g++)this._buffer[g]=0;r.writeUint32BE(y,this._buffer,b-8),r.writeUint32BE(v,this._buffer,b-4),l(this._temp,this._state,this._buffer,0,b),this._finished=!0}for(var g=0;g<this.digestLength/4;g++)r.writeUint32BE(this._state[g],c,g*4);return this},f.prototype.digest=function(){var c=new Uint8Array(this.digestLength);return this.finish(c),c},f.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{state:new Int32Array(this._state),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},f.prototype.restoreState=function(c){return this._state.set(c.state),this._bufferLength=c.bufferLength,c.buffer&&this._buffer.set(c.buffer),this._bytesHashed=c.bytesHashed,this._finished=!1,this},f.prototype.cleanSavedState=function(c){n.wipe(c.state),c.buffer&&n.wipe(c.buffer),c.bufferLength=0,c.bytesHashed=0},f}();e.SHA256=a;var D=new Int32Array([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 l(f,c,d,E,y){for(;y>=64;){for(var v=c[0],b=c[1],g=c[2],A=c[3],p=c[4],O=c[5],o=c[6],_=c[7],u=0;u<16;u++){var s=E+u*4;f[u]=r.readUint32BE(d,s)}for(var u=16;u<64;u++){var h=f[u-2],t=(h>>>17|h<<15)^(h>>>19|h<<13)^h>>>10;h=f[u-15];var i=(h>>>7|h<<25)^(h>>>18|h<<14)^h>>>3;f[u]=(t+f[u-7]|0)+(i+f[u-16]|0)}for(var u=0;u<64;u++){var t=(((p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7))+(p&O^~p&o)|0)+(_+(D[u]+f[u]|0)|0)|0,i=((v>>>2|v<<30)^(v>>>13|v<<19)^(v>>>22|v<<10))+(v&b^v&g^b&g)|0;_=o,o=O,O=p,p=A+t|0,A=g,g=b,b=v,v=t+i|0}c[0]+=v,c[1]+=b,c[2]+=g,c[3]+=A,c[4]+=p,c[5]+=O,c[6]+=o,c[7]+=_,E+=64,y-=64}return E}function w(f){var c=new a;c.update(f);var d=c.digest();return c.clean(),d}e.hash=w})(Ot);var Ft={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.sharedKey=e.generateKeyPair=e.generateKeyPairFromSeed=e.scalarMultBase=e.scalarMult=e.SHARED_KEY_LENGTH=e.SECRET_KEY_LENGTH=e.PUBLIC_KEY_LENGTH=void 0;const r=et,n=de;e.PUBLIC_KEY_LENGTH=32,e.SECRET_KEY_LENGTH=32,e.SHARED_KEY_LENGTH=32;function a(u){const s=new Float64Array(16);if(u)for(let h=0;h<u.length;h++)s[h]=u[h];return s}const D=new Uint8Array(32);D[0]=9;const l=a([56129,1]);function w(u){let s=1;for(let h=0;h<16;h++){let t=u[h]+s+65535;s=Math.floor(t/65536),u[h]=t-s*65536}u[0]+=s-1+37*(s-1)}function f(u,s,h){const t=~(h-1);for(let i=0;i<16;i++){const S=t&(u[i]^s[i]);u[i]^=S,s[i]^=S}}function c(u,s){const h=a(),t=a();for(let i=0;i<16;i++)t[i]=s[i];w(t),w(t),w(t);for(let i=0;i<2;i++){h[0]=t[0]-65517;for(let C=1;C<15;C++)h[C]=t[C]-65535-(h[C-1]>>16&1),h[C-1]&=65535;h[15]=t[15]-32767-(h[14]>>16&1);const S=h[15]>>16&1;h[14]&=65535,f(t,h,1-S)}for(let i=0;i<16;i++)u[2*i]=t[i]&255,u[2*i+1]=t[i]>>8}function d(u,s){for(let h=0;h<16;h++)u[h]=s[2*h]+(s[2*h+1]<<8);u[15]&=32767}function E(u,s,h){for(let t=0;t<16;t++)u[t]=s[t]+h[t]}function y(u,s,h){for(let t=0;t<16;t++)u[t]=s[t]-h[t]}function v(u,s,h){let t,i,S=0,C=0,F=0,L=0,j=0,B=0,T=0,M=0,m=0,N=0,G=0,J=0,X=0,W=0,U=0,I=0,R=0,P=0,H=0,K=0,z=0,Y=0,q=0,$=0,V=0,ve=0,ge=0,me=0,Fe=0,Re=0,tt=0,Z=h[0],k=h[1],ee=h[2],te=h[3],re=h[4],ne=h[5],ie=h[6],ae=h[7],ue=h[8],fe=h[9],he=h[10],se=h[11],oe=h[12],ce=h[13],le=h[14],De=h[15];t=s[0],S+=t*Z,C+=t*k,F+=t*ee,L+=t*te,j+=t*re,B+=t*ne,T+=t*ie,M+=t*ae,m+=t*ue,N+=t*fe,G+=t*he,J+=t*se,X+=t*oe,W+=t*ce,U+=t*le,I+=t*De,t=s[1],C+=t*Z,F+=t*k,L+=t*ee,j+=t*te,B+=t*re,T+=t*ne,M+=t*ie,m+=t*ae,N+=t*ue,G+=t*fe,J+=t*he,X+=t*se,W+=t*oe,U+=t*ce,I+=t*le,R+=t*De,t=s[2],F+=t*Z,L+=t*k,j+=t*ee,B+=t*te,T+=t*re,M+=t*ne,m+=t*ie,N+=t*ae,G+=t*ue,J+=t*fe,X+=t*he,W+=t*se,U+=t*oe,I+=t*ce,R+=t*le,P+=t*De,t=s[3],L+=t*Z,j+=t*k,B+=t*ee,T+=t*te,M+=t*re,m+=t*ne,N+=t*ie,G+=t*ae,J+=t*ue,X+=t*fe,W+=t*he,U+=t*se,I+=t*oe,R+=t*ce,P+=t*le,H+=t*De,t=s[4],j+=t*Z,B+=t*k,T+=t*ee,M+=t*te,m+=t*re,N+=t*ne,G+=t*ie,J+=t*ae,X+=t*ue,W+=t*fe,U+=t*he,I+=t*se,R+=t*oe,P+=t*ce,H+=t*le,K+=t*De,t=s[5],B+=t*Z,T+=t*k,M+=t*ee,m+=t*te,N+=t*re,G+=t*ne,J+=t*ie,X+=t*ae,W+=t*ue,U+=t*fe,I+=t*he,R+=t*se,P+=t*oe,H+=t*ce,K+=t*le,z+=t*De,t=s[6],T+=t*Z,M+=t*k,m+=t*ee,N+=t*te,G+=t*re,J+=t*ne,X+=t*ie,W+=t*ae,U+=t*ue,I+=t*fe,R+=t*he,P+=t*se,H+=t*oe,K+=t*ce,z+=t*le,Y+=t*De,t=s[7],M+=t*Z,m+=t*k,N+=t*ee,G+=t*te,J+=t*re,X+=t*ne,W+=t*ie,U+=t*ae,I+=t*ue,R+=t*fe,P+=t*he,H+=t*se,K+=t*oe,z+=t*ce,Y+=t*le,q+=t*De,t=s[8],m+=t*Z,N+=t*k,G+=t*ee,J+=t*te,X+=t*re,W+=t*ne,U+=t*ie,I+=t*ae,R+=t*ue,P+=t*fe,H+=t*he,K+=t*se,z+=t*oe,Y+=t*ce,q+=t*le,$+=t*De,t=s[9],N+=t*Z,G+=t*k,J+=t*ee,X+=t*te,W+=t*re,U+=t*ne,I+=t*ie,R+=t*ae,P+=t*ue,H+=t*fe,K+=t*he,z+=t*se,Y+=t*oe,q+=t*ce,$+=t*le,V+=t*De,t=s[10],G+=t*Z,J+=t*k,X+=t*ee,W+=t*te,U+=t*re,I+=t*ne,R+=t*ie,P+=t*ae,H+=t*ue,K+=t*fe,z+=t*he,Y+=t*se,q+=t*oe,$+=t*ce,V+=t*le,ve+=t*De,t=s[11],J+=t*Z,X+=t*k,W+=t*ee,U+=t*te,I+=t*re,R+=t*ne,P+=t*ie,H+=t*ae,K+=t*ue,z+=t*fe,Y+=t*he,q+=t*se,$+=t*oe,V+=t*ce,ve+=t*le,ge+=t*De,t=s[12],X+=t*Z,W+=t*k,U+=t*ee,I+=t*te,R+=t*re,P+=t*ne,H+=t*ie,K+=t*ae,z+=t*ue,Y+=t*fe,q+=t*he,$+=t*se,V+=t*oe,ve+=t*ce,ge+=t*le,me+=t*De,t=s[13],W+=t*Z,U+=t*k,I+=t*ee,R+=t*te,P+=t*re,H+=t*ne,K+=t*ie,z+=t*ae,Y+=t*ue,q+=t*fe,$+=t*he,V+=t*se,ve+=t*oe,ge+=t*ce,me+=t*le,Fe+=t*De,t=s[14],U+=t*Z,I+=t*k,R+=t*ee,P+=t*te,H+=t*re,K+=t*ne,z+=t*ie,Y+=t*ae,q+=t*ue,$+=t*fe,V+=t*he,ve+=t*se,ge+=t*oe,me+=t*ce,Fe+=t*le,Re+=t*De,t=s[15],I+=t*Z,R+=t*k,P+=t*ee,H+=t*te,K+=t*re,z+=t*ne,Y+=t*ie,q+=t*ae,$+=t*ue,V+=t*fe,ve+=t*he,ge+=t*se,me+=t*oe,Fe+=t*ce,Re+=t*le,tt+=t*De,S+=38*R,C+=38*P,F+=38*H,L+=38*K,j+=38*z,B+=38*Y,T+=38*q,M+=38*$,m+=38*V,N+=38*ve,G+=38*ge,J+=38*me,X+=38*Fe,W+=38*Re,U+=38*tt,i=1,t=S+i+65535,i=Math.floor(t/65536),S=t-i*65536,t=C+i+65535,i=Math.floor(t/65536),C=t-i*65536,t=F+i+65535,i=Math.floor(t/65536),F=t-i*65536,t=L+i+65535,i=Math.floor(t/65536),L=t-i*65536,t=j+i+65535,i=Math.floor(t/65536),j=t-i*65536,t=B+i+65535,i=Math.floor(t/65536),B=t-i*65536,t=T+i+65535,i=Math.floor(t/65536),T=t-i*65536,t=M+i+65535,i=Math.floor(t/65536),M=t-i*65536,t=m+i+65535,i=Math.floor(t/65536),m=t-i*65536,t=N+i+65535,i=Math.floor(t/65536),N=t-i*65536,t=G+i+65535,i=Math.floor(t/65536),G=t-i*65536,t=J+i+65535,i=Math.floor(t/65536),J=t-i*65536,t=X+i+65535,i=Math.floor(t/65536),X=t-i*65536,t=W+i+65535,i=Math.floor(t/65536),W=t-i*65536,t=U+i+65535,i=Math.floor(t/65536),U=t-i*65536,t=I+i+65535,i=Math.floor(t/65536),I=t-i*65536,S+=i-1+37*(i-1),i=1,t=S+i+65535,i=Math.floor(t/65536),S=t-i*65536,t=C+i+65535,i=Math.floor(t/65536),C=t-i*65536,t=F+i+65535,i=Math.floor(t/65536),F=t-i*65536,t=L+i+65535,i=Math.floor(t/65536),L=t-i*65536,t=j+i+65535,i=Math.floor(t/65536),j=t-i*65536,t=B+i+65535,i=Math.floor(t/65536),B=t-i*65536,t=T+i+65535,i=Math.floor(t/65536),T=t-i*65536,t=M+i+65535,i=Math.floor(t/65536),M=t-i*65536,t=m+i+65535,i=Math.floor(t/65536),m=t-i*65536,t=N+i+65535,i=Math.floor(t/65536),N=t-i*65536,t=G+i+65535,i=Math.floor(t/65536),G=t-i*65536,t=J+i+65535,i=Math.floor(t/65536),J=t-i*65536,t=X+i+65535,i=Math.floor(t/65536),X=t-i*65536,t=W+i+65535,i=Math.floor(t/65536),W=t-i*65536,t=U+i+65535,i=Math.floor(t/65536),U=t-i*65536,t=I+i+65535,i=Math.floor(t/65536),I=t-i*65536,S+=i-1+37*(i-1),u[0]=S,u[1]=C,u[2]=F,u[3]=L,u[4]=j,u[5]=B,u[6]=T,u[7]=M,u[8]=m,u[9]=N,u[10]=G,u[11]=J,u[12]=X,u[13]=W,u[14]=U,u[15]=I}function b(u,s){v(u,s,s)}function g(u,s){const h=a();for(let t=0;t<16;t++)h[t]=s[t];for(let t=253;t>=0;t--)b(h,h),t!==2&&t!==4&&v(h,h,s);for(let t=0;t<16;t++)u[t]=h[t]}function A(u,s){const h=new Uint8Array(32),t=new Float64Array(80),i=a(),S=a(),C=a(),F=a(),L=a(),j=a();for(let m=0;m<31;m++)h[m]=u[m];h[31]=u[31]&127|64,h[0]&=248,d(t,s);for(let m=0;m<16;m++)S[m]=t[m];i[0]=F[0]=1;for(let m=254;m>=0;--m){const N=h[m>>>3]>>>(m&7)&1;f(i,S,N),f(C,F,N),E(L,i,C),y(i,i,C),E(C,S,F),y(S,S,F),b(F,L),b(j,i),v(i,C,i),v(C,S,L),E(L,i,C),y(i,i,C),b(S,i),y(C,F,j),v(i,C,l),E(i,i,F),v(C,C,i),v(i,F,j),v(F,S,t),b(S,L),f(i,S,N),f(C,F,N)}for(let m=0;m<16;m++)t[m+16]=i[m],t[m+32]=C[m],t[m+48]=S[m],t[m+64]=F[m];const B=t.subarray(32),T=t.subarray(16);g(B,B),v(T,T,B);const M=new Uint8Array(32);return c(M,T),M}e.scalarMult=A;function p(u){return A(u,D)}e.scalarMultBase=p;function O(u){if(u.length!==e.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${e.SECRET_KEY_LENGTH} bytes`);const s=new Uint8Array(u);return{publicKey:p(s),secretKey:s}}e.generateKeyPairFromSeed=O;function o(u){const s=(0,r.randomBytes)(32,u),h=O(s);return(0,n.wipe)(s),h}e.generateKeyPair=o;function _(u,s,h=!1){if(u.length!==e.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(s.length!==e.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const t=A(u,s);if(h){let i=0;for(let S=0;S<t.length;S++)i|=t[S];if(i===0)throw new Error("X25519: invalid shared key")}return t}e.sharedKey=_})(Ft);function mr(e,r){if(e.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),a=0;a<n.length;a++)n[a]=255;for(var D=0;D<e.length;D++){var l=e.charAt(D),w=l.charCodeAt(0);if(n[w]!==255)throw new TypeError(l+" is ambiguous");n[w]=D}var f=e.length,c=e.charAt(0),d=Math.log(f)/Math.log(256),E=Math.log(256)/Math.log(f);function y(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 A=0,p=0,O=0,o=g.length;O!==o&&g[O]===0;)O++,A++;for(var _=(o-O)*E+1>>>0,u=new Uint8Array(_);O!==o;){for(var s=g[O],h=0,t=_-1;(s!==0||h<p)&&t!==-1;t--,h++)s+=256*u[t]>>>0,u[t]=s%f>>>0,s=s/f>>>0;if(s!==0)throw new Error("Non-zero carry");p=h,O++}for(var i=_-p;i!==_&&u[i]===0;)i++;for(var S=c.repeat(A);i<_;++i)S+=e.charAt(u[i]);return S}function v(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var A=0;if(g[A]!==" "){for(var p=0,O=0;g[A]===c;)p++,A++;for(var o=(g.length-A)*d+1>>>0,_=new Uint8Array(o);g[A];){var u=n[g.charCodeAt(A)];if(u===255)return;for(var s=0,h=o-1;(u!==0||s<O)&&h!==-1;h--,s++)u+=f*_[h]>>>0,_[h]=u%256>>>0,u=u/256>>>0;if(u!==0)throw new Error("Non-zero carry");O=s,A++}if(g[A]!==" "){for(var t=o-O;t!==o&&_[t]===0;)t++;for(var i=new Uint8Array(p+(o-t)),S=p;t!==o;)i[S++]=_[t++];return i}}}function b(g){var A=v(g);if(A)return A;throw new Error(`Non-${r} character`)}return{encode:y,decodeUnsafe:v,decode:b}}var Cr=mr,pr=Cr;const Ar=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")},Ur=e=>new TextEncoder().encode(e),Or=e=>new TextDecoder().decode(e);class Fr{constructor(r,n,a){this.name=r,this.prefix=n,this.baseEncode=a}encode(r){if(r instanceof Uint8Array)return`${this.prefix}${this.baseEncode(r)}`;throw Error("Unknown type, must be binary type")}}class Nr{constructor(r,n,a){if(this.name=r,this.prefix=n,n.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=n.codePointAt(0),this.baseDecode=a}decode(r){if(typeof r=="string"){if(r.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(r)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(r.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(r){return Nt(this,r)}}class Tr{constructor(r){this.decoders=r}or(r){return Nt(this,r)}decode(r){const n=r[0],a=this.decoders[n];if(a)return a.decode(r);throw RangeError(`Unable to decode multibase string ${JSON.stringify(r)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Nt=(e,r)=>new Tr({...e.decoders||{[e.prefix]:e},...r.decoders||{[r.prefix]:r}});class Mr{constructor(r,n,a,D){this.name=r,this.prefix=n,this.baseEncode=a,this.baseDecode=D,this.encoder=new Fr(r,n,a),this.decoder=new Nr(r,n,D)}encode(r){return this.encoder.encode(r)}decode(r){return this.decoder.decode(r)}}const je=({name:e,prefix:r,encode:n,decode:a})=>new Mr(e,r,n,a),Oe=({prefix:e,name:r,alphabet:n})=>{const{encode:a,decode:D}=pr(n,r);return je({prefix:e,name:r,encode:a,decode:l=>Ar(D(l))})},xr=(e,r,n,a)=>{const D={};for(let E=0;E<r.length;++E)D[r[E]]=E;let l=e.length;for(;e[l-1]==="=";)--l;const w=new Uint8Array(l*n/8|0);let f=0,c=0,d=0;for(let E=0;E<l;++E){const y=D[e[E]];if(y===void 0)throw new SyntaxError(`Non-${a} character`);c=c<<n|y,f+=n,f>=8&&(f-=8,w[d++]=255&c>>f)}if(f>=n||255&c<<8-f)throw new SyntaxError("Unexpected end of data");return w},Lr=(e,r,n)=>{const a=r[r.length-1]==="=",D=(1<<n)-1;let l="",w=0,f=0;for(let c=0;c<e.length;++c)for(f=f<<8|e[c],w+=8;w>n;)w-=n,l+=r[D&f>>w];if(w&&(l+=r[D&f<<n-w]),a)for(;l.length*n&7;)l+="=";return l},Q=({name:e,prefix:r,bitsPerChar:n,alphabet:a})=>je({prefix:r,name:e,encode(D){return Lr(D,a,n)},decode(D){return xr(D,a,n,e)}}),Br=je({prefix:"\0",name:"identity",encode:e=>Or(e),decode:e=>Ur(e)}),jr=Object.freeze(Object.defineProperty({__proto__:null,identity:Br},Symbol.toStringTag,{value:"Module"})),Ir=Q({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),Rr=Object.freeze(Object.defineProperty({__proto__:null,base2:Ir},Symbol.toStringTag,{value:"Module"})),Pr=Q({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),Hr=Object.freeze(Object.defineProperty({__proto__:null,base8:Pr},Symbol.toStringTag,{value:"Module"})),Kr=Oe({prefix:"9",name:"base10",alphabet:"0123456789"}),zr=Object.freeze(Object.defineProperty({__proto__:null,base10:Kr},Symbol.toStringTag,{value:"Module"})),Yr=Q({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),qr=Q({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),$r=Object.freeze(Object.defineProperty({__proto__:null,base16:Yr,base16upper:qr},Symbol.toStringTag,{value:"Module"})),Gr=Q({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Vr=Q({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Wr=Q({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Xr=Q({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Jr=Q({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Qr=Q({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Zr=Q({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),kr=Q({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),en=Q({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),tn=Object.freeze(Object.defineProperty({__proto__:null,base32:Gr,base32hex:Jr,base32hexpad:Zr,base32hexpadupper:kr,base32hexupper:Qr,base32pad:Wr,base32padupper:Xr,base32upper:Vr,base32z:en},Symbol.toStringTag,{value:"Module"})),rn=Oe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),nn=Oe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),an=Object.freeze(Object.defineProperty({__proto__:null,base36:rn,base36upper:nn},Symbol.toStringTag,{value:"Module"})),un=Oe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),fn=Oe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),hn=Object.freeze(Object.defineProperty({__proto__:null,base58btc:un,base58flickr:fn},Symbol.toStringTag,{value:"Module"})),sn=Q({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),on=Q({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),cn=Q({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ln=Q({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),Dn=Object.freeze(Object.defineProperty({__proto__:null,base64:sn,base64pad:on,base64url:cn,base64urlpad:ln},Symbol.toStringTag,{value:"Module"})),Tt=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),_n=Tt.reduce((e,r,n)=>(e[n]=r,e),[]),dn=Tt.reduce((e,r,n)=>(e[r.codePointAt(0)]=n,e),[]);function En(e){return e.reduce((r,n)=>(r+=_n[n],r),"")}function bn(e){const r=[];for(const n of e){const a=dn[n.codePointAt(0)];if(a===void 0)throw new Error(`Non-base256emoji character: ${n}`);r.push(a)}return new Uint8Array(r)}const vn=je({prefix:"🚀",name:"base256emoji",encode:En,decode:bn}),wn=Object.freeze(Object.defineProperty({__proto__:null,base256emoji:vn},Symbol.toStringTag,{value:"Module"}));new TextEncoder;new TextDecoder;var Mt={};/*! *****************************************************************************
2
2
  Copyright (c) Microsoft Corporation.
3
3
 
4
4
  Permission to use, copy, modify, and/or distribute this software for any
@@ -0,0 +1,5 @@
1
+ "use strict";var Tr=Object.defineProperty;var vr=(e,t,r)=>t in e?Tr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var F=(e,t,r)=>vr(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const K=require("./index-uRFn7LyP.js"),ke=require("./sui-CD_LLkGE.js"),Er=require("./unsignedTransaction-DzSLsK-p.js");class xr extends TypeError{constructor(t,r){let n;const{message:i,explanation:s,...a}=t,{path:o}=t,u=o.length===0?i:`At path: ${o.join(".")} -- ${i}`;super(s??u),s!=null&&(this.cause=u),Object.assign(this,a),this.name=this.constructor.name,this.failures=()=>n??(n=[t,...r()])}}function jr(e){return z(e)&&typeof e[Symbol.iterator]=="function"}function z(e){return typeof e=="object"&&e!=null}function V(e){return typeof e=="symbol"?e.toString():typeof e=="string"?JSON.stringify(e):`${e}`}function Ir(e){const{done:t,value:r}=e.next();return t?void 0:r}function Or(e,t,r,n){if(e===!0)return;e===!1?e={}:typeof e=="string"&&(e={message:e});const{path:i,branch:s}=t,{type:a}=r,{refinement:o,message:u=`Expected a value of type \`${a}\`${o?` with refinement \`${o}\``:""}, but received: \`${V(n)}\``}=e;return{value:n,type:a,refinement:o,key:i[i.length-1],path:i,branch:s,...e,message:u}}function*Nt(e,t,r,n){jr(e)||(e=[e]);for(const i of e){const s=Or(i,t,r,n);s&&(yield s)}}function*at(e,t,r={}){const{path:n=[],branch:i=[e],coerce:s=!1,mask:a=!1}=r,o={path:n,branch:i};if(s&&(e=t.coercer(e,o),a&&t.type!=="type"&&z(t.schema)&&z(e)&&!Array.isArray(e)))for(const d in e)t.schema[d]===void 0&&delete e[d];let u="valid";for(const d of t.validator(e,o))d.explanation=r.message,u="not_valid",yield[d,void 0];for(let[d,l,g]of t.entries(e,o)){const m=at(l,g,{path:d===void 0?n:[...n,d],branch:d===void 0?i:[...i,l],coerce:s,mask:a,message:r.message});for(const p of m)p[0]?(u=p[0].refinement!=null?"not_refined":"not_valid",yield[p[0],void 0]):s&&(l=p[1],d===void 0?e=l:e instanceof Map?e.set(d,l):e instanceof Set?e.add(l):z(e)&&(l!==void 0||d in e)&&(e[d]=l))}if(u!=="not_valid")for(const d of t.refiner(e,o))d.explanation=r.message,u="not_refined",yield[d,void 0];u==="valid"&&(yield[void 0,e])}class Y{constructor(t){const{type:r,schema:n,validator:i,refiner:s,coercer:a=u=>u,entries:o=function*(){}}=t;this.type=r,this.schema=n,this.entries=o,this.coercer=a,i?this.validator=(u,d)=>{const l=i(u,d);return Nt(l,d,this,u)}:this.validator=()=>[],s?this.refiner=(u,d)=>{const l=s(u,d);return Nt(l,d,this,u)}:this.refiner=()=>[]}assert(t,r){return Qe(t,this,r)}create(t,r){return Gt(t,this,r)}is(t){return N(t,this)}mask(t,r){return Ft(t,this,r)}validate(t,r={}){return xe(t,this,r)}}function Qe(e,t,r){const n=xe(e,t,{message:r});if(n[0])throw n[0]}function Gt(e,t,r){const n=xe(e,t,{coerce:!0,message:r});if(n[0])throw n[0];return n[1]}function Ft(e,t,r){const n=xe(e,t,{coerce:!0,mask:!0,message:r});if(n[0])throw n[0];return n[1]}function N(e,t){return!xe(e,t)[0]}function xe(e,t,r={}){const n=at(e,t,r),i=Ir(n);return i[0]?[new xr(i[0],function*(){for(const a of n)a[0]&&(yield a[0])}),void 0]:[void 0,i[1]]}function be(...e){const t=e[0].type==="type",r=e.map(i=>i.schema),n=Object.assign({},...r);return t?kr(n):h(n)}function P(e,t){return new Y({type:e,schema:null,validator:t})}function et(){return P("any",()=>!0)}function v(e){return new Y({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[r,n]of t.entries())yield[r,n,e]},coercer(t){return Array.isArray(t)?t.slice():t},validator(t){return Array.isArray(t)||`Expected an array value, but received: ${V(t)}`}})}function Ar(){return P("bigint",e=>typeof e=="bigint")}function U(){return P("boolean",e=>typeof e=="boolean")}function Z(){return P("integer",e=>typeof e=="number"&&!isNaN(e)&&Number.isInteger(e)||`Expected an integer, but received: ${V(e)}`)}function b(e){const t=V(e),r=typeof e;return new Y({type:"literal",schema:r==="string"||r==="number"||r==="boolean"?e:null,validator(n){return n===e||`Expected the literal \`${t}\`, but received: ${V(n)}`}})}function Lt(){return P("never",()=>!1)}function O(e){return new Y({...e,validator:(t,r)=>t===null||e.validator(t,r),refiner:(t,r)=>t===null||e.refiner(t,r)})}function de(){return P("number",e=>typeof e=="number"&&!isNaN(e)||`Expected a number, but received: ${V(e)}`)}function h(e){const t=e?Object.keys(e):[],r=Lt();return new Y({type:"object",schema:e||null,*entries(n){if(e&&z(n)){const i=new Set(Object.keys(n));for(const s of t)i.delete(s),yield[s,n[s],e[s]];for(const s of i)yield[s,n[s],r]}},validator(n){return z(n)||`Expected an object, but received: ${V(n)}`},coercer(n){return z(n)?{...n}:n}})}function w(e){return new Y({...e,validator:(t,r)=>t===void 0||e.validator(t,r),refiner:(t,r)=>t===void 0||e.refiner(t,r)})}function X(e,t){return new Y({type:"record",schema:null,*entries(r){if(z(r))for(const n in r){const i=r[n];yield[n,n,e],yield[n,i,t]}},validator(r){return z(r)||`Expected an object, but received: ${V(r)}`}})}function f(){return P("string",e=>typeof e=="string"||`Expected a string, but received: ${V(e)}`)}function Kt(e){const t=Lt();return new Y({type:"tuple",schema:null,*entries(r){if(Array.isArray(r)){const n=Math.max(e.length,r.length);for(let i=0;i<n;i++)yield[i,r[i],e[i]||t]}},validator(r){return Array.isArray(r)||`Expected an array, but received: ${V(r)}`}})}function kr(e){const t=Object.keys(e);return new Y({type:"type",schema:e,*entries(r){if(z(r))for(const n of t)yield[n,r[n],e[n]]},validator(r){return z(r)||`Expected an object, but received: ${V(r)}`},coercer(r){return z(r)?{...r}:r}})}function k(e){const t=e.map(r=>r.type).join(" | ");return new Y({type:"union",schema:null,coercer(r){for(const n of e){const[i,s]=n.validate(r,{coerce:!0});if(!i)return s}return r},validator(r,n){const i=[];for(const s of e){const[...a]=at(r,s,n),[o]=a;if(o[0])for(const[u]of a)u&&i.push(u);else return[]}return[`Expected the value to satisfy a union of \`${t}\`, but received: ${V(r)}`,...i]}})}function Wt(){return P("unknown",()=>!0)}const ot=k([h({AddressOwner:f()}),h({ObjectOwner:f()}),h({Shared:h({initial_shared_version:O(f())})}),b("Immutable")]);P("SuiJsonValue",()=>!0);const _r=k([h({u32:f()}),h({u64:f()}),h({f64:f()})]);h({attributes:X(f(),O(_r)),featureFlags:X(f(),U()),maxSupportedProtocolVersion:f(),minSupportedProtocolVersion:f(),protocolVersion:f()});k([f(),b("package")]);const ae=h({digest:f(),objectId:f(),version:k([de(),f(),Ar()])});h({owner:ot,reference:ae});h({objectId:f(),sequenceNumber:f()});h({payment:v(ae),owner:f(),price:f(),budget:f()});const Cr=be(ae,h({type:f(),owner:ot,previousTransaction:f()})),$r=X(f(),et()),Mr=X(f(),Wt()),Ur=h({type:f(),fields:$r,hasPublicTransfer:U()}),Br=h({disassembled:Mr}),Rr=k([be(Ur,h({dataType:b("moveObject")})),be(Br,h({dataType:b("package")}))]),Nr=h({type:f(),hasPublicTransfer:U(),version:f(),bcsBytes:f()}),Pr=h({id:f(),moduleMap:X(f(),f())}),Dr=k([be(Nr,h({dataType:b("moveObject")})),be(Pr,h({dataType:b("package")}))]);BigInt(1e9);const Jt=h({code:f(),error:w(f()),object_id:w(f()),parent_object_id:w(f()),version:w(f()),digest:w(f())}),zr=h({data:O(w(X(f(),f()))),error:O(w(Jt))}),Vr=k([zr,w(X(f(),f()))]),Ht=h({objectId:f(),version:f(),digest:f(),type:O(w(f())),content:O(w(Rr)),bcs:O(w(Dr)),owner:O(w(ot)),previousTransaction:O(w(f())),storageRebate:O(w(f())),display:O(w(Vr))});h({showType:O(w(U())),showContent:O(w(U())),showBcs:O(w(U())),showOwner:O(w(U())),showPreviousTransaction:O(w(U())),showStorageRebate:O(w(U())),showDisplay:O(w(U()))});k([b("Exists"),b("notExists"),b("Deleted")]);v(Cr);const Gr=h({data:O(w(Ht)),error:O(w(Jt))});function Fr(e){return e.data}function Lr(e){if(e.error&&"object_id"in e.error&&"version"in e.error&&"digest"in e.error){const t=e.error;return{objectId:t.object_id,version:t.version,digest:t.digest}}}function Pt(e){if("reference"in e)return e.reference;const t=Fr(e);return t?{objectId:t.objectId,version:t.version,digest:t.digest}:Lr(e)}h({objectId:f(),atCheckpoint:w(de())});h({data:v(Gr),nextCursor:w(O(f())),hasNextPage:U()});k([h({details:Ht,status:b("VersionFound")}),h({details:f(),status:b("ObjectNotExists")}),h({details:ae,status:b("ObjectDeleted")}),h({details:Kt([f(),de()]),status:b("VersionNotFound")}),h({details:h({asked_version:de(),latest_version:de(),object_id:f()}),status:b("VersionTooHigh")})]);const Kr=k([f(),h({Object:f()})]);v(Kr);const Wr=h({address:f(),name:f()}),Jr=k([b("Private"),b("Public"),b("Friend")]),ct=h({abilities:v(f())}),Hr=h({constraints:ct,isPhantom:U()}),Xr=h({TypeParameter:de()}),Ke=Kt([h({module:f(),package:f(),function:f()}),f()]);h({rank3Days:v(Ke),rank7Days:v(Ke),rank30Days:v(Ke)});function Xt(e){if(!e)return!1;if(typeof e=="string"||N(e,Xr)||qt(e))return!0;if(typeof e!="object")return!1;const t=e;return!!(N(t.Reference,he)||N(t.MutableReference,he)||N(t.Vector,he))}const he=P("SuiMoveNormalizedType",Xt);function qt(e){if(!e||typeof e!="object")return!1;const t=e;if(!t.Struct||typeof t.Struct!="object")return!1;const r=t.Struct;return!(typeof r.address!="string"||typeof r.module!="string"||typeof r.name!="string"||!Array.isArray(r.typeArguments)||!r.typeArguments.every(n=>Xt(n)))}P("SuiMoveNormalizedStructType",qt);const qr=h({visibility:Jr,isEntry:U(),typeParameters:v(ct),parameters:v(he),return:v(he)}),Zr=h({name:f(),type:he}),Yr=h({abilities:ct,typeParameters:v(Hr),fields:v(Zr)}),Qr=h({fileFormatVersion:de(),address:f(),name:f(),friends:v(Wr),structs:X(f(),Yr),exposedFunctions:X(f(),qr)});X(f(),Qr);function tt(e){return typeof e=="object"&&"MutableReference"in e?e.MutableReference:void 0}function Zt(e){return typeof e=="object"&&"Reference"in e?e.Reference:void 0}function ut(e){if(typeof e=="object"&&"Struct"in e)return e;const t=Zt(e),r=tt(e);if(typeof t=="object"&&"Struct"in t)return t;if(typeof r=="object"&&"Struct"in r)return r}function en(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r<t.length;r++)t[r]=255;for(var n=0;n<e.length;n++){var i=e.charAt(n),s=i.charCodeAt(0);if(t[s]!==255)throw new TypeError(i+" is ambiguous");t[s]=n}var a=e.length,o=e.charAt(0),u=Math.log(a)/Math.log(256),d=Math.log(256)/Math.log(a);function l(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var y=0,S=0,E=0,A=p.length;E!==A&&p[E]===0;)E++,y++;for(var _=(A-E)*d+1>>>0,D=new Uint8Array(_);E!==A;){for(var q=p[E],ie=0,G=_-1;(q!==0||ie<S)&&G!==-1;G--,ie++)q+=256*D[G]>>>0,D[G]=q%a>>>0,q=q/a>>>0;if(q!==0)throw new Error("Non-zero carry");S=ie,E++}for(var Q=_-S;Q!==_&&D[Q]===0;)Q++;for(var Ae=o.repeat(y);Q<_;++Q)Ae+=e.charAt(D[Q]);return Ae}function g(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;for(var y=0,S=0,E=0;p[y]===o;)S++,y++;for(var A=(p.length-y)*u+1>>>0,_=new Uint8Array(A);p[y];){var D=t[p.charCodeAt(y)];if(D===255)return;for(var q=0,ie=A-1;(D!==0||q<E)&&ie!==-1;ie--,q++)D+=a*_[ie]>>>0,_[ie]=D%256>>>0,D=D/256>>>0;if(D!==0)throw new Error("Non-zero carry");E=q,y++}for(var G=A-E;G!==A&&_[G]===0;)G++;for(var Q=new Uint8Array(S+(A-G)),Ae=S;G!==A;)Q[Ae++]=_[G++];return Q}function m(p){var y=g(p);if(y)return y;throw new Error("Non-base"+a+" character")}return{encode:l,decodeUnsafe:g,decode:m}}var tn=en;const rn=tn,nn="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";var sn=rn(nn);const Yt=K.getDefaultExportFromCjs(sn),je=e=>Yt.encode(e),dt=e=>Yt.decode(e);function oe(e){return Uint8Array.from(atob(e),t=>t.charCodeAt(0))}const We=8192;function Ie(e){if(e.length<We)return btoa(String.fromCharCode(...e));let t="";for(var r=0;r<e.length;r+=We){const n=e.slice(r,r+We);t+=String.fromCharCode(...n)}return btoa(t)}function Fe(e){var i;const t=e.startsWith("0x")?e.slice(2):e,n=((i=(t.length%2===0?t:`0${t}}`).match(/.{2}/g))==null?void 0:i.map(s=>parseInt(s,16)))??[];return Uint8Array.from(n)}function Oe(e){return e.reduce((t,r)=>t+r.toString(16).padStart(2,"0"),"")}function ft(e){let t=[],r=0;if(e===0)return[0];for(;e>0;)t[r]=e&127,(e>>=7)&&(t[r]|=128),r+=1;return t}function an(e){let t=0,r=0,n=0;for(;;){let i=e[n];if(n+=1,t|=(i&127)<<r,!(i&128))break;r+=7}return{value:t,length:n}}class Qt{constructor(t){this.bytePosition=0,this.dataView=new DataView(t.buffer)}shift(t){return this.bytePosition+=t,this}read8(){let t=this.dataView.getUint8(this.bytePosition);return this.shift(1),t}read16(){let t=this.dataView.getUint16(this.bytePosition,!0);return this.shift(2),t}read32(){let t=this.dataView.getUint32(this.bytePosition,!0);return this.shift(4),t}read64(){let t=this.read32(),n=this.read32().toString(16)+t.toString(16).padStart(8,"0");return BigInt("0x"+n).toString(10)}read128(){let t=BigInt(this.read64()),n=BigInt(this.read64()).toString(16)+t.toString(16).padStart(16,"0");return BigInt("0x"+n).toString(10)}read256(){let t=BigInt(this.read128()),n=BigInt(this.read128()).toString(16)+t.toString(16).padStart(32,"0");return BigInt("0x"+n).toString(10)}readBytes(t){let r=this.bytePosition+this.dataView.byteOffset,n=new Uint8Array(this.dataView.buffer,r,t);return this.shift(t),n}readULEB(){let t=this.bytePosition+this.dataView.byteOffset,r=new Uint8Array(this.dataView.buffer,t),{value:n,length:i}=an(r);return this.shift(i),n}readVec(t){let r=this.readULEB(),n=[];for(let i=0;i<r;i++)n.push(t(this,i,r));return n}}function on(e,t){switch(t){case"base58":return je(e);case"base64":return Ie(e);case"hex":return Oe(e);default:throw new Error("Unsupported encoding, supported values are: base64, hex")}}function cn(e,t){switch(t){case"base58":return dt(e);case"base64":return oe(e);case"hex":return Fe(e);default:throw new Error("Unsupported encoding, supported values are: base64, hex")}}function er(e,t=["<",">"]){const[r,n]=t,i=[];let s="",a=0;for(let o=0;o<e.length;o++){const u=e[o];if(u===r&&a++,u===n&&a--,a===0&&u===","){i.push(s.trim()),s="";continue}s+=u}return i.push(s.trim()),i}class tr{constructor({size:t=1024,maxSize:r,allocateSize:n=1024}={}){this.bytePosition=0,this.size=t,this.maxSize=r||t,this.allocateSize=n,this.dataView=new DataView(new ArrayBuffer(t))}ensureSizeOrGrow(t){const r=this.bytePosition+t;if(r>this.size){const n=Math.min(this.maxSize,this.size+this.allocateSize);if(r>n)throw new Error(`Attempting to serialize to BCS, but buffer does not have enough size. Allocated size: ${this.size}, Max size: ${this.maxSize}, Required size: ${r}`);this.size=n;const i=new ArrayBuffer(this.size);new Uint8Array(i).set(new Uint8Array(this.dataView.buffer)),this.dataView=new DataView(i)}}shift(t){return this.bytePosition+=t,this}write8(t){return this.ensureSizeOrGrow(1),this.dataView.setUint8(this.bytePosition,Number(t)),this.shift(1)}write16(t){return this.ensureSizeOrGrow(2),this.dataView.setUint16(this.bytePosition,Number(t),!0),this.shift(2)}write32(t){return this.ensureSizeOrGrow(4),this.dataView.setUint32(this.bytePosition,Number(t),!0),this.shift(4)}write64(t){return Je(BigInt(t),8).forEach(r=>this.write8(r)),this}write128(t){return Je(BigInt(t),16).forEach(r=>this.write8(r)),this}write256(t){return Je(BigInt(t),32).forEach(r=>this.write8(r)),this}writeULEB(t){return ft(t).forEach(r=>this.write8(r)),this}writeVec(t,r){return this.writeULEB(t.length),Array.from(t).forEach((n,i)=>r(this,n,i,t.length)),this}*[Symbol.iterator](){for(let t=0;t<this.bytePosition;t++)yield this.dataView.getUint8(t);return this.toBytes()}toBytes(){return new Uint8Array(this.dataView.buffer.slice(0,this.bytePosition))}toString(t){return on(this.toBytes(),t)}}function Je(e,t){let r=new Uint8Array(t),n=0;for(;e>0;)r[n]=Number(e%BigInt(256)),e=e/BigInt(256),n+=1;return r}var rr=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},W=(e,t,r)=>(rr(e,t,"read from private field"),r?r.call(e):t.get(e)),Ne=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},Pe=(e,t,r,n)=>(rr(e,t,"write to private field"),t.set(e,r),r),le,pe,Me,se;const nr=class{constructor(e){Ne(this,le,void 0),Ne(this,pe,void 0),this.name=e.name,this.read=e.read,this.serializedSize=e.serializedSize??(()=>null),Pe(this,le,e.write),Pe(this,pe,e.serialize??((t,r)=>{const n=new tr({size:this.serializedSize(t)??void 0,...r});return W(this,le).call(this,t,n),n.toBytes()})),this.validate=e.validate??(()=>{})}write(e,t){this.validate(e),W(this,le).call(this,e,t)}serialize(e,t){return this.validate(e),new un(this,W(this,pe).call(this,e,t))}parse(e){const t=new Qt(e);return this.read(t)}transform({name:e,input:t,output:r}){return new nr({name:e??this.name,read:n=>r(this.read(n)),write:(n,i)=>W(this,le).call(this,t(n),i),serializedSize:n=>this.serializedSize(t(n)),serialize:(n,i)=>W(this,pe).call(this,t(n),i),validate:n=>this.validate(t(n))})}};let J=nr;le=new WeakMap;pe=new WeakMap;const ir=Symbol.for("@mysten/serialized-bcs");function lt(e){return!!e&&typeof e=="object"&&e[ir]===!0}class un{constructor(t,r){Ne(this,Me,void 0),Ne(this,se,void 0),Pe(this,Me,t),Pe(this,se,r)}get[ir](){return!0}toBytes(){return W(this,se)}toHex(){return Oe(W(this,se))}toBase64(){return Ie(W(this,se))}toBase58(){return je(W(this,se))}parse(){return W(this,Me).parse(W(this,se))}}Me=new WeakMap;se=new WeakMap;function De({size:e,...t}){return new J({...t,serializedSize:()=>e})}function He({readMethod:e,writeMethod:t,...r}){return De({...r,read:n=>n[e](),write:(n,i)=>i[t](n),validate:n=>{var i;if(n<0||n>r.maxValue)throw new TypeError(`Invalid ${r.name} value: ${n}. Expected value in range 0-${r.maxValue}`);(i=r.validate)==null||i.call(r,n)}})}function Xe({readMethod:e,writeMethod:t,...r}){return De({...r,read:n=>n[e](),write:(n,i)=>i[t](BigInt(n)),validate:n=>{var s;const i=BigInt(n);if(i<0||i>r.maxValue)throw new TypeError(`Invalid ${r.name} value: ${i}. Expected value in range 0-${r.maxValue}`);(s=r.validate)==null||s.call(r,i)}})}function dn({serialize:e,...t}){const r=new J({...t,serialize:e,write:(n,i)=>{for(const s of r.serialize(n).toBytes())i.write8(s)}});return r}function fn({toBytes:e,fromBytes:t,...r}){return new J({...r,read:n=>{const i=n.readULEB(),s=n.readBytes(i);return t(s)},write:(n,i)=>{const s=e(n);i.writeULEB(s.length);for(let a=0;a<s.length;a++)i.write8(s[a])},serialize:n=>{const i=e(n),s=ft(i.length),a=new Uint8Array(s.length+i.length);return a.set(s,0),a.set(i,s.length),a},validate:n=>{var i;if(typeof n!="string")throw new TypeError(`Invalid ${r.name} value: ${n}. Expected string`);(i=r.validate)==null||i.call(r,n)}})}function ln(e){let t=null;function r(){return t||(t=e()),t}return new J({name:"lazy",read:n=>r().read(n),serializedSize:n=>r().serializedSize(n),write:(n,i)=>r().write(n,i),serialize:(n,i)=>r().serialize(n,i).toBytes()})}const c={u8(e){return He({name:"u8",readMethod:"read8",writeMethod:"write8",size:1,maxValue:2**8-1,...e})},u16(e){return He({name:"u16",readMethod:"read16",writeMethod:"write16",size:2,maxValue:2**16-1,...e})},u32(e){return He({name:"u32",readMethod:"read32",writeMethod:"write32",size:4,maxValue:2**32-1,...e})},u64(e){return Xe({name:"u64",readMethod:"read64",writeMethod:"write64",size:8,maxValue:2n**64n-1n,...e})},u128(e){return Xe({name:"u128",readMethod:"read128",writeMethod:"write128",size:16,maxValue:2n**128n-1n,...e})},u256(e){return Xe({name:"u256",readMethod:"read256",writeMethod:"write256",size:32,maxValue:2n**256n-1n,...e})},bool(e){return De({name:"bool",size:1,read:t=>t.read8()===1,write:(t,r)=>r.write8(t?1:0),...e,validate:t=>{var r;if((r=e==null?void 0:e.validate)==null||r.call(e,t),typeof t!="boolean")throw new TypeError(`Expected boolean, found ${typeof t}`)}})},uleb128(e){return dn({name:"uleb128",read:t=>t.readULEB(),serialize:t=>Uint8Array.from(ft(t)),...e})},bytes(e,t){return De({name:`bytes[${e}]`,size:e,read:r=>r.readBytes(e),write:(r,n)=>{for(let i=0;i<e;i++)n.write8(r[i]??0)},...t,validate:r=>{var n;if((n=t==null?void 0:t.validate)==null||n.call(t,r),!("length"in r))throw new TypeError(`Expected array, found ${typeof r}`);if(r.length!==e)throw new TypeError(`Expected array of length ${e}, found ${r.length}`)}})},string(e){return fn({name:"string",toBytes:t=>new TextEncoder().encode(t),fromBytes:t=>new TextDecoder().decode(t),...e})},fixedArray(e,t,r){return new J({name:`${t.name}[${e}]`,read:n=>{const i=new Array(e);for(let s=0;s<e;s++)i[s]=t.read(n);return i},write:(n,i)=>{for(const s of n)t.write(s,i)},...r,validate:n=>{var i;if((i=r==null?void 0:r.validate)==null||i.call(r,n),!("length"in n))throw new TypeError(`Expected array, found ${typeof n}`);if(n.length!==e)throw new TypeError(`Expected array of length ${e}, found ${n.length}`)}})},option(e){return c.enum(`Option<${e.name}>`,{None:null,Some:e}).transform({input:t=>t==null?{None:!0}:{Some:t},output:t=>"Some"in t?t.Some:null})},vector(e,t){return new J({name:`vector<${e.name}>`,read:r=>{const n=r.readULEB(),i=new Array(n);for(let s=0;s<n;s++)i[s]=e.read(r);return i},write:(r,n)=>{n.writeULEB(r.length);for(const i of r)e.write(i,n)},...t,validate:r=>{var n;if((n=t==null?void 0:t.validate)==null||n.call(t,r),!("length"in r))throw new TypeError(`Expected array, found ${typeof r}`)}})},tuple(e,t){return new J({name:`(${e.map(r=>r.name).join(", ")})`,serializedSize:r=>{let n=0;for(let i=0;i<e.length;i++){const s=e[i].serializedSize(r[i]);if(s==null)return null;n+=s}return n},read:r=>{const n=[];for(const i of e)n.push(i.read(r));return n},write:(r,n)=>{for(let i=0;i<e.length;i++)e[i].write(r[i],n)},...t,validate:r=>{var n;if((n=t==null?void 0:t.validate)==null||n.call(t,r),!Array.isArray(r))throw new TypeError(`Expected array, found ${typeof r}`);if(r.length!==e.length)throw new TypeError(`Expected array of length ${e.length}, found ${r.length}`)}})},struct(e,t,r){const n=Object.entries(t);return new J({name:e,serializedSize:i=>{let s=0;for(const[a,o]of n){const u=o.serializedSize(i[a]);if(u==null)return null;s+=u}return s},read:i=>{const s={};for(const[a,o]of n)s[a]=o.read(i);return s},write:(i,s)=>{for(const[a,o]of n)o.write(i[a],s)},...r,validate:i=>{var s;if((s=r==null?void 0:r.validate)==null||s.call(r,i),typeof i!="object"||i==null)throw new TypeError(`Expected object, found ${typeof i}`)}})},enum(e,t,r){const n=Object.entries(t);return new J({name:e,read:i=>{const s=i.readULEB(),[a,o]=n[s];return{[a]:(o==null?void 0:o.read(i))??!0}},write:(i,s)=>{const[a,o]=Object.entries(i)[0];for(let u=0;u<n.length;u++){const[d,l]=n[u];if(d===a){s.writeULEB(u),l==null||l.write(o,s);return}}},...r,validate:i=>{var o;if((o=r==null?void 0:r.validate)==null||o.call(r,i),typeof i!="object"||i==null)throw new TypeError(`Expected object, found ${typeof i}`);const s=Object.keys(i);if(s.length!==1)throw new TypeError(`Expected object with one key, found ${s.length}`);const[a]=s;if(!Object.hasOwn(t,a))throw new TypeError(`Invalid enum variant ${a}`)}})},map(e,t){return c.vector(c.tuple([e,t])).transform({name:`Map<${e.name}, ${t.name}>`,input:r=>[...r.entries()],output:r=>{const n=new Map;for(const[i,s]of r)n.set(i,s);return n}})},generic(e,t){return(...r)=>t(...r).transform({name:`${t.name}<${r.map(n=>n.name).join(", ")}>`,input:n=>n,output:n=>n})},lazy(e){return ln(e)}},hn=32,me=class{constructor(e){if(this.types=new Map,this.counter=0,e instanceof me){this.schema=e.schema,this.types=new Map(e.types);return}if(this.schema=e,this.registerAddressType(me.ADDRESS,e.addressLength,e.addressEncoding),this.registerVectorType(e.vectorType),e.types&&e.types.structs)for(let t of Object.keys(e.types.structs))this.registerStructType(t,e.types.structs[t]);if(e.types&&e.types.enums)for(let t of Object.keys(e.types.enums))this.registerEnumType(t,e.types.enums[t]);if(e.types&&e.types.aliases)for(let t of Object.keys(e.types.aliases))this.registerAlias(t,e.types.aliases[t]);e.withPrimitives!==!1&&gn(this)}tempKey(){return`bcs-struct-${++this.counter}`}ser(e,t,r){if(typeof e=="string"||Array.isArray(e)){const{name:n,params:i}=this.parseTypeName(e);return this.getTypeInterface(n).encode(this,t,r,i)}if(typeof e=="object"){const n=this.tempKey();return new me(this).registerStructType(n,e).ser(n,t,r)}throw new Error(`Incorrect type passed into the '.ser()' function.
2
+ ${JSON.stringify(e)}`)}de(e,t,r){if(typeof t=="string")if(r)t=cn(t,r);else throw new Error("To pass a string to `bcs.de`, specify encoding");if(typeof e=="string"||Array.isArray(e)){const{name:n,params:i}=this.parseTypeName(e);return this.getTypeInterface(n).decode(this,t,i)}if(typeof e=="object"){const n=new me(this),i=this.tempKey();return n.registerStructType(i,e).de(i,t,r)}throw new Error(`Incorrect type passed into the '.de()' function.
3
+ ${JSON.stringify(e)}`)}hasType(e){return this.types.has(e)}registerAlias(e,t){return this.types.set(e,t),this}registerType(e,t,r,n=()=>!0){const{name:i,params:s}=this.parseTypeName(e);return this.types.set(i,{encode(a,o,u,d){const l=s.reduce((g,m,p)=>Object.assign(g,{[m]:d[p]}),{});return this._encodeRaw.call(a,new tr(u),o,d,l)},decode(a,o,u){const d=s.reduce((l,g,m)=>Object.assign(l,{[g]:u[m]}),{});return this._decodeRaw.call(a,new Qt(o),u,d)},_encodeRaw(a,o,u,d){if(n(o))return t.call(this,a,o,u,d);throw new Error(`Validation failed for type ${i}, data: ${o}`)},_decodeRaw(a,o,u){return r.call(this,a,o,u)}}),this}registerBcsType(e,t){return this.registerType(e,(r,n,i)=>{const s=i.map(a=>new J({name:String(a),write:(o,u)=>{const{name:d,params:l}=this.parseTypeName(a),g=this.getTypeInterface(d),m=l.reduce((p,y,S)=>Object.assign(p,{[y]:i[S]}),{});return g._encodeRaw.call(this,u,o,l,m)},read:()=>{throw new Error("Not implemented")}}));return t(...s).write(n,r),r},(r,n)=>{const i=n.map(s=>new J({name:String(s),write:(a,o)=>{throw new Error("Not implemented")},read:a=>{const{name:o,params:u}=this.parseTypeName(s),d=this.getTypeInterface(o),l=u.reduce((g,m,p)=>Object.assign(g,{[m]:n[p]}),{});return d._decodeRaw.call(this,a,u,l)}}));return t(...i).read(r)}),this}registerAddressType(e,t,r="hex"){switch(r){case"base64":return this.registerType(e,function(i,s){return oe(s).reduce((a,o)=>a.write8(o),i)},function(i){return Ie(i.readBytes(t))});case"hex":return this.registerType(e,function(i,s){return Fe(s).reduce((a,o)=>a.write8(o),i)},function(i){return Oe(i.readBytes(t))});default:throw new Error("Unsupported encoding! Use either hex or base64")}}registerVectorType(e){let{name:t,params:r}=this.parseTypeName(e);if(r.length>1)throw new Error("Vector can have only one type parameter; got "+t);return this.registerType(e,function(i,s,a,o){return i.writeVec(s,(u,d)=>{let l=a[0];if(!l)throw new Error(`Incorrect number of type parameters passed a to vector '${e}'`);let{name:g,params:m}=this.parseTypeName(l);if(this.hasType(g))return this.getTypeInterface(g)._encodeRaw.call(this,u,d,m,o);if(!(g in o))throw new Error(`Unable to find a matching type definition for ${g} in vector; make sure you passed a generic`);let{name:p,params:y}=this.parseTypeName(o[g]);return this.getTypeInterface(p)._encodeRaw.call(this,u,d,y,o)})},function(i,s,a){return i.readVec(o=>{let u=s[0];if(!u)throw new Error(`Incorrect number of type parameters passed to a vector '${e}'`);let{name:d,params:l}=this.parseTypeName(u);if(this.hasType(d))return this.getTypeInterface(d)._decodeRaw.call(this,o,l,a);if(!(d in a))throw new Error(`Unable to find a matching type definition for ${d} in vector; make sure you passed a generic`);let{name:g,params:m}=this.parseTypeName(a[d]);return this.getTypeInterface(g)._decodeRaw.call(this,o,m,a)})})}registerStructType(e,t){for(let a in t){let o=this.tempKey(),u=t[a];!Array.isArray(u)&&typeof u!="string"&&(t[a]=o,this.registerStructType(o,u))}let r=Object.freeze(t),n=Object.keys(r),{name:i,params:s}=this.parseTypeName(e);return this.registerType(e,function(o,u,d,l){if(!u||u.constructor!==Object)throw new Error(`Expected ${i} to be an Object, got: ${u}`);if(d.length!==s.length)throw new Error(`Incorrect number of generic parameters passed; expected: ${s.length}, got: ${d.length}`);for(let g of n){if(!(g in u))throw new Error(`Struct ${i} requires field ${g}:${r[g]}`);const{name:m,params:p}=this.parseTypeName(r[g]);if(!s.includes(m))this.getTypeInterface(m)._encodeRaw.call(this,o,u[g],p,l);else{const y=s.indexOf(m);let{name:S,params:E}=this.parseTypeName(d[y]);if(this.hasType(S)){this.getTypeInterface(S)._encodeRaw.call(this,o,u[g],E,l);continue}if(!(S in l))throw new Error(`Unable to find a matching type definition for ${S} in ${i}; make sure you passed a generic`);let{name:A,params:_}=this.parseTypeName(l[S]);this.getTypeInterface(A)._encodeRaw.call(this,o,u[g],_,l)}}return o},function(o,u,d){if(u.length!==s.length)throw new Error(`Incorrect number of generic parameters passed; expected: ${s.length}, got: ${u.length}`);let l={};for(let g of n){const{name:m,params:p}=this.parseTypeName(r[g]);if(!s.includes(m))l[g]=this.getTypeInterface(m)._decodeRaw.call(this,o,p,d);else{const y=s.indexOf(m);let{name:S,params:E}=this.parseTypeName(u[y]);if(this.hasType(S)){l[g]=this.getTypeInterface(S)._decodeRaw.call(this,o,E,d);continue}if(!(S in d))throw new Error(`Unable to find a matching type definition for ${S} in ${i}; make sure you passed a generic`);let{name:A,params:_}=this.parseTypeName(d[S]);l[g]=this.getTypeInterface(A)._decodeRaw.call(this,o,_,d)}}return l})}registerEnumType(e,t){for(let a in t){let o=this.tempKey(),u=t[a];u!==null&&!Array.isArray(u)&&typeof u!="string"&&(t[a]=o,this.registerStructType(o,u))}let r=Object.freeze(t),n=Object.keys(r),{name:i,params:s}=this.parseTypeName(e);return this.registerType(e,function(o,u,d,l){if(!u)throw new Error(`Unable to write enum "${i}", missing data.
4
+ Received: "${u}"`);if(typeof u!="object")throw new Error(`Incorrect data passed into enum "${i}", expected object with properties: "${n.join(" | ")}".
5
+ Received: "${JSON.stringify(u)}"`);let g=Object.keys(u)[0];if(g===void 0)throw new Error(`Empty object passed as invariant of the enum "${i}"`);let m=n.indexOf(g);if(m===-1)throw new Error(`Unknown invariant of the enum "${i}", allowed values: "${n.join(" | ")}"; received "${g}"`);let p=n[m],y=r[p];if(o.write8(m),y===null)return o;let S=s.indexOf(y),E=S===-1?y:d[S];{let{name:A,params:_}=this.parseTypeName(E);return this.getTypeInterface(A)._encodeRaw.call(this,o,u[g],_,l)}},function(o,u,d){let l=o.readULEB(),g=n[l],m=r[g];if(l===-1)throw new Error(`Decoding type mismatch, expected enum "${i}" invariant index, received "${l}"`);if(m===null)return{[g]:!0};let p=s.indexOf(m),y=p===-1?m:u[p];{let{name:S,params:E}=this.parseTypeName(y);return{[g]:this.getTypeInterface(S)._decodeRaw.call(this,o,E,d)}}})}getTypeInterface(e){let t=this.types.get(e);if(typeof t=="string"){let r=[];for(;typeof t=="string";){if(r.includes(t))throw new Error(`Recursive definition found: ${r.join(" -> ")} -> ${t}`);r.push(t),t=this.types.get(t)}}if(t===void 0)throw new Error(`Type ${e} is not registered`);return t}parseTypeName(e){if(Array.isArray(e)){let[o,...u]=e;return{name:o,params:u}}if(typeof e!="string")throw new Error(`Illegal type passed as a name of the type: ${e}`);let[t,r]=this.schema.genericSeparators||["<",">"],n=e.indexOf(t),i=Array.from(e).reverse().indexOf(r);if(n===-1&&i===-1)return{name:e,params:[]};if(n===-1||i===-1)throw new Error(`Unclosed generic in name '${e}'`);let s=e.slice(0,n),a=er(e.slice(n+1,e.length-i-1),this.schema.genericSeparators);return{name:s,params:a}}};let I=me;I.U8="u8";I.U16="u16";I.U32="u32";I.U64="u64";I.U128="u128";I.U256="u256";I.BOOL="bool";I.VECTOR="vector";I.ADDRESS="address";I.STRING="string";I.HEX="hex-string";I.BASE58="base58-string";I.BASE64="base64-string";function gn(e){e.registerType(I.U8,function(t,r){return t.write8(r)},function(t){return t.read8()},t=>t<256),e.registerType(I.U16,function(t,r){return t.write16(r)},function(t){return t.read16()},t=>t<65536),e.registerType(I.U32,function(t,r){return t.write32(r)},function(t){return t.read32()},t=>t<=4294967296n),e.registerType(I.U64,function(t,r){return t.write64(r)},function(t){return t.read64()}),e.registerType(I.U128,function(t,r){return t.write128(r)},function(t){return t.read128()}),e.registerType(I.U256,function(t,r){return t.write256(r)},function(t){return t.read256()}),e.registerType(I.BOOL,function(t,r){return t.write8(r)},function(t){return t.read8().toString(10)==="1"}),e.registerType(I.STRING,function(t,r){return t.writeVec(Array.from(r),(n,i)=>n.write8(i.charCodeAt(0)))},function(t){return t.readVec(r=>r.read8()).map(r=>String.fromCharCode(Number(r))).join("")},t=>!0),e.registerType(I.HEX,function(t,r){return t.writeVec(Array.from(Fe(r)),(n,i)=>n.write8(i))},function(t){let r=t.readVec(n=>n.read8());return Oe(new Uint8Array(r))}),e.registerType(I.BASE58,function(t,r){return t.writeVec(Array.from(dt(r)),(n,i)=>n.write8(i))},function(t){let r=t.readVec(n=>n.read8());return je(new Uint8Array(r))}),e.registerType(I.BASE64,function(t,r){return t.writeVec(Array.from(oe(r)),(n,i)=>n.write8(i))},function(t){let r=t.readVec(n=>n.read8());return Ie(new Uint8Array(r))})}function pn(){return{genericSeparators:["<",">"],vectorType:"vector",addressLength:hn,addressEncoding:"hex"}}const ht=32;function mn(e){return yn(e)&&wn(e)===ht}function M(e,t=!1){let r=e.toLowerCase();return!t&&r.startsWith("0x")&&(r=r.slice(2)),`0x${r.padStart(ht*2,"0")}`}function Se(e,t=!1){return M(e,t)}function yn(e){return/^(0x|0X)?[a-fA-F0-9]+$/.test(e)&&e.length%2===0}function wn(e){return/^(0x|0X)/.test(e)?(e.length-2)/2:e.length/2}BigInt(1e9);const gt="0x1",sr="0x2";Se("0x6");const bn=`${sr}::sui::SUI`;Se("0x5");const Sn="object",Tn="ID",vn="ascii",En="String",xn="string",jn="String",In="option",On="Option",An={address:sr,module:Sn,name:Tn},kn={address:gt,module:vn,name:En},_n={address:gt,module:xn,name:jn},Cn={address:gt,module:In,name:On},_e=(e,t)=>e.address===t.address&&e.module===t.module&&e.name===t.name;function $n(e){var r;const t=(r=ut(e))==null?void 0:r.Struct;return(t==null?void 0:t.address)==="0x2"&&(t==null?void 0:t.module)==="tx_context"&&(t==null?void 0:t.name)==="TxContext"}function qe(e,t){if(!(typeof t>"u")&&typeof t!==e)throw new Error(`Expect ${t} to be ${e}, received ${typeof t}`)}const Mn=["Address","Bool","U8","U16","U32","U64","U128","U256"];function rt(e,t){if(typeof e=="string"&&Mn.includes(e)){if(e in["U8","U16","U32","U64","U128","U256"])qe("number",t);else if(e==="Bool")qe("boolean",t);else if(e==="Address"&&(qe("string",t),t&&!mn(t)))throw new Error("Invalid Sui Address");return e.toLowerCase()}else if(typeof e=="string")throw new Error(`Unknown pure normalized type ${JSON.stringify(e,null,2)}`);if("Vector"in e){if((t===void 0||typeof t=="string")&&e.Vector==="U8")return"string";if(t!==void 0&&!Array.isArray(t))throw new Error(`Expect ${t} to be a array, received ${typeof t}`);const r=rt(e.Vector,t?t[0]:void 0);return r===void 0?void 0:`vector<${r}>`}if("Struct"in e){if(_e(e.Struct,kn))return"string";if(_e(e.Struct,_n))return"utf8string";if(_e(e.Struct,An))return"address";if(_e(e.Struct,Cn)){const r={Vector:e.Struct.typeArguments[0]};return rt(r,t)}}}const Un=/^vector<(.+)>$/,Bn=/^([^:]+)::([^:]+)::([^<]+)(<(.+)>)?/;class te{static parseFromStr(t,r=!1){if(t==="address")return{address:null};if(t==="bool")return{bool:null};if(t==="u8")return{u8:null};if(t==="u16")return{u16:null};if(t==="u32")return{u32:null};if(t==="u64")return{u64:null};if(t==="u128")return{u128:null};if(t==="u256")return{u256:null};if(t==="signer")return{signer:null};const n=t.match(Un);if(n)return{vector:te.parseFromStr(n[1],r)};const i=t.match(Bn);if(i)return{struct:{address:r?M(i[1]):i[1],module:i[2],name:i[3],typeParams:i[5]===void 0?[]:te.parseStructTypeArgs(i[5],r)}};throw new Error(`Encountered unexpected token when parsing type args for ${t}`)}static parseStructTypeArgs(t,r=!1){return er(t).map(n=>te.parseFromStr(n,r))}static tagToString(t){if("bool"in t)return"bool";if("u8"in t)return"u8";if("u16"in t)return"u16";if("u32"in t)return"u32";if("u64"in t)return"u64";if("u128"in t)return"u128";if("u256"in t)return"u256";if("address"in t)return"address";if("signer"in t)return"signer";if("vector"in t)return`vector<${te.tagToString(t.vector)}>`;if("struct"in t){const r=t.struct,n=r.typeParams.map(te.tagToString).join(", ");return`${r.address}::${r.module}::${r.name}${n?`<${n}>`:""}`}throw new Error("Invalid TypeTag")}}const j=new I({...pn(),types:{enums:{"Option<T>":{None:null,Some:"T"}}}});function ar(e){return c.u64({name:"unsafe_u64",...e}).transform({input:t=>t,output:t=>Number(t)})}function Rn(e){return c.enum("Option",{None:null,Some:e})}function pt(e){return e.transform({input:t=>({[t.kind]:t}),output:t=>{const r=Object.keys(t)[0];return{kind:r,...t[r]}}})}const H=c.bytes(ht).transform({input:e=>typeof e=="string"?Fe(M(e)):e,output:e=>M(Oe(e))}),mt=c.vector(c.u8()).transform({name:"ObjectDigest",input:e=>dt(e),output:e=>je(new Uint8Array(e))}),Te=c.struct("SuiObjectRef",{objectId:H,version:c.u64(),digest:mt}),yt=c.struct("SharedObjectRef",{objectId:H,initialSharedVersion:c.u64(),mutable:c.bool()}),ze=c.enum("ObjectArg",{ImmOrOwned:Te,Shared:yt,Receiving:Te}),wt=c.enum("CallArg",{Pure:c.vector(c.u8()),Object:ze,ObjVec:c.vector(ze)}),ge=c.enum("TypeTag",{bool:null,u8:null,u64:null,u128:null,address:null,signer:null,vector:c.lazy(()=>ge),struct:c.lazy(()=>xt),u16:null,u32:null,u256:null}),L=pt(c.enum("Argument",{GasCoin:null,Input:c.struct("Input",{index:c.u16()}),Result:c.struct("Result",{index:c.u16()}),NestedResult:c.struct("NestedResult",{index:c.u16(),resultIndex:c.u16()})})),bt=c.struct("ProgrammableMoveCall",{package:H,module:c.string(),function:c.string(),type_arguments:c.vector(ge),arguments:c.vector(L)}).transform({input:e=>{const[t,r,n]=e.target.split("::"),i=e.typeArguments.map(s=>te.parseFromStr(s,!0));return{package:M(t),module:r,function:n,type_arguments:i,arguments:e.arguments}},output:e=>({target:[e.package,e.module,e.function].join("::"),arguments:e.arguments,typeArguments:e.type_arguments.map(te.tagToString)})}),St=pt(c.enum("Transaction",{MoveCall:bt,TransferObjects:c.struct("TransferObjects",{objects:c.vector(L),address:L}),SplitCoins:c.struct("SplitCoins",{coin:L,amounts:c.vector(L)}),MergeCoins:c.struct("MergeCoins",{destination:L,sources:c.vector(L)}),Publish:c.struct("Publish",{modules:c.vector(c.vector(c.u8())),dependencies:c.vector(H)}),MakeMoveVec:c.struct("MakeMoveVec",{type:Rn(ge),objects:c.vector(L)}),Upgrade:c.struct("Upgrade",{modules:c.vector(c.vector(c.u8())),dependencies:c.vector(H),packageId:H,ticket:L})})),Tt=c.struct("ProgrammableTransaction",{inputs:c.vector(wt),transactions:c.vector(St)}),vt=c.enum("TransactionKind",{ProgrammableTransaction:Tt,ChangeEpoch:null,Genesis:null,ConsensusCommitPrologue:null}),Et=c.enum("TransactionExpiration",{None:null,Epoch:ar()}),xt=c.struct("StructTag",{address:H,module:c.string(),name:c.string(),typeParams:c.vector(ge)}),jt=c.struct("GasData",{payment:c.vector(Te),owner:H,price:c.u64(),budget:c.u64()}),It=c.struct("TransactionDataV1",{kind:vt,sender:H,gasData:jt,expiration:Et}),Ot=c.enum("TransactionData",{V1:It}),Nn=c.enum("IntentScope",{TransactionData:null,TransactionEffects:null,CheckpointSummary:null,PersonalMessage:null}),Pn=c.enum("IntentVersion",{V0:null}),Dn=c.enum("AppId",{Sui:null}),zn=c.struct("Intent",{scope:Nn,version:Pn,appId:Dn}),Vn=c.generic(["T"],e=>c.struct("IntentMessage<T>",{intent:zn,value:e})),At=c.enum("CompressedSignature",{ED25519:c.fixedArray(64,c.u8()),Secp256k1:c.fixedArray(64,c.u8()),Secp256r1:c.fixedArray(64,c.u8()),ZkLogin:c.vector(c.u8())}),kt=c.enum("PublicKey",{ED25519:c.fixedArray(32,c.u8()),Secp256k1:c.fixedArray(33,c.u8()),Secp256r1:c.fixedArray(33,c.u8()),ZkLogin:c.vector(c.u8())}),_t=c.struct("MultiSigPkMap",{pubKey:kt,weight:c.u8()}),Ct=c.struct("MultiSigPublicKey",{pk_map:c.vector(_t),threshold:c.u16()}),or=c.struct("MultiSig",{sigs:c.vector(At),bitmap:c.u16(),multisig_pk:Ct}),Gn=c.vector(c.u8()).transform({input:e=>typeof e=="string"?oe(e):e,output:e=>Ie(new Uint8Array(e))}),cr=c.struct("SenderSignedTransaction",{intentMessage:Vn(Ot),txSignatures:c.vector(Gn)}),ur=c.vector(cr,{name:"SenderSignedData"}),C={...c,U8:c.u8(),U16:c.u16(),U32:c.u32(),U64:c.u64(),U128:c.u128(),U256:c.u256(),ULEB128:c.uleb128(),Bool:c.bool(),String:c.string(),Address:H,Argument:L,CallArg:wt,CompressedSignature:At,GasData:jt,MultiSig:or,MultiSigPkMap:_t,MultiSigPublicKey:Ct,ObjectArg:ze,ObjectDigest:mt,ProgrammableMoveCall:bt,ProgrammableTransaction:Tt,PublicKey:kt,SenderSignedData:ur,SenderSignedTransaction:cr,SharedObjectRef:yt,StructTag:xt,SuiObjectRef:Te,Transaction:St,TransactionData:Ot,TransactionDataV1:It,TransactionExpiration:Et,TransactionKind:vt,TypeTag:ge,ser:j.ser.bind(j),de:j.de.bind(j),getTypeInterface:j.getTypeInterface.bind(j),hasType:j.hasType.bind(j),parseTypeName:j.parseTypeName.bind(j),registerAddressType:j.registerAddressType.bind(j),registerAlias:j.registerAlias.bind(j),registerBcsType:j.registerBcsType.bind(j),registerEnumType:j.registerEnumType.bind(j),registerStructType:j.registerStructType.bind(j),registerType:j.registerType.bind(j),types:j.types};j.registerBcsType("utf8string",()=>c.string({name:"utf8string"}));j.registerBcsType("unsafe_u64",()=>ar());j.registerBcsType("enumKind",e=>pt(e));[H,L,wt,At,jt,or,_t,Ct,ze,mt,bt,Tt,kt,ur,yt,xt,Te,St,Ot,It,Et,vt,ge].forEach(e=>{j.registerBcsType(e.name,()=>e)});const Fn=k([h({ImmOrOwned:ae}),h({Shared:h({objectId:f(),initialSharedVersion:k([Z(),f()]),mutable:U()})}),h({Receiving:ae})]),Ve=h({Pure:v(Z())}),nt=h({Object:Fn}),Ge=k([Ve,nt]);function Ln(e,t){return{Pure:Array.from(e instanceof Uint8Array?e:lt(e)?e.toBytes():C.ser(t,e,{maxSize:1/0}).toBytes())}}const R={Pure:Ln,ObjectRef({objectId:e,digest:t,version:r}){return{Object:{ImmOrOwned:{digest:t,version:r,objectId:M(e)}}}},SharedObjectRef({objectId:e,mutable:t,initialSharedVersion:r}){return{Object:{Shared:{mutable:t,initialSharedVersion:r,objectId:M(e)}}}},ReceivingRef({objectId:e,digest:t,version:r}){return{Object:{Receiving:{digest:t,version:r,objectId:M(e)}}}}};function Dt(e){return typeof e=="string"?M(e):"ImmOrOwned"in e.Object?M(e.Object.ImmOrOwned.objectId):"Receiving"in e.Object?M(e.Object.Receiving.objectId):M(e.Object.Shared.objectId)}function Kn(e){return typeof e=="object"&&"Object"in e&&"Shared"in e.Object?e.Object.Shared:void 0}function Wn(e){var t;return((t=Kn(e))==null?void 0:t.mutable)??!1}function B(e,t){return Gt(e,t)}const Jn=e=>k([h({None:k([b(!0),b(null)])}),h({Some:e})]),ve=k([h({kind:b("Input"),index:Z(),value:w(et()),type:w(b("object"))}),h({kind:b("Input"),index:Z(),value:w(et()),type:b("pure")})]),Hn=[ve,h({kind:b("GasCoin")}),h({kind:b("Result"),index:Z()}),h({kind:b("NestedResult"),index:Z(),resultIndex:Z()})],ne=k([...Hn]),dr=h({kind:b("MoveCall"),target:P("target",f().validator),typeArguments:v(f()),arguments:v(ne)}),fr=h({kind:b("TransferObjects"),objects:v(ne),address:ne}),lr=h({kind:b("SplitCoins"),coin:ne,amounts:v(ne)}),hr=h({kind:b("MergeCoins"),destination:ne,sources:v(ne)}),gr=h({kind:b("MakeMoveVec"),type:w(Jn(X(f(),Wt()))),objects:v(ne)}),pr=h({kind:b("Publish"),modules:v(v(Z())),dependencies:v(f())}),mr=h({kind:b("Upgrade"),modules:v(v(Z())),dependencies:v(f()),packageId:f(),ticket:ne}),Xn=[dr,fr,lr,hr,pr,mr,gr],qn=k([...Xn]),ue={MoveCall(e){return B({kind:"MoveCall",target:e.target,arguments:e.arguments??[],typeArguments:e.typeArguments??[]},dr)},TransferObjects(e,t){return t.kind==="Input"&&t.type==="pure"&&typeof t.value!="object"&&(t.value=R.Pure(C.Address.serialize(t.value))),B({kind:"TransferObjects",objects:e,address:t},fr)},SplitCoins(e,t){return t.forEach(r=>{r.kind==="Input"&&r.type==="pure"&&typeof r.value!="object"&&(r.value=R.Pure(C.U64.serialize(r.value)))}),B({kind:"SplitCoins",coin:e,amounts:t},lr)},MergeCoins(e,t){return B({kind:"MergeCoins",destination:e,sources:t},hr)},Publish({modules:e,dependencies:t}){return B({kind:"Publish",modules:e.map(r=>typeof r=="string"?Array.from(oe(r)):r),dependencies:t.map(r=>Se(r))},pr)},Upgrade({modules:e,dependencies:t,packageId:r,ticket:n}){return B({kind:"Upgrade",modules:e.map(i=>typeof i=="string"?Array.from(oe(i)):i),dependencies:t.map(i=>Se(i)),packageId:r,ticket:n},mr)},MakeMoveVec({type:e,objects:t}){return B({kind:"MakeMoveVec",type:e?{Some:te.parseFromStr(e)}:{None:null},objects:t},gr)}};function Zn(e){function t(r,n){return e(r,n)}return t.u8=r=>e(C.U8.serialize(r)),t.u16=r=>e(C.U16.serialize(r)),t.u32=r=>e(C.U32.serialize(r)),t.u64=r=>e(C.U64.serialize(r)),t.u128=r=>e(C.U128.serialize(r)),t.u256=r=>e(C.U256.serialize(r)),t.bool=r=>e(C.Bool.serialize(r)),t.string=r=>e(C.String.serialize(r)),t.address=r=>e(C.Address.serialize(r)),t.id=t.address,t}function Yn(e,t){const r=Array.from(`${e}::`).map(i=>i.charCodeAt(0)),n=new Uint8Array(r.length+t.length);return n.set(r),n.set(t,r.length),K.blake2b(n,{dkLen:32})}const Qn=w(O(k([h({Epoch:Z()}),h({None:k([b(!0),b(null)])})]))),zt=P("StringEncodedBigint",e=>{if(!["string","number","bigint"].includes(typeof e))return!1;try{return BigInt(e),!0}catch{return!1}}),ei=h({budget:w(zt),price:w(zt),payment:w(v(ae)),owner:w(f())}),Ce=h({version:b(1),sender:w(f()),expiration:Qn,gasConfig:ei,inputs:v(ve),transactions:v(qn)});function Vt(e){return M(e).replace("0x","")}class re{constructor(t){this.version=1,this.sender=t==null?void 0:t.sender,this.expiration=t==null?void 0:t.expiration,this.gasConfig=(t==null?void 0:t.gasConfig)??{},this.inputs=(t==null?void 0:t.inputs)??[],this.transactions=(t==null?void 0:t.transactions)??[]}static fromKindBytes(t){const r=C.TransactionKind.parse(t),n="ProgrammableTransaction"in r?r.ProgrammableTransaction:null;if(!n)throw new Error("Unable to deserialize from bytes.");const i=B({version:1,gasConfig:{},inputs:n.inputs.map((s,a)=>B({kind:"Input",value:s,index:a,type:N(s,Ve)?"pure":"object"},ve)),transactions:n.transactions},Ce);return re.restore(i)}static fromBytes(t){var a;const r=C.TransactionData.parse(t),n=r==null?void 0:r.V1,i="ProgrammableTransaction"in n.kind?(a=n==null?void 0:n.kind)==null?void 0:a.ProgrammableTransaction:null;if(!n||!i)throw new Error("Unable to deserialize from bytes.");const s=B({version:1,sender:n.sender,expiration:n.expiration,gasConfig:n.gasData,inputs:i.inputs.map((o,u)=>B({kind:"Input",value:o,index:u,type:N(o,Ve)?"pure":"object"},ve)),transactions:i.transactions},Ce);return re.restore(s)}static restore(t){Qe(t,Ce);const r=new re;return Object.assign(r,t),r}static getDigestFromBytes(t){const r=Yn("TransactionData",t);return je(r)}build({maxSizeBytes:t=1/0,overrides:r,onlyTransactionKind:n}={}){const i=this.inputs.map(l=>(Qe(l.value,Ge),l.value)),s={ProgrammableTransaction:{inputs:i,transactions:this.transactions}};if(n)return C.TransactionKind.serialize(s,{maxSize:t}).toBytes();const a=(r==null?void 0:r.expiration)??this.expiration,o=(r==null?void 0:r.sender)??this.sender,u={...this.gasConfig,...r==null?void 0:r.gasConfig};if(!o)throw new Error("Missing transaction sender");if(!u.budget)throw new Error("Missing gas budget");if(!u.payment)throw new Error("Missing gas payment");if(!u.price)throw new Error("Missing gas price");const d={sender:Vt(o),expiration:a||{None:!0},gasData:{payment:u.payment,owner:Vt(this.gasConfig.owner??o),price:BigInt(u.price),budget:BigInt(u.budget)},kind:{ProgrammableTransaction:{inputs:i,transactions:this.transactions}}};return C.TransactionData.serialize({V1:d},{maxSize:t}).toBytes()}getDigest(){const t=this.build({onlyTransactionKind:!1});return re.getDigestFromBytes(t)}snapshot(){return B(this,Ce)}}var $t=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},x=(e,t,r)=>($t(e,t,"read from private field"),r?r.call(e):t.get(e)),ee=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},$e=(e,t,r,n)=>($t(e,t,"write to private field"),t.set(e,r),r),$=(e,t,r)=>($t(e,t,"access private method"),r),T,ye,Ue,we,Be,ce,fe,Mt,yr,Ut,wr,Bt,br,Rt,Sr,Re,it;const ti={maxPureArgumentSize:16*1024,maxTxGas:5e10,maxGasObjects:256,maxTxSizeBytes:128*1024};function ri(e){const t={kind:"Result",index:e},r=[],n=i=>r[i]??(r[i]={kind:"NestedResult",index:e,resultIndex:i});return new Proxy(t,{set(){throw new Error("The transaction result is a proxy, and does not support setting properties directly")},get(i,s){if(s in i)return Reflect.get(i,s);if(s===Symbol.iterator)return function*(){let o=0;for(;;)yield n(o),o++};if(typeof s=="symbol")return;const a=parseInt(s,10);if(!(Number.isNaN(a)||a<0))return n(a)}})}function ni(e){const t=ut(e);return t?t.Struct.address==="0x2"&&t.Struct.module==="transfer"&&t.Struct.name==="Receiving":!1}function Ee(e){if(!e.client)throw new Error("No provider passed to Transaction#build, but transaction data was not sufficient to build offline.");return e.client}const ii=Symbol.for("@mysten/transaction"),Ze={maxTxGas:"max_tx_gas",maxGasObjects:"max_gas_payment_objects",maxTxSizeBytes:"max_tx_size_bytes",maxPureArgumentSize:"max_pure_argument_size"},si=1000n,ai=50,oi=(e,t)=>Array.from({length:Math.ceil(e.length/t)},(r,n)=>e.slice(n*t,n*t+t)),st=class{constructor(e){ee(this,ye),ee(this,we),ee(this,ce),ee(this,Mt),ee(this,Ut),ee(this,Bt),ee(this,Rt),ee(this,Re),ee(this,T,void 0),$e(this,T,new re(e?e.blockData:void 0))}static fromKind(e){const t=new st;return $e(t,T,re.fromKindBytes(typeof e=="string"?oe(e):e)),t}static from(e){const t=new st;return typeof e!="string"||!e.startsWith("{")?$e(t,T,re.fromBytes(typeof e=="string"?oe(e):e)):$e(t,T,re.restore(JSON.parse(e))),t}setSender(e){x(this,T).sender=e}setSenderIfNotSet(e){x(this,T).sender||(x(this,T).sender=e)}setExpiration(e){x(this,T).expiration=e}setGasPrice(e){x(this,T).gasConfig.price=String(e)}setGasBudget(e){x(this,T).gasConfig.budget=String(e)}setGasOwner(e){x(this,T).gasConfig.owner=e}setGasPayment(e){x(this,T).gasConfig.payment=e.map(t=>Ft(t,ae))}get blockData(){return x(this,T).snapshot()}get[ii](){return!0}get pure(){return Object.defineProperty(this,"pure",{enumerable:!1,value:Zn((e,t)=>lt(e)?$(this,ye,Ue).call(this,"pure",{Pure:Array.from(e.toBytes())}):$(this,ye,Ue).call(this,"pure",e instanceof Uint8Array?R.Pure(e):t?R.Pure(e,t):e))}),this.pure}get gas(){return{kind:"GasCoin"}}object(e){if(typeof e=="object"&&"kind"in e)return e;const t=Dt(e),r=x(this,T).inputs.find(n=>n.type==="object"&&t===Dt(n.value));return r&&N(r.value,nt)&&"Shared"in r.value.Object&&N(e,nt)&&"Shared"in e.Object&&(r.value.Object.Shared.mutable=r.value.Object.Shared.mutable||e.Object.Shared.mutable),r??$(this,ye,Ue).call(this,"object",typeof e=="string"?M(e):e)}objectRef(...e){return this.object(R.ObjectRef(...e))}receivingRef(...e){return this.object(R.ReceivingRef(...e))}sharedObjectRef(...e){return this.object(R.SharedObjectRef(...e))}add(e){const t=x(this,T).transactions.push(e);return ri(t-1)}splitCoins(e,t){return this.add(ue.SplitCoins(typeof e=="string"?this.object(e):e,t.map(r=>typeof r=="number"||typeof r=="bigint"||typeof r=="string"?this.pure.u64(r):$(this,we,Be).call(this,r))))}mergeCoins(e,t){return this.add(ue.MergeCoins(typeof e=="string"?this.object(e):e,t.map(r=>typeof r=="string"?this.object(r):r)))}publish({modules:e,dependencies:t}){return this.add(ue.Publish({modules:e,dependencies:t}))}upgrade({modules:e,dependencies:t,packageId:r,ticket:n}){return this.add(ue.Upgrade({modules:e,dependencies:t,packageId:r,ticket:typeof n=="string"?this.object(n):n}))}moveCall({arguments:e,typeArguments:t,target:r}){return this.add(ue.MoveCall({arguments:e==null?void 0:e.map(n=>$(this,we,Be).call(this,n)),typeArguments:t,target:r}))}transferObjects(e,t){return this.add(ue.TransferObjects(e.map(r=>typeof r=="string"?this.object(r):r),typeof t=="string"?this.pure.address(t):$(this,we,Be).call(this,t)))}makeMoveVec({type:e,objects:t}){return this.add(ue.MakeMoveVec({type:e,objects:t.map(r=>typeof r=="string"?this.object(r):r)}))}serialize(){return JSON.stringify(x(this,T).snapshot())}async sign(e){const{signer:t,...r}=e,n=await this.build(r);return t.signTransactionBlock(n)}async build(e={}){return await $(this,Re,it).call(this,e),x(this,T).build({maxSizeBytes:$(this,ce,fe).call(this,"maxTxSizeBytes",e),onlyTransactionKind:e.onlyTransactionKind})}async getDigest(e={}){return await $(this,Re,it).call(this,e),x(this,T).getDigest()}};let Ye=st;T=new WeakMap;ye=new WeakSet;Ue=function(e,t){const r=x(this,T).inputs.length,n=B({kind:"Input",value:typeof t=="bigint"?String(t):t,index:r,type:e},ve);return x(this,T).inputs.push(n),n};we=new WeakSet;Be=function(e){return lt(e)?this.pure(e):e};ce=new WeakSet;fe=function(e,{protocolConfig:t,limits:r}){if(r&&typeof r[e]=="number")return r[e];if(!t)return ti[e];const n=t==null?void 0:t.attributes[Ze[e]];if(!n)throw new Error(`Missing expected protocol config: "${Ze[e]}"`);const i="u64"in n?n.u64:"u32"in n?n.u32:n.f64;if(!i)throw new Error(`Unexpected protocol config value found for: "${Ze[e]}"`);return Number(i)};Mt=new WeakSet;yr=function(e){const t=$(this,ce,fe).call(this,"maxPureArgumentSize",e);x(this,T).inputs.forEach((r,n)=>{if(N(r.value,Ve)&&r.value.Pure.length>t)throw new Error(`Input at index ${n} is too large, max pure input size is ${t} bytes, got ${r.value.Pure.length} bytes`)})};Ut=new WeakSet;wr=async function(e){if(x(this,T).gasConfig.payment){const i=$(this,ce,fe).call(this,"maxGasObjects",e);if(x(this,T).gasConfig.payment.length>i)throw new Error(`Payment objects exceed maximum amount: ${i}`)}if(e.onlyTransactionKind||x(this,T).gasConfig.payment)return;const t=x(this,T).gasConfig.owner??x(this,T).sender,n=(await Ee(e).getCoins({owner:t,coinType:bn})).data.filter(i=>!x(this,T).inputs.find(a=>N(a.value,Ge)&&"Object"in a.value&&"ImmOrOwned"in a.value.Object?i.coinObjectId===a.value.Object.ImmOrOwned.objectId:!1)).slice(0,$(this,ce,fe).call(this,"maxGasObjects",e)-1).map(i=>({objectId:i.coinObjectId,digest:i.digest,version:i.version}));if(!n.length)throw new Error("No valid gas coins found for the transaction.");this.setGasPayment(n)};Bt=new WeakSet;br=async function(e){e.onlyTransactionKind||x(this,T).gasConfig.price||this.setGasPrice(await Ee(e).getReferenceGasPrice())};Rt=new WeakSet;Sr=async function(e){const{inputs:t,transactions:r}=x(this,T),n=[],i=[];if(t.forEach(s=>{if(s.type==="object"&&typeof s.value=="string"){i.push({id:M(s.value),input:s});return}}),r.forEach(s=>{if(s.kind==="MoveCall"&&s.arguments.some(o=>o.kind==="Input"&&!N(t[o.index].value,Ge))&&n.push(s),s.kind==="SplitCoins"&&s.amounts.forEach(a=>{if(a.kind==="Input"){const o=t[a.index];typeof o.value!="object"&&(o.value=R.Pure(C.U64.serialize(o.value)))}}),s.kind==="TransferObjects"&&s.address.kind==="Input"){const a=t[s.address.index];typeof a.value!="object"&&(a.value=R.Pure(C.Address.serialize(a.value)))}}),n.length&&await Promise.all(n.map(async s=>{const[a,o,u]=s.target.split("::"),d=await Ee(e).getNormalizedMoveFunction({package:Se(a),module:o,function:u}),g=d.parameters.length>0&&$n(d.parameters.at(-1))?d.parameters.slice(0,d.parameters.length-1):d.parameters;if(g.length!==s.arguments.length)throw new Error("Incorrect number of arguments.");g.forEach((m,p)=>{const y=s.arguments[p];if(y.kind!=="Input")return;const S=t[y.index];if(N(S.value,Ge))return;const E=S.value,A=rt(m,E);if(A){S.value=R.Pure(E,A);return}if(ut(m)!=null||typeof m=="object"&&"TypeParameter"in m){if(typeof E!="string")throw new Error(`Expect the argument to be an object id string, got ${JSON.stringify(E,null,2)}`);i.push({id:E,input:S,normalizedType:m});return}throw new Error(`Unknown call arg type ${JSON.stringify(m,null,2)} for value ${JSON.stringify(E,null,2)}`)})})),i.length){const s=[...new Set(i.map(({id:l})=>l))],a=oi(s,ai),o=(await Promise.all(a.map(l=>Ee(e).multiGetObjects({ids:l,options:{showOwner:!0}})))).flat();let u=new Map(s.map((l,g)=>[l,o[g]]));const d=Array.from(u).filter(([l,g])=>g.error).map(([l,g])=>l);if(d.length)throw new Error(`The following input objects are invalid: ${d.join(", ")}`);i.forEach(({id:l,input:g,normalizedType:m})=>{var E;const p=u.get(l),y=(E=p.data)==null?void 0:E.owner,S=y&&typeof y=="object"&&"Shared"in y?y.Shared.initial_shared_version:void 0;if(S){const A=m!=null&&tt(m)==null&&Zt(m)==null,_=Wn(g.value)||A||m!=null&&tt(m)!=null;g.value=R.SharedObjectRef({objectId:l,initialSharedVersion:S,mutable:_})}else m&&ni(m)?g.value=R.ReceivingRef(Pt(p)):g.value=R.ObjectRef(Pt(p))})}};Re=new WeakSet;it=async function(e){if(!e.onlyTransactionKind&&!x(this,T).sender)throw new Error("Missing transaction sender");if(!e.protocolConfig&&!e.limits&&e.client&&(e.protocolConfig=await e.client.getProtocolConfig()),await Promise.all([$(this,Bt,br).call(this,e),$(this,Rt,Sr).call(this,e)]),!e.onlyTransactionKind&&(await $(this,Ut,wr).call(this,e),!x(this,T).gasConfig.budget)){const t=await Ee(e).dryRunTransactionBlock({transactionBlock:x(this,T).build({maxSizeBytes:$(this,ce,fe).call(this,"maxTxSizeBytes",e),overrides:{gasConfig:{budget:String($(this,ce,fe).call(this,"maxTxGas",e)),payment:[]}}})});if(t.effects.status.status!=="success")throw new Error(`Dry run failed, could not automatically determine a budget: ${t.effects.status.error}`,{cause:t});const r=si*BigInt(this.blockData.gasConfig.price||1n),n=BigInt(t.effects.gasUsed.computationCost)+r,i=n+BigInt(t.effects.gasUsed.storageCost)-BigInt(t.effects.gasUsed.storageRebate);this.setGasBudget(i>n?i:n)}$(this,Mt,yr).call(this,e)};const ci=[["Testnet",{tokenMessengerState:"0x5252abd1137094ed1db3e0d75bc36abcd287aee4bc310f8e047727ef5682e7c2",messageTransmitterState:"0x98234bd0fa9ac12cc0a20a144a22e36d6a32f7e0a97baaeaf9c76cdc6d122d2e",usdcTreasury:"0x7170137d4a6431bf83351ac025baf462909bffe2877d87716374fb42b9629ebe"}],["Mainnet",{tokenMessengerState:"0x45993eecc0382f37419864992c12faee2238f5cfe22b98ad3bf455baf65c8a2f",messageTransmitterState:"0xf68268c3d9b1df3215f2439400c1c4ea08ac4ef4bb7d6f3ca6a2a239e17510af",usdcTreasury:"0x57d6725e7a8b49a7b2a612f6bd66ab5f39fc95332ca48be421c3229d514a6de7"}]],ui=K.constMap(ci,[0,1]);class Le{constructor(t,r,n,i){F(this,"network");F(this,"chain");F(this,"provider");F(this,"contracts");F(this,"usdcId");F(this,"usdcTreasuryId");F(this,"tokenMessengerId");F(this,"tokenMessengerStateId");F(this,"messageTransmitterId");F(this,"messageTransmitterStateId");var d,l,g,m;if(this.network=t,this.chain=r,this.provider=n,this.contracts=i,t==="Devnet")throw new Error("CircleBridge not supported on Devnet");const s=K.usdcContract.get(this.network,this.chain);if(!s)throw new Error(`No USDC contract configured for network=${this.network} chain=${this.chain}`);const{tokenMessengerState:a,messageTransmitterState:o,usdcTreasury:u}=ui(t);if(!((d=i.cctp)!=null&&d.tokenMessenger))throw new Error(`Circle Token Messenger contract for domain ${r} not found`);if(!((l=i.cctp)!=null&&l.messageTransmitter))throw new Error(`Circle Message Transmitter contract for domain ${r} not found`);this.usdcId=s,this.usdcTreasuryId=u,this.tokenMessengerId=(g=i.cctp)==null?void 0:g.tokenMessenger,this.messageTransmitterId=(m=i.cctp)==null?void 0:m.messageTransmitter,this.tokenMessengerStateId=a,this.messageTransmitterStateId=o}async*transfer(t,r,n){const i=new Ye,s=K.circleChainId.get(this.network,r.chain),[a,...o]=await ke.SuiPlatform.getCoins(this.provider,t,this.usdcId);if(a===void 0)throw new Error("No USDC in wallet");const u=i.object(a.coinObjectId);o.length>0&&i.mergeCoins(u,o.map(l=>i.object(l.coinObjectId)));const[d]=i.splitCoins(u,[n]);i.moveCall({target:`${this.tokenMessengerId}::deposit_for_burn::deposit_for_burn`,arguments:[d,i.pure.u32(s),i.pure.address(r.address.toUniversalAddress().toString()),i.object(this.tokenMessengerStateId),i.object(this.messageTransmitterStateId),i.object("0x403"),i.object(this.usdcTreasuryId)],typeArguments:[this.usdcId]}),yield this.createUnsignedTx(i,"Sui.CircleBridge.Transfer")}async isTransferCompleted(t){const r=new Ye;r.moveCall({target:`${this.messageTransmitterId}::state::is_nonce_used`,arguments:[r.object(this.messageTransmitterStateId),r.pure.u32(t.sourceDomain),r.pure.u64(t.nonce)]});const n=await this.provider.devInspectTransactionBlock({sender:"0x0000000000000000000000000000000000000000000000000000000000000000",transactionBlock:r});try{return!!n.results[0].returnValues[0][0][0]}catch(i){return console.error(`Error reading if nonce was used: ${i}`),!1}}async*redeem(t,r,n){const i=new Ye,[s]=i.moveCall({target:`${this.messageTransmitterId}::receive_message::receive_message`,arguments:[i.pure(ke.uint8ArrayToBCS(K.CircleBridge.serialize(r))),i.pure(ke.uint8ArrayToBCS(K.hex.decode(n))),i.object(this.messageTransmitterStateId)]});if(!s)throw new Error("Failed to produce receipt");const[a]=i.moveCall({target:`${this.tokenMessengerId}::handle_receive_message::handle_receive_message`,arguments:[s,i.object(this.tokenMessengerStateId),i.object("0x403"),i.object(this.usdcTreasuryId)],typeArguments:[this.usdcId]});if(!a)throw new Error("Failed to produce stamp receipt ticket with burn message");const[o]=i.moveCall({target:`${this.tokenMessengerId}::handle_receive_message::deconstruct_stamp_receipt_ticket_with_burn_message`,arguments:[a]});if(!o)throw new Error("Failed to produce stamp receipt ticket");const[u]=i.moveCall({target:`${this.messageTransmitterId}::receive_message::stamp_receipt`,arguments:[o,i.object(this.messageTransmitterStateId)],typeArguments:[`${this.tokenMessengerId}::message_transmitter_authenticator::MessageTransmitterAuthenticator`]});if(!u)throw new Error("Failed to produce stamped receipt");i.moveCall({target:`${this.messageTransmitterId}::receive_message::complete_receive_message`,arguments:[u,i.object(this.messageTransmitterStateId)]}),yield this.createUnsignedTx(i,"Sui.CircleBridge.Redeem")}async parseTransactionDetails(t){var p;const r=await this.provider.waitForTransactionBlock({digest:t,options:{showEvents:!0,showEffects:!0,showInput:!0}});if(!r)throw new Error("Transaction not found");if(!r.events)throw new Error("Transaction events not found");const n=(p=r.events)==null?void 0:p.find(y=>y.type.includes("send_message::MessageSent"));if(!n)throw new Error("No MessageSent event found");const i=new Uint8Array((n==null?void 0:n.parsedJson).message),[s,a]=K.CircleBridge.deserialize(i),{payload:o}=s,u=o.messageSender,d=o.mintRecipient,l=K.toCircleChain(this.network,s.sourceDomain),g=K.toCircleChain(this.network,s.destinationDomain),m={chain:l,address:o.burnToken};return{from:{chain:l,address:u},to:{chain:g,address:d},token:m,amount:o.amount,message:s,id:{hash:a}}}static async fromRpc(t,r){const[n,i]=await ke.SuiPlatform.chainFromRpc(t),s=r[i];if(s.network!==n)throw new Error(`Network mismatch: ${s.network} != ${n}`);return new Le(n,i,t,s.contracts)}createUnsignedTx(t,r,n=!1){return new Er.SuiUnsignedTransaction(t,this.network,this.chain,r,n)}}K.registerProtocol("Sui","CircleBridge",Le);exports.SuiCircleBridge=Le;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-C7GdFYql.js");class o extends Error{constructor(r){super(r)}}class s extends o{constructor(){super(...arguments),this.name="TokenOwnerOffCurveError"}}const n=e.struct([e.u32("mintAuthorityOption"),e.publicKey("mintAuthority"),e.u64("supply"),e.u8("decimals"),e.bool("isInitialized"),e.u32("freezeAuthorityOption"),e.publicKey("freezeAuthority")]);n.span;async function c(t,r,u=!1,i=e.TOKEN_PROGRAM_ID,O=e.ASSOCIATED_TOKEN_PROGRAM_ID){if(!u&&!e.PublicKey.isOnCurve(r.toBuffer()))throw new s;const[A]=await e.PublicKey.findProgramAddress([r.toBuffer(),i.toBuffer(),t.toBuffer()],O);return A}exports.ASSOCIATED_TOKEN_PROGRAM_ID=e.ASSOCIATED_TOKEN_PROGRAM_ID;exports.TOKEN_2022_PROGRAM_ID=e.TOKEN_2022_PROGRAM_ID;exports.TOKEN_PROGRAM_ID=e.TOKEN_PROGRAM_ID;exports.MintLayout=n;exports.TokenError=o;exports.TokenOwnerOffCurveError=s;exports.getAssociatedTokenAddress=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-uRFn7LyP.js");class o extends Error{constructor(r){super(r)}}class s extends o{constructor(){super(...arguments),this.name="TokenOwnerOffCurveError"}}const n=e.struct([e.u32("mintAuthorityOption"),e.publicKey("mintAuthority"),e.u64("supply"),e.u8("decimals"),e.bool("isInitialized"),e.u32("freezeAuthorityOption"),e.publicKey("freezeAuthority")]);n.span;async function c(t,r,u=!1,i=e.TOKEN_PROGRAM_ID,O=e.ASSOCIATED_TOKEN_PROGRAM_ID){if(!u&&!e.PublicKey.isOnCurve(r.toBuffer()))throw new s;const[A]=await e.PublicKey.findProgramAddress([r.toBuffer(),i.toBuffer(),t.toBuffer()],O);return A}exports.ASSOCIATED_TOKEN_PROGRAM_ID=e.ASSOCIATED_TOKEN_PROGRAM_ID;exports.TOKEN_2022_PROGRAM_ID=e.TOKEN_2022_PROGRAM_ID;exports.TOKEN_PROGRAM_ID=e.TOKEN_PROGRAM_ID;exports.MintLayout=n;exports.TokenError=o;exports.TokenOwnerOffCurveError=s;exports.getAssociatedTokenAddress=c;
@@ -1,10 +1,10 @@
1
1
  var uu = Object.defineProperty;
2
2
  var du = (e, t, n) => t in e ? uu(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
3
  var ct = (e, t, n) => du(e, typeof t != "symbol" ? t + "" : t, n);
4
- import { $ as h, a0 as xr, a1 as lu, h as tt, a4 as ia, a8 as aa, ai as fi, ab as hi, N as pi, o as mu, ag as gi, p as fu, cM as hu, ae as yi, cN as Qo, cO as bi, cP as vi, cQ as wi, cR as ki, cS as _i, cT as Si, cU as pu, cV as gu, cW as yu, bI as bu, ah as vu } from "./index-CjqSmvJv.mjs";
5
- import { t as jt, b as wu, r as ku, a as ca, c as _u, d as Su, l as Pu, e as Au, s as qr, k as Tu, f as Eu, g as Cu, h as Rs, i as ua, j as da, m as Mu, v as Ou, x as Bt, n as ju, p as Bu, q as Ru, o as Iu, u as $u, w as Nu, y as la, z as Du, A as Uu, B as xu, D as qu, E as Hu, F as Vu, H as Fu, I as Wu, J as Hr, K as Ju, L as Gu, M as Lu, N as zu, O as Ku, P as Qu, Q as Zu, R as Xu, S as Yu, T as ed, U as td, V as ma, W as nd, X as rd, Y as od, Z as sd, _ as id, $ as ad, a0 as cd, G as Nt, C as Zo } from "./cosmwasm-CARLnvsg.mjs";
6
- import { CosmwasmWormholeCore as ud } from "./index-CjwkPmul.mjs";
7
- import { c as dd, C as ld } from "./unsignedTransaction-BLH74msy.mjs";
4
+ import { $ as h, a0 as xr, a1 as lu, h as tt, a4 as ia, a8 as aa, ai as fi, ab as hi, N as pi, o as mu, ag as gi, p as fu, cN as hu, ae as yi, cO as Qo, cP as bi, cQ as vi, cR as wi, cS as ki, cT as _i, cU as Si, cV as pu, cW as gu, cX as yu, bI as bu, ah as vu } from "./index-BpgHIKBe.mjs";
5
+ import { t as jt, b as wu, r as ku, a as ca, c as _u, d as Su, l as Pu, e as Au, s as qr, k as Tu, f as Eu, g as Cu, h as Rs, i as ua, j as da, m as Mu, v as Ou, x as Bt, n as ju, p as Bu, q as Ru, o as Iu, u as $u, w as Nu, y as la, z as Du, A as Uu, B as xu, D as qu, E as Hu, F as Vu, H as Fu, I as Wu, J as Hr, K as Ju, L as Gu, M as Lu, N as zu, O as Ku, P as Qu, Q as Zu, R as Xu, S as Yu, T as ed, U as td, V as ma, W as nd, X as rd, Y as od, Z as sd, _ as id, $ as ad, a0 as cd, G as Nt, C as Zo } from "./cosmwasm-DN0AHdEC.mjs";
6
+ import { CosmwasmWormholeCore as ud } from "./index-CMboM3K3.mjs";
7
+ import { c as dd, C as ld } from "./unsignedTransaction-l29mWyX4.mjs";
8
8
  function md(e) {
9
9
  return e.id !== void 0 && e.pending !== void 0 && e.data !== void 0;
10
10
  }