@wormhole-foundation/wormhole-connect 4.1.0-beta.0-development → 4.2.0-beta.0-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.
- package/README.md +1 -1
- package/dist/assets/{aptos-C9pj8h2Q.js → aptos-DgUCX7ng.js} +3 -3
- package/dist/assets/{evm-DCydYqBI.js → evm-B6bqAPTR.js} +4 -4
- package/dist/assets/{evm-CJXv6IQV.js → evm-Ve5nG8Fs.js} +1 -1
- package/dist/assets/{index-LvDsy6wR.js → index-BJokXZAc.js} +1 -1
- package/dist/assets/{index-BqxX-Ey7.js → index-BJv9sngo.js} +1 -1
- package/dist/assets/{index-C9cy4cDs.js → index-BjZMFLjq.js} +1 -1
- package/dist/assets/{index-FJ-n91Op.js → index-BwbPlAQZ.js} +1 -1
- package/dist/assets/{index-Clu5I99l.js → index-Bzg4DNh9.js} +1 -1
- package/dist/assets/{index-ezhfpCvx.js → index-CKXa657f.js} +1 -1
- package/dist/assets/index-CXiuP738.js +1 -0
- package/dist/assets/{index-CNExx9Zb.js → index-CvTvoHH-.js} +1 -1
- package/dist/assets/{index-C25bHdOM.js → index-D1ULRVbZ.js} +1 -1
- package/dist/assets/{index-DpabQJOX.js → index-DlH9IMQl.js} +1 -1
- package/dist/assets/{index-C8u74RER.js → index-Dsb-5apv.js} +1 -1
- package/dist/assets/{index-D9ApKauA.js → index-_YFUWLUM.js} +1 -1
- package/dist/assets/{index-CoIvdDsX.js → index-jg26xdEi.js} +1 -1
- package/dist/assets/{provider-jsonrpc-DuMpLBV0.js → provider-jsonrpc-DNgUKjG6.js} +1 -1
- package/dist/assets/{solana-DWuIx6gK.js → solana-D4RepnSA.js} +2 -2
- package/dist/assets/{sui-BcTGBE_4.js → sui-Du5h-f8S.js} +3 -3
- package/dist/main.mjs +185 -140
- package/dist/src/components/ConfigurablePageHeader.d.ts +1 -1
- package/dist/src/components/ConfigurablePageHeader.d.ts.map +1 -1
- package/dist/src/components/Header.d.ts +1 -0
- package/dist/src/components/Header.d.ts.map +1 -1
- package/dist/src/components/PageHeader.d.ts +1 -3
- package/dist/src/components/PageHeader.d.ts.map +1 -1
- package/dist/src/components/SampleApp/index.d.ts.map +1 -1
- package/dist/src/components/v3/BackButton.d.ts +6 -0
- package/dist/src/components/v3/BackButton.d.ts.map +1 -0
- package/dist/src/components/v3/FormContent.d.ts +5 -0
- package/dist/src/components/v3/FormContent.d.ts.map +1 -0
- package/dist/src/config/constants.d.ts.map +1 -1
- package/dist/src/config/events.d.ts +2 -1
- package/dist/src/config/events.d.ts.map +1 -1
- package/dist/src/config/mainnet/chains.d.ts.map +1 -1
- package/dist/src/config/mainnet/rpcs.d.ts.map +1 -1
- package/dist/src/config/mainnet/tokens.d.ts.map +1 -1
- package/dist/src/config/mainnet/wrappedTokens.d.ts +6 -0
- package/dist/src/config/mainnet/wrappedTokens.d.ts.map +1 -1
- package/dist/src/config/testnet/chains.d.ts.map +1 -1
- package/dist/src/config/testnet/rpcs.d.ts.map +1 -1
- package/dist/src/config/testnet/tokens.d.ts.map +1 -1
- package/dist/src/config/types.d.ts +6 -11
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/config/ui.d.ts +9 -0
- package/dist/src/config/ui.d.ts.map +1 -1
- package/dist/src/consts/wallet.d.ts.map +1 -1
- package/dist/src/hooks/useAutoEnableGasDropoff.d.ts +3 -1
- package/dist/src/hooks/useAutoEnableGasDropoff.d.ts.map +1 -1
- package/dist/src/hooks/useConnectToLastUsedWallet.d.ts.map +1 -1
- package/dist/src/hooks/useSortedRoutesWithQuotes.d.ts.map +1 -1
- package/dist/src/hooks/useTransactionHistory.d.ts.map +1 -1
- package/dist/src/hooks/useTransactionHistoryLiFi.d.ts +2 -0
- package/dist/src/hooks/useTransactionHistoryLiFi.d.ts.map +1 -1
- package/dist/src/hooks/useTransactionHistoryMayan.d.ts +2 -0
- package/dist/src/hooks/useTransactionHistoryMayan.d.ts.map +1 -1
- package/dist/src/hooks/useTransactionHistoryWHScan.d.ts +2 -1
- package/dist/src/hooks/useTransactionHistoryWHScan.d.ts.map +1 -1
- package/dist/src/icons/PoweredBy.d.ts.map +1 -1
- package/dist/src/icons/TokenIcons.d.ts.map +1 -1
- package/dist/src/icons/Tokens/AUSD.d.ts +4 -0
- package/dist/src/icons/Tokens/AUSD.d.ts.map +1 -0
- package/dist/src/routes/lifi/LiFiRoute.d.ts.map +1 -1
- package/dist/src/routes/mayan/utils.d.ts.map +1 -1
- package/dist/src/routes/monad/consts.d.ts +1 -0
- package/dist/src/routes/monad/consts.d.ts.map +1 -1
- package/dist/src/routes/monad/monad.test.d.ts +1 -0
- package/dist/src/routes/monad/monad.test.d.ts.map +1 -0
- package/dist/src/routes/monad/utils.d.ts.map +1 -1
- package/dist/src/sdklegacy/config/MAINNET.d.ts.map +1 -1
- package/dist/src/sdklegacy/config/TESTNET.d.ts.map +1 -1
- package/dist/src/telemetry/types.d.ts +4 -2
- package/dist/src/telemetry/types.d.ts.map +1 -1
- package/dist/src/theme.d.ts +4 -3
- package/dist/src/theme.d.ts.map +1 -1
- package/dist/src/utils/errors.d.ts.map +1 -1
- package/dist/src/utils/fees.d.ts.map +1 -1
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/sdkv2.d.ts.map +1 -1
- package/dist/src/utils/wallet/index.d.ts +1 -0
- package/dist/src/utils/wallet/index.d.ts.map +1 -1
- package/dist/src/views/Terms.d.ts.map +1 -1
- package/dist/src/views/TxSearch.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/AssetPicker/PickerModal.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/AssetPicker/TokenPickerButton.d.ts +17 -0
- package/dist/src/views/v3/Bridge/AssetPicker/TokenPickerButton.d.ts.map +1 -0
- package/dist/src/views/v3/Bridge/AssetPicker/TokenPickerButtonContent.d.ts +8 -0
- package/dist/src/views/v3/Bridge/AssetPicker/TokenPickerButtonContent.d.ts.map +1 -0
- package/dist/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButton.test.d.ts +2 -0
- package/dist/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButton.test.d.ts.map +1 -0
- package/dist/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButtonContent.test.d.ts +2 -0
- package/dist/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButtonContent.test.d.ts.map +1 -0
- package/dist/src/views/v3/Bridge/AssetPicker/index.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/GasSlider/index.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/Routes/SingleRoute.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/Routes/index.d.ts +2 -1
- package/dist/src/views/v3/Bridge/Routes/index.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/WalletConnector/Controller.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/WalletConnector/ExplorerLink.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/WalletConnector/WalletAddress.d.ts +9 -0
- package/dist/src/views/v3/Bridge/WalletConnector/WalletAddress.d.ts.map +1 -0
- package/dist/src/views/v3/Bridge/WalletConnector/WalletPickerContent.d.ts.map +1 -1
- package/dist/src/views/v3/Bridge/WalletConnector/__tests__/WalletAddress.test.d.ts +2 -0
- package/dist/src/views/v3/Bridge/WalletConnector/__tests__/WalletAddress.test.d.ts.map +1 -0
- package/dist/src/views/v3/Bridge/index.d.ts.map +1 -1
- package/dist/src/views/v3/Redeem/TransactionDetails/index.d.ts.map +1 -1
- package/dist/src/views/v3/Redeem/index.d.ts.map +1 -1
- package/dist/src/views/v3/TxHistory/Item/index.d.ts.map +1 -1
- package/dist/src/views/v3/TxHistory/Widget/Item.d.ts.map +1 -1
- package/lib/{account-cIQhxn1E.js → account-K005OXgL.js} +1 -1
- package/lib/{account-BVl6Reot.mjs → account-TXlxMyv4.mjs} +2 -2
- package/lib/{address-rVHWlcKQ.mjs → address-CX0E32ut.mjs} +1 -1
- package/lib/{address-W9jn6Qdk.js → address-DqbIfKOu.js} +1 -1
- package/lib/{aptos-BRApiL_4.mjs → aptos-B1Gf2eCD.mjs} +5 -5
- package/lib/{aptos-CNHYHK9c.js → aptos-CnswqE-C.js} +2 -2
- package/lib/{aptos-D1WFzBMy.mjs → aptos-DRfXJ8Ba.mjs} +7 -7
- package/lib/{aptos-d56Mw8DO.js → aptos-DcdKyekw.js} +1 -1
- package/lib/{associatedTokenAccount-C4vEEbG5.js → associatedTokenAccount-CeqdaO2m.js} +1 -1
- package/lib/{associatedTokenAccount-DF6phO3l.mjs → associatedTokenAccount-Dsm4Hq32.mjs} +3 -3
- package/lib/{basic-BxzNlZH2.js → basic-BS7Z1PMG.js} +1 -1
- package/lib/{basic-Bj1RjRlj.js → basic-C6VXQ7m-.js} +1 -1
- package/lib/{basic-DR75AlQZ.mjs → basic-CFbslwLM.mjs} +3 -3
- package/lib/{basic-DjAbnFVK.mjs → basic-DnhL0oWa.mjs} +3 -3
- package/lib/{chunk-KJH4KKG6-Brt4fyqz.mjs → chunk-KJH4KKG6-BfVMUPsB.mjs} +3 -3
- package/lib/{chunk-KJH4KKG6-BbF5W1_N.js → chunk-KJH4KKG6-CJx-rDa6.js} +1 -1
- package/lib/constants-BCFTvlgh.js +1 -0
- package/lib/{constants-PWEvTwIh.mjs → constants-CTJ_-E0d.mjs} +5 -4
- package/lib/{core-CkIseV8K.mjs → core-DT6TBPQP.mjs} +6 -6
- package/lib/{core-CCO0WKg_.js → core-RRp0K__1.js} +3 -3
- package/lib/{create-CChLkbGc.mjs → create-C5dhTMHL.mjs} +1 -1
- package/lib/{create-4w0DrcRO.js → create-bA3Gyivs.js} +1 -1
- package/lib/{evm-BAU31wxF.js → evm-BwCfQIyJ.js} +2 -2
- package/lib/{evm-CMxUV_bG.mjs → evm-BxF9XPn4.mjs} +7 -7
- package/lib/{evm-9NnChBii.js → evm-C3B8jHD7.js} +1 -1
- package/lib/{evm-2dSclZz6.mjs → evm-DlOCiplA.mjs} +5 -5
- package/lib/executor.js +1 -1
- package/lib/executor.mjs +13 -15
- package/lib/hosted.js +1 -1
- package/lib/hosted.mjs +1 -1
- package/lib/hypercore-DbqOAqKF.js +4 -0
- package/lib/{hypercore-Bmlyd4uI.mjs → hypercore-H7pw_pN4.mjs} +4858 -3107
- package/lib/{index-qL4D-cpk.js → index-1T4sIL8n.js} +1 -1
- package/lib/{index-Ap7250Gf.mjs → index-39tU5Y5t.mjs} +6 -6
- package/lib/{index-D7gCsil9.js → index-6m7yero0.js} +1 -1
- package/lib/{index-C5I7QiZ7.mjs → index-B6Ppg6EZ.mjs} +3 -3
- package/lib/{index-xvG6cxNx.js → index-BEIFBxtP.js} +1 -1
- package/lib/{index-zIzzPp6D.mjs → index-BHpJUZne.mjs} +3 -3
- package/lib/{index-CS6YnwIH.js → index-BJ0xVutl.js} +1 -1
- package/lib/{index-DUyGY36L.js → index-BNpkgexR.js} +1 -1
- package/lib/{index-C61IKE_V.mjs → index-BSIPYyeZ.mjs} +2 -2
- package/lib/{index-EbSw7SbC.js → index-BTjUHY0e.js} +1 -1
- package/lib/{index-BuHdMHLz.mjs → index-Ba1zbu3Q.mjs} +2 -2
- package/lib/{index-CPGWCfWD.js → index-BbE02hdW.js} +8 -8
- package/lib/{index-BU35GfG0.mjs → index-Bdtj4LUz.mjs} +2 -2
- package/lib/{index-BCKX-m7h.mjs → index-BmP0jPVN.mjs} +12 -11
- package/lib/{index-hyk_rzOj.mjs → index-BnKf2rOm.mjs} +3246 -3039
- package/lib/{index-Ds7-hb1n.mjs → index-BtU67kjy.mjs} +1 -1
- package/lib/{index-Cl9Df47-.mjs → index-BuEKhdrW.mjs} +3 -3
- package/lib/{index-CN7M4gwf.mjs → index-BviSNDV7.mjs} +5 -5
- package/lib/{index-Cys9e11O.js → index-C-SMuVS3.js} +1 -1
- package/lib/{index-Cg1Xo1eZ.js → index-C85u3Gj5.js} +1 -1
- package/lib/{index-arjwwpj2.mjs → index-CGqJokTg.mjs} +1 -1
- package/lib/{index-Da9rvmCc.js → index-Cb0UWLGI.js} +1 -1
- package/lib/{index-DHnmtpvA.mjs → index-CcbY14s5.mjs} +4 -4
- package/lib/{index-BKgliEPZ.mjs → index-CrWTw0Se.mjs} +2 -2
- package/lib/{index-B16yfCYF.mjs → index-CsLyPoC6.mjs} +4 -4
- package/lib/{index-B_JJ50Y-.mjs → index-D-HUNEka.mjs} +4 -4
- package/lib/index-DAJZN12d.js +1 -0
- package/lib/{index-BhMcIAHt.js → index-DJ2w1fz1.js} +1 -1
- package/lib/{index-C5j1HoFr.js → index-DVm_f5E1.js} +1 -1
- package/lib/{index-CO4ZoIAU.mjs → index-DjmVBSGQ.mjs} +4 -4
- package/lib/{index-Co3mm7UN.mjs → index-DrJE8udd.mjs} +1 -1
- package/lib/{index-fTUcaKb4.js → index-DuhYwr0t.js} +1 -1
- package/lib/{index-BQ0lWQfT.mjs → index-DwEx1Hn-.mjs} +2 -2
- package/lib/{index-DBofyYkS.js → index-DziujHu1.js} +1 -1
- package/lib/{index-Dou5sFku.js → index-JWbF-m3e.js} +1 -1
- package/lib/{index-_IZO0QRl.mjs → index-NAUBlFLG.mjs} +4 -4
- package/lib/{index-D1odbjeH.mjs → index-VnJcNK62.mjs} +3 -3
- package/lib/{index-DVxmRy4C.js → index-WrXSs0ic.js} +1 -1
- package/lib/{index-CsdD1TNi.js → index-aMKUba1k.js} +1 -1
- package/lib/{index-BXsTZ9x_.mjs → index-dufPAW5T.mjs} +298 -267
- package/lib/{index-lZY5fTXF.js → index-lAqXlt-a.js} +1 -1
- package/lib/{index-cRi8si5A.js → index-mikg85u5.js} +1 -1
- package/lib/{index-BScgBddV.mjs → index-o1SAPXm_.mjs} +3 -3
- package/lib/{index-CZHdN9pg.js → index-pn6NZmOS.js} +1 -1
- package/lib/{index-DNZ-Pkpm.mjs → index-rxQSA9t0.mjs} +6 -6
- package/lib/{index-CHvWl09c.js → index-t_koRpGi.js} +1 -1
- package/lib/{index-DALvn9lg.js → index-v7w8krM0.js} +1 -1
- package/lib/{index-japympio.js → index-wadjmD_G.js} +1 -1
- package/lib/{index.es-BC9c-IV7.mjs → index.es-3KAM8l3G.mjs} +4 -4
- package/lib/{index.es-DxdcaWwJ.js → index.es-B3FwsRfN.js} +3 -3
- package/lib/{index.es-ByyzusUN.mjs → index.es-CYyuSfPG.mjs} +4 -4
- package/lib/{index.es-BmZ1Eaml.js → index.es-ClIr5Gv-.js} +1 -1
- package/lib/index.js +78 -33
- package/lib/index.mjs +9157 -8833
- package/lib/{keypair-DWucLGoA.js → keypair-DCgXFOw5.js} +1 -1
- package/lib/{keypair-CP7syX9B.mjs → keypair-vpG2fl-q.mjs} +3 -3
- package/lib/lifi.js +1 -1
- package/lib/lifi.mjs +75 -76
- package/lib/mayan.js +2 -2
- package/lib/mayan.mjs +11 -10
- package/lib/{mint-CoNdQTGM.mjs → mint-BPrKG-Zc.mjs} +3 -3
- package/lib/{mint-CxQ6P5lT.js → mint-DW-XgF68.js} +1 -1
- package/lib/monad.js +1 -1
- package/lib/monad.mjs +91 -58
- package/lib/multiToken-B9BoSxdr.js +1 -0
- package/lib/{multiToken-Bm-K5dRJ.mjs → multiToken-DMllgxzT.mjs} +4 -3
- package/lib/ntt.js +2 -2
- package/lib/ntt.mjs +77 -86
- package/lib/{platform-Cil_UtAQ.mjs → platform-CSpAb386.mjs} +2788 -2748
- package/lib/{platform-BMKYxqvv.js → platform-Csj1Outc.js} +1 -1
- package/lib/platform-DCcL7jHP.js +11 -0
- package/lib/{platform-vRQufc6j.mjs → platform-YzJZdSCf.mjs} +3 -3
- package/lib/{secp256k1-D24BZJAq.js → secp256k1-B2G0zB-5.js} +1 -1
- package/lib/{secp256k1-CXRI4XfW.mjs → secp256k1-BZFiBDHQ.mjs} +1 -1
- package/lib/{secp256k1-r0ke-jeG.js → secp256k1-Bz-QjKBU.js} +1 -1
- package/lib/{secp256k1-rufcCDcw.mjs → secp256k1-Cteng3v9.mjs} +1 -1
- package/lib/{secp256k1-BLiUzGcX.js → secp256k1-CxjctkO3.js} +1 -1
- package/lib/{secp256k1-ZQ8UIhmk.mjs → secp256k1-D3i7kc2M.mjs} +1 -1
- package/lib/{signer-0hWrZ5BZ.mjs → signer-D2GRgRrw.mjs} +2 -2
- package/lib/{signer-DyqulDUM.js → signer-gjSiV5v3.js} +1 -1
- package/lib/{solana-CXtk3UX1.js → solana-BE2DAanS.js} +4 -4
- package/lib/{solana-lhrSUH_P.mjs → solana-Df231Yni.mjs} +10 -10
- package/lib/solana-DfW5T_64.mjs +18 -0
- package/lib/solana-Edd9tIkX.js +1 -0
- package/lib/{solanaEmbed.esm-CFu0h50b.mjs → solanaEmbed.esm-B9WG-Afi.mjs} +4 -4
- package/lib/{solanaEmbed.esm-BMynjubZ.js → solanaEmbed.esm-BqcrHrhl.js} +1 -1
- package/lib/{solidity-CbDkqHjE.js → solidity-BW7c8rFv.js} +1 -1
- package/lib/{solidity-Dk_mvceo.mjs → solidity-D9gSgFcp.mjs} +1 -1
- package/lib/src/components/ConfigurablePageHeader.d.ts +1 -1
- package/lib/src/components/ConfigurablePageHeader.d.ts.map +1 -1
- package/lib/src/components/Header.d.ts +1 -0
- package/lib/src/components/Header.d.ts.map +1 -1
- package/lib/src/components/PageHeader.d.ts +1 -3
- package/lib/src/components/PageHeader.d.ts.map +1 -1
- package/lib/src/components/SampleApp/index.d.ts.map +1 -1
- package/lib/src/components/v3/BackButton.d.ts +6 -0
- package/lib/src/components/v3/BackButton.d.ts.map +1 -0
- package/lib/src/components/v3/FormContent.d.ts +5 -0
- package/lib/src/components/v3/FormContent.d.ts.map +1 -0
- package/lib/src/config/constants.d.ts.map +1 -1
- package/lib/src/config/events.d.ts +2 -1
- package/lib/src/config/events.d.ts.map +1 -1
- package/lib/src/config/mainnet/chains.d.ts.map +1 -1
- package/lib/src/config/mainnet/rpcs.d.ts.map +1 -1
- package/lib/src/config/mainnet/tokens.d.ts.map +1 -1
- package/lib/src/config/mainnet/wrappedTokens.d.ts +6 -0
- package/lib/src/config/mainnet/wrappedTokens.d.ts.map +1 -1
- package/lib/src/config/testnet/chains.d.ts.map +1 -1
- package/lib/src/config/testnet/rpcs.d.ts.map +1 -1
- package/lib/src/config/testnet/tokens.d.ts.map +1 -1
- package/lib/src/config/types.d.ts +6 -11
- package/lib/src/config/types.d.ts.map +1 -1
- package/lib/src/config/ui.d.ts +9 -0
- package/lib/src/config/ui.d.ts.map +1 -1
- package/lib/src/consts/wallet.d.ts.map +1 -1
- package/lib/src/hooks/useAutoEnableGasDropoff.d.ts +3 -1
- package/lib/src/hooks/useAutoEnableGasDropoff.d.ts.map +1 -1
- package/lib/src/hooks/useConnectToLastUsedWallet.d.ts.map +1 -1
- package/lib/src/hooks/useSortedRoutesWithQuotes.d.ts.map +1 -1
- package/lib/src/hooks/useTransactionHistory.d.ts.map +1 -1
- package/lib/src/hooks/useTransactionHistoryLiFi.d.ts +2 -0
- package/lib/src/hooks/useTransactionHistoryLiFi.d.ts.map +1 -1
- package/lib/src/hooks/useTransactionHistoryMayan.d.ts +2 -0
- package/lib/src/hooks/useTransactionHistoryMayan.d.ts.map +1 -1
- package/lib/src/hooks/useTransactionHistoryWHScan.d.ts +2 -1
- package/lib/src/hooks/useTransactionHistoryWHScan.d.ts.map +1 -1
- package/lib/src/icons/PoweredBy.d.ts.map +1 -1
- package/lib/src/icons/TokenIcons.d.ts.map +1 -1
- package/lib/src/icons/Tokens/AUSD.d.ts +4 -0
- package/lib/src/icons/Tokens/AUSD.d.ts.map +1 -0
- package/lib/src/routes/lifi/LiFiRoute.d.ts.map +1 -1
- package/lib/src/routes/mayan/utils.d.ts.map +1 -1
- package/lib/src/routes/monad/consts.d.ts +1 -0
- package/lib/src/routes/monad/consts.d.ts.map +1 -1
- package/lib/src/routes/monad/monad.test.d.ts +1 -0
- package/lib/src/routes/monad/monad.test.d.ts.map +1 -0
- package/lib/src/routes/monad/utils.d.ts.map +1 -1
- package/lib/src/sdklegacy/config/MAINNET.d.ts.map +1 -1
- package/lib/src/sdklegacy/config/TESTNET.d.ts.map +1 -1
- package/lib/src/telemetry/types.d.ts +4 -2
- package/lib/src/telemetry/types.d.ts.map +1 -1
- package/lib/src/theme.d.ts +4 -3
- package/lib/src/theme.d.ts.map +1 -1
- package/lib/src/utils/errors.d.ts.map +1 -1
- package/lib/src/utils/fees.d.ts.map +1 -1
- package/lib/src/utils/index.d.ts.map +1 -1
- package/lib/src/utils/sdkv2.d.ts.map +1 -1
- package/lib/src/utils/wallet/index.d.ts +1 -0
- package/lib/src/utils/wallet/index.d.ts.map +1 -1
- package/lib/src/views/Terms.d.ts.map +1 -1
- package/lib/src/views/TxSearch.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/AssetPicker/PickerModal.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/AssetPicker/TokenPickerButton.d.ts +17 -0
- package/lib/src/views/v3/Bridge/AssetPicker/TokenPickerButton.d.ts.map +1 -0
- package/lib/src/views/v3/Bridge/AssetPicker/TokenPickerButtonContent.d.ts +8 -0
- package/lib/src/views/v3/Bridge/AssetPicker/TokenPickerButtonContent.d.ts.map +1 -0
- package/lib/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButton.test.d.ts +2 -0
- package/lib/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButton.test.d.ts.map +1 -0
- package/lib/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButtonContent.test.d.ts +2 -0
- package/lib/src/views/v3/Bridge/AssetPicker/__tests__/TokenPickerButtonContent.test.d.ts.map +1 -0
- package/lib/src/views/v3/Bridge/AssetPicker/index.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/GasSlider/index.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/Routes/SingleRoute.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/Routes/index.d.ts +2 -1
- package/lib/src/views/v3/Bridge/Routes/index.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/WalletConnector/Controller.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/WalletConnector/ExplorerLink.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/WalletConnector/WalletAddress.d.ts +9 -0
- package/lib/src/views/v3/Bridge/WalletConnector/WalletAddress.d.ts.map +1 -0
- package/lib/src/views/v3/Bridge/WalletConnector/WalletPickerContent.d.ts.map +1 -1
- package/lib/src/views/v3/Bridge/WalletConnector/__tests__/WalletAddress.test.d.ts +2 -0
- package/lib/src/views/v3/Bridge/WalletConnector/__tests__/WalletAddress.test.d.ts.map +1 -0
- package/lib/src/views/v3/Bridge/index.d.ts.map +1 -1
- package/lib/src/views/v3/Redeem/TransactionDetails/index.d.ts.map +1 -1
- package/lib/src/views/v3/Redeem/index.d.ts.map +1 -1
- package/lib/src/views/v3/TxHistory/Item/index.d.ts.map +1 -1
- package/lib/src/views/v3/TxHistory/Widget/Item.d.ts.map +1 -1
- package/lib/{sui-CZNJPZ5q.mjs → sui-B9tYcgyb.mjs} +4 -4
- package/lib/{sui-CBxh7zmc.js → sui-BVwNcgQT.js} +1 -1
- package/lib/{sui-LiXjD27c.js → sui-BtyZE8YC.js} +1 -1
- package/lib/{sui-cpCvd7RC.mjs → sui-QP4AZGNc.mjs} +6 -6
- package/lib/{tokenHelpers-DT6mPtNP.mjs → tokenHelpers-C53sepsl.mjs} +1 -1
- package/lib/{tokenHelpers-DZRdlDO-.js → tokenHelpers-DITWDel1.js} +1 -1
- package/lib/{tokens-FIs8YBYj.mjs → tokens-CO0YQ3R2.mjs} +3 -3
- package/lib/{tokens--uOMY2-j.js → tokens-CiSHS7oi.js} +1 -1
- package/lib/types-CgveSjsw.js +1 -0
- package/lib/{types-iFgwQ7vG.mjs → types-Dxx2g1wS.mjs} +170 -168
- package/lib/{unsignedTransaction-DCDxTFq8.mjs → unsignedTransaction-D2Ja0SuN.mjs} +2 -2
- package/lib/{unsignedTransaction-DA4tlY5u.js → unsignedTransaction-qRBv5Cnd.js} +2 -2
- package/lib/{utils-DMf7wRGI.js → utils-BEljbqMf.js} +1 -1
- package/lib/{utils-BSxsyW2c.mjs → utils-mBHX3Jpu.mjs} +4 -4
- package/lib/{w3m-modal-CBYJj-sR.mjs → w3m-modal-5v-rsnN8.mjs} +2 -2
- package/lib/{w3m-modal-B3FfPDki.js → w3m-modal-B0Lu-6W8.js} +1 -1
- package/lib/{w3m-modal-B5PtkowQ.js → w3m-modal-B2xHxAWg.js} +1 -1
- package/lib/{w3m-modal-h85Jyy9l.mjs → w3m-modal-SlcSCSnx.mjs} +2 -2
- package/lib/{wallet-CMTEE6Oa.mjs → wallet-Cyosy4Hc.mjs} +1 -1
- package/lib/{wallet-BMli0fbu.js → wallet-a0_jwP8j.js} +1 -1
- package/lib/{web3-CUwFm9Lx.mjs → web3-CdErAVj5.mjs} +2 -2
- package/lib/{web3-DdUeM7iQ.js → web3-x1WCGDiy.js} +1 -1
- package/package.json +49 -47
- package/dist/assets/index-_UMHESh0.js +0 -1
- package/dist/src/components/Button.d.ts +0 -13
- package/dist/src/components/Button.d.ts.map +0 -1
- package/dist/src/icons/Down.d.ts +0 -5
- package/dist/src/icons/Down.d.ts.map +0 -1
- package/lib/constants-Bkyn6tLV.js +0 -1
- package/lib/hypercore-DJV-pPts.js +0 -4
- package/lib/index-BYuhx88C.js +0 -1
- package/lib/multiToken-YoNvxjur.js +0 -1
- package/lib/platform-CCG_jgOO.js +0 -11
- package/lib/solana-DKFJvqX8.mjs +0 -18
- package/lib/solana-Dmje_Si8.js +0 -1
- package/lib/src/components/Button.d.ts +0 -13
- package/lib/src/components/Button.d.ts.map +0 -1
- package/lib/src/icons/Down.d.ts +0 -5
- package/lib/src/icons/Down.d.ts.map +0 -1
- package/lib/types-CjNs2oB0.js +0 -1
package/lib/platform-CCG_jgOO.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";function Jm(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Cu={exports:{}},Le=Cu.exports={},Kt,Qt;function Oo(){throw new Error("setTimeout has not been defined")}function Mo(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?Kt=setTimeout:Kt=Oo}catch{Kt=Oo}try{typeof clearTimeout=="function"?Qt=clearTimeout:Qt=Mo}catch{Qt=Mo}})();function xu(t){if(Kt===setTimeout)return setTimeout(t,0);if((Kt===Oo||!Kt)&&setTimeout)return Kt=setTimeout,setTimeout(t,0);try{return Kt(t,0)}catch{try{return Kt.call(null,t,0)}catch{return Kt.call(this,t,0)}}}function Xm(t){if(Qt===clearTimeout)return clearTimeout(t);if((Qt===Mo||!Qt)&&clearTimeout)return Qt=clearTimeout,clearTimeout(t);try{return Qt(t)}catch{try{return Qt.call(null,t)}catch{return Qt.call(this,t)}}}var fn=[],Mr=!1,Qn,Ii=-1;function Ym(){!Mr||!Qn||(Mr=!1,Qn.length?fn=Qn.concat(fn):Ii=-1,fn.length&&Du())}function Du(){if(!Mr){var t=xu(Ym);Mr=!0;for(var e=fn.length;e;){for(Qn=fn,fn=[];++Ii<e;)Qn&&Qn[Ii].run();Ii=-1,e=fn.length}Qn=null,Mr=!1,Xm(t)}}Le.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];fn.push(new Fu(t,e)),fn.length===1&&!Mr&&xu(Du)};function Fu(t,e){this.fun=t,this.array=e}Fu.prototype.run=function(){this.fun.apply(null,this.array)};Le.title="browser";Le.browser=!0;Le.env={};Le.argv=[];Le.version="";Le.versions={};function wn(){}Le.on=wn;Le.addListener=wn;Le.once=wn;Le.off=wn;Le.removeListener=wn;Le.removeAllListeners=wn;Le.emit=wn;Le.prependListener=wn;Le.prependOnceListener=wn;Le.listeners=function(t){return[]};Le.binding=function(t){throw new Error("process.binding is not supported")};Le.cwd=function(){return"/"};Le.chdir=function(t){throw new Error("process.chdir is not supported")};Le.umask=function(){return 0};var Zm=Cu.exports;const vs=Jm(Zm),Ji=t=>[...Array(t).keys()],Su=(t,e)=>t.map(n=>n[e]),$n=t=>Ji(t[0].length).map(e=>Ji(t.length).map(n=>t[n][e])),eb=(t,e,n)=>{const r=new Set(Array.isArray(e)?e:[e]);return t.filter((s,i)=>r.has(i)!==n)};function tb(t,e=!1){if(t.length===0)throw new Error("Can't calculate median of empty array");const n=e?t:[...t].sort((a,o)=>a>o?1:a<o?-1:0),r=Math.floor(n.length/2);if(n.length%2===1)return n[r];const s=n[r-1],i=n[r];if(typeof s=="bigint"&&typeof i=="bigint")return(s+i)/2n;if(typeof s=="number"&&typeof i=="number")return(s+i)/2;throw new Error("Can't calculate median of array with mixed number and bigint")}function nb(t){return["string","number","symbol","bigint","boolean"].includes(typeof t)}const Zl=t=>t.length===2&&!Array.isArray(t[0])&&Array.isArray(t[1]),Xi=t=>t.length===0?[]:Array.isArray(t[0])?t.map(([e,n])=>Array.isArray(n)?(Zl(n)?Xi(n):n).map(r=>[e,r].flat()):[[e,n]]).flat():Zl(t)?Xi(t[1]).map(e=>[t[0],e]):t,rb=(t,e)=>{const n=Xi(t);if(n.length===0)throw new Error("Invalid mapping: empty");const r=e===void 0?[Ji(n[0].length-1),[n[0].length-1]]:e.map(m=>typeof m=="number"?[m]:m);let s=[],i=!0;const a=(m,b)=>{const w=Array.from(new Set(m[0]).values()),E=new Map(w.map(p=>[p,[]]));for(const[p,x]of m[0].entries())E.get(x).push(p);if(m.length===1){const p=Object.fromEntries(w.map(x=>[x,E.get(x).map(A=>b[A].length===1?b[A][0]:b[A])]));if(i){for(const x of E.values())if(x.length>1)return i=!1,p;s.push(p)}return p}const y=$n(m.slice(1));return Object.fromEntries(w.map(p=>{const x=E.get(p),A=$n(x.map(T=>y[T])),S=x.map(T=>b[T]);return[p,a(A,S)]}))},o=$n(n),c=m=>{const b=o[m];if(b===void 0)throw new Error(`Invalid shape: column ${m} does not exist`);return b},[d,l]=r.map(m=>m.map(b=>c(b)));if(d.length===0)throw new Error("Invalid shape: empty key set");if(l.length===0)throw new Error("Invalid shape: empty value set");for(const m of d)for(const b of m)if(!nb(b))throw new Error(`Invalid key: ${b} in ${m}`);const f=a(d,$n(l));if(i)for(const m of s)for(const b of Object.keys(m))m[b]=m[b][0];return f};function ne(t,e){const n=r=>{const s=((...i)=>i.reduce((a,o)=>a?a[o.toString()]??void 0:void 0,r));return Object.assign(s,{has:(...i)=>s(...i)!==void 0,get:(...i)=>s(...i),subMap:i=>n(r[i.toString()])})};return n(rb(t,e))}function Rc(t){let e=null;return()=>(e||(e=t()),e)}function sb(t){try{return t(),!1}catch{return!0}}function ib(t,e,n){return t<e?e:t>n?n:t}var ab=["int","uint","bytes","array","switch"],Tu="big",Aa=6,fr=t=>typeof t=="number"||typeof t=="bigint",ss=t=>t instanceof Uint8Array,ob=t=>fr(t)||ss(t),Is=t=>ab.includes(t?.binary),cb=t=>Is(t)||Array.isArray(t)&&t.every(Is),lb=t=>typeof t?.from=="number",db=t=>typeof t?.from=="bigint",ub=t=>lb(t)||db(t),is=t=>ss(t?.from),fb=t=>ub(t)||is(t),vu=(t,e)=>{if(t!==e)throw new Error(`size mismatch: layout size: ${t}, data size: ${e}`);return e},_r=t=>"layout"in t&&t.layout!==void 0,Lo=(t,e)=>"size"in t&&t.size!==void 0?vu(t.size,e):e,Wo=(t,e)=>{if(t!=e)throw new Error(`value mismatch: (constant) layout value: ${t}, data value: ${e}`)},Ho=(t,e,n)=>{const r=(d,l)=>l===void 0?[0,d.length]:Array.isArray(l)?l:[l,d.length],[s,i]=r(t,n?.customSlice),[a,o]=r(e,n?.dataSlice),c=i-s;vu(c,o-a);for(let d=0;d<t.length;++d)if(t[d+s]!==e[d+a])throw new Error(`binary data mismatch: layout value: ${t}, offset: ${s}, data value: ${e}, offset: ${a}`)};function Iu(t,e){const n=e[t.idTag??"id"];return t.layouts.find(([r])=>(Array.isArray(r)?r[1]:r)==n)}function ku(t){return jn(t,St)}var St=Symbol("staticCalc");function hb(t,e){const n=[],r=jn(t,e,n);if(r===null)throw new Error(`coding error: couldn't calculate layout size for layout ${t} with data ${e}`);return[r,n]}function ed(t,e,n){const r=s=>(n!==void 0&&n.push(s),s);switch(t.binary){case"int":case"uint":return t.size;case"bytes":{if("size"in t&&e===St)return t.size;const s="lengthSize"in t?t.lengthSize|0:0;if(_r(t)){const{custom:a}=t,o=jn(t.layout,a===void 0?e:typeof a.from=="function"?e!==St?r(a.from(e)):St:a.from,n);return o===null?"size"in t?t.size??null:null:s+Lo(t,o)}const{custom:i}=t;return ss(i)?s+i.length:is(i)?s+i.from.length:e===St?null:s+Lo(t,i!==void 0?r(i.from(e)).length:e.length)}case"array":{const s="length"in t?t.length:void 0;if(e===St){if(s!==void 0){const a=jn(t.layout,St,n);return a!==null?s*a:null}return null}let i=0;if(s!==void 0&&s!==e.length)throw new Error(`array length mismatch: layout length: ${s}, data length: ${e.length}`);"lengthSize"in t&&t.lengthSize!==void 0&&(i+=t.lengthSize);for(let a=0;a<e.length;++a){const o=jn(t.layout,e[a],n);if(o===null)return null;i+=o}return i}case"switch":{if(e!==St){const[i,a]=Iu(t,e),o=jn(a,e,n);return o!==null?t.idSize+o:null}let s=null;for(const[i,a]of t.layouts){const o=jn(a,St,n);if(s===null)s=o;else if(o!==s)return null}return t.idSize+s}}}function jn(t,e,n){if(Is(t))return ed(t,e,n);let r=0;for(const s of t){let i;if(e===St)i=St;else if(!("omit"in s)||!s.omit){if(!(s.name in e))throw new Error(`missing data for layout item: ${s.name}`);i=e[s.name]}const a=ed(s,i,n);if(a===null){if(e!==St)throw new Error(`coding error: couldn't calculate size for layout item: ${s.name}`);return null}r+=a}return r}var oo=(t,e)=>{t.bytes.set(e,t.offset),t.offset+=e.length},td=t=>t.bytesConversions[t.position++];function Ot(t,e,n){const[r,s]=hb(t,e),i={bytes:new Uint8Array(r),offset:0};if(ki(t,e,i,{bytesConversions:s,position:0}),i.offset!==i.bytes.length)throw new Error(`encoded data is shorter than expected: ${i.bytes.length} > ${i.offset}`);return i.bytes}var nd=2**(Aa*8);function Jn(t,e,n,r=Tu,s=!1){if(!s&&t<0)throw new Error(`Value ${t} is negative but unsigned`);if(typeof t=="number"){if(!Number.isInteger(t))throw new Error(`Value ${t} is not an integer`);if(e>Aa){if(t>=nd)throw new Error(`Value ${t} is too large to be safely converted into an integer`);if(s&&t<-nd)throw new Error(`Value ${t} is too small to be safely converted into an integer`)}}const i=2n**BigInt(e*8-(s?1:0));if(t>=i)throw new Error(`Value ${t} is too large for ${e} bytes`);if(s&&t<-i)throw new Error(`Value ${t} is too small for ${e} bytes`);for(let a=0;a<e;++a)n.bytes[n.offset+a]=Number(BigInt(t)>>BigInt(8*(r==="big"?e-a-1:a))&0xffn);n.offset+=e}function ki(t,e,n,r){if(Is(t))rd(t,e,n,r);else for(const s of t)try{rd(s,e[s.name],n,r)}catch(i){throw i.message=`when serializing item '${s.name}': ${i.message}`,i}}function rd(t,e,n,r){switch(t.binary){case"int":case"uint":{const s=fr(t.custom)?("omit"in t&&t.omit||Wo(t.custom,e),t.custom):fr(t?.custom?.from)?t.custom.from:t.custom!==void 0?t.custom.from(e):e;Jn(s,t.size,n,t.endianness,t.binary==="int");break}case"bytes":{const s=n.offset;if("lengthSize"in t&&t.lengthSize!==void 0&&(n.offset+=t.lengthSize),_r(t)){const{custom:i}=t;let a;i===void 0?a=e:typeof i.from!="function"?a=i.from:a=td(r),ki(t.layout,a,n,r)}else{const{custom:i}=t;ss(i)?("omit"in t&&t.omit||Ho(i,e),oo(n,i)):is(i)?oo(n,i.from):oo(n,i!==void 0?td(r):e)}if("lengthSize"in t&&t.lengthSize!==void 0){const i=n.offset-s-t.lengthSize,a=n.offset;n.offset=s,Jn(i,t.lengthSize,n,t.lengthEndianness),n.offset=a}else Lo(t,n.offset-s);break}case"array":{if("length"in t&&t.length!==e.length)throw new Error(`array length mismatch: layout length: ${t.length}, data length: ${e.length}`);"lengthSize"in t&&t.lengthSize!==void 0&&Jn(e.length,t.lengthSize,n,t.lengthEndianness);for(let s=0;s<e.length;++s)ki(t.layout,e[s],n,r);break}case"switch":{const[s,i]=Iu(t,e),a=Array.isArray(s)?s[0]:s;Jn(a,t.idSize,n,t.idEndianness),ki(i,e,n,r);break}}}function Uu(t){const e=t.custom;if(!("cachedSerializedFrom"in e)&&(e.cachedSerializedFrom=Ot(t.layout,e.from),"size"in t&&t.size!==void 0&&t.size!==e.cachedSerializedFrom.length))throw new Error("Layout specification error: custom.from does not serialize to specified size");return e.cachedSerializedFrom}function Mt(t,e,n){const r=n??!0,s={bytes:e,offset:0,end:e.length},i=Es(t,s);if(r&&s.offset!==s.end)throw new Error(`encoded data is longer than expected: ${s.end} > ${s.offset}`);return r?i:[i,s.offset]}function Ui(t,e){const n=t.offset+e;if(n>t.end)throw new Error(`chunk is shorter than expected: ${t.end} < ${n}`);t.offset=n}function Es(t,e){if(!Array.isArray(t))return sd(t,e);let n={};for(const r of t)try{(r.omit?{}:n)[r.name]=sd(r,e)}catch(s){throw s.message=`when deserializing item '${r.name}': ${s.message}`,s}return n}function mi(t,e,n=Tu,r=!1){let s=0n;for(let i=0;i<e;++i)s|=BigInt(t.bytes[t.offset+i])<<BigInt(8*(n==="big"?e-i-1:i));return r&&t.bytes[t.offset+(n==="big"?0:e-1)]&128&&(s-=1n<<BigInt(8*e)),Ui(t,e),e>Aa?s:Number(s)}function sd(t,e){switch(t.binary){case"int":case"uint":{const n=mi(e,t.size,t.endianness,t.binary==="int"),{custom:r}=t;return fr(r)?(Wo(r,n),r):fr(r?.from)?(Wo(r.from,n),r.to):r!==void 0?r.to(n):n}case"bytes":{const n="lengthSize"in t&&t.lengthSize!==void 0?mi(e,t.lengthSize,t.lengthEndianness):t?.size;if(_r(t)){const{custom:o}=t,c=e.offset;let d;if(n===void 0)d=Es(t.layout,e);else{const l={...e,end:e.offset+n};if(Ui(e,n),d=Es(t.layout,l),l.offset!==l.end)throw new Error(`read less data than expected: ${l.offset-e.offset} < ${n}`)}return o!==void 0?typeof o.from!="function"?(Ho(Uu(t),e.bytes,{dataSlice:[c,e.offset]}),o.to):o.to(d):d}const{custom:r}=t;{let o,c;if(ss(r)?o=r:is(r)&&(o=r.from,c=r.to),o!==void 0){const d=n??o.length,l=e.bytes.subarray(e.offset,e.offset+d);return Ho(o,l),Ui(e,d),c??o}}const s=e.offset,i=n!==void 0?e.offset+n:e.end;Ui(e,i-s);const a=e.bytes.subarray(s,i);return r!==void 0?r.to(a):a}case"array":{let n=[];const{layout:r}=t,s=()=>{const a=Es(r,e);n.push(a)};let i=null;if("length"in t&&t.length!==void 0?i=t.length:"lengthSize"in t&&t.lengthSize!==void 0&&(i=mi(e,t.lengthSize,t.lengthEndianness)),i!==null)for(let a=0;a<i;++a)s();else for(;e.offset<e.end;)s();return n}case"switch":{const n=mi(e,t.idSize,t.idEndianness),{layouts:r}=t;if(r.length===0)throw new Error("switch item has no layouts");const s=typeof r[0][0]=="number",i=r.find(([d])=>s?d===n:d[0]===n);if(i===void 0)throw new Error(`unknown id value: ${n}`);const[a,o]=i,c=Es(o,e);return{[t.idTag??"id"]:s?n:a[1],...c}}}}function mb(t,e){return Pi(t,e)}function id(t,e){switch(t.binary){case"bytes":if(_r(t)){const{custom:n}=t;return n===void 0||typeof n.from!="function"?Pi(t.layout,n?n.from:e):e}case"int":case"uint":{const{custom:n}=t;return t?.omit?void 0:ob(n)?n:fb(n)?n.to:e}case"array":return Array.isArray(e)?e.map(n=>Pi(t.layout,n)):void 0;case"switch":{const n=e[t.idTag??"id"],[r,s]=t.layouts.find(([i])=>(Array.isArray(i)?i[1]:i)==n);return{[t.idTag??"id"]:n,...Pi(s,e)}}}}function Pi(t,e){if(e=e??{},Is(t))return id(t,e);const n={};for(const r of t){const s=id(r,e[r.name]??{});s!==void 0&&(n[r.name]=s)}return n}function bb(t,e){const[n,r]=gb(t);if(!n)throw new Error("Cannot uniquely distinguished the given layouts");return s=>{const i=r(s);return i.length===0?null:i[0]}}function zo(t){return t.reduce((e,n)=>e|BigInt(1)<<BigInt(n),BigInt(0))}function bi(t){const e=[];for(let n=0n;t>0n;t>>=1n,++n)t&1n&&e.push(Number(n));return e}function ze(t){let e=0;for(;t>0n;t>>=1n)e+=Number(t&1n);return e}var ad=t=>t>0?2**(8*t)-1:1/0;function od(t,e,n){switch(t.binary){case"int":case"uint":{const r=fr(t.custom)?t.custom:fr(t?.custom?.from)?t.custom.from:null;if(r!==null&&e!==null){const s={bytes:new Uint8Array(t.size),offset:0};Jn(r,t.size,s,t.endianness,t.binary==="int"),n.push([e,s.bytes])}return[t.size,t.size]}case"bytes":{const r="lengthSize"in t?t.lengthSize|0:0;let s,i;if(_r(t)){const{custom:o}=t;if(o!==void 0&&typeof o.from!="function")s=Uu(t),i=s.length;else{const c=ku(t.layout);c!==null&&(i=c)}}else{const{custom:o}=t;ss(o)?(s=o,i=o.length):is(o)&&(s=o.from,i=o.from.length)}if(r>0&&e!==null){if(i!==void 0){const o={bytes:new Uint8Array(r),offset:0},c=t.lengthEndianness;Jn(i,r,o,c,!1),n.push([e,o.bytes])}e+=r}if(s!==void 0)return e!==null&&n.push([e,s]),[r+s.length,r+s.length];const a="size"in t&&t.size!==void 0?[t.size,t.size]:void 0;if(_r(t)){const o=Ni(t.layout,e,n);return a??[r+o[0],r+o[1]]}return a??[r,ad(r)]}case"array":{if("length"in t){let s=[];const i=Ni(t.layout,0,s);if(e!==null)if(i[0]!==i[1]){if(t.length>0)for(const[a,o]of s)n.push([e+a,o])}else for(let a=0;a<t.length;++a)for(const[o,c]of s)n.push([e+o+a*i[0],c]);return[t.length*i[0],t.length*i[1]]}const r=t.lengthSize|0;return[r,ad(r)]}case"switch":{const r=t.layouts.map(o=>[]),{idSize:s,idEndianness:i}=t,a=t.layouts.map(([o,c],d)=>{const l=Array.isArray(o)?o[0]:o;if(e!==null){const m={bytes:new Uint8Array(s),offset:0};Jn(l,s,m,i),r[d].push([0,m.bytes])}const f=Ni(c,e!==null?s:null,r[d]);return[f[0]+s,f[1]+s]});return e!==null&&r.every(o=>o.length>0)&&(()=>{const o=Math.min(...r.map(d=>d.at(-1)[0]+d.at(-1)[1].length)),c=r.map(d=>0);for(let d=0;d<o;){let l=null,f=0;for(;f<r.length;){let m=c[f];const b=r[f],[w,E]=b[m];if(w+E.length<=d){if(++m,m===b.length)return;c[f]=m,d=b[m][0];break}const y=E[d-w];if(l===null&&(l=y),y!==l){++d;break}++f}f===r.length&&(n.push([e+d,new Uint8Array([l])]),++d)}})(),[Math.min(...a.map(([o])=>o)),Math.max(...a.map(([o,c])=>c))]}}}function Ni(t,e,n){if(!Array.isArray(t))return od(t,e,n);let r=[0,0];for(const s of t){const i=od(s,e,n);r[0]+=i[0],r[1]+=i[1],e!==null&&(e=i[0]===i[1]?e+i[0]:null)}return r}function pb(t){const e=new Map;let n=[];const r=s=>{for(;n.length>0&&n[0][0]<s;){const i=n[0][0]+1,a=n.findIndex(([o])=>i<=o);a===-1?n=[]:n.splice(0,a),e.set(i,zo(n.map(([,o])=>o)))}};for(const[[s,i],a]of t){r(s);const o=n.findIndex(([c])=>c>i);o===-1?n.push([i,a]):n.splice(o,0,[i,a]),e.set(s,zo(n.map(([,c])=>c)))}return r(1/0),e}function gb(t){if(t.length===0)throw new Error("Cannot discriminate empty set of layouts");const e=0n,n=(1n<<BigInt(t.length))-1n,r=t.map(()=>[]),s=t.map((A,S)=>Ni(A,0,r[S])),i=s.map((A,S)=>[A,S]).sort(([[A]],[[S]])=>A-S),a=(()=>{let A=n;const S=new Map;for(const[[T],U]of i)A^=1n<<BigInt(U),S.set(T,A);return S})(),o=pb(i),c=t.length-Math.max(...[...o.values()].map(A=>ze(A))),d=A=>{let S=n;for(const[T,U]of a){if(A<T)break;S=U}return S},l=A=>{let S=e;for(const[T,U]of o){if(A<T)break;S=U}return S},f=Array.from({length:Math.max(...r.map(A=>A.length>0?A.at(-1)[0]+A.at(-1)[1].length:0))}).map(()=>[]);for(let A=0;A<r.length;++A)for(const[S,T]of r[A])for(let U=0;U<T.length;++U)f[S+U].push([T[U],A]);let m=[];for(const[A,S]of f.entries()){const T=d(A),U=T^zo(S.map(([,V])=>V)),R=n^T,v=new Map;for(const[V,Q]of S)v.has(V)||v.set(V,e),v.set(V,v.get(V)|1n<<BigInt(Q));let M=t.length-Math.max(ze(U),ze(R));for(const V of v.values()){const Q=S.length-ze(V)+ze(R);M=Math.min(M,Q)}if(M!==0){if(M===t.length-1)return[!0,V=>bi(V.length<=A?R:v.get(V[A])??e)];m.push([M,A,R,v,U])}}if(c===t.length-1)return[!0,A=>bi(l(A.length))];m.sort(([A],[S])=>S-A);let b=!0;const w=new Map,E=new Map,y=(A,S)=>{w.set(A,S),E.has(ze(A))||E.set(ze(A),[]),E.get(ze(A)).push(A)},p=(A,S)=>{if(ze(A)<=1||w.has(A))return;let T=0;const U=new Map;for(const v of bi(A)){const M=s[v][0],V=o.get(M)&A;U.set(M,V),T=Math.max(T,ze(V))}T=ze(A)-T;const R=[];for(const[v,M,V,Q,q]of S){const N=new Map;let O=0;for(const[H,G]of Q){const z=G&A;ze(z)>0&&(N.set(H,z),O+=ze(z))}const C=V&A;let k=N.size>0?v:0;for(const H of N.values()){const G=O-ze(H)+ze(C);k=Math.min(k,G)}if(k!==0){if(k===ze(A)-1){y(A,[M,C,N]);return}R.push([k,M,C,N,q&A])}}if(T===ze(A)-1){y(A,"size");return}if(R.sort(([v],[M])=>M-v),R.length>0&&R[0][0]>=T){const[,v,M,V,Q]=R[0];y(A,[v,M,V]),p(M,R);for(const q of V.values())p(q|Q,R.slice(1));return}if(T>0){y(A,"size");for(const v of U.values())p(v,R);return}y(A,"indistinguishable"),b=!1};p(n,m);const x=A=>{for(let S=ze(A)+1;S<t.length-2;++S)for(const T of E.get(S)??[])if((A&T)==A)return w.get(T);throw new Error("Implementation error in layout discrimination algorithm")};return[b,A=>{let S=n,T=w.get(S);for(;T!=="indistinguishable";){if(T==="size")S&=l(A.length);else{const[U,R,v]=T;if(A.length<=U)S&=R;else{const M=A[U];for(const[V,Q]of v)V!==M&&(S^=S&Q);S^=S&R}}if(ze(S)<=1)break;T=w.get(S)??x(S)}return bi(S)}]}var Ea=(t,e)=>({...t,binary:"bytes",...e===void 0?{}:cb(e)?{layout:e}:e instanceof Uint8Array||is(e)||!Array.isArray(e)?{custom:e}:{layout:e[0],custom:e[1]}});function yb(t,e){const n=Object.fromEntries(t.map(([s,i])=>[i,s])),r=Object.fromEntries(t);return{binary:"uint",size:e?.size??1,endianness:e?.endianness??"big",custom:{to:s=>{const i=n[s];if(i===void 0)throw new Error(`Invalid enum value: ${s}`);return i},from:s=>r[s]}}}function Ab(t,e){return{binary:"uint",size:Math.ceil(t.length/8),custom:{to:n=>{const r={};for(let s=0;s<t.length;++s)t[s]&&(r[t[s]]=(BigInt(n)&1n<<BigInt(s))!==0n);return r},from:n=>{let r=0n;for(let s=0;s<t.length;++s)t[s]&&n[t[s]]&&(r|=1n<<BigInt(s));return t.length>Aa?r:Number(r)}}}}function Eb(t,e){return Number(Number(t).toFixed(e))}function Ri(t,e){if(wb(t,e),t=t.toString(),t.includes("e"))throw new Error("Scientific notation is not supported yet by Amount");const n=t.split(".");if(n.length>2)throw"Too many decimals";let[r,s]=n.length===0?["0",""]:n.length===1?[n[0],""]:n;if(s=s.padEnd(e,"0"),s.length>e){if(BigInt(s.substring(e))!==0n)throw new Error("Amount: invalid input. Decimals too low.");s=s.substring(0,e)}return{amount:BigInt(r+s).toString(),decimals:e}}function Oi(t,e){if(t.decimals<=e)return t;const n=BigInt(t.decimals-e);return{amount:(Qe(t)/10n**n*10n**n).toString(),decimals:t.decimals}}function kr(t,e){if(t.decimals===e)return t;if(t.amount==="0")return{amount:t.amount,decimals:e};const n=e-t.decimals;if(n>0)return{amount:t.amount+"0".repeat(n),decimals:e};if(BigInt(t.amount.substring(t.amount.length+n))===0n)return{amount:t.amount.substring(0,t.amount.length+n),decimals:e};throw new Error(`scaleAmount(${JSON.stringify(t)}, ${e}) would result in altered amount. Use truncateAmount first if you intended to truncate it.`)}function ln(t,e){return{amount:t.toString(),decimals:e}}function Qe(t){return Pu(t),BigInt(t.amount)}function wa(t,e){Pu(t);let n=t.amount.substring(0,t.amount.length-t.decimals).padStart(1,"0"),r=t.amount.substring(t.amount.length-t.decimals).padStart(t.decimals,"0");if(e!==void 0){for(;r.length>e&&r[r.length-1]==="0";)r=r.substring(0,r.length-1);r=r.padEnd(e,"0")}else r=r.replace(/0+$/,"");return r.length>0?`${n}.${r}`:n}function Fs(t){return Number(wa(t))}function cd(t,e){return wa(ln(t,e))}function wb(t,e){if(typeof t=="number"){if(!isFinite(t))throw new Error("Amount: invalid input. Amount must be finite");if(t<0)throw new Error("Amount: invalid input. Amount cannot be negative")}else if(!/^[0-9\.]*$/.test(t))throw new Error("Amount: invalid input. Must only contain digits.");if(!isFinite(e))throw new Error("Amount: invalid input. Decimals must be finite")}function Pu(t){if(!/^[0-9]*$/.test(t.amount))throw new Error("Amount: invalid input. Must only contain digits.");if(t.decimals<0)throw new Error("Amount: invalid input. Decimals must be >= 0");if(!isFinite(t.decimals))throw new Error("Amount: invalid input. Decimals must be a finite number.")}function Nu(t,e){const r=Qe(t)*e/100000n;return ln(r,t.decimals)}const ks=(t=0,e=0,n=0)=>new Date(Date.now()+(t*60*60+e*60+n)*1e3);/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function jr(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Bb(t,...e){if(!jr(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function Ru(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(n=>typeof n=="string"):e.every(n=>Number.isSafeInteger(n)):!1}function Ou(t){if(typeof t!="function")throw new Error("function expected");return!0}function hr(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function as(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Yi(t){if(!Array.isArray(t))throw new Error("array expected")}function Zi(t,e){if(!Ru(!0,e))throw new Error(`${t}: array of strings expected`)}function Oc(t,e){if(!Ru(!1,e))throw new Error(`${t}: array of numbers expected`)}function qs(...t){const e=i=>i,n=(i,a)=>o=>i(a(o)),r=t.map(i=>i.encode).reduceRight(n,e),s=t.map(i=>i.decode).reduce(n,e);return{encode:r,decode:s}}function Ba(t){const e=typeof t=="string"?t.split(""):t,n=e.length;Zi("alphabet",e);const r=new Map(e.map((s,i)=>[s,i]));return{encode:s=>(Yi(s),s.map(i=>{if(!Number.isSafeInteger(i)||i<0||i>=n)throw new Error(`alphabet.encode: digit index outside alphabet "${i}". Allowed: ${t}`);return e[i]})),decode:s=>(Yi(s),s.map(i=>{hr("alphabet.decode",i);const a=r.get(i);if(a===void 0)throw new Error(`Unknown letter: "${i}". Allowed: ${t}`);return a}))}}function Ca(t=""){return hr("join",t),{encode:e=>(Zi("join.decode",e),e.join(t)),decode:e=>(hr("join.decode",e),e.split(t))}}function Cb(t,e="="){return as(t),hr("padding",e),{encode(n){for(Zi("padding.encode",n);n.length*t%8;)n.push(e);return n},decode(n){Zi("padding.decode",n);let r=n.length;if(r*t%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;r>0&&n[r-1]===e;r--)if((r-1)*t%8===0)throw new Error("padding: invalid, string has too much padding");return n.slice(0,r)}}}function ld(t,e,n){if(e<2)throw new Error(`convertRadix: invalid from=${e}, base cannot be less than 2`);if(n<2)throw new Error(`convertRadix: invalid to=${n}, base cannot be less than 2`);if(Yi(t),!t.length)return[];let r=0;const s=[],i=Array.from(t,o=>{if(as(o),o<0||o>=e)throw new Error(`invalid integer: ${o}`);return o}),a=i.length;for(;;){let o=0,c=!0;for(let d=r;d<a;d++){const l=i[d],f=e*o,m=f+l;if(!Number.isSafeInteger(m)||f/e!==o||m-l!==f)throw new Error("convertRadix: carry overflow");const b=m/n;o=m%n;const w=Math.floor(b);if(i[d]=w,!Number.isSafeInteger(w)||w*n+o!==m)throw new Error("convertRadix: carry overflow");if(c)w?c=!1:r=d;else continue}if(s.push(o),c)break}for(let o=0;o<t.length-1&&t[o]===0;o++)s.push(0);return s.reverse()}const Mu=(t,e)=>e===0?t:Mu(e,t%e),ea=(t,e)=>t+(e-Mu(t,e)),Mi=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function Go(t,e,n,r){if(Yi(t),e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(n<=0||n>32)throw new Error(`convertRadix2: wrong to=${n}`);if(ea(e,n)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${n} carryBits=${ea(e,n)}`);let s=0,i=0;const a=Mi[e],o=Mi[n]-1,c=[];for(const d of t){if(as(d),d>=a)throw new Error(`convertRadix2: invalid data word=${d} from=${e}`);if(s=s<<e|d,i+e>32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${e}`);for(i+=e;i>=n;i-=n)c.push((s>>i-n&o)>>>0);const l=Mi[i];if(l===void 0)throw new Error("invalid carry");s&=l-1}if(s=s<<n-i&o,!r&&i>=e)throw new Error("Excess padding");if(!r&&s>0)throw new Error(`Non-zero padding: ${s}`);return r&&i>0&&c.push(s>>>0),c}function xb(t){as(t);const e=2**8;return{encode:n=>{if(!jr(n))throw new Error("radix.encode input should be Uint8Array");return ld(Array.from(n),e,t)},decode:n=>(Oc("radix.decode",n),Uint8Array.from(ld(n,t,e)))}}function Mc(t,e=!1){if(as(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(ea(8,t)>32||ea(t,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!jr(n))throw new Error("radix2.encode input should be Uint8Array");return Go(Array.from(n),8,t,!e)},decode:n=>(Oc("radix2.decode",n),Uint8Array.from(Go(n,t,8,e)))}}function dd(t){return Ou(t),function(...e){try{return t.apply(null,e)}catch{}}}function Db(t,e){return as(t),Ou(e),{encode(n){if(!jr(n))throw new Error("checksum.encode: input should be Uint8Array");const r=e(n).slice(0,t),s=new Uint8Array(n.length+t);return s.set(n),s.set(r,n.length),s},decode(n){if(!jr(n))throw new Error("checksum.decode: input should be Uint8Array");const r=n.slice(0,-t),s=n.slice(-t),i=e(r).slice(0,t);for(let a=0;a<t;a++)if(i[a]!==s[a])throw new Error("Invalid checksum");return r}}}const ud=qs(Mc(4),Ba("0123456789ABCDEF"),Ca("")),Fb=typeof Uint8Array.from([]).toBase64=="function"&&typeof Uint8Array.fromBase64=="function",Sb=(t,e)=>{hr("base64",t);const n=/^[A-Za-z0-9=+/]+$/,r="base64";if(t.length>0&&!n.test(t))throw new Error("invalid base64");return Uint8Array.fromBase64(t,{alphabet:r,lastChunkHandling:"strict"})},fd=Fb?{encode(t){return Bb(t),t.toBase64()},decode(t){return Sb(t)}}:qs(Mc(6),Ba("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),Cb(6),Ca("")),Tb=t=>qs(xb(58),Ba(t),Ca("")),ta=Tb("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),vb=t=>qs(Db(4,e=>t(t(e))),ta),Vo=qs(Ba("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),Ca("")),hd=[996825010,642813549,513874426,1027748829,705979059];function bs(t){const e=t>>25;let n=(t&33554431)<<5;for(let r=0;r<hd.length;r++)(e>>r&1)===1&&(n^=hd[r]);return n}function md(t,e,n=1){const r=t.length;let s=1;for(let i=0;i<r;i++){const a=t.charCodeAt(i);if(a<33||a>126)throw new Error(`Invalid prefix (${t})`);s=bs(s)^a>>5}s=bs(s);for(let i=0;i<r;i++)s=bs(s)^t.charCodeAt(i)&31;for(let i of e)s=bs(s)^i;for(let i=0;i<6;i++)s=bs(s);return s^=n,Vo.encode(Go([s%Mi[30]],30,5,!1))}function Ib(t){const e=t==="bech32"?1:734539939,n=Mc(5),r=n.decode,s=n.encode,i=dd(r);function a(f,m,b=90){hr("bech32.encode prefix",f),jr(m)&&(m=Array.from(m)),Oc("bech32.encode",m);const w=f.length;if(w===0)throw new TypeError(`Invalid prefix length ${w}`);const E=w+7+m.length;if(b!==!1&&E>b)throw new TypeError(`Length ${E} exceeds limit ${b}`);const y=f.toLowerCase(),p=md(y,m,e);return`${y}1${Vo.encode(m)}${p}`}function o(f,m=90){hr("bech32.decode input",f);const b=f.length;if(b<8||m!==!1&&b>m)throw new TypeError(`invalid string length: ${b} (${f}). Expected (8..${m})`);const w=f.toLowerCase();if(f!==w&&f!==f.toUpperCase())throw new Error("String must be lowercase or uppercase");const E=w.lastIndexOf("1");if(E===0||E===-1)throw new Error('Letter "1" must be present between prefix and data only');const y=w.slice(0,E),p=w.slice(E+1);if(p.length<6)throw new Error("Data must be at least 6 characters long");const x=Vo.decode(p).slice(0,-6),A=md(y,x,e);if(!p.endsWith(A))throw new Error(`Invalid checksum in ${f}: expected "${A}"`);return{prefix:y,words:x}}const c=dd(o);function d(f){const{prefix:m,words:b}=o(f,!1);return{prefix:m,words:b,bytes:r(b)}}function l(f,m){return a(f,s(m))}return{encode:a,decode:o,encodeFromBytes:l,decodeToBytes:d,decodeUnsafe:c,fromWords:r,fromWordsUnsafe:i,toWords:s}}const Lu=Ib("bech32"),Lc=(t,e)=>e.startsWith(t)?e.slice(t.length):e,kb=/^(?:0x)?[0-9a-fA-F]+$/,Xe={valid:t=>kb.test(t),decode:t=>ud.decode(Lc("0x",t).toUpperCase()),encode:(t,e=!1)=>(t=typeof t=="string"?at.encode(t):t,(e?"0x":"")+ud.encode(t).toLowerCase())},Ub=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,xa={valid:t=>Ub.test(t),decode:fd.decode,encode:t=>fd.encode(typeof t=="string"?at.encode(t):t)},Wu={decode:ta.decode,encode:t=>ta.encode(typeof t=="string"?at.encode(t):t)},Lr={decode:t=>(typeof t!="string"&&(t=Xe.encode(t,!0)),t===""||t==="0x"?0n:BigInt(t)),encode:(t,e=!1)=>Lr.toString(t,e),toString:(t,e=!1)=>{let n=t.toString(16);return n=n.length%2===1?n="0"+n:n,e?"0x"+n:n},toBytes:(t,e)=>{typeof t=="number"&&(t=Lr.toBigInt(t));const n=Xe.decode(Lr.toString(t));if(!e)return n;if(e<n.length)throw new Error(`Can't fit ${t} into ${e} bytes.`);return at.zpad(n,e)},toNumber:t=>{if(t>BigInt(Number.MAX_SAFE_INTEGER))throw new Error(`Invalid cast: ${t} exceeds MAX_SAFE_INTEGER`);return Number(t)},toBigInt:t=>{if(t>Number.MAX_SAFE_INTEGER)throw new Error(`Invalid cast: ${t} exceeds MAX_SAFE_INTEGER`);return BigInt(t)}},at={encode:t=>new TextEncoder().encode(t),decode:t=>new TextDecoder().decode(t),equals:(t,e)=>t.length===e.length&&t.every((n,r)=>n===e[r]),zpad:(t,e,n=!0)=>n?at.concat(new Uint8Array(e-t.length),t):at.concat(t,new Uint8Array(e-t.length)),concat:(...t)=>{const e=t.reduce((s,i)=>s+i.length,0),n=new Uint8Array(e);let r=0;return t.forEach(s=>{n.set(s,r),r+=s.length}),n}},Wc=[[1,"Solana"],[2,"Ethereum"],[4,"Bsc"],[5,"Polygon"],[6,"Avalanche"],[8,"Algorand"],[10,"Fantom"],[13,"Klaytn"],[14,"Celo"],[15,"Near"],[16,"Moonbeam"],[19,"Injective"],[20,"Osmosis"],[21,"Sui"],[22,"Aptos"],[23,"Arbitrum"],[24,"Optimism"],[26,"Pythnet"],[29,"Btc"],[30,"Base"],[32,"Sei"],[34,"Scroll"],[35,"Mantle"],[37,"Xlayer"],[38,"Linea"],[39,"Berachain"],[40,"Seievm"],[44,"Unichain"],[45,"Worldchain"],[46,"Ink"],[47,"HyperEVM"],[48,"Monad"],[50,"Mezo"],[51,"Fogo"],[52,"Sonic"],[53,"Converge"],[55,"Plume"],[57,"XRPLEVM"],[58,"Plasma"],[59,"CreditCoin"],[60,"Stacks"],[63,"Moca"],[3104,"Wormchain"],[4e3,"Cosmoshub"],[4001,"Evmos"],[4002,"Kujira"],[4003,"Neutron"],[4004,"Celestia"],[4005,"Stargaze"],[4006,"Seda"],[4007,"Dymension"],[4008,"Provenance"],[4009,"Noble"],[10002,"Sepolia"],[10003,"ArbitrumSepolia"],[10004,"BaseSepolia"],[10005,"OptimismSepolia"],[10006,"Holesky"],[10007,"PolygonSepolia"],[65e3,"HyperCore"]],[tA,Hu]=$n(Wc),Ks=ne(Wc,[1,0]),na=ne(Wc),Qs=t=>Ks.has(t),_o=t=>na.has(t),Rt=t=>{switch(typeof t){case"string":if(Qs(t))return Ks(t);break;case"number":if(_o(t))return t;break}throw Error(`Cannot convert to ChainId: ${t}`)},os=t=>{switch(typeof t){case"string":if(Qs(t))return t;break;case"number":if(_o(t))return na(t);break;case"bigint":if(_o(Number(t)))return na.get(Number(t));break}throw Error(`Cannot convert to Chain: ${t}`)},Hc=[["Evm",["Arbitrum","Avalanche","Base","Bsc","Celo","Ethereum","Fantom","Klaytn","Moonbeam","Optimism","Polygon","Sepolia","ArbitrumSepolia","BaseSepolia","OptimismSepolia","Holesky","PolygonSepolia","Mantle","Scroll","Xlayer","Linea","Berachain","Seievm","Unichain","Worldchain","Ink","HyperEVM","Monad","Mezo","Sonic","Converge","Plume","XRPLEVM","Plasma","CreditCoin","HyperCore","Moca"]],["Solana",["Solana","Pythnet","Fogo"]],["Cosmwasm",["Cosmoshub","Evmos","Injective","Kujira","Osmosis","Sei","Wormchain","Dymension","Neutron","Stargaze","Celestia","Seda","Provenance","Noble"]],["Btc",["Btc"]],["Algorand",["Algorand"]],["Sui",["Sui"]],["Aptos",["Aptos"]],["Near",["Near"]],["Stacks",["Stacks"]]];Su(Hc,0);const zu=ne(Hc),vt=ne(Hc,[1,0]),Pb=[["Evm","hex"],["Solana","base58"],["Cosmwasm","bech32"],["Btc","bech32"],["Algorand","algorandAppId"],["Sui","hex"],["Aptos","hex"],["Near","sha256"],["Stacks","keccak256"]],Nb=ne(Pb),cs={byAddress:(t,e)=>Object.values(t).find(n=>Gu(n.address,e)),native:t=>cs.byAddress(t,"native"),bySymbol:(t,e)=>{const n=Object.values(t).filter(r=>r.symbol===e);return n&&n.length>0?n:void 0},byKey:(t,e)=>{const n=Object.entries(t).find(([r])=>e===r);return n?n[1]:void 0}},Gu=(t,e)=>t.toLowerCase()===e.toLowerCase();var bd;(function(t){t[t.Finalized=1]="Finalized",t[t.Immediate=200]="Immediate",t[t.Safe=201]="Safe"})(bd||(bd={}));const Rb=[["Ethereum",32]];ne(Rb);const Ob=[["Solana",32],["Ethereum",72],["Bsc",15],["Optimism",512],["Base",512],["Arbitrum",4096],["Xlayer",300],["Scroll",999],["Mantle",512],["Worldchain",512],["Polygon",2],["Fantom",1],["Celo",1],["Moonbeam",1],["Avalanche",0],["Sui",0],["Algorand",0],["Aptos",0],["Klaytn",0],["Sei",0],["Near",0],["Osmosis",0],["Injective",0],["Berachain",1],["Seievm",1],["Unichain",1024],["Ink",512],["HyperEVM",1],["Monad",1],["Mezo",1],["Sonic",1],["Converge",4096],["Fogo",32],["Plume",4096],["Plasma",2],["XRPLEVM",1],["CreditCoin",3],["Cosmoshub",0],["Evmos",0],["Kujira",0],["Neutron",0],["Celestia",0],["Stargaze",0],["Dymension",0],["Provenance",0],["Noble",0],["Stacks",240],["Moca",0],["Sepolia",72],["ArbitrumSepolia",4096],["BaseSepolia",512],["OptimismSepolia",512],["PolygonSepolia",2]],Vu=ne(Ob),Mb=[["Algorand",3300],["Aptos",4e3],["Arbitrum",260],["ArbitrumSepolia",260],["Avalanche",2e3],["Base",2e3],["BaseSepolia",2e3],["Bsc",750],["Celo",5e3],["Cosmoshub",5e3],["Ethereum",15e3],["Evmos",2e3],["Fantom",2500],["Holesky",15e3],["HyperEVM",1e3],["HyperCore",1e3],["Injective",2500],["Klaytn",1e3],["Kujira",3e3],["Mantle",2e3],["Moonbeam",12e3],["Monad",1e3],["Near",1500],["Optimism",2e3],["OptimismSepolia",2e3],["Osmosis",6e3],["Polygon",2e3],["PolygonSepolia",2e3],["Scroll",3e3],["Sei",400],["Sepolia",15e3],["Solana",400],["Sui",3e3],["Unichain",1e3],["Xlayer",3e3],["Worldchain",2e3],["Ink",1e3],["Wormchain",5e3],["Btc",6e5],["Pythnet",400],["Dymension",5e3],["Celestia",5e3],["Neutron",5e3],["Stargaze",5e3],["Seda",7500],["Berachain",2e3],["Mezo",4e3],["Sonic",330],["Converge",100],["Fogo",400],["Plume",250],["Plasma",1e3],["XRPLEVM",5e3],["Seievm",400],["CreditCoin",15e3],["Stacks",15e3],["Moca",1e3]],_u=ne(Mb);function zc(t){const e=Vu.get(t);if(e===void 0)throw new Error("Cannot find finality for "+t);const n=_u.get(t);if(n===void 0)throw new Error("Cannot find block time for "+t);return e*n}const Lb=[["Evm",18],["Solana",9],["Sui",9],["Aptos",8],["Cosmwasm",6],["Algorand",6],["Btc",8],["Near",12],["Stacks",6]],Gc=ne(Lb),Wb=[["Mainnet",[["Ethereum",{name:"Etherscan",baseUrl:"https://etherscan.io/",endpoints:{tx:"tx/",account:"address/"}}],["Solana",{name:"Solana Explorer",baseUrl:"https://explorer.solana.com/",endpoints:{tx:"tx/",account:"address/"}}],["Polygon",{name:"PolygonScan",baseUrl:"https://polygonscan.com/",endpoints:{tx:"tx/",account:"address/"}}],["Bsc",{name:"BscScan",baseUrl:"https://bscscan.com/",endpoints:{tx:"tx/",account:"address/"}}],["Avalanche",{name:"Snowtrace",baseUrl:"https://snowtrace.io/",endpoints:{tx:"tx/",account:"address/"}}],["Fantom",{name:"FTMscan",baseUrl:"https://ftmscan.com/",endpoints:{tx:"tx/",account:"address/"}}],["Celo",{name:"Celo Explorer",baseUrl:"https://explorer.celo.org/mainnet/",endpoints:{tx:"tx/",account:"address/"}}],["Moonbeam",{name:"Moonscan",baseUrl:"https://moonscan.io/",endpoints:{tx:"tx/",account:"address/"}}],["Sui",{name:"Sui Explorer",baseUrl:"https://explorer.sui.io/",endpoints:{tx:"txblock/",account:"address/"}}],["Aptos",{name:"Aptos Explorer",baseUrl:"https://explorer.aptoslabs.com/",endpoints:{tx:"txn/",account:"account/"}}],["Sei",{name:"Sei Explorer",baseUrl:"https://sei.explorers.guru/",endpoints:{tx:"transaction/",account:"address/"}}],["Ink",{name:"Ink Explorer",baseUrl:"https://explorer.inkonchain.com/",endpoints:{tx:"tx/",account:"address/"}}],["Mezo",{name:"Mezo Explorer",baseUrl:"https://explorer.mezo.org/",endpoints:{tx:"tx/",account:"address/"}}],["HyperEVM",{name:"HyperEVMScan",baseUrl:"https://hyperevmscan.io/",endpoints:{tx:"tx/",account:"address/"}}],["HyperCore",{name:"HyperLiquid Explorer",baseUrl:"https://app.hyperliquid.xyz/explorer/",endpoints:{tx:"tx/",account:"address/"}}],["XRPLEVM",{name:"XRPL Explorer",baseUrl:"https://explorer.xrplevm.org/",endpoints:{tx:"tx/",account:"address/"}}],["Plume",{name:"Plume Explorer",baseUrl:"https://explorer.plume.org/",endpoints:{tx:"tx/",account:"address/"}}],["CreditCoin",{name:"CreditCoin Explorer",baseUrl:"https://creditcoin.blockscout.com/",endpoints:{tx:"tx/",account:"address/"}}],["Plasma",{name:"Plasma Explorer",baseUrl:"https://plasmascan.to/",endpoints:{tx:"tx/",account:"address/"}}],["Stacks",{name:"Stacks Explorer",baseUrl:"https://explorer.hiro.so/",endpoints:{tx:"txid/",account:"address/"}}],["Monad",{name:"Monad Explorer",baseUrl:"https://monadexplorer.com/",endpoints:{tx:"tx/",account:"address/"}}],["Moca",{name:"Moca Explorer",baseUrl:"https://scan.mocachain.org/",endpoints:{tx:"tx/",account:"address/"}}]]],["Testnet",[["Ethereum",{name:"Etherscan",baseUrl:"https://goerli.etherscan.io/",endpoints:{tx:"tx/",account:"address/"}}],["Polygon",{name:"PolygonScan",baseUrl:"https://mumbai.polygonscan.com/",endpoints:{tx:"tx/",account:"address/"}}],["Bsc",{name:"BscScan",baseUrl:"https://testnet.bscscan.com/",endpoints:{tx:"tx/",account:"address/"}}],["Avalanche",{name:"Snowtrace",baseUrl:"https://testnet.snowtrace.io/",endpoints:{tx:"tx/",account:"address/"}}],["Fantom",{name:"FTMscan",baseUrl:"https://testnet.ftmscan.com/",endpoints:{tx:"tx/",account:"address/"}}],["Celo",{name:"Celo Explorer",baseUrl:"https://explorer.celo.org/alfajores/",endpoints:{tx:"tx/",account:"address/"}}],["Moonbeam",{name:"Moonscan",baseUrl:"https://moonbase.moonscan.io/",endpoints:{tx:"tx/",account:"address/"}}],["Solana",{name:"Solana Explorer",baseUrl:"https://explorer.solana.com/",endpoints:{tx:"tx/",account:"address/"},networkQuery:{default:"Devnet",Testnet:"?cluster=testnet",Devnet:"?cluster=devnet"}}],["Sui",{name:"Sui Explorer",baseUrl:"https://explorer.sui.io/",endpoints:{tx:"txblock/",account:"address/"},networkQuery:{default:"Testnet",Testnet:"?network=testnet",Devnet:"?network=devnet"}}],["Aptos",{name:"Aptos Explorer",baseUrl:"https://explorer.aptoslabs.com/",endpoints:{tx:"txn/",account:"account/"},networkQuery:{default:"Testnet",Testnet:"?network=testnet",Devnet:"?network=devnet"}}],["Sei",{name:"Sei Explorer",baseUrl:"https://sei.explorers.guru/",endpoints:{tx:"transaction/",account:"address/"}}],["Ink",{name:"Ink Sepolia Explorer",baseUrl:"https://explorer-sepolia.inkonchain.com/",endpoints:{tx:"tx/",account:"address/"}}],["Mezo",{name:"Mezo Explorer",baseUrl:"https://explorer.test.mezo.org/",endpoints:{tx:"tx/",account:"address/"}}],["XRPLEVM",{name:"XRPL Explorer",baseUrl:"https://explorer.testnet.xrplevm.org/",endpoints:{tx:"tx/",account:"address/"}}],["Plume",{name:"Plume Explorer",baseUrl:"https://testnet-explorer.plume.org/",endpoints:{tx:"tx/",account:"address/"}}],["Plasma",{name:"Plasma Testnet Explorer",baseUrl:"https://testnet.plasmascan.to/",endpoints:{tx:"tx/",account:"address/"}}],["CreditCoin",{name:"CreditCoin Explorer",baseUrl:"https://creditcoin-testnet.blockscout.com/",endpoints:{tx:"tx/",account:"address/"}}],["Moca",{name:"Moca Explorer",baseUrl:"https://testnet-scan.mocachain.org/",endpoints:{tx:"tx/",account:"address/"}}]]]],Hb=ne(Wb),zb=(t,e)=>t==="Devnet"?void 0:Hb.get(t,e),Gb=[["Mainnet",[["Ethereum","https://ethereum-rpc.publicnode.com"],["Solana","https://api.mainnet-beta.solana.com"],["Polygon","https://polygon-bor-rpc.publicnode.com"],["Bsc","https://bsc-rpc.publicnode.com"],["Avalanche","https://avalanche-c-chain-rpc.publicnode.com"],["Fantom","https://rpcapi.fantom.network"],["Celo","https://celo-rpc.publicnode.com"],["Moonbeam","https://moonbeam-rpc.publicnode.com"],["Sui","https://rpc.mainnet.sui.io"],["Aptos","https://fullnode.mainnet.aptoslabs.com/v1"],["Arbitrum","https://arb1.arbitrum.io/rpc"],["Optimism","https://mainnet.optimism.io"],["Base","https://mainnet.base.org"],["Osmosis","https://osmosis-rpc.polkachu.com"],["Cosmoshub","https://cosmos-rpc.publicnode.com:443"],["Evmos","https://evmos-rpc.polkachu.com"],["Injective","https://sentry.tm.injective.network"],["Wormchain","https://wormchain-rpc.quickapi.com"],["Sei","https://sei-rpc.polkachu.com/"],["Algorand","https://mainnet-api.algonode.cloud"],["Dymension","https://dymension-rpc.polkachu.com/"],["Stargaze","https://stargaze-rpc.polkachu.com/"],["Celestia","https://celestia-rpc.polkachu.com/"],["Neutron","https://neutron-rpc.polkachu.com/"],["Provenance","https://rpc.provenance.io/"],["Noble","https://noble-rpc.polkachu.com/"],["Linea","https://rpc.linea.build"],["Scroll","https://scroll-rpc.publicnode.com"],["Xlayer","https://xlayerrpc.okx.com/"],["Mantle","https://rpc.mantle.xyz"],["Klaytn","https://public-en.node.kaia.io"],["Berachain","https://rpc.berachain.com"],["Seievm","https://evm-rpc.sei-apis.com"],["Unichain","https://mainnet.unichain.org"],["Worldchain","https://worldchain-mainnet.g.alchemy.com/public"],["Ink","https://rpc-qnd.inkonchain.com"],["Sonic","https://rpc.soniclabs.com"],["HyperEVM","https://rpc.hyperliquid.xyz/evm"],["Mezo","https://jsonrpc-mezo.boar.network/"],["Plume","https://rpc.plume.org/"],["XRPLEVM","https://rpc.xrplevm.org/"],["Plasma","https://rpc.plasma.to/"],["CreditCoin","https://mainnet3.creditcoin.network/"],["Stacks","https://api.mainnet.hiro.so"],["Monad",""],["Fogo","https://mainnet.fogo.io"],["Moca","https://rpc.mocachain.org/"]]],["Testnet",[["Bsc","https://data-seed-prebsc-1-s3.binance.org:8545"],["Avalanche","https://api.avax-test.network/ext/bc/C/rpc"],["Fantom","https://rpc.testnet.fantom.network"],["Celo","https://alfajores-forno.celo-testnet.org"],["Solana","https://api.devnet.solana.com"],["Moonbeam","https://rpc.api.moonbase.moonbeam.network"],["Sui","https://fullnode.testnet.sui.io"],["Aptos","https://fullnode.testnet.aptoslabs.com/v1"],["Sei","https://sei-testnet-rpc.polkachu.com"],["Injective","https://testnet.sentry.tm.injective.network"],["Osmosis","https://rpc.testnet.osmosis.zone"],["Cosmoshub","https://rpc.sentry-02.theta-testnet.polypore.xyz"],["Evmos","https://evmos-testnet-rpc.polkachu.com"],["Wormchain","https://gateway.testnet.xlabs.xyz/"],["Sepolia","https://ethereum-sepolia.publicnode.com"],["Algorand","https://testnet-api.algonode.cloud"],["ArbitrumSepolia","https://sepolia-rollup.arbitrum.io/rpc"],["OptimismSepolia","https://sepolia.optimism.io"],["BaseSepolia","https://sepolia.base.org"],["PolygonSepolia","https://rpc-amoy.polygon.technology/"],["Mantle","https://rpc.testnet.mantle.xyz"],["Berachain","https://bepolia.rpc.berachain.com/"],["Seievm","https://evm-rpc-testnet.sei-apis.com/"],["Linea","https://rpc.sepolia.linea.build"],["Xlayer","https://testrpc.xlayer.tech/"],["Scroll","https://scroll-sepolia-rpc.publicnode.com"],["Klaytn","https://public-en-kairos.node.kaia.io"],["Unichain","https://sepolia.unichain.org"],["Worldchain","https://worldchain-sepolia.g.alchemy.com/public"],["Ink","https://rpc-qnd-sepolia.inkonchain.com"],["HyperEVM","https://api.hyperliquid-testnet.xyz/evm"],["Monad","https://testnet-rpc.monad.xyz"],["Noble","https://noble-testnet-rpc.polkachu.com/"],["Mezo","https://rpc.test.mezo.org"],["Sonic","https://rpc.blaze.soniclabs.com"],["Converge","https://rpc-converge-testnet-1.t.conduit.xyz"],["Fogo","https://testnet.fogo.io"],["Plume","https://testnet-rpc.plume.org"],["XRPLEVM","https://rpc.testnet.xrplevm.org/"],["Plasma","https://testnet-rpc.plasma.to"],["CreditCoin","https://rpc.cc3-testnet.creditcoin.network"],["Stacks","https://api.testnet.hiro.so"],["Moca","https://testnet-rpc.mocachain.org/"]]],["Devnet",[["Ethereum","http://eth-devnet:8545"],["Bsc","http://eth-devnet2:8545"],["Solana","http://solana-devnet:8899"],["Stacks","http://localhost:3999"]]]],Vb=ne(Gb),ju=(t,e)=>Vb.get(t,e)??"",qu=[["Mainnet",[["Aptos",1n],["Algorand","mainnet-v1.0"],["Near","mainnet"],["Cosmoshub","cosmoshub-4"],["Evmos","evmos_9001-2"],["Injective","injective-1"],["Osmosis","osmosis-1"],["Sei","pacific-1"],["Wormchain","wormchain"],["Kujira","kaiyo-1"],["Solana","5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d"],["Sui","35834a8a"],["Arbitrum",42161n],["Avalanche",43114n],["Base",8453n],["Bsc",56n],["Celo",42220n],["Ethereum",1n],["Fantom",250n],["Klaytn",8217n],["Moonbeam",1284n],["Optimism",10n],["Polygon",137n],["Neutron","neutron-1"],["Stargaze","stargaze-1"],["Celestia","celestia"],["Dymension","dymension_1100-1"],["Provenance","pio-mainnet-1"],["Noble","noble-1"],["Xlayer",196n],["Mantle",5000n],["Scroll",534352n],["Linea",59144n],["Berachain",80094n],["Seievm",1329n],["Unichain",130n],["Worldchain",480n],["Ink",57073n],["Sonic",146n],["HyperEVM",999n],["HyperCore",65000n],["Mezo",31612n],["Plume",98866n],["XRPLEVM",1440000n],["Stacks",1n],["CreditCoin",102030n],["Monad",143n],["Fogo","CDLtwKnaCoK157uaHQDj4fHu72AyD2519Cphmpiq6hvT"],["Moca",2288n]]],["Testnet",[["Aptos",2n],["Algorand","testnet-v1.0"],["Near","testnet"],["Cosmoshub","theta-testnet-001"],["Evmos","evmos_9000-4"],["Injective","injective-888"],["Osmosis","osmo-test-5"],["Sei","atlantic-2"],["Wormchain","wormchain-testnet-0"],["Kujira","harpoon-4"],["Solana","EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG"],["Sui","4c78adac"],["Arbitrum",421613n],["Avalanche",43113n],["Base",84531n],["Bsc",97n],["Celo",44787n],["Ethereum",5n],["Fantom",4002n],["Klaytn",1001n],["Moonbeam",1287n],["Optimism",420n],["Polygon",80001n],["Sepolia",11155111n],["ArbitrumSepolia",421614n],["BaseSepolia",84532n],["OptimismSepolia",11155420n],["PolygonSepolia",80002n],["Holesky",17000n],["Neutron","pion-1"],["Celestia","mocha-4"],["Seda","seda-1-testnet"],["Noble","grand-1"],["Mantle",5003n],["Scroll",534351n],["Berachain",80069n],["Seievm",1328n],["Unichain",1301n],["Worldchain",4801n],["Ink",763373n],["HyperEVM",998n],["HyperCore",65000n],["Xlayer",195n],["Linea",59141n],["Monad",10143n],["Mezo",31611n],["Sonic",57054n],["Converge",52085145n],["Fogo","9GGSFo95raqzZxWqKM5tGYvJp5iv4Dm565S4r8h5PEu9"],["Plume",98867n],["XRPLEVM",1449000n],["Stacks",2147483648n],["Moca",222888n]]],["Devnet",[["Aptos",0n],["Algorand","sandnet-v1.0"],["Bsc",1397n],["Ethereum",1337n],["Injective","injective_devnet_fake"],["Solana","8wF6jKV3cKwyaVkWcoV9KpDqmkjvEYno9hKZrKx8TbZn"],["Stacks",2147483648n]]]],Vc=ne(qu),_b=ne(qu,[2,[0,1]]);function Ku(t,e){const r=_b(e).filter(([s,i])=>vt(i)===t);if(r.length!==1)throw new Error(`Platform ${t} has multiple chains with native chain id ${e}`);return r[0]}const jb=[["Mainnet","https://iris-api.circle.com/v1/attestations"],["Testnet","https://iris-api-sandbox.circle.com/v1/attestations"]],pd=ne(jb),qb=[["Mainnet",[["Ethereum","0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"],["Avalanche","0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"],["Optimism","0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"],["Arbitrum","0xaf88d065e77c8cC2239327C5EDb3A432268e5831"],["Solana","EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"],["Base","0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"],["Polygon","0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"],["Sui","0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC"],["Aptos","0xbae207659db88bea0cbead6da0ed00aac12edcdda169e591cd41c94180b46f3b"],["Unichain","0x078D782b760474a361dDA0AF3839290b0EF57AD6"],["Sonic","0x29219dd400f2Bf60E5a23d13Be72B486D4038894"],["Linea","0x176211869cA2b568f2A7D4EE941E073a821EE1ff"],["Worldchain","0x79A02482A880bCE3F13e09Da970dC34db4CD24d1"],["Seievm","0xe15fC38F6D8c56aF07bbCBe3BAf5708A2Bf42392"],["HyperEVM","0xb88339CB7199b77E23DB6E890353E22632Ba630f"],["Plume","0x222365EF19F7947e5484218551B56bb3965Aa7aF"],["Ink","0x2D270e6886d130D724215A266106e6832161EAEd"],["HyperCore","0xaf88d065e77c8cC2239327C5EDb3A432268e5831"],["Monad","0x754704Bc059F8C67012fEd69BC8A327a5aafb603"]]],["Testnet",[["Sepolia","0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238"],["Avalanche","0x5425890298aed601595a70AB815c96711a31Bc65"],["OptimismSepolia","0x5fd84259d66Cd46123540766Be93DFE6D43130D7"],["ArbitrumSepolia","0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"],["Solana","4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU"],["BaseSepolia","0x036CbD53842c5426634e7929541eC2318f3dCF7e"],["Polygon","0x9999f7Fea5938fD3b1E26A12c3f2fb024e194f97"],["Sui","0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29::usdc::USDC"],["Aptos","0x69091fbab5f7d635ee7ac5098cf0c1efbe31d68fec0f2cd565e8d168daf52832"],["Unichain","0x31d0220469e10c4E71834a79b1f276d740d3768F"],["Sonic","0xA4879Fed32Ecbef99399e5cbC247E533421C4eC6"],["Linea","0xFEce4462D57bD51A6A552365A011b95f0E16d9B7"],["Seievm","0x4fCF1784B31630811181f670Aea7A7bEF803eaED"],["HyperEVM","0x2B3370eE501B4a559b57D449569354196457D8Ab"]]]],Ss=ne(qb),_c=[["Mainnet",[["Ethereum",0],["Avalanche",1],["Optimism",2],["Arbitrum",3],["Solana",5],["Base",6],["Polygon",7],["Sui",8],["Aptos",9],["Unichain",10]]],["Testnet",[["Sepolia",0],["Avalanche",1],["OptimismSepolia",2],["ArbitrumSepolia",3],["Solana",5],["BaseSepolia",6],["Polygon",7],["Sui",8],["Aptos",9],["Unichain",10]]]],Qu=ne(_c,[[0,1],2]),jo=ne(_c,[[0,2],1]),[nA,rA]=$n(_c),Us=(t,e)=>Qu.has(t,e),gd=(t,e)=>jo.has(t,e),yd=(t,e)=>Ss.has(t,e),Li=(t,e)=>{switch(typeof e){case"string":if(Us(t,e))return e;break;case"number":if(gd(t,e))return jo(t,e);break;case"bigint":const n=Number(e);if(gd(t,n))return jo(t,n);break}throw Error(`Cannot convert to Chain: ${e}`)},Kb=[["Mainnet",[["Solana","worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth"],["Ethereum","0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B"],["Bsc","0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B"],["Polygon","0x7A4B5a56256163F07b2C80A7cA55aBE66c4ec4d7"],["Avalanche","0x54a8e5f9c4CbA08F9943965859F6c34eAF03E26c"],["Algorand","842125965"],["Fantom","0x126783A6Cb203a3E35344528B26ca3a0489a1485"],["Klaytn","0x0C21603c4f3a6387e241c0091A7EA39E43E90bb7"],["Celo","0xa321448d90d4e5b0A732867c18eA198e75CAC48E"],["Near","contract.wormhole_crypto.near"],["Injective","inj17p9rzwnnfxcjp32un9ug7yhhzgtkhvl9l2q74d"],["Aptos","0x5bc11445584a763c1fa7ed39081f1b920954da14e04b32440cba863d03e19625"],["Sui","0xaeab97f96cf9877fee2883315d459552b2b921edc16d7ceac6eab944dd88919c"],["Moonbeam","0xC8e2b0cD52Cf01b0Ce87d389Daa3d414d4cE29f3"],["Arbitrum","0xa5f208e072434bC67592E4C49C1B991BA79BCA46"],["Optimism","0xEe91C335eab126dF5fDB3797EA9d6aD93aeC9722"],["Pythnet","H3fxXJ86ADW2PNuDDmZJg6mzTtPxkYCpNuQUTgmJ7AjU"],["Base","0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6"],["Xlayer","0x194B123c5E96B9b2E49763619985790Dc241CAC0"],["Sei","sei1gjrrme22cyha4ht2xapn3f08zzw6z3d4uxx6fyy9zd5dyr3yxgzqqncdqn"],["Wormchain","wormhole1ufs3tlq4umljk0qfe8k5ya0x6hpavn897u2cnf9k0en9jr7qarqqaqfk2j"],["Neutron","neutron16rerygcpahqcxx5t8vjla46ym8ccn7xz7rtc6ju5ujcd36cmc7zs9zrunh"],["Scroll","0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6"],["Mantle","0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6"],["Berachain","0xCa1D5a146B03f6303baF59e5AD5615ae0b9d146D"],["Seievm","0xCa1D5a146B03f6303baF59e5AD5615ae0b9d146D"],["Unichain","0xCa1D5a146B03f6303baF59e5AD5615ae0b9d146D"],["Worldchain","0xcbcEe4e081464A15d8Ad5f58BB493954421eB506"],["Ink","0xCa1D5a146B03f6303baF59e5AD5615ae0b9d146D"],["HyperEVM","0x7C0faFc4384551f063e05aee704ab943b8B53aB3"],["Mezo","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["Plume","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["Linea","0x0C56aebD76E6D9e4a1Ec5e94F4162B4CBbf77b32"],["XRPLEVM","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["CreditCoin","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["Monad","0x194B123c5E96B9b2E49763619985790Dc241CAC0"],["Fogo","worm2mrQkG1B1KTz37erMfWN8anHkSK24nzca7UD8BB"]]],["Testnet",[["Solana","3u8hJUVTA4jH1wYAyUur7FFZVQ8H635K3tSHHF4ssjQ5"],["Ethereum","0x706abc4E45D419950511e474C7B9Ed348A4a716c"],["Bsc","0x68605AD7b15c732a30b1BbC62BE8F2A509D74b4D"],["Polygon","0x0CBE91CF822c73C2315FB05100C2F714765d5c20"],["Avalanche","0x7bbcE28e64B3F8b84d876Ab298393c38ad7aac4C"],["Algorand","86525623"],["Fantom","0x1BB3B4119b7BA9dfad76B0545fb3F531383c3bB7"],["Klaytn","0x1830CC6eE66c84D2F177B94D544967c774E624cA"],["Celo","0x88505117CA88e7dd2eC6EA1E13f0948db2D50D56"],["Near","wormhole.wormhole.testnet"],["Injective","inj1xx3aupmgv3ce537c0yce8zzd3sz567syuyedpg"],["Osmosis","osmo1hggkxr0hpw83f8vuft7ruvmmamsxmwk2hzz6nytdkzyup9krt0dq27sgyx"],["Aptos","0x5bc11445584a763c1fa7ed39081f1b920954da14e04b32440cba863d03e19625"],["Sui","0x31358d198147da50db32eda2562951d53973a0c0ad5ed738e9b17d88b213d790"],["Moonbeam","0xa5B7D85a8f27dd7907dc8FdC21FA5657D5E2F901"],["Arbitrum","0xC7A204bDBFe983FCD8d8E61D02b475D4073fF97e"],["Optimism","0x6b9C8671cdDC8dEab9c719bB87cBd3e782bA6a35"],["Pythnet","EUrRARh92Cdc54xrDn6qzaqjA77NRrCcfbr8kPwoTL4z"],["Base","0x23908A62110e21C04F3A4e011d24F901F911744A"],["Sei","sei1nna9mzp274djrgzhzkac2gvm3j27l402s4xzr08chq57pjsupqnqaj0d5s"],["Sepolia","0x4a8bc80Ed5a4067f1CCf107057b8270E0cC11A78"],["Wormchain","wormhole16jzpxp0e8550c9aht6q9svcux30vtyyyyxv5w2l2djjra46580wsazcjwp"],["ArbitrumSepolia","0x6b9C8671cdDC8dEab9c719bB87cBd3e782bA6a35"],["BaseSepolia","0x79A1027a6A159502049F10906D333EC57E95F083"],["OptimismSepolia","0x31377888146f3253211EFEf5c676D41ECe7D58Fe"],["Holesky","0xa10f2eF61dE1f19f586ab8B6F2EbA89bACE63F7a"],["Neutron","neutron1enf63k37nnv9cugggpm06mg70emcnxgj9p64v2s8yx7a2yhhzk2q6xesk4"],["Mantle","0x376428e7f26D5867e69201b275553C45B09EE090"],["PolygonSepolia","0x6b9C8671cdDC8dEab9c719bB87cBd3e782bA6a35"],["Scroll","0x055F47F1250012C6B20c436570a76e52c17Af2D5"],["Berachain","0xBB73cB66C26740F31d1FabDC6b7A46a038A300dd"],["Seievm","0xBB73cB66C26740F31d1FabDC6b7A46a038A300dd"],["Unichain","0xBB73cB66C26740F31d1FabDC6b7A46a038A300dd"],["Worldchain","0xe5E02cD12B6FcA153b0d7fF4bF55730AE7B3C93A"],["Ink","0xBB73cB66C26740F31d1FabDC6b7A46a038A300dd"],["HyperEVM","0xBB73cB66C26740F31d1FabDC6b7A46a038A300dd"],["Xlayer","0xA31aa3FDb7aF7Db93d18DDA4e19F811342EDF780"],["Linea","0x79A1027a6A159502049F10906D333EC57E95F083"],["Monad","0xBB73cB66C26740F31d1FabDC6b7A46a038A300dd"],["Mezo","0x268557122Ffd64c85750d630b716471118F323c8"],["Converge","0x556B259cFaCd9896B2773310080c7c3bcE90Ff01"],["Fogo","BhnQyKoQQgpuRTRo6D8Emz93PvXCYfVgHhnrR4T3qhw4"],["Plume","0x81705b969cDcc6FbFde91a0C6777bE0EF3A75855"],["XRPLEVM","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["Plasma","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["CreditCoin","0xaBf89de706B583424328B54dD05a8fC986750Da8"],["Moca","0xaBf89de706B583424328B54dD05a8fC986750Da8"]]],["Devnet",[["Solana","Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o"],["Ethereum","0xC89Ce4735882C9F0f0FE26686c53074E09B0D550"],["Bsc","0xC89Ce4735882C9F0f0FE26686c53074E09B0D550"],["Algorand","1004"],["Near","wormhole.test.near"],["Aptos","0xde0036a9600559e295d5f6802ef6f3f802f510366e0c23912b0655d972166017"],["Sui","0x5a5160ca3c2037f4b4051344096ef7a48ebf4400b3f385e57ea90e1628a8bde0"],["Wormchain","wormhole17p9rzwnnfxcjp32un9ug7yhhzgtkhvl9jfksztgw5uh69wac2pgshdnj3k"],["Stacks","ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM"]]]],$u=[["Mainnet",[["Solana","wormDTUJ6AWPNvk59vGQbDvGJmqbDTdgWgAqcLBCgUb"],["Ethereum","0x3ee18B2214AFF97000D974cf647E7C347E8fa585"],["Bsc","0xB6F6D86a8f9879A9c87f643768d9efc38c1Da6E7"],["Polygon","0x5a58505a96D1dbf8dF91cB21B54419FC36e93fdE"],["Avalanche","0x0e082F06FF657D94310cB8cE8B0D9a04541d8052"],["Algorand","842126029"],["Fantom","0x7C9Fc5741288cDFdD83CeB07f3ea7e22618D79D2"],["Klaytn","0x5b08ac39EAED75c0439FC750d9FE7E1F9dD0193F"],["Celo","0x796Dff6D74F3E27060B71255Fe517BFb23C93eed"],["Near","contract.portalbridge.near"],["Injective","inj1ghd753shjuwexxywmgs4xz7x2q732vcnxxynfn"],["Aptos","0x576410486a2da45eee6c949c995670112ddf2fbeedab20350d506328eefc9d4f"],["Sui","0xc57508ee0d4595e5a8728974a4a93a787d38f339757230d441e895422c07aba9"],["Moonbeam","0xb1731c586ca89a23809861c6103f0b96b3f57d92"],["Arbitrum","0x0b2402144Bb366A632D14B83F244D2e0e21bD39c"],["Optimism","0x1D68124e65faFC907325e3EDbF8c4d84499DAa8b"],["Base","0x8d2de8d2f73F1F4cAB472AC9A881C9b123C79627"],["Xlayer","0x5537857664B0f9eFe38C9f320F75fEf23234D904"],["Sei","sei1smzlm9t79kur392nu9egl8p8je9j92q4gzguewj56a05kyxxra0qy0nuf3"],["Wormchain","wormhole1466nf3zuxpya8q9emxukd7vftaf6h4psr0a07srl5zw74zh84yjq4lyjmh"],["Scroll","0x24850c6f61C438823F01B7A3BF2B89B72174Fa9d"],["Mantle","0x24850c6f61C438823F01B7A3BF2B89B72174Fa9d"],["Berachain","0x3Ff72741fd67D6AD0668d93B41a09248F4700560"],["Seievm","0x3Ff72741fd67D6AD0668d93B41a09248F4700560"],["Unichain","0x3Ff72741fd67D6AD0668d93B41a09248F4700560"],["Worldchain","0xc309275443519adca74c9136b02A38eF96E3a1f6"],["Ink","0x3Ff72741fd67D6AD0668d93B41a09248F4700560"],["XRPLEVM","0x47F5195163270345fb4d7B9319Eda8C64C75E278"],["Linea","0x167E0752de62cb76EFc0Fbb165Bd342c6e2Bb251"],["Monad","0x0B2719cdA2F10595369e6673ceA3Ee2EDFa13BA7"],["Fogo","wormQuCVWSSmPdjVmEzAWxAXViVyTSWnLyhff5hVYGS"]]],["Testnet",[["Solana","DZnkkTmCiFWfYTfT41X3Rd1kDgozqzxWaHqsw6W4x2oe"],["Ethereum","0xF890982f9310df57d00f659cf4fd87e65adEd8d7"],["Bsc","0x9dcF9D205C9De35334D646BeE44b2D2859712A09"],["Polygon","0x377D55a7928c046E18eEbb61977e714d2a76472a"],["Avalanche","0x61E44E506Ca5659E6c0bba9b678586fA2d729756"],["Algorand","86525641"],["Fantom","0x599CEa2204B4FaECd584Ab1F2b6aCA137a0afbE8"],["Klaytn","0xC7A13BE098720840dEa132D860fDfa030884b09A"],["Celo","0x05ca6037eC51F8b712eD2E6Fa72219FEaE74E153"],["Near","token.wormhole.testnet"],["Injective","inj1q0e70vhrv063eah90mu97sazhywmeegp7myvnh"],["Aptos","0x576410486a2da45eee6c949c995670112ddf2fbeedab20350d506328eefc9d4f"],["Sui","0x6fb10cdb7aa299e9a4308752dadecb049ff55a892de92992a1edbd7912b3d6da"],["Moonbeam","0xbc976D4b9D57E57c3cA52e1Fd136C45FF7955A96"],["Arbitrum","0x23908A62110e21C04F3A4e011d24F901F911744A"],["ArbitrumSepolia","0xC7A204bDBFe983FCD8d8E61D02b475D4073fF97e"],["Optimism","0xC7A204bDBFe983FCD8d8E61D02b475D4073fF97e"],["OptimismSepolia","0x99737Ec4B815d816c49A385943baf0380e75c0Ac"],["Base","0xA31aa3FDb7aF7Db93d18DDA4e19F811342EDF780"],["BaseSepolia","0x86F55A04690fd7815A3D802bD587e83eA888B239"],["Sei","sei1jv5xw094mclanxt5emammy875qelf3v62u4tl4lp5nhte3w3s9ts9w9az2"],["Sepolia","0xDB5492265f6038831E89f495670FF909aDe94bd9"],["Wormchain","wormhole1aaf9r6s7nxhysuegqrxv0wpm27ypyv4886medd3mrkrw6t4yfcnst3qpex"],["Holesky","0x76d093BbaE4529a342080546cAFEec4AcbA59EC6"],["Mantle","0x75Bfa155a9D7A3714b0861c8a8aF0C4633c45b5D"],["PolygonSepolia","0xC7A204bDBFe983FCD8d8E61D02b475D4073fF97e"],["Scroll","0x22427d90B7dA3fA4642F7025A854c7254E4e45BF"],["Xlayer","0xdA91a06299BBF302091B053c6B9EF86Eff0f930D"],["Berachain","0xa10f2eF61dE1f19f586ab8B6F2EbA89bACE63F7a"],["Seievm","0x23908A62110e21C04F3A4e011d24F901F911744A"],["Unichain","0xa10f2eF61dE1f19f586ab8B6F2EbA89bACE63F7a"],["Worldchain","0x430855B4D43b8AEB9D2B9869B74d58dda79C0dB2"],["Ink","0x376428e7f26D5867e69201b275553C45B09EE090"],["HyperEVM","0x4a8bc80Ed5a4067f1CCf107057b8270E0cC11A78"],["Linea","0xC7A204bDBFe983FCD8d8E61D02b475D4073fF97e"],["Monad","0xF323dcDe4d33efe83cf455F78F9F6cc656e6B659"],["Mezo","0xA31aa3FDb7aF7Db93d18DDA4e19F811342EDF780"],["Fogo","78HdStBqCMioGii9D8mF3zQaWDqDZBQWTUwjjpdmbJKX"],["XRPLEVM","0x7d8eBc211C4221eA18E511E4f0fD50c5A539f275"],["Moca","0xF97B81E513f53c7a6B57Bd0b103a6c295b3096C5"]]],["Devnet",[["Solana","B6RHG3mfcckmrYN1UhmJzyS1XX3fZKbkeUcpJe9Sy3FE"],["Ethereum","0x0290FB167208Af455bB137780163b7B7a9a10C16"],["Bsc","0x0290FB167208Af455bB137780163b7B7a9a10C16"],["Algorand","1006"],["Near","token.test.near"],["Aptos","0x84a5f374d29fc77e370014dce4fd6a55b58ad608de8074b0be5571701724da31"],["Sui","0xa6a3da85bbe05da5bfd953708d56f1a3a023e7fb58e5a824a3d4de3791e8f690"],["Wormchain","wormhole1ghd753shjuwexxywmgs4xz7x2q732vcnkm6h2pyv9s6ah3hylvrqtm7t3h"]]]],Ju=[["Mainnet",[["Ethereum","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Bsc","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Polygon","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Avalanche","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Fantom","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Celo","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Sui","0x57f4e0ba41a7045e29d435bc66cc4175f381eb700e6ec16d4fdfe92e5a4dff9f"],["Solana","3vxKRPwUTiEkeUVyoZ9MXFe1V71sRLbLqu1gRYaWmehQ"],["Base","0xaE8dc4a7438801Ec4edC0B035EcCCcF3807F4CC1"],["Moonbeam","0xcafd2f0a35a4459fa40c0517e17e6fa2939441ca"],["Arbitrum","0xaE8dc4a7438801Ec4edC0B035EcCCcF3807F4CC1"],["Optimism","0xaE8dc4a7438801Ec4edC0B035EcCCcF3807F4CC1"]]],["Testnet",[["Ethereum","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Bsc","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Polygon","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Avalanche","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Fantom","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Celo","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Sui","0xb30040e5120f8cb853b691cb6d45981ae884b1d68521a9dc7c3ae881c0031923"],["Base","0xae8dc4a7438801ec4edc0b035eccccf3807f4cc1"],["Moonbeam","0x9563a59c15842a6f322b10f69d1dd88b41f2e97b"],["Solana","3bPRWXqtSfUaCw3S4wdgvypQtsSzcmvDeaqSqPDkncrg"],["Sepolia",""],["ArbitrumSepolia","0xaE8dc4a7438801Ec4edC0B035EcCCcF3807F4CC1"],["OptimismSepolia","0xaE8dc4a7438801Ec4edC0B035EcCCcF3807F4CC1"],["BaseSepolia",""]]]],Xu=[["Mainnet",[["Arbitrum",{relayer:"0x04C98824a64d75CD1E9Bc418088b4c9A99048153",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Avalanche",{relayer:"0x8849F05675E034b54506caB84450c8C82694a786",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Base",{relayer:"0xD8B736EF27Fc997b1d00F22FE37A58145D3BDA07",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Berachain",{relayer:"0xFAeFa20CB3759AEd2310E25015F05d62D8567A3F",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Bsc",{relayer:"0x2513515340fF71DD5AF02fC1BdB9615704d91524",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Celo",{relayer:"0xe478DEe705BEae591395B08934FA19F54df316BE",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Ethereum",{relayer:"0xa8969F3f8D97b3Ed89D4e2EC19B6B0CfD504b212",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Ink",{relayer:"0x4bFB47F4c8A904d2C24e73601D175FE3a38aAb5B",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Moonbeam",{relayer:"0xF6b9616C63Fa48D07D82c93CE02B5d9111c51a3d",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Optimism",{relayer:"0x37aC29617AE74c750a1e4d55990296BAF9b8De73",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Polygon",{relayer:"0x1d98CA4221516B9ac4869F5CeA7E6bb9C41609D6",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Scroll",{relayer:"0x05129e142e7d5A518D81f19Db342fBF5f7E26A18",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Seievm",{relayer:"0x7C129bc8F6188d12c0d1BBDE247F134148B97618",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Solana",{relayer:"tbr7Qje6qBzPwfM52csL5KFi8ps5c5vDyiVVBLYVdRf"}],["Unichain",{relayer:"0x9Bca817F67f01557aeD615130825A28F4C5f3b87",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Worldchain",{relayer:"0xc0565Bd29b34603C0383598E16843d95Ae9c4f65",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["XRPLEVM",{relayer:"0x37bCc9d175124F77Bfce68589d2a8090eF846B85",relayerWithReferrer:"0x13a35c075D6Acc1Fb9BddFE5FE38e7672789e4db"}],["Monad",{relayer:"0xf7E051f93948415952a2239582823028DacA948e",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Fogo",{relayer:"tbr7Qje6qBzPwfM52csL5KFi8ps5c5vDyiVVBLYVdRf"}]]],["Testnet",[["Avalanche",{relayer:"0x10Ce9a35883C44640e8B12fea4Cc1e77F77D8c52",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["BaseSepolia",{relayer:"0x523d25D33B975ad72283f73B1103354352dBCBb8",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Fogo",{relayer:"tbr7Qje6qBzPwfM52csL5KFi8ps5c5vDyiVVBLYVdRf"}],["Monad",{relayer:"0x5Ba2c39cF0624BB5fBe94E919519aEA0DdD68454",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Sepolia",{relayer:"0xb0b2119067cF04fa959f654250BD49fE1BD6F53c",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}],["Solana",{relayer:"tbr7Qje6qBzPwfM52csL5KFi8ps5c5vDyiVVBLYVdRf"}],["XRPLEVM",{relayer:"0xb00224c60fe6ab134c8544dc29350286545f8dcc",relayerWithReferrer:"0x17CFAAf9e8a5ABb1eee758dB9040F945c9EAC907"}],["Mezo",{relayer:"0x2002a44b1106DF83671Fb419A2079a75e2a34808",relayerWithReferrer:"0x412f30e9f8B4a1e99eaE90209A6b00f5C3cc8739"}]]]],Yu=[["Mainnet",[["Aptos","0x11aa75c059e1a7855be66b931bf340a2e0973274ac16b5f519c02ceafaf08a18"],["Arbitrum","0x3980f8318fc03d79033Bbb421A622CDF8d2Eeab4"],["Avalanche","0x4661F0E629E4ba8D04Ee90080Aee079740B00381"],["Base","0x9E1936E91A4a5AE5A5F75fFc472D6cb8e93597ea"],["Berachain","0x0Dd7a5a32311b8D87A615Cc7f079B632D3d5e2D3"],["Bsc","0xeC8cCCD058DbF28e5D002869Aa9aFa3992bf4ee0"],["Celo","0xe6Ea5087c6860B94Cf098a403506262D8F28cF05"],["CreditCoin","0xd2e420188f17607Aa6344ee19c3e76Cf86CA7BDe"],["Ethereum","0x84EEe8dBa37C36947397E1E11251cA9A06Fc6F8a"],["HyperEVM","0xd7717899cc4381033Bc200431286D0AC14265F78"],["Ink","0x3e44a5F45cbD400acBEF534F51e616043B211Ddd"],["Linea","0x23aF2B5296122544A9A7861da43405D5B15a9bD3"],["Mezo","0x0f9b8E144Cc5C5e7C0073829Afd30F26A50c5606"],["Moonbeam","0x85D06449C78064c2E02d787e9DC71716786F8D19"],["Optimism","0x85B704501f6AE718205C0636260768C4e72ac3e7"],["Polygon","0x0B23efA164aB3eD08e9a39AC7aD930Ff4F5A5e81"],["Scroll","0xcFAdDE24640e395F5A71456A825D0D7C3741F075"],["Seievm","0x25f1c923fb7a5aefa5f0a2b419fc70f2368e66e5"],["Solana","execXUrAsMnqMmTHj5m7N1YQgsDz3cwGLYCYyuDRciV"],["Sonic","0x3Fdc36b4260Da38fBDba1125cCBD33DD0AC74812"],["Sui","0xdb0fe8bb1e2b5be628adbea0636063325073e1070ee11e4281457dfd7f158235"],["Unichain","0x764dD868eAdD27ce57BCB801E4ca4a193d231Aed"],["Worldchain","0x8689b4E6226AdC8fa8FF80aCc3a60AcE31e8804B"],["XRPLEVM","0x8345E90Dcd92f5Cf2FAb0C8E2A56A5bc2c30d896"],["Monad","0xC04dE634982cAdF2A677310b73630B7Ac56A3f65"],["Fogo","execXUrAsMnqMmTHj5m7N1YQgsDz3cwGLYCYyuDRciV"]]],["Testnet",[["Aptos","0x139717c339f08af674be77143507a905aa28cbc67a0e53e7095c07b630d73815"],["ArbitrumSepolia","0xBF161de6B819c8af8f2230Bcd99a9B3592f6F87b"],["Avalanche","0x4661F0E629E4ba8D04Ee90080Aee079740B00381"],["BaseSepolia","0x51B47D493CBA7aB97e3F8F163D6Ce07592CE4482"],["Converge","0xAab9935349B9c08e0e970720F6D640d5B91C293E"],["Fogo","execXUrAsMnqMmTHj5m7N1YQgsDz3cwGLYCYyuDRciV"],["Monad","0xC04dE634982cAdF2A677310b73630B7Ac56A3f65"],["OptimismSepolia","0x5856651eB82aeb6979B4954317194d48e1891b3c"],["Plume","0x8fc2FbA8F962fbE89a9B02f03557a011c335A455"],["Seievm","0x25f1c923Fb7A5aEFA5F0A2b419fC70f2368e66e5"],["Sepolia","0xD0fb39f5a3361F21457653cB70F9D0C9bD86B66B"],["Solana","execXUrAsMnqMmTHj5m7N1YQgsDz3cwGLYCYyuDRciV"],["Sui","0x4000cfe2955d8355b3d3cf186f854fea9f787a457257056926fde1ec977670eb"],["XRPLEVM","0x4d9525D94D275dEB495b7C8840b154Ae04cfaC2A"],["Mezo","0x0f9b8E144Cc5C5e7C0073829Afd30F26A50c5606"]]]],Qb=[["Mainnet",[["Solana","WnFt12ZrnzZrFZkt2xsNsaNWoQribnuQ5B5FrDbwDhD"],["Ethereum","0x6FFd7EdE62328b3Af38FCD61461Bbfc52F5651fE"],["Bsc","0x5a58505a96D1dbf8dF91cB21B54419FC36e93fdE"],["Polygon","0x90BBd86a6Fe93D3bc3ed6335935447E75fAb7fCf"],["Avalanche","0xf7B6737Ca9c4e08aE573F75A97B73D7a813f5De5"],["Fantom","0xA9c7119aBDa80d4a4E0C06C8F4d8cF5893234535"],["Klaytn","0x3c3c561757BAa0b78c5C025CdEAa4ee24C1dFfEf"],["Celo","0xA6A377d75ca5c9052c9a77ED1e865Cc25Bd97bf3"],["Aptos","0x1bdffae984043833ed7fe223f7af7a3f8902d04129b14f801823e64827da7130"],["Moonbeam","0x453cfbe096c0f8d763e8c5f24b441097d577bde2"],["Arbitrum","0x3dD14D553cFD986EAC8e3bddF629d82073e188c8"],["Base","0xDA3adC6621B2677BEf9aD26598e6939CF0D92f88"],["Optimism","0xfE8cD454b4A1CA468B57D79c0cc77Ef5B6f64585"]]],["Testnet",[["Solana","2rHhojZ7hpu1zA91nvZmT8TqWWvMcKmmNBCr2mKTtMq4"],["Ethereum","0xD8E4C2DbDd2e2bd8F1336EA691dBFF6952B1a6eB"],["Bsc","0xcD16E5613EF35599dc82B24Cb45B5A93D779f1EE"],["Polygon","0x51a02d0dcb5e52F5b92bdAA38FA013C91c7309A9"],["Avalanche","0xD601BAf2EEE3C028344471684F6b27E789D9075D"],["Fantom","0x63eD9318628D26BdCB15df58B53BB27231D1B227"],["Klaytn","0x94c994fC51c13101062958b567e743f1a04432dE"],["Celo","0xaCD8190F647a31E56A656748bC30F69259f245Db"],["Moonbeam","0x98A0F4B96972b32Fcb3BD03cAeB66A44a6aB9Edb"],["Arbitrum","0xEe3dB83916Ccdc3593b734F7F2d16D630F39F1D0"],["Optimism","0x23908A62110e21C04F3A4e011d24F901F911744A"],["Base","0xF681d1cc5F25a3694E348e7975d7564Aa581db59"],["Sepolia","0x6a0B52ac198e4870e5F3797d5B403838a5bbFD99"],["Aptos","0x1bdffae984043833ed7fe223f7af7a3f8902d04129b14f801823e64827da7130"],["ArbitrumSepolia","0x23908A62110e21C04F3A4e011d24F901F911744A"],["BaseSepolia","0x268557122Ffd64c85750d630b716471118F323c8"],["OptimismSepolia","0x27812285fbe85BA1DF242929B906B31EE3dd1b9f"],["Holesky","0xc8941d483c45eF8FB72E4d1F9dDE089C95fF8171"],["PolygonSepolia","0x23908A62110e21C04F3A4e011d24F901F911744A"],["Mantle","0xD7D732C8Bf5eBF620EA55b5828eae20418eEF083"],["Scroll","0x47B9a1406BEe29a3001BFEB7e45aE45fFFB40c18"]]],["Devnet",[["Solana","NFTWqJR8YnRVqPDvTJrYuLrQDitTG5AScqbeghi4zSA"],["Ethereum","0x26b4afb60d6c903165150c6f0aa14f8016be4aec"],["Bsc","0x26b4afb60d6c903165150c6f0aa14f8016be4aec"],["Aptos","0x46da3d4c569388af61f951bdd1153f4c875f90c2991f6b2d0a38e2161a40852c"]]]],$b=[["Mainnet",[["Ethereum","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Bsc","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Polygon","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Avalanche","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Fantom","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Klaytn","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Celo","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Moonbeam","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Base","0x706f82e9bb5b0813501714ab5974216704980e31"],["Arbitrum","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Optimism","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Scroll","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Mantle","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Xlayer","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Berachain","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Seievm","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Ink","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Worldchain","0x1520cc9e779c56dab5866bebfb885c86840c33d3"],["Unichain","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Mezo","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"],["Plume","0x27428DD2d3DD32A4D7f7C497eAaa23130d894911"]]],["Testnet",[["Ethereum","0x28D8F1Be96f97C1387e94A53e00eCcFb4E75175a"],["Bsc","0x80aC94316391752A193C1c47E27D382b507c93F3"],["Polygon","0x0591C25ebd0580E0d4F27A82Fc2e24E7489CB5e0"],["Avalanche","0xA3cF45939bD6260bcFe3D66bc73d60f19e49a8BB"],["Fantom","0x7B1bD7a6b4E61c2a123AC6BC2cbfC614437D0470"],["Celo","0x306B68267Deb7c5DfCDa3619E22E9Ca39C374f84"],["Seievm","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["Moonbeam","0x0591C25ebd0580E0d4F27A82Fc2e24E7489CB5e0"],["Arbitrum","0xAd753479354283eEE1b86c9470c84D42f229FF43"],["Optimism","0x01A957A525a5b7A72808bA9D10c389674E459891"],["Base","0xea8029CD7FCAEFFcD1F53686430Db0Fc8ed384E1"],["Sepolia","0x7B1bD7a6b4E61c2a123AC6BC2cbfC614437D0470"],["ArbitrumSepolia","0x7B1bD7a6b4E61c2a123AC6BC2cbfC614437D0470"],["BaseSepolia","0x93BAD53DDfB6132b0aC8E37f6029163E63372cEE"],["OptimismSepolia","0x93BAD53DDfB6132b0aC8E37f6029163E63372cEE"],["Berachain","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["Unichain","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["Ink","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["Mezo","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["XRPLEVM","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["Monad","0x362fca37E45fe1096b42021b543f462D49a5C8df"],["PolygonSepolia","0x362fca37E45fe1096b42021b543f462D49a5C8df"]]],["Devnet",[["Ethereum","0xcC680D088586c09c3E0E099a676FA4b6e42467b4"],["Bsc","0xcC680D088586c09c3E0E099a676FA4b6e42467b4"]]]],Zu=[["Mainnet",[["Ethereum",{tokenMessenger:"0xbd3fa81b58ba92a82136038b25adec7066af3155",messageTransmitter:"0x0a992d191deec32afe36203ad87d7d289a738f81",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0xAaDA05BD399372f0b0463744C09113c137636f6a"}],["Avalanche",{tokenMessenger:"0x6b25532e1060ce10cc3b0a99e5683b91bfde6982",messageTransmitter:"0x8186359af5f57fbb40c6b14a588d2a59c0c29880",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x09Fb06A271faFf70A651047395AaEb6265265F13"}],["Optimism",{tokenMessenger:"0x2B4069517957735bE00ceE0fadAE88a26365528f",messageTransmitter:"0x4d41f22c5a0e5c74090899e5a8fb597a8842b3e8",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["Arbitrum",{tokenMessenger:"0x19330d10D9Cc8751218eaf51E8885D058642E08A",messageTransmitter:"0xC30362313FBBA5cf9163F0bb16a0e01f01A896ca",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["Base",{tokenMessenger:"0x1682Ae6375C4E4A97e4B583BC394c861A46D8962",messageTransmitter:"0xAD09780d193884d503182aD4588450C416D6F9D4",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x03faBB06Fa052557143dC28eFCFc63FC12843f1D"}],["Solana",{tokenMessenger:"CCTPiPYPc6AsJuwueEnWgSgucamXDZwBd53dQ11YiKX3",messageTransmitter:"CCTPmbSD7gX1bxKPAmg77w8oFzNFpaQiQUWD43TKaecd",wormholeRelayer:"",wormhole:""}],["Polygon",{tokenMessenger:"0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE",messageTransmitter:"0xF3be9355363857F3e001be68856A2f96b4C39Ba9",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x0FF28217dCc90372345954563486528aa865cDd6"}],["Sui",{tokenMessenger:"0x2aa6c5d56376c371f88a6cc42e852824994993cb9bab8d3e6450cbe3cb32b94e",messageTransmitter:"0x08d87d37ba49e785dde270a83f8e979605b03dc552b5548f26fdf2f49bf7ed1b",wormholeRelayer:"",wormhole:""}],["Aptos",{tokenMessenger:"0x9e6702a472080ea3caaf6ba9dfaa6effad2290a9ba9adaacd5af5c618e42782d",messageTransmitter:"0x177e17751820e4b4371873ca8c30279be63bdea63b88ed0f2239c2eea10f1772",wormholeRelayer:"",wormhole:""}],["Unichain",{tokenMessenger:"0x4e744b28E787c3aD0e810eD65A24461D4ac5a762",messageTransmitter:"0x353bE9E2E38AB1D19104534e4edC21c643Df86f4",wormholeRelayer:"",wormhole:""}]]],["Testnet",[["Sepolia",{tokenMessenger:"0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5",messageTransmitter:"0x7865fAfC2db2093669d92c0F33AeEF291086BEFD",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["Avalanche",{tokenMessenger:"0xeb08f243e5d3fcff26a9e38ae5520a669f4019d0",messageTransmitter:"0xa9fb1b3009dcb79e2fe346c16a604b8fa8ae0a79",wormholeRelayer:"0x774a70bbd03327c21460b60f25b677d9e46ab458",wormhole:"0x58f4c17449c90665891c42e14d34aae7a26a472e"}],["OptimismSepolia",{tokenMessenger:"0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5",messageTransmitter:"0x7865fAfC2db2093669d92c0F33AeEF291086BEFD",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["ArbitrumSepolia",{tokenMessenger:"0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5",messageTransmitter:"0xaCF1ceeF35caAc005e15888dDb8A3515C41B4872",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["Solana",{tokenMessenger:"CCTPiPYPc6AsJuwueEnWgSgucamXDZwBd53dQ11YiKX3",messageTransmitter:"CCTPmbSD7gX1bxKPAmg77w8oFzNFpaQiQUWD43TKaecd",wormholeRelayer:"",wormhole:""}],["BaseSepolia",{tokenMessenger:"0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5",messageTransmitter:"0x7865fAfC2db2093669d92c0F33AeEF291086BEFD",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["Polygon",{tokenMessenger:"0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5",messageTransmitter:"0xe09A679F56207EF33F5b9d8fb4499Ec00792eA73",wormholeRelayer:"0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2",wormhole:"0x2703483B1a5a7c577e8680de9Df8Be03c6f30e3c"}],["Sui",{tokenMessenger:"0x31cc14d80c175ae39777c0238f20594c6d4869cfab199f40b69f3319956b8beb",messageTransmitter:"0x4931e06dce648b3931f890035bd196920770e913e43e45990b383f6486fdd0a5",wormholeRelayer:"",wormhole:""}],["Aptos",{tokenMessenger:"0x5f9b937419dda90aa06c1836b7847f65bbbe3f1217567758dc2488be31a477b9",messageTransmitter:"0x081e86cebf457a0c6004f35bd648a2794698f52e0dde09a48619dcd3d4cc23d9",wormholeRelayer:"",wormhole:""}],["Unichain",{tokenMessenger:"0x8ed94B8dAd2Dc5453862ea5e316A8e71AAed9782",messageTransmitter:"0xbc498c326533d675cf571B90A2Ced265ACb7d086",wormholeRelayer:"",wormhole:""}]]]],Jb=[["Mainnet",[["Wormchain","wormhole14ejqjyq8um4p3xfqj74yld5waqljf88fz25yxnma0cngspxe3les00fpjx"]]],["Testnet",[["Wormchain","wormhole1ctnjk7an90lz5wjfvr3cf6x984a8cjnv8dpmztmlpcq4xteaa2xs9pwmzk"]]]],Xb=[["Mainnet",[["Sei","sei189adguawugk3e55zn63z8r9ll29xrjwca636ra7v7gxuzn98sxyqwzt47l"]]],["Testnet",[["Sei","sei1dkdwdvknx0qav5cp5kw68mkn3r99m3svkyjfvkztwh97dv2lm0ksj6xrak"]]]],Yb=[["Mainnet",[["Polygon",["Ethereum","0x86E4Dc95c7FBdBf52e33D563BbDB00823894C287"]],["Optimism",["Ethereum","0xdfe97868233d1aa22e815a266982f2cf17685a27"]],["Arbitrum",["Ethereum","0x1c479675ad559dc151f6ec7ed3fbf8cee79582b6"]]]],["Testnet",[["Polygon",["Ethereum","0x2890ba17efe978480615e330ecb65333b880928e"]],["Optimism",["Ethereum","0xe6dfba0953616bacab0c9a8ecb3a9bba77fc15c0"]],["Arbitrum",["Ethereum","0x45af9ed1d03703e480ce7d328fb684bb67da5049"]]]]],ef=[["Mainnet",[["Ethereum",{porticoUniswap:"0x48b6101128C0ed1E208b7C910e60542A2ee6f476",uniswapQuoterV2:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",porticoPancakeSwap:"0x4db1683d60e0a933A9A477a19FA32F472bB9d06e",pancakeSwapQuoterV2:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997"}],["Polygon",{porticoUniswap:"0x227bABe533fa9a1085f5261210E0B7137E44437B",uniswapQuoterV2:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",porticoPancakeSwap:void 0,pancakeSwapQuoterV2:void 0}],["Bsc",{porticoUniswap:"0x05498574BD0Fa99eeCB01e1241661E7eE58F8a85",uniswapQuoterV2:"0x78D78E420Da98ad378D7799bE8f4AF69033EB077",porticoPancakeSwap:"0xF352DC165783538A26e38A536e76DceF227d90F2",pancakeSwapQuoterV2:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997"}],["Avalanche",{porticoUniswap:"0xE565E118e75304dD3cF83dff409c90034b7EA18a",uniswapQuoterV2:"0xbe0F5544EC67e9B3b2D979aaA43f18Fd87E6257F",porticoPancakeSwap:void 0,pancakeSwapQuoterV2:void 0}],["Arbitrum",{porticoUniswap:"0x48fa7528bFD6164DdF09dF0Ed22451cF59c84130",uniswapQuoterV2:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",porticoPancakeSwap:"0xE70946692E2e56ae47BfAe2d93d31bd60952B090",pancakeSwapQuoterV2:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997"}],["Optimism",{porticoUniswap:"0x9ae506cDDd27DEe1275fd1fe6627E5dc65257061",uniswapQuoterV2:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",porticoPancakeSwap:void 0,pancakeSwapQuoterV2:void 0}],["Base",{porticoUniswap:"0x610d4DFAC3EC32e0be98D18DDb280DACD76A1889",uniswapQuoterV2:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",porticoPancakeSwap:"0x4568aa1eA0ED54db666c58B4526B3FC9BD9be9bf",pancakeSwapQuoterV2:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997"}],["Celo",{porticoUniswap:"0xE565E118e75304dD3cF83dff409c90034b7EA18a",uniswapQuoterV2:"0x82825d0554fA07f7FC52Ab63c961F330fdEFa8E8",porticoPancakeSwap:void 0,pancakeSwapQuoterV2:void 0}]]]],Zb=[["Mainnet",[["Solana","87MEvHZCXE3ML5rrmh5uX1FbShHmRXXS32xJDGbQ7h5t"],["Polygon","0x09959798B95d00a3183d20FaC298E4594E599eab"],["Arbitrum","0x1293a54e160D1cd7075487898d65266081A15458"],["Optimism","0x1293a54e160D1cd7075487898d65266081A15458"],["Base","0x09959798B95d00a3183d20FaC298E4594E599eab"]]]],e2=ne(Kb),t2=ne($u),n2=ne(Ju),qo=ne(Xu),r2=ne(Yu),s2=ne(Qb),i2=ne($b),Ad=ne(Jb),Ed=ne(Xb),wd=ne(ef),Wi=ne(Zb),Ko=ne(Zu);ne(Yb);const a2=ne($u,[0,1]),o2=ne(Ju,[0,1]),c2=ne(Xu,[0,1]);ne(Yu,[0,1]);const l2=ne(Zu,[0,1]),d2=ne(ef,[0,1]),jc=[["Mainnet",[["0x58CC3AE5C097b213cE3c81979e1B9f9570746AA5","JumpCrypto"],["0xfF6CB952589BDE862c25Ef4392132fb9D4A42157","Staked"],["0x114De8460193bdf3A2fCf81f86a09765F4762fD1","Figment"],["0x107A0086b32d7A0977926A205131d8731D39cbEB","ChainodeTech"],["0x8C82B2fd82FaeD2711d59AF0F2499D16e726f6b2","Inotel"],["0x11b39756C042441BE6D8650b69b54EbE715E2343","HashQuark"],["0x54Ce5B4D348fb74B958e8966e2ec3dBd4958a7cd","Chainlayer"],["0x15e7cAF07C4e3DC8e7C469f92C8Cd88FB8005a20","xLabs"],["0x74a3bf913953D695260D88BC1aA25A4eeE363ef0","Forbole"],["0x000aC0076727b35FBea2dAc28fEE5cCB0fEA768e","StakingFund"],["0xAF45Ced136b9D9e24903464AE889F5C8a723FC14","MoonletWallet"],["0xf93124b7c738843CBB89E864c862c38cddCccF95","P2PValidator"],["0xD2CC37A4dc036a8D232b48f62cDD4731412f4890","01Node"],["0xDA798F6896A3331F64b48c12D1D57Fd9cbe70811","MCF"],["0x71AA1BE1D36CaFE3867910F99C09e347899C19C3","Everstake"],["0x8192b6E7387CCd768277c17DAb1b7a5027c0b3Cf","ChorusOne"],["0x178e21ad2E77AE06711549CFBB1f9c7a9d8096e8","Syncnode"],["0x5E1487F35515d02A92753504a8D75471b9f49EdB","Triton"],["0x6FbEBc898F403E4773E95feB15E80C9A99c8348d","StakingFacilities"]]],["Testnet",[["0x13947Bd48b18E53fdAeEe77F3473391aC727C638","Testnet guardian"]]]],[sA,iA]=eb($n(Xi(jc)),[1,2]);ne(jc,[[0,2],1]);ne(jc,[1,[0,2]]);const qc=5,u2=[["Mainnet",[["Ethereum","0x18084fbA666a33d37592fA2633fD49a74DD93a88"],["Solana","6DNSN2BJsaPFdFFc1zP37kkeNe4Usc1Sqkzr9C9vPWcU"],["Polygon","0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b"],["Arbitrum","0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40"],["Optimism","0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40"],["Base","0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b"]]]],f2=ne(u2),h2=[["Mainnet","https://executor.labsapis.com/v0"],["Testnet","https://executor-testnet.labsapis.com/v0"]],Bd=ne(h2),m2=[["Mainnet",[["Sui","https://graphql.mainnet.sui.io/graphql"]]],["Testnet",[["Sui","https://graphql.testnet.sui.io/graphql"]]],["Devnet",[]]],b2=ne(m2),tf=(t,e)=>b2.get(t,e)??"",Dr=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function $s(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function qr(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function Lt(t,...e){if(!$s(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function Kc(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");qr(t.outputLen),qr(t.blockLen)}function mr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Qc(t,e){Lt(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function nf(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function gn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Hi(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Vt(t,e){return t<<32-e|t>>>e}function p2(t,e){return t<<e|t>>>32-e>>>0}const rf=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function sf(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}const g2=rf?t=>t:t=>sf(t);function y2(t){for(let e=0;e<t.length;e++)t[e]=sf(t[e]);return t}const Qo=rf?t=>t:y2,af=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",A2=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function rr(t){if(Lt(t),af)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=A2[t[n]];return e}const sn={_0:48,_9:57,A:65,F:70,a:97,f:102};function Cd(t){if(t>=sn._0&&t<=sn._9)return t-sn._0;if(t>=sn.A&&t<=sn.F)return t-(sn.A-10);if(t>=sn.a&&t<=sn.f)return t-(sn.a-10)}function Ps(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(af)return Uint8Array.fromHex(t);const e=t.length,n=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const r=new Uint8Array(n);for(let s=0,i=0;s<n;s++,i+=2){const a=Cd(t.charCodeAt(i)),o=Cd(t.charCodeAt(i+1));if(a===void 0||o===void 0){const c=t[i]+t[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}r[s]=a*16+o}return r}function $c(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function ls(t){return typeof t=="string"&&(t=$c(t)),Lt(t),t}function E2(t){return typeof t=="string"&&(t=$c(t)),Lt(t),t}function dn(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];Lt(s),e+=s.length}const n=new Uint8Array(e);for(let r=0,s=0;r<t.length;r++){const i=t[r];n.set(i,s),s+=i.length}return n}function w2(t,e){if(e!==void 0&&{}.toString.call(e)!=="[object Object]")throw new Error("options should be object or undefined");return Object.assign(t,e)}let Da=class{};function Js(t){const e=r=>t().update(ls(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function B2(t){const e=(r,s)=>t(s).update(ls(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}function Jc(t=32){if(Dr&&typeof Dr.getRandomValues=="function")return Dr.getRandomValues(new Uint8Array(t));if(Dr&&typeof Dr.randomBytes=="function")return Uint8Array.from(Dr.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}function C2(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const s=BigInt(32),i=BigInt(4294967295),a=Number(n>>s&i),o=Number(n&i),c=r?4:0,d=r?0:4;t.setUint32(e+c,a,r),t.setUint32(e+d,o,r)}function x2(t,e,n){return t&e^~t&n}function D2(t,e,n){return t&e^t&n^e&n}class Xc extends Da{constructor(e,n,r,s){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=s,this.buffer=new Uint8Array(e),this.view=Hi(this.buffer)}update(e){mr(this),e=ls(e),Lt(e);const{view:n,buffer:r,blockLen:s}=this,i=e.length;for(let a=0;a<i;){const o=Math.min(s-this.pos,i-a);if(o===s){const c=Hi(e);for(;s<=i-a;a+=s)this.process(c,a);continue}r.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===s&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){mr(this),Qc(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:i}=this;let{pos:a}=this;n[a++]=128,gn(this.buffer.subarray(a)),this.padOffset>s-a&&(this.process(r,0),a=0);for(let f=a;f<s;f++)n[f]=0;C2(r,s-8,BigInt(this.length*8),i),this.process(r,0);const o=Hi(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const d=c/4,l=this.get();if(d>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<d;f++)o.setUint32(4*f,l[f],i)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:s,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=s,e.pos=o,s%n&&e.buffer.set(r),e}clone(){return this._cloneInto()}}const Dn=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ze=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),pi=BigInt(2**32-1),xd=BigInt(32);function of(t,e=!1){return e?{h:Number(t&pi),l:Number(t>>xd&pi)}:{h:Number(t>>xd&pi)|0,l:Number(t&pi)|0}}function cf(t,e=!1){const n=t.length;let r=new Uint32Array(n),s=new Uint32Array(n);for(let i=0;i<n;i++){const{h:a,l:o}=of(t[i],e);[r[i],s[i]]=[a,o]}return[r,s]}const Dd=(t,e,n)=>t>>>n,Fd=(t,e,n)=>t<<32-n|e>>>n,Gn=(t,e,n)=>t>>>n|e<<32-n,Vn=(t,e,n)=>t<<32-n|e>>>n,ws=(t,e,n)=>t<<64-n|e>>>n-32,Bs=(t,e,n)=>t>>>n-32|e<<64-n,F2=(t,e)=>e,S2=(t,e)=>t,T2=(t,e,n)=>t<<n|e>>>32-n,v2=(t,e,n)=>e<<n|t>>>32-n,I2=(t,e,n)=>e<<n-32|t>>>64-n,k2=(t,e,n)=>t<<n-32|e>>>64-n;function qt(t,e,n,r){const s=(e>>>0)+(r>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}const lf=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),df=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,U2=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),P2=(t,e,n,r,s)=>e+n+r+s+(t/2**32|0)|0,N2=(t,e,n,r,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(s>>>0),R2=(t,e,n,r,s,i)=>e+n+r+s+i+(t/2**32|0)|0,O2=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Fn=new Uint32Array(64);let M2=class extends Xc{constructor(e=32){super(64,e,8,!1),this.A=Dn[0]|0,this.B=Dn[1]|0,this.C=Dn[2]|0,this.D=Dn[3]|0,this.E=Dn[4]|0,this.F=Dn[5]|0,this.G=Dn[6]|0,this.H=Dn[7]|0}get(){const{A:e,B:n,C:r,D:s,E:i,F:a,G:o,H:c}=this;return[e,n,r,s,i,a,o,c]}set(e,n,r,s,i,a,o,c){this.A=e|0,this.B=n|0,this.C=r|0,this.D=s|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=c|0}process(e,n){for(let f=0;f<16;f++,n+=4)Fn[f]=e.getUint32(n,!1);for(let f=16;f<64;f++){const m=Fn[f-15],b=Fn[f-2],w=Vt(m,7)^Vt(m,18)^m>>>3,E=Vt(b,17)^Vt(b,19)^b>>>10;Fn[f]=E+Fn[f-7]+w+Fn[f-16]|0}let{A:r,B:s,C:i,D:a,E:o,F:c,G:d,H:l}=this;for(let f=0;f<64;f++){const m=Vt(o,6)^Vt(o,11)^Vt(o,25),b=l+m+x2(o,c,d)+O2[f]+Fn[f]|0,E=(Vt(r,2)^Vt(r,13)^Vt(r,22))+D2(r,s,i)|0;l=d,d=c,c=o,o=a+b|0,a=i,i=s,s=r,r=b+E|0}r=r+this.A|0,s=s+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,c=c+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(r,s,i,a,o,c,d,l)}roundClean(){gn(Fn)}destroy(){this.set(0,0,0,0,0,0,0,0),gn(this.buffer)}};const uf=cf(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),L2=uf[0],W2=uf[1],Sn=new Uint32Array(80),Tn=new Uint32Array(80);let ff=class extends Xc{constructor(e=64){super(128,e,16,!1),this.Ah=Ze[0]|0,this.Al=Ze[1]|0,this.Bh=Ze[2]|0,this.Bl=Ze[3]|0,this.Ch=Ze[4]|0,this.Cl=Ze[5]|0,this.Dh=Ze[6]|0,this.Dl=Ze[7]|0,this.Eh=Ze[8]|0,this.El=Ze[9]|0,this.Fh=Ze[10]|0,this.Fl=Ze[11]|0,this.Gh=Ze[12]|0,this.Gl=Ze[13]|0,this.Hh=Ze[14]|0,this.Hl=Ze[15]|0}get(){const{Ah:e,Al:n,Bh:r,Bl:s,Ch:i,Cl:a,Dh:o,Dl:c,Eh:d,El:l,Fh:f,Fl:m,Gh:b,Gl:w,Hh:E,Hl:y}=this;return[e,n,r,s,i,a,o,c,d,l,f,m,b,w,E,y]}set(e,n,r,s,i,a,o,c,d,l,f,m,b,w,E,y){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=s|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=c|0,this.Eh=d|0,this.El=l|0,this.Fh=f|0,this.Fl=m|0,this.Gh=b|0,this.Gl=w|0,this.Hh=E|0,this.Hl=y|0}process(e,n){for(let A=0;A<16;A++,n+=4)Sn[A]=e.getUint32(n),Tn[A]=e.getUint32(n+=4);for(let A=16;A<80;A++){const S=Sn[A-15]|0,T=Tn[A-15]|0,U=Gn(S,T,1)^Gn(S,T,8)^Dd(S,T,7),R=Vn(S,T,1)^Vn(S,T,8)^Fd(S,T,7),v=Sn[A-2]|0,M=Tn[A-2]|0,V=Gn(v,M,19)^ws(v,M,61)^Dd(v,M,6),Q=Vn(v,M,19)^Bs(v,M,61)^Fd(v,M,6),q=U2(R,Q,Tn[A-7],Tn[A-16]),N=P2(q,U,V,Sn[A-7],Sn[A-16]);Sn[A]=N|0,Tn[A]=q|0}let{Ah:r,Al:s,Bh:i,Bl:a,Ch:o,Cl:c,Dh:d,Dl:l,Eh:f,El:m,Fh:b,Fl:w,Gh:E,Gl:y,Hh:p,Hl:x}=this;for(let A=0;A<80;A++){const S=Gn(f,m,14)^Gn(f,m,18)^ws(f,m,41),T=Vn(f,m,14)^Vn(f,m,18)^Bs(f,m,41),U=f&b^~f&E,R=m&w^~m&y,v=N2(x,T,R,W2[A],Tn[A]),M=R2(v,p,S,U,L2[A],Sn[A]),V=v|0,Q=Gn(r,s,28)^ws(r,s,34)^ws(r,s,39),q=Vn(r,s,28)^Bs(r,s,34)^Bs(r,s,39),N=r&i^r&o^i&o,O=s&a^s&c^a&c;p=E|0,x=y|0,E=b|0,y=w|0,b=f|0,w=m|0,{h:f,l:m}=qt(d|0,l|0,M|0,V|0),d=o|0,l=c|0,o=i|0,c=a|0,i=r|0,a=s|0;const C=lf(V,q,O);r=df(C,M,Q,N),s=C|0}({h:r,l:s}=qt(this.Ah|0,this.Al|0,r|0,s|0)),{h:i,l:a}=qt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:c}=qt(this.Ch|0,this.Cl|0,o|0,c|0),{h:d,l}=qt(this.Dh|0,this.Dl|0,d|0,l|0),{h:f,l:m}=qt(this.Eh|0,this.El|0,f|0,m|0),{h:b,l:w}=qt(this.Fh|0,this.Fl|0,b|0,w|0),{h:E,l:y}=qt(this.Gh|0,this.Gl|0,E|0,y|0),{h:p,l:x}=qt(this.Hh|0,this.Hl|0,p|0,x|0),this.set(r,s,i,a,o,c,d,l,f,m,b,w,E,y,p,x)}roundClean(){gn(Sn,Tn)}destroy(){gn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};const et=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class H2 extends ff{constructor(){super(32),this.Ah=et[0]|0,this.Al=et[1]|0,this.Bh=et[2]|0,this.Bl=et[3]|0,this.Ch=et[4]|0,this.Cl=et[5]|0,this.Dh=et[6]|0,this.Dl=et[7]|0,this.Eh=et[8]|0,this.El=et[9]|0,this.Fh=et[10]|0,this.Fl=et[11]|0,this.Gh=et[12]|0,this.Gl=et[13]|0,this.Hh=et[14]|0,this.Hl=et[15]|0}}const Yc=Js(()=>new M2),hf=Js(()=>new ff),z2=Js(()=>new H2),mf=Yc,G2=BigInt(0),ps=BigInt(1),V2=BigInt(2),_2=BigInt(7),j2=BigInt(256),q2=BigInt(113),bf=[],pf=[],gf=[];for(let t=0,e=ps,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],bf.push(2*(5*r+n)),pf.push((t+1)*(t+2)/2%64);let s=G2;for(let i=0;i<7;i++)e=(e<<ps^(e>>_2)*q2)%j2,e&V2&&(s^=ps<<(ps<<BigInt(i))-ps);gf.push(s)}const yf=cf(gf,!0),K2=yf[0],Q2=yf[1],Sd=(t,e,n)=>n>32?I2(t,e,n):T2(t,e,n),Td=(t,e,n)=>n>32?k2(t,e,n):v2(t,e,n);function $2(t,e=24){const n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let a=0;a<10;a++)n[a]=t[a]^t[a+10]^t[a+20]^t[a+30]^t[a+40];for(let a=0;a<10;a+=2){const o=(a+8)%10,c=(a+2)%10,d=n[c],l=n[c+1],f=Sd(d,l,1)^n[o],m=Td(d,l,1)^n[o+1];for(let b=0;b<50;b+=10)t[a+b]^=f,t[a+b+1]^=m}let s=t[2],i=t[3];for(let a=0;a<24;a++){const o=pf[a],c=Sd(s,i,o),d=Td(s,i,o),l=bf[a];s=t[l],i=t[l+1],t[l]=c,t[l+1]=d}for(let a=0;a<50;a+=10){for(let o=0;o<10;o++)n[o]=t[a+o];for(let o=0;o<10;o++)t[a+o]^=~n[(o+2)%10]&n[(o+4)%10]}t[0]^=K2[r],t[1]^=Q2[r]}gn(n)}let J2=class Af extends Da{constructor(e,n,r,s=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=s,this.rounds=i,qr(r),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=nf(this.state)}clone(){return this._cloneInto()}keccak(){Qo(this.state32),$2(this.state32,this.rounds),Qo(this.state32),this.posOut=0,this.pos=0}update(e){mr(this),e=ls(e),Lt(e);const{blockLen:n,state:r}=this,s=e.length;for(let i=0;i<s;){const a=Math.min(n-this.pos,s-i);for(let o=0;o<a;o++)r[this.pos++]^=e[i++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:n,pos:r,blockLen:s}=this;e[r]^=n,(n&128)!==0&&r===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){mr(this,!1),Lt(e),this.finish();const n=this.state,{blockLen:r}=this;for(let s=0,i=e.length;s<i;){this.posOut>=r&&this.keccak();const a=Math.min(r-this.posOut,i-s);e.set(n.subarray(this.posOut,this.posOut+a),s),this.posOut+=a,s+=a}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return qr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Qc(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,gn(this.state)}_cloneInto(e){const{blockLen:n,suffix:r,outputLen:s,rounds:i,enableXOF:a}=this;return e||(e=new Af(n,r,s,a,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=s,e.enableXOF=a,e.destroyed=this.destroyed,e}};const Ef=(t,e,n)=>Js(()=>new J2(e,t,n)),X2=Ef(6,136,256/8),Fa=Ef(1,136,256/8),Y2=hf,Z2=z2;let wf=class extends Da{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,Kc(e);const r=ls(n);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const s=this.blockLen,i=new Uint8Array(s);i.set(r.length>s?e.create().update(r).digest():r);for(let a=0;a<i.length;a++)i[a]^=54;this.iHash.update(i),this.oHash=e.create();for(let a=0;a<i.length;a++)i[a]^=106;this.oHash.update(i),gn(i)}update(e){return mr(this),this.iHash.update(e),this}digestInto(e){mr(this),Lt(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:s,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=s,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};const Zc=(t,e,n)=>new wf(t,e).update(n).digest();Zc.create=(t,e)=>new wf(t,e);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const el=BigInt(0),ra=BigInt(1);function Ns(t,e=""){if(typeof t!="boolean"){const n=e&&`"${e}"`;throw new Error(n+"expected boolean, got type="+typeof t)}return t}function Nn(t,e,n=""){const r=$s(t),s=t?.length,i=e!==void 0;if(!r||i&&s!==e){const a=n&&`"${n}" `,o=i?` of length ${e}`:"",c=r?`length=${s}`:`type=${typeof t}`;throw new Error(a+"expected Uint8Array"+o+", got "+c)}return t}function gi(t){const e=t.toString(16);return e.length&1?"0"+e:e}function Bf(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?el:BigInt("0x"+t)}function Xs(t){return Bf(rr(t))}function tl(t){return Lt(t),Bf(rr(Uint8Array.from(t).reverse()))}function nl(t,e){return Ps(t.toString(16).padStart(e*2,"0"))}function Cf(t,e){return nl(t,e).reverse()}function ct(t,e,n){let r;if(typeof e=="string")try{r=Ps(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if($s(e))r=Uint8Array.from(e);else throw new Error(t+" must be hex string or Uint8Array");const s=r.length;if(typeof n=="number"&&s!==n)throw new Error(t+" of length "+n+" expected, got "+s);return r}function e6(t){return Uint8Array.from(t)}const co=t=>typeof t=="bigint"&&el<=t;function xf(t,e,n){return co(t)&&co(e)&&co(n)&&e<=t&&t<n}function Df(t,e,n,r){if(!xf(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function rl(t){let e;for(e=0;t>el;t>>=ra,e+=1);return e}function t6(t,e){return t>>BigInt(e)&ra}const Ys=t=>(ra<<BigInt(t))-ra;function n6(t,e,n){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");const r=b=>new Uint8Array(b),s=b=>Uint8Array.of(b);let i=r(t),a=r(t),o=0;const c=()=>{i.fill(1),a.fill(0),o=0},d=(...b)=>n(a,i,...b),l=(b=r(0))=>{a=d(s(0),b),i=d(),b.length!==0&&(a=d(s(1),b),i=d())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let b=0;const w=[];for(;b<e;){i=d();const E=i.slice();w.push(E),b+=i.length}return dn(...w)};return(b,w)=>{c(),l(b);let E;for(;!(E=w(f()));)l();return c(),E}}function r6(t){return typeof t=="function"&&Number.isSafeInteger(t.outputLen)}function Sa(t,e,n={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function r(s,i,a){const o=t[s];if(a&&o===void 0)return;const c=typeof o;if(c!==i||o===null)throw new Error(`param "${s}" is invalid: expected ${i}, got ${c}`)}Object.entries(e).forEach(([s,i])=>r(s,i,!1)),Object.entries(n).forEach(([s,i])=>r(s,i,!0))}const s6=()=>{throw new Error("not implemented")};function $o(t){const e=new WeakMap;return(n,...r)=>{const s=e.get(n);if(s!==void 0)return s;const i=t(n,...r);return e.set(n,i),i}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const bt=BigInt(0),Ye=BigInt(1),Xn=BigInt(2),Ff=BigInt(3),Sf=BigInt(4),Tf=BigInt(5),i6=BigInt(7),vf=BigInt(8),a6=BigInt(9),If=BigInt(16);function wt(t,e){const n=t%e;return n>=bt?n:e+n}function At(t,e,n){let r=t;for(;e-- >bt;)r*=r,r%=n;return r}function vd(t,e){if(t===bt)throw new Error("invert: expected non-zero number");if(e<=bt)throw new Error("invert: expected positive modulus, got "+e);let n=wt(t,e),r=e,s=bt,i=Ye;for(;n!==bt;){const o=r/n,c=r%n,d=s-i*o;r=n,n=c,s=i,i=d}if(r!==Ye)throw new Error("invert: does not exist");return wt(s,e)}function sl(t,e,n){if(!t.eql(t.sqr(e),n))throw new Error("Cannot find square root")}function kf(t,e){const n=(t.ORDER+Ye)/Sf,r=t.pow(e,n);return sl(t,r,e),r}function o6(t,e){const n=(t.ORDER-Tf)/vf,r=t.mul(e,Xn),s=t.pow(r,n),i=t.mul(e,s),a=t.mul(t.mul(i,Xn),s),o=t.mul(i,t.sub(a,t.ONE));return sl(t,o,e),o}function c6(t){const e=ds(t),n=Uf(t),r=n(e,e.neg(e.ONE)),s=n(e,r),i=n(e,e.neg(r)),a=(t+i6)/If;return(o,c)=>{let d=o.pow(c,a),l=o.mul(d,r);const f=o.mul(d,s),m=o.mul(d,i),b=o.eql(o.sqr(l),c),w=o.eql(o.sqr(f),c);d=o.cmov(d,l,b),l=o.cmov(m,f,w);const E=o.eql(o.sqr(l),c),y=o.cmov(d,l,E);return sl(o,y,c),y}}function Uf(t){if(t<Ff)throw new Error("sqrt is not defined for small field");let e=t-Ye,n=0;for(;e%Xn===bt;)e/=Xn,n++;let r=Xn;const s=ds(t);for(;Jo(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return kf;let i=s.pow(r,e);const a=(e+Ye)/Xn;return function(c,d){if(c.is0(d))return d;if(Jo(c,d)!==1)throw new Error("Cannot find square root");let l=n,f=c.mul(c.ONE,i),m=c.pow(d,e),b=c.pow(d,a);for(;!c.eql(m,c.ONE);){if(c.is0(m))return c.ZERO;let w=1,E=c.sqr(m);for(;!c.eql(E,c.ONE);)if(w++,E=c.sqr(E),w===l)throw new Error("Cannot find square root");const y=Ye<<BigInt(l-w-1),p=c.pow(f,y);l=w,f=c.sqr(p),m=c.mul(m,f),b=c.mul(b,p)}return b}}function l6(t){return t%Sf===Ff?kf:t%vf===Tf?o6:t%If===a6?c6(t):Uf(t)}const d6=(t,e)=>(wt(t,e)&Ye)===Ye,u6=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function f6(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},n=u6.reduce((r,s)=>(r[s]="function",r),e);return Sa(t,n),t}function Pf(t,e,n){if(n<bt)throw new Error("invalid exponent, negatives unsupported");if(n===bt)return t.ONE;if(n===Ye)return e;let r=t.ONE,s=e;for(;n>bt;)n&Ye&&(r=t.mul(r,s)),s=t.sqr(s),n>>=Ye;return r}function il(t,e,n=!1){const r=new Array(e.length).fill(n?t.ZERO:void 0),s=e.reduce((a,o,c)=>t.is0(o)?a:(r[c]=a,t.mul(a,o)),t.ONE),i=t.inv(s);return e.reduceRight((a,o,c)=>t.is0(o)?a:(r[c]=t.mul(a,r[c]),t.mul(a,o)),i),r}function Jo(t,e){const n=(t.ORDER-Ye)/Xn,r=t.pow(e,n),s=t.eql(r,t.ONE),i=t.eql(r,t.ZERO),a=t.eql(r,t.neg(t.ONE));if(!s&&!i&&!a)throw new Error("invalid Legendre symbol result");return s?1:i?0:-1}function Nf(t,e){e!==void 0&&qr(e);const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function ds(t,e,n=!1,r={}){if(t<=bt)throw new Error("invalid field: expected ORDER > 0, got "+t);let s,i,a=!1,o;if(typeof e=="object"&&e!=null){if(r.sqrt||n)throw new Error("cannot specify opts in two arguments");const m=e;m.BITS&&(s=m.BITS),m.sqrt&&(i=m.sqrt),typeof m.isLE=="boolean"&&(n=m.isLE),typeof m.modFromBytes=="boolean"&&(a=m.modFromBytes),o=m.allowedLengths}else typeof e=="number"&&(s=e),r.sqrt&&(i=r.sqrt);const{nBitLength:c,nByteLength:d}=Nf(t,s);if(d>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let l;const f=Object.freeze({ORDER:t,isLE:n,BITS:c,BYTES:d,MASK:Ys(c),ZERO:bt,ONE:Ye,allowedLengths:o,create:m=>wt(m,t),isValid:m=>{if(typeof m!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof m);return bt<=m&&m<t},is0:m=>m===bt,isValidNot0:m=>!f.is0(m)&&f.isValid(m),isOdd:m=>(m&Ye)===Ye,neg:m=>wt(-m,t),eql:(m,b)=>m===b,sqr:m=>wt(m*m,t),add:(m,b)=>wt(m+b,t),sub:(m,b)=>wt(m-b,t),mul:(m,b)=>wt(m*b,t),pow:(m,b)=>Pf(f,m,b),div:(m,b)=>wt(m*vd(b,t),t),sqrN:m=>m*m,addN:(m,b)=>m+b,subN:(m,b)=>m-b,mulN:(m,b)=>m*b,inv:m=>vd(m,t),sqrt:i||(m=>(l||(l=l6(t)),l(f,m))),toBytes:m=>n?Cf(m,d):nl(m,d),fromBytes:(m,b=!0)=>{if(o){if(!o.includes(m.length)||m.length>d)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+m.length);const E=new Uint8Array(d);E.set(m,n?0:E.length-m.length),m=E}if(m.length!==d)throw new Error("Field.fromBytes: expected "+d+" bytes, got "+m.length);let w=n?tl(m):Xs(m);if(a&&(w=wt(w,t)),!b&&!f.isValid(w))throw new Error("invalid field element: outside of range 0..ORDER");return w},invertBatch:m=>il(f,m),cmov:(m,b,w)=>w?b:m});return Object.freeze(f)}function Rf(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function al(t){const e=Rf(t);return e+Math.ceil(e/2)}function Of(t,e,n=!1){const r=t.length,s=Rf(e),i=al(e);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const a=n?tl(t):Xs(t),o=wt(a,e-Ye)+Ye;return n?Cf(o,s):nl(o,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Kr=BigInt(0),Yn=BigInt(1);function sa(t,e){const n=e.negate();return t?n:e}function zi(t,e){const n=il(t.Fp,e.map(r=>r.Z));return e.map((r,s)=>t.fromAffine(r.toAffine(n[s])))}function Mf(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function lo(t,e){Mf(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1),s=2**t,i=Ys(t),a=BigInt(t);return{windows:n,windowSize:r,mask:i,maxNumber:s,shiftBy:a}}function Id(t,e,n){const{windowSize:r,mask:s,maxNumber:i,shiftBy:a}=n;let o=Number(t&s),c=t>>a;o>r&&(o-=i,c+=Yn);const d=e*r,l=d+Math.abs(o)-1,f=o===0,m=o<0,b=e%2!==0;return{nextN:c,offset:l,isZero:f,isNeg:m,isNegF:b,offsetF:d}}function h6(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,r)=>{if(!(n instanceof e))throw new Error("invalid point at index "+r)})}function m6(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,r)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+r)})}const uo=new WeakMap,Lf=new WeakMap;function fo(t){return Lf.get(t)||1}function kd(t){if(t!==Kr)throw new Error("invalid wNAF")}let Wf=class{constructor(e,n){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=n}_unsafeLadder(e,n,r=this.ZERO){let s=e;for(;n>Kr;)n&Yn&&(r=r.add(s)),s=s.double(),n>>=Yn;return r}precomputeWindow(e,n){const{windows:r,windowSize:s}=lo(n,this.bits),i=[];let a=e,o=a;for(let c=0;c<r;c++){o=a,i.push(o);for(let d=1;d<s;d++)o=o.add(a),i.push(o);a=o.double()}return i}wNAF(e,n,r){if(!this.Fn.isValid(r))throw new Error("invalid scalar");let s=this.ZERO,i=this.BASE;const a=lo(e,this.bits);for(let o=0;o<a.windows;o++){const{nextN:c,offset:d,isZero:l,isNeg:f,isNegF:m,offsetF:b}=Id(r,o,a);r=c,l?i=i.add(sa(m,n[b])):s=s.add(sa(f,n[d]))}return kd(r),{p:s,f:i}}wNAFUnsafe(e,n,r,s=this.ZERO){const i=lo(e,this.bits);for(let a=0;a<i.windows&&r!==Kr;a++){const{nextN:o,offset:c,isZero:d,isNeg:l}=Id(r,a,i);if(r=o,!d){const f=n[c];s=s.add(l?f.negate():f)}}return kd(r),s}getPrecomputes(e,n,r){let s=uo.get(n);return s||(s=this.precomputeWindow(n,e),e!==1&&(typeof r=="function"&&(s=r(s)),uo.set(n,s))),s}cached(e,n,r){const s=fo(e);return this.wNAF(s,this.getPrecomputes(s,e,r),n)}unsafe(e,n,r,s){const i=fo(e);return i===1?this._unsafeLadder(e,n,s):this.wNAFUnsafe(i,this.getPrecomputes(i,e,r),n,s)}createCache(e,n){Mf(n,this.bits),Lf.set(e,n),uo.delete(e)}hasCache(e){return fo(e)!==1}};function b6(t,e,n,r){let s=e,i=t.ZERO,a=t.ZERO;for(;n>Kr||r>Kr;)n&Yn&&(i=i.add(s)),r&Yn&&(a=a.add(s)),s=s.double(),n>>=Yn,r>>=Yn;return{p1:i,p2:a}}function Hf(t,e,n,r){h6(n,t),m6(r,e);const s=n.length,i=r.length;if(s!==i)throw new Error("arrays of points and scalars must have equal length");const a=t.ZERO,o=rl(BigInt(s));let c=1;o>12?c=o-3:o>4?c=o-2:o>0&&(c=2);const d=Ys(c),l=new Array(Number(d)+1).fill(a),f=Math.floor((e.BITS-1)/c)*c;let m=a;for(let b=f;b>=0;b-=c){l.fill(a);for(let E=0;E<i;E++){const y=r[E],p=Number(y>>BigInt(b)&d);l[p]=l[p].add(n[E])}let w=a;for(let E=l.length-1,y=a;E>0;E--)y=y.add(l[E]),w=w.add(y);if(m=m.add(w),b!==0)for(let E=0;E<c;E++)m=m.double()}return m}function Ud(t,e,n){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return f6(e),e}else return ds(t,{isLE:n})}function zf(t,e,n={},r){if(r===void 0&&(r=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(const c of["p","n","h"]){const d=e[c];if(!(typeof d=="bigint"&&d>Kr))throw new Error(`CURVE.${c} must be positive bigint`)}const s=Ud(e.p,n.Fp,r),i=Ud(e.n,n.Fn,r),o=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(const c of o)if(!s.isValid(e[c]))throw new Error(`CURVE.${c} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:s,Fn:i}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Pd=(t,e)=>(t+(t>=0?e:-e)/Gf)/e;function p6(t,e,n){const[[r,s],[i,a]]=e,o=Pd(a*t,n),c=Pd(-s*t,n);let d=t-o*r-c*i,l=-o*s-c*a;const f=d<hn,m=l<hn;f&&(d=-d),m&&(l=-l);const b=Ys(Math.ceil(rl(n)/2))+sr;if(d<hn||d>=b||l<hn||l>=b)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:f,k1:d,k2neg:m,k2:l}}function Xo(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function ho(t,e){const n={};for(let r of Object.keys(e))n[r]=t[r]===void 0?e[r]:t[r];return Ns(n.lowS,"lowS"),Ns(n.prehash,"prehash"),n.format!==void 0&&Xo(n.format),n}class g6 extends Error{constructor(e=""){super(e)}}const on={Err:g6,_tlv:{encode:(t,e)=>{const{Err:n}=on;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length&1)throw new n("tlv.encode: unpadded data");const r=e.length/2,s=gi(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?gi(s.length/2|128):"";return gi(t)+i+s+e},decode(t,e){const{Err:n}=on;let r=0;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length<2||e[r++]!==t)throw new n("tlv.decode: wrong tlv");const s=e[r++],i=!!(s&128);let a=0;if(!i)a=s;else{const c=s&127;if(!c)throw new n("tlv.decode(long): indefinite length not supported");if(c>4)throw new n("tlv.decode(long): byte length is too big");const d=e.subarray(r,r+c);if(d.length!==c)throw new n("tlv.decode: length bytes not complete");if(d[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const l of d)a=a<<8|l;if(r+=c,a<128)throw new n("tlv.decode(long): not minimal encoding")}const o=e.subarray(r,r+a);if(o.length!==a)throw new n("tlv.decode: wrong value length");return{v:o,l:e.subarray(r+a)}}},_int:{encode(t){const{Err:e}=on;if(t<hn)throw new e("integer: negative integers are not allowed");let n=gi(t);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return n},decode(t){const{Err:e}=on;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return Xs(t)}},toSig(t){const{Err:e,_int:n,_tlv:r}=on,s=ct("signature",t),{v:i,l:a}=r.decode(48,s);if(a.length)throw new e("invalid signature: left bytes after parsing");const{v:o,l:c}=r.decode(2,i),{v:d,l}=r.decode(2,c);if(l.length)throw new e("invalid signature: left bytes after parsing");return{r:n.decode(o),s:n.decode(d)}},hexFromSig(t){const{_tlv:e,_int:n}=on,r=e.encode(2,n.encode(t.r)),s=e.encode(2,n.encode(t.s)),i=r+s;return e.encode(48,i)}},hn=BigInt(0),sr=BigInt(1),Gf=BigInt(2),yi=BigInt(3),y6=BigInt(4);function Rn(t,e){const{BYTES:n}=t;let r;if(typeof e=="bigint")r=e;else{let s=ct("private key",e);try{r=t.fromBytes(s)}catch{throw new Error(`invalid private key: expected ui8a of size ${n}, got ${typeof e}`)}}if(!t.isValidNot0(r))throw new Error("invalid private key: out of range [1..N-1]");return r}function Vf(t,e={}){const n=zf("weierstrass",t,e),{Fp:r,Fn:s}=n;let i=n.CURVE;const{h:a,n:o}=i;Sa(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:c}=e;if(c&&(!r.is0(i.a)||typeof c.beta!="bigint"||!Array.isArray(c.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');const d=jf(r,s);function l(){if(!r.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function f(q,N,O){const{x:C,y:k}=N.toAffine(),H=r.toBytes(C);if(Ns(O,"isCompressed"),O){l();const G=!r.isOdd(k);return dn(_f(G),H)}else return dn(Uint8Array.of(4),H,r.toBytes(k))}function m(q){Nn(q,void 0,"Point");const{publicKey:N,publicKeyUncompressed:O}=d,C=q.length,k=q[0],H=q.subarray(1);if(C===N&&(k===2||k===3)){const G=r.fromBytes(H);if(!r.isValid(G))throw new Error("bad point: is not on curve, wrong x");const z=E(G);let j;try{j=r.sqrt(z)}catch(me){const Z=me instanceof Error?": "+me.message:"";throw new Error("bad point: is not on curve, sqrt error"+Z)}l();const J=r.isOdd(j);return(k&1)===1!==J&&(j=r.neg(j)),{x:G,y:j}}else if(C===O&&k===4){const G=r.BYTES,z=r.fromBytes(H.subarray(0,G)),j=r.fromBytes(H.subarray(G,G*2));if(!y(z,j))throw new Error("bad point: is not on curve");return{x:z,y:j}}else throw new Error(`bad point: got length ${C}, expected compressed=${N} or uncompressed=${O}`)}const b=e.toBytes||f,w=e.fromBytes||m;function E(q){const N=r.sqr(q),O=r.mul(N,q);return r.add(r.add(O,r.mul(q,i.a)),i.b)}function y(q,N){const O=r.sqr(N),C=E(q);return r.eql(O,C)}if(!y(i.Gx,i.Gy))throw new Error("bad curve params: generator point");const p=r.mul(r.pow(i.a,yi),y6),x=r.mul(r.sqr(i.b),BigInt(27));if(r.is0(r.add(p,x)))throw new Error("bad curve params: a or b");function A(q,N,O=!1){if(!r.isValid(N)||O&&r.is0(N))throw new Error(`bad point coordinate ${q}`);return N}function S(q){if(!(q instanceof M))throw new Error("ProjectivePoint expected")}function T(q){if(!c||!c.basises)throw new Error("no endo");return p6(q,c.basises,s.ORDER)}const U=$o((q,N)=>{const{X:O,Y:C,Z:k}=q;if(r.eql(k,r.ONE))return{x:O,y:C};const H=q.is0();N==null&&(N=H?r.ONE:r.inv(k));const G=r.mul(O,N),z=r.mul(C,N),j=r.mul(k,N);if(H)return{x:r.ZERO,y:r.ZERO};if(!r.eql(j,r.ONE))throw new Error("invZ was invalid");return{x:G,y:z}}),R=$o(q=>{if(q.is0()){if(e.allowInfinityPoint&&!r.is0(q.Y))return;throw new Error("bad point: ZERO")}const{x:N,y:O}=q.toAffine();if(!r.isValid(N)||!r.isValid(O))throw new Error("bad point: x or y not field elements");if(!y(N,O))throw new Error("bad point: equation left != right");if(!q.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function v(q,N,O,C,k){return O=new M(r.mul(O.X,q),O.Y,O.Z),N=sa(C,N),O=sa(k,O),N.add(O)}class M{constructor(N,O,C){this.X=A("x",N),this.Y=A("y",O,!0),this.Z=A("z",C),Object.freeze(this)}static CURVE(){return i}static fromAffine(N){const{x:O,y:C}=N||{};if(!N||!r.isValid(O)||!r.isValid(C))throw new Error("invalid affine point");if(N instanceof M)throw new Error("projective point not allowed");return r.is0(O)&&r.is0(C)?M.ZERO:new M(O,C,r.ONE)}static fromBytes(N){const O=M.fromAffine(w(Nn(N,void 0,"point")));return O.assertValidity(),O}static fromHex(N){return M.fromBytes(ct("pointHex",N))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(N=8,O=!0){return Q.createCache(this,N),O||this.multiply(yi),this}assertValidity(){R(this)}hasEvenY(){const{y:N}=this.toAffine();if(!r.isOdd)throw new Error("Field doesn't support isOdd");return!r.isOdd(N)}equals(N){S(N);const{X:O,Y:C,Z:k}=this,{X:H,Y:G,Z:z}=N,j=r.eql(r.mul(O,z),r.mul(H,k)),J=r.eql(r.mul(C,z),r.mul(G,k));return j&&J}negate(){return new M(this.X,r.neg(this.Y),this.Z)}double(){const{a:N,b:O}=i,C=r.mul(O,yi),{X:k,Y:H,Z:G}=this;let z=r.ZERO,j=r.ZERO,J=r.ZERO,Y=r.mul(k,k),me=r.mul(H,H),Z=r.mul(G,G),_=r.mul(k,H);return _=r.add(_,_),J=r.mul(k,G),J=r.add(J,J),z=r.mul(N,J),j=r.mul(C,Z),j=r.add(z,j),z=r.sub(me,j),j=r.add(me,j),j=r.mul(z,j),z=r.mul(_,z),J=r.mul(C,J),Z=r.mul(N,Z),_=r.sub(Y,Z),_=r.mul(N,_),_=r.add(_,J),J=r.add(Y,Y),Y=r.add(J,Y),Y=r.add(Y,Z),Y=r.mul(Y,_),j=r.add(j,Y),Z=r.mul(H,G),Z=r.add(Z,Z),Y=r.mul(Z,_),z=r.sub(z,Y),J=r.mul(Z,me),J=r.add(J,J),J=r.add(J,J),new M(z,j,J)}add(N){S(N);const{X:O,Y:C,Z:k}=this,{X:H,Y:G,Z:z}=N;let j=r.ZERO,J=r.ZERO,Y=r.ZERO;const me=i.a,Z=r.mul(i.b,yi);let _=r.mul(O,H),te=r.mul(C,G),le=r.mul(k,z),ge=r.add(O,C),oe=r.add(H,G);ge=r.mul(ge,oe),oe=r.add(_,te),ge=r.sub(ge,oe),oe=r.add(O,k);let ye=r.add(H,z);return oe=r.mul(oe,ye),ye=r.add(_,le),oe=r.sub(oe,ye),ye=r.add(C,k),j=r.add(G,z),ye=r.mul(ye,j),j=r.add(te,le),ye=r.sub(ye,j),Y=r.mul(me,oe),j=r.mul(Z,le),Y=r.add(j,Y),j=r.sub(te,Y),Y=r.add(te,Y),J=r.mul(j,Y),te=r.add(_,_),te=r.add(te,_),le=r.mul(me,le),oe=r.mul(Z,oe),te=r.add(te,le),le=r.sub(_,le),le=r.mul(me,le),oe=r.add(oe,le),_=r.mul(te,oe),J=r.add(J,_),_=r.mul(ye,oe),j=r.mul(ge,j),j=r.sub(j,_),_=r.mul(ge,te),Y=r.mul(ye,Y),Y=r.add(Y,_),new M(j,J,Y)}subtract(N){return this.add(N.negate())}is0(){return this.equals(M.ZERO)}multiply(N){const{endo:O}=e;if(!s.isValidNot0(N))throw new Error("invalid scalar: out of range");let C,k;const H=G=>Q.cached(this,G,z=>zi(M,z));if(O){const{k1neg:G,k1:z,k2neg:j,k2:J}=T(N),{p:Y,f:me}=H(z),{p:Z,f:_}=H(J);k=me.add(_),C=v(O.beta,Y,Z,G,j)}else{const{p:G,f:z}=H(N);C=G,k=z}return zi(M,[C,k])[0]}multiplyUnsafe(N){const{endo:O}=e,C=this;if(!s.isValid(N))throw new Error("invalid scalar: out of range");if(N===hn||C.is0())return M.ZERO;if(N===sr)return C;if(Q.hasCache(this))return this.multiply(N);if(O){const{k1neg:k,k1:H,k2neg:G,k2:z}=T(N),{p1:j,p2:J}=b6(M,C,H,z);return v(O.beta,j,J,k,G)}else return Q.unsafe(C,N)}multiplyAndAddUnsafe(N,O,C){const k=this.multiplyUnsafe(O).add(N.multiplyUnsafe(C));return k.is0()?void 0:k}toAffine(N){return U(this,N)}isTorsionFree(){const{isTorsionFree:N}=e;return a===sr?!0:N?N(M,this):Q.unsafe(this,o).is0()}clearCofactor(){const{clearCofactor:N}=e;return a===sr?this:N?N(M,this):this.multiplyUnsafe(a)}isSmallOrder(){return this.multiplyUnsafe(a).is0()}toBytes(N=!0){return Ns(N,"isCompressed"),this.assertValidity(),b(M,this,N)}toHex(N=!0){return rr(this.toBytes(N))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(N=!0){return this.toBytes(N)}_setWindowSize(N){this.precompute(N)}static normalizeZ(N){return zi(M,N)}static msm(N,O){return Hf(M,s,N,O)}static fromPrivateKey(N){return M.BASE.multiply(Rn(s,N))}}M.BASE=new M(i.Gx,i.Gy,r.ONE),M.ZERO=new M(r.ZERO,r.ONE,r.ZERO),M.Fp=r,M.Fn=s;const V=s.BITS,Q=new Wf(M,e.endo?Math.ceil(V/2):V);return M.BASE.precompute(8),M}function _f(t){return Uint8Array.of(t?2:3)}function jf(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function A6(t,e={}){const{Fn:n}=t,r=e.randomBytes||Jc,s=Object.assign(jf(t.Fp,n),{seed:al(n.ORDER)});function i(b){try{return!!Rn(n,b)}catch{return!1}}function a(b,w){const{publicKey:E,publicKeyUncompressed:y}=s;try{const p=b.length;return w===!0&&p!==E||w===!1&&p!==y?!1:!!t.fromBytes(b)}catch{return!1}}function o(b=r(s.seed)){return Of(Nn(b,s.seed,"seed"),n.ORDER)}function c(b,w=!0){return t.BASE.multiply(Rn(n,b)).toBytes(w)}function d(b){const w=o(b);return{secretKey:w,publicKey:c(w)}}function l(b){if(typeof b=="bigint")return!1;if(b instanceof t)return!0;const{secretKey:w,publicKey:E,publicKeyUncompressed:y}=s;if(n.allowedLengths||w===E)return;const p=ct("key",b).length;return p===E||p===y}function f(b,w,E=!0){if(l(b)===!0)throw new Error("first arg must be private key");if(l(w)===!1)throw new Error("second arg must be public key");const y=Rn(n,b);return t.fromHex(w).multiply(y).toBytes(E)}return Object.freeze({getPublicKey:c,getSharedSecret:f,keygen:d,Point:t,utils:{isValidSecretKey:i,isValidPublicKey:a,randomSecretKey:o,isValidPrivateKey:i,randomPrivateKey:o,normPrivateKeyToScalar:b=>Rn(n,b),precompute(b=8,w=t.BASE){return w.precompute(b,!1)}},lengths:s})}function E6(t,e,n={}){Kc(e),Sa(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||Jc,s=n.hmac||((O,...C)=>Zc(e,O,dn(...C))),{Fp:i,Fn:a}=t,{ORDER:o,BITS:c}=a,{keygen:d,getPublicKey:l,getSharedSecret:f,utils:m,lengths:b}=A6(t,n),w={prehash:!1,lowS:typeof n.lowS=="boolean"?n.lowS:!1,format:void 0,extraEntropy:!1},E="compact";function y(O){const C=o>>sr;return O>C}function p(O,C){if(!a.isValidNot0(C))throw new Error(`invalid signature ${O}: out of range 1..Point.Fn.ORDER`);return C}function x(O,C){Xo(C);const k=b.signature,H=C==="compact"?k:C==="recovered"?k+1:void 0;return Nn(O,H,`${C} signature`)}class A{constructor(C,k,H){this.r=p("r",C),this.s=p("s",k),H!=null&&(this.recovery=H),Object.freeze(this)}static fromBytes(C,k=E){x(C,k);let H;if(k==="der"){const{r:J,s:Y}=on.toSig(Nn(C));return new A(J,Y)}k==="recovered"&&(H=C[0],k="compact",C=C.subarray(1));const G=a.BYTES,z=C.subarray(0,G),j=C.subarray(G,G*2);return new A(a.fromBytes(z),a.fromBytes(j),H)}static fromHex(C,k){return this.fromBytes(Ps(C),k)}addRecoveryBit(C){return new A(this.r,this.s,C)}recoverPublicKey(C){const k=i.ORDER,{r:H,s:G,recovery:z}=this;if(z==null||![0,1,2,3].includes(z))throw new Error("recovery id invalid");if(o*Gf<k&&z>1)throw new Error("recovery id is ambiguous for h>1 curve");const J=z===2||z===3?H+o:H;if(!i.isValid(J))throw new Error("recovery id 2 or 3 invalid");const Y=i.toBytes(J),me=t.fromBytes(dn(_f((z&1)===0),Y)),Z=a.inv(J),_=T(ct("msgHash",C)),te=a.create(-_*Z),le=a.create(G*Z),ge=t.BASE.multiplyUnsafe(te).add(me.multiplyUnsafe(le));if(ge.is0())throw new Error("point at infinify");return ge.assertValidity(),ge}hasHighS(){return y(this.s)}toBytes(C=E){if(Xo(C),C==="der")return Ps(on.hexFromSig(this));const k=a.toBytes(this.r),H=a.toBytes(this.s);if(C==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return dn(Uint8Array.of(this.recovery),k,H)}return dn(k,H)}toHex(C){return rr(this.toBytes(C))}assertValidity(){}static fromCompact(C){return A.fromBytes(ct("sig",C),"compact")}static fromDER(C){return A.fromBytes(ct("sig",C),"der")}normalizeS(){return this.hasHighS()?new A(this.r,a.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return rr(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return rr(this.toBytes("compact"))}}const S=n.bits2int||function(C){if(C.length>8192)throw new Error("input is too large");const k=Xs(C),H=C.length*8-c;return H>0?k>>BigInt(H):k},T=n.bits2int_modN||function(C){return a.create(S(C))},U=Ys(c);function R(O){return Df("num < 2^"+c,O,hn,U),a.toBytes(O)}function v(O,C){return Nn(O,void 0,"message"),C?Nn(e(O),void 0,"prehashed message"):O}function M(O,C,k){if(["recovered","canonical"].some(te=>te in k))throw new Error("sign() legacy options not supported");const{lowS:H,prehash:G,extraEntropy:z}=ho(k,w);O=v(O,G);const j=T(O),J=Rn(a,C),Y=[R(J),R(j)];if(z!=null&&z!==!1){const te=z===!0?r(b.secretKey):z;Y.push(ct("extraEntropy",te))}const me=dn(...Y),Z=j;function _(te){const le=S(te);if(!a.isValidNot0(le))return;const ge=a.inv(le),oe=t.BASE.multiply(le).toAffine(),ye=a.create(oe.x);if(ye===hn)return;const Ke=a.create(ge*a.create(Z+ye*J));if(Ke===hn)return;let He=(oe.x===ye?0:2)|Number(oe.y&sr),ot=Ke;return H&&y(Ke)&&(ot=a.neg(Ke),He^=1),new A(ye,ot,He)}return{seed:me,k2sig:_}}function V(O,C,k={}){O=ct("message",O);const{seed:H,k2sig:G}=M(O,C,k);return n6(e.outputLen,a.BYTES,s)(H,G)}function Q(O){let C;const k=typeof O=="string"||$s(O),H=!k&&O!==null&&typeof O=="object"&&typeof O.r=="bigint"&&typeof O.s=="bigint";if(!k&&!H)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(H)C=new A(O.r,O.s);else if(k){try{C=A.fromBytes(ct("sig",O),"der")}catch(G){if(!(G instanceof on.Err))throw G}if(!C)try{C=A.fromBytes(ct("sig",O),"compact")}catch{return!1}}return C||!1}function q(O,C,k,H={}){const{lowS:G,prehash:z,format:j}=ho(H,w);if(k=ct("publicKey",k),C=v(ct("message",C),z),"strict"in H)throw new Error("options.strict was renamed to lowS");const J=j===void 0?Q(O):A.fromBytes(ct("sig",O),j);if(J===!1)return!1;try{const Y=t.fromBytes(k);if(G&&J.hasHighS())return!1;const{r:me,s:Z}=J,_=T(C),te=a.inv(Z),le=a.create(_*te),ge=a.create(me*te),oe=t.BASE.multiplyUnsafe(le).add(Y.multiplyUnsafe(ge));return oe.is0()?!1:a.create(oe.x)===me}catch{return!1}}function N(O,C,k={}){const{prehash:H}=ho(k,w);return C=v(C,H),A.fromBytes(O,"recovered").recoverPublicKey(C).toBytes()}return Object.freeze({keygen:d,getPublicKey:l,getSharedSecret:f,utils:m,lengths:b,Point:t,sign:V,verify:q,recoverPublicKey:N,Signature:A,hash:e})}function w6(t){const{CURVE:e,curveOpts:n}=qf(t),r=Vf(e,n);return x6(t,r)}function qf(t){const e={a:t.a,b:t.b,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},n=t.Fp;let r=t.allowedPrivateKeyLengths?Array.from(new Set(t.allowedPrivateKeyLengths.map(a=>Math.ceil(a/2)))):void 0;const s=ds(e.n,{BITS:t.nBitLength,allowedLengths:r,modFromBytes:t.wrapPrivateKey}),i={Fp:n,Fn:s,allowInfinityPoint:t.allowInfinityPoint,endo:t.endo,isTorsionFree:t.isTorsionFree,clearCofactor:t.clearCofactor,fromBytes:t.fromBytes,toBytes:t.toBytes};return{CURVE:e,curveOpts:i}}function B6(t){const{CURVE:e,curveOpts:n}=qf(t),r={hmac:t.hmac,randomBytes:t.randomBytes,lowS:t.lowS,bits2int:t.bits2int,bits2int_modN:t.bits2int_modN};return{CURVE:e,curveOpts:n,hash:t.hash,ecdsaOpts:r}}function C6(t,e,n){function r(s){const i=t.sqr(s),a=t.mul(i,s);return t.add(t.add(a,t.mul(s,e)),n)}return r}function x6(t,e){const{Fp:n,Fn:r}=e;function s(a){return xf(a,sr,r.ORDER)}const i=C6(n,t.a,t.b);return Object.assign({},{CURVE:t,Point:e,ProjectivePoint:e,normPrivateKeyToScalar:a=>Rn(r,a),weierstrassEquation:i,isWithinCurveOrder:s})}function D6(t,e){const n=e.Point;return Object.assign({},e,{ProjectivePoint:n,CURVE:Object.assign({},t,Nf(n.Fn.ORDER,n.Fn.BITS))})}function Kf(t){const{CURVE:e,curveOpts:n,hash:r,ecdsaOpts:s}=B6(t),i=Vf(e,n),a=E6(i,r,s);return D6(t,a)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function F6(t,e){const n=r=>Kf({...t,hash:r});return{...n(e),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const ol={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},S6={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},Nd=BigInt(2);function T6(t){const e=ol.p,n=BigInt(3),r=BigInt(6),s=BigInt(11),i=BigInt(22),a=BigInt(23),o=BigInt(44),c=BigInt(88),d=t*t*t%e,l=d*d*t%e,f=At(l,n,e)*l%e,m=At(f,n,e)*l%e,b=At(m,Nd,e)*d%e,w=At(b,s,e)*b%e,E=At(w,i,e)*w%e,y=At(E,o,e)*E%e,p=At(y,c,e)*y%e,x=At(p,o,e)*E%e,A=At(x,n,e)*l%e,S=At(A,a,e)*w%e,T=At(S,r,e)*d%e,U=At(T,Nd,e);if(!Yo.eql(Yo.sqr(U),t))throw new Error("Cannot find square root");return U}const Yo=ds(ol.p,{sqrt:T6}),Cs=F6({...ol,Fp:Yo,lowS:!0,endo:S6},Yc),v6=[{name:"appIdPrefix",binary:"bytes",custom:at.encode("appID"),omit:!0},{name:"appId",binary:"uint",size:8}];class Fe{static byteSize=32;static type="Universal";address;constructor(e,n="hex"){this.address=typeof e=="string"?Fe.stringToUint8Array(e,n):e}toNative(e){return yn(e,this)}unwrap(){return this.address}toString(){return Xe.encode(this.address,!0)}toUint8Array(){return this.address}toUniversalAddress(){return this}equals(e){return at.equals(this.address,e.address)}static isValidAddress(e,n="hex"){return!sb(()=>Fe.stringToUint8Array(e,n))}static instanceof(e){return typeof e=="object"&&"constructor"in e&&e.constructor.type===Fe.type}static ZERO=new Fe(new Uint8Array(Fe.byteSize));static stringToUint8Array(e,n){const r=(()=>{switch(n){case"hex":if(![40,2*this.byteSize].includes(e.length-(e.startsWith("0x")?2:0)))throw new Error(`string ${e} has invalid length for format ${n}`);return Xe.decode(e);case"base58":return Wu.decode(e);case"bech32":return Lu.decodeToBytes(e).bytes;case"algorandAppId":return Z2(Ot(v6,{appId:BigInt(e)}));case"sha256":return mf(e);case"keccak256":return Fa(e)}})();if(!r)throw new Error(`string ${e} could not be decoded for format ${n}`);if(r.length>Fe.byteSize)throw new Error(`string ${e} has invalid length for format ${n}`);return r.length<Fe.byteSize?at.zpad(r,Fe.byteSize):r}}function I6(t){return typeof t=="object"&&"setChain"in t}const Zo=new Map;function Qf(t,e){Zo.has(t)||Zo.set(t,e)}function yn(t,e){const n=vt.get(t),r=Zo.get(n);if(!r)throw new Error(`No native address type registered for platform ${n}, import the platform directly or, if using sdk package, import the addresses conditional export`);try{const s=new r(e);return I6(s)&&s.setChain(t),s}catch(s){const i=`Error parsing address as a native ${t} address: ${s.message}`;if(Fe.instanceof(e))throw i;return new Fe(e).toNative(t)}}function $f(t,e){const n=vt.get(t);return new Fe(e,Nb.get(n))}function k6(t){return"getVersion"in t}const On={};function U6(t,e,n){e in On||(On[e]={});const r=On[e];if(t in r)throw new Error(`Protocol ${t} for protocol ${e} has already registered`);On[e][t]=n}function P6(t,e){const n=Qs(t)?vt.get(t):t;return e in On?n in On[e]:!1}function Jf(t,e){if(e in On){const n=On[e];if(n&&t in n){const r=n[t];if(r)return r}}throw new Error(`No protocols registered for ${t}:${e}. This may be because the platform specific protocol implementation is not registered (by installing and importing it) or no implementation exists for this platform`)}const N6=(t,e,n,r)=>Jf(t,e).fromRpc(n,r),ec=(t,e)=>t?`${t}:${e}`:e,tc=new Map;function R6(t,e,n){const r=ec(t,e);if(tc.has(r))throw new Error(`Payload type ${r} already registered`);tc.set(r,n)}function We(t,e){for(const[n,r]of e)R6(t,n,r)}const Te={binary:"uint",size:32},Xf={binary:"uint",size:2},ut=t=>({...Xf,custom:{to:e=>{if(e===0){if(!t?.allowNull)throw new Error("ChainId 0 is not valid for this protocol and action");return null}const n=os(e),r=t?.allowedChains??Hu;if(!r.includes(n))throw new Error(`Chain ${n} not in allowed chains ${r}`);return n},from:e=>e==null?0:Ks(e)}}),O6=t=>({...Xf,custom:{to:t,from:Ks(t)}}),Qr={binary:"uint",size:4},Ta={binary:"uint",size:8},Yf={to:t=>new Date(Number(t*1000n)),from:t=>BigInt(t.getTime())/1000n},cl={binary:"uint",size:4},Bn=t=>({name:"payloadId",binary:"uint",size:1,custom:t,omit:!0}),va={binary:"uint",size:8};let M6=class{r;s;v;constructor(e,n,r){this.r=e,this.s=n,this.v=r}encode(){return Ot(ia,this)}static decode(e){return Mt(ia,e)}};var Rd;(function(t){function e(i){return Cs.getPublicKey(i)}t.toPubkey=e;function n(i,a){if(a.length!=32)throw new Error("hash.length != 32");return Cs.sign(a,i)}t.sign=n;function r(i,a,o){const{r:c,s:d}=i;return Cs.verify({r:c,s:d},o,a)}t.validate=r;function s(i,a){const{r:o,s:c,v:d}=i,l=new Cs.Signature(o,c);return l.recovery=d,l.recoverPublicKey(a).toRawBytes()}t.recover=s})(Rd||(Rd={}));const L6=[{name:"r",binary:"uint",size:32},{name:"s",binary:"uint",size:32},{name:"v",binary:"uint",size:1}],ia={binary:"bytes",layout:L6,custom:{to:t=>new M6(t.r,t.s,t.v),from:t=>({r:t.r,s:t.s,v:t.v})}},se={binary:"bytes",size:32,custom:{to:t=>new Fe(t),from:t=>t.toUint8Array()}},W6=t=>{const e=t.findIndex(n=>n!==0);return-1<e?t.slice(e):new Uint8Array([])},Zf={to:at.decode,from:at.encode},ll=t=>({binary:"bytes",size:t,custom:{to:e=>at.decode(W6(e)),from:e=>at.zpad(at.encode(e),t)}});function eh(t){const e=t.indexOf(":");return e!==-1?[t.slice(0,e),t.slice(e+1)]:[null,t]}const H6=[{name:"guardianIndex",binary:"uint",size:1},{name:"signature",...ia}],dl=[{name:"version",binary:"uint",size:1,custom:1,omit:!0},{name:"guardianSet",...cl},{name:"signatures",binary:"array",lengthSize:1,layout:H6}],ul=[{name:"timestamp",binary:"uint",size:4},{name:"nonce",binary:"uint",size:4},{name:"emitterChain",...ut()},{name:"emitterAddress",...se},{name:"sequence",...va},{name:"consistencyLevel",binary:"uint",size:1}],z6=[...dl,...ul];function Rs(t){const e=tc.get(t);if(!e)throw new Error(`No layout registered for payload type ${t}`);return e}function th(t){return{name:"payload",binary:"bytes",...t==="Uint8Array"?{}:{layout:Rs(t)}}}function Gi(t){const e=[...z6,th(t.payloadLiteral)];return Ot(e,t)}function G6(t,e){if(t==="Uint8Array")return e;const n=Rs(t);return Ot(n,e)}function fl(t,e){const n=(()=>{if(Array.isArray(t[0]))return t.flatMap(([a,o])=>o.map(c=>ec(a,c)));if(typeof t[1]=="string")return t;const[s,i]=t;return i.map(a=>ec(s,a))})(),r=bb(n.map(s=>Rs(s)));return(s=>{typeof s=="string"&&(s=Xe.decode(s));const i=r(s);return Array.isArray(i)?i.map(a=>n[a]):i!==null?n[i]:null})}function Wr(t,e){typeof e=="string"&&(e=Xe.decode(e));const[n,r]=Mt(dl,e,!1);for(let b=1;b<n.signatures.length;++b)if(n.signatures[b].guardianIndex<=n.signatures[b-1].guardianIndex)throw new Error("Guardian signatures must be in ascending order of guardian set index");const s=r,[i,a]=Mt(ul,e.subarray(s),!1),o=s+a,[c,d]=typeof t=="string"?[t,Od(t,e.subarray(o))]:Od(t,e.subarray(o)),[l,f]=eh(c),m=Fa(e.slice(s));return{protocolName:l,payloadName:f,payloadLiteral:c,...n,...i,payload:d,hash:m}}function Od(t,e,n=0){return(()=>{if(typeof e=="string"&&(e=Xe.decode(e)),t==="Uint8Array")return e.slice(n);if(typeof t=="string")return Mt(Rs(t),e.subarray(n));const r=t(e.slice(n));if(r===null)throw new Error(`Encoded data does not match any of the given payload types - ${e}`);return[r,Mt(Rs(r),e.subarray(n))]})()}function V6(t){return t.getBalances!==void 0}class nh{network;config;constructor(e,n){this.network=e,this.config=n}utils(){return this.constructor}getProtocol(e,n){return N6(this.utils()._platform,e,n,this.config)}getProtocolInitializer(e){return Jf(this.utils()._platform,e)}async parseWormholeMessages(e,n,r){return(await this.getProtocol("WormholeCore",n)).parseTransaction(r)}}const _6=[["Ethereum",[["ETH",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETH"}],["WETH",{symbol:"WETH",decimals:18,address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599"}],["USDT",{symbol:"USDT",decimals:6,address:"0xdac17f958d2ee523a2206206994597c13d831ec7"}],["DAI",{symbol:"DAI",decimals:18,address:"0x6b175474e89094c44da98b954eedeac495271d0f"}],["BUSD",{symbol:"BUSD",decimals:18,address:"0x4fabb145d64652a948d72533023f6e7a623c7c53"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x7c9f4C87d911613Fe9ca58b579f737911AAD2D43",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x418D75f65a02b3D53B2418FB8E1fe493759c7605",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x7cd167B101D2808Cfd2C45d17b2E7EA9F46b74B6",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x85f138bfEE4ef8e540890CFb48F620571d67Eda3",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x39EbF69137D98FB7659Ef8D4ea21ec26394389d7",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x4cD2690d86284e044cb63E60F1EB218a825a7e92",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x3294395e62F4eB6aF3f1Fcf89f5602D90Fb3Ef69",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x93d3696A9F879b331f40CB5059e37015423A3Bd0",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xD31a59c85aE9D8edEFeC411D448f90841571b89c",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x41f7B8b9b897276b7AAE926a9016935280b44E97",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x84074EA631dEc7a4edcD5303d164D5dEa4c653D6",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x8CDf7AF57E4c8B930e1B23c477c22f076530585e",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0xb945E3F853B5f8033C8513Cf3cE9F8AD9beBB1c9",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xCFc006a32a98031C2338BF9d5ff8ED2c0Cae4a9e",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x8B5653Ae095529155462eDa8CF664eD96773F557",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x1D4241F7370253C0f12EFC536B7e16E462Fb3526",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x18084fbA666a33d37592fA2633fD49a74DD93a88"}],["tBTCpolygon",{symbol:"tBTC",decimals:18,address:"0xb4c624dBC50804dA086cf2380cD55dEBC0d22E96",original:"Polygon"}],["tBTCoptimism",{symbol:"tBTC",decimals:18,address:"0xB8d1E0642bFD3744CaBd2ca8830cFabE19b2Ca54",original:"Optimism"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x4F3819A6cfF717BFfE801a75c73A984141c76589",original:"Arbitrum"}],["tBTCbase",{symbol:"tBTC",decimals:18,address:"0x733F28B3e315046Db01dAbC292D6F0F7F26C4551",original:"Base"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x9AEA32B459e96C8eF5010f69130bf95fd129ac05",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0xeFc0CED4B3D536103e76a1c4c74F0385C8F4Bdd3",original:"Solana"}]]],["Bsc",[["WETH",{symbol:"WETH",decimals:18,address:"0x4DB5a66E937A9F4473fA95b1cAF1d1E1D62E29EA",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xB04906e95AB5D797aDA81508115611fee694c2b3",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x43359676E1A3F9FbB5de095333f8e9c1B46dFA44",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x524bC91Dc82d6b90EF29F76A3ECAaBAffFD490Bc",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x3413a030EF81a3dD5a302F4B4D11d911e12ed337",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:18,address:"0x035de3679E692C471072d1A09bEb9298fBB2BD31",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0xc836d8dC361E44DbE64c4862D55BA041F88Ddd39",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0xe6d82Bbe75041E42E51d755e922cE1BA91af9c4d",original:"Polygon"}],["BNB",{symbol:"BNB",decimals:18,address:"native",wrappedKey:"WBNB"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x96412902aa9aFf61E13f085e70D3152C6ef2a817",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xc88Dc63bf0c8c8198C97Db0945E3eF25Ca89A8e4",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xbF8413EE8612E0E4f66Aa63B5ebE27f3C5883d47",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x2A335e327a55b177f5B40132fEC5D7298aa0D7e6",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x1C063db3c621BF901FC6C1D03328b08b2F9bbfba",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xfA54fF1a158B5189Ebba6ae130CEd6bbd3aEA76e",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x91Ca579B0D47E5cfD5D0862c21D5659d39C8eCf0",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x8314f6Bf1B4dd8604A0fC33C84F9AF2fc07AABC8",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x2Ba98cf7Edd2c5C794e21bc3Dc6973D3C2585eE3",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0xaA1eEdABC48D078350ccBdD620bD088848e299E5",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0x5caa170b465122D15a6D20FD9A804a9613CE7882",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x94AEc09B5e2CE591e39DC6aa58A3A6E85Ed45265",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xa41ae127D04F7ee73B5058E2C60Fb7c7A2D21F79",original:"Optimism"}],["WETHbsc",{symbol:"WETH",decimals:18,address:"0x2170Ed0880ac9A755fd29B2688956BD959F933F8"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x9dc152F4941cE1A138326e70c3600385bf0C22dD",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x55CaD531c8E303Cab8B3BE4bB4744Db4f896ac81",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x94c97dd3Bde5bC1406BCe82E7941A6365968521D",original:"Ethereum"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0xad80E1A9B5824234afA9dE1F3bbDb8a994796169",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0xEA970e7b7D131Ea36c3051C9Ca11e785462fE00c",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0xb0188B0bb2cD4a6D2744637fC83C94a284B247Da",original:"Solana"}],["USDTbsc",{symbol:"USDT",decimals:18,address:"0x55d398326f99059fF775485246999027B3197955"}]]],["Polygon",[["WETH",{symbol:"WETH",decimals:18,address:"0x11CD37bb86F65419713f30673A480EA33c826872",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x4318CB63A2b8edf2De971E2F17F77097e499459D",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x5D49c278340655B56609FdF8976eb0612aF3a0C3",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x9417669fBF23357D2774e9D421307bd5eA1006d2",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x732EB1747ecCFC431fF19bc359ffc83755B1918c",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:18,address:"0x95ea750420da26bE1Ab0891e209e921bCd84763f",original:"Ethereum"}],["MATIC",{symbol:"MATIC",decimals:18,address:"native",wrappedKey:"WMATIC"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270"}],["WETHpolygon",{symbol:"WETH",decimals:18,address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xeCDCB5B88F8e3C15f95c720C51c71c9E2080525d",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x4B3a922c773BDCF3BA8f1A4FDAc2029E1D0E9868",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x7Bb11E7f8b10E9e571E5d8Eace04735fDFB2358a",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xAEA5CC14DefbC1b845FDE729E563B717Ee6825ae",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x3726831304D77f585f1Aca9d9841cc3Ef80dAa62",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x922F49a9911effc034eE756196E59BE7b90D43b3",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xcC48d6CF842083fEc0E01d913fB964b585975F05",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xd93f7E271cB87c23AaA73edC008A79646d1F9912",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x576Cf361711cd940CD9C397BB98C4C896cBd38De",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x34bE049fEbfc6C64Ffd82Da08a8931A9a45f2cc8",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xa4ef199d3ad524E9C3C51Ac46B303B103A307Cef",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x6a5c59AB16268d2c872916054C50440B999e417C",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0x7800FE8951cdc1cDea748d878fAce63018D97960",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x8182De59485Bb646542Db8C7E5958148Dc699319",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x31F12aCb60C3c32EE884F3894a873347C097D925",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x5BCf8d8c097FbB35C371F921E3FF3e6F6Eb54B41",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x1eeCaB0F75fE93abbFa0cDFfb4fB13d1dC8706c8",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x3362b2B92b331925F09F9E5bCA3E8C43921a435C",original:"Ethereum"}],["tBTCpolygon",{symbol:"tBTC",decimals:18,address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b"}],["tBTCoptimism",{symbol:"tBTC",decimals:18,address:"0x68A8797da1c8ED592600d70A5151886A92D2183C",original:"Optimism"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x045D8c62D5326aa51a31518ECF3aF80C17421Aba",original:"Arbitrum"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0xe082a7Fc696De18172Ad08D956569Ee80BC37f06",original:"Ethereum"}],["wstETHpolygon",{symbol:"wstETH",decimals:18,address:"0x03b54A6e9a984069379fae1a4fC4dBAE93B3bCCD"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x415ce980fde17F1FF102e1c6e4ce860Acc615D74",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0xFa4B761A1e07909Ba31331a5dfa12390E3ff5583",original:"Solana"}],["USDTpolygon",{symbol:"USDT",decimals:6,address:"0xc2132D05D31c914a87C6611C10748AEb04B58e8F"}]]],["Avalanche",[["WETH",{symbol:"WETH",decimals:18,address:"0x8b82A291F83ca07Af22120ABa21632088fC92931",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xB24CA28D4e2742907115fECda335b40dbda07a4C",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x1C0e79C5292c59bbC13C9F9f209D204cf4d65aD6",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x9d228444FC4B7E15A2C481b48E10247A03351FD8",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0xca319f81D147559e19A522A0a0310Dd43A96cA0F",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0xf2f13f0B7008ab2FA4A2418F4ccC3684E49D20Eb",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0xDb2d08f5A9C9ADBBA0DE5a69bbB1E9Ca03411692",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x442F7f22b1EE2c842bEAFf52880d4573E9201158",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x6145E8a910aE937913426BF32De2b26039728ACF",original:"Bsc"}],["AVAX",{symbol:"AVAX",decimals:18,address:"native",wrappedKey:"WAVAX"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"}],["WETHavax",{symbol:"WETH",decimals:18,address:"0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xd19abc09B7b36F7558929b97a866f499a26c2f83",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x494317B8521c5a5287a06DEE467dd6fe285dA4a8",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x375aA6C67BF499fBf01804A9f92C03c0776F372d",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xFE6B19286885a4F7F55AdAD09C3Cd1f906D2478F",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x0950Fc1AD509358dAeaD5eB8020a3c7d8b43b9DA",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x1703CB0F762D2a435199B64Ea47E5349B7C17480",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x43c588459b3243fA541B98CC4B2E995b3de553A2",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0xDfDA518A1612030536bD77Fd67eAcbe90dDC52Ab",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0x4b5fE357Eb11c735078e47526D6e853DBff18541",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xDf11535274c0FD2Fe41A88bd1bBF802D72296037",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xBe04f76A0ba2100c3F2d6Aa1FD8484F415469573",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0xFA83178c66fE51ee99109b5cC912f8098Ff812eF",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xab933e939a9236BD439F7d29b87CE712f42bAC06",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x3F531c038A0D2d9c7D19FC3554cd0439791526c4",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x126C03982Ad6D7ef7E6aF020bF219e87185a6BC3",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x8A0691e602B7a5FCc51a27E4a08376dE50889B42",original:"Solana"}],["USDTavax",{symbol:"USDT",decimals:6,address:"0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7"}]]],["Fantom",[["WETH",{symbol:"WETH",decimals:18,address:"0x2A126f043BDEBe5A0A9841c51915E562D9B07289",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x2Ec752329c3EB419136ca5e4432Aa2CDb1eA23e6",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x87e9E225aD8a0755B9958fd95BE43DD6A91FF3A7",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x14BCb86aEed6a74D3452550a25D37f1c30AA0A66",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0xEE786D3D73Ea645365c7248E4e40eDba08B1169F",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0xb88A6064B1F3FF5B9AE4A82fFD52560b0dF9FBD3",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0xB4DcfD221048a1Dad989D39456BBd87762c26F06",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xc033551e05907Ddd643AE14b6D4a9CA72BfF509B",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x0FcbDAC44c67A43607D3E95886dB19871ADc985F",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x358CE030DC6116Cc296E8B9F002728e65459C146",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xEfE7701cb2B80664385Be226d0300912CA92f66A",original:"Avalanche"}],["FTM",{symbol:"FTM",decimals:18,address:"native",wrappedKey:"WFTM"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83"}],["CELO",{symbol:"CELO",decimals:18,address:"0xF432490C6c96C9d3bF523a499a1CEaFd8208A373",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xBF227E92D6754EB4BFE26C40cb299ff2809Da45f",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xd99021C2A33e4Cf243010539c9e9b7c52E0236c1",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0xb8398DA4FB3BC4306B9D9d9d13d9573e7d0E299f",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xC277423a21F6e32D886BF85Ef6cCB945d5D28347",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x3Cd9162Ca5256b8E26A0e3Ad14CCfF7C0Da0F174",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0xE8367853A0823515D37b1538331B4704089becb4",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0x2228703672906fEe5eD681Ec28e42B4506b8c336",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xe8E8f941377A955bFA72880ec0dc2319dbC827a8",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x385b219f0C4fa2e84EfE5aaf9692a821C57B8248",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0xd3365E7355230c78098b44B172eE27DAB95B041A",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xd9E4C283d8A49Dc3767A6F5a4dFdc1d0cEf21604",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xeE27799cF29D7F64647B92f47d543B382B49f83E",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x787e2F3509583C0F03A339Be0826463C839CBE5E",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x77ad3B2dA29FBd208F12c3C701E969F4422aAD79",original:"Solana"}]]],["Celo",[["WETH",{symbol:"WETH",decimals:18,address:"0x66803FB87aBd4aaC3cbB3fAd7C3aa01f6F3FB207",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x37f750B7cC259A2f741AF45294f6a16572CF5cAd",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0xd71Ffd0940c920786eC4DbB5A12306669b5b81EF",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x617f3112bf5397D0467D315cC709EF968D9ba546",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x97926a82930bb7B33178E3c2f4ED1BFDc91A9FBF",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:18,address:"0x1dd42c0785ca90B677adc2ABad01dfc5ECcD0b4d",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x9C234706292b1144133ED509ccc5B3CD193BF712",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0x42c76808f3179A091Ee007A2955aF2522978ADE7",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xBf2554ce8A4D1351AFeB1aC3E5545AaF7591042d",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x9d9abAE97a9344e3854527b4efbB366a1564bfEb",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0xFFdb274b4909fC2efE26C8e4Ddc9fe91963cAA4d",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x62FFf2D2D1692D52eAf043AeeC727F7918d269D3",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xd1A342eE2210238233a347FEd61EE7Faf9f251ce",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x471ece3750da237f93b8e339c536989b8978a438"}],["USDT",{symbol:"USDT",decimals:6,address:"0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x383A5513AbE4Fe36e0E00d484F710148E348Aa9D",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x4581E64115d46CcdeE65Be2336bEc86c9BA54C01",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x8B6eef6C449D3Ac723a9C06a9eaE2dCd7d308BA9",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x1Cb9859B1A16A67ef83A0c7b9A21eeC17d9a97Dc",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x89F2b718Ca518db39d377F0ABBa6B42582b549F7",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0xc6F962fCcb140ece554AfD0E589f971532A57f14",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xA41a62567d9eb960D84b72663FdaeBE0BCdE2683",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x8d53771b1Ec7461f8e45Bca2609c45bC0bbd0677",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xEe48963C003e21EaCEdFA8a0A19BB3cbF7E776Fe",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x905CADB645684140E285e2D09D39dF5a2082BC87",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x2e2acb1782Aad0490f8446b6fD4626C467987bD6",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xFaED7314060FCEc652ED91D9eac6c980DCA9D3B8",original:"Ethereum"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x72878E7d3A8746e0c91b9F16F0b8ee4fDE9DDc06",original:"Arbitrum"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0xe304254de5c2048F9bFb042dDFB54f84d1d77730",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x985aa4814419ba338379A634785216301e51113D",original:"Solana"}]]],["Moonbeam",[["WETH",{symbol:"WETH",decimals:18,address:"0xab3f0245B83feB11d15AAffeFD7AD465a59817eD",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x931715FEE2d06333043d11F658C8CE934aC61D0c",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0xE57eBd2d67B462E9926e04a8e33f01cD0D64346D",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xc30E9cA94CF52f3Bf5692aaCF81353a27052c46f",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x06e605775296e851FF43b4dAa541Bb0984E9D6fD",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:18,address:"0xa2284e1F98E4d0B7Eb6a6b4f3C57f1b209C755F3",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x82DbDa803bb52434B1f4F41A6F0Acb1242A7dFa3",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0x4415BfBDee669446550d55c749007EF60B520FC8",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xE3b841C3f96e647E6dc01b468d6D0AD3562a9eeb",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x7f433E22366E03a3758CE22cCf82887d828078f8",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0xd4937A95BeC789CC1AE1640714C61c160279B22F",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xd4918c40cA9f02d42Cb53d06587aF42017Bc345D",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x609AedD990bf45926bca9E4eE988b4Fb98587D3A",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0xc1a792041985F65c17Eb65E66E254DC879CF380b",original:"Celo"}],["GLMR",{symbol:"GLMR",decimals:18,address:"native",wrappedKey:"WGLMR"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xAcc15dC74880C9944775448304B263D191c6077F"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x99Fec54a5Ad36D50A4Bba3a41CAB983a5BB86A7d",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x098d6eE48341D6a0a0A72dE5baaF80A10E0F6082",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x484eCCE6775143D3335Ed2C7bCB22151C53B9F49",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x25331575641d35D9765e1934acC8F0991c58e904",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x18872b45c603eD2EbC508b9C5514a85c2e2791FB",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xd4870F7F5AD8Ae5139E1a5D8AD4ac55204aE4490",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x7143e8EA96e158381057a58AfdDF44601c7e532C",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x6C6f83366A42fcA4D30a2D3f1914284de995Ac3a",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xE6d02a875CcC153c076fe418f33De3A5C420f505",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xeCd65E4B89495Ae63b4f11cA872a23680A7c419c",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0xf0a9476E4712123A807859f9Fd25fe98213379BD",original:"Klaytn"}]]],["Solana",[["WETH",{symbol:"WETH",decimals:8,address:"7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"A9mUU4qviSctJVPJdBJWkb28deg915LYJKrzQ19ji3FM",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"Dn4noZ5jgGfkntzcQSUZ8czkreiZ1ForXYoV2H8Dm7S1",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"EjmyN6qEC1Tf1JxiG1ae7UTJhUxSwk1TCWNWqxWV4J6o",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:8,address:"33fsBLA8djQm82RpHmE3SuVrPGtZBWNYExsEUeKX1HXX",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"Gz7VkD4MacbEB6yC5XD3HcumEiYx2EtDYYrfikGsvopG",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"9gP2kCy3wA1ctvYWQk75guqXuHfrEomqydHLtcTCqiLa",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:8,address:"FCqfQSujuPxy6V42UvafBhsysWtEq1vhjfMN1PUbgaxA",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"KgV1GvrHQmRBY8sHQQeUKwTm2r2h8t4C8qt12Cw1HVE",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"FHfba3ov5P3RjaiLVgh8FTv4oirxQDoVXuoUUDvHuXax",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"DRQBDBEWmwWGK13fRTLhSPzjbvMSUavhV6nW4RUH8W6T",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"9kvAcwQbqejuJMd59mKuw2bfSsLRaQ7zuvaTVHEeBBec",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"7ixSaXGsHAFy34wogPk2YXiUX3BMmQMFdercdaHLnBby",original:"Moonbeam"}],["SOL",{symbol:"SOL",decimals:9,address:"native",wrappedKey:"WSOL"}],["WSOL",{symbol:"WSOL",decimals:9,address:"So11111111111111111111111111111111111111112"}],["USDCsol",{symbol:"USDC",decimals:6,address:"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"}],["SUI",{symbol:"SUI",decimals:8,address:"G1vJEgzepqhnVu35BN4jrkv3wVwkujYWFFCxhbEZ1CZr",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"6LNeTYMqtNm1pBFN8PfhQaoLyegAH8GD32WmHU9erXKN",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"CSD6JQMvLi46psjHdpfFdr826mF336pEVMJgjwcoS1m4",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"CR4xnGrhsu1fWNPoX4KbTUUtqGMF3mzRLfj4S6YEs1Yo",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"8M6d63oL7dvMZ1gNbgGe3h8afMSWJEKEhtPTFM2u8h3c",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"DWXe1hxpnb8LAH21iyXcjvMbiAGzoYyuCVQtRLvZdLYd",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"EfqRM8ZGWhDTKJ7BHmFvNagKVu3AxQRDQs8WMMaoBCu6",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"25rXTx9zDZcHyTav5sRqM6YBvTGu9pPH9yv83uAEqbgG",original:"Ethereum"}],["tBTCsol",{symbol:"tBTC",decimals:8,address:"6DNSN2BJsaPFdFFc1zP37kkeNe4Usc1Sqkzr9C9vPWcU"}],["wstETH",{symbol:"wstETH",decimals:8,address:"ZScHuTtqZukUrtZS43teTKGs2VqkKL8k4QCouR2n6Uo",original:"Ethereum"}],["PYTH",{symbol:"PYTH",decimals:6,address:"HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3"}]]],["Sui",[["WETH",{symbol:"WETH",decimals:8,address:"0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5::coin::COIN",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x27792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c::coin::COIN",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"0xdbe380b13a6d0f5cdedd58de8f04625263f113b3f9db32b3e1983f49e2841676::coin::COIN",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0x5c8c9082401982e8c2519a5c12883a5475295bf5cec4a0a13c26d35dd9a20d73::coin::COIN",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"0xb848cce11ef3a8f62eccea6eb5b35a12c4c2b1ee1af7755d02d7bd6218e8226f::coin::COIN",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:8,address:"0x909cba62ce96d54de25bec9502de5ca7b4f28901747bbf96b76c2e63ec5f1cba::coin::COIN",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"0x1e8b532cca6569cab9f9b9ebc73f8c13885012ade714729aa3b450e0339ac766::coin::COIN",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xe596782fbaebef51ae99ffac8731aed98a80642b9dc193ed659c97fbc2cc0f84::coin::COIN",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"0x6081300950a4f1e2081580e919c210436a1bed49080502834950d31ee55a2396::coin::COIN",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"0xa198f3be41cda8c07b3bf3fee02263526e535d682499806979a111e88a5a8d0f::coin::COIN",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"0x66f87084e49c38f76502d17f87d17f943f183bb94117561eb573e075fdc5ff75::coin::COIN",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0xb231fcda8bbddb31f2ef02e6161444aec64a514e2c89279584ac9806ce9cf037::coin::COIN",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x2::sui::SUI"}],["APT",{symbol:"APT",decimals:8,address:"0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37::coin::COIN",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"0x33744e7df340a4d01c23f6b18c13563f767545ea95f976f8045f056358419da3::coin::COIN",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xc3f8927de33d3deb52c282a836082a413bc73c6ee0bd4d7ec7e3b6b4c28e9abf::coin::COIN",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"0xaab14ec22908de73d1b0619f5e03842398f8e68262981bd35ef44b42d22b23a::coin::COIN",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x6037801f060f0f54b3817bca05e3c8b9b9ffaa2da8e93fd5b80fa662aa3c9e55::coin::COIN",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"0xaecbc804fa7ca7cffc74c9a05eb6ae86fda0c68375b5c1724204a1065bcb239a::coin::COIN",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x7e3e74afcc1913aa9491c8cee89b02131a6e5519b090f16b54321835c1241cfb::coin::COIN",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"0xbc3a676894871284b3ccfb2eec66f428612000e2a6e6d23f592ce8833c27c973::coin::COIN",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:8,address:"0xa5ec915864d7f37b25ca9144b2db6ebcf29e73603c2ccf9d0e765adcd9049a98::coin::COIN",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x9c6d76eb273e6b5ba2ec8d708b7fa336a5531f6be59f326b5be8d4d8b12348a4::coin::COIN",original:"Solana"}]]],["Aptos",[["WETH",{symbol:"WETH",decimals:8,address:"0xcc8a89c8dce9693d354449f1f73e60e14e347417854f029db5bc8e7454008abb::coin::T",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x5e156f1207d0ebfa19a9eeff00d62a282278fb8719f4fab3a586a0a2c0fffbea::coin::T",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0xae478ff7d83ed072dbc5e264250e67ef58f57c99d89b447efd8a0a2e8b2be76e::coin::T",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xa2eda21a58856fda86451436513b867c97eecb4ba099da5775520e0f7492e852::coin::T",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"0x407a220699982ebb514568d007938d2447d33667e4418372ffec1ddb24491b6c::coin::T",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:8,address:"0x77400d2f56a01bad2d7c8c6fa282f62647ce3c03f43f2a8742e47ea01a91e24a::coin::T",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"0x6781088e2a1629d38eda521467af4a8ca7bfa7e5516338017940389595c85c0f::coin::T",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0xc5fd7820e9f053e6dd8e7dd8ca3ce8e9b10d200ba1692bdeb7a035217180ad4a::coin::T",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"0x6312bc0a484bc4e37013befc9949df2d7c8a78e01c6fe14a34018449d136ba86::coin::T",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:8,address:"0x79a6ed7a0607fdad2d18d67d1a0e552d4b09ebce5951f1e5c851732c02437595::coin::T",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"0x5b1bbc25524d41b17a95dac402cf2f584f56400bf5cc06b53c36b331b1ec6e8f::coin::T",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x39d84c2af3b0c9895b45d4da098049e382c451ba63bec0ce0396ff7af4bb5dff::coin::T",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"0xd1aa2ff36a0e93e1b4e4fecdecf8bb95bc5de399061c5e84b515281f48718842::coin::T",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"0xac0c3c35d50f6ef00e3b4db6998732fe9ed6331384925fe8ec95fcd7745a9112::coin::T",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"0x7ab1283a7b13c4254d4e1f803d7ce6578442c1d7a40d0faee41cd48ba4884c8a::coin::T",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"0xdd89c0e695df0692205912fb69fc290418bed0dbe6e4573d744a6d5e6bab6c13::coin::T",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0xc91d826e29a3183eb3b6f6aa3a722089fdffb8e9642b94c5fcd4c48d035c0080::coin::T",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"0xa72a97e872be9ee3d2f14d56fd511eb7e4a53f4055be3a267d8602e7685b41c0::coin::T",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x1::aptos_coin::AptosCoin"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"0x0e977796d7bfb3263609b90dffd264c7bd078ce35dac42b55302858d9fa3452b::coin::T",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xca3a2c28bc8c6c762f752dd2a4ebbfd00356ca99977ce6636e3af5897124a87a::coin::T",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"0x6a7a7f36ef5e2d0e65fcf72669c20d514d68298b0f76c7554517208f73260aaf::coin::T",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x4f6ecb05a797902d472abc2f5804bde93a53d8b75f14f767824cdb1623a4ee83::coin::T",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"0x5b5f14781164cf77185a7b6acd8e4f3cbb7e7cfb1cd5760d2b8af81075fc153d::coin::T",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xfcc4fcd734d5b8578fb629d238d15264a49eca6165c7444c21feec3b4962eb88::coin::T",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"0x9d5a0f8215301fa8096df332b1533f6328f18c32fbac2a7089cfbea73b3068a7::coin::T",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:8,address:"0x539b652f8230a0e42adaeda4706b5639893d22362eda6ea897493c210cb48219::coin::T",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x770211b47954e15bec1a4271bf33bacebc2d2adb43b7dc1ca45efa787615dd4c::coin::T",original:"Solana"}]]],["Base",[["WETH",{symbol:"WETH",decimals:18,address:"0x71b35ECb35104773537f849FBC353F81303A5860",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xec267C53f53807c2337C257f8AC3Fc3cC07cc0ed",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0xE6396f780b543dF16ee3b784D789c75B68319db0",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xFf0C62A4979400841eFaA6faADb07Ac7d5C98b27",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x617Edadb51BfB43A44Bb91C7402129C23bA52381",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0xc863399E5c5C4011B1DC3fB602902C77BA72B709",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0xFe1579BAc60363c8572CB30Bf4DD1Fd85811BBF8",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x7fdAa50d7399ac436943028edA6ed9a1BD89509f",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x68E2b07F92ed506f92935d7359ECA84D5342dbb4",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0xc449A60A31E1eebFE83c42E9465fd4Dc318aE9a7",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xD83385fE100E20c269a5975D4Bf92525BcE09F87",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x936Fa2DE8380Dc5BF34C80F1BaD53a9f3630263B",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x74df3823aA29D278cAD0A3632fCB56C896a38eD4",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xfdB7311BeC3b2CcCF8407d0585f81B97b3b5eff1",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x1C61629598e4a901136a81BC138E5828dc150d67",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0xe8CE40EBBB844142400D21558a2F1c9683d69139",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x36c6FBF7B49bF65f5F82b674af219C05b2a4aDD1",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x1d36126289Be1658297A35CC3EB2BB80A7D7A04b",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x9D36e0edb8BBaBeec5edE8a218dc2B9a6Fce494F",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xb96B82Cd6D45d98Fb6897D16A5E4EE888329C513",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xCb725aC8d9985D3bE306Dd9e1517d3702929176c",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xc6bfBeb3002aD563D2d1f72614C61C83Bf147Acd",original:"Optimism"}],["ETHbase",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHbase"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x4200000000000000000000000000000000000006"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}],["wstETHbase",{symbol:"wstETH",decimals:18,address:"0xc1CBa3fCea344f92D9239c08C0568f6F2F0ee452"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x9EE95E6Bd1B3C5740F105d6fb06b8BDeF64Eec70",original:"Ethereum"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x56D0873e0eCA4a56063e1BF945788365666CFBFC",original:"Arbitrum"}],["tBTCbase",{symbol:"tBTC",decimals:18,address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0xEd4e2FD35161c3c0e33cA187fce64C70d44Ce32b",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x41c433c146c47Dc53FC48cDc69e406e365e298E1",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x4c5d8A75F3762c1561D96f177694f67378705E98",original:"Solana"}],["USDTbase",{symbol:"USDT",decimals:6,address:"0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2"}]]],["Arbitrum",[["WETH",{symbol:"WETH",decimals:18,address:"0xD8369C2EDA18dD6518eABb1F85BD60606dEb39Ec",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xC96F2715E2a242d50D1b0bC923dbe1740b8eCf18",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0x397846a8078d4845c7f5c6Ca76aeBbcFDc044fAe",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xE4728F3E48E94C6DA2B53610E677cc241DAFB134",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x5c4f2FEFB97F7DF09E762d95C83f0Ccf8bCe8234",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x3ab0E28C3F56616aD7061b4db38aE337E3809AEA",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0x599ADB10E6A012dF34935D47407450f6D7170e3C",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x7AF00405916D823eDb1121546EfA6F4972B51b84",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x1a0590F951bc9C3818Ce75ba5Bbe92831b2cf57e",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x565609fAF65B92F7be02468acF86f8979423e514",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x93e0FcbEd43CD6fC30DF00CcBD4669718dc74e77",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x7f7dcDb91930033a4Eb269196EBb6fd5f0644E4B",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x4E51aC49bC5e2d87e0EF713E9e5AB2D71EF4F336",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x944C5b67a03e6Cb93Ae1E4B70081f13b04CDB6Bd",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x3870546cfd600ba87e4180686d29dC993A45d3B7",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xCF79d86B8a830030aF6D835737d6eac3bE823fD7",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x4EdeF400eDe5309240814b5FC403F224504604e9",original:"Aptos"}],["ETHarbitrum",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHarbitrum"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xB1fC645a86fB5085e12D8BDDb77702F728D2A26F",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x3A5C2Da9E30741cb59a5e9446A23A86886fC9DC2",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0xBAfbCB010D920e0Dab9DFdcF634De1B777028a85",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x8619F97D4d08382548F536E5CE1D3e0D9bA40326",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x57723abc582DBfE11Ea01f1A1f48aEE20bD65D73",original:"Ethereum"}],["tBTCpolygon",{symbol:"tBTC",decimals:18,address:"0x3bab04bDFd2Dc3640c2B9390A2Da05bC1192D482",original:"Polygon"}],["tBTCoptimism",{symbol:"tBTC",decimals:18,address:"0x2519010b6585247BcDC8BcDa5C8730Be754b8c76",original:"Optimism"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0xf2717122Dfdbe988ae811E7eFB157aAa07Ff9D0F",original:"Ethereum"}],["wstETHarbitrum",{symbol:"wstETH",decimals:18,address:"0x5979D7b546E38E414F7E9822514be443A4800529"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0xFA95f6c796E54F9C4a99392CAE84410a25794BB3",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0xE4D5c6aE46ADFAF04313081e8C0052A30b6Dd724",original:"Solana"}],["USDTarbitrum",{symbol:"USDT",decimals:6,address:"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"}]]],["Optimism",[["WETH",{symbol:"WETH",decimals:18,address:"0xb47bC3ed6D70F04fe759b2529c9bc7377889678f",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x711e53D031ea9B0bb0C24dD506df11b41AEA419e",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0xB214C19d81c99E75e84706a3aa0A757319023e26",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xf6B4185FCf8aF291c0E3927fbEab7046b4f6A8CA",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x098EA47D630b46df1E08e389e5e4466119c7dd30",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x8f02B6a32cebcAe44D2Fd17d87966f5B5dD14c6d",original:"Polygon"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0xbB1EaB9Eb8fDf65F0E291D013DA07B4b65a27a01",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x6A09fE65ACa27C12573F04aAFa290bD75497E1BC",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:18,address:"0x1C15057d1F3794C934a6cBC1f7EceE934050F219",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x8418C1d909842f458c9394886b83F19d62bF1A0D",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x355f0a8a7ecAeD971b8Fbd50994558291ff2413a",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x0b0ecbe5C3995541876d27633B63296570FB34Af",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x9b88D293b7a791E40d36A39765FFd5A1B9b5c349",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xbffD46DFDb8d3a02b8D2E0F864a2cD712090a4D3",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xba1Cf949c382A32a09A17B2AdF3587fc7fA664f1",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x6F974A6dfD5B166731704Be226795901c45Bb815",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x27A533e438892DA192725b4C9AcA51447F457212",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xC5B3AC2DF8D8D7AC851F763a5b3Ff23B4A696d59",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x825206E1D29456337769e6f1384101E997C6A732",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xa6252F56cc6eEA21165d56744C795F91c8a3Cf68",original:"Arbitrum"}],["ETHoptimism",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHoptimism"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x4200000000000000000000000000000000000006"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x0b2c639c533813f4aa9d7837caf62653d097ff85"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x3F369a664fa665e01e8EB9f20bFcE03A0CAb8971",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xb931c7BbD87A6e249EaA7355B13927F9c99Bce87",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xeC0a755664271b87002dDa33CA2484B24aF68912",original:"Ethereum"}],["tBTCpolygon",{symbol:"tBTC",decimals:18,address:"0xE4C32B9eA749fa0342B1C42C01E80028B97c3917",original:"Polygon"}],["tBTCoptimism",{symbol:"tBTC",decimals:18,address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x2390a5131fcba6e47f702172cF4876589E4161c6",original:"Arbitrum"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0x855CFcEEe998c8ca34F9c914F584AbF72dC88B87",original:"Ethereum"}],["wstETHoptimism",{symbol:"wstETH",decimals:18,address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0xbbeF8233a0d10EEAb84E913FaDB337ab9b62F683",original:"Klaytn"}],["PYTH",{symbol:"PYTH",decimals:6,address:"0x99C59ACeBFEF3BBFB7129DC90D1a11DB0E91187f",original:"Solana"}],["USDToptimism",{symbol:"USDT",decimals:6,address:"0x94b008aA00579c1307B0EF2c499aD98a8ce58e58"}]]],["Wormchain",[["WETH",{symbol:"WETH",decimals:8,address:"wormhole18csycs4vm6varkp00apuqlsm7v4twg8jsljk8wfdd7cghr7g4rtslwqndm",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"wormhole1utjx3594tlvfw4375esgu72wa4sdgf0q7x4ye27husf5kvuzp5rsr72gdq",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"wormhole1nz0r0au8aj6dc00wmm3ufy4g4k86rjzlr8wkf92cktdlps5lgfcqxnx9yk",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"wormhole1w27ekqvvtzfanfxnkw4jx2f8gdfeqwd3drkee3e64xat6phwjg0savgmhw",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"wormhole1chejx4qqtvwxy6684yrsmf6pylancxqhk3vsmtleg5ta3zrffljqfscg87",original:"Ethereum"}],["BUSD",{symbol:"BUSD",decimals:8,address:"wormhole1msyushf6d76u9wupuvm6jdvc0x4trmv5w5kxr0hyt7n9npp233usg7pkhm",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"wormhole1xmpenz0ykxfy8rxr3yc3d4dtqq4dpas4zz3xl6sh873us3vajlpszn4ph7",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"wormhole169nr66h9gcsfljvsnxnqfjakskcjt6ac8f58wqjuagu79m540teqfvaal4",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:8,address:"wormhole1g3acw7aumaj3r348cqn4kazrehlmn822w9p46sqwztnke27h3lysxj4ddr",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"wormhole1ml922hnp59jtq9a87arekvx60ezehwlg2v3j5pduplwkenfa68ksgmzxwr",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"wormhole1gwm6mrnse9atzf4mer4dnrz64mp6pa75wpsxywu8gymt9fwsk46sfr372u",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"wormhole1e0cwfmla7exa578xddl87paxexw9ymwrzysfjms8c2mstxjkldlqn45jqa",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"wormhole1kqey3a6k26kyensq7elcpx229tlj4d3qlshwhjq5xjm8dcdvu60qtef8k9",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"wormhole1gzuv84xrwwhxhf0f62av279vfyrfrm7x58fcnadlr5m90gnx223ses2st0",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"wormhole1wn625s4jcmvk0szpl85rj5azkfc6suyvf75q6vrddscjdphtve8sca0pvl",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"wormhole17fr8awnysyv3nt5je4strczdupssl8u9jqam890jfv72sh32yyqqhtg3ry",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"wormhole19hlynxzedrlqv99v6qscww7d3crhl86qtd0vprpltg5g9xx6jk9q6ya33y",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"wormhole1f9sxjn0qu8xylcpzlvnhrefnatndqxnrajfrnr5h97hegnmsdqhsh6juc0",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"wormhole18nlwscr7290j463vcptqlgqudycry2rdnw2ysltpc2nqefk3353s808rl9",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"wormhole1ev8rhdflmlq6de5g7ttj585fhuv3jfhnuhfzyh7qrswhzaq2tkqswxz6y3",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"wormhole1snw0qugpjcxwtxzzkqt5guwavq85eumxzeagql2u2m662xrtnjuqyj3pkj",original:"Optimism"}],["USDCbase",{symbol:"USDC",decimals:6,address:"wormhole1edkult6zudk6ld23fesjfrehux35q86engsq5jlycl0e4upkz8mqkgcprf",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"wormhole1nu9wf9dw384attnpu0pwfet5fajn05w2ex4r07mghvk3xcwrt2yq5uutp5",original:"Ethereum"}],["tBTCpolygon",{symbol:"tBTC",decimals:8,address:"wormhole1uj24zecnaxz7ftz0sh6dsayfene4w3yptwg0422kves9duel67vsr7hlyz",original:"Polygon"}],["tBTCarbitrum",{symbol:"tBTC",decimals:8,address:"wormhole1q8ynvqvtw49ln73mn70v4me4q03fvvmhkf2lh4ueam5w4362s2asjmvxtd",original:"Arbitrum"}],["wstETH",{symbol:"wstETH",decimals:8,address:"wormhole1gg6f95cymcfrfzhpek7cf5wl53t5kng52cd2m0krgdlu8k58vd8qezy8pt",original:"Ethereum"}],["WKLAY",{symbol:"WKLAY",decimals:8,address:"wormhole1kyy876kye7k79fuzat532yyqkrzhlr6l7hc7lfa2rk5tygzhy00qrhjgkc",original:"Klaytn"}]]],["Osmosis",[["WETH",{symbol:"WETH",decimals:8,address:"ibc/62F82550D0B96522361C89B0DA1119DE262FBDFB25E5502BC5101B5C0D0DBAAC",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"ibc/6B99DB46AA9FF47162148C1726866919E44A6A5E0274B90912FD17E19A337695",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"ibc/E4CD61E1FA3EB04EF1BF924D676AB9FD55E84A0DCF4E78C11CCA0E14E5B42672",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"ibc/2108F2D81CBE328F371AD0CEF56691B18A86E08C3651504E42487D9EE92DDE9C",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"ibc/898ACF6F5DEBF535103BBD52E3E5B70A311AD097B198A152483F69290B4210C0",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"ibc/03B6D1925A09B3033AA6FA8772202719ABDC51F8CC2A5C26D0A9B19832F2C023",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"ibc/5394BB30B3C9BD1EE84C9531E5094DDE2490964F518CBE8A4C91F748CE559AF5",original:"Bsc"}],["USDCbnb",{symbol:"USDC",decimals:8,address:"ibc/B28ACEF11D063FA8B1DA73C2F7DA3A1CFCCBC13E96B671698D4860E9367B55BB",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"ibc/22B44C7369EED16089B9840ADE399B80D9483B4E459E67643C96C681D7C463D0",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"ibc/0B3C3D06228578334B66B57FBFBA4033216CEB8119B27ACDEE18D92DA5B28D43",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"ibc/397DFE63D87F6940ECA583DFF5461E48BF0BA6554CBBE70278E307DDFDC8E9D5",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"ibc/83300733052AB5F6E0F0C221E24189B6DF26CC94C73D2F44627627F9DEF4A9C8",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"ibc/0F2941B0168D8DB77DA1B6A2D3A95EC04026D3C97FA3BFE8FD1D5D3F983AA518",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"ibc/1E43D59E565D41FB4E54CA639B838FFD5BCFC20003D330A56CB1396231AA1CBA",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"ibc/F08DE332018E8070CC4C68FE06E04E254F527556A614F5F8F9A68AF38D367E45",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"ibc/B1C287C2701774522570010EEBCD864BCB7AB714711B3AA218699FDD75E832F5",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"ibc/A4D176906C1646949574B48C1928D475F2DF56DE0AC04E1C99B08F90BC21ABDE",original:"Aptos"}],["USDCbase",{symbol:"USDC",decimals:6,address:"ibc/8AC0F990290BBEF3AEBFCBF70F902AD954781BB40D07EB76341272800D48D05F",original:"Base"}],["OSMO",{symbol:"OSMO",decimals:6,address:"uosmo"}],["tBTC",{symbol:"tBTC",decimals:8,address:"ibc/6207D35D2C08F2162575C3C4BFD524226E50639121A273045F1B393AF67DCEB3",original:"Ethereum"}],["wstETH",{symbol:"wstETH",decimals:8,address:"ibc/BF75AE1500CB7EC458E91A11731F1B6AC1F1FE1FA937A88564955ED6A83CA2FB",original:"Ethereum"}]]],["Evmos",[["WETH",{symbol:"WETH",decimals:8,address:"ibc/4442A8E0D487A49E76EA6606F5DADCF8D0DBDD8499112340C964970DB745EDA2",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"ibc/0C19171CDC59451F91D2749CDEA63355532DCD5D8904CCBAC4953290E16AB8FD",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"ibc/46C5DA1CB61C5BAA8730ABA467ADD58DE0333B075CACE28BC87E64AE8C9CA051",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"ibc/C9072A294F5649D64E87A6998DD750576881E454CACCDAF7376EFC0FA243808D",original:"Ethereum"}],["USDCbnb",{symbol:"USDC",decimals:8,address:"ibc/8E08C01546EF346F7E9A3600DDBC88943ADF3B20A67F1F2DD7B83D85613BCCAB",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"ibc/2EA2FE172078576E62DA20F14EEED12B26611D93150FE1D68E1AAE00479AC335",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"ibc/39913E647C3549D663B1ED7F0745E1779515170C5215B98B2C8410B4C073AD30",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"ibc/9EFE5F5D75A87197DD257BA7A96A3BCCEC9DB59D257C742FB5AA9D3DF612D476",original:"Fantom"}],["WSOL",{symbol:"WSOL",decimals:8,address:"ibc/4443218F584A7AB2DFBCF93872D6E5B6967A11C53515DDF45A2CF387C54BD73A",original:"Solana"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"ibc/9E2E7B4A53409267CD686F4EB67969C2602A0F5FF9BDB1082B00E71CC4815DDE",original:"Arbitrum"}],["EVMOS",{symbol:"EVMOS",decimals:18,address:"aevmos"}]]],["Kujira",[["WETH",{symbol:"WETH",decimals:8,address:"ibc/7D9D28CABB49A4BB1A50C3B7E4544BFDBC5DDFAEB84A7787755A34CE7196CE15",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"ibc/C5EADE2C526B9629D230AC02A97644984ACB7C2F9A6C85126D1025CB0DA42588",original:"Ethereum"}],["WBTC",{symbol:"WBTC",decimals:8,address:"ibc/B2C7F21B604E3974A7DA5DAA9395905F2F3C85392F8A221CFDF62E4A9F4E48E4",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"ibc/3CE8A3DE4AE5AE2B4B8C03B2B227CC284732EDC849E506615FF2AA3D8EB1BAFC",original:"Ethereum"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"ibc/28E7241F6508EB4692C721E91201377323796EF2758CCD83D220A40EAD32601E",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"ibc/F9F41DB8DA49EA6AB9EB4B2C9E0ECDC2502ABDA2FE728B85994BF31240CBC163",original:"Avalanche"}],["CELO",{symbol:"CELO",decimals:8,address:"ibc/4ACD155D71182398277CBD2C630A7C8C5F0F16FFF77965FDE4C845A4CDE2D60C",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"ibc/3D337ECC89A8421DD6F33C4B7DDE9D4A18D728A4A688BA30E41F466EC8DD3869",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"ibc/E5CA126979E2FFB4C70C072F8094D07ECF27773B37623AD2BF7582AD0726F0F3",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"ibc/EBA52E7239CC1BC7F8ECF4F41523B6DD477FF067FD953315704A9A4FD2131B48",original:"Sui"}],["KUJI",{symbol:"KUJI",decimals:6,address:"ukuji"}]]],["Klaytn",[["KLAY",{symbol:"KLAY",decimals:18,address:"native",wrappedKey:"WKLAY"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0xe4f05A66Ec68B54A58B17c22107b02e0232cC817"}]]],["XRPLEVM",[["XRP",{symbol:"XRP",decimals:18,address:"native",wrappedKey:"WXRP"}],["WXRP",{symbol:"WXRP",decimals:18,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"}]]]],Md=ne(_6,[0,[1,2]]),j6=[["Ethereum",[["ETH",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETH"}],["WETH",{symbol:"WETH",decimals:18,address:"0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x07865c6e87b9f70255377e024ace6630c1eaa37f"}],["WBTC",{symbol:"WBTC",decimals:8,address:"0xC04B0d3107736C32e19F1c62b2aF67BE61d63a05"}],["USDT",{symbol:"USDT",decimals:6,address:"0xC2C527C0CACF457746Bd31B2a698Fe89de2b6d49"}],["DAI",{symbol:"DAI",decimals:18,address:"0x11fE4B6AE13d2a6055C8D9cF65c55bac32B5d844"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x7cd0e8ff09cEB653813bD3d63d0554c1CB4BFdf6",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xB19693FEB013Bab65866dE0a845a9511064230cE",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x4C1b727f6df3B075E682C41a25687A69846aaC04",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xF6699D3f725C4b64Cc6010F2DF77B4B05C76Cd5C",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x0d7A9Cdbb7C21E64825cF81750A5081a32aFb5d4",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0xe092525a787CD56B901279b5864a224c22B95B72",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x0dc83BB61008A5E1194fe50fA9E474713C1AEcD7",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x494701CE895389d917a938f0ea202D4eB9684Eab",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x70F7360C49D227ccBbb98fB7B69B7CDB651195bb",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xd7A89a8DD20Cb4F252c7FB96B6421b37d82cE506",original:"Aptos"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xd962F26D93c4eF609Ba00Ed6101326A1490B9489",original:"Arbitrum"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x76e39239e40857030D6f4D8545EFbd71F904d344",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x5aA392243437dDC8b4d86bfC90DF296908740A41",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x679874fBE6D4E7Cc54A59e315FF1eB266686a937"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x575D93A2278FbF4E8Bd3d51B539a6E237C3F17c5",original:"Arbitrum"}],["tBTCsol",{symbol:"tBTC",decimals:8,address:"0x57A52B6F0b393AF7d36116183cA83E584e636eA4",original:"Solana"}],["wstETH",{symbol:"wstETH",decimals:18,address:"0x6320cD32aA674d2898A68ec82e869385Fc5f7E2f"}],["SEI",{symbol:"SEI",decimals:6,address:"0xd68df72136207E9471C915cf1B6Cf43D587D4E0A",original:"Sei"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x327e0c7D5cFa65d4f9E358dC9fA4446C49dBcB6C",original:"Klaytn"}]]],["Polygon",[["WETH",{symbol:"WETH",decimals:18,address:"0xc6735cc74553Cc2caeB9F5e1Ea0A4dAe12ef4632",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x543237045a106D7fd2eE3e2B44b5728e70BDe9c3",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x02E30E84161BE1aBfcBB2b154B11De4C2b5E0a32",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x87374d35C5F1bD78c2b1da383F460e154e7D3E5e",original:"Ethereum"}],["MATIC",{symbol:"MATIC",decimals:18,address:"native",wrappedKey:"WMATIC"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x9c3C9283D3e44854697Cd22D3Faa240Cfb032889"}],["USDCpolygon",{symbol:"USDC",decimals:6,address:"0x9999f7fea5938fd3b1e26a12c3f2fb024e194f97"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x0C63D8ADB69204b2946DcB945a6f16d97C255eE2",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x51f3D34651523dD8CC4872ee261A1B0B3f73AceF",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xcc048C353Fdc2f5c378B7BCab9B240Ca2b619f1c",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x84aa9100a36D6c3514605F62342abF3cE77D5b97",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0xAd027790A64331A11bd1b651739450cC9Dc0098F",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x693b9AC2199d989bDA8C9C5b5d7A3680B4f40dAa",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x0284B4994456Fae4cb56E4d33228d51B674EAD1b",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x3dadA6f29f80A0427C4989E17a5a2ada17441841",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x226B436043B537BD158e84fA199E2Aa36bf364f8",original:"Aptos"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xC77d781f38Cf52F8Ea0b4c0F22312bB9A34911b5",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x68C4365d5229A44D9A59058B65500365492b5307",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xf6CC0Cc8D54a4b1A63a0E9745663e0c844Ee4D48",original:"Ethereum"}],["tBTCpolygon",{symbol:"tBTC",decimals:18,address:"0xBcD7917282E529BAA6f232DdDc75F3901245A492"}],["SEI",{symbol:"SEI",decimals:6,address:"0xc5C0229B38564E1E8083031405Be8d6E6e3Bc462",original:"Sei"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x7b34f3711705eB2963fB856cda063C979de4749e",original:"Klaytn"}]]],["Bsc",[["WETH",{symbol:"WETH",decimals:18,address:"0x064a85eac6b4Bd7190BCAd3458dBD9459989c37B",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x861B5C16A2EcED022241072A7beA9D530b99EB6f",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0xe94AaBAdB6F833f65B8A9AdDD030985B775188c9",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x45082C9Fc6BBCa72288F47Fad21dE0BECC75759E",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x7FCDA925f0994121752ca14C334297BeC3d0eA9E",original:"Polygon"}],["BNB",{symbol:"BNB",decimals:18,address:"native",wrappedKey:"WBNB"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x6cE9E2c8b59bbcf65dA375D3d8AB503c8524caf7",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x1cfeCf72bcBE1E429A21A5B11E708C7c397AaC54",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x9aB305B792DBdb8253bEE909E7006611Cb45175b",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x1471698cBD9cAB0228F2EEA9303A2b3aA0ABDC2B",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x5C31B36599ED7f06b09c0ffC7A2F928cE496F046",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x30f19eBba919954FDc020B8A20aEF13ab5e02Af0",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"0x51a3cc54eA30Da607974C5D07B8502599801AC08",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x5A73D76e09Af2E428EC64aE10F91B78AC990B298",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x4A7Bd5E135f421057F97BbA8BCeeE5c18334f454",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x60845E2503Fcd945b3A6f0bC077a31CC913E654D",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xe3aA397cb6d93Cce4fAd9Cc9E796CCa5E50FB5ED",original:"Arbitrum"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x63108fC941F3cCE0B484De19746B5Af949EAF6eE",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xE7176110261ef2FfC885dd568C1093f58F0aEee9",original:"Ethereum"}],["SEI",{symbol:"SEI",decimals:6,address:"0x79A8FFFCED130314eCC8782C846c4d8d4867A900",original:"Sei"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x79D34FDb686B5D139949E4F92D83EEe376489176",original:"Klaytn"}]]],["Avalanche",[["WETH",{symbol:"WETH",decimals:18,address:"0xbB5A2dC896Ec4E2fa77F40FA630582ed9c6D0172",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x63A30f239DC8d1c17Bf6653a68Fc6C2F83641E6d",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x3989C9c4bdd30400E6Aa90990683EAd6a1638A16",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x78554394273957d7e55afC841aeA27Cce469AEd4",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x10F1053bF2884b28ee0Bd7a2dDBa237Af3511d29",original:"Bsc"}],["AVAX",{symbol:"AVAX",decimals:18,address:"native",wrappedKey:"WAVAX"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0xd00ae08403B9bbb9124bB305C09058E32C39A48c"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x5425890298aed601595a70AB815c96711a31Bc65"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x094cB577C21Ab1360178beE74B9591fa12216dAD",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0xC66d9c2b33c347d4A4441975f4688fcD5DD4c441",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xf080782DF38eD5228D2FC2882d13D56c8f1D6f21",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xb10563644a6AB8948ee6d7f5b0a1fb15AaEa1E03",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xfc5128F8556a6F059466E67740e6cC31EE5C2C47",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x996a3f12C1FcD7339Ea8801f629201e4d42EAD04",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x36Bd1562F874941eE62Ebb2b3A45B4A88A9df90e",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x301587BF484756441de43E522027e3751871237B",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0xc07c754ef7473d315D973F7D9F7858C2eCe0a0a6",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x7E1779F65B644E5f98DdC4D2cB0A0106a7E6d9e1",original:"Ethereum"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x4beDc7471374d7479120E44ea9593eBB85f48AD9",original:"Arbitrum"}],["SEI",{symbol:"SEI",decimals:6,address:"0xfe2eCDD1708aaebf1cF802C6124fAFb18B22dfEE",original:"Sei"}]]],["Fantom",[["WETH",{symbol:"WETH",decimals:18,address:"0x758FEebDDeC06f4bCcEc8F756C8efBD35d5b7124",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xDF7928AF5B33F7de592594958D8d6Ff8472Eb407",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x32eF19C4b3DF65a24972A489e70AdDef5E54262C",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0xE4FE5DF2084f9D81595e4fcba2399020FBE7b233",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x47a4C4c0f96D6CBe5b5C0A46CB0E22d6A17F1430",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xfB174b43228950C2055CFc25AE93f2DCe8E2beF0",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x0f545Be981C37fB15ab7c65404648761e99016e4",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x6BC4E8D8c1d54656D1DeBCa96efc53aFd1408aD2",original:"Avalanche"}],["FTM",{symbol:"FTM",decimals:18,address:"native",wrappedKey:"WFTM"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xf1277d1Ed8AD466beddF92ef448A132661956621"}],["CELO",{symbol:"CELO",decimals:18,address:"0xB18E73a69c3Aaea39a610372537Cf8482622d199",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x41E3CFDFC255A4bF3C8D3560Bc8D3D9b5080338e",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xED1a08Fc69A7008d225890A96aaE258c465CC7ad",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xd882AB49372eC093E8697B5153f54ab5e7738e3b",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xAb2297E8994149BA91737944E40891881aF762a4",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x456e08952f9091B6c268dC0cECad53d141152C59",original:"Arbitrum"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0x685B29e17440c42758Ab3F80FD3603EF01bebe9A",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x01950A33DfFa63E6Bc23b5dB440505581A4cc0e7",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x66E080407407620844fE2083c33108BE55E087bc",original:"Ethereum"}],["SEI",{symbol:"SEI",decimals:6,address:"0x832e8050D6c64724500DE9B0ffe1CAc6c570a26d",original:"Sei"}]]],["Celo",[["WETH",{symbol:"WETH",decimals:18,address:"0x898471a82737dFFfB61915F9e8381e279076D72b",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xB0524bEF6c61c6150B340b2828a890fD8dEa60C0",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0xeBB3fF6E5d61d3793Fdb60f7942BA78E636019f6",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x7a56409988BBF8758b3ba412b9c7E3FE504C8544",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xa8050be9389466c3c524F10F131f244ACbf21A0D",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x502c8C83008D9Dd812a7C5fB886C063060C73Dbf",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xDDB349c976cA2C873644F21f594767Eb5390C831",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xE6F8710cA14CFe7F5aAAD3A799C3d1D92dCba938",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0xF194afDf50B03e69Bd7D057c1Aa9e10c9954E4C9"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x132D2172D89cd9CfD480A8887c6bF92360fB460e",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x05EEF2AE1A7A938D78598F7d9e8b97A9bED0c9eC",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xa40d9E69ca9867C4bFbeC11Ce79C939991e9bf26",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xAC0a2fF7DD597de863878a3372142b07B614C125",original:"Aptos"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0x0C4AbF95Ff3d82d1F02f55e65050eA5bA062606E",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x28E768a51D19dcB753a24B79D1e89c92fee094Ba",original:"Optimism"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x01a050Fc725F4E99aAD43Eb6f8481f38ee6231aD",original:"Ethereum"}],["SEI",{symbol:"SEI",decimals:6,address:"0x05Efb4aC79ef48a4830f517834c6f5f039F16832",original:"Sei"}]]],["Moonbeam",[["WETH",{symbol:"WETH",decimals:18,address:"0xd27d8883E31FAA11B2613b14BE83ad8951C8783C",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0xE5dE10C4b744bac6b783fAF8d9B9fDFF14Acc3c9",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x7f5Ca1bcFb38fDF4c0E0646FCbf3FA87740ff65D",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0xc31EC0108D8e886be58808B4C2C53f8365f1885D",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0xD2888f015BcB76CE3d27b6024cdEFA16836d0dbb",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x6097E80331B0c6aF4F74D7F2363E70Cb2Fd078A5",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x2E8afeCC19842229358f3650cc3F091908dcbaB4",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x6533CE14804D113b1F494dC56c5D60A43cb5C3b5",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x566c1cebc6A4AFa1C122E039C4BEBe77043148Ee",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x3406a9b09adf0cb36DC04c1523C4b294C6b79513",original:"Celo"}],["GLMR",{symbol:"GLMR",decimals:18,address:"native",wrappedKey:"WGLMR"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xD909178CC99d318e4D46e7E66a972955859670E1"}],["SUI",{symbol:"SUI",decimals:9,address:"0x2ed4B5B1071A3C676664E9085C0e3826542C1b27",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xCaa2A1d3BbbA0D1466571e83b4E2CbE04252593D",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x15025b956969DD8F1d0CD69959Ad97128F8f6D69",original:"Arbitrum"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xf98E630a3DD4F21Cab7a37Bb01209cb62959169D",original:"Optimism"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x7480641F5B00b4Fc39d6AaeC4Cd851EdEA7f31CF",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0xf82E21cE03471983Afb9c2E3789Aa13a2d7242E8",original:"Ethereum"}],["SEI",{symbol:"SEI",decimals:6,address:"0x1EdDe35B7e058194B457B8621285EaFA710f01ea",original:"Sei"}]]],["Solana",[["WETH",{symbol:"WETH",decimals:8,address:"7VPWjBhCXrpYYBiRKZh1ubh9tLZZNkZGp2ReRphEV4Mc",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"2BAqec7Qof3Y7VJatwFsRHUNSQBSkzaEsT1V5bW6dbZY",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"3WK3mEDNPrNuQReBvM28NcsqrExMnPxD9pPJmgrUeKKH",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"ACbmcQxbbhiXWM1GmapUSMmBYKMvnFLfAAXKqdo8xKwo",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"BaGfF51MQ3a61papTRDYaNefBgTQ9ywnVne5fCff4bxT",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"3Ftc5hTz9sG4huk79onufGiebJNDMZNL8HYgdMJ9E7JR",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"GQtMXZxnuacCFTXVeTvyHi6P9F6chbtzhVc8JgD8hv7c",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"DMw2tLaq1bVoAEKtkoUtieSk9bfCPUvubYLatTMsSVop",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"84F2QX9278ToDmA98u4A86xSV9hz1ovazr8zwGaX6qjS",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"8987WGkYa5viiZ9DD8sS3PB5XghKmWjkEgmzvwDuoAEc",original:"Moonbeam"}],["SOL",{symbol:"SOL",decimals:9,address:"native",wrappedKey:"WSOL"}],["WSOL",{symbol:"WSOL",decimals:9,address:"So11111111111111111111111111111111111111112"}],["USDCsol",{symbol:"USDC",decimals:6,address:"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU"}],["SUI",{symbol:"SUI",decimals:8,address:"BJZ72CjPQojVoH68mzrd4VQ4nr6KuhbAGnhZEZCujKxY",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"7EvFD3JKCJVdtkAYdaSVKJsrPEJCzy2neJha7TREGrCa",original:"Aptos"}],["WETHbase",{symbol:"WETH",decimals:8,address:"EKZqcBZ3Y7YTDinpecA7SxRp9B4s1m99VHJ9jpvyTwzW",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"FMYvcyMJJ22whB9m3T5g1oPKwM6jpLnFBXnrY6eXmCrp",original:"Ethereum"}],["tBTCoptimism",{symbol:"tBTC",decimals:8,address:"HsPvRT3J7kuitNvNHogyZeSEagcqAqwwq2FPgrGfgApy",original:"Optimism"}],["tBTCsol",{symbol:"tBTC",decimals:8,address:"6DNSN2BJsaPFdFFc1zP37kkeNe4Usc1Sqkzr9C9vPWcU"}],["SEI",{symbol:"SEI",decimals:6,address:"8LFdfuhbfdH8oBzSKDgfPAxvLW24dCM9ttjBrBobURuk",original:"Sei"}]]],["Sui",[["WETH",{symbol:"WETH",decimals:8,address:"0x72831f626b1f0e11be201893d5cb641917730b1ccac778e4a77f8ab2052f0784::coin::COIN",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x9e4396c19ec1c5f2214c79d3af3f31e59869640305560f8f2499c36fa9c8e0f2::coin::COIN",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"0xe6fc78aa2b52b785bdcb67901cd85793a0b593248f315cb755974d23d0fcb837::coin::COIN",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"0xa516bcbf83b29a2944bb53ec9f934ea7d78c3626d3ae411d2fb9dcb977522e67::coin::COIN",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"0xddcf8680a8a4b8a527d8c85ec203274991590c2ea898d1c4635b70164d9c584b::coin::COIN",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"0xa600741c469fb57ed01497ddf101e798fa79a9c529bd176675c5c4d970811f80::coin::COIN",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x2aa8c885d04e676c4e87b7d0f94d4f3b243b1b5d93239d1cc41d5528ce1714c1::coin::COIN",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"0x14e756ff65e0ac810a5f69ca5276ef5b899a6df3c4717de1f85559d8b5ae6ea6::coin::COIN",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"0x81868174a6b11e1acc337b3414f9912455435d486609fb8d50b34312865085f2::coin::COIN",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"0xeffae382de96981f7ddd2d294429924827e8f325d612487a12d6a0b249171002::coin::COIN",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"0xbc03aaab4c11eb84df8bf39fdc714fa5d5b65b16eb7d155e22c74a68c8d4e17f::coin::COIN",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0x2::sui::SUI"}],["APT",{symbol:"APT",decimals:8,address:"0x812d6feb8b84e55d47a0bfcae9fb6a4e7e09be5ec86ce0a729e0f67d5f59f477::coin::COIN",original:"Aptos"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xbbc39df58a11072ceeac1f685393ca912d1a1bfd6e772053ec5a544f36124da::coin::COIN",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"0x7b442b988864149dedfb9b6a75a88c7c33b9ddd3d15a87bf25104e1fcdd680ab::coin::COIN",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0x4125940814a0ca87465a1a59092a7344633ad03b48ad7cda36d799d8558012c1::coin::COIN",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"0xacf6784120b221a077ab0b84acc0b76930779eb55f157ea2492be4a60b808f6::coin::COIN",original:"Ethereum"}],["SEI",{symbol:"SEI",decimals:6,address:"0x22c5cdaabaae4b6d3351f9bba9511b0aebb0662a6c209a360f0776e1e77a8438::coin::COIN",original:"Sei"}]]],["Aptos",[["WETH",{symbol:"WETH",decimals:8,address:"0x381775005cb32cdd3dbf935ae1b978ed40d309c72b009cd4a812aab6d991418a::coin::T",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"0x5f229253e2b2d03fb909f565feca49452582bd633a5816e5ce30aa593cb49d8a::coin::T",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"0xa5894f5ddb8647e6143102aa336ff07374f7b32e88c1c703aef5b7c9a370bf80::coin::T",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"0xbe8f4301c0b54e870902b9a23eeb95ce74ac190531782aa3262337ceb145401a::coin::T",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x02ef7697bdb33361ca39d228671203afc0dea3202e792d79d2072b761d87c834::coin::T",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"0x533c6ade00d15d1e014c41e29e34853e87df92c4e01a6a3f41318dbd098048d6::coin::T",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"0xecbb0f7e7d049499ca83ca1358344f56557886f6f7adc740d6734cce7bfc9a14::coin::T",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"0x338373b6694f71dbeac5ca4a30503bf5f083888d71678aed31255de416be37c0::coin::T",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"0xdd89c0e695df0692205912fb69fc290418bed0dbe6e4573d744a6d5e6bab6c13::coin::T",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"0x7b22d0e02f653d4fd1caddcfa4719a2b329da56eb81d8f27db703f02466c26a5::coin::T",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0x1::aptos_coin::AptosCoin"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0x3f0fdd44d96dae888d6c576218cf655458316a27c7bdc46537f61e531b10d3df::coin::T",original:"Arbitrum"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xcff1d9820851201436ad225dcc4374a2d15f52a74109283eb9881be799677e92::coin::T",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"0x5b5f14781164cf77185a7b6acd8e4f3cbb7e7cfb1cd5760d2b8af81075fc153d::coin::T",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xcfaabb3cb08ad612905dd6b2593d044ce857dfe5360148333b4635fb57d4d13f::coin::T",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:8,address:"0x6e2d5d1a6d6d0e0c5db506ce64ead0530847a48b96516abbb08cdebe43fe3036::coin::T",original:"Ethereum"}],["SEI",{symbol:"SEI",decimals:6,address:"0xcae0ba0b7a435730ab65f1c8357d213e5cf9d4b377b96761745a8edaf9c9df6d::coin::T",original:"Sei"}]]],["Base",[["WETH",{symbol:"WETH",decimals:18,address:"0x44D627f900da8AdaC7561bD73aA745F132450798",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x5010B0988a035915C91a2a432085824FcB3D8d3f",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:18,address:"0x31B2BAEE47Dc5Fc06baEC1BF73C124031b44fB97",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0xFFB5d863d5132523d013338845A1Bb01EDd440f4",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0x9DeF11E63C23c71dE3716b81dD2Fdad2B24b8b7F",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x410B0EE532EFfB18fa4d90cc095B1CD58aC43d5a",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0x4C5208246676486064c501E1DAF2dD21596Bc5f5",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xB4808E58713112AbAbB8167C7187F8988df38bbD",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x72C56041ea5fe8bDE99b2A123fb5964cDE8C7FE9",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0xCEc03b5710a464F4354AF35ebD0310238F656DFf",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x6Fb1dE2372e48fe66c84cf37cc2fb54EaEe62988",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xEe0fC8BECD593B41AACBd93936fDAbc2A444370A",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xd934A15FfA3945DD0Ba2cb7b4174024261A14874",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0x8eD43aBdc4f836aa60933177B31AC358ea09f27E",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x5c443C05C72F0660502d88642c807020cc9b71A2",original:"Optimism"}],["ETHbase",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHbase"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x4200000000000000000000000000000000000006"}],["USDCbase",{symbol:"USDC",decimals:6,address:"0xf175520c52418dfe19c8098071a252da48cd1c19"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x0219441240d89fAc3fD708d06d8fD3A072C02FB6",original:"Ethereum"}],["tBTCbase",{symbol:"tBTC",decimals:18,address:"0x783349cd20f26CE12e747b1a17bC38D252c9e119"}],["tBTCsol",{symbol:"tBTC",decimals:8,address:"0x9dA16Ae62De05bcb4606c4BFbB54046872501Bd0",original:"Solana"}],["SEI",{symbol:"SEI",decimals:6,address:"0x7B5edB2B3d2BeA8057a736B82AC6EF35c70bdadD",original:"Sei"}]]],["Sei",[["WETH",{symbol:"WETH",decimals:8,address:"sei13pzlt9etk44hj22lckncvampq2qu2gxv6r6774f3hma4vc07wqgsmftjx7",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"sei1nj32y0h0vzam33ay42h2majlfk7tdkqcuk84srn0v2a52kmujgfsyfe78f",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"sei1dc94as3vgxn3qkr5h0lnnrep69mtfku6jg4t94gfkunuyzr5g5eqyqvj9p",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"sei10a7see3f9t2j9l8fdweur3aqy4zgvz583a268hhhln3yzps6l5mqnl4ua6",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"sei1mgpq67pj7p2acy5x7r5lz7fulxmuxr3uh5f0szyvqgvru3glufzsxk8tnx",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"sei1uyce5s6cc8hveg0maq2lg7wm6v6fvwqmznypj559nzf9wr9tmw3qnd3ce7",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"sei1cr3j7rxq0dhq04ksftmj8n2w096w9g7ck8fngkvk2lrmy3qwz56q9thu9u",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"sei1yw4wv2zqg9xkn67zvq3azye0t8h0x9kgyg3d53jym24gxt49vdyswk5upj",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"sei140m6xagmw0zesejzhsvk46zprgscr7tu94h36rwsutcsxcs4fmds9sevym",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"sei1at3xuugacwgu3ppx7fxzmtr3q6m3ztjuean9r2mwcnqupw28yezs7unxgz",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"sei1rhpcprr2pffe6ydf078a0qeslhnlywxh2t3wjax4489z0m29cj9swj5khc",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"sei1em74y5sts4h8y5zuhfdn4w5g8zs285qld3kczpk6rh32jpvjyqqsvv0pdt",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"sei1pf5j3dgngm8yj2xkwmvmvt87g4vyc0szpjz92q8ly9erh23ytn4s983htv",original:"Arbitrum"}],["WETHbase",{symbol:"WETH",decimals:8,address:"sei1kdqylzcv86t7slg8m30mlfgna9xsrusghdgnavvurkv0rku7jvqqta7lka",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"sei1lf6ghmrkd7gn5jlj6xw64suycpjy7g4s5q92fc2gef4f8q3znanq95mmgv",original:"Base"}],["tBTCsol",{symbol:"tBTC",decimals:8,address:"sei1aj3uu9ejt8fk6rpjfhzluqnzqmv3enlndjmt8llkr7dn2dtz55xst4s3mn",original:"Solana"}],["SEI",{symbol:"SEI",decimals:6,address:"usei"}]]],["Arbitrum",[["WETH",{symbol:"WETH",decimals:18,address:"0x285d75E04D78F53f4Ed29A506a7e8479EEf3035f",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x42A212A2E7eA8feF4ED28F439F16A6ABDd34DA35",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"0x2B732F5ad6117818Ad3b7aC73C16033F6ECD78E5",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x50FD4064cC536a964E2E0Dc7B3fE2313Ab386bEA",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:18,address:"0xB039aC4Fa8Ed99d30C2f7D791294A9d5FAd698eF",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:18,address:"0x92b0C4D27a05921Ded4BB117755990F567aEe049",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"0xb39697B8BA5df91A169690DfEf88B911436619F2",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0xa507f7566B8aDE000E886166B95964677ef3b3Ef",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:18,address:"0x9592eE6eD1D9E611b7aa6F20CCbD7Ba571Be8bdd",original:"Celo"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0xF8cbdc4E54281b801f182039c250Ad6d13818250",original:"Solana"}],["SUI",{symbol:"SUI",decimals:9,address:"0xe64e2139fdf6Ee7e3795FE51955e21bA3d9eB9F7",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"0xa81C3BEf2d6f10213b860458DC119666C0ba13bf",original:"Aptos"}],["ETHarbitrum",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHarbitrum"}],["WETHarbitrum",{symbol:"WETH",decimals:18,address:"0xee01c0cd76354c383b8c7b4e65ea88d00b06f36f"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0xFd903eA23Bf65f26FdAf2eeb589cf007b108882E",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0xbC4CB3CD7186fD457C072298C48d0eDf7213CAEa",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x97B5fE27a82b2B187D9a19C5782d9eB93B82DaC3",original:"Ethereum"}],["tBTCarbitrum",{symbol:"tBTC",decimals:18,address:"0x85727F4725A4B2834e00Db1AA8e1b843a188162F"}],["tBTCsol",{symbol:"tBTC",decimals:8,address:"0x227115F659f7c2939D23FedE68583F5291c395A6",original:"Solana"}],["SEI",{symbol:"SEI",decimals:6,address:"0x90eC817A1f7C1Eb18dD2985C534A78dD88747F47",original:"Sei"}]]],["Optimism",[["WETH",{symbol:"WETH",decimals:18,address:"0x33Db338718aC89Cd8DB13B56af05be3a3029BBE5",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"0x0382F518AcE1a86224c78B7CDfa67B9774055A1b",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:18,address:"0x427B5a0b0384D7FD3AF81805A166a2d9C1116D7d",original:"Polygon"}],["WFTM",{symbol:"WFTM",decimals:18,address:"0x81BA80f5820273AA965086e710042d737993f12c",original:"Fantom"}],["WGLMR",{symbol:"WGLMR",decimals:18,address:"0x99436d62259532E0407A7aE78A3b48D119B13903",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:9,address:"0x06EcAF6638070Ccf3b3dEA421b3becAA57f3e559",original:"Solana"}],["ETHoptimism",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHoptimism"}],["WETHoptimism",{symbol:"WETH",decimals:18,address:"0x4200000000000000000000000000000000000006"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"0xe05606174bac4A6364B31bd0eCA4bf4dD368f8C6"}],["WETHbase",{symbol:"WETH",decimals:18,address:"0x04b559971c90Dfb12D9795E95883e55f2fcf34Ed",original:"Base"}],["tBTC",{symbol:"tBTC",decimals:18,address:"0x5D89a5BcB86F15a2CCAb05e7E3bEE23fDF246a64",original:"Ethereum"}],["tBTCpolygon",{symbol:"tBTC",decimals:18,address:"0xE04e0F5f2C6ce45A40482C3AB92CA91D6741D717",original:"Polygon"}],["tBTCoptimism",{symbol:"tBTC",decimals:18,address:"0x1a53759DE2eADf73bd0b05c07a4F1F5B7912dA3d"}],["SEI",{symbol:"SEI",decimals:6,address:"0xE12be3D96fE101246bF2d290184B0eC6D35d02CA",original:"Sei"}]]],["Wormchain",[["WETH",{symbol:"WETH",decimals:8,address:"wormhole1vguuxez2h5ekltfj9gjd62fs5k4rl2zy5hfrncasykzw08rezpfs63pmq2",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"wormhole1rl8su3hadqqq2v86lscpuklsh2mh84cxqvjdew4jt9yd07dzekyqkmcy3p",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"wormhole1v2efcqkp2qtev06t0ksjnx6trxdd0f7fxg2zdrtzr8cr9wdpjkyqkv9ch6",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"wormhole1uuwad4khwek2h05gmkktzmh8l4t0ep54yydlsqg0l4y2uh3tqfyq3an9k6",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"wormhole1vhjnzk9ly03dugffvzfcwgry4dgc8x0sv0nqqtfxj3ajn7rn5ghq6whn2p",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"wormhole1335rlmhujm0gj5e9gh7at9jpqvqckz0mpe4v284ar4lw5mlkryzsnetfsj",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"wormhole1tqwwyth34550lg2437m05mjnjp8w7h5ka7m70jtzpxn4uh2ktsmq8dv649",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"wormhole1qum2tr7hh4y7ruzew68c64myjec0dq2s2njf6waja5t0w879lutqv2exs9",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"wormhole1808lz8dp2c39vhm9gnemt7zzj95nvrmjepxp7v3w4skzrlyzcmnsxkduxf",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"wormhole1e8z2wjelypwxw5sey62jvwjyup88w55q3h6m0x8jtwjf6sx5c7ys4mzydk",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"wormhole10sfpr8ykh9xn93u8xec4ed3990nmvh86e0vaegkauqhlkxspysyqwavrxx",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"wormhole1gryz69gzl6mz2m66a4twg922jtlc47nlx73sxv88lvq86du5zvyqz3mt23",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"wormhole1ced9v4plkf25q8c6k9gz0guq6l4xyjujpjlvxfg8lpaqywkmamashswq7p",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"wormhole1yf4p93xu68j5fseupm4laj4k6f60gy7ynx6r5vvyr9c0hl3uy8vqpqd6h0",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"wormhole1u8rft0gee23fa6a0t4t88ualrza5lj8ses4aur0l66c7efpvjezqchv34j",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"wormhole186k0cp83c3wyvapgh8fxf66ededemzrfujvjfsx0xw3vr0u9g8sq2y30vx",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"wormhole1s3pk90ccfl6ueehnj8s9pdgyjjlspmr3m5rv46arjh5v4g08dd0qrchjrk",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"wormhole12eu6c7f67l8gdl2lt0hz0dgdh24dhune6wjgy5t0es3tpfzhc3yspwnpfy",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"wormhole1u5z7097gm57zvun9wqsx6jxej2gpdjhg9l9xfe58rhpm29rtjmfqfnl4yv",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"wormhole10p89p4zh00dwdg8h52sysrqm0l2j47jj3kmg93pnz2a039ucw7esgl5vl9",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"wormhole1ja4txt6m0jjq0gmjtmv442f8wk0r5f5apaya0z55wwlrpg3p5xaq3qxw7h",original:"Base"}],["tBTCarbitrum",{symbol:"tBTC",decimals:8,address:"wormhole1rm8ztmk20lrd6ex8uqq3yu7a6eyfjwvg53pcuuj22ffe2y8r3yzqr8j4v9",original:"Arbitrum"}],["wstETH",{symbol:"wstETH",decimals:8,address:"wormhole1u2zdjcczjrenwmf57fmrpensk4the84azdm05m3unm387rm8asdsxqwfeu",original:"Ethereum"}]]],["Osmosis",[["WETH",{symbol:"WETH",decimals:8,address:"ibc/A4A8B6AE885DACD75B228031C0D18AD7EE1B914CED30C9F6F4230DDBD4A1CF2B",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"ibc/3BB8C4BD1C90599B2FA5B5839DD0813EF7B94B0BD0904C4C5A61498AE81E0EE9",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"ibc/1941ED1147121BA7DF35559597B6EB3251844DBBBE4557337D957CB95E0978C2",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"ibc/2864B3418775DDB90EE1410EFF822FDA94E9F0FF77FC8771644761C79EDFE7A3",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"ibc/43F15553F8598186394E81E18604B8B4532B2D7E855D9FFE68A2EF6802C18BE4",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"ibc/65A67BA10DE2378B32AC5A822321E370966D3D4E180DEFB4C3C5245B21088DDF",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"ibc/99EAD53D49EC7CC4E2E2EB26C22CF81C16727DF0C4BF7F7ACBF0D22D910DB5DE",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"ibc/EC9FA5074F34F0644A025BB0263FDAE8F364C5E08523F6464465EF1010FF5A3A",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"ibc/145C6B688F70B0C2F6D87546A5974A75CE75B3A2940275B750E65797B2996157",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"ibc/3A4EA3F8096856C0802F86B218DD74213B4C10224AA44BBD54AEAAA2ABF078BA",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"ibc/7DB06BB67428510AFC3967DC90F5632C679D55D8C487A951A0EEC3160AF492A6",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"ibc/B5D53105A7AA2BEC4DA4B3304228F3856219AE7CF84A9023043C481629E3E319",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"ibc/35A0467DE5744662078DE8B36CBBE0CF0EAA022565A3E6630CB375DDEBB96E05",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"ibc/30778BA41ADF2D8A70B90DB53C2E0251731A40276EF6737215BB1A6ED9E90078",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"ibc/7C495BD95757ED662A897C139F1C9F18275A86EE7203A0B073E2DB12B1E19D63",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"ibc/221A4AADF7972F3BB8F48A6CA984FF0AE65B5D973FF1A695B9642AD702F51789",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"ibc/06ED2700071B5A9C582F51A556537DA94E69EF547E7E6CCD8BFA3D95C818A525",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"ibc/80B3FECB24A4CE94537444E5BF937AC4C08A39BF90D59620D278FA185BD2B148",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"ibc/0A98A3947189D7C368170C76C3EF49486DDBE095F34B72A3C7F92AEBE1013A1D",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"ibc/A45069EA82C933945973E66E4222EEE4624498D4483508FE9BEBF9D519F2132F",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"ibc/2E4F8BC7F7AF33752CF7E290CAD4417EE67CD18FFC0D099E6519A440E588E0CE",original:"Base"}],["OSMO",{symbol:"OSMO",decimals:6,address:"uosmo"}],["wstETH",{symbol:"wstETH",decimals:8,address:"ibc/C66B7DB3ED665D2F5FE8ED15E88B5913A37D80601E161C5E53A743DE12C0FB85",original:"Ethereum"}]]],["Cosmoshub",[["WETH",{symbol:"WETH",decimals:8,address:"ibc/77FE9153FA76C3107CB9F6633AC33509A58529E9622327F216BA8107C79C2DE3",original:"Ethereum"}],["USDCeth",{symbol:"USDC",decimals:6,address:"ibc/D0EC31D1176BB69EA1A7CF7172CA0380B7AF488AFC6D55B101B8363C2141CD4F",original:"Ethereum"}],["USDT",{symbol:"USDT",decimals:6,address:"ibc/755FBC53FFB46FB505B5269F9BEDF47041F2A0EF2FF8D0520315403E5925C80A",original:"Ethereum"}],["DAI",{symbol:"DAI",decimals:8,address:"ibc/5F21E975410DA22AF565B1772DC45AD0BD5F6DA004981EBE291763F3D2C72A96",original:"Ethereum"}],["WMATIC",{symbol:"WMATIC",decimals:8,address:"ibc/37FB599287C6963C413E915FDE83EFA69A3CE8147675DD5A7F974B45F39C8A31",original:"Polygon"}],["WBNB",{symbol:"WBNB",decimals:8,address:"ibc/5B0D5974A56332468DD4B2D07C96A7386FCF8FE7303FF41234F90E410EF51937",original:"Bsc"}],["WAVAX",{symbol:"WAVAX",decimals:8,address:"ibc/BAEAC83736444C09656FBE666FB625974FCCDEE566EB700EBFD2642C5F6CF13A",original:"Avalanche"}],["USDCavax",{symbol:"USDC",decimals:6,address:"ibc/F09E98FA8682FF39130F171E9D89A948B0C3A452F2A31F22B6CC54A3AAE1CD4A",original:"Avalanche"}],["WFTM",{symbol:"WFTM",decimals:8,address:"ibc/919D8F138B7E71BB067C7301AB5C2D48415E8C3A2D9187861245CEC668F88E3C",original:"Fantom"}],["CELO",{symbol:"CELO",decimals:8,address:"ibc/009206915358A002C852A2A2CBEDB8446D2D02E519C815087A01F8BDB4DF77BA",original:"Celo"}],["WGLMR",{symbol:"WGLMR",decimals:8,address:"ibc/1EEDF447A6B046B20C00B1497BED5947219AEEBE0D9A85235C85133A554DF7A4",original:"Moonbeam"}],["WSOL",{symbol:"WSOL",decimals:8,address:"ibc/D3EA463A51E31B2B30BED1978575CAC145DBAB354B8A0EA5D4CFB12D737AF790",original:"Solana"}],["USDCsol",{symbol:"USDC",decimals:6,address:"ibc/26D8D6C63C8D37A5127591DDA905E04CC69CBD3A64F9DA3B1DA3FB0B6A7D9FA5",original:"Solana"}],["SUI",{symbol:"SUI",decimals:8,address:"ibc/129EC6B8A41BE07F94DD267F552F4AE1D5EAEBB51634A1468556AF06C10C2692",original:"Sui"}],["APT",{symbol:"APT",decimals:8,address:"ibc/0CCA5EB15BC2FE474E71DBC9698302CDE260B6F6548F91C30002F7CBF228197B",original:"Aptos"}],["WETHarbitrum",{symbol:"WETH",decimals:8,address:"ibc/AB4046AF5B6F146C006DE4DECAD929D24F762A701E09EC8B29000EC63A6E649B",original:"Arbitrum"}],["USDCarbitrum",{symbol:"USDC",decimals:6,address:"ibc/6D1B6A7A9EF692A279A6B5994C98C0D598D003D9203BE8309F14B6E57A58506E",original:"Arbitrum"}],["WETHoptimism",{symbol:"WETH",decimals:8,address:"ibc/A0298483510D803A045AA7F49CCBD0F9D01010FE0B1A346EBDFFF4BA820C3D21",original:"Optimism"}],["USDCoptimism",{symbol:"USDC",decimals:6,address:"ibc/CE3F2FE630DA6A1187F085CDC8D59BA8B20DA48F4866F2D71C5AB7A1D5859933",original:"Optimism"}],["WETHbase",{symbol:"WETH",decimals:8,address:"ibc/97035986A4BD0AF555713355A02EA31A4526616B6543E019E0D750007FABE06C",original:"Base"}],["USDCbase",{symbol:"USDC",decimals:6,address:"ibc/8560BA5F45C95AE716C05978E364F50C98347ACBEC745840C30F91611FA36698",original:"Base"}],["wstETH",{symbol:"wstETH",decimals:8,address:"ibc/5BB02667F9F0C8284FCF7716065C2779039817FBCB91E937F5149FE89FD8F202",original:"Ethereum"}],["ATOM",{symbol:"ATOM",decimals:6,address:"uatom"}]]],["Evmos",[["EVMOS",{symbol:"EVMOS",decimals:18,address:"atevmos"}]]],["Kujira",[["KUJI",{symbol:"KUJI",decimals:6,address:"ukuji"}]]],["Klaytn",[["KLAY",{symbol:"KLAY",decimals:18,address:"native",wrappedKey:"WKLAY"}],["WKLAY",{symbol:"WKLAY",decimals:18,address:"0x0339d5Eb6D195Ba90B13ed1BCeAa97EbD198b106"}]]],["XRPLEVM",[["XRP",{symbol:"XRP",decimals:18,address:"native",wrappedKey:"WXRP"}],["WXRP",{symbol:"WXRP",decimals:18,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"}]]],["Sepolia",[["ETHsepolia",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHsepolia"}],["WETHsepolia",{symbol:"WETH",decimals:18,address:"0xeef12A83EE5b7161D3873317c8E0E7B76e0B5D9c"}]]],["ArbitrumSepolia",[["ETHarbitrum_sepolia",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHarbitrum_sepolia"}],["WETHarbitrum_sepolia",{symbol:"WETH",decimals:18,address:"0x980B62Da83eFf3D4576C647993b0c1D7faf17c73"}]]],["BaseSepolia",[["ETHbase_sepolia",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHbase_sepolia"}],["WETHbase_sepolia",{symbol:"WETH",decimals:18,address:"0x4200000000000000000000000000000000000006"}]]],["OptimismSepolia",[["ETHoptimism_sepolia",{symbol:"ETH",decimals:18,address:"native",wrappedKey:"WETHoptimism_sepolia"}],["WETHoptimism_sepolia",{symbol:"WETH",decimals:18,address:"0x4200000000000000000000000000000000000006"}]]]],Ld=ne(j6,[0,[1,2]]);function Ia(t,e){if(t!=="Devnet"){if(t==="Mainnet"){if(!Md.has(e))return;const n=Md.get(e);return Object.fromEntries(n.map(([r,s])=>[r,{...s,chain:e,key:r}]))}if(t==="Testnet"){if(!Ld.has(e))return;const n=Ld.get(e);return Object.fromEntries(n.map(([r,s])=>[r,{...s,chain:e,key:r}]))}throw new Error("Unsupported network: "+t)}}function q6(t,e){const n=Ia(t,e);return n?cs.native(n):void 0}function K6(t,e,n){const r=Ia(t,e);return r?cs.byAddress(r,n):void 0}function Q6(t,e,n){const r=Ia(t,e);return r?cs.byKey(r,n):void 0}function $6(t,e){const n={coreBridge:e2.get(t,e),tokenBridge:t2.get(t,e),nftBridge:s2.get(t,e),relayer:i2.get(t,e),tokenBridgeRelayer:n2.get(t,e),tbtc:Wi.get(t,e),executor:r2.get(t,e)};return qo.has(t,e)&&(n.executorTokenBridge=qo.get(t,e)),Ko.has(t,e)&&(n.cctp=Ko.get(t,e)),Ad.has(t,e)&&(n.gateway=Ad.get(t,e)),Ed.has(t,e)&&(n.translator=Ed.get(t,e)),wd.has(t,e)&&(n.portico=wd.get(t,e)),Wi.has(t,e)&&(n.tbtc=Wi.get(t,e)),n}function Ve(t){return typeof t=="string"&&t==="native"}function hl(t){return{chain:t,address:"native"}}function Zs(t){return typeof t=="object"&&t.address!==void 0&&t.chain!==void 0&&Qs(t.chain)}function J6(t){return Zs(t)&&t.isUnattested===!0&&t.decimals!==void 0&&t.originalTokenId!==void 0}function rh(t,e){return t.chain!==e.chain?!1:Ve(t.address)&&Ve(e.address)?!0:Wt(t)===Wt(e)}function Wt(t){return Zs(t)&&Ve(t.address)?t.address:t.address.toNative(t.chain).toString()}function X6(t){if(Ve(t.address))throw new Error("Invalid address, cannot convert the string literal `native` to a Universal Address");return t.address.toUniversalAddress().toString()}function sh(t,e,n){let r;if(Zs(n)){if(!Ve(n.address))return[!1,n];r=n.address}else r=n;if(Ve(r)){const i=q6(t,e);if(!i)throw new Error("Invalid destination token");const a=i.wrappedKey,o=Q6(t,e,a);if(!o)throw new Error("Invalid wrapped token key: "+a);return[!0,{chain:e,address:yn(e,o.address)}]}return[!1,{chain:e,address:r}]}function ih(t){return t.chain!==void 0&&t.txid!==void 0}function mo(t){return Hu.map(n=>{const r=vt(n);let s="";try{s=Vc.get(t,n)}catch{}const i=Ia(t,n),a=i?Object.values(i).find(c=>Ve(c.address)&&c.wrappedKey):void 0,o=a?i[a.wrappedKey]:void 0;return{key:n,platform:r,network:t,chainId:Rt(n),finalityThreshold:Vu.get(n)??0,blockTime:_u.get(n)??0,contracts:$6(t,n),nativeTokenDecimals:Gc(r),nativeChainId:s,tokenMap:i,wrappedNative:o,explorer:zb(t,n),rpc:ju(t,n),graphQL:tf(t,n)}}).reduce((n,r)=>({...n,[r.key]:r}),{})}class ah{network;chain;config;platform;rpc;protocols=new Map;constructor(e,n,r){this.config=n.config[e],this.platform=n,this.chain=this.config.key,this.network=this.config.network,this.rpc=r}getRpc(){return this.rpc=this.rpc?this.rpc:this.platform.getRpc(this.chain),this.rpc}async getDecimals(e){if(Ve(e))return this.config.nativeTokenDecimals;if(this.config.tokenMap){const n=Wt({chain:this.chain,address:e}),r=K6(this.network,this.chain,n);if(r)return r.decimals}return this.platform.utils().getDecimals(this.network,this.chain,await this.getRpc(),e)}async getBalance(e,n){return this.platform.utils().getBalance(this.network,this.chain,await this.getRpc(),e,n)}async getLatestBlock(){return this.platform.utils().getLatestBlock(await this.getRpc())}async getLatestFinalizedBlock(){return this.platform.utils().getLatestFinalizedBlock(await this.getRpc())}async parseTransaction(e){return this.platform.parseWormholeMessages(this.chain,await this.getRpc(),e)}async sendWait(e){return this.platform.utils().sendWait(this.chain,await this.getRpc(),e)}getToken(e){if(this.config.tokenMap&&e in this.config.tokenMap)return this.config.tokenMap[e]}async getNativeWrappedTokenId(){if(this.config.wrappedNative){const{address:n}=this.config.wrappedNative;return{chain:this.chain,address:yn(this.chain,n)}}const e=await this.getTokenBridge();return{chain:this.chain,address:await e.getWrappedNative()}}async getTokenAccount(e,n){return{chain:this.chain,address:e}}async isToken2022(e){return!1}supportsProtocol(e){return P6(this.chain,e)}async getProtocol(e,n,r){if(!n&&this.protocols.has(e))return this.protocols.get(e);const s=n?{...this.config.contracts,...n}:this.config.contracts,i=r??await this.getRpc(),a=this.platform.getProtocolInitializer(e);let o;if(r){if(n)throw new Error("Custom contracts are currently not supported with custom rpc connection. Add the contracts to the base config.");o=await this.platform.getProtocol(e,i)}else if(k6(a)){const c=await a.getVersion(i,s);o=new a(this.network,this.chain,i,s,c)}else o=new a(this.network,this.chain,i,s);return n||this.protocols.set(e,o),o}supportsWormholeCore=()=>this.supportsProtocol("WormholeCore");getWormholeCore=()=>this.getProtocol("WormholeCore");supportsTokenBridge=()=>this.supportsProtocol("TokenBridge");getTokenBridge=()=>this.getProtocol("TokenBridge");supportsAutomaticTokenBridge=()=>this.supportsProtocol("AutomaticTokenBridge");getAutomaticTokenBridge=()=>this.getProtocol("AutomaticTokenBridge");supportsExecutorTokenBridge=()=>this.supportsProtocol("ExecutorTokenBridge");getExecutorTokenBridge=()=>this.getProtocol("ExecutorTokenBridge");supportsCircleBridge=()=>this.supportsProtocol("CircleBridge");getCircleBridge=()=>this.getProtocol("CircleBridge");supportsAutomaticCircleBridge=()=>this.supportsProtocol("AutomaticCircleBridge");getAutomaticCircleBridge=()=>this.getProtocol("AutomaticCircleBridge");supportsIbcBridge=()=>this.supportsProtocol("IbcBridge");getIbcBridge=()=>this.getProtocol("IbcBridge");supportsPorticoBridge=()=>this.supportsProtocol("PorticoBridge");getPorticoBridge=()=>this.getProtocol("PorticoBridge");supportsTBTCBridge=()=>this.supportsProtocol("TBTCBridge");getTBTCBridge=()=>this.getProtocol("TBTCBridge")}function Y6(t){return oh(t)||ml(t)}function oh(t){return typeof t=="object"&&"chain"in t&&typeof t.chain=="function"&&"address"in t&&typeof t.address=="function"&&"sign"in t&&typeof t.sign=="function"}function ml(t){return typeof t=="object"&&"chain"in t&&typeof t.chain=="function"&&"address"in t&&typeof t.address=="function"&&"signAndSend"in t&&typeof t.signAndSend=="function"}class Z6{_chain;_address;_signer;constructor(e,n,r){this._chain=e,this._address=n,this._signer=r}unwrap(){return this._signer}}function ir(t){return t.sequence!==void 0&&t.emitter!==void 0&&t.chain!==void 0}function aa(t){return t.hash!==void 0}const Wd=t=>[Bn(1),{name:"token",binary:"bytes",layout:[{name:"address",...se},{name:"amount",...Te}]},{name:"sourceDomain",...Qr},{name:"targetDomain",...Qr},{name:"nonce",...Ta},{name:"caller",...se},{name:"mintRecipient",...se},Ea({name:"payload",lengthSize:2},t)],ep=[Bn(1),{name:"targetRelayerFee",...Te},{name:"toNativeTokenAmount",...Te},{name:"targetRecipient",...se}],tp=[["DepositWithPayload",Wd()],["TransferWithRelay",Wd(ep)]];We("AutomaticCircleBridge",tp);const ch={binary:"uint",size:4,custom:0,omit:!0},np=[{name:"messageBodyVersion",...ch},{name:"burnToken",...se},{name:"mintRecipient",...se},{name:"amount",...Te},{name:"messageSender",...se}],nc=[{name:"version",...ch},{name:"sourceDomain",...Qr},{name:"destinationDomain",...Qr},{name:"nonce",...Ta},{name:"sender",...se},{name:"recipient",...se},{name:"destinationCaller",...se},{name:"payload",binary:"bytes",layout:np}],rp=[["Message",nc]];We("CircleBridge",rp);exports.CircleBridge=void 0;(function(t){t.isCircleAttestation=e=>e.message!==void 0,t.deserialize=e=>{const n=Mt(nc,e),r=Xe.encode(Fa(e),!0);return[n,r]},t.serialize=e=>Ot(nc,e)})(exports.CircleBridge||(exports.CircleBridge={}));var Hd;(function(t){const e="AutomaticCircleBridge",n=["DepositWithPayload","TransferWithRelay"];t.getTransferDiscriminator=Rc(()=>fl([e,n]))})(Hd||(Hd={}));function sp(t){return t.amount!==void 0&&t.from!==void 0&&t.to!==void 0}const zd={binary:"bytes",size:32,custom:{to:t=>Ji(t.byteLength).map(e=>String.fromCharCode(t[e])).join(""),from:t=>new Uint8Array(t.split("").map(e=>e.charCodeAt(0)))}},lh=[{name:"token",binary:"bytes",layout:[{name:"amount",...Te},{name:"address",...se},{name:"chain",...ut()}]},{name:"to",binary:"bytes",layout:[{name:"address",...se},{name:"chain",...ut()}]}],dh=[Bn(1),...lh,{name:"fee",...Te}],ei=t=>[Bn(3),...lh,{name:"from",...se},Ea({name:"payload"},t)],ip=[["AttestMeta",[Bn(2),{name:"token",binary:"bytes",layout:[{name:"address",...se},{name:"chain",...ut()}]},{name:"decimals",binary:"uint",size:1},{name:"symbol",...zd},{name:"name",...zd}]],["Transfer",dh],["TransferWithPayload",ei()]];We("TokenBridge",ip);const ap=Ab(["shouldWrapNative","shouldUnwrapNative"]),oa=[{name:"recipientChain",binary:"uint",endianness:"little",size:2},{name:"bridgeNonce",binary:"uint",endianness:"little",size:4},{name:"feeTierStart",binary:"uint",endianness:"little",size:3},{name:"feeTierFinish",binary:"uint",endianness:"little",size:3},{name:"padding",binary:"bytes",size:19},{name:"flags",...ap}];({...se},{...Te}),{...se},{...se},{...se},{...Te},{...Te},{...Te},{...Te};const rc=[{name:"flagSet",binary:"bytes",layout:oa},{name:"finalTokenAddress",...se},{name:"recipientAddress",...se},{name:"cannonAssetAmount",...Te},{name:"minAmountFinish",...Te},{name:"relayerFee",...Te}],op=[["Transfer",ei(rc)]];We("PorticoBridge",op);exports.PorticoBridge=void 0;(function(t){t.deserializePayload=e=>Mt(rc,e),t.serializePayload=e=>Ot(rc,e),t.deserializeFlagSet=e=>Mt(oa,e),t.serializeFlagSet=e=>Ot(oa,e)})(exports.PorticoBridge||(exports.PorticoBridge={}));const uh={binary:"bytes",layout:[{name:"size",binary:"uint",size:4,custom:96,omit:!0},{name:"waste",binary:"uint",size:31,custom:0n,omit:!0},{name:"version",binary:"uint",size:1,custom:0,omit:!0},{name:"gasLimit",...Te},{name:"targetChainRefundPerGasUnused",...Te}]},Gd={binary:"bytes",layout:[{name:"chain",...ut()},{name:"address",...se}]},cp=[{name:"chain",...ut()},{name:"emitterAddress",...se},{name:"sequence",...va}],lp=[{name:"size",binary:"uint",size:4,custom:12,omit:!0},{name:"domain",...Qr},{name:"nonce",...Ta}],fh={binary:"switch",idSize:1,idTag:"keyType",layouts:[[[1,"VAA"],cp],[[2,"CCTP"],lp]]},hh=t=>[Bn(1),{name:"target",...Gd},Ea({name:"payload",lengthSize:4},t),{name:"requestedReceiverValue",...Te},{name:"extraReceiverValue",...Te},{name:"executionInfo",...uh},{name:"refund",...Gd},{name:"refundDeliveryProvider",...se},{name:"sourceDeliveryProvider",...se},{name:"senderAddress",...se},{name:"messageKeys",binary:"array",lengthSize:1,layout:fh}],dp=[["DeliveryInstruction",hh()],["RedeliveryInstruction",[Bn(2),{name:"deliveryVaaKey",binary:"bytes",layout:fh},{name:"targetChain",...ut()},{name:"newRequestedReceiverValue",...Te},{name:"newEncodedExecutionInfo",...uh},{name:"newSourceDeliveryProvider",...se},{name:"newSenderAddress",...se}]]];We("Relayer",dp);const up=[Bn(1),{name:"targetRelayerFee",...Te},{name:"toNativeTokenAmount",...Te},{name:"targetRecipient",...se}],fp=[["TransferWithRelay",ei(up)]];We("AutomaticTokenBridge",fp);const hp=t=>new Error(`Token ${t} is not a wrapped asset`);var sc;(function(t){const e="TokenBridge",n=["Transfer","TransferWithPayload"],r=["AttestMeta"];[...n,...r],t.getTransferDiscriminator=Rc(()=>fl([e,n]))})(sc||(sc={}));function mp(t){return t.token!==void 0&&t.amount!==void 0&&t.from!==void 0&&t.to!==void 0}const bp=[{name:"targetRecipient",...se}],pp=[["TransferWithExecutorRelay",ei(bp)]];We("ExecutorTokenBridge",pp);const gp=[["Add",1],["Subtract",2],["Unknown",3]],ic={binary:"bytes",size:20,custom:{to:t=>Xe.encode(t,!0),from:t=>Xe.decode(t)}},yp=[["UpgradeContract",[!1,[{name:"newContract",...se}]]],["RegisterChain",[!0,[{name:"foreignChain",...ut()},{name:"foreignAddress",...se}]]],["RecoverChainId",[!1,[{name:"evmChainId",binary:"uint",size:32},{name:"newChainId",...ut({allowedChains:zu("Evm")})}]]],["GuardianSetUpgrade",[!0,[{name:"guardianSet",...cl},{name:"guardians",binary:"array",lengthSize:1,layout:ic}]]],["SetMessageFee",[!1,[{name:"messageFee",binary:"uint",size:32}]]],["TransferFees",[!0,[{name:"amount",binary:"uint",size:32},{name:"recipient",...se}]]],["UpdateDefaultProvider",[!1,[{name:"defaultProvider",...se}]]],["RegisterEmitterAndDomain",[!0,[{name:"emitterChain",...ut()},{name:"emitterAddress",...se},{name:"domain",binary:"uint",size:4}]]],["UpdateFinality",[!1,[{name:"finality",binary:"uint",size:1}]]]],bo={binary:"bytes",size:32},Vd=[{name:"contractAddr",...se},{name:"codeId",binary:"uint",size:8}],Ap=[["StoreCode",[!1,[{name:"wasmHash",...bo}]]],["InstantiateContract",[!1,[{name:"instantiationParamsHash",...bo}]]],["MigrateContract",[!1,[{name:"migrationParamsHash",...bo}]]],["AddWasmInstantiateAllowlist",[!1,Vd]],["DeleteWasmInstantiateAllowlist",[!1,Vd]]],Ep=(()=>{const t=s=>({binary:"bytes",size:s,custom:Zf}),e=[{name:"height",binary:"uint",size:8}],n=ku(e),r=s=>[{name:"name",...t(s)},...e];return{binary:"bytes",custom:{to:s=>Mt(r(s.length-n),s),from:s=>Ot(r(s.name.length),s)}}})(),wp=[["ScheduleUpgrade",[!1,Ep]],["CancelUpgrade",[!0,[]]],["SetIbcComposabilityMwContract",[!1,[{name:"contractAddress",...se}]]]],Bp=[["ModifyBalance",[!1,[{name:"sequence",...va},{name:"modifiedChain",...ut()},{name:"tokenChain",...ut()},{name:"tokenAddress",...se},{name:"kind",...yb(gp)},{name:"amount",...Te},{name:"reason",...ll(32)}]]]],Cp=[["ActionUpdateChannelChain",[!1,[{name:"channelId",...ll(64)},{name:"channelChain",...ut({allowedChains:zu("Cosmwasm")})}]]]],xp=[["GeneralPurposeEvm",[!1,[{name:"governanceContract",...ic},{name:"targetContract",...ic},{name:"payload",binary:"bytes",lengthSize:2}]]],["GeneralPurposeSolana",[!1,[{name:"governanceContract",...se},{name:"payload",binary:"bytes"}]]]],mh=[...yp,...Ap,...wp,...Bp,...Cp,...xp];Su(mh,0);const _d=Object.fromEntries(mh),Dp=[["WormholeCore","Core"],["TokenBridge","TokenBridge"],["NftBridge","NftBridge"],["Relayer","WormholeRelayer"],["CircleBridge","CircleIntegration"],["IbcBridge","IbcTranslator"],["IbcReceiver","IbcReceiver"],["GlobalAccountant","GlobalAccountant"],["GeneralPurposeGovernance","GeneralPurposeGovernance"],["WormchainGovernance","WasmdModule"],["GatewayGovernance","GatewayModule"]],Fp=ne(Dp),Sp=t=>({to:t,from:(()=>{const n=new Uint8Array(32),r=Fp(t);for(let s=1;s<=r.length;++s)n[32-s]=r.charCodeAt(r.length-s);return n})()}),Tp=(t,e)=>({to:t,from:e}),vp=(t,e,n)=>[{name:"protocol",binary:"bytes",custom:Sp(t)},{name:"action",binary:"uint",size:1,custom:Tp(e,n)},{name:"chain",...ut({allowNull:_d[e][0]})},{name:"actionArgs",binary:"bytes",layout:_d[e][1]}],pe=(t,e,n)=>[e,vp(t,e,n)],Ip=[pe("WormholeCore","UpgradeContract",1),pe("WormholeCore","GuardianSetUpgrade",2),pe("WormholeCore","SetMessageFee",3),pe("WormholeCore","TransferFees",4),pe("WormholeCore","RecoverChainId",5)],kp=[pe("TokenBridge","RegisterChain",1),pe("TokenBridge","UpgradeContract",2),pe("TokenBridge","RecoverChainId",3)],Up=[pe("NftBridge","RegisterChain",1),pe("NftBridge","UpgradeContract",2),pe("NftBridge","RecoverChainId",3)],Pp=[pe("Relayer","RegisterChain",1),pe("Relayer","UpgradeContract",2),pe("Relayer","UpdateDefaultProvider",3)],Np=[pe("CircleBridge","UpdateFinality",1),pe("CircleBridge","RegisterEmitterAndDomain",2),pe("CircleBridge","UpgradeContract",3)],Rp=[pe("IbcBridge","ActionUpdateChannelChain",1)],Op=[pe("IbcReceiver","ActionUpdateChannelChain",1)],Mp=[pe("GlobalAccountant","ModifyBalance",1)],Lp=[pe("GeneralPurposeGovernance","GeneralPurposeEvm",1),pe("GeneralPurposeGovernance","GeneralPurposeSolana",2)],Wp=[pe("WormchainGovernance","StoreCode",1),pe("WormchainGovernance","InstantiateContract",2),pe("WormchainGovernance","MigrateContract",3),pe("WormchainGovernance","AddWasmInstantiateAllowlist",4),pe("WormchainGovernance","DeleteWasmInstantiateAllowlist",5)],Hp=[pe("GatewayGovernance","ScheduleUpgrade",1),pe("GatewayGovernance","CancelUpgrade",2),pe("GatewayGovernance","SetIbcComposabilityMwContract",3)];We("WormholeCore",Ip);We("TokenBridge",kp);We("NftBridge",Up);We("Relayer",Pp);We("CircleBridge",Np);We("IbcBridge",Rp);We("IbcReceiver",Op);We("GlobalAccountant",Mp);We("GeneralPurposeGovernance",Lp);We("WormchainGovernance",Wp);We("GatewayGovernance",Hp);exports.TBTCBridge=void 0;(function(t){const e="TBTCBridge",n=["GatewayTransfer","Transfer"];[...n],t.getTransferDiscriminator=Rc(()=>fl([e,n])),t.getNativeTbtcToken=r=>{const s=f2.get("Mainnet",r);if(s)return{chain:r,address:yn(r,s)}}})(exports.TBTCBridge||(exports.TBTCBridge={}));const zp=[{name:"recipient",...se}],Gp=[["GatewayTransfer",ei(zp)],["Transfer",dh]];We("TBTCBridge",Gp);const Vp=[{name:"gasLimit",binary:"uint",size:16},{name:"msgValue",binary:"uint",size:16}],_p=[{name:"dropOff",binary:"uint",size:16},{name:"recipient",...se}],jp=[{name:"request",binary:"switch",idSize:1,idTag:"type",layouts:[[[1,"GasInstruction"],Vp],[[2,"GasDropOffInstruction"],_p]]}],bh=[{name:"requests",binary:"array",layout:jp}],qp=[{name:"quote",binary:"switch",idSize:4,idTag:"prefix",layouts:[[[1162948657,"EQ01"],[{name:"quoterAddress",binary:"bytes",size:20},{name:"payeeAddress",binary:"bytes",size:32},{name:"srcChain",binary:"uint",size:2},{name:"dstChain",binary:"uint",size:2},{name:"expiryTime",binary:"uint",size:8,custom:Yf},{name:"baseFee",binary:"uint",size:8},{name:"dstGasPrice",binary:"uint",size:8},{name:"srcPrice",binary:"uint",size:8},{name:"dstPrice",binary:"uint",size:8}]]]}],ph=[...qp,{name:"signature",binary:"bytes",size:65}];var Ur;(function(t){t.Pending="pending",t.Failed="failed",t.Unsupported="unsupported",t.Submitted="submitted",t.Underpaid="underpaid",t.Aborted="aborted"})(Ur||(Ur={}));var jd;(function(t){t.ERM1="ERM1",t.ERV1="ERV1",t.ERN1="ERN1",t.ERC1="ERC1",t.ERC2="ERC2"})(jd||(jd={}));async function Kp(t){const e=`${t}/capabilities`;try{const n=await fetch(e,{method:"GET",headers:{"Content-Type":"application/json"}});if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);return await n.json()}catch{throw new Error("Failed to fetch capabilities.")}}async function Qp(t,e,n,r){const s=`${t}/quote`;try{const i=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({srcChain:Rt(e),dstChain:Rt(n),relayInstructions:r})});if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);return await i.json()}catch{throw new Error("Failed to fetch signed quote.")}}async function $p(t,e,n){const r=`${t}/status/tx`;try{const s=await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({txHash:e,chainId:Rt(n)})});if(!s.ok)throw new Error(`HTTP error! status: ${s.status}`);return await s.json()}catch{throw new Error(`Failed to fetch status for txHash: ${e}.`)}}const ca=globalThis||void 0||self;function gh(t,e){return function(){return t.apply(e,arguments)}}const{toString:Jp}=Object.prototype,{getPrototypeOf:bl}=Object,{iterator:ka,toStringTag:yh}=Symbol,Ua=(t=>e=>{const n=Jp.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ht=t=>(t=t.toLowerCase(),e=>Ua(e)===t),Pa=t=>e=>typeof e===t,{isArray:us}=Array,Os=Pa("undefined");function ti(t){return t!==null&&!Os(t)&&t.constructor!==null&&!Os(t.constructor)&&pt(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const Ah=Ht("ArrayBuffer");function Xp(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&Ah(t.buffer),e}const Yp=Pa("string"),pt=Pa("function"),Eh=Pa("number"),ni=t=>t!==null&&typeof t=="object",Zp=t=>t===!0||t===!1,Vi=t=>{if(Ua(t)!=="object")return!1;const e=bl(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(yh in t)&&!(ka in t)},e8=t=>{if(!ni(t)||ti(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},t8=Ht("Date"),n8=Ht("File"),r8=Ht("Blob"),s8=Ht("FileList"),i8=t=>ni(t)&&pt(t.pipe),a8=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||pt(t.append)&&((e=Ua(t))==="formdata"||e==="object"&&pt(t.toString)&&t.toString()==="[object FormData]"))},o8=Ht("URLSearchParams"),[c8,l8,d8,u8]=["ReadableStream","Request","Response","Headers"].map(Ht),f8=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ri(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let r,s;if(typeof t!="object"&&(t=[t]),us(t))for(r=0,s=t.length;r<s;r++)e.call(null,t[r],r,t);else{if(ti(t))return;const i=n?Object.getOwnPropertyNames(t):Object.keys(t),a=i.length;let o;for(r=0;r<a;r++)o=i[r],e.call(null,t[o],o,t)}}function wh(t,e){if(ti(t))return null;e=e.toLowerCase();const n=Object.keys(t);let r=n.length,s;for(;r-- >0;)if(s=n[r],e===s.toLowerCase())return s;return null}const Zn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:ca,Bh=t=>!Os(t)&&t!==Zn;function ac(){const{caseless:t}=Bh(this)&&this||{},e={},n=(r,s)=>{const i=t&&wh(e,s)||s;Vi(e[i])&&Vi(r)?e[i]=ac(e[i],r):Vi(r)?e[i]=ac({},r):us(r)?e[i]=r.slice():e[i]=r};for(let r=0,s=arguments.length;r<s;r++)arguments[r]&&ri(arguments[r],n);return e}const h8=(t,e,n,{allOwnKeys:r}={})=>(ri(e,(s,i)=>{n&&pt(s)?t[i]=gh(s,n):t[i]=s},{allOwnKeys:r}),t),m8=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),b8=(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},p8=(t,e,n,r)=>{let s,i,a;const o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!r||r(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=n!==!1&&bl(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},g8=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const r=t.indexOf(e,n);return r!==-1&&r===n},y8=t=>{if(!t)return null;if(us(t))return t;let e=t.length;if(!Eh(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},A8=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&bl(Uint8Array)),E8=(t,e)=>{const r=(t&&t[ka]).call(t);let s;for(;(s=r.next())&&!s.done;){const i=s.value;e.call(t,i[0],i[1])}},w8=(t,e)=>{let n;const r=[];for(;(n=t.exec(e))!==null;)r.push(n);return r},B8=Ht("HTMLFormElement"),C8=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),qd=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),x8=Ht("RegExp"),Ch=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),r={};ri(n,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(r[i]=a||s)}),Object.defineProperties(t,r)},D8=t=>{Ch(t,(e,n)=>{if(pt(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=t[n];if(pt(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},F8=(t,e)=>{const n={},r=s=>{s.forEach(i=>{n[i]=!0})};return us(t)?r(t):r(String(t).split(e)),n},S8=()=>{},T8=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function v8(t){return!!(t&&pt(t.append)&&t[yh]==="FormData"&&t[ka])}const I8=t=>{const e=new Array(10),n=(r,s)=>{if(ni(r)){if(e.indexOf(r)>=0)return;if(ti(r))return r;if(!("toJSON"in r)){e[s]=r;const i=us(r)?[]:{};return ri(r,(a,o)=>{const c=n(a,s+1);!Os(c)&&(i[o]=c)}),e[s]=void 0,i}}return r};return n(t,0)},k8=Ht("AsyncFunction"),U8=t=>t&&(ni(t)||pt(t))&&pt(t.then)&&pt(t.catch),xh=((t,e)=>t?setImmediate:e?((n,r)=>(Zn.addEventListener("message",({source:s,data:i})=>{s===Zn&&i===n&&r.length&&r.shift()()},!1),s=>{r.push(s),Zn.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",pt(Zn.postMessage)),P8=typeof queueMicrotask<"u"?queueMicrotask.bind(Zn):typeof vs<"u"&&vs.nextTick||xh,N8=t=>t!=null&&pt(t[ka]),P={isArray:us,isArrayBuffer:Ah,isBuffer:ti,isFormData:a8,isArrayBufferView:Xp,isString:Yp,isNumber:Eh,isBoolean:Zp,isObject:ni,isPlainObject:Vi,isEmptyObject:e8,isReadableStream:c8,isRequest:l8,isResponse:d8,isHeaders:u8,isUndefined:Os,isDate:t8,isFile:n8,isBlob:r8,isRegExp:x8,isFunction:pt,isStream:i8,isURLSearchParams:o8,isTypedArray:A8,isFileList:s8,forEach:ri,merge:ac,extend:h8,trim:f8,stripBOM:m8,inherits:b8,toFlatObject:p8,kindOf:Ua,kindOfTest:Ht,endsWith:g8,toArray:y8,forEachEntry:E8,matchAll:w8,isHTMLForm:B8,hasOwnProperty:qd,hasOwnProp:qd,reduceDescriptors:Ch,freezeMethods:D8,toObjectSet:F8,toCamelCase:C8,noop:S8,toFiniteNumber:T8,findKey:wh,global:Zn,isContextDefined:Bh,isSpecCompliantForm:v8,toJSONObject:I8,isAsyncFn:k8,isThenable:U8,setImmediate:xh,asap:P8,isIterable:N8};var pl={},Na={};Na.byteLength=M8;Na.toByteArray=W8;Na.fromByteArray=G8;var $t=[],Ft=[],R8=typeof Uint8Array<"u"?Uint8Array:Array,po="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var Fr=0,O8=po.length;Fr<O8;++Fr)$t[Fr]=po[Fr],Ft[po.charCodeAt(Fr)]=Fr;Ft[45]=62;Ft[95]=63;function Dh(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");n===-1&&(n=e);var r=n===e?0:4-n%4;return[n,r]}function M8(t){var e=Dh(t),n=e[0],r=e[1];return(n+r)*3/4-r}function L8(t,e,n){return(e+n)*3/4-n}function W8(t){var e,n=Dh(t),r=n[0],s=n[1],i=new R8(L8(t,r,s)),a=0,o=s>0?r-4:r,c;for(c=0;c<o;c+=4)e=Ft[t.charCodeAt(c)]<<18|Ft[t.charCodeAt(c+1)]<<12|Ft[t.charCodeAt(c+2)]<<6|Ft[t.charCodeAt(c+3)],i[a++]=e>>16&255,i[a++]=e>>8&255,i[a++]=e&255;return s===2&&(e=Ft[t.charCodeAt(c)]<<2|Ft[t.charCodeAt(c+1)]>>4,i[a++]=e&255),s===1&&(e=Ft[t.charCodeAt(c)]<<10|Ft[t.charCodeAt(c+1)]<<4|Ft[t.charCodeAt(c+2)]>>2,i[a++]=e>>8&255,i[a++]=e&255),i}function H8(t){return $t[t>>18&63]+$t[t>>12&63]+$t[t>>6&63]+$t[t&63]}function z8(t,e,n){for(var r,s=[],i=e;i<n;i+=3)r=(t[i]<<16&16711680)+(t[i+1]<<8&65280)+(t[i+2]&255),s.push(H8(r));return s.join("")}function G8(t){for(var e,n=t.length,r=n%3,s=[],i=16383,a=0,o=n-r;a<o;a+=i)s.push(z8(t,a,a+i>o?o:a+i));return r===1?(e=t[n-1],s.push($t[e>>2]+$t[e<<4&63]+"==")):r===2&&(e=(t[n-2]<<8)+t[n-1],s.push($t[e>>10]+$t[e>>4&63]+$t[e<<2&63]+"=")),s.join("")}var gl={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */gl.read=function(t,e,n,r,s){var i,a,o=s*8-r-1,c=(1<<o)-1,d=c>>1,l=-7,f=n?s-1:0,m=n?-1:1,b=t[e+f];for(f+=m,i=b&(1<<-l)-1,b>>=-l,l+=o;l>0;i=i*256+t[e+f],f+=m,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=a*256+t[e+f],f+=m,l-=8);if(i===0)i=1-d;else{if(i===c)return a?NaN:(b?-1:1)*(1/0);a=a+Math.pow(2,r),i=i-d}return(b?-1:1)*a*Math.pow(2,i-r)};gl.write=function(t,e,n,r,s,i){var a,o,c,d=i*8-s-1,l=(1<<d)-1,f=l>>1,m=s===23?Math.pow(2,-24)-Math.pow(2,-77):0,b=r?0:i-1,w=r?1:-1,E=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(o=isNaN(e)?1:0,a=l):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),a+f>=1?e+=m/c:e+=m*Math.pow(2,1-f),e*c>=2&&(a++,c/=2),a+f>=l?(o=0,a=l):a+f>=1?(o=(e*c-1)*Math.pow(2,s),a=a+f):(o=e*Math.pow(2,f-1)*Math.pow(2,s),a=0));s>=8;t[n+b]=o&255,b+=w,o/=256,s-=8);for(a=a<<s|o,d+=s;d>0;t[n+b]=a&255,b+=w,a/=256,d-=8);t[n+b-w]|=E*128};/*!
|
|
2
|
-
* The buffer module from node.js, for the browser.
|
|
3
|
-
*
|
|
4
|
-
* @author Feross Aboukhadijeh <https://feross.org>
|
|
5
|
-
* @license MIT
|
|
6
|
-
*/(function(t){const e=Na,n=gl,r=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=l,t.SlowBuffer=T,t.INSPECT_MAX_BYTES=50;const s=2147483647;t.kMaxLength=s;const{Uint8Array:i,ArrayBuffer:a,SharedArrayBuffer:o}=globalThis;l.TYPED_ARRAY_SUPPORT=c(),!l.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function c(){try{const g=new i(1),u={foo:function(){return 42}};return Object.setPrototypeOf(u,i.prototype),Object.setPrototypeOf(g,u),g.foo()===42}catch{return!1}}Object.defineProperty(l.prototype,"parent",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.buffer}}),Object.defineProperty(l.prototype,"offset",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.byteOffset}});function d(g){if(g>s)throw new RangeError('The value "'+g+'" is invalid for option "size"');const u=new i(g);return Object.setPrototypeOf(u,l.prototype),u}function l(g,u,h){if(typeof g=="number"){if(typeof u=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return w(g)}return f(g,u,h)}l.poolSize=8192;function f(g,u,h){if(typeof g=="string")return E(g,u);if(a.isView(g))return p(g);if(g==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof g);if(Gt(g,a)||g&&Gt(g.buffer,a)||typeof o<"u"&&(Gt(g,o)||g&&Gt(g.buffer,o)))return x(g,u,h);if(typeof g=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const B=g.valueOf&&g.valueOf();if(B!=null&&B!==g)return l.from(B,u,h);const F=A(g);if(F)return F;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof g[Symbol.toPrimitive]=="function")return l.from(g[Symbol.toPrimitive]("string"),u,h);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof g)}l.from=function(g,u,h){return f(g,u,h)},Object.setPrototypeOf(l.prototype,i.prototype),Object.setPrototypeOf(l,i);function m(g){if(typeof g!="number")throw new TypeError('"size" argument must be of type number');if(g<0)throw new RangeError('The value "'+g+'" is invalid for option "size"')}function b(g,u,h){return m(g),g<=0?d(g):u!==void 0?typeof h=="string"?d(g).fill(u,h):d(g).fill(u):d(g)}l.alloc=function(g,u,h){return b(g,u,h)};function w(g){return m(g),d(g<0?0:S(g)|0)}l.allocUnsafe=function(g){return w(g)},l.allocUnsafeSlow=function(g){return w(g)};function E(g,u){if((typeof u!="string"||u==="")&&(u="utf8"),!l.isEncoding(u))throw new TypeError("Unknown encoding: "+u);const h=U(g,u)|0;let B=d(h);const F=B.write(g,u);return F!==h&&(B=B.slice(0,F)),B}function y(g){const u=g.length<0?0:S(g.length)|0,h=d(u);for(let B=0;B<u;B+=1)h[B]=g[B]&255;return h}function p(g){if(Gt(g,i)){const u=new i(g);return x(u.buffer,u.byteOffset,u.byteLength)}return y(g)}function x(g,u,h){if(u<0||g.byteLength<u)throw new RangeError('"offset" is outside of buffer bounds');if(g.byteLength<u+(h||0))throw new RangeError('"length" is outside of buffer bounds');let B;return u===void 0&&h===void 0?B=new i(g):h===void 0?B=new i(g,u):B=new i(g,u,h),Object.setPrototypeOf(B,l.prototype),B}function A(g){if(l.isBuffer(g)){const u=S(g.length)|0,h=d(u);return h.length===0||g.copy(h,0,0,u),h}if(g.length!==void 0)return typeof g.length!="number"||ao(g.length)?d(0):y(g);if(g.type==="Buffer"&&Array.isArray(g.data))return y(g.data)}function S(g){if(g>=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return g|0}function T(g){return+g!=g&&(g=0),l.alloc(+g)}l.isBuffer=function(u){return u!=null&&u._isBuffer===!0&&u!==l.prototype},l.compare=function(u,h){if(Gt(u,i)&&(u=l.from(u,u.offset,u.byteLength)),Gt(h,i)&&(h=l.from(h,h.offset,h.byteLength)),!l.isBuffer(u)||!l.isBuffer(h))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(u===h)return 0;let B=u.length,F=h.length;for(let I=0,L=Math.min(B,F);I<L;++I)if(u[I]!==h[I]){B=u[I],F=h[I];break}return B<F?-1:F<B?1:0},l.isEncoding=function(u){switch(String(u).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},l.concat=function(u,h){if(!Array.isArray(u))throw new TypeError('"list" argument must be an Array of Buffers');if(u.length===0)return l.alloc(0);let B;if(h===void 0)for(h=0,B=0;B<u.length;++B)h+=u[B].length;const F=l.allocUnsafe(h);let I=0;for(B=0;B<u.length;++B){let L=u[B];if(Gt(L,i))I+L.length>F.length?(l.isBuffer(L)||(L=l.from(L)),L.copy(F,I)):i.prototype.set.call(F,L,I);else if(l.isBuffer(L))L.copy(F,I);else throw new TypeError('"list" argument must be an Array of Buffers');I+=L.length}return F};function U(g,u){if(l.isBuffer(g))return g.length;if(a.isView(g)||Gt(g,a))return g.byteLength;if(typeof g!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof g);const h=g.length,B=arguments.length>2&&arguments[2]===!0;if(!B&&h===0)return 0;let F=!1;for(;;)switch(u){case"ascii":case"latin1":case"binary":return h;case"utf8":case"utf-8":return io(g).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return h*2;case"hex":return h>>>1;case"base64":return Yl(g).length;default:if(F)return B?-1:io(g).length;u=(""+u).toLowerCase(),F=!0}}l.byteLength=U;function R(g,u,h){let B=!1;if((u===void 0||u<0)&&(u=0),u>this.length||((h===void 0||h>this.length)&&(h=this.length),h<=0)||(h>>>=0,u>>>=0,h<=u))return"";for(g||(g="utf8");;)switch(g){case"hex":return Y(this,u,h);case"utf8":case"utf-8":return H(this,u,h);case"ascii":return j(this,u,h);case"latin1":case"binary":return J(this,u,h);case"base64":return k(this,u,h);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return me(this,u,h);default:if(B)throw new TypeError("Unknown encoding: "+g);g=(g+"").toLowerCase(),B=!0}}l.prototype._isBuffer=!0;function v(g,u,h){const B=g[u];g[u]=g[h],g[h]=B}l.prototype.swap16=function(){const u=this.length;if(u%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let h=0;h<u;h+=2)v(this,h,h+1);return this},l.prototype.swap32=function(){const u=this.length;if(u%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let h=0;h<u;h+=4)v(this,h,h+3),v(this,h+1,h+2);return this},l.prototype.swap64=function(){const u=this.length;if(u%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let h=0;h<u;h+=8)v(this,h,h+7),v(this,h+1,h+6),v(this,h+2,h+5),v(this,h+3,h+4);return this},l.prototype.toString=function(){const u=this.length;return u===0?"":arguments.length===0?H(this,0,u):R.apply(this,arguments)},l.prototype.toLocaleString=l.prototype.toString,l.prototype.equals=function(u){if(!l.isBuffer(u))throw new TypeError("Argument must be a Buffer");return this===u?!0:l.compare(this,u)===0},l.prototype.inspect=function(){let u="";const h=t.INSPECT_MAX_BYTES;return u=this.toString("hex",0,h).replace(/(.{2})/g,"$1 ").trim(),this.length>h&&(u+=" ... "),"<Buffer "+u+">"},r&&(l.prototype[r]=l.prototype.inspect),l.prototype.compare=function(u,h,B,F,I){if(Gt(u,i)&&(u=l.from(u,u.offset,u.byteLength)),!l.isBuffer(u))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof u);if(h===void 0&&(h=0),B===void 0&&(B=u?u.length:0),F===void 0&&(F=0),I===void 0&&(I=this.length),h<0||B>u.length||F<0||I>this.length)throw new RangeError("out of range index");if(F>=I&&h>=B)return 0;if(F>=I)return-1;if(h>=B)return 1;if(h>>>=0,B>>>=0,F>>>=0,I>>>=0,this===u)return 0;let L=I-F,de=B-h;const ve=Math.min(L,de),Ce=this.slice(F,I),Ie=u.slice(h,B);for(let Ae=0;Ae<ve;++Ae)if(Ce[Ae]!==Ie[Ae]){L=Ce[Ae],de=Ie[Ae];break}return L<de?-1:de<L?1:0};function M(g,u,h,B,F){if(g.length===0)return-1;if(typeof h=="string"?(B=h,h=0):h>2147483647?h=2147483647:h<-2147483648&&(h=-2147483648),h=+h,ao(h)&&(h=F?0:g.length-1),h<0&&(h=g.length+h),h>=g.length){if(F)return-1;h=g.length-1}else if(h<0)if(F)h=0;else return-1;if(typeof u=="string"&&(u=l.from(u,B)),l.isBuffer(u))return u.length===0?-1:V(g,u,h,B,F);if(typeof u=="number")return u=u&255,typeof i.prototype.indexOf=="function"?F?i.prototype.indexOf.call(g,u,h):i.prototype.lastIndexOf.call(g,u,h):V(g,[u],h,B,F);throw new TypeError("val must be string, number or Buffer")}function V(g,u,h,B,F){let I=1,L=g.length,de=u.length;if(B!==void 0&&(B=String(B).toLowerCase(),B==="ucs2"||B==="ucs-2"||B==="utf16le"||B==="utf-16le")){if(g.length<2||u.length<2)return-1;I=2,L/=2,de/=2,h/=2}function ve(Ie,Ae){return I===1?Ie[Ae]:Ie.readUInt16BE(Ae*I)}let Ce;if(F){let Ie=-1;for(Ce=h;Ce<L;Ce++)if(ve(g,Ce)===ve(u,Ie===-1?0:Ce-Ie)){if(Ie===-1&&(Ie=Ce),Ce-Ie+1===de)return Ie*I}else Ie!==-1&&(Ce-=Ce-Ie),Ie=-1}else for(h+de>L&&(h=L-de),Ce=h;Ce>=0;Ce--){let Ie=!0;for(let Ae=0;Ae<de;Ae++)if(ve(g,Ce+Ae)!==ve(u,Ae)){Ie=!1;break}if(Ie)return Ce}return-1}l.prototype.includes=function(u,h,B){return this.indexOf(u,h,B)!==-1},l.prototype.indexOf=function(u,h,B){return M(this,u,h,B,!0)},l.prototype.lastIndexOf=function(u,h,B){return M(this,u,h,B,!1)};function Q(g,u,h,B){h=Number(h)||0;const F=g.length-h;B?(B=Number(B),B>F&&(B=F)):B=F;const I=u.length;B>I/2&&(B=I/2);let L;for(L=0;L<B;++L){const de=parseInt(u.substr(L*2,2),16);if(ao(de))return L;g[h+L]=de}return L}function q(g,u,h,B){return hi(io(u,g.length-h),g,h,B)}function N(g,u,h,B){return hi(qm(u),g,h,B)}function O(g,u,h,B){return hi(Yl(u),g,h,B)}function C(g,u,h,B){return hi(Km(u,g.length-h),g,h,B)}l.prototype.write=function(u,h,B,F){if(h===void 0)F="utf8",B=this.length,h=0;else if(B===void 0&&typeof h=="string")F=h,B=this.length,h=0;else if(isFinite(h))h=h>>>0,isFinite(B)?(B=B>>>0,F===void 0&&(F="utf8")):(F=B,B=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const I=this.length-h;if((B===void 0||B>I)&&(B=I),u.length>0&&(B<0||h<0)||h>this.length)throw new RangeError("Attempt to write outside buffer bounds");F||(F="utf8");let L=!1;for(;;)switch(F){case"hex":return Q(this,u,h,B);case"utf8":case"utf-8":return q(this,u,h,B);case"ascii":case"latin1":case"binary":return N(this,u,h,B);case"base64":return O(this,u,h,B);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,u,h,B);default:if(L)throw new TypeError("Unknown encoding: "+F);F=(""+F).toLowerCase(),L=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function k(g,u,h){return u===0&&h===g.length?e.fromByteArray(g):e.fromByteArray(g.slice(u,h))}function H(g,u,h){h=Math.min(g.length,h);const B=[];let F=u;for(;F<h;){const I=g[F];let L=null,de=I>239?4:I>223?3:I>191?2:1;if(F+de<=h){let ve,Ce,Ie,Ae;switch(de){case 1:I<128&&(L=I);break;case 2:ve=g[F+1],(ve&192)===128&&(Ae=(I&31)<<6|ve&63,Ae>127&&(L=Ae));break;case 3:ve=g[F+1],Ce=g[F+2],(ve&192)===128&&(Ce&192)===128&&(Ae=(I&15)<<12|(ve&63)<<6|Ce&63,Ae>2047&&(Ae<55296||Ae>57343)&&(L=Ae));break;case 4:ve=g[F+1],Ce=g[F+2],Ie=g[F+3],(ve&192)===128&&(Ce&192)===128&&(Ie&192)===128&&(Ae=(I&15)<<18|(ve&63)<<12|(Ce&63)<<6|Ie&63,Ae>65535&&Ae<1114112&&(L=Ae))}}L===null?(L=65533,de=1):L>65535&&(L-=65536,B.push(L>>>10&1023|55296),L=56320|L&1023),B.push(L),F+=de}return z(B)}const G=4096;function z(g){const u=g.length;if(u<=G)return String.fromCharCode.apply(String,g);let h="",B=0;for(;B<u;)h+=String.fromCharCode.apply(String,g.slice(B,B+=G));return h}function j(g,u,h){let B="";h=Math.min(g.length,h);for(let F=u;F<h;++F)B+=String.fromCharCode(g[F]&127);return B}function J(g,u,h){let B="";h=Math.min(g.length,h);for(let F=u;F<h;++F)B+=String.fromCharCode(g[F]);return B}function Y(g,u,h){const B=g.length;(!u||u<0)&&(u=0),(!h||h<0||h>B)&&(h=B);let F="";for(let I=u;I<h;++I)F+=Qm[g[I]];return F}function me(g,u,h){const B=g.slice(u,h);let F="";for(let I=0;I<B.length-1;I+=2)F+=String.fromCharCode(B[I]+B[I+1]*256);return F}l.prototype.slice=function(u,h){const B=this.length;u=~~u,h=h===void 0?B:~~h,u<0?(u+=B,u<0&&(u=0)):u>B&&(u=B),h<0?(h+=B,h<0&&(h=0)):h>B&&(h=B),h<u&&(h=u);const F=this.subarray(u,h);return Object.setPrototypeOf(F,l.prototype),F};function Z(g,u,h){if(g%1!==0||g<0)throw new RangeError("offset is not uint");if(g+u>h)throw new RangeError("Trying to access beyond buffer length")}l.prototype.readUintLE=l.prototype.readUIntLE=function(u,h,B){u=u>>>0,h=h>>>0,B||Z(u,h,this.length);let F=this[u],I=1,L=0;for(;++L<h&&(I*=256);)F+=this[u+L]*I;return F},l.prototype.readUintBE=l.prototype.readUIntBE=function(u,h,B){u=u>>>0,h=h>>>0,B||Z(u,h,this.length);let F=this[u+--h],I=1;for(;h>0&&(I*=256);)F+=this[u+--h]*I;return F},l.prototype.readUint8=l.prototype.readUInt8=function(u,h){return u=u>>>0,h||Z(u,1,this.length),this[u]},l.prototype.readUint16LE=l.prototype.readUInt16LE=function(u,h){return u=u>>>0,h||Z(u,2,this.length),this[u]|this[u+1]<<8},l.prototype.readUint16BE=l.prototype.readUInt16BE=function(u,h){return u=u>>>0,h||Z(u,2,this.length),this[u]<<8|this[u+1]},l.prototype.readUint32LE=l.prototype.readUInt32LE=function(u,h){return u=u>>>0,h||Z(u,4,this.length),(this[u]|this[u+1]<<8|this[u+2]<<16)+this[u+3]*16777216},l.prototype.readUint32BE=l.prototype.readUInt32BE=function(u,h){return u=u>>>0,h||Z(u,4,this.length),this[u]*16777216+(this[u+1]<<16|this[u+2]<<8|this[u+3])},l.prototype.readBigUInt64LE=xn(function(u){u=u>>>0,rn(u,"offset");const h=this[u],B=this[u+7];(h===void 0||B===void 0)&&ms(u,this.length-8);const F=h+this[++u]*2**8+this[++u]*2**16+this[++u]*2**24,I=this[++u]+this[++u]*2**8+this[++u]*2**16+B*2**24;return BigInt(F)+(BigInt(I)<<BigInt(32))}),l.prototype.readBigUInt64BE=xn(function(u){u=u>>>0,rn(u,"offset");const h=this[u],B=this[u+7];(h===void 0||B===void 0)&&ms(u,this.length-8);const F=h*2**24+this[++u]*2**16+this[++u]*2**8+this[++u],I=this[++u]*2**24+this[++u]*2**16+this[++u]*2**8+B;return(BigInt(F)<<BigInt(32))+BigInt(I)}),l.prototype.readIntLE=function(u,h,B){u=u>>>0,h=h>>>0,B||Z(u,h,this.length);let F=this[u],I=1,L=0;for(;++L<h&&(I*=256);)F+=this[u+L]*I;return I*=128,F>=I&&(F-=Math.pow(2,8*h)),F},l.prototype.readIntBE=function(u,h,B){u=u>>>0,h=h>>>0,B||Z(u,h,this.length);let F=h,I=1,L=this[u+--F];for(;F>0&&(I*=256);)L+=this[u+--F]*I;return I*=128,L>=I&&(L-=Math.pow(2,8*h)),L},l.prototype.readInt8=function(u,h){return u=u>>>0,h||Z(u,1,this.length),this[u]&128?(255-this[u]+1)*-1:this[u]},l.prototype.readInt16LE=function(u,h){u=u>>>0,h||Z(u,2,this.length);const B=this[u]|this[u+1]<<8;return B&32768?B|4294901760:B},l.prototype.readInt16BE=function(u,h){u=u>>>0,h||Z(u,2,this.length);const B=this[u+1]|this[u]<<8;return B&32768?B|4294901760:B},l.prototype.readInt32LE=function(u,h){return u=u>>>0,h||Z(u,4,this.length),this[u]|this[u+1]<<8|this[u+2]<<16|this[u+3]<<24},l.prototype.readInt32BE=function(u,h){return u=u>>>0,h||Z(u,4,this.length),this[u]<<24|this[u+1]<<16|this[u+2]<<8|this[u+3]},l.prototype.readBigInt64LE=xn(function(u){u=u>>>0,rn(u,"offset");const h=this[u],B=this[u+7];(h===void 0||B===void 0)&&ms(u,this.length-8);const F=this[u+4]+this[u+5]*2**8+this[u+6]*2**16+(B<<24);return(BigInt(F)<<BigInt(32))+BigInt(h+this[++u]*2**8+this[++u]*2**16+this[++u]*2**24)}),l.prototype.readBigInt64BE=xn(function(u){u=u>>>0,rn(u,"offset");const h=this[u],B=this[u+7];(h===void 0||B===void 0)&&ms(u,this.length-8);const F=(h<<24)+this[++u]*2**16+this[++u]*2**8+this[++u];return(BigInt(F)<<BigInt(32))+BigInt(this[++u]*2**24+this[++u]*2**16+this[++u]*2**8+B)}),l.prototype.readFloatLE=function(u,h){return u=u>>>0,h||Z(u,4,this.length),n.read(this,u,!0,23,4)},l.prototype.readFloatBE=function(u,h){return u=u>>>0,h||Z(u,4,this.length),n.read(this,u,!1,23,4)},l.prototype.readDoubleLE=function(u,h){return u=u>>>0,h||Z(u,8,this.length),n.read(this,u,!0,52,8)},l.prototype.readDoubleBE=function(u,h){return u=u>>>0,h||Z(u,8,this.length),n.read(this,u,!1,52,8)};function _(g,u,h,B,F,I){if(!l.isBuffer(g))throw new TypeError('"buffer" argument must be a Buffer instance');if(u>F||u<I)throw new RangeError('"value" argument is out of bounds');if(h+B>g.length)throw new RangeError("Index out of range")}l.prototype.writeUintLE=l.prototype.writeUIntLE=function(u,h,B,F){if(u=+u,h=h>>>0,B=B>>>0,!F){const de=Math.pow(2,8*B)-1;_(this,u,h,B,de,0)}let I=1,L=0;for(this[h]=u&255;++L<B&&(I*=256);)this[h+L]=u/I&255;return h+B},l.prototype.writeUintBE=l.prototype.writeUIntBE=function(u,h,B,F){if(u=+u,h=h>>>0,B=B>>>0,!F){const de=Math.pow(2,8*B)-1;_(this,u,h,B,de,0)}let I=B-1,L=1;for(this[h+I]=u&255;--I>=0&&(L*=256);)this[h+I]=u/L&255;return h+B},l.prototype.writeUint8=l.prototype.writeUInt8=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,1,255,0),this[h]=u&255,h+1},l.prototype.writeUint16LE=l.prototype.writeUInt16LE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,2,65535,0),this[h]=u&255,this[h+1]=u>>>8,h+2},l.prototype.writeUint16BE=l.prototype.writeUInt16BE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,2,65535,0),this[h]=u>>>8,this[h+1]=u&255,h+2},l.prototype.writeUint32LE=l.prototype.writeUInt32LE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,4,4294967295,0),this[h+3]=u>>>24,this[h+2]=u>>>16,this[h+1]=u>>>8,this[h]=u&255,h+4},l.prototype.writeUint32BE=l.prototype.writeUInt32BE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,4,4294967295,0),this[h]=u>>>24,this[h+1]=u>>>16,this[h+2]=u>>>8,this[h+3]=u&255,h+4};function te(g,u,h,B,F){hs(u,B,F,g,h,7);let I=Number(u&BigInt(4294967295));g[h++]=I,I=I>>8,g[h++]=I,I=I>>8,g[h++]=I,I=I>>8,g[h++]=I;let L=Number(u>>BigInt(32)&BigInt(4294967295));return g[h++]=L,L=L>>8,g[h++]=L,L=L>>8,g[h++]=L,L=L>>8,g[h++]=L,h}function le(g,u,h,B,F){hs(u,B,F,g,h,7);let I=Number(u&BigInt(4294967295));g[h+7]=I,I=I>>8,g[h+6]=I,I=I>>8,g[h+5]=I,I=I>>8,g[h+4]=I;let L=Number(u>>BigInt(32)&BigInt(4294967295));return g[h+3]=L,L=L>>8,g[h+2]=L,L=L>>8,g[h+1]=L,L=L>>8,g[h]=L,h+8}l.prototype.writeBigUInt64LE=xn(function(u,h=0){return te(this,u,h,BigInt(0),BigInt("0xffffffffffffffff"))}),l.prototype.writeBigUInt64BE=xn(function(u,h=0){return le(this,u,h,BigInt(0),BigInt("0xffffffffffffffff"))}),l.prototype.writeIntLE=function(u,h,B,F){if(u=+u,h=h>>>0,!F){const ve=Math.pow(2,8*B-1);_(this,u,h,B,ve-1,-ve)}let I=0,L=1,de=0;for(this[h]=u&255;++I<B&&(L*=256);)u<0&&de===0&&this[h+I-1]!==0&&(de=1),this[h+I]=(u/L>>0)-de&255;return h+B},l.prototype.writeIntBE=function(u,h,B,F){if(u=+u,h=h>>>0,!F){const ve=Math.pow(2,8*B-1);_(this,u,h,B,ve-1,-ve)}let I=B-1,L=1,de=0;for(this[h+I]=u&255;--I>=0&&(L*=256);)u<0&&de===0&&this[h+I+1]!==0&&(de=1),this[h+I]=(u/L>>0)-de&255;return h+B},l.prototype.writeInt8=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,1,127,-128),u<0&&(u=255+u+1),this[h]=u&255,h+1},l.prototype.writeInt16LE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,2,32767,-32768),this[h]=u&255,this[h+1]=u>>>8,h+2},l.prototype.writeInt16BE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,2,32767,-32768),this[h]=u>>>8,this[h+1]=u&255,h+2},l.prototype.writeInt32LE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,4,2147483647,-2147483648),this[h]=u&255,this[h+1]=u>>>8,this[h+2]=u>>>16,this[h+3]=u>>>24,h+4},l.prototype.writeInt32BE=function(u,h,B){return u=+u,h=h>>>0,B||_(this,u,h,4,2147483647,-2147483648),u<0&&(u=4294967295+u+1),this[h]=u>>>24,this[h+1]=u>>>16,this[h+2]=u>>>8,this[h+3]=u&255,h+4},l.prototype.writeBigInt64LE=xn(function(u,h=0){return te(this,u,h,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),l.prototype.writeBigInt64BE=xn(function(u,h=0){return le(this,u,h,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ge(g,u,h,B,F,I){if(h+B>g.length)throw new RangeError("Index out of range");if(h<0)throw new RangeError("Index out of range")}function oe(g,u,h,B,F){return u=+u,h=h>>>0,F||ge(g,u,h,4),n.write(g,u,h,B,23,4),h+4}l.prototype.writeFloatLE=function(u,h,B){return oe(this,u,h,!0,B)},l.prototype.writeFloatBE=function(u,h,B){return oe(this,u,h,!1,B)};function ye(g,u,h,B,F){return u=+u,h=h>>>0,F||ge(g,u,h,8),n.write(g,u,h,B,52,8),h+8}l.prototype.writeDoubleLE=function(u,h,B){return ye(this,u,h,!0,B)},l.prototype.writeDoubleBE=function(u,h,B){return ye(this,u,h,!1,B)},l.prototype.copy=function(u,h,B,F){if(!l.isBuffer(u))throw new TypeError("argument should be a Buffer");if(B||(B=0),!F&&F!==0&&(F=this.length),h>=u.length&&(h=u.length),h||(h=0),F>0&&F<B&&(F=B),F===B||u.length===0||this.length===0)return 0;if(h<0)throw new RangeError("targetStart out of bounds");if(B<0||B>=this.length)throw new RangeError("Index out of range");if(F<0)throw new RangeError("sourceEnd out of bounds");F>this.length&&(F=this.length),u.length-h<F-B&&(F=u.length-h+B);const I=F-B;return this===u&&typeof i.prototype.copyWithin=="function"?this.copyWithin(h,B,F):i.prototype.set.call(u,this.subarray(B,F),h),I},l.prototype.fill=function(u,h,B,F){if(typeof u=="string"){if(typeof h=="string"?(F=h,h=0,B=this.length):typeof B=="string"&&(F=B,B=this.length),F!==void 0&&typeof F!="string")throw new TypeError("encoding must be a string");if(typeof F=="string"&&!l.isEncoding(F))throw new TypeError("Unknown encoding: "+F);if(u.length===1){const L=u.charCodeAt(0);(F==="utf8"&&L<128||F==="latin1")&&(u=L)}}else typeof u=="number"?u=u&255:typeof u=="boolean"&&(u=Number(u));if(h<0||this.length<h||this.length<B)throw new RangeError("Out of range index");if(B<=h)return this;h=h>>>0,B=B===void 0?this.length:B>>>0,u||(u=0);let I;if(typeof u=="number")for(I=h;I<B;++I)this[I]=u;else{const L=l.isBuffer(u)?u:l.from(u,F),de=L.length;if(de===0)throw new TypeError('The value "'+u+'" is invalid for argument "value"');for(I=0;I<B-h;++I)this[I+h]=L[I%de]}return this};const Ke={};function He(g,u,h){Ke[g]=class extends h{constructor(){super(),Object.defineProperty(this,"message",{value:u.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${g}]`,this.stack,delete this.name}get code(){return g}set code(F){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:F,writable:!0})}toString(){return`${this.name} [${g}]: ${this.message}`}}}He("ERR_BUFFER_OUT_OF_BOUNDS",function(g){return g?`${g} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),He("ERR_INVALID_ARG_TYPE",function(g,u){return`The "${g}" argument must be of type number. Received type ${typeof u}`},TypeError),He("ERR_OUT_OF_RANGE",function(g,u,h){let B=`The value of "${g}" is out of range.`,F=h;return Number.isInteger(h)&&Math.abs(h)>2**32?F=ot(String(h)):typeof h=="bigint"&&(F=String(h),(h>BigInt(2)**BigInt(32)||h<-(BigInt(2)**BigInt(32)))&&(F=ot(F)),F+="n"),B+=` It must be ${u}. Received ${F}`,B},RangeError);function ot(g){let u="",h=g.length;const B=g[0]==="-"?1:0;for(;h>=B+4;h-=3)u=`_${g.slice(h-3,h)}${u}`;return`${g.slice(0,h)}${u}`}function xr(g,u,h){rn(u,"offset"),(g[u]===void 0||g[u+h]===void 0)&&ms(u,g.length-(h+1))}function hs(g,u,h,B,F,I){if(g>h||g<u){const L=typeof u=="bigint"?"n":"";let de;throw u===0||u===BigInt(0)?de=`>= 0${L} and < 2${L} ** ${(I+1)*8}${L}`:de=`>= -(2${L} ** ${(I+1)*8-1}${L}) and < 2 ** ${(I+1)*8-1}${L}`,new Ke.ERR_OUT_OF_RANGE("value",de,g)}xr(B,F,I)}function rn(g,u){if(typeof g!="number")throw new Ke.ERR_INVALID_ARG_TYPE(u,"number",g)}function ms(g,u,h){throw Math.floor(g)!==g?(rn(g,h),new Ke.ERR_OUT_OF_RANGE("offset","an integer",g)):u<0?new Ke.ERR_BUFFER_OUT_OF_BOUNDS:new Ke.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${u}`,g)}const _m=/[^+/0-9A-Za-z-_]/g;function jm(g){if(g=g.split("=")[0],g=g.trim().replace(_m,""),g.length<2)return"";for(;g.length%4!==0;)g=g+"=";return g}function io(g,u){u=u||1/0;let h;const B=g.length;let F=null;const I=[];for(let L=0;L<B;++L){if(h=g.charCodeAt(L),h>55295&&h<57344){if(!F){if(h>56319){(u-=3)>-1&&I.push(239,191,189);continue}else if(L+1===B){(u-=3)>-1&&I.push(239,191,189);continue}F=h;continue}if(h<56320){(u-=3)>-1&&I.push(239,191,189),F=h;continue}h=(F-55296<<10|h-56320)+65536}else F&&(u-=3)>-1&&I.push(239,191,189);if(F=null,h<128){if((u-=1)<0)break;I.push(h)}else if(h<2048){if((u-=2)<0)break;I.push(h>>6|192,h&63|128)}else if(h<65536){if((u-=3)<0)break;I.push(h>>12|224,h>>6&63|128,h&63|128)}else if(h<1114112){if((u-=4)<0)break;I.push(h>>18|240,h>>12&63|128,h>>6&63|128,h&63|128)}else throw new Error("Invalid code point")}return I}function qm(g){const u=[];for(let h=0;h<g.length;++h)u.push(g.charCodeAt(h)&255);return u}function Km(g,u){let h,B,F;const I=[];for(let L=0;L<g.length&&!((u-=2)<0);++L)h=g.charCodeAt(L),B=h>>8,F=h%256,I.push(F),I.push(B);return I}function Yl(g){return e.toByteArray(jm(g))}function hi(g,u,h,B){let F;for(F=0;F<B&&!(F+h>=u.length||F>=g.length);++F)u[F+h]=g[F];return F}function Gt(g,u){return g instanceof u||g!=null&&g.constructor!=null&&g.constructor.name!=null&&g.constructor.name===u.name}function ao(g){return g!==g}const Qm=(function(){const g="0123456789abcdef",u=new Array(256);for(let h=0;h<16;++h){const B=h*16;for(let F=0;F<16;++F)u[B+F]=g[h]+g[F]}return u})();function xn(g){return typeof BigInt>"u"?$m:g}function $m(){throw new Error("BigInt not supported")}})(pl);const Fh=pl.Buffer,V8=pl.Buffer;function re(t,e,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}P.inherits(re,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:P.toJSONObject(this.config),code:this.code,status:this.status}}});const Sh=re.prototype,Th={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{Th[t]={value:t}});Object.defineProperties(re,Th);Object.defineProperty(Sh,"isAxiosError",{value:!0});re.from=(t,e,n,r,s,i)=>{const a=Object.create(Sh);return P.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),re.call(a,t.message,e,n,r,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};const _8=null;function oc(t){return P.isPlainObject(t)||P.isArray(t)}function vh(t){return P.endsWith(t,"[]")?t.slice(0,-2):t}function Kd(t,e,n){return t?t.concat(e).map(function(s,i){return s=vh(s),!n&&i?"["+s+"]":s}).join(n?".":""):e}function j8(t){return P.isArray(t)&&!t.some(oc)}const q8=P.toFlatObject(P,{},null,function(e){return/^is[A-Z]/.test(e)});function Ra(t,e,n){if(!P.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=P.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(E,y){return!P.isUndefined(y[E])});const r=n.metaTokens,s=n.visitor||l,i=n.dots,a=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&P.isSpecCompliantForm(e);if(!P.isFunction(s))throw new TypeError("visitor must be a function");function d(w){if(w===null)return"";if(P.isDate(w))return w.toISOString();if(P.isBoolean(w))return w.toString();if(!c&&P.isBlob(w))throw new re("Blob is not supported. Use a Buffer instead.");return P.isArrayBuffer(w)||P.isTypedArray(w)?c&&typeof Blob=="function"?new Blob([w]):Fh.from(w):w}function l(w,E,y){let p=w;if(w&&!y&&typeof w=="object"){if(P.endsWith(E,"{}"))E=r?E:E.slice(0,-2),w=JSON.stringify(w);else if(P.isArray(w)&&j8(w)||(P.isFileList(w)||P.endsWith(E,"[]"))&&(p=P.toArray(w)))return E=vh(E),p.forEach(function(A,S){!(P.isUndefined(A)||A===null)&&e.append(a===!0?Kd([E],S,i):a===null?E:E+"[]",d(A))}),!1}return oc(w)?!0:(e.append(Kd(y,E,i),d(w)),!1)}const f=[],m=Object.assign(q8,{defaultVisitor:l,convertValue:d,isVisitable:oc});function b(w,E){if(!P.isUndefined(w)){if(f.indexOf(w)!==-1)throw Error("Circular reference detected in "+E.join("."));f.push(w),P.forEach(w,function(p,x){(!(P.isUndefined(p)||p===null)&&s.call(e,p,P.isString(x)?x.trim():x,E,m))===!0&&b(p,E?E.concat(x):[x])}),f.pop()}}if(!P.isObject(t))throw new TypeError("data must be an object");return b(t),e}function Qd(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function yl(t,e){this._pairs=[],t&&Ra(t,this,e)}const Ih=yl.prototype;Ih.append=function(e,n){this._pairs.push([e,n])};Ih.toString=function(e){const n=e?function(r){return e.call(this,r,Qd)}:Qd;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function K8(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function kh(t,e,n){if(!e)return t;const r=n&&n.encode||K8;P.isFunction(n)&&(n={serialize:n});const s=n&&n.serialize;let i;if(s?i=s(e,n):i=P.isURLSearchParams(e)?e.toString():new yl(e,n).toString(r),i){const a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}class $d{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){P.forEach(this.handlers,function(r){r!==null&&e(r)})}}const Uh={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Q8=typeof URLSearchParams<"u"?URLSearchParams:yl,$8=typeof FormData<"u"?FormData:null,J8=typeof Blob<"u"?Blob:null,X8={isBrowser:!0,classes:{URLSearchParams:Q8,FormData:$8,Blob:J8},protocols:["http","https","file","blob","url","data"]},Al=typeof window<"u"&&typeof document<"u",cc=typeof navigator=="object"&&navigator||void 0,Y8=Al&&(!cc||["ReactNative","NativeScript","NS"].indexOf(cc.product)<0),Z8=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",eg=Al&&window.location.href||"http://localhost",tg=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Al,hasStandardBrowserEnv:Y8,hasStandardBrowserWebWorkerEnv:Z8,navigator:cc,origin:eg},Symbol.toStringTag,{value:"Module"})),nt={...tg,...X8};function ng(t,e){return Ra(t,new nt.classes.URLSearchParams,{visitor:function(n,r,s,i){return nt.isNode&&P.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...e})}function rg(t){return P.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function sg(t){const e={},n=Object.keys(t);let r;const s=n.length;let i;for(r=0;r<s;r++)i=n[r],e[i]=t[i];return e}function Ph(t){function e(n,r,s,i){let a=n[i++];if(a==="__proto__")return!0;const o=Number.isFinite(+a),c=i>=n.length;return a=!a&&P.isArray(s)?s.length:a,c?(P.hasOwnProp(s,a)?s[a]=[s[a],r]:s[a]=r,!o):((!s[a]||!P.isObject(s[a]))&&(s[a]=[]),e(n,r,s[a],i)&&P.isArray(s[a])&&(s[a]=sg(s[a])),!o)}if(P.isFormData(t)&&P.isFunction(t.entries)){const n={};return P.forEachEntry(t,(r,s)=>{e(rg(r),s,n,0)}),n}return null}function ig(t,e,n){if(P.isString(t))try{return(e||JSON.parse)(t),P.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(t)}const si={transitional:Uh,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,i=P.isObject(e);if(i&&P.isHTMLForm(e)&&(e=new FormData(e)),P.isFormData(e))return s?JSON.stringify(Ph(e)):e;if(P.isArrayBuffer(e)||P.isBuffer(e)||P.isStream(e)||P.isFile(e)||P.isBlob(e)||P.isReadableStream(e))return e;if(P.isArrayBufferView(e))return e.buffer;if(P.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return ng(e,this.formSerializer).toString();if((o=P.isFileList(e))||r.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return Ra(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(n.setContentType("application/json",!1),ig(e)):e}],transformResponse:[function(e){const n=this.transitional||si.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(P.isResponse(e)||P.isReadableStream(e))return e;if(e&&P.isString(e)&&(r&&!this.responseType||s)){const a=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?re.from(o,re.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:nt.classes.FormData,Blob:nt.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};P.forEach(["delete","get","head","post","put","patch"],t=>{si.headers[t]={}});const ag=P.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),og=t=>{const e={};let n,r,s;return t&&t.split(`
|
|
7
|
-
`).forEach(function(a){s=a.indexOf(":"),n=a.substring(0,s).trim().toLowerCase(),r=a.substring(s+1).trim(),!(!n||e[n]&&ag[n])&&(n==="set-cookie"?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e},Jd=Symbol("internals");function gs(t){return t&&String(t).trim().toLowerCase()}function _i(t){return t===!1||t==null?t:P.isArray(t)?t.map(_i):String(t)}function cg(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(t);)e[r[1]]=r[2];return e}const lg=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function go(t,e,n,r,s){if(P.isFunction(r))return r.call(this,e,n);if(s&&(e=n),!!P.isString(e)){if(P.isString(r))return e.indexOf(r)!==-1;if(P.isRegExp(r))return r.test(e)}}function dg(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,r)=>n.toUpperCase()+r)}function ug(t,e){const n=P.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(s,i,a){return this[r].call(this,e,s,i,a)},configurable:!0})})}let gt=class{constructor(e){e&&this.set(e)}set(e,n,r){const s=this;function i(o,c,d){const l=gs(c);if(!l)throw new Error("header name must be a non-empty string");const f=P.findKey(s,l);(!f||s[f]===void 0||d===!0||d===void 0&&s[f]!==!1)&&(s[f||c]=_i(o))}const a=(o,c)=>P.forEach(o,(d,l)=>i(d,l,c));if(P.isPlainObject(e)||e instanceof this.constructor)a(e,n);else if(P.isString(e)&&(e=e.trim())&&!lg(e))a(og(e),n);else if(P.isObject(e)&&P.isIterable(e)){let o={},c,d;for(const l of e){if(!P.isArray(l))throw TypeError("Object iterator must return a key-value pair");o[d=l[0]]=(c=o[d])?P.isArray(c)?[...c,l[1]]:[c,l[1]]:l[1]}a(o,n)}else e!=null&&i(n,e,r);return this}get(e,n){if(e=gs(e),e){const r=P.findKey(this,e);if(r){const s=this[r];if(!n)return s;if(n===!0)return cg(s);if(P.isFunction(n))return n.call(this,s,r);if(P.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=gs(e),e){const r=P.findKey(this,e);return!!(r&&this[r]!==void 0&&(!n||go(this,this[r],r,n)))}return!1}delete(e,n){const r=this;let s=!1;function i(a){if(a=gs(a),a){const o=P.findKey(r,a);o&&(!n||go(r,r[o],o,n))&&(delete r[o],s=!0)}}return P.isArray(e)?e.forEach(i):i(e),s}clear(e){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const i=n[r];(!e||go(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){const n=this,r={};return P.forEach(this,(s,i)=>{const a=P.findKey(r,i);if(a){n[a]=_i(s),delete n[i];return}const o=e?dg(i):String(i).trim();o!==i&&delete n[i],n[o]=_i(s),r[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return P.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=e&&P.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(`
|
|
8
|
-
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const r=new this(e);return n.forEach(s=>r.set(s)),r}static accessor(e){const r=(this[Jd]=this[Jd]={accessors:{}}).accessors,s=this.prototype;function i(a){const o=gs(a);r[o]||(ug(s,a),r[o]=!0)}return P.isArray(e)?e.forEach(i):i(e),this}};gt.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);P.reduceDescriptors(gt.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(r){this[n]=r}}});P.freezeMethods(gt);function yo(t,e){const n=this||si,r=e||n,s=gt.from(r.headers);let i=r.data;return P.forEach(t,function(o){i=o.call(n,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function Nh(t){return!!(t&&t.__CANCEL__)}function fs(t,e,n){re.call(this,t??"canceled",re.ERR_CANCELED,e,n),this.name="CanceledError"}P.inherits(fs,re,{__CANCEL__:!0});function Rh(t,e,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?t(n):e(new re("Request failed with status code "+n.status,[re.ERR_BAD_REQUEST,re.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function fg(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function hg(t,e){t=t||10;const n=new Array(t),r=new Array(t);let s=0,i=0,a;return e=e!==void 0?e:1e3,function(c){const d=Date.now(),l=r[i];a||(a=d),n[s]=c,r[s]=d;let f=i,m=0;for(;f!==s;)m+=n[f++],f=f%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),d-a<e)return;const b=l&&d-l;return b?Math.round(m*1e3/b):void 0}}function mg(t,e){let n=0,r=1e3/e,s,i;const a=(d,l=Date.now())=>{n=l,s=null,i&&(clearTimeout(i),i=null),t(...d)};return[(...d)=>{const l=Date.now(),f=l-n;f>=r?a(d,l):(s=d,i||(i=setTimeout(()=>{i=null,a(s)},r-f)))},()=>s&&a(s)]}const la=(t,e,n=3)=>{let r=0;const s=hg(50,250);return mg(i=>{const a=i.loaded,o=i.lengthComputable?i.total:void 0,c=a-r,d=s(c),l=a<=o;r=a;const f={loaded:a,total:o,progress:o?a/o:void 0,bytes:c,rate:d||void 0,estimated:d&&o&&l?(o-a)/d:void 0,event:i,lengthComputable:o!=null,[e?"download":"upload"]:!0};t(f)},n)},Xd=(t,e)=>{const n=t!=null;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},Yd=t=>(...e)=>P.asap(()=>t(...e)),bg=nt.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,nt.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(nt.origin),nt.navigator&&/(msie|trident)/i.test(nt.navigator.userAgent)):()=>!0,pg=nt.hasStandardBrowserEnv?{write(t,e,n,r,s,i){const a=[t+"="+encodeURIComponent(e)];P.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),P.isString(r)&&a.push("path="+r),P.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function gg(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function yg(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function Oh(t,e,n){let r=!gg(e);return t&&(r||n==!1)?yg(t,e):e}const Zd=t=>t instanceof gt?{...t}:t;function br(t,e){e=e||{};const n={};function r(d,l,f,m){return P.isPlainObject(d)&&P.isPlainObject(l)?P.merge.call({caseless:m},d,l):P.isPlainObject(l)?P.merge({},l):P.isArray(l)?l.slice():l}function s(d,l,f,m){if(P.isUndefined(l)){if(!P.isUndefined(d))return r(void 0,d,f,m)}else return r(d,l,f,m)}function i(d,l){if(!P.isUndefined(l))return r(void 0,l)}function a(d,l){if(P.isUndefined(l)){if(!P.isUndefined(d))return r(void 0,d)}else return r(void 0,l)}function o(d,l,f){if(f in e)return r(d,l);if(f in t)return r(void 0,d)}const c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(d,l,f)=>s(Zd(d),Zd(l),f,!0)};return P.forEach(Object.keys({...t,...e}),function(l){const f=c[l]||s,m=f(t[l],e[l],l);P.isUndefined(m)&&f!==o||(n[l]=m)}),n}const Mh=t=>{const e=br({},t);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:i,headers:a,auth:o}=e;e.headers=a=gt.from(a),e.url=kh(Oh(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),o&&a.set("Authorization","Basic "+btoa((o.username||"")+":"+(o.password?unescape(encodeURIComponent(o.password)):"")));let c;if(P.isFormData(n)){if(nt.hasStandardBrowserEnv||nt.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if((c=a.getContentType())!==!1){const[d,...l]=c?c.split(";").map(f=>f.trim()).filter(Boolean):[];a.setContentType([d||"multipart/form-data",...l].join("; "))}}if(nt.hasStandardBrowserEnv&&(r&&P.isFunction(r)&&(r=r(e)),r||r!==!1&&bg(e.url))){const d=s&&i&&pg.read(i);d&&a.set(s,d)}return e},Ag=typeof XMLHttpRequest<"u",Eg=Ag&&function(t){return new Promise(function(n,r){const s=Mh(t);let i=s.data;const a=gt.from(s.headers).normalize();let{responseType:o,onUploadProgress:c,onDownloadProgress:d}=s,l,f,m,b,w;function E(){b&&b(),w&&w(),s.cancelToken&&s.cancelToken.unsubscribe(l),s.signal&&s.signal.removeEventListener("abort",l)}let y=new XMLHttpRequest;y.open(s.method.toUpperCase(),s.url,!0),y.timeout=s.timeout;function p(){if(!y)return;const A=gt.from("getAllResponseHeaders"in y&&y.getAllResponseHeaders()),T={data:!o||o==="text"||o==="json"?y.responseText:y.response,status:y.status,statusText:y.statusText,headers:A,config:t,request:y};Rh(function(R){n(R),E()},function(R){r(R),E()},T),y=null}"onloadend"in y?y.onloadend=p:y.onreadystatechange=function(){!y||y.readyState!==4||y.status===0&&!(y.responseURL&&y.responseURL.indexOf("file:")===0)||setTimeout(p)},y.onabort=function(){y&&(r(new re("Request aborted",re.ECONNABORTED,t,y)),y=null)},y.onerror=function(){r(new re("Network Error",re.ERR_NETWORK,t,y)),y=null},y.ontimeout=function(){let S=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const T=s.transitional||Uh;s.timeoutErrorMessage&&(S=s.timeoutErrorMessage),r(new re(S,T.clarifyTimeoutError?re.ETIMEDOUT:re.ECONNABORTED,t,y)),y=null},i===void 0&&a.setContentType(null),"setRequestHeader"in y&&P.forEach(a.toJSON(),function(S,T){y.setRequestHeader(T,S)}),P.isUndefined(s.withCredentials)||(y.withCredentials=!!s.withCredentials),o&&o!=="json"&&(y.responseType=s.responseType),d&&([m,w]=la(d,!0),y.addEventListener("progress",m)),c&&y.upload&&([f,b]=la(c),y.upload.addEventListener("progress",f),y.upload.addEventListener("loadend",b)),(s.cancelToken||s.signal)&&(l=A=>{y&&(r(!A||A.type?new fs(null,t,y):A),y.abort(),y=null)},s.cancelToken&&s.cancelToken.subscribe(l),s.signal&&(s.signal.aborted?l():s.signal.addEventListener("abort",l)));const x=fg(s.url);if(x&&nt.protocols.indexOf(x)===-1){r(new re("Unsupported protocol "+x+":",re.ERR_BAD_REQUEST,t));return}y.send(i||null)})},wg=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let r=new AbortController,s;const i=function(d){if(!s){s=!0,o();const l=d instanceof Error?d:this.reason;r.abort(l instanceof re?l:new fs(l instanceof Error?l.message:l))}};let a=e&&setTimeout(()=>{a=null,i(new re(`timeout ${e} of ms exceeded`,re.ETIMEDOUT))},e);const o=()=>{t&&(a&&clearTimeout(a),a=null,t.forEach(d=>{d.unsubscribe?d.unsubscribe(i):d.removeEventListener("abort",i)}),t=null)};t.forEach(d=>d.addEventListener("abort",i));const{signal:c}=r;return c.unsubscribe=()=>P.asap(o),c}},Bg=function*(t,e){let n=t.byteLength;if(n<e){yield t;return}let r=0,s;for(;r<n;)s=r+e,yield t.slice(r,s),r=s},Cg=async function*(t,e){for await(const n of xg(t))yield*Bg(n,e)},xg=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}const e=t.getReader();try{for(;;){const{done:n,value:r}=await e.read();if(n)break;yield r}}finally{await e.cancel()}},e0=(t,e,n,r)=>{const s=Cg(t,e);let i=0,a,o=c=>{a||(a=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:d,value:l}=await s.next();if(d){o(),c.close();return}let f=l.byteLength;if(n){let m=i+=f;n(m)}c.enqueue(new Uint8Array(l))}catch(d){throw o(d),d}},cancel(c){return o(c),s.return()}},{highWaterMark:2})},Oa=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Lh=Oa&&typeof ReadableStream=="function",Dg=Oa&&(typeof TextEncoder=="function"?(t=>e=>t.encode(e))(new TextEncoder):async t=>new Uint8Array(await new Response(t).arrayBuffer())),Wh=(t,...e)=>{try{return!!t(...e)}catch{return!1}},Fg=Lh&&Wh(()=>{let t=!1;const e=new Request(nt.origin,{body:new ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),t0=64*1024,lc=Lh&&Wh(()=>P.isReadableStream(new Response("").body)),da={stream:lc&&(t=>t.body)};Oa&&(t=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!da[e]&&(da[e]=P.isFunction(t[e])?n=>n[e]():(n,r)=>{throw new re(`Response type '${e}' is not supported`,re.ERR_NOT_SUPPORT,r)})})})(new Response);const Sg=async t=>{if(t==null)return 0;if(P.isBlob(t))return t.size;if(P.isSpecCompliantForm(t))return(await new Request(nt.origin,{method:"POST",body:t}).arrayBuffer()).byteLength;if(P.isArrayBufferView(t)||P.isArrayBuffer(t))return t.byteLength;if(P.isURLSearchParams(t)&&(t=t+""),P.isString(t))return(await Dg(t)).byteLength},Tg=async(t,e)=>{const n=P.toFiniteNumber(t.getContentLength());return n??Sg(e)},vg=Oa&&(async t=>{let{url:e,method:n,data:r,signal:s,cancelToken:i,timeout:a,onDownloadProgress:o,onUploadProgress:c,responseType:d,headers:l,withCredentials:f="same-origin",fetchOptions:m}=Mh(t);d=d?(d+"").toLowerCase():"text";let b=wg([s,i&&i.toAbortSignal()],a),w;const E=b&&b.unsubscribe&&(()=>{b.unsubscribe()});let y;try{if(c&&Fg&&n!=="get"&&n!=="head"&&(y=await Tg(l,r))!==0){let T=new Request(e,{method:"POST",body:r,duplex:"half"}),U;if(P.isFormData(r)&&(U=T.headers.get("content-type"))&&l.setContentType(U),T.body){const[R,v]=Xd(y,la(Yd(c)));r=e0(T.body,t0,R,v)}}P.isString(f)||(f=f?"include":"omit");const p="credentials"in Request.prototype;w=new Request(e,{...m,signal:b,method:n.toUpperCase(),headers:l.normalize().toJSON(),body:r,duplex:"half",credentials:p?f:void 0});let x=await fetch(w,m);const A=lc&&(d==="stream"||d==="response");if(lc&&(o||A&&E)){const T={};["status","statusText","headers"].forEach(M=>{T[M]=x[M]});const U=P.toFiniteNumber(x.headers.get("content-length")),[R,v]=o&&Xd(U,la(Yd(o),!0))||[];x=new Response(e0(x.body,t0,R,()=>{v&&v(),E&&E()}),T)}d=d||"text";let S=await da[P.findKey(da,d)||"text"](x,t);return!A&&E&&E(),await new Promise((T,U)=>{Rh(T,U,{data:S,headers:gt.from(x.headers),status:x.status,statusText:x.statusText,config:t,request:w})})}catch(p){throw E&&E(),p&&p.name==="TypeError"&&/Load failed|fetch/i.test(p.message)?Object.assign(new re("Network Error",re.ERR_NETWORK,t,w),{cause:p.cause||p}):re.from(p,p&&p.code,t,w)}}),dc={http:_8,xhr:Eg,fetch:vg};P.forEach(dc,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const n0=t=>`- ${t}`,Ig=t=>P.isFunction(t)||t===null||t===!1,Hh={getAdapter:t=>{t=P.isArray(t)?t:[t];const{length:e}=t;let n,r;const s={};for(let i=0;i<e;i++){n=t[i];let a;if(r=n,!Ig(n)&&(r=dc[(a=String(n)).toLowerCase()],r===void 0))throw new re(`Unknown adapter '${a}'`);if(r)break;s[a||"#"+i]=r}if(!r){const i=Object.entries(s).map(([o,c])=>`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build"));let a=e?i.length>1?`since :
|
|
9
|
-
`+i.map(n0).join(`
|
|
10
|
-
`):" "+n0(i[0]):"as no adapter specified";throw new re("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return r},adapters:dc};function Ao(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new fs(null,t)}function r0(t){return Ao(t),t.headers=gt.from(t.headers),t.data=yo.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Hh.getAdapter(t.adapter||si.adapter)(t).then(function(r){return Ao(t),r.data=yo.call(t,t.transformResponse,r),r.headers=gt.from(r.headers),r},function(r){return Nh(r)||(Ao(t),r&&r.response&&(r.response.data=yo.call(t,t.transformResponse,r.response),r.response.headers=gt.from(r.response.headers))),Promise.reject(r)})}const zh="1.11.0",Ma={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Ma[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}});const s0={};Ma.transitional=function(e,n,r){function s(i,a){return"[Axios v"+zh+"] Transitional option '"+i+"'"+a+(r?". "+r:"")}return(i,a,o)=>{if(e===!1)throw new re(s(a," has been removed"+(n?" in "+n:"")),re.ERR_DEPRECATED);return n&&!s0[a]&&(s0[a]=!0,console.warn(s(a," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(i,a,o):!0}};Ma.spelling=function(e){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${e}`),!0)};function kg(t,e,n){if(typeof t!="object")throw new re("options must be an object",re.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let s=r.length;for(;s-- >0;){const i=r[s],a=e[i];if(a){const o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new re("option "+i+" must be "+c,re.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new re("Unknown option "+i,re.ERR_BAD_OPTION)}}const ji={assertOptions:kg,validators:Ma},_t=ji.validators;let ar=class{constructor(e){this.defaults=e||{},this.interceptors={request:new $d,response:new $d}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?i&&!String(r.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(r.stack+=`
|
|
11
|
-
`+i):r.stack=i}catch{}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=br(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:i}=n;r!==void 0&&ji.assertOptions(r,{silentJSONParsing:_t.transitional(_t.boolean),forcedJSONParsing:_t.transitional(_t.boolean),clarifyTimeoutError:_t.transitional(_t.boolean)},!1),s!=null&&(P.isFunction(s)?n.paramsSerializer={serialize:s}:ji.assertOptions(s,{encode:_t.function,serialize:_t.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ji.assertOptions(n,{baseUrl:_t.spelling("baseURL"),withXsrfToken:_t.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=i&&P.merge(i.common,i[n.method]);i&&P.forEach(["delete","get","head","post","put","patch","common"],w=>{delete i[w]}),n.headers=gt.concat(a,i);const o=[];let c=!0;this.interceptors.request.forEach(function(E){typeof E.runWhen=="function"&&E.runWhen(n)===!1||(c=c&&E.synchronous,o.unshift(E.fulfilled,E.rejected))});const d=[];this.interceptors.response.forEach(function(E){d.push(E.fulfilled,E.rejected)});let l,f=0,m;if(!c){const w=[r0.bind(this),void 0];for(w.unshift(...o),w.push(...d),m=w.length,l=Promise.resolve(n);f<m;)l=l.then(w[f++],w[f++]);return l}m=o.length;let b=n;for(f=0;f<m;){const w=o[f++],E=o[f++];try{b=w(b)}catch(y){E.call(this,y);break}}try{l=r0.call(this,b)}catch(w){return Promise.reject(w)}for(f=0,m=d.length;f<m;)l=l.then(d[f++],d[f++]);return l}getUri(e){e=br(this.defaults,e);const n=Oh(e.baseURL,e.url,e.allowAbsoluteUrls);return kh(n,e.params,e.paramsSerializer)}};P.forEach(["delete","get","head","options"],function(e){ar.prototype[e]=function(n,r){return this.request(br(r||{},{method:e,url:n,data:(r||{}).data}))}});P.forEach(["post","put","patch"],function(e){function n(r){return function(i,a,o){return this.request(br(o||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}ar.prototype[e]=n(),ar.prototype[e+"Form"]=n(!0)});let Ug=class Gh{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});const r=this;this.promise.then(s=>{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](s);r._listeners=null}),this.promise.then=s=>{let i;const a=new Promise(o=>{r.subscribe(o),i=o}).then(s);return a.cancel=function(){r.unsubscribe(i)},a},e(function(i,a,o){r.reason||(r.reason=new fs(i,a,o),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=r=>{e.abort(r)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new Gh(function(s){e=s}),cancel:e}}};function Pg(t){return function(n){return t.apply(null,n)}}function Ng(t){return P.isObject(t)&&t.isAxiosError===!0}const uc={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(uc).forEach(([t,e])=>{uc[e]=t});function Vh(t){const e=new ar(t),n=gh(ar.prototype.request,e);return P.extend(n,ar.prototype,e,{allOwnKeys:!0}),P.extend(n,e,null,{allOwnKeys:!0}),n.create=function(s){return Vh(br(t,s))},n}const ue=Vh(si);ue.Axios=ar;ue.CanceledError=fs;ue.CancelToken=Ug;ue.isCancel=Nh;ue.VERSION=zh;ue.toFormData=Ra;ue.AxiosError=re;ue.Cancel=ue.CanceledError;ue.all=function(e){return Promise.all(e)};ue.spread=Pg;ue.isAxiosError=Ng;ue.mergeConfig=br;ue.AxiosHeaders=gt;ue.formToJSON=t=>Ph(P.isHTMLForm(t)?new FormData(t):t);ue.getAdapter=Hh.getAdapter;ue.HttpStatusCode=uc;ue.default=ue;const{Axios:bA,AxiosError:Rg,CanceledError:pA,isCancel:gA,CancelToken:yA,VERSION:AA,all:EA,Cancel:wA,isAxiosError:Og,spread:BA,toFormData:CA,AxiosHeaders:xA,HttpStatusCode:DA,formToJSON:FA,getAdapter:SA,mergeConfig:TA}=ue,Jt=60*1e3,_h={Mainnet:{api:"https://api.wormholescan.io",circleAPI:pd("Mainnet"),executorAPI:Bd("Mainnet"),chains:mo("Mainnet")},Testnet:{api:"https://api.testnet.wormholescan.io",circleAPI:pd("Testnet"),executorAPI:Bd("Testnet"),chains:mo("Testnet")},Devnet:{api:"http://guardian:7071",circleAPI:"",executorAPI:"",chains:mo("Devnet")}};function El(t,e){return Object.fromEntries(Object.entries(_h[t].chains).filter(([n,r])=>r.platform==e))}function Mg(t,e){let n=_h[t];return e?wl(n,e):n}function Lg(t,e,n){const r=El(t,e);return n?wl(r,n):r}function wl(t,e){t||(t={});for(const[n,r]of Object.entries(e))typeof r=="object"&&!Array.isArray(r)?t[n]=wl(t[n],r):t[n]=r;return t}const Wg=typeof vs<"u";Wg&&vs.env.NETWORK;async function wr(t,e,n=Jt,r){const s=Math.floor(n/e);let i=0;return new Promise((a,o)=>{t().then(c=>{if(c!==null){a(c);return}let d=setInterval(async()=>{if(i>=s){clearInterval(d),a(null);return}const l=await t();l!==null?(clearInterval(d),a(l)):r&&console.log(`Retrying ${r}, attempt ${i}/${s} `),i++},e)})})}const Hg=2e3;var i0;(function(t){t.complete="complete",t.pending_confirmations="pending_confirmations"})(i0||(i0={}));const zg=t=>({message:t.attestation,status:t.status});async function Gg(t,e){const n=`${t}/${e}`;try{const r=await ue.get(n),s=zg(r?.data);return s.message==="PENDING"?null:s.message}catch(r){if(!r||typeof r=="object"&&(ue.isAxiosError(r)&&r.response?.status===404||"status"in r&&r.status===404))return null;throw r}}async function Vg(t,e,n){return wr(()=>Gg(t,e),Hg,n,"Circle:GetAttestation")}async function _g(){try{return await ue.get("https://iris-api.circle.com/ping",{timeout:5e3}),null}catch(t){return ue.isAxiosError(t)&&(t.response?.status===403||t.response?.status===451)?{success:!1,error:new Error("You are attempting a transfer from a location that is restricted by Circle.")}:null}}async function Ms(t,e,n){if(!Y6(n))throw new Error("Invalid signer, not SignAndSendSigner or SignOnlySigner");return(await jg(e,async i=>ml(n)?n.signAndSend(i):t.sendWait(await n.sign(i)))).map(i=>({chain:t.chain,txid:i}))}async function jg(t,e){const n=[];let r=[];for await(const s of t)s.parallelizable?r.push(s):(r.length>0&&(n.push(...await e(r)),r=[]),n.push(...await e([s])));return r.length>0&&n.push(...await e(r)),n}class qg extends Error{min;constructor(e){super(`Minimum transfer amount is ${wa(e)}`),this.min=e}minAmount(){return this.min}}class Kg extends Error{internalError;constructor(e){super("Unable to fetch a quote"),this.internalError=e}}class Bl extends Error{relayExplorer;constructor(e,n){super(e),this.relayExplorer=n}}exports.TransferState=void 0;(function(t){t[t.Failed=-1]="Failed",t[t.Created=0]="Created",t[t.SourceInitiated=1]="SourceInitiated",t[t.SourceFinalized=2]="SourceFinalized",t[t.InReview=3]="InReview",t[t.Attested=4]="Attested",t[t.Refunded=5]="Refunded",t[t.DestinationInitiated=6]="DestinationInitiated",t[t.DestinationQueued=7]="DestinationQueued",t[t.DestinationFinalized=8]="DestinationFinalized"})(exports.TransferState||(exports.TransferState={}));function Cl(t){return t.state===exports.TransferState.SourceInitiated}function Ls(t){return t.state===exports.TransferState.SourceFinalized}function a0(t){return t.state===exports.TransferState.InReview}function Hr(t){return t.state===exports.TransferState.Attested}function Qg(t){return t.state===exports.TransferState.Refunded}function xl(t){return t.state===exports.TransferState.DestinationInitiated}function $g(t){return t.state===exports.TransferState.DestinationQueued}function Jg(t){return t.state===exports.TransferState.DestinationFinalized}function jh(t){return t.state<0}function o0(t){return jh(t)&&t.error instanceof Bl}class _e{wh;fromChain;toChain;_state;transfer;txids=[];attestations;constructor(e,n,r,s){this._state=exports.TransferState.Created,this.wh=e,this.transfer=n,this.fromChain=r??e.getChain(n.from.chain),this.toChain=s??e.getChain(n.to.chain)}getTransferState(){return this._state}static async from(e,n,r=Jt,s,i){if(sp(n))return n={...n,...await _e.destinationOverrides(e.getChain(n.from.chain),e.getChain(n.to.chain),n)},new _e(e,n,s,i);let a;if(ir(n))a=await _e.fromWormholeMessageId(e,n,r);else if(ih(n))a=await _e.fromTransaction(e,n,r,s);else if(aa(n))a=await _e.fromCircleMessage(e,n);else throw new Error("Invalid `from` parameter for CircleTransfer");return a.fromChain=s??e.getChain(a.transfer.from.chain),a.toChain=i??e.getChain(a.transfer.to.chain),await a.fetchAttestation(r),a}static async fromWormholeMessageId(e,n,r){const{chain:s,emitter:i}=n,a=await _e.getTransferVaa(e,n),o=a.payload.mintRecipient,c=Li(e.network,a.payload.targetDomain),{wormholeRelayer:d}=e.config.chains[c].contracts.cctp;let l=!1;if(d){const b=xt.chainAddress(s,d).address.toUniversalAddress();l=a.payloadName==="TransferWithRelay"&&o.equals(b)}const f={from:{chain:n.chain,address:a.payload.caller},to:{chain:c,address:o},amount:a.payload.token.amount,automatic:l},m=new _e(e,f);return m.attestations=[{id:{emitter:i,sequence:a.sequence,chain:s},attestation:a}],m._state=exports.TransferState.Attested,m}static async fromCircleMessage(e,n){const[r,s]=exports.CircleBridge.deserialize(Xe.decode(n)),{payload:i}=r,a=i.messageSender,o=i.mintRecipient,c=Li(e.network,r.sourceDomain),d=Li(e.network,r.destinationDomain),l={from:{chain:c,address:a},to:{chain:d,address:o},amount:i.amount,automatic:!1},f=new _e(e,l);return f.attestations=[{id:{hash:s},attestation:{message:r}}],f._state=exports.TransferState.SourceInitiated,f}static async fromTransaction(e,n,r,s){const{chain:i,txid:a}=n;s=s??e.getChain(i);let o=[];try{o=await s.parseTransaction(a)}catch(d){if(!(d.message.includes("no bridge messages found")||d.message.includes("not found")))throw d}let c;if(o.length>0)c=await _e.fromWormholeMessageId(e,o[0],r);else{const l=await(await s.getCircleBridge()).parseTransactionDetails(a),f={...l,automatic:!1};c=new _e(e,f),c.attestations=[{id:l.id,attestation:{message:l.message}}]}return c._state=exports.TransferState.SourceInitiated,c.txids=[n],c}async initiateTransfer(e){if(this._state!==exports.TransferState.Created)throw new Error("Invalid state transition in `start`");return this.txids=await _e.transfer(this.fromChain,this.transfer,e),this._state=exports.TransferState.SourceInitiated,this.txids.map(({txid:n})=>n)}async _fetchWormholeAttestation(e){let n=this.attestations??[];if(!n||n.length==0)throw new Error("No VAA details available");for(const r in n)n[r].attestation||(n[r].attestation=await _e.getTransferVaa(this.wh,n[r].id,e));return this.attestations=n,n.map(r=>r.id)}async _fetchCircleAttestation(e){let n=this.attestations??[];if(!n||n.length==0){if(this.txids.length===0)throw new Error("No circle attestations or transactions to fetch");const r=this.txids[this.txids?.length-1],a=await(await this.wh.getChain(this.transfer.from.chain).getCircleBridge()).parseTransactionDetails(r.txid);n=[{id:a.id,attestation:{message:a.message}}]}for(const r in n){const s=n[r];if(s.attestation?.attestation)continue;const i=await this.wh.getCircleAttestation(s.id.hash,e);if(i===null)throw new Error("No attestation available after timeout exhausted");n[r].attestation.attestation=i}return this.attestations=n,n.map(r=>r.id)}async fetchAttestation(e){if(this._state<exports.TransferState.SourceInitiated)throw new Error("Invalid state transition in `fetchAttestation`");const n=this.transfer.automatic?(await Promise.all([this._fetchWormholeAttestation(e),this._fetchCircleAttestation(e)])).flat():await this._fetchCircleAttestation(e);if(this._state=exports.TransferState.Attested,this.attestations&&this.attestations.length>0)for(const r of this.attestations){const{attestation:s}=r;if(!exports.CircleBridge.isCircleAttestation(s))continue;await _e.isTransferComplete(this.toChain,s)&&(this._state=exports.TransferState.DestinationFinalized)}return n}async completeTransfer(e){if(this._state<exports.TransferState.Attested)throw new Error("Invalid state transition in `finish`");if(this.transfer.automatic)throw this.attestations?this.attestations.find(m=>ir(m.id))?new Error("No method to redeem auto circle bridge tx (yet)"):new Error("No VAA found"):new Error("No VAA details available");if(!this.attestations)throw new Error("No Circle Attestations found");const n=this.attestations.filter(f=>aa(f.id));if(n.length>1)throw new Error(`Expected a single circle attestation, found ${n.length}`);const{id:r,attestation:s}=n[0];if(!s)throw new Error(`No Circle Attestation for ${r.hash}`);const{message:i,attestation:a}=s;if(!a)throw new Error(`No Circle Attestation for ${r.hash}`);const o=await this.toChain.getCircleBridge(),c=xt.parseAddress(e.chain(),e.address()),d=o.redeem(c,i,a),l=await Ms(this.toChain,d,e);return this.txids?.push(...l),l.map(({txid:f})=>f)}}(function(t){async function e(d,l,f){let m;return l.automatic?m=(await d.getAutomaticCircleBridge()).transfer(l.from.address,{chain:l.to.chain,address:l.to.address},l.amount,l.nativeGas):m=(await d.getCircleBridge()).transfer(l.from.address,{chain:l.to.chain,address:l.to.address},l.amount),await Ms(d,m,f)}t.transfer=e;async function*n(d,l,f=Jt,m,b){const w=Date.now(),E=(y,p)=>Math.max(p-(Date.now()-y),0);if(m=m??d.getChain(l.from),b=b??d.getChain(l.to),Cl(l)){if(l.originTxs.length===0)throw"Invalid state transition: no originating transactions";const y=l.originTxs[l.originTxs.length-1],p=await t.getTransferMessage(m,y.txid);l={...l,attestation:{id:p.id,attestation:{message:p.message}},state:exports.TransferState.SourceFinalized},yield l}if(Ls(l)){if(!l.attestation)throw"Invalid state transition: no attestation id";if(ir(l.attestation.id)){let y=l.attestation.attestation?l.attestation.attestation:void 0;y||(y=await t.getTransferVaa(d,l.attestation.id,E(w,f)),l={...l,attestation:{id:l.attestation.id,attestation:y},state:exports.TransferState.Attested},yield l)}else if(aa(l.attestation.id)){const y=await d.getCircleAttestation(l.attestation.id.hash,f),p=l.originTxs[l.originTxs.length-1],A=await(await m.getCircleBridge()).parseTransactionDetails(p.txid);y&&(l={...l,attestation:{id:l.attestation.id,attestation:{attestation:y,message:A.message}},state:exports.TransferState.Attested},yield l)}}if(Hr(l)||Ls(l)){if(!l.attestation)throw"Invalid state transition";if(ir(l.attestation.id)){const y=await d.getTransactionStatus(l.attestation.id,E(w,f));if(y&&y.globalTx?.destinationTx?.txHash){const{chainId:p,txHash:x}=y.globalTx.destinationTx;l={...l,destinationTxs:[{chain:os(p),txid:x}],state:exports.TransferState.DestinationInitiated},yield l}}}(Hr(l)||xl(l))&&(await t.isTransferComplete(b,l.attestation.attestation)&&(l={...l,state:exports.TransferState.DestinationFinalized,destinationTxs:[]}),yield l)}t.track=n;async function r(d,l,f){const m={...f};if(vt(l.chain)==="Solana"&&!m.automatic){const b=xt.parseAddress(l.chain,Ss.get(l.network,l.chain));m.to=await l.getTokenAccount(m.to.address,b)}return m}t.destinationOverrides=r;async function s(d,l,f){if(!Us(l.network,l.chain))throw new Error(`Invalid destination chain ${l.chain} for Circle transfer`);const m=Ss.get(l.network,l.chain);if(!m)throw"Invalid transfer, no USDC contract on destination";if(!Us(d.network,d.chain))throw new Error(`Invalid source chain ${d.chain} for Circle transfer`);const b=Ss.get(d.network,d.chain);if(!b)throw"Invalid transfer, no USDC contract on source";const w=xt.chainAddress(l.chain,m),E=xt.chainAddress(d.chain,b),y=(d.chain==="Polygon"?2e3*200:zc(d.chain))+qc,p=f.automatic?ks(0,5,0):ks(24,0,0);if(!f.automatic)return{sourceToken:{token:E,amount:f.amount},destinationToken:{token:w,amount:f.amount},eta:y,expires:p};let x=f.amount;const A=f.nativeGas?f.nativeGas:0n;x-=A;const T=await(await d.getAutomaticCircleBridge()).getRelayerFee(l.chain);x-=T;let U=0n;return f.nativeGas&&(U=await(await l.getAutomaticCircleBridge()).nativeTokenAmount(A)),{sourceToken:{token:E,amount:f.amount},destinationToken:{token:w,amount:x},relayFee:{token:E,amount:T},destinationNativeGas:U,eta:y,expires:p}}t.quoteTransfer=s;async function i(d,l){if(!exports.CircleBridge.isCircleAttestation(l))throw new Error("Must check for completion with circle message");return await(await d.getCircleBridge()).isTransferCompleted(l.message)}t.isTransferComplete=i;async function a(d,l,f){const m=await d.getVaa(l,"AutomaticCircleBridge:TransferWithRelay",f);if(!m)throw new Error("No VAA available after timeout exhausted");return m}t.getTransferVaa=a;async function o(d,l){return await(await d.getCircleBridge()).parseTransactionDetails(l)}t.getTransferMessage=o;function c(d){const{from:l,to:f}=d.transfer;let m={from:l.chain,to:f.chain,state:exports.TransferState.Created};const b=d.txids.filter(x=>x.chain===d.transfer.from.chain);b.length>0&&(m={...m,state:exports.TransferState.SourceInitiated,originTxs:b});const w=d.attestations?.filter(x=>ir(x.id))??[],E=d.attestations?.filter(x=>aa(x.id))??[],y=E.length>0?E[0]:w.length>0?w[0]:void 0;y&&y.id&&(m={...m,state:exports.TransferState.SourceFinalized,attestation:y},y.attestation&&(m={...m,state:exports.TransferState.Attested,attestation:{id:y.id,attestation:y.attestation}}));const p=d.txids.filter(x=>x.chain===d.transfer.to.chain);return p.length>0&&(m={...m,state:exports.TransferState.DestinationInitiated,destinationTxs:p}),m}t.getReceipt=c})(_e||(_e={}));const La=2e3;async function qh(t,e){const{chain:n,emitter:r,sequence:s}=e,i=Rt(n),a=Lc("0x",r.toString()),o=`${t}/v1/signed_vaa/${i}/${a}/${s}`;try{const{data:{vaaBytes:c}}=await ue.get(o);return xa.decode(c)}catch(c){if(!c||typeof c=="object"&&(ue.isAxiosError(c)&&c.response?.status===404||"status"in c&&c.status===404))return null;throw c}}async function Xg(t,e,n){return await wr(()=>qh(t,e),La,n,"Wormholescan:GetVaaBytes")}async function Yg(t,e,n){const r=await qh(t,e);return r?Wr(n,r):null}async function Zg(t,e,n,r){return await wr(()=>Yg(t,e,n),La,r,"Wormholescan:GetVaaBytes")}async function e5(t,e){const{chain:n,emitter:r,sequence:s}=e,i=Rt(n),a=r.toUniversalAddress().toString(),o=`${t}/api/v1/transactions/${i}/${a}/${s}`;try{return(await ue.get(o)).data}catch(c){if(!c||typeof c=="object"&&(ue.isAxiosError(c)&&c.response?.status===404||"status"in c&&c.status===404))return null;throw c}}async function t5(t,e,n){return await wr(()=>e5(t,e),La,n,"Wormholescan:GetTransactionStatus")}async function n5(t,e){const n=`${t}/api/v1/vaas?txHash=${e}`;try{const r=await ue.get(n);if(r.data.data.length>0)return r.data.data[0]}catch(r){if(!r||typeof r=="object"&&(ue.isAxiosError(r)&&r.response?.status===404||"status"in r&&r.status===404))return null;throw r}return null}async function c0(t,e,n,r){const i=await wr(()=>n5(t,e),La,r,"Wormholescan:GetVaaByTxHash");return i?Wr(n,xa.decode(i.vaa)):null}async function r5(t,e,n=50,r=0){const s=`${t}/api/v1/transactions?address=${e}&pageSize=${n}&page=${r}`;try{const i=await ue.get(s);if(i.data.transactions.length>0)return i.data.transactions}catch(i){if(!i||typeof i=="object"&&(ue.isAxiosError(i)&&i.response?.status===404||"status"in i&&i.status===404))return null;throw i}return null}async function s5(t){const e=`${t}/v1/governor/token_list`;try{const n=await ue.get(e);if(n.data&&n.data.entries.length>0)return n.data.entries.reduce((r,s)=>{const i=os(s.originChainId);return r[i]=r[i]||{},r[i][s.originAddress]=s.price,r},{})}catch{}return null}async function i5(t){const e=`${t}/v1/governor/available_notional_by_chain`;try{const n=await ue.get(e);if(n.data&&n.data.entries.length>0)return n.data.entries.reduce((r,s)=>{const i=s.bigTransactionSize==="0"?void 0:Fs(Ri(s.bigTransactionSize,2));return r[os(s.chainId)]={available:Fs(Ri(s.remainingAvailableNotional,2)),limit:Fs(Ri(s.notionalLimit,2)),maxSize:i},r},{})}catch{}return null}async function a5(t,e){const{chain:n,emitter:r,sequence:s}=e,i=Rt(n),a=r.toUniversalAddress().toString(),o=`${t}/v1/governor/is_vaa_enqueued/${i}/${a}/${s}`;return(await ue.get(o)).data.isEnqueued}class ke{wh;fromChain;toChain;_state;transfer;txids=[];attestations;constructor(e,n,r,s){this._state=exports.TransferState.Created,this.wh=e,this.transfer=n,this.fromChain=r??e.getChain(n.from.chain),this.toChain=s??e.getChain(n.to.chain)}getTransferState(){return this._state}static async from(e,n,r=6e3,s,i){if(mp(n))return s=s??e.getChain(n.from.chain),i=i??e.getChain(n.to.chain),ke.validateTransferDetails(e,n,s,i),n=await ke.destinationOverrides(s,i,n),new ke(e,n,s,i);let a;if(ir(n))a=await ke.fromIdentifier(e,n,r);else if(ih(n))a=await ke.fromTransaction(e,n,r,s);else throw new Error("Invalid `from` parameter for TokenTransfer");return a.fromChain=s??e.getChain(a.transfer.from.chain),a.toChain=i??e.getChain(a.transfer.to.chain),await a.fetchAttestation(r),a}static async fromIdentifier(e,n,r){const s=await ke.getTransferVaa(e,n,r);if(!s)throw new Error("VAA not found");const i=s.protocolName;let a={chain:s.emitterChain,address:s.emitterAddress},{token:o,to:c}=s.payload,d;if(o.chain===a.chain)d=await e.getTokenNativeAddress(a.chain,o.chain,o.address);else{const y=await(await(await e.getChain(a.chain)).getTokenBridge()).getWrappedAsset(o);d=yn(a.chain,y.toString())}const l=await e.getDecimals(a.chain,d),f=kr(ln(o.amount,Math.min(l,ke.MAX_DECIMALS)),l);(i==="AutomaticTokenBridge"||i==="ExecutorTokenBridge")&&(a={chain:s.emitterChain,address:s.payload.from},c={chain:s.payload.to.chain,address:s.payload.payload.targetRecipient});const m={token:o,amount:Qe(f),from:a,to:c,protocol:i,nativeGas:i==="AutomaticTokenBridge"?s.payload.payload.toNativeTokenAmount:0n},b=new ke(e,m);return b.attestations=[{id:n,attestation:s}],b._state=exports.TransferState.Attested,b}static async fromTransaction(e,n,r,s){s=s??e.getChain(n.chain);const i=await ke.getTransferMessage(s,n.txid,r),a=await ke.fromIdentifier(e,i,r);return a.txids=[n],a}async initiateTransfer(e){if(this._state!==exports.TransferState.Created)throw new Error("Invalid state transition in `initiateTransfer`");return this.txids=await ke.transfer(this.fromChain,this.transfer,e),this._state=exports.TransferState.SourceInitiated,this.txids.map(({txid:n})=>n)}async fetchAttestation(e){if(this._state<exports.TransferState.SourceInitiated||this._state>exports.TransferState.Attested)throw new Error("Invalid state transition in `fetchAttestation`, expected at least `SourceInitiated`");if(!this.attestations||this.attestations.length===0){if(this.txids.length===0)throw new Error("No VAAs set and txids available to look them up");const n=this.txids[this.txids.length-1],r=await ke.getTransferMessage(this.fromChain,n.txid,e);this.attestations=[{id:r}]}for(const n in this.attestations){if(this.attestations[n].attestation)continue;const r=await ke.getTransferVaa(this.wh,this.attestations[n].id,e);if(!r)throw new Error("VAA not found");this.attestations[n].attestation=r}if(this._state=exports.TransferState.Attested,this.attestations.length>0){const{attestation:n}=this.attestations[0];await ke.isTransferComplete(this.toChain,n)&&(this._state=exports.TransferState.DestinationFinalized)}return this.attestations.map(n=>n.id)}async completeTransfer(e){if(this._state<exports.TransferState.Attested)throw new Error("Invalid state transition, must be attested prior to calling `completeTransfer`.");if(!this.attestations)throw new Error("No VAA details available");const{attestation:n}=this.attestations[0];if(!n)throw new Error(`No VAA found for ${this.attestations[0].id.sequence}`);const r=await ke.redeem(this.toChain,n,e);return this.txids.push(...r),this._state=exports.TransferState.DestinationInitiated,r.map(({txid:s})=>s)}}(function(t){t.MAX_DECIMALS=8;async function e(y,p,x){const A=yn(x.chain(),x.address()),S=Zs(p.token)?p.token.address:p.token;let T;if(p.protocol==="AutomaticTokenBridge")T=(await y.getAutomaticTokenBridge()).transfer(A,p.to,S,p.amount,p.nativeGas);else if(p.protocol==="TokenBridge")T=(await y.getTokenBridge()).transfer(A,p.to,S,p.amount,p.payload);else if(p.protocol==="ExecutorTokenBridge"){if(!p.executorQuote)throw new Error("ExecutorTokenBridge transfer requires an executorQuote");const U=p.executorQuote.relayInstructions.requests.find(v=>v.request.type==="GasDropOffInstruction");U&&U.request.type==="GasDropOffInstruction"&&U.request.recipient.equals(Fe.ZERO)&&(U.request.recipient=p.to.address.toUniversalAddress()),T=(await y.getExecutorTokenBridge()).transfer(A,p.to,S,p.amount,p.executorQuote,p.referrerFee)}else throw new Error("Unknown token transfer protocol");return Ms(y,T,x)}t.transfer=e;async function n(y,p,x){const A=yn(x.chain(),x.address()),S=p.protocolName==="AutomaticTokenBridge"?(await y.getAutomaticTokenBridge()).redeem(A,p):p.protocolName==="ExecutorTokenBridge"?(await y.getExecutorTokenBridge()).redeem(A,p):(await y.getTokenBridge()).redeem(A,p);return Ms(y,S,x)}t.redeem=n;async function*r(y,p,x=Jt,A,S){const T=Date.now(),U=(R,v)=>Math.max(v-(Date.now()-R),0);if(A=A??y.getChain(p.from),Cl(p)){if(p.originTxs.length===0)throw"Origin transactions required to fetch message id";const{txid:R}=p.originTxs[p.originTxs.length-1],v=await t.getTransferMessage(A,R,U(T,x));p={...p,state:exports.TransferState.SourceFinalized,attestation:{id:v}},yield p}if(Ls(p)||a0(p)){if(!p.attestation.id)throw"Attestation id required to fetch attestation";const{id:R}=p.attestation,v=await t.getTransferVaa(y,R,U(T,x));throw v?(p={...p,attestation:{id:R,attestation:v},state:exports.TransferState.Attested},yield p):await t.isTransferEnqueued(y,R)&&(p={...p,state:exports.TransferState.InReview},yield p),new Error("Attestation not found")}if(Hr(p)||Ls(p)||a0(p)||o0(p)){if(!p.attestation?.id)throw"Attestation id required to fetch redeem tx";const{id:R}=p.attestation,v=await y.getTransactionStatus(R,U(T,x));if(v&&v.globalTx?.destinationTx?.txHash){const{chainId:M,txHash:V}=v.globalTx.destinationTx;p={...p,destinationTxs:[{chain:os(M),txid:V}],state:exports.TransferState.DestinationInitiated,attestation:p.attestation}}yield p}if(Hr(p)||xl(p)||o0(p)){if(!p.attestation?.attestation)throw"Signed Attestation required to check for redeem";if(p.attestation.attestation.payloadName==="AttestMeta")throw new Error("Unable to track an AttestMeta receipt");await t.isTransferComplete(S??y.getChain(p.attestation.attestation.payload.to.chain),p.attestation.attestation)&&(p={...p,state:exports.TransferState.DestinationFinalized,attestation:p.attestation}),yield p}if(Hr(p)&&p.attestation.attestation.protocolName==="ExecutorTokenBridge"){const[R]=await y.getExecutorTxStatus(p.originTxs.at(-1).txid,p.from);if(!R)throw new Error("No transaction status found");const v=R.status;(v===Ur.Failed||v===Ur.Underpaid||v===Ur.Unsupported||v===Ur.Aborted)&&(p={...p,state:exports.TransferState.Failed,error:new Bl(`Relay failed with status: ${v}`)},yield p)}yield p}t.track=r;function s(y){const{transfer:p}=y,x=p.from.chain,A=p.to.chain;let S={from:x,to:A,state:exports.TransferState.Created};const T=y.txids.filter(M=>M.chain===p.from.chain);T.length>0&&(S={...S,state:exports.TransferState.SourceInitiated,originTxs:T});const U=y.attestations&&y.attestations.length>0?y.attestations[0]:void 0,R=U&&U.id?{id:U.id,attestation:U.attestation}:void 0;R&&R.id&&(S={...S,state:exports.TransferState.SourceFinalized,attestation:{id:R.id}},R.attestation&&(S={...S,state:exports.TransferState.Attested,attestation:{id:R.id,attestation:R.attestation}}));const v=y.txids.filter(M=>M.chain===p.to.chain);return v.length>0&&(S={...S,state:exports.TransferState.DestinationFinalized,destinationTxs:v}),S}t.getReceipt=s;async function i(y,p,x){let A;const S=await y.getTokenBridge();if(Ve(x.address)){const R=await S.getWrappedNative();A={chain:x.chain,address:await S.getTokenUniversalAddress(R)}}else try{let R;Fe.instanceof(x.address)?R=await S.getWrappedAsset(x):R=x.address,A=await S.getOriginalAsset(R)}catch(R){if(!R.message.includes("not a wrapped asset"))throw R;let v;Fe.instanceof(x.address)?v=await S.getTokenNativeAddress(y.chain,x.address):v=x.address,A={chain:x.chain,address:await S.getTokenUniversalAddress(v)}}const T=await p.getTokenBridge();if(A.chain===p.chain){const R=await T.getTokenNativeAddress(A.chain,A.address),v=await T.getWrappedNative();return Wt({chain:p.chain,address:v})===Wt({chain:p.chain,address:R})?{chain:p.chain,address:"native"}:{chain:p.chain,address:R}}const U=await T.getWrappedAsset(A);return{chain:p.chain,address:U}}t.lookupDestinationToken=i;async function a(y,p){return(p.protocolName==="AutomaticTokenBridge"||p.protocolName==="ExecutorTokenBridge")&&(p=Wr("TokenBridge:TransferWithPayload",Gi(p))),(await y.getTokenBridge()).isTransferCompleted(p)}t.isTransferComplete=a;async function o(y,p,x){const A=await xt.parseMessageFromTx(y,p,x);if(A.length!==1)throw new Error("Expected a single Wormhole Message, got: "+A.length);return A[0]}t.getTransferMessage=o;async function c(y,p,x){const A=await y.getVaa(p,sc.getTransferDiscriminator(),x);if(!A)return null;if(A.payloadName==="TransferWithPayload"){const{chain:S,address:T}=A.payload.to,{tokenBridgeRelayer:U}=y.config.chains[S].contracts,R=U?$f(S,U):null;if(R&&T.equals(R))return Wr("AutomaticTokenBridge:TransferWithRelay",Gi(A));try{return Wr("ExecutorTokenBridge:TransferWithExecutorRelay",Gi(A))}catch{}}return A}t.getTransferVaa=c;async function d(y,p){return await y.getIsVaaEnqueued(p)}t.isTransferEnqueued=d;function l(y,p,x,A){if(p.amount===0n)throw new Error("Amount cannot be 0");if(p.from.chain===p.to.chain)throw new Error("Cannot transfer to the same chain");if(x=x??y.getChain(p.from.chain),A=A??y.getChain(p.to.chain),p.protocol==="AutomaticTokenBridge"){if(!x.supportsAutomaticTokenBridge())throw new Error(`Automatic Token Bridge not supported on ${p.from.chain}`);if(!A.supportsAutomaticTokenBridge())throw new Error(`Automatic Token Bridge not supported on ${p.to.chain}`);const S=p.nativeGas??0n;if(S>p.amount)throw new Error(`Native gas amount > amount (${S} > ${p.amount})`)}else if(p.protocol==="TokenBridge"){if(!x.supportsTokenBridge())throw new Error(`Token Bridge not supported on ${p.from.chain}`);if(!A.supportsTokenBridge())throw new Error(`Token Bridge not supported on ${p.to.chain}`)}else if(p.protocol==="ExecutorTokenBridge"){if(!x.supportsExecutorTokenBridge())throw new Error(`Token Bridge Executor not supported on ${p.from.chain}`);if(!A.supportsExecutorTokenBridge())throw new Error(`Token Bridge Executor not supported on ${p.to.chain}`)}else throw new Error("Unknown token transfer protocol")}t.validateTransferDetails=l;async function f(y,p,x,A){const S=await p.getTokenBridge();let T;if(Ve(A.token.address))T=await S.getWrappedNative();else if(Fe.instanceof(A.token.address))try{T=await S.getWrappedAsset(A.token)}catch(_){if(!_.message.includes("not a wrapped asset"))throw _;T=await S.getTokenNativeAddress(p.chain,A.token.address)}else T=A.token.address;xt.tokenId(p.chain,T.toString());const U=await p.getDecimals(T),R=ln(A.amount,U),v=Oi(R,t.MAX_DECIMALS),[M,V]=await Promise.all([s5(y.config.api),i5(y.config.api)]),Q=[];if(V!==null&&p.chain in V&&M!==null){let _;if(Ve(A.token.address))_={chain:p.chain,address:await S.getTokenUniversalAddress(T)};else try{_=await S.getOriginalAsset(A.token.address)}catch(te){if(!te.message.includes("not a wrapped asset"))throw te;_={chain:p.chain,address:await S.getTokenUniversalAddress(T)}}if(_.chain in M&&_.address.toString()in M[_.chain]){const te=V[p.chain],ge=M[_.chain][_.address.toString()]*Fs(v);te.maxSize&&ge>te.maxSize&&Q.push({type:"GovernorLimitWarning",reason:"ExceedsLargeTransferLimit"}),ge>te.available&&Q.push({type:"GovernorLimitWarning",reason:"ExceedsRemainingNotional"})}}const q=await t.lookupDestinationToken(p,x,A.token),N=await x.getDecimals(q.address),O=kr(v,N),C=zc(p.chain)+qc,k={sourceToken:{token:A.token,amount:Qe(v)},destinationToken:{token:q,amount:Qe(O)},warnings:Q.length>0?Q:void 0,eta:C};if(A.protocol==="TokenBridge")return{...k,expires:ks(24,0,0)};if(A.protocol==="ExecutorTokenBridge"){const _=await b(y,p,x,A.gasLimit,A.msgValue,A.nativeGas),te=_.relayInstructions.requests.find(oe=>oe.request.type==="GasDropOffInstruction"),le=te?.request.type==="GasDropOffInstruction"?te.request.dropOff:void 0;let ge;if(A.referrerFee&&A.referrerFee.feeDbps>0n){const{feeDbps:oe,referrer:ye}=A.referrerFee,Ke=t.calculateReferrerFee(v,oe),He=Qe(Ke.fee),ot=Qe(Ke.remaining);if(ot<=0n)throw new Error("Remaining amount after referrer fee is <= 0");ge={feeDbps:oe,feeAmount:He,remainingAmount:ot,referrer:ye}}return{...k,destinationToken:{token:q,amount:ge?.remainingAmount?Qe(kr(ln(ge.remainingAmount,U),N)):Qe(O)},expires:_.signedQuote.quote.expiryTime,relayFee:{token:hl(p.chain),amount:_.estimatedCost},destinationNativeGas:le,details:{executorQuote:_,referrerFee:ge}}}if(A.protocol!=="AutomaticTokenBridge")throw new Error("Unknown token transfer protocol");const G=await(await p.getAutomaticTokenBridge()).getRelayerFee(x.chain,T),z=kr(Oi(ln(G,U),t.MAX_DECIMALS),N),j=A.nativeGas??0n,J=Qe(kr(Oi(ln(j,U),t.MAX_DECIMALS),N)),Y=890880n;let me=0n;if(A.nativeGas){const _=await x.getAutomaticTokenBridge(),[te,le]=await Promise.all([_.maxSwapAmount(q.address),_.nativeTokenAmount(q.address,J)]);if(J>te)throw new Error(`Native gas amount exceeds maximum swap amount: ${cd(J,N)}>${cd(te,N)}`);if(vt(x.chain)==="Solana"&&le<Y)throw new Error(`Native gas amount must be at least ${Y} lamports`);me=le}const Z=Qe(O)-J-Qe(z);if(vt(q.chain)==="Solana"){const _=await x.getNativeWrappedTokenId();if((Ve(q.address)||rh(q,_))&&Z<Y)throw new Error(`Destination amount must be at least ${Y} lamports`)}return{sourceToken:{token:A.token,amount:Qe(v)},destinationToken:{token:q,amount:Z},relayFee:{token:q,amount:Qe(z)},destinationNativeGas:me,warnings:Q.length>0?Q:void 0,eta:C,expires:ks(0,5,0)}}t.quoteTransfer=f;async function m(y,p){const A=(await y.getExecutorCapabilities())[Rt(p.chain)];if(!A)throw new Error(`No executor capabilities found for destination chain ${p.chain}`);return BigInt(A.gasDropOffLimit)}t.getExecutorGasDropOffLimit=m;async function b(y,p,x,A,S,T){const U=await y.getExecutorCapabilities();if(!U[Rt(p.chain)])throw new Error(`No executor capabilities found for source chain ${p.chain}`);const v=U[Rt(x.chain)];if(!v||!v.requestPrefixes.includes("ERV1"))throw new Error(`No executor capabilities found for destination chain ${x.chain}`);const M=T??0n;if(M>BigInt(v.gasDropOffLimit))throw new Error(`Native gas amount ${M} exceeds limit ${BigInt(v.gasDropOffLimit)} for destination chain ${x.chain}`);const V=[];V.push({request:{type:"GasInstruction",gasLimit:A,msgValue:S}}),M>0n&&V.push({request:{type:"GasDropOffInstruction",dropOff:M,recipient:Fe.ZERO}});const Q={requests:V},q=Ot(bh,Q),N=await y.getExecutorQuote(p.chain,x.chain,Xe.encode(q,!0));if(!N.estimatedCost)throw new Error("No estimated cost");const O=BigInt(N.estimatedCost);return{signedQuote:Mt(ph,Xe.decode(N.signedQuote)),estimatedCost:O,relayInstructions:Q}}t.getExecutorQuote=b;async function w(y,p,x){const A={...x};if(vt(x.to.chain)==="Solana"&&A.protocol==="TokenBridge"){const S=await t.lookupDestinationToken(y,p,A.token);if(Ve(S.address)){const T=await p.getNativeWrappedTokenId();A.to=await p.getTokenAccount(A.to.address,T.address)}else A.to=await p.getTokenAccount(A.to.address,S.address)}if(A.to.chain==="Sei"&&A.protocol==="TokenBridge"){if(A.to.chain==="Sei"&&A.payload)throw new Error("Arbitrary payloads unsupported for Sei");A.payload=at.encode(JSON.stringify({basic_recipient:{recipient:xa.encode(A.to.address.toString())}}));const S=p.config.contracts.translator;if(S===void 0||S==="")throw new Error("Unexpected empty translator address");A.to=xt.chainAddress(A.to.chain,S)}return A}t.destinationOverrides=w;function E(y,p){if(p>65535n)throw new Error("dBps exceeds max u16");const A=Nu(y,p),S=Qe(A),U=Qe(y)-S;return{fee:A,remaining:ln(U,y.decimals)}}t.calculateReferrerFee=E})(ke||(ke={}));function o5(t){if(t.length===0)return[];const{chain:e}=t[0];if(!t.every(n=>n.chain===e))throw new Error("Not every chain is equal");return Array.from(new Set(t.map(n=>Wt(n)))).map(n=>xt.tokenId(e,n))}async function c5(t,e,n){const r=Wt(e),s=t.config.tokenMap?cs.byAddress(t.config.tokenMap,r):void 0,i=s?s.symbol:void 0;let a;if(Ve(e.address))try{a=await t.getNativeWrappedTokenId()}catch{}return n=n??await t.getDecimals(e.address),{id:e,decimals:n,wrapped:a,symbol:i}}class Kh{wh;routeConstructors;inputTokenList;constructor(e,n){this.wh=e,this.routeConstructors=n}async supportedDestinationTokens(e,n,r){const[,s]=sh(n.network,n.chain,e),i=await Promise.all(this.routeConstructors.map(async a=>{if(!a.supportedNetworks().includes(n.network))return[];const c=a.supportedChains(n.network);if(!c.includes(n.chain)||!c.includes(r.chain))return[];try{return await a.supportedDestinationTokens(s,n,r)}catch{return[]}}));return o5(i.flat())}async findRoutes(e){return(await Promise.all(this.routeConstructors.map(async r=>{try{const s=r.supportedNetworks().includes(this.wh.network)&&r.supportedChains(this.wh.network).includes(e.toChain.chain)&&r.supportedChains(this.wh.network).includes(e.fromChain.chain),i=Wt(Ve(e.destination.id.address)?e.destination.wrapped:e.destination.id),a=(await r.supportedDestinationTokens(e.source.id,e.fromChain,e.toChain)).filter(o=>Wt(o)===i).length>0;return s&&a}catch{return!1}})).then(r=>this.routeConstructors.filter((s,i)=>r[i]))).map(r=>new r(this.wh))}}class xt{_network;_platforms;_chains;config;constructor(e,n,r){this._network=e,this.config=Mg(e,r),this._chains=new Map,this._platforms=new Map;for(const s of n)this._platforms.set(s._platform,new s(e,this.config.chains))}get network(){return this._network}async circleTransfer(e,n,r,s,i,a){if(s&&i)throw new Error("Payload with automatic delivery is not supported");if(!Us(this.network,n.chain)||!Us(this.network,r.chain)||!yd(this.network,n.chain)||!yd(this.network,r.chain))throw new Error(`Network and chain not supported: ${this.network} ${n.chain} `);if(s){const d=await(await this.getChain(n.chain).getAutomaticCircleBridge()).getRelayerFee(r.chain)+(a||0n);if(e<d)throw new Error(`Amount must be > ${d} (relayerFee + nativeGas)`)}return await _e.from(this,{amount:e,from:n,to:r,automatic:s,payload:i,nativeGas:a})}async tokenTransfer(e,n,r,s,i,a){switch(i){case"TokenBridge":return await ke.from(this,{token:e,amount:n,from:r,to:s,protocol:i,payload:a});case"AutomaticTokenBridge":return await ke.from(this,{token:e,amount:n,from:r,to:s,protocol:i,nativeGas:a});case"ExecutorTokenBridge":return await ke.from(this,{token:e,amount:n,from:r,to:s,protocol:i});default:throw new Error(`Protocol ${i} is not supported`)}}resolver(e){return new Kh(this,e)}getContracts(e){return this.config.chains[e]?.contracts}getPlatform(e){const n=this._platforms.get(e);if(!n)throw new Error(`Not able to retrieve platform ${e}. Did it get registered in the constructor?`);return n}getChain(e){const n=vt(e);return this._chains.has(e)||this._chains.set(e,this.getPlatform(n).getChain(e)),this._chains.get(e)}async getWrappedAsset(e,n){const s=await this.getChain(e).getTokenBridge();return{chain:e,address:await s.getWrappedAsset(n)}}async getOriginalAsset(e){return await(await this.getChain(e.chain).getTokenBridge()).getOriginalAsset(e.address)}async getTokenUniversalAddress(e,n){return await(await this.getChain(e).getTokenBridge()).getTokenUniversalAddress(n)}async getTokenNativeAddress(e,n,r){return await(await this.getChain(e).getTokenBridge()).getTokenNativeAddress(n,r)}async getDecimals(e,n){return await this.getChain(e).getDecimals(n)}async getBalance(e,n,r){return this.getChain(e).getBalance(r,n)}async getTokenAccount(e,n){return this.getChain(e.chain).getTokenAccount(e.address,n.address)}async getVaaBytes(e,n=Jt){return await Xg(this.config.api,e,n)}async getVaa(e,n,r=Jt){return typeof e=="string"?await c0(this.config.api,e,n,r):await Zg(this.config.api,e,n,r)}async getIsVaaEnqueued(e){return await a5(this.config.api,e)}async getCircleAttestation(e,n=Jt){return Vg(this.config.circleAPI,e,n)}async getTransactionStatus(e,n=Jt){let r;if(typeof e=="string"){const s=await c0(this.config.api,e,"Uint8Array",n);if(!s)return null;r={emitter:s.emitterAddress,chain:s.emitterChain,sequence:s.sequence}}else r=e;return await t5(this.config.api,r,n)}async getExecutorCapabilities(){return await Kp(this.config.executorAPI)}async getExecutorQuote(e,n,r){return await Qp(this.config.executorAPI,e,n,r)}async getExecutorTxStatus(e,n){return await $p(this.config.executorAPI,e,n)}async getTransactionsForAddress(e,n=50,r=0){return r5(this.config.api,e,n,r)}static parseAddress(e,n){return yn(e,n)}static canonicalAddress(e){return Wt(e)}static chainAddress(e,n){return{chain:e,address:xt.parseAddress(e,n)}}static tokenId(e,n){return Ve(n)?hl(e):this.chainAddress(e,n)}static async parseMessageFromTx(e,n,r=Jt){const i=await wr(async()=>{try{const a=await e.parseTransaction(n);return a.length===0?null:a}catch(a){return console.error(a),null}},e.config.blockTime,r,"WormholeCore:ParseMessageFromTransaction");if(!i)throw new Error(`No WormholeMessageId found for ${n}`);return i}}class Wa{wh;constructor(e){this.wh=e}transferUrl(e){return`https://wormholescan.io/#/tx/${e}?network=${this.wh.network}`}}class l5 extends Wa{static IS_AUTOMATIC=!0}function d5(t){return!!t.constructor.IS_AUTOMATIC}class u5 extends Wa{static NATIVE_GAS_DROPOFF_SUPPORTED=!1;static IS_AUTOMATIC=!1}function f5(t){return t.complete!==void 0}class h5 extends Wa{}function m5(t){return t.finalize!==void 0}const Qh="6.13.5";function b5(t,e,n){const r=e.split("|").map(i=>i.trim());for(let i=0;i<r.length;i++)switch(e){case"any":return;case"bigint":case"boolean":case"number":case"string":if(typeof t===e)return}const s=new Error(`invalid value for type ${e}`);throw s.code="INVALID_ARGUMENT",s.argument=`value.${n}`,s.value=t,s}async function tt(t){const e=Object.keys(t);return(await Promise.all(e.map(r=>Promise.resolve(t[r])))).reduce((r,s,i)=>(r[e[i]]=s,r),{})}function ee(t,e,n){for(let r in e){let s=e[r];const i=n?n[r]:null;i&&b5(s,i,r),Object.defineProperty(t,r,{enumerable:!0,value:s,writable:!1})}}function Pr(t){if(t==null)return"null";if(Array.isArray(t))return"[ "+t.map(Pr).join(", ")+" ]";if(t instanceof Uint8Array){const e="0123456789abcdef";let n="0x";for(let r=0;r<t.length;r++)n+=e[t[r]>>4],n+=e[t[r]&15];return n}if(typeof t=="object"&&typeof t.toJSON=="function")return Pr(t.toJSON());switch(typeof t){case"boolean":case"symbol":return t.toString();case"bigint":return BigInt(t).toString();case"number":return t.toString();case"string":return JSON.stringify(t);case"object":{const e=Object.keys(t);return e.sort(),"{ "+e.map(n=>`${Pr(n)}: ${Pr(t[n])}`).join(", ")+" }"}}return"[ COULD NOT SERIALIZE ]"}function Je(t,e){return t&&t.code===e}function Dl(t){return Je(t,"CALL_EXCEPTION")}function Ue(t,e,n){let r=t;{const i=[];if(n){if("message"in n||"code"in n||"name"in n)throw new Error(`value will overwrite populated values: ${Pr(n)}`);for(const a in n){if(a==="shortMessage")continue;const o=n[a];i.push(a+"="+Pr(o))}}i.push(`code=${e}`),i.push(`version=${Qh}`),i.length&&(t+=" ("+i.join(", ")+")")}let s;switch(e){case"INVALID_ARGUMENT":s=new TypeError(t);break;case"NUMERIC_FAULT":case"BUFFER_OVERRUN":s=new RangeError(t);break;default:s=new Error(t)}return ee(s,{code:e}),n&&Object.assign(s,n),s.shortMessage==null&&ee(s,{shortMessage:r}),s}function W(t,e,n,r){if(!t)throw Ue(e,n,r)}function D(t,e,n,r){W(t,e,"INVALID_ARGUMENT",{argument:n,value:r})}function $h(t,e,n){n==null&&(n=""),n&&(n=": "+n),W(t>=e,"missing argument"+n,"MISSING_ARGUMENT",{count:t,expectedCount:e}),W(t<=e,"too many arguments"+n,"UNEXPECTED_ARGUMENT",{count:t,expectedCount:e})}const p5=["NFD","NFC","NFKD","NFKC"].reduce((t,e)=>{try{if("test".normalize(e)!=="test")throw new Error("bad");if(e==="NFD"&&"é".normalize("NFD")!=="é")throw new Error("broken");t.push(e)}catch{}return t},[]);function Jh(t){W(p5.indexOf(t)>=0,"platform missing String.prototype.normalize","UNSUPPORTED_OPERATION",{operation:"String.prototype.normalize",info:{form:t}})}function ii(t,e,n){if(n==null&&(n=""),t!==e){let r=n,s="new";n&&(r+=".",s+=" "+n),W(!1,`private constructor; use ${r}from* methods`,"UNSUPPORTED_OPERATION",{operation:s})}}function Xh(t,e,n){if(t instanceof Uint8Array)return n?new Uint8Array(t):t;if(typeof t=="string"&&t.match(/^0x(?:[0-9a-f][0-9a-f])*$/i)){const r=new Uint8Array((t.length-2)/2);let s=2;for(let i=0;i<r.length;i++)r[i]=parseInt(t.substring(s,s+2),16),s+=2;return r}D(!1,"invalid BytesLike value",e||"value",t)}function ce(t,e){return Xh(t,e,!1)}function rt(t,e){return Xh(t,e,!0)}function Ee(t,e){return!(typeof t!="string"||!t.match(/^0x[0-9A-Fa-f]*$/)||typeof e=="number"&&t.length!==2+2*e||e===!0&&t.length%2!==0)}function Ha(t){return Ee(t,!0)||t instanceof Uint8Array}const l0="0123456789abcdef";function K(t){const e=ce(t);let n="0x";for(let r=0;r<e.length;r++){const s=e[r];n+=l0[(s&240)>>4]+l0[s&15]}return n}function De(t){return"0x"+t.map(e=>K(e).substring(2)).join("")}function or(t){return Ee(t,!0)?(t.length-2)/2:ce(t).length}function xe(t,e,n){const r=ce(t);return n!=null&&n>r.length&&W(!1,"cannot slice beyond data bounds","BUFFER_OVERRUN",{buffer:r,length:r.length,offset:n}),K(r.slice(e??0,n??r.length))}function Yh(t,e,n){const r=ce(t);W(e>=r.length,"padding exceeds data length","BUFFER_OVERRUN",{buffer:new Uint8Array(r),length:e,offset:e+1});const s=new Uint8Array(e);return s.fill(0),n?s.set(r,e-r.length):s.set(r,0),K(s)}function Wn(t,e){return Yh(t,e,!0)}function Zh(t,e){return Yh(t,e,!1)}const za=BigInt(0),Nt=BigInt(1),Nr=9007199254740991;function e1(t,e){const n=Ga(t,"value"),r=BigInt(ae(e,"width"));if(W(n>>r===za,"overflow","NUMERIC_FAULT",{operation:"fromTwos",fault:"overflow",value:t}),n>>r-Nt){const s=(Nt<<r)-Nt;return-((~n&s)+Nt)}return n}function Fl(t,e){let n=X(t,"value");const r=BigInt(ae(e,"width")),s=Nt<<r-Nt;if(n<za){n=-n,W(n<=s,"too low","NUMERIC_FAULT",{operation:"toTwos",fault:"overflow",value:t});const i=(Nt<<r)-Nt;return(~n&i)+Nt}else W(n<s,"too high","NUMERIC_FAULT",{operation:"toTwos",fault:"overflow",value:t});return n}function Rr(t,e){const n=Ga(t,"value"),r=BigInt(ae(e,"bits"));return n&(Nt<<r)-Nt}function X(t,e){switch(typeof t){case"bigint":return t;case"number":return D(Number.isInteger(t),"underflow",e||"value",t),D(t>=-Nr&&t<=Nr,"overflow",e||"value",t),BigInt(t);case"string":try{if(t==="")throw new Error("empty string");return t[0]==="-"&&t[1]!=="-"?-BigInt(t.substring(1)):BigInt(t)}catch(n){D(!1,`invalid BigNumberish string: ${n.message}`,e||"value",t)}}D(!1,"invalid BigNumberish value",e||"value",t)}function Ga(t,e){const n=X(t,e);return W(n>=za,"unsigned value cannot be negative","NUMERIC_FAULT",{fault:"overflow",operation:"getUint",value:t}),n}const d0="0123456789abcdef";function Va(t){if(t instanceof Uint8Array){let e="0x0";for(const n of t)e+=d0[n>>4],e+=d0[n&15];return BigInt(e)}return X(t)}function ae(t,e){switch(typeof t){case"bigint":return D(t>=-Nr&&t<=Nr,"overflow",e||"value",t),Number(t);case"number":return D(Number.isInteger(t),"underflow",e||"value",t),D(t>=-Nr&&t<=Nr,"overflow",e||"value",t),t;case"string":try{if(t==="")throw new Error("empty string");return ae(BigInt(t),e)}catch(n){D(!1,`invalid numeric string: ${n.message}`,e||"value",t)}}D(!1,"invalid numeric value",e||"value",t)}function g5(t){return ae(Va(t))}function An(t,e){let r=Ga(t,"value").toString(16);if(e==null)r.length%2&&(r="0"+r);else{const s=ae(e,"width");for(W(s*2>=r.length,`value exceeds width (${s} bytes)`,"NUMERIC_FAULT",{operation:"toBeHex",fault:"overflow",value:t});r.length<s*2;)r="0"+r}return"0x"+r}function st(t){const e=Ga(t,"value");if(e===za)return new Uint8Array([]);let n=e.toString(16);n.length%2&&(n="0"+n);const r=new Uint8Array(n.length/2);for(let s=0;s<r.length;s++){const i=s*2;r[s]=parseInt(n.substring(i,i+2),16)}return r}function Or(t){let e=K(Ha(t)?t:st(t)).substring(2);for(;e.startsWith("0");)e=e.substring(1);return e===""&&(e="0"),"0x"+e}const ua="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";let Ai=null;function y5(t){if(Ai==null){Ai={};for(let n=0;n<ua.length;n++)Ai[ua[n]]=BigInt(n)}const e=Ai[t];return D(e!=null,"invalid base58 value","letter",t),e}const A5=BigInt(0),fc=BigInt(58);function t1(t){const e=ce(t);let n=Va(e),r="";for(;n;)r=ua[Number(n%fc)]+r,n/=fc;for(let s=0;s<e.length&&!e[s];s++)r=ua[0]+r;return r}function E5(t){let e=A5;for(let n=0;n<t.length;n++)e*=fc,e+=y5(t[n]);return e}function w5(t){t=atob(t);const e=new Uint8Array(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return ce(e)}function B5(t){const e=ce(t);let n="";for(let r=0;r<e.length;r++)n+=String.fromCharCode(e[r]);return btoa(n)}class n1{filter;emitter;#e;constructor(e,n,r){this.#e=n,ee(this,{emitter:e,filter:r})}async removeListener(){this.#e!=null&&await this.emitter.off(this.filter,this.#e)}}function C5(t,e,n,r,s){D(!1,`invalid codepoint at offset ${e}; ${t}`,"bytes",n)}function r1(t,e,n,r,s){if(t==="BAD_PREFIX"||t==="UNEXPECTED_CONTINUE"){let i=0;for(let a=e+1;a<n.length&&n[a]>>6===2;a++)i++;return i}return t==="OVERRUN"?n.length-e-1:0}function x5(t,e,n,r,s){return t==="OVERLONG"?(D(typeof s=="number","invalid bad code point for replacement","badCodepoint",s),r.push(s),0):(r.push(65533),r1(t,e,n))}const D5=Object.freeze({error:C5,ignore:r1,replace:x5});function F5(t,e){e==null&&(e=D5.error);const n=ce(t,"bytes"),r=[];let s=0;for(;s<n.length;){const i=n[s++];if(i>>7===0){r.push(i);continue}let a=null,o=null;if((i&224)===192)a=1,o=127;else if((i&240)===224)a=2,o=2047;else if((i&248)===240)a=3,o=65535;else{(i&192)===128?s+=e("UNEXPECTED_CONTINUE",s-1,n,r):s+=e("BAD_PREFIX",s-1,n,r);continue}if(s-1+a>=n.length){s+=e("OVERRUN",s-1,n,r);continue}let c=i&(1<<8-a-1)-1;for(let d=0;d<a;d++){let l=n[s];if((l&192)!=128){s+=e("MISSING_CONTINUE",s,n,r),c=null;break}c=c<<6|l&63,s++}if(c!==null){if(c>1114111){s+=e("OUT_OF_RANGE",s-1-a,n,r,c);continue}if(c>=55296&&c<=57343){s+=e("UTF16_SURROGATE",s-1-a,n,r,c);continue}if(c<=o){s+=e("OVERLONG",s-1-a,n,r,c);continue}r.push(c)}}return r}function tn(t,e){D(typeof t=="string","invalid string value","str",t),e!=null&&(Jh(e),t=t.normalize(e));let n=[];for(let r=0;r<t.length;r++){const s=t.charCodeAt(r);if(s<128)n.push(s);else if(s<2048)n.push(s>>6|192),n.push(s&63|128);else if((s&64512)==55296){r++;const i=t.charCodeAt(r);D(r<t.length&&(i&64512)===56320,"invalid surrogate pair","str",t);const a=65536+((s&1023)<<10)+(i&1023);n.push(a>>18|240),n.push(a>>12&63|128),n.push(a>>6&63|128),n.push(a&63|128)}else n.push(s>>12|224),n.push(s>>6&63|128),n.push(s&63|128)}return new Uint8Array(n)}function S5(t){return t.map(e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10&1023)+55296,(e&1023)+56320))).join("")}function fa(t,e){return S5(F5(t,e))}function s1(t){async function e(n,r){W(r==null||!r.cancelled,"request cancelled before sending","CANCELLED");const s=n.url.split(":")[0].toLowerCase();W(s==="http"||s==="https",`unsupported protocol ${s}`,"UNSUPPORTED_OPERATION",{info:{protocol:s},operation:"request"}),W(s==="https"||!n.credentials||n.allowInsecureAuthentication,"insecure authorized connections unsupported","UNSUPPORTED_OPERATION",{operation:"request"});let i=null;const a=new AbortController,o=setTimeout(()=>{i=Ue("request timeout","TIMEOUT"),a.abort()},n.timeout);r&&r.addListener(()=>{i=Ue("request cancelled","CANCELLED"),a.abort()});const c={method:n.method,headers:new Headers(Array.from(n)),body:n.body||void 0,signal:a.signal};let d;try{d=await fetch(n.url,c)}catch(b){throw clearTimeout(o),i||b}clearTimeout(o);const l={};d.headers.forEach((b,w)=>{l[w.toLowerCase()]=b});const f=await d.arrayBuffer(),m=f==null?null:new Uint8Array(f);return{statusCode:d.status,statusMessage:d.statusText,headers:l,body:m}}return e}const T5=12,v5=250;let u0=s1();const I5=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i"),k5=new RegExp("^ipfs://(ipfs/)?(.*)$","i");let Eo=!1;async function i1(t,e){try{const n=t.match(I5);if(!n)throw new Error("invalid data");return new Mn(200,"OK",{"content-type":n[1]||"text/plain"},n[2]?w5(n[3]):P5(n[3]))}catch{return new Mn(599,"BAD REQUEST (invalid data: URI)",{},null,new nn(t))}}function a1(t){async function e(n,r){try{const s=n.match(k5);if(!s)throw new Error("invalid link");return new nn(`${t}${s[2]}`)}catch{return new Mn(599,"BAD REQUEST (invalid IPFS URI)",{},null,new nn(n))}}return e}const Ei={data:i1,ipfs:a1("https://gateway.ipfs.io/ipfs/")},o1=new WeakMap;class U5{#e;#t;constructor(e){this.#e=[],this.#t=!1,o1.set(e,()=>{if(!this.#t){this.#t=!0;for(const n of this.#e)setTimeout(()=>{n()},0);this.#e=[]}})}addListener(e){W(!this.#t,"singal already cancelled","UNSUPPORTED_OPERATION",{operation:"fetchCancelSignal.addCancelListener"}),this.#e.push(e)}get cancelled(){return this.#t}checkSignal(){W(!this.cancelled,"cancelled","CANCELLED",{})}}function wi(t){if(t==null)throw new Error("missing signal; should not happen");return t.checkSignal(),t}class nn{#e;#t;#n;#r;#s;#a;#i;#o;#h;#l;#m;#b;#c;#d;#u;get url(){return this.#a}set url(e){this.#a=String(e)}get body(){return this.#i==null?null:new Uint8Array(this.#i)}set body(e){if(e==null)this.#i=void 0,this.#o=void 0;else if(typeof e=="string")this.#i=tn(e),this.#o="text/plain";else if(e instanceof Uint8Array)this.#i=e,this.#o="application/octet-stream";else if(typeof e=="object")this.#i=tn(JSON.stringify(e)),this.#o="application/json";else throw new Error("invalid body")}hasBody(){return this.#i!=null}get method(){return this.#r?this.#r:this.hasBody()?"POST":"GET"}set method(e){e==null&&(e=""),this.#r=String(e).toUpperCase()}get headers(){const e=Object.assign({},this.#n);return this.#h&&(e.authorization=`Basic ${B5(tn(this.#h))}`),this.allowGzip&&(e["accept-encoding"]="gzip"),e["content-type"]==null&&this.#o&&(e["content-type"]=this.#o),this.body&&(e["content-length"]=String(this.body.length)),e}getHeader(e){return this.headers[e.toLowerCase()]}setHeader(e,n){this.#n[String(e).toLowerCase()]=String(n)}clearHeaders(){this.#n={}}[Symbol.iterator](){const e=this.headers,n=Object.keys(e);let r=0;return{next:()=>{if(r<n.length){const s=n[r++];return{value:[s,e[s]],done:!1}}return{value:void 0,done:!0}}}}get credentials(){return this.#h||null}setCredentials(e,n){D(!e.match(/:/),"invalid basic authentication username","username","[REDACTED]"),this.#h=`${e}:${n}`}get allowGzip(){return this.#t}set allowGzip(e){this.#t=!!e}get allowInsecureAuthentication(){return!!this.#e}set allowInsecureAuthentication(e){this.#e=!!e}get timeout(){return this.#s}set timeout(e){D(e>=0,"timeout must be non-zero","timeout",e),this.#s=e}get preflightFunc(){return this.#l||null}set preflightFunc(e){this.#l=e}get processFunc(){return this.#m||null}set processFunc(e){this.#m=e}get retryFunc(){return this.#b||null}set retryFunc(e){this.#b=e}get getUrlFunc(){return this.#u||u0}set getUrlFunc(e){this.#u=e}constructor(e){this.#a=String(e),this.#e=!1,this.#t=!0,this.#n={},this.#r="",this.#s=3e5,this.#d={slotInterval:v5,maxAttempts:T5},this.#u=null}toString(){return`<FetchRequest method=${JSON.stringify(this.method)} url=${JSON.stringify(this.url)} headers=${JSON.stringify(this.headers)} body=${this.#i?K(this.#i):"null"}>`}setThrottleParams(e){e.slotInterval!=null&&(this.#d.slotInterval=e.slotInterval),e.maxAttempts!=null&&(this.#d.maxAttempts=e.maxAttempts)}async#f(e,n,r,s,i){if(e>=this.#d.maxAttempts)return i.makeServerError("exceeded maximum retry limit");W(f0()<=n,"timeout","TIMEOUT",{operation:"request.send",reason:"timeout",request:s}),r>0&&await N5(r);let a=this.clone();const o=(a.url.split(":")[0]||"").toLowerCase();if(o in Ei){const l=await Ei[o](a.url,wi(s.#c));if(l instanceof Mn){let f=l;if(this.processFunc){wi(s.#c);try{f=await this.processFunc(a,f)}catch(m){(m.throttle==null||typeof m.stall!="number")&&f.makeServerError("error in post-processing function",m).assertOk()}}return f}a=l}this.preflightFunc&&(a=await this.preflightFunc(a));const c=await this.getUrlFunc(a,wi(s.#c));let d=new Mn(c.statusCode,c.statusMessage,c.headers,c.body,s);if(d.statusCode===301||d.statusCode===302){try{const l=d.headers.location||"";return a.redirect(l).#f(e+1,n,0,s,d)}catch{}return d}else if(d.statusCode===429&&(this.retryFunc==null||await this.retryFunc(a,d,e))){const l=d.headers["retry-after"];let f=this.#d.slotInterval*Math.trunc(Math.random()*Math.pow(2,e));return typeof l=="string"&&l.match(/^[1-9][0-9]*$/)&&(f=parseInt(l)),a.clone().#f(e+1,n,f,s,d)}if(this.processFunc){wi(s.#c);try{d=await this.processFunc(a,d)}catch(l){(l.throttle==null||typeof l.stall!="number")&&d.makeServerError("error in post-processing function",l).assertOk();let f=this.#d.slotInterval*Math.trunc(Math.random()*Math.pow(2,e));return l.stall>=0&&(f=l.stall),a.clone().#f(e+1,n,f,s,d)}}return d}send(){return W(this.#c==null,"request already sent","UNSUPPORTED_OPERATION",{operation:"fetchRequest.send"}),this.#c=new U5(this),this.#f(0,f0()+this.timeout,0,this,new Mn(0,"",{},null,this))}cancel(){W(this.#c!=null,"request has not been sent","UNSUPPORTED_OPERATION",{operation:"fetchRequest.cancel"});const e=o1.get(this);if(!e)throw new Error("missing signal; should not happen");e()}redirect(e){const n=this.url.split(":")[0].toLowerCase(),r=e.split(":")[0].toLowerCase();W(this.method==="GET"&&(n!=="https"||r!=="http")&&e.match(/^https?:/),"unsupported redirect","UNSUPPORTED_OPERATION",{operation:`redirect(${this.method} ${JSON.stringify(this.url)} => ${JSON.stringify(e)})`});const s=new nn(e);return s.method="GET",s.allowGzip=this.allowGzip,s.timeout=this.timeout,s.#n=Object.assign({},this.#n),this.#i&&(s.#i=new Uint8Array(this.#i)),s.#o=this.#o,s}clone(){const e=new nn(this.url);return e.#r=this.#r,this.#i&&(e.#i=this.#i),e.#o=this.#o,e.#n=Object.assign({},this.#n),e.#h=this.#h,this.allowGzip&&(e.allowGzip=!0),e.timeout=this.timeout,this.allowInsecureAuthentication&&(e.allowInsecureAuthentication=!0),e.#l=this.#l,e.#m=this.#m,e.#b=this.#b,e.#d=Object.assign({},this.#d),e.#u=this.#u,e}static lockConfig(){Eo=!0}static getGateway(e){return Ei[e.toLowerCase()]||null}static registerGateway(e,n){if(e=e.toLowerCase(),e==="http"||e==="https")throw new Error(`cannot intercept ${e}; use registerGetUrl`);if(Eo)throw new Error("gateways locked");Ei[e]=n}static registerGetUrl(e){if(Eo)throw new Error("gateways locked");u0=e}static createGetUrlFunc(e){return s1()}static createDataGateway(){return i1}static createIpfsGatewayFunc(e){return a1(e)}}class Mn{#e;#t;#n;#r;#s;#a;toString(){return`<FetchResponse status=${this.statusCode} body=${this.#r?K(this.#r):"null"}>`}get statusCode(){return this.#e}get statusMessage(){return this.#t}get headers(){return Object.assign({},this.#n)}get body(){return this.#r==null?null:new Uint8Array(this.#r)}get bodyText(){try{return this.#r==null?"":fa(this.#r)}catch{W(!1,"response body is not valid UTF-8 data","UNSUPPORTED_OPERATION",{operation:"bodyText",info:{response:this}})}}get bodyJson(){try{return JSON.parse(this.bodyText)}catch{W(!1,"response body is not valid JSON","UNSUPPORTED_OPERATION",{operation:"bodyJson",info:{response:this}})}}[Symbol.iterator](){const e=this.headers,n=Object.keys(e);let r=0;return{next:()=>{if(r<n.length){const s=n[r++];return{value:[s,e[s]],done:!1}}return{value:void 0,done:!0}}}}constructor(e,n,r,s,i){this.#e=e,this.#t=n,this.#n=Object.keys(r).reduce((a,o)=>(a[o.toLowerCase()]=String(r[o]),a),{}),this.#r=s==null?null:new Uint8Array(s),this.#s=i||null,this.#a={message:""}}makeServerError(e,n){let r;e?r=`CLIENT ESCALATED SERVER ERROR (${this.statusCode} ${this.statusMessage}; ${e})`:(e=`${this.statusCode} ${this.statusMessage}`,r=`CLIENT ESCALATED SERVER ERROR (${e})`);const s=new Mn(599,r,this.headers,this.body,this.#s||void 0);return s.#a={message:e,error:n},s}throwThrottleError(e,n){n==null?n=-1:D(Number.isInteger(n)&&n>=0,"invalid stall timeout","stall",n);const r=new Error(e||"throttling requests");throw ee(r,{stall:n,throttle:!0}),r}getHeader(e){return this.headers[e.toLowerCase()]}hasBody(){return this.#r!=null}get request(){return this.#s}ok(){return this.#a.message===""&&this.statusCode>=200&&this.statusCode<300}assertOk(){if(this.ok())return;let{message:e,error:n}=this.#a;e===""&&(e=`server response ${this.statusCode} ${this.statusMessage}`);let r=null;this.request&&(r=this.request.url);let s=null;try{this.#r&&(s=fa(this.#r))}catch{}W(!1,e,"SERVER_ERROR",{request:this.request||"unknown request",response:this,error:n,info:{requestUrl:r,responseBody:s,responseStatus:`${this.statusCode} ${this.statusMessage}`}})}}function f0(){return new Date().getTime()}function P5(t){return tn(t.replace(/%([0-9a-f][0-9a-f])/gi,(e,n)=>String.fromCharCode(parseInt(n,16))))}function N5(t){return new Promise(e=>setTimeout(e,t))}function R5(t){let e=t.toString(16);for(;e.length<2;)e="0"+e;return"0x"+e}function h0(t,e,n){let r=0;for(let s=0;s<n;s++)r=r*256+t[e+s];return r}function m0(t,e,n,r){const s=[];for(;n<e+1+r;){const i=c1(t,n);s.push(i.result),n+=i.consumed,W(n<=e+1+r,"child data too short","BUFFER_OVERRUN",{buffer:t,length:r,offset:e})}return{consumed:1+r,result:s}}function c1(t,e){W(t.length!==0,"data too short","BUFFER_OVERRUN",{buffer:t,length:0,offset:1});const n=r=>{W(r<=t.length,"data short segment too short","BUFFER_OVERRUN",{buffer:t,length:t.length,offset:r})};if(t[e]>=248){const r=t[e]-247;n(e+1+r);const s=h0(t,e+1,r);return n(e+1+r+s),m0(t,e,e+1+r,r+s)}else if(t[e]>=192){const r=t[e]-192;return n(e+1+r),m0(t,e,e+1,r)}else if(t[e]>=184){const r=t[e]-183;n(e+1+r);const s=h0(t,e+1,r);n(e+1+r+s);const i=K(t.slice(e+1+r,e+1+r+s));return{consumed:1+r+s,result:i}}else if(t[e]>=128){const r=t[e]-128;n(e+1+r);const s=K(t.slice(e+1,e+1+r));return{consumed:1+r,result:s}}return{consumed:1,result:R5(t[e])}}function _a(t){const e=ce(t,"data"),n=c1(e,0);return D(n.consumed===e.length,"unexpected junk after rlp payload","data",t),n.result}function b0(t){const e=[];for(;t;)e.unshift(t&255),t>>=8;return e}function l1(t){if(Array.isArray(t)){let r=[];if(t.forEach(function(i){r=r.concat(l1(i))}),r.length<=55)return r.unshift(192+r.length),r;const s=b0(r.length);return s.unshift(247+s.length),s.concat(r)}const e=Array.prototype.slice.call(ce(t,"object"));if(e.length===1&&e[0]<=127)return e;if(e.length<=55)return e.unshift(128+e.length),e;const n=b0(e.length);return n.unshift(183+n.length),n.concat(e)}const p0="0123456789abcdef";function pr(t){let e="0x";for(const n of l1(t))e+=p0[n>>4],e+=p0[n&15];return e}const lt=32,hc=new Uint8Array(lt),O5=["then"],Bi={},d1=new WeakMap;function qn(t){return d1.get(t)}function g0(t,e){d1.set(t,e)}function ys(t,e){const n=new Error(`deferred error during ABI decoding triggered accessing ${t}`);throw n.error=e,n}function mc(t,e,n){return t.indexOf(null)>=0?e.map((r,s)=>r instanceof mn?mc(qn(r),r,n):r):t.reduce((r,s,i)=>{let a=e.getValue(s);return s in r||(n&&a instanceof mn&&(a=mc(qn(a),a,n)),r[s]=a),r},{})}class mn extends Array{#e;constructor(...e){const n=e[0];let r=e[1],s=(e[2]||[]).slice(),i=!0;n!==Bi&&(r=e,s=[],i=!1),super(r.length),r.forEach((c,d)=>{this[d]=c});const a=s.reduce((c,d)=>(typeof d=="string"&&c.set(d,(c.get(d)||0)+1),c),new Map);if(g0(this,Object.freeze(r.map((c,d)=>{const l=s[d];return l!=null&&a.get(l)===1?l:null}))),this.#e=[],this.#e==null&&this.#e,!i)return;Object.freeze(this);const o=new Proxy(this,{get:(c,d,l)=>{if(typeof d=="string"){if(d.match(/^[0-9]+$/)){const m=ae(d,"%index");if(m<0||m>=this.length)throw new RangeError("out of result range");const b=c[m];return b instanceof Error&&ys(`index ${m}`,b),b}if(O5.indexOf(d)>=0)return Reflect.get(c,d,l);const f=c[d];if(f instanceof Function)return function(...m){return f.apply(this===l?c:this,m)};if(!(d in c))return c.getValue.apply(this===l?c:this,[d])}return Reflect.get(c,d,l)}});return g0(o,qn(this)),o}toArray(e){const n=[];return this.forEach((r,s)=>{r instanceof Error&&ys(`index ${s}`,r),e&&r instanceof mn&&(r=r.toArray(e)),n.push(r)}),n}toObject(e){const n=qn(this);return n.reduce((r,s,i)=>(W(s!=null,`value at index ${i} unnamed`,"UNSUPPORTED_OPERATION",{operation:"toObject()"}),mc(n,this,e)),{})}slice(e,n){e==null&&(e=0),e<0&&(e+=this.length,e<0&&(e=0)),n==null&&(n=this.length),n<0&&(n+=this.length,n<0&&(n=0)),n>this.length&&(n=this.length);const r=qn(this),s=[],i=[];for(let a=e;a<n;a++)s.push(this[a]),i.push(r[a]);return new mn(Bi,s,i)}filter(e,n){const r=qn(this),s=[],i=[];for(let a=0;a<this.length;a++){const o=this[a];o instanceof Error&&ys(`index ${a}`,o),e.call(n,o,a,this)&&(s.push(o),i.push(r[a]))}return new mn(Bi,s,i)}map(e,n){const r=[];for(let s=0;s<this.length;s++){const i=this[s];i instanceof Error&&ys(`index ${s}`,i),r.push(e.call(n,i,s,this))}return r}getValue(e){const n=qn(this).indexOf(e);if(n===-1)return;const r=this[n];return r instanceof Error&&ys(`property ${JSON.stringify(e)}`,r.error),r}static fromItems(e,n){return new mn(Bi,e,n)}}function y0(t){let e=st(t);return W(e.length<=lt,"value out-of-bounds","BUFFER_OVERRUN",{buffer:e,length:lt,offset:e.length}),e.length!==lt&&(e=rt(De([hc.slice(e.length%lt),e]))),e}class Cn{name;type;localName;dynamic;constructor(e,n,r,s){ee(this,{name:e,type:n,localName:r,dynamic:s},{name:"string",type:"string",localName:"string",dynamic:"boolean"})}_throwError(e,n){D(!1,e,this.localName,n)}}class bc{#e;#t;constructor(){this.#e=[],this.#t=0}get data(){return De(this.#e)}get length(){return this.#t}#n(e){return this.#e.push(e),this.#t+=e.length,e.length}appendWriter(e){return this.#n(rt(e.data))}writeBytes(e){let n=rt(e);const r=n.length%lt;return r&&(n=rt(De([n,hc.slice(r)]))),this.#n(n)}writeValue(e){return this.#n(y0(e))}writeUpdatableValue(){const e=this.#e.length;return this.#e.push(hc),this.#t+=lt,n=>{this.#e[e]=y0(n)}}}class Sl{allowLoose;#e;#t;#n;#r;#s;constructor(e,n,r){ee(this,{allowLoose:!!n}),this.#e=rt(e),this.#n=0,this.#r=null,this.#s=r??1024,this.#t=0}get data(){return K(this.#e)}get dataLength(){return this.#e.length}get consumed(){return this.#t}get bytes(){return new Uint8Array(this.#e)}#a(e){if(this.#r)return this.#r.#a(e);this.#n+=e,W(this.#s<1||this.#n<=this.#s*this.dataLength,`compressed ABI data exceeds inflation ratio of ${this.#s} ( see: https://github.com/ethers-io/ethers.js/issues/4537 )`,"BUFFER_OVERRUN",{buffer:rt(this.#e),offset:this.#t,length:e,info:{bytesRead:this.#n,dataLength:this.dataLength}})}#i(e,n,r){let s=Math.ceil(n/lt)*lt;return this.#t+s>this.#e.length&&(this.allowLoose&&r&&this.#t+n<=this.#e.length?s=n:W(!1,"data out-of-bounds","BUFFER_OVERRUN",{buffer:rt(this.#e),length:this.#e.length,offset:this.#t+s})),this.#e.slice(this.#t,this.#t+s)}subReader(e){const n=new Sl(this.#e.slice(this.#t+e),this.allowLoose,this.#s);return n.#r=this,n}readBytes(e,n){let r=this.#i(0,e,!!n);return this.#a(e),this.#t+=r.length,r.slice(0,e)}readValue(){return Va(this.readBytes(lt))}readIndex(){return g5(this.readBytes(lt))}}function Ln(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Tl(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function u1(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Ln(t.outputLen),Ln(t.blockLen)}function $r(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function f1(t,e){Tl(t);const n=e.outputLen;if(t.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}const wo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const h1=t=>t instanceof Uint8Array,m1=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),qi=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),jt=(t,e)=>t<<32-e|t>>>e,M5=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!M5)throw new Error("Non little-endian hardware is not supported");const L5=async()=>{};async function W5(t,e,n){let r=Date.now();for(let s=0;s<t;s++){n(s);const i=Date.now()-r;i>=0&&i<e||(await L5(),r+=i)}}function H5(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Jr(t){if(typeof t=="string"&&(t=H5(t)),!h1(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function z5(...t){const e=new Uint8Array(t.reduce((r,s)=>r+s.length,0));let n=0;return t.forEach(r=>{if(!h1(r))throw new Error("Uint8Array expected");e.set(r,n),n+=r.length}),e}class vl{clone(){return this._cloneInto()}}const G5={}.toString;function b1(t,e){if(e!==void 0&&G5.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(t,e)}function ja(t){const e=r=>t().update(Jr(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function V5(t=32){if(wo&&typeof wo.getRandomValues=="function")return wo.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}class p1 extends vl{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,u1(e);const r=Jr(n);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const s=this.blockLen,i=new Uint8Array(s);i.set(r.length>s?e.create().update(r).digest():r);for(let a=0;a<i.length;a++)i[a]^=54;this.iHash.update(i),this.oHash=e.create();for(let a=0;a<i.length;a++)i[a]^=106;this.oHash.update(i),i.fill(0)}update(e){return $r(this),this.iHash.update(e),this}digestInto(e){$r(this),Tl(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:s,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=s,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const qa=(t,e,n)=>new p1(t,e).update(n).digest();qa.create=(t,e)=>new p1(t,e);function _5(t,e,n,r){u1(t);const s=b1({dkLen:32,asyncTick:10},r),{c:i,dkLen:a,asyncTick:o}=s;if(Ln(i),Ln(a),Ln(o),i<1)throw new Error("PBKDF2: iterations (c) should be >= 1");const c=Jr(e),d=Jr(n),l=new Uint8Array(a),f=qa.create(t,c),m=f._cloneInto().update(d);return{c:i,dkLen:a,asyncTick:o,DK:l,PRF:f,PRFSalt:m}}function j5(t,e,n,r,s){return t.destroy(),e.destroy(),r&&r.destroy(),s.fill(0),n}function g1(t,e,n,r){const{c:s,dkLen:i,DK:a,PRF:o,PRFSalt:c}=_5(t,e,n,r);let d;const l=new Uint8Array(4),f=qi(l),m=new Uint8Array(o.outputLen);for(let b=1,w=0;w<i;b++,w+=o.outputLen){const E=a.subarray(w,w+o.outputLen);f.setInt32(0,b,!1),(d=c._cloneInto(d)).update(l).digestInto(m),E.set(m.subarray(0,E.length));for(let y=1;y<s;y++){o._cloneInto(d).update(m).digestInto(m);for(let p=0;p<E.length;p++)E[p]^=m[p]}}return j5(o,c,a,d,m)}function q5(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const s=BigInt(32),i=BigInt(4294967295),a=Number(n>>s&i),o=Number(n&i),c=r?4:0,d=r?0:4;t.setUint32(e+c,a,r),t.setUint32(e+d,o,r)}class Il extends vl{constructor(e,n,r,s){super(),this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=qi(this.buffer)}update(e){$r(this);const{view:n,buffer:r,blockLen:s}=this;e=Jr(e);const i=e.length;for(let a=0;a<i;){const o=Math.min(s-this.pos,i-a);if(o===s){const c=qi(e);for(;s<=i-a;a+=s)this.process(c,a);continue}r.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===s&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){$r(this),f1(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:i}=this;let{pos:a}=this;n[a++]=128,this.buffer.subarray(a).fill(0),this.padOffset>s-a&&(this.process(r,0),a=0);for(let f=a;f<s;f++)n[f]=0;q5(r,s-8,BigInt(this.length*8),i),this.process(r,0);const o=qi(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const d=c/4,l=this.get();if(d>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<d;f++)o.setUint32(4*f,l[f],i)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:s,finished:i,destroyed:a,pos:o}=this;return e.length=s,e.pos=o,e.finished=i,e.destroyed=a,s%n&&e.buffer.set(r),e}}const K5=(t,e,n)=>t&e^~t&n,Q5=(t,e,n)=>t&e^t&n^e&n,$5=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),vn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),In=new Uint32Array(64);class J5 extends Il{constructor(){super(64,32,8,!1),this.A=vn[0]|0,this.B=vn[1]|0,this.C=vn[2]|0,this.D=vn[3]|0,this.E=vn[4]|0,this.F=vn[5]|0,this.G=vn[6]|0,this.H=vn[7]|0}get(){const{A:e,B:n,C:r,D:s,E:i,F:a,G:o,H:c}=this;return[e,n,r,s,i,a,o,c]}set(e,n,r,s,i,a,o,c){this.A=e|0,this.B=n|0,this.C=r|0,this.D=s|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=c|0}process(e,n){for(let f=0;f<16;f++,n+=4)In[f]=e.getUint32(n,!1);for(let f=16;f<64;f++){const m=In[f-15],b=In[f-2],w=jt(m,7)^jt(m,18)^m>>>3,E=jt(b,17)^jt(b,19)^b>>>10;In[f]=E+In[f-7]+w+In[f-16]|0}let{A:r,B:s,C:i,D:a,E:o,F:c,G:d,H:l}=this;for(let f=0;f<64;f++){const m=jt(o,6)^jt(o,11)^jt(o,25),b=l+m+K5(o,c,d)+$5[f]+In[f]|0,E=(jt(r,2)^jt(r,13)^jt(r,22))+Q5(r,s,i)|0;l=d,d=c,c=o,o=a+b|0,a=i,i=s,s=r,r=b+E|0}r=r+this.A|0,s=s+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,c=c+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(r,s,i,a,o,c,d,l)}roundClean(){In.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const ai=ja(()=>new J5),Ci=BigInt(2**32-1),pc=BigInt(32);function y1(t,e=!1){return e?{h:Number(t&Ci),l:Number(t>>pc&Ci)}:{h:Number(t>>pc&Ci)|0,l:Number(t&Ci)|0}}function A1(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let s=0;s<t.length;s++){const{h:i,l:a}=y1(t[s],e);[n[s],r[s]]=[i,a]}return[n,r]}const X5=(t,e)=>BigInt(t>>>0)<<pc|BigInt(e>>>0),Y5=(t,e,n)=>t>>>n,Z5=(t,e,n)=>t<<32-n|e>>>n,ey=(t,e,n)=>t>>>n|e<<32-n,ty=(t,e,n)=>t<<32-n|e>>>n,ny=(t,e,n)=>t<<64-n|e>>>n-32,ry=(t,e,n)=>t>>>n-32|e<<64-n,sy=(t,e)=>e,iy=(t,e)=>t,E1=(t,e,n)=>t<<n|e>>>32-n,w1=(t,e,n)=>e<<n|t>>>32-n,B1=(t,e,n)=>e<<n-32|t>>>64-n,C1=(t,e,n)=>t<<n-32|e>>>64-n;function ay(t,e,n,r){const s=(e>>>0)+(r>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}const oy=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),cy=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,ly=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),dy=(t,e,n,r,s)=>e+n+r+s+(t/2**32|0)|0,uy=(t,e,n,r,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(s>>>0),fy=(t,e,n,r,s,i)=>e+n+r+s+i+(t/2**32|0)|0,ie={fromBig:y1,split:A1,toBig:X5,shrSH:Y5,shrSL:Z5,rotrSH:ey,rotrSL:ty,rotrBH:ny,rotrBL:ry,rotr32H:sy,rotr32L:iy,rotlSH:E1,rotlSL:w1,rotlBH:B1,rotlBL:C1,add:ay,add3L:oy,add3H:cy,add4L:ly,add4H:dy,add5H:fy,add5L:uy},[hy,my]=ie.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),kn=new Uint32Array(80),Un=new Uint32Array(80);class by extends Il{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:n,Bh:r,Bl:s,Ch:i,Cl:a,Dh:o,Dl:c,Eh:d,El:l,Fh:f,Fl:m,Gh:b,Gl:w,Hh:E,Hl:y}=this;return[e,n,r,s,i,a,o,c,d,l,f,m,b,w,E,y]}set(e,n,r,s,i,a,o,c,d,l,f,m,b,w,E,y){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=s|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=c|0,this.Eh=d|0,this.El=l|0,this.Fh=f|0,this.Fl=m|0,this.Gh=b|0,this.Gl=w|0,this.Hh=E|0,this.Hl=y|0}process(e,n){for(let A=0;A<16;A++,n+=4)kn[A]=e.getUint32(n),Un[A]=e.getUint32(n+=4);for(let A=16;A<80;A++){const S=kn[A-15]|0,T=Un[A-15]|0,U=ie.rotrSH(S,T,1)^ie.rotrSH(S,T,8)^ie.shrSH(S,T,7),R=ie.rotrSL(S,T,1)^ie.rotrSL(S,T,8)^ie.shrSL(S,T,7),v=kn[A-2]|0,M=Un[A-2]|0,V=ie.rotrSH(v,M,19)^ie.rotrBH(v,M,61)^ie.shrSH(v,M,6),Q=ie.rotrSL(v,M,19)^ie.rotrBL(v,M,61)^ie.shrSL(v,M,6),q=ie.add4L(R,Q,Un[A-7],Un[A-16]),N=ie.add4H(q,U,V,kn[A-7],kn[A-16]);kn[A]=N|0,Un[A]=q|0}let{Ah:r,Al:s,Bh:i,Bl:a,Ch:o,Cl:c,Dh:d,Dl:l,Eh:f,El:m,Fh:b,Fl:w,Gh:E,Gl:y,Hh:p,Hl:x}=this;for(let A=0;A<80;A++){const S=ie.rotrSH(f,m,14)^ie.rotrSH(f,m,18)^ie.rotrBH(f,m,41),T=ie.rotrSL(f,m,14)^ie.rotrSL(f,m,18)^ie.rotrBL(f,m,41),U=f&b^~f&E,R=m&w^~m&y,v=ie.add5L(x,T,R,my[A],Un[A]),M=ie.add5H(v,p,S,U,hy[A],kn[A]),V=v|0,Q=ie.rotrSH(r,s,28)^ie.rotrBH(r,s,34)^ie.rotrBH(r,s,39),q=ie.rotrSL(r,s,28)^ie.rotrBL(r,s,34)^ie.rotrBL(r,s,39),N=r&i^r&o^i&o,O=s&a^s&c^a&c;p=E|0,x=y|0,E=b|0,y=w|0,b=f|0,w=m|0,{h:f,l:m}=ie.add(d|0,l|0,M|0,V|0),d=o|0,l=c|0,o=i|0,c=a|0,i=r|0,a=s|0;const C=ie.add3L(V,q,O);r=ie.add3H(C,M,Q,N),s=C|0}({h:r,l:s}=ie.add(this.Ah|0,this.Al|0,r|0,s|0)),{h:i,l:a}=ie.add(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:c}=ie.add(this.Ch|0,this.Cl|0,o|0,c|0),{h:d,l}=ie.add(this.Dh|0,this.Dl|0,d|0,l|0),{h:f,l:m}=ie.add(this.Eh|0,this.El|0,f|0,m|0),{h:b,l:w}=ie.add(this.Fh|0,this.Fl|0,b|0,w|0),{h:E,l:y}=ie.add(this.Gh|0,this.Gl|0,E|0,y|0),{h:p,l:x}=ie.add(this.Hh|0,this.Hl|0,p|0,x|0),this.set(r,s,i,a,o,c,d,l,f,m,b,w,E,y,p,x)}roundClean(){kn.fill(0),Un.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}const kl=ja(()=>new by);function py(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof ca<"u")return ca;throw new Error("unable to locate global object")}const A0=py(),E0=A0.crypto||A0.msCrypto;function gy(t){switch(t){case"sha256":return ai.create();case"sha512":return kl.create()}D(!1,"invalid hashing algorithm name","algorithm",t)}function yy(t,e){const n={sha256:ai,sha512:kl}[t];return D(n!=null,"invalid hmac algorithm","algorithm",t),qa.create(n,e)}function Ay(t,e,n,r,s){const i={sha256:ai,sha512:kl}[s];return D(i!=null,"invalid pbkdf2 algorithm","algorithm",s),g1(i,t,e,{c:n,dkLen:r})}function Ey(t){W(E0!=null,"platform does not support secure random numbers","UNSUPPORTED_OPERATION",{operation:"randomBytes"}),D(Number.isInteger(t)&&t>0&&t<=1024,"invalid length","length",t);const e=new Uint8Array(t);return E0.getRandomValues(e),e}const[x1,D1,F1]=[[],[],[]],wy=BigInt(0),As=BigInt(1),By=BigInt(2),Cy=BigInt(7),xy=BigInt(256),Dy=BigInt(113);for(let t=0,e=As,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],x1.push(2*(5*r+n)),D1.push((t+1)*(t+2)/2%64);let s=wy;for(let i=0;i<7;i++)e=(e<<As^(e>>Cy)*Dy)%xy,e&By&&(s^=As<<(As<<BigInt(i))-As);F1.push(s)}const[Fy,Sy]=A1(F1,!0),w0=(t,e,n)=>n>32?B1(t,e,n):E1(t,e,n),B0=(t,e,n)=>n>32?C1(t,e,n):w1(t,e,n);function Ty(t,e=24){const n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let a=0;a<10;a++)n[a]=t[a]^t[a+10]^t[a+20]^t[a+30]^t[a+40];for(let a=0;a<10;a+=2){const o=(a+8)%10,c=(a+2)%10,d=n[c],l=n[c+1],f=w0(d,l,1)^n[o],m=B0(d,l,1)^n[o+1];for(let b=0;b<50;b+=10)t[a+b]^=f,t[a+b+1]^=m}let s=t[2],i=t[3];for(let a=0;a<24;a++){const o=D1[a],c=w0(s,i,o),d=B0(s,i,o),l=x1[a];s=t[l],i=t[l+1],t[l]=c,t[l+1]=d}for(let a=0;a<50;a+=10){for(let o=0;o<10;o++)n[o]=t[a+o];for(let o=0;o<10;o++)t[a+o]^=~n[(o+2)%10]&n[(o+4)%10]}t[0]^=Fy[r],t[1]^=Sy[r]}n.fill(0)}class Ul extends vl{constructor(e,n,r,s=!1,i=24){if(super(),this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=s,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Ln(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=m1(this.state)}keccak(){Ty(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){$r(this);const{blockLen:n,state:r}=this;e=Jr(e);const s=e.length;for(let i=0;i<s;){const a=Math.min(n-this.pos,s-i);for(let o=0;o<a;o++)r[this.pos++]^=e[i++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:n,pos:r,blockLen:s}=this;e[r]^=n,(n&128)!==0&&r===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){$r(this,!1),Tl(e),this.finish();const n=this.state,{blockLen:r}=this;for(let s=0,i=e.length;s<i;){this.posOut>=r&&this.keccak();const a=Math.min(r-this.posOut,i-s);e.set(n.subarray(this.posOut,this.posOut+a),s),this.posOut+=a,s+=a}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Ln(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(f1(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:n,suffix:r,outputLen:s,rounds:i,enableXOF:a}=this;return e||(e=new Ul(n,r,s,a,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=s,e.enableXOF=a,e.destroyed=this.destroyed,e}}const vy=(t,e,n)=>ja(()=>new Ul(e,t,n)),Iy=vy(1,136,256/8);let S1=!1;const T1=function(t){return Iy(t)};let v1=T1;function Ne(t){const e=ce(t,"data");return K(v1(e))}Ne._=T1;Ne.lock=function(){S1=!0};Ne.register=function(t){if(S1)throw new TypeError("keccak256 is locked");v1=t};Object.freeze(Ne);const I1=function(t){return gy("sha256").update(t).digest()};let k1=I1,U1=!1;function Br(t){const e=ce(t,"data");return K(k1(e))}Br._=I1;Br.lock=function(){U1=!0};Br.register=function(t){if(U1)throw new Error("sha256 is locked");k1=t};Object.freeze(Br);Object.freeze(Br);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const P1=BigInt(0),Ka=BigInt(1),ky=BigInt(2),Qa=t=>t instanceof Uint8Array,Uy=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Xr(t){if(!Qa(t))throw new Error("Uint8Array expected");let e="";for(let n=0;n<t.length;n++)e+=Uy[t[n]];return e}function N1(t){const e=t.toString(16);return e.length&1?`0${e}`:e}function Pl(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function Yr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);const e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);const n=new Uint8Array(e/2);for(let r=0;r<n.length;r++){const s=r*2,i=t.slice(s,s+2),a=Number.parseInt(i,16);if(Number.isNaN(a)||a<0)throw new Error("Invalid byte sequence");n[r]=a}return n}function cr(t){return Pl(Xr(t))}function Nl(t){if(!Qa(t))throw new Error("Uint8Array expected");return Pl(Xr(Uint8Array.from(t).reverse()))}function Zr(t,e){return Yr(t.toString(16).padStart(e*2,"0"))}function Rl(t,e){return Zr(t,e).reverse()}function Py(t){return Yr(N1(t))}function Ut(t,e,n){let r;if(typeof e=="string")try{r=Yr(e)}catch(i){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${i}`)}else if(Qa(e))r=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);const s=r.length;if(typeof n=="number"&&s!==n)throw new Error(`${t} expected ${n} bytes, got ${s}`);return r}function Ws(...t){const e=new Uint8Array(t.reduce((r,s)=>r+s.length,0));let n=0;return t.forEach(r=>{if(!Qa(r))throw new Error("Uint8Array expected");e.set(r,n),n+=r.length}),e}function Ny(t,e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}function Ry(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Oy(t){let e;for(e=0;t>P1;t>>=Ka,e+=1);return e}function My(t,e){return t>>BigInt(e)&Ka}const Ly=(t,e,n)=>t|(n?Ka:P1)<<BigInt(e),Ol=t=>(ky<<BigInt(t-1))-Ka,Bo=t=>new Uint8Array(t),C0=t=>Uint8Array.from(t);function R1(t,e,n){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");let r=Bo(t),s=Bo(t),i=0;const a=()=>{r.fill(1),s.fill(0),i=0},o=(...f)=>n(s,r,...f),c=(f=Bo())=>{s=o(C0([0]),f),r=o(),f.length!==0&&(s=o(C0([1]),f),r=o())},d=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let f=0;const m=[];for(;f<e;){r=o();const b=r.slice();m.push(b),f+=r.length}return Ws(...m)};return(f,m)=>{a(),c(f);let b;for(;!(b=m(d()));)c();return a(),b}}const Wy={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function oi(t,e,n={}){const r=(s,i,a)=>{const o=Wy[i];if(typeof o!="function")throw new Error(`Invalid validator "${i}", expected function`);const c=t[s];if(!(a&&c===void 0)&&!o(c,t))throw new Error(`Invalid param ${String(s)}=${c} (${typeof c}), expected ${i}`)};for(const[s,i]of Object.entries(e))r(s,i,!1);for(const[s,i]of Object.entries(n))r(s,i,!0);return t}const Hy=Object.freeze(Object.defineProperty({__proto__:null,bitGet:My,bitLen:Oy,bitMask:Ol,bitSet:Ly,bytesToHex:Xr,bytesToNumberBE:cr,bytesToNumberLE:Nl,concatBytes:Ws,createHmacDrbg:R1,ensureBytes:Ut,equalBytes:Ny,hexToBytes:Yr,hexToNumber:Pl,numberToBytesBE:Zr,numberToBytesLE:Rl,numberToHexUnpadded:N1,numberToVarBytesBE:Py,utf8ToBytes:Ry,validateObject:oi},Symbol.toStringTag,{value:"Module"}));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const qe=BigInt(0),Oe=BigInt(1),Kn=BigInt(2),zy=BigInt(3),gc=BigInt(4),x0=BigInt(5),D0=BigInt(8);BigInt(9);BigInt(16);function ht(t,e){const n=t%e;return n>=qe?n:e+n}function Gy(t,e,n){if(n<=qe||e<qe)throw new Error("Expected power/modulo > 0");if(n===Oe)return qe;let r=Oe;for(;e>qe;)e&Oe&&(r=r*t%n),t=t*t%n,e>>=Oe;return r}function Dt(t,e,n){let r=t;for(;e-- >qe;)r*=r,r%=n;return r}function yc(t,e){if(t===qe||e<=qe)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let n=ht(t,e),r=e,s=qe,i=Oe;for(;n!==qe;){const o=r/n,c=r%n,d=s-i*o;r=n,n=c,s=i,i=d}if(r!==Oe)throw new Error("invert: does not exist");return ht(s,e)}function Vy(t){const e=(t-Oe)/Kn;let n,r,s;for(n=t-Oe,r=0;n%Kn===qe;n/=Kn,r++);for(s=Kn;s<t&&Gy(s,e,t)!==t-Oe;s++);if(r===1){const a=(t+Oe)/gc;return function(c,d){const l=c.pow(d,a);if(!c.eql(c.sqr(l),d))throw new Error("Cannot find square root");return l}}const i=(n+Oe)/Kn;return function(o,c){if(o.pow(c,e)===o.neg(o.ONE))throw new Error("Cannot find square root");let d=r,l=o.pow(o.mul(o.ONE,s),n),f=o.pow(c,i),m=o.pow(c,n);for(;!o.eql(m,o.ONE);){if(o.eql(m,o.ZERO))return o.ZERO;let b=1;for(let E=o.sqr(m);b<d&&!o.eql(E,o.ONE);b++)E=o.sqr(E);const w=o.pow(l,Oe<<BigInt(d-b-1));l=o.sqr(w),f=o.mul(f,w),m=o.mul(m,l),d=b}return f}}function _y(t){if(t%gc===zy){const e=(t+Oe)/gc;return function(r,s){const i=r.pow(s,e);if(!r.eql(r.sqr(i),s))throw new Error("Cannot find square root");return i}}if(t%D0===x0){const e=(t-x0)/D0;return function(r,s){const i=r.mul(s,Kn),a=r.pow(i,e),o=r.mul(s,a),c=r.mul(r.mul(o,Kn),a),d=r.mul(o,r.sub(c,r.ONE));if(!r.eql(r.sqr(d),s))throw new Error("Cannot find square root");return d}}return Vy(t)}const jy=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function qy(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=jy.reduce((r,s)=>(r[s]="function",r),e);return oi(t,n)}function Ky(t,e,n){if(n<qe)throw new Error("Expected power > 0");if(n===qe)return t.ONE;if(n===Oe)return e;let r=t.ONE,s=e;for(;n>qe;)n&Oe&&(r=t.mul(r,s)),s=t.sqr(s),n>>=Oe;return r}function Qy(t,e){const n=new Array(e.length),r=e.reduce((i,a,o)=>t.is0(a)?i:(n[o]=i,t.mul(i,a)),t.ONE),s=t.inv(r);return e.reduceRight((i,a,o)=>t.is0(a)?i:(n[o]=t.mul(i,n[o]),t.mul(i,a)),s),n}function O1(t,e){const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function $y(t,e,n=!1,r={}){if(t<=qe)throw new Error(`Expected Field ORDER > 0, got ${t}`);const{nBitLength:s,nByteLength:i}=O1(t,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");const a=_y(t),o=Object.freeze({ORDER:t,BITS:s,BYTES:i,MASK:Ol(s),ZERO:qe,ONE:Oe,create:c=>ht(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return qe<=c&&c<t},is0:c=>c===qe,isOdd:c=>(c&Oe)===Oe,neg:c=>ht(-c,t),eql:(c,d)=>c===d,sqr:c=>ht(c*c,t),add:(c,d)=>ht(c+d,t),sub:(c,d)=>ht(c-d,t),mul:(c,d)=>ht(c*d,t),pow:(c,d)=>Ky(o,c,d),div:(c,d)=>ht(c*yc(d,t),t),sqrN:c=>c*c,addN:(c,d)=>c+d,subN:(c,d)=>c-d,mulN:(c,d)=>c*d,inv:c=>yc(c,t),sqrt:r.sqrt||(c=>a(o,c)),invertBatch:c=>Qy(o,c),cmov:(c,d,l)=>l?d:c,toBytes:c=>n?Rl(c,i):Zr(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return n?Nl(c):cr(c)}});return Object.freeze(o)}function M1(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function L1(t){const e=M1(t);return e+Math.ceil(e/2)}function Jy(t,e,n=!1){const r=t.length,s=M1(e),i=L1(e);if(r<16||r<i||r>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${r}`);const a=n?cr(t):Nl(t),o=ht(a,e-Oe)+Oe;return n?Rl(o,s):Zr(o,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Xy=BigInt(0),Co=BigInt(1);function Yy(t,e){const n=(s,i)=>{const a=i.negate();return s?a:i},r=s=>{const i=Math.ceil(e/s)+1,a=2**(s-1);return{windows:i,windowSize:a}};return{constTimeNegate:n,unsafeLadder(s,i){let a=t.ZERO,o=s;for(;i>Xy;)i&Co&&(a=a.add(o)),o=o.double(),i>>=Co;return a},precomputeWindow(s,i){const{windows:a,windowSize:o}=r(i),c=[];let d=s,l=d;for(let f=0;f<a;f++){l=d,c.push(l);for(let m=1;m<o;m++)l=l.add(d),c.push(l);d=l.double()}return c},wNAF(s,i,a){const{windows:o,windowSize:c}=r(s);let d=t.ZERO,l=t.BASE;const f=BigInt(2**s-1),m=2**s,b=BigInt(s);for(let w=0;w<o;w++){const E=w*c;let y=Number(a&f);a>>=b,y>c&&(y-=m,a+=Co);const p=E,x=E+Math.abs(y)-1,A=w%2!==0,S=y<0;y===0?l=l.add(n(A,i[p])):d=d.add(n(S,i[x]))}return{p:d,f:l}},wNAFCached(s,i,a,o){const c=s._WINDOW_SIZE||1;let d=i.get(s);return d||(d=this.precomputeWindow(s,c),c!==1&&i.set(s,o(d))),this.wNAF(c,d,a)}}}function W1(t){return qy(t.Fp),oi(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...O1(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Zy(t){const e=W1(t);oi(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:r,a:s}=e;if(n){if(!r.eql(s,r.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}const{bytesToNumberBE:e3,hexToBytes:t3}=Hy,er={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){const{Err:e}=er;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");const n=t[1],r=t.subarray(2,n+2);if(!n||r.length!==n)throw new e("Invalid signature integer: wrong length");if(r[0]&128)throw new e("Invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:e3(r),l:t.subarray(n+2)}},toSig(t){const{Err:e}=er,n=typeof t=="string"?t3(t):t;if(!(n instanceof Uint8Array))throw new Error("ui8a expected");let r=n.length;if(r<2||n[0]!=48)throw new e("Invalid signature tag");if(n[1]!==r-2)throw new e("Invalid signature: incorrect length");const{d:s,l:i}=er._parseInt(n.subarray(2)),{d:a,l:o}=er._parseInt(i);if(o.length)throw new e("Invalid signature: left bytes after parsing");return{r:s,s:a}},hexFromSig(t){const e=d=>Number.parseInt(d[0],16)&8?"00"+d:d,n=d=>{const l=d.toString(16);return l.length&1?`0${l}`:l},r=e(n(t.s)),s=e(n(t.r)),i=r.length/2,a=s.length/2,o=n(i),c=n(a);return`30${n(a+i+4)}02${c}${s}02${o}${r}`}},un=BigInt(0),Tt=BigInt(1);BigInt(2);const F0=BigInt(3);BigInt(4);function n3(t){const e=Zy(t),{Fp:n}=e,r=e.toBytes||((w,E,y)=>{const p=E.toAffine();return Ws(Uint8Array.from([4]),n.toBytes(p.x),n.toBytes(p.y))}),s=e.fromBytes||(w=>{const E=w.subarray(1),y=n.fromBytes(E.subarray(0,n.BYTES)),p=n.fromBytes(E.subarray(n.BYTES,2*n.BYTES));return{x:y,y:p}});function i(w){const{a:E,b:y}=e,p=n.sqr(w),x=n.mul(p,w);return n.add(n.add(x,n.mul(w,E)),y)}if(!n.eql(n.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function a(w){return typeof w=="bigint"&&un<w&&w<e.n}function o(w){if(!a(w))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(w){const{allowedPrivateKeyLengths:E,nByteLength:y,wrapPrivateKey:p,n:x}=e;if(E&&typeof w!="bigint"){if(w instanceof Uint8Array&&(w=Xr(w)),typeof w!="string"||!E.includes(w.length))throw new Error("Invalid key");w=w.padStart(y*2,"0")}let A;try{A=typeof w=="bigint"?w:cr(Ut("private key",w,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof w}`)}return p&&(A=ht(A,x)),o(A),A}const d=new Map;function l(w){if(!(w instanceof f))throw new Error("ProjectivePoint expected")}class f{constructor(E,y,p){if(this.px=E,this.py=y,this.pz=p,E==null||!n.isValid(E))throw new Error("x required");if(y==null||!n.isValid(y))throw new Error("y required");if(p==null||!n.isValid(p))throw new Error("z required")}static fromAffine(E){const{x:y,y:p}=E||{};if(!E||!n.isValid(y)||!n.isValid(p))throw new Error("invalid affine point");if(E instanceof f)throw new Error("projective point not allowed");const x=A=>n.eql(A,n.ZERO);return x(y)&&x(p)?f.ZERO:new f(y,p,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(E){const y=n.invertBatch(E.map(p=>p.pz));return E.map((p,x)=>p.toAffine(y[x])).map(f.fromAffine)}static fromHex(E){const y=f.fromAffine(s(Ut("pointHex",E)));return y.assertValidity(),y}static fromPrivateKey(E){return f.BASE.multiply(c(E))}_setWindowSize(E){this._WINDOW_SIZE=E,d.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!n.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:E,y}=this.toAffine();if(!n.isValid(E)||!n.isValid(y))throw new Error("bad point: x or y not FE");const p=n.sqr(y),x=i(E);if(!n.eql(p,x))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:E}=this.toAffine();if(n.isOdd)return!n.isOdd(E);throw new Error("Field doesn't support isOdd")}equals(E){l(E);const{px:y,py:p,pz:x}=this,{px:A,py:S,pz:T}=E,U=n.eql(n.mul(y,T),n.mul(A,x)),R=n.eql(n.mul(p,T),n.mul(S,x));return U&&R}negate(){return new f(this.px,n.neg(this.py),this.pz)}double(){const{a:E,b:y}=e,p=n.mul(y,F0),{px:x,py:A,pz:S}=this;let T=n.ZERO,U=n.ZERO,R=n.ZERO,v=n.mul(x,x),M=n.mul(A,A),V=n.mul(S,S),Q=n.mul(x,A);return Q=n.add(Q,Q),R=n.mul(x,S),R=n.add(R,R),T=n.mul(E,R),U=n.mul(p,V),U=n.add(T,U),T=n.sub(M,U),U=n.add(M,U),U=n.mul(T,U),T=n.mul(Q,T),R=n.mul(p,R),V=n.mul(E,V),Q=n.sub(v,V),Q=n.mul(E,Q),Q=n.add(Q,R),R=n.add(v,v),v=n.add(R,v),v=n.add(v,V),v=n.mul(v,Q),U=n.add(U,v),V=n.mul(A,S),V=n.add(V,V),v=n.mul(V,Q),T=n.sub(T,v),R=n.mul(V,M),R=n.add(R,R),R=n.add(R,R),new f(T,U,R)}add(E){l(E);const{px:y,py:p,pz:x}=this,{px:A,py:S,pz:T}=E;let U=n.ZERO,R=n.ZERO,v=n.ZERO;const M=e.a,V=n.mul(e.b,F0);let Q=n.mul(y,A),q=n.mul(p,S),N=n.mul(x,T),O=n.add(y,p),C=n.add(A,S);O=n.mul(O,C),C=n.add(Q,q),O=n.sub(O,C),C=n.add(y,x);let k=n.add(A,T);return C=n.mul(C,k),k=n.add(Q,N),C=n.sub(C,k),k=n.add(p,x),U=n.add(S,T),k=n.mul(k,U),U=n.add(q,N),k=n.sub(k,U),v=n.mul(M,C),U=n.mul(V,N),v=n.add(U,v),U=n.sub(q,v),v=n.add(q,v),R=n.mul(U,v),q=n.add(Q,Q),q=n.add(q,Q),N=n.mul(M,N),C=n.mul(V,C),q=n.add(q,N),N=n.sub(Q,N),N=n.mul(M,N),C=n.add(C,N),Q=n.mul(q,C),R=n.add(R,Q),Q=n.mul(k,C),U=n.mul(O,U),U=n.sub(U,Q),Q=n.mul(O,q),v=n.mul(k,v),v=n.add(v,Q),new f(U,R,v)}subtract(E){return this.add(E.negate())}is0(){return this.equals(f.ZERO)}wNAF(E){return b.wNAFCached(this,d,E,y=>{const p=n.invertBatch(y.map(x=>x.pz));return y.map((x,A)=>x.toAffine(p[A])).map(f.fromAffine)})}multiplyUnsafe(E){const y=f.ZERO;if(E===un)return y;if(o(E),E===Tt)return this;const{endo:p}=e;if(!p)return b.unsafeLadder(this,E);let{k1neg:x,k1:A,k2neg:S,k2:T}=p.splitScalar(E),U=y,R=y,v=this;for(;A>un||T>un;)A&Tt&&(U=U.add(v)),T&Tt&&(R=R.add(v)),v=v.double(),A>>=Tt,T>>=Tt;return x&&(U=U.negate()),S&&(R=R.negate()),R=new f(n.mul(R.px,p.beta),R.py,R.pz),U.add(R)}multiply(E){o(E);let y=E,p,x;const{endo:A}=e;if(A){const{k1neg:S,k1:T,k2neg:U,k2:R}=A.splitScalar(y);let{p:v,f:M}=this.wNAF(T),{p:V,f:Q}=this.wNAF(R);v=b.constTimeNegate(S,v),V=b.constTimeNegate(U,V),V=new f(n.mul(V.px,A.beta),V.py,V.pz),p=v.add(V),x=M.add(Q)}else{const{p:S,f:T}=this.wNAF(y);p=S,x=T}return f.normalizeZ([p,x])[0]}multiplyAndAddUnsafe(E,y,p){const x=f.BASE,A=(T,U)=>U===un||U===Tt||!T.equals(x)?T.multiplyUnsafe(U):T.multiply(U),S=A(this,y).add(A(E,p));return S.is0()?void 0:S}toAffine(E){const{px:y,py:p,pz:x}=this,A=this.is0();E==null&&(E=A?n.ONE:n.inv(x));const S=n.mul(y,E),T=n.mul(p,E),U=n.mul(x,E);if(A)return{x:n.ZERO,y:n.ZERO};if(!n.eql(U,n.ONE))throw new Error("invZ was invalid");return{x:S,y:T}}isTorsionFree(){const{h:E,isTorsionFree:y}=e;if(E===Tt)return!0;if(y)return y(f,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:E,clearCofactor:y}=e;return E===Tt?this:y?y(f,this):this.multiplyUnsafe(e.h)}toRawBytes(E=!0){return this.assertValidity(),r(f,this,E)}toHex(E=!0){return Xr(this.toRawBytes(E))}}f.BASE=new f(e.Gx,e.Gy,n.ONE),f.ZERO=new f(n.ZERO,n.ONE,n.ZERO);const m=e.nBitLength,b=Yy(f,e.endo?Math.ceil(m/2):m);return{CURVE:e,ProjectivePoint:f,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:a}}function r3(t){const e=W1(t);return oi(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function s3(t){const e=r3(t),{Fp:n,n:r}=e,s=n.BYTES+1,i=2*n.BYTES+1;function a(C){return un<C&&C<n.ORDER}function o(C){return ht(C,r)}function c(C){return yc(C,r)}const{ProjectivePoint:d,normPrivateKeyToScalar:l,weierstrassEquation:f,isWithinCurveOrder:m}=n3({...e,toBytes(C,k,H){const G=k.toAffine(),z=n.toBytes(G.x),j=Ws;return H?j(Uint8Array.from([k.hasEvenY()?2:3]),z):j(Uint8Array.from([4]),z,n.toBytes(G.y))},fromBytes(C){const k=C.length,H=C[0],G=C.subarray(1);if(k===s&&(H===2||H===3)){const z=cr(G);if(!a(z))throw new Error("Point is not on curve");const j=f(z);let J=n.sqrt(j);const Y=(J&Tt)===Tt;return(H&1)===1!==Y&&(J=n.neg(J)),{x:z,y:J}}else if(k===i&&H===4){const z=n.fromBytes(G.subarray(0,n.BYTES)),j=n.fromBytes(G.subarray(n.BYTES,2*n.BYTES));return{x:z,y:j}}else throw new Error(`Point of length ${k} was invalid. Expected ${s} compressed bytes or ${i} uncompressed bytes`)}}),b=C=>Xr(Zr(C,e.nByteLength));function w(C){const k=r>>Tt;return C>k}function E(C){return w(C)?o(-C):C}const y=(C,k,H)=>cr(C.slice(k,H));class p{constructor(k,H,G){this.r=k,this.s=H,this.recovery=G,this.assertValidity()}static fromCompact(k){const H=e.nByteLength;return k=Ut("compactSignature",k,H*2),new p(y(k,0,H),y(k,H,2*H))}static fromDER(k){const{r:H,s:G}=er.toSig(Ut("DER",k));return new p(H,G)}assertValidity(){if(!m(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!m(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(k){return new p(this.r,this.s,k)}recoverPublicKey(k){const{r:H,s:G,recovery:z}=this,j=R(Ut("msgHash",k));if(z==null||![0,1,2,3].includes(z))throw new Error("recovery id invalid");const J=z===2||z===3?H+e.n:H;if(J>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const Y=(z&1)===0?"02":"03",me=d.fromHex(Y+b(J)),Z=c(J),_=o(-j*Z),te=o(G*Z),le=d.BASE.multiplyAndAddUnsafe(me,_,te);if(!le)throw new Error("point at infinify");return le.assertValidity(),le}hasHighS(){return w(this.s)}normalizeS(){return this.hasHighS()?new p(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return Yr(this.toDERHex())}toDERHex(){return er.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Yr(this.toCompactHex())}toCompactHex(){return b(this.r)+b(this.s)}}const x={isValidPrivateKey(C){try{return l(C),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const C=L1(e.n);return Jy(e.randomBytes(C),e.n)},precompute(C=8,k=d.BASE){return k._setWindowSize(C),k.multiply(BigInt(3)),k}};function A(C,k=!0){return d.fromPrivateKey(C).toRawBytes(k)}function S(C){const k=C instanceof Uint8Array,H=typeof C=="string",G=(k||H)&&C.length;return k?G===s||G===i:H?G===2*s||G===2*i:C instanceof d}function T(C,k,H=!0){if(S(C))throw new Error("first arg must be private key");if(!S(k))throw new Error("second arg must be public key");return d.fromHex(k).multiply(l(C)).toRawBytes(H)}const U=e.bits2int||function(C){const k=cr(C),H=C.length*8-e.nBitLength;return H>0?k>>BigInt(H):k},R=e.bits2int_modN||function(C){return o(U(C))},v=Ol(e.nBitLength);function M(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(un<=C&&C<v))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Zr(C,e.nByteLength)}function V(C,k,H=Q){if(["recovered","canonical"].some(oe=>oe in H))throw new Error("sign() legacy options not supported");const{hash:G,randomBytes:z}=e;let{lowS:j,prehash:J,extraEntropy:Y}=H;j==null&&(j=!0),C=Ut("msgHash",C),J&&(C=Ut("prehashed msgHash",G(C)));const me=R(C),Z=l(k),_=[M(Z),M(me)];if(Y!=null){const oe=Y===!0?z(n.BYTES):Y;_.push(Ut("extraEntropy",oe))}const te=Ws(..._),le=me;function ge(oe){const ye=U(oe);if(!m(ye))return;const Ke=c(ye),He=d.BASE.multiply(ye).toAffine(),ot=o(He.x);if(ot===un)return;const xr=o(Ke*o(le+ot*Z));if(xr===un)return;let hs=(He.x===ot?0:2)|Number(He.y&Tt),rn=xr;return j&&w(xr)&&(rn=E(xr),hs^=1),new p(ot,rn,hs)}return{seed:te,k2sig:ge}}const Q={lowS:e.lowS,prehash:!1},q={lowS:e.lowS,prehash:!1};function N(C,k,H=Q){const{seed:G,k2sig:z}=V(C,k,H),j=e;return R1(j.hash.outputLen,j.nByteLength,j.hmac)(G,z)}d.BASE._setWindowSize(8);function O(C,k,H,G=q){const z=C;if(k=Ut("msgHash",k),H=Ut("publicKey",H),"strict"in G)throw new Error("options.strict was renamed to lowS");const{lowS:j,prehash:J}=G;let Y,me;try{if(typeof z=="string"||z instanceof Uint8Array)try{Y=p.fromDER(z)}catch(He){if(!(He instanceof er.Err))throw He;Y=p.fromCompact(z)}else if(typeof z=="object"&&typeof z.r=="bigint"&&typeof z.s=="bigint"){const{r:He,s:ot}=z;Y=new p(He,ot)}else throw new Error("PARSE");me=d.fromHex(H)}catch(He){if(He.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(j&&Y.hasHighS())return!1;J&&(k=e.hash(k));const{r:Z,s:_}=Y,te=R(k),le=c(_),ge=o(te*le),oe=o(Z*le),ye=d.BASE.multiplyAndAddUnsafe(me,ge,oe)?.toAffine();return ye?o(ye.x)===Z:!1}return{CURVE:e,getPublicKey:A,getSharedSecret:T,sign:N,verify:O,ProjectivePoint:d,Signature:p,utils:x}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function i3(t){return{hash:t,hmac:(e,...n)=>qa(t,e,z5(...n)),randomBytes:V5}}function a3(t,e){const n=r=>s3({...t,...i3(r)});return Object.freeze({...n(e),create:n})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const H1=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),S0=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),o3=BigInt(1),Ac=BigInt(2),T0=(t,e)=>(t+e/Ac)/e;function c3(t){const e=H1,n=BigInt(3),r=BigInt(6),s=BigInt(11),i=BigInt(22),a=BigInt(23),o=BigInt(44),c=BigInt(88),d=t*t*t%e,l=d*d*t%e,f=Dt(l,n,e)*l%e,m=Dt(f,n,e)*l%e,b=Dt(m,Ac,e)*d%e,w=Dt(b,s,e)*b%e,E=Dt(w,i,e)*w%e,y=Dt(E,o,e)*E%e,p=Dt(y,c,e)*y%e,x=Dt(p,o,e)*E%e,A=Dt(x,n,e)*l%e,S=Dt(A,a,e)*w%e,T=Dt(S,r,e)*d%e,U=Dt(T,Ac,e);if(!Ec.eql(Ec.sqr(U),t))throw new Error("Cannot find square root");return U}const Ec=$y(H1,void 0,void 0,{sqrt:c3}),Pn=a3({a:BigInt(0),b:BigInt(7),Fp:Ec,n:S0,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=S0,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-o3*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=n,a=BigInt("0x100000000000000000000000000000000"),o=T0(i*t,e),c=T0(-r*t,e);let d=ht(t-o*n-c*s,e),l=ht(-o*r-c*i,e);const f=d>a,m=l>a;if(f&&(d=e-d),m&&(l=e-l),d>a||l>a)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:f,k1:d,k2neg:m,k2:l}}}},ai);BigInt(0);Pn.ProjectivePoint;const es="0x0000000000000000000000000000000000000000",v0="0x0000000000000000000000000000000000000000000000000000000000000000",I0=BigInt(0),k0=BigInt(1),U0=BigInt(2),P0=BigInt(27),N0=BigInt(28),xi=BigInt(35),Sr={};function R0(t){return Wn(st(t),32)}class Ge{#e;#t;#n;#r;get r(){return this.#e}set r(e){D(or(e)===32,"invalid r","value",e),this.#e=K(e)}get s(){return this.#t}set s(e){D(or(e)===32,"invalid s","value",e);const n=K(e);D(parseInt(n.substring(0,3))<8,"non-canonical s","value",n),this.#t=n}get v(){return this.#n}set v(e){const n=ae(e,"value");D(n===27||n===28,"invalid v","v",e),this.#n=n}get networkV(){return this.#r}get legacyChainId(){const e=this.networkV;return e==null?null:Ge.getChainId(e)}get yParity(){return this.v===27?0:1}get yParityAndS(){const e=ce(this.s);return this.yParity&&(e[0]|=128),K(e)}get compactSerialized(){return De([this.r,this.yParityAndS])}get serialized(){return De([this.r,this.s,this.yParity?"0x1c":"0x1b"])}constructor(e,n,r,s){ii(e,Sr,"Signature"),this.#e=n,this.#t=r,this.#n=s,this.#r=null}[Symbol.for("nodejs.util.inspect.custom")](){return`Signature { r: "${this.r}", s: "${this.s}", yParity: ${this.yParity}, networkV: ${this.networkV} }`}clone(){const e=new Ge(Sr,this.r,this.s,this.v);return this.networkV&&(e.#r=this.networkV),e}toJSON(){const e=this.networkV;return{_type:"signature",networkV:e!=null?e.toString():null,r:this.r,s:this.s,v:this.v}}static getChainId(e){const n=X(e,"v");return n==P0||n==N0?I0:(D(n>=xi,"invalid EIP-155 v","v",e),(n-xi)/U0)}static getChainIdV(e,n){return X(e)*U0+BigInt(35+n-27)}static getNormalizedV(e){const n=X(e);return n===I0||n===P0?27:n===k0||n===N0?28:(D(n>=xi,"invalid v","v",e),n&k0?27:28)}static from(e){function n(d,l){D(d,l,"signature",e)}if(e==null)return new Ge(Sr,v0,v0,27);if(typeof e=="string"){const d=ce(e,"signature");if(d.length===64){const l=K(d.slice(0,32)),f=d.slice(32,64),m=f[0]&128?28:27;return f[0]&=127,new Ge(Sr,l,K(f),m)}if(d.length===65){const l=K(d.slice(0,32)),f=d.slice(32,64);n((f[0]&128)===0,"non-canonical s");const m=Ge.getNormalizedV(d[64]);return new Ge(Sr,l,K(f),m)}n(!1,"invalid raw signature length")}if(e instanceof Ge)return e.clone();const r=e.r;n(r!=null,"missing r");const s=R0(r),i=(function(d,l){if(d!=null)return R0(d);if(l!=null){n(Ee(l,32),"invalid yParityAndS");const f=ce(l);return f[0]&=127,K(f)}n(!1,"missing s")})(e.s,e.yParityAndS);n((ce(i)[0]&128)==0,"non-canonical s");const{networkV:a,v:o}=(function(d,l,f){if(d!=null){const m=X(d);return{networkV:m>=xi?m:void 0,v:Ge.getNormalizedV(m)}}if(l!=null)return n(Ee(l,32),"invalid yParityAndS"),{v:ce(l)[0]&128?28:27};if(f!=null){switch(ae(f,"sig.yParity")){case 0:return{v:27};case 1:return{v:28}}n(!1,"invalid yParity")}n(!1,"missing v")})(e.v,e.yParityAndS,e.yParity),c=new Ge(Sr,s,i,o);return a&&(c.#r=a),n(e.yParity==null||ae(e.yParity,"sig.yParity")===c.yParity,"yParity mismatch"),n(e.yParityAndS==null||e.yParityAndS===c.yParityAndS,"yParityAndS mismatch"),c}}class Xt{#e;constructor(e){D(or(e)===32,"invalid private key","privateKey","[REDACTED]"),this.#e=K(e)}get privateKey(){return this.#e}get publicKey(){return Xt.computePublicKey(this.#e)}get compressedPublicKey(){return Xt.computePublicKey(this.#e,!0)}sign(e){D(or(e)===32,"invalid digest length","digest",e);const n=Pn.sign(rt(e),rt(this.#e),{lowS:!0});return Ge.from({r:An(n.r,32),s:An(n.s,32),v:n.recovery?28:27})}computeSharedSecret(e){const n=Xt.computePublicKey(e);return K(Pn.getSharedSecret(rt(this.#e),ce(n),!1))}static computePublicKey(e,n){let r=ce(e,"key");if(r.length===32){const i=Pn.getPublicKey(r,!!n);return K(i)}if(r.length===64){const i=new Uint8Array(65);i[0]=4,i.set(r,1),r=i}const s=Pn.ProjectivePoint.fromHex(r);return K(s.toRawBytes(n))}static recoverPublicKey(e,n){D(or(e)===32,"invalid digest length","digest",e);const r=Ge.from(n);let s=Pn.Signature.fromCompact(rt(De([r.r,r.s])));s=s.addRecoveryBit(r.yParity);const i=s.recoverPublicKey(rt(e));return D(i!=null,"invalid signautre for digest","signature",n),"0x"+i.toHex(!1)}static addPoints(e,n,r){const s=Pn.ProjectivePoint.fromHex(Xt.computePublicKey(e).substring(2)),i=Pn.ProjectivePoint.fromHex(Xt.computePublicKey(n).substring(2));return"0x"+s.add(i).toHex(!!r)}}const l3=BigInt(0),d3=BigInt(36);function O0(t){t=t.toLowerCase();const e=t.substring(2).split(""),n=new Uint8Array(40);for(let s=0;s<40;s++)n[s]=e[s].charCodeAt(0);const r=ce(Ne(n));for(let s=0;s<40;s+=2)r[s>>1]>>4>=8&&(e[s]=e[s].toUpperCase()),(r[s>>1]&15)>=8&&(e[s+1]=e[s+1].toUpperCase());return"0x"+e.join("")}const Ml={};for(let t=0;t<10;t++)Ml[String(t)]=String(t);for(let t=0;t<26;t++)Ml[String.fromCharCode(65+t)]=String(10+t);const M0=15;function u3(t){t=t.toUpperCase(),t=t.substring(4)+t.substring(0,2)+"00";let e=t.split("").map(r=>Ml[r]).join("");for(;e.length>=M0;){let r=e.substring(0,M0);e=parseInt(r,10)%97+e.substring(r.length)}let n=String(98-parseInt(e,10)%97);for(;n.length<2;)n="0"+n;return n}const f3=(function(){const t={};for(let e=0;e<36;e++){const n="0123456789abcdefghijklmnopqrstuvwxyz"[e];t[n]=BigInt(e)}return t})();function h3(t){t=t.toLowerCase();let e=l3;for(let n=0;n<t.length;n++)e=e*d3+f3[t[n]];return e}function fe(t){if(D(typeof t=="string","invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/)){t.startsWith("0x")||(t="0x"+t);const e=O0(t);return D(!t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)||e===t,"bad address checksum","address",t),e}if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){D(t.substring(2,4)===u3(t),"bad icap checksum","address",t);let e=h3(t.substring(4)).toString(16);for(;e.length<40;)e="0"+e;return O0("0x"+e)}D(!1,"invalid address","address",t)}function z1(t){const e=fe(t.from);let r=X(t.nonce,"tx.nonce").toString(16);return r==="0"?r="0x":r.length%2?r="0x0"+r:r="0x"+r,fe(xe(Ne(pr([e,r])),12))}function m3(t,e,n){const r=fe(t),s=ce(e,"salt"),i=ce(n,"initCodeHash");return D(s.length===32,"salt must be 32 bytes","salt",e),D(i.length===32,"initCodeHash must be 32 bytes","initCodeHash",n),fe(xe(Ne(De(["0xff",r,s,i])),12))}function G1(t){return t&&typeof t.getAddress=="function"}function b3(t){try{return fe(t),!0}catch{}return!1}async function xo(t,e){const n=await e;return(n==null||n==="0x0000000000000000000000000000000000000000")&&(W(typeof t!="string","unconfigured name","UNCONFIGURED_NAME",{value:t}),D(!1,"invalid AddressLike value; did not resolve to a value address","target",t)),fe(n)}function it(t,e){if(typeof t=="string")return t.match(/^0x[0-9a-f]{40}$/i)?fe(t):(W(e!=null,"ENS resolution requires a provider","UNSUPPORTED_OPERATION",{operation:"resolveName"}),xo(t,e.resolveName(t)));if(G1(t))return xo(t,t.getAddress());if(t&&typeof t.then=="function")return xo(t,t);D(!1,"unsupported addressable value","target",t)}const an={};function $(t,e){let n=!1;return e<0&&(n=!0,e*=-1),new Pe(an,`${n?"":"u"}int${e}`,t,{signed:n,width:e})}function be(t,e){return new Pe(an,`bytes${e||""}`,t,{size:e})}const L0=Symbol.for("_ethers_typed");class Pe{type;value;#e;_typedSymbol;constructor(e,n,r,s){s==null&&(s=null),ii(an,e,"Typed"),ee(this,{_typedSymbol:L0,type:n,value:r}),this.#e=s,this.format()}format(){if(this.type==="array")throw new Error("");if(this.type==="dynamicArray")throw new Error("");return this.type==="tuple"?`tuple(${this.value.map(e=>e.format()).join(",")})`:this.type}defaultValue(){return 0}minValue(){return 0}maxValue(){return 0}isBigInt(){return!!this.type.match(/^u?int[0-9]+$/)}isData(){return this.type.startsWith("bytes")}isString(){return this.type==="string"}get tupleName(){if(this.type!=="tuple")throw TypeError("not a tuple");return this.#e}get arrayLength(){if(this.type!=="array")throw TypeError("not an array");return this.#e===!0?-1:this.#e===!1?this.value.length:null}static from(e,n){return new Pe(an,e,n)}static uint8(e){return $(e,8)}static uint16(e){return $(e,16)}static uint24(e){return $(e,24)}static uint32(e){return $(e,32)}static uint40(e){return $(e,40)}static uint48(e){return $(e,48)}static uint56(e){return $(e,56)}static uint64(e){return $(e,64)}static uint72(e){return $(e,72)}static uint80(e){return $(e,80)}static uint88(e){return $(e,88)}static uint96(e){return $(e,96)}static uint104(e){return $(e,104)}static uint112(e){return $(e,112)}static uint120(e){return $(e,120)}static uint128(e){return $(e,128)}static uint136(e){return $(e,136)}static uint144(e){return $(e,144)}static uint152(e){return $(e,152)}static uint160(e){return $(e,160)}static uint168(e){return $(e,168)}static uint176(e){return $(e,176)}static uint184(e){return $(e,184)}static uint192(e){return $(e,192)}static uint200(e){return $(e,200)}static uint208(e){return $(e,208)}static uint216(e){return $(e,216)}static uint224(e){return $(e,224)}static uint232(e){return $(e,232)}static uint240(e){return $(e,240)}static uint248(e){return $(e,248)}static uint256(e){return $(e,256)}static uint(e){return $(e,256)}static int8(e){return $(e,-8)}static int16(e){return $(e,-16)}static int24(e){return $(e,-24)}static int32(e){return $(e,-32)}static int40(e){return $(e,-40)}static int48(e){return $(e,-48)}static int56(e){return $(e,-56)}static int64(e){return $(e,-64)}static int72(e){return $(e,-72)}static int80(e){return $(e,-80)}static int88(e){return $(e,-88)}static int96(e){return $(e,-96)}static int104(e){return $(e,-104)}static int112(e){return $(e,-112)}static int120(e){return $(e,-120)}static int128(e){return $(e,-128)}static int136(e){return $(e,-136)}static int144(e){return $(e,-144)}static int152(e){return $(e,-152)}static int160(e){return $(e,-160)}static int168(e){return $(e,-168)}static int176(e){return $(e,-176)}static int184(e){return $(e,-184)}static int192(e){return $(e,-192)}static int200(e){return $(e,-200)}static int208(e){return $(e,-208)}static int216(e){return $(e,-216)}static int224(e){return $(e,-224)}static int232(e){return $(e,-232)}static int240(e){return $(e,-240)}static int248(e){return $(e,-248)}static int256(e){return $(e,-256)}static int(e){return $(e,-256)}static bytes1(e){return be(e,1)}static bytes2(e){return be(e,2)}static bytes3(e){return be(e,3)}static bytes4(e){return be(e,4)}static bytes5(e){return be(e,5)}static bytes6(e){return be(e,6)}static bytes7(e){return be(e,7)}static bytes8(e){return be(e,8)}static bytes9(e){return be(e,9)}static bytes10(e){return be(e,10)}static bytes11(e){return be(e,11)}static bytes12(e){return be(e,12)}static bytes13(e){return be(e,13)}static bytes14(e){return be(e,14)}static bytes15(e){return be(e,15)}static bytes16(e){return be(e,16)}static bytes17(e){return be(e,17)}static bytes18(e){return be(e,18)}static bytes19(e){return be(e,19)}static bytes20(e){return be(e,20)}static bytes21(e){return be(e,21)}static bytes22(e){return be(e,22)}static bytes23(e){return be(e,23)}static bytes24(e){return be(e,24)}static bytes25(e){return be(e,25)}static bytes26(e){return be(e,26)}static bytes27(e){return be(e,27)}static bytes28(e){return be(e,28)}static bytes29(e){return be(e,29)}static bytes30(e){return be(e,30)}static bytes31(e){return be(e,31)}static bytes32(e){return be(e,32)}static address(e){return new Pe(an,"address",e)}static bool(e){return new Pe(an,"bool",!!e)}static bytes(e){return new Pe(an,"bytes",e)}static string(e){return new Pe(an,"string",e)}static array(e,n){throw new Error("not implemented yet")}static tuple(e,n){throw new Error("not implemented yet")}static overrides(e){return new Pe(an,"overrides",Object.assign({},e))}static isTyped(e){return e&&typeof e=="object"&&"_typedSymbol"in e&&e._typedSymbol===L0}static dereference(e,n){if(Pe.isTyped(e)){if(e.type!==n)throw new Error(`invalid type: expecetd ${n}, got ${e.type}`);return e.value}return e}}class p3 extends Cn{constructor(e){super("address","address",e,!1)}defaultValue(){return"0x0000000000000000000000000000000000000000"}encode(e,n){let r=Pe.dereference(n,"string");try{r=fe(r)}catch(s){return this._throwError(s.message,n)}return e.writeValue(r)}decode(e){return fe(An(e.readValue(),20))}}class g3 extends Cn{coder;constructor(e){super(e.name,e.type,"_",e.dynamic),this.coder=e}defaultValue(){return this.coder.defaultValue()}encode(e,n){return this.coder.encode(e,n)}decode(e){return this.coder.decode(e)}}function V1(t,e,n){let r=[];if(Array.isArray(n))r=n;else if(n&&typeof n=="object"){let c={};r=e.map(d=>{const l=d.localName;return W(l,"cannot encode object for signature with missing names","INVALID_ARGUMENT",{argument:"values",info:{coder:d},value:n}),W(!c[l],"cannot encode object for signature with duplicate names","INVALID_ARGUMENT",{argument:"values",info:{coder:d},value:n}),c[l]=!0,n[l]})}else D(!1,"invalid tuple value","tuple",n);D(e.length===r.length,"types/value length mismatch","tuple",n);let s=new bc,i=new bc,a=[];e.forEach((c,d)=>{let l=r[d];if(c.dynamic){let f=i.length;c.encode(i,l);let m=s.writeUpdatableValue();a.push(b=>{m(b+f)})}else c.encode(s,l)}),a.forEach(c=>{c(s.length)});let o=t.appendWriter(s);return o+=t.appendWriter(i),o}function _1(t,e){let n=[],r=[],s=t.subReader(0);return e.forEach(i=>{let a=null;if(i.dynamic){let o=t.readIndex(),c=s.subReader(o);try{a=i.decode(c)}catch(d){if(Je(d,"BUFFER_OVERRUN"))throw d;a=d,a.baseType=i.name,a.name=i.localName,a.type=i.type}}else try{a=i.decode(t)}catch(o){if(Je(o,"BUFFER_OVERRUN"))throw o;a=o,a.baseType=i.name,a.name=i.localName,a.type=i.type}if(a==null)throw new Error("investigate");n.push(a),r.push(i.localName||null)}),mn.fromItems(n,r)}class y3 extends Cn{coder;length;constructor(e,n,r){const s=e.type+"["+(n>=0?n:"")+"]",i=n===-1||e.dynamic;super("array",s,r,i),ee(this,{coder:e,length:n})}defaultValue(){const e=this.coder.defaultValue(),n=[];for(let r=0;r<this.length;r++)n.push(e);return n}encode(e,n){const r=Pe.dereference(n,"array");Array.isArray(r)||this._throwError("expected array value",r);let s=this.length;s===-1&&(s=r.length,e.writeValue(r.length)),$h(r.length,s,"coder array"+(this.localName?" "+this.localName:""));let i=[];for(let a=0;a<r.length;a++)i.push(this.coder);return V1(e,i,r)}decode(e){let n=this.length;n===-1&&(n=e.readIndex(),W(n*lt<=e.dataLength,"insufficient data length","BUFFER_OVERRUN",{buffer:e.bytes,offset:n*lt,length:e.dataLength}));let r=[];for(let s=0;s<n;s++)r.push(new g3(this.coder));return _1(e,r)}}class A3 extends Cn{constructor(e){super("bool","bool",e,!1)}defaultValue(){return!1}encode(e,n){const r=Pe.dereference(n,"bool");return e.writeValue(r?1:0)}decode(e){return!!e.readValue()}}class j1 extends Cn{constructor(e,n){super(e,e,n,!0)}defaultValue(){return"0x"}encode(e,n){n=rt(n);let r=e.writeValue(n.length);return r+=e.writeBytes(n),r}decode(e){return e.readBytes(e.readIndex(),!0)}}class E3 extends j1{constructor(e){super("bytes",e)}decode(e){return K(super.decode(e))}}class w3 extends Cn{size;constructor(e,n){let r="bytes"+String(e);super(r,r,n,!1),ee(this,{size:e},{size:"number"})}defaultValue(){return"0x0000000000000000000000000000000000000000000000000000000000000000".substring(0,2+this.size*2)}encode(e,n){let r=rt(Pe.dereference(n,this.type));return r.length!==this.size&&this._throwError("incorrect data length",n),e.writeBytes(r)}decode(e){return K(e.readBytes(this.size))}}const B3=new Uint8Array([]);class C3 extends Cn{constructor(e){super("null","",e,!1)}defaultValue(){return null}encode(e,n){return n!=null&&this._throwError("not null",n),e.writeBytes(B3)}decode(e){return e.readBytes(0),null}}const x3=BigInt(0),D3=BigInt(1),F3=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");class S3 extends Cn{size;signed;constructor(e,n,r){const s=(n?"int":"uint")+e*8;super(s,s,r,!1),ee(this,{size:e,signed:n},{size:"number",signed:"boolean"})}defaultValue(){return 0}encode(e,n){let r=X(Pe.dereference(n,this.type)),s=Rr(F3,lt*8);if(this.signed){let i=Rr(s,this.size*8-1);(r>i||r<-(i+D3))&&this._throwError("value out-of-bounds",n),r=Fl(r,8*lt)}else(r<x3||r>Rr(s,this.size*8))&&this._throwError("value out-of-bounds",n);return e.writeValue(r)}decode(e){let n=Rr(e.readValue(),this.size*8);return this.signed&&(n=e1(n,this.size*8)),n}}class T3 extends j1{constructor(e){super("string",e)}defaultValue(){return""}encode(e,n){return super.encode(e,tn(Pe.dereference(n,"string")))}decode(e){return fa(super.decode(e))}}class Di extends Cn{coders;constructor(e,n){let r=!1;const s=[];e.forEach(a=>{a.dynamic&&(r=!0),s.push(a.type)});const i="tuple("+s.join(",")+")";super("tuple",i,n,r),ee(this,{coders:Object.freeze(e.slice())})}defaultValue(){const e=[];this.coders.forEach(r=>{e.push(r.defaultValue())});const n=this.coders.reduce((r,s)=>{const i=s.localName;return i&&(r[i]||(r[i]=0),r[i]++),r},{});return this.coders.forEach((r,s)=>{let i=r.localName;!i||n[i]!==1||(i==="length"&&(i="_length"),e[i]==null&&(e[i]=e[s]))}),Object.freeze(e)}encode(e,n){const r=Pe.dereference(n,"tuple");return V1(e,this.coders,r)}decode(e){return _1(e,this.coders)}}function Hn(t){return Ne(tn(t))}var v3="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";const W0=new Map([[8217,"apostrophe"],[8260,"fraction slash"],[12539,"middle dot"]]),H0=4;function I3(t){let e=0;function n(){return t[e++]<<8|t[e++]}let r=n(),s=1,i=[0,1];for(let T=1;T<r;T++)i.push(s+=n());let a=n(),o=e;e+=a;let c=0,d=0;function l(){return c==0&&(d=d<<8|t[e++],c=8),d>>--c&1}const f=31,m=2**f,b=m>>>1,w=b>>1,E=m-1;let y=0;for(let T=0;T<f;T++)y=y<<1|l();let p=[],x=0,A=m;for(;;){let T=Math.floor(((y-x+1)*s-1)/A),U=0,R=r;for(;R-U>1;){let V=U+R>>>1;T<i[V]?R=V:U=V}if(U==0)break;p.push(U);let v=x+Math.floor(A*i[U]/s),M=x+Math.floor(A*i[U+1]/s)-1;for(;((v^M)&b)==0;)y=y<<1&E|l(),v=v<<1&E,M=M<<1&E|1;for(;v&~M&w;)y=y&b|y<<1&E>>>1|l(),v=v<<1^b,M=(M^b)<<1|b|1;x=v,A=1+M-v}let S=r-4;return p.map(T=>{switch(T-S){case 3:return S+65792+(t[o++]<<16|t[o++]<<8|t[o++]);case 2:return S+256+(t[o++]<<8|t[o++]);case 1:return S+t[o++];default:return T-1}})}function k3(t){let e=0;return()=>t[e++]}function q1(t){return k3(I3(U3(t)))}function U3(t){let e=[];[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"].forEach((s,i)=>e[s.charCodeAt(0)]=i);let n=t.length,r=new Uint8Array(6*n>>3);for(let s=0,i=0,a=0,o=0;s<n;s++)o=o<<6|e[t.charCodeAt(s)],a+=6,a>=8&&(r[i++]=o>>(a-=8));return r}function P3(t){return t&1?~t>>1:t>>1}function N3(t,e){let n=Array(t);for(let r=0,s=0;r<t;r++)n[r]=s+=P3(e());return n}function Hs(t,e=0){let n=[];for(;;){let r=t(),s=t();if(!s)break;e+=r;for(let i=0;i<s;i++)n.push(e+i);e+=s+1}return n}function K1(t){return zs(()=>{let e=Hs(t);if(e.length)return e})}function Q1(t){let e=[];for(;;){let n=t();if(n==0)break;e.push(R3(n,t))}for(;;){let n=t()-1;if(n<0)break;e.push(O3(n,t))}return e.flat()}function zs(t){let e=[];for(;;){let n=t(e.length);if(!n)break;e.push(n)}return e}function $1(t,e,n){let r=Array(t).fill().map(()=>[]);for(let s=0;s<e;s++)N3(t,n).forEach((i,a)=>r[a].push(i));return r}function R3(t,e){let n=1+e(),r=e(),s=zs(e);return $1(s.length,1+t,e).flatMap((a,o)=>{let[c,...d]=a;return Array(s[o]).fill().map((l,f)=>{let m=f*r;return[c+f*n,d.map(b=>b+m)]})})}function O3(t,e){let n=1+e();return $1(n,1+t,e).map(s=>[s[0],s.slice(1)])}function M3(t){let e=[],n=Hs(t);return s(r([]),[]),e;function r(i){let a=t(),o=zs(()=>{let c=Hs(t).map(d=>n[d]);if(c.length)return r(c)});return{S:a,B:o,Q:i}}function s({S:i,B:a},o,c){if(!(i&4&&c===o[o.length-1])){i&2&&(c=o[o.length-1]),i&1&&e.push(o);for(let d of a)for(let l of d.Q)s(d,[...o,l],c)}}}function L3(t){return t.toString(16).toUpperCase().padStart(2,"0")}function J1(t){return`{${L3(t)}}`}function W3(t){let e=[];for(let n=0,r=t.length;n<r;){let s=t.codePointAt(n);n+=s<65536?1:2,e.push(s)}return e}function ts(t){let n=t.length;if(n<4096)return String.fromCodePoint(...t);let r=[];for(let s=0;s<n;)r.push(String.fromCodePoint(...t.slice(s,s+=4096)));return r.join("")}function H3(t,e){let n=t.length,r=n-e.length;for(let s=0;r==0&&s<n;s++)r=t[s]-e[s];return r}var z3="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";const Gs=44032,ha=4352,ma=4449,ba=4519,X1=19,Y1=21,ns=28,pa=Y1*ns,G3=X1*pa,V3=Gs+G3,_3=ha+X1,j3=ma+Y1,q3=ba+ns;function xs(t){return t>>24&255}function Z1(t){return t&16777215}let wc,z0,Bc,Ki;function K3(){let t=q1(z3);wc=new Map(K1(t).flatMap((e,n)=>e.map(r=>[r,n+1<<24]))),z0=new Set(Hs(t)),Bc=new Map,Ki=new Map;for(let[e,n]of Q1(t)){if(!z0.has(e)&&n.length==2){let[r,s]=n,i=Ki.get(r);i||(i=new Map,Ki.set(r,i)),i.set(s,e)}Bc.set(e,n.reverse())}}function em(t){return t>=Gs&&t<V3}function Q3(t,e){if(t>=ha&&t<_3&&e>=ma&&e<j3)return Gs+(t-ha)*pa+(e-ma)*ns;if(em(t)&&e>ba&&e<q3&&(t-Gs)%ns==0)return t+(e-ba);{let n=Ki.get(t);return n&&(n=n.get(e),n)?n:-1}}function tm(t){wc||K3();let e=[],n=[],r=!1;function s(i){let a=wc.get(i);a&&(r=!0,i|=a),e.push(i)}for(let i of t)for(;;){if(i<128)e.push(i);else if(em(i)){let a=i-Gs,o=a/pa|0,c=a%pa/ns|0,d=a%ns;s(ha+o),s(ma+c),d>0&&s(ba+d)}else{let a=Bc.get(i);a?n.push(...a):s(i)}if(!n.length)break;i=n.pop()}if(r&&e.length>1){let i=xs(e[0]);for(let a=1;a<e.length;a++){let o=xs(e[a]);if(o==0||i<=o){i=o;continue}let c=a-1;for(;;){let d=e[c+1];if(e[c+1]=e[c],e[c]=d,!c||(i=xs(e[--c]),i<=o))break}i=xs(e[a])}}return e}function $3(t){let e=[],n=[],r=-1,s=0;for(let i of t){let a=xs(i),o=Z1(i);if(r==-1)a==0?r=o:e.push(o);else if(s>0&&s>=a)a==0?(e.push(r,...n),n.length=0,r=o):n.push(o),s=a;else{let c=Q3(r,o);c>=0?r=c:s==0&&a==0?(e.push(r),r=o):(n.push(o),s=a)}}return r>=0&&e.push(r,...n),e}function nm(t){return tm(t).map(Z1)}function J3(t){return $3(tm(t))}const G0=45,rm=".",sm=65039,im=1,ga=t=>Array.from(t);function Vs(t,e){return t.P.has(e)||t.Q.has(e)}class X3 extends Array{get is_emoji(){return!0}}let Cc,am,tr,xc,om,zr,Do,Ir,_n,V0,Dc;function Ll(){if(Cc)return;let t=q1(v3);const e=()=>Hs(t),n=()=>new Set(e()),r=(l,f)=>f.forEach(m=>l.add(m));Cc=new Map(Q1(t)),am=n(),tr=e(),xc=new Set(e().map(l=>tr[l])),tr=new Set(tr),om=n(),n();let s=K1(t),i=t();const a=()=>{let l=new Set;return e().forEach(f=>r(l,s[f])),r(l,e()),l};zr=zs(l=>{let f=zs(t).map(m=>m+96);if(f.length){let m=l>=i;f[0]-=32,f=ts(f),m&&(f=`Restricted[${f}]`);let b=a(),w=a(),E=!t();return{N:f,P:b,Q:w,M:E,R:m}}}),Do=n(),Ir=new Map;let o=e().concat(ga(Do)).sort((l,f)=>l-f);o.forEach((l,f)=>{let m=t(),b=o[f]=m?o[f-m]:{V:[],M:new Map};b.V.push(l),Do.has(l)||Ir.set(l,b)});for(let{V:l,M:f}of new Set(Ir.values())){let m=[];for(let w of l){let E=zr.filter(p=>Vs(p,w)),y=m.find(({G:p})=>E.some(x=>p.has(x)));y||(y={G:new Set,V:[]},m.push(y)),y.V.push(w),r(y.G,E)}let b=m.flatMap(w=>ga(w.G));for(let{G:w,V:E}of m){let y=new Set(b.filter(p=>!w.has(p)));for(let p of E)f.set(p,y)}}_n=new Set;let c=new Set;const d=l=>_n.has(l)?c.add(l):_n.add(l);for(let l of zr){for(let f of l.P)d(f);for(let f of l.Q)d(f)}for(let l of _n)!Ir.has(l)&&!c.has(l)&&Ir.set(l,im);r(_n,nm(_n)),V0=M3(t).map(l=>X3.from(l)).sort(H3),Dc=new Map;for(let l of V0){let f=[Dc];for(let m of l){let b=f.map(w=>{let E=w.get(m);return E||(E=new Map,w.set(m,E)),E});m===sm?f.push(...b):f=b}for(let m of f)m.V=l}}function Wl(t){return(cm(t)?"":`${Hl($a([t]))} `)+J1(t)}function Hl(t){return`"${t}"`}function Y3(t){if(t.length>=4&&t[2]==G0&&t[3]==G0)throw new Error(`invalid label extension: "${ts(t.slice(0,4))}"`)}function Z3(t){for(let n=t.lastIndexOf(95);n>0;)if(t[--n]!==95)throw new Error("underscore allowed only at start")}function e4(t){let e=t[0],n=W0.get(e);if(n)throw Ts(`leading ${n}`);let r=t.length,s=-1;for(let i=1;i<r;i++){e=t[i];let a=W0.get(e);if(a){if(s==i)throw Ts(`${n} + ${a}`);s=i+1,n=a}}if(s==r)throw Ts(`trailing ${n}`)}function $a(t,e=1/0,n=J1){let r=[];t4(t[0])&&r.push("◌"),t.length>e&&(e>>=1,t=[...t.slice(0,e),8230,...t.slice(-e)]);let s=0,i=t.length;for(let a=0;a<i;a++){let o=t[a];cm(o)&&(r.push(ts(t.slice(s,a))),r.push(n(o)),s=a+1)}return r.push(ts(t.slice(s,i))),r.join("")}function t4(t){return Ll(),tr.has(t)}function cm(t){return Ll(),om.has(t)}function n4(t){return a4(r4(t,J3,l4))}function r4(t,e,n){if(!t)return[];Ll();let r=0;return t.split(rm).map(s=>{let i=W3(s),a={input:i,offset:r};r+=i.length+1;try{let o=a.tokens=c4(i,e,n),c=o.length,d;if(!c)throw new Error("empty label");let l=a.output=o.flat();if(Z3(l),!(a.emoji=c>1||o[0].is_emoji)&&l.every(m=>m<128))Y3(l),d="ASCII";else{let m=o.flatMap(b=>b.is_emoji?[]:b);if(!m.length)d="Emoji";else{if(tr.has(l[0]))throw Ts("leading combining mark");for(let E=1;E<c;E++){let y=o[E];if(!y.is_emoji&&tr.has(y[0]))throw Ts(`emoji + combining mark: "${ts(o[E-1])} + ${$a([y[0]])}"`)}e4(l);let b=ga(new Set(m)),[w]=i4(b);o4(w,m),s4(w,b),d=w.N}}a.type=d}catch(o){a.error=o}return a})}function s4(t,e){let n,r=[];for(let s of e){let i=Ir.get(s);if(i===im)return;if(i){let a=i.M.get(s);if(n=n?n.filter(o=>a.has(o)):ga(a),!n.length)return}else r.push(s)}if(n){for(let s of n)if(r.every(i=>Vs(s,i)))throw new Error(`whole-script confusable: ${t.N}/${s.N}`)}}function i4(t){let e=zr;for(let n of t){let r=e.filter(s=>Vs(s,n));if(!r.length)throw zr.some(s=>Vs(s,n))?dm(e[0],n):lm(n);if(e=r,r.length==1)break}return e}function a4(t){return t.map(({input:e,error:n,output:r})=>{if(n){let s=n.message;throw new Error(t.length==1?s:`Invalid label ${Hl($a(e,63))}: ${s}`)}return ts(r)}).join(rm)}function lm(t){return new Error(`disallowed character: ${Wl(t)}`)}function dm(t,e){let n=Wl(e),r=zr.find(s=>s.P.has(e));return r&&(n=`${r.N} ${n}`),new Error(`illegal mixture: ${t.N} + ${n}`)}function Ts(t){return new Error(`illegal placement: ${t}`)}function o4(t,e){for(let n of e)if(!Vs(t,n))throw dm(t,n);if(t.M){let n=nm(e);for(let r=1,s=n.length;r<s;r++)if(xc.has(n[r])){let i=r+1;for(let a;i<s&&xc.has(a=n[i]);i++)for(let o=r;o<i;o++)if(n[o]==a)throw new Error(`duplicate non-spacing marks: ${Wl(a)}`);if(i-r>H0)throw new Error(`excessive non-spacing marks: ${Hl($a(n.slice(r-1,i)))} (${i-r}/${H0})`);r=i}}}function c4(t,e,n){let r=[],s=[];for(t=t.slice().reverse();t.length;){let i=d4(t);if(i)s.length&&(r.push(e(s)),s=[]),r.push(n(i));else{let a=t.pop();if(_n.has(a))s.push(a);else{let o=Cc.get(a);if(o)s.push(...o);else if(!am.has(a))throw lm(a)}}}return s.length&&r.push(e(s)),r}function l4(t){return t.filter(e=>e!=sm)}function d4(t,e){let n=Dc,r,s=t.length;for(;s&&(n=n.get(t[--s]),!!n);){let{V:i}=n;i&&(r=i,t.length=s)}return r}const um=new Uint8Array(32);um.fill(0);function _0(t){return D(t.length!==0,"invalid ENS name; empty component","comp",t),t}function fm(t){const e=tn(u4(t)),n=[];if(t.length===0)return n;let r=0;for(let s=0;s<e.length;s++)e[s]===46&&(n.push(_0(e.slice(r,s))),r=s+1);return D(r<e.length,"invalid ENS name; empty component","name",t),n.push(_0(e.slice(r))),n}function u4(t){try{if(t.length===0)throw new Error("empty label");return n4(t)}catch(e){D(!1,`invalid ENS name (${e.message})`,"name",t)}}function Fc(t){D(typeof t=="string","invalid ENS name; not a string","name",t),D(t.length,"invalid ENS name (empty label)","name",t);let e=um;const n=fm(t);for(;n.length;)e=Ne(De([e,Ne(n.pop())]));return K(e)}function f4(t,e){const n=e;return D(n<=255,"DNS encoded label cannot exceed 255","length",n),K(De(fm(t).map(r=>{D(r.length<=n,`label ${JSON.stringify(t)} exceeds ${n} bytes`,"name",t);const s=new Uint8Array(r.length+1);return s.set(r,1),s[0]=s.length-1,s})))+"00"}function Fo(t,e){return{address:fe(t),storageKeys:e.map((n,r)=>(D(Ee(n,32),"invalid slot",`storageKeys[${r}]`,n),n.toLowerCase()))}}function Cr(t){if(Array.isArray(t))return t.map((n,r)=>Array.isArray(n)?(D(n.length===2,"invalid slot set",`value[${r}]`,n),Fo(n[0],n[1])):(D(n!=null&&typeof n=="object","invalid address-slot set","value",t),Fo(n.address,n.storageKeys)));D(t!=null&&typeof t=="object","invalid access list","value",t);const e=Object.keys(t).map(n=>{const r=t[n].reduce((s,i)=>(s[i]=!0,s),{});return Fo(n,Object.keys(r).sort())});return e.sort((n,r)=>n.address.localeCompare(r.address)),e}function hm(t){let e;return typeof t=="string"?e=Xt.computePublicKey(t,!1):e=t.publicKey,fe(Ne("0x"+e.substring(4)).substring(26))}function h4(t,e){return hm(Xt.recoverPublicKey(t,e))}const je=BigInt(0),m4=BigInt(2),b4=BigInt(27),p4=BigInt(28),g4=BigInt(35),y4=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),So=4096*32;function j0(t,e){let n=t.toString(16);for(;n.length<2;)n="0"+n;return n+=Br(e).substring(4),"0x"+n}function Ja(t){return t==="0x"?null:fe(t)}function zl(t,e){try{return Cr(t)}catch(n){D(!1,n.message,e,t)}}function ci(t,e){return t==="0x"?0:ae(t,e)}function Me(t,e){if(t==="0x")return je;const n=X(t,e);return D(n<=y4,"value exceeds uint size",e,n),n}function Be(t,e){const n=X(t,"value"),r=st(n);return D(r.length<=32,"value too large",`tx.${e}`,n),r}function Gl(t){return Cr(t).map(e=>[e.address,e.storageKeys])}function A4(t,e){D(Array.isArray(t),`invalid ${e}`,"value",t);for(let n=0;n<t.length;n++)D(Ee(t[n],32),"invalid ${ param } hash",`value[${n}]`,t[n]);return t}function E4(t){const e=_a(t);D(Array.isArray(e)&&(e.length===9||e.length===6),"invalid field count for legacy transaction","data",t);const n={type:0,nonce:ci(e[0],"nonce"),gasPrice:Me(e[1],"gasPrice"),gasLimit:Me(e[2],"gasLimit"),to:Ja(e[3]),value:Me(e[4],"value"),data:K(e[5]),chainId:je};if(e.length===6)return n;const r=Me(e[6],"v"),s=Me(e[7],"r"),i=Me(e[8],"s");if(s===je&&i===je)n.chainId=r;else{let a=(r-g4)/m4;a<je&&(a=je),n.chainId=a,D(a!==je||r===b4||r===p4,"non-canonical legacy v","v",e[6]),n.signature=Ge.from({r:Wn(e[7],32),s:Wn(e[8],32),v:r})}return n}function w4(t,e){const n=[Be(t.nonce,"nonce"),Be(t.gasPrice||0,"gasPrice"),Be(t.gasLimit,"gasLimit"),t.to||"0x",Be(t.value,"value"),t.data];let r=je;if(t.chainId!=je)r=X(t.chainId,"tx.chainId"),D(!e||e.networkV==null||e.legacyChainId===r,"tx.chainId/sig.v mismatch","sig",e);else if(t.signature){const i=t.signature.legacyChainId;i!=null&&(r=i)}if(!e)return r!==je&&(n.push(st(r)),n.push("0x"),n.push("0x")),pr(n);let s=BigInt(27+e.yParity);return r!==je?s=Ge.getChainIdV(r,e.v):BigInt(e.v)!==s&&D(!1,"tx.chainId/sig.v mismatch","sig",e),n.push(st(s)),n.push(st(e.r)),n.push(st(e.s)),pr(n)}function Vl(t,e){let n;try{if(n=ci(e[0],"yParity"),n!==0&&n!==1)throw new Error("bad yParity")}catch{D(!1,"invalid yParity","yParity",e[0])}const r=Wn(e[1],32),s=Wn(e[2],32),i=Ge.from({r,s,yParity:n});t.signature=i}function B4(t){const e=_a(ce(t).slice(1));D(Array.isArray(e)&&(e.length===9||e.length===12),"invalid field count for transaction type: 2","data",K(t));const n={type:2,chainId:Me(e[0],"chainId"),nonce:ci(e[1],"nonce"),maxPriorityFeePerGas:Me(e[2],"maxPriorityFeePerGas"),maxFeePerGas:Me(e[3],"maxFeePerGas"),gasPrice:null,gasLimit:Me(e[4],"gasLimit"),to:Ja(e[5]),value:Me(e[6],"value"),data:K(e[7]),accessList:zl(e[8],"accessList")};return e.length===9||Vl(n,e.slice(9)),n}function C4(t,e){const n=[Be(t.chainId,"chainId"),Be(t.nonce,"nonce"),Be(t.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),Be(t.maxFeePerGas||0,"maxFeePerGas"),Be(t.gasLimit,"gasLimit"),t.to||"0x",Be(t.value,"value"),t.data,Gl(t.accessList||[])];return e&&(n.push(Be(e.yParity,"yParity")),n.push(st(e.r)),n.push(st(e.s))),De(["0x02",pr(n)])}function x4(t){const e=_a(ce(t).slice(1));D(Array.isArray(e)&&(e.length===8||e.length===11),"invalid field count for transaction type: 1","data",K(t));const n={type:1,chainId:Me(e[0],"chainId"),nonce:ci(e[1],"nonce"),gasPrice:Me(e[2],"gasPrice"),gasLimit:Me(e[3],"gasLimit"),to:Ja(e[4]),value:Me(e[5],"value"),data:K(e[6]),accessList:zl(e[7],"accessList")};return e.length===8||Vl(n,e.slice(8)),n}function D4(t,e){const n=[Be(t.chainId,"chainId"),Be(t.nonce,"nonce"),Be(t.gasPrice||0,"gasPrice"),Be(t.gasLimit,"gasLimit"),t.to||"0x",Be(t.value,"value"),t.data,Gl(t.accessList||[])];return e&&(n.push(Be(e.yParity,"recoveryParam")),n.push(st(e.r)),n.push(st(e.s))),De(["0x01",pr(n)])}function F4(t){let e=_a(ce(t).slice(1)),n="3",r=null;if(e.length===4&&Array.isArray(e[0])){n="3 (network format)";const i=e[1],a=e[2],o=e[3];D(Array.isArray(i),"invalid network format: blobs not an array","fields[1]",i),D(Array.isArray(a),"invalid network format: commitments not an array","fields[2]",a),D(Array.isArray(o),"invalid network format: proofs not an array","fields[3]",o),D(i.length===a.length,"invalid network format: blobs/commitments length mismatch","fields",e),D(i.length===o.length,"invalid network format: blobs/proofs length mismatch","fields",e),r=[];for(let c=0;c<e[1].length;c++)r.push({data:i[c],commitment:a[c],proof:o[c]});e=e[0]}D(Array.isArray(e)&&(e.length===11||e.length===14),`invalid field count for transaction type: ${n}`,"data",K(t));const s={type:3,chainId:Me(e[0],"chainId"),nonce:ci(e[1],"nonce"),maxPriorityFeePerGas:Me(e[2],"maxPriorityFeePerGas"),maxFeePerGas:Me(e[3],"maxFeePerGas"),gasPrice:null,gasLimit:Me(e[4],"gasLimit"),to:Ja(e[5]),value:Me(e[6],"value"),data:K(e[7]),accessList:zl(e[8],"accessList"),maxFeePerBlobGas:Me(e[9],"maxFeePerBlobGas"),blobVersionedHashes:e[10]};r&&(s.blobs=r),D(s.to!=null,`invalid address for transaction type: ${n}`,"data",t),D(Array.isArray(s.blobVersionedHashes),"invalid blobVersionedHashes: must be an array","data",t);for(let i=0;i<s.blobVersionedHashes.length;i++)D(Ee(s.blobVersionedHashes[i],32),`invalid blobVersionedHash at index ${i}: must be length 32`,"data",t);return e.length===11||Vl(s,e.slice(11)),s}function S4(t,e,n){const r=[Be(t.chainId,"chainId"),Be(t.nonce,"nonce"),Be(t.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),Be(t.maxFeePerGas||0,"maxFeePerGas"),Be(t.gasLimit,"gasLimit"),t.to||es,Be(t.value,"value"),t.data,Gl(t.accessList||[]),Be(t.maxFeePerBlobGas||0,"maxFeePerBlobGas"),A4(t.blobVersionedHashes||[],"blobVersionedHashes")];return e&&(r.push(Be(e.yParity,"yParity")),r.push(st(e.r)),r.push(st(e.s)),n)?De(["0x03",pr([r,n.map(s=>s.data),n.map(s=>s.commitment),n.map(s=>s.proof)])]):De(["0x03",pr(r)])}class Pt{#e;#t;#n;#r;#s;#a;#i;#o;#h;#l;#m;#b;#c;#d;#u;#f;get type(){return this.#e}set type(e){switch(e){case null:this.#e=null;break;case 0:case"legacy":this.#e=0;break;case 1:case"berlin":case"eip-2930":this.#e=1;break;case 2:case"london":case"eip-1559":this.#e=2;break;case 3:case"cancun":case"eip-4844":this.#e=3;break;default:D(!1,"unsupported transaction type","type",e)}}get typeName(){switch(this.type){case 0:return"legacy";case 1:return"eip-2930";case 2:return"eip-1559";case 3:return"eip-4844"}return null}get to(){const e=this.#t;return e==null&&this.type===3?es:e}set to(e){this.#t=e==null?null:fe(e)}get nonce(){return this.#r}set nonce(e){this.#r=ae(e,"value")}get gasLimit(){return this.#s}set gasLimit(e){this.#s=X(e)}get gasPrice(){const e=this.#a;return e==null&&(this.type===0||this.type===1)?je:e}set gasPrice(e){this.#a=e==null?null:X(e,"gasPrice")}get maxPriorityFeePerGas(){const e=this.#i;return e??(this.type===2||this.type===3?je:null)}set maxPriorityFeePerGas(e){this.#i=e==null?null:X(e,"maxPriorityFeePerGas")}get maxFeePerGas(){const e=this.#o;return e??(this.type===2||this.type===3?je:null)}set maxFeePerGas(e){this.#o=e==null?null:X(e,"maxFeePerGas")}get data(){return this.#n}set data(e){this.#n=K(e)}get value(){return this.#h}set value(e){this.#h=X(e,"value")}get chainId(){return this.#l}set chainId(e){this.#l=X(e)}get signature(){return this.#m||null}set signature(e){this.#m=e==null?null:Ge.from(e)}get accessList(){const e=this.#b||null;return e??(this.type===1||this.type===2||this.type===3?[]:null)}set accessList(e){this.#b=e==null?null:Cr(e)}get maxFeePerBlobGas(){const e=this.#c;return e==null&&this.type===3?je:e}set maxFeePerBlobGas(e){this.#c=e==null?null:X(e,"maxFeePerBlobGas")}get blobVersionedHashes(){let e=this.#d;return e==null&&this.type===3?[]:e}set blobVersionedHashes(e){if(e!=null){D(Array.isArray(e),"blobVersionedHashes must be an Array","value",e),e=e.slice();for(let n=0;n<e.length;n++)D(Ee(e[n],32),"invalid blobVersionedHash",`value[${n}]`,e[n])}this.#d=e}get blobs(){return this.#f==null?null:this.#f.map(e=>Object.assign({},e))}set blobs(e){if(e==null){this.#f=null;return}const n=[],r=[];for(let s=0;s<e.length;s++){const i=e[s];if(Ha(i)){W(this.#u,"adding a raw blob requires a KZG library","UNSUPPORTED_OPERATION",{operation:"set blobs()"});let a=ce(i);if(D(a.length<=So,"blob is too large",`blobs[${s}]`,i),a.length!==So){const d=new Uint8Array(So);d.set(a),a=d}const o=this.#u.blobToKzgCommitment(a),c=K(this.#u.computeBlobKzgProof(a,o));n.push({data:K(a),commitment:K(o),proof:c}),r.push(j0(1,o))}else{const a=K(i.commitment);n.push({data:K(i.data),commitment:a,proof:K(i.proof)}),r.push(j0(1,a))}}this.#f=n,this.#d=r}get kzg(){return this.#u}set kzg(e){this.#u=e}constructor(){this.#e=null,this.#t=null,this.#r=0,this.#s=je,this.#a=null,this.#i=null,this.#o=null,this.#n="0x",this.#h=je,this.#l=je,this.#m=null,this.#b=null,this.#c=null,this.#d=null,this.#f=null,this.#u=null}get hash(){return this.signature==null?null:Ne(this.#p(!0,!1))}get unsignedHash(){return Ne(this.unsignedSerialized)}get from(){return this.signature==null?null:h4(this.unsignedHash,this.signature)}get fromPublicKey(){return this.signature==null?null:Xt.recoverPublicKey(this.unsignedHash,this.signature)}isSigned(){return this.signature!=null}#p(e,n){W(!e||this.signature!=null,"cannot serialize unsigned transaction; maybe you meant .unsignedSerialized","UNSUPPORTED_OPERATION",{operation:".serialized"});const r=e?this.signature:null;switch(this.inferType()){case 0:return w4(this,r);case 1:return D4(this,r);case 2:return C4(this,r);case 3:return S4(this,r,n?this.blobs:null)}W(!1,"unsupported transaction type","UNSUPPORTED_OPERATION",{operation:".serialized"})}get serialized(){return this.#p(!0,!0)}get unsignedSerialized(){return this.#p(!1,!1)}inferType(){const e=this.inferTypes();return e.indexOf(2)>=0?2:e.pop()}inferTypes(){const e=this.gasPrice!=null,n=this.maxFeePerGas!=null||this.maxPriorityFeePerGas!=null,r=this.accessList!=null,s=this.#c!=null||this.#d;this.maxFeePerGas!=null&&this.maxPriorityFeePerGas!=null&&W(this.maxFeePerGas>=this.maxPriorityFeePerGas,"priorityFee cannot be more than maxFee","BAD_DATA",{value:this}),W(!n||this.type!==0&&this.type!==1,"transaction type cannot have maxFeePerGas or maxPriorityFeePerGas","BAD_DATA",{value:this}),W(this.type!==0||!r,"legacy transaction cannot have accessList","BAD_DATA",{value:this});const i=[];return this.type!=null?i.push(this.type):n?i.push(2):e?(i.push(1),r||i.push(0)):r?(i.push(1),i.push(2)):(s&&this.to||(i.push(0),i.push(1),i.push(2)),i.push(3)),i.sort(),i}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}isCancun(){return this.type===3}clone(){return Pt.from(this)}toJSON(){const e=n=>n==null?null:n.toString();return{type:this.type,to:this.to,data:this.data,nonce:this.nonce,gasLimit:e(this.gasLimit),gasPrice:e(this.gasPrice),maxPriorityFeePerGas:e(this.maxPriorityFeePerGas),maxFeePerGas:e(this.maxFeePerGas),value:e(this.value),chainId:e(this.chainId),sig:this.signature?this.signature.toJSON():null,accessList:this.accessList}}static from(e){if(e==null)return new Pt;if(typeof e=="string"){const r=ce(e);if(r[0]>=127)return Pt.from(E4(r));switch(r[0]){case 1:return Pt.from(x4(r));case 2:return Pt.from(B4(r));case 3:return Pt.from(F4(r))}W(!1,"unsupported transaction type","UNSUPPORTED_OPERATION",{operation:"from"})}const n=new Pt;return e.type!=null&&(n.type=e.type),e.to!=null&&(n.to=e.to),e.nonce!=null&&(n.nonce=e.nonce),e.gasLimit!=null&&(n.gasLimit=e.gasLimit),e.gasPrice!=null&&(n.gasPrice=e.gasPrice),e.maxPriorityFeePerGas!=null&&(n.maxPriorityFeePerGas=e.maxPriorityFeePerGas),e.maxFeePerGas!=null&&(n.maxFeePerGas=e.maxFeePerGas),e.maxFeePerBlobGas!=null&&(n.maxFeePerBlobGas=e.maxFeePerBlobGas),e.data!=null&&(n.data=e.data),e.value!=null&&(n.value=e.value),e.chainId!=null&&(n.chainId=e.chainId),e.signature!=null&&(n.signature=Ge.from(e.signature)),e.accessList!=null&&(n.accessList=e.accessList),e.blobVersionedHashes!=null&&(n.blobVersionedHashes=e.blobVersionedHashes),e.kzg!=null&&(n.kzg=e.kzg),e.blobs!=null&&(n.blobs=e.blobs),e.hash!=null&&(D(n.isSigned(),"unsigned transaction cannot define '.hash'","tx",e),D(n.hash===e.hash,"hash mismatch","tx",e)),e.from!=null&&(D(n.isSigned(),"unsigned transaction cannot define '.from'","tx",e),D(n.from.toLowerCase()===(e.from||"").toLowerCase(),"from mismatch","tx",e)),n}}const mm=new Uint8Array(32);mm.fill(0);const T4=BigInt(-1),bm=BigInt(0),pm=BigInt(1),v4=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function I4(t){const e=ce(t),n=e.length%32;return n?De([e,mm.slice(n)]):K(e)}const k4=An(pm,32),U4=An(bm,32),q0={name:"string",version:"string",chainId:"uint256",verifyingContract:"address",salt:"bytes32"},To=["name","version","chainId","verifyingContract","salt"];function K0(t){return function(e){return D(typeof e=="string",`invalid domain value for ${JSON.stringify(t)}`,`domain.${t}`,e),e}}const P4={name:K0("name"),version:K0("version"),chainId:function(t){const e=X(t,"domain.chainId");return D(e>=0,"invalid chain ID","domain.chainId",t),Number.isSafeInteger(e)?Number(e):Or(e)},verifyingContract:function(t){try{return fe(t).toLowerCase()}catch{}D(!1,'invalid domain value "verifyingContract"',"domain.verifyingContract",t)},salt:function(t){const e=ce(t,"domain.salt");return D(e.length===32,'invalid domain value "salt"',"domain.salt",t),K(e)}};function vo(t){{const e=t.match(/^(u?)int(\d+)$/);if(e){const n=e[1]==="",r=parseInt(e[2]);D(r%8===0&&r!==0&&r<=256&&e[2]===String(r),"invalid numeric width","type",t);const s=Rr(v4,n?r-1:r),i=n?(s+pm)*T4:bm;return function(a){const o=X(a,"value");return D(o>=i&&o<=s,`value out-of-bounds for ${t}`,"value",o),An(n?Fl(o,256):o,32)}}}{const e=t.match(/^bytes(\d+)$/);if(e){const n=parseInt(e[1]);return D(n!==0&&n<=32&&e[1]===String(n),"invalid bytes width","type",t),function(r){const s=ce(r);return D(s.length===n,`invalid length for ${t}`,"value",r),I4(r)}}}switch(t){case"address":return function(e){return Wn(fe(e),32)};case"bool":return function(e){return e?k4:U4};case"bytes":return function(e){return Ne(e)};case"string":return function(e){return Hn(e)}}return null}function Q0(t,e){return`${t}(${e.map(({name:n,type:r})=>r+" "+n).join(",")})`}function Fi(t){const e=t.match(/^([^\x5b]*)((\x5b\d*\x5d)*)(\x5b(\d*)\x5d)$/);return e?{base:e[1],index:e[2]+e[4],array:{base:e[1],prefix:e[1]+e[2],count:e[5]?parseInt(e[5]):-1}}:{base:t}}class ft{primaryType;#e;get types(){return JSON.parse(this.#e)}#t;#n;constructor(e){this.#t=new Map,this.#n=new Map;const n=new Map,r=new Map,s=new Map,i={};Object.keys(e).forEach(c=>{i[c]=e[c].map(({name:d,type:l})=>{let{base:f,index:m}=Fi(l);return f==="int"&&!e.int&&(f="int256"),f==="uint"&&!e.uint&&(f="uint256"),{name:d,type:f+(m||"")}}),n.set(c,new Set),r.set(c,[]),s.set(c,new Set)}),this.#e=JSON.stringify(i);for(const c in i){const d=new Set;for(const l of i[c]){D(!d.has(l.name),`duplicate variable name ${JSON.stringify(l.name)} in ${JSON.stringify(c)}`,"types",e),d.add(l.name);const f=Fi(l.type).base;D(f!==c,`circular type reference to ${JSON.stringify(f)}`,"types",e),!vo(f)&&(D(r.has(f),`unknown type ${JSON.stringify(f)}`,"types",e),r.get(f).push(c),n.get(c).add(f))}}const a=Array.from(r.keys()).filter(c=>r.get(c).length===0);D(a.length!==0,"missing primary type","types",e),D(a.length===1,`ambiguous primary types or unused types: ${a.map(c=>JSON.stringify(c)).join(", ")}`,"types",e),ee(this,{primaryType:a[0]});function o(c,d){D(!d.has(c),`circular type reference to ${JSON.stringify(c)}`,"types",e),d.add(c);for(const l of n.get(c))if(r.has(l)){o(l,d);for(const f of d)s.get(f).add(l)}d.delete(c)}o(this.primaryType,new Set);for(const[c,d]of s){const l=Array.from(d);l.sort(),this.#t.set(c,Q0(c,i[c])+l.map(f=>Q0(f,i[f])).join(""))}}getEncoder(e){let n=this.#n.get(e);return n||(n=this.#r(e),this.#n.set(e,n)),n}#r(e){{const s=vo(e);if(s)return s}const n=Fi(e).array;if(n){const s=n.prefix,i=this.getEncoder(s);return a=>{D(n.count===-1||n.count===a.length,`array length mismatch; expected length ${n.count}`,"value",a);let o=a.map(i);return this.#t.has(s)&&(o=o.map(Ne)),Ne(De(o))}}const r=this.types[e];if(r){const s=Hn(this.#t.get(e));return i=>{const a=r.map(({name:o,type:c})=>{const d=this.getEncoder(c)(i[o]);return this.#t.has(c)?Ne(d):d});return a.unshift(s),De(a)}}D(!1,`unknown type: ${e}`,"type",e)}encodeType(e){const n=this.#t.get(e);return D(n,`unknown type: ${JSON.stringify(e)}`,"name",e),n}encodeData(e,n){return this.getEncoder(e)(n)}hashStruct(e,n){return Ne(this.encodeData(e,n))}encode(e){return this.encodeData(this.primaryType,e)}hash(e){return this.hashStruct(this.primaryType,e)}_visit(e,n,r){if(vo(e))return r(e,n);const s=Fi(e).array;if(s)return D(s.count===-1||s.count===n.length,`array length mismatch; expected length ${s.count}`,"value",n),n.map(a=>this._visit(s.prefix,a,r));const i=this.types[e];if(i)return i.reduce((a,{name:o,type:c})=>(a[o]=this._visit(c,n[o],r),a),{});D(!1,`unknown type: ${e}`,"type",e)}visit(e,n){return this._visit(this.primaryType,e,n)}static from(e){return new ft(e)}static getPrimaryType(e){return ft.from(e).primaryType}static hashStruct(e,n,r){return ft.from(n).hashStruct(e,r)}static hashDomain(e){const n=[];for(const r in e){if(e[r]==null)continue;const s=q0[r];D(s,`invalid typed-data domain key: ${JSON.stringify(r)}`,"domain",e),n.push({name:r,type:s})}return n.sort((r,s)=>To.indexOf(r.name)-To.indexOf(s.name)),ft.hashStruct("EIP712Domain",{EIP712Domain:n},e)}static encode(e,n,r){return De(["0x1901",ft.hashDomain(e),ft.from(n).hash(r)])}static hash(e,n,r){return Ne(ft.encode(e,n,r))}static async resolveNames(e,n,r,s){e=Object.assign({},e);for(const o in e)e[o]==null&&delete e[o];const i={};e.verifyingContract&&!Ee(e.verifyingContract,20)&&(i[e.verifyingContract]="0x");const a=ft.from(n);a.visit(r,(o,c)=>(o==="address"&&!Ee(c,20)&&(i[c]="0x"),c));for(const o in i)i[o]=await s(o);return e.verifyingContract&&i[e.verifyingContract]&&(e.verifyingContract=i[e.verifyingContract]),r=a.visit(r,(o,c)=>o==="address"&&i[c]?i[c]:c),{domain:e,value:r}}static getPayload(e,n,r){ft.hashDomain(e);const s={},i=[];To.forEach(c=>{const d=e[c];d!=null&&(s[c]=P4[c](d),i.push({name:c,type:q0[c]}))});const a=ft.from(n);n=a.types;const o=Object.assign({},n);return D(o.EIP712Domain==null,"types must not contain EIP712Domain type","types.EIP712Domain",n),o.EIP712Domain=i,a.encode(r),{types:o,domain:s,primaryType:a.primaryType,message:a.visit(r,(c,d)=>{if(c.match(/^bytes(\d*)/))return K(ce(d));if(c.match(/^u?int/))return X(d).toString();switch(c){case"address":return d.toLowerCase();case"bool":return!!d;case"string":return D(typeof d=="string","invalid string","value",d),d}D(!1,"unsupported type","type",c)})}}}function dt(t){const e=new Set;return t.forEach(n=>e.add(n)),Object.freeze(e)}const N4="external public payable override",R4=dt(N4.split(" ")),gm="constant external internal payable private public pure view override",O4=dt(gm.split(" ")),ym="constructor error event fallback function receive struct",Am=dt(ym.split(" ")),Em="calldata memory storage payable indexed",M4=dt(Em.split(" ")),L4="tuple returns",W4=[ym,Em,L4,gm].join(" "),H4=dt(W4.split(" ")),z4={"(":"OPEN_PAREN",")":"CLOSE_PAREN","[":"OPEN_BRACKET","]":"CLOSE_BRACKET",",":"COMMA","@":"AT"},G4=new RegExp("^(\\s*)"),V4=new RegExp("^([0-9]+)"),_4=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)"),wm=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)$"),Bm=new RegExp("^(address|bool|bytes([0-9]*)|string|u?int([0-9]*))$");class It{#e;#t;get offset(){return this.#e}get length(){return this.#t.length-this.#e}constructor(e){this.#e=0,this.#t=e.slice()}clone(){return new It(this.#t)}reset(){this.#e=0}#n(e=0,n=0){return new It(this.#t.slice(e,n).map(r=>Object.freeze(Object.assign({},r,{match:r.match-e,linkBack:r.linkBack-e,linkNext:r.linkNext-e}))))}popKeyword(e){const n=this.peek();if(n.type!=="KEYWORD"||!e.has(n.text))throw new Error(`expected keyword ${n.text}`);return this.pop().text}popType(e){if(this.peek().type!==e){const n=this.peek();throw new Error(`expected ${e}; got ${n.type} ${JSON.stringify(n.text)}`)}return this.pop().text}popParen(){const e=this.peek();if(e.type!=="OPEN_PAREN")throw new Error("bad start");const n=this.#n(this.#e+1,e.match+1);return this.#e=e.match+1,n}popParams(){const e=this.peek();if(e.type!=="OPEN_PAREN")throw new Error("bad start");const n=[];for(;this.#e<e.match-1;){const r=this.peek().linkNext;n.push(this.#n(this.#e+1,r)),this.#e=r}return this.#e=e.match+1,n}peek(){if(this.#e>=this.#t.length)throw new Error("out-of-bounds");return this.#t[this.#e]}peekKeyword(e){const n=this.peekType("KEYWORD");return n!=null&&e.has(n)?n:null}peekType(e){if(this.length===0)return null;const n=this.peek();return n.type===e?n.text:null}pop(){const e=this.peek();return this.#e++,e}toString(){const e=[];for(let n=this.#e;n<this.#t.length;n++){const r=this.#t[n];e.push(`${r.type}:${r.text}`)}return`<TokenString ${e.join(" ")}>`}}function zn(t){const e=[],n=a=>{const o=i<t.length?JSON.stringify(t[i]):"$EOI";throw new Error(`invalid token ${o} at ${i}: ${a}`)};let r=[],s=[],i=0;for(;i<t.length;){let a=t.substring(i),o=a.match(G4);o&&(i+=o[1].length,a=t.substring(i));const c={depth:r.length,linkBack:-1,linkNext:-1,match:-1,type:"",text:"",offset:i,value:-1};e.push(c);let d=z4[a[0]]||"";if(d){if(c.type=d,c.text=a[0],i++,d==="OPEN_PAREN")r.push(e.length-1),s.push(e.length-1);else if(d=="CLOSE_PAREN")r.length===0&&n("no matching open bracket"),c.match=r.pop(),e[c.match].match=e.length-1,c.depth--,c.linkBack=s.pop(),e[c.linkBack].linkNext=e.length-1;else if(d==="COMMA")c.linkBack=s.pop(),e[c.linkBack].linkNext=e.length-1,s.push(e.length-1);else if(d==="OPEN_BRACKET")c.type="BRACKET";else if(d==="CLOSE_BRACKET"){let l=e.pop().text;if(e.length>0&&e[e.length-1].type==="NUMBER"){const f=e.pop().text;l=f+l,e[e.length-1].value=ae(f)}if(e.length===0||e[e.length-1].type!=="BRACKET")throw new Error("missing opening bracket");e[e.length-1].text+=l}continue}if(o=a.match(_4),o){if(c.text=o[1],i+=c.text.length,H4.has(c.text)){c.type="KEYWORD";continue}if(c.text.match(Bm)){c.type="TYPE";continue}c.type="ID";continue}if(o=a.match(V4),o){c.text=o[1],c.type="NUMBER",i+=c.text.length;continue}throw new Error(`unexpected token ${JSON.stringify(a[0])} at position ${i}`)}return new It(e.map(a=>Object.freeze(a)))}function $0(t,e){let n=[];for(const r in e.keys())t.has(r)&&n.push(r);if(n.length>1)throw new Error(`conflicting types: ${n.join(", ")}`)}function Xa(t,e){if(e.peekKeyword(Am)){const n=e.pop().text;if(n!==t)throw new Error(`expected ${t}, got ${n}`)}return e.popType("ID")}function En(t,e){const n=new Set;for(;;){const r=t.peekType("KEYWORD");if(r==null||e&&!e.has(r))break;if(t.pop(),n.has(r))throw new Error(`duplicate keywords: ${JSON.stringify(r)}`);n.add(r)}return Object.freeze(n)}function Cm(t){let e=En(t,O4);return $0(e,dt("constant payable nonpayable".split(" "))),$0(e,dt("pure view payable nonpayable".split(" "))),e.has("view")?"view":e.has("pure")?"pure":e.has("payable")?"payable":e.has("nonpayable")?"nonpayable":e.has("constant")?"view":"nonpayable"}function pn(t,e){return t.popParams().map(n=>we.from(n,e))}function xm(t){if(t.peekType("AT")){if(t.pop(),t.peekType("NUMBER"))return X(t.pop().text);throw new Error("invalid gas")}return null}function gr(t){if(t.length)throw new Error(`unexpected tokens at offset ${t.offset}: ${t.toString()}`)}const j4=new RegExp(/^(.*)\[([0-9]*)\]$/);function J0(t){const e=t.match(Bm);if(D(e,"invalid type","type",t),t==="uint")return"uint256";if(t==="int")return"int256";if(e[2]){const n=parseInt(e[2]);D(n!==0&&n<=32,"invalid bytes length","type",t)}else if(e[3]){const n=parseInt(e[3]);D(n!==0&&n<=256&&n%8===0,"invalid numeric width","type",t)}return t}const Se={},yt=Symbol.for("_ethers_internal"),X0="_ParamTypeInternal",Y0="_ErrorInternal",Z0="_EventInternal",eu="_ConstructorInternal",tu="_FallbackInternal",nu="_FunctionInternal",ru="_StructInternal";class we{name;type;baseType;indexed;components;arrayLength;arrayChildren;constructor(e,n,r,s,i,a,o,c){if(ii(e,Se,"ParamType"),Object.defineProperty(this,yt,{value:X0}),a&&(a=Object.freeze(a.slice())),s==="array"){if(o==null||c==null)throw new Error("")}else if(o!=null||c!=null)throw new Error("");if(s==="tuple"){if(a==null)throw new Error("")}else if(a!=null)throw new Error("");ee(this,{name:n,type:r,baseType:s,indexed:i,components:a,arrayLength:o,arrayChildren:c})}format(e){if(e==null&&(e="sighash"),e==="json"){const r=this.name||"";if(this.isArray()){const i=JSON.parse(this.arrayChildren.format("json"));return i.name=r,i.type+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`,JSON.stringify(i)}const s={type:this.baseType==="tuple"?"tuple":this.type,name:r};return typeof this.indexed=="boolean"&&(s.indexed=this.indexed),this.isTuple()&&(s.components=this.components.map(i=>JSON.parse(i.format(e)))),JSON.stringify(s)}let n="";return this.isArray()?(n+=this.arrayChildren.format(e),n+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`):this.isTuple()?n+="("+this.components.map(r=>r.format(e)).join(e==="full"?", ":",")+")":n+=this.type,e!=="sighash"&&(this.indexed===!0&&(n+=" indexed"),e==="full"&&this.name&&(n+=" "+this.name)),n}isArray(){return this.baseType==="array"}isTuple(){return this.baseType==="tuple"}isIndexable(){return this.indexed!=null}walk(e,n){if(this.isArray()){if(!Array.isArray(e))throw new Error("invalid array value");if(this.arrayLength!==-1&&e.length!==this.arrayLength)throw new Error("array is wrong length");const r=this;return e.map(s=>r.arrayChildren.walk(s,n))}if(this.isTuple()){if(!Array.isArray(e))throw new Error("invalid tuple value");if(e.length!==this.components.length)throw new Error("array is wrong length");const r=this;return e.map((s,i)=>r.components[i].walk(s,n))}return n(this.type,e)}#e(e,n,r,s){if(this.isArray()){if(!Array.isArray(n))throw new Error("invalid array value");if(this.arrayLength!==-1&&n.length!==this.arrayLength)throw new Error("array is wrong length");const a=this.arrayChildren,o=n.slice();o.forEach((c,d)=>{a.#e(e,c,r,l=>{o[d]=l})}),s(o);return}if(this.isTuple()){const a=this.components;let o;if(Array.isArray(n))o=n.slice();else{if(n==null||typeof n!="object")throw new Error("invalid tuple value");o=a.map(c=>{if(!c.name)throw new Error("cannot use object value with unnamed components");if(!(c.name in n))throw new Error(`missing value for component ${c.name}`);return n[c.name]})}if(o.length!==this.components.length)throw new Error("array is wrong length");o.forEach((c,d)=>{a[d].#e(e,c,r,l=>{o[d]=l})}),s(o);return}const i=r(this.type,n);i.then?e.push((async function(){s(await i)})()):s(i)}async walkAsync(e,n){const r=[],s=[e];return this.#e(r,e,n,i=>{s[0]=i}),r.length&&await Promise.all(r),s[0]}static from(e,n){if(we.isParamType(e))return e;if(typeof e=="string")try{return we.from(zn(e),n)}catch{D(!1,"invalid param type","obj",e)}else if(e instanceof It){let o="",c="",d=null;En(e,dt(["tuple"])).has("tuple")||e.peekType("OPEN_PAREN")?(c="tuple",d=e.popParams().map(E=>we.from(E)),o=`tuple(${d.map(E=>E.format()).join(",")})`):(o=J0(e.popType("TYPE")),c=o);let l=null,f=null;for(;e.length&&e.peekType("BRACKET");){const E=e.pop();l=new we(Se,"",o,c,null,d,f,l),f=E.value,o+=E.text,c="array",d=null}let m=null;if(En(e,M4).has("indexed")){if(!n)throw new Error("");m=!0}const w=e.peekType("ID")?e.pop().text:"";if(e.length)throw new Error("leftover tokens");return new we(Se,w,o,c,m,d,f,l)}const r=e.name;D(!r||typeof r=="string"&&r.match(wm),"invalid name","obj.name",r);let s=e.indexed;s!=null&&(D(n,"parameter cannot be indexed","obj.indexed",e.indexed),s=!!s);let i=e.type,a=i.match(j4);if(a){const o=parseInt(a[2]||"-1"),c=we.from({type:a[1],components:e.components});return new we(Se,r||"",i,"array",s,null,o,c)}if(i==="tuple"||i.startsWith("tuple(")||i.startsWith("(")){const o=e.components!=null?e.components.map(d=>we.from(d)):null;return new we(Se,r||"",i,"tuple",s,o,null,null)}return i=J0(e.type),new we(Se,r||"",i,i,s,null,null,null)}static isParamType(e){return e&&e[yt]===X0}}class yr{type;inputs;constructor(e,n,r){ii(e,Se,"Fragment"),r=Object.freeze(r.slice()),ee(this,{type:n,inputs:r})}static from(e){if(typeof e=="string"){try{yr.from(JSON.parse(e))}catch{}return yr.from(zn(e))}if(e instanceof It)switch(e.peekKeyword(Am)){case"constructor":return bn.from(e);case"error":return mt.from(e);case"event":return Yt.from(e);case"fallback":case"receive":return cn.from(e);case"function":return Zt.from(e);case"struct":return lr.from(e)}else if(typeof e=="object"){switch(e.type){case"constructor":return bn.from(e);case"error":return mt.from(e);case"event":return Yt.from(e);case"fallback":case"receive":return cn.from(e);case"function":return Zt.from(e);case"struct":return lr.from(e)}W(!1,`unsupported type: ${e.type}`,"UNSUPPORTED_OPERATION",{operation:"Fragment.from"})}D(!1,"unsupported frgament object","obj",e)}static isConstructor(e){return bn.isFragment(e)}static isError(e){return mt.isFragment(e)}static isEvent(e){return Yt.isFragment(e)}static isFunction(e){return Zt.isFragment(e)}static isStruct(e){return lr.isFragment(e)}}class Ya extends yr{name;constructor(e,n,r,s){super(e,n,s),D(typeof r=="string"&&r.match(wm),"invalid identifier","name",r),s=Object.freeze(s.slice()),ee(this,{name:r})}}function _s(t,e){return"("+e.map(n=>n.format(t)).join(t==="full"?", ":",")+")"}class mt extends Ya{constructor(e,n,r){super(e,"error",n,r),Object.defineProperty(this,yt,{value:Y0})}get selector(){return Hn(this.format("sighash")).substring(0,10)}format(e){if(e==null&&(e="sighash"),e==="json")return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map(r=>JSON.parse(r.format(e)))});const n=[];return e!=="sighash"&&n.push("error"),n.push(this.name+_s(e,this.inputs)),n.join(" ")}static from(e){if(mt.isFragment(e))return e;if(typeof e=="string")return mt.from(zn(e));if(e instanceof It){const n=Xa("error",e),r=pn(e);return gr(e),new mt(Se,n,r)}return new mt(Se,e.name,e.inputs?e.inputs.map(we.from):[])}static isFragment(e){return e&&e[yt]===Y0}}class Yt extends Ya{anonymous;constructor(e,n,r,s){super(e,"event",n,r),Object.defineProperty(this,yt,{value:Z0}),ee(this,{anonymous:s})}get topicHash(){return Hn(this.format("sighash"))}format(e){if(e==null&&(e="sighash"),e==="json")return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map(r=>JSON.parse(r.format(e)))});const n=[];return e!=="sighash"&&n.push("event"),n.push(this.name+_s(e,this.inputs)),e!=="sighash"&&this.anonymous&&n.push("anonymous"),n.join(" ")}static getTopicHash(e,n){return n=(n||[]).map(s=>we.from(s)),new Yt(Se,e,n,!1).topicHash}static from(e){if(Yt.isFragment(e))return e;if(typeof e=="string")try{return Yt.from(zn(e))}catch{D(!1,"invalid event fragment","obj",e)}else if(e instanceof It){const n=Xa("event",e),r=pn(e,!0),s=!!En(e,dt(["anonymous"])).has("anonymous");return gr(e),new Yt(Se,n,r,s)}return new Yt(Se,e.name,e.inputs?e.inputs.map(n=>we.from(n,!0)):[],!!e.anonymous)}static isFragment(e){return e&&e[yt]===Z0}}class bn extends yr{payable;gas;constructor(e,n,r,s,i){super(e,n,r),Object.defineProperty(this,yt,{value:eu}),ee(this,{payable:s,gas:i})}format(e){if(W(e!=null&&e!=="sighash","cannot format a constructor for sighash","UNSUPPORTED_OPERATION",{operation:"format(sighash)"}),e==="json")return JSON.stringify({type:"constructor",stateMutability:this.payable?"payable":"undefined",payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(r=>JSON.parse(r.format(e)))});const n=[`constructor${_s(e,this.inputs)}`];return this.payable&&n.push("payable"),this.gas!=null&&n.push(`@${this.gas.toString()}`),n.join(" ")}static from(e){if(bn.isFragment(e))return e;if(typeof e=="string")try{return bn.from(zn(e))}catch{D(!1,"invalid constuctor fragment","obj",e)}else if(e instanceof It){En(e,dt(["constructor"]));const n=pn(e),r=!!En(e,R4).has("payable"),s=xm(e);return gr(e),new bn(Se,"constructor",n,r,s)}return new bn(Se,"constructor",e.inputs?e.inputs.map(we.from):[],!!e.payable,e.gas!=null?e.gas:null)}static isFragment(e){return e&&e[yt]===eu}}class cn extends yr{payable;constructor(e,n,r){super(e,"fallback",n),Object.defineProperty(this,yt,{value:tu}),ee(this,{payable:r})}format(e){const n=this.inputs.length===0?"receive":"fallback";if(e==="json"){const r=this.payable?"payable":"nonpayable";return JSON.stringify({type:n,stateMutability:r})}return`${n}()${this.payable?" payable":""}`}static from(e){if(cn.isFragment(e))return e;if(typeof e=="string")try{return cn.from(zn(e))}catch{D(!1,"invalid fallback fragment","obj",e)}else if(e instanceof It){const n=e.toString(),r=e.peekKeyword(dt(["fallback","receive"]));if(D(r,"type must be fallback or receive","obj",n),e.popKeyword(dt(["fallback","receive"]))==="receive"){const o=pn(e);return D(o.length===0,"receive cannot have arguments","obj.inputs",o),En(e,dt(["payable"])),gr(e),new cn(Se,[],!0)}let i=pn(e);i.length?D(i.length===1&&i[0].type==="bytes","invalid fallback inputs","obj.inputs",i.map(o=>o.format("minimal")).join(", ")):i=[we.from("bytes")];const a=Cm(e);if(D(a==="nonpayable"||a==="payable","fallback cannot be constants","obj.stateMutability",a),En(e,dt(["returns"])).has("returns")){const o=pn(e);D(o.length===1&&o[0].type==="bytes","invalid fallback outputs","obj.outputs",o.map(c=>c.format("minimal")).join(", "))}return gr(e),new cn(Se,i,a==="payable")}if(e.type==="receive")return new cn(Se,[],!0);if(e.type==="fallback"){const n=[we.from("bytes")],r=e.stateMutability==="payable";return new cn(Se,n,r)}D(!1,"invalid fallback description","obj",e)}static isFragment(e){return e&&e[yt]===tu}}class Zt extends Ya{constant;outputs;stateMutability;payable;gas;constructor(e,n,r,s,i,a){super(e,"function",n,s),Object.defineProperty(this,yt,{value:nu}),i=Object.freeze(i.slice()),ee(this,{constant:r==="view"||r==="pure",gas:a,outputs:i,payable:r==="payable",stateMutability:r})}get selector(){return Hn(this.format("sighash")).substring(0,10)}format(e){if(e==null&&(e="sighash"),e==="json")return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:void 0,payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(r=>JSON.parse(r.format(e))),outputs:this.outputs.map(r=>JSON.parse(r.format(e)))});const n=[];return e!=="sighash"&&n.push("function"),n.push(this.name+_s(e,this.inputs)),e!=="sighash"&&(this.stateMutability!=="nonpayable"&&n.push(this.stateMutability),this.outputs&&this.outputs.length&&(n.push("returns"),n.push(_s(e,this.outputs))),this.gas!=null&&n.push(`@${this.gas.toString()}`)),n.join(" ")}static getSelector(e,n){return n=(n||[]).map(s=>we.from(s)),new Zt(Se,e,"view",n,[],null).selector}static from(e){if(Zt.isFragment(e))return e;if(typeof e=="string")try{return Zt.from(zn(e))}catch{D(!1,"invalid function fragment","obj",e)}else if(e instanceof It){const r=Xa("function",e),s=pn(e),i=Cm(e);let a=[];En(e,dt(["returns"])).has("returns")&&(a=pn(e));const o=xm(e);return gr(e),new Zt(Se,r,i,s,a,o)}let n=e.stateMutability;return n==null&&(n="payable",typeof e.constant=="boolean"?(n="view",e.constant||(n="payable",typeof e.payable=="boolean"&&!e.payable&&(n="nonpayable"))):typeof e.payable=="boolean"&&!e.payable&&(n="nonpayable")),new Zt(Se,e.name,n,e.inputs?e.inputs.map(we.from):[],e.outputs?e.outputs.map(we.from):[],e.gas!=null?e.gas:null)}static isFragment(e){return e&&e[yt]===nu}}class lr extends Ya{constructor(e,n,r){super(e,"struct",n,r),Object.defineProperty(this,yt,{value:ru})}format(){throw new Error("@TODO")}static from(e){if(typeof e=="string")try{return lr.from(zn(e))}catch{D(!1,"invalid struct fragment","obj",e)}else if(e instanceof It){const n=Xa("struct",e),r=pn(e);return gr(e),new lr(Se,n,r)}return new lr(Se,e.name,e.inputs?e.inputs.map(we.from):[])}static isFragment(e){return e&&e[yt]===ru}}const zt=new Map;zt.set(0,"GENERIC_PANIC");zt.set(1,"ASSERT_FALSE");zt.set(17,"OVERFLOW");zt.set(18,"DIVIDE_BY_ZERO");zt.set(33,"ENUM_RANGE_ERROR");zt.set(34,"BAD_STORAGE_DATA");zt.set(49,"STACK_UNDERFLOW");zt.set(50,"ARRAY_RANGE_ERROR");zt.set(65,"OUT_OF_MEMORY");zt.set(81,"UNINITIALIZED_FUNCTION_CALL");const q4=new RegExp(/^bytes([0-9]*)$/),K4=new RegExp(/^(u?int)([0-9]*)$/);let Io=null,su=1024;function Q4(t,e,n,r){let s="missing revert data",i=null;const a=null;let o=null;if(n){s="execution reverted";const d=ce(n);if(n=K(n),d.length===0)s+=" (no data present; likely require(false) occurred",i="require(false)";else if(d.length%32!==4)s+=" (could not decode reason; invalid data length)";else if(K(d.slice(0,4))==="0x08c379a0")try{i=r.decode(["string"],d.slice(4))[0],o={signature:"Error(string)",name:"Error",args:[i]},s+=`: ${JSON.stringify(i)}`}catch{s+=" (could not decode reason; invalid string data)"}else if(K(d.slice(0,4))==="0x4e487b71")try{const l=Number(r.decode(["uint256"],d.slice(4))[0]);o={signature:"Panic(uint256)",name:"Panic",args:[l]},i=`Panic due to ${zt.get(l)||"UNKNOWN"}(${l})`,s+=`: ${i}`}catch{s+=" (could not decode panic code)"}else s+=" (unknown custom error)"}const c={to:e.to?fe(e.to):null,data:e.data||"0x"};return e.from&&(c.from=fe(e.from)),Ue(s,"CALL_EXCEPTION",{action:t,data:n,reason:i,transaction:c,invocation:a,revert:o})}class Ar{#e(e){if(e.isArray())return new y3(this.#e(e.arrayChildren),e.arrayLength,e.name);if(e.isTuple())return new Di(e.components.map(r=>this.#e(r)),e.name);switch(e.baseType){case"address":return new p3(e.name);case"bool":return new A3(e.name);case"string":return new T3(e.name);case"bytes":return new E3(e.name);case"":return new C3(e.name)}let n=e.type.match(K4);if(n){let r=parseInt(n[2]||"256");return D(r!==0&&r<=256&&r%8===0,"invalid "+n[1]+" bit length","param",e),new S3(r/8,n[1]==="int",e.name)}if(n=e.type.match(q4),n){let r=parseInt(n[1]);return D(r!==0&&r<=32,"invalid bytes length","param",e),new w3(r,e.name)}D(!1,"invalid type","type",e.type)}getDefaultValue(e){const n=e.map(s=>this.#e(we.from(s)));return new Di(n,"_").defaultValue()}encode(e,n){$h(n.length,e.length,"types/values length mismatch");const r=e.map(a=>this.#e(we.from(a))),s=new Di(r,"_"),i=new bc;return s.encode(i,n),i.data}decode(e,n,r){const s=e.map(a=>this.#e(we.from(a)));return new Di(s,"_").decode(new Sl(n,r,su))}static _setDefaultMaxInflation(e){D(typeof e=="number"&&Number.isInteger(e),"invalid defaultMaxInflation factor","value",e),su=e}static defaultAbiCoder(){return Io==null&&(Io=new Ar),Io}static getBuiltinCallException(e,n,r){return Q4(e,n,r,Ar.defaultAbiCoder())}}class $4{fragment;name;signature;topic;args;constructor(e,n,r){const s=e.name,i=e.format();ee(this,{fragment:e,name:s,signature:i,topic:n,args:r})}}class J4{fragment;name;args;signature;selector;value;constructor(e,n,r,s){const i=e.name,a=e.format();ee(this,{fragment:e,name:i,args:r,signature:a,selector:n,value:s})}}class X4{fragment;name;args;signature;selector;constructor(e,n,r){const s=e.name,i=e.format();ee(this,{fragment:e,name:s,args:r,signature:i,selector:n})}}class iu{hash;_isIndexed;static isIndexed(e){return!!(e&&e._isIndexed)}constructor(e){ee(this,{hash:e,_isIndexed:!0})}}const au={0:"generic panic",1:"assert(false)",17:"arithmetic overflow",18:"division or modulo by zero",33:"enum overflow",34:"invalid encoded storage byte array accessed",49:"out-of-bounds array access; popping on an empty array",50:"out-of-bounds access of an array or bytesN",65:"out of memory",81:"uninitialized function"},ou={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:t=>`reverted with reason string ${JSON.stringify(t)}`},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"],reason:t=>{let e="unknown panic code";return t>=0&&t<=255&&au[t.toString()]&&(e=au[t.toString()]),`reverted with panic code 0x${t.toString(16)} (${e})`}}};class en{fragments;deploy;fallback;receive;#e;#t;#n;#r;constructor(e){let n=[];typeof e=="string"?n=JSON.parse(e):n=e,this.#n=new Map,this.#e=new Map,this.#t=new Map;const r=[];for(const a of n)try{r.push(yr.from(a))}catch(o){console.log(`[Warning] Invalid Fragment ${JSON.stringify(a)}:`,o.message)}ee(this,{fragments:Object.freeze(r)});let s=null,i=!1;this.#r=this.getAbiCoder(),this.fragments.forEach((a,o)=>{let c;switch(a.type){case"constructor":if(this.deploy){console.log("duplicate definition - constructor");return}ee(this,{deploy:a});return;case"fallback":a.inputs.length===0?i=!0:(D(!s||a.payable!==s.payable,"conflicting fallback fragments",`fragments[${o}]`,a),s=a,i=s.payable);return;case"function":c=this.#n;break;case"event":c=this.#t;break;case"error":c=this.#e;break;default:return}const d=a.format();c.has(d)||c.set(d,a)}),this.deploy||ee(this,{deploy:bn.from("constructor()")}),ee(this,{fallback:s,receive:i})}format(e){const n=e?"minimal":"full";return this.fragments.map(s=>s.format(n))}formatJson(){const e=this.fragments.map(n=>n.format("json"));return JSON.stringify(e.map(n=>JSON.parse(n)))}getAbiCoder(){return Ar.defaultAbiCoder()}#s(e,n,r){if(Ee(e)){const i=e.toLowerCase();for(const a of this.#n.values())if(i===a.selector)return a;return null}if(e.indexOf("(")===-1){const i=[];for(const[a,o]of this.#n)a.split("(")[0]===e&&i.push(o);if(n){const a=n.length>0?n[n.length-1]:null;let o=n.length,c=!0;Pe.isTyped(a)&&a.type==="overrides"&&(c=!1,o--);for(let d=i.length-1;d>=0;d--){const l=i[d].inputs.length;l!==o&&(!c||l!==o-1)&&i.splice(d,1)}for(let d=i.length-1;d>=0;d--){const l=i[d].inputs;for(let f=0;f<n.length;f++)if(Pe.isTyped(n[f])){if(f>=l.length){if(n[f].type==="overrides")continue;i.splice(d,1);break}if(n[f].type!==l[f].baseType){i.splice(d,1);break}}}}if(i.length===1&&n&&n.length!==i[0].inputs.length){const a=n[n.length-1];(a==null||Array.isArray(a)||typeof a!="object")&&i.splice(0,1)}if(i.length===0)return null;if(i.length>1&&r){const a=i.map(o=>JSON.stringify(o.format())).join(", ");D(!1,`ambiguous function description (i.e. matches ${a})`,"key",e)}return i[0]}const s=this.#n.get(Zt.from(e).format());return s||null}getFunctionName(e){const n=this.#s(e,null,!1);return D(n,"no matching function","key",e),n.name}hasFunction(e){return!!this.#s(e,null,!1)}getFunction(e,n){return this.#s(e,n||null,!0)}forEachFunction(e){const n=Array.from(this.#n.keys());n.sort((r,s)=>r.localeCompare(s));for(let r=0;r<n.length;r++){const s=n[r];e(this.#n.get(s),r)}}#a(e,n,r){if(Ee(e)){const i=e.toLowerCase();for(const a of this.#t.values())if(i===a.topicHash)return a;return null}if(e.indexOf("(")===-1){const i=[];for(const[a,o]of this.#t)a.split("(")[0]===e&&i.push(o);if(n){for(let a=i.length-1;a>=0;a--)i[a].inputs.length<n.length&&i.splice(a,1);for(let a=i.length-1;a>=0;a--){const o=i[a].inputs;for(let c=0;c<n.length;c++)if(Pe.isTyped(n[c])&&n[c].type!==o[c].baseType){i.splice(a,1);break}}}if(i.length===0)return null;if(i.length>1&&r){const a=i.map(o=>JSON.stringify(o.format())).join(", ");D(!1,`ambiguous event description (i.e. matches ${a})`,"key",e)}return i[0]}const s=this.#t.get(Yt.from(e).format());return s||null}getEventName(e){const n=this.#a(e,null,!1);return D(n,"no matching event","key",e),n.name}hasEvent(e){return!!this.#a(e,null,!1)}getEvent(e,n){return this.#a(e,n||null,!0)}forEachEvent(e){const n=Array.from(this.#t.keys());n.sort((r,s)=>r.localeCompare(s));for(let r=0;r<n.length;r++){const s=n[r];e(this.#t.get(s),r)}}getError(e,n){if(Ee(e)){const s=e.toLowerCase();if(ou[s])return mt.from(ou[s].signature);for(const i of this.#e.values())if(s===i.selector)return i;return null}if(e.indexOf("(")===-1){const s=[];for(const[i,a]of this.#e)i.split("(")[0]===e&&s.push(a);if(s.length===0)return e==="Error"?mt.from("error Error(string)"):e==="Panic"?mt.from("error Panic(uint256)"):null;if(s.length>1){const i=s.map(a=>JSON.stringify(a.format())).join(", ");D(!1,`ambiguous error description (i.e. ${i})`,"name",e)}return s[0]}if(e=mt.from(e).format(),e==="Error(string)")return mt.from("error Error(string)");if(e==="Panic(uint256)")return mt.from("error Panic(uint256)");const r=this.#e.get(e);return r||null}forEachError(e){const n=Array.from(this.#e.keys());n.sort((r,s)=>r.localeCompare(s));for(let r=0;r<n.length;r++){const s=n[r];e(this.#e.get(s),r)}}_decodeParams(e,n){return this.#r.decode(e,n)}_encodeParams(e,n){return this.#r.encode(e,n)}encodeDeploy(e){return this._encodeParams(this.deploy.inputs,e||[])}decodeErrorResult(e,n){if(typeof e=="string"){const r=this.getError(e);D(r,"unknown error","fragment",e),e=r}return D(xe(n,0,4)===e.selector,`data signature does not match error ${e.name}.`,"data",n),this._decodeParams(e.inputs,xe(n,4))}encodeErrorResult(e,n){if(typeof e=="string"){const r=this.getError(e);D(r,"unknown error","fragment",e),e=r}return De([e.selector,this._encodeParams(e.inputs,n||[])])}decodeFunctionData(e,n){if(typeof e=="string"){const r=this.getFunction(e);D(r,"unknown function","fragment",e),e=r}return D(xe(n,0,4)===e.selector,`data signature does not match function ${e.name}.`,"data",n),this._decodeParams(e.inputs,xe(n,4))}encodeFunctionData(e,n){if(typeof e=="string"){const r=this.getFunction(e);D(r,"unknown function","fragment",e),e=r}return De([e.selector,this._encodeParams(e.inputs,n||[])])}decodeFunctionResult(e,n){if(typeof e=="string"){const i=this.getFunction(e);D(i,"unknown function","fragment",e),e=i}let r="invalid length for result data";const s=rt(n);if(s.length%32===0)try{return this.#r.decode(e.outputs,s)}catch{r="could not decode result data"}W(!1,r,"BAD_DATA",{value:K(s),info:{method:e.name,signature:e.format()}})}makeError(e,n){const r=ce(e,"data"),s=Ar.getBuiltinCallException("call",n,r);if(s.message.startsWith("execution reverted (unknown custom error)")){const o=K(r.slice(0,4)),c=this.getError(o);if(c)try{const d=this.#r.decode(c.inputs,r.slice(4));s.revert={name:c.name,signature:c.format(),args:d},s.reason=s.revert.signature,s.message=`execution reverted: ${s.reason}`}catch{s.message="execution reverted (coult not decode custom error)"}}const a=this.parseTransaction(n);return a&&(s.invocation={method:a.name,signature:a.signature,args:a.args}),s}encodeFunctionResult(e,n){if(typeof e=="string"){const r=this.getFunction(e);D(r,"unknown function","fragment",e),e=r}return K(this.#r.encode(e.outputs,n||[]))}encodeFilterTopics(e,n){if(typeof e=="string"){const i=this.getEvent(e);D(i,"unknown event","eventFragment",e),e=i}W(n.length<=e.inputs.length,`too many arguments for ${e.format()}`,"UNEXPECTED_ARGUMENT",{count:n.length,expectedCount:e.inputs.length});const r=[];e.anonymous||r.push(e.topicHash);const s=(i,a)=>i.type==="string"?Hn(a):i.type==="bytes"?Ne(K(a)):(i.type==="bool"&&typeof a=="boolean"?a=a?"0x01":"0x00":i.type.match(/^u?int/)?a=An(a):i.type.match(/^bytes/)?a=Zh(a,32):i.type==="address"&&this.#r.encode(["address"],[a]),Wn(K(a),32));for(n.forEach((i,a)=>{const o=e.inputs[a];if(!o.indexed){D(i==null,"cannot filter non-indexed parameters; must be null","contract."+o.name,i);return}i==null?r.push(null):o.baseType==="array"||o.baseType==="tuple"?D(!1,"filtering with tuples or arrays not supported","contract."+o.name,i):Array.isArray(i)?r.push(i.map(c=>s(o,c))):r.push(s(o,i))});r.length&&r[r.length-1]===null;)r.pop();return r}encodeEventLog(e,n){if(typeof e=="string"){const a=this.getEvent(e);D(a,"unknown event","eventFragment",e),e=a}const r=[],s=[],i=[];return e.anonymous||r.push(e.topicHash),D(n.length===e.inputs.length,"event arguments/values mismatch","values",n),e.inputs.forEach((a,o)=>{const c=n[o];if(a.indexed)if(a.type==="string")r.push(Hn(c));else if(a.type==="bytes")r.push(Ne(c));else{if(a.baseType==="tuple"||a.baseType==="array")throw new Error("not implemented");r.push(this.#r.encode([a.type],[c]))}else s.push(a),i.push(c)}),{data:this.#r.encode(s,i),topics:r}}decodeEventLog(e,n,r){if(typeof e=="string"){const b=this.getEvent(e);D(b,"unknown event","eventFragment",e),e=b}if(r!=null&&!e.anonymous){const b=e.topicHash;D(Ee(r[0],32)&&r[0].toLowerCase()===b,"fragment/topic mismatch","topics[0]",r[0]),r=r.slice(1)}const s=[],i=[],a=[];e.inputs.forEach((b,w)=>{b.indexed?b.type==="string"||b.type==="bytes"||b.baseType==="tuple"||b.baseType==="array"?(s.push(we.from({type:"bytes32",name:b.name})),a.push(!0)):(s.push(b),a.push(!1)):(i.push(b),a.push(!1))});const o=r!=null?this.#r.decode(s,De(r)):null,c=this.#r.decode(i,n,!0),d=[],l=[];let f=0,m=0;return e.inputs.forEach((b,w)=>{let E=null;if(b.indexed)if(o==null)E=new iu(null);else if(a[w])E=new iu(o[m++]);else try{E=o[m++]}catch(y){E=y}else try{E=c[f++]}catch(y){E=y}d.push(E),l.push(b.name||null)}),mn.fromItems(d,l)}parseTransaction(e){const n=ce(e.data,"tx.data"),r=X(e.value!=null?e.value:0,"tx.value"),s=this.getFunction(K(n.slice(0,4)));if(!s)return null;const i=this.#r.decode(s.inputs,n.slice(4));return new J4(s,s.selector,i,r)}parseCallResult(e){throw new Error("@TODO")}parseLog(e){const n=this.getEvent(e.topics[0]);return!n||n.anonymous?null:new $4(n,n.topicHash,this.decodeEventLog(n,e.data,e.topics))}parseError(e){const n=K(e),r=this.getError(xe(n,0,4));if(!r)return null;const s=this.#r.decode(r.inputs,xe(n,4));return new X4(r,r.selector,s)}static from(e){return e instanceof en?e:typeof e=="string"?new en(JSON.parse(e)):typeof e.formatJson=="function"?new en(e.formatJson()):typeof e.format=="function"?new en(e.format("json")):new en(e)}}const Dm=BigInt(0);function Gr(t){return t??null}function Re(t){return t==null?null:t.toString()}class cu{gasPrice;maxFeePerGas;maxPriorityFeePerGas;constructor(e,n,r){ee(this,{gasPrice:Gr(e),maxFeePerGas:Gr(n),maxPriorityFeePerGas:Gr(r)})}toJSON(){const{gasPrice:e,maxFeePerGas:n,maxPriorityFeePerGas:r}=this;return{_type:"FeeData",gasPrice:Re(e),maxFeePerGas:Re(n),maxPriorityFeePerGas:Re(r)}}}function js(t){const e={};t.to&&(e.to=t.to),t.from&&(e.from=t.from),t.data&&(e.data=K(t.data));const n="chainId,gasLimit,gasPrice,maxFeePerBlobGas,maxFeePerGas,maxPriorityFeePerGas,value".split(/,/);for(const s of n)!(s in t)||t[s]==null||(e[s]=X(t[s],`request.${s}`));const r="type,nonce".split(/,/);for(const s of r)!(s in t)||t[s]==null||(e[s]=ae(t[s],`request.${s}`));return t.accessList&&(e.accessList=Cr(t.accessList)),"blockTag"in t&&(e.blockTag=t.blockTag),"enableCcipRead"in t&&(e.enableCcipRead=!!t.enableCcipRead),"customData"in t&&(e.customData=t.customData),"blobVersionedHashes"in t&&t.blobVersionedHashes&&(e.blobVersionedHashes=t.blobVersionedHashes.slice()),"kzg"in t&&(e.kzg=t.kzg),"blobs"in t&&t.blobs&&(e.blobs=t.blobs.map(s=>Ha(s)?K(s):Object.assign({},s))),e}class Y4{provider;number;hash;timestamp;parentHash;parentBeaconBlockRoot;nonce;difficulty;gasLimit;gasUsed;stateRoot;receiptsRoot;blobGasUsed;excessBlobGas;miner;prevRandao;extraData;baseFeePerGas;#e;constructor(e,n){this.#e=e.transactions.map(r=>typeof r!="string"?new di(r,n):r),ee(this,{provider:n,hash:Gr(e.hash),number:e.number,timestamp:e.timestamp,parentHash:e.parentHash,parentBeaconBlockRoot:e.parentBeaconBlockRoot,nonce:e.nonce,difficulty:e.difficulty,gasLimit:e.gasLimit,gasUsed:e.gasUsed,blobGasUsed:e.blobGasUsed,excessBlobGas:e.excessBlobGas,miner:e.miner,prevRandao:Gr(e.prevRandao),extraData:e.extraData,baseFeePerGas:Gr(e.baseFeePerGas),stateRoot:e.stateRoot,receiptsRoot:e.receiptsRoot})}get transactions(){return this.#e.map(e=>typeof e=="string"?e:e.hash)}get prefetchedTransactions(){const e=this.#e.slice();return e.length===0?[]:(W(typeof e[0]=="object","transactions were not prefetched with block request","UNSUPPORTED_OPERATION",{operation:"transactionResponses()"}),e)}toJSON(){const{baseFeePerGas:e,difficulty:n,extraData:r,gasLimit:s,gasUsed:i,hash:a,miner:o,prevRandao:c,nonce:d,number:l,parentHash:f,parentBeaconBlockRoot:m,stateRoot:b,receiptsRoot:w,timestamp:E,transactions:y}=this;return{_type:"Block",baseFeePerGas:Re(e),difficulty:Re(n),extraData:r,gasLimit:Re(s),gasUsed:Re(i),blobGasUsed:Re(this.blobGasUsed),excessBlobGas:Re(this.excessBlobGas),hash:a,miner:o,prevRandao:c,nonce:d,number:l,parentHash:f,timestamp:E,parentBeaconBlockRoot:m,stateRoot:b,receiptsRoot:w,transactions:y}}[Symbol.iterator](){let e=0;const n=this.transactions;return{next:()=>e<this.length?{value:n[e++],done:!1}:{value:void 0,done:!0}}}get length(){return this.#e.length}get date(){return this.timestamp==null?null:new Date(this.timestamp*1e3)}async getTransaction(e){let n;if(typeof e=="number")n=this.#e[e];else{const r=e.toLowerCase();for(const s of this.#e)if(typeof s=="string"){if(s!==r)continue;n=s;break}else{if(s.hash!==r)continue;n=s;break}}if(n==null)throw new Error("no such tx");return typeof n=="string"?await this.provider.getTransaction(n):n}getPrefetchedTransaction(e){const n=this.prefetchedTransactions;if(typeof e=="number")return n[e];e=e.toLowerCase();for(const r of n)if(r.hash===e)return r;D(!1,"no matching transaction","indexOrHash",e)}isMined(){return!!this.hash}isLondon(){return!!this.baseFeePerGas}orphanedEvent(){if(!this.isMined())throw new Error("");return Z4(this)}}class li{provider;transactionHash;blockHash;blockNumber;removed;address;data;topics;index;transactionIndex;constructor(e,n){this.provider=n;const r=Object.freeze(e.topics.slice());ee(this,{transactionHash:e.transactionHash,blockHash:e.blockHash,blockNumber:e.blockNumber,removed:e.removed,address:e.address,data:e.data,topics:r,index:e.index,transactionIndex:e.transactionIndex})}toJSON(){const{address:e,blockHash:n,blockNumber:r,data:s,index:i,removed:a,topics:o,transactionHash:c,transactionIndex:d}=this;return{_type:"log",address:e,blockHash:n,blockNumber:r,data:s,index:i,removed:a,topics:o,transactionHash:c,transactionIndex:d}}async getBlock(){const e=await this.provider.getBlock(this.blockHash);return W(!!e,"failed to find transaction","UNKNOWN_ERROR",{}),e}async getTransaction(){const e=await this.provider.getTransaction(this.transactionHash);return W(!!e,"failed to find transaction","UNKNOWN_ERROR",{}),e}async getTransactionReceipt(){const e=await this.provider.getTransactionReceipt(this.transactionHash);return W(!!e,"failed to find transaction receipt","UNKNOWN_ERROR",{}),e}removedEvent(){return e9(this)}}class Fm{provider;to;from;contractAddress;hash;index;blockHash;blockNumber;logsBloom;gasUsed;blobGasUsed;cumulativeGasUsed;gasPrice;blobGasPrice;type;status;root;#e;constructor(e,n){this.#e=Object.freeze(e.logs.map(s=>new li(s,n)));let r=Dm;e.effectiveGasPrice!=null?r=e.effectiveGasPrice:e.gasPrice!=null&&(r=e.gasPrice),ee(this,{provider:n,to:e.to,from:e.from,contractAddress:e.contractAddress,hash:e.hash,index:e.index,blockHash:e.blockHash,blockNumber:e.blockNumber,logsBloom:e.logsBloom,gasUsed:e.gasUsed,cumulativeGasUsed:e.cumulativeGasUsed,blobGasUsed:e.blobGasUsed,gasPrice:r,blobGasPrice:e.blobGasPrice,type:e.type,status:e.status,root:e.root})}get logs(){return this.#e}toJSON(){const{to:e,from:n,contractAddress:r,hash:s,index:i,blockHash:a,blockNumber:o,logsBloom:c,logs:d,status:l,root:f}=this;return{_type:"TransactionReceipt",blockHash:a,blockNumber:o,contractAddress:r,cumulativeGasUsed:Re(this.cumulativeGasUsed),from:n,gasPrice:Re(this.gasPrice),blobGasUsed:Re(this.blobGasUsed),blobGasPrice:Re(this.blobGasPrice),gasUsed:Re(this.gasUsed),hash:s,index:i,logs:d,logsBloom:c,root:f,status:l,to:e}}get length(){return this.logs.length}[Symbol.iterator](){let e=0;return{next:()=>e<this.length?{value:this.logs[e++],done:!1}:{value:void 0,done:!0}}}get fee(){return this.gasUsed*this.gasPrice}async getBlock(){const e=await this.provider.getBlock(this.blockHash);if(e==null)throw new Error("TODO");return e}async getTransaction(){const e=await this.provider.getTransaction(this.hash);if(e==null)throw new Error("TODO");return e}async getResult(){return await this.provider.getTransactionResult(this.hash)}async confirmations(){return await this.provider.getBlockNumber()-this.blockNumber+1}removedEvent(){return Tm(this)}reorderedEvent(e){return W(!e||e.isMined(),"unmined 'other' transction cannot be orphaned","UNSUPPORTED_OPERATION",{operation:"reorderedEvent(other)"}),Sm(this,e)}}class di{provider;blockNumber;blockHash;index;hash;type;to;from;nonce;gasLimit;gasPrice;maxPriorityFeePerGas;maxFeePerGas;maxFeePerBlobGas;data;value;chainId;signature;accessList;blobVersionedHashes;#e;constructor(e,n){this.provider=n,this.blockNumber=e.blockNumber!=null?e.blockNumber:null,this.blockHash=e.blockHash!=null?e.blockHash:null,this.hash=e.hash,this.index=e.index,this.type=e.type,this.from=e.from,this.to=e.to||null,this.gasLimit=e.gasLimit,this.nonce=e.nonce,this.data=e.data,this.value=e.value,this.gasPrice=e.gasPrice,this.maxPriorityFeePerGas=e.maxPriorityFeePerGas!=null?e.maxPriorityFeePerGas:null,this.maxFeePerGas=e.maxFeePerGas!=null?e.maxFeePerGas:null,this.maxFeePerBlobGas=e.maxFeePerBlobGas!=null?e.maxFeePerBlobGas:null,this.chainId=e.chainId,this.signature=e.signature,this.accessList=e.accessList!=null?e.accessList:null,this.blobVersionedHashes=e.blobVersionedHashes!=null?e.blobVersionedHashes:null,this.#e=-1}toJSON(){const{blockNumber:e,blockHash:n,index:r,hash:s,type:i,to:a,from:o,nonce:c,data:d,signature:l,accessList:f,blobVersionedHashes:m}=this;return{_type:"TransactionResponse",accessList:f,blockNumber:e,blockHash:n,blobVersionedHashes:m,chainId:Re(this.chainId),data:d,from:o,gasLimit:Re(this.gasLimit),gasPrice:Re(this.gasPrice),hash:s,maxFeePerGas:Re(this.maxFeePerGas),maxPriorityFeePerGas:Re(this.maxPriorityFeePerGas),maxFeePerBlobGas:Re(this.maxFeePerBlobGas),nonce:c,signature:l,to:a,index:r,type:i,value:Re(this.value)}}async getBlock(){let e=this.blockNumber;if(e==null){const r=await this.getTransaction();r&&(e=r.blockNumber)}if(e==null)return null;const n=this.provider.getBlock(e);if(n==null)throw new Error("TODO");return n}async getTransaction(){return this.provider.getTransaction(this.hash)}async confirmations(){if(this.blockNumber==null){const{tx:n,blockNumber:r}=await tt({tx:this.getTransaction(),blockNumber:this.provider.getBlockNumber()});return n==null||n.blockNumber==null?0:r-n.blockNumber+1}return await this.provider.getBlockNumber()-this.blockNumber+1}async wait(e,n){const r=e??1,s=n??0;let i=this.#e,a=-1,o=i===-1;const c=async()=>{if(o)return null;const{blockNumber:m,nonce:b}=await tt({blockNumber:this.provider.getBlockNumber(),nonce:this.provider.getTransactionCount(this.from)});if(b<this.nonce){i=m;return}if(o)return null;const w=await this.getTransaction();if(!(w&&w.blockNumber!=null))for(a===-1&&(a=i-3,a<this.#e&&(a=this.#e));a<=m;){if(o)return null;const E=await this.provider.getBlock(a,!0);if(E==null)return;for(const y of E)if(y===this.hash)return;for(let y=0;y<E.length;y++){const p=await E.getTransaction(y);if(p.from===this.from&&p.nonce===this.nonce){if(o)return null;const x=await this.provider.getTransactionReceipt(p.hash);if(x==null||m-x.blockNumber+1<r)return;let A="replaced";p.data===this.data&&p.to===this.to&&p.value===this.value?A="repriced":p.data==="0x"&&p.from===p.to&&p.value===Dm&&(A="cancelled"),W(!1,"transaction was replaced","TRANSACTION_REPLACED",{cancelled:A==="replaced"||A==="cancelled",reason:A,replacement:p.replaceableTransaction(i),hash:p.hash,receipt:x})}}a++}},d=m=>{if(m==null||m.status!==0)return m;W(!1,"transaction execution reverted","CALL_EXCEPTION",{action:"sendTransaction",data:null,reason:null,invocation:null,revert:null,transaction:{to:m.to,from:m.from,data:""},receipt:m})},l=await this.provider.getTransactionReceipt(this.hash);if(r===0)return d(l);if(l){if(await l.confirmations()>=r)return d(l)}else if(await c(),r===0)return null;return await new Promise((m,b)=>{const w=[],E=()=>{w.forEach(p=>p())};if(w.push(()=>{o=!0}),s>0){const p=setTimeout(()=>{E(),b(Ue("wait for transaction timeout","TIMEOUT"))},s);w.push(()=>{clearTimeout(p)})}const y=async p=>{if(await p.confirmations()>=r){E();try{m(d(p))}catch(x){b(x)}}};if(w.push(()=>{this.provider.off(this.hash,y)}),this.provider.on(this.hash,y),i>=0){const p=async()=>{try{await c()}catch(x){if(Je(x,"TRANSACTION_REPLACED")){E(),b(x);return}}o||this.provider.once("block",p)};w.push(()=>{this.provider.off("block",p)}),this.provider.once("block",p)}})}isMined(){return this.blockHash!=null}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}isCancun(){return this.type===3}removedEvent(){return W(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),Tm(this)}reorderedEvent(e){return W(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),W(!e||e.isMined(),"unmined 'other' transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),Sm(this,e)}replaceableTransaction(e){D(Number.isInteger(e)&&e>=0,"invalid startBlock","startBlock",e);const n=new di(this,this.provider);return n.#e=e,n}}function Z4(t){return{orphan:"drop-block",hash:t.hash,number:t.number}}function Sm(t,e){return{orphan:"reorder-transaction",tx:t,other:e}}function Tm(t){return{orphan:"drop-transaction",tx:t}}function e9(t){return{orphan:"drop-log",log:{transactionHash:t.transactionHash,blockHash:t.blockHash,blockNumber:t.blockNumber,address:t.address,data:t.data,topics:Object.freeze(t.topics.slice()),index:t.index}}}class _l extends li{interface;fragment;args;constructor(e,n,r){super(e,e.provider);const s=n.decodeEventLog(r,e.data,e.topics);ee(this,{args:s,fragment:r,interface:n})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}}class vm extends li{error;constructor(e,n){super(e,e.provider),ee(this,{error:n})}}class t9 extends Fm{#e;constructor(e,n,r){super(r,n),this.#e=e}get logs(){return super.logs.map(e=>{const n=e.topics.length?this.#e.getEvent(e.topics[0]):null;if(n)try{return new _l(e,this.#e,n)}catch(r){return new vm(e,r)}return e})}}class jl extends di{#e;constructor(e,n,r){super(r,n),this.#e=e}async wait(e,n){const r=await super.wait(e,n);return r==null?null:new t9(this.#e,this.provider,r)}}class Im extends n1{log;constructor(e,n,r,s){super(e,n,r),ee(this,{log:s})}async getBlock(){return await this.log.getBlock()}async getTransaction(){return await this.log.getTransaction()}async getTransactionReceipt(){return await this.log.getTransactionReceipt()}}class n9 extends Im{constructor(e,n,r,s,i){super(e,n,r,new _l(i,e.interface,s));const a=e.interface.decodeEventLog(s,this.log.data,this.log.topics);ee(this,{args:a,fragment:s})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}}const lu=BigInt(0);function km(t){return t&&typeof t.call=="function"}function Um(t){return t&&typeof t.estimateGas=="function"}function Za(t){return t&&typeof t.resolveName=="function"}function Pm(t){return t&&typeof t.sendTransaction=="function"}function Nm(t){if(t!=null){if(Za(t))return t;if(t.provider)return t.provider}}class r9{#e;fragment;constructor(e,n,r){if(ee(this,{fragment:n}),n.inputs.length<r.length)throw new Error("too many arguments");const s=Er(e.runner,"resolveName"),i=Za(s)?s:null;this.#e=(async function(){const a=await Promise.all(n.inputs.map((o,c)=>r[c]==null?null:o.walkAsync(r[c],(l,f)=>l==="address"?Array.isArray(f)?Promise.all(f.map(m=>it(m,i))):it(f,i):f)));return e.interface.encodeFilterTopics(n,a)})()}getTopicFilter(){return this.#e}}function Er(t,e){return t==null?null:typeof t[e]=="function"?t:t.provider&&typeof t.provider[e]=="function"?t.provider:null}function nr(t){return t==null?null:t.provider||null}async function ql(t,e){const n=Pe.dereference(t,"overrides");D(typeof n=="object","invalid overrides parameter","overrides",t);const r=js(n);return D(r.to==null||(e||[]).indexOf("to")>=0,"cannot override to","overrides.to",r.to),D(r.data==null||(e||[]).indexOf("data")>=0,"cannot override data","overrides.data",r.data),r.from&&(r.from=r.from),r}async function Rm(t,e,n){const r=Er(t,"resolveName"),s=Za(r)?r:null;return await Promise.all(e.map((i,a)=>i.walkAsync(n[a],(o,c)=>(c=Pe.dereference(c,o),o==="address"?it(c,s):c))))}function s9(t){const e=async function(a){const o=await ql(a,["data"]);o.to=await t.getAddress(),o.from&&(o.from=await it(o.from,Nm(t.runner)));const c=t.interface,d=X(o.value||lu,"overrides.value")===lu,l=(o.data||"0x")==="0x";c.fallback&&!c.fallback.payable&&c.receive&&!l&&!d&&D(!1,"cannot send data to receive or send value to non-payable fallback","overrides",a),D(c.fallback||l,"cannot send data to receive-only contract","overrides.data",o.data);const f=c.receive||c.fallback&&c.fallback.payable;return D(f||d,"cannot send value to non-payable fallback","overrides.value",o.value),D(c.fallback||l,"cannot send data to receive-only contract","overrides.data",o.data),o},n=async function(a){const o=Er(t.runner,"call");W(km(o),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});const c=await e(a);try{return await o.call(c)}catch(d){throw Dl(d)&&d.data?t.interface.makeError(d.data,c):d}},r=async function(a){const o=t.runner;W(Pm(o),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const c=await o.sendTransaction(await e(a)),d=nr(t.runner);return new jl(t.interface,d,c)},s=async function(a){const o=Er(t.runner,"estimateGas");return W(Um(o),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await o.estimateGas(await e(a))},i=async a=>await r(a);return ee(i,{_contract:t,estimateGas:s,populateTransaction:e,send:r,staticCall:n}),i}function i9(t,e){const n=function(...d){const l=t.interface.getFunction(e,d);return W(l,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e,args:d}}),l},r=async function(...d){const l=n(...d);let f={};if(l.inputs.length+1===d.length&&(f=await ql(d.pop()),f.from&&(f.from=await it(f.from,Nm(t.runner)))),l.inputs.length!==d.length)throw new Error("internal error: fragment inputs doesn't match arguments; should not happen");const m=await Rm(t.runner,l.inputs,d);return Object.assign({},f,await tt({to:t.getAddress(),data:t.interface.encodeFunctionData(l,m)}))},s=async function(...d){const l=await o(...d);return l.length===1?l[0]:l},i=async function(...d){const l=t.runner;W(Pm(l),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const f=await l.sendTransaction(await r(...d)),m=nr(t.runner);return new jl(t.interface,m,f)},a=async function(...d){const l=Er(t.runner,"estimateGas");return W(Um(l),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await l.estimateGas(await r(...d))},o=async function(...d){const l=Er(t.runner,"call");W(km(l),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});const f=await r(...d);let m="0x";try{m=await l.call(f)}catch(w){throw Dl(w)&&w.data?t.interface.makeError(w.data,f):w}const b=n(...d);return t.interface.decodeFunctionResult(b,m)},c=async(...d)=>n(...d).constant?await s(...d):await i(...d);return ee(c,{name:t.interface.getFunctionName(e),_contract:t,_key:e,getFragment:n,estimateGas:a,populateTransaction:r,send:i,staticCall:s,staticCallResult:o}),Object.defineProperty(c,"fragment",{configurable:!1,enumerable:!0,get:()=>{const d=t.interface.getFunction(e);return W(d,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e}}),d}}),c}function a9(t,e){const n=function(...s){const i=t.interface.getEvent(e,s);return W(i,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e,args:s}}),i},r=function(...s){return new r9(t,n(...s),s)};return ee(r,{name:t.interface.getEventName(e),_contract:t,_key:e,getFragment:n}),Object.defineProperty(r,"fragment",{configurable:!1,enumerable:!0,get:()=>{const s=t.interface.getEvent(e);return W(s,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e}}),s}}),r}const ya=Symbol.for("_ethersInternal_contract"),Om=new WeakMap;function o9(t,e){Om.set(t[ya],e)}function Et(t){return Om.get(t[ya])}function c9(t){return t&&typeof t=="object"&&"getTopicFilter"in t&&typeof t.getTopicFilter=="function"&&t.fragment}async function Kl(t,e){let n,r=null;if(Array.isArray(e)){const i=function(a){if(Ee(a,32))return a;const o=t.interface.getEvent(a);return D(o,"unknown fragment","name",a),o.topicHash};n=e.map(a=>a==null?null:Array.isArray(a)?a.map(i):i(a))}else e==="*"?n=[null]:typeof e=="string"?Ee(e,32)?n=[e]:(r=t.interface.getEvent(e),D(r,"unknown fragment","event",e),n=[r.topicHash]):c9(e)?n=await e.getTopicFilter():"fragment"in e?(r=e.fragment,n=[r.topicHash]):D(!1,"unknown event name","event",e);n=n.map(i=>{if(i==null)return null;if(Array.isArray(i)){const a=Array.from(new Set(i.map(o=>o.toLowerCase())).values());return a.length===1?a[0]:(a.sort(),a)}return i.toLowerCase()});const s=n.map(i=>i==null?"null":Array.isArray(i)?i.join("|"):i).join("&");return{fragment:r,tag:s,topics:n}}async function Ds(t,e){const{subs:n}=Et(t);return n.get((await Kl(t,e)).tag)||null}async function du(t,e,n){const r=nr(t.runner);W(r,"contract runner does not support subscribing","UNSUPPORTED_OPERATION",{operation:e});const{fragment:s,tag:i,topics:a}=await Kl(t,n),{addr:o,subs:c}=Et(t);let d=c.get(i);if(!d){const f={address:o||t,topics:a},m=y=>{let p=s;if(p==null)try{p=t.interface.getEvent(y.topics[0])}catch{}if(p){const x=p,A=s?t.interface.decodeEventLog(s,y.data,y.topics):[];Tc(t,n,A,S=>new n9(t,S,n,x,y))}else Tc(t,n,[],x=>new Im(t,x,n,y))};let b=[];d={tag:i,listeners:[],start:()=>{b.length||b.push(r.on(f,m))},stop:async()=>{if(b.length==0)return;let y=b;b=[],await Promise.all(y),r.off(f,m)}},c.set(i,d)}return d}let Sc=Promise.resolve();async function l9(t,e,n,r){await Sc;const s=await Ds(t,e);if(!s)return!1;const i=s.listeners.length;return s.listeners=s.listeners.filter(({listener:a,once:o})=>{const c=Array.from(n);r&&c.push(r(o?null:a));try{a.call(t,...c)}catch{}return!o}),s.listeners.length===0&&(s.stop(),Et(t).subs.delete(s.tag)),i>0}async function Tc(t,e,n,r){try{await Sc}catch{}const s=l9(t,e,n,r);return Sc=s,await s}const Si=["then"];class dr{target;interface;runner;filters;[ya];fallback;constructor(e,n,r,s){D(typeof e=="string"||G1(e),"invalid value for Contract target","target",e),r==null&&(r=null);const i=en.from(n);ee(this,{target:e,runner:r,interface:i}),Object.defineProperty(this,ya,{value:{}});let a,o=null,c=null;if(s){const f=nr(r);c=new jl(this.interface,f,s)}let d=new Map;if(typeof e=="string")if(Ee(e))o=e,a=Promise.resolve(e);else{const f=Er(r,"resolveName");if(!Za(f))throw Ue("contract runner does not support name resolution","UNSUPPORTED_OPERATION",{operation:"resolveName"});a=f.resolveName(e).then(m=>{if(m==null)throw Ue("an ENS name used for a contract target must be correctly configured","UNCONFIGURED_NAME",{value:e});return Et(this).addr=m,m})}else a=e.getAddress().then(f=>{if(f==null)throw new Error("TODO");return Et(this).addr=f,f});o9(this,{addrPromise:a,addr:o,deployTx:c,subs:d});const l=new Proxy({},{get:(f,m,b)=>{if(typeof m=="symbol"||Si.indexOf(m)>=0)return Reflect.get(f,m,b);try{return this.getEvent(m)}catch(w){if(!Je(w,"INVALID_ARGUMENT")||w.argument!=="key")throw w}},has:(f,m)=>Si.indexOf(m)>=0?Reflect.has(f,m):Reflect.has(f,m)||this.interface.hasEvent(String(m))});return ee(this,{filters:l}),ee(this,{fallback:i.receive||i.fallback?s9(this):null}),new Proxy(this,{get:(f,m,b)=>{if(typeof m=="symbol"||m in f||Si.indexOf(m)>=0)return Reflect.get(f,m,b);try{return f.getFunction(m)}catch(w){if(!Je(w,"INVALID_ARGUMENT")||w.argument!=="key")throw w}},has:(f,m)=>typeof m=="symbol"||m in f||Si.indexOf(m)>=0?Reflect.has(f,m):f.interface.hasFunction(m)})}connect(e){return new dr(this.target,this.interface,e)}attach(e){return new dr(e,this.interface,this.runner)}async getAddress(){return await Et(this).addrPromise}async getDeployedCode(){const e=nr(this.runner);W(e,"runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"getDeployedCode"});const n=await e.getCode(await this.getAddress());return n==="0x"?null:n}async waitForDeployment(){const e=this.deploymentTransaction();if(e)return await e.wait(),this;if(await this.getDeployedCode()!=null)return this;const r=nr(this.runner);return W(r!=null,"contract runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"waitForDeployment"}),new Promise((s,i)=>{const a=async()=>{try{if(await this.getDeployedCode()!=null)return s(this);r.once("block",a)}catch(o){i(o)}};a()})}deploymentTransaction(){return Et(this).deployTx}getFunction(e){return typeof e!="string"&&(e=e.format()),i9(this,e)}getEvent(e){return typeof e!="string"&&(e=e.format()),a9(this,e)}async queryTransaction(e){throw new Error("@TODO")}async queryFilter(e,n,r){n==null&&(n=0),r==null&&(r="latest");const{addr:s,addrPromise:i}=Et(this),a=s||await i,{fragment:o,topics:c}=await Kl(this,e),d={address:a,topics:c,fromBlock:n,toBlock:r},l=nr(this.runner);return W(l,"contract runner does not have a provider","UNSUPPORTED_OPERATION",{operation:"queryFilter"}),(await l.getLogs(d)).map(f=>{let m=o;if(m==null)try{m=this.interface.getEvent(f.topics[0])}catch{}if(m)try{return new _l(f,this.interface,m)}catch(b){return new vm(f,b)}return new li(f,l)})}async on(e,n){const r=await du(this,"on",e);return r.listeners.push({listener:n,once:!1}),r.start(),this}async once(e,n){const r=await du(this,"once",e);return r.listeners.push({listener:n,once:!0}),r.start(),this}async emit(e,...n){return await Tc(this,e,n,null)}async listenerCount(e){if(e){const s=await Ds(this,e);return s?s.listeners.length:0}const{subs:n}=Et(this);let r=0;for(const{listeners:s}of n.values())r+=s.length;return r}async listeners(e){if(e){const s=await Ds(this,e);return s?s.listeners.map(({listener:i})=>i):[]}const{subs:n}=Et(this);let r=[];for(const{listeners:s}of n.values())r=r.concat(s.map(({listener:i})=>i));return r}async off(e,n){const r=await Ds(this,e);if(!r)return this;if(n){const s=r.listeners.map(({listener:i})=>i).indexOf(n);s>=0&&r.listeners.splice(s,1)}return(n==null||r.listeners.length===0)&&(r.stop(),Et(this).subs.delete(r.tag)),this}async removeAllListeners(e){if(e){const n=await Ds(this,e);if(!n)return this;n.stop(),Et(this).subs.delete(n.tag)}else{const{subs:n}=Et(this);for(const{tag:r,stop:s}of n.values())s(),n.delete(r)}return this}async addListener(e,n){return await this.on(e,n)}async removeListener(e,n){return await this.off(e,n)}static buildClass(e){class n extends dr{constructor(s,i=null){super(s,e,i)}}return n}static from(e,n,r){return r==null&&(r=null),new this(e,n,r)}}function d9(){return dr}class ur extends d9(){}class eo{interface;bytecode;runner;constructor(e,n,r){const s=en.from(e);n instanceof Uint8Array||(typeof n=="object"&&(n=n.object),n.startsWith("0x")||(n="0x"+n)),n=K(ce(n)),ee(this,{bytecode:n,interface:s,runner:r||null})}attach(e){return new dr(e,this.interface,this.runner)}async getDeployTransaction(...e){let n={};const r=this.interface.deploy;if(r.inputs.length+1===e.length&&(n=await ql(e.pop())),r.inputs.length!==e.length)throw new Error("incorrect number of arguments to constructor");const s=await Rm(this.runner,r.inputs,e),i=De([this.bytecode,this.interface.encodeDeploy(s)]);return Object.assign({},n,{data:i})}async deploy(...e){const n=await this.getDeployTransaction(...e);W(this.runner&&typeof this.runner.sendTransaction=="function","factory runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const r=await this.runner.sendTransaction(n),s=z1(r);return new dr(s,this.interface,this.runner,r)}connect(e){return new eo(this.interface,this.bytecode,e)}static fromSolidity(e,n){D(e!=null,"bad compiler output","output",e),typeof e=="string"&&(e=JSON.parse(e));const r=e.abi;let s="";return e.bytecode?s=e.bytecode:e.evm&&e.evm.bytecode&&(s=e.evm.bytecode),new this(r,s,n)}}function ko(t){return t.match(/^ipfs:\/\/ipfs\//i)?t=t.substring(12):t.match(/^ipfs:\/\//i)?t=t.substring(7):D(!1,"unsupported IPFS format","link",t),`https://gateway.ipfs.io/ipfs/${t}`}class u9{name;constructor(e){ee(this,{name:e})}connect(e){return this}supportsCoinType(e){return!1}async encodeAddress(e,n){throw new Error("unsupported coin")}async decodeAddress(e,n){throw new Error("unsupported coin")}}const Mm=new RegExp("^(ipfs)://(.*)$","i"),uu=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),Mm,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];class Vr{provider;address;name;#e;#t;constructor(e,n,r){ee(this,{provider:e,address:n,name:r}),this.#e=null,this.#t=new ur(n,["function supportsInterface(bytes4) view returns (bool)","function resolve(bytes, bytes) view returns (bytes)","function addr(bytes32) view returns (address)","function addr(bytes32, uint) view returns (bytes)","function text(bytes32, string) view returns (string)","function contenthash(bytes32) view returns (bytes)"],e)}async supportsWildcard(){return this.#e==null&&(this.#e=(async()=>{try{return await this.#t.supportsInterface("0x9061b923")}catch(e){if(Je(e,"CALL_EXCEPTION"))return!1;throw this.#e=null,e}})()),await this.#e}async#n(e,n){n=(n||[]).slice();const r=this.#t.interface;n.unshift(Fc(this.name));let s=null;await this.supportsWildcard()&&(s=r.getFunction(e),W(s,"missing fragment","UNKNOWN_ERROR",{info:{funcName:e}}),n=[f4(this.name,255),r.encodeFunctionData(s,n)],e="resolve(bytes,bytes)"),n.push({enableCcipRead:!0});try{const i=await this.#t[e](...n);return s?r.decodeFunctionResult(s,i)[0]:i}catch(i){if(!Je(i,"CALL_EXCEPTION"))throw i}return null}async getAddress(e){if(e==null&&(e=60),e===60)try{const i=await this.#n("addr(bytes32)");return i==null||i===es?null:i}catch(i){if(Je(i,"CALL_EXCEPTION"))return null;throw i}if(e>=0&&e<2147483648){let i=e+2147483648;const a=await this.#n("addr(bytes32,uint)",[i]);if(Ee(a,20))return fe(a)}let n=null;for(const i of this.provider.plugins)if(i instanceof u9&&i.supportsCoinType(e)){n=i;break}if(n==null)return null;const r=await this.#n("addr(bytes32,uint)",[e]);if(r==null||r==="0x")return null;const s=await n.decodeAddress(e,r);if(s!=null)return s;W(!1,"invalid coin data","UNSUPPORTED_OPERATION",{operation:`getAddress(${e})`,info:{coinType:e,data:r}})}async getText(e){const n=await this.#n("text(bytes32,string)",[e]);return n==null||n==="0x"?null:n}async getContentHash(){const e=await this.#n("contenthash(bytes32)");if(e==null||e==="0x")return null;const n=e.match(/^0x(e3010170|e5010172)(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/);if(n){const s=n[1]==="e3010170"?"ipfs":"ipns",i=parseInt(n[4],16);if(n[5].length===i*2)return`${s}://${t1("0x"+n[2])}`}const r=e.match(/^0xe40101fa011b20([0-9a-f]*)$/);if(r&&r[1].length===64)return`bzz://${r[1]}`;W(!1,"invalid or unsupported content hash data","UNSUPPORTED_OPERATION",{operation:"getContentHash()",info:{data:e}})}async getAvatar(){return(await this._getAvatar()).url}async _getAvatar(){const e=[{type:"name",value:this.name}];try{const n=await this.getText("avatar");if(n==null)return e.push({type:"!avatar",value:""}),{url:null,linkage:e};e.push({type:"avatar",value:n});for(let r=0;r<uu.length;r++){const s=n.match(uu[r]);if(s==null)continue;const i=s[1].toLowerCase();switch(i){case"https":case"data":return e.push({type:"url",value:n}),{linkage:e,url:n};case"ipfs":{const a=ko(n);return e.push({type:"ipfs",value:n}),e.push({type:"url",value:a}),{linkage:e,url:a}}case"erc721":case"erc1155":{const a=i==="erc721"?"tokenURI(uint256)":"uri(uint256)";e.push({type:i,value:n});const o=await this.getAddress();if(o==null)return e.push({type:"!owner",value:""}),{url:null,linkage:e};const c=(s[2]||"").split("/");if(c.length!==2)return e.push({type:`!${i}caip`,value:s[2]||""}),{url:null,linkage:e};const d=c[1],l=new ur(c[0],["function tokenURI(uint) view returns (string)","function ownerOf(uint) view returns (address)","function uri(uint) view returns (string)","function balanceOf(address, uint256) view returns (uint)"],this.provider);if(i==="erc721"){const E=await l.ownerOf(d);if(o!==E)return e.push({type:"!owner",value:E}),{url:null,linkage:e};e.push({type:"owner",value:E})}else if(i==="erc1155"){const E=await l.balanceOf(o,d);if(!E)return e.push({type:"!balance",value:"0"}),{url:null,linkage:e};e.push({type:"balance",value:E.toString()})}let f=await l[a](d);if(f==null||f==="0x")return e.push({type:"!metadata-url",value:""}),{url:null,linkage:e};e.push({type:"metadata-url-base",value:f}),i==="erc1155"&&(f=f.replace("{id}",An(d,32).substring(2)),e.push({type:"metadata-url-expanded",value:f})),f.match(/^ipfs:/i)&&(f=ko(f)),e.push({type:"metadata-url",value:f});let m={};const b=await new nn(f).send();b.assertOk();try{m=b.bodyJson}catch{try{e.push({type:"!metadata",value:b.bodyText})}catch{const p=b.body;return p&&e.push({type:"!metadata",value:K(p)}),{url:null,linkage:e}}return{url:null,linkage:e}}if(!m)return e.push({type:"!metadata",value:""}),{url:null,linkage:e};e.push({type:"metadata",value:JSON.stringify(m)});let w=m.image;if(typeof w!="string")return e.push({type:"!imageUrl",value:""}),{url:null,linkage:e};if(!w.match(/^(https:\/\/|data:)/i)){if(w.match(Mm)==null)return e.push({type:"!imageUrl-ipfs",value:w}),{url:null,linkage:e};e.push({type:"imageUrl-ipfs",value:w}),w=ko(w)}return e.push({type:"url",value:w}),{linkage:e,url:w}}}}}catch{}return{linkage:e,url:null}}static async getEnsAddress(e){const n=await e.getNetwork(),r=n.getPlugin("org.ethers.plugins.network.Ens");return W(r,"network does not support ENS","UNSUPPORTED_OPERATION",{operation:"getEnsAddress",info:{network:n}}),r.address}static async#r(e,n){const r=await Vr.getEnsAddress(e);try{const i=await new ur(r,["function resolver(bytes32) view returns (address)"],e).resolver(Fc(n),{enableCcipRead:!0});return i===es?null:i}catch(s){throw s}return null}static async fromName(e,n){let r=n;for(;;){if(r===""||r==="."||n!=="eth"&&r==="eth")return null;const s=await Vr.#r(e,r);if(s!=null){const i=new Vr(e,s,n);return r!==n&&!await i.supportsWildcard()?null:i}r=r.split(".").slice(1).join(".")}}}const fu=BigInt(0);function he(t,e){return(function(n){return n==null?e:t(n)})}function to(t,e){return(n=>{if(e&&n==null)return null;if(!Array.isArray(n))throw new Error("not an array");return n.map(r=>t(r))})}function ui(t,e){return(n=>{const r={};for(const s in t){let i=s;if(e&&s in e&&!(i in n)){for(const a of e[s])if(a in n){i=a;break}}try{const a=t[s](n[i]);a!==void 0&&(r[s]=a)}catch(a){const o=a instanceof Error?a.message:"not-an-error";W(!1,`invalid value for value.${s} (${o})`,"BAD_DATA",{value:n})}}return r})}function f9(t){switch(t){case!0:case"true":return!0;case!1:case"false":return!1}D(!1,`invalid boolean; ${JSON.stringify(t)}`,"value",t)}function rs(t){return D(Ee(t,!0),"invalid data","value",t),t}function $e(t){return D(Ee(t,32),"invalid hash","value",t),t}const h9=ui({address:fe,blockHash:$e,blockNumber:ae,data:rs,index:ae,removed:he(f9,!1),topics:to($e),transactionHash:$e,transactionIndex:ae},{index:["logIndex"]});function m9(t){return h9(t)}const b9=ui({hash:he($e),parentHash:$e,parentBeaconBlockRoot:he($e,null),number:ae,timestamp:ae,nonce:he(rs),difficulty:X,gasLimit:X,gasUsed:X,stateRoot:he($e,null),receiptsRoot:he($e,null),blobGasUsed:he(X,null),excessBlobGas:he(X,null),miner:he(fe),prevRandao:he($e,null),extraData:rs,baseFeePerGas:he(X)},{prevRandao:["mixHash"]});function p9(t){const e=b9(t);return e.transactions=t.transactions.map(n=>typeof n=="string"?n:Lm(n)),e}const g9=ui({transactionIndex:ae,blockNumber:ae,transactionHash:$e,address:fe,topics:to($e),data:rs,index:ae,blockHash:$e},{index:["logIndex"]});function y9(t){return g9(t)}const A9=ui({to:he(fe,null),from:he(fe,null),contractAddress:he(fe,null),index:ae,root:he(K),gasUsed:X,blobGasUsed:he(X,null),logsBloom:he(rs),blockHash:$e,hash:$e,logs:to(y9),blockNumber:ae,cumulativeGasUsed:X,effectiveGasPrice:he(X),blobGasPrice:he(X,null),status:he(ae),type:he(ae,0)},{effectiveGasPrice:["gasPrice"],hash:["transactionHash"],index:["transactionIndex"]});function E9(t){return A9(t)}function Lm(t){t.to&&X(t.to)===fu&&(t.to="0x0000000000000000000000000000000000000000");const e=ui({hash:$e,index:he(ae,void 0),type:n=>n==="0x"||n==null?0:ae(n),accessList:he(Cr,null),blobVersionedHashes:he(to($e,!0),null),blockHash:he($e,null),blockNumber:he(ae,null),transactionIndex:he(ae,null),from:fe,gasPrice:he(X),maxPriorityFeePerGas:he(X),maxFeePerGas:he(X),maxFeePerBlobGas:he(X,null),gasLimit:X,to:he(fe,null),value:X,nonce:ae,data:rs,creates:he(fe,null),chainId:he(X,null)},{data:["input"],gasLimit:["gas"],index:["transactionIndex"]})(t);if(e.to==null&&e.creates==null&&(e.creates=z1(e)),(t.type===1||t.type===2)&&t.accessList==null&&(e.accessList=[]),t.signature?e.signature=Ge.from(t.signature):e.signature=Ge.from(t),e.chainId==null){const n=e.signature.legacyChainId;n!=null&&(e.chainId=n)}return e.blockHash&&X(e.blockHash)===fu&&(e.blockHash=null),e}const w9="0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e";class fi{name;constructor(e){ee(this,{name:e})}clone(){return new fi(this.name)}}class no extends fi{effectiveBlock;txBase;txCreate;txDataZero;txDataNonzero;txAccessListStorageKey;txAccessListAddress;constructor(e,n){e==null&&(e=0),super(`org.ethers.network.plugins.GasCost#${e||0}`);const r={effectiveBlock:e};function s(i,a){let o=(n||{})[i];o==null&&(o=a),D(typeof o=="number",`invalud value for ${i}`,"costs",n),r[i]=o}s("txBase",21e3),s("txCreate",32e3),s("txDataZero",4),s("txDataNonzero",16),s("txAccessListStorageKey",1900),s("txAccessListAddress",2400),ee(this,r)}clone(){return new no(this.effectiveBlock,this)}}class ro extends fi{address;targetNetwork;constructor(e,n){super("org.ethers.plugins.network.Ens"),ee(this,{address:e||w9,targetNetwork:n??1})}clone(){return new ro(this.address,this.targetNetwork)}}class B9 extends fi{#e;#t;get url(){return this.#e}get processFunc(){return this.#t}constructor(e,n){super("org.ethers.plugins.network.FetchUrlFeeDataPlugin"),this.#e=e,this.#t=n}clone(){return this}}const Uo=new Map;class Ct{#e;#t;#n;constructor(e,n){this.#e=e,this.#t=X(n),this.#n=new Map}toJSON(){return{name:this.name,chainId:String(this.chainId)}}get name(){return this.#e}set name(e){this.#e=e}get chainId(){return this.#t}set chainId(e){this.#t=X(e,"chainId")}matches(e){if(e==null)return!1;if(typeof e=="string"){try{return this.chainId===X(e)}catch{}return this.name===e}if(typeof e=="number"||typeof e=="bigint"){try{return this.chainId===X(e)}catch{}return!1}if(typeof e=="object"){if(e.chainId!=null){try{return this.chainId===X(e.chainId)}catch{}return!1}return e.name!=null?this.name===e.name:!1}return!1}get plugins(){return Array.from(this.#n.values())}attachPlugin(e){if(this.#n.get(e.name))throw new Error(`cannot replace existing plugin: ${e.name} `);return this.#n.set(e.name,e.clone()),this}getPlugin(e){return this.#n.get(e)||null}getPlugins(e){return this.plugins.filter(n=>n.name.split("#")[0]===e)}clone(){const e=new Ct(this.name,this.chainId);return this.plugins.forEach(n=>{e.attachPlugin(n.clone())}),e}computeIntrinsicGas(e){const n=this.getPlugin("org.ethers.plugins.network.GasCost")||new no;let r=n.txBase;if(e.to==null&&(r+=n.txCreate),e.data)for(let s=2;s<e.data.length;s+=2)e.data.substring(s,s+2)==="00"?r+=n.txDataZero:r+=n.txDataNonzero;if(e.accessList){const s=Cr(e.accessList);for(const i in s)r+=n.txAccessListAddress+n.txAccessListStorageKey*s[i].storageKeys.length}return r}static from(e){if(C9(),e==null)return Ct.from("mainnet");if(typeof e=="number"&&(e=BigInt(e)),typeof e=="string"||typeof e=="bigint"){const n=Uo.get(e);if(n)return n();if(typeof e=="bigint")return new Ct("unknown",e);D(!1,"unknown network","network",e)}if(typeof e.clone=="function")return e.clone();if(typeof e=="object"){D(typeof e.name=="string"&&typeof e.chainId=="number","invalid network object name or chainId","network",e);const n=new Ct(e.name,e.chainId);return(e.ensAddress||e.ensNetwork!=null)&&n.attachPlugin(new ro(e.ensAddress,e.ensNetwork)),n}D(!1,"invalid network","network",e)}static register(e,n){typeof e=="number"&&(e=BigInt(e));const r=Uo.get(e);r&&D(!1,`conflicting network for ${JSON.stringify(r.name)}`,"nameOrChainId",e),Uo.set(e,n)}}function hu(t,e){const n=String(t);if(!n.match(/^[0-9.]+$/))throw new Error(`invalid gwei value: ${t}`);const r=n.split(".");if(r.length===1&&r.push(""),r.length!==2)throw new Error(`invalid gwei value: ${t}`);for(;r[1].length<e;)r[1]+="0";if(r[1].length>9){let s=BigInt(r[1].substring(0,9));r[1].substring(9).match(/^0+$/)||s++,r[1]=s.toString()}return BigInt(r[0]+r[1])}function mu(t){return new B9(t,async(e,n,r)=>{r.setHeader("User-Agent","ethers");let s;try{const[i,a]=await Promise.all([r.send(),e()]);s=i;const o=s.bodyJson.standard;return{gasPrice:a.gasPrice,maxFeePerGas:hu(o.maxFee,9),maxPriorityFeePerGas:hu(o.maxPriorityFee,9)}}catch(i){W(!1,`error encountered with polygon gas station (${JSON.stringify(r.url)})`,"SERVER_ERROR",{request:r,response:s,error:i})}})}let bu=!1;function C9(){if(bu)return;bu=!0;function t(e,n,r){const s=function(){const i=new Ct(e,n);return r.ensNetwork!=null&&i.attachPlugin(new ro(null,r.ensNetwork)),i.attachPlugin(new no),(r.plugins||[]).forEach(a=>{i.attachPlugin(a)}),i};Ct.register(e,s),Ct.register(n,s),r.altNames&&r.altNames.forEach(i=>{Ct.register(i,s)})}t("mainnet",1,{ensNetwork:1,altNames:["homestead"]}),t("ropsten",3,{ensNetwork:3}),t("rinkeby",4,{ensNetwork:4}),t("goerli",5,{ensNetwork:5}),t("kovan",42,{ensNetwork:42}),t("sepolia",11155111,{ensNetwork:11155111}),t("holesky",17e3,{ensNetwork:17e3}),t("classic",61,{}),t("classicKotti",6,{}),t("arbitrum",42161,{ensNetwork:1}),t("arbitrum-goerli",421613,{}),t("arbitrum-sepolia",421614,{}),t("base",8453,{ensNetwork:1}),t("base-goerli",84531,{}),t("base-sepolia",84532,{}),t("bnb",56,{ensNetwork:1}),t("bnbt",97,{}),t("linea",59144,{ensNetwork:1}),t("linea-goerli",59140,{}),t("linea-sepolia",59141,{}),t("matic",137,{ensNetwork:1,plugins:[mu("https://gasstation.polygon.technology/v2")]}),t("matic-amoy",80002,{}),t("matic-mumbai",80001,{altNames:["maticMumbai","maticmum"],plugins:[mu("https://gasstation-testnet.polygon.technology/v2")]}),t("optimism",10,{ensNetwork:1,plugins:[]}),t("optimism-goerli",420,{}),t("optimism-sepolia",11155420,{}),t("xdai",100,{ensNetwork:1})}function vc(t){return JSON.parse(JSON.stringify(t))}class x9{#e;#t;#n;#r;constructor(e){this.#e=e,this.#t=null,this.#n=4e3,this.#r=-2}get pollingInterval(){return this.#n}set pollingInterval(e){this.#n=e}async#s(){try{const e=await this.#e.getBlockNumber();if(this.#r===-2){this.#r=e;return}if(e!==this.#r){for(let n=this.#r+1;n<=e;n++){if(this.#t==null)return;await this.#e.emit("block",n)}this.#r=e}}catch{}this.#t!=null&&(this.#t=this.#e._setTimeout(this.#s.bind(this),this.#n))}start(){this.#t||(this.#t=this.#e._setTimeout(this.#s.bind(this),this.#n),this.#s())}stop(){this.#t&&(this.#e._clearTimeout(this.#t),this.#t=null)}pause(e){this.stop(),e&&(this.#r=-2)}resume(){this.start()}}class Ql{#e;#t;#n;constructor(e){this.#e=e,this.#n=!1,this.#t=n=>{this._poll(n,this.#e)}}async _poll(e,n){throw new Error("sub-classes must override this")}start(){this.#n||(this.#n=!0,this.#t(-2),this.#e.on("block",this.#t))}stop(){this.#n&&(this.#n=!1,this.#e.off("block",this.#t))}pause(e){this.stop()}resume(){this.start()}}class D9 extends Ql{#e;#t;constructor(e,n){super(e),this.#e=n,this.#t=-2}pause(e){e&&(this.#t=-2),super.pause(e)}async _poll(e,n){const r=await n.getBlock(this.#e);r!=null&&(this.#t===-2?this.#t=r.number:r.number>this.#t&&(n.emit(this.#e,r.number),this.#t=r.number))}}class F9 extends Ql{#e;constructor(e,n){super(e),this.#e=vc(n)}async _poll(e,n){throw new Error("@TODO")}}class S9 extends Ql{#e;constructor(e,n){super(e),this.#e=n}async _poll(e,n){const r=await n.getTransactionReceipt(this.#e);r&&n.emit(this.#e,r)}}class $l{#e;#t;#n;#r;#s;constructor(e,n){this.#e=e,this.#t=vc(n),this.#n=this.#a.bind(this),this.#r=!1,this.#s=-2}async#a(e){if(this.#s===-2)return;const n=vc(this.#t);n.fromBlock=this.#s+1,n.toBlock=e;const r=await this.#e.getLogs(n);if(r.length===0){this.#s<e-60&&(this.#s=e-60);return}for(const s of r)this.#e.emit(this.#t,s),this.#s=s.blockNumber}start(){this.#r||(this.#r=!0,this.#s===-2&&this.#e.getBlockNumber().then(e=>{this.#s=e}),this.#e.on("block",this.#n))}stop(){this.#r&&(this.#r=!1,this.#e.off("block",this.#n))}pause(e){this.stop(),e&&(this.#s=-2)}resume(){this.start()}}const T9=BigInt(2),v9=10;function Ti(t){return t&&typeof t.then=="function"}function Qi(t,e){return t+":"+JSON.stringify(e,(n,r)=>{if(r==null)return"null";if(typeof r=="bigint")return`bigint:${r.toString()}`;if(typeof r=="string")return r.toLowerCase();if(typeof r=="object"&&!Array.isArray(r)){const s=Object.keys(r);return s.sort(),s.reduce((i,a)=>(i[a]=r[a],i),{})}return r})}class Wm{name;constructor(e){ee(this,{name:e})}start(){}stop(){}pause(e){}resume(){}}function I9(t){return JSON.parse(JSON.stringify(t))}function Ic(t){return t=Array.from(new Set(t).values()),t.sort(),t}async function Po(t,e){if(t==null)throw new Error("invalid event");if(Array.isArray(t)&&(t={topics:t}),typeof t=="string")switch(t){case"block":case"debug":case"error":case"finalized":case"network":case"pending":case"safe":return{type:t,tag:t}}if(Ee(t,32)){const n=t.toLowerCase();return{type:"transaction",tag:Qi("tx",{hash:n}),hash:n}}if(t.orphan){const n=t;return{type:"orphan",tag:Qi("orphan",n),filter:I9(n)}}if(t.address||t.topics){const n=t,r={topics:(n.topics||[]).map(s=>s==null?null:Array.isArray(s)?Ic(s.map(i=>i.toLowerCase())):s.toLowerCase())};if(n.address){const s=[],i=[],a=o=>{Ee(o)?s.push(o):i.push((async()=>{s.push(await it(o,e))})())};Array.isArray(n.address)?n.address.forEach(a):a(n.address),i.length&&await Promise.all(i),r.address=Ic(s.map(o=>o.toLowerCase()))}return{filter:r,tag:Qi("event",r),type:"event"}}D(!1,"unknown ProviderEvent","event",t)}function No(){return new Date().getTime()}const k9={cacheTimeout:250,pollingInterval:4e3};class U9{#e;#t;#n;#r;#s;#a;#i;#o;#h;#l;#m;#b;constructor(e,n){if(this.#b=Object.assign({},k9,n||{}),e==="any")this.#a=!0,this.#s=null;else if(e){const r=Ct.from(e);this.#a=!1,this.#s=Promise.resolve(r),setTimeout(()=>{this.emit("network",r,null)},0)}else this.#a=!1,this.#s=null;this.#o=-1,this.#i=new Map,this.#e=new Map,this.#t=new Map,this.#n=null,this.#r=!1,this.#h=1,this.#l=new Map,this.#m=!1}get pollingInterval(){return this.#b.pollingInterval}get provider(){return this}get plugins(){return Array.from(this.#t.values())}attachPlugin(e){if(this.#t.get(e.name))throw new Error(`cannot replace existing plugin: ${e.name} `);return this.#t.set(e.name,e.connect(this)),this}getPlugin(e){return this.#t.get(e)||null}get disableCcipRead(){return this.#m}set disableCcipRead(e){this.#m=!!e}async#c(e){const n=this.#b.cacheTimeout;if(n<0)return await this._perform(e);const r=Qi(e.method,e);let s=this.#i.get(r);return s||(s=this._perform(e),this.#i.set(r,s),setTimeout(()=>{this.#i.get(r)===s&&this.#i.delete(r)},n)),await s}async ccipReadFetch(e,n,r){if(this.disableCcipRead||r.length===0||e.to==null)return null;const s=e.to.toLowerCase(),i=n.toLowerCase(),a=[];for(let o=0;o<r.length;o++){const c=r[o],d=c.replace("{sender}",s).replace("{data}",i),l=new nn(d);c.indexOf("{data}")===-1&&(l.body={data:i,sender:s}),this.emit("debug",{action:"sendCcipReadFetchRequest",request:l,index:o,urls:r});let f="unknown error",m;try{m=await l.send()}catch(b){a.push(b.message),this.emit("debug",{action:"receiveCcipReadFetchError",request:l,result:{error:b}});continue}try{const b=m.bodyJson;if(b.data)return this.emit("debug",{action:"receiveCcipReadFetchResult",request:l,result:b}),b.data;b.message&&(f=b.message),this.emit("debug",{action:"receiveCcipReadFetchError",request:l,result:b})}catch{}W(m.statusCode<400||m.statusCode>=500,`response not found during CCIP fetch: ${f}`,"OFFCHAIN_FAULT",{reason:"404_MISSING_RESOURCE",transaction:e,info:{url:c,errorMessage:f}}),a.push(f)}W(!1,`error encountered during CCIP fetch: ${a.map(o=>JSON.stringify(o)).join(", ")}`,"OFFCHAIN_FAULT",{reason:"500_SERVER_ERROR",transaction:e,info:{urls:r,errorMessages:a}})}_wrapBlock(e,n){return new Y4(p9(e),this)}_wrapLog(e,n){return new li(m9(e),this)}_wrapTransactionReceipt(e,n){return new Fm(E9(e),this)}_wrapTransactionResponse(e,n){return new di(Lm(e),this)}_detectNetwork(){W(!1,"sub-classes must implement this","UNSUPPORTED_OPERATION",{operation:"_detectNetwork"})}async _perform(e){W(!1,`unsupported method: ${e.method}`,"UNSUPPORTED_OPERATION",{operation:e.method,info:e})}async getBlockNumber(){const e=ae(await this.#c({method:"getBlockNumber"}),"%response");return this.#o>=0&&(this.#o=e),e}_getAddress(e){return it(e,this)}_getBlockTag(e){if(e==null)return"latest";switch(e){case"earliest":return"0x0";case"finalized":case"latest":case"pending":case"safe":return e}if(Ee(e))return Ee(e,32)?e:Or(e);if(typeof e=="bigint"&&(e=ae(e,"blockTag")),typeof e=="number")return e>=0?Or(e):this.#o>=0?Or(this.#o+e):this.getBlockNumber().then(n=>Or(n+e));D(!1,"invalid blockTag","blockTag",e)}_getFilter(e){const n=(e.topics||[]).map(c=>c==null?null:Array.isArray(c)?Ic(c.map(d=>d.toLowerCase())):c.toLowerCase()),r="blockHash"in e?e.blockHash:void 0,s=(c,d,l)=>{let f;switch(c.length){case 0:break;case 1:f=c[0];break;default:c.sort(),f=c}if(r&&(d!=null||l!=null))throw new Error("invalid filter");const m={};return f&&(m.address=f),n.length&&(m.topics=n),d&&(m.fromBlock=d),l&&(m.toBlock=l),r&&(m.blockHash=r),m};let i=[];if(e.address)if(Array.isArray(e.address))for(const c of e.address)i.push(this._getAddress(c));else i.push(this._getAddress(e.address));let a;"fromBlock"in e&&(a=this._getBlockTag(e.fromBlock));let o;return"toBlock"in e&&(o=this._getBlockTag(e.toBlock)),i.filter(c=>typeof c!="string").length||a!=null&&typeof a!="string"||o!=null&&typeof o!="string"?Promise.all([Promise.all(i),a,o]).then(c=>s(c[0],c[1],c[2])):s(i,a,o)}_getTransactionRequest(e){const n=js(e),r=[];if(["to","from"].forEach(s=>{if(n[s]==null)return;const i=it(n[s],this);Ti(i)?r.push((async function(){n[s]=await i})()):n[s]=i}),n.blockTag!=null){const s=this._getBlockTag(n.blockTag);Ti(s)?r.push((async function(){n.blockTag=await s})()):n.blockTag=s}return r.length?(async function(){return await Promise.all(r),n})():n}async getNetwork(){if(this.#s==null){const s=(async()=>{try{const i=await this._detectNetwork();return this.emit("network",i,null),i}catch(i){throw this.#s===s&&(this.#s=null),i}})();return this.#s=s,(await s).clone()}const e=this.#s,[n,r]=await Promise.all([e,this._detectNetwork()]);return n.chainId!==r.chainId&&(this.#a?(this.emit("network",r,n),this.#s===e&&(this.#s=Promise.resolve(r))):W(!1,`network changed: ${n.chainId} => ${r.chainId} `,"NETWORK_ERROR",{event:"changed"})),n.clone()}async getFeeData(){const e=await this.getNetwork(),n=async()=>{const{_block:s,gasPrice:i,priorityFee:a}=await tt({_block:this.#p("latest",!1),gasPrice:(async()=>{try{const l=await this.#c({method:"getGasPrice"});return X(l,"%response")}catch{}return null})(),priorityFee:(async()=>{try{const l=await this.#c({method:"getPriorityFee"});return X(l,"%response")}catch{}return null})()});let o=null,c=null;const d=this._wrapBlock(s,e);return d&&d.baseFeePerGas&&(c=a??BigInt("1000000000"),o=d.baseFeePerGas*T9+c),new cu(i,o,c)},r=e.getPlugin("org.ethers.plugins.network.FetchUrlFeeDataPlugin");if(r){const s=new nn(r.url),i=await r.processFunc(n,this,s);return new cu(i.gasPrice,i.maxFeePerGas,i.maxPriorityFeePerGas)}return await n()}async estimateGas(e){let n=this._getTransactionRequest(e);return Ti(n)&&(n=await n),X(await this.#c({method:"estimateGas",transaction:n}),"%response")}async#d(e,n,r){W(r<v9,"CCIP read exceeded maximum redirections","OFFCHAIN_FAULT",{reason:"TOO_MANY_REDIRECTS",transaction:Object.assign({},e,{blockTag:n,enableCcipRead:!0})});const s=js(e);try{return K(await this._perform({method:"call",transaction:s,blockTag:n}))}catch(i){if(!this.disableCcipRead&&Dl(i)&&i.data&&r>=0&&n==="latest"&&s.to!=null&&xe(i.data,0,4)==="0x556f1830"){const a=i.data,o=await it(s.to,this);let c;try{c=M9(xe(i.data,4))}catch(f){W(!1,f.message,"OFFCHAIN_FAULT",{reason:"BAD_DATA",transaction:s,info:{data:a}})}W(c.sender.toLowerCase()===o.toLowerCase(),"CCIP Read sender mismatch","CALL_EXCEPTION",{action:"call",data:a,reason:"OffchainLookup",transaction:s,invocation:null,revert:{signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",name:"OffchainLookup",args:c.errorArgs}});const d=await this.ccipReadFetch(s,c.calldata,c.urls);W(d!=null,"CCIP Read failed to fetch data","OFFCHAIN_FAULT",{reason:"FETCH_FAILED",transaction:s,info:{data:i.data,errorArgs:c.errorArgs}});const l={to:o,data:De([c.selector,O9([d,c.extraData])])};this.emit("debug",{action:"sendCcipReadCall",transaction:l});try{const f=await this.#d(l,n,r+1);return this.emit("debug",{action:"receiveCcipReadCallResult",transaction:Object.assign({},l),result:f}),f}catch(f){throw this.emit("debug",{action:"receiveCcipReadCallError",transaction:Object.assign({},l),error:f}),f}}throw i}}async#u(e){const{value:n}=await tt({network:this.getNetwork(),value:e});return n}async call(e){const{tx:n,blockTag:r}=await tt({tx:this._getTransactionRequest(e),blockTag:this._getBlockTag(e.blockTag)});return await this.#u(this.#d(n,r,e.enableCcipRead?0:-1))}async#f(e,n,r){let s=this._getAddress(n),i=this._getBlockTag(r);return(typeof s!="string"||typeof i!="string")&&([s,i]=await Promise.all([s,i])),await this.#u(this.#c(Object.assign(e,{address:s,blockTag:i})))}async getBalance(e,n){return X(await this.#f({method:"getBalance"},e,n),"%response")}async getTransactionCount(e,n){return ae(await this.#f({method:"getTransactionCount"},e,n),"%response")}async getCode(e,n){return K(await this.#f({method:"getCode"},e,n))}async getStorage(e,n,r){const s=X(n,"position");return K(await this.#f({method:"getStorage",position:s},e,r))}async broadcastTransaction(e){const{blockNumber:n,hash:r,network:s}=await tt({blockNumber:this.getBlockNumber(),hash:this._perform({method:"broadcastTransaction",signedTransaction:e}),network:this.getNetwork()}),i=Pt.from(e);if(i.hash!==r)throw new Error("@TODO: the returned hash did not match");return this._wrapTransactionResponse(i,s).replaceableTransaction(n)}async#p(e,n){if(Ee(e,32))return await this.#c({method:"getBlock",blockHash:e,includeTransactions:n});let r=this._getBlockTag(e);return typeof r!="string"&&(r=await r),await this.#c({method:"getBlock",blockTag:r,includeTransactions:n})}async getBlock(e,n){const{network:r,params:s}=await tt({network:this.getNetwork(),params:this.#p(e,!!n)});return s==null?null:this._wrapBlock(s,r)}async getTransaction(e){const{network:n,params:r}=await tt({network:this.getNetwork(),params:this.#c({method:"getTransaction",hash:e})});return r==null?null:this._wrapTransactionResponse(r,n)}async getTransactionReceipt(e){const{network:n,params:r}=await tt({network:this.getNetwork(),params:this.#c({method:"getTransactionReceipt",hash:e})});if(r==null)return null;if(r.gasPrice==null&&r.effectiveGasPrice==null){const s=await this.#c({method:"getTransaction",hash:e});if(s==null)throw new Error("report this; could not find tx or effectiveGasPrice");r.effectiveGasPrice=s.gasPrice}return this._wrapTransactionReceipt(r,n)}async getTransactionResult(e){const{result:n}=await tt({network:this.getNetwork(),result:this.#c({method:"getTransactionResult",hash:e})});return n==null?null:K(n)}async getLogs(e){let n=this._getFilter(e);Ti(n)&&(n=await n);const{network:r,params:s}=await tt({network:this.getNetwork(),params:this.#c({method:"getLogs",filter:n})});return s.map(i=>this._wrapLog(i,r))}_getProvider(e){W(!1,"provider cannot connect to target network","UNSUPPORTED_OPERATION",{operation:"_getProvider()"})}async getResolver(e){return await Vr.fromName(this,e)}async getAvatar(e){const n=await this.getResolver(e);return n?await n.getAvatar():null}async resolveName(e){const n=await this.getResolver(e);return n?await n.getAddress():null}async lookupAddress(e){e=fe(e);const n=Fc(e.substring(2).toLowerCase()+".addr.reverse");try{const r=await Vr.getEnsAddress(this),i=await new ur(r,["function resolver(bytes32) view returns (address)"],this).resolver(n);if(i==null||i===es)return null;const o=await new ur(i,["function name(bytes32) view returns (string)"],this).name(n);return await this.resolveName(o)!==e?null:o}catch(r){if(Je(r,"BAD_DATA")&&r.value==="0x"||Je(r,"CALL_EXCEPTION"))return null;throw r}return null}async waitForTransaction(e,n,r){const s=n??1;return s===0?this.getTransactionReceipt(e):new Promise(async(i,a)=>{let o=null;const c=(async d=>{try{const l=await this.getTransactionReceipt(e);if(l!=null&&d-l.blockNumber+1>=s){i(l),o&&(clearTimeout(o),o=null);return}}catch(l){console.log("EEE",l)}this.once("block",c)});r!=null&&(o=setTimeout(()=>{o!=null&&(o=null,this.off("block",c),a(Ue("timeout","TIMEOUT",{reason:"timeout"})))},r)),c(await this.getBlockNumber())})}async waitForBlock(e){W(!1,"not implemented yet","NOT_IMPLEMENTED",{operation:"waitForBlock"})}_clearTimeout(e){const n=this.#l.get(e);n&&(n.timer&&clearTimeout(n.timer),this.#l.delete(e))}_setTimeout(e,n){n==null&&(n=0);const r=this.#h++,s=()=>{this.#l.delete(r),e()};if(this.paused)this.#l.set(r,{timer:null,func:s,time:n});else{const i=setTimeout(s,n);this.#l.set(r,{timer:i,func:s,time:No()})}return r}_forEachSubscriber(e){for(const n of this.#e.values())e(n.subscriber)}_getSubscriber(e){switch(e.type){case"debug":case"error":case"network":return new Wm(e.type);case"block":{const n=new x9(this);return n.pollingInterval=this.pollingInterval,n}case"safe":case"finalized":return new D9(this,e.type);case"event":return new $l(this,e.filter);case"transaction":return new S9(this,e.hash);case"orphan":return new F9(this,e.filter)}throw new Error(`unsupported event: ${e.type}`)}_recoverSubscriber(e,n){for(const r of this.#e.values())if(r.subscriber===e){r.started&&r.subscriber.stop(),r.subscriber=n,r.started&&n.start(),this.#n!=null&&n.pause(this.#n);break}}async#g(e,n){let r=await Po(e,this);return r.type==="event"&&n&&n.length>0&&n[0].removed===!0&&(r=await Po({orphan:"drop-log",log:n[0]},this)),this.#e.get(r.tag)||null}async#y(e){const n=await Po(e,this),r=n.tag;let s=this.#e.get(r);return s||(s={subscriber:this._getSubscriber(n),tag:r,addressableMap:new WeakMap,nameMap:new Map,started:!1,listeners:[]},this.#e.set(r,s)),s}async on(e,n){const r=await this.#y(e);return r.listeners.push({listener:n,once:!1}),r.started||(r.subscriber.start(),r.started=!0,this.#n!=null&&r.subscriber.pause(this.#n)),this}async once(e,n){const r=await this.#y(e);return r.listeners.push({listener:n,once:!0}),r.started||(r.subscriber.start(),r.started=!0,this.#n!=null&&r.subscriber.pause(this.#n)),this}async emit(e,...n){const r=await this.#g(e,n);if(!r||r.listeners.length===0)return!1;const s=r.listeners.length;return r.listeners=r.listeners.filter(({listener:i,once:a})=>{const o=new n1(this,a?null:i,e);try{i.call(this,...n,o)}catch{}return!a}),r.listeners.length===0&&(r.started&&r.subscriber.stop(),this.#e.delete(r.tag)),s>0}async listenerCount(e){if(e){const r=await this.#g(e);return r?r.listeners.length:0}let n=0;for(const{listeners:r}of this.#e.values())n+=r.length;return n}async listeners(e){if(e){const r=await this.#g(e);return r?r.listeners.map(({listener:s})=>s):[]}let n=[];for(const{listeners:r}of this.#e.values())n=n.concat(r.map(({listener:s})=>s));return n}async off(e,n){const r=await this.#g(e);if(!r)return this;if(n){const s=r.listeners.map(({listener:i})=>i).indexOf(n);s>=0&&r.listeners.splice(s,1)}return(!n||r.listeners.length===0)&&(r.started&&r.subscriber.stop(),this.#e.delete(r.tag)),this}async removeAllListeners(e){if(e){const{tag:n,started:r,subscriber:s}=await this.#y(e);r&&s.stop(),this.#e.delete(n)}else for(const[n,{started:r,subscriber:s}]of this.#e)r&&s.stop(),this.#e.delete(n);return this}async addListener(e,n){return await this.on(e,n)}async removeListener(e,n){return this.off(e,n)}get destroyed(){return this.#r}destroy(){this.removeAllListeners();for(const e of this.#l.keys())this._clearTimeout(e);this.#r=!0}get paused(){return this.#n!=null}set paused(e){!!e!==this.paused&&(this.paused?this.resume():this.pause(!1))}pause(e){if(this.#o=-1,this.#n!=null){if(this.#n==!!e)return;W(!1,"cannot change pause type; resume first","UNSUPPORTED_OPERATION",{operation:"pause"})}this._forEachSubscriber(n=>n.pause(e)),this.#n=!!e;for(const n of this.#l.values())n.timer&&clearTimeout(n.timer),n.time=No()-n.time}resume(){if(this.#n!=null){this._forEachSubscriber(e=>e.resume()),this.#n=null;for(const e of this.#l.values()){let n=e.time;n<0&&(n=0),e.time=No(),setTimeout(e.func,n)}}}}function P9(t,e){try{const n=kc(t,e);if(n)return fa(n)}catch{}return null}function kc(t,e){if(t==="0x")return null;try{const n=ae(xe(t,e,e+32)),r=ae(xe(t,n,n+32));return xe(t,n+32,n+32+r)}catch{}return null}function pu(t){const e=st(t);if(e.length>32)throw new Error("internal; should not happen");const n=new Uint8Array(32);return n.set(e,32-e.length),n}function N9(t){if(t.length%32===0)return t;const e=new Uint8Array(Math.ceil(t.length/32)*32);return e.set(t),e}const R9=new Uint8Array([]);function O9(t){const e=[];let n=0;for(let r=0;r<t.length;r++)e.push(R9),n+=32;for(let r=0;r<t.length;r++){const s=ce(t[r]);e[r]=pu(n),e.push(pu(s.length)),e.push(N9(s)),n+=32+Math.ceil(s.length/32)*32}return De(e)}const gu="0x0000000000000000000000000000000000000000000000000000000000000000";function M9(t){const e={sender:"",urls:[],calldata:"",selector:"",extraData:"",errorArgs:[]};W(or(t)>=160,"insufficient OffchainLookup data","OFFCHAIN_FAULT",{reason:"insufficient OffchainLookup data"});const n=xe(t,0,32);W(xe(n,0,12)===xe(gu,0,12),"corrupt OffchainLookup sender","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup sender"}),e.sender=xe(n,12);try{const r=[],s=ae(xe(t,32,64)),i=ae(xe(t,s,s+32)),a=xe(t,s+32);for(let o=0;o<i;o++){const c=P9(a,o*32);if(c==null)throw new Error("abort");r.push(c)}e.urls=r}catch{W(!1,"corrupt OffchainLookup urls","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup urls"})}try{const r=kc(t,64);if(r==null)throw new Error("abort");e.calldata=r}catch{W(!1,"corrupt OffchainLookup calldata","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup calldata"})}W(xe(t,100,128)===xe(gu,0,28),"corrupt OffchainLookup callbaackSelector","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup callbaackSelector"}),e.selector=xe(t,96,100);try{const r=kc(t,128);if(r==null)throw new Error("abort");e.extraData=r}catch{W(!1,"corrupt OffchainLookup extraData","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup extraData"})}return e.errorArgs="sender,urls,calldata,selector,extraData".split(/,/).map(r=>e[r]),e}function Tr(t,e){if(t.provider)return t.provider;W(!1,"missing provider","UNSUPPORTED_OPERATION",{operation:e})}async function yu(t,e){let n=js(e);if(n.to!=null&&(n.to=it(n.to,t)),n.from!=null){const r=n.from;n.from=Promise.all([t.getAddress(),it(r,t)]).then(([s,i])=>(D(s.toLowerCase()===i.toLowerCase(),"transaction from mismatch","tx.from",i),s))}else n.from=t.getAddress();return await tt(n)}class Jl{provider;constructor(e){ee(this,{provider:e||null})}async getNonce(e){return Tr(this,"getTransactionCount").getTransactionCount(await this.getAddress(),e)}async populateCall(e){return await yu(this,e)}async populateTransaction(e){const n=Tr(this,"populateTransaction"),r=await yu(this,e);r.nonce==null&&(r.nonce=await this.getNonce("pending")),r.gasLimit==null&&(r.gasLimit=await this.estimateGas(r));const s=await this.provider.getNetwork();if(r.chainId!=null){const a=X(r.chainId);D(a===s.chainId,"transaction chainId mismatch","tx.chainId",e.chainId)}else r.chainId=s.chainId;const i=r.maxFeePerGas!=null||r.maxPriorityFeePerGas!=null;if(r.gasPrice!=null&&(r.type===2||i)?D(!1,"eip-1559 transaction do not support gasPrice","tx",e):(r.type===0||r.type===1)&&i&&D(!1,"pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas","tx",e),(r.type===2||r.type==null)&&r.maxFeePerGas!=null&&r.maxPriorityFeePerGas!=null)r.type=2;else if(r.type===0||r.type===1){const a=await n.getFeeData();W(a.gasPrice!=null,"network does not support gasPrice","UNSUPPORTED_OPERATION",{operation:"getGasPrice"}),r.gasPrice==null&&(r.gasPrice=a.gasPrice)}else{const a=await n.getFeeData();if(r.type==null)if(a.maxFeePerGas!=null&&a.maxPriorityFeePerGas!=null)if(r.type=2,r.gasPrice!=null){const o=r.gasPrice;delete r.gasPrice,r.maxFeePerGas=o,r.maxPriorityFeePerGas=o}else r.maxFeePerGas==null&&(r.maxFeePerGas=a.maxFeePerGas),r.maxPriorityFeePerGas==null&&(r.maxPriorityFeePerGas=a.maxPriorityFeePerGas);else a.gasPrice!=null?(W(!i,"network does not support EIP-1559","UNSUPPORTED_OPERATION",{operation:"populateTransaction"}),r.gasPrice==null&&(r.gasPrice=a.gasPrice),r.type=0):W(!1,"failed to get consistent fee data","UNSUPPORTED_OPERATION",{operation:"signer.getFeeData"});else(r.type===2||r.type===3)&&(r.maxFeePerGas==null&&(r.maxFeePerGas=a.maxFeePerGas),r.maxPriorityFeePerGas==null&&(r.maxPriorityFeePerGas=a.maxPriorityFeePerGas))}return await tt(r)}async estimateGas(e){return Tr(this,"estimateGas").estimateGas(await this.populateCall(e))}async call(e){return Tr(this,"call").call(await this.populateCall(e))}async resolveName(e){return await Tr(this,"resolveName").resolveName(e)}async sendTransaction(e){const n=Tr(this,"sendTransaction"),r=await this.populateTransaction(e);delete r.from;const s=Pt.from(r);return await n.broadcastTransaction(await this.signTransaction(s))}}class Xl extends Jl{address;constructor(e,n){super(n),ee(this,{address:e})}async getAddress(){return this.address}connect(e){return new Xl(this.address,e)}#e(e,n){W(!1,`VoidSigner cannot sign ${e}`,"UNSUPPORTED_OPERATION",{operation:n})}async signTransaction(e){this.#e("transactions","signTransaction")}async signMessage(e){this.#e("messages","signMessage")}async signTypedData(e,n,r){this.#e("typed-data","signTypedData")}}function L9(t){return JSON.parse(JSON.stringify(t))}class Hm{#e;#t;#n;#r;#s;#a;constructor(e){this.#e=e,this.#t=null,this.#n=this.#i.bind(this),this.#r=!1,this.#s=null,this.#a=!1}_subscribe(e){throw new Error("subclasses must override this")}_emitResults(e,n){throw new Error("subclasses must override this")}_recover(e){throw new Error("subclasses must override this")}async#i(e){try{this.#t==null&&(this.#t=this._subscribe(this.#e));let n=null;try{n=await this.#t}catch(i){if(!Je(i,"UNSUPPORTED_OPERATION")||i.operation!=="eth_newFilter")throw i}if(n==null){this.#t=null,this.#e._recoverSubscriber(this,this._recover(this.#e));return}const r=await this.#e.getNetwork();if(this.#s||(this.#s=r),this.#s.chainId!==r.chainId)throw new Error("chaid changed");if(this.#a)return;const s=await this.#e.send("eth_getFilterChanges",[n]);await this._emitResults(this.#e,s)}catch(n){console.log("@TODO",n)}this.#e.once("block",this.#n)}#o(){const e=this.#t;e&&(this.#t=null,e.then(n=>{this.#e.destroyed||this.#e.send("eth_uninstallFilter",[n])}))}start(){this.#r||(this.#r=!0,this.#i(-2))}stop(){this.#r&&(this.#r=!1,this.#a=!0,this.#o(),this.#e.off("block",this.#n))}pause(e){e&&this.#o(),this.#e.off("block",this.#n)}resume(){this.start()}}class W9 extends Hm{#e;constructor(e,n){super(e),this.#e=L9(n)}_recover(e){return new $l(e,this.#e)}async _subscribe(e){return await e.send("eth_newFilter",[this.#e])}async _emitResults(e,n){for(const r of n)e.emit(this.#e,e._wrapLog(r,e._network))}}class H9 extends Hm{async _subscribe(e){return await e.send("eth_newPendingTransactionFilter",[])}async _emitResults(e,n){for(const r of n)e.emit("pending",r)}}const z9="bigint,boolean,function,number,string,symbol".split(/,/g);function $i(t){if(t==null||z9.indexOf(typeof t)>=0||typeof t.getAddress=="function")return t;if(Array.isArray(t))return t.map($i);if(typeof t=="object")return Object.keys(t).reduce((e,n)=>(e[n]=t[n],e),{});throw new Error(`should not happen: ${t} (${typeof t})`)}function G9(t){return new Promise(e=>{setTimeout(e,t)})}function vr(t){return t&&t.toLowerCase()}function Au(t){return t&&typeof t.pollingInterval=="number"}const zm={polling:!1,staticNetwork:null,batchStallTime:10,batchMaxSize:1<<20,batchMaxCount:100,cacheTimeout:250,pollingInterval:4e3};class Ro extends Jl{address;constructor(e,n){super(e),n=fe(n),ee(this,{address:n})}connect(e){W(!1,"cannot reconnect JsonRpcSigner","UNSUPPORTED_OPERATION",{operation:"signer.connect"})}async getAddress(){return this.address}async populateTransaction(e){return await this.populateCall(e)}async sendUncheckedTransaction(e){const n=$i(e),r=[];if(n.from){const i=n.from;r.push((async()=>{const a=await it(i,this.provider);D(a!=null&&a.toLowerCase()===this.address.toLowerCase(),"from address mismatch","transaction",e),n.from=a})())}else n.from=this.address;if(n.gasLimit==null&&r.push((async()=>{n.gasLimit=await this.provider.estimateGas({...n,from:this.address})})()),n.to!=null){const i=n.to;r.push((async()=>{n.to=await it(i,this.provider)})())}r.length&&await Promise.all(r);const s=this.provider.getRpcTransaction(n);return this.provider.send("eth_sendTransaction",[s])}async sendTransaction(e){const n=await this.provider.getBlockNumber(),r=await this.sendUncheckedTransaction(e);return await new Promise((s,i)=>{const a=[1e3,100];let o=0;const c=async()=>{try{const d=await this.provider.getTransaction(r);if(d!=null){s(d.replaceableTransaction(n));return}}catch(d){if(Je(d,"CANCELLED")||Je(d,"BAD_DATA")||Je(d,"NETWORK_ERROR")||Je(d,"UNSUPPORTED_OPERATION")){d.info==null&&(d.info={}),d.info.sendTransactionHash=r,i(d);return}if(Je(d,"INVALID_ARGUMENT")&&(o++,d.info==null&&(d.info={}),d.info.sendTransactionHash=r,o>10)){i(d);return}this.provider.emit("error",Ue("failed to fetch transation after sending (will try again)","UNKNOWN_ERROR",{error:d}))}this.provider._setTimeout(()=>{c()},a.pop()||4e3)};c()})}async signTransaction(e){const n=$i(e);if(n.from){const s=await it(n.from,this.provider);D(s!=null&&s.toLowerCase()===this.address.toLowerCase(),"from address mismatch","transaction",e),n.from=s}else n.from=this.address;const r=this.provider.getRpcTransaction(n);return await this.provider.send("eth_signTransaction",[r])}async signMessage(e){const n=typeof e=="string"?tn(e):e;return await this.provider.send("personal_sign",[K(n),this.address.toLowerCase()])}async signTypedData(e,n,r){const s=$i(r),i=await ft.resolveNames(e,n,s,async a=>{const o=await it(a);return D(o!=null,"TypedData does not support null address","value",a),o});return await this.provider.send("eth_signTypedData_v4",[this.address.toLowerCase(),JSON.stringify(ft.getPayload(i.domain,n,i.value))])}async unlock(e){return this.provider.send("personal_unlockAccount",[this.address.toLowerCase(),e,null])}async _legacySignMessage(e){const n=typeof e=="string"?tn(e):e;return await this.provider.send("eth_sign",[this.address.toLowerCase(),K(n)])}}class V9 extends U9{#e;#t;#n;#r;#s;#a;#i;#o(){if(this.#r)return;const e=this._getOption("batchMaxCount")===1?0:this._getOption("batchStallTime");this.#r=setTimeout(()=>{this.#r=null;const n=this.#n;for(this.#n=[];n.length;){const r=[n.shift()];for(;n.length&&r.length!==this.#e.batchMaxCount;)if(r.push(n.shift()),JSON.stringify(r.map(i=>i.payload)).length>this.#e.batchMaxSize){n.unshift(r.pop());break}(async()=>{const s=r.length===1?r[0].payload:r.map(i=>i.payload);this.emit("debug",{action:"sendRpcPayload",payload:s});try{const i=await this._send(s);this.emit("debug",{action:"receiveRpcResult",result:i});for(const{resolve:a,reject:o,payload:c}of r){if(this.destroyed){o(Ue("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:c.method}));continue}const d=i.filter(l=>l.id===c.id)[0];if(d==null){const l=Ue("missing response for request","BAD_DATA",{value:i,info:{payload:c}});this.emit("error",l),o(l);continue}if("error"in d){o(this.getRpcError(c,d));continue}a(d.result)}}catch(i){this.emit("debug",{action:"receiveRpcError",error:i});for(const{reject:a}of r)a(i)}})()}},e)}constructor(e,n){super(e,n),this.#t=1,this.#e=Object.assign({},zm,n||{}),this.#n=[],this.#r=null,this.#a=null,this.#i=null;{let s=null;const i=new Promise(a=>{s=a});this.#s={promise:i,resolve:s}}const r=this._getOption("staticNetwork");typeof r=="boolean"?(D(!r||e!=="any","staticNetwork cannot be used on special network 'any'","options",n),r&&e!=null&&(this.#a=Ct.from(e))):r&&(D(e==null||r.matches(e),"staticNetwork MUST match network object","options",n),this.#a=r)}_getOption(e){return this.#e[e]}get _network(){return W(this.#a,"network is not available yet","NETWORK_ERROR"),this.#a}async _perform(e){if(e.method==="call"||e.method==="estimateGas"){let r=e.transaction;if(r&&r.type!=null&&X(r.type)&&r.maxFeePerGas==null&&r.maxPriorityFeePerGas==null){const s=await this.getFeeData();s.maxFeePerGas==null&&s.maxPriorityFeePerGas==null&&(e=Object.assign({},e,{transaction:Object.assign({},r,{type:void 0})}))}}const n=this.getRpcRequest(e);return n!=null?await this.send(n.method,n.args):super._perform(e)}async _detectNetwork(){const e=this._getOption("staticNetwork");if(e)if(e===!0){if(this.#a)return this.#a}else return e;return this.#i?await this.#i:this.ready?(this.#i=(async()=>{try{const n=Ct.from(X(await this.send("eth_chainId",[])));return this.#i=null,n}catch(n){throw this.#i=null,n}})(),await this.#i):(this.#i=(async()=>{const n={id:this.#t++,method:"eth_chainId",params:[],jsonrpc:"2.0"};this.emit("debug",{action:"sendRpcPayload",payload:n});let r;try{r=(await this._send(n))[0],this.#i=null}catch(s){throw this.#i=null,this.emit("debug",{action:"receiveRpcError",error:s}),s}if(this.emit("debug",{action:"receiveRpcResult",result:r}),"result"in r)return Ct.from(X(r.result));throw this.getRpcError(n,r)})(),await this.#i)}_start(){this.#s==null||this.#s.resolve==null||(this.#s.resolve(),this.#s=null,(async()=>{for(;this.#a==null&&!this.destroyed;)try{this.#a=await this._detectNetwork()}catch(e){if(this.destroyed)break;console.log("JsonRpcProvider failed to detect network and cannot start up; retry in 1s (perhaps the URL is wrong or the node is not started)"),this.emit("error",Ue("failed to bootstrap network detection","NETWORK_ERROR",{event:"initial-network-discovery",info:{error:e}})),await G9(1e3)}this.#o()})())}async _waitUntilReady(){if(this.#s!=null)return await this.#s.promise}_getSubscriber(e){return e.type==="pending"?new H9(this):e.type==="event"?this._getOption("polling")?new $l(this,e.filter):new W9(this,e.filter):e.type==="orphan"&&e.filter.orphan==="drop-log"?new Wm("orphan"):super._getSubscriber(e)}get ready(){return this.#s==null}getRpcTransaction(e){const n={};return["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach(r=>{if(e[r]==null)return;let s=r;r==="gasLimit"&&(s="gas"),n[s]=Or(X(e[r],`tx.${r}`))}),["from","to","data"].forEach(r=>{e[r]!=null&&(n[r]=K(e[r]))}),e.accessList&&(n.accessList=Cr(e.accessList)),e.blobVersionedHashes&&(n.blobVersionedHashes=e.blobVersionedHashes.map(r=>r.toLowerCase())),n}getRpcRequest(e){switch(e.method){case"chainId":return{method:"eth_chainId",args:[]};case"getBlockNumber":return{method:"eth_blockNumber",args:[]};case"getGasPrice":return{method:"eth_gasPrice",args:[]};case"getPriorityFee":return{method:"eth_maxPriorityFeePerGas",args:[]};case"getBalance":return{method:"eth_getBalance",args:[vr(e.address),e.blockTag]};case"getTransactionCount":return{method:"eth_getTransactionCount",args:[vr(e.address),e.blockTag]};case"getCode":return{method:"eth_getCode",args:[vr(e.address),e.blockTag]};case"getStorage":return{method:"eth_getStorageAt",args:[vr(e.address),"0x"+e.position.toString(16),e.blockTag]};case"broadcastTransaction":return{method:"eth_sendRawTransaction",args:[e.signedTransaction]};case"getBlock":if("blockTag"in e)return{method:"eth_getBlockByNumber",args:[e.blockTag,!!e.includeTransactions]};if("blockHash"in e)return{method:"eth_getBlockByHash",args:[e.blockHash,!!e.includeTransactions]};break;case"getTransaction":return{method:"eth_getTransactionByHash",args:[e.hash]};case"getTransactionReceipt":return{method:"eth_getTransactionReceipt",args:[e.hash]};case"call":return{method:"eth_call",args:[this.getRpcTransaction(e.transaction),e.blockTag]};case"estimateGas":return{method:"eth_estimateGas",args:[this.getRpcTransaction(e.transaction)]};case"getLogs":return e.filter&&e.filter.address!=null&&(Array.isArray(e.filter.address)?e.filter.address=e.filter.address.map(vr):e.filter.address=vr(e.filter.address)),{method:"eth_getLogs",args:[e.filter]}}return null}getRpcError(e,n){const{method:r}=e,{error:s}=n;if(r==="eth_estimateGas"&&s.message){const o=s.message;if(!o.match(/revert/i)&&o.match(/insufficient funds/i))return Ue("insufficient funds","INSUFFICIENT_FUNDS",{transaction:e.params[0],info:{payload:e,error:s}})}if(r==="eth_call"||r==="eth_estimateGas"){const o=Uc(s),c=Ar.getBuiltinCallException(r==="eth_call"?"call":"estimateGas",e.params[0],o?o.data:null);return c.info={error:s,payload:e},c}const i=JSON.stringify(j9(s));if(typeof s.message=="string"&&s.message.match(/user denied|ethers-user-denied/i))return Ue("user rejected action","ACTION_REJECTED",{action:{eth_sign:"signMessage",personal_sign:"signMessage",eth_signTypedData_v4:"signTypedData",eth_signTransaction:"signTransaction",eth_sendTransaction:"sendTransaction",eth_requestAccounts:"requestAccess",wallet_requestAccounts:"requestAccess"}[r]||"unknown",reason:"rejected",info:{payload:e,error:s}});if(r==="eth_sendRawTransaction"||r==="eth_sendTransaction"){const o=e.params[0];if(i.match(/insufficient funds|base fee exceeds gas limit/i))return Ue("insufficient funds for intrinsic transaction cost","INSUFFICIENT_FUNDS",{transaction:o,info:{error:s}});if(i.match(/nonce/i)&&i.match(/too low/i))return Ue("nonce has already been used","NONCE_EXPIRED",{transaction:o,info:{error:s}});if(i.match(/replacement transaction/i)&&i.match(/underpriced/i))return Ue("replacement fee too low","REPLACEMENT_UNDERPRICED",{transaction:o,info:{error:s}});if(i.match(/only replay-protected/i))return Ue("legacy pre-eip-155 transactions not supported","UNSUPPORTED_OPERATION",{operation:r,info:{transaction:o,info:{error:s}}})}let a=!!i.match(/the method .* does not exist/i);return a||s&&s.details&&s.details.startsWith("Unauthorized method:")&&(a=!0),a?Ue("unsupported operation","UNSUPPORTED_OPERATION",{operation:e.method,info:{error:s,payload:e}}):Ue("could not coalesce error","UNKNOWN_ERROR",{error:s,payload:e})}send(e,n){if(this.destroyed)return Promise.reject(Ue("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:e}));const r=this.#t++,s=new Promise((i,a)=>{this.#n.push({resolve:i,reject:a,payload:{method:e,params:n,id:r,jsonrpc:"2.0"}})});return this.#o(),s}async getSigner(e){e==null&&(e=0);const n=this.send("eth_accounts",[]);if(typeof e=="number"){const s=await n;if(e>=s.length)throw new Error("no such account");return new Ro(this,s[e])}const{accounts:r}=await tt({network:this.getNetwork(),accounts:n});e=fe(e);for(const s of r)if(fe(s)===e)return new Ro(this,e);throw new Error("invalid account")}async listAccounts(){return(await this.send("eth_accounts",[])).map(n=>new Ro(this,n))}destroy(){this.#r&&(clearTimeout(this.#r),this.#r=null);for(const{payload:e,reject:n}of this.#n)n(Ue("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:e.method}));this.#n=[],super.destroy()}}class Gm extends V9{#e;constructor(e,n){super(e,n);let r=this._getOption("pollingInterval");r==null&&(r=zm.pollingInterval),this.#e=r}_getSubscriber(e){const n=super._getSubscriber(e);return Au(n)&&(n.pollingInterval=this.#e),n}get pollingInterval(){return this.#e}set pollingInterval(e){if(!Number.isInteger(e)||e<0)throw new Error("invalid interval");this.#e=e,this._forEachSubscriber(n=>{Au(n)&&(n.pollingInterval=this.#e)})}}class _9 extends Gm{#e;constructor(e,n,r){e==null&&(e="http://localhost:8545"),super(n,r),typeof e=="string"?this.#e=new nn(e):this.#e=e.clone()}_getConnection(){return this.#e.clone()}async send(e,n){return await this._start(),await super.send(e,n)}async _send(e){const n=this._getConnection();n.body=JSON.stringify(e),n.setHeader("content-type","application/json");const r=await n.send();r.assertOk();let s=r.bodyJson;return Array.isArray(s)||(s=[s]),s}}function Uc(t){if(t==null)return null;if(typeof t.message=="string"&&t.message.match(/revert/i)&&Ee(t.data))return{message:t.message,data:t.data};if(typeof t=="object"){for(const e in t){const n=Uc(t[e]);if(n)return n}return null}if(typeof t=="string")try{return Uc(JSON.parse(t))}catch{}return null}function Pc(t,e){if(t!=null){if(typeof t.message=="string"&&e.push(t.message),typeof t=="object")for(const n in t)Pc(t[n],e);if(typeof t=="string")try{return Pc(JSON.parse(t),e)}catch{}}}function j9(t){const e=[];return Pc(t,e),e}const q9=0,K9=0n,so="Evm",Q9=(t,e)=>({...t,from:e}),$9=(t,e)=>({...t,chainId:e}),Nc="0x0000000000000000000000000000000000000000";class Bt{static byteSize=20;static platform=so;type="Native";address;constructor(e){if(Bt.instanceof(e)){const n=e;this.address=n.address;return}if(typeof e=="string"){if(!Bt.isValidAddress(e))throw new Error(`Invalid EVM address, expected ${Bt.byteSize}-byte hex string but got ${e}`);this.address=fe(e)}else if(e instanceof Uint8Array)e=this.trimUniversalAddress(e),this.address=fe(Xe.encode(e));else if(Fe.instanceof(e)){const n=this.trimUniversalAddress(e.toUint8Array());this.address=fe(Xe.encode(n))}else throw new Error(`Invalid EVM address ${e}`)}unwrap(){return this.address}toString(){return this.address}toNative(){return this}toUint8Array(){return Xe.decode(this.address)}toUniversalAddress(){return new Fe(this.address,"hex")}trimUniversalAddress(e){if(e.length===Bt.byteSize)return e;if(e.length<Bt.byteSize)throw new Error(`Invalid evm address, expected ${Bt.byteSize} bytes`);if(e.length!==Fe.byteSize)throw new Error(`Invalid universal address, expected ${Fe.byteSize} bytes`);if(Lr.decode(e.slice(0,12))!==0n)throw new Error(`Invalid EVM address ${e} expected first 12 bytes to be 0s`);return e.slice(12)}static isValidAddress(e){return b3(e)}static instanceof(e){return e.constructor.platform===Bt.platform}equals(e){return Bt.instanceof(e)?e.address===this.address:e.equals(this.toUniversalAddress())}}Qf(so,Bt);class J9{transaction;network;chain;description;parallelizable;constructor(e,n,r,s,i=!1){this.transaction=e,this.network=n,this.chain=r,this.description=s,this.parallelizable=i}}const vi=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner_",type:"address"},{internalType:"address",name:"spender_",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender_",type:"address"},{internalType:"uint256",name:"amount_",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account_",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account_",type:"address"},{internalType:"uint256",name:"amount_",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"chainId",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender_",type:"address"},{internalType:"uint256",name:"subtractedValue_",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"domainFields",type:"bytes1"},{internalType:"string",name:"domainName",type:"string"},{internalType:"string",name:"domainVersion",type:"string"},{internalType:"uint256",name:"domainChainId",type:"uint256"},{internalType:"address",name:"domainVerifyingContract",type:"address"},{internalType:"bytes32",name:"domainSalt",type:"bytes32"},{internalType:"uint256[]",name:"domainExtensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender_",type:"address"},{internalType:"uint256",name:"addedValue_",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"},{internalType:"uint8",name:"decimals_",type:"uint8"},{internalType:"uint64",name:"sequence_",type:"uint64"},{internalType:"address",name:"owner_",type:"address"},{internalType:"uint16",name:"chainId_",type:"uint16"},{internalType:"bytes32",name:"nativeContract_",type:"bytes32"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account_",type:"address"},{internalType:"uint256",name:"amount_",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"nativeContract",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner_",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner_",type:"address"},{internalType:"address",name:"spender_",type:"address"},{internalType:"uint256",name:"value_",type:"uint256"},{internalType:"uint256",name:"deadline_",type:"uint256"},{internalType:"uint8",name:"v_",type:"uint8"},{internalType:"bytes32",name:"r_",type:"bytes32"},{internalType:"bytes32",name:"s_",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient_",type:"address"},{internalType:"uint256",name:"amount_",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender_",type:"address"},{internalType:"address",name:"recipient_",type:"address"},{internalType:"uint256",name:"amount_",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"},{internalType:"uint64",name:"sequence_",type:"uint64"}],name:"updateDetails",outputs:[],stateMutability:"nonpayable",type:"function"}],Eu="0x6080806040523461001657611af2908161001c8239f35b600080fdfe6040608081526004908136101561001557600080fd5b600091823560e01c90816306fdde0314611136578163095ea7b31461110c57816318160ddd146110ed57816323b872dd14611026578163313ce567146110055781633644e51514610fe15781633950935114610f985781633d6c043b14610f7957816340c10f1914610ea157816370a0823114610e695781637ecebe0014610e3157816384b0196e14610d575781638da5cb5b14610d2e57816395d89b4114610c595781639a8a059214610c335781639dc29fac14610af1578163a18cd7c6146107bf578163a457c2d71461070f578163a9059cbb146106de578163c71f461514610335578163d505accf14610160575063dd62ed3e1461011557600080fd5b3461015c578060031936011261015c57806020926101316111af565b6101396111ca565b6001600160a01b0391821683526006865283832091168252845220549051908152f35b5080fd5b8391503461015c5760e036600319011261015c5761017c6111af565b6101846111ca565b906044359260643560843560ff81168103610331576101a16112e1565b8142116102ee5760018060a01b039081851692838952600e602052898920908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452868d840152858a1660608401528a608084015260a083015260c082015260c0815261021e81611212565b519020610229611798565b918a5191602083019361190160f01b855260228401526042830152604282526080820182811067ffffffffffffffff8211176102db5791610283939161027b938d5260c4359260a435925190206119c7565b919091611855565b160361029857506102959394506115e0565b80f35b606490602087519162461bcd60e51b8352820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152fd5b634e487b7160e01b8b526041875260248bfd5b875162461bcd60e51b8152602081850152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152606490fd5b8680fd5b9050346106da5760e03660031901126106da5767ffffffffffffffff81358181116106d6576103679036908401611250565b916024358281116106d25761037f9036908301611250565b6044359060ff821680920361033157606435938085168095036106ce576084356001600160a01b03811696908790036106ca5760a4359761ffff891689036106c6576007549060ff8260a01c1661068e575060ff60a01b1916600160a01b17600755805182811161067b57806103f58b546112a7565b92601f93848111610622575b506020908483116001146105b3578c926105a8575b50508160011b916000199060031b1c19161789555b825191821161059557819060019361044385546112a7565b828111610538575b5060209183116001146104cd578a926104c2575b5050600019600383901b1c191690821b1790555b60ff1982541617905567ffffffffffffffff1960025416176002556007549161ffff60a81b9060a81b16916bffffffffffffffffff0000ff60a01b16171760075560c4356008556102956112e1565b01519050388061045f565b848b52849350600080516020611a9d8339815191529190601f1984168c5b81811061052057508411610507575b505050811b019055610473565b015160001960f88460031b161c191690553880806104fa565b828401518555879690940193602093840193016104eb565b90919250848b52600080516020611a9d8339815191528380860160051c8201926020871061058c575b91869588929594930160051c01915b82811061057e57505061044b565b8d8155869550879101610570565b92508192610561565b634e487b7160e01b895260418552602489fd5b015190503880610416565b8c8052600080516020611a7d8339815191529250601f1984168d5b81811061060a57509084600195949392106105f1575b505050811b01895561042b565b015160001960f88460031b161c191690553880806105e4565b929360206001819287860151815501950193016105ce565b9091508b8052600080516020611a7d8339815191528480850160051c82019260208610610672575b9085949392910160051c01905b8181106106645750610401565b8d8155849350600101610657565b9250819261064a565b634e487b7160e01b8a526041865260248afd5b5162461bcd60e51b81526020818801526013602482015272105b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b8980fd5b8880fd5b8780fd5b8580fd5b8480fd5b8280fd5b50503461015c578060031936011261015c576020906107086106fe6111af565b6024359033611416565b5160018152f35b905082346107bc57826003193601126107bc5761072a6111af565b918360243592338152600660205281812060018060a01b038616825260205220549082821061076b576020856107088661076487876113e6565b90336115e0565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b83833461015c57606036600319011261015c5767ffffffffffffffff928035848111610aed576107f29036908301611250565b936024358181116106d65761080a9036908401611250565b91604435938285168095036106d25761082e60018060a01b03600754163314611594565b8483600254161015610aaa57508551828111610a97578061084f87546112a7565b97601f98898111610a3e575b506020908983116001146109cf5788926109c4575b50508160011b916000199060031b1c19161785555b82519182116109b1575060019161089c83546112a7565b868111610961575b5060209582116001146108f75794849582939495926108ec575b5050600019600383901b1c191690821b1790555b67ffffffffffffffff1960025416176002556102956112e1565b0151905085806108be565b828552601f19821695600080516020611a9d83398151915291865b88811061094b5750838596979810610932575b505050811b0190556108d2565b015160001960f88460031b161c19169055858080610925565b8183015184559285019260209283019201610912565b838652600080516020611a9d8339815191528780850160051c820192602086106109a8575b0160051c019084905b82811061099d5750506108a4565b87815501849061098f565b92508192610986565b634e487b7160e01b855260419052602484fd5b015190508880610870565b888052600080516020611a7d8339815191529250601f198416895b818110610a265750908460019594939210610a0d575b505050811b018555610885565b015160001960f88460031b161c19169055888080610a00565b929360206001819287860151815501950193016109ea565b909150878052600080516020611a7d8339815191528980850160051c82019260208610610a8e575b9085949392910160051c01905b818110610a80575061085b565b898155849350600101610a73565b92508192610a66565b634e487b7160e01b865260418252602486fd5b906020606492519162461bcd60e51b8352820152601e60248201527f63757272656e74206d6574616461746120697320757020746f206461746500006044820152fd5b8380fd5b8391503461015c578260031936011261015c57610b0c6111af565b600754602435916001600160a01b0391610b299083163314611594565b16918215610be65782845260056020528484205490828210610b985750818495610b767fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef946020946113e6565b8587526005845281872055610b8d826003546113e6565b60035551908152a380f35b608490602087519162461bcd60e51b8352820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152fd5b608490602086519162461bcd60e51b8352820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152fd5b50503461015c578160031936011261015c5760209061ffff60075460a81c169051908152f35b50503461015c578160031936011261015c57805190826001805491610c7d836112a7565b80865292828116908115610d065750600114610cbc575b505050610ca682610cb894038361122e565b5191829160208352602083019061118a565b0390f35b9450808552600080516020611a9d8339815191525b828610610cee57505050610ca6826020610cb89582010194610c94565b80546020878701810191909152909501948101610cd1565b610cb8975086935060209250610ca694915060ff191682840152151560051b82010194610c94565b50503461015c578160031936011261015c5760075490516001600160a01b039091168152602090f35b9050346106da57826003193601126106da57610d7161133d565b918051610d7d816111e0565b600194858252602091603160f81b83820152610d97611810565b938051918483019683881067ffffffffffffffff8911176109b1575093879592610dee838b978a859652878452610de182519a601f60f81b8c5260e0878d015260e08c019061118a565b918a8303908b015261118a565b9346606089015230608089015260a088015286840360c088015251928381520195925b828110610e1e5785870386f35b8351875295810195928101928401610e11565b50503461015c57602036600319011261015c5760209181906001600160a01b03610e596111af565b168152600e845220549051908152f35b50503461015c57602036600319011261015c5760209181906001600160a01b03610e916111af565b1681526005845220549051908152f35b919050346106da57806003193601126106da57610ebc6111af565b60075460243592916001600160a01b0391610eda9083163314611594565b16928315610f3757506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610f158795600354611409565b60035585855260058352808520610f2d838254611409565b905551908152a380f35b6020606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b50503461015c578160031936011261015c576020906008549051908152f35b50503461015c578060031936011261015c57610708602092610764610fbb6111af565b338352600686528483206001600160a01b03821684528652918490205460243590611409565b50503461015c578160031936011261015c57602090610ffe611798565b9051908152f35b8284346107bc57806003193601126107bc575060ff60209254169051908152f35b905082346107bc5760603660031901126107bc576110426111af565b918361104c6111ca565b9261105b604435809587611416565b6001600160a01b0385168152600660209081528282203383529052205490828210611099576020856107088661109187876113e6565b9033906115e0565b608490602086519162461bcd60e51b8352820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152fd5b50503461015c578160031936011261015c576020906003549051908152f35b50503461015c578060031936011261015c5760209061070861112c6111af565b60243590336115e0565b50503461015c578160031936011261015c57610cb89061115461133d565b905191829160208352602083019061118a565b60005b83811061117a5750506000910152565b818101518382015260200161116a565b906020916111a381518092818552858086019101611167565b601f01601f1916010190565b600435906001600160a01b03821682036111c557565b600080fd5b602435906001600160a01b03821682036111c557565b6040810190811067ffffffffffffffff8211176111fc57604052565b634e487b7160e01b600052604160045260246000fd5b60e0810190811067ffffffffffffffff8211176111fc57604052565b90601f8019910116810190811067ffffffffffffffff8211176111fc57604052565b81601f820112156111c55780359067ffffffffffffffff82116111fc5760405192611285601f8401601f19166020018561122e565b828452602083830101116111c557816000926020809301838601378301015290565b90600182811c921680156112d7575b60208310146112c157565b634e487b7160e01b600052602260045260246000fd5b91607f16916112b6565b6112e96117de565b6112f1611810565b81600d5414801590611331575b611306575050565b46600a55600b80546001600160a01b0319163017905561132681836116e2565b600955600c55600d55565b5080600c5414156112fe565b60405190600082815491611350836112a7565b808352926001908181169081156113c45750600114611379575b506113779250038361122e565b565b60008080529150600080516020611a7d8339815191525b8483106113a9575061137793505081016020013861136a565b81935090816020925483858a01015201910190918592611390565b90506020925061137794915060ff191682840152151560051b8201013861136a565b919082039182116113f357565b634e487b7160e01b600052601160045260246000fd5b919082018092116113f357565b6001600160a01b0390811691821561154157169182156114f0576000828152600560205260408120549180831061149c576040602092611477837fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef966113e6565b868252600585528282205586815220611491828254611409565b9055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b1561159b57565b60405162461bcd60e51b815260206004820152601760248201527f63616c6c6572206973206e6f7420746865206f776e65720000000000000000006044820152606490fd5b6001600160a01b0390811691821561169157169182156116415760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260068252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b90604051906116f0826111e0565b600191828152602092603160f81b84830152604051918460005b83811061178457505050600060218301528152611726816111e0565b828151910120604051928301937fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564728552604084015260608301524660808301523060a083015260c082015260c0815261177e81611212565b51902090565b81818401015182828701015201859061170a565b600b546001600160a01b03163014806117d3575b156117b75760095490565b6117d06117c26117de565b6117ca611810565b906116e2565b90565b50600a5446146117ac565b6117e661133d565b60405161177e602082816118038183019687815193849201611167565b810103808452018261122e565b60075460085460405190602082019261ffff60f01b9060481b1683526022820152602281526060810181811067ffffffffffffffff8211176111fc5760405251902090565b60058110156119b157806118665750565b600181036118b35760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b600281036119005760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b600381036119585760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b60041461196157565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608490fd5b634e487b7160e01b600052602160045260246000fd5b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311611a705760ff16601b81141580611a65575b611a59579160809493916020936040519384528484015260408301526060820152600093849182805260015afa15611a4c5781516001600160a01b03811615611a46579190565b50600190565b50604051903d90823e3d90fd5b50505050600090600490565b50601c8114156119ff565b5050505060009060039056fe290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563b10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6a26469706673582212209c2a6ab851b98b79f450a0f6c6580132088da5913ef53a145eab9f7b320248f664736f6c63430008130033",X9=t=>t.length>1;class Y9 extends eo{constructor(...e){X9(e)?super(...e):super(vi,Eu,e[0])}getDeployTransaction(e){return super.getDeployTransaction(e||{})}deploy(e){return super.deploy(e||{})}connect(e){return super.connect(e)}static bytecode=Eu;static abi=vi;static createInterface(){return new en(vi)}static connect(e,n){return new ur(e,vi,n)}}class Vm extends ah{}const wu={Mainnet:{Ethereum:"eth-mainnet",Polygon:"matic-mainnet",Bsc:"bsc-mainnet",Optimism:"optimism-mainnet",Base:"base-mainnet",Worldchain:"world-mainnet",Sei:"sei-mainnet",Ink:"ink-mainnet",Solana:"solana-mainnet",Arbitrum:"arbitrum-mainnet",Berachain:"berachain-mainnet",Linea:"linea-mainnet",Scroll:"scroll-mainnet",Seievm:"sei-mainnet",Unichain:"unichain-mainnet",HyperEVM:"hyperevm-mainnet",Moonbeam:"moonbeam-mainnet",Mantle:"mantle-mainnet",Celo:"celo-mainnet",Fantom:"fantom-mainnet"},Testnet:{Ethereum:"eth-sepolia",Polygon:"polygon-amoy-testnet",Bsc:"bsc-testnet",Optimism:"optimism-sepolia",Base:"base-sepolia-testnet",Worldchain:"world-sepolia-testnet",Unichain:"unichain-sepolia-testnet",Berachain:"berachain-testnet",Ink:"ink-sepolia-testnet",Arbitrum:"arbitrum-sepolia",Linea:"linea-sepolia-testnet",Scroll:"scroll-sepolia-testnet",Monad:"monad-testnet",Mantle:"mantle-sepolia-testnet",Fantom:"fantom-testnet"},Devnet:{}};class Z9{key;constructor(e){this.key=e}supportsChain(e,n){return wu[e][n]!==void 0}async getBalances(e,n,r,s){const i=wu[e][n];if(!i)throw new Error("Chain not supported by GoldRush indexer");const{data:a}=await(await fetch(`https://api.covalenthq.com/v1/${i}/address/${r}/balances_v2/?key=${this.key}`,{signal:s})).json(),o={};for(let c of a.items){const d=c.contract_address.toLowerCase(),l=d==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"?"native":d;o[l]=BigInt(c.balance)}return o}}const Bu={Mainnet:{Ethereum:"eth-mainnet",Base:"base-mainnet",Arbitrum:"arb-mainnet",Optimism:"opt-mainnet",Polygon:"polygon-mainnet",Worldchain:"worldchain-mainnet",Ink:"ink-mainnet",Unichain:"unichain-mainnet",Berachain:"berachain-mainnet",Celo:"celo-mainnet",Linea:"linea-mainnet"},Testnet:{Ethereum:"eth-sepolia",Base:"base-sepolia",Arbitrum:"arb-sepolia",Optimism:"opt-sepolia",Polygon:"polygon-amoy",Worldchain:"worldchain-sepolia",Ink:"ink-sepolia",Unichain:"unichain-sepolia",Berachain:"berachain-bartio",Monad:"monad-testnet"},Devnet:{}};class eA{key;constructor(e){this.key=e}supportsChain(e,n){return Bu[e][n]!==void 0}async getBalances(e,n,r,s){const i=Bu[e][n];if(!i)throw new Error("Chain not supported by Alchemy indexer");const{result:a}=await(await fetch(`https://${i}.g.alchemy.com/v2/${this.key}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jsonrpc:"2.0",id:1,method:"alchemy_getTokenBalances",params:[r,"erc20"]}),signal:s})).json(),o={};for(let c of a.tokenBalances)o[c.contractAddress]=BigInt(parseInt(c.balance,16));return o}}class kt extends nh{static _platform=so;_providers={};constructor(e,n){super(e,n??El(e,kt._platform))}getRpc(e){const n=this._providers[e];if(n)return n;if(e in this.config&&this.config[e].rpc){const r=new _9(this.config[e].rpc,Vc.get(this.network,e),{staticNetwork:!0});return this._providers[e]=r,r}else throw new Error("No configuration available for chain: "+e)}getChain(e,n){if(e in this.config)return new Vm(e,this,n);throw new Error("No configuration available for chain: "+e)}static nativeTokenId(e,n){if(!kt.isSupportedChain(n))throw new Error(`invalid chain for EVM: ${n}`);return xt.tokenId(n,Nc)}static isNativeTokenId(e,n,r){return!kt.isSupportedChain(n)||r.chain!==n?!1:r.address.toString()===Nc}static isSupportedChain(e){return vt(e)===kt._platform}static async getDecimals(e,n,r,s){if(Ve(s))return Gc(kt._platform);const i=kt.getTokenImplementation(r,new Bt(s).toString());return Number(await i.decimals())}static async getBalance(e,n,r,s,i){return Ve(i)?r.getBalance(s):kt.getTokenImplementation(r,new Bt(i).toString()).balanceOf(s)}static async getBalances(e,n,r,s,i){if(!i)throw new Error("Can't get all EVM balances without an indexer. Use getBalance to make individual calls instead.");const a=async(c,d,l)=>{if(!c)return null;try{if(!c.supportsChain(e,n))return console.info(`Network=${e} Chain=${n} not supported by ${d} indexer API`),null;const f=new AbortController,m=setTimeout(()=>{f.abort(new Error(`${d} request timed out after ${l}ms`))},l);let b;try{b=await c.getBalances(e,n,s,f.signal)}finally{clearTimeout(m)}return b.native??=await r.getBalance(s),b}catch(f){return console.info(`Error querying ${d} indexer API: ${f}`),null}},o=[{name:"Gold Rush",client:i.goldRush?new Z9(i.goldRush):null,timeout:5e3},{name:"Alchemy",client:i.alchemy?new eA(i.alchemy):null,timeout:5e3}];for(const{name:c,client:d,timeout:l}of o){const f=await a(d,c,l);if(f)return f}throw new Error("Failed to get a successful response from an EVM indexer")}static async sendWait(e,n,r){const s=[];for(const i of r){const a=await n.broadcastTransaction(i);if(s.push(a.hash),e==="Celo"){console.error("TODO: override celo block fetching");continue}if(await a.wait()===null)throw new Error("Received null TxReceipt")}return s}static async getLatestBlock(e){return await e.getBlockNumber()}static async getLatestFinalizedBlock(e){const n=await e.getBlock("finalized");if(!n)throw new Error("Could not get finalized block");return n?.number}static chainFromChainId(e){const n=Ku(kt._platform,BigInt(e));if(n===void 0)throw new Error(`Unknown EVM chainId ${e}`);const[r,s]=n;return[r,s]}static async chainFromRpc(e){const{chainId:n}=await e.getNetwork();return kt.chainFromChainId(Lr.encode(n,!0))}static getTokenImplementation(e,n){const r=Y9.connect(n,e);if(!r)throw new Error(`No token implementation available for: ${n}`);return r}}exports.AbiCoder=Ar;exports.AbstractSigner=Jl;exports.AutomaticRoute=l5;exports.AxiosError=Rg;exports.Buffer=Fh;exports.Buffer$1=V8;exports.ChainContext=ah;exports.CircleTransfer=_e;exports.Contract=ur;exports.ContractFactory=eo;exports.DEFAULT_TASK_TIMEOUT=Jt;exports.ErrNotWrapped=hp;exports.EvmAddress=Bt;exports.EvmChain=Vm;exports.EvmPlatform=kt;exports.EvmUnsignedTransaction=J9;exports.EvmZeroAddress=Nc;exports.Field=ds;exports.FinalizableRoute=h5;exports.FpInvertBatch=il;exports.FpLegendre=Jo;exports.FpPow=Pf;exports.Hash=Da;exports.HashMD=Xc;exports.Interface=en;exports.JsonRpcApiPollingProvider=Gm;exports.ManualRoute=u5;exports.MinAmountError=qg;exports.PlatformContext=nh;exports.PlatformNativeSigner=Z6;exports.RelayFailedError=Bl;exports.Route=Wa;exports.RouteResolver=Kh;exports.SHA2=Il;exports.SigningKey=Xt;exports.TokenTransfer=ke;exports.Transaction=Pt;exports.TypedDataEncoder=ft;exports.UnavailableError=Kg;exports.UniversalAddress=Fe;exports.VoidSigner=Xl;exports.Wormhole=xt;exports.ZeroAddress=es;exports._abool2=Ns;exports._abytes2=Nn;exports._createCurveFields=zf;exports._normFnElement=Rn;exports._platform=so;exports._validateObject=Sa;exports.aInRange=Df;exports.abytes=Lt;exports.add=qt;exports.add3H=df;exports.add3L=lf;exports.addChainId=$9;exports.addFixedValues=mb;exports.addFrom=Q9;exports.aexists=mr;exports.ahash=Kc;exports.amountItem=Te;exports.anumber=qr;exports.aoutput=Qc;exports.applyChainsConfigConfigOverrides=Lg;exports.assert=W;exports.assertArgument=D;exports.assertNormalize=Jh;exports.assertPrivate=ii;exports.asyncLoop=W5;exports.axios=ue;exports.b58=Wu;exports.b64=xa;exports.base58=ta;exports.bech32=Lu;exports.bignum=Lr;exports.bitGet=t6;exports.bitLen=rl;exports.bound=ib;exports.bytes=at;exports.bytesToHex=rr;exports.bytesToNumberBE=Xs;exports.bytesToNumberLE=tl;exports.canonicalAddress=Wt;exports.chainIdToChain=na;exports.chainItem=ut;exports.chainToChainId=Ks;exports.chainToPlatform=vt;exports.checkCircleGeoblock=_g;exports.checkOpts=b1;exports.checkOpts$1=w2;exports.circleChainId=Qu;exports.circleContractChains=l2;exports.circleContracts=Ko;exports.circleDomainItem=Qr;exports.circleNonceItem=Ta;exports.clean=gn;exports.computeAddress=hm;exports.concat=De;exports.concatBytes=dn;exports.constMap=ne;exports.copyBytes=e6;exports.copyRequest=js;exports.createBase58check=vb;exports.createHasher=Js;exports.createHmac=yy;exports.createOptHasher=B2;exports.createView=Hi;exports.customizableBytes=Ea;exports.dataLength=or;exports.dataSlice=xe;exports.dateConversion=Yf;exports.decodeBase58=E5;exports.decomposeLiteral=eh;exports.defineProperties=ee;exports.deliveryInstructionLayout=hh;exports.denoise=Eb;exports.deserialize=Wr;exports.deserialize$1=Mt;exports.display=wa;exports.encodeBase58=t1;exports.ensureBytes=ct;exports.envelopeLayout=ul;exports.estimateFinalityTime=zc;exports.executorTokenBridge=qo;exports.executorTokenBridgeChains=c2;exports.expiration=ks;exports.filters=cs;exports.fixedChainItem=O6;exports.fixedLengthStringItem=ll;exports.fromBaseUnits=ln;exports.fromBig=of;exports.fromTwos=e1;exports.getAddress=fe;exports.getBigInt=X;exports.getBytes=ce;exports.getBytesCopy=rt;exports.getCreate2Address=m3;exports.getDeciBps=Nu;exports.getMinHashLength=al;exports.getNumber=ae;exports.getTokenDetails=c5;exports.global=ca;exports.graphQLAddress=tf;exports.guardianAttestationEta=qc;exports.guardianSetItem=cl;exports.headerLayout=dl;exports.hex=Xe;exports.hexToBytes=Ps;exports.hexlify=K;exports.hmac=Zc;exports.id=Hn;exports.isAttested=Hr;exports.isAutomatic=d5;exports.isAxiosError=Og;exports.isBytes=$s;exports.isBytesLike=Ha;exports.isChain=Qs;exports.isCompleted=Jg;exports.isDestinationQueued=$g;exports.isEqualCaseInsensitive=Gu;exports.isFailed=jh;exports.isFinalizable=m5;exports.isHash=r6;exports.isHexString=Ee;exports.isManual=f5;exports.isNative=Ve;exports.isNegativeLE=d6;exports.isRedeemed=xl;exports.isRefunded=Qg;exports.isSameToken=rh;exports.isSignAndSendSigner=ml;exports.isSignOnlySigner=oh;exports.isSourceFinalized=Ls;exports.isSourceInitiated=Cl;exports.isTokenId=Zs;exports.isUnattestedTokenId=J6;exports.isWormholeMessageId=ir;exports.kdfInputToBytes=E2;exports.keccak256=Ne;exports.keccak_256=Fa;exports.mapHashToField=Of;exports.mask=Rr;exports.median=tb;exports.memoized=$o;exports.mod=wt;exports.nativeDecimals=Gc;exports.nativeTokenId=hl;exports.networkChainToNativeChainId=Vc;exports.networkPlatformConfigs=El;exports.normalizeZ=zi;exports.notImplemented=s6;exports.number=Ln;exports.parse=Ri;exports.payloadIdItem=Bn;exports.payloadLiteralToPayloadItemLayout=th;exports.pbkdf2=g1;exports.pbkdf2Sync=Ay;exports.pippenger=Hf;exports.platformNativeChainIdToNetworkChain=Ku;exports.porticoContractChains=d2;exports.pow2=At;exports.process$1=vs;exports.randomBytes=Jc;exports.randomBytes$1=Ey;exports.registerNative=Qf;exports.registerPayloadTypes=We;exports.registerProtocol=U6;exports.relayInstructionsLayout=bh;exports.resolveAddress=it;exports.resolveProperties=tt;exports.resolveWrappedToken=sh;exports.retry=wr;exports.rotl=p2;exports.rotr32H=F2;exports.rotr32L=S2;exports.rotrBH=ws;exports.rotrBL=Bs;exports.rotrSH=Gn;exports.rotrSL=Vn;exports.rpcAddress=ju;exports.scale=kr;exports.secp256k1=Cs;exports.sequenceItem=va;exports.serialize=Ot;exports.serialize$1=Gi;exports.serializePayload=G6;exports.sha256=Yc;exports.sha256$1=mf;exports.sha256$2=ai;exports.sha256$3=Br;exports.sha3_256=X2;exports.sha512=hf;exports.sha512$1=Y2;exports.signSendWait=Ms;exports.signatureItem=ia;exports.signedQuoteLayout=ph;exports.stringConversion=Zf;exports.stripPrefix=Lc;exports.supportsIndexerUtils=V6;exports.swap32IfBE=Qo;exports.swap8IfBE=g2;exports.tbtc=Wi;exports.toBeArray=st;exports.toBeHex=An;exports.toBigInt=Va;exports.toBytes=ls;exports.toChain=os;exports.toChainId=Rt;exports.toCircleChain=Li;exports.toNative=yn;exports.toTwos=Fl;exports.toUniversal=$f;exports.toUtf8Bytes=tn;exports.tokenBridgeChains=a2;exports.tokenBridgeRelayerChains=o2;exports.truncate=Oi;exports.u32=nf;exports.u32$1=m1;exports.units=Qe;exports.universalAddress=X6;exports.universalAddressItem=se;exports.unusedArbiterFee=K9;exports.unusedNonce=q9;exports.usdcContract=Ss;exports.utf8ToBytes=$c;exports.version=Qh;exports.wNAF=Wf;exports.weierstrass=Kf;exports.weierstrassPoints=w6;exports.whole=Fs;exports.wrapConstructor=ja;exports.zeroPadBytes=Zh;exports.zeroPadValue=Wn;
|