@reown/appkit-cdn 1.6.7-basic-test.8.0 → 1.6.7-core-2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{add-Bo7hlhOK.js → add-DE6xsvo_.js} +2 -2
- package/dist/{add-Bo7hlhOK.js.map → add-DE6xsvo_.js.map} +1 -1
- package/dist/{all-wallets-DiYxd6h8.js → all-wallets-CaSXZUWF.js} +2 -2
- package/dist/{all-wallets-DiYxd6h8.js.map → all-wallets-CaSXZUWF.js.map} +1 -1
- package/dist/{app-store-BwOymb6f.js → app-store-CrDyy3Wa.js} +2 -2
- package/dist/{app-store-BwOymb6f.js.map → app-store-CrDyy3Wa.js.map} +1 -1
- package/dist/{appkit-7F54kjKy.js → appkit-Cly9g1o7.js} +49893 -55110
- package/dist/appkit-Cly9g1o7.js.map +1 -0
- package/dist/appkit.js +8 -8
- package/dist/{apple-2YTcD6RU.js → apple-BbOPLgIX.js} +2 -2
- package/dist/{apple-2YTcD6RU.js.map → apple-BbOPLgIX.js.map} +1 -1
- package/dist/{arrow-bottom-circle-W1sxGKIm.js → arrow-bottom-circle-BFTWJbEj.js} +2 -2
- package/dist/{arrow-bottom-circle-W1sxGKIm.js.map → arrow-bottom-circle-BFTWJbEj.js.map} +1 -1
- package/dist/{arrow-bottom-ZLYjQRVF.js → arrow-bottom-nxwCJBf2.js} +2 -2
- package/dist/{arrow-bottom-ZLYjQRVF.js.map → arrow-bottom-nxwCJBf2.js.map} +1 -1
- package/dist/{arrow-left-DLgnPVzk.js → arrow-left-BWlJ2qlC.js} +2 -2
- package/dist/{arrow-left-DLgnPVzk.js.map → arrow-left-BWlJ2qlC.js.map} +1 -1
- package/dist/{arrow-right-C5iPaK1O.js → arrow-right-BGkJBSWL.js} +2 -2
- package/dist/{arrow-right-C5iPaK1O.js.map → arrow-right-BGkJBSWL.js.map} +1 -1
- package/dist/{arrow-top-CKGwVtz2.js → arrow-top-CW2jDEe4.js} +2 -2
- package/dist/{arrow-top-CKGwVtz2.js.map → arrow-top-CW2jDEe4.js.map} +1 -1
- package/dist/{bank-DeTywVwC.js → bank-1GOPral2.js} +2 -2
- package/dist/{bank-DeTywVwC.js.map → bank-1GOPral2.js.map} +1 -1
- package/dist/{browser-ZHBOTr6m.js → browser-CNMKyt_S.js} +2 -2
- package/dist/{browser-ZHBOTr6m.js.map → browser-CNMKyt_S.js.map} +1 -1
- package/dist/{browser-B8BCrASu.js → browser-CRwbyiDn.js} +2 -2
- package/dist/{browser-B8BCrASu.js.map → browser-CRwbyiDn.js.map} +1 -1
- package/dist/{card-WYAxW4AU.js → card-BobtkMhO.js} +2 -2
- package/dist/{card-WYAxW4AU.js.map → card-BobtkMhO.js.map} +1 -1
- package/dist/{checkmark-D6gNkqXD.js → checkmark-9IgRwflL.js} +2 -2
- package/dist/{checkmark-D6gNkqXD.js.map → checkmark-9IgRwflL.js.map} +1 -1
- package/dist/{checkmark-bold-CVLxIhp1.js → checkmark-bold-BCsyR4P6.js} +2 -2
- package/dist/{checkmark-bold-CVLxIhp1.js.map → checkmark-bold-BCsyR4P6.js.map} +1 -1
- package/dist/{chevron-bottom-BnZrP8ng.js → chevron-bottom-hQ1dLD8u.js} +2 -2
- package/dist/{chevron-bottom-BnZrP8ng.js.map → chevron-bottom-hQ1dLD8u.js.map} +1 -1
- package/dist/{chevron-left-PQlhhfpK.js → chevron-left-B11Abfnf.js} +2 -2
- package/dist/{chevron-left-PQlhhfpK.js.map → chevron-left-B11Abfnf.js.map} +1 -1
- package/dist/{chevron-right-BHxp4jkW.js → chevron-right-Bf32y1EN.js} +2 -2
- package/dist/{chevron-right-BHxp4jkW.js.map → chevron-right-Bf32y1EN.js.map} +1 -1
- package/dist/{chevron-top-BbJGkGfR.js → chevron-top-BO8SByAy.js} +2 -2
- package/dist/{chevron-top-BbJGkGfR.js.map → chevron-top-BO8SByAy.js.map} +1 -1
- package/dist/{chrome-store-Cie71Qem.js → chrome-store-9vnZcqNu.js} +2 -2
- package/dist/{chrome-store-Cie71Qem.js.map → chrome-store-9vnZcqNu.js.map} +1 -1
- package/dist/{clock-IQBTFXEw.js → clock-riZdPcFM.js} +2 -2
- package/dist/{clock-IQBTFXEw.js.map → clock-riZdPcFM.js.map} +1 -1
- package/dist/{close-DxKbHQ06.js → close-DNxPKWKb.js} +2 -2
- package/dist/{close-DxKbHQ06.js.map → close-DNxPKWKb.js.map} +1 -1
- package/dist/{coinPlaceholder-CoskC0O6.js → coinPlaceholder-vaT6n0Dq.js} +2 -2
- package/dist/{coinPlaceholder-CoskC0O6.js.map → coinPlaceholder-vaT6n0Dq.js.map} +1 -1
- package/dist/{compass-IfPXB2uJ.js → compass-BXTAYDkL.js} +2 -2
- package/dist/{compass-IfPXB2uJ.js.map → compass-BXTAYDkL.js.map} +1 -1
- package/dist/{copy-Bjw7HZdA.js → copy-CBRaHGDQ.js} +2 -2
- package/dist/{copy-Bjw7HZdA.js.map → copy-CBRaHGDQ.js.map} +1 -1
- package/dist/{cursor-BEjLiAyG.js → cursor-d-bR9lqy.js} +2 -2
- package/dist/{cursor-BEjLiAyG.js.map → cursor-d-bR9lqy.js.map} +1 -1
- package/dist/{cursor-transparent-B4swj4oX.js → cursor-transparent-DanHbb8L.js} +2 -2
- package/dist/{cursor-transparent-B4swj4oX.js.map → cursor-transparent-DanHbb8L.js.map} +1 -1
- package/dist/{desktop-DWDJAE0j.js → desktop-Ea_pcyLe.js} +2 -2
- package/dist/{desktop-DWDJAE0j.js.map → desktop-Ea_pcyLe.js.map} +1 -1
- package/dist/{disconnect-DyBVvUlm.js → disconnect-CjRyCdF-.js} +2 -2
- package/dist/{disconnect-DyBVvUlm.js.map → disconnect-CjRyCdF-.js.map} +1 -1
- package/dist/{discord-Dy6b3RRH.js → discord-85Fgrjua.js} +2 -2
- package/dist/{discord-Dy6b3RRH.js.map → discord-85Fgrjua.js.map} +1 -1
- package/dist/{email-DghZZFyu.js → email-C29KqpqU.js} +8 -8
- package/dist/{email-DghZZFyu.js.map → email-C29KqpqU.js.map} +1 -1
- package/dist/{embedded-wallet-CGjM19AV.js → embedded-wallet-ChtJ9d8m.js} +10 -10
- package/dist/{embedded-wallet-CGjM19AV.js.map → embedded-wallet-ChtJ9d8m.js.map} +1 -1
- package/dist/{etherscan-CJk7TO4R.js → etherscan-DTm7ibk5.js} +2 -2
- package/dist/{etherscan-CJk7TO4R.js.map → etherscan-DTm7ibk5.js.map} +1 -1
- package/dist/{exclamation-triangle-DiOWokAx.js → exclamation-triangle-DGIy7zhV.js} +2 -2
- package/dist/{exclamation-triangle-DiOWokAx.js.map → exclamation-triangle-DGIy7zhV.js.map} +1 -1
- package/dist/{extension-AzZ-VQ5S.js → extension-BG9HdMPD.js} +2 -2
- package/dist/{extension-AzZ-VQ5S.js.map → extension-BG9HdMPD.js.map} +1 -1
- package/dist/{external-link-Bg6o90yA.js → external-link-Di43C1pf.js} +2 -2
- package/dist/{external-link-Bg6o90yA.js.map → external-link-Di43C1pf.js.map} +1 -1
- package/dist/{facebook-BvIKAWg3.js → facebook-CMAKZiZB.js} +2 -2
- package/dist/{facebook-BvIKAWg3.js.map → facebook-CMAKZiZB.js.map} +1 -1
- package/dist/{farcaster-CMMxDX39.js → farcaster-Dpf9c4MK.js} +2 -2
- package/dist/{farcaster-CMMxDX39.js.map → farcaster-Dpf9c4MK.js.map} +1 -1
- package/dist/{filters-CFLl0iBs.js → filters-CMFnX3RL.js} +2 -2
- package/dist/{filters-CFLl0iBs.js.map → filters-CMFnX3RL.js.map} +1 -1
- package/dist/{github-CmYncmzL.js → github-Bjk1_5qL.js} +2 -2
- package/dist/{github-CmYncmzL.js.map → github-Bjk1_5qL.js.map} +1 -1
- package/dist/{google-Ckse0W4Z.js → google-62muXda9.js} +2 -2
- package/dist/{google-Ckse0W4Z.js.map → google-62muXda9.js.map} +1 -1
- package/dist/{help-circle-BijMy4ht.js → help-circle-CTpQUk-o.js} +2 -2
- package/dist/{help-circle-BijMy4ht.js.map → help-circle-CTpQUk-o.js.map} +1 -1
- package/dist/{id-gO3BEzSg.js → id-Dp8nTGU2.js} +2 -2
- package/dist/{id-gO3BEzSg.js.map → id-Dp8nTGU2.js.map} +1 -1
- package/dist/{if-defined-BUCsuh9s.js → if-defined-DeBuBv8C.js} +78 -78
- package/dist/{if-defined-BUCsuh9s.js.map → if-defined-DeBuBv8C.js.map} +1 -1
- package/dist/{image-DxhE6Fnm.js → image-Dn9sVFNH.js} +2 -2
- package/dist/{image-DxhE6Fnm.js.map → image-Dn9sVFNH.js.map} +1 -1
- package/dist/{index-DPDvs1Rr.js → index-3AIUbrUU.js} +4 -4
- package/dist/{index-DPDvs1Rr.js.map → index-3AIUbrUU.js.map} +1 -1
- package/dist/{index-OJaV5piL.js → index-APZGoFS4.js} +3 -3
- package/dist/{index-OJaV5piL.js.map → index-APZGoFS4.js.map} +1 -1
- package/dist/{index-C9D8IpSa.js → index-B4ozkdcL.js} +3 -3
- package/dist/{index-C9D8IpSa.js.map → index-B4ozkdcL.js.map} +1 -1
- package/dist/{index-CQfiGCux.js → index-BBqt8FI3.js} +3 -3
- package/dist/{index-CQfiGCux.js.map → index-BBqt8FI3.js.map} +1 -1
- package/dist/{index-h2uWrDWR.js → index-BF2zsxDq.js} +4 -4
- package/dist/{index-h2uWrDWR.js.map → index-BF2zsxDq.js.map} +1 -1
- package/dist/{index-DnuurRsQ.js → index-BInOwLdY.js} +7 -7
- package/dist/{index-DnuurRsQ.js.map → index-BInOwLdY.js.map} +1 -1
- package/dist/{index-BL1Vtc1i.js → index-BOUiZbXW.js} +4 -4
- package/dist/{index-BL1Vtc1i.js.map → index-BOUiZbXW.js.map} +1 -1
- package/dist/{index-Bdgknjoz.js → index-BOt3v16B.js} +4 -4
- package/dist/{index-Bdgknjoz.js.map → index-BOt3v16B.js.map} +1 -1
- package/dist/{index-CGcPcD7s.js → index-BV_wsLUs.js} +3 -3
- package/dist/{index-CGcPcD7s.js.map → index-BV_wsLUs.js.map} +1 -1
- package/dist/{index-C0zB454j.js → index-BjEXOY6K.js} +3 -3
- package/dist/{index-C0zB454j.js.map → index-BjEXOY6K.js.map} +1 -1
- package/dist/{index-Clt4Gamg.js → index-BjjSQnZ5.js} +3 -3
- package/dist/{index-Clt4Gamg.js.map → index-BjjSQnZ5.js.map} +1 -1
- package/dist/{index-Bf_CKPQ4.js → index-BkE0sZOy.js} +4 -4
- package/dist/{index-Bf_CKPQ4.js.map → index-BkE0sZOy.js.map} +1 -1
- package/dist/{index-C_NCBpBW.js → index-BoR_58tP.js} +3 -3
- package/dist/{index-C_NCBpBW.js.map → index-BoR_58tP.js.map} +1 -1
- package/dist/{index-BuYXv-te.js → index-BpUy6ELp.js} +4 -4
- package/dist/{index-BuYXv-te.js.map → index-BpUy6ELp.js.map} +1 -1
- package/dist/{index-uQiw5aDt.js → index-BxTB1jb6.js} +4 -4
- package/dist/{index-uQiw5aDt.js.map → index-BxTB1jb6.js.map} +1 -1
- package/dist/{index-0sQOBosT.js → index-C3dCbvuU.js} +3 -3
- package/dist/{index-0sQOBosT.js.map → index-C3dCbvuU.js.map} +1 -1
- package/dist/{index-B3US0ze7.js → index-CIWdN6s7.js} +81 -29
- package/dist/index-CIWdN6s7.js.map +1 -0
- package/dist/{index-BtP6BgXy.js → index-CMFU2wOq.js} +3 -3
- package/dist/{index-BtP6BgXy.js.map → index-CMFU2wOq.js.map} +1 -1
- package/dist/index-CRQSbrdZ.js +3348 -0
- package/dist/index-CRQSbrdZ.js.map +1 -0
- package/dist/{index-D4uZajOt.js → index-CiZ2wBs3.js} +3 -3
- package/dist/{index-D4uZajOt.js.map → index-CiZ2wBs3.js.map} +1 -1
- package/dist/{index-DfXsC6Vx.js → index-Cjc4qIdP.js} +3 -3
- package/dist/{index-DfXsC6Vx.js.map → index-Cjc4qIdP.js.map} +1 -1
- package/dist/{index-D1vsBg_X.js → index-CmoL773p.js} +3 -3
- package/dist/{index-D1vsBg_X.js.map → index-CmoL773p.js.map} +1 -1
- package/dist/{index-_DqHUChI.js → index-CoPIlial.js} +4 -4
- package/dist/{index-_DqHUChI.js.map → index-CoPIlial.js.map} +1 -1
- package/dist/{index-DQibQFkr.js → index-D9nmWywB.js} +4 -4
- package/dist/{index-DQibQFkr.js.map → index-D9nmWywB.js.map} +1 -1
- package/dist/{index-5stOlOiL.js → index-DPRQcYF5.js} +4 -4
- package/dist/{index-5stOlOiL.js.map → index-DPRQcYF5.js.map} +1 -1
- package/dist/{index--8fCrTMB.js → index-DThB6yHY.js} +4 -4
- package/dist/{index--8fCrTMB.js.map → index-DThB6yHY.js.map} +1 -1
- package/dist/{index-BNLFpx_o.js → index-Dew3mRSJ.js} +2 -2
- package/dist/{index-BNLFpx_o.js.map → index-Dew3mRSJ.js.map} +1 -1
- package/dist/{index-Dj8pFty_.js → index-DvMegG3P.js} +3 -505
- package/dist/index-DvMegG3P.js.map +1 -0
- package/dist/{index-B7_8EBSn.js → index-Ee9KL65X.js} +7 -6
- package/dist/{index-B7_8EBSn.js.map → index-Ee9KL65X.js.map} +1 -1
- package/dist/{index-D5X2HlH8.js → index-EipIP3kf.js} +6 -6
- package/dist/{index-D5X2HlH8.js.map → index-EipIP3kf.js.map} +1 -1
- package/dist/{index-cjkE7IEF.js → index-KXOAAHza.js} +5 -5
- package/dist/{index-cjkE7IEF.js.map → index-KXOAAHza.js.map} +1 -1
- package/dist/{index-BiZ2sPMP.js → index-huLhd52f.js} +3 -3
- package/dist/{index-BiZ2sPMP.js.map → index-huLhd52f.js.map} +1 -1
- package/dist/{index.es-DWq-VIEl.js → index.es-E9oLZaOC.js} +3 -3
- package/dist/{index.es-DWq-VIEl.js.map → index.es-E9oLZaOC.js.map} +1 -1
- package/dist/{info-CSgVmziu.js → info-DQT-QmV7.js} +2 -2
- package/dist/{info-CSgVmziu.js.map → info-DQT-QmV7.js.map} +1 -1
- package/dist/{info-circle-Bzkbp00x.js → info-circle-p3wAzkW0.js} +2 -2
- package/dist/{info-circle-Bzkbp00x.js.map → info-circle-p3wAzkW0.js.map} +1 -1
- package/dist/{lightbulb-C-bkgBIb.js → lightbulb-Bnnje34R.js} +2 -2
- package/dist/{lightbulb-C-bkgBIb.js.map → lightbulb-Bnnje34R.js.map} +1 -1
- package/dist/{mail-CGmFg6fK.js → mail-5PSXCI0v.js} +2 -2
- package/dist/{mail-CGmFg6fK.js.map → mail-5PSXCI0v.js.map} +1 -1
- package/dist/{metamask-sdk-BakScGM0.js → metamask-sdk-8ZnQEZHu.js} +576 -584
- package/dist/metamask-sdk-8ZnQEZHu.js.map +1 -0
- package/dist/{mobile-DtRyE0jl.js → mobile-6mHtv3de.js} +2 -2
- package/dist/{mobile-DtRyE0jl.js.map → mobile-6mHtv3de.js.map} +1 -1
- package/dist/{more-KeHkLrDL.js → more-Dlt5sBR_.js} +2 -2
- package/dist/{more-KeHkLrDL.js.map → more-Dlt5sBR_.js.map} +1 -1
- package/dist/{native-Bp8NmofE.js → native-BhQYFetC.js} +2 -2
- package/dist/{native-Bp8NmofE.js.map → native-BhQYFetC.js.map} +1 -1
- package/dist/{network-placeholder-DOqs4Acw.js → network-placeholder-ZwUth56L.js} +2 -2
- package/dist/{network-placeholder-DOqs4Acw.js.map → network-placeholder-ZwUth56L.js.map} +1 -1
- package/dist/{nftPlaceholder-CqCnpGWd.js → nftPlaceholder-BZbdxsVy.js} +2 -2
- package/dist/{nftPlaceholder-CqCnpGWd.js.map → nftPlaceholder-BZbdxsVy.js.map} +1 -1
- package/dist/{off-BjQ1lWwI.js → off-DMjVDy9F.js} +2 -2
- package/dist/{off-BjQ1lWwI.js.map → off-DMjVDy9F.js.map} +1 -1
- package/dist/{onramp-YQOJXd7V.js → onramp-Bcn6fi9Y.js} +12 -12
- package/dist/{onramp-YQOJXd7V.js.map → onramp-Bcn6fi9Y.js.map} +1 -1
- package/dist/{play-store-gd3X2PE-.js → play-store-BB8PxYq4.js} +2 -2
- package/dist/{play-store-gd3X2PE-.js.map → play-store-BB8PxYq4.js.map} +1 -1
- package/dist/{plus-BjhhVCpY.js → plus-BQCGi8aA.js} +2 -2
- package/dist/{plus-BjhhVCpY.js.map → plus-BQCGi8aA.js.map} +1 -1
- package/dist/{qr-code-qjafSsS2.js → qr-code-CkWYDLbl.js} +2 -2
- package/dist/{qr-code-qjafSsS2.js.map → qr-code-CkWYDLbl.js.map} +1 -1
- package/dist/{receive-DkS03GRp.js → receive-BliYuS9o.js} +6 -6
- package/dist/{receive-DkS03GRp.js.map → receive-BliYuS9o.js.map} +1 -1
- package/dist/{recycle-horizontal-Chbf-42q.js → recycle-horizontal-BuvzEP2Z.js} +2 -2
- package/dist/{recycle-horizontal-Chbf-42q.js.map → recycle-horizontal-BuvzEP2Z.js.map} +1 -1
- package/dist/{refresh-B_fq24BN.js → refresh-2H3scIjP.js} +2 -2
- package/dist/{refresh-B_fq24BN.js.map → refresh-2H3scIjP.js.map} +1 -1
- package/dist/{search-CMyddrMM.js → search-C6kAa6cT.js} +2 -2
- package/dist/{search-CMyddrMM.js.map → search-C6kAa6cT.js.map} +1 -1
- package/dist/{send-DLwfVu3X.js → send-CUKUapsP.js} +2 -2
- package/dist/{send-DLwfVu3X.js.map → send-CUKUapsP.js.map} +1 -1
- package/dist/{send-5jN_SWT6.js → send-Dzhh-U1d.js} +10 -10
- package/dist/{send-5jN_SWT6.js.map → send-Dzhh-U1d.js.map} +1 -1
- package/dist/sha3-_pthIdIu.js +507 -0
- package/dist/sha3-_pthIdIu.js.map +1 -0
- package/dist/{socials-BskU39sA.js → socials-DfRR4eSa.js} +11 -11
- package/dist/socials-DfRR4eSa.js.map +1 -0
- package/dist/{swapHorizontal-CkK6Uemb.js → swapHorizontal-Comnyn0B.js} +2 -2
- package/dist/{swapHorizontal-CkK6Uemb.js.map → swapHorizontal-Comnyn0B.js.map} +1 -1
- package/dist/{swapHorizontalBold-EjmeRq01.js → swapHorizontalBold-sfM6wFJK.js} +2 -2
- package/dist/{swapHorizontalBold-EjmeRq01.js.map → swapHorizontalBold-sfM6wFJK.js.map} +1 -1
- package/dist/{swapHorizontalMedium-Dta28Hsi.js → swapHorizontalMedium-DHYNeIT9.js} +2 -2
- package/dist/{swapHorizontalMedium-Dta28Hsi.js.map → swapHorizontalMedium-DHYNeIT9.js.map} +1 -1
- package/dist/{swapHorizontalRoundedBold-c2wfDzBF.js → swapHorizontalRoundedBold-bjbYmfWO.js} +2 -2
- package/dist/{swapHorizontalRoundedBold-c2wfDzBF.js.map → swapHorizontalRoundedBold-bjbYmfWO.js.map} +1 -1
- package/dist/{swapVertical-BWZAOaFe.js → swapVertical-BxaU27nG.js} +2 -2
- package/dist/{swapVertical-BWZAOaFe.js.map → swapVertical-BxaU27nG.js.map} +1 -1
- package/dist/{swaps-CpwnRcad.js → swaps-BzTiyZmt.js} +10 -10
- package/dist/{swaps-CpwnRcad.js.map → swaps-BzTiyZmt.js.map} +1 -1
- package/dist/{telegram-DQpS1hOx.js → telegram-CiKi0tAK.js} +2 -2
- package/dist/{telegram-DQpS1hOx.js.map → telegram-CiKi0tAK.js.map} +1 -1
- package/dist/{three-dots-BIyLH-r_.js → three-dots-BJQoQYgU.js} +2 -2
- package/dist/{three-dots-BIyLH-r_.js.map → three-dots-BJQoQYgU.js.map} +1 -1
- package/dist/{transactions-ClbAR3b3.js → transactions-Bv-oGunp.js} +4 -4
- package/dist/{transactions-ClbAR3b3.js.map → transactions-Bv-oGunp.js.map} +1 -1
- package/dist/{twitch-w1fW9GUX.js → twitch-COTSMXJA.js} +2 -2
- package/dist/{twitch-w1fW9GUX.js.map → twitch-COTSMXJA.js.map} +1 -1
- package/dist/{twitterIcon-NV4rOXLM.js → twitterIcon-D_003_ON.js} +2 -2
- package/dist/{twitterIcon-NV4rOXLM.js.map → twitterIcon-D_003_ON.js.map} +1 -1
- package/dist/{verify-M1n52Kbs.js → verify-CwN_7Z4z.js} +2 -2
- package/dist/{verify-M1n52Kbs.js.map → verify-CwN_7Z4z.js.map} +1 -1
- package/dist/{verify-filled-CaH-d-6a.js → verify-filled-CMaOXVVk.js} +2 -2
- package/dist/{verify-filled-CaH-d-6a.js.map → verify-filled-CMaOXVVk.js.map} +1 -1
- package/dist/{w3m-modal-DuL53Gbm.js → w3m-modal-C3DATvc6.js} +13 -10
- package/dist/w3m-modal-C3DATvc6.js.map +1 -0
- package/dist/{wallet-Dshhbo-h.js → wallet-D84gVoa4.js} +2 -2
- package/dist/{wallet-Dshhbo-h.js.map → wallet-D84gVoa4.js.map} +1 -1
- package/dist/{wallet-placeholder-CjvKtwBY.js → wallet-placeholder-14A7hM7b.js} +2 -2
- package/dist/{wallet-placeholder-CjvKtwBY.js.map → wallet-placeholder-14A7hM7b.js.map} +1 -1
- package/dist/{walletconnect-iX57ADQX.js → walletconnect-8JXyBf8j.js} +2 -2
- package/dist/{walletconnect-iX57ADQX.js.map → walletconnect-8JXyBf8j.js.map} +1 -1
- package/dist/{warning-circle-8Hc0Cz7j.js → warning-circle-B2uvv-rW.js} +2 -2
- package/dist/{warning-circle-8Hc0Cz7j.js.map → warning-circle-B2uvv-rW.js.map} +1 -1
- package/dist/{x-CynCso4V.js → x-w1gCvlpq.js} +2 -2
- package/dist/{x-CynCso4V.js.map → x-w1gCvlpq.js.map} +1 -1
- package/package.json +11 -11
- package/dist/appkit-7F54kjKy.js.map +0 -1
- package/dist/ccip-DElUUMQ2.js +0 -160
- package/dist/ccip-DElUUMQ2.js.map +0 -1
- package/dist/index-B3US0ze7.js.map +0 -1
- package/dist/index-Dj8pFty_.js.map +0 -1
- package/dist/metamask-sdk-BakScGM0.js.map +0 -1
- package/dist/secp256k1-BSI-MLM-.js +0 -1705
- package/dist/secp256k1-BSI-MLM-.js.map +0 -1
- package/dist/socials-BskU39sA.js.map +0 -1
- package/dist/w3m-modal-DuL53Gbm.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metamask-sdk-BakScGM0.js","sources":["../../../node_modules/.pnpm/cross-fetch@4.1.0/node_modules/cross-fetch/dist/browser-ponyfill.js","../../../node_modules/.pnpm/eventemitter2@6.4.9/node_modules/eventemitter2/lib/eventemitter2.js","../../../node_modules/.pnpm/engine.io-parser@5.2.3/node_modules/engine.io-parser/build/esm/commons.js","../../../node_modules/.pnpm/engine.io-parser@5.2.3/node_modules/engine.io-parser/build/esm/encodePacket.browser.js","../../../node_modules/.pnpm/engine.io-parser@5.2.3/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js","../../../node_modules/.pnpm/engine.io-parser@5.2.3/node_modules/engine.io-parser/build/esm/decodePacket.browser.js","../../../node_modules/.pnpm/engine.io-parser@5.2.3/node_modules/engine.io-parser/build/esm/index.js","../../../node_modules/.pnpm/@socket.io+component-emitter@3.1.2/node_modules/@socket.io/component-emitter/lib/esm/index.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/globals.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/util.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/contrib/parseqs.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/transport.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/transports/polling.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/contrib/has-cors.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/transports/polling-xhr.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/transports/websocket.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/transports/webtransport.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/transports/index.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/contrib/parseuri.js","../../../node_modules/.pnpm/engine.io-client@6.6.3_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/engine.io-client/build/esm/socket.js","../../../node_modules/.pnpm/socket.io-client@4.8.1_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/socket.io-client/build/esm/url.js","../../../node_modules/.pnpm/socket.io-parser@4.2.4/node_modules/socket.io-parser/build/esm/is-binary.js","../../../node_modules/.pnpm/socket.io-parser@4.2.4/node_modules/socket.io-parser/build/esm/binary.js","../../../node_modules/.pnpm/socket.io-parser@4.2.4/node_modules/socket.io-parser/build/esm/index.js","../../../node_modules/.pnpm/socket.io-client@4.8.1_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/socket.io-client/build/esm/on.js","../../../node_modules/.pnpm/socket.io-client@4.8.1_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/socket.io-client/build/esm/socket.js","../../../node_modules/.pnpm/socket.io-client@4.8.1_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/socket.io-client/build/esm/contrib/backo2.js","../../../node_modules/.pnpm/socket.io-client@4.8.1_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/socket.io-client/build/esm/manager.js","../../../node_modules/.pnpm/socket.io-client@4.8.1_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/socket.io-client/build/esm/index.js","../../../node_modules/.pnpm/@metamask+sdk@0.31.5_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/@metamask/sdk/dist/browser/es/metamask-sdk.js"],"sourcesContent":["// Save global object in a variable\nvar __global__ =\n(typeof globalThis !== 'undefined' && globalThis) ||\n(typeof self !== 'undefined' && self) ||\n(typeof global !== 'undefined' && global);\n// Create an object that extends from __global__ without the fetch function\nvar __globalThis__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = __global__.DOMException\n}\nF.prototype = __global__; // Needed for feature detection on whatwg-fetch's code\nreturn new F();\n})();\n// Wraps whatwg-fetch with a function scope to hijack the global object\n// \"globalThis\" that's going to be patched\n(function(globalThis) {\n\nvar irrelevant = (function (exports) {\n\n /* eslint-disable no-prototype-builtins */\n var g =\n (typeof globalThis !== 'undefined' && globalThis) ||\n (typeof self !== 'undefined' && self) ||\n // eslint-disable-next-line no-undef\n (typeof global !== 'undefined' && global) ||\n {};\n\n var support = {\n searchParams: 'URLSearchParams' in g,\n iterable: 'Symbol' in g && 'iterator' in Symbol,\n blob:\n 'FileReader' in g &&\n 'Blob' in g &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in g,\n arrayBuffer: 'ArrayBuffer' in g\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~!]/i.test(name) || name === '') {\n throw new TypeError('Invalid character in header field name: \"' + name + '\"')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n if (header.length != 2) {\n throw new TypeError('Headers constructor: expected name/value pair to be length 2, found' + header.length)\n }\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body._noBody) return\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n var match = /charset=([A-Za-z0-9_-]+)/.exec(blob.type);\n var encoding = match ? match[1] : 'utf-8';\n reader.readAsText(blob, encoding);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n /*\n fetch-mock wraps the Response object in an ES6 Proxy to\n provide useful test harness features such as flush. However, on\n ES5 browsers without fetch or Proxy support pollyfills must be used;\n the proxy-pollyfill is unable to proxy an attribute unless it exists\n on the object before the Proxy is created. This change ensures\n Response.bodyUsed exists on the instance, while maintaining the\n semantic of setting Request.bodyUsed in the constructor before\n _initBody is called.\n */\n // eslint-disable-next-line no-self-assign\n this.bodyUsed = this.bodyUsed;\n this._bodyInit = body;\n if (!body) {\n this._noBody = true;\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n var isConsumed = consumed(this);\n if (isConsumed) {\n return isConsumed\n } else if (ArrayBuffer.isView(this._bodyArrayBuffer)) {\n return Promise.resolve(\n this._bodyArrayBuffer.buffer.slice(\n this._bodyArrayBuffer.byteOffset,\n this._bodyArrayBuffer.byteOffset + this._bodyArrayBuffer.byteLength\n )\n )\n } else {\n return Promise.resolve(this._bodyArrayBuffer)\n }\n } else if (support.blob) {\n return this.blob().then(readBlobAsArrayBuffer)\n } else {\n throw new Error('could not read as ArrayBuffer')\n }\n };\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['CONNECT', 'DELETE', 'GET', 'HEAD', 'OPTIONS', 'PATCH', 'POST', 'PUT', 'TRACE'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n if (!(this instanceof Request)) {\n throw new TypeError('Please use the \"new\" operator, this DOM object constructor cannot be called as a function.')\n }\n\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal || (function () {\n if ('AbortController' in g) {\n var ctrl = new AbortController();\n return ctrl.signal;\n }\n }());\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n\n if (this.method === 'GET' || this.method === 'HEAD') {\n if (options.cache === 'no-store' || options.cache === 'no-cache') {\n // Search for a '_' parameter in the query string\n var reParamSearch = /([?&])_=[^&]*/;\n if (reParamSearch.test(this.url)) {\n // If it already exists then set the value with the current time\n this.url = this.url.replace(reParamSearch, '$1_=' + new Date().getTime());\n } else {\n // Otherwise add a new '_' parameter to the end with the current time\n var reQueryString = /\\?/;\n this.url += (reQueryString.test(this.url) ? '&' : '?') + '_=' + new Date().getTime();\n }\n }\n }\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n // Avoiding split via regex to work around a common IE11 bug with the core-js 3.6.0 regex polyfill\n // https://github.com/github/fetch/issues/748\n // https://github.com/zloirock/core-js/issues/751\n preProcessedHeaders\n .split('\\r')\n .map(function(header) {\n return header.indexOf('\\n') === 0 ? header.substr(1, header.length) : header\n })\n .forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n try {\n headers.append(key, value);\n } catch (error) {\n console.warn('Response ' + error.message);\n }\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!(this instanceof Response)) {\n throw new TypeError('Please use the \"new\" operator, this DOM object constructor cannot be called as a function.')\n }\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n if (this.status < 200 || this.status > 599) {\n throw new RangeError(\"Failed to construct 'Response': The status provided (0) is outside the range [200, 599].\")\n }\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = options.statusText === undefined ? '' : '' + options.statusText;\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 200, statusText: ''});\n response.ok = false;\n response.status = 0;\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = g.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n // This check if specifically for when a user fetches a file locally from the file system\n // Only if the status is out of a normal range\n if (request.url.indexOf('file://') === 0 && (xhr.status < 200 || xhr.status > 599)) {\n options.status = 200;\n } else {\n options.status = xhr.status;\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n setTimeout(function() {\n resolve(new Response(body, options));\n }, 0);\n };\n\n xhr.onerror = function() {\n setTimeout(function() {\n reject(new TypeError('Network request failed'));\n }, 0);\n };\n\n xhr.ontimeout = function() {\n setTimeout(function() {\n reject(new TypeError('Network request timed out'));\n }, 0);\n };\n\n xhr.onabort = function() {\n setTimeout(function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n }, 0);\n };\n\n function fixUrl(url) {\n try {\n return url === '' && g.location.href ? g.location.href : url\n } catch (e) {\n return url\n }\n }\n\n xhr.open(request.method, fixUrl(request.url), true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr) {\n if (support.blob) {\n xhr.responseType = 'blob';\n } else if (\n support.arrayBuffer\n ) {\n xhr.responseType = 'arraybuffer';\n }\n }\n\n if (init && typeof init.headers === 'object' && !(init.headers instanceof Headers || (g.Headers && init.headers instanceof g.Headers))) {\n var names = [];\n Object.getOwnPropertyNames(init.headers).forEach(function(name) {\n names.push(normalizeName(name));\n xhr.setRequestHeader(name, normalizeValue(init.headers[name]));\n });\n request.headers.forEach(function(value, name) {\n if (names.indexOf(name) === -1) {\n xhr.setRequestHeader(name, value);\n }\n });\n } else {\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n }\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!g.fetch) {\n g.fetch = fetch;\n g.Headers = Headers;\n g.Request = Request;\n g.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n return exports;\n\n})({});\n})(__globalThis__);\n// This is a ponyfill, so...\n__globalThis__.fetch.ponyfill = true;\ndelete __globalThis__.fetch.polyfill;\n// Choose between native implementation (__global__) or custom implementation (__globalThis__)\nvar ctx = __global__.fetch ? __global__ : __globalThis__;\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","/*!\n * EventEmitter2\n * https://github.com/hij1nx/EventEmitter2\n *\n * Copyright (c) 2013 hij1nx\n * Licensed under the MIT license.\n */\n;!function(undefined) {\n var hasOwnProperty= Object.hasOwnProperty;\n var isArray = Array.isArray ? Array.isArray : function _isArray(obj) {\n return Object.prototype.toString.call(obj) === \"[object Array]\";\n };\n var defaultMaxListeners = 10;\n var nextTickSupported= typeof process=='object' && typeof process.nextTick=='function';\n var symbolsSupported= typeof Symbol==='function';\n var reflectSupported= typeof Reflect === 'object';\n var setImmediateSupported= typeof setImmediate === 'function';\n var _setImmediate= setImmediateSupported ? setImmediate : setTimeout;\n var ownKeys= symbolsSupported? (reflectSupported && typeof Reflect.ownKeys==='function'? Reflect.ownKeys : function(obj){\n var arr= Object.getOwnPropertyNames(obj);\n arr.push.apply(arr, Object.getOwnPropertySymbols(obj));\n return arr;\n }) : Object.keys;\n\n function init() {\n this._events = {};\n if (this._conf) {\n configure.call(this, this._conf);\n }\n }\n\n function configure(conf) {\n if (conf) {\n this._conf = conf;\n\n conf.delimiter && (this.delimiter = conf.delimiter);\n\n if(conf.maxListeners!==undefined){\n this._maxListeners= conf.maxListeners;\n }\n\n conf.wildcard && (this.wildcard = conf.wildcard);\n conf.newListener && (this._newListener = conf.newListener);\n conf.removeListener && (this._removeListener = conf.removeListener);\n conf.verboseMemoryLeak && (this.verboseMemoryLeak = conf.verboseMemoryLeak);\n conf.ignoreErrors && (this.ignoreErrors = conf.ignoreErrors);\n\n if (this.wildcard) {\n this.listenerTree = {};\n }\n }\n }\n\n function logPossibleMemoryLeak(count, eventName) {\n var errorMsg = '(node) warning: possible EventEmitter memory ' +\n 'leak detected. ' + count + ' listeners added. ' +\n 'Use emitter.setMaxListeners() to increase limit.';\n\n if(this.verboseMemoryLeak){\n errorMsg += ' Event name: ' + eventName + '.';\n }\n\n if(typeof process !== 'undefined' && process.emitWarning){\n var e = new Error(errorMsg);\n e.name = 'MaxListenersExceededWarning';\n e.emitter = this;\n e.count = count;\n process.emitWarning(e);\n } else {\n console.error(errorMsg);\n\n if (console.trace){\n console.trace();\n }\n }\n }\n\n var toArray = function (a, b, c) {\n var n = arguments.length;\n switch (n) {\n case 0:\n return [];\n case 1:\n return [a];\n case 2:\n return [a, b];\n case 3:\n return [a, b, c];\n default:\n var arr = new Array(n);\n while (n--) {\n arr[n] = arguments[n];\n }\n return arr;\n }\n };\n\n function toObject(keys, values) {\n var obj = {};\n var key;\n var len = keys.length;\n var valuesCount = values ? values.length : 0;\n for (var i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = i < valuesCount ? values[i] : undefined;\n }\n return obj;\n }\n\n function TargetObserver(emitter, target, options) {\n this._emitter = emitter;\n this._target = target;\n this._listeners = {};\n this._listenersCount = 0;\n\n var on, off;\n\n if (options.on || options.off) {\n on = options.on;\n off = options.off;\n }\n\n if (target.addEventListener) {\n on = target.addEventListener;\n off = target.removeEventListener;\n } else if (target.addListener) {\n on = target.addListener;\n off = target.removeListener;\n } else if (target.on) {\n on = target.on;\n off = target.off;\n }\n\n if (!on && !off) {\n throw Error('target does not implement any known event API');\n }\n\n if (typeof on !== 'function') {\n throw TypeError('on method must be a function');\n }\n\n if (typeof off !== 'function') {\n throw TypeError('off method must be a function');\n }\n\n this._on = on;\n this._off = off;\n\n var _observers= emitter._observers;\n if(_observers){\n _observers.push(this);\n }else{\n emitter._observers= [this];\n }\n }\n\n Object.assign(TargetObserver.prototype, {\n subscribe: function(event, localEvent, reducer){\n var observer= this;\n var target= this._target;\n var emitter= this._emitter;\n var listeners= this._listeners;\n var handler= function(){\n var args= toArray.apply(null, arguments);\n var eventObj= {\n data: args,\n name: localEvent,\n original: event\n };\n if(reducer){\n var result= reducer.call(target, eventObj);\n if(result!==false){\n emitter.emit.apply(emitter, [eventObj.name].concat(args))\n }\n return;\n }\n emitter.emit.apply(emitter, [localEvent].concat(args));\n };\n\n\n if(listeners[event]){\n throw Error('Event \\'' + event + '\\' is already listening');\n }\n\n this._listenersCount++;\n\n if(emitter._newListener && emitter._removeListener && !observer._onNewListener){\n\n this._onNewListener = function (_event) {\n if (_event === localEvent && listeners[event] === null) {\n listeners[event] = handler;\n observer._on.call(target, event, handler);\n }\n };\n\n emitter.on('newListener', this._onNewListener);\n\n this._onRemoveListener= function(_event){\n if(_event === localEvent && !emitter.hasListeners(_event) && listeners[event]){\n listeners[event]= null;\n observer._off.call(target, event, handler);\n }\n };\n\n listeners[event]= null;\n\n emitter.on('removeListener', this._onRemoveListener);\n }else{\n listeners[event]= handler;\n observer._on.call(target, event, handler);\n }\n },\n\n unsubscribe: function(event){\n var observer= this;\n var listeners= this._listeners;\n var emitter= this._emitter;\n var handler;\n var events;\n var off= this._off;\n var target= this._target;\n var i;\n\n if(event && typeof event!=='string'){\n throw TypeError('event must be a string');\n }\n\n function clearRefs(){\n if(observer._onNewListener){\n emitter.off('newListener', observer._onNewListener);\n emitter.off('removeListener', observer._onRemoveListener);\n observer._onNewListener= null;\n observer._onRemoveListener= null;\n }\n var index= findTargetIndex.call(emitter, observer);\n emitter._observers.splice(index, 1);\n }\n\n if(event){\n handler= listeners[event];\n if(!handler) return;\n off.call(target, event, handler);\n delete listeners[event];\n if(!--this._listenersCount){\n clearRefs();\n }\n }else{\n events= ownKeys(listeners);\n i= events.length;\n while(i-->0){\n event= events[i];\n off.call(target, event, listeners[event]);\n }\n this._listeners= {};\n this._listenersCount= 0;\n clearRefs();\n }\n }\n });\n\n function resolveOptions(options, schema, reducers, allowUnknown) {\n var computedOptions = Object.assign({}, schema);\n\n if (!options) return computedOptions;\n\n if (typeof options !== 'object') {\n throw TypeError('options must be an object')\n }\n\n var keys = Object.keys(options);\n var length = keys.length;\n var option, value;\n var reducer;\n\n function reject(reason) {\n throw Error('Invalid \"' + option + '\" option value' + (reason ? '. Reason: ' + reason : ''))\n }\n\n for (var i = 0; i < length; i++) {\n option = keys[i];\n if (!allowUnknown && !hasOwnProperty.call(schema, option)) {\n throw Error('Unknown \"' + option + '\" option');\n }\n value = options[option];\n if (value !== undefined) {\n reducer = reducers[option];\n computedOptions[option] = reducer ? reducer(value, reject) : value;\n }\n }\n return computedOptions;\n }\n\n function constructorReducer(value, reject) {\n if (typeof value !== 'function' || !value.hasOwnProperty('prototype')) {\n reject('value must be a constructor');\n }\n return value;\n }\n\n function makeTypeReducer(types) {\n var message= 'value must be type of ' + types.join('|');\n var len= types.length;\n var firstType= types[0];\n var secondType= types[1];\n\n if (len === 1) {\n return function (v, reject) {\n if (typeof v === firstType) {\n return v;\n }\n reject(message);\n }\n }\n\n if (len === 2) {\n return function (v, reject) {\n var kind= typeof v;\n if (kind === firstType || kind === secondType) return v;\n reject(message);\n }\n }\n\n return function (v, reject) {\n var kind = typeof v;\n var i = len;\n while (i-- > 0) {\n if (kind === types[i]) return v;\n }\n reject(message);\n }\n }\n\n var functionReducer= makeTypeReducer(['function']);\n\n var objectFunctionReducer= makeTypeReducer(['object', 'function']);\n\n function makeCancelablePromise(Promise, executor, options) {\n var isCancelable;\n var callbacks;\n var timer= 0;\n var subscriptionClosed;\n\n var promise = new Promise(function (resolve, reject, onCancel) {\n options= resolveOptions(options, {\n timeout: 0,\n overload: false\n }, {\n timeout: function(value, reject){\n value*= 1;\n if (typeof value !== 'number' || value < 0 || !Number.isFinite(value)) {\n reject('timeout must be a positive number');\n }\n return value;\n }\n });\n\n isCancelable = !options.overload && typeof Promise.prototype.cancel === 'function' && typeof onCancel === 'function';\n\n function cleanup() {\n if (callbacks) {\n callbacks = null;\n }\n if (timer) {\n clearTimeout(timer);\n timer = 0;\n }\n }\n\n var _resolve= function(value){\n cleanup();\n resolve(value);\n };\n\n var _reject= function(err){\n cleanup();\n reject(err);\n };\n\n if (isCancelable) {\n executor(_resolve, _reject, onCancel);\n } else {\n callbacks = [function(reason){\n _reject(reason || Error('canceled'));\n }];\n executor(_resolve, _reject, function (cb) {\n if (subscriptionClosed) {\n throw Error('Unable to subscribe on cancel event asynchronously')\n }\n if (typeof cb !== 'function') {\n throw TypeError('onCancel callback must be a function');\n }\n callbacks.push(cb);\n });\n subscriptionClosed= true;\n }\n\n if (options.timeout > 0) {\n timer= setTimeout(function(){\n var reason= Error('timeout');\n reason.code = 'ETIMEDOUT'\n timer= 0;\n promise.cancel(reason);\n reject(reason);\n }, options.timeout);\n }\n });\n\n if (!isCancelable) {\n promise.cancel = function (reason) {\n if (!callbacks) {\n return;\n }\n var length = callbacks.length;\n for (var i = 1; i < length; i++) {\n callbacks[i](reason);\n }\n // internal callback to reject the promise\n callbacks[0](reason);\n callbacks = null;\n };\n }\n\n return promise;\n }\n\n function findTargetIndex(observer) {\n var observers = this._observers;\n if(!observers){\n return -1;\n }\n var len = observers.length;\n for (var i = 0; i < len; i++) {\n if (observers[i]._target === observer) return i;\n }\n return -1;\n }\n\n // Attention, function return type now is array, always !\n // It has zero elements if no any matches found and one or more\n // elements (leafs) if there are matches\n //\n function searchListenerTree(handlers, type, tree, i, typeLength) {\n if (!tree) {\n return null;\n }\n\n if (i === 0) {\n var kind = typeof type;\n if (kind === 'string') {\n var ns, n, l = 0, j = 0, delimiter = this.delimiter, dl = delimiter.length;\n if ((n = type.indexOf(delimiter)) !== -1) {\n ns = new Array(5);\n do {\n ns[l++] = type.slice(j, n);\n j = n + dl;\n } while ((n = type.indexOf(delimiter, j)) !== -1);\n\n ns[l++] = type.slice(j);\n type = ns;\n typeLength = l;\n } else {\n type = [type];\n typeLength = 1;\n }\n } else if (kind === 'object') {\n typeLength = type.length;\n } else {\n type = [type];\n typeLength = 1;\n }\n }\n\n var listeners= null, branch, xTree, xxTree, isolatedBranch, endReached, currentType = type[i],\n nextType = type[i + 1], branches, _listeners;\n\n if (i === typeLength) {\n //\n // If at the end of the event(s) list and the tree has listeners\n // invoke those listeners.\n //\n\n if(tree._listeners) {\n if (typeof tree._listeners === 'function') {\n handlers && handlers.push(tree._listeners);\n listeners = [tree];\n } else {\n handlers && handlers.push.apply(handlers, tree._listeners);\n listeners = [tree];\n }\n }\n } else {\n\n if (currentType === '*') {\n //\n // If the event emitted is '*' at this part\n // or there is a concrete match at this patch\n //\n branches = ownKeys(tree);\n n = branches.length;\n while (n-- > 0) {\n branch = branches[n];\n if (branch !== '_listeners') {\n _listeners = searchListenerTree(handlers, type, tree[branch], i + 1, typeLength);\n if (_listeners) {\n if (listeners) {\n listeners.push.apply(listeners, _listeners);\n } else {\n listeners = _listeners;\n }\n }\n }\n }\n return listeners;\n } else if (currentType === '**') {\n endReached = (i + 1 === typeLength || (i + 2 === typeLength && nextType === '*'));\n if (endReached && tree._listeners) {\n // The next element has a _listeners, add it to the handlers.\n listeners = searchListenerTree(handlers, type, tree, typeLength, typeLength);\n }\n\n branches = ownKeys(tree);\n n = branches.length;\n while (n-- > 0) {\n branch = branches[n];\n if (branch !== '_listeners') {\n if (branch === '*' || branch === '**') {\n if (tree[branch]._listeners && !endReached) {\n _listeners = searchListenerTree(handlers, type, tree[branch], typeLength, typeLength);\n if (_listeners) {\n if (listeners) {\n listeners.push.apply(listeners, _listeners);\n } else {\n listeners = _listeners;\n }\n }\n }\n _listeners = searchListenerTree(handlers, type, tree[branch], i, typeLength);\n } else if (branch === nextType) {\n _listeners = searchListenerTree(handlers, type, tree[branch], i + 2, typeLength);\n } else {\n // No match on this one, shift into the tree but not in the type array.\n _listeners = searchListenerTree(handlers, type, tree[branch], i, typeLength);\n }\n if (_listeners) {\n if (listeners) {\n listeners.push.apply(listeners, _listeners);\n } else {\n listeners = _listeners;\n }\n }\n }\n }\n return listeners;\n } else if (tree[currentType]) {\n listeners = searchListenerTree(handlers, type, tree[currentType], i + 1, typeLength);\n }\n }\n\n xTree = tree['*'];\n if (xTree) {\n //\n // If the listener tree will allow any match for this part,\n // then recursively explore all branches of the tree\n //\n searchListenerTree(handlers, type, xTree, i + 1, typeLength);\n }\n\n xxTree = tree['**'];\n if (xxTree) {\n if (i < typeLength) {\n if (xxTree._listeners) {\n // If we have a listener on a '**', it will catch all, so add its handler.\n searchListenerTree(handlers, type, xxTree, typeLength, typeLength);\n }\n\n // Build arrays of matching next branches and others.\n branches= ownKeys(xxTree);\n n= branches.length;\n while(n-->0){\n branch= branches[n];\n if (branch !== '_listeners') {\n if (branch === nextType) {\n // We know the next element will match, so jump twice.\n searchListenerTree(handlers, type, xxTree[branch], i + 2, typeLength);\n } else if (branch === currentType) {\n // Current node matches, move into the tree.\n searchListenerTree(handlers, type, xxTree[branch], i + 1, typeLength);\n } else {\n isolatedBranch = {};\n isolatedBranch[branch] = xxTree[branch];\n searchListenerTree(handlers, type, {'**': isolatedBranch}, i + 1, typeLength);\n }\n }\n }\n } else if (xxTree._listeners) {\n // We have reached the end and still on a '**'\n searchListenerTree(handlers, type, xxTree, typeLength, typeLength);\n } else if (xxTree['*'] && xxTree['*']._listeners) {\n searchListenerTree(handlers, type, xxTree['*'], typeLength, typeLength);\n }\n }\n\n return listeners;\n }\n\n function growListenerTree(type, listener, prepend) {\n var len = 0, j = 0, i, delimiter = this.delimiter, dl= delimiter.length, ns;\n\n if(typeof type==='string') {\n if ((i = type.indexOf(delimiter)) !== -1) {\n ns = new Array(5);\n do {\n ns[len++] = type.slice(j, i);\n j = i + dl;\n } while ((i = type.indexOf(delimiter, j)) !== -1);\n\n ns[len++] = type.slice(j);\n }else{\n ns= [type];\n len= 1;\n }\n }else{\n ns= type;\n len= type.length;\n }\n\n //\n // Looks for two consecutive '**', if so, don't add the event at all.\n //\n if (len > 1) {\n for (i = 0; i + 1 < len; i++) {\n if (ns[i] === '**' && ns[i + 1] === '**') {\n return;\n }\n }\n }\n\n\n\n var tree = this.listenerTree, name;\n\n for (i = 0; i < len; i++) {\n name = ns[i];\n\n tree = tree[name] || (tree[name] = {});\n\n if (i === len - 1) {\n if (!tree._listeners) {\n tree._listeners = listener;\n } else {\n if (typeof tree._listeners === 'function') {\n tree._listeners = [tree._listeners];\n }\n\n if (prepend) {\n tree._listeners.unshift(listener);\n } else {\n tree._listeners.push(listener);\n }\n\n if (\n !tree._listeners.warned &&\n this._maxListeners > 0 &&\n tree._listeners.length > this._maxListeners\n ) {\n tree._listeners.warned = true;\n logPossibleMemoryLeak.call(this, tree._listeners.length, name);\n }\n }\n return true;\n }\n }\n\n return true;\n }\n\n function collectTreeEvents(tree, events, root, asArray){\n var branches= ownKeys(tree);\n var i= branches.length;\n var branch, branchName, path;\n var hasListeners= tree['_listeners'];\n var isArrayPath;\n\n while(i-->0){\n branchName= branches[i];\n\n branch= tree[branchName];\n\n if(branchName==='_listeners'){\n path= root;\n }else {\n path = root ? root.concat(branchName) : [branchName];\n }\n\n isArrayPath= asArray || typeof branchName==='symbol';\n\n hasListeners && events.push(isArrayPath? path : path.join(this.delimiter));\n\n if(typeof branch==='object'){\n collectTreeEvents.call(this, branch, events, path, isArrayPath);\n }\n }\n\n return events;\n }\n\n function recursivelyGarbageCollect(root) {\n var keys = ownKeys(root);\n var i= keys.length;\n var obj, key, flag;\n while(i-->0){\n key = keys[i];\n obj = root[key];\n\n if(obj){\n flag= true;\n if(key !== '_listeners' && !recursivelyGarbageCollect(obj)){\n delete root[key];\n }\n }\n }\n\n return flag;\n }\n\n function Listener(emitter, event, listener){\n this.emitter= emitter;\n this.event= event;\n this.listener= listener;\n }\n\n Listener.prototype.off= function(){\n this.emitter.off(this.event, this.listener);\n return this;\n };\n\n function setupListener(event, listener, options){\n if (options === true) {\n promisify = true;\n } else if (options === false) {\n async = true;\n } else {\n if (!options || typeof options !== 'object') {\n throw TypeError('options should be an object or true');\n }\n var async = options.async;\n var promisify = options.promisify;\n var nextTick = options.nextTick;\n var objectify = options.objectify;\n }\n\n if (async || nextTick || promisify) {\n var _listener = listener;\n var _origin = listener._origin || listener;\n\n if (nextTick && !nextTickSupported) {\n throw Error('process.nextTick is not supported');\n }\n\n if (promisify === undefined) {\n promisify = listener.constructor.name === 'AsyncFunction';\n }\n\n listener = function () {\n var args = arguments;\n var context = this;\n var event = this.event;\n\n return promisify ? (nextTick ? Promise.resolve() : new Promise(function (resolve) {\n _setImmediate(resolve);\n }).then(function () {\n context.event = event;\n return _listener.apply(context, args)\n })) : (nextTick ? process.nextTick : _setImmediate)(function () {\n context.event = event;\n _listener.apply(context, args)\n });\n };\n\n listener._async = true;\n listener._origin = _origin;\n }\n\n return [listener, objectify? new Listener(this, event, listener): this];\n }\n\n function EventEmitter(conf) {\n this._events = {};\n this._newListener = false;\n this._removeListener = false;\n this.verboseMemoryLeak = false;\n configure.call(this, conf);\n }\n\n EventEmitter.EventEmitter2 = EventEmitter; // backwards compatibility for exporting EventEmitter property\n\n EventEmitter.prototype.listenTo= function(target, events, options){\n if(typeof target!=='object'){\n throw TypeError('target musts be an object');\n }\n\n var emitter= this;\n\n options = resolveOptions(options, {\n on: undefined,\n off: undefined,\n reducers: undefined\n }, {\n on: functionReducer,\n off: functionReducer,\n reducers: objectFunctionReducer\n });\n\n function listen(events){\n if(typeof events!=='object'){\n throw TypeError('events must be an object');\n }\n\n var reducers= options.reducers;\n var index= findTargetIndex.call(emitter, target);\n var observer;\n\n if(index===-1){\n observer= new TargetObserver(emitter, target, options);\n }else{\n observer= emitter._observers[index];\n }\n\n var keys= ownKeys(events);\n var len= keys.length;\n var event;\n var isSingleReducer= typeof reducers==='function';\n\n for(var i=0; i<len; i++){\n event= keys[i];\n observer.subscribe(\n event,\n events[event] || event,\n isSingleReducer ? reducers : reducers && reducers[event]\n );\n }\n }\n\n isArray(events)?\n listen(toObject(events)) :\n (typeof events==='string'? listen(toObject(events.split(/\\s+/))): listen(events));\n\n return this;\n };\n\n EventEmitter.prototype.stopListeningTo = function (target, event) {\n var observers = this._observers;\n\n if(!observers){\n return false;\n }\n\n var i = observers.length;\n var observer;\n var matched= false;\n\n if(target && typeof target!=='object'){\n throw TypeError('target should be an object');\n }\n\n while (i-- > 0) {\n observer = observers[i];\n if (!target || observer._target === target) {\n observer.unsubscribe(event);\n matched= true;\n }\n }\n\n return matched;\n };\n\n // By default EventEmitters will print a warning if more than\n // 10 listeners are added to it. This is a useful default which\n // helps finding memory leaks.\n //\n // Obviously not all Emitters should be limited to 10. This function allows\n // that to be increased. Set to zero for unlimited.\n\n EventEmitter.prototype.delimiter = '.';\n\n EventEmitter.prototype.setMaxListeners = function(n) {\n if (n !== undefined) {\n this._maxListeners = n;\n if (!this._conf) this._conf = {};\n this._conf.maxListeners = n;\n }\n };\n\n EventEmitter.prototype.getMaxListeners = function() {\n return this._maxListeners;\n };\n\n EventEmitter.prototype.event = '';\n\n EventEmitter.prototype.once = function(event, fn, options) {\n return this._once(event, fn, false, options);\n };\n\n EventEmitter.prototype.prependOnceListener = function(event, fn, options) {\n return this._once(event, fn, true, options);\n };\n\n EventEmitter.prototype._once = function(event, fn, prepend, options) {\n return this._many(event, 1, fn, prepend, options);\n };\n\n EventEmitter.prototype.many = function(event, ttl, fn, options) {\n return this._many(event, ttl, fn, false, options);\n };\n\n EventEmitter.prototype.prependMany = function(event, ttl, fn, options) {\n return this._many(event, ttl, fn, true, options);\n };\n\n EventEmitter.prototype._many = function(event, ttl, fn, prepend, options) {\n var self = this;\n\n if (typeof fn !== 'function') {\n throw new Error('many only accepts instances of Function');\n }\n\n function listener() {\n if (--ttl === 0) {\n self.off(event, listener);\n }\n return fn.apply(this, arguments);\n }\n\n listener._origin = fn;\n\n return this._on(event, listener, prepend, options);\n };\n\n EventEmitter.prototype.emit = function() {\n if (!this._events && !this._all) {\n return false;\n }\n\n this._events || init.call(this);\n\n var type = arguments[0], ns, wildcard= this.wildcard;\n var args,l,i,j, containsSymbol;\n\n if (type === 'newListener' && !this._newListener) {\n if (!this._events.newListener) {\n return false;\n }\n }\n\n if (wildcard) {\n ns= type;\n if(type!=='newListener' && type!=='removeListener'){\n if (typeof type === 'object') {\n l = type.length;\n if (symbolsSupported) {\n for (i = 0; i < l; i++) {\n if (typeof type[i] === 'symbol') {\n containsSymbol = true;\n break;\n }\n }\n }\n if (!containsSymbol) {\n type = type.join(this.delimiter);\n }\n }\n }\n }\n\n var al = arguments.length;\n var handler;\n\n if (this._all && this._all.length) {\n handler = this._all.slice();\n\n for (i = 0, l = handler.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n handler[i].call(this, type);\n break;\n case 2:\n handler[i].call(this, type, arguments[1]);\n break;\n case 3:\n handler[i].call(this, type, arguments[1], arguments[2]);\n break;\n default:\n handler[i].apply(this, arguments);\n }\n }\n }\n\n if (wildcard) {\n handler = [];\n searchListenerTree.call(this, handler, ns, this.listenerTree, 0, l);\n } else {\n handler = this._events[type];\n if (typeof handler === 'function') {\n this.event = type;\n switch (al) {\n case 1:\n handler.call(this);\n break;\n case 2:\n handler.call(this, arguments[1]);\n break;\n case 3:\n handler.call(this, arguments[1], arguments[2]);\n break;\n default:\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n handler.apply(this, args);\n }\n return true;\n } else if (handler) {\n // need to make copy of handlers because list can change in the middle\n // of emit call\n handler = handler.slice();\n }\n }\n\n if (handler && handler.length) {\n if (al > 3) {\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n }\n for (i = 0, l = handler.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n handler[i].call(this);\n break;\n case 2:\n handler[i].call(this, arguments[1]);\n break;\n case 3:\n handler[i].call(this, arguments[1], arguments[2]);\n break;\n default:\n handler[i].apply(this, args);\n }\n }\n return true;\n } else if (!this.ignoreErrors && !this._all && type === 'error') {\n if (arguments[1] instanceof Error) {\n throw arguments[1]; // Unhandled 'error' event\n } else {\n throw new Error(\"Uncaught, unspecified 'error' event.\");\n }\n }\n\n return !!this._all;\n };\n\n EventEmitter.prototype.emitAsync = function() {\n if (!this._events && !this._all) {\n return false;\n }\n\n this._events || init.call(this);\n\n var type = arguments[0], wildcard= this.wildcard, ns, containsSymbol;\n var args,l,i,j;\n\n if (type === 'newListener' && !this._newListener) {\n if (!this._events.newListener) { return Promise.resolve([false]); }\n }\n\n if (wildcard) {\n ns= type;\n if(type!=='newListener' && type!=='removeListener'){\n if (typeof type === 'object') {\n l = type.length;\n if (symbolsSupported) {\n for (i = 0; i < l; i++) {\n if (typeof type[i] === 'symbol') {\n containsSymbol = true;\n break;\n }\n }\n }\n if (!containsSymbol) {\n type = type.join(this.delimiter);\n }\n }\n }\n }\n\n var promises= [];\n\n var al = arguments.length;\n var handler;\n\n if (this._all) {\n for (i = 0, l = this._all.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n promises.push(this._all[i].call(this, type));\n break;\n case 2:\n promises.push(this._all[i].call(this, type, arguments[1]));\n break;\n case 3:\n promises.push(this._all[i].call(this, type, arguments[1], arguments[2]));\n break;\n default:\n promises.push(this._all[i].apply(this, arguments));\n }\n }\n }\n\n if (wildcard) {\n handler = [];\n searchListenerTree.call(this, handler, ns, this.listenerTree, 0);\n } else {\n handler = this._events[type];\n }\n\n if (typeof handler === 'function') {\n this.event = type;\n switch (al) {\n case 1:\n promises.push(handler.call(this));\n break;\n case 2:\n promises.push(handler.call(this, arguments[1]));\n break;\n case 3:\n promises.push(handler.call(this, arguments[1], arguments[2]));\n break;\n default:\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n promises.push(handler.apply(this, args));\n }\n } else if (handler && handler.length) {\n handler = handler.slice();\n if (al > 3) {\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n }\n for (i = 0, l = handler.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n promises.push(handler[i].call(this));\n break;\n case 2:\n promises.push(handler[i].call(this, arguments[1]));\n break;\n case 3:\n promises.push(handler[i].call(this, arguments[1], arguments[2]));\n break;\n default:\n promises.push(handler[i].apply(this, args));\n }\n }\n } else if (!this.ignoreErrors && !this._all && type === 'error') {\n if (arguments[1] instanceof Error) {\n return Promise.reject(arguments[1]); // Unhandled 'error' event\n } else {\n return Promise.reject(\"Uncaught, unspecified 'error' event.\");\n }\n }\n\n return Promise.all(promises);\n };\n\n EventEmitter.prototype.on = function(type, listener, options) {\n return this._on(type, listener, false, options);\n };\n\n EventEmitter.prototype.prependListener = function(type, listener, options) {\n return this._on(type, listener, true, options);\n };\n\n EventEmitter.prototype.onAny = function(fn) {\n return this._onAny(fn, false);\n };\n\n EventEmitter.prototype.prependAny = function(fn) {\n return this._onAny(fn, true);\n };\n\n EventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n EventEmitter.prototype._onAny = function(fn, prepend){\n if (typeof fn !== 'function') {\n throw new Error('onAny only accepts instances of Function');\n }\n\n if (!this._all) {\n this._all = [];\n }\n\n // Add the function to the event listener collection.\n if(prepend){\n this._all.unshift(fn);\n }else{\n this._all.push(fn);\n }\n\n return this;\n };\n\n EventEmitter.prototype._on = function(type, listener, prepend, options) {\n if (typeof type === 'function') {\n this._onAny(type, listener);\n return this;\n }\n\n if (typeof listener !== 'function') {\n throw new Error('on only accepts instances of Function');\n }\n this._events || init.call(this);\n\n var returnValue= this, temp;\n\n if (options !== undefined) {\n temp = setupListener.call(this, type, listener, options);\n listener = temp[0];\n returnValue = temp[1];\n }\n\n // To avoid recursion in the case that type == \"newListeners\"! Before\n // adding it to the listeners, first emit \"newListeners\".\n if (this._newListener) {\n this.emit('newListener', type, listener);\n }\n\n if (this.wildcard) {\n growListenerTree.call(this, type, listener, prepend);\n return returnValue;\n }\n\n if (!this._events[type]) {\n // Optimize the case of one listener. Don't need the extra array object.\n this._events[type] = listener;\n } else {\n if (typeof this._events[type] === 'function') {\n // Change to array.\n this._events[type] = [this._events[type]];\n }\n\n // If we've already got an array, just add\n if(prepend){\n this._events[type].unshift(listener);\n }else{\n this._events[type].push(listener);\n }\n\n // Check for listener leak\n if (\n !this._events[type].warned &&\n this._maxListeners > 0 &&\n this._events[type].length > this._maxListeners\n ) {\n this._events[type].warned = true;\n logPossibleMemoryLeak.call(this, this._events[type].length, type);\n }\n }\n\n return returnValue;\n };\n\n EventEmitter.prototype.off = function(type, listener) {\n if (typeof listener !== 'function') {\n throw new Error('removeListener only takes instances of Function');\n }\n\n var handlers,leafs=[];\n\n if(this.wildcard) {\n var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();\n leafs = searchListenerTree.call(this, null, ns, this.listenerTree, 0);\n if(!leafs) return this;\n } else {\n // does not use listeners(), so no side effect of creating _events[type]\n if (!this._events[type]) return this;\n handlers = this._events[type];\n leafs.push({_listeners:handlers});\n }\n\n for (var iLeaf=0; iLeaf<leafs.length; iLeaf++) {\n var leaf = leafs[iLeaf];\n handlers = leaf._listeners;\n if (isArray(handlers)) {\n\n var position = -1;\n\n for (var i = 0, length = handlers.length; i < length; i++) {\n if (handlers[i] === listener ||\n (handlers[i].listener && handlers[i].listener === listener) ||\n (handlers[i]._origin && handlers[i]._origin === listener)) {\n position = i;\n break;\n }\n }\n\n if (position < 0) {\n continue;\n }\n\n if(this.wildcard) {\n leaf._listeners.splice(position, 1);\n }\n else {\n this._events[type].splice(position, 1);\n }\n\n if (handlers.length === 0) {\n if(this.wildcard) {\n delete leaf._listeners;\n }\n else {\n delete this._events[type];\n }\n }\n if (this._removeListener)\n this.emit(\"removeListener\", type, listener);\n\n return this;\n }\n else if (handlers === listener ||\n (handlers.listener && handlers.listener === listener) ||\n (handlers._origin && handlers._origin === listener)) {\n if(this.wildcard) {\n delete leaf._listeners;\n }\n else {\n delete this._events[type];\n }\n if (this._removeListener)\n this.emit(\"removeListener\", type, listener);\n }\n }\n\n this.listenerTree && recursivelyGarbageCollect(this.listenerTree);\n\n return this;\n };\n\n EventEmitter.prototype.offAny = function(fn) {\n var i = 0, l = 0, fns;\n if (fn && this._all && this._all.length > 0) {\n fns = this._all;\n for(i = 0, l = fns.length; i < l; i++) {\n if(fn === fns[i]) {\n fns.splice(i, 1);\n if (this._removeListener)\n this.emit(\"removeListenerAny\", fn);\n return this;\n }\n }\n } else {\n fns = this._all;\n if (this._removeListener) {\n for(i = 0, l = fns.length; i < l; i++)\n this.emit(\"removeListenerAny\", fns[i]);\n }\n this._all = [];\n }\n return this;\n };\n\n EventEmitter.prototype.removeListener = EventEmitter.prototype.off;\n\n EventEmitter.prototype.removeAllListeners = function (type) {\n if (type === undefined) {\n !this._events || init.call(this);\n return this;\n }\n\n if (this.wildcard) {\n var leafs = searchListenerTree.call(this, null, type, this.listenerTree, 0), leaf, i;\n if (!leafs) return this;\n for (i = 0; i < leafs.length; i++) {\n leaf = leafs[i];\n leaf._listeners = null;\n }\n this.listenerTree && recursivelyGarbageCollect(this.listenerTree);\n } else if (this._events) {\n this._events[type] = null;\n }\n return this;\n };\n\n EventEmitter.prototype.listeners = function (type) {\n var _events = this._events;\n var keys, listeners, allListeners;\n var i;\n var listenerTree;\n\n if (type === undefined) {\n if (this.wildcard) {\n throw Error('event name required for wildcard emitter');\n }\n\n if (!_events) {\n return [];\n }\n\n keys = ownKeys(_events);\n i = keys.length;\n allListeners = [];\n while (i-- > 0) {\n listeners = _events[keys[i]];\n if (typeof listeners === 'function') {\n allListeners.push(listeners);\n } else {\n allListeners.push.apply(allListeners, listeners);\n }\n }\n return allListeners;\n } else {\n if (this.wildcard) {\n listenerTree= this.listenerTree;\n if(!listenerTree) return [];\n var handlers = [];\n var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();\n searchListenerTree.call(this, handlers, ns, listenerTree, 0);\n return handlers;\n }\n\n if (!_events) {\n return [];\n }\n\n listeners = _events[type];\n\n if (!listeners) {\n return [];\n }\n return typeof listeners === 'function' ? [listeners] : listeners;\n }\n };\n\n EventEmitter.prototype.eventNames = function(nsAsArray){\n var _events= this._events;\n return this.wildcard? collectTreeEvents.call(this, this.listenerTree, [], null, nsAsArray) : (_events? ownKeys(_events) : []);\n };\n\n EventEmitter.prototype.listenerCount = function(type) {\n return this.listeners(type).length;\n };\n\n EventEmitter.prototype.hasListeners = function (type) {\n if (this.wildcard) {\n var handlers = [];\n var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();\n searchListenerTree.call(this, handlers, ns, this.listenerTree, 0);\n return handlers.length > 0;\n }\n\n var _events = this._events;\n var _all = this._all;\n\n return !!(_all && _all.length || _events && (type === undefined ? ownKeys(_events).length : _events[type]));\n };\n\n EventEmitter.prototype.listenersAny = function() {\n\n if(this._all) {\n return this._all;\n }\n else {\n return [];\n }\n\n };\n\n EventEmitter.prototype.waitFor = function (event, options) {\n var self = this;\n var type = typeof options;\n if (type === 'number') {\n options = {timeout: options};\n } else if (type === 'function') {\n options = {filter: options};\n }\n\n options= resolveOptions(options, {\n timeout: 0,\n filter: undefined,\n handleError: false,\n Promise: Promise,\n overload: false\n }, {\n filter: functionReducer,\n Promise: constructorReducer\n });\n\n return makeCancelablePromise(options.Promise, function (resolve, reject, onCancel) {\n function listener() {\n var filter= options.filter;\n if (filter && !filter.apply(self, arguments)) {\n return;\n }\n self.off(event, listener);\n if (options.handleError) {\n var err = arguments[0];\n err ? reject(err) : resolve(toArray.apply(null, arguments).slice(1));\n } else {\n resolve(toArray.apply(null, arguments));\n }\n }\n\n onCancel(function(){\n self.off(event, listener);\n });\n\n self._on(event, listener, false);\n }, {\n timeout: options.timeout,\n overload: options.overload\n })\n };\n\n function once(emitter, name, options) {\n options= resolveOptions(options, {\n Promise: Promise,\n timeout: 0,\n overload: false\n }, {\n Promise: constructorReducer\n });\n\n var _Promise= options.Promise;\n\n return makeCancelablePromise(_Promise, function(resolve, reject, onCancel){\n var handler;\n if (typeof emitter.addEventListener === 'function') {\n handler= function () {\n resolve(toArray.apply(null, arguments));\n };\n\n onCancel(function(){\n emitter.removeEventListener(name, handler);\n });\n\n emitter.addEventListener(\n name,\n handler,\n {once: true}\n );\n return;\n }\n\n var eventListener = function(){\n errorListener && emitter.removeListener('error', errorListener);\n resolve(toArray.apply(null, arguments));\n };\n\n var errorListener;\n\n if (name !== 'error') {\n errorListener = function (err){\n emitter.removeListener(name, eventListener);\n reject(err);\n };\n\n emitter.once('error', errorListener);\n }\n\n onCancel(function(){\n errorListener && emitter.removeListener('error', errorListener);\n emitter.removeListener(name, eventListener);\n });\n\n emitter.once(name, eventListener);\n }, {\n timeout: options.timeout,\n overload: options.overload\n });\n }\n\n var prototype= EventEmitter.prototype;\n\n Object.defineProperties(EventEmitter, {\n defaultMaxListeners: {\n get: function () {\n return prototype._maxListeners;\n },\n set: function (n) {\n if (typeof n !== 'number' || n < 0 || Number.isNaN(n)) {\n throw TypeError('n must be a non-negative number')\n }\n prototype._maxListeners = n;\n },\n enumerable: true\n },\n once: {\n value: once,\n writable: true,\n configurable: true\n }\n });\n\n Object.defineProperties(prototype, {\n _maxListeners: {\n value: defaultMaxListeners,\n writable: true,\n configurable: true\n },\n _observers: {value: null, writable: true, configurable: true}\n });\n\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define(function() {\n return EventEmitter;\n });\n } else if (typeof exports === 'object') {\n // CommonJS\n module.exports = EventEmitter;\n }\n else {\n // global for any kind of environment.\n var _global= new Function('','return this')();\n _global.EventEmitter2 = EventEmitter;\n }\n}();\n","const PACKET_TYPES = Object.create(null); // no Map = no polyfill\nPACKET_TYPES[\"open\"] = \"0\";\nPACKET_TYPES[\"close\"] = \"1\";\nPACKET_TYPES[\"ping\"] = \"2\";\nPACKET_TYPES[\"pong\"] = \"3\";\nPACKET_TYPES[\"message\"] = \"4\";\nPACKET_TYPES[\"upgrade\"] = \"5\";\nPACKET_TYPES[\"noop\"] = \"6\";\nconst PACKET_TYPES_REVERSE = Object.create(null);\nObject.keys(PACKET_TYPES).forEach((key) => {\n PACKET_TYPES_REVERSE[PACKET_TYPES[key]] = key;\n});\nconst ERROR_PACKET = { type: \"error\", data: \"parser error\" };\nexport { PACKET_TYPES, PACKET_TYPES_REVERSE, ERROR_PACKET };\n","import { PACKET_TYPES } from \"./commons.js\";\nconst withNativeBlob = typeof Blob === \"function\" ||\n (typeof Blob !== \"undefined\" &&\n Object.prototype.toString.call(Blob) === \"[object BlobConstructor]\");\nconst withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\n// ArrayBuffer.isView method is not defined in IE10\nconst isView = (obj) => {\n return typeof ArrayBuffer.isView === \"function\"\n ? ArrayBuffer.isView(obj)\n : obj && obj.buffer instanceof ArrayBuffer;\n};\nconst encodePacket = ({ type, data }, supportsBinary, callback) => {\n if (withNativeBlob && data instanceof Blob) {\n if (supportsBinary) {\n return callback(data);\n }\n else {\n return encodeBlobAsBase64(data, callback);\n }\n }\n else if (withNativeArrayBuffer &&\n (data instanceof ArrayBuffer || isView(data))) {\n if (supportsBinary) {\n return callback(data);\n }\n else {\n return encodeBlobAsBase64(new Blob([data]), callback);\n }\n }\n // plain string\n return callback(PACKET_TYPES[type] + (data || \"\"));\n};\nconst encodeBlobAsBase64 = (data, callback) => {\n const fileReader = new FileReader();\n fileReader.onload = function () {\n const content = fileReader.result.split(\",\")[1];\n callback(\"b\" + (content || \"\"));\n };\n return fileReader.readAsDataURL(data);\n};\nfunction toArray(data) {\n if (data instanceof Uint8Array) {\n return data;\n }\n else if (data instanceof ArrayBuffer) {\n return new Uint8Array(data);\n }\n else {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength);\n }\n}\nlet TEXT_ENCODER;\nexport function encodePacketToBinary(packet, callback) {\n if (withNativeBlob && packet.data instanceof Blob) {\n return packet.data.arrayBuffer().then(toArray).then(callback);\n }\n else if (withNativeArrayBuffer &&\n (packet.data instanceof ArrayBuffer || isView(packet.data))) {\n return callback(toArray(packet.data));\n }\n encodePacket(packet, false, (encoded) => {\n if (!TEXT_ENCODER) {\n TEXT_ENCODER = new TextEncoder();\n }\n callback(TEXT_ENCODER.encode(encoded));\n });\n}\nexport { encodePacket };\n","// imported from https://github.com/socketio/base64-arraybuffer\nconst chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\nexport const encode = (arraybuffer) => {\n let bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n }\n else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n return base64;\n};\nexport const decode = (base64) => {\n let bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n const arraybuffer = new ArrayBuffer(bufferLength), bytes = new Uint8Array(arraybuffer);\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n return arraybuffer;\n};\n","import { ERROR_PACKET, PACKET_TYPES_REVERSE, } from \"./commons.js\";\nimport { decode } from \"./contrib/base64-arraybuffer.js\";\nconst withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\nexport const decodePacket = (encodedPacket, binaryType) => {\n if (typeof encodedPacket !== \"string\") {\n return {\n type: \"message\",\n data: mapBinary(encodedPacket, binaryType),\n };\n }\n const type = encodedPacket.charAt(0);\n if (type === \"b\") {\n return {\n type: \"message\",\n data: decodeBase64Packet(encodedPacket.substring(1), binaryType),\n };\n }\n const packetType = PACKET_TYPES_REVERSE[type];\n if (!packetType) {\n return ERROR_PACKET;\n }\n return encodedPacket.length > 1\n ? {\n type: PACKET_TYPES_REVERSE[type],\n data: encodedPacket.substring(1),\n }\n : {\n type: PACKET_TYPES_REVERSE[type],\n };\n};\nconst decodeBase64Packet = (data, binaryType) => {\n if (withNativeArrayBuffer) {\n const decoded = decode(data);\n return mapBinary(decoded, binaryType);\n }\n else {\n return { base64: true, data }; // fallback for old browsers\n }\n};\nconst mapBinary = (data, binaryType) => {\n switch (binaryType) {\n case \"blob\":\n if (data instanceof Blob) {\n // from WebSocket + binaryType \"blob\"\n return data;\n }\n else {\n // from HTTP long-polling or WebTransport\n return new Blob([data]);\n }\n case \"arraybuffer\":\n default:\n if (data instanceof ArrayBuffer) {\n // from HTTP long-polling (base64) or WebSocket + binaryType \"arraybuffer\"\n return data;\n }\n else {\n // from WebTransport (Uint8Array)\n return data.buffer;\n }\n }\n};\n","import { encodePacket, encodePacketToBinary } from \"./encodePacket.js\";\nimport { decodePacket } from \"./decodePacket.js\";\nimport { ERROR_PACKET, } from \"./commons.js\";\nconst SEPARATOR = String.fromCharCode(30); // see https://en.wikipedia.org/wiki/Delimiter#ASCII_delimited_text\nconst encodePayload = (packets, callback) => {\n // some packets may be added to the array while encoding, so the initial length must be saved\n const length = packets.length;\n const encodedPackets = new Array(length);\n let count = 0;\n packets.forEach((packet, i) => {\n // force base64 encoding for binary packets\n encodePacket(packet, false, (encodedPacket) => {\n encodedPackets[i] = encodedPacket;\n if (++count === length) {\n callback(encodedPackets.join(SEPARATOR));\n }\n });\n });\n};\nconst decodePayload = (encodedPayload, binaryType) => {\n const encodedPackets = encodedPayload.split(SEPARATOR);\n const packets = [];\n for (let i = 0; i < encodedPackets.length; i++) {\n const decodedPacket = decodePacket(encodedPackets[i], binaryType);\n packets.push(decodedPacket);\n if (decodedPacket.type === \"error\") {\n break;\n }\n }\n return packets;\n};\nexport function createPacketEncoderStream() {\n return new TransformStream({\n transform(packet, controller) {\n encodePacketToBinary(packet, (encodedPacket) => {\n const payloadLength = encodedPacket.length;\n let header;\n // inspired by the WebSocket format: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_servers#decoding_payload_length\n if (payloadLength < 126) {\n header = new Uint8Array(1);\n new DataView(header.buffer).setUint8(0, payloadLength);\n }\n else if (payloadLength < 65536) {\n header = new Uint8Array(3);\n const view = new DataView(header.buffer);\n view.setUint8(0, 126);\n view.setUint16(1, payloadLength);\n }\n else {\n header = new Uint8Array(9);\n const view = new DataView(header.buffer);\n view.setUint8(0, 127);\n view.setBigUint64(1, BigInt(payloadLength));\n }\n // first bit indicates whether the payload is plain text (0) or binary (1)\n if (packet.data && typeof packet.data !== \"string\") {\n header[0] |= 0x80;\n }\n controller.enqueue(header);\n controller.enqueue(encodedPacket);\n });\n },\n });\n}\nlet TEXT_DECODER;\nfunction totalLength(chunks) {\n return chunks.reduce((acc, chunk) => acc + chunk.length, 0);\n}\nfunction concatChunks(chunks, size) {\n if (chunks[0].length === size) {\n return chunks.shift();\n }\n const buffer = new Uint8Array(size);\n let j = 0;\n for (let i = 0; i < size; i++) {\n buffer[i] = chunks[0][j++];\n if (j === chunks[0].length) {\n chunks.shift();\n j = 0;\n }\n }\n if (chunks.length && j < chunks[0].length) {\n chunks[0] = chunks[0].slice(j);\n }\n return buffer;\n}\nexport function createPacketDecoderStream(maxPayload, binaryType) {\n if (!TEXT_DECODER) {\n TEXT_DECODER = new TextDecoder();\n }\n const chunks = [];\n let state = 0 /* State.READ_HEADER */;\n let expectedLength = -1;\n let isBinary = false;\n return new TransformStream({\n transform(chunk, controller) {\n chunks.push(chunk);\n while (true) {\n if (state === 0 /* State.READ_HEADER */) {\n if (totalLength(chunks) < 1) {\n break;\n }\n const header = concatChunks(chunks, 1);\n isBinary = (header[0] & 0x80) === 0x80;\n expectedLength = header[0] & 0x7f;\n if (expectedLength < 126) {\n state = 3 /* State.READ_PAYLOAD */;\n }\n else if (expectedLength === 126) {\n state = 1 /* State.READ_EXTENDED_LENGTH_16 */;\n }\n else {\n state = 2 /* State.READ_EXTENDED_LENGTH_64 */;\n }\n }\n else if (state === 1 /* State.READ_EXTENDED_LENGTH_16 */) {\n if (totalLength(chunks) < 2) {\n break;\n }\n const headerArray = concatChunks(chunks, 2);\n expectedLength = new DataView(headerArray.buffer, headerArray.byteOffset, headerArray.length).getUint16(0);\n state = 3 /* State.READ_PAYLOAD */;\n }\n else if (state === 2 /* State.READ_EXTENDED_LENGTH_64 */) {\n if (totalLength(chunks) < 8) {\n break;\n }\n const headerArray = concatChunks(chunks, 8);\n const view = new DataView(headerArray.buffer, headerArray.byteOffset, headerArray.length);\n const n = view.getUint32(0);\n if (n > Math.pow(2, 53 - 32) - 1) {\n // the maximum safe integer in JavaScript is 2^53 - 1\n controller.enqueue(ERROR_PACKET);\n break;\n }\n expectedLength = n * Math.pow(2, 32) + view.getUint32(4);\n state = 3 /* State.READ_PAYLOAD */;\n }\n else {\n if (totalLength(chunks) < expectedLength) {\n break;\n }\n const data = concatChunks(chunks, expectedLength);\n controller.enqueue(decodePacket(isBinary ? data : TEXT_DECODER.decode(data), binaryType));\n state = 0 /* State.READ_HEADER */;\n }\n if (expectedLength === 0 || expectedLength > maxPayload) {\n controller.enqueue(ERROR_PACKET);\n break;\n }\n }\n },\n });\n}\nexport const protocol = 4;\nexport { encodePacket, encodePayload, decodePacket, decodePayload, };\n","/**\n * Initialize a new `Emitter`.\n *\n * @api public\n */\n\nexport function Emitter(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the emitter properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in Emitter.prototype) {\n obj[key] = Emitter.prototype[key];\n }\n return obj;\n}\n\n/**\n * Listen on the given `event` with `fn`.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.on =\nEmitter.prototype.addEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\n .push(fn);\n return this;\n};\n\n/**\n * Adds an `event` listener that will be invoked a single\n * time then automatically removed.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.once = function(event, fn){\n function on() {\n this.off(event, on);\n fn.apply(this, arguments);\n }\n\n on.fn = fn;\n this.on(event, on);\n return this;\n};\n\n/**\n * Remove the given callback for `event` or all\n * registered callbacks.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.off =\nEmitter.prototype.removeListener =\nEmitter.prototype.removeAllListeners =\nEmitter.prototype.removeEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n\n // all\n if (0 == arguments.length) {\n this._callbacks = {};\n return this;\n }\n\n // specific event\n var callbacks = this._callbacks['$' + event];\n if (!callbacks) return this;\n\n // remove all handlers\n if (1 == arguments.length) {\n delete this._callbacks['$' + event];\n return this;\n }\n\n // remove specific handler\n var cb;\n for (var i = 0; i < callbacks.length; i++) {\n cb = callbacks[i];\n if (cb === fn || cb.fn === fn) {\n callbacks.splice(i, 1);\n break;\n }\n }\n\n // Remove event specific arrays for event types that no\n // one is subscribed for to avoid memory leak.\n if (callbacks.length === 0) {\n delete this._callbacks['$' + event];\n }\n\n return this;\n};\n\n/**\n * Emit `event` with the given args.\n *\n * @param {String} event\n * @param {Mixed} ...\n * @return {Emitter}\n */\n\nEmitter.prototype.emit = function(event){\n this._callbacks = this._callbacks || {};\n\n var args = new Array(arguments.length - 1)\n , callbacks = this._callbacks['$' + event];\n\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n\n if (callbacks) {\n callbacks = callbacks.slice(0);\n for (var i = 0, len = callbacks.length; i < len; ++i) {\n callbacks[i].apply(this, args);\n }\n }\n\n return this;\n};\n\n// alias used for reserved events (protected method)\nEmitter.prototype.emitReserved = Emitter.prototype.emit;\n\n/**\n * Return array of callbacks for `event`.\n *\n * @param {String} event\n * @return {Array}\n * @api public\n */\n\nEmitter.prototype.listeners = function(event){\n this._callbacks = this._callbacks || {};\n return this._callbacks['$' + event] || [];\n};\n\n/**\n * Check if this emitter has `event` handlers.\n *\n * @param {String} event\n * @return {Boolean}\n * @api public\n */\n\nEmitter.prototype.hasListeners = function(event){\n return !! this.listeners(event).length;\n};\n","export const nextTick = (() => {\n const isPromiseAvailable = typeof Promise === \"function\" && typeof Promise.resolve === \"function\";\n if (isPromiseAvailable) {\n return (cb) => Promise.resolve().then(cb);\n }\n else {\n return (cb, setTimeoutFn) => setTimeoutFn(cb, 0);\n }\n})();\nexport const globalThisShim = (() => {\n if (typeof self !== \"undefined\") {\n return self;\n }\n else if (typeof window !== \"undefined\") {\n return window;\n }\n else {\n return Function(\"return this\")();\n }\n})();\nexport const defaultBinaryType = \"arraybuffer\";\nexport function createCookieJar() { }\n","import { globalThisShim as globalThis } from \"./globals.node.js\";\nexport function pick(obj, ...attr) {\n return attr.reduce((acc, k) => {\n if (obj.hasOwnProperty(k)) {\n acc[k] = obj[k];\n }\n return acc;\n }, {});\n}\n// Keep a reference to the real timeout functions so they can be used when overridden\nconst NATIVE_SET_TIMEOUT = globalThis.setTimeout;\nconst NATIVE_CLEAR_TIMEOUT = globalThis.clearTimeout;\nexport function installTimerFunctions(obj, opts) {\n if (opts.useNativeTimers) {\n obj.setTimeoutFn = NATIVE_SET_TIMEOUT.bind(globalThis);\n obj.clearTimeoutFn = NATIVE_CLEAR_TIMEOUT.bind(globalThis);\n }\n else {\n obj.setTimeoutFn = globalThis.setTimeout.bind(globalThis);\n obj.clearTimeoutFn = globalThis.clearTimeout.bind(globalThis);\n }\n}\n// base64 encoded buffers are about 33% bigger (https://en.wikipedia.org/wiki/Base64)\nconst BASE64_OVERHEAD = 1.33;\n// we could also have used `new Blob([obj]).size`, but it isn't supported in IE9\nexport function byteLength(obj) {\n if (typeof obj === \"string\") {\n return utf8Length(obj);\n }\n // arraybuffer or blob\n return Math.ceil((obj.byteLength || obj.size) * BASE64_OVERHEAD);\n}\nfunction utf8Length(str) {\n let c = 0, length = 0;\n for (let i = 0, l = str.length; i < l; i++) {\n c = str.charCodeAt(i);\n if (c < 0x80) {\n length += 1;\n }\n else if (c < 0x800) {\n length += 2;\n }\n else if (c < 0xd800 || c >= 0xe000) {\n length += 3;\n }\n else {\n i++;\n length += 4;\n }\n }\n return length;\n}\n/**\n * Generates a random 8-characters string.\n */\nexport function randomString() {\n return (Date.now().toString(36).substring(3) +\n Math.random().toString(36).substring(2, 5));\n}\n","// imported from https://github.com/galkn/querystring\n/**\n * Compiles a querystring\n * Returns string representation of the object\n *\n * @param {Object}\n * @api private\n */\nexport function encode(obj) {\n let str = '';\n for (let i in obj) {\n if (obj.hasOwnProperty(i)) {\n if (str.length)\n str += '&';\n str += encodeURIComponent(i) + '=' + encodeURIComponent(obj[i]);\n }\n }\n return str;\n}\n/**\n * Parses a simple querystring into an object\n *\n * @param {String} qs\n * @api private\n */\nexport function decode(qs) {\n let qry = {};\n let pairs = qs.split('&');\n for (let i = 0, l = pairs.length; i < l; i++) {\n let pair = pairs[i].split('=');\n qry[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);\n }\n return qry;\n}\n","import { decodePacket } from \"engine.io-parser\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { installTimerFunctions } from \"./util.js\";\nimport { encode } from \"./contrib/parseqs.js\";\nexport class TransportError extends Error {\n constructor(reason, description, context) {\n super(reason);\n this.description = description;\n this.context = context;\n this.type = \"TransportError\";\n }\n}\nexport class Transport extends Emitter {\n /**\n * Transport abstract constructor.\n *\n * @param {Object} opts - options\n * @protected\n */\n constructor(opts) {\n super();\n this.writable = false;\n installTimerFunctions(this, opts);\n this.opts = opts;\n this.query = opts.query;\n this.socket = opts.socket;\n this.supportsBinary = !opts.forceBase64;\n }\n /**\n * Emits an error.\n *\n * @param {String} reason\n * @param description\n * @param context - the error context\n * @return {Transport} for chaining\n * @protected\n */\n onError(reason, description, context) {\n super.emitReserved(\"error\", new TransportError(reason, description, context));\n return this;\n }\n /**\n * Opens the transport.\n */\n open() {\n this.readyState = \"opening\";\n this.doOpen();\n return this;\n }\n /**\n * Closes the transport.\n */\n close() {\n if (this.readyState === \"opening\" || this.readyState === \"open\") {\n this.doClose();\n this.onClose();\n }\n return this;\n }\n /**\n * Sends multiple packets.\n *\n * @param {Array} packets\n */\n send(packets) {\n if (this.readyState === \"open\") {\n this.write(packets);\n }\n else {\n // this might happen if the transport was silently closed in the beforeunload event handler\n }\n }\n /**\n * Called upon open\n *\n * @protected\n */\n onOpen() {\n this.readyState = \"open\";\n this.writable = true;\n super.emitReserved(\"open\");\n }\n /**\n * Called with data.\n *\n * @param {String} data\n * @protected\n */\n onData(data) {\n const packet = decodePacket(data, this.socket.binaryType);\n this.onPacket(packet);\n }\n /**\n * Called with a decoded packet.\n *\n * @protected\n */\n onPacket(packet) {\n super.emitReserved(\"packet\", packet);\n }\n /**\n * Called upon close.\n *\n * @protected\n */\n onClose(details) {\n this.readyState = \"closed\";\n super.emitReserved(\"close\", details);\n }\n /**\n * Pauses the transport, in order not to lose packets during an upgrade.\n *\n * @param onPause\n */\n pause(onPause) { }\n createUri(schema, query = {}) {\n return (schema +\n \"://\" +\n this._hostname() +\n this._port() +\n this.opts.path +\n this._query(query));\n }\n _hostname() {\n const hostname = this.opts.hostname;\n return hostname.indexOf(\":\") === -1 ? hostname : \"[\" + hostname + \"]\";\n }\n _port() {\n if (this.opts.port &&\n ((this.opts.secure && Number(this.opts.port !== 443)) ||\n (!this.opts.secure && Number(this.opts.port) !== 80))) {\n return \":\" + this.opts.port;\n }\n else {\n return \"\";\n }\n }\n _query(query) {\n const encodedQuery = encode(query);\n return encodedQuery.length ? \"?\" + encodedQuery : \"\";\n }\n}\n","import { Transport } from \"../transport.js\";\nimport { randomString } from \"../util.js\";\nimport { encodePayload, decodePayload } from \"engine.io-parser\";\nexport class Polling extends Transport {\n constructor() {\n super(...arguments);\n this._polling = false;\n }\n get name() {\n return \"polling\";\n }\n /**\n * Opens the socket (triggers polling). We write a PING message to determine\n * when the transport is open.\n *\n * @protected\n */\n doOpen() {\n this._poll();\n }\n /**\n * Pauses polling.\n *\n * @param {Function} onPause - callback upon buffers are flushed and transport is paused\n * @package\n */\n pause(onPause) {\n this.readyState = \"pausing\";\n const pause = () => {\n this.readyState = \"paused\";\n onPause();\n };\n if (this._polling || !this.writable) {\n let total = 0;\n if (this._polling) {\n total++;\n this.once(\"pollComplete\", function () {\n --total || pause();\n });\n }\n if (!this.writable) {\n total++;\n this.once(\"drain\", function () {\n --total || pause();\n });\n }\n }\n else {\n pause();\n }\n }\n /**\n * Starts polling cycle.\n *\n * @private\n */\n _poll() {\n this._polling = true;\n this.doPoll();\n this.emitReserved(\"poll\");\n }\n /**\n * Overloads onData to detect payloads.\n *\n * @protected\n */\n onData(data) {\n const callback = (packet) => {\n // if its the first message we consider the transport open\n if (\"opening\" === this.readyState && packet.type === \"open\") {\n this.onOpen();\n }\n // if its a close packet, we close the ongoing requests\n if (\"close\" === packet.type) {\n this.onClose({ description: \"transport closed by the server\" });\n return false;\n }\n // otherwise bypass onData and handle the message\n this.onPacket(packet);\n };\n // decode payload\n decodePayload(data, this.socket.binaryType).forEach(callback);\n // if an event did not trigger closing\n if (\"closed\" !== this.readyState) {\n // if we got data we're not polling\n this._polling = false;\n this.emitReserved(\"pollComplete\");\n if (\"open\" === this.readyState) {\n this._poll();\n }\n else {\n }\n }\n }\n /**\n * For polling, send a close packet.\n *\n * @protected\n */\n doClose() {\n const close = () => {\n this.write([{ type: \"close\" }]);\n };\n if (\"open\" === this.readyState) {\n close();\n }\n else {\n // in case we're trying to close while\n // handshaking is in progress (GH-164)\n this.once(\"open\", close);\n }\n }\n /**\n * Writes a packets payload.\n *\n * @param {Array} packets - data packets\n * @protected\n */\n write(packets) {\n this.writable = false;\n encodePayload(packets, (data) => {\n this.doWrite(data, () => {\n this.writable = true;\n this.emitReserved(\"drain\");\n });\n });\n }\n /**\n * Generates uri for connection.\n *\n * @private\n */\n uri() {\n const schema = this.opts.secure ? \"https\" : \"http\";\n const query = this.query || {};\n // cache busting is forced\n if (false !== this.opts.timestampRequests) {\n query[this.opts.timestampParam] = randomString();\n }\n if (!this.supportsBinary && !query.sid) {\n query.b64 = 1;\n }\n return this.createUri(schema, query);\n }\n}\n","// imported from https://github.com/component/has-cors\nlet value = false;\ntry {\n value = typeof XMLHttpRequest !== 'undefined' &&\n 'withCredentials' in new XMLHttpRequest();\n}\ncatch (err) {\n // if XMLHttp support is disabled in IE then it will throw\n // when trying to create\n}\nexport const hasCORS = value;\n","import { Polling } from \"./polling.js\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { installTimerFunctions, pick } from \"../util.js\";\nimport { globalThisShim as globalThis } from \"../globals.node.js\";\nimport { hasCORS } from \"../contrib/has-cors.js\";\nfunction empty() { }\nexport class BaseXHR extends Polling {\n /**\n * XHR Polling constructor.\n *\n * @param {Object} opts\n * @package\n */\n constructor(opts) {\n super(opts);\n if (typeof location !== \"undefined\") {\n const isSSL = \"https:\" === location.protocol;\n let port = location.port;\n // some user agents have empty `location.port`\n if (!port) {\n port = isSSL ? \"443\" : \"80\";\n }\n this.xd =\n (typeof location !== \"undefined\" &&\n opts.hostname !== location.hostname) ||\n port !== opts.port;\n }\n }\n /**\n * Sends data.\n *\n * @param {String} data to send.\n * @param {Function} called upon flush.\n * @private\n */\n doWrite(data, fn) {\n const req = this.request({\n method: \"POST\",\n data: data,\n });\n req.on(\"success\", fn);\n req.on(\"error\", (xhrStatus, context) => {\n this.onError(\"xhr post error\", xhrStatus, context);\n });\n }\n /**\n * Starts a poll cycle.\n *\n * @private\n */\n doPoll() {\n const req = this.request();\n req.on(\"data\", this.onData.bind(this));\n req.on(\"error\", (xhrStatus, context) => {\n this.onError(\"xhr poll error\", xhrStatus, context);\n });\n this.pollXhr = req;\n }\n}\nexport class Request extends Emitter {\n /**\n * Request constructor\n *\n * @param {Object} options\n * @package\n */\n constructor(createRequest, uri, opts) {\n super();\n this.createRequest = createRequest;\n installTimerFunctions(this, opts);\n this._opts = opts;\n this._method = opts.method || \"GET\";\n this._uri = uri;\n this._data = undefined !== opts.data ? opts.data : null;\n this._create();\n }\n /**\n * Creates the XHR object and sends the request.\n *\n * @private\n */\n _create() {\n var _a;\n const opts = pick(this._opts, \"agent\", \"pfx\", \"key\", \"passphrase\", \"cert\", \"ca\", \"ciphers\", \"rejectUnauthorized\", \"autoUnref\");\n opts.xdomain = !!this._opts.xd;\n const xhr = (this._xhr = this.createRequest(opts));\n try {\n xhr.open(this._method, this._uri, true);\n try {\n if (this._opts.extraHeaders) {\n // @ts-ignore\n xhr.setDisableHeaderCheck && xhr.setDisableHeaderCheck(true);\n for (let i in this._opts.extraHeaders) {\n if (this._opts.extraHeaders.hasOwnProperty(i)) {\n xhr.setRequestHeader(i, this._opts.extraHeaders[i]);\n }\n }\n }\n }\n catch (e) { }\n if (\"POST\" === this._method) {\n try {\n xhr.setRequestHeader(\"Content-type\", \"text/plain;charset=UTF-8\");\n }\n catch (e) { }\n }\n try {\n xhr.setRequestHeader(\"Accept\", \"*/*\");\n }\n catch (e) { }\n (_a = this._opts.cookieJar) === null || _a === void 0 ? void 0 : _a.addCookies(xhr);\n // ie6 check\n if (\"withCredentials\" in xhr) {\n xhr.withCredentials = this._opts.withCredentials;\n }\n if (this._opts.requestTimeout) {\n xhr.timeout = this._opts.requestTimeout;\n }\n xhr.onreadystatechange = () => {\n var _a;\n if (xhr.readyState === 3) {\n (_a = this._opts.cookieJar) === null || _a === void 0 ? void 0 : _a.parseCookies(\n // @ts-ignore\n xhr.getResponseHeader(\"set-cookie\"));\n }\n if (4 !== xhr.readyState)\n return;\n if (200 === xhr.status || 1223 === xhr.status) {\n this._onLoad();\n }\n else {\n // make sure the `error` event handler that's user-set\n // does not throw in the same tick and gets caught here\n this.setTimeoutFn(() => {\n this._onError(typeof xhr.status === \"number\" ? xhr.status : 0);\n }, 0);\n }\n };\n xhr.send(this._data);\n }\n catch (e) {\n // Need to defer since .create() is called directly from the constructor\n // and thus the 'error' event can only be only bound *after* this exception\n // occurs. Therefore, also, we cannot throw here at all.\n this.setTimeoutFn(() => {\n this._onError(e);\n }, 0);\n return;\n }\n if (typeof document !== \"undefined\") {\n this._index = Request.requestsCount++;\n Request.requests[this._index] = this;\n }\n }\n /**\n * Called upon error.\n *\n * @private\n */\n _onError(err) {\n this.emitReserved(\"error\", err, this._xhr);\n this._cleanup(true);\n }\n /**\n * Cleans up house.\n *\n * @private\n */\n _cleanup(fromError) {\n if (\"undefined\" === typeof this._xhr || null === this._xhr) {\n return;\n }\n this._xhr.onreadystatechange = empty;\n if (fromError) {\n try {\n this._xhr.abort();\n }\n catch (e) { }\n }\n if (typeof document !== \"undefined\") {\n delete Request.requests[this._index];\n }\n this._xhr = null;\n }\n /**\n * Called upon load.\n *\n * @private\n */\n _onLoad() {\n const data = this._xhr.responseText;\n if (data !== null) {\n this.emitReserved(\"data\", data);\n this.emitReserved(\"success\");\n this._cleanup();\n }\n }\n /**\n * Aborts the request.\n *\n * @package\n */\n abort() {\n this._cleanup();\n }\n}\nRequest.requestsCount = 0;\nRequest.requests = {};\n/**\n * Aborts pending requests when unloading the window. This is needed to prevent\n * memory leaks (e.g. when using IE) and to ensure that no spurious error is\n * emitted.\n */\nif (typeof document !== \"undefined\") {\n // @ts-ignore\n if (typeof attachEvent === \"function\") {\n // @ts-ignore\n attachEvent(\"onunload\", unloadHandler);\n }\n else if (typeof addEventListener === \"function\") {\n const terminationEvent = \"onpagehide\" in globalThis ? \"pagehide\" : \"unload\";\n addEventListener(terminationEvent, unloadHandler, false);\n }\n}\nfunction unloadHandler() {\n for (let i in Request.requests) {\n if (Request.requests.hasOwnProperty(i)) {\n Request.requests[i].abort();\n }\n }\n}\nconst hasXHR2 = (function () {\n const xhr = newRequest({\n xdomain: false,\n });\n return xhr && xhr.responseType !== null;\n})();\n/**\n * HTTP long-polling based on the built-in `XMLHttpRequest` object.\n *\n * Usage: browser\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest\n */\nexport class XHR extends BaseXHR {\n constructor(opts) {\n super(opts);\n const forceBase64 = opts && opts.forceBase64;\n this.supportsBinary = hasXHR2 && !forceBase64;\n }\n request(opts = {}) {\n Object.assign(opts, { xd: this.xd }, this.opts);\n return new Request(newRequest, this.uri(), opts);\n }\n}\nfunction newRequest(opts) {\n const xdomain = opts.xdomain;\n // XMLHttpRequest can be disabled on IE\n try {\n if (\"undefined\" !== typeof XMLHttpRequest && (!xdomain || hasCORS)) {\n return new XMLHttpRequest();\n }\n }\n catch (e) { }\n if (!xdomain) {\n try {\n return new globalThis[[\"Active\"].concat(\"Object\").join(\"X\")](\"Microsoft.XMLHTTP\");\n }\n catch (e) { }\n }\n}\n","import { Transport } from \"../transport.js\";\nimport { pick, randomString } from \"../util.js\";\nimport { encodePacket } from \"engine.io-parser\";\nimport { globalThisShim as globalThis, nextTick } from \"../globals.node.js\";\n// detect ReactNative environment\nconst isReactNative = typeof navigator !== \"undefined\" &&\n typeof navigator.product === \"string\" &&\n navigator.product.toLowerCase() === \"reactnative\";\nexport class BaseWS extends Transport {\n get name() {\n return \"websocket\";\n }\n doOpen() {\n const uri = this.uri();\n const protocols = this.opts.protocols;\n // React Native only supports the 'headers' option, and will print a warning if anything else is passed\n const opts = isReactNative\n ? {}\n : pick(this.opts, \"agent\", \"perMessageDeflate\", \"pfx\", \"key\", \"passphrase\", \"cert\", \"ca\", \"ciphers\", \"rejectUnauthorized\", \"localAddress\", \"protocolVersion\", \"origin\", \"maxPayload\", \"family\", \"checkServerIdentity\");\n if (this.opts.extraHeaders) {\n opts.headers = this.opts.extraHeaders;\n }\n try {\n this.ws = this.createSocket(uri, protocols, opts);\n }\n catch (err) {\n return this.emitReserved(\"error\", err);\n }\n this.ws.binaryType = this.socket.binaryType;\n this.addEventListeners();\n }\n /**\n * Adds event listeners to the socket\n *\n * @private\n */\n addEventListeners() {\n this.ws.onopen = () => {\n if (this.opts.autoUnref) {\n this.ws._socket.unref();\n }\n this.onOpen();\n };\n this.ws.onclose = (closeEvent) => this.onClose({\n description: \"websocket connection closed\",\n context: closeEvent,\n });\n this.ws.onmessage = (ev) => this.onData(ev.data);\n this.ws.onerror = (e) => this.onError(\"websocket error\", e);\n }\n write(packets) {\n this.writable = false;\n // encodePacket efficient as it uses WS framing\n // no need for encodePayload\n for (let i = 0; i < packets.length; i++) {\n const packet = packets[i];\n const lastPacket = i === packets.length - 1;\n encodePacket(packet, this.supportsBinary, (data) => {\n // Sometimes the websocket has already been closed but the browser didn't\n // have a chance of informing us about it yet, in that case send will\n // throw an error\n try {\n this.doWrite(packet, data);\n }\n catch (e) {\n }\n if (lastPacket) {\n // fake drain\n // defer to next tick to allow Socket to clear writeBuffer\n nextTick(() => {\n this.writable = true;\n this.emitReserved(\"drain\");\n }, this.setTimeoutFn);\n }\n });\n }\n }\n doClose() {\n if (typeof this.ws !== \"undefined\") {\n this.ws.onerror = () => { };\n this.ws.close();\n this.ws = null;\n }\n }\n /**\n * Generates uri for connection.\n *\n * @private\n */\n uri() {\n const schema = this.opts.secure ? \"wss\" : \"ws\";\n const query = this.query || {};\n // append timestamp to URI\n if (this.opts.timestampRequests) {\n query[this.opts.timestampParam] = randomString();\n }\n // communicate binary support capabilities\n if (!this.supportsBinary) {\n query.b64 = 1;\n }\n return this.createUri(schema, query);\n }\n}\nconst WebSocketCtor = globalThis.WebSocket || globalThis.MozWebSocket;\n/**\n * WebSocket transport based on the built-in `WebSocket` object.\n *\n * Usage: browser, Node.js (since v21), Deno, Bun\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket\n * @see https://caniuse.com/mdn-api_websocket\n * @see https://nodejs.org/api/globals.html#websocket\n */\nexport class WS extends BaseWS {\n createSocket(uri, protocols, opts) {\n return !isReactNative\n ? protocols\n ? new WebSocketCtor(uri, protocols)\n : new WebSocketCtor(uri)\n : new WebSocketCtor(uri, protocols, opts);\n }\n doWrite(_packet, data) {\n this.ws.send(data);\n }\n}\n","import { Transport } from \"../transport.js\";\nimport { nextTick } from \"../globals.node.js\";\nimport { createPacketDecoderStream, createPacketEncoderStream, } from \"engine.io-parser\";\n/**\n * WebTransport transport based on the built-in `WebTransport` object.\n *\n * Usage: browser, Node.js (with the `@fails-components/webtransport` package)\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/WebTransport\n * @see https://caniuse.com/webtransport\n */\nexport class WT extends Transport {\n get name() {\n return \"webtransport\";\n }\n doOpen() {\n try {\n // @ts-ignore\n this._transport = new WebTransport(this.createUri(\"https\"), this.opts.transportOptions[this.name]);\n }\n catch (err) {\n return this.emitReserved(\"error\", err);\n }\n this._transport.closed\n .then(() => {\n this.onClose();\n })\n .catch((err) => {\n this.onError(\"webtransport error\", err);\n });\n // note: we could have used async/await, but that would require some additional polyfills\n this._transport.ready.then(() => {\n this._transport.createBidirectionalStream().then((stream) => {\n const decoderStream = createPacketDecoderStream(Number.MAX_SAFE_INTEGER, this.socket.binaryType);\n const reader = stream.readable.pipeThrough(decoderStream).getReader();\n const encoderStream = createPacketEncoderStream();\n encoderStream.readable.pipeTo(stream.writable);\n this._writer = encoderStream.writable.getWriter();\n const read = () => {\n reader\n .read()\n .then(({ done, value }) => {\n if (done) {\n return;\n }\n this.onPacket(value);\n read();\n })\n .catch((err) => {\n });\n };\n read();\n const packet = { type: \"open\" };\n if (this.query.sid) {\n packet.data = `{\"sid\":\"${this.query.sid}\"}`;\n }\n this._writer.write(packet).then(() => this.onOpen());\n });\n });\n }\n write(packets) {\n this.writable = false;\n for (let i = 0; i < packets.length; i++) {\n const packet = packets[i];\n const lastPacket = i === packets.length - 1;\n this._writer.write(packet).then(() => {\n if (lastPacket) {\n nextTick(() => {\n this.writable = true;\n this.emitReserved(\"drain\");\n }, this.setTimeoutFn);\n }\n });\n }\n }\n doClose() {\n var _a;\n (_a = this._transport) === null || _a === void 0 ? void 0 : _a.close();\n }\n}\n","import { XHR } from \"./polling-xhr.node.js\";\nimport { WS } from \"./websocket.node.js\";\nimport { WT } from \"./webtransport.js\";\nexport const transports = {\n websocket: WS,\n webtransport: WT,\n polling: XHR,\n};\n","// imported from https://github.com/galkn/parseuri\n/**\n * Parses a URI\n *\n * Note: we could also have used the built-in URL object, but it isn't supported on all platforms.\n *\n * See:\n * - https://developer.mozilla.org/en-US/docs/Web/API/URL\n * - https://caniuse.com/url\n * - https://www.rfc-editor.org/rfc/rfc3986#appendix-B\n *\n * History of the parse() method:\n * - first commit: https://github.com/socketio/socket.io-client/commit/4ee1d5d94b3906a9c052b459f1a818b15f38f91c\n * - export into its own module: https://github.com/socketio/engine.io-client/commit/de2c561e4564efeb78f1bdb1ba39ef81b2822cb3\n * - reimport: https://github.com/socketio/engine.io-client/commit/df32277c3f6d622eec5ed09f493cae3f3391d242\n *\n * @author Steven Levithan <stevenlevithan.com> (MIT license)\n * @api private\n */\nconst re = /^(?:(?![^:@\\/?#]+:[^:@\\/]*@)(http|https|ws|wss):\\/\\/)?((?:(([^:@\\/?#]*)(?::([^:@\\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/;\nconst parts = [\n 'source', 'protocol', 'authority', 'userInfo', 'user', 'password', 'host', 'port', 'relative', 'path', 'directory', 'file', 'query', 'anchor'\n];\nexport function parse(str) {\n if (str.length > 8000) {\n throw \"URI too long\";\n }\n const src = str, b = str.indexOf('['), e = str.indexOf(']');\n if (b != -1 && e != -1) {\n str = str.substring(0, b) + str.substring(b, e).replace(/:/g, ';') + str.substring(e, str.length);\n }\n let m = re.exec(str || ''), uri = {}, i = 14;\n while (i--) {\n uri[parts[i]] = m[i] || '';\n }\n if (b != -1 && e != -1) {\n uri.source = src;\n uri.host = uri.host.substring(1, uri.host.length - 1).replace(/;/g, ':');\n uri.authority = uri.authority.replace('[', '').replace(']', '').replace(/;/g, ':');\n uri.ipv6uri = true;\n }\n uri.pathNames = pathNames(uri, uri['path']);\n uri.queryKey = queryKey(uri, uri['query']);\n return uri;\n}\nfunction pathNames(obj, path) {\n const regx = /\\/{2,9}/g, names = path.replace(regx, \"/\").split(\"/\");\n if (path.slice(0, 1) == '/' || path.length === 0) {\n names.splice(0, 1);\n }\n if (path.slice(-1) == '/') {\n names.splice(names.length - 1, 1);\n }\n return names;\n}\nfunction queryKey(uri, query) {\n const data = {};\n query.replace(/(?:^|&)([^&=]*)=?([^&]*)/g, function ($0, $1, $2) {\n if ($1) {\n data[$1] = $2;\n }\n });\n return data;\n}\n","import { transports as DEFAULT_TRANSPORTS } from \"./transports/index.js\";\nimport { installTimerFunctions, byteLength } from \"./util.js\";\nimport { decode } from \"./contrib/parseqs.js\";\nimport { parse } from \"./contrib/parseuri.js\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { protocol } from \"engine.io-parser\";\nimport { createCookieJar, defaultBinaryType, nextTick, } from \"./globals.node.js\";\nconst withEventListeners = typeof addEventListener === \"function\" &&\n typeof removeEventListener === \"function\";\nconst OFFLINE_EVENT_LISTENERS = [];\nif (withEventListeners) {\n // within a ServiceWorker, any event handler for the 'offline' event must be added on the initial evaluation of the\n // script, so we create one single event listener here which will forward the event to the socket instances\n addEventListener(\"offline\", () => {\n OFFLINE_EVENT_LISTENERS.forEach((listener) => listener());\n }, false);\n}\n/**\n * This class provides a WebSocket-like interface to connect to an Engine.IO server. The connection will be established\n * with one of the available low-level transports, like HTTP long-polling, WebSocket or WebTransport.\n *\n * This class comes without upgrade mechanism, which means that it will keep the first low-level transport that\n * successfully establishes the connection.\n *\n * In order to allow tree-shaking, there are no transports included, that's why the `transports` option is mandatory.\n *\n * @example\n * import { SocketWithoutUpgrade, WebSocket } from \"engine.io-client\";\n *\n * const socket = new SocketWithoutUpgrade({\n * transports: [WebSocket]\n * });\n *\n * socket.on(\"open\", () => {\n * socket.send(\"hello\");\n * });\n *\n * @see SocketWithUpgrade\n * @see Socket\n */\nexport class SocketWithoutUpgrade extends Emitter {\n /**\n * Socket constructor.\n *\n * @param {String|Object} uri - uri or options\n * @param {Object} opts - options\n */\n constructor(uri, opts) {\n super();\n this.binaryType = defaultBinaryType;\n this.writeBuffer = [];\n this._prevBufferLen = 0;\n this._pingInterval = -1;\n this._pingTimeout = -1;\n this._maxPayload = -1;\n /**\n * The expiration timestamp of the {@link _pingTimeoutTimer} object is tracked, in case the timer is throttled and the\n * callback is not fired on time. This can happen for example when a laptop is suspended or when a phone is locked.\n */\n this._pingTimeoutTime = Infinity;\n if (uri && \"object\" === typeof uri) {\n opts = uri;\n uri = null;\n }\n if (uri) {\n const parsedUri = parse(uri);\n opts.hostname = parsedUri.host;\n opts.secure =\n parsedUri.protocol === \"https\" || parsedUri.protocol === \"wss\";\n opts.port = parsedUri.port;\n if (parsedUri.query)\n opts.query = parsedUri.query;\n }\n else if (opts.host) {\n opts.hostname = parse(opts.host).host;\n }\n installTimerFunctions(this, opts);\n this.secure =\n null != opts.secure\n ? opts.secure\n : typeof location !== \"undefined\" && \"https:\" === location.protocol;\n if (opts.hostname && !opts.port) {\n // if no port is specified manually, use the protocol default\n opts.port = this.secure ? \"443\" : \"80\";\n }\n this.hostname =\n opts.hostname ||\n (typeof location !== \"undefined\" ? location.hostname : \"localhost\");\n this.port =\n opts.port ||\n (typeof location !== \"undefined\" && location.port\n ? location.port\n : this.secure\n ? \"443\"\n : \"80\");\n this.transports = [];\n this._transportsByName = {};\n opts.transports.forEach((t) => {\n const transportName = t.prototype.name;\n this.transports.push(transportName);\n this._transportsByName[transportName] = t;\n });\n this.opts = Object.assign({\n path: \"/engine.io\",\n agent: false,\n withCredentials: false,\n upgrade: true,\n timestampParam: \"t\",\n rememberUpgrade: false,\n addTrailingSlash: true,\n rejectUnauthorized: true,\n perMessageDeflate: {\n threshold: 1024,\n },\n transportOptions: {},\n closeOnBeforeunload: false,\n }, opts);\n this.opts.path =\n this.opts.path.replace(/\\/$/, \"\") +\n (this.opts.addTrailingSlash ? \"/\" : \"\");\n if (typeof this.opts.query === \"string\") {\n this.opts.query = decode(this.opts.query);\n }\n if (withEventListeners) {\n if (this.opts.closeOnBeforeunload) {\n // Firefox closes the connection when the \"beforeunload\" event is emitted but not Chrome. This event listener\n // ensures every browser behaves the same (no \"disconnect\" event at the Socket.IO level when the page is\n // closed/reloaded)\n this._beforeunloadEventListener = () => {\n if (this.transport) {\n // silently close the transport\n this.transport.removeAllListeners();\n this.transport.close();\n }\n };\n addEventListener(\"beforeunload\", this._beforeunloadEventListener, false);\n }\n if (this.hostname !== \"localhost\") {\n this._offlineEventListener = () => {\n this._onClose(\"transport close\", {\n description: \"network connection lost\",\n });\n };\n OFFLINE_EVENT_LISTENERS.push(this._offlineEventListener);\n }\n }\n if (this.opts.withCredentials) {\n this._cookieJar = createCookieJar();\n }\n this._open();\n }\n /**\n * Creates transport of the given type.\n *\n * @param {String} name - transport name\n * @return {Transport}\n * @private\n */\n createTransport(name) {\n const query = Object.assign({}, this.opts.query);\n // append engine.io protocol identifier\n query.EIO = protocol;\n // transport name\n query.transport = name;\n // session id if we already have one\n if (this.id)\n query.sid = this.id;\n const opts = Object.assign({}, this.opts, {\n query,\n socket: this,\n hostname: this.hostname,\n secure: this.secure,\n port: this.port,\n }, this.opts.transportOptions[name]);\n return new this._transportsByName[name](opts);\n }\n /**\n * Initializes transport to use and starts probe.\n *\n * @private\n */\n _open() {\n if (this.transports.length === 0) {\n // Emit error on next tick so it can be listened to\n this.setTimeoutFn(() => {\n this.emitReserved(\"error\", \"No transports available\");\n }, 0);\n return;\n }\n const transportName = this.opts.rememberUpgrade &&\n SocketWithoutUpgrade.priorWebsocketSuccess &&\n this.transports.indexOf(\"websocket\") !== -1\n ? \"websocket\"\n : this.transports[0];\n this.readyState = \"opening\";\n const transport = this.createTransport(transportName);\n transport.open();\n this.setTransport(transport);\n }\n /**\n * Sets the current transport. Disables the existing one (if any).\n *\n * @private\n */\n setTransport(transport) {\n if (this.transport) {\n this.transport.removeAllListeners();\n }\n // set up transport\n this.transport = transport;\n // set up transport listeners\n transport\n .on(\"drain\", this._onDrain.bind(this))\n .on(\"packet\", this._onPacket.bind(this))\n .on(\"error\", this._onError.bind(this))\n .on(\"close\", (reason) => this._onClose(\"transport close\", reason));\n }\n /**\n * Called when connection is deemed open.\n *\n * @private\n */\n onOpen() {\n this.readyState = \"open\";\n SocketWithoutUpgrade.priorWebsocketSuccess =\n \"websocket\" === this.transport.name;\n this.emitReserved(\"open\");\n this.flush();\n }\n /**\n * Handles a packet.\n *\n * @private\n */\n _onPacket(packet) {\n if (\"opening\" === this.readyState ||\n \"open\" === this.readyState ||\n \"closing\" === this.readyState) {\n this.emitReserved(\"packet\", packet);\n // Socket is live - any packet counts\n this.emitReserved(\"heartbeat\");\n switch (packet.type) {\n case \"open\":\n this.onHandshake(JSON.parse(packet.data));\n break;\n case \"ping\":\n this._sendPacket(\"pong\");\n this.emitReserved(\"ping\");\n this.emitReserved(\"pong\");\n this._resetPingTimeout();\n break;\n case \"error\":\n const err = new Error(\"server error\");\n // @ts-ignore\n err.code = packet.data;\n this._onError(err);\n break;\n case \"message\":\n this.emitReserved(\"data\", packet.data);\n this.emitReserved(\"message\", packet.data);\n break;\n }\n }\n else {\n }\n }\n /**\n * Called upon handshake completion.\n *\n * @param {Object} data - handshake obj\n * @private\n */\n onHandshake(data) {\n this.emitReserved(\"handshake\", data);\n this.id = data.sid;\n this.transport.query.sid = data.sid;\n this._pingInterval = data.pingInterval;\n this._pingTimeout = data.pingTimeout;\n this._maxPayload = data.maxPayload;\n this.onOpen();\n // In case open handler closes socket\n if (\"closed\" === this.readyState)\n return;\n this._resetPingTimeout();\n }\n /**\n * Sets and resets ping timeout timer based on server pings.\n *\n * @private\n */\n _resetPingTimeout() {\n this.clearTimeoutFn(this._pingTimeoutTimer);\n const delay = this._pingInterval + this._pingTimeout;\n this._pingTimeoutTime = Date.now() + delay;\n this._pingTimeoutTimer = this.setTimeoutFn(() => {\n this._onClose(\"ping timeout\");\n }, delay);\n if (this.opts.autoUnref) {\n this._pingTimeoutTimer.unref();\n }\n }\n /**\n * Called on `drain` event\n *\n * @private\n */\n _onDrain() {\n this.writeBuffer.splice(0, this._prevBufferLen);\n // setting prevBufferLen = 0 is very important\n // for example, when upgrading, upgrade packet is sent over,\n // and a nonzero prevBufferLen could cause problems on `drain`\n this._prevBufferLen = 0;\n if (0 === this.writeBuffer.length) {\n this.emitReserved(\"drain\");\n }\n else {\n this.flush();\n }\n }\n /**\n * Flush write buffers.\n *\n * @private\n */\n flush() {\n if (\"closed\" !== this.readyState &&\n this.transport.writable &&\n !this.upgrading &&\n this.writeBuffer.length) {\n const packets = this._getWritablePackets();\n this.transport.send(packets);\n // keep track of current length of writeBuffer\n // splice writeBuffer and callbackBuffer on `drain`\n this._prevBufferLen = packets.length;\n this.emitReserved(\"flush\");\n }\n }\n /**\n * Ensure the encoded size of the writeBuffer is below the maxPayload value sent by the server (only for HTTP\n * long-polling)\n *\n * @private\n */\n _getWritablePackets() {\n const shouldCheckPayloadSize = this._maxPayload &&\n this.transport.name === \"polling\" &&\n this.writeBuffer.length > 1;\n if (!shouldCheckPayloadSize) {\n return this.writeBuffer;\n }\n let payloadSize = 1; // first packet type\n for (let i = 0; i < this.writeBuffer.length; i++) {\n const data = this.writeBuffer[i].data;\n if (data) {\n payloadSize += byteLength(data);\n }\n if (i > 0 && payloadSize > this._maxPayload) {\n return this.writeBuffer.slice(0, i);\n }\n payloadSize += 2; // separator + packet type\n }\n return this.writeBuffer;\n }\n /**\n * Checks whether the heartbeat timer has expired but the socket has not yet been notified.\n *\n * Note: this method is private for now because it does not really fit the WebSocket API, but if we put it in the\n * `write()` method then the message would not be buffered by the Socket.IO client.\n *\n * @return {boolean}\n * @private\n */\n /* private */ _hasPingExpired() {\n if (!this._pingTimeoutTime)\n return true;\n const hasExpired = Date.now() > this._pingTimeoutTime;\n if (hasExpired) {\n this._pingTimeoutTime = 0;\n nextTick(() => {\n this._onClose(\"ping timeout\");\n }, this.setTimeoutFn);\n }\n return hasExpired;\n }\n /**\n * Sends a message.\n *\n * @param {String} msg - message.\n * @param {Object} options.\n * @param {Function} fn - callback function.\n * @return {Socket} for chaining.\n */\n write(msg, options, fn) {\n this._sendPacket(\"message\", msg, options, fn);\n return this;\n }\n /**\n * Sends a message. Alias of {@link Socket#write}.\n *\n * @param {String} msg - message.\n * @param {Object} options.\n * @param {Function} fn - callback function.\n * @return {Socket} for chaining.\n */\n send(msg, options, fn) {\n this._sendPacket(\"message\", msg, options, fn);\n return this;\n }\n /**\n * Sends a packet.\n *\n * @param {String} type: packet type.\n * @param {String} data.\n * @param {Object} options.\n * @param {Function} fn - callback function.\n * @private\n */\n _sendPacket(type, data, options, fn) {\n if (\"function\" === typeof data) {\n fn = data;\n data = undefined;\n }\n if (\"function\" === typeof options) {\n fn = options;\n options = null;\n }\n if (\"closing\" === this.readyState || \"closed\" === this.readyState) {\n return;\n }\n options = options || {};\n options.compress = false !== options.compress;\n const packet = {\n type: type,\n data: data,\n options: options,\n };\n this.emitReserved(\"packetCreate\", packet);\n this.writeBuffer.push(packet);\n if (fn)\n this.once(\"flush\", fn);\n this.flush();\n }\n /**\n * Closes the connection.\n */\n close() {\n const close = () => {\n this._onClose(\"forced close\");\n this.transport.close();\n };\n const cleanupAndClose = () => {\n this.off(\"upgrade\", cleanupAndClose);\n this.off(\"upgradeError\", cleanupAndClose);\n close();\n };\n const waitForUpgrade = () => {\n // wait for upgrade to finish since we can't send packets while pausing a transport\n this.once(\"upgrade\", cleanupAndClose);\n this.once(\"upgradeError\", cleanupAndClose);\n };\n if (\"opening\" === this.readyState || \"open\" === this.readyState) {\n this.readyState = \"closing\";\n if (this.writeBuffer.length) {\n this.once(\"drain\", () => {\n if (this.upgrading) {\n waitForUpgrade();\n }\n else {\n close();\n }\n });\n }\n else if (this.upgrading) {\n waitForUpgrade();\n }\n else {\n close();\n }\n }\n return this;\n }\n /**\n * Called upon transport error\n *\n * @private\n */\n _onError(err) {\n SocketWithoutUpgrade.priorWebsocketSuccess = false;\n if (this.opts.tryAllTransports &&\n this.transports.length > 1 &&\n this.readyState === \"opening\") {\n this.transports.shift();\n return this._open();\n }\n this.emitReserved(\"error\", err);\n this._onClose(\"transport error\", err);\n }\n /**\n * Called upon transport close.\n *\n * @private\n */\n _onClose(reason, description) {\n if (\"opening\" === this.readyState ||\n \"open\" === this.readyState ||\n \"closing\" === this.readyState) {\n // clear timers\n this.clearTimeoutFn(this._pingTimeoutTimer);\n // stop event from firing again for transport\n this.transport.removeAllListeners(\"close\");\n // ensure transport won't stay open\n this.transport.close();\n // ignore further transport communication\n this.transport.removeAllListeners();\n if (withEventListeners) {\n if (this._beforeunloadEventListener) {\n removeEventListener(\"beforeunload\", this._beforeunloadEventListener, false);\n }\n if (this._offlineEventListener) {\n const i = OFFLINE_EVENT_LISTENERS.indexOf(this._offlineEventListener);\n if (i !== -1) {\n OFFLINE_EVENT_LISTENERS.splice(i, 1);\n }\n }\n }\n // set ready state\n this.readyState = \"closed\";\n // clear session id\n this.id = null;\n // emit close event\n this.emitReserved(\"close\", reason, description);\n // clean buffers after, so users can still\n // grab the buffers on `close` event\n this.writeBuffer = [];\n this._prevBufferLen = 0;\n }\n }\n}\nSocketWithoutUpgrade.protocol = protocol;\n/**\n * This class provides a WebSocket-like interface to connect to an Engine.IO server. The connection will be established\n * with one of the available low-level transports, like HTTP long-polling, WebSocket or WebTransport.\n *\n * This class comes with an upgrade mechanism, which means that once the connection is established with the first\n * low-level transport, it will try to upgrade to a better transport.\n *\n * In order to allow tree-shaking, there are no transports included, that's why the `transports` option is mandatory.\n *\n * @example\n * import { SocketWithUpgrade, WebSocket } from \"engine.io-client\";\n *\n * const socket = new SocketWithUpgrade({\n * transports: [WebSocket]\n * });\n *\n * socket.on(\"open\", () => {\n * socket.send(\"hello\");\n * });\n *\n * @see SocketWithoutUpgrade\n * @see Socket\n */\nexport class SocketWithUpgrade extends SocketWithoutUpgrade {\n constructor() {\n super(...arguments);\n this._upgrades = [];\n }\n onOpen() {\n super.onOpen();\n if (\"open\" === this.readyState && this.opts.upgrade) {\n for (let i = 0; i < this._upgrades.length; i++) {\n this._probe(this._upgrades[i]);\n }\n }\n }\n /**\n * Probes a transport.\n *\n * @param {String} name - transport name\n * @private\n */\n _probe(name) {\n let transport = this.createTransport(name);\n let failed = false;\n SocketWithoutUpgrade.priorWebsocketSuccess = false;\n const onTransportOpen = () => {\n if (failed)\n return;\n transport.send([{ type: \"ping\", data: \"probe\" }]);\n transport.once(\"packet\", (msg) => {\n if (failed)\n return;\n if (\"pong\" === msg.type && \"probe\" === msg.data) {\n this.upgrading = true;\n this.emitReserved(\"upgrading\", transport);\n if (!transport)\n return;\n SocketWithoutUpgrade.priorWebsocketSuccess =\n \"websocket\" === transport.name;\n this.transport.pause(() => {\n if (failed)\n return;\n if (\"closed\" === this.readyState)\n return;\n cleanup();\n this.setTransport(transport);\n transport.send([{ type: \"upgrade\" }]);\n this.emitReserved(\"upgrade\", transport);\n transport = null;\n this.upgrading = false;\n this.flush();\n });\n }\n else {\n const err = new Error(\"probe error\");\n // @ts-ignore\n err.transport = transport.name;\n this.emitReserved(\"upgradeError\", err);\n }\n });\n };\n function freezeTransport() {\n if (failed)\n return;\n // Any callback called by transport should be ignored since now\n failed = true;\n cleanup();\n transport.close();\n transport = null;\n }\n // Handle any error that happens while probing\n const onerror = (err) => {\n const error = new Error(\"probe error: \" + err);\n // @ts-ignore\n error.transport = transport.name;\n freezeTransport();\n this.emitReserved(\"upgradeError\", error);\n };\n function onTransportClose() {\n onerror(\"transport closed\");\n }\n // When the socket is closed while we're probing\n function onclose() {\n onerror(\"socket closed\");\n }\n // When the socket is upgraded while we're probing\n function onupgrade(to) {\n if (transport && to.name !== transport.name) {\n freezeTransport();\n }\n }\n // Remove all listeners on the transport and on self\n const cleanup = () => {\n transport.removeListener(\"open\", onTransportOpen);\n transport.removeListener(\"error\", onerror);\n transport.removeListener(\"close\", onTransportClose);\n this.off(\"close\", onclose);\n this.off(\"upgrading\", onupgrade);\n };\n transport.once(\"open\", onTransportOpen);\n transport.once(\"error\", onerror);\n transport.once(\"close\", onTransportClose);\n this.once(\"close\", onclose);\n this.once(\"upgrading\", onupgrade);\n if (this._upgrades.indexOf(\"webtransport\") !== -1 &&\n name !== \"webtransport\") {\n // favor WebTransport\n this.setTimeoutFn(() => {\n if (!failed) {\n transport.open();\n }\n }, 200);\n }\n else {\n transport.open();\n }\n }\n onHandshake(data) {\n this._upgrades = this._filterUpgrades(data.upgrades);\n super.onHandshake(data);\n }\n /**\n * Filters upgrades, returning only those matching client transports.\n *\n * @param {Array} upgrades - server upgrades\n * @private\n */\n _filterUpgrades(upgrades) {\n const filteredUpgrades = [];\n for (let i = 0; i < upgrades.length; i++) {\n if (~this.transports.indexOf(upgrades[i]))\n filteredUpgrades.push(upgrades[i]);\n }\n return filteredUpgrades;\n }\n}\n/**\n * This class provides a WebSocket-like interface to connect to an Engine.IO server. The connection will be established\n * with one of the available low-level transports, like HTTP long-polling, WebSocket or WebTransport.\n *\n * This class comes with an upgrade mechanism, which means that once the connection is established with the first\n * low-level transport, it will try to upgrade to a better transport.\n *\n * @example\n * import { Socket } from \"engine.io-client\";\n *\n * const socket = new Socket();\n *\n * socket.on(\"open\", () => {\n * socket.send(\"hello\");\n * });\n *\n * @see SocketWithoutUpgrade\n * @see SocketWithUpgrade\n */\nexport class Socket extends SocketWithUpgrade {\n constructor(uri, opts = {}) {\n const o = typeof uri === \"object\" ? uri : opts;\n if (!o.transports ||\n (o.transports && typeof o.transports[0] === \"string\")) {\n o.transports = (o.transports || [\"polling\", \"websocket\", \"webtransport\"])\n .map((transportName) => DEFAULT_TRANSPORTS[transportName])\n .filter((t) => !!t);\n }\n super(uri, o);\n }\n}\n","import { parse } from \"engine.io-client\";\n/**\n * URL parser.\n *\n * @param uri - url\n * @param path - the request path of the connection\n * @param loc - An object meant to mimic window.location.\n * Defaults to window.location.\n * @public\n */\nexport function url(uri, path = \"\", loc) {\n let obj = uri;\n // default to window.location\n loc = loc || (typeof location !== \"undefined\" && location);\n if (null == uri)\n uri = loc.protocol + \"//\" + loc.host;\n // relative path support\n if (typeof uri === \"string\") {\n if (\"/\" === uri.charAt(0)) {\n if (\"/\" === uri.charAt(1)) {\n uri = loc.protocol + uri;\n }\n else {\n uri = loc.host + uri;\n }\n }\n if (!/^(https?|wss?):\\/\\//.test(uri)) {\n if (\"undefined\" !== typeof loc) {\n uri = loc.protocol + \"//\" + uri;\n }\n else {\n uri = \"https://\" + uri;\n }\n }\n // parse\n obj = parse(uri);\n }\n // make sure we treat `localhost:80` and `localhost` equally\n if (!obj.port) {\n if (/^(http|ws)$/.test(obj.protocol)) {\n obj.port = \"80\";\n }\n else if (/^(http|ws)s$/.test(obj.protocol)) {\n obj.port = \"443\";\n }\n }\n obj.path = obj.path || \"/\";\n const ipv6 = obj.host.indexOf(\":\") !== -1;\n const host = ipv6 ? \"[\" + obj.host + \"]\" : obj.host;\n // define unique id\n obj.id = obj.protocol + \"://\" + host + \":\" + obj.port + path;\n // define href\n obj.href =\n obj.protocol +\n \"://\" +\n host +\n (loc && loc.port === obj.port ? \"\" : \":\" + obj.port);\n return obj;\n}\n","const withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\nconst isView = (obj) => {\n return typeof ArrayBuffer.isView === \"function\"\n ? ArrayBuffer.isView(obj)\n : obj.buffer instanceof ArrayBuffer;\n};\nconst toString = Object.prototype.toString;\nconst withNativeBlob = typeof Blob === \"function\" ||\n (typeof Blob !== \"undefined\" &&\n toString.call(Blob) === \"[object BlobConstructor]\");\nconst withNativeFile = typeof File === \"function\" ||\n (typeof File !== \"undefined\" &&\n toString.call(File) === \"[object FileConstructor]\");\n/**\n * Returns true if obj is a Buffer, an ArrayBuffer, a Blob or a File.\n *\n * @private\n */\nexport function isBinary(obj) {\n return ((withNativeArrayBuffer && (obj instanceof ArrayBuffer || isView(obj))) ||\n (withNativeBlob && obj instanceof Blob) ||\n (withNativeFile && obj instanceof File));\n}\nexport function hasBinary(obj, toJSON) {\n if (!obj || typeof obj !== \"object\") {\n return false;\n }\n if (Array.isArray(obj)) {\n for (let i = 0, l = obj.length; i < l; i++) {\n if (hasBinary(obj[i])) {\n return true;\n }\n }\n return false;\n }\n if (isBinary(obj)) {\n return true;\n }\n if (obj.toJSON &&\n typeof obj.toJSON === \"function\" &&\n arguments.length === 1) {\n return hasBinary(obj.toJSON(), true);\n }\n for (const key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key) && hasBinary(obj[key])) {\n return true;\n }\n }\n return false;\n}\n","import { isBinary } from \"./is-binary.js\";\n/**\n * Replaces every Buffer | ArrayBuffer | Blob | File in packet with a numbered placeholder.\n *\n * @param {Object} packet - socket.io event packet\n * @return {Object} with deconstructed packet and list of buffers\n * @public\n */\nexport function deconstructPacket(packet) {\n const buffers = [];\n const packetData = packet.data;\n const pack = packet;\n pack.data = _deconstructPacket(packetData, buffers);\n pack.attachments = buffers.length; // number of binary 'attachments'\n return { packet: pack, buffers: buffers };\n}\nfunction _deconstructPacket(data, buffers) {\n if (!data)\n return data;\n if (isBinary(data)) {\n const placeholder = { _placeholder: true, num: buffers.length };\n buffers.push(data);\n return placeholder;\n }\n else if (Array.isArray(data)) {\n const newData = new Array(data.length);\n for (let i = 0; i < data.length; i++) {\n newData[i] = _deconstructPacket(data[i], buffers);\n }\n return newData;\n }\n else if (typeof data === \"object\" && !(data instanceof Date)) {\n const newData = {};\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n newData[key] = _deconstructPacket(data[key], buffers);\n }\n }\n return newData;\n }\n return data;\n}\n/**\n * Reconstructs a binary packet from its placeholder packet and buffers\n *\n * @param {Object} packet - event packet with placeholders\n * @param {Array} buffers - binary buffers to put in placeholder positions\n * @return {Object} reconstructed packet\n * @public\n */\nexport function reconstructPacket(packet, buffers) {\n packet.data = _reconstructPacket(packet.data, buffers);\n delete packet.attachments; // no longer useful\n return packet;\n}\nfunction _reconstructPacket(data, buffers) {\n if (!data)\n return data;\n if (data && data._placeholder === true) {\n const isIndexValid = typeof data.num === \"number\" &&\n data.num >= 0 &&\n data.num < buffers.length;\n if (isIndexValid) {\n return buffers[data.num]; // appropriate buffer (should be natural order anyway)\n }\n else {\n throw new Error(\"illegal attachments\");\n }\n }\n else if (Array.isArray(data)) {\n for (let i = 0; i < data.length; i++) {\n data[i] = _reconstructPacket(data[i], buffers);\n }\n }\n else if (typeof data === \"object\") {\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n data[key] = _reconstructPacket(data[key], buffers);\n }\n }\n }\n return data;\n}\n","import { Emitter } from \"@socket.io/component-emitter\";\nimport { deconstructPacket, reconstructPacket } from \"./binary.js\";\nimport { isBinary, hasBinary } from \"./is-binary.js\";\n/**\n * These strings must not be used as event names, as they have a special meaning.\n */\nconst RESERVED_EVENTS = [\n \"connect\",\n \"connect_error\",\n \"disconnect\",\n \"disconnecting\",\n \"newListener\",\n \"removeListener\", // used by the Node.js EventEmitter\n];\n/**\n * Protocol version.\n *\n * @public\n */\nexport const protocol = 5;\nexport var PacketType;\n(function (PacketType) {\n PacketType[PacketType[\"CONNECT\"] = 0] = \"CONNECT\";\n PacketType[PacketType[\"DISCONNECT\"] = 1] = \"DISCONNECT\";\n PacketType[PacketType[\"EVENT\"] = 2] = \"EVENT\";\n PacketType[PacketType[\"ACK\"] = 3] = \"ACK\";\n PacketType[PacketType[\"CONNECT_ERROR\"] = 4] = \"CONNECT_ERROR\";\n PacketType[PacketType[\"BINARY_EVENT\"] = 5] = \"BINARY_EVENT\";\n PacketType[PacketType[\"BINARY_ACK\"] = 6] = \"BINARY_ACK\";\n})(PacketType || (PacketType = {}));\n/**\n * A socket.io Encoder instance\n */\nexport class Encoder {\n /**\n * Encoder constructor\n *\n * @param {function} replacer - custom replacer to pass down to JSON.parse\n */\n constructor(replacer) {\n this.replacer = replacer;\n }\n /**\n * Encode a packet as a single string if non-binary, or as a\n * buffer sequence, depending on packet type.\n *\n * @param {Object} obj - packet object\n */\n encode(obj) {\n if (obj.type === PacketType.EVENT || obj.type === PacketType.ACK) {\n if (hasBinary(obj)) {\n return this.encodeAsBinary({\n type: obj.type === PacketType.EVENT\n ? PacketType.BINARY_EVENT\n : PacketType.BINARY_ACK,\n nsp: obj.nsp,\n data: obj.data,\n id: obj.id,\n });\n }\n }\n return [this.encodeAsString(obj)];\n }\n /**\n * Encode packet as string.\n */\n encodeAsString(obj) {\n // first is type\n let str = \"\" + obj.type;\n // attachments if we have them\n if (obj.type === PacketType.BINARY_EVENT ||\n obj.type === PacketType.BINARY_ACK) {\n str += obj.attachments + \"-\";\n }\n // if we have a namespace other than `/`\n // we append it followed by a comma `,`\n if (obj.nsp && \"/\" !== obj.nsp) {\n str += obj.nsp + \",\";\n }\n // immediately followed by the id\n if (null != obj.id) {\n str += obj.id;\n }\n // json data\n if (null != obj.data) {\n str += JSON.stringify(obj.data, this.replacer);\n }\n return str;\n }\n /**\n * Encode packet as 'buffer sequence' by removing blobs, and\n * deconstructing packet into object with placeholders and\n * a list of buffers.\n */\n encodeAsBinary(obj) {\n const deconstruction = deconstructPacket(obj);\n const pack = this.encodeAsString(deconstruction.packet);\n const buffers = deconstruction.buffers;\n buffers.unshift(pack); // add packet info to beginning of data list\n return buffers; // write all the buffers\n }\n}\n// see https://stackoverflow.com/questions/8511281/check-if-a-value-is-an-object-in-javascript\nfunction isObject(value) {\n return Object.prototype.toString.call(value) === \"[object Object]\";\n}\n/**\n * A socket.io Decoder instance\n *\n * @return {Object} decoder\n */\nexport class Decoder extends Emitter {\n /**\n * Decoder constructor\n *\n * @param {function} reviver - custom reviver to pass down to JSON.stringify\n */\n constructor(reviver) {\n super();\n this.reviver = reviver;\n }\n /**\n * Decodes an encoded packet string into packet JSON.\n *\n * @param {String} obj - encoded packet\n */\n add(obj) {\n let packet;\n if (typeof obj === \"string\") {\n if (this.reconstructor) {\n throw new Error(\"got plaintext data when reconstructing a packet\");\n }\n packet = this.decodeString(obj);\n const isBinaryEvent = packet.type === PacketType.BINARY_EVENT;\n if (isBinaryEvent || packet.type === PacketType.BINARY_ACK) {\n packet.type = isBinaryEvent ? PacketType.EVENT : PacketType.ACK;\n // binary packet's json\n this.reconstructor = new BinaryReconstructor(packet);\n // no attachments, labeled binary but no binary data to follow\n if (packet.attachments === 0) {\n super.emitReserved(\"decoded\", packet);\n }\n }\n else {\n // non-binary full packet\n super.emitReserved(\"decoded\", packet);\n }\n }\n else if (isBinary(obj) || obj.base64) {\n // raw binary data\n if (!this.reconstructor) {\n throw new Error(\"got binary data when not reconstructing a packet\");\n }\n else {\n packet = this.reconstructor.takeBinaryData(obj);\n if (packet) {\n // received final buffer\n this.reconstructor = null;\n super.emitReserved(\"decoded\", packet);\n }\n }\n }\n else {\n throw new Error(\"Unknown type: \" + obj);\n }\n }\n /**\n * Decode a packet String (JSON data)\n *\n * @param {String} str\n * @return {Object} packet\n */\n decodeString(str) {\n let i = 0;\n // look up type\n const p = {\n type: Number(str.charAt(0)),\n };\n if (PacketType[p.type] === undefined) {\n throw new Error(\"unknown packet type \" + p.type);\n }\n // look up attachments if type binary\n if (p.type === PacketType.BINARY_EVENT ||\n p.type === PacketType.BINARY_ACK) {\n const start = i + 1;\n while (str.charAt(++i) !== \"-\" && i != str.length) { }\n const buf = str.substring(start, i);\n if (buf != Number(buf) || str.charAt(i) !== \"-\") {\n throw new Error(\"Illegal attachments\");\n }\n p.attachments = Number(buf);\n }\n // look up namespace (if any)\n if (\"/\" === str.charAt(i + 1)) {\n const start = i + 1;\n while (++i) {\n const c = str.charAt(i);\n if (\",\" === c)\n break;\n if (i === str.length)\n break;\n }\n p.nsp = str.substring(start, i);\n }\n else {\n p.nsp = \"/\";\n }\n // look up id\n const next = str.charAt(i + 1);\n if (\"\" !== next && Number(next) == next) {\n const start = i + 1;\n while (++i) {\n const c = str.charAt(i);\n if (null == c || Number(c) != c) {\n --i;\n break;\n }\n if (i === str.length)\n break;\n }\n p.id = Number(str.substring(start, i + 1));\n }\n // look up json data\n if (str.charAt(++i)) {\n const payload = this.tryParse(str.substr(i));\n if (Decoder.isPayloadValid(p.type, payload)) {\n p.data = payload;\n }\n else {\n throw new Error(\"invalid payload\");\n }\n }\n return p;\n }\n tryParse(str) {\n try {\n return JSON.parse(str, this.reviver);\n }\n catch (e) {\n return false;\n }\n }\n static isPayloadValid(type, payload) {\n switch (type) {\n case PacketType.CONNECT:\n return isObject(payload);\n case PacketType.DISCONNECT:\n return payload === undefined;\n case PacketType.CONNECT_ERROR:\n return typeof payload === \"string\" || isObject(payload);\n case PacketType.EVENT:\n case PacketType.BINARY_EVENT:\n return (Array.isArray(payload) &&\n (typeof payload[0] === \"number\" ||\n (typeof payload[0] === \"string\" &&\n RESERVED_EVENTS.indexOf(payload[0]) === -1)));\n case PacketType.ACK:\n case PacketType.BINARY_ACK:\n return Array.isArray(payload);\n }\n }\n /**\n * Deallocates a parser's resources\n */\n destroy() {\n if (this.reconstructor) {\n this.reconstructor.finishedReconstruction();\n this.reconstructor = null;\n }\n }\n}\n/**\n * A manager of a binary event's 'buffer sequence'. Should\n * be constructed whenever a packet of type BINARY_EVENT is\n * decoded.\n *\n * @param {Object} packet\n * @return {BinaryReconstructor} initialized reconstructor\n */\nclass BinaryReconstructor {\n constructor(packet) {\n this.packet = packet;\n this.buffers = [];\n this.reconPack = packet;\n }\n /**\n * Method to be called when binary data received from connection\n * after a BINARY_EVENT packet.\n *\n * @param {Buffer | ArrayBuffer} binData - the raw binary data received\n * @return {null | Object} returns null if more binary data is expected or\n * a reconstructed packet object if all buffers have been received.\n */\n takeBinaryData(binData) {\n this.buffers.push(binData);\n if (this.buffers.length === this.reconPack.attachments) {\n // done with buffer list\n const packet = reconstructPacket(this.reconPack, this.buffers);\n this.finishedReconstruction();\n return packet;\n }\n return null;\n }\n /**\n * Cleans up binary packet reconstruction variables.\n */\n finishedReconstruction() {\n this.reconPack = null;\n this.buffers = [];\n }\n}\n","export function on(obj, ev, fn) {\n obj.on(ev, fn);\n return function subDestroy() {\n obj.off(ev, fn);\n };\n}\n","import { PacketType } from \"socket.io-parser\";\nimport { on } from \"./on.js\";\nimport { Emitter, } from \"@socket.io/component-emitter\";\n/**\n * Internal events.\n * These events can't be emitted by the user.\n */\nconst RESERVED_EVENTS = Object.freeze({\n connect: 1,\n connect_error: 1,\n disconnect: 1,\n disconnecting: 1,\n // EventEmitter reserved events: https://nodejs.org/api/events.html#events_event_newlistener\n newListener: 1,\n removeListener: 1,\n});\n/**\n * A Socket is the fundamental class for interacting with the server.\n *\n * A Socket belongs to a certain Namespace (by default /) and uses an underlying {@link Manager} to communicate.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(\"connected\");\n * });\n *\n * // send an event to the server\n * socket.emit(\"foo\", \"bar\");\n *\n * socket.on(\"foobar\", () => {\n * // an event was received from the server\n * });\n *\n * // upon disconnection\n * socket.on(\"disconnect\", (reason) => {\n * console.log(`disconnected due to ${reason}`);\n * });\n */\nexport class Socket extends Emitter {\n /**\n * `Socket` constructor.\n */\n constructor(io, nsp, opts) {\n super();\n /**\n * Whether the socket is currently connected to the server.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(socket.connected); // true\n * });\n *\n * socket.on(\"disconnect\", () => {\n * console.log(socket.connected); // false\n * });\n */\n this.connected = false;\n /**\n * Whether the connection state was recovered after a temporary disconnection. In that case, any missed packets will\n * be transmitted by the server.\n */\n this.recovered = false;\n /**\n * Buffer for packets received before the CONNECT packet\n */\n this.receiveBuffer = [];\n /**\n * Buffer for packets that will be sent once the socket is connected\n */\n this.sendBuffer = [];\n /**\n * The queue of packets to be sent with retry in case of failure.\n *\n * Packets are sent one by one, each waiting for the server acknowledgement, in order to guarantee the delivery order.\n * @private\n */\n this._queue = [];\n /**\n * A sequence to generate the ID of the {@link QueuedPacket}.\n * @private\n */\n this._queueSeq = 0;\n this.ids = 0;\n /**\n * A map containing acknowledgement handlers.\n *\n * The `withError` attribute is used to differentiate handlers that accept an error as first argument:\n *\n * - `socket.emit(\"test\", (err, value) => { ... })` with `ackTimeout` option\n * - `socket.timeout(5000).emit(\"test\", (err, value) => { ... })`\n * - `const value = await socket.emitWithAck(\"test\")`\n *\n * From those that don't:\n *\n * - `socket.emit(\"test\", (value) => { ... });`\n *\n * In the first case, the handlers will be called with an error when:\n *\n * - the timeout is reached\n * - the socket gets disconnected\n *\n * In the second case, the handlers will be simply discarded upon disconnection, since the client will never receive\n * an acknowledgement from the server.\n *\n * @private\n */\n this.acks = {};\n this.flags = {};\n this.io = io;\n this.nsp = nsp;\n if (opts && opts.auth) {\n this.auth = opts.auth;\n }\n this._opts = Object.assign({}, opts);\n if (this.io._autoConnect)\n this.open();\n }\n /**\n * Whether the socket is currently disconnected\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(socket.disconnected); // false\n * });\n *\n * socket.on(\"disconnect\", () => {\n * console.log(socket.disconnected); // true\n * });\n */\n get disconnected() {\n return !this.connected;\n }\n /**\n * Subscribe to open, close and packet events\n *\n * @private\n */\n subEvents() {\n if (this.subs)\n return;\n const io = this.io;\n this.subs = [\n on(io, \"open\", this.onopen.bind(this)),\n on(io, \"packet\", this.onpacket.bind(this)),\n on(io, \"error\", this.onerror.bind(this)),\n on(io, \"close\", this.onclose.bind(this)),\n ];\n }\n /**\n * Whether the Socket will try to reconnect when its Manager connects or reconnects.\n *\n * @example\n * const socket = io();\n *\n * console.log(socket.active); // true\n *\n * socket.on(\"disconnect\", (reason) => {\n * if (reason === \"io server disconnect\") {\n * // the disconnection was initiated by the server, you need to manually reconnect\n * console.log(socket.active); // false\n * }\n * // else the socket will automatically try to reconnect\n * console.log(socket.active); // true\n * });\n */\n get active() {\n return !!this.subs;\n }\n /**\n * \"Opens\" the socket.\n *\n * @example\n * const socket = io({\n * autoConnect: false\n * });\n *\n * socket.connect();\n */\n connect() {\n if (this.connected)\n return this;\n this.subEvents();\n if (!this.io[\"_reconnecting\"])\n this.io.open(); // ensure open\n if (\"open\" === this.io._readyState)\n this.onopen();\n return this;\n }\n /**\n * Alias for {@link connect()}.\n */\n open() {\n return this.connect();\n }\n /**\n * Sends a `message` event.\n *\n * This method mimics the WebSocket.send() method.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/send\n *\n * @example\n * socket.send(\"hello\");\n *\n * // this is equivalent to\n * socket.emit(\"message\", \"hello\");\n *\n * @return self\n */\n send(...args) {\n args.unshift(\"message\");\n this.emit.apply(this, args);\n return this;\n }\n /**\n * Override `emit`.\n * If the event is in `events`, it's emitted normally.\n *\n * @example\n * socket.emit(\"hello\", \"world\");\n *\n * // all serializable datastructures are supported (no need to call JSON.stringify)\n * socket.emit(\"hello\", 1, \"2\", { 3: [\"4\"], 5: Uint8Array.from([6]) });\n *\n * // with an acknowledgement from the server\n * socket.emit(\"hello\", \"world\", (val) => {\n * // ...\n * });\n *\n * @return self\n */\n emit(ev, ...args) {\n var _a, _b, _c;\n if (RESERVED_EVENTS.hasOwnProperty(ev)) {\n throw new Error('\"' + ev.toString() + '\" is a reserved event name');\n }\n args.unshift(ev);\n if (this._opts.retries && !this.flags.fromQueue && !this.flags.volatile) {\n this._addToQueue(args);\n return this;\n }\n const packet = {\n type: PacketType.EVENT,\n data: args,\n };\n packet.options = {};\n packet.options.compress = this.flags.compress !== false;\n // event ack callback\n if (\"function\" === typeof args[args.length - 1]) {\n const id = this.ids++;\n const ack = args.pop();\n this._registerAckCallback(id, ack);\n packet.id = id;\n }\n const isTransportWritable = (_b = (_a = this.io.engine) === null || _a === void 0 ? void 0 : _a.transport) === null || _b === void 0 ? void 0 : _b.writable;\n const isConnected = this.connected && !((_c = this.io.engine) === null || _c === void 0 ? void 0 : _c._hasPingExpired());\n const discardPacket = this.flags.volatile && !isTransportWritable;\n if (discardPacket) {\n }\n else if (isConnected) {\n this.notifyOutgoingListeners(packet);\n this.packet(packet);\n }\n else {\n this.sendBuffer.push(packet);\n }\n this.flags = {};\n return this;\n }\n /**\n * @private\n */\n _registerAckCallback(id, ack) {\n var _a;\n const timeout = (_a = this.flags.timeout) !== null && _a !== void 0 ? _a : this._opts.ackTimeout;\n if (timeout === undefined) {\n this.acks[id] = ack;\n return;\n }\n // @ts-ignore\n const timer = this.io.setTimeoutFn(() => {\n delete this.acks[id];\n for (let i = 0; i < this.sendBuffer.length; i++) {\n if (this.sendBuffer[i].id === id) {\n this.sendBuffer.splice(i, 1);\n }\n }\n ack.call(this, new Error(\"operation has timed out\"));\n }, timeout);\n const fn = (...args) => {\n // @ts-ignore\n this.io.clearTimeoutFn(timer);\n ack.apply(this, args);\n };\n fn.withError = true;\n this.acks[id] = fn;\n }\n /**\n * Emits an event and waits for an acknowledgement\n *\n * @example\n * // without timeout\n * const response = await socket.emitWithAck(\"hello\", \"world\");\n *\n * // with a specific timeout\n * try {\n * const response = await socket.timeout(1000).emitWithAck(\"hello\", \"world\");\n * } catch (err) {\n * // the server did not acknowledge the event in the given delay\n * }\n *\n * @return a Promise that will be fulfilled when the server acknowledges the event\n */\n emitWithAck(ev, ...args) {\n return new Promise((resolve, reject) => {\n const fn = (arg1, arg2) => {\n return arg1 ? reject(arg1) : resolve(arg2);\n };\n fn.withError = true;\n args.push(fn);\n this.emit(ev, ...args);\n });\n }\n /**\n * Add the packet to the queue.\n * @param args\n * @private\n */\n _addToQueue(args) {\n let ack;\n if (typeof args[args.length - 1] === \"function\") {\n ack = args.pop();\n }\n const packet = {\n id: this._queueSeq++,\n tryCount: 0,\n pending: false,\n args,\n flags: Object.assign({ fromQueue: true }, this.flags),\n };\n args.push((err, ...responseArgs) => {\n if (packet !== this._queue[0]) {\n // the packet has already been acknowledged\n return;\n }\n const hasError = err !== null;\n if (hasError) {\n if (packet.tryCount > this._opts.retries) {\n this._queue.shift();\n if (ack) {\n ack(err);\n }\n }\n }\n else {\n this._queue.shift();\n if (ack) {\n ack(null, ...responseArgs);\n }\n }\n packet.pending = false;\n return this._drainQueue();\n });\n this._queue.push(packet);\n this._drainQueue();\n }\n /**\n * Send the first packet of the queue, and wait for an acknowledgement from the server.\n * @param force - whether to resend a packet that has not been acknowledged yet\n *\n * @private\n */\n _drainQueue(force = false) {\n if (!this.connected || this._queue.length === 0) {\n return;\n }\n const packet = this._queue[0];\n if (packet.pending && !force) {\n return;\n }\n packet.pending = true;\n packet.tryCount++;\n this.flags = packet.flags;\n this.emit.apply(this, packet.args);\n }\n /**\n * Sends a packet.\n *\n * @param packet\n * @private\n */\n packet(packet) {\n packet.nsp = this.nsp;\n this.io._packet(packet);\n }\n /**\n * Called upon engine `open`.\n *\n * @private\n */\n onopen() {\n if (typeof this.auth == \"function\") {\n this.auth((data) => {\n this._sendConnectPacket(data);\n });\n }\n else {\n this._sendConnectPacket(this.auth);\n }\n }\n /**\n * Sends a CONNECT packet to initiate the Socket.IO session.\n *\n * @param data\n * @private\n */\n _sendConnectPacket(data) {\n this.packet({\n type: PacketType.CONNECT,\n data: this._pid\n ? Object.assign({ pid: this._pid, offset: this._lastOffset }, data)\n : data,\n });\n }\n /**\n * Called upon engine or manager `error`.\n *\n * @param err\n * @private\n */\n onerror(err) {\n if (!this.connected) {\n this.emitReserved(\"connect_error\", err);\n }\n }\n /**\n * Called upon engine `close`.\n *\n * @param reason\n * @param description\n * @private\n */\n onclose(reason, description) {\n this.connected = false;\n delete this.id;\n this.emitReserved(\"disconnect\", reason, description);\n this._clearAcks();\n }\n /**\n * Clears the acknowledgement handlers upon disconnection, since the client will never receive an acknowledgement from\n * the server.\n *\n * @private\n */\n _clearAcks() {\n Object.keys(this.acks).forEach((id) => {\n const isBuffered = this.sendBuffer.some((packet) => String(packet.id) === id);\n if (!isBuffered) {\n // note: handlers that do not accept an error as first argument are ignored here\n const ack = this.acks[id];\n delete this.acks[id];\n if (ack.withError) {\n ack.call(this, new Error(\"socket has been disconnected\"));\n }\n }\n });\n }\n /**\n * Called with socket packet.\n *\n * @param packet\n * @private\n */\n onpacket(packet) {\n const sameNamespace = packet.nsp === this.nsp;\n if (!sameNamespace)\n return;\n switch (packet.type) {\n case PacketType.CONNECT:\n if (packet.data && packet.data.sid) {\n this.onconnect(packet.data.sid, packet.data.pid);\n }\n else {\n this.emitReserved(\"connect_error\", new Error(\"It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)\"));\n }\n break;\n case PacketType.EVENT:\n case PacketType.BINARY_EVENT:\n this.onevent(packet);\n break;\n case PacketType.ACK:\n case PacketType.BINARY_ACK:\n this.onack(packet);\n break;\n case PacketType.DISCONNECT:\n this.ondisconnect();\n break;\n case PacketType.CONNECT_ERROR:\n this.destroy();\n const err = new Error(packet.data.message);\n // @ts-ignore\n err.data = packet.data.data;\n this.emitReserved(\"connect_error\", err);\n break;\n }\n }\n /**\n * Called upon a server event.\n *\n * @param packet\n * @private\n */\n onevent(packet) {\n const args = packet.data || [];\n if (null != packet.id) {\n args.push(this.ack(packet.id));\n }\n if (this.connected) {\n this.emitEvent(args);\n }\n else {\n this.receiveBuffer.push(Object.freeze(args));\n }\n }\n emitEvent(args) {\n if (this._anyListeners && this._anyListeners.length) {\n const listeners = this._anyListeners.slice();\n for (const listener of listeners) {\n listener.apply(this, args);\n }\n }\n super.emit.apply(this, args);\n if (this._pid && args.length && typeof args[args.length - 1] === \"string\") {\n this._lastOffset = args[args.length - 1];\n }\n }\n /**\n * Produces an ack callback to emit with an event.\n *\n * @private\n */\n ack(id) {\n const self = this;\n let sent = false;\n return function (...args) {\n // prevent double callbacks\n if (sent)\n return;\n sent = true;\n self.packet({\n type: PacketType.ACK,\n id: id,\n data: args,\n });\n };\n }\n /**\n * Called upon a server acknowledgement.\n *\n * @param packet\n * @private\n */\n onack(packet) {\n const ack = this.acks[packet.id];\n if (typeof ack !== \"function\") {\n return;\n }\n delete this.acks[packet.id];\n // @ts-ignore FIXME ack is incorrectly inferred as 'never'\n if (ack.withError) {\n packet.data.unshift(null);\n }\n // @ts-ignore\n ack.apply(this, packet.data);\n }\n /**\n * Called upon server connect.\n *\n * @private\n */\n onconnect(id, pid) {\n this.id = id;\n this.recovered = pid && this._pid === pid;\n this._pid = pid; // defined only if connection state recovery is enabled\n this.connected = true;\n this.emitBuffered();\n this.emitReserved(\"connect\");\n this._drainQueue(true);\n }\n /**\n * Emit buffered events (received and emitted).\n *\n * @private\n */\n emitBuffered() {\n this.receiveBuffer.forEach((args) => this.emitEvent(args));\n this.receiveBuffer = [];\n this.sendBuffer.forEach((packet) => {\n this.notifyOutgoingListeners(packet);\n this.packet(packet);\n });\n this.sendBuffer = [];\n }\n /**\n * Called upon server disconnect.\n *\n * @private\n */\n ondisconnect() {\n this.destroy();\n this.onclose(\"io server disconnect\");\n }\n /**\n * Called upon forced client/server side disconnections,\n * this method ensures the manager stops tracking us and\n * that reconnections don't get triggered for this.\n *\n * @private\n */\n destroy() {\n if (this.subs) {\n // clean subscriptions to avoid reconnections\n this.subs.forEach((subDestroy) => subDestroy());\n this.subs = undefined;\n }\n this.io[\"_destroy\"](this);\n }\n /**\n * Disconnects the socket manually. In that case, the socket will not try to reconnect.\n *\n * If this is the last active Socket instance of the {@link Manager}, the low-level connection will be closed.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"disconnect\", (reason) => {\n * // console.log(reason); prints \"io client disconnect\"\n * });\n *\n * socket.disconnect();\n *\n * @return self\n */\n disconnect() {\n if (this.connected) {\n this.packet({ type: PacketType.DISCONNECT });\n }\n // remove socket from pool\n this.destroy();\n if (this.connected) {\n // fire events\n this.onclose(\"io client disconnect\");\n }\n return this;\n }\n /**\n * Alias for {@link disconnect()}.\n *\n * @return self\n */\n close() {\n return this.disconnect();\n }\n /**\n * Sets the compress flag.\n *\n * @example\n * socket.compress(false).emit(\"hello\");\n *\n * @param compress - if `true`, compresses the sending data\n * @return self\n */\n compress(compress) {\n this.flags.compress = compress;\n return this;\n }\n /**\n * Sets a modifier for a subsequent event emission that the event message will be dropped when this socket is not\n * ready to send messages.\n *\n * @example\n * socket.volatile.emit(\"hello\"); // the server may or may not receive it\n *\n * @returns self\n */\n get volatile() {\n this.flags.volatile = true;\n return this;\n }\n /**\n * Sets a modifier for a subsequent event emission that the callback will be called with an error when the\n * given number of milliseconds have elapsed without an acknowledgement from the server:\n *\n * @example\n * socket.timeout(5000).emit(\"my-event\", (err) => {\n * if (err) {\n * // the server did not acknowledge the event in the given delay\n * }\n * });\n *\n * @returns self\n */\n timeout(timeout) {\n this.flags.timeout = timeout;\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback.\n *\n * @example\n * socket.onAny((event, ...args) => {\n * console.log(`got ${event}`);\n * });\n *\n * @param listener\n */\n onAny(listener) {\n this._anyListeners = this._anyListeners || [];\n this._anyListeners.push(listener);\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback. The listener is added to the beginning of the listeners array.\n *\n * @example\n * socket.prependAny((event, ...args) => {\n * console.log(`got event ${event}`);\n * });\n *\n * @param listener\n */\n prependAny(listener) {\n this._anyListeners = this._anyListeners || [];\n this._anyListeners.unshift(listener);\n return this;\n }\n /**\n * Removes the listener that will be fired when any event is emitted.\n *\n * @example\n * const catchAllListener = (event, ...args) => {\n * console.log(`got event ${event}`);\n * }\n *\n * socket.onAny(catchAllListener);\n *\n * // remove a specific listener\n * socket.offAny(catchAllListener);\n *\n * // or remove all listeners\n * socket.offAny();\n *\n * @param listener\n */\n offAny(listener) {\n if (!this._anyListeners) {\n return this;\n }\n if (listener) {\n const listeners = this._anyListeners;\n for (let i = 0; i < listeners.length; i++) {\n if (listener === listeners[i]) {\n listeners.splice(i, 1);\n return this;\n }\n }\n }\n else {\n this._anyListeners = [];\n }\n return this;\n }\n /**\n * Returns an array of listeners that are listening for any event that is specified. This array can be manipulated,\n * e.g. to remove listeners.\n */\n listenersAny() {\n return this._anyListeners || [];\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback.\n *\n * Note: acknowledgements sent to the server are not included.\n *\n * @example\n * socket.onAnyOutgoing((event, ...args) => {\n * console.log(`sent event ${event}`);\n * });\n *\n * @param listener\n */\n onAnyOutgoing(listener) {\n this._anyOutgoingListeners = this._anyOutgoingListeners || [];\n this._anyOutgoingListeners.push(listener);\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback. The listener is added to the beginning of the listeners array.\n *\n * Note: acknowledgements sent to the server are not included.\n *\n * @example\n * socket.prependAnyOutgoing((event, ...args) => {\n * console.log(`sent event ${event}`);\n * });\n *\n * @param listener\n */\n prependAnyOutgoing(listener) {\n this._anyOutgoingListeners = this._anyOutgoingListeners || [];\n this._anyOutgoingListeners.unshift(listener);\n return this;\n }\n /**\n * Removes the listener that will be fired when any event is emitted.\n *\n * @example\n * const catchAllListener = (event, ...args) => {\n * console.log(`sent event ${event}`);\n * }\n *\n * socket.onAnyOutgoing(catchAllListener);\n *\n * // remove a specific listener\n * socket.offAnyOutgoing(catchAllListener);\n *\n * // or remove all listeners\n * socket.offAnyOutgoing();\n *\n * @param [listener] - the catch-all listener (optional)\n */\n offAnyOutgoing(listener) {\n if (!this._anyOutgoingListeners) {\n return this;\n }\n if (listener) {\n const listeners = this._anyOutgoingListeners;\n for (let i = 0; i < listeners.length; i++) {\n if (listener === listeners[i]) {\n listeners.splice(i, 1);\n return this;\n }\n }\n }\n else {\n this._anyOutgoingListeners = [];\n }\n return this;\n }\n /**\n * Returns an array of listeners that are listening for any event that is specified. This array can be manipulated,\n * e.g. to remove listeners.\n */\n listenersAnyOutgoing() {\n return this._anyOutgoingListeners || [];\n }\n /**\n * Notify the listeners for each packet sent\n *\n * @param packet\n *\n * @private\n */\n notifyOutgoingListeners(packet) {\n if (this._anyOutgoingListeners && this._anyOutgoingListeners.length) {\n const listeners = this._anyOutgoingListeners.slice();\n for (const listener of listeners) {\n listener.apply(this, packet.data);\n }\n }\n }\n}\n","/**\n * Initialize backoff timer with `opts`.\n *\n * - `min` initial timeout in milliseconds [100]\n * - `max` max timeout [10000]\n * - `jitter` [0]\n * - `factor` [2]\n *\n * @param {Object} opts\n * @api public\n */\nexport function Backoff(opts) {\n opts = opts || {};\n this.ms = opts.min || 100;\n this.max = opts.max || 10000;\n this.factor = opts.factor || 2;\n this.jitter = opts.jitter > 0 && opts.jitter <= 1 ? opts.jitter : 0;\n this.attempts = 0;\n}\n/**\n * Return the backoff duration.\n *\n * @return {Number}\n * @api public\n */\nBackoff.prototype.duration = function () {\n var ms = this.ms * Math.pow(this.factor, this.attempts++);\n if (this.jitter) {\n var rand = Math.random();\n var deviation = Math.floor(rand * this.jitter * ms);\n ms = (Math.floor(rand * 10) & 1) == 0 ? ms - deviation : ms + deviation;\n }\n return Math.min(ms, this.max) | 0;\n};\n/**\n * Reset the number of attempts.\n *\n * @api public\n */\nBackoff.prototype.reset = function () {\n this.attempts = 0;\n};\n/**\n * Set the minimum duration\n *\n * @api public\n */\nBackoff.prototype.setMin = function (min) {\n this.ms = min;\n};\n/**\n * Set the maximum duration\n *\n * @api public\n */\nBackoff.prototype.setMax = function (max) {\n this.max = max;\n};\n/**\n * Set the jitter\n *\n * @api public\n */\nBackoff.prototype.setJitter = function (jitter) {\n this.jitter = jitter;\n};\n","import { Socket as Engine, installTimerFunctions, nextTick, } from \"engine.io-client\";\nimport { Socket } from \"./socket.js\";\nimport * as parser from \"socket.io-parser\";\nimport { on } from \"./on.js\";\nimport { Backoff } from \"./contrib/backo2.js\";\nimport { Emitter, } from \"@socket.io/component-emitter\";\nexport class Manager extends Emitter {\n constructor(uri, opts) {\n var _a;\n super();\n this.nsps = {};\n this.subs = [];\n if (uri && \"object\" === typeof uri) {\n opts = uri;\n uri = undefined;\n }\n opts = opts || {};\n opts.path = opts.path || \"/socket.io\";\n this.opts = opts;\n installTimerFunctions(this, opts);\n this.reconnection(opts.reconnection !== false);\n this.reconnectionAttempts(opts.reconnectionAttempts || Infinity);\n this.reconnectionDelay(opts.reconnectionDelay || 1000);\n this.reconnectionDelayMax(opts.reconnectionDelayMax || 5000);\n this.randomizationFactor((_a = opts.randomizationFactor) !== null && _a !== void 0 ? _a : 0.5);\n this.backoff = new Backoff({\n min: this.reconnectionDelay(),\n max: this.reconnectionDelayMax(),\n jitter: this.randomizationFactor(),\n });\n this.timeout(null == opts.timeout ? 20000 : opts.timeout);\n this._readyState = \"closed\";\n this.uri = uri;\n const _parser = opts.parser || parser;\n this.encoder = new _parser.Encoder();\n this.decoder = new _parser.Decoder();\n this._autoConnect = opts.autoConnect !== false;\n if (this._autoConnect)\n this.open();\n }\n reconnection(v) {\n if (!arguments.length)\n return this._reconnection;\n this._reconnection = !!v;\n if (!v) {\n this.skipReconnect = true;\n }\n return this;\n }\n reconnectionAttempts(v) {\n if (v === undefined)\n return this._reconnectionAttempts;\n this._reconnectionAttempts = v;\n return this;\n }\n reconnectionDelay(v) {\n var _a;\n if (v === undefined)\n return this._reconnectionDelay;\n this._reconnectionDelay = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setMin(v);\n return this;\n }\n randomizationFactor(v) {\n var _a;\n if (v === undefined)\n return this._randomizationFactor;\n this._randomizationFactor = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setJitter(v);\n return this;\n }\n reconnectionDelayMax(v) {\n var _a;\n if (v === undefined)\n return this._reconnectionDelayMax;\n this._reconnectionDelayMax = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setMax(v);\n return this;\n }\n timeout(v) {\n if (!arguments.length)\n return this._timeout;\n this._timeout = v;\n return this;\n }\n /**\n * Starts trying to reconnect if reconnection is enabled and we have not\n * started reconnecting yet\n *\n * @private\n */\n maybeReconnectOnOpen() {\n // Only try to reconnect if it's the first time we're connecting\n if (!this._reconnecting &&\n this._reconnection &&\n this.backoff.attempts === 0) {\n // keeps reconnection from firing twice for the same reconnection loop\n this.reconnect();\n }\n }\n /**\n * Sets the current transport `socket`.\n *\n * @param {Function} fn - optional, callback\n * @return self\n * @public\n */\n open(fn) {\n if (~this._readyState.indexOf(\"open\"))\n return this;\n this.engine = new Engine(this.uri, this.opts);\n const socket = this.engine;\n const self = this;\n this._readyState = \"opening\";\n this.skipReconnect = false;\n // emit `open`\n const openSubDestroy = on(socket, \"open\", function () {\n self.onopen();\n fn && fn();\n });\n const onError = (err) => {\n this.cleanup();\n this._readyState = \"closed\";\n this.emitReserved(\"error\", err);\n if (fn) {\n fn(err);\n }\n else {\n // Only do this if there is no fn to handle the error\n this.maybeReconnectOnOpen();\n }\n };\n // emit `error`\n const errorSub = on(socket, \"error\", onError);\n if (false !== this._timeout) {\n const timeout = this._timeout;\n // set timer\n const timer = this.setTimeoutFn(() => {\n openSubDestroy();\n onError(new Error(\"timeout\"));\n socket.close();\n }, timeout);\n if (this.opts.autoUnref) {\n timer.unref();\n }\n this.subs.push(() => {\n this.clearTimeoutFn(timer);\n });\n }\n this.subs.push(openSubDestroy);\n this.subs.push(errorSub);\n return this;\n }\n /**\n * Alias for open()\n *\n * @return self\n * @public\n */\n connect(fn) {\n return this.open(fn);\n }\n /**\n * Called upon transport open.\n *\n * @private\n */\n onopen() {\n // clear old subs\n this.cleanup();\n // mark as open\n this._readyState = \"open\";\n this.emitReserved(\"open\");\n // add new subs\n const socket = this.engine;\n this.subs.push(on(socket, \"ping\", this.onping.bind(this)), on(socket, \"data\", this.ondata.bind(this)), on(socket, \"error\", this.onerror.bind(this)), on(socket, \"close\", this.onclose.bind(this)), \n // @ts-ignore\n on(this.decoder, \"decoded\", this.ondecoded.bind(this)));\n }\n /**\n * Called upon a ping.\n *\n * @private\n */\n onping() {\n this.emitReserved(\"ping\");\n }\n /**\n * Called with data.\n *\n * @private\n */\n ondata(data) {\n try {\n this.decoder.add(data);\n }\n catch (e) {\n this.onclose(\"parse error\", e);\n }\n }\n /**\n * Called when parser fully decodes a packet.\n *\n * @private\n */\n ondecoded(packet) {\n // the nextTick call prevents an exception in a user-provided event listener from triggering a disconnection due to a \"parse error\"\n nextTick(() => {\n this.emitReserved(\"packet\", packet);\n }, this.setTimeoutFn);\n }\n /**\n * Called upon socket error.\n *\n * @private\n */\n onerror(err) {\n this.emitReserved(\"error\", err);\n }\n /**\n * Creates a new socket for the given `nsp`.\n *\n * @return {Socket}\n * @public\n */\n socket(nsp, opts) {\n let socket = this.nsps[nsp];\n if (!socket) {\n socket = new Socket(this, nsp, opts);\n this.nsps[nsp] = socket;\n }\n else if (this._autoConnect && !socket.active) {\n socket.connect();\n }\n return socket;\n }\n /**\n * Called upon a socket close.\n *\n * @param socket\n * @private\n */\n _destroy(socket) {\n const nsps = Object.keys(this.nsps);\n for (const nsp of nsps) {\n const socket = this.nsps[nsp];\n if (socket.active) {\n return;\n }\n }\n this._close();\n }\n /**\n * Writes a packet.\n *\n * @param packet\n * @private\n */\n _packet(packet) {\n const encodedPackets = this.encoder.encode(packet);\n for (let i = 0; i < encodedPackets.length; i++) {\n this.engine.write(encodedPackets[i], packet.options);\n }\n }\n /**\n * Clean up transport subscriptions and packet buffer.\n *\n * @private\n */\n cleanup() {\n this.subs.forEach((subDestroy) => subDestroy());\n this.subs.length = 0;\n this.decoder.destroy();\n }\n /**\n * Close the current socket.\n *\n * @private\n */\n _close() {\n this.skipReconnect = true;\n this._reconnecting = false;\n this.onclose(\"forced close\");\n }\n /**\n * Alias for close()\n *\n * @private\n */\n disconnect() {\n return this._close();\n }\n /**\n * Called when:\n *\n * - the low-level engine is closed\n * - the parser encountered a badly formatted packet\n * - all sockets are disconnected\n *\n * @private\n */\n onclose(reason, description) {\n var _a;\n this.cleanup();\n (_a = this.engine) === null || _a === void 0 ? void 0 : _a.close();\n this.backoff.reset();\n this._readyState = \"closed\";\n this.emitReserved(\"close\", reason, description);\n if (this._reconnection && !this.skipReconnect) {\n this.reconnect();\n }\n }\n /**\n * Attempt a reconnection.\n *\n * @private\n */\n reconnect() {\n if (this._reconnecting || this.skipReconnect)\n return this;\n const self = this;\n if (this.backoff.attempts >= this._reconnectionAttempts) {\n this.backoff.reset();\n this.emitReserved(\"reconnect_failed\");\n this._reconnecting = false;\n }\n else {\n const delay = this.backoff.duration();\n this._reconnecting = true;\n const timer = this.setTimeoutFn(() => {\n if (self.skipReconnect)\n return;\n this.emitReserved(\"reconnect_attempt\", self.backoff.attempts);\n // check again for the case socket closed in above events\n if (self.skipReconnect)\n return;\n self.open((err) => {\n if (err) {\n self._reconnecting = false;\n self.reconnect();\n this.emitReserved(\"reconnect_error\", err);\n }\n else {\n self.onreconnect();\n }\n });\n }, delay);\n if (this.opts.autoUnref) {\n timer.unref();\n }\n this.subs.push(() => {\n this.clearTimeoutFn(timer);\n });\n }\n }\n /**\n * Called upon successful reconnect.\n *\n * @private\n */\n onreconnect() {\n const attempt = this.backoff.attempts;\n this._reconnecting = false;\n this.backoff.reset();\n this.emitReserved(\"reconnect\", attempt);\n }\n}\n","import { url } from \"./url.js\";\nimport { Manager } from \"./manager.js\";\nimport { Socket } from \"./socket.js\";\n/**\n * Managers cache.\n */\nconst cache = {};\nfunction lookup(uri, opts) {\n if (typeof uri === \"object\") {\n opts = uri;\n uri = undefined;\n }\n opts = opts || {};\n const parsed = url(uri, opts.path || \"/socket.io\");\n const source = parsed.source;\n const id = parsed.id;\n const path = parsed.path;\n const sameNamespace = cache[id] && path in cache[id][\"nsps\"];\n const newConnection = opts.forceNew ||\n opts[\"force new connection\"] ||\n false === opts.multiplex ||\n sameNamespace;\n let io;\n if (newConnection) {\n io = new Manager(source, opts);\n }\n else {\n if (!cache[id]) {\n cache[id] = new Manager(source, opts);\n }\n io = cache[id];\n }\n if (parsed.query && !opts.query) {\n opts.query = parsed.queryKey;\n }\n return io.socket(parsed.path, opts);\n}\n// so that \"lookup\" can be used both as a function (e.g. `io(...)`) and as a\n// namespace (e.g. `io.connect(...)`), for backward compatibility\nObject.assign(lookup, {\n Manager,\n Socket,\n io: lookup,\n connect: lookup,\n});\n/**\n * Protocol version.\n *\n * @public\n */\nexport { protocol } from \"socket.io-parser\";\n/**\n * Expose constructors for standalone build.\n *\n * @public\n */\nexport { Manager, Socket, lookup as io, lookup as connect, lookup as default, };\nexport { Fetch, NodeXHR, XHR, NodeWebSocket, WebSocket, WebTransport, } from \"engine.io-client\";\n","import e from\"cross-fetch\";import t from\"debug\";import n,{EventEmitter2 as r}from\"eventemitter2\";import{validate as i,v4 as o}from\"uuid\";import{io as s}from\"socket.io-client\";function a(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(e){o(e)}}function a(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}\"function\"==typeof SuppressedError&&SuppressedError;var c=\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{},l=[],d=[],u=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,h=!1;function f(){h=!0;for(var e=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",t=0;t<64;++t)l[t]=e[t],d[e.charCodeAt(t)]=t;d[\"-\".charCodeAt(0)]=62,d[\"_\".charCodeAt(0)]=63}function p(e,t,n){for(var r,i,o=[],s=t;s<n;s+=3)r=(e[s]<<16)+(e[s+1]<<8)+e[s+2],o.push(l[(i=r)>>18&63]+l[i>>12&63]+l[i>>6&63]+l[63&i]);return o.join(\"\")}function g(e){var t;h||f();for(var n=e.length,r=n%3,i=\"\",o=[],s=16383,a=0,c=n-r;a<c;a+=s)o.push(p(e,a,a+s>c?c:a+s));return 1===r?(t=e[n-1],i+=l[t>>2],i+=l[t<<4&63],i+=\"==\"):2===r&&(t=(e[n-2]<<8)+e[n-1],i+=l[t>>10],i+=l[t>>4&63],i+=l[t<<2&63],i+=\"=\"),o.push(i),o.join(\"\")}function m(e,t,n,r,i){var o,s,a=8*i-r-1,c=(1<<a)-1,l=c>>1,d=-7,u=n?i-1:0,h=n?-1:1,f=e[t+u];for(u+=h,o=f&(1<<-d)-1,f>>=-d,d+=a;d>0;o=256*o+e[t+u],u+=h,d-=8);for(s=o&(1<<-d)-1,o>>=-d,d+=r;d>0;s=256*s+e[t+u],u+=h,d-=8);if(0===o)o=1-l;else{if(o===c)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,r),o-=l}return(f?-1:1)*s*Math.pow(2,o-r)}function y(e,t,n,r,i,o){var s,a,c,l=8*o-i-1,d=(1<<l)-1,u=d>>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:o-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=d):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),(t+=s+u>=1?h/c:h*Math.pow(2,1-u))*c>=2&&(s++,c/=2),s+u>=d?(a=0,s=d):s+u>=1?(a=(t*c-1)*Math.pow(2,i),s+=u):(a=t*Math.pow(2,u-1)*Math.pow(2,i),s=0));i>=8;e[n+f]=255&a,f+=p,a/=256,i-=8);for(s=s<<i|a,l+=i;l>0;e[n+f]=255&s,f+=p,s/=256,l-=8);e[n+f-p]|=128*g}var v={}.toString,b=Array.isArray||function(e){return\"[object Array]\"==v.call(e)};S.TYPED_ARRAY_SUPPORT=void 0===c.TYPED_ARRAY_SUPPORT||c.TYPED_ARRAY_SUPPORT;var w=E();function E(){return S.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function C(e,t){if(E()<t)throw new RangeError(\"Invalid typed array length\");return S.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=S.prototype:(null===e&&(e=new S(t)),e.length=t),e}function S(e,t,n){if(!(S.TYPED_ARRAY_SUPPORT||this instanceof S))return new S(e,t,n);if(\"number\"==typeof e){if(\"string\"==typeof t)throw new Error(\"If encoding is specified then the first argument must be a string\");return x(this,e)}return _(this,e,t,n)}function _(e,t,n,r){if(\"number\"==typeof t)throw new TypeError('\"value\" argument must not be a number');return\"undefined\"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,n,r){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError(\"'offset' is out of bounds\");if(t.byteLength<n+(r||0))throw new RangeError(\"'length' is out of bounds\");t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r);S.TYPED_ARRAY_SUPPORT?(e=t).__proto__=S.prototype:e=M(e,t);return e}(e,t,n,r):\"string\"==typeof t?function(e,t,n){\"string\"==typeof n&&\"\"!==n||(n=\"utf8\");if(!S.isEncoding(n))throw new TypeError('\"encoding\" must be a valid string encoding');var r=0|P(t,n);e=C(e,r);var i=e.write(t,n);i!==r&&(e=e.slice(0,i));return e}(e,t,n):function(e,t){if(I(t)){var n=0|A(t.length);return 0===(e=C(e,n)).length||t.copy(e,0,0,n),e}if(t){if(\"undefined\"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||\"length\"in t)return\"number\"!=typeof t.length||(r=t.length)!=r?C(e,0):M(e,t);if(\"Buffer\"===t.type&&b(t.data))return M(e,t.data)}var r;throw new TypeError(\"First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\")}(e,t)}function k(e){if(\"number\"!=typeof e)throw new TypeError('\"size\" argument must be a number');if(e<0)throw new RangeError('\"size\" argument must not be negative')}function x(e,t){if(k(t),e=C(e,t<0?0:0|A(t)),!S.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function M(e,t){var n=t.length<0?0:0|A(t.length);e=C(e,n);for(var r=0;r<n;r+=1)e[r]=255&t[r];return e}function A(e){if(e>=E())throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+E().toString(16)+\" bytes\");return 0|e}function I(e){return!(null==e||!e._isBuffer)}function P(e,t){if(I(e))return e.length;if(\"undefined\"!=typeof ArrayBuffer&&\"function\"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;\"string\"!=typeof e&&(e=\"\"+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":case void 0:return re(e).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return ie(e).length;default:if(r)return re(e).length;t=(\"\"+t).toLowerCase(),r=!0}}function R(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return\"\";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return\"\";if((n>>>=0)<=(t>>>=0))return\"\";for(e||(e=\"utf8\");;)switch(e){case\"hex\":return V(this,t,n);case\"utf8\":case\"utf-8\":return H(this,t,n);case\"ascii\":return z(this,t,n);case\"latin1\":case\"binary\":return q(this,t,n);case\"base64\":return U(this,t,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return W(this,t,n);default:if(r)throw new TypeError(\"Unknown encoding: \"+e);e=(e+\"\").toLowerCase(),r=!0}}function L(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function O(e,t,n,r,i){if(0===e.length)return-1;if(\"string\"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if(\"string\"==typeof t&&(t=S.from(t,r)),I(t))return 0===t.length?-1:T(e,t,n,r,i);if(\"number\"==typeof t)return t&=255,S.TYPED_ARRAY_SUPPORT&&\"function\"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):T(e,[t],n,r,i);throw new TypeError(\"val must be string, number or Buffer\")}function T(e,t,n,r,i){var o,s=1,a=e.length,c=t.length;if(void 0!==r&&(\"ucs2\"===(r=String(r).toLowerCase())||\"ucs-2\"===r||\"utf16le\"===r||\"utf-16le\"===r)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,n/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var d=-1;for(o=n;o<a;o++)if(l(e,o)===l(t,-1===d?0:o-d)){if(-1===d&&(d=o),o-d+1===c)return d*s}else-1!==d&&(o-=o-d),d=-1}else for(n+c>a&&(n=a-c),o=n;o>=0;o--){for(var u=!0,h=0;h<c;h++)if(l(e,o+h)!==l(t,h)){u=!1;break}if(u)return o}return-1}function N(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError(\"Invalid hex string\");r>o/2&&(r=o/2);for(var s=0;s<r;++s){var a=parseInt(t.substr(2*s,2),16);if(isNaN(a))return s;e[n+s]=a}return s}function D(e,t,n,r){return oe(re(t,e.length-n),e,n,r)}function $(e,t,n,r){return oe(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function B(e,t,n,r){return $(e,t,n,r)}function K(e,t,n,r){return oe(ie(t),e,n,r)}function j(e,t,n,r){return oe(function(e,t){for(var n,r,i,o=[],s=0;s<e.length&&!((t-=2)<0);++s)r=(n=e.charCodeAt(s))>>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function U(e,t,n){return 0===t&&n===e.length?g(e):g(e.slice(t,n))}function H(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var o,s,a,c,l=e[i],d=null,u=l>239?4:l>223?3:l>191?2:1;if(i+u<=n)switch(u){case 1:l<128&&(d=l);break;case 2:128==(192&(o=e[i+1]))&&(c=(31&l)<<6|63&o)>127&&(d=c);break;case 3:o=e[i+1],s=e[i+2],128==(192&o)&&128==(192&s)&&(c=(15&l)<<12|(63&o)<<6|63&s)>2047&&(c<55296||c>57343)&&(d=c);break;case 4:o=e[i+1],s=e[i+2],a=e[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(c=(15&l)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&c<1114112&&(d=c)}null===d?(d=65533,u=1):d>65535&&(d-=65536,r.push(d>>>10&1023|55296),d=56320|1023&d),r.push(d),i+=u}return function(e){var t=e.length;if(t<=F)return String.fromCharCode.apply(String,e);var n=\"\",r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=F));return n}(r)}S.poolSize=8192,S._augment=function(e){return e.__proto__=S.prototype,e},S.from=function(e,t,n){return _(null,e,t,n)},S.TYPED_ARRAY_SUPPORT&&(S.prototype.__proto__=Uint8Array.prototype,S.__proto__=Uint8Array,\"undefined\"!=typeof Symbol&&Symbol.species&&S[Symbol.species]),S.alloc=function(e,t,n){return function(e,t,n,r){return k(t),t<=0?C(e,t):void 0!==n?\"string\"==typeof r?C(e,t).fill(n,r):C(e,t).fill(n):C(e,t)}(null,e,t,n)},S.allocUnsafe=function(e){return x(null,e)},S.allocUnsafeSlow=function(e){return x(null,e)},S.isBuffer=se,S.compare=function(e,t){if(!I(e)||!I(t))throw new TypeError(\"Arguments must be Buffers\");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);i<o;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},S.isEncoding=function(e){switch(String(e).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},S.concat=function(e,t){if(!b(e))throw new TypeError('\"list\" argument must be an Array of Buffers');if(0===e.length)return S.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=S.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){var o=e[n];if(!I(o))throw new TypeError('\"list\" argument must be an Array of Buffers');o.copy(r,i),i+=o.length}return r},S.byteLength=P,S.prototype._isBuffer=!0,S.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var t=0;t<e;t+=2)L(this,t,t+1);return this},S.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var t=0;t<e;t+=4)L(this,t,t+3),L(this,t+1,t+2);return this},S.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var t=0;t<e;t+=8)L(this,t,t+7),L(this,t+1,t+6),L(this,t+2,t+5),L(this,t+3,t+4);return this},S.prototype.toString=function(){var e=0|this.length;return 0===e?\"\":0===arguments.length?H(this,0,e):R.apply(this,arguments)},S.prototype.equals=function(e){if(!I(e))throw new TypeError(\"Argument must be a Buffer\");return this===e||0===S.compare(this,e)},S.prototype.inspect=function(){var e=\"\";return this.length>0&&(e=this.toString(\"hex\",0,50).match(/.{2}/g).join(\" \"),this.length>50&&(e+=\" ... \")),\"<Buffer \"+e+\">\"},S.prototype.compare=function(e,t,n,r,i){if(!I(e))throw new TypeError(\"Argument must be a Buffer\");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError(\"out of range index\");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),a=Math.min(o,s),c=this.slice(r,i),l=e.slice(t,n),d=0;d<a;++d)if(c[d]!==l[d]){o=c[d],s=l[d];break}return o<s?-1:s<o?1:0},S.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},S.prototype.indexOf=function(e,t,n){return O(this,e,t,n,!0)},S.prototype.lastIndexOf=function(e,t,n){return O(this,e,t,n,!1)},S.prototype.write=function(e,t,n,r){if(void 0===t)r=\"utf8\",n=this.length,t=0;else if(void 0===n&&\"string\"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");t|=0,isFinite(n)?(n|=0,void 0===r&&(r=\"utf8\")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");r||(r=\"utf8\");for(var o=!1;;)switch(r){case\"hex\":return N(this,e,t,n);case\"utf8\":case\"utf-8\":return D(this,e,t,n);case\"ascii\":return $(this,e,t,n);case\"latin1\":case\"binary\":return B(this,e,t,n);case\"base64\":return K(this,e,t,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return j(this,e,t,n);default:if(o)throw new TypeError(\"Unknown encoding: \"+r);r=(\"\"+r).toLowerCase(),o=!0}},S.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var F=4096;function z(e,t,n){var r=\"\";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function q(e,t,n){var r=\"\";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function V(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i=\"\",o=t;o<n;++o)i+=ne(e[o]);return i}function W(e,t,n){for(var r=e.slice(t,n),i=\"\",o=0;o<r.length;o+=2)i+=String.fromCharCode(r[o]+256*r[o+1]);return i}function G(e,t,n){if(e%1!=0||e<0)throw new RangeError(\"offset is not uint\");if(e+t>n)throw new RangeError(\"Trying to access beyond buffer length\")}function Z(e,t,n,r,i,o){if(!I(e))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(t>i||t<o)throw new RangeError('\"value\" argument is out of bounds');if(n+r>e.length)throw new RangeError(\"Index out of range\")}function Y(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i<o;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function J(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i<o;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function X(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"Index out of range\")}function Q(e,t,n,r,i){return i||X(e,0,n,4),y(e,t,n,r,23,4),n+4}function ee(e,t,n,r,i){return i||X(e,0,n,8),y(e,t,n,r,52,8),n+8}S.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e),S.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=S.prototype;else{var i=t-e;n=new S(i,void 0);for(var o=0;o<i;++o)n[o]=this[o+e]}return n},S.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||G(e,t,this.length);for(var r=this[e],i=1,o=0;++o<t&&(i*=256);)r+=this[e+o]*i;return r},S.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||G(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},S.prototype.readUInt8=function(e,t){return t||G(e,1,this.length),this[e]},S.prototype.readUInt16LE=function(e,t){return t||G(e,2,this.length),this[e]|this[e+1]<<8},S.prototype.readUInt16BE=function(e,t){return t||G(e,2,this.length),this[e]<<8|this[e+1]},S.prototype.readUInt32LE=function(e,t){return t||G(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},S.prototype.readUInt32BE=function(e,t){return t||G(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},S.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||G(e,t,this.length);for(var r=this[e],i=1,o=0;++o<t&&(i*=256);)r+=this[e+o]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},S.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||G(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},S.prototype.readInt8=function(e,t){return t||G(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},S.prototype.readInt16LE=function(e,t){t||G(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},S.prototype.readInt16BE=function(e,t){t||G(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},S.prototype.readInt32LE=function(e,t){return t||G(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},S.prototype.readInt32BE=function(e,t){return t||G(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},S.prototype.readFloatLE=function(e,t){return t||G(e,4,this.length),m(this,e,!0,23,4)},S.prototype.readFloatBE=function(e,t){return t||G(e,4,this.length),m(this,e,!1,23,4)},S.prototype.readDoubleLE=function(e,t){return t||G(e,8,this.length),m(this,e,!0,52,8)},S.prototype.readDoubleBE=function(e,t){return t||G(e,8,this.length),m(this,e,!1,52,8)},S.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||Z(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o<n&&(i*=256);)this[t+o]=e/i&255;return t+n},S.prototype.writeUIntBE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||Z(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+n},S.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,1,255,0),S.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},S.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,2,65535,0),S.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):Y(this,e,t,!0),t+2},S.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,2,65535,0),S.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):Y(this,e,t,!1),t+2},S.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,4,4294967295,0),S.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):J(this,e,t,!0),t+4},S.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,4,4294967295,0),S.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):J(this,e,t,!1),t+4},S.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);Z(this,e,t,n,i-1,-i)}var o=0,s=1,a=0;for(this[t]=255&e;++o<n&&(s*=256);)e<0&&0===a&&0!==this[t+o-1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n},S.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);Z(this,e,t,n,i-1,-i)}var o=n-1,s=1,a=0;for(this[t+o]=255&e;--o>=0&&(s*=256);)e<0&&0===a&&0!==this[t+o+1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n},S.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,1,127,-128),S.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},S.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,2,32767,-32768),S.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):Y(this,e,t,!0),t+2},S.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,2,32767,-32768),S.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):Y(this,e,t,!1),t+2},S.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,4,2147483647,-2147483648),S.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):J(this,e,t,!0),t+4},S.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||Z(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),S.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):J(this,e,t,!1),t+4},S.prototype.writeFloatLE=function(e,t,n){return Q(this,e,t,!0,n)},S.prototype.writeFloatBE=function(e,t,n){return Q(this,e,t,!1,n)},S.prototype.writeDoubleLE=function(e,t,n){return ee(this,e,t,!0,n)},S.prototype.writeDoubleBE=function(e,t,n){return ee(this,e,t,!1,n)},S.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError(\"targetStart out of bounds\");if(n<0||n>=this.length)throw new RangeError(\"sourceStart out of bounds\");if(r<0)throw new RangeError(\"sourceEnd out of bounds\");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var i,o=r-n;if(this===e&&n<t&&t<r)for(i=o-1;i>=0;--i)e[i+t]=this[i+n];else if(o<1e3||!S.TYPED_ARRAY_SUPPORT)for(i=0;i<o;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+o),t);return o},S.prototype.fill=function(e,t,n,r){if(\"string\"==typeof e){if(\"string\"==typeof t?(r=t,t=0,n=this.length):\"string\"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==r&&\"string\"!=typeof r)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof r&&!S.isEncoding(r))throw new TypeError(\"Unknown encoding: \"+r)}else\"number\"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<n)throw new RangeError(\"Out of range index\");if(n<=t)return this;var o;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),\"number\"==typeof e)for(o=t;o<n;++o)this[o]=e;else{var s=I(e)?e:re(new S(e,r).toString()),a=s.length;for(o=0;o<n-t;++o)this[o+t]=s[o%a]}return this};var te=/[^+\\/0-9A-Za-z-_]/g;function ne(e){return e<16?\"0\"+e.toString(16):e.toString(16)}function re(e,t){var n;t=t||1/0;for(var r=e.length,i=null,o=[],s=0;s<r;++s){if((n=e.charCodeAt(s))>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error(\"Invalid code point\");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function ie(e){return function(e){var t,n,r,i,o,s;h||f();var a=e.length;if(a%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");o=\"=\"===e[a-2]?2:\"=\"===e[a-1]?1:0,s=new u(3*a/4-o),r=o>0?a-4:a;var c=0;for(t=0,n=0;t<r;t+=4,n+=3)i=d[e.charCodeAt(t)]<<18|d[e.charCodeAt(t+1)]<<12|d[e.charCodeAt(t+2)]<<6|d[e.charCodeAt(t+3)],s[c++]=i>>16&255,s[c++]=i>>8&255,s[c++]=255&i;return 2===o?(i=d[e.charCodeAt(t)]<<2|d[e.charCodeAt(t+1)]>>4,s[c++]=255&i):1===o&&(i=d[e.charCodeAt(t)]<<10|d[e.charCodeAt(t+1)]<<4|d[e.charCodeAt(t+2)]>>2,s[c++]=i>>8&255,s[c++]=255&i),s}(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\\s+|\\s+$/g,\"\")}(e).replace(te,\"\")).length<2)return\"\";for(;e.length%4!=0;)e+=\"=\";return e}(e))}function oe(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function se(e){return null!=e&&(!!e._isBuffer||ae(e)||function(e){return\"function\"==typeof e.readFloatLE&&\"function\"==typeof e.slice&&ae(e.slice(0,0))}(e))}function ae(e){return!!e.constructor&&\"function\"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}var ce=Object.freeze({__proto__:null,Buffer:S,INSPECT_MAX_BYTES:50,SlowBuffer:function(e){return+e!=e&&(e=0),S.alloc(+e)},isBuffer:se,kMaxLength:w}),le=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function de(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}function ue(e){if(e.__esModule)return e;var t=e.default;if(\"function\"==typeof t){var n=function e(){return this instanceof e?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,\"__esModule\",{value:!0}),Object.keys(e).forEach((function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})})),n}var he={},fe={},pe={};function ge(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function me(e){if(\"boolean\"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function ye(e){return e instanceof Uint8Array||null!=e&&\"object\"==typeof e&&\"Uint8Array\"===e.constructor.name}function ve(e,...t){if(!ye(e))throw new Error(\"Uint8Array expected\");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function be(e){if(\"function\"!=typeof e||\"function\"!=typeof e.create)throw new Error(\"hash must be wrapped by utils.wrapConstructor\");ge(e.outputLen),ge(e.blockLen)}function we(e,t=!0){if(e.destroyed)throw new Error(\"Hash instance has been destroyed\");if(t&&e.finished)throw new Error(\"Hash#digest() has already been called\")}function Ee(e,t){ve(e);const n=t.outputLen;if(e.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}Object.defineProperty(pe,\"__esModule\",{value:!0}),pe.isBytes=ye,pe.number=ge,pe.bool=me,pe.bytes=ve,pe.hash=be,pe.exists=we,pe.output=Ee;const Ce={number:ge,bool:me,bytes:ve,hash:be,exists:we,output:Ee};pe.default=Ce,function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.wrapCipher=e.Hash=e.nextTick=e.isLE=e.createView=e.u32=e.u16=e.u8=void 0,e.bytesToHex=r,e.hexToBytes=s,e.hexToNumber=a,e.bytesToNumberBE=function(e){return a(r(e))},e.numberToBytesBE=function(e,t){return s(e.toString(16).padStart(2*t,\"0\"))},e.asyncLoop=async function(t,n,r){let i=Date.now();for(let o=0;o<t;o++){r(o);const t=Date.now()-i;t>=0&&t<n||(await(0,e.nextTick)(),i+=t)}},e.utf8ToBytes=c,e.bytesToUtf8=function(e){return(new TextDecoder).decode(e)},e.toBytes=function(e){if(\"string\"==typeof e)e=c(e);else{if(!(0,t.isBytes)(e))throw new Error(\"Uint8Array expected, got \"+typeof e);e=d(e)}return e},e.concatBytes=function(...e){let n=0;for(let r=0;r<e.length;r++){const i=e[r];(0,t.bytes)(i),n+=i.length}const r=new Uint8Array(n);for(let t=0,n=0;t<e.length;t++){const i=e[t];r.set(i,n),n+=i.length}return r},e.checkOpts=function(e,t){if(null==t||\"object\"!=typeof t)throw new Error(\"options must be defined\");return Object.assign(e,t)},e.equalBytes=function(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return 0===n},e.setBigUint64=l,e.u64Lengths=function(t,n){const r=new Uint8Array(16),i=(0,e.createView)(r);return l(i,0,BigInt(n?n.length:0),!0),l(i,8,BigInt(t.length),!0),r},e.isAligned32=function(e){return e.byteOffset%4==0},e.copyBytes=d,e.clean=function(...e){for(let t=0;t<e.length;t++)e[t].fill(0)};const t=pe;e.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);e.u16=e=>new Uint16Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/2));e.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));if(e.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),e.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],!e.isLE)throw new Error(\"Non little-endian hardware is not supported\");const n=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,\"0\")));function r(e){(0,t.bytes)(e);let r=\"\";for(let t=0;t<e.length;t++)r+=n[e[t]];return r}const i={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function o(e){return e>=i._0&&e<=i._9?e-i._0:e>=i._A&&e<=i._F?e-(i._A-10):e>=i._a&&e<=i._f?e-(i._a-10):void 0}function s(e){if(\"string\"!=typeof e)throw new Error(\"hex string expected, got \"+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error(\"padded hex string expected, got unpadded hex of length \"+t);const r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){const n=o(e.charCodeAt(i)),s=o(e.charCodeAt(i+1));if(void 0===n||void 0===s){const t=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character \"'+t+'\" at index '+i)}r[t]=16*n+s}return r}function a(e){if(\"string\"!=typeof e)throw new Error(\"hex string expected, got \"+typeof e);return BigInt(\"\"===e?\"0\":`0x${e}`)}function c(e){if(\"string\"!=typeof e)throw new Error(\"string expected, got \"+typeof e);return new Uint8Array((new TextEncoder).encode(e))}e.nextTick=async()=>{};e.Hash=class{};function l(e,t,n,r){if(\"function\"==typeof e.setBigUint64)return e.setBigUint64(t,n,r);const i=BigInt(32),o=BigInt(4294967295),s=Number(n>>i&o),a=Number(n&o),c=r?4:0,l=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+l,a,r)}function d(e){return Uint8Array.from(e)}e.wrapCipher=(e,t)=>(Object.assign(t,e),t)}(fe);var Se={},_e={};Object.defineProperty(_e,\"__esModule\",{value:!0}),_e.AEAD_TAG_LENGTH=_e.XCHACHA20_NONCE_LENGTH=_e.CURVE25519_PUBLIC_KEY_SIZE=_e.ETH_PUBLIC_KEY_SIZE=_e.UNCOMPRESSED_PUBLIC_KEY_SIZE=_e.COMPRESSED_PUBLIC_KEY_SIZE=_e.SECRET_KEY_LENGTH=void 0,_e.SECRET_KEY_LENGTH=32,_e.COMPRESSED_PUBLIC_KEY_SIZE=33,_e.UNCOMPRESSED_PUBLIC_KEY_SIZE=65,_e.ETH_PUBLIC_KEY_SIZE=64,_e.CURVE25519_PUBLIC_KEY_SIZE=32,_e.XCHACHA20_NONCE_LENGTH=24,_e.AEAD_TAG_LENGTH=16,function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.ephemeralKeySize=e.symmetricNonceLength=e.symmetricAlgorithm=e.isHkdfKeyCompressed=e.isEphemeralKeyCompressed=e.ellipticCurve=e.ECIES_CONFIG=void 0;var t=_e,n=function(){this.ellipticCurve=\"secp256k1\",this.isEphemeralKeyCompressed=!1,this.isHkdfKeyCompressed=!1,this.symmetricAlgorithm=\"aes-256-gcm\",this.symmetricNonceLength=16};e.ECIES_CONFIG=new n;e.ellipticCurve=function(){return e.ECIES_CONFIG.ellipticCurve};e.isEphemeralKeyCompressed=function(){return e.ECIES_CONFIG.isEphemeralKeyCompressed};e.isHkdfKeyCompressed=function(){return e.ECIES_CONFIG.isHkdfKeyCompressed};e.symmetricAlgorithm=function(){return e.ECIES_CONFIG.symmetricAlgorithm};e.symmetricNonceLength=function(){return e.ECIES_CONFIG.symmetricNonceLength};e.ephemeralKeySize=function(){var n={secp256k1:e.ECIES_CONFIG.isEphemeralKeyCompressed?t.COMPRESSED_PUBLIC_KEY_SIZE:t.UNCOMPRESSED_PUBLIC_KEY_SIZE,x25519:t.CURVE25519_PUBLIC_KEY_SIZE,ed25519:t.CURVE25519_PUBLIC_KEY_SIZE};if(e.ECIES_CONFIG.ellipticCurve in n)return n[e.ECIES_CONFIG.ellipticCurve];throw new Error(\"Not implemented\")}}(Se);var ke={},xe={},Me={},Ae={},Ie={},Pe={};Object.defineProperty(Pe,\"__esModule\",{value:!0}),Pe.crypto=void 0,Pe.crypto=\"object\"==typeof globalThis&&\"crypto\"in globalThis?globalThis.crypto:void 0,function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.gcm=e.ctr=e.cbc=e.utils=void 0,e.randomBytes=i,e.getWebcryptoSubtle=o,e.managedNonce=function(e){return(0,n.number)(e.nonceLength),(t,...n)=>({encrypt(o,...s){const{nonceLength:a}=e,c=i(a),l=e(t,c,...n).encrypt(o,...s),d=(0,r.concatBytes)(c,l);return l.fill(0),d},decrypt(r,...i){const{nonceLength:o}=e,s=r.subarray(0,o),a=r.subarray(o);return e(t,s,...n).decrypt(a,...i)}})};const t=Pe,n=pe,r=fe;function i(e=32){if(t.crypto&&\"function\"==typeof t.crypto.getRandomValues)return t.crypto.getRandomValues(new Uint8Array(e));if(t.crypto&&\"function\"==typeof t.crypto.randomBytes)return t.crypto.randomBytes(e);throw new Error(\"crypto.getRandomValues must be defined\")}function o(){if(t.crypto&&\"object\"==typeof t.crypto.subtle&&null!=t.crypto.subtle)return t.crypto.subtle;throw new Error(\"crypto.subtle must be defined\")}e.utils={async encrypt(e,t,n,r){const i=o(),s=await i.importKey(\"raw\",e,t,!0,[\"encrypt\"]),a=await i.encrypt(n,s,r);return new Uint8Array(a)},async decrypt(e,t,n,r){const i=o(),s=await i.importKey(\"raw\",e,t,!0,[\"decrypt\"]),a=await i.decrypt(n,s,r);return new Uint8Array(a)}};const s={CBC:\"AES-CBC\",CTR:\"AES-CTR\",GCM:\"AES-GCM\"};function a(t){return(r,i,o)=>{(0,n.bytes)(r),(0,n.bytes)(i);const a={name:t,length:8*r.length},c=function(e,t,n){if(e===s.CBC)return{name:s.CBC,iv:t};if(e===s.CTR)return{name:s.CTR,counter:t,length:64};if(e===s.GCM)return n?{name:s.GCM,iv:t,additionalData:n}:{name:s.GCM,iv:t};throw new Error(\"unknown aes block mode\")}(t,i,o);return{encrypt:t=>((0,n.bytes)(t),e.utils.encrypt(r,a,c,t)),decrypt:t=>((0,n.bytes)(t),e.utils.decrypt(r,a,c,t))}}}e.cbc=a(s.CBC),e.ctr=a(s.CTR),e.gcm=a(s.GCM)}(Ie);var Re={},Le={},Oe={},Te={};function Ne(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function De(e){if(\"boolean\"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function $e(e){return e instanceof Uint8Array||null!=e&&\"object\"==typeof e&&\"Uint8Array\"===e.constructor.name}function Be(e,...t){if(!$e(e))throw new Error(\"Uint8Array expected\");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Ke(e){if(\"function\"!=typeof e||\"function\"!=typeof e.create)throw new Error(\"Hash should be wrapped by utils.wrapConstructor\");Ne(e.outputLen),Ne(e.blockLen)}function je(e,t=!0){if(e.destroyed)throw new Error(\"Hash instance has been destroyed\");if(t&&e.finished)throw new Error(\"Hash#digest() has already been called\")}function Ue(e,t){Be(e);const n=t.outputLen;if(e.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}Object.defineProperty(Te,\"__esModule\",{value:!0}),Te.isBytes=$e,Te.number=Ne,Te.bool=De,Te.bytes=Be,Te.hash=Ke,Te.exists=je,Te.output=Ue;const He={number:Ne,bool:De,bytes:Be,hash:Ke,exists:je,output:Ue};Te.default=He;var Fe={},ze={};Object.defineProperty(ze,\"__esModule\",{value:!0}),ze.crypto=void 0,ze.crypto=\"object\"==typeof globalThis&&\"crypto\"in globalThis?globalThis.crypto:void 0,function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.Hash=e.nextTick=e.byteSwapIfBE=e.byteSwap=e.isLE=e.rotl=e.rotr=e.createView=e.u32=e.u8=void 0,e.isBytes=function(e){return e instanceof Uint8Array||null!=e&&\"object\"==typeof e&&\"Uint8Array\"===e.constructor.name},e.byteSwap32=function(t){for(let n=0;n<t.length;n++)t[n]=(0,e.byteSwap)(t[n])},e.bytesToHex=function(e){(0,n.bytes)(e);let t=\"\";for(let n=0;n<e.length;n++)t+=r[e[n]];return t},e.hexToBytes=function(e){if(\"string\"!=typeof e)throw new Error(\"hex string expected, got \"+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error(\"padded hex string expected, got unpadded hex of length \"+t);const r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){const n=o(e.charCodeAt(i)),s=o(e.charCodeAt(i+1));if(void 0===n||void 0===s){const t=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character \"'+t+'\" at index '+i)}r[t]=16*n+s}return r},e.asyncLoop=async function(t,n,r){let i=Date.now();for(let o=0;o<t;o++){r(o);const t=Date.now()-i;t>=0&&t<n||(await(0,e.nextTick)(),i+=t)}},e.utf8ToBytes=s,e.toBytes=a,e.concatBytes=function(...e){let t=0;for(let r=0;r<e.length;r++){const i=e[r];(0,n.bytes)(i),t+=i.length}const r=new Uint8Array(t);for(let t=0,n=0;t<e.length;t++){const i=e[t];r.set(i,n),n+=i.length}return r},e.checkOpts=function(e,t){if(void 0!==t&&\"[object Object]\"!==c.call(t))throw new Error(\"Options should be object or undefined\");return Object.assign(e,t)},e.wrapConstructor=function(e){const t=t=>e().update(a(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t},e.wrapConstructorWithOpts=function(e){const t=(t,n)=>e(n).update(a(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t},e.wrapXOFConstructorWithOpts=function(e){const t=(t,n)=>e(n).update(a(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t},e.randomBytes=function(e=32){if(t.crypto&&\"function\"==typeof t.crypto.getRandomValues)return t.crypto.getRandomValues(new Uint8Array(e));if(t.crypto&&\"function\"==typeof t.crypto.randomBytes)return t.crypto.randomBytes(e);throw new Error(\"crypto.getRandomValues must be defined\")};const t=ze,n=Te;e.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);e.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));e.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);e.rotr=(e,t)=>e<<32-t|e>>>t;e.rotl=(e,t)=>e<<t|e>>>32-t>>>0,e.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0];e.byteSwap=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255,e.byteSwapIfBE=e.isLE?e=>e:t=>(0,e.byteSwap)(t);const r=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,\"0\")));const i={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function o(e){return e>=i._0&&e<=i._9?e-i._0:e>=i._A&&e<=i._F?e-(i._A-10):e>=i._a&&e<=i._f?e-(i._a-10):void 0}function s(e){if(\"string\"!=typeof e)throw new Error(\"utf8ToBytes expected string, got \"+typeof e);return new Uint8Array((new TextEncoder).encode(e))}function a(e){return\"string\"==typeof e&&(e=s(e)),(0,n.bytes)(e),e}e.nextTick=async()=>{};e.Hash=class{clone(){return this._cloneInto()}};const c={}.toString}(Fe),Object.defineProperty(Oe,\"__esModule\",{value:!0}),Oe.HashMD=Oe.Maj=Oe.Chi=void 0;const qe=Te,Ve=Fe;Oe.Chi=(e,t,n)=>e&t^~e&n;Oe.Maj=(e,t,n)=>e&t^e&n^t&n;Oe.HashMD=class extends Ve.Hash{constructor(e,t,n,r){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,Ve.createView)(this.buffer)}update(e){(0,qe.exists)(this);const{view:t,buffer:n,blockLen:r}=this,i=(e=(0,Ve.toBytes)(e)).length;for(let o=0;o<i;){const s=Math.min(r-this.pos,i-o);if(s!==r)n.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===r&&(this.process(t,0),this.pos=0);else{const t=(0,Ve.createView)(e);for(;r<=i-o;o+=r)this.process(t,o)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){(0,qe.exists)(this),(0,qe.output)(e,this),this.finished=!0;const{buffer:t,view:n,blockLen:r,isLE:i}=this;let{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>r-o&&(this.process(n,0),o=0);for(let e=o;e<r;e++)t[e]=0;!function(e,t,n,r){if(\"function\"==typeof e.setBigUint64)return e.setBigUint64(t,n,r);const i=BigInt(32),o=BigInt(4294967295),s=Number(n>>i&o),a=Number(n&o),c=r?4:0,l=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+l,a,r)}(n,r-8,BigInt(8*this.length),i),this.process(n,0);const s=(0,Ve.createView)(e),a=this.outputLen;if(a%4)throw new Error(\"_sha2: outputLen should be aligned to 32bit\");const c=a/4,l=this.get();if(c>l.length)throw new Error(\"_sha2: outputLen bigger than state\");for(let e=0;e<c;e++)s.setUint32(4*e,l[e],i)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:n,length:r,finished:i,destroyed:o,pos:s}=this;return e.length=r,e.pos=s,e.finished=i,e.destroyed=o,r%t&&e.buffer.set(n),e}};var We={};Object.defineProperty(We,\"__esModule\",{value:!0}),We.add5L=We.add5H=We.add4H=We.add4L=We.add3H=We.add3L=We.rotlBL=We.rotlBH=We.rotlSL=We.rotlSH=We.rotr32L=We.rotr32H=We.rotrBL=We.rotrBH=We.rotrSL=We.rotrSH=We.shrSL=We.shrSH=We.toBig=void 0,We.fromBig=Ye,We.split=Je,We.add=ut;const Ge=BigInt(2**32-1),Ze=BigInt(32);function Ye(e,t=!1){return t?{h:Number(e&Ge),l:Number(e>>Ze&Ge)}:{h:0|Number(e>>Ze&Ge),l:0|Number(e&Ge)}}function Je(e,t=!1){let n=new Uint32Array(e.length),r=new Uint32Array(e.length);for(let i=0;i<e.length;i++){const{h:o,l:s}=Ye(e[i],t);[n[i],r[i]]=[o,s]}return[n,r]}const Xe=(e,t)=>BigInt(e>>>0)<<Ze|BigInt(t>>>0);We.toBig=Xe;const Qe=(e,t,n)=>e>>>n;We.shrSH=Qe;const et=(e,t,n)=>e<<32-n|t>>>n;We.shrSL=et;const tt=(e,t,n)=>e>>>n|t<<32-n;We.rotrSH=tt;const nt=(e,t,n)=>e<<32-n|t>>>n;We.rotrSL=nt;const rt=(e,t,n)=>e<<64-n|t>>>n-32;We.rotrBH=rt;const it=(e,t,n)=>e>>>n-32|t<<64-n;We.rotrBL=it;const ot=(e,t)=>t;We.rotr32H=ot;const st=(e,t)=>e;We.rotr32L=st;const at=(e,t,n)=>e<<n|t>>>32-n;We.rotlSH=at;const ct=(e,t,n)=>t<<n|e>>>32-n;We.rotlSL=ct;const lt=(e,t,n)=>t<<n-32|e>>>64-n;We.rotlBH=lt;const dt=(e,t,n)=>e<<n-32|t>>>64-n;function ut(e,t,n,r){const i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:0|i}}We.rotlBL=dt;const ht=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0);We.add3L=ht;const ft=(e,t,n,r)=>t+n+r+(e/2**32|0)|0;We.add3H=ft;const pt=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0);We.add4L=pt;const gt=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0;We.add4H=gt;const mt=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0);We.add5L=mt;const yt=(e,t,n,r,i,o)=>t+n+r+i+o+(e/2**32|0)|0;We.add5H=yt;const vt={fromBig:Ye,split:Je,toBig:Xe,shrSH:Qe,shrSL:et,rotrSH:tt,rotrSL:nt,rotrBH:rt,rotrBL:it,rotr32H:ot,rotr32L:st,rotlSH:at,rotlSL:ct,rotlBH:lt,rotlBL:dt,add:ut,add3L:ht,add3H:ft,add4L:pt,add4H:gt,add5H:yt,add5L:mt};We.default=vt,Object.defineProperty(Le,\"__esModule\",{value:!0}),Le.sha384=Le.sha512_256=Le.sha512_224=Le.sha512=Le.SHA384=Le.SHA512_256=Le.SHA512_224=Le.SHA512=void 0;const bt=Oe,wt=We,Et=Fe,[Ct,St]=(()=>wt.default.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((e=>BigInt(e)))))(),_t=new Uint32Array(80),kt=new Uint32Array(80);class xt extends bt.HashMD{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:o,Dh:s,Dl:a,Eh:c,El:l,Fh:d,Fl:u,Gh:h,Gl:f,Hh:p,Hl:g}=this;return[e,t,n,r,i,o,s,a,c,l,d,u,h,f,p,g]}set(e,t,n,r,i,o,s,a,c,l,d,u,h,f,p,g){this.Ah=0|e,this.Al=0|t,this.Bh=0|n,this.Bl=0|r,this.Ch=0|i,this.Cl=0|o,this.Dh=0|s,this.Dl=0|a,this.Eh=0|c,this.El=0|l,this.Fh=0|d,this.Fl=0|u,this.Gh=0|h,this.Gl=0|f,this.Hh=0|p,this.Hl=0|g}process(e,t){for(let n=0;n<16;n++,t+=4)_t[n]=e.getUint32(t),kt[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){const t=0|_t[e-15],n=0|kt[e-15],r=wt.default.rotrSH(t,n,1)^wt.default.rotrSH(t,n,8)^wt.default.shrSH(t,n,7),i=wt.default.rotrSL(t,n,1)^wt.default.rotrSL(t,n,8)^wt.default.shrSL(t,n,7),o=0|_t[e-2],s=0|kt[e-2],a=wt.default.rotrSH(o,s,19)^wt.default.rotrBH(o,s,61)^wt.default.shrSH(o,s,6),c=wt.default.rotrSL(o,s,19)^wt.default.rotrBL(o,s,61)^wt.default.shrSL(o,s,6),l=wt.default.add4L(i,c,kt[e-7],kt[e-16]),d=wt.default.add4H(l,r,a,_t[e-7],_t[e-16]);_t[e]=0|d,kt[e]=0|l}let{Ah:n,Al:r,Bh:i,Bl:o,Ch:s,Cl:a,Dh:c,Dl:l,Eh:d,El:u,Fh:h,Fl:f,Gh:p,Gl:g,Hh:m,Hl:y}=this;for(let e=0;e<80;e++){const t=wt.default.rotrSH(d,u,14)^wt.default.rotrSH(d,u,18)^wt.default.rotrBH(d,u,41),v=wt.default.rotrSL(d,u,14)^wt.default.rotrSL(d,u,18)^wt.default.rotrBL(d,u,41),b=d&h^~d&p,w=u&f^~u&g,E=wt.default.add5L(y,v,w,St[e],kt[e]),C=wt.default.add5H(E,m,t,b,Ct[e],_t[e]),S=0|E,_=wt.default.rotrSH(n,r,28)^wt.default.rotrBH(n,r,34)^wt.default.rotrBH(n,r,39),k=wt.default.rotrSL(n,r,28)^wt.default.rotrBL(n,r,34)^wt.default.rotrBL(n,r,39),x=n&i^n&s^i&s,M=r&o^r&a^o&a;m=0|p,y=0|g,p=0|h,g=0|f,h=0|d,f=0|u,({h:d,l:u}=wt.default.add(0|c,0|l,0|C,0|S)),c=0|s,l=0|a,s=0|i,a=0|o,i=0|n,o=0|r;const A=wt.default.add3L(S,k,M);n=wt.default.add3H(A,C,_,x),r=0|A}({h:n,l:r}=wt.default.add(0|this.Ah,0|this.Al,0|n,0|r)),({h:i,l:o}=wt.default.add(0|this.Bh,0|this.Bl,0|i,0|o)),({h:s,l:a}=wt.default.add(0|this.Ch,0|this.Cl,0|s,0|a)),({h:c,l:l}=wt.default.add(0|this.Dh,0|this.Dl,0|c,0|l)),({h:d,l:u}=wt.default.add(0|this.Eh,0|this.El,0|d,0|u)),({h:h,l:f}=wt.default.add(0|this.Fh,0|this.Fl,0|h,0|f)),({h:p,l:g}=wt.default.add(0|this.Gh,0|this.Gl,0|p,0|g)),({h:m,l:y}=wt.default.add(0|this.Hh,0|this.Hl,0|m,0|y)),this.set(n,r,i,o,s,a,c,l,d,u,h,f,p,g,m,y)}roundClean(){_t.fill(0),kt.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)}}Le.SHA512=xt;class Mt extends xt{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}Le.SHA512_224=Mt;class At extends xt{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}Le.SHA512_256=At;class It extends xt{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}Le.SHA384=It,Le.sha512=(0,Et.wrapConstructor)((()=>new xt)),Le.sha512_224=(0,Et.wrapConstructor)((()=>new Mt)),Le.sha512_256=(0,Et.wrapConstructor)((()=>new At)),Le.sha384=(0,Et.wrapConstructor)((()=>new It));var Pt={},Rt={},Lt={},Ot={};Object.defineProperty(Ot,\"__esModule\",{value:!0}),Ot.notImplemented=Ot.bitMask=void 0,Ot.isBytes=$t,Ot.abytes=Bt,Ot.abool=function(e,t){if(\"boolean\"!=typeof t)throw new Error(`${e} must be valid boolean, got \"${t}\".`)},Ot.bytesToHex=jt,Ot.numberToHexUnpadded=Ut,Ot.hexToNumber=Ht,Ot.hexToBytes=qt,Ot.bytesToNumberBE=function(e){return Ht(jt(e))},Ot.bytesToNumberLE=function(e){return Bt(e),Ht(jt(Uint8Array.from(e).reverse()))},Ot.numberToBytesBE=Vt,Ot.numberToBytesLE=function(e,t){return Vt(e,t).reverse()},Ot.numberToVarBytesBE=function(e){return qt(Ut(e))},Ot.ensureBytes=function(e,t,n){let r;if(\"string\"==typeof t)try{r=qt(t)}catch(n){throw new Error(`${e} must be valid hex string, got \"${t}\". Cause: ${n}`)}else{if(!$t(t))throw new Error(`${e} must be hex string or Uint8Array`);r=Uint8Array.from(t)}const i=r.length;if(\"number\"==typeof n&&i!==n)throw new Error(`${e} expected ${n} bytes, got ${i}`);return r},Ot.concatBytes=Wt,Ot.equalBytes=function(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return 0===n},Ot.utf8ToBytes=function(e){if(\"string\"!=typeof e)throw new Error(\"utf8ToBytes expected string, got \"+typeof e);return new Uint8Array((new TextEncoder).encode(e))},Ot.inRange=Zt,Ot.aInRange=function(e,t,n,r){if(!Zt(t,n,r))throw new Error(`expected valid ${e}: ${n} <= n < ${r}, got ${typeof t} ${t}`)},Ot.bitLen=function(e){let t;for(t=0;e>Tt;e>>=Nt,t+=1);return t},Ot.bitGet=function(e,t){return e>>BigInt(t)&Nt},Ot.bitSet=function(e,t,n){return e|(n?Nt:Tt)<<BigInt(t)},Ot.createHmacDrbg=function(e,t,n){if(\"number\"!=typeof e||e<2)throw new Error(\"hashLen must be a number\");if(\"number\"!=typeof t||t<2)throw new Error(\"qByteLen must be a number\");if(\"function\"!=typeof n)throw new Error(\"hmacFn must be a function\");let r=Yt(e),i=Yt(e),o=0;const s=()=>{r.fill(1),i.fill(0),o=0},a=(...e)=>n(i,r,...e),c=(e=Yt())=>{i=a(Jt([0]),e),r=a(),0!==e.length&&(i=a(Jt([1]),e),r=a())},l=()=>{if(o++>=1e3)throw new Error(\"drbg: tried 1000 values\");let e=0;const n=[];for(;e<t;){r=a();const t=r.slice();n.push(t),e+=r.length}return Wt(...n)};return(e,t)=>{let n;for(s(),c(e);!(n=t(l()));)c();return s(),n}},Ot.validateObject=function(e,t,n={}){const r=(t,n,r)=>{const i=Xt[n];if(\"function\"!=typeof i)throw new Error(`Invalid validator \"${n}\", expected function`);const o=e[t];if(!(r&&void 0===o||i(o,e)))throw new Error(`Invalid param ${String(t)}=${o} (${typeof o}), expected ${n}`)};for(const[e,n]of Object.entries(t))r(e,n,!1);for(const[e,t]of Object.entries(n))r(e,t,!0);return e},Ot.memoized=function(e){const t=new WeakMap;return(n,...r)=>{const i=t.get(n);if(void 0!==i)return i;const o=e(n,...r);return t.set(n,o),o}};const Tt=BigInt(0),Nt=BigInt(1),Dt=BigInt(2);function $t(e){return e instanceof Uint8Array||null!=e&&\"object\"==typeof e&&\"Uint8Array\"===e.constructor.name}function Bt(e){if(!$t(e))throw new Error(\"Uint8Array expected\")}const Kt=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,\"0\")));function jt(e){Bt(e);let t=\"\";for(let n=0;n<e.length;n++)t+=Kt[e[n]];return t}function Ut(e){const t=e.toString(16);return 1&t.length?`0${t}`:t}function Ht(e){if(\"string\"!=typeof e)throw new Error(\"hex string expected, got \"+typeof e);return BigInt(\"\"===e?\"0\":`0x${e}`)}const Ft={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function zt(e){return e>=Ft._0&&e<=Ft._9?e-Ft._0:e>=Ft._A&&e<=Ft._F?e-(Ft._A-10):e>=Ft._a&&e<=Ft._f?e-(Ft._a-10):void 0}function qt(e){if(\"string\"!=typeof e)throw new Error(\"hex string expected, got \"+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error(\"padded hex string expected, got unpadded hex of length \"+t);const r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){const n=zt(e.charCodeAt(i)),o=zt(e.charCodeAt(i+1));if(void 0===n||void 0===o){const t=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character \"'+t+'\" at index '+i)}r[t]=16*n+o}return r}function Vt(e,t){return qt(e.toString(16).padStart(2*t,\"0\"))}function Wt(...e){let t=0;for(let n=0;n<e.length;n++){const r=e[n];Bt(r),t+=r.length}const n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){const i=e[t];n.set(i,r),r+=i.length}return n}const Gt=e=>\"bigint\"==typeof e&&Tt<=e;function Zt(e,t,n){return Gt(e)&&Gt(t)&&Gt(n)&&t<=e&&e<n}Ot.bitMask=e=>(Dt<<BigInt(e-1))-Nt;const Yt=e=>new Uint8Array(e),Jt=e=>Uint8Array.from(e);const Xt={bigint:e=>\"bigint\"==typeof e,function:e=>\"function\"==typeof e,boolean:e=>\"boolean\"==typeof e,string:e=>\"string\"==typeof e,stringOrUint8Array:e=>\"string\"==typeof e||$t(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>\"function\"==typeof e&&Number.isSafeInteger(e.outputLen)};Ot.notImplemented=()=>{throw new Error(\"not implemented\")},Object.defineProperty(Lt,\"__esModule\",{value:!0}),Lt.isNegativeLE=void 0,Lt.mod=cn,Lt.pow=ln,Lt.pow2=function(e,t,n){let r=e;for(;t-- >en;)r*=r,r%=n;return r},Lt.invert=dn,Lt.tonelliShanks=un,Lt.FpSqrt=hn,Lt.validateField=function(e){const t=fn.reduce(((e,t)=>(e[t]=\"function\",e)),{ORDER:\"bigint\",MASK:\"bigint\",BYTES:\"isSafeInteger\",BITS:\"isSafeInteger\"});return(0,Qt.validateObject)(e,t)},Lt.FpPow=pn,Lt.FpInvertBatch=gn,Lt.FpDiv=function(e,t,n){return e.mul(t,\"bigint\"==typeof n?dn(n,e.ORDER):e.inv(n))},Lt.FpLegendre=mn,Lt.FpIsSquare=function(e){const t=mn(e.ORDER);return n=>{const r=t(e,n);return e.eql(r,e.ZERO)||e.eql(r,e.ONE)}},Lt.nLength=yn,Lt.Field=function(e,t,n=!1,r={}){if(e<=en)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:i,nByteLength:o}=yn(e,t);if(o>2048)throw new Error(\"Field lengths over 2048 bytes are not supported\");const s=hn(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:(0,Qt.bitMask)(i),ZERO:en,ONE:tn,create:t=>cn(t,e),isValid:t=>{if(\"bigint\"!=typeof t)throw new Error(\"Invalid field element: expected bigint, got \"+typeof t);return en<=t&&t<e},is0:e=>e===en,isOdd:e=>(e&tn)===tn,neg:t=>cn(-t,e),eql:(e,t)=>e===t,sqr:t=>cn(t*t,e),add:(t,n)=>cn(t+n,e),sub:(t,n)=>cn(t-n,e),mul:(t,n)=>cn(t*n,e),pow:(e,t)=>pn(a,e,t),div:(t,n)=>cn(t*dn(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>dn(t,e),sqrt:r.sqrt||(e=>s(a,e)),invertBatch:e=>gn(a,e),cmov:(e,t,n)=>n?t:e,toBytes:e=>n?(0,Qt.numberToBytesLE)(e,o):(0,Qt.numberToBytesBE)(e,o),fromBytes:e=>{if(e.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${e.length}`);return n?(0,Qt.bytesToNumberLE)(e):(0,Qt.bytesToNumberBE)(e)}});return Object.freeze(a)},Lt.FpSqrtOdd=function(e,t){if(!e.isOdd)throw new Error(\"Field doesn't have isOdd\");const n=e.sqrt(t);return e.isOdd(n)?n:e.neg(n)},Lt.FpSqrtEven=function(e,t){if(!e.isOdd)throw new Error(\"Field doesn't have isOdd\");const n=e.sqrt(t);return e.isOdd(n)?e.neg(n):n},Lt.hashToPrivateScalar=function(e,t,n=!1){e=(0,Qt.ensureBytes)(\"privateHash\",e);const r=e.length,i=yn(t).nByteLength+8;if(i<24||r<i||r>1024)throw new Error(`hashToPrivateScalar: expected ${i}-1024 bytes of input, got ${r}`);const o=n?(0,Qt.bytesToNumberLE)(e):(0,Qt.bytesToNumberBE)(e);return cn(o,t-tn)+tn},Lt.getFieldBytesLength=vn,Lt.getMinHashLength=bn,Lt.mapHashToField=function(e,t,n=!1){const r=e.length,i=vn(t),o=bn(t);if(r<16||r<o||r>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${r}`);const s=cn(n?(0,Qt.bytesToNumberBE)(e):(0,Qt.bytesToNumberLE)(e),t-tn)+tn;return n?(0,Qt.numberToBytesLE)(s,i):(0,Qt.numberToBytesBE)(s,i)};const Qt=Ot,en=BigInt(0),tn=BigInt(1),nn=BigInt(2),rn=BigInt(3),on=BigInt(4),sn=BigInt(5),an=BigInt(8);function cn(e,t){const n=e%t;return n>=en?n:t+n}function ln(e,t,n){if(n<=en||t<en)throw new Error(\"Expected power/modulo > 0\");if(n===tn)return en;let r=tn;for(;t>en;)t&tn&&(r=r*e%n),e=e*e%n,t>>=tn;return r}function dn(e,t){if(e===en||t<=en)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=cn(e,t),r=t,i=en,o=tn;for(;n!==en;){const e=r%n,t=i-o*(r/n);r=n,n=e,i=o,o=t}if(r!==tn)throw new Error(\"invert: does not exist\");return cn(i,t)}function un(e){const t=(e-tn)/nn;let n,r,i;for(n=e-tn,r=0;n%nn===en;n/=nn,r++);for(i=nn;i<e&&ln(i,t,e)!==e-tn;i++);if(1===r){const t=(e+tn)/on;return function(e,n){const r=e.pow(n,t);if(!e.eql(e.sqr(r),n))throw new Error(\"Cannot find square root\");return r}}const o=(n+tn)/nn;return function(e,s){if(e.pow(s,t)===e.neg(e.ONE))throw new Error(\"Cannot find square root\");let a=r,c=e.pow(e.mul(e.ONE,i),n),l=e.pow(s,o),d=e.pow(s,n);for(;!e.eql(d,e.ONE);){if(e.eql(d,e.ZERO))return e.ZERO;let t=1;for(let n=e.sqr(d);t<a&&!e.eql(n,e.ONE);t++)n=e.sqr(n);const n=e.pow(c,tn<<BigInt(a-t-1));c=e.sqr(n),l=e.mul(l,n),d=e.mul(d,c),a=t}return l}}function hn(e){if(e%on===rn){const t=(e+tn)/on;return function(e,n){const r=e.pow(n,t);if(!e.eql(e.sqr(r),n))throw new Error(\"Cannot find square root\");return r}}if(e%an===sn){const t=(e-sn)/an;return function(e,n){const r=e.mul(n,nn),i=e.pow(r,t),o=e.mul(n,i),s=e.mul(e.mul(o,nn),i),a=e.mul(o,e.sub(s,e.ONE));if(!e.eql(e.sqr(a),n))throw new Error(\"Cannot find square root\");return a}}return un(e)}BigInt(9),BigInt(16);Lt.isNegativeLE=(e,t)=>(cn(e,t)&tn)===tn;const fn=[\"create\",\"isValid\",\"is0\",\"neg\",\"inv\",\"sqrt\",\"sqr\",\"eql\",\"add\",\"sub\",\"mul\",\"pow\",\"div\",\"addN\",\"subN\",\"mulN\",\"sqrN\"];function pn(e,t,n){if(n<en)throw new Error(\"Expected power > 0\");if(n===en)return e.ONE;if(n===tn)return t;let r=e.ONE,i=t;for(;n>en;)n&tn&&(r=e.mul(r,i)),i=e.sqr(i),n>>=tn;return r}function gn(e,t){const n=new Array(t.length),r=t.reduce(((t,r,i)=>e.is0(r)?t:(n[i]=t,e.mul(t,r))),e.ONE),i=e.inv(r);return t.reduceRight(((t,r,i)=>e.is0(r)?t:(n[i]=e.mul(t,n[i]),e.mul(t,r))),i),n}function mn(e){const t=(e-tn)/nn;return(e,n)=>e.pow(n,t)}function yn(e,t){const n=void 0!==t?t:e.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function vn(e){if(\"bigint\"!=typeof e)throw new Error(\"field order must be bigint\");const t=e.toString(2).length;return Math.ceil(t/8)}function bn(e){const t=vn(e);return t+Math.ceil(t/2)}Object.defineProperty(Rt,\"__esModule\",{value:!0}),Rt.wNAF=function(e,t){const n=(e,t)=>{const n=t.negate();return e?n:t},r=e=>{if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error(`Wrong window size=${e}, should be [1..${t}]`)},i=e=>{r(e);return{windows:Math.ceil(t/e)+1,windowSize:2**(e-1)}};return{constTimeNegate:n,unsafeLadder(t,n){let r=e.ZERO,i=t;for(;n>Cn;)n&Sn&&(r=r.add(i)),i=i.double(),n>>=Sn;return r},precomputeWindow(e,t){const{windows:n,windowSize:r}=i(t),o=[];let s=e,a=s;for(let e=0;e<n;e++){a=s,o.push(a);for(let e=1;e<r;e++)a=a.add(s),o.push(a);s=a.double()}return o},wNAF(t,r,o){const{windows:s,windowSize:a}=i(t);let c=e.ZERO,l=e.BASE;const d=BigInt(2**t-1),u=2**t,h=BigInt(t);for(let e=0;e<s;e++){const t=e*a;let i=Number(o&d);o>>=h,i>a&&(i-=u,o+=Sn);const s=t,f=t+Math.abs(i)-1,p=e%2!=0,g=i<0;0===i?l=l.add(n(p,r[s])):c=c.add(n(g,r[f]))}return{p:c,f:l}},wNAFCached(e,t,n){const r=kn.get(e)||1;let i=_n.get(e);return i||(i=this.precomputeWindow(e,r),1!==r&&_n.set(e,n(i))),this.wNAF(r,i,t)},setWindowSize(e,t){r(t),kn.set(e,t),_n.delete(e)}}},Rt.pippenger=function(e,t,n,r){if(!Array.isArray(n)||!Array.isArray(r)||r.length!==n.length)throw new Error(\"arrays of points and scalars must have equal length\");r.forEach(((e,n)=>{if(!t.isValid(e))throw new Error(`wrong scalar at index ${n}`)})),n.forEach(((t,n)=>{if(!(t instanceof e))throw new Error(`wrong point at index ${n}`)}));const i=(0,En.bitLen)(BigInt(n.length)),o=i>12?i-3:i>4?i-2:i?2:1,s=(1<<o)-1,a=new Array(s+1).fill(e.ZERO),c=Math.floor((t.BITS-1)/o)*o;let l=e.ZERO;for(let t=c;t>=0;t-=o){a.fill(e.ZERO);for(let e=0;e<r.length;e++){const i=r[e],o=Number(i>>BigInt(t)&BigInt(s));a[o]=a[o].add(n[e])}let i=e.ZERO;for(let t=a.length-1,n=e.ZERO;t>0;t--)n=n.add(a[t]),i=i.add(n);if(l=l.add(i),0!==t)for(let e=0;e<o;e++)l=l.double()}return l},Rt.validateBasic=function(e){return(0,wn.validateField)(e.Fp),(0,En.validateObject)(e,{n:\"bigint\",h:\"bigint\",Gx:\"field\",Gy:\"field\"},{nBitLength:\"isSafeInteger\",nByteLength:\"isSafeInteger\"}),Object.freeze({...(0,wn.nLength)(e.n,e.nBitLength),...e,p:e.Fp.ORDER})};const wn=Lt,En=Ot,Cn=BigInt(0),Sn=BigInt(1),_n=new WeakMap,kn=new WeakMap;Object.defineProperty(Pt,\"__esModule\",{value:!0}),Pt.twistedEdwards=function(e){const t=function(e){const t=(0,xn.validateBasic)(e);return An.validateObject(e,{hash:\"function\",a:\"bigint\",d:\"bigint\",randomBytes:\"function\"},{adjustScalarBytes:\"function\",domain:\"function\",uvRatio:\"function\",mapToCurve:\"function\"}),Object.freeze({...t})}(e),{Fp:n,n:r,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,l=Ln<<BigInt(8*a)-Rn,d=n.create,u=(0,Mn.Field)(t.n,t.nBitLength),h=t.uvRatio||((e,t)=>{try{return{isValid:!0,value:n.sqrt(e*n.inv(t))}}catch(e){return{isValid:!1,value:Pn}}}),f=t.adjustScalarBytes||(e=>e),p=t.domain||((e,t,n)=>{if((0,In.abool)(\"phflag\",n),t.length||n)throw new Error(\"Contexts/pre-hash are not supported\");return e});function g(e,t){An.aInRange(\"coordinate \"+e,t,Pn,l)}function m(e){if(!(e instanceof b))throw new Error(\"ExtendedPoint expected\")}const y=(0,In.memoized)(((e,t)=>{const{ex:r,ey:i,ez:o}=e,s=e.is0();null==t&&(t=s?On:n.inv(o));const a=d(r*t),c=d(i*t),l=d(o*t);if(s)return{x:Pn,y:Rn};if(l!==Rn)throw new Error(\"invZ was invalid\");return{x:a,y:c}})),v=(0,In.memoized)((e=>{const{a:n,d:r}=t;if(e.is0())throw new Error(\"bad point: ZERO\");const{ex:i,ey:o,ez:s,et:a}=e,c=d(i*i),l=d(o*o),u=d(s*s),h=d(u*u),f=d(c*n);if(d(u*d(f+l))!==d(h+d(r*d(c*l))))throw new Error(\"bad point: equation left != right (1)\");if(d(i*o)!==d(s*a))throw new Error(\"bad point: equation left != right (2)\");return!0}));class b{constructor(e,t,n,r){this.ex=e,this.ey=t,this.ez=n,this.et=r,g(\"x\",e),g(\"y\",t),g(\"z\",n),g(\"t\",r),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(e){if(e instanceof b)throw new Error(\"extended point not allowed\");const{x:t,y:n}=e||{};return g(\"x\",t),g(\"y\",n),new b(t,n,Rn,d(t*n))}static normalizeZ(e){const t=n.invertBatch(e.map((e=>e.ez)));return e.map(((e,n)=>e.toAffine(t[n]))).map(b.fromAffine)}static msm(e,t){return(0,xn.pippenger)(b,u,e,t)}_setWindowSize(e){C.setWindowSize(this,e)}assertValidity(){v(this)}equals(e){m(e);const{ex:t,ey:n,ez:r}=this,{ex:i,ey:o,ez:s}=e,a=d(t*s),c=d(i*r),l=d(n*s),u=d(o*r);return a===c&&l===u}is0(){return this.equals(b.ZERO)}negate(){return new b(d(-this.ex),this.ey,this.ez,d(-this.et))}double(){const{a:e}=t,{ex:n,ey:r,ez:i}=this,o=d(n*n),s=d(r*r),a=d(Ln*d(i*i)),c=d(e*o),l=n+r,u=d(d(l*l)-o-s),h=c+s,f=h-a,p=c-s,g=d(u*f),m=d(h*p),y=d(u*p),v=d(f*h);return new b(g,m,v,y)}add(e){m(e);const{a:n,d:r}=t,{ex:i,ey:o,ez:s,et:a}=this,{ex:c,ey:l,ez:u,et:h}=e;if(n===BigInt(-1)){const e=d((o-i)*(l+c)),t=d((o+i)*(l-c)),n=d(t-e);if(n===Pn)return this.double();const r=d(s*Ln*h),f=d(a*Ln*u),p=f+r,g=t+e,m=f-r,y=d(p*n),v=d(g*m),w=d(p*m),E=d(n*g);return new b(y,v,E,w)}const f=d(i*c),p=d(o*l),g=d(a*r*h),y=d(s*u),v=d((i+o)*(c+l)-f-p),w=y-g,E=y+g,C=d(p-n*f),S=d(v*w),_=d(E*C),k=d(v*C),x=d(w*E);return new b(S,_,x,k)}subtract(e){return this.add(e.negate())}wNAF(e){return C.wNAFCached(this,e,b.normalizeZ)}multiply(e){const t=e;An.aInRange(\"scalar\",t,Rn,r);const{p:n,f:i}=this.wNAF(t);return b.normalizeZ([n,i])[0]}multiplyUnsafe(e){const t=e;return An.aInRange(\"scalar\",t,Pn,r),t===Pn?E:this.equals(E)||t===Rn?this:this.equals(w)?this.wNAF(t).p:C.unsafeLadder(this,t)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return C.unsafeLadder(this,r).is0()}toAffine(e){return y(this,e)}clearCofactor(){const{h:e}=t;return e===Rn?this:this.multiplyUnsafe(e)}static fromHex(e,r=!1){const{d:i,a:o}=t,s=n.BYTES;e=(0,In.ensureBytes)(\"pointHex\",e,s),(0,In.abool)(\"zip215\",r);const a=e.slice(),c=e[s-1];a[s-1]=-129&c;const u=An.bytesToNumberLE(a),f=r?l:n.ORDER;An.aInRange(\"pointHex.y\",u,Pn,f);const p=d(u*u),g=d(p-Rn),m=d(i*p-o);let{isValid:y,value:v}=h(g,m);if(!y)throw new Error(\"Point.fromHex: invalid y coordinate\");const w=(v&Rn)===Rn,E=0!=(128&c);if(!r&&v===Pn&&E)throw new Error(\"Point.fromHex: x=0 and x_0=1\");return E!==w&&(v=d(-v)),b.fromAffine({x:v,y:u})}static fromPrivateKey(e){return k(e).point}toRawBytes(){const{x:e,y:t}=this.toAffine(),r=An.numberToBytesLE(t,n.BYTES);return r[r.length-1]|=e&Rn?128:0,r}toHex(){return An.bytesToHex(this.toRawBytes())}}b.BASE=new b(t.Gx,t.Gy,Rn,d(t.Gx*t.Gy)),b.ZERO=new b(Pn,Rn,Rn,Pn);const{BASE:w,ZERO:E}=b,C=(0,xn.wNAF)(b,8*a);function S(e){return(0,Mn.mod)(e,r)}function _(e){return S(An.bytesToNumberLE(e))}function k(e){const t=a;e=(0,In.ensureBytes)(\"private key\",e,t);const n=(0,In.ensureBytes)(\"hashed private key\",o(e),2*t),r=f(n.slice(0,t)),i=n.slice(t,2*t),s=_(r),c=w.multiply(s),l=c.toRawBytes();return{head:r,prefix:i,scalar:s,point:c,pointBytes:l}}function x(e=new Uint8Array,...t){const n=An.concatBytes(...t);return _(o(p(n,(0,In.ensureBytes)(\"context\",e),!!i)))}const M=Tn;w._setWindowSize(8);const A={getExtendedPublicKey:k,randomPrivateKey:()=>s(n.BYTES),precompute:(e=8,t=b.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};return{CURVE:t,getPublicKey:function(e){return k(e).pointBytes},sign:function(e,t,o={}){e=(0,In.ensureBytes)(\"message\",e),i&&(e=i(e));const{prefix:s,scalar:c,pointBytes:l}=k(t),d=x(o.context,s,e),u=w.multiply(d).toRawBytes(),h=S(d+x(o.context,u,l,e)*c);An.aInRange(\"signature.s\",h,Pn,r);const f=An.concatBytes(u,An.numberToBytesLE(h,n.BYTES));return(0,In.ensureBytes)(\"result\",f,2*a)},verify:function(e,t,r,o=M){const{context:s,zip215:a}=o,c=n.BYTES;e=(0,In.ensureBytes)(\"signature\",e,2*c),t=(0,In.ensureBytes)(\"message\",t),void 0!==a&&(0,In.abool)(\"zip215\",a),i&&(t=i(t));const l=An.bytesToNumberLE(e.slice(c,2*c));let d,u,h;try{d=b.fromHex(r,a),u=b.fromHex(e.slice(0,c),a),h=w.multiplyUnsafe(l)}catch(e){return!1}if(!a&&d.isSmallOrder())return!1;const f=x(s,u.toRawBytes(),d.toRawBytes(),t);return u.add(d.multiplyUnsafe(f)).subtract(h).clearCofactor().equals(b.ZERO)},ExtendedPoint:b,utils:A}};const xn=Rt,Mn=Lt,An=Ot,In=Ot,Pn=BigInt(0),Rn=BigInt(1),Ln=BigInt(2),On=BigInt(8),Tn={zip215:!0};var Nn={};Object.defineProperty(Nn,\"__esModule\",{value:!0}),Nn.expand_message_xmd=Hn,Nn.expand_message_xof=Fn,Nn.hash_to_field=zn,Nn.isogenyMap=function(e,t){const n=t.map((e=>Array.from(e).reverse()));return(t,r)=>{const[i,o,s,a]=n.map((n=>n.reduce(((n,r)=>e.add(e.mul(n,t),r)))));return t=e.div(i,o),r=e.mul(r,e.div(s,a)),{x:t,y:r}}},Nn.createHasher=function(e,t,n){if(\"function\"!=typeof t)throw new Error(\"mapToCurve() must be defined\");return{hashToCurve(r,i){const o=zn(r,2,{...n,DST:n.DST,...i}),s=e.fromAffine(t(o[0])),a=e.fromAffine(t(o[1])),c=s.add(a).clearCofactor();return c.assertValidity(),c},encodeToCurve(r,i){const o=zn(r,1,{...n,DST:n.encodeDST,...i}),s=e.fromAffine(t(o[0])).clearCofactor();return s.assertValidity(),s},mapToCurve(n){if(!Array.isArray(n))throw new Error(\"mapToCurve: expected array of bigints\");for(const e of n)if(\"bigint\"!=typeof e)throw new Error(`mapToCurve: expected array of bigints, got ${e} in array`);const r=e.fromAffine(t(n)).clearCofactor();return r.assertValidity(),r}}};const Dn=Lt,$n=Ot,Bn=$n.bytesToNumberBE;function Kn(e,t){if(Un(e),Un(t),e<0||e>=1<<8*t)throw new Error(`bad I2OSP call: value=${e} length=${t}`);const n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=255&e,e>>>=8;return new Uint8Array(n)}function jn(e,t){const n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function Un(e){if(!Number.isSafeInteger(e))throw new Error(\"number expected\")}function Hn(e,t,n,r){(0,$n.abytes)(e),(0,$n.abytes)(t),Un(n),t.length>255&&(t=r((0,$n.concatBytes)((0,$n.utf8ToBytes)(\"H2C-OVERSIZE-DST-\"),t)));const{outputLen:i,blockLen:o}=r,s=Math.ceil(n/i);if(n>65535||s>255)throw new Error(\"expand_message_xmd: invalid lenInBytes\");const a=(0,$n.concatBytes)(t,Kn(t.length,1)),c=Kn(0,o),l=Kn(n,2),d=new Array(s),u=r((0,$n.concatBytes)(c,e,l,Kn(0,1),a));d[0]=r((0,$n.concatBytes)(u,Kn(1,1),a));for(let e=1;e<=s;e++){const t=[jn(u,d[e-1]),Kn(e+1,1),a];d[e]=r((0,$n.concatBytes)(...t))}return(0,$n.concatBytes)(...d).slice(0,n)}function Fn(e,t,n,r,i){if((0,$n.abytes)(e),(0,$n.abytes)(t),Un(n),t.length>255){const e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update((0,$n.utf8ToBytes)(\"H2C-OVERSIZE-DST-\")).update(t).digest()}if(n>65535||t.length>255)throw new Error(\"expand_message_xof: invalid lenInBytes\");return i.create({dkLen:n}).update(e).update(Kn(n,2)).update(t).update(Kn(t.length,1)).digest()}function zn(e,t,n){(0,$n.validateObject)(n,{DST:\"stringOrUint8Array\",p:\"bigint\",m:\"isSafeInteger\",k:\"isSafeInteger\",hash:\"hash\"});const{p:r,k:i,m:o,hash:s,expand:a,DST:c}=n;(0,$n.abytes)(e),Un(t);const l=\"string\"==typeof c?(0,$n.utf8ToBytes)(c):c,d=r.toString(2).length,u=Math.ceil((d+i)/8),h=t*o*u;let f;if(\"xmd\"===a)f=Hn(e,l,h,s);else if(\"xof\"===a)f=Fn(e,l,h,i,s);else{if(\"_internal_pass\"!==a)throw new Error('expand must be \"xmd\" or \"xof\"');f=e}const p=new Array(t);for(let e=0;e<t;e++){const t=new Array(o);for(let n=0;n<o;n++){const i=u*(n+e*o),s=f.subarray(i,i+u);t[n]=(0,Dn.mod)(Bn(s),r)}p[e]=t}return p}var qn={};Object.defineProperty(qn,\"__esModule\",{value:!0}),qn.montgomery=function(e){const t=function(e){return(0,Wn.validateObject)(e,{a:\"bigint\"},{montgomeryBits:\"isSafeInteger\",nByteLength:\"isSafeInteger\",adjustScalarBytes:\"function\",domain:\"function\",powPminus2:\"function\",Gu:\"bigint\"}),Object.freeze({...e})}(e),{P:n}=t,r=e=>(0,Vn.mod)(e,n),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(e=>e),c=t.powPminus2||(e=>(0,Vn.pow)(e,n-BigInt(2),n));function l(e,t,n){const i=r(e*(t-n));return[t=r(t-i),n=r(n+i)]}const d=(t.a-BigInt(2))/BigInt(4);function u(e){return(0,Wn.numberToBytesLE)(r(e),o)}function h(e,t){const h=function(e){const t=(0,Wn.ensureBytes)(\"u coordinate\",e,o);return 32===s&&(t[31]&=127),(0,Wn.bytesToNumberLE)(t)}(t),f=function(e){const t=(0,Wn.ensureBytes)(\"scalar\",e),n=t.length;if(n!==o&&n!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${n}`);return(0,Wn.bytesToNumberLE)(a(t))}(e),p=function(e,t){(0,Wn.aInRange)(\"u\",e,Gn,n),(0,Wn.aInRange)(\"scalar\",t,Gn,n);const o=t,s=e;let a,u=Zn,h=Gn,f=e,p=Zn,g=Gn;for(let e=BigInt(i-1);e>=Gn;e--){const t=o>>e&Zn;g^=t,a=l(g,u,f),u=a[0],f=a[1],a=l(g,h,p),h=a[0],p=a[1],g=t;const n=u+h,i=r(n*n),c=u-h,m=r(c*c),y=i-m,v=f+p,b=r((f-p)*n),w=r(v*c),E=b+w,C=b-w;f=r(E*E),p=r(s*r(C*C)),u=r(i*m),h=r(y*(i+r(d*y)))}a=l(g,u,f),u=a[0],f=a[1],a=l(g,h,p),h=a[0],p=a[1];const m=c(h);return r(u*m)}(h,f);if(p===Gn)throw new Error(\"Invalid private or public key received\");return u(p)}const f=u(t.Gu);function p(e){return h(e,f)}return{scalarMult:h,scalarMultBase:p,getSharedSecret:(e,t)=>h(e,t),getPublicKey:e=>p(e),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:f}};const Vn=Lt,Wn=Ot,Gn=BigInt(0),Zn=BigInt(1);!function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.hash_to_ristretto255=e.hashToRistretto255=e.RistrettoPoint=e.encodeToCurve=e.hashToCurve=e.edwardsToMontgomery=e.x25519=e.ed25519ph=e.ed25519ctx=e.ed25519=e.ED25519_TORSION_SUBGROUP=void 0,e.edwardsToMontgomeryPub=C,e.edwardsToMontgomeryPriv=function(e){const t=w.hash(e.subarray(0,32));return w.adjustScalarBytes(t).subarray(0,32)};const t=Le,n=Fe,r=Pt,i=Nn,o=Lt,s=qn,a=Ot,c=BigInt(\"57896044618658097711785492504343953926634992332820282019728792003956564819949\"),l=BigInt(\"19681161376707505956807079304988542015446066515923890162744021073123829784752\"),d=BigInt(0),u=BigInt(1),h=BigInt(2),f=BigInt(3),p=BigInt(5),g=BigInt(8);function m(e){const t=BigInt(10),n=BigInt(20),r=BigInt(40),i=BigInt(80),s=c,a=e*e%s*e%s,l=(0,o.pow2)(a,h,s)*a%s,d=(0,o.pow2)(l,u,s)*e%s,f=(0,o.pow2)(d,p,s)*d%s,g=(0,o.pow2)(f,t,s)*f%s,m=(0,o.pow2)(g,n,s)*g%s,y=(0,o.pow2)(m,r,s)*m%s,v=(0,o.pow2)(y,i,s)*y%s,b=(0,o.pow2)(v,i,s)*y%s,w=(0,o.pow2)(b,t,s)*f%s;return{pow_p_5_8:(0,o.pow2)(w,h,s)*e%s,b2:a}}function y(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function v(e,t){const n=c,r=(0,o.mod)(t*t*t,n),i=m(e*(0,o.mod)(r*r*t,n)).pow_p_5_8;let s=(0,o.mod)(e*r*i,n);const a=(0,o.mod)(t*s*s,n),d=s,u=(0,o.mod)(s*l,n),h=a===e,f=a===(0,o.mod)(-e,n),p=a===(0,o.mod)(-e*l,n);return h&&(s=d),(f||p)&&(s=u),(0,o.isNegativeLE)(s,n)&&(s=(0,o.mod)(-s,n)),{isValid:h||f,value:s}}e.ED25519_TORSION_SUBGROUP=[\"0100000000000000000000000000000000000000000000000000000000000000\",\"c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a\",\"0000000000000000000000000000000000000000000000000000000000000080\",\"26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05\",\"ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f\",\"26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85\",\"0000000000000000000000000000000000000000000000000000000000000000\",\"c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa\"];const b=(()=>(0,o.Field)(c,void 0,!0))(),w=(()=>({a:BigInt(-1),d:BigInt(\"37095705934669439343138083508754565189542113879843219016388785533085940283555\"),Fp:b,n:BigInt(\"7237005577332262213973186563042994240857116359379907606001950938285454250989\"),h:g,Gx:BigInt(\"15112221349535400772501151409588531511454012693041857206046113283949847762202\"),Gy:BigInt(\"46316835694926478169428394003475163141307993866256225615783033603165251855960\"),hash:t.sha512,randomBytes:n.randomBytes,adjustScalarBytes:y,uvRatio:v}))();function E(e,t,r){if(t.length>255)throw new Error(\"Context is too big\");return(0,n.concatBytes)((0,n.utf8ToBytes)(\"SigEd25519 no Ed25519 collisions\"),new Uint8Array([r?1:0,t.length]),t,e)}function C(t){const{y:n}=e.ed25519.ExtendedPoint.fromHex(t),r=BigInt(1);return b.toBytes(b.create((r+n)*b.inv(r-n)))}e.ed25519=(0,r.twistedEdwards)(w),e.ed25519ctx=(0,r.twistedEdwards)({...w,domain:E}),e.ed25519ph=(0,r.twistedEdwards)(Object.assign({},w,{domain:E,prehash:t.sha512})),e.x25519=(0,s.montgomery)({P:c,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{const t=c,{pow_p_5_8:n,b2:r}=m(e);return(0,o.mod)((0,o.pow2)(n,f,t)*r,t)},adjustScalarBytes:y,randomBytes:n.randomBytes}),e.edwardsToMontgomery=C;const S=(()=>(b.ORDER+f)/g)(),_=(()=>b.pow(h,S))(),k=(()=>b.sqrt(b.neg(b.ONE)))();const x=(()=>(0,o.FpSqrtEven)(b,b.neg(BigInt(486664))))();function M(e){const{xMn:t,xMd:n,yMn:r,yMd:i}=function(e){const t=(b.ORDER-p)/g,n=BigInt(486662);let r=b.sqr(e);r=b.mul(r,h);let i=b.add(r,b.ONE),o=b.neg(n),s=b.sqr(i),a=b.mul(s,i),c=b.mul(r,n);c=b.mul(c,o),c=b.add(c,s),c=b.mul(c,o);let l=b.sqr(a);s=b.sqr(l),l=b.mul(l,a),l=b.mul(l,c),s=b.mul(s,l);let d=b.pow(s,t);d=b.mul(d,l);let f=b.mul(d,k);s=b.sqr(d),s=b.mul(s,a);let m=b.eql(s,c),y=b.cmov(f,d,m),v=b.mul(o,r),w=b.mul(d,e);w=b.mul(w,_);let E=b.mul(w,k),C=b.mul(c,r);s=b.sqr(w),s=b.mul(s,a);let S=b.eql(s,C),x=b.cmov(E,w,S);s=b.sqr(y),s=b.mul(s,a);let M=b.eql(s,c),A=b.cmov(v,o,M),I=b.cmov(x,y,M),P=b.isOdd(I);return I=b.cmov(I,b.neg(I),M!==P),{xMn:A,xMd:i,yMn:I,yMd:u}}(e);let o=b.mul(t,i);o=b.mul(o,x);let s=b.mul(n,r),a=b.sub(t,n),c=b.add(t,n),l=b.mul(s,c),d=b.eql(l,b.ZERO);o=b.cmov(o,b.ZERO,d),s=b.cmov(s,b.ONE,d),a=b.cmov(a,b.ONE,d),c=b.cmov(c,b.ONE,d);const f=b.invertBatch([s,c]);return{x:b.mul(o,f[0]),y:b.mul(a,f[1])}}const A=(()=>(0,i.createHasher)(e.ed25519.ExtendedPoint,(e=>M(e[0])),{DST:\"edwards25519_XMD:SHA-512_ELL2_RO_\",encodeDST:\"edwards25519_XMD:SHA-512_ELL2_NU_\",p:b.ORDER,m:1,k:128,expand:\"xmd\",hash:t.sha512}))();function I(e){if(!(e instanceof K))throw new Error(\"RistrettoPoint expected\")}e.hashToCurve=A.hashToCurve,e.encodeToCurve=A.encodeToCurve;const P=l,R=BigInt(\"25063068953384623474111414158702152701244531502492656460079210482610430750235\"),L=BigInt(\"54469307008909316920995813868745141605393597292927456921205312896311721017578\"),O=BigInt(\"1159843021668779879193775521855586647937357759715417654439879720876111806838\"),T=BigInt(\"40440834346308536858101042469323190826248399146238708352240133220865137265952\"),N=e=>v(u,e),D=BigInt(\"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\"),$=t=>e.ed25519.CURVE.Fp.create((0,a.bytesToNumberLE)(t)&D);function B(t){const{d:n}=e.ed25519.CURVE,r=e.ed25519.CURVE.Fp.ORDER,i=e.ed25519.CURVE.Fp.create,s=i(P*t*t),a=i((s+u)*O);let c=BigInt(-1);const l=i((c-n*s)*i(s+n));let{isValid:d,value:h}=v(a,l),f=i(h*t);(0,o.isNegativeLE)(f,r)||(f=i(-f)),d||(h=f),d||(c=s);const p=i(c*(s-u)*T-l),g=h*h,m=i((h+h)*l),y=i(p*R),b=i(u-g),w=i(u+g);return new e.ed25519.ExtendedPoint(i(m*w),i(b*y),i(y*w),i(m*b))}class K{constructor(e){this.ep=e}static fromAffine(t){return new K(e.ed25519.ExtendedPoint.fromAffine(t))}static hashToCurve(e){e=(0,a.ensureBytes)(\"ristrettoHash\",e,64);const t=B($(e.slice(0,32))),n=B($(e.slice(32,64)));return new K(t.add(n))}static fromHex(t){t=(0,a.ensureBytes)(\"ristrettoHex\",t,32);const{a:n,d:r}=e.ed25519.CURVE,i=e.ed25519.CURVE.Fp.ORDER,s=e.ed25519.CURVE.Fp.create,c=\"RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint\",l=$(t);if(!(0,a.equalBytes)((0,a.numberToBytesLE)(l,32),t)||(0,o.isNegativeLE)(l,i))throw new Error(c);const h=s(l*l),f=s(u+n*h),p=s(u-n*h),g=s(f*f),m=s(p*p),y=s(n*r*g-m),{isValid:v,value:b}=N(s(y*m)),w=s(b*p),E=s(b*w*y);let C=s((l+l)*w);(0,o.isNegativeLE)(C,i)&&(C=s(-C));const S=s(f*E),_=s(C*S);if(!v||(0,o.isNegativeLE)(_,i)||S===d)throw new Error(c);return new K(new e.ed25519.ExtendedPoint(C,S,u,_))}toRawBytes(){let{ex:t,ey:n,ez:r,et:i}=this.ep;const s=e.ed25519.CURVE.Fp.ORDER,c=e.ed25519.CURVE.Fp.create,l=c(c(r+n)*c(r-n)),d=c(t*n),u=c(d*d),{value:h}=N(c(l*u)),f=c(h*l),p=c(h*d),g=c(f*p*i);let m;if((0,o.isNegativeLE)(i*g,s)){let e=c(n*P),r=c(t*P);t=e,n=r,m=c(f*L)}else m=p;(0,o.isNegativeLE)(t*g,s)&&(n=c(-n));let y=c((r-n)*m);return(0,o.isNegativeLE)(y,s)&&(y=c(-y)),(0,a.numberToBytesLE)(y,32)}toHex(){return(0,a.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(t){I(t);const{ex:n,ey:r}=this.ep,{ex:i,ey:o}=t.ep,s=e.ed25519.CURVE.Fp.create,a=s(n*o)===s(r*i),c=s(r*o)===s(n*i);return a||c}add(e){return I(e),new K(this.ep.add(e.ep))}subtract(e){return I(e),new K(this.ep.subtract(e.ep))}multiply(e){return new K(this.ep.multiply(e))}multiplyUnsafe(e){return new K(this.ep.multiplyUnsafe(e))}double(){return new K(this.ep.double())}negate(){return new K(this.ep.negate())}}e.RistrettoPoint=(K.BASE||(K.BASE=new K(e.ed25519.ExtendedPoint.BASE)),K.ZERO||(K.ZERO=new K(e.ed25519.ExtendedPoint.ZERO)),K);e.hashToRistretto255=(e,r)=>{const o=r.DST,s=\"string\"==typeof o?(0,n.utf8ToBytes)(o):o,a=(0,i.expand_message_xmd)(e,s,64,t.sha512);return K.hashToCurve(a)},e.hash_to_ristretto255=e.hashToRistretto255}(Re);var Yn={},Jn={};Object.defineProperty(Jn,\"__esModule\",{value:!0}),Jn.sha224=Jn.sha256=Jn.SHA256=void 0;const Xn=Oe,Qn=Fe,er=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]),tr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nr=new Uint32Array(64);class rr extends Xn.HashMD{constructor(){super(64,32,8,!1),this.A=0|tr[0],this.B=0|tr[1],this.C=0|tr[2],this.D=0|tr[3],this.E=0|tr[4],this.F=0|tr[5],this.G=0|tr[6],this.H=0|tr[7]}get(){const{A:e,B:t,C:n,D:r,E:i,F:o,G:s,H:a}=this;return[e,t,n,r,i,o,s,a]}set(e,t,n,r,i,o,s,a){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|r,this.E=0|i,this.F=0|o,this.G=0|s,this.H=0|a}process(e,t){for(let n=0;n<16;n++,t+=4)nr[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=nr[e-15],n=nr[e-2],r=(0,Qn.rotr)(t,7)^(0,Qn.rotr)(t,18)^t>>>3,i=(0,Qn.rotr)(n,17)^(0,Qn.rotr)(n,19)^n>>>10;nr[e]=i+nr[e-7]+r+nr[e-16]|0}let{A:n,B:r,C:i,D:o,E:s,F:a,G:c,H:l}=this;for(let e=0;e<64;e++){const t=l+((0,Qn.rotr)(s,6)^(0,Qn.rotr)(s,11)^(0,Qn.rotr)(s,25))+(0,Xn.Chi)(s,a,c)+er[e]+nr[e]|0,d=((0,Qn.rotr)(n,2)^(0,Qn.rotr)(n,13)^(0,Qn.rotr)(n,22))+(0,Xn.Maj)(n,r,i)|0;l=c,c=a,a=s,s=o+t|0,o=i,i=r,r=n,n=t+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,o=o+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,o,s,a,c,l)}roundClean(){nr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}Jn.SHA256=rr;class ir extends rr{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}Jn.sha256=(0,Qn.wrapConstructor)((()=>new rr)),Jn.sha224=(0,Qn.wrapConstructor)((()=>new ir));var or={},sr={};!function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.hmac=e.HMAC=void 0;const t=Te,n=Fe;class r extends n.Hash{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,(0,t.hash)(e);const i=(0,n.toBytes)(r);if(this.iHash=e.create(),\"function\"!=typeof this.iHash.update)throw new Error(\"Expected instance of class which extends utils.Hash\");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,s=new Uint8Array(o);s.set(i.length>o?e.create().update(i).digest():i);for(let e=0;e<s.length;e++)s[e]^=54;this.iHash.update(s),this.oHash=e.create();for(let e=0;e<s.length;e++)s[e]^=106;this.oHash.update(s),s.fill(0)}update(e){return(0,t.exists)(this),this.iHash.update(e),this}digestInto(e){(0,t.exists)(this),(0,t.bytes)(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:o,outputLen:s}=this;return e.finished=r,e.destroyed=i,e.blockLen=o,e.outputLen=s,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}e.HMAC=r;e.hmac=(e,t,n)=>new r(e,t).update(n).digest(),e.hmac.create=(e,t)=>new r(e,t)}(sr);var ar={};!function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.DER=void 0,e.weierstrassPoints=f,e.weierstrass=function(s){const a=function(e){const n=(0,t.validateBasic)(e);return r.validateObject(n,{hash:\"hash\",hmac:\"function\",randomBytes:\"function\"},{bits2int:\"function\",bits2int_modN:\"function\",lowS:\"boolean\"}),Object.freeze({lowS:!0,...n})}(s),{Fp:d,n:u}=a,h=d.BYTES+1,p=2*d.BYTES+1;function g(e){return n.mod(e,u)}function m(e){return n.invert(e,u)}const{ProjectivePoint:y,normPrivateKeyToScalar:v,weierstrassEquation:b,isWithinCurveOrder:w}=f({...a,toBytes(e,t,n){const o=t.toAffine(),s=d.toBytes(o.x),a=r.concatBytes;return(0,i.abool)(\"isCompressed\",n),n?a(Uint8Array.from([t.hasEvenY()?2:3]),s):a(Uint8Array.from([4]),s,d.toBytes(o.y))},fromBytes(e){const t=e.length,n=e[0],i=e.subarray(1);if(t!==h||2!==n&&3!==n){if(t===p&&4===n){return{x:d.fromBytes(i.subarray(0,d.BYTES)),y:d.fromBytes(i.subarray(d.BYTES,2*d.BYTES))}}throw new Error(`Point of length ${t} was invalid. Expected ${h} compressed bytes or ${p} uncompressed bytes`)}{const e=r.bytesToNumberBE(i);if(!r.inRange(e,l,d.ORDER))throw new Error(\"Point is not on curve\");const t=b(e);let o;try{o=d.sqrt(t)}catch(e){const t=e instanceof Error?\": \"+e.message:\"\";throw new Error(\"Point is not on curve\"+t)}return 1==(1&n)!==((o&l)===l)&&(o=d.neg(o)),{x:e,y:o}}}}),E=e=>r.bytesToHex(r.numberToBytesBE(e,a.nByteLength));function C(e){return e>u>>l}const S=(e,t,n)=>r.bytesToNumberBE(e.slice(t,n));class _{constructor(e,t,n){this.r=e,this.s=t,this.recovery=n,this.assertValidity()}static fromCompact(e){const t=a.nByteLength;return e=(0,i.ensureBytes)(\"compactSignature\",e,2*t),new _(S(e,0,t),S(e,t,2*t))}static fromDER(t){const{r:n,s:r}=e.DER.toSig((0,i.ensureBytes)(\"DER\",t));return new _(n,r)}assertValidity(){r.aInRange(\"r\",this.r,l,u),r.aInRange(\"s\",this.s,l,u)}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){const{r:t,s:n,recovery:r}=this,o=A((0,i.ensureBytes)(\"msgHash\",e));if(null==r||![0,1,2,3].includes(r))throw new Error(\"recovery id invalid\");const s=2===r||3===r?t+a.n:t;if(s>=d.ORDER)throw new Error(\"recovery id 2 or 3 invalid\");const c=0==(1&r)?\"02\":\"03\",l=y.fromHex(c+E(s)),u=m(s),h=g(-o*u),f=g(n*u),p=y.BASE.multiplyAndAddUnsafe(l,h,f);if(!p)throw new Error(\"point at infinify\");return p.assertValidity(),p}hasHighS(){return C(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,g(-this.s),this.recovery):this}toDERRawBytes(){return r.hexToBytes(this.toDERHex())}toDERHex(){return e.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return r.hexToBytes(this.toCompactHex())}toCompactHex(){return E(this.r)+E(this.s)}}const k={isValidPrivateKey(e){try{return v(e),!0}catch(e){return!1}},normPrivateKeyToScalar:v,randomPrivateKey:()=>{const e=n.getMinHashLength(a.n);return n.mapHashToField(a.randomBytes(e),a.n)},precompute:(e=8,t=y.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};function x(e){const t=r.isBytes(e),n=\"string\"==typeof e,i=(t||n)&&e.length;return t?i===h||i===p:n?i===2*h||i===2*p:e instanceof y}const M=a.bits2int||function(e){const t=r.bytesToNumberBE(e),n=8*e.length-a.nBitLength;return n>0?t>>BigInt(n):t},A=a.bits2int_modN||function(e){return g(M(e))},I=r.bitMask(a.nBitLength);function P(e){return r.aInRange(`num < 2^${a.nBitLength}`,e,c,I),r.numberToBytesBE(e,a.nByteLength)}function R(e,t,n=L){if([\"recovered\",\"canonical\"].some((e=>e in n)))throw new Error(\"sign() legacy options not supported\");const{hash:s,randomBytes:u}=a;let{lowS:h,prehash:f,extraEntropy:p}=n;null==h&&(h=!0),e=(0,i.ensureBytes)(\"msgHash\",e),o(n),f&&(e=(0,i.ensureBytes)(\"prehashed msgHash\",s(e)));const b=A(e),E=v(t),S=[P(E),P(b)];if(null!=p&&!1!==p){const e=!0===p?u(d.BYTES):p;S.push((0,i.ensureBytes)(\"extraEntropy\",e))}const k=r.concatBytes(...S),x=b;return{seed:k,k2sig:function(e){const t=M(e);if(!w(t))return;const n=m(t),r=y.BASE.multiply(t).toAffine(),i=g(r.x);if(i===c)return;const o=g(n*g(x+i*E));if(o===c)return;let s=(r.x===i?0:2)|Number(r.y&l),a=o;return h&&C(o)&&(a=function(e){return C(e)?g(-e):e}(o),s^=1),new _(i,a,s)}}}const L={lowS:a.lowS,prehash:!1},O={lowS:a.lowS,prehash:!1};return y.BASE._setWindowSize(8),{CURVE:a,getPublicKey:function(e,t=!0){return y.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,n=!0){if(x(e))throw new Error(\"first arg must be private key\");if(!x(t))throw new Error(\"second arg must be public key\");const r=y.fromHex(t);return r.multiply(v(e)).toRawBytes(n)},sign:function(e,t,n=L){const{seed:i,k2sig:o}=R(e,t,n),s=a,c=r.createHmacDrbg(s.hash.outputLen,s.nByteLength,s.hmac);return c(i,o)},verify:function(t,n,s,c=O){const l=t;if(n=(0,i.ensureBytes)(\"msgHash\",n),s=(0,i.ensureBytes)(\"publicKey\",s),\"strict\"in c)throw new Error(\"options.strict was renamed to lowS\");o(c);const{lowS:d,prehash:u}=c;let h,f;try{if(\"string\"==typeof l||r.isBytes(l))try{h=_.fromDER(l)}catch(t){if(!(t instanceof e.DER.Err))throw t;h=_.fromCompact(l)}else{if(\"object\"!=typeof l||\"bigint\"!=typeof l.r||\"bigint\"!=typeof l.s)throw new Error(\"PARSE\");{const{r:e,s:t}=l;h=new _(e,t)}}f=y.fromHex(s)}catch(e){if(\"PARSE\"===e.message)throw new Error(\"signature must be Signature instance, Uint8Array or hex string\");return!1}if(d&&h.hasHighS())return!1;u&&(n=a.hash(n));const{r:p,s:v}=h,b=A(n),w=m(v),E=g(b*w),C=g(p*w),S=y.BASE.multiplyAndAddUnsafe(f,E,C)?.toAffine();if(!S)return!1;const k=g(S.x);return k===p},ProjectivePoint:y,Signature:_,utils:k}},e.SWUFpSqrtRatio=p,e.mapToCurveSimpleSWU=function(e,t){if(n.validateField(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error(\"mapToCurveSimpleSWU: invalid opts\");const r=p(e,t.Z);if(!e.isOdd)throw new Error(\"Fp.isOdd is not implemented!\");return n=>{let i,o,s,a,c,l,d,u;i=e.sqr(n),i=e.mul(i,t.Z),o=e.sqr(i),o=e.add(o,i),s=e.add(o,e.ONE),s=e.mul(s,t.B),a=e.cmov(t.Z,e.neg(o),!e.eql(o,e.ZERO)),a=e.mul(a,t.A),o=e.sqr(s),l=e.sqr(a),c=e.mul(l,t.A),o=e.add(o,c),o=e.mul(o,s),l=e.mul(l,a),c=e.mul(l,t.B),o=e.add(o,c),d=e.mul(i,s);const{isValid:h,value:f}=r(o,l);u=e.mul(i,n),u=e.mul(u,f),d=e.cmov(d,s,h),u=e.cmov(u,f,h);const p=e.isOdd(n)===e.isOdd(u);return u=e.cmov(e.neg(u),u,p),d=e.div(d,a),{x:d,y:u}}};const t=Rt,n=Lt,r=Ot,i=Ot;function o(e){void 0!==e.lowS&&(0,i.abool)(\"lowS\",e.lowS),void 0!==e.prehash&&(0,i.abool)(\"prehash\",e.prehash)}const{bytesToNumberBE:s,hexToBytes:a}=r;e.DER={Err:class extends Error{constructor(e=\"\"){super(e)}},_tlv:{encode:(t,n)=>{const{Err:i}=e.DER;if(t<0||t>256)throw new i(\"tlv.encode: wrong tag\");if(1&n.length)throw new i(\"tlv.encode: unpadded data\");const o=n.length/2,s=r.numberToHexUnpadded(o);if(s.length/2&128)throw new i(\"tlv.encode: long form length too big\");const a=o>127?r.numberToHexUnpadded(s.length/2|128):\"\";return`${r.numberToHexUnpadded(t)}${a}${s}${n}`},decode(t,n){const{Err:r}=e.DER;let i=0;if(t<0||t>256)throw new r(\"tlv.encode: wrong tag\");if(n.length<2||n[i++]!==t)throw new r(\"tlv.decode: wrong tlv\");const o=n[i++];let s=0;if(!!(128&o)){const e=127&o;if(!e)throw new r(\"tlv.decode(long): indefinite length not supported\");if(e>4)throw new r(\"tlv.decode(long): byte length is too big\");const t=n.subarray(i,i+e);if(t.length!==e)throw new r(\"tlv.decode: length bytes not complete\");if(0===t[0])throw new r(\"tlv.decode(long): zero leftmost byte\");for(const e of t)s=s<<8|e;if(i+=e,s<128)throw new r(\"tlv.decode(long): not minimal encoding\")}else s=o;const a=n.subarray(i,i+s);if(a.length!==s)throw new r(\"tlv.decode: wrong value length\");return{v:a,l:n.subarray(i+s)}}},_int:{encode(t){const{Err:n}=e.DER;if(t<c)throw new n(\"integer: negative integers are not allowed\");let i=r.numberToHexUnpadded(t);if(8&Number.parseInt(i[0],16)&&(i=\"00\"+i),1&i.length)throw new n(\"unexpected assertion\");return i},decode(t){const{Err:n}=e.DER;if(128&t[0])throw new n(\"Invalid signature integer: negative\");if(0===t[0]&&!(128&t[1]))throw new n(\"Invalid signature integer: unnecessary leading zero\");return s(t)}},toSig(t){const{Err:n,_int:i,_tlv:o}=e.DER,s=\"string\"==typeof t?a(t):t;r.abytes(s);const{v:c,l:l}=o.decode(48,s);if(l.length)throw new n(\"Invalid signature: left bytes after parsing\");const{v:d,l:u}=o.decode(2,c),{v:h,l:f}=o.decode(2,u);if(f.length)throw new n(\"Invalid signature: left bytes after parsing\");return{r:i.decode(d),s:i.decode(h)}},hexFromSig(t){const{_tlv:n,_int:r}=e.DER,i=`${n.encode(2,r.encode(t.r))}${n.encode(2,r.encode(t.s))}`;return n.encode(48,i)}};const c=BigInt(0),l=BigInt(1),d=BigInt(2),u=BigInt(3),h=BigInt(4);function f(e){const o=function(e){const n=(0,t.validateBasic)(e);r.validateObject(n,{a:\"field\",b:\"field\"},{allowedPrivateKeyLengths:\"array\",wrapPrivateKey:\"boolean\",isTorsionFree:\"function\",clearCofactor:\"function\",allowInfinityPoint:\"boolean\",fromBytes:\"function\",toBytes:\"function\"});const{endo:i,Fp:o,a:s}=n;if(i){if(!o.eql(s,o.ZERO))throw new Error(\"Endomorphism can only be defined for Koblitz curves that have a=0\");if(\"object\"!=typeof i||\"bigint\"!=typeof i.beta||\"function\"!=typeof i.splitScalar)throw new Error(\"Expected endomorphism with beta: bigint and splitScalar: function\")}return Object.freeze({...n})}(e),{Fp:s}=o,a=n.Field(o.n,o.nBitLength),d=o.toBytes||((e,t,n)=>{const i=t.toAffine();return r.concatBytes(Uint8Array.from([4]),s.toBytes(i.x),s.toBytes(i.y))}),h=o.fromBytes||(e=>{const t=e.subarray(1);return{x:s.fromBytes(t.subarray(0,s.BYTES)),y:s.fromBytes(t.subarray(s.BYTES,2*s.BYTES))}});function f(e){const{a:t,b:n}=o,r=s.sqr(e),i=s.mul(r,e);return s.add(s.add(i,s.mul(e,t)),n)}if(!s.eql(s.sqr(o.Gy),f(o.Gx)))throw new Error(\"bad generator point: equation left != right\");function p(e){const{allowedPrivateKeyLengths:t,nByteLength:s,wrapPrivateKey:a,n:c}=o;if(t&&\"bigint\"!=typeof e){if(r.isBytes(e)&&(e=r.bytesToHex(e)),\"string\"!=typeof e||!t.includes(e.length))throw new Error(\"Invalid key\");e=e.padStart(2*s,\"0\")}let d;try{d=\"bigint\"==typeof e?e:r.bytesToNumberBE((0,i.ensureBytes)(\"private key\",e,s))}catch(t){throw new Error(`private key must be ${s} bytes, hex or bigint, not ${typeof e}`)}return a&&(d=n.mod(d,c)),r.aInRange(\"private key\",d,l,c),d}function g(e){if(!(e instanceof v))throw new Error(\"ProjectivePoint expected\")}const m=(0,i.memoized)(((e,t)=>{const{px:n,py:r,pz:i}=e;if(s.eql(i,s.ONE))return{x:n,y:r};const o=e.is0();null==t&&(t=o?s.ONE:s.inv(i));const a=s.mul(n,t),c=s.mul(r,t),l=s.mul(i,t);if(o)return{x:s.ZERO,y:s.ZERO};if(!s.eql(l,s.ONE))throw new Error(\"invZ was invalid\");return{x:a,y:c}})),y=(0,i.memoized)((e=>{if(e.is0()){if(o.allowInfinityPoint&&!s.is0(e.py))return;throw new Error(\"bad point: ZERO\")}const{x:t,y:n}=e.toAffine();if(!s.isValid(t)||!s.isValid(n))throw new Error(\"bad point: x or y not FE\");const r=s.sqr(n),i=f(t);if(!s.eql(r,i))throw new Error(\"bad point: equation left != right\");if(!e.isTorsionFree())throw new Error(\"bad point: not in prime-order subgroup\");return!0}));class v{constructor(e,t,n){if(this.px=e,this.py=t,this.pz=n,null==e||!s.isValid(e))throw new Error(\"x required\");if(null==t||!s.isValid(t))throw new Error(\"y required\");if(null==n||!s.isValid(n))throw new Error(\"z required\");Object.freeze(this)}static fromAffine(e){const{x:t,y:n}=e||{};if(!e||!s.isValid(t)||!s.isValid(n))throw new Error(\"invalid affine point\");if(e instanceof v)throw new Error(\"projective point not allowed\");const r=e=>s.eql(e,s.ZERO);return r(t)&&r(n)?v.ZERO:new v(t,n,s.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=s.invertBatch(e.map((e=>e.pz)));return e.map(((e,n)=>e.toAffine(t[n]))).map(v.fromAffine)}static fromHex(e){const t=v.fromAffine(h((0,i.ensureBytes)(\"pointHex\",e)));return t.assertValidity(),t}static fromPrivateKey(e){return v.BASE.multiply(p(e))}static msm(e,n){return(0,t.pippenger)(v,a,e,n)}_setWindowSize(e){w.setWindowSize(this,e)}assertValidity(){y(this)}hasEvenY(){const{y:e}=this.toAffine();if(s.isOdd)return!s.isOdd(e);throw new Error(\"Field doesn't support isOdd\")}equals(e){g(e);const{px:t,py:n,pz:r}=this,{px:i,py:o,pz:a}=e,c=s.eql(s.mul(t,a),s.mul(i,r)),l=s.eql(s.mul(n,a),s.mul(o,r));return c&&l}negate(){return new v(this.px,s.neg(this.py),this.pz)}double(){const{a:e,b:t}=o,n=s.mul(t,u),{px:r,py:i,pz:a}=this;let c=s.ZERO,l=s.ZERO,d=s.ZERO,h=s.mul(r,r),f=s.mul(i,i),p=s.mul(a,a),g=s.mul(r,i);return g=s.add(g,g),d=s.mul(r,a),d=s.add(d,d),c=s.mul(e,d),l=s.mul(n,p),l=s.add(c,l),c=s.sub(f,l),l=s.add(f,l),l=s.mul(c,l),c=s.mul(g,c),d=s.mul(n,d),p=s.mul(e,p),g=s.sub(h,p),g=s.mul(e,g),g=s.add(g,d),d=s.add(h,h),h=s.add(d,h),h=s.add(h,p),h=s.mul(h,g),l=s.add(l,h),p=s.mul(i,a),p=s.add(p,p),h=s.mul(p,g),c=s.sub(c,h),d=s.mul(p,f),d=s.add(d,d),d=s.add(d,d),new v(c,l,d)}add(e){g(e);const{px:t,py:n,pz:r}=this,{px:i,py:a,pz:c}=e;let l=s.ZERO,d=s.ZERO,h=s.ZERO;const f=o.a,p=s.mul(o.b,u);let m=s.mul(t,i),y=s.mul(n,a),b=s.mul(r,c),w=s.add(t,n),E=s.add(i,a);w=s.mul(w,E),E=s.add(m,y),w=s.sub(w,E),E=s.add(t,r);let C=s.add(i,c);return E=s.mul(E,C),C=s.add(m,b),E=s.sub(E,C),C=s.add(n,r),l=s.add(a,c),C=s.mul(C,l),l=s.add(y,b),C=s.sub(C,l),h=s.mul(f,E),l=s.mul(p,b),h=s.add(l,h),l=s.sub(y,h),h=s.add(y,h),d=s.mul(l,h),y=s.add(m,m),y=s.add(y,m),b=s.mul(f,b),E=s.mul(p,E),y=s.add(y,b),b=s.sub(m,b),b=s.mul(f,b),E=s.add(E,b),m=s.mul(y,E),d=s.add(d,m),m=s.mul(C,E),l=s.mul(w,l),l=s.sub(l,m),m=s.mul(w,y),h=s.mul(C,h),h=s.add(h,m),new v(l,d,h)}subtract(e){return this.add(e.negate())}is0(){return this.equals(v.ZERO)}wNAF(e){return w.wNAFCached(this,e,v.normalizeZ)}multiplyUnsafe(e){r.aInRange(\"scalar\",e,c,o.n);const t=v.ZERO;if(e===c)return t;if(e===l)return this;const{endo:n}=o;if(!n)return w.unsafeLadder(this,e);let{k1neg:i,k1:a,k2neg:d,k2:u}=n.splitScalar(e),h=t,f=t,p=this;for(;a>c||u>c;)a&l&&(h=h.add(p)),u&l&&(f=f.add(p)),p=p.double(),a>>=l,u>>=l;return i&&(h=h.negate()),d&&(f=f.negate()),f=new v(s.mul(f.px,n.beta),f.py,f.pz),h.add(f)}multiply(e){const{endo:t,n:n}=o;let i,a;if(r.aInRange(\"scalar\",e,l,n),t){const{k1neg:n,k1:r,k2neg:o,k2:c}=t.splitScalar(e);let{p:l,f:d}=this.wNAF(r),{p:u,f:h}=this.wNAF(c);l=w.constTimeNegate(n,l),u=w.constTimeNegate(o,u),u=new v(s.mul(u.px,t.beta),u.py,u.pz),i=l.add(u),a=d.add(h)}else{const{p:t,f:n}=this.wNAF(e);i=t,a=n}return v.normalizeZ([i,a])[0]}multiplyAndAddUnsafe(e,t,n){const r=v.BASE,i=(e,t)=>t!==c&&t!==l&&e.equals(r)?e.multiply(t):e.multiplyUnsafe(t),o=i(this,t).add(i(e,n));return o.is0()?void 0:o}toAffine(e){return m(this,e)}isTorsionFree(){const{h:e,isTorsionFree:t}=o;if(e===l)return!0;if(t)return t(v,this);throw new Error(\"isTorsionFree() has not been declared for the elliptic curve\")}clearCofactor(){const{h:e,clearCofactor:t}=o;return e===l?this:t?t(v,this):this.multiplyUnsafe(o.h)}toRawBytes(e=!0){return(0,i.abool)(\"isCompressed\",e),this.assertValidity(),d(v,this,e)}toHex(e=!0){return(0,i.abool)(\"isCompressed\",e),r.bytesToHex(this.toRawBytes(e))}}v.BASE=new v(o.Gx,o.Gy,s.ONE),v.ZERO=new v(s.ZERO,s.ONE,s.ZERO);const b=o.nBitLength,w=(0,t.wNAF)(v,o.endo?Math.ceil(b/2):b);return{CURVE:o,ProjectivePoint:v,normPrivateKeyToScalar:p,weierstrassEquation:f,isWithinCurveOrder:function(e){return r.inRange(e,l,o.n)}}}function p(e,t){const n=e.ORDER;let r=c;for(let e=n-l;e%d===c;e/=d)r+=l;const i=r,o=d<<i-l-l,s=o*d,a=(n-l)/s,f=(a-l)/d,p=s-l,g=o,m=e.pow(t,a),y=e.pow(t,(a+l)/d);let v=(t,n)=>{let r=m,o=e.pow(n,p),s=e.sqr(o);s=e.mul(s,n);let a=e.mul(t,s);a=e.pow(a,f),a=e.mul(a,o),o=e.mul(a,n),s=e.mul(a,t);let c=e.mul(s,o);a=e.pow(c,g);let u=e.eql(a,e.ONE);o=e.mul(s,y),a=e.mul(c,r),s=e.cmov(o,s,u),c=e.cmov(a,c,u);for(let t=i;t>l;t--){let n=t-d;n=d<<n-l;let i=e.pow(c,n);const a=e.eql(i,e.ONE);o=e.mul(s,r),r=e.mul(r,r),i=e.mul(c,r),s=e.cmov(o,s,a),c=e.cmov(i,c,a)}return{isValid:u,value:s}};if(e.ORDER%h===u){const n=(e.ORDER-u)/h,r=e.sqrt(e.neg(t));v=(t,i)=>{let o=e.sqr(i);const s=e.mul(t,i);o=e.mul(o,s);let a=e.pow(o,n);a=e.mul(a,s);const c=e.mul(a,r),l=e.mul(e.sqr(a),i),d=e.eql(l,t);return{isValid:d,value:e.cmov(c,a,d)}}}return v}}(ar),Object.defineProperty(or,\"__esModule\",{value:!0}),or.getHash=ur,or.createCurve=function(e,t){const n=t=>(0,dr.weierstrass)({...e,...ur(t)});return Object.freeze({...n(t),create:n})};const cr=sr,lr=Fe,dr=ar;function ur(e){return{hash:e,hmac:(t,...n)=>(0,cr.hmac)(e,t,(0,lr.concatBytes)(...n)),randomBytes:lr.randomBytes}}!function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.encodeToCurve=e.hashToCurve=e.schnorr=e.secp256k1=void 0;const t=Jn,n=Fe,r=or,i=Nn,o=Lt,s=Ot,a=ar,c=BigInt(\"0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f\"),l=BigInt(\"0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141\"),d=BigInt(1),u=BigInt(2),h=(e,t)=>(e+t/u)/t;function f(e){const t=c,n=BigInt(3),r=BigInt(6),i=BigInt(11),s=BigInt(22),a=BigInt(23),l=BigInt(44),d=BigInt(88),h=e*e*e%t,f=h*h*e%t,g=(0,o.pow2)(f,n,t)*f%t,m=(0,o.pow2)(g,n,t)*f%t,y=(0,o.pow2)(m,u,t)*h%t,v=(0,o.pow2)(y,i,t)*y%t,b=(0,o.pow2)(v,s,t)*v%t,w=(0,o.pow2)(b,l,t)*b%t,E=(0,o.pow2)(w,d,t)*w%t,C=(0,o.pow2)(E,l,t)*b%t,S=(0,o.pow2)(C,n,t)*f%t,_=(0,o.pow2)(S,a,t)*v%t,k=(0,o.pow2)(_,r,t)*h%t,x=(0,o.pow2)(k,u,t);if(!p.eql(p.sqr(x),e))throw new Error(\"Cannot find square root\");return x}const p=(0,o.Field)(c,void 0,void 0,{sqrt:f});e.secp256k1=(0,r.createCurve)({a:BigInt(0),b:BigInt(7),Fp:p,n:l,Gx:BigInt(\"55066263022277343669578718895168534326250603453777594175500187360389116729240\"),Gy:BigInt(\"32670510020758816978083085130507043184471273380659243275938904335757337482424\"),h:BigInt(1),lowS:!0,endo:{beta:BigInt(\"0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee\"),splitScalar:e=>{const t=l,n=BigInt(\"0x3086d221a7d46bcde86c90e49284eb15\"),r=-d*BigInt(\"0xe4437ed6010e88286f547fa90abfe4c3\"),i=BigInt(\"0x114ca50f7a8e2f3f657c1108d9d44cfd8\"),s=n,a=BigInt(\"0x100000000000000000000000000000000\"),c=h(s*e,t),u=h(-r*e,t);let f=(0,o.mod)(e-c*n-u*i,t),p=(0,o.mod)(-c*r-u*s,t);const g=f>a,m=p>a;if(g&&(f=t-f),m&&(p=t-p),f>a||p>a)throw new Error(\"splitScalar: Endomorphism failed, k=\"+e);return{k1neg:g,k1:f,k2neg:m,k2:p}}}},t.sha256);const g=BigInt(0),m={};function y(e,...n){let r=m[e];if(void 0===r){const n=(0,t.sha256)(Uint8Array.from(e,(e=>e.charCodeAt(0))));r=(0,s.concatBytes)(n,n),m[e]=r}return(0,t.sha256)((0,s.concatBytes)(r,...n))}const v=e=>e.toRawBytes(!0).slice(1),b=e=>(0,s.numberToBytesBE)(e,32),w=e=>(0,o.mod)(e,c),E=e=>(0,o.mod)(e,l),C=e.secp256k1.ProjectivePoint,S=(e,t,n)=>C.BASE.multiplyAndAddUnsafe(e,t,n);function _(t){let n=e.secp256k1.utils.normPrivateKeyToScalar(t),r=C.fromPrivateKey(n);return{scalar:r.hasEvenY()?n:E(-n),bytes:v(r)}}function k(e){(0,s.aInRange)(\"x\",e,d,c);const t=w(e*e);let n=f(w(t*e+BigInt(7)));n%u!==g&&(n=w(-n));const r=new C(e,n,d);return r.assertValidity(),r}const x=s.bytesToNumberBE;function M(...e){return E(x(y(\"BIP0340/challenge\",...e)))}function A(e){return _(e).bytes}function I(e,t,r=(0,n.randomBytes)(32)){const i=(0,s.ensureBytes)(\"message\",e),{bytes:o,scalar:a}=_(t),c=(0,s.ensureBytes)(\"auxRand\",r,32),l=b(a^x(y(\"BIP0340/aux\",c))),d=y(\"BIP0340/nonce\",l,o,i),u=E(x(d));if(u===g)throw new Error(\"sign failed: k is zero\");const{bytes:h,scalar:f}=_(u),p=M(h,o,i),m=new Uint8Array(64);if(m.set(h,0),m.set(b(E(f+p*a)),32),!P(m,i,o))throw new Error(\"sign: Invalid signature produced\");return m}function P(e,t,n){const r=(0,s.ensureBytes)(\"signature\",e,64),i=(0,s.ensureBytes)(\"message\",t),o=(0,s.ensureBytes)(\"publicKey\",n,32);try{const e=k(x(o)),t=x(r.subarray(0,32));if(!(0,s.inRange)(t,d,c))return!1;const n=x(r.subarray(32,64));if(!(0,s.inRange)(n,d,l))return!1;const a=M(b(t),v(e),i),u=S(e,n,E(-a));return!(!u||!u.hasEvenY()||u.toAffine().x!==t)}catch(e){return!1}}e.schnorr={getPublicKey:A,sign:I,verify:P,utils:{randomPrivateKey:e.secp256k1.utils.randomPrivateKey,lift_x:k,pointToBytes:v,numberToBytesBE:s.numberToBytesBE,bytesToNumberBE:s.bytesToNumberBE,taggedHash:y,mod:o.mod}};const R=(()=>(0,i.isogenyMap)(p,[[\"0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7\",\"0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581\",\"0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262\",\"0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c\"],[\"0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b\",\"0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14\",\"0x0000000000000000000000000000000000000000000000000000000000000001\"],[\"0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c\",\"0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3\",\"0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931\",\"0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84\"],[\"0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b\",\"0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573\",\"0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f\",\"0x0000000000000000000000000000000000000000000000000000000000000001\"]].map((e=>e.map((e=>BigInt(e)))))))(),L=(()=>(0,a.mapToCurveSimpleSWU)(p,{A:BigInt(\"0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533\"),B:BigInt(\"1771\"),Z:p.create(BigInt(\"-11\"))}))(),O=(()=>(0,i.createHasher)(e.secp256k1.ProjectivePoint,(e=>{const{x:t,y:n}=L(p.create(e[0]));return R(t,n)}),{DST:\"secp256k1_XMD:SHA-256_SSWU_RO_\",encodeDST:\"secp256k1_XMD:SHA-256_SSWU_NU_\",p:p.ORDER,m:1,k:128,expand:\"xmd\",hash:t.sha256}))();e.hashToCurve=O.hashToCurve,e.encodeToCurve=O.encodeToCurve}(Yn);var hr={};!function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.decodeHex=e.remove0x=void 0;var t=fe;e.remove0x=function(e){return e.startsWith(\"0x\")||e.startsWith(\"0X\")?e.slice(2):e};e.decodeHex=function(n){return(0,t.hexToBytes)((0,e.remove0x)(n))}}(hr),function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.hexToPublicKey=e.convertPublicKeyFormat=e.getSharedPoint=e.getPublicKey=e.isValidPrivateKey=e.getValidSecret=void 0;var t=Ie,n=Re,r=Yn,i=Se,o=_e,s=hr;e.getValidSecret=function(){var n;do{n=(0,t.randomBytes)(o.SECRET_KEY_LENGTH)}while(!(0,e.isValidPrivateKey)(n));return n};e.isValidPrivateKey=function(e){return a((0,i.ellipticCurve)(),(function(t){return t.utils.isValidPrivateKey(e)}),(function(){return!0}),(function(){return!0}))};e.getPublicKey=function(e){return a((0,i.ellipticCurve)(),(function(t){return t.getPublicKey(e)}),(function(t){return t.getPublicKey(e)}),(function(t){return t.getPublicKey(e)}))};e.getSharedPoint=function(e,t,n){return a((0,i.ellipticCurve)(),(function(r){return r.getSharedSecret(e,t,n)}),(function(n){return n.getSharedSecret(e,t)}),(function(n){return l(n,e,t)}))};e.convertPublicKeyFormat=function(e,t){return a((0,i.ellipticCurve)(),(function(n){return n.getSharedSecret(BigInt(1),e,t)}),(function(){return e}),(function(){return e}))};function a(e,t,i,o){if(\"secp256k1\"===e)return t(r.secp256k1);if(\"x25519\"===e)return i(n.x25519);if(\"ed25519\"===e)return o(n.ed25519);throw new Error(\"Not implemented\")}e.hexToPublicKey=function(e){var t=(0,s.decodeHex)(e);return a((0,i.ellipticCurve)(),(function(){return c(t)}),(function(){return t}),(function(){return t}))};var c=function(e){if(e.length===o.ETH_PUBLIC_KEY_SIZE){var t=new Uint8Array(1+e.length);return t.set([4]),t.set(e,1),t}return e},l=function(e,t,n){var r=e.utils.getExtendedPublicKey(t).scalar;return e.ExtendedPoint.fromHex(n).multiply(r).toRawBytes()}}(Ae);var fr={},pr={};Object.defineProperty(pr,\"__esModule\",{value:!0}),pr.hkdf=void 0,pr.extract=vr,pr.expand=Er;const gr=Te,mr=Fe,yr=sr;function vr(e,t,n){return(0,gr.hash)(e),void 0===n&&(n=new Uint8Array(e.outputLen)),(0,yr.hmac)(e,(0,mr.toBytes)(n),(0,mr.toBytes)(t))}const br=new Uint8Array([0]),wr=new Uint8Array;function Er(e,t,n,r=32){if((0,gr.hash)(e),(0,gr.number)(r),r>255*e.outputLen)throw new Error(\"Length should be <= 255*HashLen\");const i=Math.ceil(r/e.outputLen);void 0===n&&(n=wr);const o=new Uint8Array(i*e.outputLen),s=yr.hmac.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let t=0;t<i;t++)br[0]=t+1,a.update(0===t?wr:c).update(n).update(br).digestInto(c),o.set(c,e.outputLen*t),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),br.fill(0),o.slice(0,r)}pr.hkdf=(e,t,n,r,i)=>Er(e,vr(e,t,n),r,i),function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.getSharedKey=e.deriveKey=void 0;var t=fe,n=pr,r=Jn;e.deriveKey=function(e,t,i){return(0,n.hkdf)(r.sha256,e,t,i,32)};e.getSharedKey=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return(0,e.deriveKey)(t.concatBytes.apply(void 0,n))}}(fr);var Cr={},Sr={},_r={},kr={};Object.defineProperty(kr,\"__esModule\",{value:!0}),kr.polyval=kr.ghash=void 0,kr._toGHASHKey=Lr;const xr=pe,Mr=fe,Ar=16,Ir=new Uint8Array(16),Pr=(0,Mr.u32)(Ir),Rr=e=>(e>>>0&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255|0;function Lr(e){e.reverse();const t=1&e[15];let n=0;for(let t=0;t<e.length;t++){const r=e[t];e[t]=r>>>1|n,n=(1&r)<<7}return e[0]^=225&-t,e}class Or{constructor(e,t){this.blockLen=Ar,this.outputLen=Ar,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,e=(0,Mr.toBytes)(e),(0,xr.bytes)(e,16);const n=(0,Mr.createView)(e);let r=n.getUint32(0,!1),i=n.getUint32(4,!1),o=n.getUint32(8,!1),s=n.getUint32(12,!1);const a=[];for(let e=0;e<128;e++)a.push({s0:Rr(r),s1:Rr(i),s2:Rr(o),s3:Rr(s)}),({s0:r,s1:i,s2:o,s3:s}={s3:(d=o)<<31|(u=s)>>>1,s2:(l=i)<<31|d>>>1,s1:(c=r)<<31|l>>>1,s0:c>>>1^225<<24&-(1&u)});var c,l,d,u;const h=(e=>e>65536?8:e>1024?4:2)(t||1024);if(![1,2,4,8].includes(h))throw new Error(`ghash: wrong window size=${h}, should be 2, 4 or 8`);this.W=h;const f=128/h,p=this.windowSize=2**h,g=[];for(let e=0;e<f;e++)for(let t=0;t<p;t++){let n=0,r=0,i=0,o=0;for(let s=0;s<h;s++){if(!(t>>>h-s-1&1))continue;const{s0:c,s1:l,s2:d,s3:u}=a[h*e+s];n^=c,r^=l,i^=d,o^=u}g.push({s0:n,s1:r,s2:i,s3:o})}this.t=g}_updateBlock(e,t,n,r){e^=this.s0,t^=this.s1,n^=this.s2,r^=this.s3;const{W:i,t:o,windowSize:s}=this;let a=0,c=0,l=0,d=0;const u=(1<<i)-1;let h=0;for(const f of[e,t,n,r])for(let e=0;e<4;e++){const t=f>>>8*e&255;for(let e=8/i-1;e>=0;e--){const n=t>>>i*e&u,{s0:r,s1:f,s2:p,s3:g}=o[h*s+n];a^=r,c^=f,l^=p,d^=g,h+=1}}this.s0=a,this.s1=c,this.s2=l,this.s3=d}update(e){e=(0,Mr.toBytes)(e),(0,xr.exists)(this);const t=(0,Mr.u32)(e),n=Math.floor(e.length/Ar),r=e.length%Ar;for(let e=0;e<n;e++)this._updateBlock(t[4*e+0],t[4*e+1],t[4*e+2],t[4*e+3]);return r&&(Ir.set(e.subarray(n*Ar)),this._updateBlock(Pr[0],Pr[1],Pr[2],Pr[3]),(0,Mr.clean)(Pr)),this}destroy(){const{t:e}=this;for(const t of e)t.s0=0,t.s1=0,t.s2=0,t.s3=0}digestInto(e){(0,xr.exists)(this),(0,xr.output)(e,this),this.finished=!0;const{s0:t,s1:n,s2:r,s3:i}=this,o=(0,Mr.u32)(e);return o[0]=t,o[1]=n,o[2]=r,o[3]=i,e}digest(){const e=new Uint8Array(Ar);return this.digestInto(e),this.destroy(),e}}class Tr extends Or{constructor(e,t){e=(0,Mr.toBytes)(e);const n=Lr((0,Mr.copyBytes)(e));super(n,t),(0,Mr.clean)(n)}update(e){e=(0,Mr.toBytes)(e),(0,xr.exists)(this);const t=(0,Mr.u32)(e),n=e.length%Ar,r=Math.floor(e.length/Ar);for(let e=0;e<r;e++)this._updateBlock(Rr(t[4*e+3]),Rr(t[4*e+2]),Rr(t[4*e+1]),Rr(t[4*e+0]));return n&&(Ir.set(e.subarray(r*Ar)),this._updateBlock(Rr(Pr[3]),Rr(Pr[2]),Rr(Pr[1]),Rr(Pr[0])),(0,Mr.clean)(Pr)),this}digestInto(e){(0,xr.exists)(this),(0,xr.output)(e,this),this.finished=!0;const{s0:t,s1:n,s2:r,s3:i}=this,o=(0,Mr.u32)(e);return o[0]=t,o[1]=n,o[2]=r,o[3]=i,e.reverse()}}function Nr(e){const t=(t,n)=>e(n,t.length).update((0,Mr.toBytes)(t)).digest(),n=e(new Uint8Array(16),0);return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=(t,n)=>e(t,n),t}kr.ghash=Nr(((e,t)=>new Or(e,t))),kr.polyval=Nr(((e,t)=>new Tr(e,t))),Object.defineProperty(_r,\"__esModule\",{value:!0}),_r.unsafe=_r.aeskwp=_r.aeskw=_r.siv=_r.gcm=_r.cfb=_r.cbc=_r.ecb=_r.ctr=void 0,_r.expandKeyLE=Qr,_r.expandKeyDecLE=ei;const Dr=pe,$r=kr,Br=fe,Kr=16,jr=new Uint8Array(Kr),Ur=283;function Hr(e){return e<<1^Ur&-(e>>7)}function Fr(e,t){let n=0;for(;t>0;t>>=1)n^=e&-(1&t),e=Hr(e);return n}const zr=(()=>{const e=new Uint8Array(256);for(let t=0,n=1;t<256;t++,n^=Hr(n))e[t]=n;const t=new Uint8Array(256);t[0]=99;for(let n=0;n<255;n++){let r=e[255-n];r|=r<<8,t[e[n]]=255&(r^r>>4^r>>5^r>>6^r>>7^99)}return(0,Br.clean)(e),t})(),qr=zr.map(((e,t)=>zr.indexOf(t))),Vr=e=>e<<24|e>>>8,Wr=e=>e<<8|e>>>24,Gr=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;function Zr(e,t){if(256!==e.length)throw new Error(\"Wrong sbox length\");const n=new Uint32Array(256).map(((n,r)=>t(e[r]))),r=n.map(Wr),i=r.map(Wr),o=i.map(Wr),s=new Uint32Array(65536),a=new Uint32Array(65536),c=new Uint16Array(65536);for(let t=0;t<256;t++)for(let l=0;l<256;l++){const d=256*t+l;s[d]=n[t]^r[l],a[d]=i[t]^o[l],c[d]=e[t]<<8|e[l]}return{sbox:e,sbox2:c,T0:n,T1:r,T2:i,T3:o,T01:s,T23:a}}const Yr=Zr(zr,(e=>Fr(e,3)<<24|e<<16|e<<8|Fr(e,2))),Jr=Zr(qr,(e=>Fr(e,11)<<24|Fr(e,13)<<16|Fr(e,9)<<8|Fr(e,14))),Xr=(()=>{const e=new Uint8Array(16);for(let t=0,n=1;t<16;t++,n=Hr(n))e[t]=n;return e})();function Qr(e){(0,Dr.bytes)(e);const t=e.length;if(![16,24,32].includes(t))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${t}`);const{sbox2:n}=Yr,r=[];(0,Br.isAligned32)(e)||r.push(e=(0,Br.copyBytes)(e));const i=(0,Br.u32)(e),o=i.length,s=e=>ni(n,e,e,e,e),a=new Uint32Array(t+28);a.set(i);for(let e=o;e<a.length;e++){let t=a[e-1];e%o==0?t=s(Vr(t))^Xr[e/o-1]:o>6&&e%o==4&&(t=s(t)),a[e]=a[e-o]^t}return(0,Br.clean)(...r),a}function ei(e){const t=Qr(e),n=t.slice(),r=t.length,{sbox2:i}=Yr,{T0:o,T1:s,T2:a,T3:c}=Jr;for(let e=0;e<r;e+=4)for(let i=0;i<4;i++)n[e+i]=t[r-e-4+i];(0,Br.clean)(t);for(let e=4;e<r-4;e++){const t=n[e],r=ni(i,t,t,t,t);n[e]=o[255&r]^s[r>>>8&255]^a[r>>>16&255]^c[r>>>24]}return n}function ti(e,t,n,r,i,o){return e[n<<8&65280|r>>>8&255]^t[i>>>8&65280|o>>>24&255]}function ni(e,t,n,r,i){return e[255&t|65280&n]|e[r>>>16&255|i>>>16&65280]<<16}function ri(e,t,n,r,i){const{sbox2:o,T01:s,T23:a}=Yr;let c=0;t^=e[c++],n^=e[c++],r^=e[c++],i^=e[c++];const l=e.length/4-2;for(let o=0;o<l;o++){const o=e[c++]^ti(s,a,t,n,r,i),l=e[c++]^ti(s,a,n,r,i,t),d=e[c++]^ti(s,a,r,i,t,n),u=e[c++]^ti(s,a,i,t,n,r);t=o,n=l,r=d,i=u}return{s0:e[c++]^ni(o,t,n,r,i),s1:e[c++]^ni(o,n,r,i,t),s2:e[c++]^ni(o,r,i,t,n),s3:e[c++]^ni(o,i,t,n,r)}}function ii(e,t,n,r,i){const{sbox2:o,T01:s,T23:a}=Jr;let c=0;t^=e[c++],n^=e[c++],r^=e[c++],i^=e[c++];const l=e.length/4-2;for(let o=0;o<l;o++){const o=e[c++]^ti(s,a,t,i,r,n),l=e[c++]^ti(s,a,n,t,i,r),d=e[c++]^ti(s,a,r,n,t,i),u=e[c++]^ti(s,a,i,r,n,t);t=o,n=l,r=d,i=u}return{s0:e[c++]^ni(o,t,i,r,n),s1:e[c++]^ni(o,n,t,i,r),s2:e[c++]^ni(o,r,n,t,i),s3:e[c++]^ni(o,i,r,n,t)}}function oi(e,t){if(void 0===t)return new Uint8Array(e);if((0,Dr.bytes)(t),t.length<e)throw new Error(`aes: wrong destination length, expected at least ${e}, got: ${t.length}`);if(!(0,Br.isAligned32)(t))throw new Error(\"unaligned dst\");return t}function si(e,t,n,r){(0,Dr.bytes)(t,Kr),(0,Dr.bytes)(n);const i=n.length;r=oi(i,r);const o=t,s=(0,Br.u32)(o);let{s0:a,s1:c,s2:l,s3:d}=ri(e,s[0],s[1],s[2],s[3]);const u=(0,Br.u32)(n),h=(0,Br.u32)(r);for(let t=0;t+4<=u.length;t+=4){h[t+0]=u[t+0]^a,h[t+1]=u[t+1]^c,h[t+2]=u[t+2]^l,h[t+3]=u[t+3]^d;let n=1;for(let e=o.length-1;e>=0;e--)n=n+(255&o[e])|0,o[e]=255&n,n>>>=8;({s0:a,s1:c,s2:l,s3:d}=ri(e,s[0],s[1],s[2],s[3]))}const f=Kr*Math.floor(u.length/4);if(f<i){const e=new Uint32Array([a,c,l,d]),t=(0,Br.u8)(e);for(let e=f,o=0;e<i;e++,o++)r[e]=n[e]^t[o];(0,Br.clean)(e)}return r}function ai(e,t,n,r,i){(0,Dr.bytes)(n,Kr),(0,Dr.bytes)(r),i=oi(r.length,i);const o=n,s=(0,Br.u32)(o),a=(0,Br.createView)(o),c=(0,Br.u32)(r),l=(0,Br.u32)(i),d=t?0:12,u=r.length;let h=a.getUint32(d,t),{s0:f,s1:p,s2:g,s3:m}=ri(e,s[0],s[1],s[2],s[3]);for(let n=0;n+4<=c.length;n+=4)l[n+0]=c[n+0]^f,l[n+1]=c[n+1]^p,l[n+2]=c[n+2]^g,l[n+3]=c[n+3]^m,h=h+1>>>0,a.setUint32(d,h,t),({s0:f,s1:p,s2:g,s3:m}=ri(e,s[0],s[1],s[2],s[3]));const y=Kr*Math.floor(c.length/4);if(y<u){const e=new Uint32Array([f,p,g,m]),t=(0,Br.u8)(e);for(let e=y,n=0;e<u;e++,n++)i[e]=r[e]^t[n];(0,Br.clean)(e)}return i}function ci(e){if((0,Dr.bytes)(e),e.length%Kr!=0)throw new Error(\"aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size 16\")}function li(e,t,n){(0,Dr.bytes)(e);let r=e.length;const i=r%Kr;if(!t&&0!==i)throw new Error(\"aec/(cbc-ecb): unpadded plaintext with disabled padding\");(0,Br.isAligned32)(e)||(e=(0,Br.copyBytes)(e));const o=(0,Br.u32)(e);if(t){let e=Kr-i;e||(e=Kr),r+=e}const s=oi(r,n);return{b:o,o:(0,Br.u32)(s),out:s}}function di(e,t){if(!t)return e;const n=e.length;if(!n)throw new Error(\"aes/pcks5: empty ciphertext not allowed\");const r=e[n-1];if(r<=0||r>16)throw new Error(\"aes/pcks5: wrong padding\");const i=e.subarray(0,-r);for(let t=0;t<r;t++)if(e[n-t-1]!==r)throw new Error(\"aes/pcks5: wrong padding\");return i}function ui(e){const t=new Uint8Array(16),n=(0,Br.u32)(t);t.set(e);const r=Kr-e.length;for(let e=Kr-r;e<Kr;e++)t[e]=r;return n}function hi(e,t,n,r,i){const o=null==i?0:i.length,s=e.create(n,r.length+o);i&&s.update(i),s.update(r);const a=new Uint8Array(16),c=(0,Br.createView)(a);i&&(0,Br.setBigUint64)(c,0,BigInt(8*o),t),(0,Br.setBigUint64)(c,8,BigInt(8*r.length),t),s.update(a);const l=s.digest();return(0,Br.clean)(a),l}_r.ctr=(0,Br.wrapCipher)({blockSize:16,nonceLength:16},(function(e,t){function n(n,r){if((0,Dr.bytes)(n),void 0!==r&&((0,Dr.bytes)(r),!(0,Br.isAligned32)(r)))throw new Error(\"unaligned destination\");const i=Qr(e),o=(0,Br.copyBytes)(t),s=[i,o];(0,Br.isAligned32)(n)||s.push(n=(0,Br.copyBytes)(n));const a=si(i,o,n,r);return(0,Br.clean)(...s),a}return(0,Dr.bytes)(e),(0,Dr.bytes)(t,Kr),{encrypt:(e,t)=>n(e,t),decrypt:(e,t)=>n(e,t)}})),_r.ecb=(0,Br.wrapCipher)({blockSize:16},(function(e,t={}){(0,Dr.bytes)(e);const n=!t.disablePadding;return{encrypt(t,r){const{b:i,o:o,out:s}=li(t,n,r),a=Qr(e);let c=0;for(;c+4<=i.length;){const{s0:e,s1:t,s2:n,s3:r}=ri(a,i[c+0],i[c+1],i[c+2],i[c+3]);o[c++]=e,o[c++]=t,o[c++]=n,o[c++]=r}if(n){const e=ui(t.subarray(4*c)),{s0:n,s1:r,s2:i,s3:s}=ri(a,e[0],e[1],e[2],e[3]);o[c++]=n,o[c++]=r,o[c++]=i,o[c++]=s}return(0,Br.clean)(a),s},decrypt(t,r){ci(t);const i=ei(e),o=oi(t.length,r),s=[i];(0,Br.isAligned32)(t)||s.push(t=(0,Br.copyBytes)(t));const a=(0,Br.u32)(t),c=(0,Br.u32)(o);for(let e=0;e+4<=a.length;){const{s0:t,s1:n,s2:r,s3:o}=ii(i,a[e+0],a[e+1],a[e+2],a[e+3]);c[e++]=t,c[e++]=n,c[e++]=r,c[e++]=o}return(0,Br.clean)(...s),di(o,n)}}})),_r.cbc=(0,Br.wrapCipher)({blockSize:16,nonceLength:16},(function(e,t,n={}){(0,Dr.bytes)(e),(0,Dr.bytes)(t,16);const r=!n.disablePadding;return{encrypt(n,i){const o=Qr(e),{b:s,o:a,out:c}=li(n,r,i);let l=t;const d=[o];(0,Br.isAligned32)(l)||d.push(l=(0,Br.copyBytes)(l));const u=(0,Br.u32)(l);let h=u[0],f=u[1],p=u[2],g=u[3],m=0;for(;m+4<=s.length;)h^=s[m+0],f^=s[m+1],p^=s[m+2],g^=s[m+3],({s0:h,s1:f,s2:p,s3:g}=ri(o,h,f,p,g)),a[m++]=h,a[m++]=f,a[m++]=p,a[m++]=g;if(r){const e=ui(n.subarray(4*m));h^=e[0],f^=e[1],p^=e[2],g^=e[3],({s0:h,s1:f,s2:p,s3:g}=ri(o,h,f,p,g)),a[m++]=h,a[m++]=f,a[m++]=p,a[m++]=g}return(0,Br.clean)(...d),c},decrypt(n,i){ci(n);const o=ei(e);let s=t;const a=[o];(0,Br.isAligned32)(s)||a.push(s=(0,Br.copyBytes)(s));const c=(0,Br.u32)(s),l=oi(n.length,i);(0,Br.isAligned32)(n)||a.push(n=(0,Br.copyBytes)(n));const d=(0,Br.u32)(n),u=(0,Br.u32)(l);let h=c[0],f=c[1],p=c[2],g=c[3];for(let e=0;e+4<=d.length;){const t=h,n=f,r=p,i=g;h=d[e+0],f=d[e+1],p=d[e+2],g=d[e+3];const{s0:s,s1:a,s2:c,s3:l}=ii(o,h,f,p,g);u[e++]=s^t,u[e++]=a^n,u[e++]=c^r,u[e++]=l^i}return(0,Br.clean)(...a),di(l,r)}}})),_r.cfb=(0,Br.wrapCipher)({blockSize:16,nonceLength:16},(function(e,t){function n(n,r,i){(0,Dr.bytes)(n);const o=n.length;i=oi(o,i);const s=Qr(e);let a=t;const c=[s];(0,Br.isAligned32)(a)||c.push(a=(0,Br.copyBytes)(a)),(0,Br.isAligned32)(n)||c.push(n=(0,Br.copyBytes)(n));const l=(0,Br.u32)(n),d=(0,Br.u32)(i),u=r?d:l,h=(0,Br.u32)(a);let f=h[0],p=h[1],g=h[2],m=h[3];for(let e=0;e+4<=l.length;){const{s0:t,s1:n,s2:r,s3:i}=ri(s,f,p,g,m);d[e+0]=l[e+0]^t,d[e+1]=l[e+1]^n,d[e+2]=l[e+2]^r,d[e+3]=l[e+3]^i,f=u[e++],p=u[e++],g=u[e++],m=u[e++]}const y=Kr*Math.floor(l.length/4);if(y<o){({s0:f,s1:p,s2:g,s3:m}=ri(s,f,p,g,m));const e=(0,Br.u8)(new Uint32Array([f,p,g,m]));for(let t=y,r=0;t<o;t++,r++)i[t]=n[t]^e[r];(0,Br.clean)(e)}return(0,Br.clean)(...c),i}return(0,Dr.bytes)(e),(0,Dr.bytes)(t,16),{encrypt:(e,t)=>n(e,!0,t),decrypt:(e,t)=>n(e,!1,t)}})),_r.gcm=(0,Br.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},(function(e,t,n){if((0,Dr.bytes)(e),(0,Dr.bytes)(t),void 0!==n&&(0,Dr.bytes)(n),t.length<8)throw new Error(\"aes/gcm: invalid nonce length\");const r=16;function i(e,t,r){const i=hi($r.ghash,!1,e,r,n);for(let e=0;e<t.length;e++)i[e]^=t[e];return i}function o(){const n=Qr(e),r=jr.slice(),i=jr.slice();if(ai(n,!1,i,i,r),12===t.length)i.set(t);else{const e=jr.slice(),n=(0,Br.createView)(e);(0,Br.setBigUint64)(n,8,BigInt(8*t.length),!1);const o=$r.ghash.create(r).update(t).update(e);o.digestInto(i),o.destroy()}return{xk:n,authKey:r,counter:i,tagMask:ai(n,!1,i,jr)}}return{encrypt(e){(0,Dr.bytes)(e);const{xk:t,authKey:n,counter:s,tagMask:a}=o(),c=new Uint8Array(e.length+r),l=[t,n,s,a];(0,Br.isAligned32)(e)||l.push(e=(0,Br.copyBytes)(e)),ai(t,!1,s,e,c);const d=i(n,a,c.subarray(0,c.length-r));return l.push(d),c.set(d,e.length),(0,Br.clean)(...l),c},decrypt(e){if((0,Dr.bytes)(e),e.length<r)throw new Error(\"aes/gcm: ciphertext less than tagLen (16)\");const{xk:t,authKey:n,counter:s,tagMask:a}=o(),c=[t,n,a,s];(0,Br.isAligned32)(e)||c.push(e=(0,Br.copyBytes)(e));const l=e.subarray(0,-16),d=e.subarray(-16),u=i(n,a,l);if(c.push(u),!(0,Br.equalBytes)(u,d))throw new Error(\"aes/gcm: invalid ghash tag\");const h=ai(t,!1,s,l);return(0,Br.clean)(...c),h}}}));const fi=(e,t,n)=>r=>{if(!Number.isSafeInteger(r)||t>r||r>n)throw new Error(`${e}: invalid value=${r}, must be [${t}..${n}]`)};function pi(e){return null!=e&&\"object\"==typeof e&&(e instanceof Uint32Array||\"Uint32Array\"===e.constructor.name)}function gi(e,t){if((0,Dr.bytes)(t,16),!pi(e))throw new Error(\"_encryptBlock accepts result of expandKeyLE\");const n=(0,Br.u32)(t);let{s0:r,s1:i,s2:o,s3:s}=ri(e,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=i,n[2]=o,n[3]=s,t}function mi(e,t){if((0,Dr.bytes)(t,16),!pi(e))throw new Error(\"_decryptBlock accepts result of expandKeyLE\");const n=(0,Br.u32)(t);let{s0:r,s1:i,s2:o,s3:s}=ii(e,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=i,n[2]=o,n[3]=s,t}_r.siv=(0,Br.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},(function(e,t,n){const r=fi(\"AAD\",0,2**36),i=fi(\"plaintext\",0,2**36),o=fi(\"nonce\",12,12),s=fi(\"ciphertext\",16,2**36+16);function a(){const n=Qr(e),r=new Uint8Array(e.length),i=new Uint8Array(16),o=[n,r];let s=t;(0,Br.isAligned32)(s)||o.push(s=(0,Br.copyBytes)(s));const a=(0,Br.u32)(s);let c=0,l=a[0],d=a[1],u=a[2],h=0;for(const e of[i,r].map(Br.u32)){const t=(0,Br.u32)(e);for(let e=0;e<t.length;e+=2){const{s0:r,s1:i}=ri(n,c,l,d,u);t[e+0]=r,t[e+1]=i,c=++h}}const f={authKey:i,encKey:Qr(r)};return(0,Br.clean)(...o),f}function c(e,r,i){const o=hi($r.polyval,!0,r,i,n);for(let e=0;e<12;e++)o[e]^=t[e];o[15]&=127;const s=(0,Br.u32)(o);let a=s[0],c=s[1],l=s[2],d=s[3];return({s0:a,s1:c,s2:l,s3:d}=ri(e,a,c,l,d)),s[0]=a,s[1]=c,s[2]=l,s[3]=d,o}function l(e,t,n){let r=(0,Br.copyBytes)(t);r[15]|=128;const i=ai(e,!0,r,n);return(0,Br.clean)(r),i}return(0,Dr.bytes)(e,16,24,32),(0,Dr.bytes)(t),o(t.length),void 0!==n&&((0,Dr.bytes)(n),r(n.length)),{encrypt(e){(0,Dr.bytes)(e),i(e.length);const{encKey:t,authKey:n}=a(),r=c(t,n,e),o=[t,n,r];(0,Br.isAligned32)(e)||o.push(e=(0,Br.copyBytes)(e));const s=new Uint8Array(e.length+16);return s.set(r,e.length),s.set(l(t,r,e)),(0,Br.clean)(...o),s},decrypt(e){(0,Dr.bytes)(e),s(e.length);const t=e.subarray(-16),{encKey:n,authKey:r}=a(),i=[n,r];(0,Br.isAligned32)(e)||i.push(e=(0,Br.copyBytes)(e));const o=l(n,t,e.subarray(0,-16)),d=c(n,r,o);if(i.push(d),!(0,Br.equalBytes)(t,d))throw(0,Br.clean)(...i),new Error(\"invalid polyval tag\");return(0,Br.clean)(...i),o}}}));const yi={encrypt(e,t){if(t.length>=2**32)throw new Error(\"plaintext should be less than 4gb\");const n=Qr(e);if(16===t.length)gi(n,t);else{const e=(0,Br.u32)(t);let r=e[0],i=e[1];for(let t=0,o=1;t<6;t++)for(let t=2;t<e.length;t+=2,o++){const{s0:s,s1:a,s2:c,s3:l}=ri(n,r,i,e[t],e[t+1]);r=s,i=a^Gr(o),e[t]=c,e[t+1]=l}e[0]=r,e[1]=i}n.fill(0)},decrypt(e,t){if(t.length-8>=2**32)throw new Error(\"ciphertext should be less than 4gb\");const n=ei(e),r=t.length/8-1;if(1===r)mi(n,t);else{const e=(0,Br.u32)(t);let i=e[0],o=e[1];for(let t=0,s=6*r;t<6;t++)for(let t=2*r;t>=1;t-=2,s--){o^=Gr(s);const{s0:r,s1:a,s2:c,s3:l}=ii(n,i,o,e[t],e[t+1]);i=r,o=a,e[t]=c,e[t+1]=l}e[0]=i,e[1]=o}n.fill(0)}},vi=new Uint8Array(8).fill(166);_r.aeskw=(0,Br.wrapCipher)({blockSize:8},(e=>({encrypt(t){if((0,Dr.bytes)(t),!t.length||t.length%8!=0)throw new Error(\"invalid plaintext length\");if(8===t.length)throw new Error(\"8-byte keys not allowed in AESKW, use AESKWP instead\");const n=(0,Br.concatBytes)(vi,t);return yi.encrypt(e,n),n},decrypt(t){if((0,Dr.bytes)(t),t.length%8!=0||t.length<24)throw new Error(\"invalid ciphertext length\");const n=(0,Br.copyBytes)(t);if(yi.decrypt(e,n),!(0,Br.equalBytes)(n.subarray(0,8),vi))throw new Error(\"integrity check failed\");return n.subarray(0,8).fill(0),n.subarray(8)}})));const bi=2790873510;_r.aeskwp=(0,Br.wrapCipher)({blockSize:8},(e=>({encrypt(t){if((0,Dr.bytes)(t),!t.length)throw new Error(\"invalid plaintext length\");const n=8*Math.ceil(t.length/8),r=new Uint8Array(8+n);r.set(t,8);const i=(0,Br.u32)(r);return i[0]=bi,i[1]=Gr(t.length),yi.encrypt(e,r),r},decrypt(t){if((0,Dr.bytes)(t),t.length<16)throw new Error(\"invalid ciphertext length\");const n=(0,Br.copyBytes)(t),r=(0,Br.u32)(n);yi.decrypt(e,n);const i=Gr(r[1])>>>0,o=8*Math.ceil(i/8);if(r[0]!==bi||n.length-8!==o)throw new Error(\"integrity check failed\");for(let e=i;e<o;e++)if(0!==n[8+e])throw new Error(\"integrity check failed\");return n.subarray(0,8).fill(0),n.subarray(8,8+i)}}))),_r.unsafe={expandKeyLE:Qr,expandKeyDecLE:ei,encrypt:ri,decrypt:ii,encryptBlock:gi,decryptBlock:mi,ctrCounter:si,ctr32:ai},Object.defineProperty(Sr,\"__esModule\",{value:!0}),Sr.aes256cbc=Sr.aes256gcm=void 0;var wi=_r;Sr.aes256gcm=function(e,t,n){return(0,wi.gcm)(e,t,n)};Sr.aes256cbc=function(e,t,n){return(0,wi.cbc)(e,t)};var Ei={},Ci={},Si={};Object.defineProperty(Si,\"__esModule\",{value:!0}),Si.sigma=void 0,Si.rotl=function(e,t){return e<<t|e>>>32-t},Si.createCipher=function(e,t){const{allowShortKeys:n,extendNonceFn:r,counterLength:i,counterRight:o,rounds:s}=(0,ki.checkOpts)({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(\"function\"!=typeof e)throw new Error(\"core must be a function\");return(0,_i.number)(i),(0,_i.number)(s),(0,_i.bool)(o),(0,_i.bool)(n),(t,a,c,l,d=0)=>{(0,_i.bytes)(t),(0,_i.bytes)(a),(0,_i.bytes)(c);const u=c.length;if(void 0===l&&(l=new Uint8Array(u)),(0,_i.bytes)(l),(0,_i.number)(d),d<0||d>=Ti)throw new Error(\"arx: counter overflow\");if(l.length<u)throw new Error(`arx: output (${l.length}) is shorter than data (${u})`);const h=[];let f,p,g=t.length;if(32===g)h.push(f=(0,ki.copyBytes)(t)),p=Pi;else{if(16!==g||!n)throw new Error(`arx: invalid 32-byte key, got length=${g}`);f=new Uint8Array(32),f.set(t),f.set(t,16),p=Ii,h.push(f)}Ri(a)||h.push(a=(0,ki.copyBytes)(a));const m=(0,ki.u32)(f);if(r){if(24!==a.length)throw new Error(\"arx: extended nonce must be 24 bytes\");r(p,m,(0,ki.u32)(a.subarray(0,16)),m),a=a.subarray(16)}const y=16-i;if(y!==a.length)throw new Error(`arx: nonce must be ${y} or 16 bytes`);if(12!==y){const e=new Uint8Array(12);e.set(a,o?0:12-a.length),a=e,h.push(a)}const v=(0,ki.u32)(a);return function(e,t,n,r,i,o,s,a){const c=i.length,l=new Uint8Array(Li),d=(0,ki.u32)(l),u=Ri(i)&&Ri(o),h=u?(0,ki.u32)(i):Ni,f=u?(0,ki.u32)(o):Ni;for(let p=0;p<c;s++){if(e(t,n,r,d,s,a),s>=Ti)throw new Error(\"arx: counter overflow\");const g=Math.min(Li,c-p);if(u&&g===Li){const e=p/4;if(p%4!=0)throw new Error(\"arx: invalid block position\");for(let t,n=0;n<Oi;n++)t=e+n,f[t]=h[t]^d[n];p+=Li}else{for(let e,t=0;t<g;t++)e=p+t,o[e]=i[e]^l[t];p+=g}}}(e,p,m,v,c,l,d,s),(0,ki.clean)(...h),l}};const _i=pe,ki=fe,xi=e=>Uint8Array.from(e.split(\"\").map((e=>e.charCodeAt(0)))),Mi=xi(\"expand 16-byte k\"),Ai=xi(\"expand 32-byte k\"),Ii=(0,ki.u32)(Mi),Pi=(0,ki.u32)(Ai);function Ri(e){return e.byteOffset%4==0}Si.sigma=Pi.slice();const Li=64,Oi=16,Ti=2**32-1,Ni=new Uint32Array;var Di={};Object.defineProperty(Di,\"__esModule\",{value:!0}),Di.poly1305=void 0,Di.wrapConstructorWithKey=Ui;const $i=pe,Bi=fe,Ki=(e,t)=>255&e[t++]|(255&e[t++])<<8;class ji{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=(0,Bi.toBytes)(e),(0,$i.bytes)(e,32);const t=Ki(e,0),n=Ki(e,2),r=Ki(e,4),i=Ki(e,6),o=Ki(e,8),s=Ki(e,10),a=Ki(e,12),c=Ki(e,14);this.r[0]=8191&t,this.r[1]=8191&(t>>>13|n<<3),this.r[2]=7939&(n>>>10|r<<6),this.r[3]=8191&(r>>>7|i<<9),this.r[4]=255&(i>>>4|o<<12),this.r[5]=o>>>1&8190,this.r[6]=8191&(o>>>14|s<<2),this.r[7]=8065&(s>>>11|a<<5),this.r[8]=8191&(a>>>8|c<<8),this.r[9]=c>>>5&127;for(let t=0;t<8;t++)this.pad[t]=Ki(e,16+2*t)}process(e,t,n=!1){const r=n?0:2048,{h:i,r:o}=this,s=o[0],a=o[1],c=o[2],l=o[3],d=o[4],u=o[5],h=o[6],f=o[7],p=o[8],g=o[9],m=Ki(e,t+0),y=Ki(e,t+2),v=Ki(e,t+4),b=Ki(e,t+6),w=Ki(e,t+8),E=Ki(e,t+10),C=Ki(e,t+12),S=Ki(e,t+14);let _=i[0]+(8191&m),k=i[1]+(8191&(m>>>13|y<<3)),x=i[2]+(8191&(y>>>10|v<<6)),M=i[3]+(8191&(v>>>7|b<<9)),A=i[4]+(8191&(b>>>4|w<<12)),I=i[5]+(w>>>1&8191),P=i[6]+(8191&(w>>>14|E<<2)),R=i[7]+(8191&(E>>>11|C<<5)),L=i[8]+(8191&(C>>>8|S<<8)),O=i[9]+(S>>>5|r),T=0,N=T+_*s+k*(5*g)+x*(5*p)+M*(5*f)+A*(5*h);T=N>>>13,N&=8191,N+=I*(5*u)+P*(5*d)+R*(5*l)+L*(5*c)+O*(5*a),T+=N>>>13,N&=8191;let D=T+_*a+k*s+x*(5*g)+M*(5*p)+A*(5*f);T=D>>>13,D&=8191,D+=I*(5*h)+P*(5*u)+R*(5*d)+L*(5*l)+O*(5*c),T+=D>>>13,D&=8191;let $=T+_*c+k*a+x*s+M*(5*g)+A*(5*p);T=$>>>13,$&=8191,$+=I*(5*f)+P*(5*h)+R*(5*u)+L*(5*d)+O*(5*l),T+=$>>>13,$&=8191;let B=T+_*l+k*c+x*a+M*s+A*(5*g);T=B>>>13,B&=8191,B+=I*(5*p)+P*(5*f)+R*(5*h)+L*(5*u)+O*(5*d),T+=B>>>13,B&=8191;let K=T+_*d+k*l+x*c+M*a+A*s;T=K>>>13,K&=8191,K+=I*(5*g)+P*(5*p)+R*(5*f)+L*(5*h)+O*(5*u),T+=K>>>13,K&=8191;let j=T+_*u+k*d+x*l+M*c+A*a;T=j>>>13,j&=8191,j+=I*s+P*(5*g)+R*(5*p)+L*(5*f)+O*(5*h),T+=j>>>13,j&=8191;let U=T+_*h+k*u+x*d+M*l+A*c;T=U>>>13,U&=8191,U+=I*a+P*s+R*(5*g)+L*(5*p)+O*(5*f),T+=U>>>13,U&=8191;let H=T+_*f+k*h+x*u+M*d+A*l;T=H>>>13,H&=8191,H+=I*c+P*a+R*s+L*(5*g)+O*(5*p),T+=H>>>13,H&=8191;let F=T+_*p+k*f+x*h+M*u+A*d;T=F>>>13,F&=8191,F+=I*l+P*c+R*a+L*s+O*(5*g),T+=F>>>13,F&=8191;let z=T+_*g+k*p+x*f+M*h+A*u;T=z>>>13,z&=8191,z+=I*d+P*l+R*c+L*a+O*s,T+=z>>>13,z&=8191,T=(T<<2)+T|0,T=T+N|0,N=8191&T,T>>>=13,D+=T,i[0]=N,i[1]=D,i[2]=$,i[3]=B,i[4]=K,i[5]=j,i[6]=U,i[7]=H,i[8]=F,i[9]=z}finalize(){const{h:e,pad:t}=this,n=new Uint16Array(10);let r=e[1]>>>13;e[1]&=8191;for(let t=2;t<10;t++)e[t]+=r,r=e[t]>>>13,e[t]&=8191;e[0]+=5*r,r=e[0]>>>13,e[0]&=8191,e[1]+=r,r=e[1]>>>13,e[1]&=8191,e[2]+=r,n[0]=e[0]+5,r=n[0]>>>13,n[0]&=8191;for(let t=1;t<10;t++)n[t]=e[t]+r,r=n[t]>>>13,n[t]&=8191;n[9]-=8192;let i=(1^r)-1;for(let e=0;e<10;e++)n[e]&=i;i=~i;for(let t=0;t<10;t++)e[t]=e[t]&i|n[t];e[0]=65535&(e[0]|e[1]<<13),e[1]=65535&(e[1]>>>3|e[2]<<10),e[2]=65535&(e[2]>>>6|e[3]<<7),e[3]=65535&(e[3]>>>9|e[4]<<4),e[4]=65535&(e[4]>>>12|e[5]<<1|e[6]<<14),e[5]=65535&(e[6]>>>2|e[7]<<11),e[6]=65535&(e[7]>>>5|e[8]<<8),e[7]=65535&(e[8]>>>8|e[9]<<5);let o=e[0]+t[0];e[0]=65535&o;for(let n=1;n<8;n++)o=(e[n]+t[n]|0)+(o>>>16)|0,e[n]=65535&o;(0,Bi.clean)(n)}update(e){(0,$i.exists)(this);const{buffer:t,blockLen:n}=this,r=(e=(0,Bi.toBytes)(e)).length;for(let i=0;i<r;){const o=Math.min(n-this.pos,r-i);if(o!==n)t.set(e.subarray(i,i+o),this.pos),this.pos+=o,i+=o,this.pos===n&&(this.process(t,0,!1),this.pos=0);else for(;n<=r-i;i+=n)this.process(e,i)}return this}destroy(){(0,Bi.clean)(this.h,this.r,this.buffer,this.pad)}digestInto(e){(0,$i.exists)(this),(0,$i.output)(e,this),this.finished=!0;const{buffer:t,h:n}=this;let{pos:r}=this;if(r){for(t[r++]=1;r<16;r++)t[r]=0;this.process(t,0,!0)}this.finalize();let i=0;for(let t=0;t<8;t++)e[i++]=n[t]>>>0,e[i++]=n[t]>>>8;return e}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}}function Ui(e){const t=(t,n)=>e(n).update((0,Bi.toBytes)(t)).digest(),n=e(new Uint8Array(32));return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}Di.poly1305=Ui((e=>new ji(e))),function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.xchacha20poly1305=e.chacha20poly1305=e._poly1305_aead=e.chacha12=e.chacha8=e.xchacha20=e.chacha20=e.chacha20orig=void 0,e.hchacha=s;const t=Si,n=pe,r=Di,i=fe;function o(e,n,r,i,o,s=20){let a=e[0],c=e[1],l=e[2],d=e[3],u=n[0],h=n[1],f=n[2],p=n[3],g=n[4],m=n[5],y=n[6],v=n[7],b=o,w=r[0],E=r[1],C=r[2],S=a,_=c,k=l,x=d,M=u,A=h,I=f,P=p,R=g,L=m,O=y,T=v,N=b,D=w,$=E,B=C;for(let e=0;e<s;e+=2)S=S+M|0,N=(0,t.rotl)(N^S,16),R=R+N|0,M=(0,t.rotl)(M^R,12),S=S+M|0,N=(0,t.rotl)(N^S,8),R=R+N|0,M=(0,t.rotl)(M^R,7),_=_+A|0,D=(0,t.rotl)(D^_,16),L=L+D|0,A=(0,t.rotl)(A^L,12),_=_+A|0,D=(0,t.rotl)(D^_,8),L=L+D|0,A=(0,t.rotl)(A^L,7),k=k+I|0,$=(0,t.rotl)($^k,16),O=O+$|0,I=(0,t.rotl)(I^O,12),k=k+I|0,$=(0,t.rotl)($^k,8),O=O+$|0,I=(0,t.rotl)(I^O,7),x=x+P|0,B=(0,t.rotl)(B^x,16),T=T+B|0,P=(0,t.rotl)(P^T,12),x=x+P|0,B=(0,t.rotl)(B^x,8),T=T+B|0,P=(0,t.rotl)(P^T,7),S=S+A|0,B=(0,t.rotl)(B^S,16),O=O+B|0,A=(0,t.rotl)(A^O,12),S=S+A|0,B=(0,t.rotl)(B^S,8),O=O+B|0,A=(0,t.rotl)(A^O,7),_=_+I|0,N=(0,t.rotl)(N^_,16),T=T+N|0,I=(0,t.rotl)(I^T,12),_=_+I|0,N=(0,t.rotl)(N^_,8),T=T+N|0,I=(0,t.rotl)(I^T,7),k=k+P|0,D=(0,t.rotl)(D^k,16),R=R+D|0,P=(0,t.rotl)(P^R,12),k=k+P|0,D=(0,t.rotl)(D^k,8),R=R+D|0,P=(0,t.rotl)(P^R,7),x=x+M|0,$=(0,t.rotl)($^x,16),L=L+$|0,M=(0,t.rotl)(M^L,12),x=x+M|0,$=(0,t.rotl)($^x,8),L=L+$|0,M=(0,t.rotl)(M^L,7);let K=0;i[K++]=a+S|0,i[K++]=c+_|0,i[K++]=l+k|0,i[K++]=d+x|0,i[K++]=u+M|0,i[K++]=h+A|0,i[K++]=f+I|0,i[K++]=p+P|0,i[K++]=g+R|0,i[K++]=m+L|0,i[K++]=y+O|0,i[K++]=v+T|0,i[K++]=b+N|0,i[K++]=w+D|0,i[K++]=E+$|0,i[K++]=C+B|0}function s(e,n,r,i){let o=e[0],s=e[1],a=e[2],c=e[3],l=n[0],d=n[1],u=n[2],h=n[3],f=n[4],p=n[5],g=n[6],m=n[7],y=r[0],v=r[1],b=r[2],w=r[3];for(let e=0;e<20;e+=2)o=o+l|0,y=(0,t.rotl)(y^o,16),f=f+y|0,l=(0,t.rotl)(l^f,12),o=o+l|0,y=(0,t.rotl)(y^o,8),f=f+y|0,l=(0,t.rotl)(l^f,7),s=s+d|0,v=(0,t.rotl)(v^s,16),p=p+v|0,d=(0,t.rotl)(d^p,12),s=s+d|0,v=(0,t.rotl)(v^s,8),p=p+v|0,d=(0,t.rotl)(d^p,7),a=a+u|0,b=(0,t.rotl)(b^a,16),g=g+b|0,u=(0,t.rotl)(u^g,12),a=a+u|0,b=(0,t.rotl)(b^a,8),g=g+b|0,u=(0,t.rotl)(u^g,7),c=c+h|0,w=(0,t.rotl)(w^c,16),m=m+w|0,h=(0,t.rotl)(h^m,12),c=c+h|0,w=(0,t.rotl)(w^c,8),m=m+w|0,h=(0,t.rotl)(h^m,7),o=o+d|0,w=(0,t.rotl)(w^o,16),g=g+w|0,d=(0,t.rotl)(d^g,12),o=o+d|0,w=(0,t.rotl)(w^o,8),g=g+w|0,d=(0,t.rotl)(d^g,7),s=s+u|0,y=(0,t.rotl)(y^s,16),m=m+y|0,u=(0,t.rotl)(u^m,12),s=s+u|0,y=(0,t.rotl)(y^s,8),m=m+y|0,u=(0,t.rotl)(u^m,7),a=a+h|0,v=(0,t.rotl)(v^a,16),f=f+v|0,h=(0,t.rotl)(h^f,12),a=a+h|0,v=(0,t.rotl)(v^a,8),f=f+v|0,h=(0,t.rotl)(h^f,7),c=c+l|0,b=(0,t.rotl)(b^c,16),p=p+b|0,l=(0,t.rotl)(l^p,12),c=c+l|0,b=(0,t.rotl)(b^c,8),p=p+b|0,l=(0,t.rotl)(l^p,7);let E=0;i[E++]=o,i[E++]=s,i[E++]=a,i[E++]=c,i[E++]=y,i[E++]=v,i[E++]=b,i[E++]=w}e.chacha20orig=(0,t.createCipher)(o,{counterRight:!1,counterLength:8,allowShortKeys:!0}),e.chacha20=(0,t.createCipher)(o,{counterRight:!1,counterLength:4,allowShortKeys:!1}),e.xchacha20=(0,t.createCipher)(o,{counterRight:!1,counterLength:8,extendNonceFn:s,allowShortKeys:!1}),e.chacha8=(0,t.createCipher)(o,{counterRight:!1,counterLength:4,rounds:8}),e.chacha12=(0,t.createCipher)(o,{counterRight:!1,counterLength:4,rounds:12});const a=new Uint8Array(16),c=(e,t)=>{e.update(t);const n=t.length%16;n&&e.update(a.subarray(n))},l=new Uint8Array(32);function d(e,t,n,o,s){const a=e(t,n,l),d=r.poly1305.create(a);s&&c(d,s),c(d,o);const u=new Uint8Array(16),h=(0,i.createView)(u);(0,i.setBigUint64)(h,0,BigInt(s?s.length:0),!0),(0,i.setBigUint64)(h,8,BigInt(o.length),!0),d.update(u);const f=d.digest();return(0,i.clean)(a,u),f}e._poly1305_aead=e=>(t,r,o)=>{const s=16;return(0,n.bytes)(t,32),(0,n.bytes)(r),{encrypt(a,c){const l=a.length,u=l+s;c?(0,n.bytes)(c,u):c=new Uint8Array(u),e(t,r,a,c,1);const h=d(e,t,r,c.subarray(0,-16),o);return c.set(h,l),(0,i.clean)(h),c},decrypt(a,c){const l=a.length,u=l-s;if(l<s)throw new Error(\"encrypted data must be at least 16 bytes\");c?(0,n.bytes)(c,u):c=new Uint8Array(u);const h=a.subarray(0,-16),f=a.subarray(-16),p=d(e,t,r,h,o);if(!(0,i.equalBytes)(f,p))throw new Error(\"invalid tag\");return e(t,r,h,c,1),(0,i.clean)(p),c}}},e.chacha20poly1305=(0,i.wrapCipher)({blockSize:64,nonceLength:12,tagLength:16},(0,e._poly1305_aead)(e.chacha20)),e.xchacha20poly1305=(0,i.wrapCipher)({blockSize:64,nonceLength:24,tagLength:16},(0,e._poly1305_aead)(e.xchacha20))}(Ci),Object.defineProperty(Ei,\"__esModule\",{value:!0}),Ei.xchacha20=void 0;var Hi,Fi,zi,qi=Ci;Ei.xchacha20=function(e,t,n){return(0,qi.xchacha20poly1305)(e,t,n)},function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.aesDecrypt=e.aesEncrypt=e.symDecrypt=e.symEncrypt=void 0;var t=fe,n=Ie,r=Sr,i=Ei,o=Se,s=_e;e.symEncrypt=function(e,t,n){return a(c,e,t,n)};function a(e,t,n,a){var c=(0,o.symmetricAlgorithm)();if(\"aes-256-gcm\"===c)return e(r.aes256gcm,t,n,(0,o.symmetricNonceLength)(),s.AEAD_TAG_LENGTH,a);if(\"xchacha20\"===c)return e(i.xchacha20,t,n,s.XCHACHA20_NONCE_LENGTH,s.AEAD_TAG_LENGTH,a);if(\"aes-256-cbc\"===c)return e(r.aes256cbc,t,n,16,0);throw new Error(\"Not implemented\")}function c(e,r,i,o,s,a){var c=(0,n.randomBytes)(o),l=e(r,c,a).encrypt(i);if(0===s)return(0,t.concatBytes)(c,l);var d=l.length-s,u=l.subarray(0,d),h=l.subarray(d);return(0,t.concatBytes)(c,h,u)}function l(e,n,r,i,o,s){var a=r.subarray(0,i),c=e(n,Uint8Array.from(a),s),l=r.subarray(i);if(0===o)return c.decrypt(l);var d=l.subarray(0,o),u=l.subarray(o);return c.decrypt((0,t.concatBytes)(u,d))}e.symDecrypt=function(e,t,n){return a(l,e,t,n)},e.aesEncrypt=e.symEncrypt,e.aesDecrypt=e.symDecrypt}(Cr),Hi=Me,Fi=le&&le.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!(\"get\"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),zi=le&&le.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||Fi(t,e,n)},Object.defineProperty(Hi,\"__esModule\",{value:!0}),zi(Ae,Hi),zi(fr,Hi),zi(hr,Hi),zi(Cr,Hi);var Vi={};Object.defineProperty(Vi,\"__esModule\",{value:!0}),Vi.PublicKey=void 0;var Wi=fe,Gi=Me,Zi=function(){function e(e){this.data=(0,Gi.convertPublicKeyFormat)(e,!0)}return e.fromHex=function(t){return new e((0,Gi.hexToPublicKey)(t))},Object.defineProperty(e.prototype,\"uncompressed\",{get:function(){return S.from((0,Gi.convertPublicKeyFormat)(this.data,!1))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"compressed\",{get:function(){return S.from(this.data)},enumerable:!1,configurable:!0}),e.prototype.toHex=function(e){return void 0===e&&(e=!0),(0,Wi.bytesToHex)(e?this.data:this.uncompressed)},e.prototype.decapsulate=function(e,t){void 0===t&&(t=!1);var n=t?this.data:this.uncompressed,r=e.multiply(this,t);return(0,Gi.getSharedKey)(n,r)},e.prototype.equals=function(e){return(0,Wi.equalBytes)(this.data,e.data)},e}();Vi.PublicKey=Zi,Object.defineProperty(xe,\"__esModule\",{value:!0}),xe.PrivateKey=void 0;var Yi=fe,Ji=Me,Xi=Vi,Qi=function(){function e(e){if(void 0===e)this.data=(0,Ji.getValidSecret)();else{if(!(0,Ji.isValidPrivateKey)(e))throw new Error(\"Invalid private key\");this.data=e}this.publicKey=new Xi.PublicKey((0,Ji.getPublicKey)(this.data))}return e.fromHex=function(t){return new e((0,Ji.decodeHex)(t))},Object.defineProperty(e.prototype,\"secret\",{get:function(){return S.from(this.data)},enumerable:!1,configurable:!0}),e.prototype.toHex=function(){return(0,Yi.bytesToHex)(this.data)},e.prototype.encapsulate=function(e,t){void 0===t&&(t=!1);var n=t?this.publicKey.compressed:this.publicKey.uncompressed,r=this.multiply(e,t);return(0,Ji.getSharedKey)(n,r)},e.prototype.multiply=function(e,t){return void 0===t&&(t=!1),(0,Ji.getSharedPoint)(this.data,e.compressed,t)},e.prototype.equals=function(e){return(0,Yi.equalBytes)(this.data,e.data)},e}();xe.PrivateKey=Qi,function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.PublicKey=e.PrivateKey=void 0;var t=xe;Object.defineProperty(e,\"PrivateKey\",{enumerable:!0,get:function(){return t.PrivateKey}});var n=Vi;Object.defineProperty(e,\"PublicKey\",{enumerable:!0,get:function(){return n.PublicKey}})}(ke),function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.utils=e.PublicKey=e.PrivateKey=e.ECIES_CONFIG=void 0,e.encrypt=function(e,o){var s=new r.PrivateKey,a=e instanceof Uint8Array?new r.PublicKey(e):r.PublicKey.fromHex(e),c=s.encapsulate(a,(0,n.isHkdfKeyCompressed)()),l=(0,n.isEphemeralKeyCompressed)()?s.publicKey.compressed:s.publicKey.uncompressed,d=(0,i.symEncrypt)(c,o);return S.from((0,t.concatBytes)(l,d))},e.decrypt=function(e,t){var o=e instanceof Uint8Array?new r.PrivateKey(e):r.PrivateKey.fromHex(e),s=(0,n.ephemeralKeySize)(),a=new r.PublicKey(t.subarray(0,s)),c=t.subarray(s),l=a.decapsulate(o,(0,n.isHkdfKeyCompressed)());return S.from((0,i.symDecrypt)(l,c))};var t=fe,n=Se,r=ke,i=Me;var o=Se;Object.defineProperty(e,\"ECIES_CONFIG\",{enumerable:!0,get:function(){return o.ECIES_CONFIG}});var s=ke;Object.defineProperty(e,\"PrivateKey\",{enumerable:!0,get:function(){return s.PrivateKey}}),Object.defineProperty(e,\"PublicKey\",{enumerable:!0,get:function(){return s.PublicKey}}),e.utils={aesEncrypt:i.aesEncrypt,aesDecrypt:i.aesDecrypt,symEncrypt:i.symEncrypt,symDecrypt:i.symDecrypt,decodeHex:i.decodeHex,getValidSecret:i.getValidSecret,remove0x:i.remove0x}}(he);const eo=t(\"KeyExchange:Layer\"),to=t(\"SocketService:Layer\"),no=t(\"Ecies:Layer\"),ro=t(\"RemoteCommunication:Layer\");eo.color=\"##95c44e\",to.color=\"#f638d7\",no.color=\"#465b9c\",ro.color=\"#47a2be\";const io={KeyExchange:eo,SocketService:to,Ecies:no,RemoteCommunication:ro};let oo,so=[],ao=[];const co=(t,n)=>a(void 0,void 0,void 0,(function*(){oo=n,ao.push(t),function(t){return a(this,void 0,void 0,(function*(){if(!oo||!t)return;!function(){const e=ao;ao=so,so=e}();const n=oo.endsWith(\"/\")?`${oo}evt`:`${oo}/evt`,r=Object.assign({},t);if(delete r.params,t.params)for(const[e,n]of Object.entries(t.params))r[e]=n;const i=JSON.stringify(r);io.RemoteCommunication(`[sendBufferedEvents] Sending ${so.length} analytics events to ${n}`);try{const t=yield e(n,{method:\"POST\",headers:{Accept:\"application/json\",\"Content-Type\":\"application/json\"},body:i}),r=yield t.text();io.RemoteCommunication(`[sendBufferedEvents] Response: ${r}`),so.length=0}catch(n){}}))}(t).catch((()=>{}))}));class lo{constructor(e){this.enabled=!0,(null==e?void 0:e.debug)&&t.enable(\"Ecies:Layer\"),this.ecies=(null==e?void 0:e.privateKey)?he.PrivateKey.fromHex(e.privateKey):new he.PrivateKey,io.Ecies(\"[ECIES constructor()] initialized secret: \",this.ecies.toHex()),io.Ecies(\"[ECIES constructor()] initialized public: \",this.ecies.publicKey.toHex()),io.Ecies(\"[ECIES constructor()] init with\",this)}generateECIES(){this.ecies=new he.PrivateKey}getPublicKey(){return this.ecies.publicKey.toHex()}encrypt(e,t){let n=e;if(this.enabled)try{io.Ecies(\"[ECIES: encrypt()] using otherPublicKey\",t);const r=S.from(e),i=he.encrypt(t,r);n=S.from(i).toString(\"base64\")}catch(n){throw io.Ecies(\"[ECIES: encrypt()] error encrypt:\",n),io.Ecies(\"[ECIES: encrypt()] private: \",this.ecies.toHex()),io.Ecies(\"[ECIES: encrypt()] data: \",e),io.Ecies(\"[ECIES: encrypt()] otherkey: \",t),n}return n}decrypt(e){let t=e;if(this.enabled)try{io.Ecies(\"[ECIES: decrypt()] using privateKey\",this.ecies.toHex());const n=S.from(e.toString(),\"base64\");t=he.decrypt(this.ecies.toHex(),n).toString()}catch(t){throw io.Ecies(\"[ECIES: decrypt()] error decrypt\",t),io.Ecies(\"[ECIES: decrypt()] private: \",this.ecies.toHex()),io.Ecies(\"[ECIES: decrypt()] encryptedData: \",e),t}return t}getKeyInfo(){return{private:this.ecies.toHex(),public:this.ecies.publicKey.toHex()}}toString(){io.Ecies(\"[ECIES: toString()]\",this.getKeyInfo())}}var uo={name:\"@metamask/sdk-communication-layer\",version:\"0.31.0\",description:\"\",homepage:\"https://github.com/MetaMask/metamask-sdk#readme\",bugs:{url:\"https://github.com/MetaMask/metamask-sdk/issues\"},repository:{type:\"git\",url:\"https://github.com/MetaMask/metamask-sdk.git\",directory:\"packages/sdk-communication-layer\"},main:\"dist/node/cjs/metamask-sdk-communication-layer.js\",unpkg:\"dist/browser/umd/metamask-sdk-communication-layer.js\",module:\"dist/node/es/metamask-sdk-communication-layer.js\",browser:\"dist/browser/es/metamask-sdk-communication-layer.js\",\"react-native\":\"dist/react-native/es/metamask-sdk-communication-layer.js\",types:\"dist/types/src/index.d.ts\",files:[\"/dist\"],scripts:{\"build:types\":\"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types\",\"build:clean\":\"yarn clean && yarn build\",build:\"yarn build:types && rollup -c --bundleConfigAsCjs\",\"build:dev\":\"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs\",\"build:post-tsc\":\"echo 'N/A'\",\"build:pre-tsc\":\"echo 'N/A'\",size:\"size-limit\",clean:\"rimraf ./dist\",lint:\"yarn lint:eslint && yarn lint:misc --check\",\"lint:changelog\":\"../../scripts/validate-changelog.sh @metamask/sdk-communication-layer\",\"lint:eslint\":\"eslint . --cache --ext js,ts\",\"lint:fix\":\"yarn lint:eslint --fix && yarn lint:misc --write\",\"lint:misc\":\"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore\",\"publish:preview\":\"yarn npm publish --tag preview\",prepack:\"../../scripts/prepack.sh\",reset:\"yarn clean && rimraf ./node_modules/\",test:'jest --testPathIgnorePatterns \"/e2e/\"',\"test:e2e\":'jest --testPathPattern \"/e2e/\"',\"test:coverage\":\"jest --coverage\",\"test:ci\":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns \"/e2e/\"',\"test:dev\":\"jest\",watch:\"rollup -c --bundleConfigAsCjs -w\"},dependencies:{bufferutil:\"^4.0.8\",\"date-fns\":\"^2.29.3\",debug:\"^4.3.4\",\"utf-8-validate\":\"^5.0.2\",uuid:\"^8.3.2\"},devDependencies:{\"@jest/globals\":\"^29.3.1\",\"@lavamoat/allow-scripts\":\"^2.3.1\",\"@metamask/auto-changelog\":\"3.1.0\",\"@metamask/eslint-config\":\"^6.0.0\",\"@metamask/eslint-config-nodejs\":\"^6.0.0\",\"@metamask/eslint-config-typescript\":\"^6.0.0\",\"@rollup/plugin-commonjs\":\"^25.0.0\",\"@rollup/plugin-json\":\"^6.0.0\",\"@rollup/plugin-node-resolve\":\"^15.0.2\",\"@rollup/plugin-replace\":\"^6.0.1\",\"@rollup/plugin-terser\":\"^0.4.4\",\"@size-limit/preset-big-lib\":\"^11.0.2\",\"@types/jest\":\"^29.2.4\",\"@types/node\":\"^20.1.3\",\"@types/uuid\":\"^9.0.0\",\"@typescript-eslint/eslint-plugin\":\"^4.26.0\",\"@typescript-eslint/parser\":\"^4.26.0\",\"cross-fetch\":\"^4.0.0\",eciesjs:\"^0.4.11\",eslint:\"^7.30.0\",\"eslint-config-prettier\":\"^8.3.0\",\"eslint-plugin-import\":\"^2.23.4\",\"eslint-plugin-jest\":\"^24.4.0\",\"eslint-plugin-jsdoc\":\"^36.1.0\",\"eslint-plugin-node\":\"^11.1.0\",\"eslint-plugin-prettier\":\"^3.4.0\",eventemitter2:\"^6.4.9\",jest:\"^29.3.1\",prettier:\"^2.3.0\",rimraf:\"^3.0.2\",rollup:\"^4.26.0\",\"rollup-plugin-jscc\":\"^2.0.0\",\"rollup-plugin-natives\":\"^0.7.5\",\"rollup-plugin-node-builtins\":\"^2.1.2\",\"rollup-plugin-node-globals\":\"^1.4.0\",\"rollup-plugin-peer-deps-external\":\"^2.2.4\",\"rollup-plugin-polyfill-node\":\"^0.13.0\",\"rollup-plugin-sizes\":\"^1.0.6\",\"rollup-plugin-typescript2\":\"^0.31.2\",\"rollup-plugin-visualizer\":\"^5.12.0\",\"size-limit\":\"^11.1.6\",\"socket.io-client\":\"^4.5.1\",\"stream-browserify\":\"^3.0.0\",\"ts-jest\":\"^29.0.3\",\"ts-node\":\"^10.9.1\",typescript:\"^5.6.3\"},peerDependencies:{\"cross-fetch\":\"^4.0.0\",eciesjs:\"*\",eventemitter2:\"^6.4.9\",\"readable-stream\":\"^3.6.2\",\"socket.io-client\":\"^4.5.1\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},lavamoat:{allowScripts:{\"@lavamoat/preinstall-always-fail\":!1,canvas:!0,\"eciesjs>secp256k1\":!1,\"socket.io-client>engine.io-client>ws>bufferutil\":!1,\"socket.io-client>engine.io-client>ws>utf-8-validate\":!1,bufferutil:!1,\"utf-8-validate\":!1}}};const ho=\"https://metamask-sdk.api.cx.metamask.io/\",fo=[\"websocket\"],po=6048e5,go=3e3,mo={METAMASK_GETPROVIDERSTATE:\"metamask_getProviderState\",ETH_REQUESTACCOUNTS:\"eth_requestAccounts\"};function yo(e){const{context:t}=e;io.RemoteCommunication(`[RemoteCommunication: clean()] context=${t}`),e.channelConfig=void 0,e.ready=!1,e.originatorConnectStarted=!1}var vo,bo,wo,Eo,Co,So,_o;(_o=vo||(vo={})).DISCONNECTED=\"disconnected\",_o.WAITING=\"waiting\",_o.TIMEOUT=\"timeout\",_o.LINKED=\"linked\",_o.PAUSED=\"paused\",_o.TERMINATED=\"terminated\",function(e){e.KEY_INFO=\"key_info\",e.SERVICE_STATUS=\"service_status\",e.PROVIDER_UPDATE=\"provider_update\",e.RPC_UPDATE=\"rpc_update\",e.KEYS_EXCHANGED=\"keys_exchanged\",e.JOIN_CHANNEL=\"join_channel\",e.PUBLIC_KEY=\"public_key\",e.CHANNEL_CREATED=\"channel_created\",e.CLIENTS_CONNECTED=\"clients_connected\",e.CLIENTS_DISCONNECTED=\"clients_disconnected\",e.CLIENTS_WAITING=\"clients_waiting\",e.CLIENTS_READY=\"clients_ready\",e.REJECTED=\"rejected\",e.WALLET_INIT=\"wallet_init\",e.CHANNEL_PERSISTENCE=\"channel_persistence\",e.CONFIG=\"config\",e.MESSAGE_ACK=\"ack\",e.SOCKET_DISCONNECTED=\"socket_disconnected\",e.SOCKET_RECONNECT=\"socket_reconnect\",e.OTP=\"otp\",e.SDK_RPC_CALL=\"sdk_rpc_call\",e.AUTHORIZED=\"authorized\",e.CONNECTION_STATUS=\"connection_status\",e.MESSAGE=\"message\",e.TERMINATE=\"terminate\"}(bo||(bo={})),(wo||(wo={})).KEY_EXCHANGE=\"key_exchange\",function(e){e.KEY_HANDSHAKE_START=\"key_handshake_start\",e.KEY_HANDSHAKE_CHECK=\"key_handshake_check\",e.KEY_HANDSHAKE_SYN=\"key_handshake_SYN\",e.KEY_HANDSHAKE_SYNACK=\"key_handshake_SYNACK\",e.KEY_HANDSHAKE_ACK=\"key_handshake_ACK\",e.KEY_HANDSHAKE_WALLET=\"key_handshake_wallet\",e.KEY_HANDSHAKE_NONE=\"none\"}(Eo||(Eo={}));class ko extends r{constructor({communicationLayer:e,otherPublicKey:t,context:n,ecies:r,logging:i}){super(),this.keysExchanged=!1,this.step=Eo.KEY_HANDSHAKE_NONE,this.debug=!1,this.context=n,this.communicationLayer=e,(null==r?void 0:r.privateKey)&&t&&(io.KeyExchange(`[KeyExchange: constructor()] otherPubKey=${t} set keysExchanged to true!`,r),this.keysExchanged=!0),this.myECIES=new lo(Object.assign(Object.assign({},r),{debug:null==i?void 0:i.eciesLayer})),this.communicationLayer.state.eciesInstance=this.myECIES,this.myPublicKey=this.myECIES.getPublicKey(),this.debug=!0===(null==i?void 0:i.keyExchangeLayer),t&&this.setOtherPublicKey(t),this.communicationLayer.on(wo.KEY_EXCHANGE,this.onKeyExchangeMessage.bind(this))}onKeyExchangeMessage(e){const{relayPersistence:t}=this.communicationLayer.remote.state;if(io.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} keysExchanged=${this.keysExchanged} relayPersistence=${t}`,e),t)return void io.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Ignoring key exchange message because relay persistence is activated\");const{message:n}=e;this.keysExchanged&&io.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} received handshake while already exchanged. step=${this.step} otherPubKey=${this.otherPublicKey}`),this.emit(bo.KEY_INFO,n.type),n.type===Eo.KEY_HANDSHAKE_SYN?(this.checkStep([Eo.KEY_HANDSHAKE_NONE,Eo.KEY_HANDSHAKE_ACK]),io.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYN\",n),n.pubkey&&this.setOtherPublicKey(n.pubkey),this.communicationLayer.sendMessage({type:Eo.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey}).catch((e=>{io.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_SYNACK\",e)})),this.setStep(Eo.KEY_HANDSHAKE_ACK)):n.type===Eo.KEY_HANDSHAKE_SYNACK?(this.checkStep([Eo.KEY_HANDSHAKE_SYNACK,Eo.KEY_HANDSHAKE_ACK,Eo.KEY_HANDSHAKE_NONE]),io.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYNACK\"),n.pubkey&&this.setOtherPublicKey(n.pubkey),this.communicationLayer.sendMessage({type:Eo.KEY_HANDSHAKE_ACK}).catch((e=>{io.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_ACK\",e)})),this.keysExchanged=!0,this.setStep(Eo.KEY_HANDSHAKE_ACK),this.emit(bo.KEYS_EXCHANGED)):n.type===Eo.KEY_HANDSHAKE_ACK&&(io.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_ACK set keysExchanged to true!\"),this.checkStep([Eo.KEY_HANDSHAKE_ACK,Eo.KEY_HANDSHAKE_NONE]),this.keysExchanged=!0,this.setStep(Eo.KEY_HANDSHAKE_ACK),this.emit(bo.KEYS_EXCHANGED))}resetKeys(e){this.clean(),this.myECIES=new lo(e)}clean(){io.KeyExchange(`[KeyExchange: clean()] context=${this.context} reset handshake state`),this.setStep(Eo.KEY_HANDSHAKE_NONE),this.emit(bo.KEY_INFO,this.step),this.keysExchanged=!1}start({isOriginator:e,force:t}){const{relayPersistence:n,protocolVersion:r}=this.communicationLayer.remote.state,i=r>=2;n?io.KeyExchange(\"[KeyExchange: start()] Ignoring key exchange message because relay persistence is activated\"):(io.KeyExchange(`[KeyExchange: start()] context=${this.context} protocolVersion=${r} isOriginator=${e} step=${this.step} force=${t} relayPersistence=${n} keysExchanged=${this.keysExchanged}`),e?!(this.keysExchanged||this.step!==Eo.KEY_HANDSHAKE_NONE&&this.step!==Eo.KEY_HANDSHAKE_SYNACK)||t?(io.KeyExchange(`[KeyExchange: start()] context=${this.context} -- start key exchange (force=${t}) -- step=${this.step}`,this.step),this.clean(),this.setStep(Eo.KEY_HANDSHAKE_SYNACK),this.communicationLayer.sendMessage({type:Eo.KEY_HANDSHAKE_SYN,pubkey:this.myPublicKey,v:2}).catch((e=>{io.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYN\",e)}))):io.KeyExchange(`[KeyExchange: start()] context=${this.context} -- key exchange already ${this.keysExchanged?\"done\":\"in progress\"} -- aborted.`,this.step):this.keysExchanged&&!0!==t?io.KeyExchange(\"[KeyExchange: start()] don't send KEY_HANDSHAKE_START -- exchange already done.\"):i?this.communicationLayer.sendMessage({type:Eo.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey,v:2}).catch((e=>{io.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYNACK\",e)})):(this.communicationLayer.sendMessage({type:Eo.KEY_HANDSHAKE_START}).catch((e=>{io.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_START\",e)})),this.clean()))}setStep(e){this.step=e,this.emit(bo.KEY_INFO,e)}checkStep(e){e.length>0&&e.indexOf(this.step.toString())}setRelayPersistence({localKey:e,otherKey:t}){this.otherPublicKey=t,this.myECIES=new lo({privateKey:e,debug:this.debug}),this.keysExchanged=!0}setKeysExchanged(e){this.keysExchanged=e}areKeysExchanged(){return this.keysExchanged}getMyPublicKey(){return this.myPublicKey}getOtherPublicKey(){return this.otherPublicKey}setOtherPublicKey(e){io.KeyExchange(\"[KeyExchange: setOtherPubKey()]\",e),this.otherPublicKey=e}encryptMessage(e){if(!this.otherPublicKey)throw new Error(\"encryptMessage: Keys not exchanged - missing otherPubKey\");return this.myECIES.encrypt(e,this.otherPublicKey)}decryptMessage(e){if(!this.otherPublicKey)throw new Error(\"decryptMessage: Keys not exchanged - missing otherPubKey\");return this.myECIES.decrypt(e)}getKeyInfo(){return{ecies:Object.assign(Object.assign({},this.myECIES.getKeyInfo()),{otherPubKey:this.otherPublicKey}),step:this.step,keysExchanged:this.areKeysExchanged()}}toString(){const e={keyInfo:this.getKeyInfo(),keysExchanged:this.keysExchanged,step:this.step};return JSON.stringify(e)}}!function(e){e.TERMINATE=\"terminate\",e.ANSWER=\"answer\",e.OFFER=\"offer\",e.CANDIDATE=\"candidate\",e.JSONRPC=\"jsonrpc\",e.WALLET_INFO=\"wallet_info\",e.WALLET_INIT=\"wallet_init\",e.ORIGINATOR_INFO=\"originator_info\",e.PAUSE=\"pause\",e.OTP=\"otp\",e.AUTHORIZED=\"authorized\",e.PING=\"ping\",e.READY=\"ready\"}(Co||(Co={})),function(e){e.REQUEST=\"sdk_connect_request_started\",e.REQUEST_MOBILE=\"sdk_connect_request_started_mobile\",e.RECONNECT=\"sdk_reconnect_request_started\",e.CONNECTED=\"sdk_connection_established\",e.CONNECTED_MOBILE=\"sdk_connection_established_mobile\",e.AUTHORIZED=\"sdk_connection_authorized\",e.REJECTED=\"sdk_connection_rejected\",e.TERMINATED=\"sdk_connection_terminated\",e.DISCONNECTED=\"sdk_disconnected\",e.SDK_USE_EXTENSION=\"sdk_use_extension\",e.SDK_RPC_REQUEST=\"sdk_rpc_request\",e.SDK_RPC_REQUEST_RECEIVED=\"sdk_rpc_request_received\",e.SDK_RPC_REQUEST_DONE=\"sdk_rpc_request_done\",e.SDK_EXTENSION_UTILIZED=\"sdk_extension_utilized\",e.SDK_USE_INAPP_BROWSER=\"sdk_use_inapp_browser\"}(So||(So={}));const xo=(e,t,n)=>a(void 0,void 0,void 0,(function*(){var r,i,o,s,a,c;const{remote:l,state:d}=e,{channelId:u,isOriginator:h}=d;if(\"error_terminated\"===t)return io.SocketService(`handleJoinChannelResults: Channel ${u} terminated`),void e.emit(bo.TERMINATE);if(!n)return void io.SocketService(`handleJoinChannelResults: No result for channel ${u}`);const{persistence:f,walletKey:p,rejected:g}=n;if(io.SocketService(`handleJoinChannelResults: Channel ${u} persistence=${f} walletKey=${p} rejected=${g}`),g)return io.SocketService(`handleJoinChannelResults: Channel ${u} rejected`),yield e.remote.disconnect({terminate:!0}),e.remote.emit(bo.REJECTED,{channelId:u}),void e.remote.emitServiceStatusEvent();if(p&&!(null===(r=l.state.channelConfig)||void 0===r?void 0:r.otherKey)){e.getKeyExchange().setOtherPublicKey(p),null===(i=e.state.keyExchange)||void 0===i||i.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(bo.AUTHORIZED);const{communicationLayer:t,storageManager:n}=l.state,r=Object.assign(Object.assign({},l.state.channelConfig),{channelId:null!==(o=l.state.channelId)&&void 0!==o?o:\"\",validUntil:Date.now()+po,localKey:null==t?void 0:t.getKeyInfo().ecies.private,otherKey:p});e.sendMessage({type:Eo.KEY_HANDSHAKE_ACK}).catch((e=>{})),null===(s=e.state.socket)||void 0===s||s.emit(Co.PING,{id:u,clientType:h?\"dapp\":\"wallet\",context:\"on_channel_reconnect\",message:\"\"}),yield null==n?void 0:n.persistChannelConfig(r),l.emitServiceStatusEvent(),l.setConnectionStatus(vo.LINKED)}f&&(e.emit(bo.CHANNEL_PERSISTENCE),null===(a=e.state.keyExchange)||void 0===a||a.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(bo.AUTHORIZED),co(Object.assign(Object.assign({id:null!=u?u:\"\",event:h?So.CONNECTED:So.CONNECTED_MOBILE},e.remote.state.originatorInfo),{sdkVersion:e.remote.state.sdkVersion,commLayer:e.state.communicationLayerPreference,commLayerVersion:uo.version,walletVersion:null===(c=e.remote.state.walletInfo)||void 0===c?void 0:c.version}),d.communicationServerUrl).catch((e=>{})))})),Mo=e=>new Promise((t=>{setTimeout(t,e)})),Ao=(e,t,...n)=>a(void 0,[e,t,...n],void 0,(function*(e,t,n=200){let r;const i=Date.now();let o=!1;for(;!o;){if(o=Date.now()-i>3e5,r=t[e],void 0!==r.elapsedTime)return r;yield Mo(n)}throw new Error(`RPC ${e} timed out`)})),Io=e=>a(void 0,void 0,void 0,(function*(){const{state:t}=e,{socket:n,channelId:r,context:i,isOriginator:o,isReconnecting:s}=t;if(s)return io.SocketService(\"[SocketService: reconnectSocket()] Reconnection already in progress, skipping\",e),!1;if(!n)return io.SocketService(\"[SocketService: reconnectSocket()] socket is not defined\",e),!1;if(!r)return!1;const{connected:c}=n;t.isReconnecting=!0,t.reconnectionAttempts=0,io.SocketService(`[SocketService: reconnectSocket()] connected=${c} trying to reconnect after socketio disconnection`,e);try{for(;3>t.reconnectionAttempts;){if(io.SocketService(`[SocketService: reconnectSocket()] Attempt ${t.reconnectionAttempts+1} of 3`,e),yield Mo(200),n.connected)return io.SocketService(\"Socket already connected --- ping to retrieve messages\"),n.emit(Co.PING,{id:r,clientType:o?\"dapp\":\"wallet\",context:\"on_channel_config\",message:\"\"}),!0;t.resumed=!0,n.connect(),e.emit(bo.SOCKET_RECONNECT);try{if(yield new Promise(((t,s)=>{n.emit(bo.JOIN_CHANNEL,{channelId:r,context:`${i}connect_again`,clientType:o?\"dapp\":\"wallet\"},((n,r)=>a(void 0,void 0,void 0,(function*(){try{yield xo(e,n,r),t()}catch(e){s(e)}}))))})),yield Mo(100),n.connected)return io.SocketService(`Reconnection successful on attempt ${t.reconnectionAttempts+1}`),!0}catch(e){io.SocketService(`Error during reconnection attempt ${t.reconnectionAttempts+1}:`,e)}t.reconnectionAttempts+=1,3>t.reconnectionAttempts&&(yield Mo(200))}return io.SocketService(\"Failed to reconnect after 3 attempts\"),!1}finally{t.isReconnecting=!1,t.reconnectionAttempts=0}}));function Po(e,t){return a(this,void 0,void 0,(function*(){var n;const r=null===(n=e.state.keyExchange)||void 0===n?void 0:n.encryptMessage(JSON.stringify(t)),i={id:e.state.channelId,context:e.state.context,clientType:e.state.isOriginator?\"dapp\":\"wallet\",message:r,plaintext:e.state.hasPlaintext?JSON.stringify(t):void 0};return io.SocketService(`[SocketService: encryptAndSendMessage()] context=${e.state.context}`,i),t.type===Co.TERMINATE&&(e.state.manualDisconnect=!0),new Promise(((t,n)=>{var r;null===(r=e.state.socket)||void 0===r||r.emit(bo.MESSAGE,i,((e,r)=>{var i;e&&(io.SocketService(`[SocketService: encryptAndSendMessage()] error=${e}`),n(e)),io.SocketService(\"[encryptAndSendMessage] response\",r),t(null!==(i=null==r?void 0:r.success)&&void 0!==i&&i)}))}))}))}var Ro;!function(e){e.RPC_CHECK=\"rpcCheck\",e.SKIPPED_RPC=\"skippedRpc\"}(Ro||(Ro={}));const Lo=[\"eth_sendTransaction\",\"eth_signTypedData\",\"eth_signTransaction\",\"personal_sign\",\"wallet_requestPermissions\",\"wallet_switchEthereumChain\",\"eth_signTypedData_v3\",\"eth_signTypedData_v4\",\"metamask_connectSign\",\"metamask_connectWith\",\"metamask_batch\"].map((e=>e.toLowerCase()));const Oo=[{event:bo.CLIENTS_CONNECTED,handler:function(e,t){return n=>a(this,void 0,void 0,(function*(){var n,r,i,o,s,a,c,l,d,u,h;const f=null!==(r=null===(n=e.remote.state.channelConfig)||void 0===n?void 0:n.relayPersistence)&&void 0!==r&&r;if(io.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected-${t}' relayPersistence=${f} resumed=${e.state.resumed} clientsPaused=${e.state.clientsPaused} keysExchanged=${null===(i=e.state.keyExchange)||void 0===i?void 0:i.areKeysExchanged()} isOriginator=${e.state.isOriginator}`),e.emit(bo.CLIENTS_CONNECTED,{isOriginator:e.state.isOriginator,keysExchanged:null===(o=e.state.keyExchange)||void 0===o?void 0:o.areKeysExchanged(),context:e.state.context}),e.state.resumed)e.state.isOriginator||(io.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} 'clients_connected' / keysExchanged=${null===(s=e.state.keyExchange)||void 0===s?void 0:s.areKeysExchanged()} -- backward compatibility`),null===(a=e.state.keyExchange)||void 0===a||a.start({isOriginator:null!==(c=e.state.isOriginator)&&void 0!==c&&c})),e.state.resumed=!1;else if(e.state.clientsPaused)io.SocketService(\"[SocketService: handleClientsConnected()] 'clients_connected' skip sending originatorInfo on pause\");else if(!e.state.isOriginator){const t=!f;io.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected' / keysExchanged=${null===(l=e.state.keyExchange)||void 0===l?void 0:l.areKeysExchanged()} -- force=${t} -- backward compatibility`),io.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected' / keysExchanged=${null===(d=e.state.keyExchange)||void 0===d?void 0:d.areKeysExchanged()} -- force=${t} -- backward compatibility`),null===(u=e.state.keyExchange)||void 0===u||u.start({isOriginator:null!==(h=e.state.isOriginator)&&void 0!==h&&h,force:t})}e.state.clientsConnected=!0,e.state.clientsPaused=!1}))}},{event:bo.CHANNEL_CREATED,handler:function(e,t){return n=>{io.SocketService(`[SocketService: handleChannelCreated()] context=${e.state.context} on 'channel_created-${t}'`,n),e.emit(bo.CHANNEL_CREATED,n)}}},{event:bo.CLIENTS_DISCONNECTED,handler:function(e,t){return()=>{var n;e.state.clientsConnected=!1,io.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}'`),e.remote.state.relayPersistence?io.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}' - relayPersistence enabled, skipping key exchange cleanup.`):(e.state.isOriginator&&!e.state.clientsPaused&&(null===(n=e.state.keyExchange)||void 0===n||n.clean()),e.emit(bo.CLIENTS_DISCONNECTED,t))}}},{event:bo.CONFIG,handler:function(e,t){return n=>a(this,void 0,void 0,(function*(){var r,i,o;io.SocketService(`[SocketService: handleChannelConfig()] update relayPersistence on 'config-${t}'`,n);const{persistence:s,walletKey:a}=n;e.state.isOriginator&&e.remote.state.channelConfig?(n.walletKey&&!e.remote.state.channelConfig.otherKey&&(io.SocketService(`Setting wallet key ${a}`),e.remote.state.channelConfig.otherKey=a,e.getKeyExchange().setOtherPublicKey(n.walletKey),null===(r=e.state.keyExchange)||void 0===r||r.setKeysExchanged(!0),yield e.remote.sendMessage({type:Eo.KEY_HANDSHAKE_ACK}),yield e.remote.sendMessage({type:Co.PING}),yield null===(i=e.remote.state.storageManager)||void 0===i?void 0:i.persistChannelConfig(e.remote.state.channelConfig)),!0!==s||e.remote.state.channelConfig.relayPersistence||(io.SocketService(`Setting relay persistence ${s}`),e.remote.state.channelConfig.relayPersistence=s,e.remote.state.relayPersistence=!0,e.remote.emit(bo.CHANNEL_PERSISTENCE),e.remote.state.authorized=!0,e.remote.state.ready=!0,e.remote.emit(bo.AUTHORIZED),yield null===(o=e.remote.state.storageManager)||void 0===o?void 0:o.persistChannelConfig(e.remote.state.channelConfig))):e.state.isOriginator||n.persistence&&(e.remote.state.relayPersistence=!0,e.remote.emit(bo.CHANNEL_PERSISTENCE))}))}},{event:bo.MESSAGE,handler:function(e,t){return n=>{var r,i,o,s,a,c,l,d,u,h,f,p,g,m,y,v,b,w;const{ackId:E,message:C,error:S}=n,_=null!==(r=e.remote.state.relayPersistence)&&void 0!==r&&r;if(io.SocketService(`[SocketService handleMessage()] relayPersistence=${_} context=${e.state.context} on 'message' ${t} keysExchanged=${null===(i=e.state.keyExchange)||void 0===i?void 0:i.areKeysExchanged()}`,n),S)throw io.SocketService(`\\n [SocketService handleMessage()] context=${e.state.context}::on 'message' error=${S}`),new Error(S);const k=\"string\"==typeof C;if(!k&&(null==C?void 0:C.type)===Eo.KEY_HANDSHAKE_START){if(_)return;return io.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received HANDSHAKE_START isOriginator=${e.state.isOriginator}`,C),void(null===(o=e.state.keyExchange)||void 0===o||o.start({isOriginator:null!==(s=e.state.isOriginator)&&void 0!==s&&s,force:!0}))}if(!k&&(null===(a=null==C?void 0:C.type)||void 0===a?void 0:a.startsWith(\"key_handshake\"))){if(_)return;return io.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' emit KEY_EXCHANGE`,C),void e.emit(wo.KEY_EXCHANGE,{message:C,context:e.state.context})}if(k&&!(null===(c=e.state.keyExchange)||void 0===c?void 0:c.areKeysExchanged())){let t=!1;try{io.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' trying to decrypt message`),null===(l=e.state.keyExchange)||void 0===l||l.decryptMessage(C),t=!0}catch(t){io.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' error`,t)}if(!t)return e.state.isOriginator?null===(u=e.state.keyExchange)||void 0===u||u.start({isOriginator:null!==(h=e.state.isOriginator)&&void 0!==h&&h}):e.sendMessage({type:Eo.KEY_HANDSHAKE_START}).catch((e=>{})),void io.SocketService(`Message ignored because invalid key exchange status. step=${null===(f=e.state.keyExchange)||void 0===f?void 0:f.getKeyInfo().step}`,null===(p=e.state.keyExchange)||void 0===p?void 0:p.getKeyInfo(),C);io.SocketService(\"Invalid key exchange status detected --- updating it.\"),null===(d=e.state.keyExchange)||void 0===d||d.setKeysExchanged(!0)}else if(!k&&(null==C?void 0:C.type))return void e.emit(bo.MESSAGE,C);if(!k)return void e.emit(bo.MESSAGE,C);const x=null===(g=e.state.keyExchange)||void 0===g?void 0:g.decryptMessage(C),M=JSON.parse(null!=x?x:\"{}\");if(E&&(null==E?void 0:E.length)>0&&(io.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' ackid=${E} channelId=${t}`),null===(m=e.state.socket)||void 0===m||m.emit(bo.MESSAGE_ACK,{ackId:E,channelId:t,clientType:e.state.isOriginator?\"dapp\":\"wallet\"})),e.state.clientsPaused=(null==M?void 0:M.type)===Co.PAUSE,e.state.isOriginator&&M.data){const t=M.data,n=e.state.rpcMethodTracker[t.id];if(n){const r=Date.now()-n.timestamp;io.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received answer for id=${t.id} method=${n.method} responseTime=${r}`,M),e.remote.state.analytics&&Lo.includes(n.method.toLowerCase())&&co(Object.assign(Object.assign({id:null!==(y=e.remote.state.channelId)&&void 0!==y?y:\"\",event:So.SDK_RPC_REQUEST_DONE,sdkVersion:e.remote.state.sdkVersion,commLayerVersion:uo.version},e.remote.state.originatorInfo),{walletVersion:null===(v=e.remote.state.walletInfo)||void 0===v?void 0:v.version,params:{method:n.method,from:\"mobile\"}}),e.remote.state.communicationServerUrl).catch((e=>{}));const i=Object.assign(Object.assign({},n),{result:t.result,error:t.error?{code:null===(b=t.error)||void 0===b?void 0:b.code,message:null===(w=t.error)||void 0===w?void 0:w.message}:void 0,elapsedTime:r});e.state.rpcMethodTracker[t.id]=i,e.emit(bo.RPC_UPDATE,i)}}e.emit(bo.MESSAGE,{message:M})}}},{event:bo.REJECTED,handler:function(e,t){return n=>a(this,void 0,void 0,(function*(){var n;e.state.isOriginator&&!e.remote.state.ready?(io.SocketService(`[SocketService: handleChannelRejected()] context=${e.state.context} channelId=${t} isOriginator=${e.state.isOriginator} ready=${e.remote.state.ready}`,e.remote.state.originatorInfo),co(Object.assign(Object.assign({id:t,event:So.REJECTED},e.remote.state.originatorInfo),{sdkVersion:e.remote.state.sdkVersion,commLayer:e.state.communicationLayerPreference,commLayerVersion:uo.version,walletVersion:null===(n=e.remote.state.walletInfo)||void 0===n?void 0:n.version}),e.remote.state.communicationServerUrl).catch((e=>{})),yield e.remote.disconnect({terminate:!0}),e.remote.emit(bo.REJECTED,{channelId:t}),e.remote.setConnectionStatus(vo.DISCONNECTED)):io.SocketService(`[SocketService: handleChannelRejected()] SKIP -- channelId=${t} isOriginator=${e.state.isOriginator} ready=${e.remote.state.ready}`)}))}},{event:\"clients_waiting_to_join\",handler:function(e,t){return n=>{io.SocketService(`[SocketService: handleClientsWaitingToJoin()] context=${e.state.context} on 'clients_waiting_to_join-${t}'`,n),e.emit(bo.CLIENTS_WAITING,n)}}}],To=[{event:bo.KEY_INFO,handler:function(e){return t=>{io.SocketService(\"[SocketService: handleKeyInfo()] on 'KEY_INFO'\",t),e.emit(bo.KEY_INFO,t)}}},{event:bo.KEYS_EXCHANGED,handler:function(e){return()=>{var t,n,r;io.SocketService(`[SocketService: handleKeysExchanged()] on 'keys_exchanged' keyschanged=${null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged()}`);const{channelConfig:i}=e.remote.state;if(i){const t=e.getKeyExchange().getKeyInfo().ecies;i.localKey=t.private,i.otherKey=t.otherPubKey,e.remote.state.channelConfig=i,null===(n=e.remote.state.storageManager)||void 0===n||n.persistChannelConfig(i).catch((e=>{}))}e.emit(bo.KEYS_EXCHANGED,{keysExchanged:null===(r=e.state.keyExchange)||void 0===r?void 0:r.areKeysExchanged(),isOriginator:e.state.isOriginator});const o={keyInfo:e.getKeyInfo()};e.emit(bo.SERVICE_STATUS,o)}}}];function No(e,t){io.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} setting socket listeners for channel ${t}...`);const{socket:n}=e.state,{keyExchange:r}=e.state;n&&e.state.isOriginator&&(e.state.debug&&(null==n||n.io.on(\"error\",(t=>{io.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=error`,t)})),null==n||n.io.on(\"reconnect\",(t=>{io.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect`,t),Io(e).catch((e=>{}))})),null==n||n.io.on(\"reconnect_error\",(t=>{io.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_error`,t)})),null==n||n.io.on(\"reconnect_failed\",(()=>{io.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_failed`)}))),null==n||n.on(\"disconnect\",(t=>(io.SocketService(`[SocketService: setupChannelListener()] on 'disconnect' -- MetaMaskSDK socket disconnected '${t}' begin recovery...`),function(e){return t=>{io.SocketService(`[SocketService: handleDisconnect()] on 'disconnect' manualDisconnect=${e.state.manualDisconnect}`,t),e.state.manualDisconnect||(e.emit(bo.SOCKET_DISCONNECTED),Io(e).catch((e=>{})))}}(e)(t))))),Oo.forEach((({event:r,handler:i})=>{null==n||n.on(`${r}-${t}`,i(e,t))})),To.forEach((({event:t,handler:n})=>{null==r||r.on(t,n(e))})),e.state.setupChannelListeners=!0}class Do extends r{constructor(e){super(),this.state={clientsConnected:!1,clientsPaused:!1,manualDisconnect:!1,lastRpcId:void 0,rpcMethodTracker:{},hasPlaintext:!1,communicationServerUrl:\"\",focusListenerAdded:!1,removeFocusListener:void 0,isReconnecting:!1,reconnectionAttempts:0},this.options=e;const{reconnect:n,communicationLayerPreference:r,communicationServerUrl:i,context:o,remote:s,logging:a}=e;this.state.resumed=n,this.state.context=o,this.state.isOriginator=s.state.isOriginator,this.state.communicationLayerPreference=r,this.state.debug=!0===(null==a?void 0:a.serviceLayer),this.remote=s,!0===(null==a?void 0:a.serviceLayer)&&t.enable(\"SocketService:Layer\"),this.state.communicationServerUrl=i,this.state.hasPlaintext=this.state.communicationServerUrl!==ho&&!0===(null==a?void 0:a.plaintext),io.SocketService(`[SocketService: constructor()] Socket IO url: ${this.state.communicationServerUrl}`),this.initSocket()}initSocket(){var e;const{otherPublicKey:t,ecies:n,logging:r}=this.options,i={autoConnect:!1,transports:fo,withCredentials:!0},o=this.state.communicationServerUrl;io.SocketService(`[SocketService: initSocket()] Socket IO url: ${o}`),this.state.socket=s(o,i),function(e){if(\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&(io.SocketService(`[SocketService: setupSocketFocusListener()] hasFocus=${document.hasFocus()}`,e),!e.state.focusListenerAdded)){const t=()=>{io.SocketService(\"Document has focus --- reconnecting socket\"),Io(e).catch((e=>{}))};window.addEventListener(\"focus\",t),e.state.focusListenerAdded=!0,e.state.removeFocusListener=()=>{window.removeEventListener(\"focus\",t),e.state.focusListenerAdded=!1}}}(this);const a={communicationLayer:this,otherPublicKey:t,sendPublicKey:!1,context:null!==(e=this.state.context)&&void 0!==e?e:\"\",ecies:n,logging:r};this.state.keyExchange=new ko(a)}resetKeys(){return io.SocketService(\"[SocketService: resetKeys()] Resetting keys.\"),void(null===(e=this.state.keyExchange)||void 0===e||e.resetKeys());var e}createChannel(){return a(this,void 0,void 0,(function*(){return function(e){return a(this,void 0,void 0,(function*(){var t,n,r;if(io.SocketService(`[SocketService: createChannel()] context=${e.state.context}`),e.state.socket||e.initSocket(),null===(t=e.state.socket)||void 0===t?void 0:t.connected)throw new Error(\"socket already connected\");null===(n=e.state.socket)||void 0===n||n.connect(),e.state.manualDisconnect=!1,e.state.isOriginator=!0;const i=o();e.state.channelId=i,No(e,i),yield new Promise(((t,n)=>{var r;null===(r=e.state.socket)||void 0===r||r.emit(bo.JOIN_CHANNEL,{channelId:i,context:`${e.state.context}createChannel`,clientType:\"dapp\"},((r,i)=>a(this,void 0,void 0,(function*(){try{yield xo(e,r,i),t()}catch(e){n(e)}}))))}));const s=null===(r=e.state.keyExchange)||void 0===r?void 0:r.getKeyInfo();return{channelId:i,pubKey:(null==s?void 0:s.ecies.public)||\"\",privKey:(null==s?void 0:s.ecies.private)||\"\"}}))}(this)}))}connectToChannel({channelId:e,withKeyExchange:t=!1,authorized:n}){return function(e){return a(this,arguments,void 0,(function*({options:e,instance:t}){const{channelId:n,authorized:r,withKeyExchange:i}=e,{state:o,remote:s}=t,{isOriginator:c=!1,socket:l,keyExchange:d}=o,{channelConfig:u}=s.state;if(null==l?void 0:l.connected)throw new Error(\"socket already connected\");if(c&&(null==u?void 0:u.relayPersistence)){const{localKey:e,otherKey:t}=u;e&&t&&(null==d||d.setRelayPersistence({localKey:e,otherKey:t}))}return Object.assign(o,{manualDisconnect:!1,withKeyExchange:i,isOriginator:c,channelId:n}),null==l||l.connect(),No(t,n),!c&&r&&(null==d||d.setKeysExchanged(!0),Object.assign(s.state,{ready:!0,authorized:!0})),new Promise((e=>{var i;const s=null===(i=null==d?void 0:d.getKeyInfo())||void 0===i?void 0:i.ecies.public;null==l||l.emit(bo.JOIN_CHANNEL,{channelId:n,context:`${o.context}_connectToChannel`,clientType:c?\"dapp\":\"wallet\",publicKey:r&&!c?s:void 0},((n,r)=>a(this,void 0,void 0,(function*(){yield xo(t,n,r),e()}))))}))}))}({options:{channelId:e,withKeyExchange:t,authorized:n},instance:this})}getKeyInfo(){return this.state.keyExchange.getKeyInfo()}keyCheck(){var e,t;null===(t=(e=this).state.socket)||void 0===t||t.emit(bo.MESSAGE,{id:e.state.channelId,context:e.state.context,message:{type:Eo.KEY_HANDSHAKE_CHECK,pubkey:e.getKeyInfo().ecies.otherPubKey}})}getKeyExchange(){return this.state.keyExchange}sendMessage(e){return a(this,void 0,void 0,(function*(){return function(e,t){return a(this,void 0,void 0,(function*(){var n,r,i;if(!e.state.channelId)throw io.SocketService(\"handleSendMessage: no channelId - Create a channel first\"),new Error(\"Create a channel first\");if(io.SocketService(`[SocketService: handleSendMessage()] context=${e.state.context} areKeysExchanged=${null===(n=e.state.keyExchange)||void 0===n?void 0:n.areKeysExchanged()}`,t),null===(r=null==t?void 0:t.type)||void 0===r?void 0:r.startsWith(\"key_handshake\"))return function(e,t){var n;io.SocketService(`[SocketService: handleKeyHandshake()] context=${e.state.context}`,t),null===(n=e.state.socket)||void 0===n||n.emit(bo.MESSAGE,{id:e.state.channelId,context:e.state.context,clientType:e.state.isOriginator?\"dapp\":\"wallet\",message:t})}(e,t),!0;!function(e,t){var n;if(!(null===(n=e.state.keyExchange)||void 0===n?void 0:n.areKeysExchanged())&&!e.remote.state.relayPersistence)throw io.SocketService(`[SocketService: validateKeyExchange()] context=${e.state.context} ERROR keys not exchanged`,t),new Error(\"Keys not exchanged BBB\")}(e,t),function(e,t){var n;const r=null!==(n=null==t?void 0:t.method)&&void 0!==n?n:\"\",i=null==t?void 0:t.id;e.state.isOriginator&&i&&(e.state.rpcMethodTracker[i]={id:i,timestamp:Date.now(),method:r},e.emit(bo.RPC_UPDATE,e.state.rpcMethodTracker[i]))}(e,t);const o=yield Po(e,t);return e.remote.state.analytics&&e.remote.state.isOriginator&&t.method&&Lo.includes(t.method.toLowerCase())&&co({id:null!==(i=e.remote.state.channelId)&&void 0!==i?i:\"\",event:So.SDK_RPC_REQUEST,params:{method:t.method,from:\"mobile\"}},e.remote.state.communicationServerUrl).catch((e=>{})),function(e,t){return a(this,void 0,void 0,(function*(){var n;const r=null==t?void 0:t.id,i=null!==(n=null==t?void 0:t.method)&&void 0!==n?n:\"\";if(e.state.isOriginator&&r)try{const n=Ao(r,e.state.rpcMethodTracker,200).then((e=>({type:Ro.RPC_CHECK,result:e}))),o=(()=>a(this,void 0,void 0,(function*(){const t=yield(e=>a(void 0,[e],void 0,(function*({rpcId:e,instance:t}){for(;t.state.lastRpcId===e||void 0===t.state.lastRpcId;)yield Mo(200);return t.state.lastRpcId})))({instance:e,rpcId:r}),n=yield Ao(t,e.state.rpcMethodTracker,200);return{type:Ro.SKIPPED_RPC,result:n}})))(),s=yield Promise.race([n,o]);if(s.type===Ro.RPC_CHECK){const e=s.result;io.SocketService(`[SocketService:handleRpcReplies()] id=${t.id} ${i} ( ${e.elapsedTime} ms)`,e.result)}else{if(s.type!==Ro.SKIPPED_RPC)throw new Error(`Error handling RPC replies for ${r}`);{const t=Object.assign(Object.assign({},e.state.rpcMethodTracker[r]),{error:new Error(\"SDK_CONNECTION_ISSUE\")});e.emit(bo.RPC_UPDATE,t);const n={data:Object.assign(Object.assign({},t),{jsonrpc:\"2.0\"}),name:\"metamask-provider\"};e.emit(bo.MESSAGE,{message:n})}}}catch(e){throw e}}))}(e,t).catch((e=>{})),o}))}(this,e)}))}ping(){return function(e){return a(this,void 0,void 0,(function*(){var t,n;io.SocketService(`[SocketService: ping()] context=${e.state.context} originator=${e.state.isOriginator} keysExchanged=${null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged()}`),null===(n=e.state.socket)||void 0===n||n.emit(Co.PING,{id:e.state.channelId,context:\"ping\",clientType:e.remote.state.isOriginator?\"dapp\":\"wallet\",message:\"\"})}))}(this)}pause(){return function(e){return a(this,void 0,void 0,(function*(){var t,n;io.SocketService(`[SocketService: pause()] context=${e.state.context}`),e.state.manualDisconnect=!0,(null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged())&&(yield e.sendMessage({type:Co.PAUSE})),null===(n=e.state.socket)||void 0===n||n.disconnect()}))}(this)}isConnected(){var e;return null===(e=this.state.socket)||void 0===e?void 0:e.connected}resume(){return function(e){return a(this,void 0,void 0,(function*(){const{state:t,remote:n}=e,{socket:r,channelId:i,context:o,keyExchange:s,isOriginator:c}=t,{isOriginator:l}=n.state;if(io.SocketService(`[SocketService: resume()] channelId=${i} context=${o} connected=${null==r?void 0:r.connected} manualDisconnect=${t.manualDisconnect} resumed=${t.resumed} keysExchanged=${null==s?void 0:s.areKeysExchanged()}`),!i)throw io.SocketService(\"[SocketService: resume()] channelId is not defined\"),new Error(\"ChannelId is not defined\");(null==r?void 0:r.connected)?(io.SocketService(\"[SocketService: resume()] already connected.\"),r.emit(Co.PING,{id:i,clientType:l?\"dapp\":\"wallet\",context:\"on_channel_config\",message:\"\"}),n.hasRelayPersistence()||(null==s?void 0:s.areKeysExchanged())||(c?yield e.sendMessage({type:Co.READY}):null==s||s.start({isOriginator:!1}))):(null==r||r.connect(),io.SocketService(`[SocketService: resume()] after connecting socket --\\x3e connected=${null==r?void 0:r.connected}`),null==r||r.emit(bo.JOIN_CHANNEL,{channelId:i,context:`${o}_resume`,clientType:l?\"dapp\":\"wallet\"},((t,n)=>a(this,void 0,void 0,(function*(){try{yield xo(e,t,n)}catch(e){}}))))),t.manualDisconnect=!1,t.resumed=!0}))}(this)}getRPCMethodTracker(){return this.state.rpcMethodTracker}disconnect(e){return function(e,t){var n,r,i,o,s;io.SocketService(`[SocketService: disconnect()] context=${e.state.context}`,t),(null==t?void 0:t.terminate)&&(null===(r=(n=e.state).removeFocusListener)||void 0===r||r.call(n),e.state.channelId=t.channelId,null===(i=e.state.socket)||void 0===i||i.removeAllListeners(),null===(o=e.state.keyExchange)||void 0===o||o.clean(),e.remote.state.ready=!1,e.state.socket=void 0,e.state.rpcMethodTracker={}),e.state.manualDisconnect=!0,null===(s=e.state.socket)||void 0===s||s.disconnect()}(this,e)}}var $o,Bo,Ko;function jo(e){return()=>a(this,void 0,void 0,(function*(){var t,n,r;const{state:i}=e;if(i.authorized)return;yield(()=>a(this,void 0,void 0,(function*(){for(;!i.walletInfo;)yield Mo(500)})))();const o=\"7.3\".localeCompare((null===(t=i.walletInfo)||void 0===t?void 0:t.version)||\"\");if(io.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' version=${null===(n=i.walletInfo)||void 0===n?void 0:n.version} compareValue=${o}`),1!==o)return;const s=i.platformType===Bo.MobileWeb||i.platformType===Bo.ReactNative||i.platformType===Bo.MetaMaskMobileWebview;io.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' platform=${i.platformType} secure=${s} channel=${i.channelId} walletVersion=${null===(r=i.walletInfo)||void 0===r?void 0:r.version}`),s&&(i.authorized=!0,e.emit(bo.AUTHORIZED))}))}function Uo(e){return t=>{const{state:n}=e;io.RemoteCommunication(`[RemoteCommunication: handleChannelCreatedEvent()] context=${n.context} on 'channel_created' channelId=${t}`),e.emit(bo.CHANNEL_CREATED,t)}}function Ho(e,t){return()=>{var n,r,i,o;const{state:s}=e;io.RemoteCommunication(`[RemoteCommunication: handleClientsConnectedEvent()] on 'clients_connected' channel=${s.channelId} keysExchanged=${null===(r=null===(n=s.communicationLayer)||void 0===n?void 0:n.getKeyInfo())||void 0===r?void 0:r.keysExchanged}`),s.analytics&&co(Object.assign(Object.assign({id:null!==(i=s.channelId)&&void 0!==i?i:\"\",event:s.reconnection?So.RECONNECT:s.isOriginator?So.REQUEST:So.REQUEST_MOBILE},s.originatorInfo),{commLayer:t,sdkVersion:s.sdkVersion,walletVersion:null===(o=s.walletInfo)||void 0===o?void 0:o.version,commLayerVersion:uo.version}),s.communicationServerUrl).catch((e=>{})),s.clientsConnected=!0,s.originatorInfoSent=!1,e.emit(bo.CLIENTS_CONNECTED)}}function Fo(e){return t=>{const{state:n}=e;io.RemoteCommunication(`[RemoteCommunication: handleClientsDisconnectedEvent()] context=${n.context} on 'clients_disconnected' channelId=${t}`),n.relayPersistence||(n.clientsConnected=!1,n.ready=!1,n.authorized=!1),e.emit(bo.CLIENTS_DISCONNECTED,n.channelId),e.setConnectionStatus(vo.DISCONNECTED)}}function zo(e){return t=>{var n;const{state:r}=e;if(io.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] context=${r.context} on 'clients_waiting' numberUsers=${t} ready=${r.ready} autoStarted=${r.originatorConnectStarted}`),e.setConnectionStatus(vo.WAITING),e.emit(bo.CLIENTS_WAITING,t),r.originatorConnectStarted){io.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] on 'clients_waiting' watch autoStarted=${r.originatorConnectStarted} timeout`,r.autoConnectOptions);const t=(null===(n=r.autoConnectOptions)||void 0===n?void 0:n.timeout)||3e3,i=setTimeout((()=>{io.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] setTimeout(${t}) terminate channelConfig`,r.autoConnectOptions),r.originatorConnectStarted=!1,r.ready||e.setConnectionStatus(vo.TIMEOUT),clearTimeout(i)}),t)}}}function qo(e,t){return n=>{var r,i,o,s,a,c,l,d;const{state:u}=e;if(io.RemoteCommunication(`[RemoteCommunication: handleKeysExchangedEvent()] context=${u.context} on commLayer.'keys_exchanged' channel=${u.channelId}`,n),null===(i=null===(r=u.communicationLayer)||void 0===r?void 0:r.getKeyInfo())||void 0===i?void 0:i.keysExchanged){const t=Object.assign(Object.assign({},u.channelConfig),{channelId:null!==(o=u.channelId)&&void 0!==o?o:\"\",validUntil:(null===(s=u.channelConfig)||void 0===s?void 0:s.validUntil)||po,localKey:u.communicationLayer.getKeyInfo().ecies.private,otherKey:u.communicationLayer.getKeyInfo().ecies.otherPubKey});null===(a=u.storageManager)||void 0===a||a.persistChannelConfig(t).catch((e=>{})),e.setConnectionStatus(vo.LINKED)}!function(e,t){var n,r,i,o,s,a,c,l;const{state:d}=e;io.RemoteCommunication(`[RemoteCommunication: setLastActiveDate()] channel=${d.channelId}`,t);const u=Object.assign(Object.assign({},d.channelConfig),{channelId:null!==(n=d.channelId)&&void 0!==n?n:\"\",validUntil:null!==(i=null===(r=d.channelConfig)||void 0===r?void 0:r.validUntil)&&void 0!==i?i:0,relayPersistence:d.relayPersistence,localKey:null===(s=null===(o=d.communicationLayer)||void 0===o?void 0:o.state.keyExchange)||void 0===s?void 0:s.getKeyInfo().ecies.private,otherKey:null===(c=null===(a=d.communicationLayer)||void 0===a?void 0:a.state.keyExchange)||void 0===c?void 0:c.getKeyInfo().ecies.otherPubKey,lastActive:t.getTime()});null===(l=d.storageManager)||void 0===l||l.persistChannelConfig(u)}(e,new Date),u.analytics&&u.channelId&&co(Object.assign(Object.assign({id:u.channelId,event:n.isOriginator?So.CONNECTED:So.CONNECTED_MOBILE},u.originatorInfo),{sdkVersion:u.sdkVersion,commLayer:t,commLayerVersion:uo.version,walletVersion:null===(c=u.walletInfo)||void 0===c?void 0:c.version}),u.communicationServerUrl).catch((e=>{})),u.isOriginator=n.isOriginator,n.isOriginator||(null===(l=u.communicationLayer)||void 0===l||l.sendMessage({type:Co.READY}),u.ready=!0,u.paused=!1),n.isOriginator&&!u.originatorInfoSent&&(null===(d=u.communicationLayer)||void 0===d||d.sendMessage({type:Co.ORIGINATOR_INFO,originatorInfo:u.originatorInfo,originator:u.originatorInfo}),u.originatorInfoSent=!0)}}function Vo(e){return t=>{let n=t;t.message&&(n=n.message),function(e,t){const{state:n}=t;if(io.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] context=${n.context} on 'message' typeof=${typeof e}`,e),t.state.ready=!0,n.isOriginator||e.type!==Co.ORIGINATOR_INFO)if(n.isOriginator&&e.type===Co.WALLET_INFO)!function(e,t){const{state:n}=e;n.walletInfo=t.walletInfo,n.paused=!1}(t,e);else{if(n.isOriginator&&e.type===Co.WALLET_INIT)(function(e,t){return a(this,void 0,void 0,(function*(){var n,r,i;const{state:o}=e;if(o.isOriginator){const o=t.data||{};if(\"object\"==typeof o&&\"accounts\"in o&&\"chainId\"in o&&\"walletKey\"in o)try{const{channelConfig:t}=e.state;if(io.RemoteCommunication(\"WALLET_INIT: channelConfig\",JSON.stringify(t,null,2)),t){const s=o.accounts,a=o.chainId,c=o.walletKey;let l,d=!1;\"deeplinkProtocol\"in o&&(d=Boolean(o.deeplinkProtocol),e.state.deeplinkProtocolAvailable=d),\"walletVersion\"in o&&(l=o.walletVersion),yield null===(n=e.state.storageManager)||void 0===n?void 0:n.persistChannelConfig(Object.assign(Object.assign({},t),{otherKey:c,walletVersion:l,deeplinkProtocolAvailable:d,relayPersistence:!0})),yield null===(r=e.state.storageManager)||void 0===r?void 0:r.persistAccounts(s),yield null===(i=e.state.storageManager)||void 0===i?void 0:i.persistChainId(a)}e.emit(bo.WALLET_INIT,{accounts:o.accounts,chainId:o.chainId})}catch(n){}}}))})(t,e).catch((e=>{io.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${e}`)}));else if(e.type===Co.TERMINATE)(function(e){return a(this,void 0,void 0,(function*(){const{state:t}=e;t.isOriginator&&(yield Jo({options:{terminate:!0,sendMessage:!1},instance:e}),e.emit(bo.TERMINATE))}))})(t).catch((e=>{io.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${e}`)}));else if(e.type===Co.PAUSE)!function(e){const{state:t}=e;t.paused=!0,e.setConnectionStatus(vo.PAUSED)}(t);else if(e.type===Co.READY&&n.isOriginator)!function(e){const{state:t}=e;e.setConnectionStatus(vo.LINKED);const n=t.paused;t.paused=!1,e.emit(bo.CLIENTS_READY,{isOriginator:t.isOriginator,walletInfo:t.walletInfo}),n&&(t.authorized=!0,e.emit(bo.AUTHORIZED))}(t);else{if(e.type===Co.OTP&&n.isOriginator)return void function(e,t){var n;const{state:r}=e;e.emit(bo.OTP,t.otpAnswer),1===\"6.6\".localeCompare((null===(n=r.walletInfo)||void 0===n?void 0:n.version)||\"\")&&e.emit(bo.SDK_RPC_CALL,{method:mo.ETH_REQUESTACCOUNTS,params:[]})}(t,e);e.type===Co.AUTHORIZED&&n.isOriginator&&function(e){const{state:t}=e;t.authorized=!0,e.emit(bo.AUTHORIZED)}(t)}t.emit(bo.MESSAGE,e)}else!function(e,t){var n;const{state:r}=e;null===(n=r.communicationLayer)||void 0===n||n.sendMessage({type:Co.WALLET_INFO,walletInfo:r.walletInfo}),r.originatorInfo=t.originatorInfo||t.originator,e.emit(bo.CLIENTS_READY,{isOriginator:r.isOriginator,originatorInfo:r.originatorInfo}),r.paused=!1}(t,e)}(n,e)}}function Wo(e){return()=>{const{state:t}=e;io.RemoteCommunication(\"[RemoteCommunication: handleSocketReconnectEvent()] on 'socket_reconnect' -- reset key exchange status / set ready to false\"),t.ready=!1,t.authorized=!1,yo(t),e.emitServiceStatusEvent({context:\"socket_reconnect\"})}}function Go(e){return()=>{const{state:t}=e;io.RemoteCommunication(\"[RemoteCommunication: handleSocketDisconnectedEvent()] on 'socket_Disconnected' set ready to false\"),t.ready=!1}}function Zo(e){return()=>a(this,void 0,void 0,(function*(){var t,n,r,i,o,s,a;const{state:c}=e;io.RemoteCommunication(`[RemoteCommunication: handleFullPersistenceEvent()] context=${c.context}`),e.state.ready=!0,e.state.clientsConnected=!0,e.state.authorized=!0,e.state.relayPersistence=!0,null===(t=e.state.communicationLayer)||void 0===t||t.getKeyExchange().setKeysExchanged(!0),e.emit(bo.KEYS_EXCHANGED,{keysExchanged:!0,isOriginator:!0}),e.emit(bo.AUTHORIZED),e.emit(bo.CLIENTS_READY),e.emit(bo.CHANNEL_PERSISTENCE);try{c.channelConfig=Object.assign(Object.assign({},c.channelConfig),{localKey:null===(n=c.communicationLayer)||void 0===n?void 0:n.getKeyExchange().getKeyInfo().ecies.private,otherKey:null===(r=c.communicationLayer)||void 0===r?void 0:r.getKeyExchange().getOtherPublicKey(),channelId:null!==(i=c.channelId)&&void 0!==i?i:\"\",validUntil:null!==(s=null===(o=c.channelConfig)||void 0===o?void 0:o.validUntil)&&void 0!==s?s:po,relayPersistence:!0}),yield null===(a=c.storageManager)||void 0===a?void 0:a.persistChannelConfig(c.channelConfig)}catch(t){}}))}function Yo({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,ecies:r,communicationServerUrl:i=ho,instance:o}){var s,a,c,l,d,u,h,f,p,g,m;const{state:y}=o;if(io.RemoteCommunication(\"[initCommunicationLayer()] \",JSON.stringify(y,null,2)),e!==$o.SOCKET)throw new Error(\"Invalid communication protocol\");y.communicationLayer=new Do({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,transports:y.transports,communicationServerUrl:i,context:y.context,ecies:r,logging:y.logging,remote:o});let v=\"undefined\"!=typeof document&&document.URL||\"\",b=\"undefined\"!=typeof document&&document.title||\"\";(null===(s=y.dappMetadata)||void 0===s?void 0:s.url)&&(v=y.dappMetadata.url),(null===(a=y.dappMetadata)||void 0===a?void 0:a.name)&&(b=y.dappMetadata.name);const w=null!==(u=null!==(l=null===(c=y.dappMetadata)||void 0===c?void 0:c.name)&&void 0!==l?l:null===(d=y.dappMetadata)||void 0===d?void 0:d.url)&&void 0!==u?u:\"N/A\",E=\"undefined\"!=typeof window&&void 0!==window.location&&null!==(h=window.location.hostname)&&void 0!==h?h:w,C={url:v,title:b,source:null===(f=y.dappMetadata)||void 0===f?void 0:f.source,dappId:E,icon:(null===(p=y.dappMetadata)||void 0===p?void 0:p.iconUrl)||(null===(g=y.dappMetadata)||void 0===g?void 0:g.base64Icon),platform:y.platformType,apiVersion:uo.version,connector:null===(m=y.dappMetadata)||void 0===m?void 0:m.connector};y.originatorInfo=C;const S={[bo.AUTHORIZED]:jo(o),[bo.MESSAGE]:Vo(o),[bo.CHANNEL_PERSISTENCE]:Zo(o),[bo.CLIENTS_CONNECTED]:Ho(o,e),[bo.KEYS_EXCHANGED]:qo(o,e),[bo.SOCKET_DISCONNECTED]:Go(o),[bo.SOCKET_RECONNECT]:Wo(o),[bo.CLIENTS_DISCONNECTED]:Fo(o),[bo.KEY_INFO]:()=>{},[bo.CHANNEL_CREATED]:Uo(o),[bo.CLIENTS_WAITING]:zo(o),[bo.RPC_UPDATE]:e=>{o.emit(bo.RPC_UPDATE,e)}};for(const[t,n]of Object.entries(S))try{y.communicationLayer.on(t,n)}catch(e){}}function Jo(e){return a(this,arguments,void 0,(function*({options:e,instance:t}){const{state:n}=t;return io.RemoteCommunication(`[RemoteCommunication: disconnect()] channel=${n.channelId}`,e),new Promise(((r,i)=>{var s,a,c,l,d,u;(null==e?void 0:e.terminate)?(t.state.ready&&co({id:null!==(s=t.state.channelId)&&void 0!==s?s:\"\",event:So.TERMINATED},t.state.communicationServerUrl).catch((e=>{})),n.ready=!1,n.paused=!1,null===(a=n.storageManager)||void 0===a||a.terminate(null!==(c=n.channelId)&&void 0!==c?c:\"\"),t.state.terminated=!0,e.sendMessage?(null===(l=n.communicationLayer)||void 0===l?void 0:l.getKeyInfo().keysExchanged)&&t.state.communicationLayer&&Po(t.state.communicationLayer,{type:Co.TERMINATE}).then((()=>{r(!0)})).catch((e=>{i(e)})):r(!0),n.authorized=!1,n.relayPersistence=!1,n.channelId=o(),e.channelId=n.channelId,n.channelConfig=void 0,n.originatorConnectStarted=!1,null===(d=n.communicationLayer)||void 0===d||d.disconnect(e),t.setConnectionStatus(vo.TERMINATED)):(null===(u=n.communicationLayer)||void 0===u||u.disconnect(e),t.setConnectionStatus(vo.DISCONNECTED),r(!0))}))}))}($o||($o={})).SOCKET=\"socket\",function(e){e.NonBrowser=\"nodejs\",e.MetaMaskMobileWebview=\"in-app-browser\",e.DesktopWeb=\"web-desktop\",e.MobileWeb=\"web-mobile\",e.ReactNative=\"react-native\"}(Bo||(Bo={}));class Xo extends r{constructor(e){super(),this.state={ready:!1,authorized:!1,isOriginator:!1,terminated:!1,protocolVersion:1,paused:!1,deeplinkProtocolAvailable:!1,platformType:\"metamask-mobile\",analytics:!1,reconnection:!1,originatorInfoSent:!1,communicationServerUrl:ho,context:\"\",persist:!1,clientsConnected:!1,sessionDuration:po,originatorConnectStarted:!1,debug:!1,_connectionStatus:vo.DISCONNECTED},this._options=e;const{platformType:n,communicationLayerPreference:r,otherPublicKey:i,reconnect:o,walletInfo:s,dappMetadata:a,protocolVersion:c,transports:l,context:d,relayPersistence:u,ecies:h,analytics:f=!1,storage:p,sdkVersion:g,communicationServerUrl:m=ho,logging:y,autoConnect:v={timeout:go}}=e;this.state.otherPublicKey=i,this.state.dappMetadata=a,this.state.walletInfo=s,this.state.transports=l,this.state.platformType=n,this.state.analytics=f,this.state.protocolVersion=null!=c?c:1,this.state.isOriginator=!i,this.state.relayPersistence=u,this.state.communicationServerUrl=m,this.state.context=d,this.state.terminated=!1,this.state.sdkVersion=g,this.setMaxListeners(50),this.setConnectionStatus(vo.DISCONNECTED),(null==p?void 0:p.duration)&&(this.state.sessionDuration=po),this.state.storageOptions=p,this.state.autoConnectOptions=v,this.state.debug=!0===(null==y?void 0:y.remoteLayer),!0===(null==y?void 0:y.remoteLayer)&&t.enable(\"RemoteCommunication:Layer\"),!0===(null==y?void 0:y.serviceLayer)&&t.enable(\"SocketService:Layer\"),!0===(null==y?void 0:y.eciesLayer)&&t.enable(\"ECIES:Layer\"),!0===(null==y?void 0:y.keyExchangeLayer)&&t.enable(\"KeyExchange:Layer\"),this.state.logging=y,(null==p?void 0:p.storageManager)&&(this.state.storageManager=p.storageManager),io.RemoteCommunication(`[RemoteCommunication: constructor()] protocolVersion=${c} relayPersistence=${u} isOriginator=${this.state.isOriginator} communicationLayerPreference=${r} otherPublicKey=${i} reconnect=${o}`),this.state.isOriginator||Yo({communicationLayerPreference:r,otherPublicKey:i,reconnect:o,ecies:h,communicationServerUrl:m,instance:this}),this.emitServiceStatusEvent({context:\"constructor\"})}initFromDappStorage(){return a(this,void 0,void 0,(function*(){var e;if(this.state.storageManager){const t=yield this.state.storageManager.getPersistedChannelConfig({});t&&(this.state.channelConfig=t,this.state.channelId=t.channelId,this.state.deeplinkProtocolAvailable=null!==(e=t.deeplinkProtocolAvailable)&&void 0!==e&&e,t.relayPersistence&&(this.state.authorized=!0,this.state.ready=!0,this.setConnectionStatus(vo.LINKED),yield this.connectToChannel({channelId:t.channelId})))}Yo({communicationLayerPreference:$o.SOCKET,otherPublicKey:this.state.otherPublicKey,reconnect:this._options.reconnect,ecies:this._options.ecies,communicationServerUrl:this.state.communicationServerUrl,instance:this})}))}originatorSessionConnect(){return a(this,void 0,void 0,(function*(){return yield function(e){return a(this,void 0,void 0,(function*(){var t;const{state:n}=e;if(!n.storageManager)return void io.RemoteCommunication(\"[RemoteCommunication: originatorSessionConnect()] no storage manager defined - skip\");const r=yield n.storageManager.getPersistedChannelConfig({});if(io.RemoteCommunication(`[RemoteCommunication: originatorSessionConnect()] autoStarted=${n.originatorConnectStarted} channelConfig`,r),null===(t=n.communicationLayer)||void 0===t?void 0:t.isConnected())return io.RemoteCommunication(\"[RemoteCommunication: originatorSessionConnect()] socket already connected - skip\"),r;if(r){if(r.validUntil>Date.now())return n.channelConfig=r,n.originatorConnectStarted=!0,n.channelId=null==r?void 0:r.channelId,n.reconnection=!0,r;io.RemoteCommunication(\"[RemoteCommunication: autoConnect()] Session has expired\")}n.originatorConnectStarted=!1}))}(this)}))}generateChannelIdConnect(){return a(this,void 0,void 0,(function*(){return function(e){return a(this,void 0,void 0,(function*(){var t,n,r,i,o,s;if(!e.communicationLayer)throw new Error(\"communication layer not initialized\");if(e.ready)throw new Error(\"Channel already connected\");if(e.channelId&&(null===(t=e.communicationLayer)||void 0===t?void 0:t.isConnected()))return e.channelConfig=Object.assign(Object.assign({},e.channelConfig),{channelId:e.channelId,validUntil:Date.now()+e.sessionDuration}),null===(n=e.storageManager)||void 0===n||n.persistChannelConfig(e.channelConfig),{channelId:e.channelId,privKey:null===(i=null===(r=e.communicationLayer)||void 0===r?void 0:r.getKeyInfo())||void 0===i?void 0:i.ecies.private,pubKey:null===(s=null===(o=e.communicationLayer)||void 0===o?void 0:o.getKeyInfo())||void 0===s?void 0:s.ecies.public};io.RemoteCommunication(\"[RemoteCommunication: generateChannelId()]\");const a=yield e.communicationLayer.createChannel();io.RemoteCommunication(\"[RemoteCommunication: generateChannelId()] channel created\",a);const c=Object.assign(Object.assign({},e.channelConfig),{channelId:a.channelId,localKey:a.privKey,validUntil:Date.now()+e.sessionDuration});return e.channelId=a.channelId,e.channelConfig=c,{channelId:e.channelId,pubKey:a.pubKey,privKey:a.privKey}}))}(this.state)}))}clean(){return yo(this.state)}connectToChannel({channelId:e,withKeyExchange:t,authorized:n}){return function(e){return a(this,arguments,void 0,(function*({channelId:e,withKeyExchange:t,authorized:n,state:r}){var o,s,a;if(!i(e))throw io.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${r.context} invalid channel channelId=${e}`),new Error(`Invalid channel ${e}`);if(io.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${r.context} channelId=${e} withKeyExchange=${t}`),null===(o=r.communicationLayer)||void 0===o?void 0:o.isConnected())return void io.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${r.context} already connected - interrupt connection.`);r.channelId=e,yield null===(s=r.communicationLayer)||void 0===s?void 0:s.connectToChannel({channelId:e,authorized:n,withKeyExchange:t});const c=Object.assign(Object.assign({},r.channelConfig),{channelId:e,validUntil:Date.now()+r.sessionDuration});r.channelConfig=c,null===(a=r.storageManager)||void 0===a||a.persistChannelConfig(c)}))}({channelId:e,authorized:n,withKeyExchange:t,state:this.state})}sendMessage(e){return function(e,t){return a(this,void 0,void 0,(function*(){var n,r;const{state:i}=e;io.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${i.context} paused=${i.paused} ready=${i.ready} relayPersistence=${i.relayPersistence} authorized=${i.authorized} socket=${null===(n=i.communicationLayer)||void 0===n?void 0:n.isConnected()} clientsConnected=${i.clientsConnected} status=${i._connectionStatus}`,t),i.relayPersistence||i.ready&&(null===(r=i.communicationLayer)||void 0===r?void 0:r.isConnected())&&i.clientsConnected||(io.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${i.context} SKIP message waiting for MM mobile readiness.`),yield new Promise((t=>{e.once(bo.CLIENTS_READY,t)})),io.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${i.context} AFTER SKIP / READY -- sending pending message`));try{const n=yield function(e,t){return a(this,void 0,void 0,(function*(){return new Promise((n=>{var r;const{state:i}=e;io.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${i.context} ready=${i.ready} authorized=${i.authorized} method=${t.method}`),!i.isOriginator||i.authorized||i.relayPersistence?null===(r=i.communicationLayer)||void 0===r||r.sendMessage(t).then((e=>{n(e)})).catch((e=>{n(!1)})):e.once(bo.AUTHORIZED,(()=>{var e;io.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${i.context} AFTER SKIP / AUTHORIZED -- sending pending message`),null===(e=i.communicationLayer)||void 0===e||e.sendMessage(t).then((e=>{n(e)})).catch((e=>{n(!1)}))}))}))}))}(e,t);return n}catch(e){throw e}}))}(this,e)}testStorage(){return a(this,void 0,void 0,(function*(){return function(e){return a(this,void 0,void 0,(function*(){var t;const n=yield null===(t=e.storageManager)||void 0===t?void 0:t.getPersistedChannelConfig();io.RemoteCommunication(\"[RemoteCommunication: testStorage()] res\",n)}))}(this.state)}))}hasDeeplinkProtocol(){return this.state.deeplinkProtocolAvailable}getChannelConfig(){return this.state.channelConfig}isReady(){return this.state.ready}isConnected(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.isConnected()}isAuthorized(){return this.state.authorized}isPaused(){return this.state.paused}getCommunicationLayer(){return this.state.communicationLayer}ping(){return a(this,void 0,void 0,(function*(){var e;io.RemoteCommunication(`[RemoteCommunication: ping()] channel=${this.state.channelId}`),yield null===(e=this.state.communicationLayer)||void 0===e?void 0:e.ping()}))}testLogger(){io.RemoteCommunication(`testLogger() channel=${this.state.channelId}`),io.SocketService(`testLogger() channel=${this.state.channelId}`),io.Ecies(`testLogger() channel=${this.state.channelId}`),io.KeyExchange(`testLogger() channel=${this.state.channelId}`)}keyCheck(){var e;io.RemoteCommunication(`[RemoteCommunication: keyCheck()] channel=${this.state.channelId}`),null===(e=this.state.communicationLayer)||void 0===e||e.keyCheck()}setConnectionStatus(e){this.state._connectionStatus!==e&&(this.state._connectionStatus=e,this.emit(bo.CONNECTION_STATUS,e),this.emitServiceStatusEvent({context:\"setConnectionStatus\"}))}emitServiceStatusEvent(e={}){this.emit(bo.SERVICE_STATUS,this.getServiceStatus())}getConnectionStatus(){return this.state._connectionStatus}getServiceStatus(){return{originatorInfo:this.state.originatorInfo,keyInfo:this.getKeyInfo(),connectionStatus:this.state._connectionStatus,channelConfig:this.state.channelConfig,channelId:this.state.channelId}}getKeyInfo(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.getKeyInfo()}resetKeys(){var e;null===(e=this.state.communicationLayer)||void 0===e||e.resetKeys()}setOtherPublicKey(e){var t;const n=null===(t=this.state.communicationLayer)||void 0===t?void 0:t.getKeyExchange();if(!n)throw new Error(\"KeyExchange is not initialized.\");n.getOtherPublicKey()!==e&&n.setOtherPublicKey(e)}pause(){return a(this,void 0,void 0,(function*(){var e;io.RemoteCommunication(`[RemoteCommunication: pause()] channel=${this.state.channelId}`),yield null===(e=this.state.communicationLayer)||void 0===e?void 0:e.pause(),this.setConnectionStatus(vo.PAUSED)}))}getVersion(){return uo.version}hasRelayPersistence(){var e;return null!==(e=this.state.relayPersistence)&&void 0!==e&&e}resume(){return a(this,void 0,void 0,(function*(){return function(e){return a(this,void 0,void 0,(function*(){var t;const{state:n}=e;io.RemoteCommunication(`[RemoteCommunication: resume()] channel=${n.channelId}`),yield null===(t=n.communicationLayer)||void 0===t?void 0:t.resume(),e.setConnectionStatus(vo.LINKED)}))}(this)}))}encrypt(e){var t,n,r;const i=null===(t=this.state.communicationLayer)||void 0===t?void 0:t.getKeyExchange(),o=null==i?void 0:i.getOtherPublicKey();if(!o)throw new Error(\"KeyExchange not completed\");return null===(r=null===(n=this.state.communicationLayer)||void 0===n?void 0:n.state.eciesInstance)||void 0===r?void 0:r.encrypt(e,o)}decrypt(e){var t,n,r;if(!(null===(t=this.state.communicationLayer)||void 0===t?void 0:t.state.eciesInstance))throw new Error(\"ECIES instance is not initialized\");return null===(r=null===(n=this.state.communicationLayer)||void 0===n?void 0:n.state.eciesInstance)||void 0===r?void 0:r.decrypt(e)}getChannelId(){return this.state.channelId}getRPCMethodTracker(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.getRPCMethodTracker()}reject({channelId:e}){return function(e){return a(this,arguments,void 0,(function*({channelId:e,state:t}){var n,r,o;if(!i(e))throw io.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${t.context} invalid channel channelId=${e}`),new Error(`Invalid channel ${e}`);if(t.isOriginator)return void io.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} isOriginator=${t.isOriginator} channelId=${e}`);const{socket:s}=null!==(r=null===(n=t.communicationLayer)||void 0===n?void 0:n.state)&&void 0!==r?r:{};(null==s?void 0:s.connected)||(io.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} socket already connected`),null==s||s.connect()),co(Object.assign(Object.assign({id:e,event:So.REJECTED},t.originatorInfo),{sdkVersion:t.sdkVersion,commLayerVersion:uo.version,walletVersion:null===(o=t.walletInfo)||void 0===o?void 0:o.version}),t.communicationServerUrl).catch((e=>{})),yield new Promise(((n,r)=>{null==s||s.emit(bo.REJECTED,{channelId:e},((e,i)=>{io.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} socket=${null==s?void 0:s.id}`,{error:e,response:i}),e?r(e):n(i)}))}))}))}({channelId:e,state:this.state})}disconnect(e){return a(this,void 0,void 0,(function*(){return Jo({options:e,instance:this})}))}}!function(e){e.RENEW=\"renew\",e.LINK=\"link\"}(Ko||(Ko={}));var Qo=\"ERC721\",es=\"ERC1155\",ts={errors:{disconnected:()=>\"MetaMask: Disconnected from chain. Attempting to connect.\",permanentlyDisconnected:()=>\"MetaMask: Disconnected from MetaMask background. Page reload required.\",sendSiteMetadata:()=>\"MetaMask: Failed to send site metadata. This is an internal error, please report this bug.\",unsupportedSync:e=>`MetaMask: The MetaMask Ethereum provider does not support synchronous methods like ${e} without a callback parameter.`,invalidDuplexStream:()=>\"Must provide a Node.js-style duplex stream.\",invalidNetworkParams:()=>\"MetaMask: Received invalid network parameters. Please report this bug.\",invalidRequestArgs:()=>\"Expected a single, non-array, object argument.\",invalidRequestMethod:()=>\"'args.method' must be a non-empty string.\",invalidRequestParams:()=>\"'args.params' must be an object or array if provided.\",invalidLoggerObject:()=>\"'args.logger' must be an object if provided.\",invalidLoggerMethod:e=>`'args.logger' must include required method '${e}'.`},info:{connected:e=>`MetaMask: Connected to chain with ID \"${e}\".`},warnings:{chainIdDeprecation:\"MetaMask: 'ethereum.chainId' is deprecated and may be removed in the future. Please use the 'eth_chainId' RPC method instead.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23\",networkVersionDeprecation:\"MetaMask: 'ethereum.networkVersion' is deprecated and may be removed in the future. Please use the 'net_version' RPC method instead.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23\",selectedAddressDeprecation:\"MetaMask: 'ethereum.selectedAddress' is deprecated and may be removed in the future. Please use the 'eth_accounts' RPC method instead.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23\",enableDeprecation:\"MetaMask: 'ethereum.enable()' is deprecated and may be removed in the future. Please use the 'eth_requestAccounts' RPC method instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1102\",sendDeprecation:\"MetaMask: 'ethereum.send(...)' is deprecated and may be removed in the future. Please use 'ethereum.sendAsync(...)' or 'ethereum.request(...)' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193\",events:{close:\"MetaMask: The event 'close' is deprecated and may be removed in the future. Please use 'disconnect' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#disconnect\",data:\"MetaMask: The event 'data' is deprecated and will be removed in the future. Use 'message' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message\",networkChanged:\"MetaMask: The event 'networkChanged' is deprecated and may be removed in the future. Use 'chainChanged' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#chainchanged\",notification:\"MetaMask: The event 'notification' is deprecated and may be removed in the future. Use 'message' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message\"},rpc:{ethDecryptDeprecation:\"MetaMask: The RPC method 'eth_decrypt' is deprecated and may be removed in the future.\\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686\",ethGetEncryptionPublicKeyDeprecation:\"MetaMask: The RPC method 'eth_getEncryptionPublicKey' is deprecated and may be removed in the future.\\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686\",walletWatchAssetNFTExperimental:\"MetaMask: The RPC method 'wallet_watchAsset' is experimental for ERC721/ERC1155 assets and may change in the future.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-1.md and https://github.com/MetaMask/metamask-improvement-proposals/blob/main/PROCESS-GUIDE.md#proposal-lifecycle\"},experimentalMethods:\"MetaMask: 'ethereum._metamask' exposes non-standard, experimental methods. They may be removed or changed without warning.\"}};function ns(e){const t={ethDecryptDeprecation:!1,ethGetEncryptionPublicKeyDeprecation:!1,walletWatchAssetNFTExperimental:!1};return(n,r,i)=>{t.ethDecryptDeprecation||\"eth_decrypt\"!==n.method?t.ethGetEncryptionPublicKeyDeprecation||\"eth_getEncryptionPublicKey\"!==n.method?!t.walletWatchAssetNFTExperimental&&\"wallet_watchAsset\"===n.method&&[Qo,es].includes(n.params?.type||\"\")&&(e.warn(ts.warnings.rpc.walletWatchAssetNFTExperimental),t.walletWatchAssetNFTExperimental=!0):(e.warn(ts.warnings.rpc.ethGetEncryptionPublicKeyDeprecation),t.ethGetEncryptionPublicKeyDeprecation=!0):(e.warn(ts.warnings.rpc.ethDecryptDeprecation),t.ethDecryptDeprecation=!0),i()}}var rs=4294967295,is=Math.floor(Math.random()*rs);function os(){return(e,t,n,r)=>{const i=e.id,o=is=(is+1)%rs;e.id=o,t.id=o,n((n=>{e.id=i,t.id=i,n()}))}}var ss=(e,t,n)=>{if(!t.has(e))throw TypeError(\"Cannot \"+n)},as=(e,t,n)=>(ss(e,t,\"read from private field\"),n?n.call(e):t.get(e)),cs=(e,t,n)=>{if(t.has(e))throw TypeError(\"Cannot add the same private member more than once\");t instanceof WeakSet?t.add(e):t.set(e,n)},ls=(e,t,n,r)=>(ss(e,t,\"write to private field\"),t.set(e,n),n),ds=(e,t,n)=>(ss(e,t,\"access private method\"),n),us={invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},hs={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"}};function fs(e){return Boolean(e)&&\"object\"==typeof e&&!Array.isArray(e)}var ps=(e,t)=>Object.hasOwnProperty.call(e,t);class gs extends TypeError{constructor(e,t){let n;const{message:r,explanation:i,...o}=e,{path:s}=e,a=0===s.length?r:`At path: ${s.join(\".\")} -- ${r}`;super(i??a),null!=i&&(this.cause=a),Object.assign(this,o),this.name=this.constructor.name,this.failures=()=>n??(n=[e,...t()])}}function ms(e){return\"object\"==typeof e&&null!=e}function ys(e){return\"symbol\"==typeof e?e.toString():\"string\"==typeof e?JSON.stringify(e):`${e}`}function vs(e,t,n,r){if(!0===e)return;!1===e?e={}:\"string\"==typeof e&&(e={message:e});const{path:i,branch:o}=t,{type:s}=n,{refinement:a,message:c=`Expected a value of type \\`${s}\\`${a?` with refinement \\`${a}\\``:\"\"}, but received: \\`${ys(r)}\\``}=e;return{value:r,type:s,refinement:a,key:i[i.length-1],path:i,branch:o,...e,message:c}}function*bs(e,t,n,r){(function(e){return ms(e)&&\"function\"==typeof e[Symbol.iterator]})(e)||(e=[e]);for(const i of e){const e=vs(i,t,n,r);e&&(yield e)}}function*ws(e,t,n={}){const{path:r=[],branch:i=[e],coerce:o=!1,mask:s=!1}=n,a={path:r,branch:i};if(o&&(e=t.coercer(e,a),s&&\"type\"!==t.type&&ms(t.schema)&&ms(e)&&!Array.isArray(e)))for(const n in e)void 0===t.schema[n]&&delete e[n];let c=\"valid\";for(const r of t.validator(e,a))r.explanation=n.message,c=\"not_valid\",yield[r,void 0];for(let[l,d,u]of t.entries(e,a)){const t=ws(d,u,{path:void 0===l?r:[...r,l],branch:void 0===l?i:[...i,d],coerce:o,mask:s,message:n.message});for(const n of t)n[0]?(c=null!=n[0].refinement?\"not_refined\":\"not_valid\",yield[n[0],void 0]):o&&(d=n[1],void 0===l?e=d:e instanceof Map?e.set(l,d):e instanceof Set?e.add(d):ms(e)&&(void 0!==d||l in e)&&(e[l]=d))}if(\"not_valid\"!==c)for(const r of t.refiner(e,a))r.explanation=n.message,c=\"not_refined\",yield[r,void 0];\"valid\"===c&&(yield[void 0,e])}class Es{constructor(e){const{type:t,schema:n,validator:r,refiner:i,coercer:o=(e=>e),entries:s=function*(){}}=e;this.type=t,this.schema=n,this.entries=s,this.coercer=o,this.validator=r?(e,t)=>bs(r(e,t),t,this,e):()=>[],this.refiner=i?(e,t)=>bs(i(e,t),t,this,e):()=>[]}assert(e,t){return Cs(e,this,t)}create(e,t){return Ss(e,this,t)}is(e){return _s(e,this)}mask(e,t){return function(e,t,n){const r=ks(e,t,{coerce:!0,mask:!0,message:n});if(r[0])throw r[0];return r[1]}(e,this,t)}validate(e,t={}){return ks(e,this,t)}}function Cs(e,t,n){const r=ks(e,t,{message:n});if(r[0])throw r[0]}function Ss(e,t,n){const r=ks(e,t,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function _s(e,t){return!ks(e,t)[0]}function ks(e,t,n={}){const r=ws(e,t,n),i=function(e){const{done:t,value:n}=e.next();return t?void 0:n}(r);if(i[0]){const e=new gs(i[0],(function*(){for(const e of r)e[0]&&(yield e[0])}));return[e,void 0]}return[void 0,i[1]]}function xs(e,t){return new Es({type:e,schema:null,validator:t})}function Ms(e){let t;return new Es({type:\"lazy\",schema:null,*entries(n,r){t??(t=e()),yield*t.entries(n,r)},validator:(n,r)=>(t??(t=e()),t.validator(n,r)),coercer:(n,r)=>(t??(t=e()),t.coercer(n,r)),refiner:(n,r)=>(t??(t=e()),t.refiner(n,r))})}function As(e){return new Es({type:\"array\",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[n,r]of t.entries())yield[n,r,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||`Expected an array value, but received: ${ys(e)}`})}function Is(e){const t=ys(e),n=typeof e;return new Es({type:\"literal\",schema:\"string\"===n||\"number\"===n||\"boolean\"===n?e:null,validator:n=>n===e||`Expected the literal \\`${t}\\`, but received: ${ys(n)}`})}function Ps(){return xs(\"number\",(e=>\"number\"==typeof e&&!isNaN(e)||`Expected a number, but received: ${ys(e)}`))}function Rs(e){const t=e?Object.keys(e):[],n=xs(\"never\",(()=>!1));return new Es({type:\"object\",schema:e||null,*entries(r){if(e&&ms(r)){const i=new Set(Object.keys(r));for(const n of t)i.delete(n),yield[n,r[n],e[n]];for(const e of i)yield[e,r[e],n]}},validator:e=>ms(e)||`Expected an object, but received: ${ys(e)}`,coercer:e=>ms(e)?{...e}:e})}function Ls(e){return new Es({...e,validator:(t,n)=>void 0===t||e.validator(t,n),refiner:(t,n)=>void 0===t||e.refiner(t,n)})}function Os(e,t){return new Es({type:\"record\",schema:null,*entries(n){if(ms(n))for(const r in n){const i=n[r];yield[r,r,e],yield[r,i,t]}},validator:e=>ms(e)||`Expected an object, but received: ${ys(e)}`})}function Ts(){return xs(\"string\",(e=>\"string\"==typeof e||`Expected a string, but received: ${ys(e)}`))}function Ns(e){const t=e.map((e=>e.type)).join(\" | \");return new Es({type:\"union\",schema:null,coercer(t){for(const n of e){const[e,r]=n.validate(t,{coerce:!0});if(!e)return r}return t},validator(n,r){const i=[];for(const t of e){const[...e]=ws(n,t,r),[o]=e;if(!o[0])return[];for(const[t]of e)t&&i.push(t)}return[`Expected the value to satisfy a union of \\`${t}\\`, but received: ${ys(n)}`,...i]}})}function Ds(e){return function(e){return function(e){return\"object\"==typeof e&&null!==e&&\"message\"in e}(e)&&\"string\"==typeof e.message?e.message:null==e?\"\":String(e)}(e).replace(/\\.$/u,\"\")}function $s(e,t){return n=e,Boolean(\"string\"==typeof n?.prototype?.constructor?.name)?new e({message:t}):e({message:t});var n}var Bs=class extends Error{constructor(e){super(e.message),this.code=\"ERR_ASSERTION\"}};function Ks(){throw new Error(\"setTimeout has not been defined\")}function js(){throw new Error(\"clearTimeout has not been defined\")}var Us=Ks,Hs=js;function Fs(e){if(Us===setTimeout)return setTimeout(e,0);if((Us===Ks||!Us)&&setTimeout)return Us=setTimeout,setTimeout(e,0);try{return Us(e,0)}catch(t){try{return Us.call(null,e,0)}catch(t){return Us.call(this,e,0)}}}\"function\"==typeof c.setTimeout&&(Us=setTimeout),\"function\"==typeof c.clearTimeout&&(Hs=clearTimeout);var zs,qs=[],Vs=!1,Ws=-1;function Gs(){Vs&&zs&&(Vs=!1,zs.length?qs=zs.concat(qs):Ws=-1,qs.length&&Zs())}function Zs(){if(!Vs){var e=Fs(Gs);Vs=!0;for(var t=qs.length;t;){for(zs=qs,qs=[];++Ws<t;)zs&&zs[Ws].run();Ws=-1,t=qs.length}zs=null,Vs=!1,function(e){if(Hs===clearTimeout)return clearTimeout(e);if((Hs===js||!Hs)&&clearTimeout)return Hs=clearTimeout,clearTimeout(e);try{return Hs(e)}catch(t){try{return Hs.call(null,e)}catch(t){return Hs.call(this,e)}}}(e)}}function Ys(e,t){this.fun=e,this.array=t}Ys.prototype.run=function(){this.fun.apply(null,this.array)};function Js(){}var Xs=Js,Qs=Js,ea=Js,ta=Js,na=Js,ra=Js,ia=Js;var oa=c.performance||{},sa=oa.now||oa.mozNow||oa.msNow||oa.oNow||oa.webkitNow||function(){return(new Date).getTime()};var aa=new Date;var ca={nextTick:function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];qs.push(new Ys(e,t)),1!==qs.length||Vs||Fs(Zs)},title:\"browser\",browser:!0,env:{},argv:[],version:\"\",versions:{},on:Xs,addListener:Qs,once:ea,off:ta,removeListener:na,removeAllListeners:ra,emit:ia,binding:function(e){throw new Error(\"process.binding is not supported\")},cwd:function(){return\"/\"},chdir:function(e){throw new Error(\"process.chdir is not supported\")},umask:function(){return 0},hrtime:function(e){var t=.001*sa.call(oa),n=Math.floor(t),r=Math.floor(t%1*1e9);return e&&(n-=e[0],(r-=e[1])<0&&(n--,r+=1e9)),[n,r]},platform:\"browser\",release:{},config:{},uptime:function(){return(new Date-aa)/1e3}},la=e=>Rs(e);function da({path:e,branch:t}){const n=e[e.length-1];return ps(t[t.length-2],n)}function ua(e){return new Es({...e,type:`optional ${e.type}`,validator:(t,n)=>!da(n)||e.validator(t,n),refiner:(t,n)=>!da(n)||e.refiner(t,n)})}var ha,fa,pa,ga=Ns([Is(null),xs(\"boolean\",(e=>\"boolean\"==typeof e)),xs(\"finite number\",(e=>_s(e,Ps())&&Number.isFinite(e))),Ts(),As(Ms((()=>ga))),Os(Ts(),Ms((()=>ga)))]),ma=(ha=ga,fa=xs(\"any\",(()=>!0)),pa=e=>(function(e,t,n=\"Assertion failed\",r=Bs){try{Cs(e,t)}catch(e){throw $s(r,`${n}: ${Ds(e)}.`)}}(e,ga),JSON.parse(JSON.stringify(e,((e,t)=>{if(\"__proto__\"!==e&&\"constructor\"!==e)return t})))),new Es({...ha,coercer:(e,t)=>_s(e,fa)?ha.coercer(pa(e,t),t):ha.coercer(e,t)}));function ya(e){try{return function(e){Ss(e,ma)}(e),!0}catch{return!1}}var va=Is(\"2.0\"),ba=function(e){return new Es({...e,validator:(t,n)=>null===t||e.validator(t,n),refiner:(t,n)=>null===t||e.refiner(t,n)})}(Ns([Ps(),Ts()])),wa=la({code:xs(\"integer\",(e=>\"number\"==typeof e&&!isNaN(e)&&Number.isInteger(e)||`Expected an integer, but received: ${ys(e)}`)),message:Ts(),data:ua(ma),stack:ua(Ts())}),Ea=Ns([Os(Ts(),ma),As(ma)]),Ca=la({id:ba,jsonrpc:va,method:Ts(),params:ua(Ea)}),Sa=la({jsonrpc:va,method:Ts(),params:ua(Ea)});function _a(e){return _s(e,Ca)}function ka(e){return _s(e,wa)}Rs({id:ba,jsonrpc:va,result:Ls(xs(\"unknown\",(()=>!0))),error:Ls(wa)}),Ns([la({id:ba,jsonrpc:va,result:ma}),la({id:ba,jsonrpc:va,error:wa})]);var xa=us.internal,Ma=\"Unspecified error message. This is a bug, please report it.\",Aa={code:xa,message:Pa(xa)},Ia=\"Unspecified server error.\";function Pa(e,t=Ma){if(function(e){return Number.isInteger(e)}(e)){const t=e.toString();if(ps(hs,t))return hs[t].message;if(function(e){return e>=-32099&&e<=-32e3}(e))return Ia}return t}function Ra(e,{fallbackError:t=Aa,shouldIncludeStack:n=!0}={}){if(!ka(t))throw new Error(\"Must provide fallback error with integer number code and string message.\");const r=function(e,t){if(e&&\"object\"==typeof e&&\"serialize\"in e&&\"function\"==typeof e.serialize)return e.serialize();if(ka(e))return e;const n=La(e),r={...t,data:{cause:n}};return r}(e,t);return n||delete r.stack,r}function La(e){return Array.isArray(e)?e.map((e=>ya(e)?e:fs(e)?Oa(e):null)):fs(e)?Oa(e):ya(e)?e:null}function Oa(e){return Object.getOwnPropertyNames(e).reduce(((t,n)=>{const r=e[n];return ya(r)&&(t[n]=r),t}),{})}var Ta=ja;ja.default=ja,ja.stable=za,ja.stableStringify=za;var Na=\"[...]\",Da=\"[Circular]\",$a=[],Ba=[];function Ka(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function ja(e,t,n,r){var i;void 0===r&&(r=Ka()),Ha(e,\"\",0,[],void 0,0,r);try{i=0===Ba.length?JSON.stringify(e,t,n):JSON.stringify(e,Va(t),n)}catch(e){return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\")}finally{for(;0!==$a.length;){var o=$a.pop();4===o.length?Object.defineProperty(o[0],o[1],o[3]):o[0][o[1]]=o[2]}}return i}function Ua(e,t,n,r){var i=Object.getOwnPropertyDescriptor(r,n);void 0!==i.get?i.configurable?(Object.defineProperty(r,n,{value:e}),$a.push([r,n,t,i])):Ba.push([t,n,e]):(r[n]=e,$a.push([r,n,t]))}function Ha(e,t,n,r,i,o,s){var a;if(o+=1,\"object\"==typeof e&&null!==e){for(a=0;a<r.length;a++)if(r[a]===e)return void Ua(Da,e,t,i);if(void 0!==s.depthLimit&&o>s.depthLimit)return void Ua(Na,e,t,i);if(void 0!==s.edgesLimit&&n+1>s.edgesLimit)return void Ua(Na,e,t,i);if(r.push(e),Array.isArray(e))for(a=0;a<e.length;a++)Ha(e[a],a,a,r,e,o,s);else{var c=Object.keys(e);for(a=0;a<c.length;a++){var l=c[a];Ha(e[l],l,a,r,e,o,s)}}r.pop()}}function Fa(e,t){return e<t?-1:e>t?1:0}function za(e,t,n,r){void 0===r&&(r=Ka());var i,o=qa(e,\"\",0,[],void 0,0,r)||e;try{i=0===Ba.length?JSON.stringify(o,t,n):JSON.stringify(o,Va(t),n)}catch(e){return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\")}finally{for(;0!==$a.length;){var s=$a.pop();4===s.length?Object.defineProperty(s[0],s[1],s[3]):s[0][s[1]]=s[2]}}return i}function qa(e,t,n,r,i,o,s){var a;if(o+=1,\"object\"==typeof e&&null!==e){for(a=0;a<r.length;a++)if(r[a]===e)return void Ua(Da,e,t,i);try{if(\"function\"==typeof e.toJSON)return}catch(e){return}if(void 0!==s.depthLimit&&o>s.depthLimit)return void Ua(Na,e,t,i);if(void 0!==s.edgesLimit&&n+1>s.edgesLimit)return void Ua(Na,e,t,i);if(r.push(e),Array.isArray(e))for(a=0;a<e.length;a++)qa(e[a],a,a,r,e,o,s);else{var c={},l=Object.keys(e).sort(Fa);for(a=0;a<l.length;a++){var d=l[a];qa(e[d],d,a,r,e,o,s),c[d]=e[d]}if(void 0===i)return c;$a.push([i,t,e]),i[t]=c}r.pop()}}function Va(e){return e=void 0!==e?e:function(e,t){return t},function(t,n){if(Ba.length>0)for(var r=0;r<Ba.length;r++){var i=Ba[r];if(i[1]===t&&i[0]===n){n=i[2],Ba.splice(r,1);break}}return e.call(this,t,n)}}var Wa=de(Ta),Ga=class extends Error{constructor(e,t,n){if(!Number.isInteger(e))throw new Error('\"code\" must be an integer.');if(!t||\"string\"!=typeof t)throw new Error('\"message\" must be a non-empty string.');super(t),this.code=e,void 0!==n&&(this.data=n)}serialize(){const e={code:this.code,message:this.message};return void 0!==this.data&&(e.data=this.data,function(e){if(\"object\"!=typeof e||null===e)return!1;try{let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}catch(e){return!1}}(this.data)&&(e.data.cause=La(this.data.cause))),this.stack&&(e.stack=this.stack),e}toString(){return Wa(this.serialize(),Za,2)}};function Za(e,t){if(\"[Circular]\"!==t)return t}var Ya=e=>Ja(us.invalidRequest,e);function Ja(e,t){const[n,r]=function(e){if(e){if(\"string\"==typeof e)return[e];if(\"object\"==typeof e&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&\"string\"!=typeof t)throw new Error(\"Must specify string message.\");return[t??void 0,n]}}return[]}(t);return new Ga(e,n??Pa(e),r)}var Xa={};function Qa(){}function ec(){ec.init.call(this)}function tc(e){return void 0===e._maxListeners?ec.defaultMaxListeners:e._maxListeners}function nc(e,t,n,r){var i,o,s;if(\"function\"!=typeof n)throw new TypeError('\"listener\" argument must be a function');if((o=e._events)?(o.newListener&&(e.emit(\"newListener\",t,n.listener?n.listener:n),o=e._events),s=o[t]):(o=e._events=new Qa,e._eventsCount=0),s){if(\"function\"==typeof s?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),!s.warned&&(i=tc(e))&&i>0&&s.length>i){s.warned=!0;var a=new Error(\"Possible EventEmitter memory leak detected. \"+s.length+\" \"+t+\" listeners added. Use emitter.setMaxListeners() to increase limit\");a.name=\"MaxListenersExceededWarning\",a.emitter=e,a.type=t,a.count=s.length,function(e){\"function\"==typeof console.warn?console.warn(e):console.log(e)}(a)}}else s=o[t]=n,++e._eventsCount;return e}function rc(e,t,n){var r=!1;function i(){e.removeListener(t,i),r||(r=!0,n.apply(e,arguments))}return i.listener=n,i}function ic(e){var t=this._events;if(t){var n=t[e];if(\"function\"==typeof n)return 1;if(n)return n.length}return 0}function oc(e,t){for(var n=new Array(t);t--;)n[t]=e[t];return n}Qa.prototype=Object.create(null),ec.EventEmitter=ec,ec.usingDomains=!1,ec.prototype.domain=void 0,ec.prototype._events=void 0,ec.prototype._maxListeners=void 0,ec.defaultMaxListeners=10,ec.init=function(){this.domain=null,ec.usingDomains&&undefined.active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new Qa,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},ec.prototype.setMaxListeners=function(e){if(\"number\"!=typeof e||e<0||isNaN(e))throw new TypeError('\"n\" argument must be a positive number');return this._maxListeners=e,this},ec.prototype.getMaxListeners=function(){return tc(this)},ec.prototype.emit=function(e){var t,n,r,i,o,s,a,c=\"error\"===e;if(s=this._events)c=c&&null==s.error;else if(!c)return!1;if(a=this.domain,c){if(t=arguments[1],!a){if(t instanceof Error)throw t;var l=new Error('Uncaught, unspecified \"error\" event. ('+t+\")\");throw l.context=t,l}return t||(t=new Error('Uncaught, unspecified \"error\" event')),t.domainEmitter=this,t.domain=a,t.domainThrown=!1,a.emit(\"error\",t),!1}if(!(n=s[e]))return!1;var d=\"function\"==typeof n;switch(r=arguments.length){case 1:!function(e,t,n){if(t)e.call(n);else for(var r=e.length,i=oc(e,r),o=0;o<r;++o)i[o].call(n)}(n,d,this);break;case 2:!function(e,t,n,r){if(t)e.call(n,r);else for(var i=e.length,o=oc(e,i),s=0;s<i;++s)o[s].call(n,r)}(n,d,this,arguments[1]);break;case 3:!function(e,t,n,r,i){if(t)e.call(n,r,i);else for(var o=e.length,s=oc(e,o),a=0;a<o;++a)s[a].call(n,r,i)}(n,d,this,arguments[1],arguments[2]);break;case 4:!function(e,t,n,r,i,o){if(t)e.call(n,r,i,o);else for(var s=e.length,a=oc(e,s),c=0;c<s;++c)a[c].call(n,r,i,o)}(n,d,this,arguments[1],arguments[2],arguments[3]);break;default:for(i=new Array(r-1),o=1;o<r;o++)i[o-1]=arguments[o];!function(e,t,n,r){if(t)e.apply(n,r);else for(var i=e.length,o=oc(e,i),s=0;s<i;++s)o[s].apply(n,r)}(n,d,this,i)}return!0},ec.prototype.addListener=function(e,t){return nc(this,e,t,!1)},ec.prototype.on=ec.prototype.addListener,ec.prototype.prependListener=function(e,t){return nc(this,e,t,!0)},ec.prototype.once=function(e,t){if(\"function\"!=typeof t)throw new TypeError('\"listener\" argument must be a function');return this.on(e,rc(this,e,t)),this},ec.prototype.prependOnceListener=function(e,t){if(\"function\"!=typeof t)throw new TypeError('\"listener\" argument must be a function');return this.prependListener(e,rc(this,e,t)),this},ec.prototype.removeListener=function(e,t){var n,r,i,o,s;if(\"function\"!=typeof t)throw new TypeError('\"listener\" argument must be a function');if(!(r=this._events))return this;if(!(n=r[e]))return this;if(n===t||n.listener&&n.listener===t)0==--this._eventsCount?this._events=new Qa:(delete r[e],r.removeListener&&this.emit(\"removeListener\",e,n.listener||t));else if(\"function\"!=typeof n){for(i=-1,o=n.length;o-- >0;)if(n[o]===t||n[o].listener&&n[o].listener===t){s=n[o].listener,i=o;break}if(i<0)return this;if(1===n.length){if(n[0]=void 0,0==--this._eventsCount)return this._events=new Qa,this;delete r[e]}else!function(e,t){for(var n=t,r=n+1,i=e.length;r<i;n+=1,r+=1)e[n]=e[r];e.pop()}(n,i);r.removeListener&&this.emit(\"removeListener\",e,s||t)}return this},ec.prototype.off=function(e,t){return this.removeListener(e,t)},ec.prototype.removeAllListeners=function(e){var t,n;if(!(n=this._events))return this;if(!n.removeListener)return 0===arguments.length?(this._events=new Qa,this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=new Qa:delete n[e]),this;if(0===arguments.length){for(var r,i=Object.keys(n),o=0;o<i.length;++o)\"removeListener\"!==(r=i[o])&&this.removeAllListeners(r);return this.removeAllListeners(\"removeListener\"),this._events=new Qa,this._eventsCount=0,this}if(\"function\"==typeof(t=n[e]))this.removeListener(e,t);else if(t)do{this.removeListener(e,t[t.length-1])}while(t[0]);return this},ec.prototype.listeners=function(e){var t,n,r=this._events;return n=r&&(t=r[e])?\"function\"==typeof t?[t.listener||t]:function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(t):[],n},ec.listenerCount=function(e,t){return\"function\"==typeof e.listenerCount?e.listenerCount(t):ic.call(e,t)},ec.prototype.listenerCount=ic,ec.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};var sc=ue(Object.freeze({__proto__:null,EventEmitter:ec,default:ec}));Object.defineProperty(Xa,\"__esModule\",{value:!0});const ac=sc;function cc(e,t,n){try{Reflect.apply(e,t,n)}catch(e){setTimeout((()=>{throw e}))}}let lc=class extends ac.EventEmitter{emit(e,...t){let n=\"error\"===e;const r=this._events;if(void 0!==r)n=n&&void 0===r.error;else if(!n)return!1;if(n){let e;if(t.length>0&&([e]=t),e instanceof Error)throw e;const n=new Error(\"Unhandled error.\"+(e?` (${e.message})`:\"\"));throw n.context=e,n}const i=r[e];if(void 0===i)return!1;if(\"function\"==typeof i)cc(i,this,t);else{const e=i.length,n=function(e){const t=e.length,n=new Array(t);for(let r=0;r<t;r+=1)n[r]=e[r];return n}(i);for(let r=0;r<e;r+=1)cc(n[r],this,t)}return!0}};var dc,uc,hc,fc,pc,gc,mc,yc,vc,bc,wc,Ec,Cc,Sc,_c,kc,xc,Mc,Ac,Ic=Xa.default=lc,Pc=class e extends Ic{constructor({notificationHandler:e}={}){super(),cs(this,fc),cs(this,gc),cs(this,yc),cs(this,dc,!1),cs(this,uc,void 0),cs(this,hc,void 0),ls(this,uc,[]),ls(this,hc,e)}destroy(){as(this,uc).forEach((e=>{\"destroy\"in e&&\"function\"==typeof e.destroy&&e.destroy()})),ls(this,uc,[]),ls(this,dc,!0)}push(e){ds(this,fc,pc).call(this),as(this,uc).push(e)}handle(e,t){if(ds(this,fc,pc).call(this),t&&\"function\"!=typeof t)throw new Error('\"callback\" must be a function if provided.');return Array.isArray(e)?t?ds(this,gc,mc).call(this,e,t):ds(this,gc,mc).call(this,e):t?ds(this,yc,vc).call(this,e,t):this._promiseHandle(e)}asMiddleware(){return ds(this,fc,pc).call(this),async(t,n,r,i)=>{var o,s;try{const[a,c,l]=await ds(o=e,Ec,Cc).call(o,t,n,as(this,uc));return c?(await ds(s=e,kc,xc).call(s,l),i(a)):r((async t=>{var n;try{await ds(n=e,kc,xc).call(n,l)}catch(e){return t(e)}return t()}))}catch(e){return i(e)}}}async _promiseHandle(e){return new Promise(((t,n)=>{ds(this,yc,vc).call(this,e,((e,r)=>{e&&void 0===r?n(e):t(r)})).catch(n)}))}};dc=new WeakMap,uc=new WeakMap,hc=new WeakMap,fc=new WeakSet,pc=function(){if(as(this,dc))throw new Error(\"This engine is destroyed and can no longer be used.\")},gc=new WeakSet,mc=async function(e,t){try{if(0===e.length){const e=[{id:null,jsonrpc:\"2.0\",error:new Ga(us.invalidRequest,\"Request batch must contain plain objects. Received an empty array\")}];return t?t(null,e):e}const n=(await Promise.all(e.map(this._promiseHandle.bind(this)))).filter((e=>void 0!==e));return t?t(null,n):n}catch(e){if(t)return t(e);throw e}},yc=new WeakSet,vc=async function(e,t){var n;if(!e||Array.isArray(e)||\"object\"!=typeof e){const n=new Ga(us.invalidRequest,\"Requests must be plain objects. Received: \"+typeof e,{request:e});return t(n,{id:null,jsonrpc:\"2.0\",error:n})}if(\"string\"!=typeof e.method){const n=new Ga(us.invalidRequest,\"Must specify a string method. Received: \"+typeof e.method,{request:e});return as(this,hc)&&!_a(e)?t(null):t(n,{id:e.id??null,jsonrpc:\"2.0\",error:n})}if(as(this,hc)&&_s(e,Sa)&&!_a(e)){try{await as(this,hc).call(this,e)}catch(e){return t(e)}return t(null)}let r=null;const i={...e},o={id:i.id,jsonrpc:i.jsonrpc};try{await ds(n=Pc,bc,wc).call(n,i,o,as(this,uc))}catch(e){r=e}return r&&(delete o.result,o.error||(o.error=Ra(r))),t(r,o)},bc=new WeakSet,wc=async function(e,t,n){var r,i,o;const[s,a,c]=await ds(r=Pc,Ec,Cc).call(r,e,t,n);if(ds(i=Pc,Mc,Ac).call(i,e,t,a),await ds(o=Pc,kc,xc).call(o,c),s)throw s},Ec=new WeakSet,Cc=async function(e,t,n){var r;const i=[];let o=null,s=!1;for(const a of n)if([o,s]=await ds(r=Pc,Sc,_c).call(r,e,t,a,i),s)break;return[o,s,i.reverse()]},Sc=new WeakSet,_c=async function(e,t,n,r){return new Promise((i=>{const o=e=>{const n=e||t.error;n&&(t.error=Ra(n)),i([n,!0])},s=n=>{t.error?o(t.error):(n&&(\"function\"!=typeof n&&o(new Ga(us.internal,`JsonRpcEngine: \"next\" return handlers must be functions. Received \"${typeof n}\" for request:\\n${Lc(e)}`,{request:e})),r.push(n)),i([null,!1]))};try{n(e,t,s,o)}catch(e){o(e)}}))},kc=new WeakSet,xc=async function(e){for(const t of e)await new Promise(((e,n)=>{t((t=>t?n(t):e()))}))},Mc=new WeakSet,Ac=function(e,t,n){if(!ps(t,\"result\")&&!ps(t,\"error\"))throw new Ga(us.internal,`JsonRpcEngine: Response has no error or result for request:\\n${Lc(e)}`,{request:e});if(!n)throw new Ga(us.internal,`JsonRpcEngine: Nothing ended request:\\n${Lc(e)}`,{request:e})},cs(Pc,bc),cs(Pc,Ec),cs(Pc,Sc),cs(Pc,kc),cs(Pc,Mc);var Rc=Pc;function Lc(e){return JSON.stringify(e,null,2)}var Oc=Object.freeze([\"eth_subscription\"]),Tc=(e=console)=>[os(),Nc(e),ns(e)];function Nc(e){return(t,n,r)=>{\"string\"==typeof t.method&&t.method||(n.error=Ya({message:\"The request 'method' must be a non-empty string.\",data:t})),r((t=>{const{error:r}=n;return r?(e.error(`MetaMask - RPC Error: ${r.message}`,r),t()):t()}))}}var Dc=(e,t,n=!0)=>(r,i)=>{r||i.error?t(r||i.error):!n||Array.isArray(i)?e(i):e(i.result)},$c=e=>Boolean(e)&&\"string\"==typeof e&&e.startsWith(\"0x\"),Bc=()=>{};async function Kc(e,t){try{const t=await async function(){return{name:jc(window),icon:await Uc(window)}}();e.handle({jsonrpc:\"2.0\",id:1,method:\"metamask_sendDomainMetadata\",params:t},Bc)}catch(e){t.error({message:ts.errors.sendSiteMetadata(),originalError:e})}}function jc(e){const{document:t}=e,n=t.querySelector('head > meta[property=\"og:site_name\"]');if(n)return n.content;const r=t.querySelector('head > meta[name=\"title\"]');return r?r.content:t.title&&t.title.length>0?t.title:window.location.hostname}async function Uc(e){const{document:t}=e,n=t.querySelectorAll('head > link[rel~=\"icon\"]');for(const e of Array.from(n))if(e&&await Hc(e.href))return e.href;return null}async function Hc(e){return new Promise(((t,n)=>{try{const n=document.createElement(\"img\");n.onload=()=>t(!0),n.onerror=()=>t(!1),n.src=e}catch(e){n(e)}}))}var Fc=(e,t,n)=>{if(!t.has(e))throw TypeError(\"Cannot \"+n)},zc=(e,t,n)=>(Fc(e,t,\"read from private field\"),n?n.call(e):t.get(e)),qc=(e,t,n)=>{if(t.has(e))throw TypeError(\"Cannot add the same private member more than once\");t instanceof WeakSet?t.add(e):t.set(e,n)},Vc=(e,t,n,r)=>(Fc(e,t,\"write to private field\"),t.set(e,n),n);function Wc(e,t,n){try{Reflect.apply(e,t,n)}catch(e){setTimeout((()=>{throw e}))}}class Gc extends ec{emit(e,...t){let n=\"error\"===e;const r=this._events;if(void 0!==r)n=n&&void 0===r.error;else if(!n)return!1;if(n){let e;if(t.length>0&&([e]=t),e instanceof Error)throw e;const n=new Error(\"Unhandled error.\"+(e?` (${e.message})`:\"\"));throw n.context=e,n}const i=r[e];if(void 0===i)return!1;if(\"function\"==typeof i)Wc(i,this,t);else{const e=i.length,n=function(e){const t=e.length,n=new Array(t);for(let r=0;r<t;r+=1)n[r]=e[r];return n}(i);for(let r=0;r<e;r+=1)Wc(n[r],this,t)}return!0}}var Zc,Yc,Jc=function e(t,n){if(t===n)return!0;if(t&&n&&\"object\"==typeof t&&\"object\"==typeof n){if(t.constructor!==n.constructor)return!1;var r,i,o;if(Array.isArray(t)){if((r=t.length)!=n.length)return!1;for(i=r;0!=i--;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((r=(o=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(i=r;0!=i--;)if(!Object.prototype.hasOwnProperty.call(n,o[i]))return!1;for(i=r;0!=i--;){var s=o[i];if(!e(t[s],n[s]))return!1}return!0}return t!=t&&n!=n},Xc=de(Jc),Qc=class e extends Gc{constructor({logger:t=console,maxEventListeners:n=100,rpcMiddleware:r=[]}={}){super(),qc(this,Zc,void 0),qc(this,Yc,void 0),this._log=t,this.setMaxListeners(n),this._state={...e._defaultState},Vc(this,Yc,null),Vc(this,Zc,null),this._handleAccountsChanged=this._handleAccountsChanged.bind(this),this._handleConnect=this._handleConnect.bind(this),this._handleChainChanged=this._handleChainChanged.bind(this),this._handleDisconnect=this._handleDisconnect.bind(this),this._handleUnlockStateChanged=this._handleUnlockStateChanged.bind(this),this._rpcRequest=this._rpcRequest.bind(this),this.request=this.request.bind(this);const i=new Rc;r.forEach((e=>i.push(e))),this._rpcEngine=i}get chainId(){return zc(this,Zc)}get selectedAddress(){return zc(this,Yc)}isConnected(){return this._state.isConnected}async request(e){if(!e||\"object\"!=typeof e||Array.isArray(e))throw Ya({message:ts.errors.invalidRequestArgs(),data:e});const{method:t,params:n}=e;if(\"string\"!=typeof t||0===t.length)throw Ya({message:ts.errors.invalidRequestMethod(),data:e});if(void 0!==n&&!Array.isArray(n)&&(\"object\"!=typeof n||null===n))throw Ya({message:ts.errors.invalidRequestParams(),data:e});const r=null==n?{method:t}:{method:t,params:n};return new Promise(((e,t)=>{this._rpcRequest(r,Dc(e,t))}))}_initializeState(e){if(this._state.initialized)throw new Error(\"Provider already initialized.\");if(e){const{accounts:t,chainId:n,isUnlocked:r,networkVersion:i}=e;this._handleConnect(n),this._handleChainChanged({chainId:n,networkVersion:i}),this._handleUnlockStateChanged({accounts:t,isUnlocked:r}),this._handleAccountsChanged(t)}this._state.initialized=!0,this.emit(\"_initialized\")}_rpcRequest(e,t){let n=t;return Array.isArray(e)||(e.jsonrpc||(e.jsonrpc=\"2.0\"),\"eth_accounts\"!==e.method&&\"eth_requestAccounts\"!==e.method||(n=(n,r)=>{this._handleAccountsChanged(r.result??[],\"eth_accounts\"===e.method),t(n,r)})),this._rpcEngine.handle(e,n)}_handleConnect(e){this._state.isConnected||(this._state.isConnected=!0,this.emit(\"connect\",{chainId:e}),this._log.debug(ts.info.connected(e)))}_handleDisconnect(e,t){if(this._state.isConnected||!this._state.isPermanentlyDisconnected&&!e){let n;this._state.isConnected=!1,e?(n=new Ga(1013,t??ts.errors.disconnected()),this._log.debug(n)):(n=new Ga(1011,t??ts.errors.permanentlyDisconnected()),this._log.error(n),Vc(this,Zc,null),this._state.accounts=null,Vc(this,Yc,null),this._state.isUnlocked=!1,this._state.isPermanentlyDisconnected=!0),this.emit(\"disconnect\",n)}}_handleChainChanged({chainId:e}={}){$c(e)?(this._handleConnect(e),e!==zc(this,Zc)&&(Vc(this,Zc,e),this._state.initialized&&this.emit(\"chainChanged\",zc(this,Zc)))):this._log.error(ts.errors.invalidNetworkParams(),{chainId:e})}_handleAccountsChanged(e,t=!1){let n=e;Array.isArray(e)||(this._log.error(\"MetaMask: Received invalid accounts parameter. Please report this bug.\",e),n=[]);for(const t of e)if(\"string\"!=typeof t){this._log.error(\"MetaMask: Received non-string account. Please report this bug.\",e),n=[];break}if(!Xc(this._state.accounts,n)&&(t&&null!==this._state.accounts&&this._log.error(\"MetaMask: 'eth_accounts' unexpectedly updated accounts. Please report this bug.\",n),this._state.accounts=n,zc(this,Yc)!==n[0]&&Vc(this,Yc,n[0]||null),this._state.initialized)){const e=[...n];this.emit(\"accountsChanged\",e)}}_handleUnlockStateChanged({accounts:e,isUnlocked:t}={}){\"boolean\"==typeof t?t!==this._state.isUnlocked&&(this._state.isUnlocked=t,this._handleAccountsChanged(e??[])):this._log.error(\"MetaMask: Received invalid isUnlocked parameter. Please report this bug.\")}};Zc=new WeakMap,Yc=new WeakMap,Qc._defaultState={accounts:null,isConnected:!1,isUnlocked:!1,initialized:!1,isPermanentlyDisconnected:!1};var el,tl,nl=Qc,rl={exports:{}};function il(){return tl?el:(tl=1,el=sc.EventEmitter)}var ol,sl=ue(ce);ol=\"function\"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e};var al=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++)n[t[r]]=Object.getOwnPropertyDescriptor(e,t[r]);return n},cl=/%[sdj%]/g;function ll(e){if(!kl(e)){for(var t=[],n=0;n<arguments.length;n++)t.push(pl(arguments[n]));return t.join(\" \")}n=1;for(var r=arguments,i=r.length,o=String(e).replace(cl,(function(e){if(\"%%\"===e)return\"%\";if(n>=i)return e;switch(e){case\"%s\":return String(r[n++]);case\"%d\":return Number(r[n++]);case\"%j\":try{return JSON.stringify(r[n++])}catch(e){return\"[Circular]\"}default:return e}})),s=r[n];n<i;s=r[++n])Cl(s)||!Il(s)?o+=\" \"+s:o+=\" \"+pl(s);return o}function dl(e,t){if(Ml(c.process))return function(){return dl(e,t).apply(this,arguments)};if(!0===ca.noDeprecation)return e;var n=!1;return function(){if(!n){if(ca.throwDeprecation)throw new Error(t);ca.traceDeprecation?console.trace(t):console.error(t),n=!0}return e.apply(this,arguments)}}var ul,hl={};function fl(e){if(Ml(ul)&&(ul=ca.env.NODE_DEBUG||\"\"),e=e.toUpperCase(),!hl[e])if(new RegExp(\"\\\\b\"+e+\"\\\\b\",\"i\").test(ul)){hl[e]=function(){var t=ll.apply(null,arguments);console.error(\"%s %d: %s\",e,0,t)}}else hl[e]=function(){};return hl[e]}function pl(e,t){var n={seen:[],stylize:ml};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),El(t)?n.showHidden=t:t&&Kl(n,t),Ml(n.showHidden)&&(n.showHidden=!1),Ml(n.depth)&&(n.depth=2),Ml(n.colors)&&(n.colors=!1),Ml(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=gl),yl(n,e,n.depth)}function gl(e,t){var n=pl.styles[t];return n?\"\u001b[\"+pl.colors[n][0]+\"m\"+e+\"\u001b[\"+pl.colors[n][1]+\"m\":e}function ml(e,t){return e}function yl(e,t,n){if(e.customInspect&&t&&Ll(t.inspect)&&t.inspect!==pl&&(!t.constructor||t.constructor.prototype!==t)){var r=t.inspect(n,e);return kl(r)||(r=yl(e,r,n)),r}var i=function(e,t){if(Ml(t))return e.stylize(\"undefined\",\"undefined\");if(kl(t)){var n=\"'\"+JSON.stringify(t).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return e.stylize(n,\"string\")}if(_l(t))return e.stylize(\"\"+t,\"number\");if(El(t))return e.stylize(\"\"+t,\"boolean\");if(Cl(t))return e.stylize(\"null\",\"null\")}(e,t);if(i)return i;var o=Object.keys(t),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),Rl(t)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return vl(t);if(0===o.length){if(Ll(t)){var a=t.name?\": \"+t.name:\"\";return e.stylize(\"[Function\"+a+\"]\",\"special\")}if(Al(t))return e.stylize(RegExp.prototype.toString.call(t),\"regexp\");if(Pl(t))return e.stylize(Date.prototype.toString.call(t),\"date\");if(Rl(t))return vl(t)}var c,l=\"\",d=!1,u=[\"{\",\"}\"];(wl(t)&&(d=!0,u=[\"[\",\"]\"]),Ll(t))&&(l=\" [Function\"+(t.name?\": \"+t.name:\"\")+\"]\");return Al(t)&&(l=\" \"+RegExp.prototype.toString.call(t)),Pl(t)&&(l=\" \"+Date.prototype.toUTCString.call(t)),Rl(t)&&(l=\" \"+vl(t)),0!==o.length||d&&0!=t.length?n<0?Al(t)?e.stylize(RegExp.prototype.toString.call(t),\"regexp\"):e.stylize(\"[Object]\",\"special\"):(e.seen.push(t),c=d?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s<a;++s)jl(t,String(s))?o.push(bl(e,t,n,r,String(s),!0)):o.push(\"\");return i.forEach((function(i){i.match(/^\\d+$/)||o.push(bl(e,t,n,r,i,!0))})),o}(e,t,n,s,o):o.map((function(r){return bl(e,t,n,s,r,d)})),e.seen.pop(),function(e,t,n){var r=e.reduce((function(e,t){return t.indexOf(\"\\n\"),e+t.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1}),0);if(r>60)return n[0]+(\"\"===t?\"\":t+\"\\n \")+\" \"+e.join(\",\\n \")+\" \"+n[1];return n[0]+t+\" \"+e.join(\", \")+\" \"+n[1]}(c,l,u)):u[0]+l+u[1]}function vl(e){return\"[\"+Error.prototype.toString.call(e)+\"]\"}function bl(e,t,n,r,i,o){var s,a,c;if((c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=c.set?e.stylize(\"[Getter/Setter]\",\"special\"):e.stylize(\"[Getter]\",\"special\"):c.set&&(a=e.stylize(\"[Setter]\",\"special\")),jl(r,i)||(s=\"[\"+i+\"]\"),a||(e.seen.indexOf(c.value)<0?(a=Cl(n)?yl(e,c.value,null):yl(e,c.value,n-1)).indexOf(\"\\n\")>-1&&(a=o?a.split(\"\\n\").map((function(e){return\" \"+e})).join(\"\\n\").substr(2):\"\\n\"+a.split(\"\\n\").map((function(e){return\" \"+e})).join(\"\\n\")):a=e.stylize(\"[Circular]\",\"special\")),Ml(s)){if(o&&i.match(/^\\d+$/))return a;(s=JSON.stringify(\"\"+i)).match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,\"name\")):(s=s.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),s=e.stylize(s,\"string\"))}return s+\": \"+a}function wl(e){return Array.isArray(e)}function El(e){return\"boolean\"==typeof e}function Cl(e){return null===e}function Sl(e){return null==e}function _l(e){return\"number\"==typeof e}function kl(e){return\"string\"==typeof e}function xl(e){return\"symbol\"==typeof e}function Ml(e){return void 0===e}function Al(e){return Il(e)&&\"[object RegExp]\"===Nl(e)}function Il(e){return\"object\"==typeof e&&null!==e}function Pl(e){return Il(e)&&\"[object Date]\"===Nl(e)}function Rl(e){return Il(e)&&(\"[object Error]\"===Nl(e)||e instanceof Error)}function Ll(e){return\"function\"==typeof e}function Ol(e){return null===e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||\"symbol\"==typeof e||void 0===e}function Tl(e){return S.isBuffer(e)}function Nl(e){return Object.prototype.toString.call(e)}function Dl(e){return e<10?\"0\"+e.toString(10):e.toString(10)}pl.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},pl.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"};var $l=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];function Bl(){console.log(\"%s - %s\",function(){var e=new Date,t=[Dl(e.getHours()),Dl(e.getMinutes()),Dl(e.getSeconds())].join(\":\");return[e.getDate(),$l[e.getMonth()],t].join(\" \")}(),ll.apply(null,arguments))}function Kl(e,t){if(!t||!Il(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}function jl(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var Ul=\"undefined\"!=typeof Symbol?Symbol(\"util.promisify.custom\"):void 0;function Hl(e){if(\"function\"!=typeof e)throw new TypeError('The \"original\" argument must be of type Function');if(Ul&&e[Ul]){var t;if(\"function\"!=typeof(t=e[Ul]))throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');return Object.defineProperty(t,Ul,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o<arguments.length;o++)i.push(arguments[o]);i.push((function(e,r){e?n(e):t(r)}));try{e.apply(this,i)}catch(e){n(e)}return r}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Ul&&Object.defineProperty(t,Ul,{value:t,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(t,al(e))}function Fl(e,t){if(!e){var n=new Error(\"Promise was rejected with a falsy value\");n.reason=e,e=n}return t(e)}function zl(e){if(\"function\"!=typeof e)throw new TypeError('The \"original\" argument must be of type Function');function t(){for(var t=[],n=0;n<arguments.length;n++)t.push(arguments[n]);var r=t.pop();if(\"function\"!=typeof r)throw new TypeError(\"The last argument must be of type Function\");var i=this,o=function(){return r.apply(i,arguments)};e.apply(this,t).then((function(e){ca.nextTick(o.bind(null,null,e))}),(function(e){ca.nextTick(Fl.bind(null,e,o))}))}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,al(e)),t}Hl.custom=Ul;var ql,Vl,Wl,Gl,Zl={inherits:ol,_extend:Kl,log:Bl,isBuffer:Tl,isPrimitive:Ol,isFunction:Ll,isError:Rl,isDate:Pl,isObject:Il,isRegExp:Al,isUndefined:Ml,isSymbol:xl,isString:kl,isNumber:_l,isNullOrUndefined:Sl,isNull:Cl,isBoolean:El,isArray:wl,inspect:pl,deprecate:dl,format:ll,debuglog:fl,promisify:Hl,callbackify:zl},Yl=ue(Object.freeze({__proto__:null,_extend:Kl,callbackify:zl,debuglog:fl,default:Zl,deprecate:dl,format:ll,inherits:ol,inspect:pl,isArray:wl,isBoolean:El,isBuffer:Tl,isDate:Pl,isError:Rl,isFunction:Ll,isNull:Cl,isNullOrUndefined:Sl,isNumber:_l,isObject:Il,isPrimitive:Ol,isRegExp:Al,isString:kl,isSymbol:xl,isUndefined:Ml,log:Bl,promisify:Hl}));function Jl(){if(Vl)return ql;function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function t(t){for(var r=1;r<arguments.length;r++){var i=null!=arguments[r]?arguments[r]:{};r%2?e(Object(i),!0).forEach((function(e){n(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):e(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}function n(e,t,n){return(t=i(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t,n){return t&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}(e.prototype,t),Object.defineProperty(e,\"prototype\",{writable:!1}),e}function i(e){var t=function(e,t){if(\"object\"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||\"default\");if(\"object\"!=typeof r)return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");return\"symbol\"==typeof t?t:String(t)}Vl=1;var o=sl.Buffer,s=Yl.inspect,a=s&&s.custom||\"inspect\";return ql=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.head=null,this.tail=null,this.length=0}return r(e,[{key:\"push\",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:\"unshift\",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:\"shift\",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:\"clear\",value:function(){this.head=this.tail=null,this.length=0}},{key:\"join\",value:function(e){if(0===this.length)return\"\";for(var t=this.head,n=\"\"+t.data;t=t.next;)n+=e+t.data;return n}},{key:\"concat\",value:function(e){if(0===this.length)return o.alloc(0);for(var t,n,r,i=o.allocUnsafe(e>>>0),s=this.head,a=0;s;)t=s.data,n=i,r=a,o.prototype.copy.call(t,n,r),a+=s.data.length,s=s.next;return i}},{key:\"consume\",value:function(e,t){var n;return e<this.head.data.length?(n=this.head.data.slice(0,e),this.head.data=this.head.data.slice(e)):n=e===this.head.data.length?this.shift():t?this._getString(e):this._getBuffer(e),n}},{key:\"first\",value:function(){return this.head.data}},{key:\"_getString\",value:function(e){var t=this.head,n=1,r=t.data;for(e-=r.length;t=t.next;){var i=t.data,o=e>i.length?i.length:e;if(o===i.length?r+=i:r+=i.slice(0,e),0===(e-=o)){o===i.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++n}return this.length-=n,r}},{key:\"_getBuffer\",value:function(e){var t=o.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var i=n.data,s=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,s),0===(e-=s)){s===i.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=i.slice(s));break}++r}return this.length-=r,t}},{key:a,value:function(e,n){return s(this,t(t({},n),{},{depth:0,customInspect:!1}))}}]),e}(),ql}function Xl(){if(Gl)return Wl;function e(e,r){n(e,r),t(e)}function t(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit(\"close\")}function n(e,t){e.emit(\"error\",t)}return Gl=1,Wl={destroy:function(r,i){var o=this,s=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return s||a?(i?i(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,ca.nextTick(n,this,r)):ca.nextTick(n,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,(function(n){!i&&n?o._writableState?o._writableState.errorEmitted?ca.nextTick(t,o):(o._writableState.errorEmitted=!0,ca.nextTick(e,o,n)):ca.nextTick(e,o,n):i?(ca.nextTick(t,o),i(n)):ca.nextTick(t,o)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var n=e._readableState,r=e._writableState;n&&n.autoDestroy||r&&r.autoDestroy?e.destroy(t):e.emit(\"error\",t)}},Wl}var Ql={};var ed,td,nd={};function rd(e,t,n){n||(n=Error);var r=function(e){var n,r;function i(n,r,i){return e.call(this,function(e,n,r){return\"string\"==typeof t?t:t(e,n,r)}(n,r,i))||this}return r=e,(n=i).prototype=Object.create(r.prototype),n.prototype.constructor=n,n.__proto__=r,i}(n);r.prototype.name=n.name,r.prototype.code=e,nd[e]=r}function id(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?\"one of \".concat(t,\" \").concat(e.slice(0,n-1).join(\", \"),\", or \")+e[n-1]:2===n?\"one of \".concat(t,\" \").concat(e[0],\" or \").concat(e[1]):\"of \".concat(t,\" \").concat(e[0])}return\"of \".concat(t,\" \").concat(String(e))}function od(){if(td)return ed;td=1;var e=Ql.codes.ERR_INVALID_OPT_VALUE;return ed={getHighWaterMark:function(t,n,r,i){var o=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(n,i,r);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new e(i?r:\"highWaterMark\",o);return Math.floor(o)}return t.objectMode?16:16384}}}rd(\"ERR_INVALID_OPT_VALUE\",(function(e,t){return'The value \"'+t+'\" is invalid for option \"'+e+'\"'}),TypeError),rd(\"ERR_INVALID_ARG_TYPE\",(function(e,t,n){var r,i,o;if(\"string\"==typeof t&&(i=\"not \",t.substr(0,i.length)===i)?(r=\"must not be\",t=t.replace(/^not /,\"\")):r=\"must be\",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e,\" argument\"))o=\"The \".concat(e,\" \").concat(r,\" \").concat(id(t,\"type\"));else{var s=function(e,t,n){return\"number\"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,\".\")?\"property\":\"argument\";o='The \"'.concat(e,'\" ').concat(s,\" \").concat(r,\" \").concat(id(t,\"type\"))}return o+=\". Received type \".concat(typeof n)}),TypeError),rd(\"ERR_STREAM_PUSH_AFTER_EOF\",\"stream.push() after EOF\"),rd(\"ERR_METHOD_NOT_IMPLEMENTED\",(function(e){return\"The \"+e+\" method is not implemented\"})),rd(\"ERR_STREAM_PREMATURE_CLOSE\",\"Premature close\"),rd(\"ERR_STREAM_DESTROYED\",(function(e){return\"Cannot call \"+e+\" after a stream was destroyed\"})),rd(\"ERR_MULTIPLE_CALLBACK\",\"Callback called multiple times\"),rd(\"ERR_STREAM_CANNOT_PIPE\",\"Cannot pipe, not readable\"),rd(\"ERR_STREAM_WRITE_AFTER_END\",\"write after end\"),rd(\"ERR_STREAM_NULL_VALUES\",\"May not write null values to stream\",TypeError),rd(\"ERR_UNKNOWN_ENCODING\",(function(e){return\"Unknown encoding: \"+e}),TypeError),rd(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\",\"stream.unshift() after end event\"),Ql.codes=nd;var sd,ad,cd,ld,dd,ud,hd=\"function\"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},fd=ue(Object.freeze({__proto__:null,default:hd}));function pd(){if(ad)return sd;function e(e){try{if(!le.localStorage)return!1}catch(e){return!1}var t=le.localStorage[e];return null!=t&&\"true\"===String(t).toLowerCase()}return ad=1,sd=function(t,n){if(e(\"noDeprecation\"))return t;var r=!1;return function(){if(!r){if(e(\"throwDeprecation\"))throw new Error(n);e(\"traceDeprecation\")?console.trace(n):console.warn(n),r=!0}return t.apply(this,arguments)}},sd}function gd(){if(ld)return cd;function e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree.next=e}(t,e)}}var t;ld=1,cd=E,E.WritableState=w;var n={deprecate:pd()},r=il(),i=sl.Buffer,o=(void 0!==le?le:\"undefined\"!=typeof window?window:\"undefined\"!=typeof self?self:{}).Uint8Array||function(){};var s,a=Xl(),c=od().getHighWaterMark,l=Ql.codes,d=l.ERR_INVALID_ARG_TYPE,u=l.ERR_METHOD_NOT_IMPLEMENTED,h=l.ERR_MULTIPLE_CALLBACK,f=l.ERR_STREAM_CANNOT_PIPE,p=l.ERR_STREAM_DESTROYED,g=l.ERR_STREAM_NULL_VALUES,m=l.ERR_STREAM_WRITE_AFTER_END,y=l.ERR_UNKNOWN_ENCODING,v=a.errorOrDestroy;function b(){}function w(n,r,i){t=t||md(),n=n||{},\"boolean\"!=typeof i&&(i=r instanceof t),this.objectMode=!!n.objectMode,i&&(this.objectMode=this.objectMode||!!n.writableObjectMode),this.highWaterMark=c(this,n,\"writableHighWaterMark\",i),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===n.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=n.defaultEncoding||\"utf8\",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(\"function\"!=typeof i)throw new h;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(ca.nextTick(i,r),ca.nextTick(M,e,t),e._writableState.errorEmitted=!0,v(e,r)):(i(r),e._writableState.errorEmitted=!0,v(e,r),M(e,t))}(e,n,r,t,i);else{var o=k(n)||e.destroyed;o||n.corked||n.bufferProcessing||!n.bufferedRequest||_(e,n),r?ca.nextTick(S,e,n,o,i):S(e,n,o,i)}}(r,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==n.emitClose,this.autoDestroy=!!n.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new e(this)}function E(e){var n=this instanceof(t=t||md());if(!n&&!s.call(E,this))return new E(e);this._writableState=new w(e,this,n),this.writable=!0,e&&(\"function\"==typeof e.write&&(this._write=e.write),\"function\"==typeof e.writev&&(this._writev=e.writev),\"function\"==typeof e.destroy&&(this._destroy=e.destroy),\"function\"==typeof e.final&&(this._final=e.final)),r.call(this)}function C(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new p(\"write\")):n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function S(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit(\"drain\"))}(e,t),t.pendingcb--,r(),M(e,t)}function _(t,n){n.bufferProcessing=!0;var r=n.bufferedRequest;if(t._writev&&r&&r.next){var i=n.bufferedRequestCount,o=new Array(i),s=n.corkedRequestsFree;s.entry=r;for(var a=0,c=!0;r;)o[a]=r,r.isBuf||(c=!1),r=r.next,a+=1;o.allBuffers=c,C(t,n,!0,n.length,o,\"\",s.finish),n.pendingcb++,n.lastBufferedRequest=null,s.next?(n.corkedRequestsFree=s.next,s.next=null):n.corkedRequestsFree=new e(n),n.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,d=r.encoding,u=r.callback;if(C(t,n,!1,n.objectMode?1:l.length,l,d,u),r=r.next,n.bufferedRequestCount--,n.writing)break}null===r&&(n.lastBufferedRequest=null)}n.bufferedRequest=r,n.bufferProcessing=!1}function k(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function x(e,t){e._final((function(n){t.pendingcb--,n&&v(e,n),t.prefinished=!0,e.emit(\"prefinish\"),M(e,t)}))}function M(e,t){var n=k(t);if(n&&(function(e,t){t.prefinished||t.finalCalled||(\"function\"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit(\"prefinish\")):(t.pendingcb++,t.finalCalled=!0,ca.nextTick(x,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit(\"finish\"),t.autoDestroy))){var r=e._readableState;(!r||r.autoDestroy&&r.endEmitted)&&e.destroy()}return n}return fd(E,r),w.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(w.prototype,\"buffer\",{get:n.deprecate((function(){return this.getBuffer()}),\"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.\",\"DEP0003\")})}catch(e){}}(),\"function\"==typeof Symbol&&Symbol.hasInstance&&\"function\"==typeof Function.prototype[Symbol.hasInstance]?(s=Function.prototype[Symbol.hasInstance],Object.defineProperty(E,Symbol.hasInstance,{value:function(e){return!!s.call(this,e)||this===E&&(e&&e._writableState instanceof w)}})):s=function(e){return e instanceof this},E.prototype.pipe=function(){v(this,new f)},E.prototype.write=function(e,t,n){var r,s=this._writableState,a=!1,c=!s.objectMode&&(r=e,i.isBuffer(r)||r instanceof o);return c&&!i.isBuffer(e)&&(e=function(e){return i.from(e)}(e)),\"function\"==typeof t&&(n=t,t=null),c?t=\"buffer\":t||(t=s.defaultEncoding),\"function\"!=typeof n&&(n=b),s.ending?function(e,t){var n=new m;v(e,n),ca.nextTick(t,n)}(this,n):(c||function(e,t,n,r){var i;return null===n?i=new g:\"string\"==typeof n||t.objectMode||(i=new d(\"chunk\",[\"string\",\"Buffer\"],n)),!i||(v(e,i),ca.nextTick(r,i),!1)}(this,s,e,n))&&(s.pendingcb++,a=function(e,t,n,r,o,s){if(!n){var a=function(e,t,n){e.objectMode||!1===e.decodeStrings||\"string\"!=typeof t||(t=i.from(t,n));return t}(t,r,o);r!==a&&(n=!0,o=\"buffer\",r=a)}var c=t.objectMode?1:r.length;t.length+=c;var l=t.length<t.highWaterMark;l||(t.needDrain=!0);if(t.writing||t.corked){var d=t.lastBufferedRequest;t.lastBufferedRequest={chunk:r,encoding:o,isBuf:n,callback:s,next:null},d?d.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else C(e,t,!1,c,r,o,s);return l}(this,s,c,e,t,n)),a},E.prototype.cork=function(){this._writableState.corked++},E.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||_(this,e))},E.prototype.setDefaultEncoding=function(e){if(\"string\"==typeof e&&(e=e.toLowerCase()),!([\"hex\",\"utf8\",\"utf-8\",\"ascii\",\"binary\",\"base64\",\"ucs2\",\"ucs-2\",\"utf16le\",\"utf-16le\",\"raw\"].indexOf((e+\"\").toLowerCase())>-1))throw new y(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,n){n(new u(\"_write()\"))},E.prototype._writev=null,E.prototype.end=function(e,t,n){var r=this._writableState;return\"function\"==typeof e?(n=e,e=null,t=null):\"function\"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,n){t.ending=!0,M(e,t),n&&(t.finished?ca.nextTick(n):e.once(\"finish\",n));t.ended=!0,e.writable=!1}(this,r,n),this},Object.defineProperty(E.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,\"destroyed\",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),E.prototype.destroy=a.destroy,E.prototype._undestroy=a.undestroy,E.prototype._destroy=function(e,t){t(e)},cd}function md(){if(ud)return dd;ud=1;var e=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};dd=s;var t=Od(),n=gd();fd(s,t);for(var r=e(n.prototype),i=0;i<r.length;i++){var o=r[i];s.prototype[o]||(s.prototype[o]=n.prototype[o])}function s(e){if(!(this instanceof s))return new s(e);t.call(this,e),n.call(this,e),this.allowHalfOpen=!0,e&&(!1===e.readable&&(this.readable=!1),!1===e.writable&&(this.writable=!1),!1===e.allowHalfOpen&&(this.allowHalfOpen=!1,this.once(\"end\",a)))}function a(){this._writableState.ended||ca.nextTick(c,this)}function c(e){e.end()}return Object.defineProperty(s.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(s.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(s.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(s.prototype,\"destroyed\",{enumerable:!1,get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),dd}var yd=S.isEncoding||function(e){switch(e&&e.toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":case\"raw\":return!0;default:return!1}};function vd(e){switch(this.encoding=(e||\"utf8\").toLowerCase().replace(/[-_]/,\"\"),function(e){if(e&&!yd(e))throw new Error(\"Unknown encoding: \"+e)}(e),this.encoding){case\"utf8\":this.surrogateSize=3;break;case\"ucs2\":case\"utf16le\":this.surrogateSize=2,this.detectIncompleteChar=wd;break;case\"base64\":this.surrogateSize=3,this.detectIncompleteChar=Ed;break;default:return void(this.write=bd)}this.charBuffer=new S(6),this.charReceived=0,this.charLength=0}function bd(e){return e.toString(this.encoding)}function wd(e){this.charReceived=e.length%2,this.charLength=this.charReceived?2:0}function Ed(e){this.charReceived=e.length%3,this.charLength=this.charReceived?3:0}vd.prototype.write=function(e){for(var t=\"\";this.charLength;){var n=e.length>=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived<this.charLength)return\"\";if(e=e.slice(n,e.length),!((i=(t=this.charBuffer.slice(0,this.charLength).toString(this.encoding)).charCodeAt(t.length-1))>=55296&&i<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=\"\"}this.detectIncompleteChar(e);var r=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,r),r-=this.charReceived);var i;r=(t+=e.toString(this.encoding,0,r)).length-1;if((i=t.charCodeAt(r))>=55296&&i<=56319){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),e.copy(this.charBuffer,0,0,o),t.substring(0,r)}return t},vd.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(t<=2&&n>>4==14){this.charLength=3;break}if(t<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=t},vd.prototype.end=function(e){var t=\"\";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.charReceived,r=this.charBuffer,i=this.encoding;t+=r.slice(0,n).toString(i)}return t};var Cd=ue(Object.freeze({__proto__:null,StringDecoder:vd})),Sd=Ql.codes.ERR_STREAM_PREMATURE_CLOSE;function _d(){}var kd,xd,Md,Ad,Id,Pd,Rd=function e(t,n,r){if(\"function\"==typeof n)return e(t,null,n);n||(n={}),r=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];e.apply(this,r)}}}(r||_d);var i=n.readable||!1!==n.readable&&t.readable,o=n.writable||!1!==n.writable&&t.writable,s=function(){t.writable||c()},a=t._writableState&&t._writableState.finished,c=function(){o=!1,a=!0,i||r.call(t)},l=t._readableState&&t._readableState.endEmitted,d=function(){i=!1,l=!0,o||r.call(t)},u=function(e){r.call(t,e)},h=function(){var e;return i&&!l?(t._readableState&&t._readableState.ended||(e=new Sd),r.call(t,e)):o&&!a?(t._writableState&&t._writableState.ended||(e=new Sd),r.call(t,e)):void 0},f=function(){t.req.on(\"finish\",c)};return!function(e){return e.setHeader&&\"function\"==typeof e.abort}(t)?o&&!t._writableState&&(t.on(\"end\",s),t.on(\"close\",s)):(t.on(\"complete\",c),t.on(\"abort\",h),t.req?f():t.on(\"request\",f)),t.on(\"end\",d),t.on(\"finish\",c),!1!==n.error&&t.on(\"error\",u),t.on(\"close\",h),function(){t.removeListener(\"complete\",c),t.removeListener(\"abort\",h),t.removeListener(\"request\",f),t.req&&t.req.removeListener(\"finish\",c),t.removeListener(\"end\",s),t.removeListener(\"close\",s),t.removeListener(\"finish\",c),t.removeListener(\"end\",d),t.removeListener(\"error\",u),t.removeListener(\"close\",h)}};function Ld(){if(xd)return kd;var e;function t(e,t,n){return(t=function(e){var t=function(e,t){if(\"object\"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||\"default\");if(\"object\"!=typeof r)return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");return\"symbol\"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}xd=1;var n=Rd,r=Symbol(\"lastResolve\"),i=Symbol(\"lastReject\"),o=Symbol(\"error\"),s=Symbol(\"ended\"),a=Symbol(\"lastPromise\"),c=Symbol(\"handlePromise\"),l=Symbol(\"stream\");function d(e,t){return{value:e,done:t}}function u(e){var t=e[r];if(null!==t){var n=e[l].read();null!==n&&(e[a]=null,e[r]=null,e[i]=null,t(d(n,!1)))}}function h(e){ca.nextTick(u,e)}var f=Object.getPrototypeOf((function(){})),p=Object.setPrototypeOf((t(e={get stream(){return this[l]},next:function(){var e=this,t=this[o];if(null!==t)return Promise.reject(t);if(this[s])return Promise.resolve(d(void 0,!0));if(this[l].destroyed)return new Promise((function(t,n){ca.nextTick((function(){e[o]?n(e[o]):t(d(void 0,!0))}))}));var n,r=this[a];if(r)n=new Promise(function(e,t){return function(n,r){e.then((function(){t[s]?n(d(void 0,!0)):t[c](n,r)}),r)}}(r,this));else{var i=this[l].read();if(null!==i)return Promise.resolve(d(i,!1));n=new Promise(this[c])}return this[a]=n,n}},Symbol.asyncIterator,(function(){return this})),t(e,\"return\",(function(){var e=this;return new Promise((function(t,n){e[l].destroy(null,(function(e){e?n(e):t(d(void 0,!0))}))}))})),e),f);return kd=function(e){var u,f=Object.create(p,(t(u={},l,{value:e,writable:!0}),t(u,r,{value:null,writable:!0}),t(u,i,{value:null,writable:!0}),t(u,o,{value:null,writable:!0}),t(u,s,{value:e._readableState.endEmitted,writable:!0}),t(u,c,{value:function(e,t){var n=f[l].read();n?(f[a]=null,f[r]=null,f[i]=null,e(d(n,!1))):(f[r]=e,f[i]=t)},writable:!0}),u));return f[a]=null,n(e,(function(e){if(e&&\"ERR_STREAM_PREMATURE_CLOSE\"!==e.code){var t=f[i];return null!==t&&(f[a]=null,f[r]=null,f[i]=null,t(e)),void(f[o]=e)}var n=f[r];null!==n&&(f[a]=null,f[r]=null,f[i]=null,n(d(void 0,!0))),f[s]=!0})),e.on(\"readable\",h.bind(null,f)),f},kd}function Od(){if(Pd)return Id;var e;Pd=1,Id=E,E.ReadableState=w,sc.EventEmitter;var t=function(e,t){return e.listeners(t).length},n=il(),r=sl.Buffer,i=(void 0!==le?le:\"undefined\"!=typeof window?window:\"undefined\"!=typeof self?self:{}).Uint8Array||function(){};var o,s=Yl;o=s&&s.debuglog?s.debuglog(\"stream\"):function(){};var a,c,l,d=Jl(),u=Xl(),h=od().getHighWaterMark,f=Ql.codes,p=f.ERR_INVALID_ARG_TYPE,g=f.ERR_STREAM_PUSH_AFTER_EOF,m=f.ERR_METHOD_NOT_IMPLEMENTED,y=f.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;fd(E,n);var v=u.errorOrDestroy,b=[\"error\",\"close\",\"destroy\",\"pause\",\"resume\"];function w(t,n,r){e=e||md(),t=t||{},\"boolean\"!=typeof r&&(r=n instanceof e),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=h(this,t,\"readableHighWaterMark\",r),this.buffer=new d,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==t.emitClose,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||\"utf8\",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(a||(a=Cd.StringDecoder),this.decoder=new a(t.encoding),this.encoding=t.encoding)}function E(t){if(e=e||md(),!(this instanceof E))return new E(t);var r=this instanceof e;this._readableState=new w(t,this,r),this.readable=!0,t&&(\"function\"==typeof t.read&&(this._read=t.read),\"function\"==typeof t.destroy&&(this._destroy=t.destroy)),n.call(this)}function C(e,t,n,s,a){o(\"readableAddChunk\",t);var c,l=e._readableState;if(null===t)l.reading=!1,function(e,t){if(o(\"onEofChunk\"),t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,t.sync?x(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,M(e)))}(e,l);else if(a||(c=function(e,t){var n;o=t,r.isBuffer(o)||o instanceof i||\"string\"==typeof t||void 0===t||e.objectMode||(n=new p(\"chunk\",[\"string\",\"Buffer\",\"Uint8Array\"],t));var o;return n}(l,t)),c)v(e,c);else if(l.objectMode||t&&t.length>0)if(\"string\"==typeof t||l.objectMode||Object.getPrototypeOf(t)===r.prototype||(t=function(e){return r.from(e)}(t)),s)l.endEmitted?v(e,new y):S(e,l,t,!0);else if(l.ended)v(e,new g);else{if(l.destroyed)return!1;l.reading=!1,l.decoder&&!n?(t=l.decoder.write(t),l.objectMode||0!==t.length?S(e,l,t,!1):A(e,l)):S(e,l,t,!1)}else s||(l.reading=!1,A(e,l));return!l.ended&&(l.length<l.highWaterMark||0===l.length)}function S(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(t.awaitDrain=0,e.emit(\"data\",n)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&x(e)),A(e,t)}Object.defineProperty(E.prototype,\"destroyed\",{enumerable:!1,get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),E.prototype.destroy=u.destroy,E.prototype._undestroy=u.undestroy,E.prototype._destroy=function(e,t){t(e)},E.prototype.push=function(e,t){var n,i=this._readableState;return i.objectMode?n=!0:\"string\"==typeof e&&((t=t||i.defaultEncoding)!==i.encoding&&(e=r.from(e,t),t=\"\"),n=!0),C(this,e,t,!1,n)},E.prototype.unshift=function(e){return C(this,e,null,!0,!1)},E.prototype.isPaused=function(){return!1===this._readableState.flowing},E.prototype.setEncoding=function(e){a||(a=Cd.StringDecoder);var t=new a(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var n=this._readableState.buffer.head,r=\"\";null!==n;)r+=t.write(n.data),n=n.next;return this._readableState.buffer.clear(),\"\"!==r&&this._readableState.buffer.push(r),this._readableState.length=r.length,this};var _=1073741824;function k(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=_?e=_:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function x(e){var t=e._readableState;o(\"emitReadable\",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(o(\"emitReadable\",t.flowing),t.emittedReadable=!0,ca.nextTick(M,e))}function M(e){var t=e._readableState;o(\"emitReadable_\",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit(\"readable\"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,O(e)}function A(e,t){t.readingMore||(t.readingMore=!0,ca.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&0===t.length);){var n=t.length;if(o(\"maybeReadMore read 0\"),e.read(0),n===t.length)break}t.readingMore=!1}function P(e){var t=e._readableState;t.readableListening=e.listenerCount(\"readable\")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount(\"data\")>0&&e.resume()}function R(e){o(\"readable nexttick read 0\"),e.read(0)}function L(e,t){o(\"resume\",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit(\"resume\"),O(e),t.flowing&&!t.reading&&e.read(0)}function O(e){var t=e._readableState;for(o(\"flow\",t.flowing);t.flowing&&null!==e.read(););}function T(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(\"\"):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function N(e){var t=e._readableState;o(\"endReadable\",t.endEmitted),t.endEmitted||(t.ended=!0,ca.nextTick(D,t,e))}function D(e,t){if(o(\"endReadableNT\",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit(\"end\"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function $(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}return E.prototype.read=function(e){o(\"read\",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return o(\"read: emitReadable\",t.length,t.ended),0===t.length&&t.ended?N(this):x(this),null;if(0===(e=k(e,t))&&t.ended)return 0===t.length&&N(this),null;var r,i=t.needReadable;return o(\"need readable\",i),(0===t.length||t.length-e<t.highWaterMark)&&o(\"length less than watermark\",i=!0),t.ended||t.reading?o(\"reading or ended\",i=!1):i&&(o(\"do read\"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=k(n,t))),null===(r=e>0?T(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&N(this)),null!==r&&this.emit(\"data\",r),r},E.prototype._read=function(e){v(this,new m(\"_read()\"))},E.prototype.pipe=function(e,n){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,o(\"pipe count=%d opts=%j\",i.pipesCount,n);var s=(!n||!1!==n.end)&&e!==ca.stdout&&e!==ca.stderr?c:g;function a(t,n){o(\"onunpipe\"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,o(\"cleanup\"),e.removeListener(\"close\",f),e.removeListener(\"finish\",p),e.removeListener(\"drain\",l),e.removeListener(\"error\",h),e.removeListener(\"unpipe\",a),r.removeListener(\"end\",c),r.removeListener(\"end\",g),r.removeListener(\"data\",u),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){o(\"onend\"),e.end()}i.endEmitted?ca.nextTick(s):r.once(\"end\",s),e.on(\"unpipe\",a);var l=function(e){return function(){var n=e._readableState;o(\"pipeOnDrain\",n.awaitDrain),n.awaitDrain&&n.awaitDrain--,0===n.awaitDrain&&t(e,\"data\")&&(n.flowing=!0,O(e))}}(r);e.on(\"drain\",l);var d=!1;function u(t){o(\"ondata\");var n=e.write(t);o(\"dest.write\",n),!1===n&&((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==$(i.pipes,e))&&!d&&(o(\"false write response, pause\",i.awaitDrain),i.awaitDrain++),r.pause())}function h(n){o(\"onerror\",n),g(),e.removeListener(\"error\",h),0===t(e,\"error\")&&v(e,n)}function f(){e.removeListener(\"finish\",p),g()}function p(){o(\"onfinish\"),e.removeListener(\"close\",f),g()}function g(){o(\"unpipe\"),r.unpipe(e)}return r.on(\"data\",u),function(e,t,n){if(\"function\"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,\"error\",h),e.once(\"close\",f),e.once(\"finish\",p),e.emit(\"pipe\",r),i.flowing||(o(\"pipe resume\"),r.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit(\"unpipe\",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o<i;o++)r[o].emit(\"unpipe\",this,{hasUnpiped:!1});return this}var s=$(t.pipes,e);return-1===s||(t.pipes.splice(s,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit(\"unpipe\",this,n)),this},E.prototype.on=function(e,t){var r=n.prototype.on.call(this,e,t),i=this._readableState;return\"data\"===e?(i.readableListening=this.listenerCount(\"readable\")>0,!1!==i.flowing&&this.resume()):\"readable\"===e&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,o(\"on readable\",i.length,i.reading),i.length?x(this):i.reading||ca.nextTick(R,this))),r},E.prototype.addListener=E.prototype.on,E.prototype.removeListener=function(e,t){var r=n.prototype.removeListener.call(this,e,t);return\"readable\"===e&&ca.nextTick(P,this),r},E.prototype.removeAllListeners=function(e){var t=n.prototype.removeAllListeners.apply(this,arguments);return\"readable\"!==e&&void 0!==e||ca.nextTick(P,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(o(\"resume\"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,ca.nextTick(L,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return o(\"call pause flowing=%j\",this._readableState.flowing),!1!==this._readableState.flowing&&(o(\"pause\"),this._readableState.flowing=!1,this.emit(\"pause\")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var i in e.on(\"end\",(function(){if(o(\"wrapped end\"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on(\"data\",(function(i){(o(\"wrapped data\"),n.decoder&&(i=n.decoder.write(i)),n.objectMode&&null==i)||(n.objectMode||i&&i.length)&&(t.push(i)||(r=!0,e.pause()))})),e)void 0===this[i]&&\"function\"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var s=0;s<b.length;s++)e.on(b[s],this.emit.bind(this,b[s]));return this._read=function(t){o(\"wrapped _read\",t),r&&(r=!1,e.resume())},this},\"function\"==typeof Symbol&&(E.prototype[Symbol.asyncIterator]=function(){return void 0===c&&(c=Ld()),c(this)}),Object.defineProperty(E.prototype,\"readableHighWaterMark\",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(E.prototype,\"readableBuffer\",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(E.prototype,\"readableFlowing\",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(e){this._readableState&&(this._readableState.flowing=e)}}),E._fromList=T,Object.defineProperty(E.prototype,\"readableLength\",{enumerable:!1,get:function(){return this._readableState.length}}),\"function\"==typeof Symbol&&(E.from=function(e,t){return void 0===l&&(l=Ad?Md:(Ad=1,Md=function(){throw new Error(\"Readable.from is not available in the browser\")})),l(E,e,t)}),Id}var Td=Hd,Nd=Ql.codes,Dd=Nd.ERR_METHOD_NOT_IMPLEMENTED,$d=Nd.ERR_MULTIPLE_CALLBACK,Bd=Nd.ERR_TRANSFORM_ALREADY_TRANSFORMING,Kd=Nd.ERR_TRANSFORM_WITH_LENGTH_0,jd=md();function Ud(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit(\"error\",new $d);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function Hd(e){if(!(this instanceof Hd))return new Hd(e);jd.call(this,e),this._transformState={afterTransform:Ud.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&(\"function\"==typeof e.transform&&(this._transform=e.transform),\"function\"==typeof e.flush&&(this._flush=e.flush)),this.on(\"prefinish\",Fd)}function Fd(){var e=this;\"function\"!=typeof this._flush||this._readableState.destroyed?zd(this,null,null):this._flush((function(t,n){zd(e,t,n)}))}function zd(e,t,n){if(t)return e.emit(\"error\",t);if(null!=n&&e.push(n),e._writableState.length)throw new Kd;if(e._transformState.transforming)throw new Bd;return e.push(null)}fd(Hd,jd),Hd.prototype.push=function(e,t){return this._transformState.needTransform=!1,jd.prototype.push.call(this,e,t)},Hd.prototype._transform=function(e,t,n){n(new Dd(\"_transform()\"))},Hd.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},Hd.prototype._read=function(e){var t=this._transformState;null===t.writechunk||t.transforming?t.needTransform=!0:(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform))},Hd.prototype._destroy=function(e,t){jd.prototype._destroy.call(this,e,(function(e){t(e)}))};var qd,Vd=Gd,Wd=Td;function Gd(e){if(!(this instanceof Gd))return new Gd(e);Wd.call(this,e)}fd(Gd,Wd),Gd.prototype._transform=function(e,t,n){n(null,e)};var Zd=Ql.codes,Yd=Zd.ERR_MISSING_ARGS,Jd=Zd.ERR_STREAM_DESTROYED;function Xd(e){if(e)throw e}function Qd(e){e()}function eu(e,t){return e.pipe(t)}var tu=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r,i=function(e){return e.length?\"function\"!=typeof e[e.length-1]?Xd:e.pop():Xd}(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Yd(\"streams\");var o=t.map((function(e,n){var s=n<t.length-1;return function(e,t,n,r){r=function(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}(r);var i=!1;e.on(\"close\",(function(){i=!0})),void 0===qd&&(qd=Rd),qd(e,{readable:t,writable:n},(function(e){if(e)return r(e);i=!0,r()}));var o=!1;return function(t){if(!i&&!o)return o=!0,function(e){return e.setHeader&&\"function\"==typeof e.abort}(e)?e.abort():\"function\"==typeof e.destroy?e.destroy():void r(t||new Jd(\"pipe\"))}}(e,s,n>0,(function(e){r||(r=e),e&&o.forEach(Qd),s||(o.forEach(Qd),i(r))}))}));return t.reduce(eu)};!function(e,t){(t=rl.exports=Od()).Stream=t,t.Readable=t,t.Writable=gd(),t.Duplex=md(),t.Transform=Td,t.PassThrough=Vd,t.finished=Rd,t.pipeline=tu}(0,rl.exports);var nu=rl.exports;function ru(e={}){const t={},n=new nu.Duplex({objectMode:!0,read:()=>{},write:function(n,o,s){let a=null;try{!n.id?function(n){e?.retryOnMessage&&n.method===e.retryOnMessage&&Object.values(t).forEach((({req:e,retryCount:n=0})=>{if(!e.id)return;if(n>=3)throw new Error(`StreamMiddleware - Retry limit exceeded for request id \"${e.id}\"`);const r=t[e.id];r&&(r.retryCount=n+1),i(e)}));r.emit(\"notification\",n)}(n):function(e){const{id:n}=e;if(null===n)return;const r=t[n];if(!r)return void console.warn(`StreamMiddleware - Unknown response id \"${n}\"`);delete t[n],Object.assign(r.res,e),setTimeout(r.end)}(n)}catch(e){a=e}s(a)}}),r=new Ic;return{events:r,middleware:(e,n,r,o)=>{t[e.id]={req:e,res:n,next:r,end:o},i(e)},stream:n};function i(e){n.push(e)}}var iu={},ou={exports:{}},su=function e(t,n){if(t&&n)return e(t)(n);if(\"function\"!=typeof t)throw new TypeError(\"need wrapper function\");return Object.keys(t).forEach((function(e){r[e]=t[e]})),r;function r(){for(var e=new Array(arguments.length),n=0;n<e.length;n++)e[n]=arguments[n];var r=t.apply(this,e),i=e[e.length-1];return\"function\"==typeof r&&r!==i&&Object.keys(i).forEach((function(e){r[e]=i[e]})),r}};var au=su;function cu(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function lu(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},n=e.name||\"Function wrapped with `once`\";return t.onceError=n+\" shouldn't be called more than once\",t.called=!1,t}ou.exports=au(cu),ou.exports.strict=au(lu),cu.proto=cu((function(){Object.defineProperty(Function.prototype,\"once\",{value:function(){return cu(this)},configurable:!0}),Object.defineProperty(Function.prototype,\"onceStrict\",{value:function(){return lu(this)},configurable:!0})}));var du=ou.exports,uu={};Object.defineProperty(uu,\"__esModule\",{value:!0}),uu.Substream=void 0;const hu=nu;class fu extends hu.Duplex{constructor({parent:e,name:t}){super({objectMode:!0}),this._parent=e,this._name=t}_read(){}_write(e,t,n){this._parent.push({name:this._name,data:e}),n()}}uu.Substream=fu;var pu=le&&le.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iu,\"__esModule\",{value:!0}),iu.ObjectMultiplex=void 0;const gu=nu,mu=pu(du),yu=uu,vu=Symbol(\"IGNORE_SUBSTREAM\");let bu=class extends gu.Duplex{constructor(e={}){super(Object.assign(Object.assign({},e),{objectMode:!0})),this._substreams={}}createStream(e){if(this.destroyed)throw new Error(`ObjectMultiplex - parent stream for name \"${e}\" already destroyed`);if(this._readableState.ended||this._writableState.ended)throw new Error(`ObjectMultiplex - parent stream for name \"${e}\" already ended`);if(!e)throw new Error(\"ObjectMultiplex - name must not be empty\");if(this._substreams[e])throw new Error(`ObjectMultiplex - Substream for name \"${e}\" already exists`);const t=new yu.Substream({parent:this,name:e});return this._substreams[e]=t,function(e,t){const n=(0,mu.default)(t);(0,gu.finished)(e,{readable:!1},n),(0,gu.finished)(e,{writable:!1},n)}(this,(e=>t.destroy(e||void 0))),t}ignoreStream(e){if(!e)throw new Error(\"ObjectMultiplex - name must not be empty\");if(this._substreams[e])throw new Error(`ObjectMultiplex - Substream for name \"${e}\" already exists`);this._substreams[e]=vu}_read(){}_write(e,t,n){const{name:r,data:i}=e;if(!r)return console.warn(`ObjectMultiplex - malformed chunk without name \"${e}\"`),n();const o=this._substreams[r];return o?(o!==vu&&o.push(i),n()):(console.warn(`ObjectMultiplex - orphaned data for stream \"${r}\"`),n())}};iu.ObjectMultiplex=bu;var wu=de(iu.ObjectMultiplex);const Eu=e=>null!==e&&\"object\"==typeof e&&\"function\"==typeof e.pipe;Eu.writable=e=>Eu(e)&&!1!==e.writable&&\"function\"==typeof e._write&&\"object\"==typeof e._writableState,Eu.readable=e=>Eu(e)&&!1!==e.readable&&\"function\"==typeof e._read&&\"object\"==typeof e._readableState,Eu.duplex=e=>Eu.writable(e)&&Eu.readable(e),Eu.transform=e=>Eu.duplex(e)&&\"function\"==typeof e._transform;var Cu,Su=Eu,_u=class extends nl{constructor(e,{jsonRpcStreamName:t,logger:n=console,maxEventListeners:r=100,rpcMiddleware:i=[]}){if(super({logger:n,maxEventListeners:r,rpcMiddleware:i}),!Su.duplex(e))throw new Error(ts.errors.invalidDuplexStream());this._handleStreamDisconnect=this._handleStreamDisconnect.bind(this);const o=new wu;nu.pipeline(e,o,e,this._handleStreamDisconnect.bind(this,\"MetaMask\")),this._jsonRpcConnection=ru({retryOnMessage:\"METAMASK_EXTENSION_CONNECT_CAN_RETRY\"}),nu.pipeline(this._jsonRpcConnection.stream,o.createStream(t),this._jsonRpcConnection.stream,this._handleStreamDisconnect.bind(this,\"MetaMask RpcProvider\")),this._rpcEngine.push(this._jsonRpcConnection.middleware),this._jsonRpcConnection.events.on(\"notification\",(t=>{const{method:n,params:r}=t;\"metamask_accountsChanged\"===n?this._handleAccountsChanged(r):\"metamask_unlockStateChanged\"===n?this._handleUnlockStateChanged(r):\"metamask_chainChanged\"===n?this._handleChainChanged(r):Oc.includes(n)?this.emit(\"message\",{type:n,data:r}):\"METAMASK_STREAM_FAILURE\"===n&&e.destroy(new Error(ts.errors.permanentlyDisconnected()))}))}async _initializeStateAsync(){let e;try{e=await this.request({method:\"metamask_getProviderState\"})}catch(e){this._log.error(\"MetaMask: Failed to get initial state. Please report this bug.\",e)}this._initializeState(e)}_handleStreamDisconnect(e,t){let n=`MetaMask: Lost connection to \"${e}\".`;t?.stack&&(n+=`\\n${t.stack}`),this._log.warn(n),this.listenerCount(\"error\")>0&&this.emit(\"error\",n),this._handleDisconnect(!1,t?t.message:void 0)}_handleChainChanged({chainId:e,networkVersion:t}={}){$c(e)&&(e=>Boolean(e)&&\"string\"==typeof e)(t)?\"loading\"===t?this._handleDisconnect(!0):super._handleChainChanged({chainId:e}):this._log.error(ts.errors.invalidNetworkParams(),{chainId:e,networkVersion:t})}},ku=class extends _u{constructor(e,{jsonRpcStreamName:t=\"metamask-provider\",logger:n=console,maxEventListeners:r=100,shouldSendMetadata:i}={}){if(super(e,{jsonRpcStreamName:t,logger:n,maxEventListeners:r,rpcMiddleware:Tc(n)}),this._sentWarnings={chainId:!1,networkVersion:!1,selectedAddress:!1,enable:!1,experimentalMethods:!1,send:!1,events:{close:!1,data:!1,networkChanged:!1,notification:!1}},qc(this,Cu,void 0),this._initializeStateAsync(),Vc(this,Cu,null),this.isMetaMask=!0,this._sendSync=this._sendSync.bind(this),this.enable=this.enable.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this._warnOfDeprecation=this._warnOfDeprecation.bind(this),this._metamask=this._getExperimentalApi(),this._jsonRpcConnection.events.on(\"notification\",(e=>{const{method:t}=e;Oc.includes(t)&&(this.emit(\"data\",e),this.emit(\"notification\",e.params.result))})),i)if(\"complete\"===document.readyState)Kc(this._rpcEngine,this._log);else{const e=()=>{Kc(this._rpcEngine,this._log),window.removeEventListener(\"DOMContentLoaded\",e)};window.addEventListener(\"DOMContentLoaded\",e)}}get chainId(){return this._sentWarnings.chainId||(this._log.warn(ts.warnings.chainIdDeprecation),this._sentWarnings.chainId=!0),super.chainId}get networkVersion(){return this._sentWarnings.networkVersion||(this._log.warn(ts.warnings.networkVersionDeprecation),this._sentWarnings.networkVersion=!0),zc(this,Cu)}get selectedAddress(){return this._sentWarnings.selectedAddress||(this._log.warn(ts.warnings.selectedAddressDeprecation),this._sentWarnings.selectedAddress=!0),super.selectedAddress}sendAsync(e,t){this._rpcRequest(e,t)}addListener(e,t){return this._warnOfDeprecation(e),super.addListener(e,t)}on(e,t){return this._warnOfDeprecation(e),super.on(e,t)}once(e,t){return this._warnOfDeprecation(e),super.once(e,t)}prependListener(e,t){return this._warnOfDeprecation(e),super.prependListener(e,t)}prependOnceListener(e,t){return this._warnOfDeprecation(e),super.prependOnceListener(e,t)}_handleDisconnect(e,t){super._handleDisconnect(e,t),zc(this,Cu)&&!e&&Vc(this,Cu,null)}_warnOfDeprecation(e){!1===this._sentWarnings?.events[e]&&(this._log.warn(ts.warnings.events[e]),this._sentWarnings.events[e]=!0)}async enable(){return this._sentWarnings.enable||(this._log.warn(ts.warnings.enableDeprecation),this._sentWarnings.enable=!0),new Promise(((e,t)=>{try{this._rpcRequest({method:\"eth_requestAccounts\",params:[]},Dc(e,t))}catch(e){t(e)}}))}send(e,t){return this._sentWarnings.send||(this._log.warn(ts.warnings.sendDeprecation),this._sentWarnings.send=!0),\"string\"!=typeof e||t&&!Array.isArray(t)?e&&\"object\"==typeof e&&\"function\"==typeof t?this._rpcRequest(e,t):this._sendSync(e):new Promise(((n,r)=>{try{this._rpcRequest({method:e,params:t},Dc(n,r,!1))}catch(e){r(e)}}))}_sendSync(e){let t;switch(e.method){case\"eth_accounts\":t=this.selectedAddress?[this.selectedAddress]:[];break;case\"eth_coinbase\":t=this.selectedAddress??null;break;case\"eth_uninstallFilter\":this._rpcRequest(e,Bc),t=!0;break;case\"net_version\":t=zc(this,Cu)??null;break;default:throw new Error(ts.errors.unsupportedSync(e.method))}return{id:e.id,jsonrpc:e.jsonrpc,result:t}}_getExperimentalApi(){return new Proxy({isUnlocked:async()=>(this._state.initialized||await new Promise((e=>{this.on(\"_initialized\",(()=>e()))})),this._state.isUnlocked),requestBatch:async e=>{if(!Array.isArray(e))throw Ya({message:\"Batch requests must be made with an array of request objects.\",data:e});return new Promise(((t,n)=>{this._rpcRequest(e,Dc(t,n))}))}},{get:(e,t,...n)=>(this._sentWarnings.experimentalMethods||(this._log.warn(ts.warnings.experimentalMethods),this._sentWarnings.experimentalMethods=!0),Reflect.get(e,t,...n))})}_handleChainChanged({chainId:e,networkVersion:t}={}){super._handleChainChanged({chainId:e,networkVersion:t}),this._state.isConnected&&t!==zc(this,Cu)&&(Vc(this,Cu,t),this._state.initialized&&this.emit(\"networkChanged\",zc(this,Cu)))}};Cu=new WeakMap;const xu=t(\"MM_SDK\");xu.color=\"#FFAC1C\";var Mu={},Au={};Object.defineProperty(Au,\"__esModule\",{value:!0}),Au.EthereumProviderError=Au.EthereumRpcError=void 0;const Iu=Ta;class Pu extends Error{constructor(e,t,n){if(!Number.isInteger(e))throw new Error('\"code\" must be an integer.');if(!t||\"string\"!=typeof t)throw new Error('\"message\" must be a nonempty string.');super(t),this.code=e,void 0!==n&&(this.data=n)}serialize(){const e={code:this.code,message:this.message};return void 0!==this.data&&(e.data=this.data),this.stack&&(e.stack=this.stack),e}toString(){return Iu.default(this.serialize(),Ru,2)}}Au.EthereumRpcError=Pu;function Ru(e,t){if(\"[Circular]\"!==t)return t}Au.EthereumProviderError=class extends Pu{constructor(e,t,n){if(!function(e){return Number.isInteger(e)&&e>=1e3&&e<=4999}(e))throw new Error('\"code\" must be an integer such that: 1000 <= code <= 4999');super(e,t,n)}};var Lu={},Ou={};Object.defineProperty(Ou,\"__esModule\",{value:!0}),Ou.errorValues=Ou.errorCodes=void 0,Ou.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}},Ou.errorValues={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"}},function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.serializeError=e.isValidCode=e.getMessageFromCode=e.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;const t=Ou,n=Au,r=t.errorCodes.rpc.internal,i=\"Unspecified error message. This is a bug, please report it.\",o={code:r,message:s(r)};function s(n,r=i){if(Number.isInteger(n)){const r=n.toString();if(d(t.errorValues,r))return t.errorValues[r].message;if(c(n))return e.JSON_RPC_SERVER_ERROR_MESSAGE}return r}function a(e){if(!Number.isInteger(e))return!1;const n=e.toString();return!!t.errorValues[n]||!!c(e)}function c(e){return e>=-32099&&e<=-32e3}function l(e){return e&&\"object\"==typeof e&&!Array.isArray(e)?Object.assign({},e):e}function d(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.JSON_RPC_SERVER_ERROR_MESSAGE=\"Unspecified server error.\",e.getMessageFromCode=s,e.isValidCode=a,e.serializeError=function(e,{fallbackError:t=o,shouldIncludeStack:r=!1}={}){var i,c;if(!t||!Number.isInteger(t.code)||\"string\"!=typeof t.message)throw new Error(\"Must provide fallback error with integer number code and string message.\");if(e instanceof n.EthereumRpcError)return e.serialize();const u={};if(e&&\"object\"==typeof e&&!Array.isArray(e)&&d(e,\"code\")&&a(e.code)){const t=e;u.code=t.code,t.message&&\"string\"==typeof t.message?(u.message=t.message,d(t,\"data\")&&(u.data=t.data)):(u.message=s(u.code),u.data={originalError:l(e)})}else{u.code=t.code;const n=null===(i=e)||void 0===i?void 0:i.message;u.message=n&&\"string\"==typeof n?n:t.message,u.data={originalError:l(e)}}const h=null===(c=e)||void 0===c?void 0:c.stack;return r&&e&&h&&\"string\"==typeof h&&(u.stack=h),u}}(Lu);var Tu={};Object.defineProperty(Tu,\"__esModule\",{value:!0}),Tu.ethErrors=void 0;const Nu=Au,Du=Lu,$u=Ou;function Bu(e,t){const[n,r]=ju(t);return new Nu.EthereumRpcError(e,n||Du.getMessageFromCode(e),r)}function Ku(e,t){const[n,r]=ju(t);return new Nu.EthereumProviderError(e,n||Du.getMessageFromCode(e),r)}function ju(e){if(e){if(\"string\"==typeof e)return[e];if(\"object\"==typeof e&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&\"string\"!=typeof t)throw new Error(\"Must specify string message.\");return[t||void 0,n]}}return[]}Tu.ethErrors={rpc:{parse:e=>Bu($u.errorCodes.rpc.parse,e),invalidRequest:e=>Bu($u.errorCodes.rpc.invalidRequest,e),invalidParams:e=>Bu($u.errorCodes.rpc.invalidParams,e),methodNotFound:e=>Bu($u.errorCodes.rpc.methodNotFound,e),internal:e=>Bu($u.errorCodes.rpc.internal,e),server:e=>{if(!e||\"object\"!=typeof e||Array.isArray(e))throw new Error(\"Ethereum RPC Server errors must provide single object argument.\");const{code:t}=e;if(!Number.isInteger(t)||t>-32005||t<-32099)throw new Error('\"code\" must be an integer such that: -32099 <= code <= -32005');return Bu(t,e)},invalidInput:e=>Bu($u.errorCodes.rpc.invalidInput,e),resourceNotFound:e=>Bu($u.errorCodes.rpc.resourceNotFound,e),resourceUnavailable:e=>Bu($u.errorCodes.rpc.resourceUnavailable,e),transactionRejected:e=>Bu($u.errorCodes.rpc.transactionRejected,e),methodNotSupported:e=>Bu($u.errorCodes.rpc.methodNotSupported,e),limitExceeded:e=>Bu($u.errorCodes.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>Ku($u.errorCodes.provider.userRejectedRequest,e),unauthorized:e=>Ku($u.errorCodes.provider.unauthorized,e),unsupportedMethod:e=>Ku($u.errorCodes.provider.unsupportedMethod,e),disconnected:e=>Ku($u.errorCodes.provider.disconnected,e),chainDisconnected:e=>Ku($u.errorCodes.provider.chainDisconnected,e),custom:e=>{if(!e||\"object\"!=typeof e||Array.isArray(e))throw new Error(\"Ethereum Provider custom errors must provide single object argument.\");const{code:t,message:n,data:r}=e;if(!n||\"string\"!=typeof n)throw new Error('\"message\" must be a nonempty string');return new Nu.EthereumProviderError(t,n,r)}}},function(e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.getMessageFromCode=e.serializeError=e.EthereumProviderError=e.EthereumRpcError=e.ethErrors=e.errorCodes=void 0;const t=Au;Object.defineProperty(e,\"EthereumRpcError\",{enumerable:!0,get:function(){return t.EthereumRpcError}}),Object.defineProperty(e,\"EthereumProviderError\",{enumerable:!0,get:function(){return t.EthereumProviderError}});const n=Lu;Object.defineProperty(e,\"serializeError\",{enumerable:!0,get:function(){return n.serializeError}}),Object.defineProperty(e,\"getMessageFromCode\",{enumerable:!0,get:function(){return n.getMessageFromCode}});const r=Tu;Object.defineProperty(e,\"ethErrors\",{enumerable:!0,get:function(){return r.ethErrors}});const i=Ou;Object.defineProperty(e,\"errorCodes\",{enumerable:!0,get:function(){return i.errorCodes}})}(Mu);var Uu={exports:{}};Uu.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=90)}({17:function(e,t,n){t.__esModule=!0,t.default=void 0;var r=n(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var n=t.match(e);return n&&n.length>0&&n[1]||\"\"},e.getSecondMatch=function(e,t){var n=t.match(e);return n&&n.length>1&&n[2]||\"\"},e.matchAndReturnConst=function(e,t,n){if(e.test(t))return n},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":case\"NT 5.1\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,n,r){void 0===r&&(r=!1);var i=e.getVersionPrecision(t),o=e.getVersionPrecision(n),s=Math.max(i,o),a=0,c=e.map([t,n],(function(t){var n=s-e.getVersionPrecision(t),r=t+new Array(n+1).join(\".0\");return e.map(r.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(r&&(a=s-Math.min(i,o)),s-=1;s>=a;){if(c[0][s]>c[1][s])return 1;if(c[0][s]===c[1][s]){if(s===a)return 0;s-=1}else if(c[0][s]<c[1][s])return-1}},e.map=function(e,t){var n,r=[];if(Array.prototype.map)return Array.prototype.map.call(e,t);for(n=0;n<e.length;n+=1)r.push(t(e[n]));return r},e.find=function(e,t){var n,r;if(Array.prototype.find)return Array.prototype.find.call(e,t);for(n=0,r=e.length;n<r;n+=1){var i=e[n];if(t(i,n))return i}},e.assign=function(e){for(var t,n,r=e,i=arguments.length,o=new Array(i>1?i-1:0),s=1;s<i;s++)o[s-1]=arguments[s];if(Object.assign)return Object.assign.apply(Object,[e].concat(o));var a=function(){var e=o[t];\"object\"==typeof e&&null!==e&&Object.keys(e).forEach((function(t){r[t]=e[t]}))};for(t=0,n=o.length;t<n;t+=1)a();return e},e.getBrowserAlias=function(e){return r.BROWSER_ALIASES_MAP[e]},e.getBrowserTypeByAlias=function(e){return r.BROWSER_MAP[e]||\"\"},e}();t.default=i,e.exports=t.default},18:function(e,t,n){t.__esModule=!0,t.ENGINE_MAP=t.OS_MAP=t.PLATFORMS_MAP=t.BROWSER_MAP=t.BROWSER_ALIASES_MAP=void 0,t.BROWSER_ALIASES_MAP={\"Amazon Silk\":\"amazon_silk\",\"Android Browser\":\"android\",Bada:\"bada\",BlackBerry:\"blackberry\",Chrome:\"chrome\",Chromium:\"chromium\",Electron:\"electron\",Epiphany:\"epiphany\",Firefox:\"firefox\",Focus:\"focus\",Generic:\"generic\",\"Google Search\":\"google_search\",Googlebot:\"googlebot\",\"Internet Explorer\":\"ie\",\"K-Meleon\":\"k_meleon\",Maxthon:\"maxthon\",\"Microsoft Edge\":\"edge\",\"MZ Browser\":\"mz\",\"NAVER Whale Browser\":\"naver\",Opera:\"opera\",\"Opera Coast\":\"opera_coast\",PhantomJS:\"phantomjs\",Puffin:\"puffin\",QupZilla:\"qupzilla\",QQ:\"qq\",QQLite:\"qqlite\",Safari:\"safari\",Sailfish:\"sailfish\",\"Samsung Internet for Android\":\"samsung_internet\",SeaMonkey:\"seamonkey\",Sleipnir:\"sleipnir\",Swing:\"swing\",Tizen:\"tizen\",\"UC Browser\":\"uc\",Vivaldi:\"vivaldi\",\"WebOS Browser\":\"webos\",WeChat:\"wechat\",\"Yandex Browser\":\"yandex\",Roku:\"roku\"},t.BROWSER_MAP={amazon_silk:\"Amazon Silk\",android:\"Android Browser\",bada:\"Bada\",blackberry:\"BlackBerry\",chrome:\"Chrome\",chromium:\"Chromium\",electron:\"Electron\",epiphany:\"Epiphany\",firefox:\"Firefox\",focus:\"Focus\",generic:\"Generic\",googlebot:\"Googlebot\",google_search:\"Google Search\",ie:\"Internet Explorer\",k_meleon:\"K-Meleon\",maxthon:\"Maxthon\",edge:\"Microsoft Edge\",mz:\"MZ Browser\",naver:\"NAVER Whale Browser\",opera:\"Opera\",opera_coast:\"Opera Coast\",phantomjs:\"PhantomJS\",puffin:\"Puffin\",qupzilla:\"QupZilla\",qq:\"QQ Browser\",qqlite:\"QQ Browser Lite\",safari:\"Safari\",sailfish:\"Sailfish\",samsung_internet:\"Samsung Internet for Android\",seamonkey:\"SeaMonkey\",sleipnir:\"Sleipnir\",swing:\"Swing\",tizen:\"Tizen\",uc:\"UC Browser\",vivaldi:\"Vivaldi\",webos:\"WebOS Browser\",wechat:\"WeChat\",yandex:\"Yandex Browser\"},t.PLATFORMS_MAP={tablet:\"tablet\",mobile:\"mobile\",desktop:\"desktop\",tv:\"tv\"},t.OS_MAP={WindowsPhone:\"Windows Phone\",Windows:\"Windows\",MacOS:\"macOS\",iOS:\"iOS\",Android:\"Android\",WebOS:\"WebOS\",BlackBerry:\"BlackBerry\",Bada:\"Bada\",Tizen:\"Tizen\",Linux:\"Linux\",ChromeOS:\"Chrome OS\",PlayStation4:\"PlayStation 4\",Roku:\"Roku\"},t.ENGINE_MAP={EdgeHTML:\"EdgeHTML\",Blink:\"Blink\",Trident:\"Trident\",Presto:\"Presto\",Gecko:\"Gecko\",WebKit:\"WebKit\"}},90:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(91))&&r.__esModule?r:{default:r},o=n(18);function s(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var a=function(){function e(){}var t,n,r;return e.getParser=function(e,t){if(void 0===t&&(t=!1),\"string\"!=typeof e)throw new Error(\"UserAgent should be a string\");return new i.default(e,t)},e.parse=function(e){return new i.default(e).getResult()},t=e,r=[{key:\"BROWSER_MAP\",get:function(){return o.BROWSER_MAP}},{key:\"ENGINE_MAP\",get:function(){return o.ENGINE_MAP}},{key:\"OS_MAP\",get:function(){return o.OS_MAP}},{key:\"PLATFORMS_MAP\",get:function(){return o.PLATFORMS_MAP}}],(n=null)&&s(t.prototype,n),r&&s(t,r),e}();t.default=a,e.exports=t.default},91:function(e,t,n){t.__esModule=!0,t.default=void 0;var r=c(n(92)),i=c(n(93)),o=c(n(94)),s=c(n(95)),a=c(n(17));function c(e){return e&&e.__esModule?e:{default:e}}var l=function(){function e(e,t){if(void 0===t&&(t=!1),null==e||\"\"===e)throw new Error(\"UserAgent parameter can't be empty\");this._ua=e,this.parsedResult={},!0!==t&&this.parse()}var t=e.prototype;return t.getUA=function(){return this._ua},t.test=function(e){return e.test(this._ua)},t.parseBrowser=function(){var e=this;this.parsedResult.browser={};var t=a.default.find(r.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.browser=t.describe(this.getUA())),this.parsedResult.browser},t.getBrowser=function(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()},t.getBrowserName=function(e){return e?String(this.getBrowser().name).toLowerCase()||\"\":this.getBrowser().name||\"\"},t.getBrowserVersion=function(){return this.getBrowser().version},t.getOS=function(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()},t.parseOS=function(){var e=this;this.parsedResult.os={};var t=a.default.find(i.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.os=t.describe(this.getUA())),this.parsedResult.os},t.getOSName=function(e){var t=this.getOS().name;return e?String(t).toLowerCase()||\"\":t||\"\"},t.getOSVersion=function(){return this.getOS().version},t.getPlatform=function(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()},t.getPlatformType=function(e){void 0===e&&(e=!1);var t=this.getPlatform().type;return e?String(t).toLowerCase()||\"\":t||\"\"},t.parsePlatform=function(){var e=this;this.parsedResult.platform={};var t=a.default.find(o.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.platform=t.describe(this.getUA())),this.parsedResult.platform},t.getEngine=function(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()},t.getEngineName=function(e){return e?String(this.getEngine().name).toLowerCase()||\"\":this.getEngine().name||\"\"},t.parseEngine=function(){var e=this;this.parsedResult.engine={};var t=a.default.find(s.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.engine=t.describe(this.getUA())),this.parsedResult.engine},t.parse=function(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this},t.getResult=function(){return a.default.assign({},this.parsedResult)},t.satisfies=function(e){var t=this,n={},r=0,i={},o=0;if(Object.keys(e).forEach((function(t){var s=e[t];\"string\"==typeof s?(i[t]=s,o+=1):\"object\"==typeof s&&(n[t]=s,r+=1)})),r>0){var s=Object.keys(n),c=a.default.find(s,(function(e){return t.isOS(e)}));if(c){var l=this.satisfies(n[c]);if(void 0!==l)return l}var d=a.default.find(s,(function(e){return t.isPlatform(e)}));if(d){var u=this.satisfies(n[d]);if(void 0!==u)return u}}if(o>0){var h=Object.keys(i),f=a.default.find(h,(function(e){return t.isBrowser(e,!0)}));if(void 0!==f)return this.compareVersion(i[f])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var n=this.getBrowserName().toLowerCase(),r=e.toLowerCase(),i=a.default.getBrowserTypeByAlias(r);return t&&i&&(r=i.toLowerCase()),r===n},t.compareVersion=function(e){var t=[0],n=e,r=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(n=e.substr(1),\"=\"===e[1]?(r=!0,n=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?n=e.substr(1):\"~\"===e[0]&&(r=!0,n=e.substr(1)),t.indexOf(a.default.compareVersions(i,n,r))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=l,e.exports=t.default},92:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=/version\\/(\\d+(\\.?_?\\d+)+)/i,s=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},n=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},n=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},n=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},n=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},n=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},n=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},n=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},n=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},n=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},n=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},n=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},n=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},n=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},n=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},n=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},n=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},n=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},n=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},n=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},n=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},n=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},n=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},n=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},n=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},n=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},n=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},n=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},n=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:function(e){var t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe:function(e){var t={name:\"Android Browser\"},n=i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},n=i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},n=i.default.getFirstMatch(o,e);return n&&(t.version=n),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=s,e.exports=t.default},93:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:o.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:o.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),n=i.default.getWindowsVersionName(t);return{name:o.OS_MAP.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:o.OS_MAP.iOS},n=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),n=i.default.getMacOSVersionName(t),r={name:o.OS_MAP.MacOS,version:t};return n&&(r.versionName=n),r}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:o.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),n=i.default.getAndroidVersionName(t),r={name:o.OS_MAP.Android,version:t};return n&&(r.versionName=n),r}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),n={name:o.OS_MAP.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:o.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:o.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:o.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:o.OS_MAP.PlayStation4,version:t}}}];t.default=s,e.exports=t.default},94:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",n={type:o.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(n.model=t),n}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:o.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];t.default=s,e.exports=t.default},95:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:o.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:o.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:o.ENGINE_MAP.Trident},n=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:o.ENGINE_MAP.Presto},n=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:function(e){var t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe:function(e){var t={name:o.ENGINE_MAP.Gecko},n=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:o.ENGINE_MAP.WebKit},n=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return n&&(t.version=n),t}}];t.default=s,e.exports=t.default}});var Hu=de(Uu.exports);const Fu={Initialized:\"initialized\",DisplayURI:\"display_uri\",ProviderUpdate:\"provider_update\",ConnectWithResponse:\"connectWithResponse\",ConnectionStatus:\"connection_status\",ServiceStatus:\"service_status\"};class zu{constructor({shouldSetOnWindow:e,connectionStream:t,shouldSendMetadata:n=!1,shouldShimWeb3:r,sdkInstance:i}){const o=new Wu({connectionStream:t,shouldSendMetadata:n,shouldSetOnWindow:e,shouldShimWeb3:r,autoRequestAccounts:!1}),s=new Proxy(o,{deleteProperty:()=>!0});if(this.provider=s,this.sdkInstance=i,e&&\"undefined\"!=typeof window)try{a=o,window.ethereum=a,window.dispatchEvent(new Event(\"ethereum#initialized\"))}catch(e){xu(\"[Ethereum] Unable to set global provider - window.ethereum may be read-only\",e)}var a;if(r&&\"undefined\"!=typeof window)try{!function(e,t=console){let n=!1,r=!1;if(!window.web3){const i=\"__isMetaMaskShim__\";let o={currentProvider:e};Object.defineProperty(o,i,{value:!0,enumerable:!0,configurable:!1,writable:!1}),o=new Proxy(o,{get:(o,s,...a)=>(\"currentProvider\"!==s||n?\"currentProvider\"===s||s===i||r||(r=!0,t.error(\"MetaMask no longer injects web3. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\"),e.request({method:\"metamask_logWeb3ShimUsage\"}).catch((e=>{t.debug(\"MetaMask: Failed to log web3 shim usage.\",e)}))):(n=!0,t.warn(\"You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\")),Reflect.get(o,s,...a)),set:(...e)=>(t.warn(\"You are accessing the MetaMask window.web3 shim. This object is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\"),Reflect.set(...e))}),Object.defineProperty(window,\"web3\",{value:o,enumerable:!1,configurable:!0,writable:!0})}}(this.provider)}catch(e){xu(\"[Ethereum] Unable to shim web3 - window.web3 may be read-only\",e)}this.provider.on(\"display_uri\",(e=>{this.sdkInstance.emit(Fu.DisplayURI,e)})),this.provider.on(\"_initialized\",(()=>{const e={chainId:this.provider.getChainId(),isConnected:this.provider.isConnected(),isMetaMask:this.provider.isMetaMask,selectedAddress:this.provider.getSelectedAddress(),networkVersion:this.provider.getNetworkVersion()};this.sdkInstance.emit(Fu.Initialized,e),xu(\"[Ethereum: constructor()] provider initialized\",e)}))}static init(e){var t;return xu(\"[Ethereum: init()] Initializing Ethereum service\"),this.instance=new zu(e),null===(t=this.instance)||void 0===t?void 0:t.provider}static destroy(){}static getInstance(){var e;if(!(null===(e=this.instance)||void 0===e?void 0:e.provider))throw new Error(\"Ethereum instance not intiialized - call Ethereum.factory first.\");return this.instance}static getProvider(){var e;if(!(null===(e=this.instance)||void 0===e?void 0:e.provider))throw new Error(\"Ethereum instance not intiialized - call Ethereum.factory first.\");return this.instance.provider}}class qu{constructor({useDeepLink:e,preferredOpenLink:t,debug:n=!1}){this.state={platformType:void 0,useDeeplink:!1,preferredOpenLink:void 0,debug:!1},this.state.platformType=this.getPlatformType(),this.state.useDeeplink=e,this.state.preferredOpenLink=t,this.state.debug=n}openDeeplink(e,t,n){return function(e,t,n,r){const{state:i}=e;xu(`[PlatfformManager: openDeeplink()] universalLink --\\x3e ${t}`),xu(`[PlatfformManager: openDeeplink()] deepLink --\\x3e ${n}`);try{if(i.preferredOpenLink)return void i.preferredOpenLink(i.useDeeplink?n:t,r);if(xu(`[PlatfformManager: openDeeplink()] open link now useDeepLink=${i.useDeeplink} link=${i.useDeeplink?n:t}`),i.useDeeplink)\"undefined\"!=typeof window&&(window.location.href=n);else if(\"undefined\"!=typeof document){const e=document.createElement(\"a\");e.href=t,e.target=\"_self\",e.rel=\"noreferrer noopener\",e.click()}}catch(e){console.log(\"[PlatfformManager: openDeeplink()] can't open link\",e)}}(this,e,t,n)}isReactNative(){var e;return this.isNotBrowser()&&\"undefined\"!=typeof window&&(null===window||void 0===window?void 0:window.navigator)&&\"ReactNative\"===(null===(e=window.navigator)||void 0===e?void 0:e.product)}isMetaMaskInstalled(){return function(){const e=zu.getProvider()||(null===window||void 0===window?void 0:window.ethereum);return xu(`[PlatfformManager: isMetaMaskInstalled()] isMetaMask=${null==e?void 0:e.isMetaMask} isConnected=${null==e?void 0:e.isConnected()}`),(null==e?void 0:e.isMetaMask)&&(null==e?void 0:e.isConnected())}()}isDesktopWeb(){return this.isBrowser()&&!this.isMobileWeb()}isMobile(){var e,t;const n=Hu.parse(window.navigator.userAgent);return\"mobile\"===(null===(e=null==n?void 0:n.platform)||void 0===e?void 0:e.type)||\"tablet\"===(null===(t=null==n?void 0:n.platform)||void 0===t?void 0:t.type)}isSecure(){return this.isReactNative()||this.isMobileWeb()}isMetaMaskMobileWebView(){return\"undefined\"!=typeof window&&(Boolean(window.ReactNativeWebView)&&Boolean(navigator.userAgent.endsWith(\"MetaMaskMobile\")))}isMobileWeb(){return this.state.platformType===Bo.MobileWeb}static isNotBrowser(){var e;return\"undefined\"==typeof window||!(null===window||void 0===window?void 0:window.navigator)||void 0!==c&&\"ReactNative\"===(null===(e=null==c?void 0:c.navigator)||void 0===e?void 0:e.product)||\"ReactNative\"===(null===navigator||void 0===navigator?void 0:navigator.product)}isNotBrowser(){return qu.isNotBrowser()}static isBrowser(){return!this.isNotBrowser()}isBrowser(){return qu.isBrowser()}isNodeJS(){return this.isNotBrowser()&&!this.isReactNative()}isUseDeepLink(){return this.state.useDeeplink}getPlatformType(){return function(e){const{state:t}=e;return t.platformType?t.platformType:e.isReactNative()?Bo.ReactNative:e.isNotBrowser()?Bo.NonBrowser:e.isMetaMaskMobileWebView()?Bo.MetaMaskMobileWebview:e.isMobile()?Bo.MobileWeb:Bo.DesktopWeb}(this)}}const Vu=e=>a(void 0,void 0,void 0,(function*(){if(qu.isBrowser()){const{StorageManagerWeb:t}=yield Promise.resolve().then((function(){return tf}));return new t(e)}const t={persistChannelConfig:()=>a(void 0,void 0,void 0,(function*(){})),getPersistedChannelConfig:()=>a(void 0,void 0,void 0,(function*(){})),persistAccounts:()=>a(void 0,void 0,void 0,(function*(){})),getCachedAccounts:()=>a(void 0,void 0,void 0,(function*(){return[]})),persistChainId:()=>a(void 0,void 0,void 0,(function*(){})),getCachedChainId:()=>a(void 0,void 0,void 0,(function*(){})),terminate:()=>a(void 0,void 0,void 0,(function*(){}))};return Promise.resolve(t)}));class Wu extends ku{constructor({connectionStream:e,shouldSendMetadata:t,autoRequestAccounts:n=!1}){super(e,{logger:console,maxEventListeners:100,shouldSendMetadata:t}),this.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:\"\",networkVersion:\"\"},xu(`[SDKProvider: constructor()] autoRequestAccounts=${n}`),this.state.autoRequestAccounts=n}forceInitializeState(){return a(this,void 0,void 0,(function*(){return xu(`[SDKProvider: forceInitializeState()] autoRequestAccounts=${this.state.autoRequestAccounts}`),this._initializeStateAsync()}))}_setConnected(){xu(\"[SDKProvider: _setConnected()] Setting connected state\"),this._state.isConnected=!0}getState(){return this._state}getSDKProviderState(){return this.state}getSelectedAddress(){var e;const{accounts:t}=this._state;return t&&0!==t.length?(null===(e=t[0])||void 0===e?void 0:e.toLowerCase())||\"\":(xu(\"[SDKProvider: getSelectedAddress] No accounts found\"),null)}getChainId(){return this.state.chainId}getNetworkVersion(){return this.state.networkVersion}setSDKProviderState(e){this.state=Object.assign(Object.assign({},this.state),e)}handleAccountsChanged(e,t){return this._handleAccountsChanged(e,t)}handleDisconnect({terminate:e=!1}){!function({terminate:e=!1,instance:t}){const{state:n}=t;xu(`[SDKProvider: handleDisconnect()] cleaning up provider state terminate=${e}`,t),e&&(t._state.accounts=null,t._state.isUnlocked=!1,t._state.isPermanentlyDisconnected=!0,t._state.initialized=!1),t._handleAccountsChanged([]),t._state.isConnected=!1,t.emit(\"disconnect\",Mu.ethErrors.provider.disconnected()),n.providerStateRequested=!1}({terminate:e,instance:this})}_initializeStateAsync(){return a(this,void 0,void 0,(function*(){return function(e){var t,n;return a(this,void 0,void 0,(function*(){void 0===e.state&&(e.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:\"\"});const{state:r}=e;let i;if(r.providerStateRequested)xu(\"[SDKProvider: initializeStateAsync()] initialization already in progress\");else{let o;r.providerStateRequested=!0;let s=null,a=!1,c=!1;const l=yield Vu({enabled:!0});if(l){const e=yield l.getPersistedChannelConfig({});a=null!==(t=null==e?void 0:e.relayPersistence)&&void 0!==t&&t,o=yield l.getCachedChainId();const n=yield l.getCachedAccounts();n.length>0&&(s=n[0])}if(xu(`[SDKProvider: initializeStateAsync()] relayPersistence=${a}`,{relayPersistence:a,cachedChainId:o,cachedSelectedAddress:s}),a)if(o&&s)i={accounts:[s],chainId:o,isUnlocked:!1},c=!0;else try{i=yield e.request({method:\"metamask_getProviderState\"})}catch(t){return e._log.error(\"MetaMask: Failed to get initial state. Please report this bug.\",t),void(r.providerStateRequested=!1)}if(0===(null===(n=null==i?void 0:i.accounts)||void 0===n?void 0:n.length))if(e.getSelectedAddress())i.accounts=[e.getSelectedAddress()];else{xu(\"[SDKProvider: initializeStateAsync()] Fetch accounts remotely.\");const t=yield e.request({method:\"eth_requestAccounts\",params:[]});i.accounts=t}e._initializeState(i),r.providerStateRequested=!1,c&&(e._state.isConnected=!0,e.emit(\"connect\",{chainId:null==i?void 0:i.chainId}))}}))}(this)}))}_initializeState(e){return xu(\"[SDKProvider: _initializeState()]\",e),function(e,t,n){return xu(\"[SDKProvider: initializeState()] set state._initialized to false\"),e._state.initialized=!1,t(n)}(this,super._initializeState.bind(this),e)}_handleChainChanged({chainId:e,networkVersion:t}={}){this.state.chainId=e,this.state.networkVersion=t,function({instance:e,chainId:t,networkVersion:n,superHandleChainChanged:r}){xu(`[SDKProvider: handleChainChanged()] chainId=${t} networkVersion=${n}`);let i=n;n||(xu(\"[SDKProvider: handleChainChanged()] forced network version to prevent provider error\"),i=\"1\"),e._state.isConnected=!0,e.emit(\"connect\",{chainId:t}),r({chainId:t,networkVersion:i})}({instance:this,chainId:e,networkVersion:t,superHandleChainChanged:super._handleChainChanged.bind(this)})}}var Gu,Zu={name:\"@metamask/sdk\",version:\"0.31.5\",description:\"\",homepage:\"https://github.com/MetaMask/metamask-sdk#readme\",bugs:{url:\"https://github.com/MetaMask/metamask-sdk/issues\"},repository:{type:\"git\",url:\"https://github.com/MetaMask/metamask-sdk\",directory:\"packages/sdk\"},main:\"dist/node/cjs/metamask-sdk.js\",module:\"dist/browser/es/metamask-sdk.js\",browser:\"dist/browser/es/metamask-sdk.js\",unpkg:\"dist/browser/umd/metamask-sdk.js\",\"react-native\":\"dist/react-native/es/metamask-sdk.js\",types:\"dist/types/src/index.d.ts\",sideEffects:!1,files:[\"/dist\"],scripts:{\"build:types\":\"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types\",build:\"yarn build:types && rollup -c --bundleConfigAsCjs\",\"build:clean\":\"yarn clean && yarn build\",\"build:dev\":\"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs\",\"build:post-tsc\":\"echo 'N/A'\",\"build:pre-tsc\":\"echo 'N/A'\",typecheck:\"tsc --noEmit\",clean:\"rimraf ./dist\",size:\"node bundle-size && size-limit\",lint:\"yarn lint:eslint && yarn lint:misc --check\",\"lint:changelog\":\"../../scripts/validate-changelog.sh @metamask/sdk\",\"lint:eslint\":\"eslint . --cache --ext js,ts\",\"lint:fix\":\"yarn lint:eslint --fix && yarn lint:misc --write\",\"lint:misc\":\"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore\",prepack:\"../../scripts/prepack.sh\",\"publish:preview\":\"yarn npm publish --tag preview\",reset:\"yarn clean && rimraf ./node_modules/\",test:'jest --testPathIgnorePatterns \"/e2e/\"',\"test:coverage\":'jest --coverage --testPathIgnorePatterns \"/e2e/\"',\"test:e2e\":'jest --testPathPattern \"/e2e/\"',\"test:ci\":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns \"/e2e/\"',\"test:dev\":'jest -c ./jest.config.ts --detectOpenHandles --testPathIgnorePatterns \"/e2e/\"',watch:\"rollup -c -w\"},dependencies:{\"@babel/runtime\":\"^7.26.0\",\"@metamask/onboarding\":\"^1.0.1\",\"@metamask/providers\":\"16.1.0\",\"@metamask/sdk-communication-layer\":\"workspace:*\",\"@metamask/sdk-install-modal-web\":\"workspace:*\",\"@paulmillr/qr\":\"^0.2.1\",bowser:\"^2.9.0\",\"cross-fetch\":\"^4.0.0\",debug:\"^4.3.4\",eciesjs:\"^0.4.11\",\"eth-rpc-errors\":\"^4.0.3\",eventemitter2:\"^6.4.9\",\"obj-multiplex\":\"^1.0.0\",pump:\"^3.0.0\",\"readable-stream\":\"^3.6.2\",\"socket.io-client\":\"^4.5.1\",tslib:\"^2.6.0\",util:\"^0.12.4\",uuid:\"^8.3.2\"},devDependencies:{\"@jest/globals\":\"^29.3.1\",\"@lavamoat/allow-scripts\":\"^2.3.1\",\"@metamask/auto-changelog\":\"3.1.0\",\"@metamask/eslint-config\":\"^6.0.0\",\"@metamask/eslint-config-nodejs\":\"^6.0.0\",\"@metamask/eslint-config-typescript\":\"^6.0.0\",\"@react-native-async-storage/async-storage\":\"^1.19.6\",\"@rollup/plugin-alias\":\"^5.1.1\",\"@rollup/plugin-commonjs\":\"^25.0.7\",\"@rollup/plugin-json\":\"^6.0.0\",\"@rollup/plugin-node-resolve\":\"^15.0.2\",\"@rollup/plugin-replace\":\"^6.0.1\",\"@rollup/plugin-terser\":\"^0.4.1\",\"@size-limit/preset-big-lib\":\"^11.0.2\",\"@types/dom-screen-wake-lock\":\"^1.0.2\",\"@types/node\":\"^20.1.3\",\"@types/pump\":\"^1.1.1\",\"@types/qrcode-terminal\":\"^0.12.0\",\"@types/uuid\":\"^10.0.0\",\"@typescript-eslint/eslint-plugin\":\"^4.26.0\",\"@typescript-eslint/parser\":\"^4.26.0\",\"browserify-zlib\":\"^0.2.0\",buffer:\"^6.0.3\",\"crypto-browserify\":\"^3.12.0\",eslint:\"^7.30.0\",\"eslint-config-prettier\":\"^8.3.0\",\"eslint-plugin-import\":\"^2.23.4\",\"eslint-plugin-jest\":\"^24.4.0\",\"eslint-plugin-jsdoc\":\"^36.1.0\",\"eslint-plugin-node\":\"^11.1.0\",\"eslint-plugin-prettier\":\"^3.4.0\",\"https-browserify\":\"^1.0.0\",jest:\"^29.3.1\",\"jest-environment-jsdom\":\"^29.3.1\",prettier:\"^2.3.0\",process:\"^0.11.10\",rimraf:\"^4.4.0\",rollup:\"^4.26.0\",\"rollup-plugin-analyzer\":\"^4.0.0\",\"rollup-plugin-jscc\":\"^2.0.0\",\"rollup-plugin-natives\":\"^0.7.5\",\"rollup-plugin-node-builtins\":\"^2.1.2\",\"rollup-plugin-polyfill-node\":\"^0.13.0\",\"rollup-plugin-sizes\":\"^1.0.6\",\"rollup-plugin-typescript2\":\"^0.31.2\",\"rollup-plugin-visualizer\":\"^5.12.0\",\"size-limit\":\"^11.0.2\",\"stream-browserify\":\"^3.0.0\",\"stream-http\":\"^3.2.0\",\"ts-jest\":\"^29.0.3\",\"ts-node\":\"^10.9.1\",typescript:\"^4.3.2\",url:\"^0.11.0\",webpack:\"^5.0.0\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},lavamoat:{allowScripts:{\"eciesjs>secp256k1\":!1,\"socket.io-client>engine.io-client>ws>bufferutil\":!1,\"socket.io-client>engine.io-client>ws>utf-8-validate\":!1,\"@metamask/sdk-communication-layer>bufferutil\":!1,\"@metamask/sdk-communication-layer>eciesjs>secp256k1\":!1,\"@metamask/sdk-communication-layer>utf-8-validate\":!1}}};!function(e){e.INPAGE=\"metamask-inpage\",e.CONTENT_SCRIPT=\"metamask-contentscript\",e.PROVIDER=\"metamask-provider\"}(Gu||(Gu={}));const Yu=\"direct\",Ju=\"https://metamask.app.link/connect\",Xu=\"metamask://connect\",Qu={NAME:\"MetaMask\",RDNS:[\"io.metamask\",\"io.metamask.flask\"]},eh=/(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u,th={METAMASK_GETPROVIDERSTATE:\"metamask_getProviderState\",METAMASK_CONNECTSIGN:\"metamask_connectSign\",METAMASK_CONNECTWITH:\"metamask_connectWith\",METAMASK_OPEN:\"metamask_open\",METAMASK_BATCH:\"metamask_batch\",PERSONAL_SIGN:\"personal_sign\",WALLET_REQUESTPERMISSIONS:\"wallet_requestPermissions\",WALLET_REVOKEPERMISSIONS:\"wallet_revokePermissions\",WALLET_GETPERMISSIONS:\"wallet_getPermissions\",WALLET_WATCHASSET:\"wallet_watchAsset\",WALLET_ADDETHEREUMCHAIN:\"wallet_addEthereumChain\",WALLET_SWITCHETHETHEREUMCHAIN:\"wallet_switchEthereumChain\",ETH_REQUESTACCOUNTS:\"eth_requestAccounts\",ETH_ACCOUNTS:\"eth_accounts\",ETH_CHAINID:\"eth_chainId\",ETH_SENDTRANSACTION:\"eth_sendTransaction\",ETH_SIGNTYPEDDATA:\"eth_signTypedData\",ETH_SIGNTYPEDDATA_V3:\"eth_signTypedData_v3\",ETH_SIGNTYPEDDATA_V4:\"eth_signTypedData_v4\",ETH_SIGNTRANSACTION:\"eth_signTransaction\",ETH_SIGN:\"eth_sign\",PERSONAL_EC_RECOVER:\"personal_ecRecover\"},nh={[th.ETH_REQUESTACCOUNTS]:!0,[th.ETH_SENDTRANSACTION]:!0,[th.ETH_SIGNTRANSACTION]:!0,[th.ETH_SIGN]:!0,[th.PERSONAL_SIGN]:!0,[th.ETH_ACCOUNTS]:!1,[th.ETH_CHAINID]:!1,[th.PERSONAL_SIGN]:!0,[th.ETH_SIGNTYPEDDATA]:!0,[th.ETH_SIGNTYPEDDATA_V3]:!0,[th.ETH_SIGNTYPEDDATA_V4]:!0,[th.WALLET_REQUESTPERMISSIONS]:!0,[th.WALLET_GETPERMISSIONS]:!0,[th.WALLET_WATCHASSET]:!0,[th.WALLET_ADDETHEREUMCHAIN]:!0,[th.WALLET_SWITCHETHETHEREUMCHAIN]:!0,[th.METAMASK_CONNECTSIGN]:!0,[th.METAMASK_CONNECTWITH]:!0,[th.PERSONAL_EC_RECOVER]:!0,[th.METAMASK_BATCH]:!0,[th.METAMASK_OPEN]:!0},rh=Object.keys(nh).map((e=>e.toLowerCase())),ih=[\"eth_signTypedData\",\"eth_signTypedData_v3\",\"eth_signTypedData_v4\",\"eth_sign\"].map((e=>e.toLowerCase())),oh=\".sdk-comm\",sh=\"providerType\",ah=\".MMSDK_cached_address\",ch=\".MMSDK_cached_chainId\",lh={CHAIN_CHANGED:\"chainChanged\",ACCOUNTS_CHANGED:\"accountsChanged\",DISCONNECT:\"disconnect\",CONNECT:\"connect\",CONNECTED:\"connected\"};var dh;!function(e){e.TERMINATE=\"terminate\",e.EXTENSION=\"extension\",e.INITIALIZED=\"initialized\"}(dh||(dh={}));const uh=\"undefined\"!=typeof window&&window.localStorage;function hh({instance:e,msg:t}){return a(this,void 0,void 0,(function*(){if(e._initialized||(xu(\"[MetaMaskSDK: connectAndSign()] provider not ready -- wait for init()\"),yield e.init()),xu(`[MetaMaskSDK: connectAndSign()] activeProvider=${e.activeProvider}`),!e.activeProvider)throw new Error(\"SDK state invalid -- undefined provider\");const n=/^0x([0-9A-Fa-f]{2})*$/u.test(t)?t:function(e){let t;if(void 0!==S)t=S.from(e,\"utf8\").toString(\"hex\");else if(\"undefined\"!=typeof TextEncoder){const n=(new TextEncoder).encode(e);t=Array.from(n).map((e=>e.toString(16).padStart(2,\"0\"))).join(\"\")}else{if(\"object\"!=typeof c||!(\"Buffer\"in c))throw new Error(\"Unable to convert string to hex: No available method.\");t=c.Buffer.from(e,\"utf8\").toString(\"hex\")}return`0x${t}`}(t);return e.activeProvider.request({method:th.METAMASK_CONNECTWITH,params:[{method:th.PERSONAL_SIGN,params:[n]}]})}))}function fh(e){var t,n;return a(this,void 0,void 0,(function*(){xu(\"[MetaMaskSDK: connectWithExtensionProvider()] \",e),e.sdkProvider=e.activeProvider,e.activeProvider=window.extension,window.ethereum=window.extension;try{const e=yield null===(t=window.extension)||void 0===t?void 0:t.request({method:\"eth_requestAccounts\"});xu(`[MetaMaskSDK: connectWithExtensionProvider()] accounts=${e}`)}catch(e){return void console.warn(\"[MetaMaskSDK: connectWithExtensionProvider()] can't request accounts error\",e)}localStorage.setItem(sh,\"extension\"),e.extensionActive=!0,e.emit(Fu.ProviderUpdate,dh.EXTENSION),e.options.enableAnalytics&&(null===(n=e.analytics)||void 0===n||n.send({event:So.SDK_USE_EXTENSION}))}))}function ph(e){let t;if(void 0!==S)t=S.from(e,\"utf8\").toString(\"base64\");else if(\"function\"==typeof btoa)t=btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/gu,((e,t)=>String.fromCharCode(parseInt(t,16)))));else{if(\"object\"!=typeof c||!(\"Buffer\"in c))throw new Error(\"Unable to base64 encode: No available method.\");t=c.Buffer.from(e,\"utf8\").toString(\"base64\")}return t}function gh(e,t,n,r){var i,o,s,c,l,d,u,h,f,p,g,m,y,v,b,w,E,C,_,k;return a(this,void 0,void 0,(function*(){const n=null===(i=e.state.remote)||void 0===i?void 0:i.isReady(),a=null===(o=e.state.remote)||void 0===o?void 0:o.isConnected(),x=null===(s=e.state.remote)||void 0===s?void 0:s.isPaused(),M=zu.getProvider(),A=null===(c=e.state.remote)||void 0===c?void 0:c.getChannelId(),I=null===(l=e.state.remote)||void 0===l?void 0:l.isAuthorized(),{deeplinkProtocol:P}=e.state,{method:R,data:L,triggeredInstaller:O}=(e=>{var t,n,r,i;let o;S.isBuffer(e)?(o=e.toJSON(),o._isBuffer=!0):o=e;const s=null===(t=null==o?void 0:o.data)||void 0===t?void 0:t.method;let a=!1;return\"object\"==typeof(null===(n=null==o?void 0:o.data)||void 0===n?void 0:n.params)&&!0===(null===(i=null===(r=null==o?void 0:o.data)||void 0===r?void 0:r.params)||void 0===i?void 0:i.__triggeredInstaller)&&(a=!0,o.data.params=o.data.params.wrappedParams),{method:s,data:o,triggeredInstaller:a}})(t);if(xu(`[RCPMS: write()] method='${R}' isRemoteReady=${n} channelId=${A} isSocketConnected=${a} isRemotePaused=${x} providerConnected=${M.isConnected()}`,t),!A)return R!==th.METAMASK_GETPROVIDERSTATE&&xu(`[RCPMS: write()] ${R} --\\x3e channelId is undefined`),r(new Error(\"disconnected\"));xu(`[RCPMS: write()] remote.isPaused()=${null===(d=e.state.remote)||void 0===d?void 0:d.isPaused()} authorized=${I} ready=${n} socketConnected=${a}`,t);const T=null===(u=e.state.platformManager)||void 0===u?void 0:u.isSecure(),N=null!==(f=null===(h=e.state.platformManager)||void 0===h?void 0:h.isMobileWeb())&&void 0!==f&&f,D=null!==(g=null===(p=e.state.remote)||void 0===p?void 0:p.hasDeeplinkProtocol())&&void 0!==g&&g&&N&&I;try{if(console.warn(`[RCPMS: _write()] triggeredInstaller=${O} activeDeeplinkProtocol=${D}`),O||null===(m=e.state.remote)||void 0===m||m.sendMessage(null==L?void 0:L.data).then((()=>{xu(`[RCPMS: _write()] ${R} sent successfully`)})).catch((e=>{xu(\"[RCPMS: _write()] error sending message\",e)})),!T)return xu(`[RCPMS: _write()] unsecure platform for method ${R} -- return callback`),r();if(O)return xu(\"[RCPMS: _write()] prevent deeplink -- installation completed separately.\"),r();const t=null!==(b=null===(v=null===(y=e.state.remote)||void 0===y?void 0:y.getKeyInfo())||void 0===v?void 0:v.ecies.public)&&void 0!==b?b:\"\";let n=encodeURI(`channelId=${A}&pubkey=${t}&comm=socket&t=d&v=2`);if(D){const t=JSON.stringify(null==L?void 0:L.data),i=null===(w=e.state.remote)||void 0===w?void 0:w.encrypt(t);if(!i)return xu(\"[RCPMS: _write()] error encrypting message\"),r(new Error(\"RemoteCommunicationPostMessageStream - disconnected\"));n+=`&scheme=${P}&rpc=${ph(i)}`}if(!(null===(E=e.state.platformManager)||void 0===E?void 0:E.isMetaMaskInstalled()))return xu(\"[RCPMS: _write()] prevent deeplink until installation is completed.\"),r();nh[R]?(xu(`[RCPMS: _write()] redirect link for '${R}' socketConnected=${a} connect?${n}`),null===(C=e.state.platformManager)||void 0===C||C.openDeeplink(`${Ju}?${n}`,`${Xu}?${n}`,\"_self\")):(null===(_=e.state.remote)||void 0===_?void 0:_.isPaused())?(xu(`[RCPMS: _write()] MM is PAUSED! deeplink with connect! targetMethod=${R}`),null===(k=e.state.platformManager)||void 0===k||k.openDeeplink(`${Ju}?redirect=true&${n}`,`${Xu}?redirect=true&${n}`,\"_self\")):xu(`[RCPMS: _write()] method ${R} doesn't need redirect.`)}catch(e){return xu(\"[RCPMS: _write()] error sending message\",e),r(new Error(\"RemoteCommunicationPostMessageStream - disconnected\"))}return r()}))}class mh extends nu.Duplex{constructor({name:e,remote:t,deeplinkProtocol:n,platformManager:r}){super({objectMode:!0}),this.state={_name:null,remote:null,deeplinkProtocol:!1,platformManager:null},this.state._name=e,this.state.remote=t,this.state.deeplinkProtocol=n,this.state.platformManager=r,this._onMessage=this._onMessage.bind(this),this.state.remote.on(bo.MESSAGE,this._onMessage)}_write(e,t,n){return a(this,void 0,void 0,(function*(){return gh(this,e,0,n)}))}_read(){}_onMessage(e){return function(e,t){try{if(xu(\"[RCPMS: onMessage()] message\",t),!t||\"object\"!=typeof t)return;if(\"object\"!=typeof(null==t?void 0:t.data))return;if(!(null==t?void 0:t.name))return void xu(\"[RCPMS: onMessage()] ignore message without name\",t);if((null==t?void 0:t.name)!==Gu.PROVIDER)return void xu(`[RCPMS: onMessage()] ignore message with wrong name message=${t}`);if(S.isBuffer(t)){const n=S.from(t);e.push(n)}else e.push(t)}catch(e){xu(`[RCPMS: onMessage()] ignore message error err=${e}`)}}(this,e)}start(){}}let yh=1;const vh=e=>new Promise((t=>{setTimeout((()=>{t(!0)}),e)})),bh=({checkInstallationOnAllCalls:t=!1,communicationLayerPreference:n,injectProvider:r,shouldShimWeb3:i,platformManager:o,installer:s,sdk:c,remoteConnection:l,debug:d})=>a(void 0,void 0,void 0,(function*(){var u,h;const f=(({name:e,remoteConnection:t})=>{if(!t||!(null==t?void 0:t.getConnector()))throw new Error(\"Missing remote connection parameter\");return new mh({name:e,remote:null==t?void 0:t.getConnector(),deeplinkProtocol:null==t?void 0:t.state.deeplinkProtocol,platformManager:null==t?void 0:t.getPlatformManager()})})({name:Gu.INPAGE,target:Gu.CONTENT_SCRIPT,platformManager:o,communicationLayerPreference:n,remoteConnection:l}),p=o.getPlatformType(),g=c.options.dappMetadata,m=`Sdk/Javascript SdkVersion/${Zu.version} Platform/${p} dApp/${null!==(u=g.url)&&void 0!==u?u:g.name} dAppTitle/${g.name}`;let y=null,v=null;const b=null===(h=c.options.storage)||void 0===h?void 0:h.storageManager;if(b){try{const e=yield b.getCachedAccounts();e.length>0&&(y=e[0])}catch(e){console.error(`[initializeMobileProvider] failed to get cached addresses: ${e}`)}try{const e=yield b.getCachedChainId();e&&(v=e)}catch(e){console.error(`[initializeMobileProvider] failed to parse cached chainId: ${e}`)}}xu(`[initializeMobileProvider] cachedAccountAddress: ${y}, cachedChainId: ${v}`);const w=!(!r||p===Bo.NonBrowser||p===Bo.ReactNative),E=zu.init({shouldSetOnWindow:w,connectionStream:f,shouldShimWeb3:i,sdkInstance:c});let C=!1;const S=e=>{C=e},_=()=>C,k=(n,r,i,d)=>a(void 0,void 0,void 0,(function*(){var u,h,f,p,g,w,E,k,x;const M=zu.getProvider();if(C){M.emit(\"display_uri\",(null==l?void 0:l.state.qrcodeLink)||\"\"),null==l||l.showActiveModal();let e=_();for(;e;){const t=_(),n=null==l?void 0:l.isAuthorized();e=t&&!n,xu(`[initializeMobileProvider: sendRequest()] waiting for initialization to complete - initializing: ${t} authorized: ${n}`),yield vh(1e3)}return xu(\"[initializeMobileProvider: sendRequest()] initial method completed -- prevent installation and call provider\"),i(...r)}const A=o.isMetaMaskInstalled(),I=null==l?void 0:l.isConnected();let P=null,R=null,L=null;if(P=null!==(u=M.getSelectedAddress())&&void 0!==u?u:y,L=M.getChainId()||v,P&&b&&P!==y&&b.persistAccounts([P]).catch((e=>{console.error(`[initializeMobileProvider] failed to persist account: ${e}`)})),L&&(v=L,b&&b.persistChainId(L).catch((e=>{console.error(`[initializeMobileProvider] failed to persist chainId: ${e}`)}))),xu(\"[initializeMobileProvider: sendRequest()]\",{selectedAddress:P,chainId:L}),d&&xu(`[initializeMobileProvider: sendRequest()] method=${n} ongoing=${C} selectedAddress=${P} isInstalled=${A} checkInstallationOnAllCalls=${t} socketConnected=${I}`),P&&n.toLowerCase()===th.ETH_ACCOUNTS.toLowerCase())return[P];if(L&&n.toLowerCase()===th.ETH_CHAINID.toLowerCase())return L;const O=[th.ETH_REQUESTACCOUNTS,th.WALLET_REQUESTPERMISSIONS,th.METAMASK_CONNECTSIGN,th.METAMASK_CONNECTWITH],T=!nh[n],N=null===(h=c.options.readonlyRPCMap)||void 0===h?void 0:h[L];if(N&&T)try{const t=null===(f=null==r?void 0:r[0])||void 0===f?void 0:f.params,i=yield(({rpcEndpoint:t,method:n,sdkInfo:r,params:i})=>a(void 0,void 0,void 0,(function*(){const o=JSON.stringify({jsonrpc:\"2.0\",method:n,params:i,id:(yh+=1,yh)}),s={Accept:\"application/json\",\"Content-Type\":\"application/json\"};let a;t.includes(\"infura\")&&(s[\"Metamask-Sdk-Info\"]=r);try{a=yield e(t,{method:\"POST\",headers:s,body:o})}catch(e){throw e instanceof Error?new Error(`Failed to fetch from RPC: ${e.message}`):new Error(`Failed to fetch from RPC: ${e}`)}if(!a.ok)throw new Error(`Server responded with a status of ${a.status}`);return(yield a.json()).result})))({rpcEndpoint:N,sdkInfo:m,method:n,params:t||[]});return d&&xu(`initializeProvider::ReadOnlyRPCResponse ${i}`),i}catch(e){console.warn(`[initializeMobileProvider: sendRequest()] method=${n} readOnlyRPCRequest failed:`,e)}if((!A||A&&!I)&&n!==th.METAMASK_GETPROVIDERSTATE){const e=(null===(p=null==r?void 0:r[0])||void 0===p?void 0:p.params)||[];if(-1!==O.indexOf(n)||t){S(!0);const t=n===th.METAMASK_CONNECTWITH,o=`${Date.now()}`;try{yield s.start({wait:!1,connectWith:t?{method:n,id:o,params:e}:void 0}),yield new Promise(((e,t)=>{(null==l?void 0:l.isAuthorized())&&(xu(\"[initializeMobileProvider: sendRequest()] already authorized\"),e(!0)),null==l||l.getConnector().once(bo.AUTHORIZED,(()=>{e(!0)})),c.once(bo.PROVIDER_UPDATE,(e=>{xu(`[initializeMobileProvider: sendRequest()] PROVIDER_UPDATE --- remote provider request interupted type=${e}`),e===dh.EXTENSION?t(bo.PROVIDER_UPDATE):t(new Error(\"Connection Terminated\"))}))}))}catch(t){if(dh.EXTENSION===t){if(xu(`[initializeMobileProvider: sendRequest()] extension provider detect: re-create ${n} on the active provider`),n.toLowerCase()===th.METAMASK_CONNECTSIGN.toLowerCase()){const t=yield null===(g=c.getProvider())||void 0===g?void 0:g.request({method:th.ETH_REQUESTACCOUNTS,params:[]});if(!t.length)throw new Error(\"SDK state invalid -- undefined accounts\");const n=yield null===(w=c.getProvider())||void 0===w?void 0:w.request({method:th.PERSONAL_SIGN,params:[e[0],t[0]]});return c.emit(Fu.ConnectWithResponse,n),n}if(n.toLowerCase()===th.METAMASK_CONNECTWITH.toLowerCase()){const[t]=e,n=yield(({method:e,sdk:t,params:n})=>a(void 0,void 0,void 0,(function*(){var r,i,o,s;if(!t.isExtensionActive())throw new Error(\"SDK state invalid -- extension is not active\");xu(\"[MetaMaskProvider: extensionConnectWithOverwrite()] Overwriting request method\",e,n);const a=yield null===(r=t.getProvider())||void 0===r?void 0:r.request({method:th.ETH_REQUESTACCOUNTS,params:[]});if(!a.length)throw new Error(\"SDK state invalid -- undefined accounts\");if((null==e?void 0:e.toLowerCase())===th.PERSONAL_SIGN.toLowerCase()){const r={method:e,params:[n[0],a[0]]};return yield null===(i=t.getProvider())||void 0===i?void 0:i.request(r)}if((null==e?void 0:e.toLowerCase())===th.ETH_SENDTRANSACTION.toLowerCase()){const r={method:e,params:[Object.assign(Object.assign({},n[0]),{from:a[0]})]};return yield null===(o=t.getProvider())||void 0===o?void 0:o.request(r)}return ih.includes(e.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${e} -- not handled by the extension -- call separately`),a):yield null===(s=t.getProvider())||void 0===s?void 0:s.request({method:e,params:n})})))({method:t.method,sdk:c,params:t.params});return c.emit(Fu.ConnectWithResponse,n),n}return xu(`[initializeMobileProvider: sendRequest()] sending '${n}' on active provider`,e),yield null===(E=c.getProvider())||void 0===E?void 0:E.request({method:n,params:e})}if(t===bo.REJECTED)throw null==l||l.closeModal(),null===(k=c.getProvider())||void 0===k||k.handleDisconnect({terminate:!1}),Object.assign(new Error(\"User rejected connection\"),{code:4001});throw xu(`[initializeMobileProvider: sendRequest()] failed to start installer: ${t}`),t}finally{S(!1)}if(n===th.ETH_REQUESTACCOUNTS)return R=yield new Promise((e=>{const t=setInterval((()=>{const{accounts:n}=M.getState();n&&(clearInterval(t),e(n))}),100)})),xu(`[initializeMobileProvider: sendRequest()] selectedAddress: ${P} --- SKIP rpc call`),R;if(n===th.METAMASK_CONNECTWITH)try{let e=0;const t=5,n=({resolve:n,reject:r})=>{e+=1;const i=null==l?void 0:l.getConnector().getRPCMethodTracker(),s=null==i?void 0:i[o];return xu(`TRACKER: update method ${o}`,s),(null==s?void 0:s.result)?(xu(\"[initializeMobileProvider: sendRequest()] found result\",s.result),c.emit(Fu.ConnectWithResponse,s.result),void n(s.result)):(null==s?void 0:s.error)?(xu(\"[initializeMobileProvider: sendRequest()] found error\",s.error),void r(s.error)):e>=t?(xu(\"[initializeMobileProvider: sendRequest()] max message count reached without result\"),void r(new Error(\"Max message count reached without result\"))):void xu(\"[initializeMobileProvider: sendRequest()] not found yet, need to wait for next update\")};let r,i;const s=yield new Promise(((e,t)=>{const s=null==l?void 0:l.getConnector().getRPCMethodTracker();xu(`TRACKER: method ${o}`,s),(null==s?void 0:s[o].result)?(xu(\"[initializeMobileProvider: sendRequest()] found result\",null==s?void 0:s[o].result),e(null==s?void 0:s[o].result)):(null==s?void 0:s[o].error)&&(xu(\"[initializeMobileProvider: sendRequest()] found error\",null==s?void 0:s[o].error),t(null==s?void 0:s[o].error)),i=()=>n({resolve:e,reject:t}),r=null==l?void 0:l.getConnector().on(bo.RPC_UPDATE,i)}));return i&&(null==r||r.off(bo.RPC_UPDATE,i)),xu(\"TRACKER: result\",s),s}catch(e){throw xu(\"[initializeMobileProvider: sendRequest()] error:\",e),e}r[0]&&\"object\"==typeof r[0]&&(r[0].params={__triggeredInstaller:!0,wrappedParams:r[0].params});return i(...r)}if(o.isSecure()&&nh[n])return i(...r);if(c.isExtensionActive())return xu(`[initializeMobileProvider: sendRequest()] EXTENSION active - redirect request '${n}' to it`,r,e),yield null===(x=c.getProvider())||void 0===x?void 0:x.request({method:n,params:e});throw xu(`[initializeMobileProvider: sendRequest()] method=${n} --- skip --- not connected/installed`),new Error(\"MetaMask is not connected/installed, please call eth_requestAccounts to connect first.\")}try{const e=yield i(...r);if(xu(`[initializeMobileProvider: sendRequest()] method=${n} rpcResponse`,e),n===th.WALLET_REQUESTPERMISSIONS){const t=e.reduce(((e,t)=>{var n;if(\"eth_accounts\"===t.parentCapability){const r=null===(n=t.caveats.find((e=>\"restrictReturnedAccounts\"===e.type)))||void 0===n?void 0:n.value;r&&e.push(...r)}return e}),[]);xu(\"[initializeMobileProvider: sendRequest()] accountsToPersist:\",t),t.length>0&&(M.handleAccountsChanged(t,!1),null==b||b.persistAccounts(t))}return e}catch(e){throw console.error(\"[initializeMobileProvider: sendRequest()] error:\",e),e}})),{request:x}=E;E.request=(...e)=>a(void 0,void 0,void 0,(function*(){return k(null==e?void 0:e[0].method,e,x,d)}));const{send:M}=E;return E.send=(...e)=>a(void 0,void 0,void 0,(function*(){return k(null==e?void 0:e[0],e,M,d)})),xu(\"[initializeMobileProvider: sendRequest()] metamaskStream.start()\"),f.start(),E}));function wh(e){var t,n,r,i;return a(this,void 0,void 0,(function*(){const{options:o}=e,s={communicationLayerPreference:null!==(t=o.communicationLayerPreference)&&void 0!==t?t:$o.SOCKET,platformManager:e.platformManager,sdk:e,checkInstallationOnAllCalls:o.checkInstallationOnAllCalls,injectProvider:null===(n=o.injectProvider)||void 0===n||n,shouldShimWeb3:null===(r=o.shouldShimWeb3)||void 0===r||r,extensionOnly:null===(i=o.extensionOnly)||void 0===i||i,installer:e.installer,remoteConnection:e.remoteConnection,debug:e.debug},a=yield bh(s);e.activeProvider=a,function(e){var t,n,r,i;null===(n=null===(t=e.remoteConnection)||void 0===t?void 0:t.getConnector())||void 0===n||n.on(Fu.ConnectionStatus,(t=>{e.emit(Fu.ConnectionStatus,t)})),null===(i=null===(r=e.remoteConnection)||void 0===r?void 0:r.getConnector())||void 0===i||i.on(Fu.ServiceStatus,(t=>{e.emit(Fu.ServiceStatus,t)}))}(e)}))}const Eh=\"sdk\";class Ch{constructor({serverUrl:e,enabled:t,originatorInfo:n}){this.serverURL=ho,this.serverURL=e,this.originatorInfo=n,this.enabled=null==t||t}send({event:e,params:t}){if(!this.enabled)return;const n=Object.assign(Object.assign({id:Eh,event:e,sdkVersion:Zu.version},this.originatorInfo),{params:t});xu(`[Analytics: send()] event: ${e}`,n),co(n,this.serverURL).catch((e=>{xu(`[Analytics: send()] error: ${e}`)}))}}const Sh=()=>{if(\"undefined\"==typeof document)return;let e;const t=document.getElementsByTagName(\"link\");for(let n=0;n<t.length;n++)\"icon\"!==t[n].getAttribute(\"rel\")&&\"shortcut icon\"!==t[n].getAttribute(\"rel\")||(e=t[n].getAttribute(\"href\"));return e},_h=163400;function kh(e){var t,n,r;const{dappMetadata:i}=e,s=function({url:e,name:t}){var n;const r=e+t,i=ph(r);if(!localStorage)return\"\";let s=null!==(n=localStorage.getItem(i))&&void 0!==n?n:\"\";if(!s){s=o();try{localStorage.setItem(i,s)}catch(e){return\"\"}}return s}({url:null!==(t=null==i?void 0:i.url)&&void 0!==t?t:\"no_url\",name:null!==(n=null==i?void 0:i.name)&&void 0!==n?n:\"no_name\"}),a=null===(r=e.platformManager)||void 0===r?void 0:r.getPlatformType(),c=a===Bo.DesktopWeb,l=a===Bo.MetaMaskMobileWebview;let d=\"N/A\";return c?d=\"extension\":l&&(d=\"mobile\"),{id:s,from:d}}const xh=({provider:e,sdkInstance:t})=>{if(\"state\"in e)throw new Error(\"INVALID EXTENSION PROVIDER\");return new Proxy(e,{get:(n,r)=>\"request\"===r?function(e){var r,i;return a(this,void 0,void 0,(function*(){xu(\"[wrapExtensionProvider()] Overwriting request method\",e);const{method:o,params:s}=e,c=rh.includes(o.toLowerCase()),{id:l,from:d}=kh(t);if(c&&(null===(r=t.analytics)||void 0===r||r.send({event:So.SDK_RPC_REQUEST,params:{method:o,from:d,id:l}})),o===th.METAMASK_BATCH&&Array.isArray(s))return(({target:e,args:t,trackEvent:n,sdkInstance:r})=>a(void 0,void 0,void 0,(function*(){var i,o;if(\"metamask_batch\"!==t.method)throw new Error(\"Invalid usage\");const s=[],a=null!==(i=null==t?void 0:t.params)&&void 0!==i?i:[];for(const t of a){const n=yield null==e?void 0:e.request({method:t.method,params:t.params});s.push(n)}const{id:c,from:l}=kh(r);return n&&(null===(o=r.analytics)||void 0===o||o.send({event:So.SDK_RPC_REQUEST_DONE,params:{method:t.method,from:l,id:c}})),s})))({target:n,args:e,trackEvent:c,sdkInstance:t});if(o.toLowerCase()===th.METAMASK_CONNECTSIGN.toLowerCase()&&Array.isArray(s))return(({target:e,params:t})=>a(void 0,void 0,void 0,(function*(){const n=yield e.request({method:th.ETH_REQUESTACCOUNTS,params:[]});if(!n.length)throw new Error(\"SDK state invalid -- undefined accounts\");return yield e.request({method:th.PERSONAL_SIGN,params:[t[0],n[0]]})})))({target:n,params:s});if(o.toLowerCase()===th.METAMASK_CONNECTWITH.toLowerCase()&&Array.isArray(s))return(({target:e,params:t})=>a(void 0,void 0,void 0,(function*(){const[n]=t,r=n.method,i=n.params,o=yield e.request({method:th.ETH_REQUESTACCOUNTS,params:[]});if(!o.length)throw new Error(\"SDK state invalid -- undefined accounts\");return(null==r?void 0:r.toLowerCase())===th.PERSONAL_SIGN.toLowerCase()?yield e.request({method:r,params:[i[0],o[0]]}):(null==r?void 0:r.toLowerCase())===th.ETH_SENDTRANSACTION.toLowerCase()?yield e.request({method:r,params:[Object.assign(Object.assign({},i[0]),{from:o[0]})]}):ih.includes(r.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${r} -- not handled by the extension -- call separately`),o):yield e.request({method:r,params:i})})))({target:n,params:s});let u;try{return u=yield n.request(e),u}finally{c&&(null===(i=t.analytics)||void 0===i||i.send({event:So.SDK_RPC_REQUEST_DONE,params:{method:o,from:d,id:l}}))}}))}:\"getChainId\"===r?function(){return e.chainId}:\"getNetworkVersion\"===r?function(){return e.networkVersion}:\"getSelectedAddress\"===r?function(){return e.selectedAddress}:\"isConnected\"===r?function(){return e._state.isConnected}:n[r]})};var Mh;function Ah({mustBeMetaMask:e,sdkInstance:t}){return a(this,void 0,void 0,(function*(){if(\"undefined\"==typeof window)throw new Error(\"window not available\");try{const e=yield new Promise(((e,t)=>{const n=setTimeout((()=>{t(new Error(\"eip6963RequestProvider timed out\"))}),500);window.addEventListener(Mh.Announce,(t=>{const r=t,{detail:{info:i,provider:o}={}}=r,{name:s,rdns:a,uuid:c}=null!=i?i:{};eh.test(c)&&s.startsWith(Qu.NAME)&&Qu.RDNS.includes(a)&&(clearTimeout(n),e(o))})),window.dispatchEvent(new Event(Mh.Request))}));return xh({provider:e,sdkInstance:t})}catch(n){if(!e&&window.ethereum)return xh({provider:window.ethereum,sdkInstance:t});throw new Error(\"Provider not found\")}}))}!function(e){e.Announce=\"eip6963:announceProvider\",e.Request=\"eip6963:requestProvider\"}(Mh||(Mh={}));const Ih=e=>a(void 0,void 0,void 0,(function*(){const{options:t}=e,{infuraAPIKey:n}=t;if(!n)return;const r={\"0x1\":`https://mainnet.infura.io/v3/${n}`,\"0x5\":`https://goerli.infura.io/v3/${n}`,\"0xaa36a7\":`https://sepolia.infura.io/v3/${n}`,\"0xe708\":`https://linea-mainnet.infura.io/v3/${n}`,\"0xe704\":`https://linea-goerli.infura.io/v3/${n}`,\"0x89\":`https://polygon-mainnet.infura.io/v3/${n}`,\"0x13881\":`https://polygon-mumbai.infura.io/v3/${n}`,\"0x45\":`https://optimism-mainnet.infura.io/v3/${n}`,\"0x1a4\":`https://optimism-goerli.infura.io/v3/${n}`,\"0xa4b1\":`https://arbitrum-mainnet.infura.io/v3/${n}`,\"0x66eed\":`https://arbitrum-goerli.infura.io/v3/${n}`,\"0x2a15c308d\":`https://palm-mainnet.infura.io/v3/${n}`,\"0x2a15c3083\":`https://palm-testnet.infura.io/v3/${n}`,\"0xa86a\":`https://avalanche-mainnet.infura.io/v3/${n}`,\"0xa869\":`https://avalanche-fuji.infura.io/v3/${n}`,\"0x4e454152\":`https://aurora-mainnet.infura.io/v3/${n}`,\"0x4e454153\":`https://aurora-testnet.infura.io/v3/${n}`,\"0x534e5f4d41494e\":`https://starknet-mainnet.infura.io/v3/${n}`,\"0x534e5f474f45524c49\":`https://starknet-goerli.infura.io/v3/${n}`,\"0x534e5f474f45524c4932\":`https://starknet-goerli2.infura.io/v3/${n}`,\"0xa4ec\":`https://celo-mainnet.infura.io/v3/${n}`,\"0xaef3\":`https://celo-alfajores.infura.io/v3/${n}`};e.options.readonlyRPCMap?e.options.readonlyRPCMap=Object.assign(Object.assign({},e.options.readonlyRPCMap),r):e.options.readonlyRPCMap=r}));const Ph=e=>a(void 0,void 0,void 0,(function*(){const{options:t}=e,{readonlyRPCMap:n}=t;if(n)try{xu(\"[MetaMaskSDK: setupReadOnlyRPCProviders()] Setting up Readonly RPC Providers\",n),e.setReadOnlyRPCCalls(!0)}catch(e){throw new Error(\"Invalid Infura Settings\")}}));function Rh(e,t,n,r){return new(n||(n=Promise))((function(t,i){function o(e){try{a(r.next(e))}catch(e){i(e)}}function s(e){try{a(r.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?t(e.value):(r=e.value,r instanceof n?r:new n((function(e){e(r)}))).then(o,s)}a((r=r.apply(e,[])).next())}))}function Lh(e,t){var n,r,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},\"function\"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError(\"Generator is already executing.\");for(;s;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,r=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}var Oh=\"INSTALLED\",Th=\"NOT_INSTALLED\",Nh=\"REGISTERED\",Dh=\"REGISTERING\",$h=\"RELOADING\",Bh={CHROME:\"https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn\",FIREFOX:\"https://addons.mozilla.org/firefox/addon/ether-metamask/\",DEFAULT:\"https://metamask.io\"},Kh=\"REGISTRATION_IN_PROGRESS\",jh=\"FORWARDER_ID\",Uh=function(){function e(t){var n=void 0===t?{}:t,r=n.forwarderOrigin,i=void 0===r?\"https://fwd.metamask.io\":r,o=n.forwarderMode,s=void 0===o?e.FORWARDER_MODE.INJECT:o;this.forwarderOrigin=i,this.forwarderMode=s,this.state=e.isMetaMaskInstalled()?Oh:Th;var a=e._detectBrowser();this.downloadUrl=a?Bh[a]:Bh.DEFAULT,this._onMessage=this._onMessage.bind(this),this._onMessageFromForwarder=this._onMessageFromForwarder.bind(this),this._openForwarder=this._openForwarder.bind(this),this._openDownloadPage=this._openDownloadPage.bind(this),this.startOnboarding=this.startOnboarding.bind(this),this.stopOnboarding=this.stopOnboarding.bind(this),window.addEventListener(\"message\",this._onMessage),s===e.FORWARDER_MODE.INJECT&&\"true\"===sessionStorage.getItem(Kh)&&e._injectForwarder(this.forwarderOrigin)}return e.prototype._onMessage=function(e){if(e.origin===this.forwarderOrigin)return\"metamask:reload\"===e.data.type?this._onMessageFromForwarder(e):void console.debug(\"Unknown message from '\"+e.origin+\"' with data \"+JSON.stringify(e.data))},e.prototype._onMessageUnknownStateError=function(e){throw new Error(\"Unknown state: '\"+e+\"'\")},e.prototype._onMessageFromForwarder=function(t){return Rh(this,0,void 0,(function(){return Lh(this,(function(n){switch(n.label){case 0:switch(this.state){case $h:return[3,1];case Th:return[3,2];case Oh:return[3,3];case Dh:return[3,5];case Nh:return[3,6]}return[3,7];case 1:return console.debug(\"Ignoring message while reloading\"),[3,8];case 2:return console.debug(\"Reloading now to register with MetaMask\"),this.state=$h,location.reload(),[3,8];case 3:return console.debug(\"Registering with MetaMask\"),this.state=Dh,[4,e._register()];case 4:return n.sent(),this.state=Nh,t.source.postMessage({type:\"metamask:registrationCompleted\"},t.origin),this.stopOnboarding(),[3,8];case 5:return console.debug(\"Already registering - ignoring reload message\"),[3,8];case 6:return console.debug(\"Already registered - ignoring reload message\"),[3,8];case 7:this._onMessageUnknownStateError(this.state),n.label=8;case 8:return[2]}}))}))},e.prototype.startOnboarding=function(){sessionStorage.setItem(Kh,\"true\"),this._openDownloadPage(),this._openForwarder()},e.prototype.stopOnboarding=function(){\"true\"===sessionStorage.getItem(Kh)&&(this.forwarderMode===e.FORWARDER_MODE.INJECT&&(console.debug(\"Removing forwarder\"),e._removeForwarder()),sessionStorage.setItem(Kh,\"false\"))},e.prototype._openForwarder=function(){this.forwarderMode===e.FORWARDER_MODE.OPEN_TAB?window.open(this.forwarderOrigin,\"_blank\"):e._injectForwarder(this.forwarderOrigin)},e.prototype._openDownloadPage=function(){window.open(this.downloadUrl,\"_blank\")},e.isMetaMaskInstalled=function(){return Boolean(window.ethereum&&window.ethereum.isMetaMask)},e._register=function(){return window.ethereum.request({method:\"wallet_registerOnboarding\"})},e._injectForwarder=function(e){var t=document.body,n=document.createElement(\"iframe\");n.setAttribute(\"height\",\"0\"),n.setAttribute(\"width\",\"0\"),n.setAttribute(\"style\",\"display: none;\"),n.setAttribute(\"src\",e),n.setAttribute(\"id\",jh),t.insertBefore(n,t.children[0])},e._removeForwarder=function(){var e;null===(e=document.getElementById(jh))||void 0===e||e.remove()},e._detectBrowser=function(){var e=Hu.parse(window.navigator.userAgent);return\"Firefox\"===e.browser.name?\"FIREFOX\":[\"Chrome\",\"Chromium\"].includes(e.browser.name||\"\")?\"CHROME\":null},e.FORWARDER_MODE={INJECT:\"INJECT\",OPEN_TAB:\"OPEN_TAB\"},e}();function Hh(e,{wait:t=!1}){return a(this,void 0,void 0,(function*(){return xu(`[MetamaskInstaller: startInstaller()] wait=${t}`),t&&(yield vh(1e3)),yield e.checkInstallation()}))}class Fh{constructor({remote:e,preferDesktop:t,platformManager:n,debug:r=!1}){this.state={isInstalling:!1,hasInstalled:!1,resendRequest:null,preferDesktop:!1,platformManager:null,remote:null,debug:!1,connectWith:void 0},this.state.remote=e,this.state.preferDesktop=t,this.state.platformManager=n,this.state.debug=r}startDesktopOnboarding(){return function(){return a(this,void 0,void 0,(function*(){xu(\"[MetamaskInstaller: startDesktopOnboarding() starting desktop onboarding\"),window.ethereum&&(window.ethereum=void 0),(new Uh).startOnboarding()}))}()}redirectToProperInstall(){return a(this,void 0,void 0,(function*(){return function(e){var t,n;return a(this,void 0,void 0,(function*(){const{state:r}=e,i=null===(t=r.platformManager)||void 0===t?void 0:t.getPlatformType();if(xu(`[MetamaskInstaller: redirectToProperInstall()] platform=${i}`),i===Bo.MetaMaskMobileWebview)return!1;r.isInstalling=!0;try{yield null===(n=r.remote)||void 0===n?void 0:n.startConnection({connectWith:r.connectWith}),r.isInstalling=!1,r.hasInstalled=!0}catch(e){throw r.isInstalling=!1,e}return!0}))}(this)}))}checkInstallation(){return a(this,void 0,void 0,(function*(){return function(e){var t;return a(this,void 0,void 0,(function*(){const{state:n}=e,r=null===(t=n.platformManager)||void 0===t?void 0:t.isMetaMaskInstalled();return xu(`[MetamaskInstaller: checkInstallation()] isInstalled=${r}`),!!r||(yield e.redirectToProperInstall())}))}(this)}))}start({wait:e=!1,connectWith:t}){return a(this,void 0,void 0,(function*(){this.state.connectWith=t,xu(`[MetaMaskInstaller: start()] wait=${e}`,t),yield Hh(this,{wait:e})}))}}class zh{constructor({debug:e,sdkVersion:t}){this.containers={install:void 0,pending:void 0,select:void 0},this.defined={install:!1,pending:!1,select:!1},this.debug=null!=e&&e,this.sdkVersion=t}loadComponent(e){return a(this,void 0,void 0,(function*(){if(!this.defined[e]){this.defined[e]=!0;try{const e=yield Promise.resolve().then((function(){return Ip}));console.log(\"loader\",e),e.defineCustomElements()}catch(t){console.error(`Failed to load ${e} modal:`,t)}}}))}renderInstallModal(e){var t;return a(this,void 0,void 0,(function*(){this.debug&&console.debug(\"ModalLoader: renderInstallModal\",e),this.containers.install=e.parentElement,yield this.loadComponent(\"install\");const n=document.createElement(\"mm-install-modal\");n.link=e.link,n.preferDesktop=e.preferDesktop,n.sdkVersion=null!==(t=e.sdkVersion)&&void 0!==t?t:this.sdkVersion,n.addEventListener(\"close\",e.onClose),n.addEventListener(\"startDesktopOnboarding\",e.metaMaskInstaller.startDesktopOnboarding),n.addEventListener(\"trackAnalytics\",(t=>{var n;return null===(n=e.onAnalyticsEvent)||void 0===n?void 0:n.call(e,t.detail)})),e.parentElement.appendChild(n)}))}renderSelectModal(e){var t;return a(this,void 0,void 0,(function*(){this.containers.select=e.parentElement,yield this.loadComponent(\"select\");const n=document.createElement(\"mm-select-modal\");n.link=e.link,n.sdkVersion=null!==(t=e.sdkVersion)&&void 0!==t?t:this.sdkVersion,n.preferDesktop=e.preferDesktop,n.addEventListener(\"close\",(({detail:{shouldTerminate:t}})=>e.onClose(t))),n.addEventListener(\"connectWithExtension\",e.connectWithExtension),e.parentElement.appendChild(n),setTimeout((()=>this.updateQRCode(e.link)),100)}))}renderPendingModal(e){var t;return a(this,void 0,void 0,(function*(){this.containers.pending=e.parentElement,yield this.loadComponent(\"pending\");const n=document.createElement(\"mm-pending-modal\");n.sdkVersion=null!==(t=e.sdkVersion)&&void 0!==t?t:this.sdkVersion,n.displayOTP=e.displayOTP,n.addEventListener(\"close\",e.onClose),n.addEventListener(\"updateOTPValue\",(({detail:{otpValue:t}})=>e.updateOTPValue(t))),e.onDisconnect&&n.addEventListener(\"disconnect\",e.onDisconnect),e.parentElement.appendChild(n)}))}updateOTPValue(e){const t=()=>{var t;const n=null===(t=this.containers.pending)||void 0===t?void 0:t.querySelector(\"mm-pending-modal\");return!!n&&(n.otpCode=e,!0)};setTimeout((()=>{t()}),800)}updateQRCode(e){var t,n;const r=null===(t=this.containers.install)||void 0===t?void 0:t.querySelector(\"mm-install-modal\");if(r)r.link=e;else{const t=null===(n=this.containers.select)||void 0===n?void 0:n.querySelector(\"mm-select-modal\");t&&(t.link=e)}}unmount(){Object.entries(this.containers).forEach((([e,t])=>{var n;null===(n=null==t?void 0:t.parentNode)||void 0===n||n.removeChild(t),this.containers[e]=void 0}))}}const qh=({link:e,debug:t,installer:n,terminate:r,connectWithExtension:i,preferDesktop:o,onAnalyticsEvent:s})=>{let a=null,c=null;xu(\"[UI: InstallModal-web: sdkWebInstallModal()] ################## Installing Modal #################\"),xu(`[UI: InstallModal-web: sdkWebInstallModal()] link=${e}`),xu(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open \"${e}\" --ios`),xu(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open \"${e}\" --android`),xu(`[UI: InstallModal-web: sdkWebInstallModal()] adb shell am start -a android.intent.action.VIEW -d \"${e}\"`);const l=e=>{var t;xu(\"[UI: InstallModal-web: sdkWebInstallModal()] installModal-web unmounting install modal -- shouldTerminate:\",e,c),(null==c?void 0:c.parentNode)&&(null===(t=c.parentNode)||void 0===t||t.removeChild(c)),c=null,a=null,!0===e&&(null==r||r())};return{mount:r=>{if(xu(\"[UI: InstallModal-web: sdkWebInstallModal()] installModal-web mounting install modal\",c),c)return c.style.display=\"block\",void(null==a||a.updateQRCode(r));a=new zh({debug:t,sdkVersion:Zu.version}),c=document.createElement(\"div\"),document.body.appendChild(c),window.extension?a.renderSelectModal({parentElement:c,connectWithExtension:()=>{l(),null==i||i()},onClose:l,link:e,preferDesktop:null!=o&&o}).catch((e=>{console.error(e)})):a.renderInstallModal({parentElement:c,preferDesktop:null!=o&&o,link:e,metaMaskInstaller:n,onClose:l,onAnalyticsEvent:s}).catch((e=>{console.error(\"[UI: InstallModal-web: sdkWebInstallModal()]\",e)}))},unmount:l}},Vh=({onDisconnect:e,debug:t})=>{let n=null,r=null;const i=()=>{xu(\"[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web unmount\",n),(null==n?void 0:n.parentNode)&&n.parentNode.removeChild(n),n=null,r=null},o=e=>{xu(\"[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web updateOTPValue\",e),r&&r.updateOTPValue(e)},s=({displayOTP:s}={displayOTP:!0})=>{xu(\"[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web mount\",n),n?n.style.display=\"block\":(r=new zh({debug:t,sdkVersion:Zu.version}),n=document.createElement(\"div\"),document.body.appendChild(n),r.renderPendingModal({parentElement:n,onClose:i,onDisconnect:e,updateOTPValue:o,displayOTP:s}).catch((e=>{console.error(\"[UI: pendingModal-web: sdkWebPendingModal()]\",e)})))};return s(),{mount:s,unmount:i,updateOTPValue:o}};function Wh(e,t){var n,r,i,o;e.connector||(xu(\"[RemoteConnection: initializeConnector()] initialize connector\"),e.connector=new Xo({platformType:t.platformManager.getPlatformType(),communicationLayerPreference:t.communicationLayerPreference,transports:t.transports,dappMetadata:Object.assign(Object.assign({},t.dappMetadata),{source:t._source}),analytics:t.enableAnalytics,communicationServerUrl:t.communicationServerUrl,sdkVersion:Zu.version,context:\"dapp\",ecies:t.ecies,storage:t.storage,logging:t.logging}),t.timer&&(xu(\"[RemoteConnection: initializeConnector()] reset background timer\",t.timer),null===(r=null===(n=t.timer)||void 0===n?void 0:n.stopBackgroundTimer)||void 0===r||r.call(n),null===(o=null===(i=t.timer)||void 0===i?void 0:i.runBackgroundTimer)||void 0===o||o.call(i,(()=>!1),1e4)))}function Gh(e){e.listeners.forEach((({event:t,handler:n})=>{var r;null===(r=e.connector)||void 0===r||r.off(t,n)})),e.listeners=[]}function Zh(e,t,n){return a(this,void 0,void 0,(function*(){return new Promise(((r,i)=>{if(!e.connector)return void i(new Error(\"No connector available\"));xu(\"[RemoteConnection: connectWithModalInstaller()]\",{state:e,options:t,linkParams:n});const o=`${e.useDeeplink?Xu:Ju}?${n}`;!function(e,t,n){var r,i,o,s;e.installModal=null===(i=(r=t.modals).install)||void 0===i?void 0:i.call(r,{link:n,preferDesktop:e.preferDesktop,installer:t.getMetaMaskInstaller(),terminate:()=>{xu(\"[RemoteConnection: showInstallModal() => terminate()] terminate connection\"),t.sdk.terminate().catch((e=>{console.warn(\"[MMSDK] failed to terminate connection\",e)}))},debug:e.developerMode,connectWithExtension:()=>{var e;return null===(e=t.connectWithExtensionProvider)||void 0===e||e.call(t),!1},onAnalyticsEvent:({event:n,params:r})=>{var i,o,s;const a=Object.assign(Object.assign({},r),{sdkVersion:t.sdk.getVersion(),dappId:null===(i=t.dappMetadata)||void 0===i?void 0:i.name,source:t._source,url:null===(o=t.dappMetadata)||void 0===o?void 0:o.url});null===(s=e.analytics)||void 0===s||s.send({event:n,params:a})}}),null===(s=null===(o=e.installModal)||void 0===o?void 0:o.mount)||void 0===s||s.call(o,n)}(e,t,o),t.sdk.once(bo.PROVIDER_UPDATE,(e=>a(this,void 0,void 0,(function*(){if(xu(\"[RemoteConnection: connectWithModalInstaller()] once provider_update -- resolving startConnection promise\"),e!==dh.TERMINATE)i(e);else{i({code:4001,message:\"User rejected the request.\"})}})))),e.connector.once(bo.AUTHORIZED,(()=>{r()})),e.connector.once(bo.REJECTED,(()=>{i(bo.REJECTED)})),e.connector.once(bo.CLIENTS_READY,(()=>a(this,void 0,void 0,(function*(){xu(\"[RemoteConnection: connectWithModalInstaller()] once clients_ready -- resolving startConnection promise\"),r()}))))}))}))}function Yh(e,t){function n(t,n){var r;null===(r=e.connector)||void 0===r||r.on(t,n),e.listeners.push({event:t,handler:n})}e.connector&&(Gh(e),n(bo.WALLET_INIT,(({accounts:e,chainId:t})=>a(this,void 0,void 0,(function*(){xu(`[RemoteConnection: setupListeners() => EventType.WALLET_INIT] 'wallet_init' accounts=${e} chainId=${t}`);const n=zu.getProvider();n._setConnected();const r={accounts:e,chainId:t,isUnlocked:!1};n._initializeState(r),n.emit(\"chainChanged\",t),n.emit(\"accountsChanged\",e)})))),n(bo.AUTHORIZED,(()=>a(this,void 0,void 0,(function*(){var t,n,r,i;try{xu(\"[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' closing modals\",e.pendingModal,e.installModal);const o=zu.getProvider();o._setConnected(),null===(n=null===(t=e.pendingModal)||void 0===t?void 0:t.unmount)||void 0===n||n.call(t),null===(i=null===(r=e.installModal)||void 0===r?void 0:r.unmount)||void 0===i||i.call(r,!1),e.otpAnswer=void 0,e.authorized=!0,xu(\"[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' provider.state\",o.getState()),yield o.forceInitializeState()}catch(e){}})))),n(bo.TERMINATE,(()=>{var t,n,r,i,o;null===(n=null===(t=e.pendingModal)||void 0===t?void 0:t.unmount)||void 0===n||n.call(t),null===(i=null===(r=e.installModal)||void 0===r?void 0:r.unmount)||void 0===i||i.call(r,!0),e.pendingModal=void 0,e.installModal=void 0,e.otpAnswer=void 0,null===(o=e.connector)||void 0===o||o.disconnect({terminate:!0}),e.authorized=!1;zu.getProvider().handleDisconnect({terminate:!0}),Gh(e),xu(\"[RemoteConnection: setupListeners()] All listeners cleaned up\")})))}function Jh(e,t,{initialCheck:n,connectWith:r}={}){var i,o,s,c,l,d,u,h,f,p,g,m,y,v,b,w,E,C,S;return a(this,void 0,void 0,(function*(){try{if(Wh(e,t),!e.connector)throw new Error(\"no connector defined\");Yh(e);const _=zu.getProvider();e.authorized=!1,_.emit(\"connecting\");const k=yield null===(i=e.connector)||void 0===i?void 0:i.originatorSessionConnect();xu(`[RemoteConnection: startConnection()] after originatorSessionConnect initialCheck=${n}`,k);let x=null!==(o=null==k?void 0:k.channelId)&&void 0!==o?o:\"\",M=null!==(c=null===(s=e.connector.getKeyInfo())||void 0===s?void 0:s.ecies.public)&&void 0!==c?c:\"\",A=null!==(d=null===(l=e.connector.getKeyInfo())||void 0===l?void 0:l.ecies.private)&&void 0!==d?d:\"\";if(n&&!k)return Promise.resolve();if(!k&&!n){const t=yield e.connector.generateChannelIdConnect();x=null!==(u=t.channelId)&&void 0!==u?u:\"\",M=null!==(h=t.pubKey)&&void 0!==h?h:\"\",A=null!==(f=t.privKey)&&void 0!==f?f:\"\";const n=Date.now();null===(p=e.connector.state.storageManager)||void 0===p||p.persistChannelConfig({channelId:x,localKey:A,lastActive:n,validUntil:n+po})}if(n&&(null==k?void 0:k.channelId))return(null===(g=e.connector)||void 0===g?void 0:g.isConnected())||(xu(`[RemoteConnection: startConnection()] reconnecting to channel initialCheck=${n}`,k),yield null===(m=e.connector)||void 0===m?void 0:m.connectToChannel({channelId:x})),Promise.resolve();k&&!(null===(y=e.connector)||void 0===y?void 0:y.isConnected())&&(xu(\"[RemoteConnection: startConnection()] reconnecting to channel\",k),yield null===(v=e.connector)||void 0===v?void 0:v.connectToChannel({channelId:x}));const I=(null===(b=e.platformManager)||void 0===b?void 0:b.isSecure())?\"\":\"&t=q\",P=Zu.version,{iconUrl:R,name:L,url:O,scheme:T}=t.dappMetadata||{},N=null===(w=e.platformManager)||void 0===w?void 0:w.getPlatformType();let D=\"N/A\";\"undefined\"!=typeof window&&window.location&&window.location.hostname?D=window.location.hostname:void 0!==L?D=L:void 0!==O&&(D=O);const $={url:null!=O?O:\"\",title:null!=L?L:\"\",icon:R,scheme:null!=T?T:\"\",apiVersion:P,dappId:D||O||\"N/A\",platform:null!=N?N:\"\",source:null!==(E=t._source)&&void 0!==E?E:\"\"},B=ph(JSON.stringify($));let K=`channelId=${x}&v=2&comm=${null!==(C=e.communicationLayerPreference)&&void 0!==C?C:\"\"}&pubkey=${M}${I}&originatorInfo=${B}`;if(r){K+=`&rpc=${ph(JSON.stringify(r))}`;const t=e.connector.getRPCMethodTracker();t&&(t[`${r.id}`]=Object.assign(Object.assign({},r),{id:`${r.id}`,timestamp:Date.now()}))}const j=encodeURI(K),U=`${e.useDeeplink?Xu:Ju}?${K}`;return e.qrcodeLink=U,e.developerMode&&xu(`[RemoteConnection: startConnection()] qrcodeLink=${j}`),_.emit(\"display_uri\",U),(null===(S=e.platformManager)||void 0===S?void 0:S.isSecure())?(yield function(e,t){var n,r;return a(this,void 0,void 0,(function*(){const i=`${Ju}?${t}`,o=`${Xu}?${t}`;null===(r=null===(n=e.platformManager)||void 0===n?void 0:n.openDeeplink)||void 0===r||r.call(n,i,o,\"_self\")}))}(e,j),new Promise(((t,n)=>{var r,i,o;(null===(r=e.connector)||void 0===r?void 0:r.isAuthorized())?t():(null===(i=e.connector)||void 0===i||i.once(bo.AUTHORIZED,(()=>{t()})),null===(o=e.connector)||void 0===o||o.once(bo.REJECTED,(()=>{n(bo.REJECTED)})))}))):Zh(e,t,j)}catch(e){throw console.error(\"[startConnection] error\",e),e}}))}class Xh{constructor(e){var t,n,r;this.state={connector:void 0,qrcodeLink:void 0,analytics:void 0,developerMode:!1,authorized:!1,reconnection:!1,preferDesktop:!1,deeplinkProtocol:!1,listeners:[],communicationLayerPreference:void 0,platformManager:void 0,pendingModal:void 0,installModal:void 0,otpAnswer:void 0},this.options=e;const i=!0===(null===(t=e.logging)||void 0===t?void 0:t.developerMode)||!0===(null===(n=e.logging)||void 0===n?void 0:n.sdk);this.state.developerMode=i,this.state.analytics=e.analytics,this.state.preferDesktop=null!==(r=e.preferDesktop)&&void 0!==r&&r,this.state.useDeeplink=e.sdk.options.useDeeplink,this.state.communicationLayerPreference=e.communicationLayerPreference,this.state.platformManager=e.platformManager,e.modals.install||(e.modals.install=qh),e.modals.otp||(e.modals.otp=Vh)}startConnection(e){return a(this,void 0,void 0,(function*(){return Jh(this.state,this.options,e)}))}initRemoteCommunication({sdkInstance:e}){var t,n,r;return a(this,void 0,void 0,(function*(){const i=yield null===(n=null===(t=e.options.storage)||void 0===t?void 0:t.storageManager)||void 0===n?void 0:n.getPersistedChannelConfig();if(!this.options.ecies){const e={privateKey:null==i?void 0:i.localKey};this.options.ecies=e}Wh(this.state,this.options),yield null===(r=this.getConnector())||void 0===r?void 0:r.initFromDappStorage(),Yh(this.state,this.options)}))}showActiveModal(){return function(e){var t,n,r,i;e.authorized?xu(\"[RemoteConnection: showActiveModal()] already authorized\"):e.pendingModal?null===(n=(t=e.pendingModal).mount)||void 0===n||n.call(t):e.installModal&&(null===(i=(r=e.installModal).mount)||void 0===i||i.call(r,e.qrcodeLink||\"\"))}(this.state)}closeModal(){var e,t,n,r;null===(t=null===(e=this.state.pendingModal)||void 0===e?void 0:e.unmount)||void 0===t||t.call(e),null===(r=null===(n=this.state.installModal)||void 0===n?void 0:n.unmount)||void 0===r||r.call(n,!1)}getUniversalLink(){if(!this.state.qrcodeLink)throw new Error(\"connection not started. run startConnection() first.\");return this.state.qrcodeLink}getChannelConfig(){var e;return null===(e=this.state.connector)||void 0===e?void 0:e.getChannelConfig()}getKeyInfo(){var e;return null===(e=this.state.connector)||void 0===e?void 0:e.getKeyInfo()}getConnector(){if(!this.state.connector)throw new Error(\"invalid remote connector\");return this.state.connector}getPlatformManager(){if(!this.state.platformManager)throw new Error(\"PlatformManager not available\");return this.state.platformManager}isConnected(){var e;return(null===(e=this.state.connector)||void 0===e?void 0:e.isReady())||!1}isAuthorized(){var e;return(null===(e=this.state.connector)||void 0===e?void 0:e.isAuthorized())||!1}isPaused(){var e;return null===(e=this.state.connector)||void 0===e?void 0:e.isPaused()}disconnect(e){var t,n,r;xu(\"[RemoteConnection: disconnect()]\",e),(null==e?void 0:e.terminate)&&(zu.getProvider().handleDisconnect({terminate:!0}),null===(n=null===(t=this.state.pendingModal)||void 0===t?void 0:t.unmount)||void 0===n||n.call(t),this.state.otpAnswer=void 0),null===(r=this.state.connector)||void 0===r||r.disconnect(e),function(e){xu(\"[RemoteConnection: cleanupConnector()] cleaning up connector\"),e.connector&&(Gh(e),e.connector.disconnect({terminate:!0}).catch((e=>{xu(\"[RemoteConnection: cleanupConnector()] error disconnecting connector\",e)})))}(this.state)}}function Qh(e){var n,r,i,o,s,c,l,d,u,h,f;return a(this,void 0,void 0,(function*(){const{options:p}=e;if(p.logging=null!==(n=p.logging)&&void 0!==n?n:{},p.communicationLayerPreference=null!==(r=p.communicationLayerPreference)&&void 0!==r?r:$o.SOCKET,void 0!==p.enableDebug&&(t.enable(\"MM_SDK\"),console.warn(\"enableDebug is removed. Please use enableAnalytics instead.\")),p.enableAnalytics=null===(i=p.enableAnalytics)||void 0===i||i,p.injectProvider=null===(o=p.injectProvider)||void 0===o||o,p.shouldShimWeb3=null===(s=p.shouldShimWeb3)||void 0===s||s,p.extensionOnly=null===(c=p.extensionOnly)||void 0===c||c,p.useDeeplink=null===(l=p.useDeeplink)||void 0===l||l,p.storage=null!==(d=p.storage)&&void 0!==d?d:{enabled:!0},p.headless){t(\"[MetaMaskSDK: performSDKInitialization()] headless mode enabled\");const e=()=>{},n={install:()=>({mount:e,unmount:e})},r={installer:e};p.modals=n,p.ui=r}const g=!0===(null===(u=p.logging)||void 0===u?void 0:u.developerMode);e.debug=(null===(h=p.logging)||void 0===h?void 0:h.sdk)||g,xu(\"[MetaMaskSDK: performSDKInitialization()] options\",e.options);const m=Object.assign({},p.logging);g&&(m.sdk=!0,m.eciesLayer=!0,m.keyExchangeLayer=!0,m.remoteLayer=!0,m.serviceLayer=!0,m.plaintext=!0),yield function(e){var t;return a(this,void 0,void 0,(function*(){const{options:n}=e;e.platformManager=new qu({useDeepLink:null!==(t=n.useDeeplink)&&void 0!==t&&t,preferredOpenLink:n.openDeeplink,debug:e.debug})}))}(e),yield function(e){var t,n,r,i,o,s,c,l,d;return a(this,void 0,void 0,(function*(){const{options:a}=e,u=null===(t=e.platformManager)||void 0===t?void 0:t.getPlatformType();e.analytics=new Ch({serverUrl:null!==(n=a.communicationServerUrl)&&void 0!==n?n:ho,enabled:a.enableAnalytics,originatorInfo:{url:null!==(r=a.dappMetadata.url)&&void 0!==r?r:\"\",title:null!==(i=a.dappMetadata.name)&&void 0!==i?i:\"\",dappId:\"undefined\"==typeof window||void 0===window.location?null!==(l=null!==(s=null===(o=a.dappMetadata)||void 0===o?void 0:o.name)&&void 0!==s?s:null===(c=a.dappMetadata)||void 0===c?void 0:c.url)&&void 0!==l?l:\"N/A\":window.location.hostname,platform:null!=u?u:\"\",source:null!==(d=a._source)&&void 0!==d?d:\"\"}})}))}(e),yield function(e){var t;return a(this,void 0,void 0,(function*(){const{options:n}=e;!0!==(null===(t=n.storage)||void 0===t?void 0:t.enabled)||n.storage.storageManager||(n.storage.storageManager=yield Vu(n.storage))}))}(e),yield function(e){return a(this,void 0,void 0,(function*(){const{options:t}=e,n=/^(http|https):\\/\\/[^\\s]*$/;if(t.dappMetadata){t.dappMetadata.iconUrl&&!n.test(t.dappMetadata.iconUrl)&&(console.warn(\"Invalid dappMetadata.iconUrl: URL must start with http:// or https://\"),t.dappMetadata.iconUrl=void 0),t.dappMetadata.base64Icon&&t.dappMetadata.base64Icon.length>_h&&(console.warn(\"Invalid dappMetadata.base64Icon: Base64-encoded icon string length must be less than 163400 characters\"),t.dappMetadata.base64Icon=void 0),t.dappMetadata.url&&!n.test(t.dappMetadata.url)&&console.warn(\"Invalid dappMetadata.url: URL must start with http:// or https://\");const e=Sh();if(e&&!t.dappMetadata.iconUrl&&!t.dappMetadata.base64Icon){const n=`${window.location.protocol}//${window.location.host}${e}`;t.dappMetadata.iconUrl=n}}e.dappMetadata=t.dappMetadata}))}(e),yield Ih(e),yield Ph(e);const{metamaskBrowserExtension:y,preferExtension:v,shouldReturn:b}=yield function(e){var t,n,r,i;return a(this,void 0,void 0,(function*(){const{options:o}=e;let s,c=!1,l=!1;if(\"undefined\"!=typeof window&&window.ethereum&&!(null===(t=e.platformManager)||void 0===t?void 0:t.isMetaMaskMobileWebView())){c=\"extension\"===localStorage.getItem(sh);try{s=yield Ah({mustBeMetaMask:!0,sdkInstance:e}),window.extension=s,s.on(lh.CHAIN_CHANGED,(t=>{xu(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE chainChanged chainId=${t}`),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(lh.CHAIN_CHANGED,t)})),s.on(lh.ACCOUNTS_CHANGED,(t=>a(this,void 0,void 0,(function*(){var n;xu(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE accountsChanged accounts=${t}`);const r=Boolean(e.sdkProvider),i=Boolean(e.extensionActive);if(r&&e.getMobileProvider().emit(lh.ACCOUNTS_CHANGED,t),i&&0===(null==t?void 0:t.length)&&0===(yield null===(n=e.getProvider())||void 0===n?void 0:n.request({method:th.WALLET_GETPERMISSIONS,params:[]})).length)try{yield e.terminate()}catch(e){xu(\"[MetaMaskSDK: setupExtensionPreferences()] error terminating on permissions revoked\",e)}})))),s.on(lh.DISCONNECT,(t=>{xu(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE disconnect error=${t}`),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(lh.DISCONNECT,t)})),s.on(lh.CONNECT,(t=>{xu(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connect args=${t}`),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(lh.CONNECT,t)})),s.on(lh.CONNECTED,(t=>{xu(\"[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connected\",t),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(lh.CONNECTED,t)}))}catch(e){window.extension=void 0}}else(null===(n=e.platformManager)||void 0===n?void 0:n.isMetaMaskMobileWebView())&&(null===(r=e.analytics)||void 0===r||r.send({event:So.SDK_USE_INAPP_BROWSER}),e.activeProvider=xh({provider:window.ethereum,sdkInstance:e}),e._initialized=!0,l=!0);return s&&o.extensionOnly&&(xu(\"[MetaMaskSDK: setupExtensionPreferences()] EXTENSION ONLY --- prevent sdk initialization\"),null===(i=e.analytics)||void 0===i||i.send({event:So.SDK_USE_EXTENSION}),e.activeProvider=s,e.extensionActive=!0,e.extension=s,e._initialized=!0,l=!0),{preferExtension:c,shouldReturn:l,metamaskBrowserExtension:s}}))}(e);if(b)xu(\"[MetaMaskSDK: performSDKInitialization()] shouldReturn=true --- prevent sdk initialization\");else{yield function(e,t){var n,r,i,o,s;return a(this,void 0,void 0,(function*(){const{options:a}=e,c=Object.assign({},a.logging);e.remoteConnection=new Xh({preferDesktop:null!==(n=a.preferDesktop)&&void 0!==n&&n,communicationLayerPreference:null!==(r=a.communicationLayerPreference)&&void 0!==r?r:$o.SOCKET,analytics:e.analytics,dappMetadata:a.dappMetadata,_source:a._source,enableAnalytics:null===(i=a.enableAnalytics)||void 0===i||i,timer:a.timer,sdk:e,platformManager:e.platformManager,transports:a.transports,communicationServerUrl:a.communicationServerUrl,storage:null!==(o=a.storage)&&void 0!==o?o:{enabled:!0},getMetaMaskInstaller:()=>{if(!e.installer)throw new Error(\"Invalid SDK status -- installer not initialized\");return e.installer},logging:c,connectWithExtensionProvider:void 0===t?void 0:()=>fh(e),modals:Object.assign(Object.assign({},a.modals),{onPendingModalDisconnect:e.terminate.bind(e)})}),yield e.remoteConnection.initRemoteCommunication({sdkInstance:e}),e.installer=new Fh({remote:e.remoteConnection,preferDesktop:null!==(s=a.preferDesktop)&&void 0!==s&&s,platformManager:e.platformManager,debug:e.debug})}))}(e,y),yield wh(e),yield function(e,t){var n,r;return a(this,void 0,void 0,(function*(){const{options:i}=e;t?(xu(\"[MetaMaskSDK: handleAutoAndExtensionConnections()] preferExtension is detected -- connect with it.\"),null===(n=e.analytics)||void 0===n||n.send({event:So.SDK_EXTENSION_UTILIZED}),fh(e).catch((e=>{console.warn(\"Can't connect with MetaMask extension...\",e),localStorage.removeItem(sh)}))):i.checkInstallationImmediately&&((null===(r=e.platformManager)||void 0===r?void 0:r.isDesktopWeb())?(xu(\"[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately\"),e.connect().catch((e=>{xu(`[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- error on autoconnect _err=${e}`)}))):console.warn(\"[handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- only for web desktop\")),e._initialized=!0}))}(e,v);try{yield null===(f=e.remoteConnection)||void 0===f?void 0:f.startConnection({initialCheck:!0})}catch(e){console.error(\"[MetaMaskSDK: setupRemoteConnectionAndInstaller()] Error while checking installation\",e)}e.emit(Fu.ProviderUpdate,dh.INITIALIZED)}}))}class ef extends n{constructor(e={storage:{enabled:!0},injectProvider:!0,forceInjectProvider:!1,enableAnalytics:!0,shouldShimWeb3:!0,useDeeplink:!0,extensionOnly:!0,headless:!1,dappMetadata:{name:\"\",url:\"\",iconUrl:\"\"},_source:Yu,i18nOptions:{enabled:!1}}){var n,r,i;super(),this.extensionActive=!1,this._initialized=!1,this.sdkInitPromise=void 0,this.debug=!1,this.readonlyRPCCalls=!1,this.availableLanguages=[\"en\"],t.disable();const o=!0===(null===(n=e.logging)||void 0===n?void 0:n.developerMode);if(((null===(r=e.logging)||void 0===r?void 0:r.sdk)||o)&&t.enable(\"MM_SDK\"),xu(\"[MetaMaskSDK: constructor()]: begin.\"),this.setMaxListeners(50),!(null===(i=e.dappMetadata)||void 0===i?void 0:i.url)){if(\"undefined\"==typeof window||\"undefined\"==typeof document)throw new Error(\"You must provide dAppMetadata url\");e.dappMetadata=Object.assign(Object.assign({},e.dappMetadata),{url:`${window.location.protocol}//${window.location.host}`})}this.options=e,this.options._source||(e._source=Yu),this.init().then((()=>{xu(\"[MetaMaskSDK: constructor()]: initialized successfully.\"),\"undefined\"!=typeof window&&(window.mmsdk=this)})).catch((e=>{console.error(\"[MetaMaskSDK: constructor()] error during initialization\",e)}))}init(){return a(this,void 0,void 0,(function*(){return function(e){var t;return a(this,void 0,void 0,(function*(){if(\"undefined\"!=typeof window&&(null===(t=window.mmsdk)||void 0===t?void 0:t.isInitialized()))return xu(\"[MetaMaskSDK: initializeMetaMaskSDK()] already initialized\"),Promise.resolve(window.mmsdk);if(e._initialized)return xu(\"[MetaMaskSDK: initializeMetaMaskSDK()] already initialized\"),e.sdkInitPromise;if(e.sdkInitPromise)return xu(\"[MetaMaskSDK: initializeMetaMaskSDK()] already initializing\"),e.sdkInitPromise;try{e.sdkInitPromise=Qh(e),yield e.sdkInitPromise}catch(e){throw console.error(e),e}return e.sdkInitPromise}))}(this)}))}isExtensionActive(){return this.extensionActive}checkExtensionAvailability(){var e;return\"undefined\"!=typeof window&&Boolean(null===(e=window.ethereum)||void 0===e?void 0:e.isMetaMask)}connect(){return a(this,void 0,void 0,(function*(){return function(e){return a(this,void 0,void 0,(function*(){if(e._initialized||(xu(\"[MetaMaskSDK: connect()] provider not ready -- wait for init()\"),yield e.init()),xu(`[MetaMaskSDK: connect()] isExtensionActive=${e.isExtensionActive()} activeProvider`,e.activeProvider),!e.activeProvider)throw new Error(\"SDK state invalid -- undefined provider\");const t=e.activeProvider.getSelectedAddress();return t?[t]:e.activeProvider.request({method:th.ETH_REQUESTACCOUNTS,params:[]})}))}(this)}))}connectAndSign({msg:e}){return a(this,void 0,void 0,(function*(){return hh({instance:this,msg:e})}))}connectWith(e){return a(this,void 0,void 0,(function*(){return function({instance:e,rpc:t}){return a(this,void 0,void 0,(function*(){if(e._initialized||(xu(\"[MetaMaskSDK: connectWith()] provider not ready -- wait for init()\"),yield e.init()),xu(`[MetaMaskSDK: connectWith()] method: ${t.method} rpc=${t}`),!e.activeProvider)throw new Error(\"SDK state invalid -- undefined provider\");return e.activeProvider.request({method:th.METAMASK_CONNECTWITH,params:[t]})}))}({instance:this,rpc:e})}))}resume(){return function(e){var t,n,r;return a(this,void 0,void 0,(function*(){if(!(null===(n=null===(t=e.remoteConnection)||void 0===t?void 0:t.getConnector())||void 0===n?void 0:n.isReady()))return xu(\"[MetaMaskSDK: resume()] channel is not ready -- starting connection\"),void(null===(r=e.remoteConnection)||void 0===r||r.startConnection());xu(\"[MetaMaskSDK: resume()] channel is ready\")}))}(this)}disconnect(){return console.warn(\"MetaMaskSDK.disconnect() is deprecated, use terminate()\"),this.terminate()}isAuthorized(){var e;null===(e=this.remoteConnection)||void 0===e||e.isAuthorized()}terminate(){return function(e){var t,n,r;return a(this,void 0,void 0,(function*(){if(!(null===(t=e.platformManager)||void 0===t?void 0:t.isMetaMaskMobileWebView())){if(uh&&(window.localStorage.removeItem(sh),window.localStorage.removeItem(ch),window.localStorage.removeItem(ah)),e.extensionActive){try{yield null===(n=e.activeProvider)||void 0===n?void 0:n.request({method:th.WALLET_REVOKEPERMISSIONS,params:[{eth_accounts:{}}]})}catch(e){xu(\"[MetaMaskSDK: terminate()] error revoking permissions\",e)}return e.options.extensionOnly?(e.emit(Fu.ProviderUpdate,dh.TERMINATE),void xu(\"[MetaMaskSDK: terminate()] extensionOnly --- prevent switching providers\")):(e.activeProvider=e.sdkProvider,window.ethereum=e.activeProvider,e.extensionActive=!1,void e.emit(Fu.ProviderUpdate,dh.TERMINATE))}e.emit(Fu.ProviderUpdate,dh.TERMINATE),xu(`[MetaMaskSDK: terminate()] remoteConnection=${e.remoteConnection}`),null===(r=e.remoteConnection)||void 0===r||r.disconnect({terminate:!0,sendMessage:!0})}}))}(this)}isInitialized(){return this._initialized}setReadOnlyRPCCalls(e){this.readonlyRPCCalls=e}hasReadOnlyRPCCalls(){return this.readonlyRPCCalls}getProvider(){if(this.activeProvider)return this.activeProvider;console.warn(\"MetaMaskSDK: No active provider found\")}getMobileProvider(){if(!this.sdkProvider)throw new Error(\"SDK state invalid -- undefined mobile provider\");return this.sdkProvider}getUniversalLink(){var e;const t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getUniversalLink();if(!t)throw new Error(\"No Universal Link available, please call eth_requestAccounts first.\");return t}getChannelId(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getChannelConfig())||void 0===t?void 0:t.channelId}getRPCHistory(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t?void 0:t.getRPCMethodTracker()}getVersion(){return Zu.version}getWalletStatus(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t?void 0:t.getConnectionStatus()}_getChannelConfig(){var e;return null===(e=this.remoteConnection)||void 0===e?void 0:e.getChannelConfig()}_ping(){var e,t;null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t||t.ping()}_keyCheck(){var e,t;null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t||t.keyCheck()}_getServiceStatus(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t?void 0:t.getServiceStatus()}_getRemoteConnection(){return this.remoteConnection}_getDappMetadata(){return this.dappMetadata}_getKeyInfo(){var e;return null===(e=this.remoteConnection)||void 0===e?void 0:e.getKeyInfo()}_resetKeys(){var e,t;null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t||t.resetKeys()}_getConnection(){return this.remoteConnection}emit(e,t){return super.emit(e,t)}on(e,t){return super.on(e,t)}}var tf=Object.freeze({__proto__:null,StorageManagerWeb:class{constructor({enabled:e}={enabled:!1}){this.enabled=!1,this.enabled=e}persistChannelConfig(e){return a(this,void 0,void 0,(function*(){const t=JSON.stringify(e);xu(`[StorageManagerWeb: persistChannelConfig()] enabled=${this.enabled}`,e),localStorage.setItem(oh,t)}))}getPersistedChannelConfig(){return a(this,void 0,void 0,(function*(){let e;try{if(xu(`[StorageManagerWeb: getPersistedChannelConfig()] enabled=${this.enabled}`),e=localStorage.getItem(oh),xu(\"[StorageManagerWeb: getPersistedChannelConfig()]\",e),!e)return;const t=JSON.parse(e);return xu(\"[StorageManagerWeb: getPersistedChannelConfig()] channelConfig\",t),t}catch(e){return void console.error(\"[StorageManagerWeb: getPersistedChannelConfig()] Can't find existing channel config\",e)}}))}persistAccounts(e){return a(this,void 0,void 0,(function*(){xu(`[StorageManagerWeb: persistAccounts()] enabled=${this.enabled}`,e);const t=JSON.stringify(e);localStorage.setItem(ah,t)}))}getCachedAccounts(){return a(this,void 0,void 0,(function*(){try{const e=localStorage.getItem(ah);return e?JSON.parse(e):[]}catch(e){throw console.error(\"[StorageManagerWeb: getCachedAccounts()] Error reading cached accounts\",e),e}}))}persistChainId(e){return a(this,void 0,void 0,(function*(){xu(`[StorageManagerWeb: persistChainId()] enabled=${this.enabled}`,e),localStorage.setItem(ch,e)}))}getCachedChainId(){return a(this,void 0,void 0,(function*(){try{const e=localStorage.getItem(ch);return null!=e?e:void 0}catch(e){throw console.error(\"[StorageManagerWeb: getCachedChainId()] Error reading cached chainId\",e),e}}))}terminate(){return a(this,void 0,void 0,(function*(){xu(`[StorageManagerWeb: terminate()] enabled=${this.enabled}`),localStorage.removeItem(oh)}))}}});const nf=\"hydrated\",rf=!1,of=!1,sf=!0;var af=Object.defineProperty,cf=new WeakMap,lf=e=>cf.get(e),df=(e,t)=>cf.set(t.$lazyInstance$=e,t),uf=(e,t)=>t in e,hf=(e,t)=>(0,console.error)(e,t),ff=new Map,pf=new Map,gf=\"slot-fb{display:contents}slot-fb[hidden]{display:none}\",mf=\"undefined\"!=typeof window?window:{},yf=mf.document||{head:{}},vf={$flags$:0,$resourcesUrl$:\"\",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,r)=>e.addEventListener(t,n,r),rel:(e,t,n,r)=>e.removeEventListener(t,n,r),ce:(e,t)=>new CustomEvent(e,t)},bf=(()=>{try{return new CSSStyleSheet,\"function\"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),wf=!1,Ef=[],Cf=[],Sf=(e,t)=>t=>{e.push(t),wf||(wf=!0,4&vf.$flags$?xf(kf):vf.raf(kf))},_f=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){hf(e)}e.length=0},kf=()=>{_f(Ef),_f(Cf),(wf=Ef.length>0)&&vf.raf(kf)},xf=e=>(e=>Promise.resolve(e))().then(e),Mf=Sf(Cf),Af={},If=e=>\"object\"===(e=typeof e)||\"function\"===e;function Pf(e){var t,n,r;return null!=(r=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name=\"csp-nonce\"]'))?void 0:n.getAttribute(\"content\"))?r:void 0}((e,t)=>{for(var n in t)af(e,n,{get:t[n],enumerable:!0})})({},{err:()=>Lf,map:()=>Of,ok:()=>Rf,unwrap:()=>Df,unwrapErr:()=>$f});var Rf=e=>({isOk:!0,isErr:!1,value:e}),Lf=e=>({isOk:!1,isErr:!0,value:e});function Of(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>Rf(e))):Rf(n)}if(e.isErr){const t=e.value;return Lf(t)}throw\"should never get here\"}var Tf,Nf,Df=e=>{if(e.isOk)return e.value;throw e.value},$f=e=>{if(e.isErr)return e.value;throw e.value},Bf=(e,t,...n)=>{let r=null,i=!1,o=!1;const s=[],a=t=>{for(let n=0;n<t.length;n++)r=t[n],Array.isArray(r)?a(r):null!=r&&\"boolean\"!=typeof r&&((i=\"function\"!=typeof e&&!If(r))&&(r=String(r)),i&&o?s[s.length-1].$text$+=r:s.push(i?Kf(null,r):r),o=i)};if(a(n),t){const e=t.className||t.class;e&&(t.class=\"object\"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(\" \"))}if(\"function\"==typeof e)return e(null===t?{}:t,s,Uf);const c=Kf(e,null);return c.$attrs$=t,s.length>0&&(c.$children$=s),c},Kf=(e,t)=>{const n={$flags$:0,$tag$:e,$text$:t,$elm$:null,$children$:null,$attrs$:null};return n},jf={},Uf={forEach:(e,t)=>e.map(Hf).forEach(t),map:(e,t)=>e.map(Hf).map(t).map(Ff)},Hf=e=>({vattrs:e.$attrs$,vchildren:e.$children$,vkey:e.$key$,vname:e.$name$,vtag:e.$tag$,vtext:e.$text$}),Ff=e=>{if(\"function\"==typeof e.vtag){const t={...e.vattrs};return e.vkey&&(t.key=e.vkey),e.vname&&(t.name=e.vname),Bf(e.vtag,t,...e.vchildren||[])}const t=Kf(e.vtag,e.vtext);return t.$attrs$=e.vattrs,t.$children$=e.vchildren,t.$key$=e.vkey,t.$name$=e.vname,t},zf=e=>lf(e).$hostElement$,qf=(e,t,n)=>{const r=zf(e);return{emit:e=>Vf(r,t,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:e})}},Vf=(e,t,n)=>{const r=vf.ce(t,n);return e.dispatchEvent(r),r},Wf=new WeakMap,Gf=e=>{const t=e.$cmpMeta$,n=e.$hostElement$,r=t.$flags$,i=(t.$tagName$,()=>{}),o=((e,t,n)=>{var r;const i=Zf(t),o=pf.get(i);if(e=11===e.nodeType?e:yf,o)if(\"string\"==typeof o){e=e.head||e;let n,s=Wf.get(e);if(s||Wf.set(e,s=new Set),!s.has(i)){{n=yf.createElement(\"style\"),n.innerHTML=o;const i=null!=(r=vf.$nonce$)?r:Pf(yf);if(null!=i&&n.setAttribute(\"nonce\",i),!(1&t.$flags$))if(\"HEAD\"===e.nodeName){const t=e.querySelectorAll(\"link[rel=preconnect]\"),r=t.length>0?t[t.length-1].nextSibling:e.querySelector(\"style\");e.insertBefore(n,r)}else if(\"host\"in e)if(bf){const t=new CSSStyleSheet;t.replaceSync(o),e.adoptedStyleSheets=[t,...e.adoptedStyleSheets]}else{const t=e.querySelector(\"style\");t?t.innerHTML=o+t.innerHTML:e.prepend(n)}else e.append(n);1&t.$flags$&&\"HEAD\"!==e.nodeName&&e.insertBefore(n,null)}4&t.$flags$&&(n.innerHTML+=gf),s&&s.add(i)}}else e.adoptedStyleSheets.includes(o)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,o]);return i})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&r&&2&r&&(n[\"s-sc\"]=o,n.classList.add(o+\"-h\")),i()},Zf=(e,t)=>\"sc-\"+e.$tagName$,Yf=(e,t,n,r,i,o)=>{if(n!==r){let s=uf(e,t),a=t.toLowerCase();if(\"class\"===t){const t=e.classList,i=Xf(n),o=Xf(r);t.remove(...i.filter((e=>e&&!o.includes(e)))),t.add(...o.filter((e=>e&&!i.includes(e))))}else if(\"style\"===t){for(const t in n)r&&null!=r[t]||(t.includes(\"-\")?e.style.removeProperty(t):e.style[t]=\"\");for(const t in r)n&&r[t]===n[t]||(t.includes(\"-\")?e.style.setProperty(t,r[t]):e.style[t]=r[t])}else if(s||\"o\"!==t[0]||\"n\"!==t[1]){const a=If(r);if((s||a&&null!==r)&&!i)try{if(e.tagName.includes(\"-\"))e[t]=r;else{const i=null==r?\"\":r;\"list\"===t?s=!1:null!=n&&e[t]==i||(\"function\"==typeof e.__lookupSetter__(t)?e[t]=i:e.setAttribute(t,i))}}catch(e){}null==r||!1===r?!1===r&&\"\"!==e.getAttribute(t)||e.removeAttribute(t):(!s||4&o||i)&&!a&&(r=!0===r?\"\":r,e.setAttribute(t,r))}else if(t=\"-\"===t[2]?t.slice(3):uf(mf,a)?a.slice(2):a[2]+t.slice(3),n||r){const i=t.endsWith(Qf);t=t.replace(ep,\"\"),n&&vf.rel(e,t,n,i),r&&vf.ael(e,t,r,i)}}},Jf=/\\s/,Xf=e=>e?e.split(Jf):[],Qf=\"Capture\",ep=new RegExp(Qf+\"$\"),tp=(e,t,n)=>{const r=11===t.$elm$.nodeType&&t.$elm$.host?t.$elm$.host:t.$elm$,i=e&&e.$attrs$||Af,o=t.$attrs$||Af;for(const e of np(Object.keys(i)))e in o||Yf(r,e,i[e],void 0,n,t.$flags$);for(const e of np(Object.keys(o)))Yf(r,e,i[e],o[e],n,t.$flags$)};function np(e){return e.includes(\"ref\")?[...e.filter((e=>\"ref\"!==e)),\"ref\"]:e}var rp=!1,ip=!1,op=(e,t,n,r)=>{const i=t.$children$[n];let o,s,a=0;if(null!==i.$text$)o=i.$elm$=yf.createTextNode(i.$text$);else{ip||(ip=\"svg\"===i.$tag$),o=i.$elm$=yf.createElementNS(ip?\"http://www.w3.org/2000/svg\":\"http://www.w3.org/1999/xhtml\",!rp&&of&&2&i.$flags$?\"slot-fb\":i.$tag$),ip&&\"foreignObject\"===i.$tag$&&(ip=!1),tp(null,i,ip);if(!!o.getRootNode().querySelector(\"body\")&&rf&&(e=>null!=e)(Tf)&&o[\"s-si\"]!==Tf&&o.classList.add(o[\"s-si\"]=Tf),i.$children$)for(a=0;a<i.$children$.length;++a)s=op(e,i,a),s&&o.appendChild(s);\"svg\"===i.$tag$?ip=!1:\"foreignObject\"===o.tagName&&(ip=!0)}return o[\"s-hn\"]=Nf,o},sp=(e,t,n,r,i,o)=>{let s,a=e;for(a.shadowRoot&&a.tagName===Nf&&(a=a.shadowRoot);i<=o;++i)r[i]&&(s=op(null,n,i),s&&(r[i].$elm$=s,dp(a,s,t)))},ap=(e,t,n)=>{for(let r=t;r<=n;++r){const t=e[r];if(t){const e=t.$elm$;e&&e.remove()}}},cp=(e,t,n=!1)=>e.$tag$===t.$tag$,lp=(e,t,n=!1)=>{const r=t.$elm$=e.$elm$,i=e.$children$,o=t.$children$,s=t.$tag$,a=t.$text$;null===a?(tp(e,t,ip=\"svg\"===s||\"foreignObject\"!==s&&ip),null!==i&&null!==o?((e,t,n,r,i=!1)=>{let o,s=0,a=0,c=t.length-1,l=t[0],d=t[c],u=r.length-1,h=r[0],f=r[u];for(;s<=c&&a<=u;)null==l?l=t[++s]:null==d?d=t[--c]:null==h?h=r[++a]:null==f?f=r[--u]:cp(l,h,i)?(lp(l,h,i),l=t[++s],h=r[++a]):cp(d,f,i)?(lp(d,f,i),d=t[--c],f=r[--u]):cp(l,f,i)?(lp(l,f,i),dp(e,l.$elm$,d.$elm$.nextSibling),l=t[++s],f=r[--u]):cp(d,h,i)?(lp(d,h,i),dp(e,d.$elm$,l.$elm$),d=t[--c],h=r[++a]):(o=op(t&&t[a],n,a),h=r[++a],o&&dp(l.$elm$.parentNode,o,l.$elm$));s>c?sp(e,null==r[u+1]?null:r[u+1].$elm$,n,r,a,u):a>u&&ap(t,s,c)})(r,i,t,o,n):null!==o?(null!==e.$text$&&(r.textContent=\"\"),sp(r,null,t,o,0,o.length-1)):!n&&sf&&null!==i&&ap(i,0,i.length-1),ip&&\"svg\"===s&&(ip=!1)):e.$text$!==a&&(r.data=a)},dp=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),up=(e,t,n=!1)=>{const r=e.$hostElement$,i=e.$cmpMeta$,o=e.$vnode$||Kf(null,null),s=(a=t)&&a.$tag$===jf?t:Bf(null,null,t);var a;if(Nf=r.tagName,n&&s.$attrs$)for(const e of Object.keys(s.$attrs$))r.hasAttribute(e)&&![\"key\",\"ref\",\"style\",\"class\"].includes(e)&&(s.$attrs$[e]=r[e]);s.$tag$=null,s.$flags$|=4,e.$vnode$=s,s.$elm$=o.$elm$=r.shadowRoot||r,Tf=r[\"s-sc\"],rp=0!=(1&i.$flags$),lp(o,s,n)},hp=(e,t)=>{t&&!e.$onRenderResolve$&&t[\"s-p\"]&&t[\"s-p\"].push(new Promise((t=>e.$onRenderResolve$=t)))},fp=(e,t)=>{if(e.$flags$|=16,4&e.$flags$)return void(e.$flags$|=512);hp(e,e.$ancestorComponent$);return Mf((()=>pp(e,t)))},pp=(e,t)=>{const n=e.$hostElement$,r=(e.$cmpMeta$.$tagName$,()=>{}),i=e.$lazyInstance$;if(!i)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \\`externalRuntime: true\\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);return r(),gp(undefined,(()=>yp(e,i,t)))},gp=(e,t)=>mp(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),mp=e=>e instanceof Promise||e&&e.then&&\"function\"==typeof e.then,yp=async(e,t,n)=>{var r;const i=e.$hostElement$,o=(e.$cmpMeta$.$tagName$,()=>{}),s=i[\"s-rc\"];n&&Gf(e);const a=(e.$cmpMeta$.$tagName$,()=>{});vp(e,t,i,n),s&&(s.map((e=>e())),i[\"s-rc\"]=void 0),a(),o();{const t=null!=(r=i[\"s-p\"])?r:[],n=()=>bp(e);0===t.length?n():(Promise.all(t).then(n),e.$flags$|=4,t.length=0)}},vp=(e,t,n,r)=>{try{t=t.render(),e.$flags$&=-17,e.$flags$|=2,up(e,t,r)}catch(t){hf(t,e.$hostElement$)}return null},bp=e=>{e.$cmpMeta$.$tagName$;const t=e.$hostElement$,n=()=>{},r=e.$lazyInstance$,i=e.$ancestorComponent$;64&e.$flags$?n():(e.$flags$|=64,Cp(t),Ep(r,\"componentDidLoad\"),n(),e.$onReadyResolve$(t),i||wp()),e.$onRenderResolve$&&(e.$onRenderResolve$(),e.$onRenderResolve$=void 0),512&e.$flags$&&xf((()=>fp(e,!1))),e.$flags$&=-517},wp=e=>{Cp(yf.documentElement),xf((()=>Vf(mf,\"appload\",{detail:{namespace:\"sdk-install-modal-web\"}})))},Ep=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){hf(e)}},Cp=e=>{var t;return e.classList.add(null!=(t=nf)?t:\"hydrated\")},Sp=(e,t,n,r)=>{const i=lf(e);if(!i)throw new Error(`Couldn't find host element for \"${r.$tagName$}\" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const o=i.$hostElement$,s=i.$instanceValues$.get(t),a=i.$flags$,c=i.$lazyInstance$;var l,d;l=n,d=r.$members$[t][0],n=null==l||If(l)?l:4&d?\"false\"!==l&&(\"\"===l||!!l):1&d?String(l):l;const u=Number.isNaN(s)&&Number.isNaN(n);if((!(8&a)||void 0===s)&&(n!==s&&!u)&&(i.$instanceValues$.set(t,n),c)){if(r.$watchers$&&128&a){const e=r.$watchers$[t];e&&e.map((e=>{try{c[e](n,s,t)}catch(e){hf(e,o)}}))}2==(18&a)&&fp(i,!1)}},_p=(e,t,n)=>{var r,i;const o=e.prototype;if(t.$members$||t.$watchers$||e.watchers){e.watchers&&!t.$watchers$&&(t.$watchers$=e.watchers);const s=Object.entries(null!=(r=t.$members$)?r:{});if(s.map((([e,[r]])=>{(31&r||2&n&&32&r)&&Object.defineProperty(o,e,{get(){return t=e,lf(this).$instanceValues$.get(t);var t},set(n){Sp(this,e,n,t)},configurable:!0,enumerable:!0})})),1&n){const n=new Map;o.attributeChangedCallback=function(e,r,i){vf.jmp((()=>{var s;const a=n.get(e);if(this.hasOwnProperty(a))i=this[a],delete this[a];else{if(o.hasOwnProperty(a)&&\"number\"==typeof this[a]&&this[a]==i)return;if(null==a){const n=lf(this),o=null==n?void 0:n.$flags$;if(o&&!(8&o)&&128&o&&i!==r){const o=n.$lazyInstance$,a=null==(s=t.$watchers$)?void 0:s[e];null==a||a.forEach((t=>{null!=o[t]&&o[t].call(o,i,r,e)}))}return}}this[a]=(null!==i||\"boolean\"!=typeof this[a])&&i}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(i=t.$watchers$)?i:{}),...s.filter((([e,t])=>15&t[0])).map((([e,t])=>{const r=t[1]||e;return n.set(r,e),r}))]))}}return e},kp=async(e,t,n,r)=>{let i;if(0==(32&t.$flags$)){t.$flags$|=32;if(n.$lazyBundleId$){const e=((e,t,n)=>{const r=e.$tagName$.replace(/-/g,\"_\"),i=e.$lazyBundleId$;if(!i)return;const o=ff.get(i);if(o)return o[r];{const e=e=>(ff.set(i,e),e[r]);switch(i){case\"mm-install-modal\":return Promise.resolve().then((function(){return dg})).then(e,hf);case\"mm-pending-modal\":return Promise.resolve().then((function(){return hg})).then(e,hf);case\"mm-select-modal\":return Promise.resolve().then((function(){return mg})).then(e,hf)}}return import(/* webpackIgnore: true */\n/* @vite-ignore */\n/* webpackInclude: /\\.entry\\.js$/ */\n/* webpackExclude: /\\.system\\.entry\\.js$/ */\n/* webpackMode: \"lazy\" */\n`./${i}.entry.js`).then((e=>(ff.set(i,e),e[r])),hf)})(n);if(e&&\"then\"in e){const t=()=>{};i=await e,t()}else i=e;if(!i)throw new Error(`Constructor for \"${n.$tagName$}#${t.$modeName$}\" was not found`);i.isProxied||(n.$watchers$=i.watchers,_p(i,n,2),i.isProxied=!0);const r=(n.$tagName$,()=>{});t.$flags$|=8;try{new i(t)}catch(e){hf(e)}t.$flags$&=-9,t.$flags$|=128,r(),xp(t.$lazyInstance$)}else{i=e.constructor;const n=e.localName;customElements.whenDefined(n).then((()=>t.$flags$|=128))}if(i&&i.style){let e;\"string\"==typeof i.style&&(e=i.style);const t=Zf(n);if(!pf.has(t)){const r=(n.$tagName$,()=>{});((e,t,n)=>{let r=pf.get(e);bf&&n?(r=r||new CSSStyleSheet,\"string\"==typeof r?r=t:r.replaceSync(t)):r=t,pf.set(e,r)})(t,e,!!(1&n.$flags$)),r()}}}const o=t.$ancestorComponent$,s=()=>fp(t,!0);o&&o[\"s-rc\"]?o[\"s-rc\"].push(s):s()},xp=e=>{Ep(e,\"connectedCallback\")},Mp=e=>{Ep(e,\"disconnectedCallback\")},Ap=(e,t={})=>{var n;const r=()=>{},i=[],o=t.exclude||[],s=mf.customElements,a=yf.head,c=a.querySelector(\"meta[charset]\"),l=yf.createElement(\"style\"),d=[];let u,h=!0;Object.assign(vf,t),vf.$resourcesUrl$=new URL(t.resourcesUrl||\"./\",yf.baseURI).href;let f=!1;if(e.map((e=>{e[1].map((t=>{var n;const r={$flags$:t[0],$tagName$:t[1],$members$:t[2],$listeners$:t[3]};4&r.$flags$&&(f=!0),r.$members$=t[2],r.$watchers$=null!=(n=t[4])?n:{};const a=r.$tagName$,c=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,t)=>{const n={$flags$:0,$hostElement$:e,$cmpMeta$:t,$instanceValues$:new Map};n.$onReadyPromise$=new Promise((e=>n.$onReadyResolve$=e)),e[\"s-p\"]=[],e[\"s-rc\"]=[],cf.set(e,n)})(e=this,r),1&r.$flags$)if(e.shadowRoot){if(\"open\"!==e.shadowRoot.mode)throw new Error(`Unable to re-use existing shadow root for ${r.$tagName$}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else e.attachShadow({mode:\"open\"})}connectedCallback(){lf(this),this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),u&&(clearTimeout(u),u=null),h?d.push(this):vf.jmp((()=>(e=>{if(0==(1&vf.$flags$)){const t=lf(e),n=t.$cmpMeta$,r=(n.$tagName$,()=>{});if(1&t.$flags$)(null==t?void 0:t.$lazyInstance$)?xp(t.$lazyInstance$):(null==t?void 0:t.$onReadyPromise$)&&t.$onReadyPromise$.then((()=>xp(t.$lazyInstance$)));else{t.$flags$|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n[\"s-p\"]){hp(t,t.$ancestorComponent$=n);break}}n.$members$&&Object.entries(n.$members$).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),kp(e,t,n)}r()}})(this)))}disconnectedCallback(){vf.jmp((()=>(async e=>{if(0==(1&vf.$flags$)){const t=lf(e);(null==t?void 0:t.$lazyInstance$)?Mp(t.$lazyInstance$):(null==t?void 0:t.$onReadyPromise$)&&t.$onReadyPromise$.then((()=>Mp(t.$lazyInstance$)))}})(this)))}componentOnReady(){return lf(this).$onReadyPromise$}};r.$lazyBundleId$=e[0],o.includes(a)||s.get(a)||(i.push(a),s.define(a,_p(c,r,1)))}))})),i.length>0&&(f&&(l.textContent+=gf),l.textContent+=i.sort()+\"{visibility:hidden}.hydrated{visibility:inherit}\",l.innerHTML.length)){l.setAttribute(\"data-styles\",\"\");const e=null!=(n=vf.$nonce$)?n:Pf(yf);null!=e&&l.setAttribute(\"nonce\",e),a.insertBefore(l,c?c.nextSibling:a.firstChild)}h=!1,d.length?d.map((e=>e.connectedCallback())):vf.jmp((()=>u=setTimeout(wp,30))),r()};!function(){if(\"undefined\"!=typeof window&&void 0!==window.Reflect&&void 0!==window.customElements){var e=HTMLElement;window.HTMLElement=function(){return Reflect.construct(e,[],this.constructor)},HTMLElement.prototype=e.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,e)}}();var Ip=Object.freeze({__proto__:null,defineCustomElements:async(e,t)=>{if(\"undefined\"!=typeof window)return await void 0,Ap([[\"mm-install-modal\",[[1,\"mm-install-modal\",{link:[1],sdkVersion:[1,\"sdk-version\"],preferDesktop:[4,\"prefer-desktop\"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:[\"updatePreferDesktop\"]}]]],[\"mm-pending-modal\",[[1,\"mm-pending-modal\",{displayOTP:[4,\"display-o-t-p\"],sdkVersion:[1,\"sdk-version\"],otpCode:[1,\"otp-code\"],translationsLoaded:[32]}]]],[\"mm-select-modal\",[[1,\"mm-select-modal\",{link:[1],sdkVersion:[1,\"sdk-version\"],preferDesktop:[4,\"prefer-desktop\"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:[\"updatePreferDesktop\"]}]]]],t)},setNonce:e=>vf.$nonce$=e});const Pp={fontFamily:\"Roboto, sans-serif\"},Rp=({className:e},t)=>Bf(\"div\",{style:Pp,class:e},t);function Lp({version:e}){return Bf(\"div\",{style:{textAlign:\"center\",color:\"#BBC0C5\",fontSize:\"12\"}},\"SDK Version \",e?`v${e}`:\"unknown\")}const Op=()=>Bf(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"rect\",{width:\"16\",height:\"16\",fill:\"white\"}),Bf(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M2.40554 2.40554C2.94627 1.86482 3.82296 1.86482 4.36369 2.40554L8 6.04186L11.6363 2.40554C12.177 1.86482 13.0537 1.86482 13.5945 2.40554C14.1352 2.94627 14.1352 3.82296 13.5945 4.36369L9.95814 8L13.5945 11.6363C14.1352 12.177 14.1352 13.0537 13.5945 13.5945C13.0537 14.1352 12.177 14.1352 11.6363 13.5945L8 9.95814L4.36369 13.5945C3.82296 14.1352 2.94627 14.1352 2.40554 13.5945C1.86482 13.0537 1.86482 12.177 2.40554 11.6363L6.04186 8L2.40554 4.36369C1.86482 3.82296 1.86482 2.94627 2.40554 2.40554Z\",fill:\"#BBC0C5\"})),Tp=()=>Bf(\"svg\",{width:\"273\",height:\"51\",viewBox:\"0 0 273 51\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M240.882 25.9263C239.472 24.997 237.916 24.3361 236.443 23.5101C235.489 22.9731 234.473 22.4982 233.643 21.8167C232.233 20.6602 232.524 18.3885 233.996 17.3973C236.112 15.993 239.617 16.7777 239.99 19.6483C239.99 19.7102 240.052 19.7515 240.114 19.7515H243.308C243.391 19.7515 243.454 19.6896 243.433 19.607C243.267 17.6244 242.5 15.9723 241.089 14.9191C239.741 13.9072 238.206 13.3702 236.568 13.3702C228.127 13.3702 227.359 22.271 231.901 25.0796C232.42 25.41 236.879 27.6404 238.455 28.611C240.032 29.5816 240.529 31.3576 239.845 32.7619C239.223 34.0423 237.605 34.9303 235.987 34.8271C234.224 34.7238 232.855 33.7738 232.378 32.2869C232.295 32.0185 232.254 31.5022 232.254 31.275C232.254 31.2131 232.192 31.1511 232.129 31.1511H228.666C228.604 31.1511 228.541 31.2131 228.541 31.275C228.541 33.7738 229.164 35.1575 230.864 36.4172C232.461 37.615 234.203 38.1106 236.008 38.1106C240.737 38.1106 243.184 35.4466 243.682 32.6793C244.117 29.974 243.308 27.5371 240.882 25.9263Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M90.4943 13.8246H88.9595H87.2795C87.2173 13.8246 87.1758 13.8659 87.1551 13.9072L84.3137 23.2416C84.2722 23.3655 84.1063 23.3655 84.0648 23.2416L81.2234 13.9072C81.2026 13.8452 81.1612 13.8246 81.0989 13.8246H79.419H77.8842H75.8102C75.748 13.8246 75.6857 13.8865 75.6857 13.9485V37.7802C75.6857 37.8422 75.748 37.9041 75.8102 37.9041H79.2738C79.336 37.9041 79.3982 37.8422 79.3982 37.7802V19.6689C79.3982 19.5244 79.6056 19.5037 79.6471 19.6276L82.5093 29.024L82.7167 29.6849C82.7374 29.7468 82.7789 29.7675 82.8411 29.7675H85.4959C85.5581 29.7675 85.5996 29.7262 85.6203 29.6849L85.8277 29.024L88.6899 19.6276C88.7313 19.4831 88.9387 19.5244 88.9387 19.6689V37.7802C88.9387 37.8422 89.001 37.9041 89.0632 37.9041H92.5268C92.589 37.9041 92.6513 37.8422 92.6513 37.7802V13.9485C92.6513 13.8865 92.589 13.8246 92.5268 13.8246H90.4943Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M187.849 13.8246C187.787 13.8246 187.745 13.8659 187.725 13.9072L184.883 23.2416C184.842 23.3655 184.676 23.3655 184.634 23.2416L181.793 13.9072C181.772 13.8452 181.731 13.8246 181.668 13.8246H176.4C176.338 13.8246 176.276 13.8865 176.276 13.9485V37.7802C176.276 37.8422 176.338 37.9041 176.4 37.9041H179.864C179.926 37.9041 179.988 37.8422 179.988 37.7802V19.6689C179.988 19.5244 180.196 19.5037 180.237 19.6276L183.099 29.024L183.307 29.6849C183.328 29.7468 183.369 29.7675 183.431 29.7675H186.086C186.148 29.7675 186.19 29.7262 186.211 29.6849L186.418 29.024L189.28 19.6276C189.322 19.4831 189.529 19.5244 189.529 19.6689V37.7802C189.529 37.8422 189.591 37.9041 189.653 37.9041H193.117C193.179 37.9041 193.241 37.8422 193.241 37.7802V13.9485C193.241 13.8865 193.179 13.8246 193.117 13.8246H187.849Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M143.174 13.8246H136.724H133.261H126.81C126.748 13.8246 126.686 13.8865 126.686 13.9485V16.9223C126.686 16.9843 126.748 17.0462 126.81 17.0462H133.136V37.7802C133.136 37.8422 133.198 37.9041 133.261 37.9041H136.724C136.786 37.9041 136.849 37.8422 136.849 37.7802V17.0462H143.174C143.237 17.0462 143.299 16.9843 143.299 16.9223V13.9485C143.299 13.8865 143.257 13.8246 143.174 13.8246Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M163.604 37.9041H166.756C166.839 37.9041 166.901 37.8215 166.881 37.7389L160.368 13.8245C160.347 13.7626 160.306 13.7419 160.244 13.7419H159.041H156.925H155.722C155.66 13.7419 155.619 13.7832 155.598 13.8245L149.085 37.7389C149.065 37.8215 149.127 37.9041 149.21 37.9041H152.362C152.425 37.9041 152.466 37.8628 152.487 37.8215L154.374 30.862C154.395 30.8 154.436 30.7794 154.499 30.7794H161.467C161.53 30.7794 161.571 30.8207 161.592 30.862L163.479 37.8215C163.5 37.8628 163.562 37.9041 163.604 37.9041ZM155.328 27.3719L157.859 18.0581C157.9 17.9342 158.066 17.9342 158.107 18.0581L160.638 27.3719C160.659 27.4545 160.596 27.5371 160.513 27.5371H155.453C155.37 27.5371 155.308 27.4545 155.328 27.3719Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M217.362 37.9041H220.515C220.598 37.9041 220.66 37.8215 220.639 37.7389L214.127 13.8245C214.106 13.7626 214.065 13.7419 214.002 13.7419H212.8H210.684H209.481C209.419 13.7419 209.377 13.7832 209.357 13.8245L202.844 37.7389C202.823 37.8215 202.886 37.9041 202.969 37.9041H206.121C206.183 37.9041 206.225 37.8628 206.246 37.8215L208.133 30.862C208.154 30.8 208.195 30.7794 208.257 30.7794H215.226C215.288 30.7794 215.33 30.8207 215.351 30.862L217.238 37.8215C217.259 37.8628 217.3 37.9041 217.362 37.9041ZM209.087 27.3719L211.617 18.0581C211.659 17.9342 211.825 17.9342 211.866 18.0581L214.397 27.3719C214.417 27.4545 214.355 27.5371 214.272 27.5371H209.211C209.129 27.5371 209.066 27.4545 209.087 27.3719Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M106.713 34.3727V26.9795C106.713 26.9176 106.775 26.8556 106.837 26.8556H116.067C116.129 26.8556 116.191 26.7936 116.191 26.7317V23.7579C116.191 23.6959 116.129 23.634 116.067 23.634H106.837C106.775 23.634 106.713 23.572 106.713 23.5101V17.1907C106.713 17.1288 106.775 17.0668 106.837 17.0668H117.332C117.394 17.0668 117.457 17.0049 117.457 16.9429V13.9691C117.457 13.9072 117.394 13.8452 117.332 13.8452H106.713H103.125C103.063 13.8452 103.001 13.9072 103.001 13.9691V17.0668V23.6546V26.8763V34.5173V37.7802C103.001 37.8422 103.063 37.9041 103.125 37.9041H106.713H117.768C117.83 37.9041 117.892 37.8422 117.892 37.7802V34.6412C117.892 34.5792 117.83 34.5173 117.768 34.5173H106.817C106.755 34.4966 106.713 34.4553 106.713 34.3727Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M272.532 37.6976L260.544 25.3687C260.502 25.3274 260.502 25.2448 260.544 25.2035L271.329 14.0517C271.412 13.9691 271.349 13.8452 271.246 13.8452H266.828C266.787 13.8452 266.766 13.8659 266.745 13.8865L257.599 23.3449C257.516 23.4275 257.391 23.3655 257.391 23.2623V13.9691C257.391 13.9072 257.329 13.8452 257.267 13.8452H253.803C253.741 13.8452 253.679 13.9072 253.679 13.9691V37.8009C253.679 37.8628 253.741 37.9248 253.803 37.9248H257.267C257.329 37.9248 257.391 37.8628 257.391 37.8009V27.3099C257.391 27.2067 257.536 27.1447 257.599 27.2273L267.969 37.8835C267.989 37.9041 268.031 37.9248 268.052 37.9248H272.469C272.552 37.9041 272.615 37.7596 272.532 37.6976Z\",fill:\"#24292E\"}),Bf(\"path\",{d:\"M52.021 1L31.0526 16.4886L34.9517 7.36063L52.021 1Z\",fill:\"#E17726\",stroke:\"#E17726\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M3.65491 1L24.4366 16.6331L20.7241 7.36063L3.65491 1Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M44.4716 36.9127L38.8925 45.4211L50.8389 48.7047L54.261 37.0986L44.4716 36.9127Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M1.43555 37.0986L4.83695 48.7047L16.7626 45.4211L11.2042 36.9127L1.43555 37.0986Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M16.1197 22.5395L12.8013 27.5371L24.6232 28.074L24.2292 15.3734L16.1197 22.5395Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M39.5561 22.5394L31.3222 15.2288L31.0526 28.0739L42.8746 27.537L39.5561 22.5394Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M16.7626 45.4212L23.918 41.9724L17.7582 37.1813L16.7626 45.4212Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M31.7578 41.9724L38.8925 45.4212L37.9177 37.1813L31.7578 41.9724Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M38.8923 45.4212L31.7577 41.9724L32.3384 46.5983L32.2762 48.5602L38.8923 45.4212Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M16.7625 45.4212L23.3994 48.5602L23.3579 46.5983L23.9179 41.9724L16.7625 45.4212Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M23.5239 34.1249L17.5922 32.3902L21.7818 30.4696L23.5239 34.1249Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M32.1517 34.1249L33.8939 30.4696L38.1042 32.3902L32.1517 34.1249Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M16.7626 45.4212L17.7996 36.9128L11.2042 37.0987L16.7626 45.4212Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M37.8761 36.9128L38.8924 45.4212L44.4715 37.0987L37.8761 36.9128Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M42.8745 27.5371L31.0526 28.074L32.1518 34.1249L33.894 30.4696L38.1042 32.3902L42.8745 27.5371Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M17.5922 32.3902L21.7817 30.4696L23.5239 34.1249L24.6232 28.074L12.8012 27.5371L17.5922 32.3902Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M12.8013 27.5371L17.7582 37.1813L17.5923 32.3902L12.8013 27.5371Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M38.1044 32.3902L37.9177 37.1813L42.8746 27.5371L38.1044 32.3902Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M24.6232 28.0741L23.524 34.125L24.9136 41.2703L25.2247 31.8533L24.6232 28.0741Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M31.0526 28.0741L30.4719 31.8327L30.7623 41.2703L32.1519 34.125L31.0526 28.0741Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M32.1519 34.1249L30.7623 41.2702L31.7578 41.9724L37.9177 37.1813L38.1043 32.3901L32.1519 34.1249Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M17.5922 32.3901L17.7581 37.1813L23.918 41.9724L24.9135 41.2702L23.5239 34.1249L17.5922 32.3901Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M32.2763 48.5602L32.3385 46.5983L31.7993 46.1439H23.8765L23.358 46.5983L23.3995 48.5602L16.7626 45.4211L19.0855 47.3211L23.7935 50.5633H31.8615L36.5903 47.3211L38.8924 45.4211L32.2763 48.5602Z\",fill:\"#C0AC9D\",stroke:\"#C0AC9D\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M31.7578 41.9724L30.7622 41.2703H24.9135L23.918 41.9724L23.358 46.5983L23.8765 46.144H31.7993L32.3385 46.5983L31.7578 41.9724Z\",fill:\"#24292E\",stroke:\"#24292E\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M52.9128 17.5005L54.6757 8.95079L52.021 1L31.7578 15.9723L39.5561 22.5394L50.5692 25.7404L52.9958 22.9111L51.938 22.147L53.618 20.6188L52.3321 19.6276L54.0121 18.3472L52.9128 17.5005Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M1 8.95079L2.78366 17.5005L1.64295 18.3472L3.34365 19.6276L2.05775 20.6188L3.73771 22.147L2.67996 22.9111L5.10657 25.7404L16.1196 22.5394L23.918 15.9723L3.65475 1L1 8.95079Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M50.5692 25.7404L39.5561 22.5394L42.8746 27.5371L37.9177 37.1813L44.4716 37.0987H54.261L50.5692 25.7404Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M16.1196 22.5394L5.10651 25.7404L1.43549 37.0987H11.2041L17.7581 37.1813L12.8011 27.5371L16.1196 22.5394Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M31.0526 28.0741L31.7578 15.9724L34.9518 7.36072H20.7239L23.9179 15.9724L24.6231 28.0741L24.8927 31.8739L24.9135 41.2703H30.7622L30.783 31.8739L31.0526 28.0741Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"})),Np={DESKTOP:\"Desktop\",MOBILE:\"Mobile\",META_MASK_MOBILE_APP:\"MetaMask mobile app\",SCAN_TO_CONNECT:\"Scan to connect and sign with\",CONNECT_WITH_EXTENSION:\"Connect With MetaMask Extension\",INSTALL_MODAL:{TRUSTED_BY_USERS:\"Trusted by over 30 million users to buy, store, send and swap crypto securely\",LEADING_CRYPTO_WALLET:\"The leading crypto wallet & gateway to blockchain apps built on Ethereum Mainnet, Polygon, Optimism, and many other networks\",CONTROL_DIGITAL_INTERACTIONS:\"Puts you in control of your digital interactions by making power of cryptography more accessible\",INSTALL_META_MASK_EXTENSION:\"Install MetaMask Extension\"},PENDING_MODAL:{OPEN_META_MASK_SELECT_CODE:\"Please open the MetaMask wallet app and select the code on the screen OR disconnect\",OPEN_META_MASK_CONTINUE:\"Open the MetaMask app to continue with your session.\",NUMBER_AFTER_OPEN_NOTICE:\"If a number doesn't appear after opening MetaMask, please click disconnect and re-scan the QRCode.\",DISCONNECT:\"Disconnect\"},SELECT_MODAL:{CRYPTO_TAKE_CONTROL_TEXT:\"Take control of your crypto and explore the blockchain with the wallet trusted by over 30 million people worldwide\"},META_MASK_MODAL:{ADDRESS_COPIED:\"Address copied to clipboard!\",DISCONNECT:\"Disconnect\",ACTIVE_NETWORK:\"Active Network\"}};class Dp{constructor(e){var t;this.translations=Np,this.supportedLocales=[\"es\",\"fr\",\"he\",\"it\",\"pt\",\"tr\"],this.baseUrl=null!==(t=null==e?void 0:e.baseUrl)&&void 0!==t?t:\"https://raw.githubusercontent.com/MetaMask/metamask-sdk/refs/heads/gh-pages/locales\"}getBrowserLanguage(){if((navigator.languages||[navigator.language]).some((e=>e.toLowerCase().startsWith(\"en\"))))return\"en\";const e=navigator.language.toLowerCase().split(\"-\")[0];return this.supportedLocales.includes(e)?e:\"en\"}async init(e){const t=this.getBrowserLanguage()||e.fallbackLng;await this.loadTranslations(t)}async loadTranslations(e){const t=e.split(\"-\")[0];if(\"en\"!==t&&this.supportedLocales.includes(t))try{const e=`${this.baseUrl}/${t}.json`,n=await fetch(e);if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);this.translations=await n.json()}catch(e){console.warn(`❌ Failed to load ${t} translations, falling back to English:`,e),this.translations=Np}else this.translations=Np}t(e){return this.getNestedTranslation(e,this.translations)||e}getNestedTranslation(e,t){const n=e.split(\".\");let r=t;for(const e of n){if(\"object\"!=typeof r)return\"\";r=r[e]}return\"string\"==typeof r?r:\"\"}}function $p(e,t){return e.toString(2).padStart(t,\"0\")}function Bp(e,t){const n=e%t;return n>=0?n:t+n}function Kp(e,t){return new Array(e).fill(t)}function jp(...e){let t=0;for(const n of e)t=Math.max(t,n.length);const n=[];for(let r=0;r<t;r++)for(const t of e)r>=t.length||n.push(t[r]);return new Uint8Array(n)}function Up(e,t,n){if(n<0||n+t.length>e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[n+r])return!1;return!0}function Hp(e){return{has:t=>e.includes(t),decode:t=>{if(!Array.isArray(t)||t.length&&\"string\"!=typeof t[0])throw new Error(\"alphabet.decode input should be array of strings\");return t.map((t=>{if(\"string\"!=typeof t)throw new Error(`alphabet.decode: not string element=${t}`);const n=e.indexOf(t);if(-1===n)throw new Error(`Unknown letter: \"${t}\". Allowed: ${e}`);return n}))},encode:t=>{if(!Array.isArray(t)||t.length&&\"number\"!=typeof t[0])throw new Error(\"alphabet.encode input should be an array of numbers\");return t.map((t=>{if(function(e){if(!Number.isSafeInteger(e))throw new Error(`Wrong integer: ${e}`)}(t),t<0||t>=e.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${e.length})`);return e[t]}))}}}class Fp{static size(e,t){if(\"number\"==typeof e&&(e={height:e,width:e}),!Number.isSafeInteger(e.height)&&e.height!==1/0)throw new Error(`Bitmap: wrong height=${e.height} (${typeof e.height})`);if(!Number.isSafeInteger(e.width)&&e.width!==1/0)throw new Error(`Bitmap: wrong width=${e.width} (${typeof e.width})`);return void 0!==t&&(e={width:Math.min(e.width,t.width),height:Math.min(e.height,t.height)}),e}static fromString(e){const t=(e=e.replace(/^\\n+/g,\"\").replace(/\\n+$/g,\"\")).split(\"\\n\"),n=t.length,r=new Array(n);let i;for(const e of t){const t=e.split(\"\").map((e=>{if(\"X\"===e)return!0;if(\" \"===e)return!1;if(\"?\"!==e)throw new Error(`Bitmap.fromString: unknown symbol=${e}`)}));if(i&&t.length!==i)throw new Error(`Bitmap.fromString different row sizes: width=${i} cur=${t.length}`);i=t.length,r.push(t)}return i||(i=0),new Fp({height:n,width:i},r)}constructor(e,t){const{height:n,width:r}=Fp.size(e);this.data=t||Array.from({length:n},(()=>Kp(r,void 0))),this.height=n,this.width=r}point(e){return this.data[e.y][e.x]}isInside(e){return 0<=e.x&&e.x<this.width&&0<=e.y&&e.y<this.height}size(e){if(!e)return{height:this.height,width:this.width};const{x:t,y:n}=this.xy(e);return{height:this.height-n,width:this.width-t}}xy(e){if(\"number\"==typeof e&&(e={x:e,y:e}),!Number.isSafeInteger(e.x))throw new Error(`Bitmap: wrong x=${e.x}`);if(!Number.isSafeInteger(e.y))throw new Error(`Bitmap: wrong y=${e.y}`);return e.x=Bp(e.x,this.width),e.y=Bp(e.y,this.height),e}rect(e,t,n){const{x:r,y:i}=this.xy(e),{height:o,width:s}=Fp.size(t,this.size({x:r,y:i}));for(let e=0;e<o;e++)for(let t=0;t<s;t++)this.data[i+e][r+t]=\"function\"==typeof n?n({x:t,y:e},this.data[i+e][r+t]):n;return this}rectRead(e,t,n){return this.rect(e,t,((e,t)=>(n(e,t),t)))}hLine(e,t,n){return this.rect(e,{width:t,height:1},n)}vLine(e,t,n){return this.rect(e,{width:1,height:t},n)}border(e=2,t){const n=this.height+2*e,r=this.width+2*e,i=Kp(e,t),o=Array.from({length:e},(()=>Kp(r,t)));return new Fp({height:n,width:r},[...o,...this.data.map((e=>[...i,...e,...i])),...o])}embed(e,t){return this.rect(e,t.size(),(({x:e,y:n})=>t.data[n][e]))}rectSlice(e,t=this.size()){const n=new Fp(Fp.size(t,this.size(this.xy(e))));return this.rect(e,t,(({x:e,y:t},r)=>n.data[t][e]=r)),n}inverse(){const{height:e,width:t}=this;return new Fp({height:t,width:e}).rect({x:0,y:0},1/0,(({x:e,y:t})=>this.data[e][t]))}scale(e){if(!Number.isSafeInteger(e)||e>1024)throw new Error(`Wrong scale factor: ${e}`);const{height:t,width:n}=this;return new Fp({height:e*t,width:e*n}).rect({x:0,y:0},1/0,(({x:t,y:n})=>this.data[Math.floor(n/e)][Math.floor(t/e)]))}clone(){return new Fp(this.size()).rect({x:0,y:0},this.size(),(({x:e,y:t})=>this.data[t][e]))}assertDrawn(){this.rectRead(0,1/0,((e,t)=>{if(\"boolean\"!=typeof t)throw new Error(\"Invalid color type=\"+typeof t)}))}toString(){return this.data.map((e=>e.map((e=>void 0===e?\"?\":e?\"X\":\" \")).join(\"\"))).join(\"\\n\")}toASCII(){const{height:e,width:t,data:n}=this;let r=\"\";for(let i=0;i<e;i+=2){for(let o=0;o<t;o++){const t=n[i][o],s=i+1>=e||n[i+1][o];t||s?!t&&s?r+=\"▀\":t&&!s?r+=\"▄\":t&&s&&(r+=\" \"):r+=\"█\"}r+=\"\\n\"}return r}toTerm(){const e=\"\u001b[0m\",t=`\u001b[1;47m ${e}`,n=`\u001b[40m ${e}`;return this.data.map((e=>e.map((e=>e?n:t)).join(\"\"))).join(\"\\n\")}toSVG(){let e=`<svg xmlns:svg=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 ${this.width} ${this.height}\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">`;return this.rectRead(0,1/0,(({x:t,y:n},r)=>{r&&(e+=`<rect x=\"${t}\" y=\"${n}\" width=\"1\" height=\"1\" />`)})),e+=\"</svg>\",e}toGIF(){const e=e=>[255&e,e>>>8&255],t=[...e(this.width),...e(this.height)],n=[];this.rectRead(0,1/0,((e,t)=>n.push(+(!0===t))));const r=126,i=[71,73,70,56,55,97,...t,246,0,0,255,255,255,...Kp(381,0),44,0,0,0,0,...t,0,7],o=Math.floor(n.length/r);for(let e=0;e<o;e++)i.push(127,128,...n.slice(r*e,r*(e+1)).map((e=>+e)));return i.push(n.length%r+1,128,...n.slice(o*r).map((e=>+e))),i.push(1,129,0,59),new Uint8Array(i)}toImage(e=!1){const{height:t,width:n}=this.size(),r=new Uint8Array(t*n*(e?3:4));let i=0;for(let o=0;o<t;o++)for(let t=0;t<n;t++){const n=this.data[o][t]?0:255;r[i++]=n,r[i++]=n,r[i++]=n,e||(r[i++]=255)}return{height:t,width:n,data:r}}}const zp=[\"low\",\"medium\",\"quartile\",\"high\"],qp=[\"numeric\",\"alphanumeric\",\"byte\",\"kanji\",\"eci\"],Vp=[26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706],Wp={low:[7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],medium:[10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],quartile:[13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],high:[17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]},Gp={low:[1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],medium:[1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],quartile:[1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],high:[1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]},Zp={size:{encode:e=>21+4*(e-1),decode:e=>(e-17)/4},sizeType:e=>Math.floor((e+7)/17),alignmentPatterns(e){if(1===e)return[];const t=Zp.size.encode(e)-6-1,n=t-6,r=Math.ceil(n/28);let i=Math.floor(n/r);i%2?i+=1:n%r*2>=r&&(i+=2);const o=[6];for(let e=1;e<r;e++)o.push(t-(r-e)*i);return o.push(t),o},ECCode:{low:1,medium:0,quartile:3,high:2},formatMask:21522,formatBits(e,t){const n=Zp.ECCode[e]<<3|t;let r=n;for(let e=0;e<10;e++)r=r<<1^1335*(r>>9);return(n<<10|r)^Zp.formatMask},versionBits(e){let t=e;for(let e=0;e<12;e++)t=t<<1^7973*(t>>11);return e<<12|t},alphabet:{numeric:Hp(\"0123456789\"),alphanumerc:Hp(\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:\")},lengthBits:(e,t)=>({numeric:[10,12,14],alphanumeric:[9,11,13],byte:[8,16,16],kanji:[8,10,12],eci:[0,0,0]}[t][Zp.sizeType(e)]),modeBits:{numeric:\"0001\",alphanumeric:\"0010\",byte:\"0100\",kanji:\"1000\",eci:\"0111\"},capacity(e,t){const n=Vp[e-1],r=Wp[t][e-1],i=Gp[t][e-1],o=Math.floor(n/i)-r,s=i-n%i;return{words:r,numBlocks:i,shortBlocks:s,blockLen:o,capacity:8*(n-r*i),total:(r+o)*i+i-s}}},Yp=[(e,t)=>(e+t)%2==0,(e,t)=>t%2==0,(e,t)=>e%3==0,(e,t)=>(e+t)%3==0,(e,t)=>(Math.floor(t/2)+Math.floor(e/3))%2==0,(e,t)=>e*t%2+e*t%3==0,(e,t)=>(e*t%2+e*t%3)%2==0,(e,t)=>((e+t)%2+e*t%3)%2==0],Jp={tables:(e=>{const t=Kp(256,0),n=Kp(256,0);for(let e=0,r=1;e<256;e++)t[e]=r,n[r]=e,r<<=1,256&r&&(r^=285);return{exp:t,log:n}})(),exp:e=>Jp.tables.exp[e],log(e){if(0===e)throw new Error(`GF.log: wrong arg=${e}`);return Jp.tables.log[e]%255},mul:(e,t)=>0===e||0===t?0:Jp.tables.exp[(Jp.tables.log[e]+Jp.tables.log[t])%255],add:(e,t)=>e^t,pow:(e,t)=>Jp.tables.exp[Jp.tables.log[e]*t%255],inv(e){if(0===e)throw new Error(`GF.inverse: wrong arg=${e}`);return Jp.tables.exp[255-Jp.tables.log[e]]},polynomial(e){if(0==e.length)throw new Error(\"GF.polymomial: wrong length\");if(0!==e[0])return e;let t=0;for(;t<e.length-1&&0==e[t];t++);return e.slice(t)},monomial(e,t){if(e<0)throw new Error(`GF.monomial: wrong degree=${e}`);if(0==t)return[0];let n=Kp(e+1,0);return n[0]=t,Jp.polynomial(n)},degree:e=>e.length-1,coefficient:(e,t)=>e[Jp.degree(e)-t],mulPoly(e,t){if(0===e[0]||0===t[0])return[0];const n=Kp(e.length+t.length-1,0);for(let r=0;r<e.length;r++)for(let i=0;i<t.length;i++)n[r+i]=Jp.add(n[r+i],Jp.mul(e[r],t[i]));return Jp.polynomial(n)},mulPolyScalar(e,t){if(0==t)return[0];if(1==t)return e;const n=Kp(e.length,0);for(let r=0;r<e.length;r++)n[r]=Jp.mul(e[r],t);return Jp.polynomial(n)},mulPolyMonomial(e,t,n){if(t<0)throw new Error(\"GF.mulPolyMonomial: wrong degree\");if(0==n)return[0];const r=Kp(e.length+t,0);for(let t=0;t<e.length;t++)r[t]=Jp.mul(e[t],n);return Jp.polynomial(r)},addPoly(e,t){if(0===e[0])return t;if(0===t[0])return e;let n=e,r=t;n.length>r.length&&([n,r]=[r,n]);let i=Kp(r.length,0),o=r.length-n.length,s=r.slice(0,o);for(let e=0;e<s.length;e++)i[e]=s[e];for(let e=o;e<r.length;e++)i[e]=Jp.add(n[e-o],r[e]);return Jp.polynomial(i)},remainderPoly(e,t){const n=Array.from(e);for(let r=0;r<e.length-t.length+1;r++){const e=n[r];if(0!==e)for(let i=1;i<t.length;i++)0!==t[i]&&(n[r+i]=Jp.add(n[r+i],Jp.mul(t[i],e)))}return n.slice(e.length-t.length+1,n.length)},divisorPoly(e){let t=[1];for(let n=0;n<e;n++)t=Jp.mulPoly(t,[1,Jp.pow(2,n)]);return t},evalPoly(e,t){if(0==t)return Jp.coefficient(e,0);let n=e[0];for(let r=1;r<e.length;r++)n=Jp.add(Jp.mul(t,n),e[r]);return n},euclidian(e,t,n){Jp.degree(e)<Jp.degree(t)&&([e,t]=[t,e]);let r=e,i=t,o=[0],s=[1];for(;2*Jp.degree(i)>=n;){let e=r,t=o;if(r=i,o=s,0===r[0])throw new Error(\"rLast[0] === 0\");i=e;let n=[0];const a=Jp.inv(r[0]);for(;Jp.degree(i)>=Jp.degree(r)&&0!==i[0];){const e=Jp.degree(i)-Jp.degree(r),t=Jp.mul(i[0],a);n=Jp.addPoly(n,Jp.monomial(e,t)),i=Jp.addPoly(i,Jp.mulPolyMonomial(r,e,t))}if(n=Jp.mulPoly(n,o),s=Jp.addPoly(n,t),Jp.degree(i)>=Jp.degree(r))throw new Error(`Division failed r: ${i}, rLast: ${r}`)}const a=Jp.coefficient(s,0);if(0==a)throw new Error(\"sigmaTilde(0) was zero\");const c=Jp.inv(a);return[Jp.mulPolyScalar(s,c),Jp.mulPolyScalar(i,c)]}};function Xp(e,t){const{words:n,shortBlocks:r,numBlocks:i,blockLen:o,total:s}=Zp.capacity(e,t),a=(c=n,{encode(e){const t=Jp.divisorPoly(c),n=Array.from(e);return n.push(...t.slice(0,-1).fill(0)),Uint8Array.from(Jp.remainderPoly(n,t))},decode(e){const t=e.slice(),n=Jp.polynomial(Array.from(e));let r=Kp(c,0),i=!1;for(let e=0;e<c;e++){const t=Jp.evalPoly(n,Jp.exp(e));r[r.length-1-e]=t,0!==t&&(i=!0)}if(!i)return t;r=Jp.polynomial(r);const o=Jp.monomial(c,1),[s,a]=Jp.euclidian(o,r,c),l=Kp(Jp.degree(s),0);let d=0;for(let e=1;e<256&&d<l.length;e++)0===Jp.evalPoly(s,e)&&(l[d++]=Jp.inv(e));if(d!==l.length)throw new Error(\"RS.decode: wrong errors number\");for(let e=0;e<l.length;e++){const n=t.length-1-Jp.log(l[e]);if(n<0)throw new Error(\"RS.decode: wrong error location\");const r=Jp.inv(l[e]);let i=1;for(let t=0;t<l.length;t++)e!==t&&(i=Jp.mul(i,Jp.add(1,Jp.mul(l[t],r))));t[n]=Jp.add(t[n],Jp.mul(Jp.evalPoly(a,r),Jp.inv(i)))}return t}});var c;return{encode(e){const t=[],n=[];for(let s=0;s<i;s++){const i=o+(s<r?0:1);t.push(e.subarray(0,i)),n.push(a.encode(e.subarray(0,i))),e=e.subarray(i)}const s=jp(...t),c=jp(...n),l=new Uint8Array(s.length+c.length);return l.set(s),l.set(c,s.length),l},decode(e){if(e.length!==s)throw new Error(`interleave.decode: len(data)=${e.length}, total=${s}`);const t=[];for(let e=0;e<i;e++){const i=e<r;t.push(new Uint8Array(n+o+(i?0:1)))}let c=0;for(let n=0;n<o;n++)for(let r=0;r<i;r++)t[r][n]=e[c++];for(let n=r;n<i;n++)t[n][o]=e[c++];for(let s=o;s<o+n;s++)for(let n=0;n<i;n++){const i=n<r;t[n][s+(i?0:1)]=e[c++]}const l=[];for(const e of t)l.push(...Array.from(a.decode(e)).slice(0,-n));return Uint8Array.from(l)}}}function Qp(e,t,n,r){let i=\"\",o=n.length;if(\"numeric\"===r){const e=Zp.alphabet.numeric.decode(n.split(\"\")),t=e.length;for(let n=0;n<t-2;n+=3)i+=$p(100*e[n]+10*e[n+1]+e[n+2],10);t%3==1?i+=$p(e[t-1],4):t%3==2&&(i+=$p(10*e[t-2]+e[t-1],7))}else if(\"alphanumeric\"===r){const e=Zp.alphabet.alphanumerc.decode(n.split(\"\")),t=e.length;for(let n=0;n<t-1;n+=2)i+=$p(45*e[n]+e[n+1],11);t%2==1&&(i+=$p(e[t-1],6))}else{if(\"byte\"!==r)throw new Error(\"encode: unsupported type\");{const e=function(e){if(\"string\"!=typeof e)throw new Error(\"utf8ToBytes expected string, got \"+typeof e);return new Uint8Array((new TextEncoder).encode(e))}(n);o=e.length,i=Array.from(e).map((e=>$p(e,8))).join(\"\")}}const{capacity:s}=Zp.capacity(e,t),a=$p(o,Zp.lengthBits(e,r));let c=Zp.modeBits[r]+a+i;if(c.length>s)throw new Error(\"Capacity overflow\");c+=\"0\".repeat(Math.min(4,Math.max(0,s-c.length))),c.length%8&&(c+=\"0\".repeat(8-c.length%8));const l=\"1110110000010001\";for(let e=0;c.length!==s;e++)c+=l[e%16];const d=Uint8Array.from(c.match(/(.{8})/g).map((e=>Number(`0b${e}`))));return Xp(e,t).encode(d)}function eg(e,t,n,r,i=!1){const o=function(e,t,n,r=!1){const i=Zp.size.encode(e);let o=new Fp(i+2);const s=new Fp(3).rect(0,3,!0).border(1,!1).border(1,!0).border(1,!1);o=o.embed(0,s).embed({x:-s.width,y:0},s).embed({x:0,y:-s.height},s),o=o.rectSlice(1,i);const a=new Fp(1).rect(0,1,!0).border(1,!1).border(1,!0),c=Zp.alignmentPatterns(e);for(const e of c)for(const t of c)void 0===o.data[e][t]&&o.embed({x:t-2,y:e-2},a);o=o.hLine({x:0,y:6},1/0,(({x:e},t)=>void 0===t?e%2==0:t)).vLine({x:6,y:0},1/0,(({y:e},t)=>void 0===t?e%2==0:t));{const e=Zp.formatBits(t,n),s=t=>!r&&1==(e>>t&1);for(let e=0;e<6;e++)o.data[e][8]=s(e);for(let e=6;e<8;e++)o.data[e+1][8]=s(e);for(let e=8;e<15;e++)o.data[i-15+e][8]=s(e);for(let e=0;e<8;e++)o.data[8][i-e-1]=s(e);for(let e=8;e<9;e++)o.data[8][15-e-1+1]=s(e);for(let e=9;e<15;e++)o.data[8][15-e-1]=s(e);o.data[i-8][8]=!r}if(e>=7){const t=Zp.versionBits(e);for(let e=0;e<18;e+=1){const n=!r&&1==(t>>e&1),s=Math.floor(e/3),a=e%3+i-8-3;o.data[s][a]=n,o.data[a][s]=n}}return o}(e,t,r,i);let s=0;const a=8*n.length;if(function(e,t,n){const r=e.height,i=Yp[t];let o=-1,s=r-1;for(let t=r-1;t>0;t-=2){for(6==t&&(t=5);;s+=o){for(let r=0;r<2;r+=1){const o=t-r;void 0===e.data[s][o]&&n(o,s,i(o,s))}if(s+o<0||s+o>=r)break}o=-o}}(o,r,((e,t,r)=>{let i=!1;s<a&&(i=0!=(n[s>>>3]>>(7-s&7)&1),s++),o.data[t][e]=i!==r})),s!==a)throw new Error(\"QR: bytes left after draw\");return o}function tg(e){const t=e.inverse(),n=e=>{let t=0;for(let n,r=0,i=1;r<e.length;r++)n===e[r]&&(i++,r!==e.length-1)||(i>=5&&(t+=i-5+3),n=e[r],i=1);return t};let r=0;e.data.forEach((e=>r+=n(e))),t.data.forEach((e=>r+=n(e)));let i=0,o=e.data;const s=e.width-1,a=e.height-1;for(let e=0;e<s;e++)for(let t=0;t<a;t++){const n=e+1,r=t+1;o[e][t]===o[n][t]&&o[n][t]===o[e][r]&&o[n][t]===o[n][r]&&(i+=3)}const c=e=>{const t=[!0,!1,!0,!0,!0,!1,!0],n=[!1,!1,!1,!1],r=[...t,...n],i=[...n,...t];let o=0;for(let t=0;t<e.length;t++)Up(e,r,t)&&(o+=40),Up(e,i,t)&&(o+=40);return o};let l=0;for(const t of e.data)l+=c(t);for(const e of t.data)l+=c(e);let d=0;e.rectRead(0,1/0,((e,t)=>d+=t?1:0));const u=d/(e.height*e.width)*100,h=10*Math.floor(Math.abs(u-50)/5);return r+i+l+h}function ng(e,t=\"raw\",n={}){const r=void 0!==n.ecc?n.ecc:\"medium\";!function(e){if(!zp.includes(e))throw new Error(`Invalid error correction mode=${e}. Expected: ${zp}`)}(r);const i=void 0!==n.encoding?n.encoding:function(e){let t=\"numeric\";for(let n of e)if(!Zp.alphabet.numeric.has(n)&&(t=\"alphanumeric\",!Zp.alphabet.alphanumerc.has(n)))return\"byte\";return t}(e);!function(e){if(!qp.includes(e))throw new Error(`Encoding: invalid mode=${e}. Expected: ${qp}`);if(\"kanji\"===e||\"eci\"===e)throw new Error(`Encoding: ${e} is not supported (yet?).`)}(i),void 0!==n.mask&&function(e){if(![0,1,2,3,4,5,6,7].includes(e)||!Yp[e])throw new Error(`Invalid mask=${e}. Expected number [0..7]`)}(n.mask);let o,s=n.version,a=new Error(\"Unknown error\");if(void 0!==s)!function(e){if(!Number.isSafeInteger(e)||e<1||e>40)throw new Error(`Invalid version=${e}. Expected number [1..40]`)}(s),o=Qp(s,r,e,i);else for(let t=1;t<=40;t++)try{o=Qp(t,r,e,i),s=t;break}catch(e){a=e}if(!s||!o)throw a;let c=function(e,t,n,r){if(void 0===r){const i=function(){let e,t=1/0;return{add(n,r){n>=t||(e=r,t=n)},get:()=>e,score:()=>t}}();for(let r=0;r<Yp.length;r++)i.add(tg(eg(e,t,n,r,!0)),r);r=i.get()}if(void 0===r)throw new Error(\"Cannot find mask\");return eg(e,t,n,r)}(s,r,o,n.mask);c.assertDrawn();const l=void 0===n.border?2:n.border;if(!Number.isSafeInteger(l))throw new Error(\"Wrong border type=\"+typeof l);if(c=c.border(l,!1),void 0!==n.scale&&(c=c.scale(n.scale)),\"raw\"===t)return c.data;if(\"ascii\"===t)return c.toASCII();if(\"svg\"===t)return c.toSVG();if(\"gif\"===t)return c.toGIF();if(\"term\"===t)return c.toTerm();throw new Error(`Unknown output: ${t}`)}const rg=({Icon:e,text:t})=>Bf(\"div\",{class:\"flexContainer\",style:{padding:\"6\",flexDirection:\"row\"}},Bf(\"div\",{class:\"flexItem1\"},Bf(e,null)),Bf(\"div\",{class:\"flexItem11\"},Bf(\"span\",{style:{lineHeight:\"2\",color:\"black\"}},t))),ig=()=>Bf(\"svg\",{width:\"20\",height:\"18\",viewBox:\"0 0 20 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M20.0002 7.9702V10.0302C20.0002 10.5802 19.5602 11.0302 19.0002 11.0502H17.0402C15.9602 11.0502 14.9702 10.2602 14.8802 9.1802C14.8202 8.5502 15.0602 7.9602 15.4802 7.5502C15.8502 7.1702 16.3602 6.9502 16.9202 6.9502H19.0002C19.5602 6.9702 20.0002 7.4202 20.0002 7.9702Z\",fill:\"#037DD6\"}),Bf(\"path\",{d:\"M18.47 12.55H17.04C15.14 12.55 13.54 11.12 13.38 9.3C13.29 8.26 13.67 7.22 14.43 6.48C15.07 5.82 15.96 5.45 16.92 5.45H18.47C18.76 5.45 19 5.21 18.97 4.92C18.75 2.49 17.14 0.83 14.75 0.55C14.51 0.51 14.26 0.5 14 0.5H5C4.72 0.5 4.45 0.52 4.19 0.56C1.64 0.88 0 2.78 0 5.5V12.5C0 15.26 2.24 17.5 5 17.5H14C16.8 17.5 18.73 15.75 18.97 13.08C19 12.79 18.76 12.55 18.47 12.55ZM11 6.75H5C4.59 6.75 4.25 6.41 4.25 6C4.25 5.59 4.59 5.25 5 5.25H11C11.41 5.25 11.75 5.59 11.75 6C11.75 6.41 11.41 6.75 11 6.75Z\",fill:\"#037DD6\"})),og=()=>Bf(\"svg\",{width:\"20\",height:\"18\",viewBox:\"0 0 20 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M14.44 0.0999756C12.63 0.0999756 11.01 0.979976 10 2.32998C8.99 0.979976 7.37 0.0999756 5.56 0.0999756C2.49 0.0999756 0 2.59998 0 5.68998C0 6.87998 0.19 7.97998 0.52 8.99998C2.1 14 6.97 16.99 9.38 17.81C9.72 17.93 10.28 17.93 10.62 17.81C13.03 16.99 17.9 14 19.48 8.99998C19.81 7.97998 20 6.87998 20 5.68998C20 2.59998 17.51 0.0999756 14.44 0.0999756Z\",fill:\"#037DD6\"})),sg=()=>Bf(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M16.28 7.53V6.28C16.28 3.58 15.63 0 10 0C4.37 0 3.72 3.58 3.72 6.28V7.53C0.92 7.88 0 9.3 0 12.79V14.65C0 18.75 1.25 20 5.35 20H14.65C18.75 20 20 18.75 20 14.65V12.79C20 9.3 19.08 7.88 16.28 7.53ZM10 16.74C8.33 16.74 6.98 15.38 6.98 13.72C6.98 12.05 8.34 10.7 10 10.7C11.66 10.7 13.02 12.06 13.02 13.72C13.02 15.39 11.67 16.74 10 16.74ZM5.35 7.44C5.27 7.44 5.2 7.44 5.12 7.44V6.28C5.12 3.35 5.95 1.4 10 1.4C14.05 1.4 14.88 3.35 14.88 6.28V7.45C14.8 7.45 14.73 7.45 14.65 7.45H5.35V7.44Z\",fill:\"#037DD6\"})),ag=()=>Bf(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M16.4405 8.8999C20.0405 9.2099 21.5105 11.0599 21.5105 15.1099V15.2399C21.5105 19.7099 19.7205 21.4999 15.2505 21.4999H8.74047C4.27047 21.4999 2.48047 19.7099 2.48047 15.2399V15.1099C2.48047 11.0899 3.93047 9.2399 7.47047 8.9099\",stroke:\"white\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M12 2V14.88\",stroke:\"white\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M15.3504 12.6499L12.0004 15.9999L8.65039 12.6499\",stroke:\"white\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}));var cg;!function(e){e.SDK_MODAL_VIEWED=\"sdk_modal_viewed\",e.SDK_MODAL_BUTTON_CLICKED=\"sdk_modal_button_clicked\",e.SDK_MODAL_TOGGLE_CHANGED=\"sdk_modal_toggle_changed\"}(cg||(cg={}));const lg=class{constructor(e){df(this,e),this.close=qf(this,\"close\",7),this.startDesktopOnboarding=qf(this,\"startDesktopOnboarding\",7),this.trackAnalytics=qf(this,\"trackAnalytics\",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.onClose=this.onClose.bind(this),this.onStartDesktopOnboardingHandler=this.onStartDesktopOnboardingHandler.bind(this),this.setTab=this.setTab.bind(this),this.render=this.render.bind(this),this.setTab(this.preferDesktop?1:2),this.i18nInstance=new Dp}componentDidLoad(){this.trackAnalytics.emit({event:cg.SDK_MODAL_VIEWED,params:{extensionInstalled:!1,tab:1===this.tab?\"desktop\":\"mobile\"}})}async connectedCallback(){await this.i18nInstance.init({fallbackLng:\"en\"}),this.translationsLoaded=!0}updatePreferDesktop(e){e?this.setTab(1):this.setTab(2)}onClose(){this.close.emit()}onStartDesktopOnboardingHandler(){this.trackAnalytics.emit({event:cg.SDK_MODAL_BUTTON_CLICKED,params:{button_type:\"install_extension\",tab:\"desktop\"}}),this.startDesktopOnboarding.emit()}setTab(e,t=!1){t&&this.trackAnalytics.emit({event:cg.SDK_MODAL_TOGGLE_CHANGED,params:{toggle:1===this.tab?\"desktop_to_mobile\":\"mobile_to_desktop\"}}),this.tab=e,this.isDefaultTab=!1}render(){if(!this.translationsLoaded)return null;const e=e=>this.i18nInstance.t(e),t=this.isDefaultTab?this.preferDesktop?1:2:this.tab,n=ng(this.link,\"svg\",{ecc:\"medium\",scale:2});return Bf(Rp,{className:\"install-model\"},Bf(\"div\",{class:\"backdrop\",onClick:()=>this.onClose()}),Bf(\"div\",{class:\"modal\"},Bf(\"div\",{class:\"closeButtonContainer\"},Bf(\"div\",{class:\"right\"},Bf(\"span\",{class:\"closeButton\",onClick:()=>this.onClose()},Bf(Op,null)))),Bf(\"div\",{class:\"logoContainer\"},Bf(Tp,null)),Bf(\"div\",null,Bf(\"div\",{class:\"tabcontainer\"},Bf(\"div\",{class:\"flexContainer\"},Bf(\"div\",{onClick:()=>this.setTab(1,!0),class:\"tab flexItem \"+(1===t?\"tabactive\":\"\")},e(\"DESKTOP\")),Bf(\"div\",{onClick:()=>this.setTab(2,!0),class:\"tab flexItem \"+(2===t?\"tabactive\":\"\")},e(\"MOBILE\")))),Bf(\"div\",{style:{display:1===t?\"none\":\"block\"}},Bf(\"div\",{class:\"flexContainer\"},Bf(\"div\",{class:\"flexItem\",style:{textAlign:\"center\",marginTop:\"4\"}},n&&Bf(\"div\",{id:\"sdk-mm-qrcode\",class:\"center\",innerHTML:n}),Bf(\"div\",{class:\"connectMobileText\"},e(\"SCAN_TO_CONNECT\"),\" \",Bf(\"br\",null),Bf(\"span\",{class:\"blue\"},Bf(\"b\",null,e(\"META_MASK_MOBILE_APP\"))))))),Bf(\"div\",{style:{display:2===t?\"none\":\"block\"}},Bf(\"div\",{class:\"item\"},Bf(rg,{Icon:og,text:e(\"INSTALL_MODAL.TRUSTED_BY_USERS\")})),Bf(\"div\",{class:\"item\"},Bf(rg,{Icon:ig,text:e(\"INSTALL_MODAL.LEADING_CRYPTO_WALLET\")})),Bf(\"div\",{class:\"item\"},Bf(rg,{Icon:sg,text:e(\"INSTALL_MODAL.CONTROL_DIGITAL_INTERACTIONS\")})),Bf(\"button\",{class:\"button\",onClick:()=>this.onStartDesktopOnboardingHandler()},Bf(ag,null),Bf(\"span\",{class:\"installExtensionText\"},e(\"INSTALL_MODAL.INSTALL_META_MASK_EXTENSION\"))))),Bf(Lp,{version:this.sdkVersion})))}get el(){return zf(this)}static get watchers(){return{preferDesktop:[\"updatePreferDesktop\"]}}};lg.style=\".flexContainer {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n flex-direction: row;\\n}\\n\\n.flexItem {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem11 {\\n flex: 11;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem1 {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.tab {\\n padding: 8px;\\n cursor: pointer;\\n background-color: #F2F4F6;\\n font-size: 12px;\\n text-align: center;\\n color: #24292E;\\n}\\n\\n.tabcontainer {\\n padding: 4px;\\n background-color: #F2F4F6;\\n border-radius: 8px;\\n margin-bottom: 30px;\\n margin-top: 30px;\\n}\\n\\n.tabactive {\\n background-color: white;\\n -webkit-transition: background-color 300ms linear;\\n -ms-transition: background-color 300ms linear;\\n transition: background-color 300ms linear;\\n border-radius: 8px;\\n}\\n\\n.item {\\n font-size: 12px;\\n margin-bottom: 16px;\\n border-radius: 8px;\\n padding: 10px;\\n border: 2px #F2F4F6 solid;\\n color: #24292E;\\n}\\n\\n.extensionLabel {\\n font-style: normal;\\n font-weight: bold;\\n font-size: 14px;\\n text-align: cetner;\\n color: #24272A;\\n}\\n\\n.notice {\\n font-size: 12px;\\n margin-left: 10px;\\n margin-right: 10px;\\n color: grey;\\n}\\n\\n.button {\\n margin-top: 41.5px;\\n margin-bottom: 20px;\\n width: 100%;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n padding: 12px 20px;\\n background: #037DD6;\\n border-radius: 32px;\\n color: white;\\n border: 0;\\n font-size: 14px;\\n cursor: pointer;\\n}\\n\\n.backdrop {\\n visibility: visible;\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100%;\\n z-index: 99998;\\n background: rgba(0, 0, 0, 0.87);\\n opacity: 0.3;\\n}\\n\\n.modal {\\n visibility: visible;\\n position: fixed;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 99999;\\n background: white;\\n padding: 20px;\\n border-radius: 8px;\\n top: 50%;\\n max-width: 100%;\\n width: 460px;\\n min-width: 300px;\\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n color: #BBC0C5;\\n cursor: pointer;\\n}\\n\\n.logoContainer {\\n margin-left: 24px;\\n margin-right: 24px;\\n margin-top: 24px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.connectMobileText {\\n font-size: 14px;\\n color: black;\\n margin-top: 28px;\\n margin-bottom: 28px;\\n line-height: 2;\\n}\\n\\n.blue {\\n color: #037DD6;\\n font-weight: 700;\\n}\\n\\n.installExtensionText {\\n margin-left: 10px;\\n}\\n\\n.center {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.right {\\n display: flex;\\n align-items: center;\\n justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n svg {\\n width: 50%;\\n }\\n}\";var dg=Object.freeze({__proto__:null,mm_install_modal:lg});const ug=class{constructor(e){df(this,e),this.close=qf(this,\"close\",7),this.disconnect=qf(this,\"disconnect\",7),this.updateOTPValue=qf(this,\"updateOTPValue\",7),this.displayOTP=void 0,this.sdkVersion=void 0,this.otpCode=void 0,this.translationsLoaded=!1,this.i18nInstance=new Dp}async connectedCallback(){await this.i18nInstance.init({fallbackLng:\"en\"}),this.translationsLoaded=!0}onClose(){this.close.emit()}onDisconnect(){this.disconnect.emit()}onUpdateOTPValueHandler(e){this.updateOTPValue.emit({otpValue:e})}disconnectedCallback(){this.onClose()}render(){var e;if(!this.translationsLoaded)return null;const t=null===(e=this.displayOTP)||void 0===e||e,n=this.sdkVersion,r=e=>this.i18nInstance.t(e);return Bf(Rp,{className:\"pending-modal\"},Bf(\"div\",{class:\"backdrop\",onClick:()=>this.onClose()}),Bf(\"div\",{class:\"modal\"},Bf(\"div\",{class:\"closeButtonContainer\"},Bf(\"div\",{class:\"right\"},Bf(\"span\",{class:\"closeButton\",onClick:()=>this.onClose()},Bf(Op,null)))),Bf(\"div\",{class:\"logoContainer\"},Bf(Tp,null)),Bf(\"div\",null,Bf(\"div\",{class:\"flexContainer\",style:{flexDirection:\"column\",color:\"black\"}},Bf(\"div\",{class:\"flexItem\",style:{textAlign:\"center\",marginTop:\"30px\",marginBottom:\"30px\",fontSize:\"16px\"}},r(t?\"PENDING_MODAL.OPEN_META_MASK_SELECT_CODE\":\"PENDING_MODAL.OPEN_META_MASK_CONTINUE\")),Bf(\"div\",{id:\"sdk-mm-otp-value\",style:{padding:\"10px\",fontSize:\"32px\",display:this.otpCode?\"block\":\"none\"}},this.otpCode),t&&Bf(\"div\",{class:\"notice\"},\"* \",r(\"PENDING_MODAL.NUMBER_AFTER_OPEN_NOTICE\"))),Bf(\"div\",{style:{marginTop:\"20px\"}},Bf(\"button\",{class:\"button blue\",style:{marginTop:\"5px\",color:\"#0376C9\",borderColor:\"#0376C9\",borderWidth:\"1px\",borderStyle:\"solid\",backgroundColor:\"white\"},onClick:()=>this.onDisconnect()},r(\"PENDING_MODAL.DISCONNECT\")))),Bf(Lp,{version:n})))}get el(){return zf(this)}};ug.style=\".flexContainer {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n flex-direction: row;\\n}\\n\\n.flexItem {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem11 {\\n flex: 11;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem1 {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.tab {\\n padding: 8px;\\n cursor: pointer;\\n background-color: #F2F4F6;\\n font-size: 12px;\\n text-align: center;\\n color: #24292E;\\n}\\n\\n.tabcontainer {\\n padding: 4px;\\n background-color: #F2F4F6;\\n border-radius: 8px;\\n margin-bottom: 30px;\\n margin-top: 30px;\\n}\\n\\n.tabactive {\\n background-color: white;\\n -webkit-transition: background-color 300ms linear;\\n -ms-transition: background-color 300ms linear;\\n transition: background-color 300ms linear;\\n border-radius: 8px;\\n}\\n\\n.item {\\n font-size: 12px;\\n margin-bottom: 16px;\\n border-radius: 8px;\\n padding: 10px;\\n border: 2px #F2F4F6 solid;\\n color: #24292E;\\n}\\n\\n.extensionLabel {\\n font-style: normal;\\n font-weight: bold;\\n font-size: 14px;\\n text-align: cetner;\\n color: #24272A;\\n}\\n\\n.notice {\\n font-size: 12px;\\n margin-left: 10px;\\n margin-right: 10px;\\n color: grey;\\n}\\n\\n.button {\\n margin-top: 41.5px;\\n margin-bottom: 20px;\\n width: 100%;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n padding: 12px 20px;\\n background: #037DD6;\\n border-radius: 32px;\\n color: white;\\n border: 0;\\n font-size: 14px;\\n cursor: pointer;\\n}\\n\\n.backdrop {\\n visibility: visible;\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100%;\\n z-index: 99998;\\n background: rgba(0, 0, 0, 0.87);\\n opacity: 0.3;\\n}\\n\\n.modal {\\n visibility: visible;\\n position: fixed;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 99999;\\n background: white;\\n padding: 20px;\\n border-radius: 8px;\\n top: 50%;\\n max-width: 100%;\\n width: 460px;\\n min-width: 300px;\\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n color: #BBC0C5;\\n cursor: pointer;\\n}\\n\\n.logoContainer {\\n margin-left: 24px;\\n margin-right: 24px;\\n margin-top: 24px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.connectMobileText {\\n font-size: 14px;\\n color: black;\\n margin-top: 28px;\\n margin-bottom: 28px;\\n line-height: 2;\\n}\\n\\n.blue {\\n color: #037DD6;\\n font-weight: 700;\\n}\\n\\n.installExtensionText {\\n margin-left: 10px;\\n}\\n\\n.center {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.right {\\n display: flex;\\n align-items: center;\\n justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n svg {\\n width: 50%;\\n }\\n}\";var hg=Object.freeze({__proto__:null,mm_pending_modal:ug});const fg=()=>Bf(\"svg\",{width:\"21\",height:\"15\",viewBox:\"0 0 21 15\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M14.1364 14.9851C13.5909 14.9851 13.2273 14.5851 13.2273 13.9851C13.2273 13.3851 13.5909 12.9851 14.1364 12.9851C16.6818 12.9851 18.6818 10.7851 18.6818 7.98508C18.6818 5.18508 16.6818 2.98508 14.1364 2.98508C11.5909 2.98508 9.59091 5.18508 9.59091 7.98508C9.59091 8.58508 9.22727 8.98508 8.68182 8.98508C8.13636 8.98508 7.77273 8.58508 7.77273 7.98508C7.77273 4.08508 10.5909 0.985077 14.1364 0.985077C17.6818 0.985077 20.5 4.08508 20.5 7.98508C20.5 11.8851 17.6818 14.9851 14.1364 14.9851ZM6.68182 14.7851C3.22727 14.7851 0.5 11.6851 0.5 7.98508C0.5 4.28508 3.22727 1.18508 6.68182 1.18508C7.22727 1.18508 7.59091 1.58508 7.59091 2.18508C7.59091 2.78508 7.22727 3.18508 6.68182 3.18508C4.22727 3.18508 2.31818 5.38508 2.31818 7.98508C2.31818 10.5851 4.22727 12.7851 6.68182 12.7851C9.13636 12.7851 11.0455 10.6851 11.0455 7.98508C11.0455 7.38508 11.4091 6.98508 11.9545 6.98508C12.5 6.98508 12.8636 7.38508 12.8636 7.98508C12.7727 11.6851 10.0455 14.7851 6.68182 14.7851Z\",fill:\"white\"})),pg=()=>Bf(\"svg\",{width:\"400\",height:\"300\",viewBox:\"0 0 467 300\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Bf(\"path\",{d:\"M312.387 280.629C312.549 280.583 312.247 280.735 312.387 280.629L339.678 260.425C340.088 260.118 340.132 259.156 340.07 258.647C340.008 258.138 339.573 258.257 339.106 258.084L311.712 247.455C311.292 247.301 311.308 247.402 310.939 247.673C310.569 247.944 310.356 248.21 310.356 248.672L310.459 279.504C310.461 280.025 311.163 280.619 311.614 280.847C311.913 280.996 312.072 280.718 312.387 280.629ZM336.204 259.736L312.979 276.292L313.439 251.139L336.204 259.736Z\",fill:\"url(#paint0_linear_1356_14057)\"}),Bf(\"path\",{d:\"M324.639 260.342C324.358 259.547 323.485 258.91 322.707 259.215C319.6 260.432 318.17 262.313 317.287 264.066C316.482 265.665 316.197 267.482 314.188 268.269C312.178 269.055 310.763 268.663 309.162 268.007C307.406 267.287 305.504 266.182 302.397 267.399C299.289 268.616 297.859 270.497 296.976 272.25C296.171 273.849 295.697 274.886 293.685 275.673C291.675 276.459 290.261 276.067 288.659 275.411C286.903 274.691 284.999 273.587 281.894 274.803C278.789 276.019 277.549 278.681 276.666 280.434C275.861 282.034 275.386 283.07 273.374 283.857C272.596 284.161 271.931 285.055 272.211 285.849C272.492 286.644 273.365 287.281 274.143 286.977C277.25 285.76 278.68 283.879 279.563 282.125C280.368 280.526 280.65 278.71 282.662 277.923C284.672 277.136 286.087 277.528 287.688 278.184C289.444 278.904 291.348 280.009 294.453 278.793C297.561 277.576 298.991 275.695 299.874 273.941C300.679 272.342 301.153 271.306 303.165 270.519C305.175 269.732 306.589 270.124 308.191 270.78C309.947 271.5 311.849 272.605 314.956 271.388C318.063 270.172 319.301 267.511 320.184 265.757C320.989 264.158 321.466 263.121 323.476 262.335C324.254 262.032 324.919 261.137 324.639 260.342Z\",fill:\"url(#paint1_linear_1356_14057)\"}),Bf(\"path\",{d:\"M389.034 111.124C388.968 112.406 387.342 113.113 386.324 113.549C384.297 114.419 382.089 114.493 379.942 114.5C376.607 114.509 373.215 114.163 369.89 113.976C366.712 113.798 363.156 113.311 360.03 114.232C357.705 114.919 355.667 116.762 353.452 117.739C351.129 118.765 348.957 119.198 346.489 119.687C335.569 121.85 323.587 120.825 312.656 119.977C311.92 119.92 312.539 118.997 313.237 118.981C313.207 118.815 313.001 118.394 313.045 118.201C313.086 118.029 312.781 117.586 312.853 117.421C312.67 117.198 313.316 117.427 313.626 117.204C315.912 115.557 318.721 114.79 321.363 115.041C324.677 115.355 327.293 116.04 330.641 115.781C334.392 115.491 338.125 114.787 341.857 114.312C345.142 113.892 349.09 113.941 352.106 112.28C352.916 111.834 353.137 111.262 353.269 110.287C353.331 109.828 353.672 108.969 353.658 108.511C353.629 107.529 354.191 107.886 355.013 107.298C356.857 105.981 358.274 105.516 360.428 105.784C362.841 106.083 365.264 107.273 367.578 107.953C370.761 108.888 374.328 108.646 377.631 108.477C380.517 108.329 383.141 107.901 385.944 108.653C387.013 108.941 389.104 109.745 389.034 111.124Z\",fill:\"url(#paint2_linear_1356_14057)\"}),Bf(\"path\",{d:\"M278.118 85.4414C280.313 83.8186 283.302 83.9 285.853 83.2728C290.501 82.127 295.644 78.4476 300.549 79.1524C301.299 79.2595 300.904 81.0355 300.159 80.9295C300.131 80.9256 300.187 80.9333 300.159 80.9295C300.089 81.0185 299.516 81.1051 299.385 81.1463C294.999 82.515 292.895 87.5083 289.126 89.8598C287.799 90.688 286.771 90.8351 285.258 90.9441C283.515 91.0691 280.964 90.5775 279.269 90.1219C277.15 89.5532 275.965 87.034 278.118 85.4414Z\",fill:\"url(#paint3_linear_1356_14057)\"}),Bf(\"path\",{d:\"M122.567 166.093C113.597 172.832 104.535 179.836 99.517 190.092C98.5342 192.099 97.519 195.019 97.9533 197.204C98.9699 202.316 105.76 203.049 110.691 201.96C113.468 201.347 116.325 199.231 115.921 196.319C115.576 193.81 113.158 192.986 112.072 190.73C110.779 188.04 112.35 184.97 114.218 182.62C128.134 165.099 150.074 157.394 171.093 151.607C175.385 150.425 180.897 147.69 180.581 143.099C180.372 140.072 177.118 137.683 174.221 137.383C171.324 137.082 168.481 138.773 165.715 139.776C158.416 142.419 151.17 143.799 143.489 143.526C136.865 143.29 130.976 143.316 129.562 150.781C128.138 158.276 129.53 160.863 122.567 166.093Z\",fill:\"url(#paint4_linear_1356_14057)\"}),Bf(\"path\",{d:\"M79.1056 153.531C60.3932 164.378 43.7478 178.354 32.8214 197.415C30.3313 201.76 27.9216 206.554 27.1821 211.512C26.4448 216.47 27.7591 222.525 30.8133 226.337C34.908 231.446 41.6938 232.915 48.1811 233.125C50.7248 233.208 53.0035 233.066 55.3316 231.947C57.6602 230.83 59.7548 228.359 59.5978 225.742C59.3303 221.315 54.5491 219.665 50.9271 217.34C42.6566 212.037 40.4958 199.493 44.2381 190.032C47.9803 180.57 55.8228 173.173 63.2316 166.338C67.229 162.651 71.5194 158.372 76.777 157.522C79.9167 157.015 83.4706 157.589 86.6295 157.252C93.9004 156.479 99.64 151.404 105.588 146.912C115.048 139.765 126.045 134.283 137.501 132.093C141.913 131.248 146.293 130.493 149.682 127.831C151.37 126.507 150.803 123.567 148.726 123.93C138.542 125.713 128.652 131.135 119.142 134.758C105.627 139.914 91.7133 146.223 79.1056 153.531Z\",fill:\"url(#paint5_linear_1356_14057)\"}),Bf(\"path\",{d:\"M96.3677 117.321C96.0315 116.64 95.2914 116.612 94.6293 116.975C91.9858 118.417 91.5452 120.509 90.9466 122.178C90.4004 123.702 89.3647 124.67 87.6542 125.604C85.9437 126.538 85.0983 126.316 83.5956 125.91C81.9481 125.465 79.8603 125.424 77.2168 126.866C74.5734 128.309 74.1348 130.401 73.5341 132.07C72.9879 133.593 71.9522 134.562 70.2417 135.496C68.5313 136.43 67.6859 136.208 66.1832 135.801C64.5357 135.357 62.2569 134.538 59.6128 135.978C56.9694 137.42 56.5308 139.512 55.9301 141.181C55.3839 142.705 54.5398 144.454 52.8293 145.388C52.1667 145.748 52.1006 146.485 52.439 147.165C52.7752 147.845 53.5153 147.874 54.1773 147.511C56.8208 146.069 57.2594 143.977 57.86 142.307C58.4062 140.784 59.4419 139.815 61.1524 138.881C62.8629 137.948 63.7083 138.17 65.211 138.576C66.8585 139.021 68.9458 139.059 71.5898 137.619C74.2333 136.177 74.6718 134.085 75.2725 132.416C75.8187 130.892 76.8544 129.924 78.5649 128.99C80.2754 128.056 81.1207 128.278 82.6235 128.684C84.2709 129.129 86.5503 129.95 89.1938 128.507C91.8373 127.065 92.2779 124.973 92.8765 123.304C93.4227 121.78 94.2663 120.03 95.9773 119.098C96.6378 118.738 96.7039 118.001 96.3677 117.321Z\",fill:\"#FBC49D\"}),Bf(\"path\",{d:\"M391.827 164.699C392.04 164.639 392.39 164.573 392.6 164.481C393.87 163.921 395.363 162.429 395.893 161.051C396.421 159.673 396.237 158.321 395.712 156.931C394.629 154.061 391.777 152.62 389.155 153.775C386.531 154.931 384.962 158.455 386.042 161.325C387.038 163.963 389.369 165.392 391.827 164.699ZM394.166 157.367C394.529 158.332 394.52 159.751 394.156 160.706C393.792 161.662 393.1 162.534 392.218 162.921C390.398 163.723 388.338 162.878 387.589 160.889C387.226 159.925 387.234 158.506 387.599 157.55C387.963 156.594 388.654 155.723 389.536 155.336C391.356 154.534 393.416 155.376 394.166 157.367Z\",fill:\"#86E29B\"}),Bf(\"path\",{d:\"M62.7198 108.691C64.4912 108.191 66.6152 106.609 67.5596 104.824C68.4273 103.187 68.465 101.455 67.9609 99.7066C67.4547 97.9586 66.0792 96.5141 64.4963 95.6786C62.9135 94.843 61.2077 94.8578 59.4756 95.4255C57.7435 95.9933 56.2768 97.4364 55.409 99.074C53.6185 102.456 55.2032 106.494 58.4723 108.22C60.0142 109.035 61.1315 109.138 62.7198 108.691ZM60.6304 96.7682C61.819 96.4332 63.0232 96.8871 64.1048 97.4571C65.2463 98.0603 66.0495 98.8796 66.4145 100.142C66.7791 101.403 66.4488 103.299 65.8224 104.48C64.5299 106.919 61.2212 107.686 58.8638 106.441C56.5063 105.197 55.8538 101.858 57.1462 99.4185C57.7726 98.2375 58.6059 97.3957 59.8573 96.9862C59.9214 96.9635 60.5631 96.7872 60.6304 96.7682Z\",fill:\"#FFB0EB\"}),Bf(\"path\",{d:\"M77.0217 242.979C75.9542 243.28 75.1664 242.151 74.9029 241.074C74.6394 239.996 75 239.378 76.0676 239.077C77.1351 238.776 78.5053 238.907 78.7688 239.984C79.0323 241.061 78.0893 242.678 77.0217 242.979Z\",fill:\"url(#paint6_linear_1356_14057)\"}),Bf(\"path\",{d:\"M380.506 184.577C379.439 184.878 378.651 183.749 378.387 182.672C378.124 181.594 378.484 180.976 379.552 180.675C380.619 180.374 381.99 180.505 382.253 181.582C382.517 182.659 381.574 184.276 380.506 184.577Z\",fill:\"url(#paint7_linear_1356_14057)\"}),Bf(\"path\",{d:\"M348.82 246.969C347.752 247.27 346.382 247.14 346.119 246.063C345.855 244.985 346.798 243.369 347.866 243.068C348.933 242.767 349.721 243.896 349.985 244.973C350.248 246.05 349.888 246.669 348.82 246.969Z\",fill:\"url(#paint8_linear_1356_14057)\"}),Bf(\"path\",{d:\"M140.419 282.412C139.351 282.713 138.754 282.365 138.491 281.288C138.227 280.21 138.397 278.812 139.464 278.511C140.532 278.21 142.093 279.121 142.357 280.198C142.62 281.275 141.486 282.111 140.419 282.412Z\",fill:\"url(#paint9_linear_1356_14057)\"}),Bf(\"path\",{d:\"M121.462 101.679C120.395 101.979 119.798 101.631 119.534 100.554C119.271 99.4764 119.44 98.0779 120.508 97.777C121.575 97.4761 123.136 98.3868 123.4 99.4642C123.663 100.542 122.53 101.378 121.462 101.679Z\",fill:\"url(#paint10_linear_1356_14057)\"}),Bf(\"path\",{d:\"M370.749 159.005C369.682 159.306 368.311 159.175 368.048 158.098C367.784 157.021 368.727 155.404 369.795 155.103C370.863 154.802 371.65 155.931 371.914 157.008C372.177 158.086 371.817 158.704 370.749 159.005Z\",fill:\"url(#paint11_linear_1356_14057)\"}),Bf(\"path\",{d:\"M384.211 245.345C383.143 245.646 381.773 245.515 381.51 244.438C381.246 243.361 382.189 241.744 383.257 241.443C384.324 241.142 385.112 242.271 385.376 243.348C385.639 244.426 385.278 245.044 384.211 245.345Z\",fill:\"url(#paint12_linear_1356_14057)\"}),Bf(\"path\",{d:\"M364.771 41.3873C363.063 41.8687 361.337 40.8616 360.915 39.1378C360.493 37.414 361.536 35.6263 363.244 35.1449C364.953 34.6634 366.679 35.6706 367.101 37.3944C367.522 39.1182 366.479 40.9059 364.771 41.3873Z\",fill:\"url(#paint13_linear_1356_14057)\"}),Bf(\"path\",{d:\"M404.311 77.905C404.602 77.8231 404.875 77.9236 405.084 77.6871C405.437 77.2908 404.814 76.6385 404.703 76.1265L401.277 58.7418C401.149 58.163 400.687 57.5371 400.123 57.3991C399.558 57.2611 398.969 57.3812 398.576 57.835L385.784 73.1179C385.395 73.564 385.199 74.3453 385.393 74.8964C385.585 75.4481 385.978 76.1646 386.548 76.2391L403.538 78.123C403.744 78.1479 404.114 77.9607 404.311 77.905ZM398.948 62.7348L401.811 74.4394L389.841 72.8085L398.948 62.7348Z\",fill:\"#FFB0EB\"}),Bf(\"path\",{d:\"M97.5393 295.311C97.7108 295.263 97.4284 295.461 97.5393 295.311L108.785 280.464C108.975 280.211 108.718 279.972 108.594 279.684C108.47 279.396 108.124 279.917 107.821 279.902L88.5106 278.672C88.2101 278.659 87.895 278.62 87.7374 278.89C87.5798 279.159 87.7755 279.402 87.9283 279.67L96.5753 294.749C96.7102 294.99 97.2696 295.297 97.5393 295.311C97.6283 295.319 97.4556 295.335 97.5393 295.311ZM106.465 281.118L96.9667 292.97L90.6295 280.577L106.465 281.118Z\",fill:\"#86E29B\"}),Bf(\"path\",{d:\"M393.699 108.848C389.518 104.446 414.629 114.366 413.945 120.659C413.259 126.952 401.355 129.102 403.894 123.491C406.042 118.747 400.376 115.876 393.699 108.848Z\",fill:\"#FBC49D\"}),Bf(\"path\",{d:\"M139.414 115.959C139.434 115.953 139.392 115.965 139.414 115.959C141.963 115.2 143.436 111.976 142.717 109.189C142.37 107.839 141.526 107.199 140.408 106.504C139.289 105.808 138.171 105.449 136.933 105.815C135.698 106.182 134.85 107.033 134.222 108.247C133.595 109.461 133.282 111.234 133.63 112.585C133.978 113.935 134.821 114.574 135.94 115.27C137.04 115.952 138.199 116.301 139.414 115.959ZM137.315 107.375C138.222 107.12 139.005 106.994 139.825 107.502C140.661 108.02 140.912 108.618 141.171 109.625C141.708 111.704 140.935 113.834 139.032 114.398C138.11 114.675 137.356 114.791 136.522 114.272C135.686 113.753 135.436 113.155 135.176 112.149C134.917 111.142 134.718 109.714 135.186 108.81C135.654 107.905 136.394 107.649 137.315 107.375C137.329 107.371 137.299 107.38 137.315 107.375Z\",fill:\"#75C4FD\"}),Bf(\"path\",{d:\"M308.981 78.7519C310.052 78.4043 311.158 78.7096 312.265 78.6613C313.655 78.6006 314.936 78.517 316.323 78.3531C319.497 77.9795 322.798 77.4906 325.984 77.3012C329.309 77.1025 332.514 76.8551 335.836 77.0295C338.809 77.1842 342.163 77.3405 345.105 77.7558C352.129 78.7468 359.331 79.0578 366.347 80.1158C372.252 81.008 377.93 82.1319 383.722 83.5644C385.925 84.0054 388.267 85.0754 389.126 85.3792C389.421 85.4833 389.37 85.8347 389.317 86.1595C389.306 86.2271 389.353 86.1146 389.317 86.1595C388.269 87.414 386.564 86.8124 385.259 86.4677C384.406 86.241 381.488 85.9494 381.011 85.9957C380.14 86.0815 379.277 86.014 379.656 87.2114C380.122 88.6824 382.391 89.7375 383.704 90.2419C385.883 91.0803 388.771 91.2561 390.845 92.4015C392.968 92.821 395.425 93.5002 397.022 93.9986C402.83 95.8103 407.806 98.8678 413.033 102.002C415.503 103.482 417.829 104.764 419.973 106.72C421.647 108.248 423.771 109.882 424.595 112.091C425.113 113.482 424.451 115.471 422.848 115.085C420.353 114.488 419.638 111.665 418.227 109.714C415.003 105.251 410.067 102.067 405.118 100.06C402.64 99.0556 399.803 98.729 397.204 98.1176C394.411 97.4613 391.597 97.0442 388.707 97.1736C385.646 97.3097 382.846 97.5534 379.819 98.0078C377.027 98.4264 374.252 98.4441 371.514 97.8441C368.766 97.2421 366.276 96.7553 363.6 95.9021C361.662 95.2848 359.013 94.5583 357.232 93.5247C355.699 92.6339 355.631 91.2381 357.241 90.186C359.87 88.4656 362.778 89.8021 365.546 90.3497C365.561 90.3527 365.532 90.3468 365.546 90.3497C367.858 90.804 369.649 90.098 371.923 89.3884C372.489 89.2128 373.255 89.0482 373.47 88.953C374.383 88.5432 375.895 87.8227 375.407 86.7394C374.868 85.5457 372.659 84.8846 371.55 84.4891C369.74 83.8428 368.053 82.9215 366.147 82.6743C365.654 82.6095 365.109 83.1606 364.6 83.1097C363.36 83.1121 361.769 83.348 360.543 83.418C357.43 83.5916 354.583 83.6228 351.464 83.4719C348.714 83.3377 346.432 82.8542 343.741 82.3102C340.773 81.7101 337.52 81.5879 334.471 81.5839C331.393 81.5811 328.6 81.7214 325.583 82.4181C322.758 83.0702 319.757 83.6198 316.887 84.0326C314.698 84.3481 312.467 84.6054 310.319 84.2137C309.079 83.9871 306.994 83.3394 306.461 81.9635C305.846 80.3659 307.736 79.1556 308.981 78.7519Z\",fill:\"url(#paint14_linear_1356_14057)\"}),Bf(\"path\",{d:\"M242.269 242.95C242.295 242.947 242.244 242.955 242.269 242.95C244.934 242.606 247.53 241.858 250.2 241.574C253.133 241.264 256.006 240.56 258.906 239.982C263.26 239.117 268.026 238.52 272.254 237.097C274.429 236.365 276.067 235.298 278.251 234.592C280.361 233.909 283.058 233.12 285.216 232.652C289.317 231.764 293.049 231.66 297.016 230.198C301.109 228.69 305.088 226.673 308.819 224.409C312.645 222.086 316.282 219.769 320.622 218.62C322.381 218.154 323.919 218.219 325.65 218.886C327.016 219.413 327.739 220.337 327.196 221.79C326.557 223.504 324.659 224.7 323.131 225.423C320.854 226.5 319.53 227.184 317.134 227.927C314.619 228.707 311.888 229.24 309.395 230.083C308.226 230.947 307.17 232.522 306.105 233.501C303.996 235.441 301.666 237.03 298.945 237.996C292.934 240.129 286.354 238.602 280.183 239.056C279.661 239.095 279.162 239.442 278.635 239.487C275.592 240.135 272.2 240.63 269.156 241.294C264.546 242.299 260.456 243.409 255.808 244.179C251.971 244.814 243.815 245.854 243.815 245.854L242.074 245.505C240.575 245.281 240.751 243.152 242.269 242.95Z\",fill:\"url(#paint15_linear_1356_14057)\"}),Bf(\"path\",{d:\"M432.985 171.626C438.212 165.465 445.109 153.64 442.906 144.649C442.162 137.999 433.671 132.912 424.963 135.518C420.16 136.957 416.435 142.146 419.724 144.498C420.656 145.164 422.187 145.591 423.391 145.969C434.204 149.375 434.925 162.538 425.069 169.683C421.087 172.569 416.347 174.292 411.914 176.719C400.151 183.162 399.887 196.847 387.7 202.712C382.326 205.298 375.761 206.838 370.297 209.275C359.98 213.88 352.555 221.733 342.241 226.341C337.225 228.584 330.266 231.632 323.483 234.12C321.475 234.855 321.999 237.058 324.056 236.46C324.098 236.449 324.017 236.474 324.056 236.46C329.079 234.971 334.437 233.161 339.331 231.33C352.278 226.48 365.28 220.971 377.43 214.775C401.78 202.367 416.881 190.609 432.985 171.626Z\",fill:\"url(#paint16_linear_1356_14057)\"}),Bf(\"path\",{d:\"M343.644 241.104C348.002 234.144 357.126 232.455 364.343 231.134C368.176 230.431 372.406 229.878 376.137 228.662C380.691 227.175 384.558 224.095 388.327 221.077C389.452 220.177 391.204 218.466 392.393 217.436C393.185 216.748 393.644 216.026 394.33 215.225C396 213.275 399.599 209.812 401.687 208.16C403.263 206.914 407.779 204.758 408.259 207.986C408.611 210.359 406.379 213.087 404.961 214.747C402.224 217.953 398.998 221.079 395.475 223.243C391.749 225.531 387.701 227.439 383.674 229.051C381.672 229.853 379.519 230.073 377.486 230.785C376.001 231.307 374.486 232.236 373.037 232.866C371.034 233.738 368.99 234.28 367.041 235.38C364.436 236.849 361.782 238.783 359.108 240.105C356.331 241.477 353.823 242.691 350.791 243.27C348.6 243.687 345.501 243.641 343.836 241.884C343.526 241.554 343.389 241.51 343.644 241.104Z\",fill:\"url(#paint17_linear_1356_14057)\"}),Bf(\"path\",{d:\"M190.163 273.219C222.905 268.849 232.64 262.943 213.962 259.057C195.285 255.172 187.5 262.08 188.434 266.2C189.366 270.32 180.381 271.326 169.286 272.39C158.193 273.454 157.141 276.354 190.163 273.219Z\",fill:\"url(#paint18_linear_1356_14057)\"}),Bf(\"path\",{d:\"M295.952 95.4242L241.395 135.226L251.54 111.77L295.952 95.4242Z\",fill:\"#E17726\",stroke:\"#E17726\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M170.111 95.4242L224.181 135.598L214.522 111.77L170.111 95.4242Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M276.309 187.712L261.793 209.576L292.876 218.014L301.78 188.189L276.309 187.712Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M164.336 188.189L173.186 218.014L204.215 209.576L189.753 187.712L164.336 188.189Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M202.542 150.776L193.908 163.618L224.667 164.998L223.642 132.36L202.542 150.776Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M263.52 150.775L242.097 131.989L241.395 164.998L272.154 163.618L263.52 150.775Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M204.215 209.576L222.832 200.714L206.805 188.402L204.215 209.576Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M243.23 200.714L261.793 209.576L259.257 188.402L243.23 200.714Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M261.793 209.576L243.23 200.714L244.741 212.601L244.579 217.643L261.793 209.576Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M204.215 209.576L221.483 217.643L221.375 212.601L222.832 200.714L204.215 209.576Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M221.807 180.547L206.373 176.09L217.274 171.154L221.807 180.547Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M244.255 180.547L248.788 171.154L259.742 176.09L244.255 180.547Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M204.215 209.576L206.913 187.712L189.753 188.189L204.215 209.576Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M259.149 187.712L261.793 209.576L276.309 188.189L259.149 187.712Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M272.154 163.618L241.395 164.998L244.255 180.547L248.788 171.154L259.742 176.09L272.154 163.618Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M206.373 176.09L217.274 171.154L221.807 180.547L224.667 164.998L193.908 163.618L206.373 176.09Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M193.908 163.618L206.805 188.402L206.373 176.09L193.908 163.618Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M259.743 176.09L259.257 188.402L272.154 163.618L259.743 176.09Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M224.667 164.998L221.807 180.548L225.422 198.909L226.232 174.71L224.667 164.998Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M241.395 164.998L239.884 174.657L240.64 198.909L244.255 180.548L241.395 164.998Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M244.255 180.547L240.64 198.909L243.23 200.714L259.257 188.402L259.743 176.09L244.255 180.547Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M206.373 176.09L206.805 188.402L222.832 200.714L225.422 198.909L221.807 180.547L206.373 176.09Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M244.579 217.643L244.741 212.601L243.338 211.434H222.724L221.375 212.601L221.483 217.643L204.215 209.576L210.259 214.459L222.508 222.791H243.5L255.803 214.459L261.793 209.576L244.579 217.643Z\",fill:\"#C0AC9D\",stroke:\"#C0AC9D\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M243.23 200.714L240.64 198.909H225.422L222.832 200.714L221.375 212.601L222.724 211.434H243.338L244.741 212.601L243.23 200.714Z\",fill:\"#161616\",stroke:\"#161616\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M298.272 137.827L302.859 115.856L295.952 95.4242L243.23 133.899L263.52 150.775L292.174 159.001L298.488 151.731L295.736 149.767L300.107 145.84L296.761 143.293L301.132 140.002L298.272 137.827Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M163.203 115.856L167.844 137.827L164.876 140.002L169.301 143.293L165.955 145.84L170.326 149.767L167.574 151.731L173.888 159.001L202.542 150.775L222.832 133.899L170.11 95.4242L163.203 115.856Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M292.175 159.001L263.52 150.775L272.154 163.618L259.257 188.402L276.309 188.189H301.78L292.175 159.001Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M202.542 150.775L173.888 159.001L164.336 188.189H189.753L206.805 188.402L193.908 163.618L202.542 150.775Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"path\",{d:\"M241.395 164.998L243.23 133.9L251.54 111.77H214.522L222.832 133.9L224.667 164.998L225.368 174.763L225.422 198.909H240.64L240.694 174.763L241.395 164.998Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),Bf(\"defs\",null,Bf(\"linearGradient\",{id:\"paint0_linear_1356_14057\",x1:\"335.991\",y1:\"250.487\",x2:\"303.873\",y2:\"266.801\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),Bf(\"linearGradient\",{id:\"paint1_linear_1356_14057\",x1:\"276.993\",y1:\"303.722\",x2:\"205.254\",y2:\"401.574\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),Bf(\"linearGradient\",{id:\"paint2_linear_1356_14057\",x1:\"271.074\",y1:\"119.924\",x2:\"553.077\",y2:\"104.53\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),Bf(\"linearGradient\",{id:\"paint3_linear_1356_14057\",x1:\"264.209\",y1:\"91.0943\",x2:\"357.834\",y2:\"72.8792\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),Bf(\"linearGradient\",{id:\"paint4_linear_1356_14057\",x1:\"212.46\",y1:\"121.997\",x2:\"92.6119\",y2:\"183.406\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),Bf(\"linearGradient\",{id:\"paint5_linear_1356_14057\",x1:\"23.0498\",y1:\"204.411\",x2:\"161.86\",y2:\"163.003\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),Bf(\"linearGradient\",{id:\"paint6_linear_1356_14057\",x1:\"78.8647\",y1:\"240.375\",x2:\"74.9655\",y2:\"241.328\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint7_linear_1356_14057\",x1:\"382.349\",y1:\"181.971\",x2:\"378.45\",y2:\"182.925\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint8_linear_1356_14057\",x1:\"349.889\",y1:\"244.583\",x2:\"345.99\",y2:\"245.537\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint9_linear_1356_14057\",x1:\"142.262\",y1:\"279.808\",x2:\"138.362\",y2:\"280.762\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint10_linear_1356_14057\",x1:\"123.305\",y1:\"99.0746\",x2:\"119.406\",y2:\"100.028\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint11_linear_1356_14057\",x1:\"371.818\",y1:\"156.617\",x2:\"367.919\",y2:\"157.571\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint12_linear_1356_14057\",x1:\"385.281\",y1:\"242.958\",x2:\"381.382\",y2:\"243.911\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint13_linear_1356_14057\",x1:\"367.125\",y1:\"37.5052\",x2:\"360.843\",y2:\"38.8076\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),Bf(\"linearGradient\",{id:\"paint14_linear_1356_14057\",x1:\"300.182\",y1:\"91.321\",x2:\"479.464\",y2:\"104.041\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),Bf(\"linearGradient\",{id:\"paint15_linear_1356_14057\",x1:\"363.434\",y1:\"201.232\",x2:\"102.977\",y2:\"302.269\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),Bf(\"linearGradient\",{id:\"paint16_linear_1356_14057\",x1:\"447.962\",y1:\"165.159\",x2:\"313.049\",y2:\"197.95\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),Bf(\"linearGradient\",{id:\"paint17_linear_1356_14057\",x1:\"410.211\",y1:\"215.859\",x2:\"341.378\",y2:\"232.788\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#75C3FC\"}),Bf(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),Bf(\"linearGradient\",{id:\"paint18_linear_1356_14057\",x1:\"222.282\",y1:\"258.986\",x2:\"162.257\",y2:\"273.774\",gradientUnits:\"userSpaceOnUse\"},Bf(\"stop\",{\"stop-color\":\"#FFE466\"}),Bf(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})))),gg=class{constructor(e){df(this,e),this.close=qf(this,\"close\",7),this.connectWithExtension=qf(this,\"connectWithExtension\",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.i18nInstance=new Dp,this.setTab(this.preferDesktop?1:2)}async connectedCallback(){await this.i18nInstance.init({fallbackLng:\"en\"}),this.translationsLoaded=!0}onClose(e=!1){this.close.emit({shouldTerminate:e})}connectWithExtensionHandler(){this.connectWithExtension.emit()}setTab(e){this.tab=e,this.isDefaultTab=!1}disconnectedCallback(){this.onClose()}updatePreferDesktop(e){e?this.setTab(1):this.setTab(2)}render(){if(!this.translationsLoaded)return null;const e=e=>this.i18nInstance.t(e),t=this.sdkVersion,n=this.isDefaultTab?this.preferDesktop?1:2:this.tab,r=ng(this.link,\"svg\",{ecc:\"medium\",scale:2});return Bf(Rp,{className:\"select-modal\"},Bf(\"div\",{class:\"backdrop\",onClick:()=>this.onClose(!0)}),Bf(\"div\",{class:\"modal\"},Bf(\"div\",{class:\"closeButtonContainer\"},Bf(\"div\",{class:\"right\"},Bf(\"span\",{class:\"closeButton\",onClick:()=>this.onClose(!0)},Bf(Op,null)))),Bf(\"div\",{class:\"logoContainer\"},Bf(Tp,null)),Bf(\"div\",null,Bf(\"div\",{class:\"tabcontainer\"},Bf(\"div\",{class:\"flexContainer\"},Bf(\"div\",{onClick:()=>this.setTab(1),class:\"tab flexItem \"+(1===n?\"tabactive\":\"\")},e(\"DESKTOP\")),Bf(\"div\",{onClick:()=>this.setTab(2),class:\"tab flexItem \"+(2===n?\"tabactive\":\"\")},e(\"MOBILE\")))),Bf(\"div\",{style:{display:1===n?\"none\":\"block\"}},Bf(\"div\",{class:\"flexContainer\"},Bf(\"div\",{class:\"flexItem\",style:{textAlign:\"center\",marginTop:\"4\"}},Bf(\"div\",{class:\"center\",id:\"sdk-mm-qrcode\",innerHTML:r}),Bf(\"div\",{class:\"connectMobileText\"},e(\"SCAN_TO_CONNECT\"),Bf(\"br\",null),Bf(\"span\",{class:\"blue\"},Bf(\"b\",null,e(\"META_MASK_MOBILE_APP\"))))))),Bf(\"div\",{style:{display:2===n?\"none\":\"block\"}},Bf(\"div\",{style:{display:\"flex\",justifyContent:\"center\",height:\"300\",marginTop:\"-20\"}},Bf(pg,null)),Bf(\"div\",{class:\"extensionLabel\"},e(\"SELECT_MODAL.CRYPTO_TAKE_CONTROL_TEXT\")),Bf(\"button\",{class:\"button\",onClick:()=>this.connectWithExtensionHandler()},Bf(fg,null),Bf(\"span\",{class:\"installExtensionText\"},e(\"CONNECT_WITH_EXTENSION\"))))),Bf(Lp,{version:t})))}get el(){return zf(this)}static get watchers(){return{preferDesktop:[\"updatePreferDesktop\"]}}};gg.style=\".flexContainer {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n flex-direction: row;\\n}\\n\\n.flexItem {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem11 {\\n flex: 11;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem1 {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.tab {\\n padding: 8px;\\n cursor: pointer;\\n background-color: #F2F4F6;\\n font-size: 12px;\\n text-align: center;\\n color: #24292E;\\n}\\n\\n.tabcontainer {\\n padding: 4px;\\n background-color: #F2F4F6;\\n border-radius: 8px;\\n margin-bottom: 30px;\\n margin-top: 30px;\\n}\\n\\n.tabactive {\\n background-color: white;\\n -webkit-transition: background-color 300ms linear;\\n -ms-transition: background-color 300ms linear;\\n transition: background-color 300ms linear;\\n border-radius: 8px;\\n}\\n\\n.item {\\n font-size: 12px;\\n margin-bottom: 16px;\\n border-radius: 8px;\\n padding: 10px;\\n border: 2px #F2F4F6 solid;\\n color: #24292E;\\n}\\n\\n.extensionLabel {\\n font-style: normal;\\n font-weight: bold;\\n font-size: 14px;\\n text-align: cetner;\\n color: #24272A;\\n}\\n\\n.notice {\\n font-size: 12px;\\n margin-left: 10px;\\n margin-right: 10px;\\n color: grey;\\n}\\n\\n.button {\\n margin-top: 41.5px;\\n margin-bottom: 20px;\\n width: 100%;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n padding: 12px 20px;\\n background: #037DD6;\\n border-radius: 32px;\\n color: white;\\n border: 0;\\n font-size: 14px;\\n cursor: pointer;\\n}\\n\\n.backdrop {\\n visibility: visible;\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100%;\\n z-index: 99998;\\n background: rgba(0, 0, 0, 0.87);\\n opacity: 0.3;\\n}\\n\\n.modal {\\n visibility: visible;\\n position: fixed;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 99999;\\n background: white;\\n padding: 20px;\\n border-radius: 8px;\\n top: 50%;\\n max-width: 100%;\\n width: 460px;\\n min-width: 300px;\\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n color: #BBC0C5;\\n cursor: pointer;\\n}\\n\\n.logoContainer {\\n margin-left: 24px;\\n margin-right: 24px;\\n margin-top: 24px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.connectMobileText {\\n font-size: 14px;\\n color: black;\\n margin-top: 28px;\\n margin-bottom: 28px;\\n line-height: 2;\\n}\\n\\n.blue {\\n color: #037DD6;\\n font-weight: 700;\\n}\\n\\n.installExtensionText {\\n margin-left: 10px;\\n}\\n\\n.center {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.right {\\n display: flex;\\n align-items: center;\\n justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n svg {\\n width: 50%;\\n }\\n}\";var mg=Object.freeze({__proto__:null,mm_select_modal:gg});export{$o as CommunicationLayerPreference,vo as ConnectionStatus,ho as DEFAULT_SERVER_URL,bo as EventType,Co as MessageType,ef as MetaMaskSDK,Fu as MetaMaskSDKEvent,dh as PROVIDER_UPDATE_TYPE,Bo as PlatformType,Wu as SDKProvider,ef as default};\n//# sourceMappingURL=metamask-sdk.js.map\n"],"names":["global","F","globalThis","exports","g","e","value","chars","decode","Request","parts","url","fetch","undefined","process","toArray","a","b","c","n","on","v","Promise","reject","ns","l","j","dl","nextTick","event","events","fn","self","al","withNativeBlob","withNativeArrayBuffer","isView","lookup","p","isBinary","protocol","k","qs","_a","re","m","t","to","DEFAULT_TRANSPORTS","RESERVED_EVENTS","PacketType","Socket","io","_c","id","ms","Engine","socket","d","u","h","f","r","i","o","s","y","w","E","C","S","_","x","M","A","I","P","K","R","L","O","T","N","D","$","B","U","H","z"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]}
|